區塊鏈
挖礦,比特幣,EOS,以太坊

都說的比特幣挖礦,到底是在挖什么?

比特幣最迷人的地方就是挖礦了。為什么挖礦這么迷人?因為挖礦能獲得比特幣唄。我寫這篇文章的時候比特幣的價格是3900美元,如果能挖到一個區塊,就能獲得48750美元的挖礦收入和約6000美元的交易手續費收入,這不是非常迷人嗎?

那么到底什么是挖礦呢?礦工又如何通過挖礦獲得比特幣的呢?這就需要從比特幣區塊鏈系統采用的PoW(工作量證明)共識機制說起了。

于是想去食堂吃飯的人,就跑去推石頭了。出力多的人群最終實現了自己的愿望,出力少的人群也心甘情愿,因為村里一直都是這樣的規矩。

這個故事講了一種實現人群共識的方式,我們可以叫它“工作量證明機制”。利用出力的多少,來證明自己的選擇意愿。

在這個系列的第一篇文章里,我們講到了區塊鏈系統能夠讓所有人的賬本保持一致。這種讓所有節點數據保持一致的機制,我們稱之為共識機制。采用不同的共識算法,能夠實現不同性能的共識效果,其最終目的都是保持數據的一致性。

記錄工作量證明,不可篡改

我們已經知道,在比特幣系統中,記錄交易是系統工作的基礎方式。在比特幣區塊鏈系統中,區塊是記錄交易的最基本容器。在比特幣(BTC)中目前區塊大小限制為1MB,(前幾天剛剛誕生了一種新的虛擬貨幣,叫做比特幣現金——BCC,這個區塊大小限制目前是8MB)。由于區塊的大小有限制,因此每個區塊所能容納的交易數量也是有一定限制的。目前比特幣系統規定平均每10分鐘產生一個區塊,因此,礦工工作的方式實質上就是在10分鐘內收集網上產生的所有交易,然后將交易填到一個區塊里。這個區塊大約如下表所示:

注意第一條,在任何區塊里,第一條都是沒有轉出地址的,就是所謂的CoinBase(挖礦交易)。沒有任何人付給礦工這筆錢,礦工只是理所應當的寫上自己獲得了12.5比特幣。所有節點都認可礦工這樣寫,因此礦工就得到了挖礦收入。

不同的礦工在填寫區塊的時候,數據一定是不一樣的,因為每個礦工的第一條肯定不一樣,礦工只會把挖礦收入轉入自己的地址。所以礦工Michael的CoinBase是“Michael獲得了12.5比特幣”,礦工Nancy的CoinBase是“Nancy獲得了12.5比特幣”。

每一個礦工都把自己收集到的交易和自己該獲得的收入填好了,那么,到底誰的記錄才會被大家認可呢?比特幣就采用工作量證明機制,讓礦工互相間競爭求解一個數學題,誰先解出來了,誰的區塊就會被所有人認可。

“中本聰”決定采用工作量證明機制的時候,出發點是避免系統受到攻擊。“中本聰”認為,如果一個攻擊者想用搞亂賬本的方式來進行攻擊,那么他就需要足夠的計算能力。也就是說,他要比大多數推石頭的人的力量更大。這樣,他就需要付出巨大的成本,但是換回的收益并不足以抵消成本,因此攻擊者是沒有攻擊比特幣系統的經濟學動力的。

與推石頭的方式不同的地方在于,比特幣中是大家一起通過窮舉結果的方式,來求解一個數學題,并不是算力強的人每次都會贏,因為有人可能很幸運,一下子就搜索到了那個答案。而算力強的人,可能這次沒那么幸運,窮舉了很多次也沒有碰到解。但是從概率上看,求出答案的次數和自己在整個比特幣網絡中算力的比例是一致的,也就是說,如果一個礦工擁有了全網30%的算力,那么基本上在1000分鐘(產生了100個區塊)里,有30個區塊都是他找到的答案,他獲得了30%的挖礦收益。

但是,現在由于比特幣的價格越來越高,推石頭的人已經不滿足于自己去推了,而是把家里的大騾子大馬都派上去干活了。在“中本聰”最初的設計里,一個CPU一票,用算力來決定哪個礦工記的賬成為最終的賬目。隨著比特幣價格的增高,開始出現了GPU挖礦,后來人們又不滿足于GPU的速度,開始制造專用芯片挖礦。專用芯片在計算比特幣問題的能力上是普通CPU的數萬倍,因此現在比特幣已經不是“一個CPU一票”了,這也背離了當初“中本聰”的設計,比特幣網絡已經基本上被幾大礦池所壟斷,背離了去中心化貨幣這一初衷。

贊(0)

評論 搶沙發

  • 昵稱 (必填)
  • 郵箱 (必填)
  • 網址
p3试机号99