挖礦節點計算機在挖礦時要做兩個任務:
- 第一個任務是把位元幣網路中未確認的交易按梅克爾樹組裝成候選區塊,未被納入的交易則往下順延,
- 在創建候選區塊時,除了普通的交易之外,礦工在其中增加一個特殊的交易:幣基交易(coinbase transaction),如果挖礦成功,則幣基交易會憑空轉出新區塊的獎勵位元幣到礦工的錢包地址中,從而發行這些位元幣出來,這個特殊交易也被叫作“創幣交易”,新的位元幣是在這一交易中被創造出來的,
挖礦節點計算機的第二個任務是真正的挖礦,即進行加密哈希計算,解決一個計算難題,進行算力競爭,在眾多爭奪記賬權的節點中,誰最先完成這個計算,它打包的區塊就被加到了區塊鏈的最后,成為最新的區塊,率先完成計算的礦工會贏得新區塊的挖礦獎勵,最初,成功挖出一個區塊,礦工可以獲得 50 個位元幣的獎勵,按規則,這個挖礦獎勵每四年減半一次,分別為 25 個、12.5 個,以此類推,
我們再討論兩個問題,以深入了解位元幣的作業量證明共識機制與它的挖礦機制,
第一,先向內看,位元幣礦工挖礦是在做什么?
在候選區塊的頭部有一個 32 位的亂數區域,礦工需要反復調整亂數并計算,目標是讓整個區塊的哈希值小于一個“目標值”,如果試過所有的 32 位亂數可能性后,計算仍未能成功,那么就要改變幣基(coinbase)的一個亂數,接著進行反復計算,
這個計算是加密哈希計算(對位元幣來說是 SHA-256),除了反復計算別無他法,這個計算量非常大,比如在 2015 年年底,在大約 2 的 68 次方個亂數中,只有一個可以成功,這個數字比全球總人口的平方還要大,
有意思的是,這種挖礦計算是非對稱的,你挖礦需要經過 2 的 68 次方個哈希計算,而我要驗證你的確找到有效的亂數,只需要一次就可以,
第一個完成這個計算難題的節點所打包的區塊就成為有效區塊,它向全網廣播告知自己已經完成,由其他節點確認后(即有別的挖礦節點在這個區塊的基礎上進行下一個區塊的挖礦,生成新的區塊),在等待 6 個區塊后,該挖礦節點就可以獲得這次位元幣獎勵,
位元幣的去中心網路能夠長期運行下來,現在有 1 萬多個全節點,正是因為有這樣的挖礦獎勵機制,出于對自己的利益考慮的礦工運維著這個不屬于任何人、完全去中心化的網路,
第二,再向外看,位元幣的挖礦機制在加入挖礦的計算機的算力不斷增加的情況下,這個挖礦機制是如何保持穩定的?
位元幣挖礦的芯片已經經過幾輪演變,其計算能力越來越強:從 CPU 演變到 GPU(顯卡),再到現場可編程門陣列(FPGA),再到現在的專用集成電路技術(ASIC),即只能進行位元幣挖礦所需的哈希計算的專用芯片中,并且隨著礦機的升級迭代和數量增多,接入位元幣區塊鏈網路、參與挖礦競爭的計算算力越來越大,
相應地,位元幣系統有這樣一個對應的機制設計:隨著算力的增長,調整目標值的難度使得挖出一個區塊的時間始終是 10 分鐘左右,
這形成了一種動態的平衡,維持區塊鏈網路經濟激勵的有效與穩定,這個決定難度的公式非常簡單明了,每挖出 2016 個區塊,也就是經過約兩個星期,挖礦難度會進行一次調整,該公式是:
下一個難度 = 上一個難度 × 2016 × 10分鐘 / 產生2016個區塊所需的時間
如果算力突然大幅度上升,產生上一組 2016 個區塊所需的時間變短,那么難度就會上升,在某些特殊情況下,如果產生上一組 2016 個區塊所需的時間變長,那么難度也會下降,但這樣的情況并不多見,
因此,位元幣礦工節點的挖礦是它在運行分布式賬本與去中心網路,同樣重要的是,它也是位元幣的發行機制和整個社區的激勵機制,
位元幣的挖礦是位元幣的唯一發行機制,從中本聰挖出第一個區塊獲得 50 枚位元幣開始,位元幣這個加密數字貨幣就以這樣的去中心化方式不斷地發行了出來,
位元幣區塊鏈網路是由眾多節點組成的去中心網路,而這些計算機節點加入這個網路,維護分布式賬本,是因為中本聰在設計系統時巧妙地加入了經濟激勵:眾多位元幣礦工(即挖礦節點)在競爭獲得記賬的權利,礦工每增加一個新的區塊能獲得對應的記賬獎勵,
位元幣的經濟系統是以“競爭-記賬-獎勵”回圈為核心的(見圖1),其中“競爭”非常重要,即挖礦節點進行的算力競爭,在位元幣系統這樣一個去中心網路中,節點參與是出于獲得經濟獎勵的自利動機,而記賬權利和對應的獎勵需要通過競爭來獲得,
在區塊鏈的相關探討中,有把“挖礦”一詞的含義擴大的傾向,在這里我們認為,只有生成區塊的計算行為,即運維分布式賬本與去中心網路的行為,才是真正意義上的挖礦,簡單地說,只有生產區塊,才是挖礦,即便放寬要求,不再強求只有計算機節點生產區塊才是挖礦,我們也仍想強調,競爭獲得對應的權利和獎勵,仍是必須的,沒有競爭的獎勵,是很難真實有效的,

圖1:位元幣的“競爭-記賬-獎勵”回圈
通過討論位元幣區塊鏈的五個技術性細節,我們再一次看到,位元幣系統在發行和交易層面都實作了完全的去中心化:
- 一個交易的確認,被寫入分布式賬本記錄下來,是由去中心網路中互不信任的節點為了自己的利益相互以算力進行競爭而確認的,
- 在競爭挖礦的程序中,位元幣的發行是“憑空發行貨幣”,它的貨幣發行也是靠這個去中心網路的算力競爭來完成的,是去中心化的,
位元幣作為區塊鏈 1.0 的典型,完成了價值表示和價值轉移的概念驗證(見圖2),
位元幣區塊鏈是非常精妙的設計,它無須任何人的居中協調與領導就能持續發展,位元幣可能是迄今為止最成功的加密數字貨幣,位元幣區塊鏈在加密數字貨幣的應用上堪稱完美,
位元幣區塊鏈即“區塊鏈1.0”是專為去中心化的電子現金設計的,而要在各個領域中廣泛應用,我們需要有更通用、性能更好的區塊鏈系統,

在位元幣系統之后出現了常被認為是“區塊鏈 2.0”代表的以太坊,現在,更多專案在競爭成為“區塊鏈 3.0”,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/5270.html
標籤:區塊鏈
