Cryptocurrency mining is the process by which participants in a decentralized computer network perform mathematical calculations in exchange for a financial reward granted in a probabilistic manner and proportional to the number of mathematical calculations performed by miners.
Miners are computer software that will receive transaction publications from other participants in the same “cryptocurrency network” and who wish to have these transactions included in the transaction register, called a blockchain. Miners will collect these transactions and include them in a block of transactions that they are trying to add to the registry.
The role of miners is, therefore, to add “blocks” of transactions to a continuous sequence of transaction blocks, which allows users to coordinate and agree on the final copy of “transaction history in the blockchain.
To add their block of transactions to the register, miners will perform mathematical calculations to solve a cryptographic puzzle that is offered to them according to the cryptocurrency protocol that they mine. The only way to solve the math problem is through a trial and error process. The rules of this game are:
- Anyone can participate in the mining process;
- Miners must build their transaction blocks following network rules;
- Miners must build a block of transactions and subject it to a dual cryptographic hash function, called SHA256 (SHA256) in Bitcoin;
- The object of the game is that from public transaction data and the introduction of a random number (the nonce) into the transaction data block, miners must obtain a specific mathematical result.
- Since the result of the mathematical function of Bitcoin mining is random, miners must try to make several calculations, with as input the same set of possible valid bitcoin transactions, and to modify the random data and submit this data set to the mathematical function.
- When the miner finds a solution to the problem, he submits the answer to the network. Network participants will quickly verify that the solution is right.
If the solution to the problem is correct, the miners will abandon their attempts to confirm this block of transactions and immediately start mining the next block. Miners do this because they know that users can verify that the math solution is correct. They know that users, considering this block as valid, will accept it as part of the blockchain. If they continued to try to produce the same block as their rivals, this block would not be accepted by the participants and therefore, would have no monetary value, although it was created with huge costs. Miners, recognizing the futility of trying to cheat, will automatically move on to the next block to start looking for the solution as soon as possible and, therefore, increase their chances of finding the next block.
When a solution to the puzzle is discovered by a miner, he will submit the answer to the network as well as the block of transactions that he is trying to have included in the blockchain transaction register. He includes in this block of transactions a special transaction that gives him the right to claim a certain number of cryptocurrencies, still according to the rules of the protocol of the mined cryptocurrency.
This means that the miner will “create” and agree to bitcoins. Network users will accept as valid blocks of transactions in which miners have granted themselves newly created bitcoins, by default, which includes a transaction in which the miner gives himself a reward. If the block complies with the rules, users adopt it as the official version of the transaction history, the official version of the blockchain, the version in which the miner has granted himself a reward in cryptocurrencies, which he issues in circulation.
The miner also collects transaction costs associated with block transactions. Network participants will analyze the block proposed by the miner, quickly verify that he has indeed found a solution to the puzzle and that the format of the block and of transactions respects network rules.
Mining is a probabilistic lottery where miners are guaranteed to win a certain reward if they are able to generate a certain number of mathematical calculations. A cost is associated with each calculation, and if the reward by calculation is greater than the total cost amortized by calculation, the miner is able to make profits.
A mining pool is a service used by cryptocurrency miners to combine their computing power with other miners. It’s a strategy to get more frequent and probabilistic rewards.
Mining parameters: example of Bitcoin
The rules that determine the conditions that miners must meet in order to be able to create new cryptocurrencies and put them into circulation are determined in the computer protocol to which they automatically and compulsorily subscribe. These parameters will be used to determine the profitability of mining activity.
For example, in the case of Bitcoin, the rules are specifically:
- The number of bitcoins miners who produce a valid block can decrease by 100% every four years, starting with 50 bitcoins per block.
- The algorithm determining the difficulty of the puzzle is dynamically readjusted for every 2016 blocks created by miners in order to obtain an average of a block produced every 10 minutes.
Difficulty adjustments and competition
Cryptocurrency mining is a competitive process. Miners compete against each other to find the solution to the puzzle presented by the network. When the number of mathematical calculations submitted to the network increases or decreases, the difficulty of the mining algorithm is readjusted to ensure that a block is generated on average every 10 minutes.
In the case of Bitcoin, the difficulty is adjusted for each period of 2016 blocks, which corresponds to 14 days (144 blocks per day * 14 days).
As an example, imagine that at the beginning of a period of difficulty, the total hashing rate is 100 hash per second, which produces an average of one block every 10 minutes. If the hashing rate increases by 10%, the generation time of an average block will be reduced proportionally by 10%, so a block is found on average between 9 and 10 minutes depending on the acceleration rate of the total hashing power. At the end of the difficulty period, the difficulty of the mining algorithm will, therefore, be increased proportionally in order to return to an average of 10 minutes per block for the next difficulty period.
Conversely, if the hashing power decreases, the difficulty will also decrease in order to reduce the block generation time.
The mining of cryptocurrencies is done using specialized equipment. There are two main categories:
- ASICs “Application Specific Integrated Circuit”: these are machines made up of electronic chips having as a function only the capacity to make the mathematical calculations necessary to solve a cryptographic puzzle. Note that these types of machines are only accountable with a limited number of mining algorithms, mainly Scrypt and SHA256, which means that they can only be used for certain specific cryptocurrencies.
- GPU (“Graphical Processing Unit”): these are machines capable of performing a wide variety of mathematical calculations, including cryptographic puzzles. They are generally used on cryptocurrencies, which have a mining algorithm that has not yet been encoded in an ASIC.
These devices diverge according to three main parameters:
- The computing power per second, called “hashrate”;
- The energy efficiency of chips.
Price and delivery time
- A device that is more powerful is capable of producing more hashing per second but is not necessarily more profitable if the energy consumption does not decrease.
- A device can also be less powerful and have better energy efficiency, which can make it more profitable.
- When higher performance devices are introduced to the market, the relative cost of miners with this device is lower than users of previous-generation devices.
- In general, the energy efficiency of mining chips is constantly increasing, so that new devices are, relatively, much more profitable than previous generations.
Since the energy efficiency of miners cannot be dissociated from their electrical consumption, we opt for the following methodology:
- Aggregation of the total number of hashing per second for all devices;
- Gross electrical consumption, per hour, of all devices;
- So we get: the number of total hashes produced per unit of electricity (watts);
- With these variables, we can, therefore, deduct the number of cryptocurrency units that are produced per dollar of electricity.
Accounting and mathematical approach
The mandate is specifically to project the revenue in Canadian dollars generated by the mining operation, as well as the direct operating costs, in order to calculate the profitability of the mining operation before the associated costs.
- We are able to calculate the number of bitcoins that will be produced by a machine, given the difficulty of the mining algorithm (a function of the total number of mines).
- We are able to estimate in Canadian dollars the revenues produced by a machine based on the number of bitcoins produced (affected by the difficulty) and their value in Canadian dollars at the time of production (affected by price, supply and demand ).
- The revenues do not take into account the different “pay out” methods offered by mining pools. Different forms of “pay out” tend towards the same amount of income, particularly for operations with more capacity.
- We use methods to represent the revenue from a mining operation: by period and difficulty and cumulative. Revenues per period of difficulty are those generated during each two-week period, while cumulative revenues are the total generated since the start of the operation.
- Bitcoin halving, an event that takes place every four years after which the number of bitcoins generated per block decreases by half (e.g. going from 12.5 bitcoins per block to 6.25 bitcoins per block) is taken into account. We estimate that this event will take place in mid-June 2020.
- Transaction costs are not taken into account. Generally, transaction fees collected by miners tend to be lower than the cost of service for mining pools.
We observe that the average transaction fee tends to be slightly less than 1%.
We also observe that the pools that allow miners to receive transaction fees compensate for this lack of income with higher pool fees.
We therefore generally estimate that the transaction fees collected and the operating costs of the pool cancel each other out and are therefore excluded from our calculations.
- Costs are calculated in Canadian dollars, regardless of the price of Bitcoin.
- The costs taken into account are the costs directly linked to the specificities of miners, i.e. the cost of machinery and electricity costs.
- Related costs such as cooling, rent, employee salaries, research and development, etc. must be taken into account separately for the profitability of the machines themselves and rather be taken into account for the profitability of the company operating the machines.
- For all practical purposes, costs are variables that can be predicted and that are a direct result of a miner’s ability to execute his business plan.
- The only variable besides the cost that can be affected by the operator is the start of its operation (and the number and model of machines purchased).
Costs and expenses when determining profitability are taken into account as income with a qualification “by period” and a qualification “cumulative.”
- Using the qualification “cumulative costs,” we include the total costs paid for each of the difficulty periods, including the total cost of the machines purchased before and during this period.
- In order to calculate the cost of the machines, we start by calculating the number of machines purchased, and we multiply by the current value in Canadian dollars.
To calculate the cost of electricity per period, we use the following formula:
= 14 * 24 * (Total Watts / 1000) * ($ / kWh)
= 14 * (kWh / day) * ($ / kWh)
This implies that all miners are always used at all times.
We obtain the total number of kilowatts consumed per hour, which allows us to calculate the hourly cost (then daily and per 14-day period) from a rate expressed in $/kWh.
- The profitability that must be taken into account and the aggregated profitability that is to say the number of possible total profits during the lifetime of the operation.
- The timing of the start of operations is a crucial factor for profitability since the bitcoin yield of machines is decreasing.
- The compounding of the machines, that is to say, a policy of purchase or total increase in the mining capacity is an important factor because it extends over time the mining operation time, which offers an upward curve income.