比特幣礦池是怎樣執行的
作者:大菇涼 公眾號:FairBlock
關注
比特幣
的你,一定聽說過挖礦,應該也聽說過礦池。這裡的挖礦當然不是指從地裡挖掘礦石,
而是用計算機來進行hash計算,最後的結果滿足特定的要求就算挖礦成功。
那麼礦池又是什麼呢?
礦池就是礦工的集合地,任何礦工都可以加入,無論個體還是組織,無論專業還是業餘。加入到礦池的礦工挖到礦後,獲得的獎勵會被分配到礦池,然後礦池再根據預先設定的分紅規則進行獎勵發放。
或許你會想為啥要加入礦池呢?因為收益更穩定。
以買彩票為例,假如中獎的機率是1/100,000。那麼你買一張彩票,中獎的機率就是1/100,000,如果你買100張就是1/1000,但是一個人的財力畢竟有限,就算買100張,中獎的機率卻還是很小。如果找9個小夥伴一起來買,大家一人買100張,機率就是1/100了。如果找更多小夥伴一起,那麼中獎的機率就會更高,而且你也不需要一個人買100張了,當然在買之前肯定需要先協商好中獎之後的分紅規則。
礦池的原理和買彩票很類似。
假設全網的算力是5000P(PHash/s算力單位,1PHash/s等於1000THash/s),一個普通的礦工有一個算力為10T的礦機,佔全網算力的50萬分之1,平均挖到一個區塊的時間是10分鐘。
那麼一個普通礦工大約需要9年的時間才能挖到一個區塊,然後獲得全部的比特幣。
但是如果找9個人來一起挖,找到一個區塊的時間就小於1年了,如果找100個人,甚至更多的人,挖到一個區塊的機率就會更大,收入也會更趨於穩定。
礦工加入礦池都是為了能有更穩定的收益,不至於努力很久也沒有回報,
那麼礦池是如何平衡挖到礦的礦工和沒挖到礦的礦工之間的利益的呢?
我們知道一個礦工挖到礦是個小機率事件,絕大部分礦工儘管也努力進行了計算,但最後並沒有挖到礦。為了獎勵這一部分礦工,礦池一般會設定比實際挖礦難度低得多的礦池難度,比如實際難度的1/1000。當礦工每算出一個滿足礦池難度的
hash值
時,就把結果發給管理員,證明自己做出了努力。
管理員會記錄礦工的努力,然後按規則給礦工分紅。
礦池有很多種分紅規則,簡單介紹幾個最常見的規則:
1、
PPS(pay per share)每次有貢獻就支付
根據前面介紹的,當礦工算出一個滿足礦池難度的hash值就表示有一個貢獻(share),然後管理員立即就會對其支付一定的比特幣。這個模式相
當於預支付
,當沒有挖到區塊時管理員需要墊付給礦工獎勵,管理員承擔了比較大的風險,所以收取的管理費也會更多。
2、
PROP(proportional)按貢獻比例支付
挖到一個區塊後,根據每個礦工
做出的貢獻比例進行分紅
。這個模式減少了管理員的風險,但是增加了管理員的工作量,需要對每個礦工做的貢獻進行稽核、記錄、然後計算比例再分配獎勵。
3、
PPLNS(Pay Per Last N Shares)最近的N個貢獻按比例支付
與PROP模式比較類似,不同之處在於PROP只獎勵一個區塊週期內的做出貢獻的礦工,區塊週期也就是從全網路公佈了一個區塊後開始尋找,直到找到他的下一個區塊,也就是大約10分鐘。而PPLNS模式不考慮區塊週期,
只考慮最近的N個貢獻的礦工按比例進行獎勵。
該模式對長期礦工的獎勵會多於短期礦工。
4、
SMPPS(Shared Maximum Pay Per Share )按資金最大值對每個貢獻支付
與PPS類似,
只要有貢獻都會支付固定的獎勵,但不是立即支付,
當挖到一個區塊後,礦池的資金如果足夠支付所有礦工的未支付的貢獻則立即支付,如果不足夠就按比例支付礦工的貢獻。剩下的資金留著到下一次支付。該模式只會按已有的資金來支出,不會讓管理員承擔太大的風險。
兩點疑問:
正常情況下,礦工一直努力工作然後把結果提交給管理員,
那會不會出現一個礦工挖到一個區塊後不願意提交給管理員,而私自廣播出去?
答案是不會的。
因為礦工所做的計算都是基於礦池的地址的,要知道計算hash值的時候改變任意一個引數,最後的結果可能都會相差甚遠,所以礦工如果私自廣播出去了,最後的收益還是到礦池裡面,而且自己還少了一個貢獻。
那礦工會不會挖到區塊之後故意丟棄呢?
答案是有可能,
如果是別的礦池派來的間諜,目的就是要拖垮這個礦池,那他就肯定會在挖到區塊後故意丟棄,讓這個礦池得到收益的機率變低。但是如果是一個普通的礦工,那他一定不會丟棄。
說了這麼多,大家最關心的問題可能是“我應該加入哪種礦池?”或者“我應不應該加入礦池?”
我認為大部分個人投資者不應該加入礦池,而是直接購買比特幣即可(僅個人觀點)。
比特幣挖礦是基於POW(power of work)工作量證明的,誰的算力強誰佔優勢。比特幣挖礦需要用專門的礦機,家用電腦幾乎沒有挖到礦的可能。而購買礦機和執行礦機的成本是巨大的,專用礦機除了挖礦,幾乎沒有其他價值,更新換代也很快。這些特性並不符合大部分個人投資者的利益訴求。
所以作為普通投資者就不要加入挖礦隊伍了,喜歡就直接買買買。
(完)
參考文獻:
1、《How Do Cryptocurrency Mining Pools Work?》
https://www。
investopedia。com/tech/h
ow-do-mining-pools-work/
2、《
Mining Pools and How They Work
》
https://www。
cryptocompare。com/minin
g/guides/mining-pools-and-how-they-work/
3、《How do Mining Pools Work? Is it Better Than Solo Mining?》
https://
captainaltcoin。com/what
-is-pool-mining/
4、《
Mining Pool Methods
》
https://www。
bytecoin。party/mining-p
ool-methods/
5、《
淺談礦池協議
》
https://
blog。csdn。net/vinsuan19
93/article/details/78013894
6、《
比特幣挖礦難度與收益計算
》
https://
zhuanlan。zhihu。com/p/28
805231