• No results found

Bitcoin Mining Technology

3.5 MINING POOLS

Mining pools are groups formed by many miners that collectively use all their resources and mine together with the motive to generate combined higher hashing power. Being a part of a mining pool increases the probability of quickly mining a block, as the proba- bility of solving a block is in direct proportion to the computational resources. Bitcoin mining is made less risky by such pools. The reward is split among the participants based on their level of contribution. The income earned per miner is steady but lesser, because the transaction fee is not cashed out and additional fee is charged by the pool operator to compensate for the incurred expenses.

It is also possible to switch mining pools to one that has more hash power.Figure 3.5 represents the distribution of hashrate among the existing mining pools as of July 2014, from Blockchain.info. GHash.IO and BTC Guild are the two largest existing mining pools. Every pool is characterized by distinct features like its size and payout reward type. Bigger pools provide consistent earnings with smaller variance from the expected profit. Though small pools are characterized by larger variance and less frequent larger payments, they help avoid potentially harmful concentration of hashing power.

32% 24% 18% 7% 7% 4% 3%3% GHash.IO BTCGuild Unknown 50BTC.com Eligius BitMinter ASICMiner EclipseMC HHTT Bitparking Triplemining Slush's pool

Table 3.2 provides the list of mining pools that have solved the highest number of transaction blocks. Miners are determined to maximize their rewards. New miners prefer to join pools with higher hashrate hoping to increase their chances of solving a block. Some of them use strategies like hopping to pools that are more attractive at a given time, while a few follow selfish mining.

Selfish miners direct the honest miners to waste their computational time on a branch that is to be orphaned. This is made possible by selective disclosure of the miners’ blocks to an honest miner. Selfish mining pools secretively work on their validated private branch, while the honest miners expend their resources on adding blocks to the shorter public fork of blockchain. As the selfish miners do not form the majority of the comput- ing power in the network, the private chain held by them would not stay longer than the public chain indefinitely. The selfish mining pool reveals its private branch when the honest miners are too close. This makes the honest miners to abandon the shorter public chain per the protocol, to work on the recently added blocks of the selfish miners’ chain. Selfish miners look forward to form the majority of the network, to control the block- chain. When they form the majority, they would no longer need to follow the strategy as other miners can not be any faster than their pool.

3.5.1 Reward types

When a pool solves a block, the 25 bitcoins earned is distributed among the pool clients based on the type of reward provided by that mining pool. There are multiple approaches to pooled mining. It is important to consider the reward type before joining a mining pool, as every pool has its own benefits. Rosenfeld (2011) in his research work in Table 3.2 Mining pools

Name Found blocks Average hashrate

GHash.IO 29,742 No data BTC Guild 22,177 641,826.56 GH Unknown 16,409 No data 50BTC.com 6406 32,342.24 GH Eligius 6401 299,667.54 GH Bitminter 3580 195,870.72 GH ASICMiner 3127 55,711.50 GH EclipseMC 2566 150,432.12 GH HHTT 601 9621.96 GH Bitparking 583 12,546.32 GH Triplemining 111 2308.09 GH Slush’s pool 56 389,577.18 GH CoinLab 47 No data MegaBigPower 37 No data

Discus fish 34 No data

59 Bitcoin Mining Technology

2011 had analyzed the mining reward systems in detail. A share, with respect to a pool, refers to a proof of work at the expected difficulty. The payout from a mining pool can be any of the following types:

• Proportional (Prop)

This is the simplest of pooled mining reward systems. The reward received by the pool on solving a block is distributed among all miners in direct proportion to how many shares each of them submitted in that round. The operator holds back a certain amount as fee. This system is vulnerable to pool hopping. Mining later in a round leads to less than normal reward, while mining early in the round gives higher than normal reward. The threshold point where the expected payout is approximately equal to average payout is when the number of shares submitted is 43% of the difficulty. Miners prefer to mine only when the round is earlier to the point, after which they hope to other pools and return back when a new round begins. Those who stick to one par- ticular pool, hoping to earn their due reward, would receive lesser than what they expected. This reduction in the reward received will, however, depend on the num- ber of hoppers and the hopping techniques applied.

• Pay per share (PPS)

Each submitted share is worth a certain amount of bitcoins. When a client submits a share, a payment is paid to him or her irrespective of how many blocks were solved. This payment is net of the fees and depends on the contribution of the share. The payout is a deterministic value and so easily predictable. The difference between the actual earnings and the PPS earnings paid is called extra credit. The pool keeps count of the unpaid PPS credits and pays them off when a new block is solved. When new bitcoins are earned, the payments to the miners depend on the funds available. If there are pending funds to be settled, they are accumulated as future payouts. The operator absorbs the variance faced by a miner with respect to the reward per share. A pool operator takes a lot of risk in this case (if a block is not solved in the expected time, the operator bears the risk without any compensation in return) and so it has the highest percentage fees. The operator should balance the fees charged and the financial reserve held to make payments, in order to reduce the probability of bankruptcy. However, pools like btcserv.net and abcpool.co charge no fees. They only hold back the transaction fees.

• Shared maximum pay per share (SMPPS)

The pool keeps a record of a participant’s due reward. When a participant submits a share, the corresponding due reward increases in the pool. If extra credit of certain bitcoins is earned in the first round, some proportion of it will be paid every round, until it is paid off entirely. This means that the shares could also be underpaid. SMPPS is not hopping proof. Though expected reward is constant, the time (maturity) it takes to receive the reward is not. When the maturity time is less, SMPPS proves to be very attractive compared to the other alternatives. Whereas when maturity time is high, the hoppers leave the pool as the rewards are delayed.

• Equalized SMPPS

It is similar to SMPPS but equalizes payments fairly among all those who owe rewards. The pool keeps track of the shares submitted, the payment made for each, and the payments due. The payments are made with the available funds. Those that are due are paid with the next reward earned, in a manner so as to maximize the min- imum percentage paid among all shares. For instance, if a share receives 90% of PPS, then it will not be paid again until every other share in the pool is paid the same per- cent of PPS. One major drawback is when a share receives a relatively high payment, then it is less probable for it to receive any additional payment until every other share, including the newly added shares, receives the same amount of payment. This reward system also supports hopping and so pools that follow it are mostly used as backup pools by miners when no other pool satisfies their criteria.

• Recent shared maximum pay per share (RSMPPS)

This system focuses on the recent miners. The extra credits issued are remembered in order. On earning new bitcoins, the reward is distributed to the recent shares first in the current round, only after which the unpaid rewards from the previous rounds are settled. This is continued to the previous rounds until all the pending payments are made. • Capped pay per share with recent backpay (CPPSRB)

It is a variant of MPPS reward system. This type of pool does not go bankrupt mostly because of the high variance; however, the miners have an overall lower var- iance than the other types of reward systems like double geometric method (DGM). CPPSRB pays the newest shares first (last-in-first-out order) and no shares are under- paid in this system unlike SMPPS.

• Score-based system (score)

Score-based reward system was modeled with the main intention to resist pool hopping. There are three main types of score-based systems that include the following:

Slush’s method

Each share submitted contributes to a metric called score maintained by the sys- tem. At the end of a round, the reward is distributed to the participants in proportion to their respective score. To counter the effect of hoppers who leave a pool at the later stage of a round as in proportional reward system, in score-based system, the score credited increases with time. For each share, the score is updated by

s¼exp t

c

wheretrepresents the time andcis a constant. So a miner who submits a share later earns a higher reward in this system.

Geometric method

This method is also a hopping proof method and is the improvisation of Slush’s method. It has two types of fees: fixed fee and variable fee. Fixed fee is the constant

61 Bitcoin Mining Technology

amount from the reward obtained from every block and the variable fee is based on a score. This score value decreases as time passes from the beginning of the round. Therefore, shorter rounds have higher fees and vice versa. This method has been developed based on a solid mathematical model, in a way so that there is no disadvan- tage between mining earlier and mining in the later stage of a round.

Pay per last N shares (PPLNS)

This system is similar to proportional, but instead of looking at the number of shares in a round, it considers the last N shares regardless of round boundaries. To solve the problem of hopping, it distributes the reward based on which miners sub- mitted the last N shares regardless of any blocks found in the last period. N represents twice the number of shares per round. This way, it eliminates the concept of earning rewards for mining early in a round.

• DGM

The DGM is a hybrid between PPLNS and geometric reward types that combines the advantages of both and so is resilient to hopping pools. Round boundaries are crossed, but not ignored as in PPLNS, and every block found reduces the reward to be given for future blocks. The share-based variance (due to discontinuities in share submission) is reduced in addition to the pool-based variance (due to smaller pools). • Pay per last N groups/shifts (PPLNSG)

Bitminter is a pool that pays by PPLNSG. When a block is found, a client is paid proportionally to his or her number of shares submitted against those of others in the pool for the last “N” rounds. The number of rounds differs from pool to pool. • Pay on target (POT)

POT is a high variance PPS that pays on the difficulty of work returned to pool. The payout increases for shares of higher difficulty and is the maximum for the miner who solves the block.