Ethereum mining is one of the fastest-growing cryptocurrency mining operations (as it’s quickly become the top Bitcoin alternative). One common misconception is the name of the coin. Ethereum miners are actually mining a coin called “Ether.”
“Mining” is the colorful term used to describe the day-to-day bookkeeping, security, and transaction processing of a cryptocurrency. The etymology of “mining” evolved from “data mining” and “gold farming.” In the gaming world, gold farming is the process of earning in-game money or upgrades, then selling the proceeds to other gamers for real money.
In order to ensure confidence, a successful Ethereum mining operation requires several discrete elements:
- The blockchain, a distributed database encoding the transaction history of the currency
- Hash functions that will be compiled into hash tables to ensure privacy (think of this as the “crypto” element)
- Checksums that ensure accounting ledger fidelity and keeps people from spending their money twice (generally embedded within the hash functionality)
- Peer-to-peer networks (miners) to provide redundancy and security against malicious intent or hardware failures
- Incentives for the miners so they will continue to maintain the required large, redundant, and robust network indefinitely
- Last but not least, people to hold the currency and spend it in transactions
Let’s take a closer look at each of these elements below.
A blockchain is a massively distributed set of dynamic records and is essential for cryptocurrency trading.
As records accumulate, they are collected into blocks and validated. Once validated, a new block is connected to the chain of all previous blocks and is then said to be integrated into the blockchain.
Checksum vs. Hash Functions
All hash functions are checksums, but not all checksums are hash functions.
A checksum is a calculation that represents a large data set with a smaller, unique data set used to detect errors in data transmission or storage. If even one bit of the original data set is altered, the checksum will be altered, alerting the system to an error.
Checksums are used in many computer programming situations when data is transferred or stored and there is a risk of data corruption. In cryptocurrencies, checksums are used to make sure that once you spend your coin, everybody knows you have spent it and you can’t spend it again. It also ensures no accounting errors or ledger mistakes can occur.
A hash function is a checksum algorithm that converts data files of arbitrary size to a data string of fixed size. Hash functions are then collected into hash tables, which can be used to quickly organize and sort data records.
Because of the nature of hash functions, algorithms can be built that will ensure the original data set cannot be reproduced from the hash function itself. This is the cryptographic element of cryptocurrencies and is used to ensure anonymity.
A collision occurs when two different sets of data calculate the same checksum or hash function. Think of this as two cars attempting to use the same parking space at the same time.
Because of the risk of collisions and the need to ensure data security, hash functions for mining operations are complex and require significant computational power. In the cryptocurrency world, if a collision is detected then the algorithm used to create the collision is abandoned in favor of one which is more complex and secure.
Because of the threat of collisions, a bounty is placed on detecting them. While the Ethereum network does not want collisions, in practice each miner would love to detect one.
In order to hack or rewrite blocks, a malicious agent would need to control at least half of the Ethereum network of miners. A very large network of miners is needed to prevent this risk of fraud and corruption. Once the network passes a certain size and is widely distributed, this becomes impractical enough to be considered impossible.
Each miner on the network needs three things to be successful:
- An Ethereum mining rig
- A network client
- Ethereum software
While CPUs can be used, GPUs have a much higher hash rate, or speed of computing hash functions than CPUs. With that in mind, miners typically focus on GPU processing.
The miner uses one of three clients to connect to the Ethereum network: Geth, Eth, or Pyethapp.
Once connected to the network, Ethminer allows the individual to perform the essential functions of Ethereum mining.
As each new block of transactions is completed, it is distributed to the miners and actual mining can occur.
The miners use Ethminer to calculate the hash functions, which are then compared to the hash functions of all the other miners. If the values are all the same, then the block is considered validated. At this point, the block is attached to the blockchain and a successful mining operation is said to have occurred.
Transactions in a new block are not considered to have gone through until after the block is validated. In other words, funds are not dispersed until after the transaction block is validated.
Once the mining operation is concluded, the collection of hash functions (or hash table) for the validated block is then imported to the beginning of the next block. This creates a ‘link’ to the next block in the chain. This ensures unbroken security from the beginning of the Ethereum blockchain to the present.
Ethereum mining hardware needs to be powerful, so it is expensive and consumes a lot of electricity. The network also needs to be large. These obstacles mean that an incentive is necessary in order to entice enough people to participate.
Once a block is validated, each miner receives a reward proportional to the amount of work done. This reward comes in the form of newly created Ether. In order to minimize the effects of inflation, a cap is set on the creation of new Ether. This cap is 18 million per year.
Ethereum Mining Profitability
A calculator is often used by miners to determine if Ethereum mining is profitable. Mining can be an expensive task, between hardware and electricity costs. Miners, looking to generate a large profit, often underestimate these costs.
Profit taking is complicated by the fact that most miners cannot successfully calculate a block on their own. For this reason, many miners pool their resources and cooperate on calculating each block.
Pools are amorphous and have their own rules. Profit sharing can vary widely from pool to pool. As rules change, so can the size, composition, and success of each individual pool. At present, the mining of Ether coins is turbulent and has resulted in wild fluctuations in Ethereum mining pools, leading to insecurity and high turnover among individual miners.
Ethereum Mining On Reddit
We have only been able to cover the very basics of Ethereum mining. While this information is a good start for somebody interested in learning about Ethereum basics, we would encourage you to continue doing your own research if you would like to become a miner. The Ethereum network is constantly changing and adapting. If you are involved with Ethereum mining, it is important to stay on top of new developments.
One of our favorite resources on this topic is the Ether Mining subreddit. On Reddit, you will find individuals who have already asked the same questions and faced the same obstacles you have. If you are serious about Ethereum mining, we’d recommend their community!