數字簽名是使用您的私人金鑰生成的,只有您(所有者)有權訪問該私鑰。公鑰可以被其他人用來確認數字簽名確實是由與公鑰相關聯的私鑰生成的。
移清除第三方
既然PoW的認證系統已經消除了偽造的威脅,那麼出現了另一個問題: “我們怎麼能相信每個參與者都能傳播有效的資訊?“在傳統的資訊系統或集中式資料庫中,一個獨立的第三實體管理這個分類帳。但是在區塊鏈中,這就是工作量證明的來源。
將雜湊函式應用於用數字簽名簽名的訊息時,將生成最終的256位雜湊值。
現在,為了進一步影響這個最終雜湊值,在交易結束時新增一個名為nonce的數字。這個數字的作用是影響最後的雜湊,使它以一定數量的連續零開始。
由於在這種形式的加密雜湊函式中不可能進行逆計算,因此獲得這個nonce的惟一方法是透過反覆試驗。
但是計算出一個數字有多難呢?
假設我們要算出nonce,它將指定一個以30個0開頭的最終雜湊,並且假設我們的雜湊由1和0組成,或者每一位有兩種可能。
這將使我們的概率達到½30,或十億分之一的機會來猜測這個數字。
計算nonce將需要大量的時間和計算工作,這將證明某人已經完成了識別這個數字所需的工作,因此是“工作的證明”。
一旦確認了nonce,其他參與者可以在這個號碼上執行SHA256來立即確認nonce的有效性。
然後將所有這些資訊壓縮成一個區塊並新增到一個鏈中。當形成一個新區塊時,它還包含前一個區塊的雜湊,這也是決定新塊雜湊的因素之一。
如果有惡意意圖的人改變儲存在區塊鏈中的資料,則需要整個網路50%以上的計算能力,才能以比網路其他部分更快的速度繼續產生非程式碼。
任何等於或少於網路計算能力的50%,網路的其餘部分最終將質疑不良行為者的計算能力和有效性,並拒絕其在區塊鏈中更改資料的企圖。
激勵工作量證明
這種區塊建立的計算方法耗費了大量的時間和精力。為什麼會有人這麼做呢?
答案就是所謂的“礦工獎勵”。
對於比特幣來說,執行足夠多的加密工作的區塊建立者將獲得BTC作為獎勵,因此在經濟中加入一種有價值的資源(以加密貨幣的形式)---因此就有了採礦。
比特幣協議平均每10分鐘就能在世界某個地方挖出一個比特幣區塊。它透過週期性地改變最終雜湊中起始零點的數目來做到這一點。
從技術上講,隨著越來越多的礦工加入網路,開採速度應該會隨著時間的推移而提高。但是,透過調整0的數量,猜測PoW的難度也會隨之調整。因為採礦沒有捷徑,只需要原始的計算能力,通常只有能夠獲得免費或低成本電力的礦工才能“證明”自己的“工作”足以獲利。
對工作量證明的批評
對工作量證明系統的最大威脅是所謂的51%攻擊。由於採礦業的競爭變得如此激烈,成本如此高昂,許多礦商加入了礦池或礦商集團。在這個類似彩票的獎勵系統中,他們有更大的機會猜出正確的時間並獲得礦工的獎勵。如果這些組織中的一些人決定聯合起來,他們可能擁有超過51%的網路計算能力。從本質上說,如果一個團體或參與者足夠強大,它就可以決定什麼是真的,什麼是假的,並接管一切。
在現實世界中,有51%的攻擊偶爾發生。2019年1月,Coinbase檢測到了15次Etalum經典(ETC)區塊鏈的重組,其中12次為雙倍支出,總計超過219,000ETC,即當時約110萬美元。幸運的是,Coinbase在發現異常活動後暫停了所有等交易,沒有影響Coinbase賬戶。
所謂的51%攻擊也被用來防禦51%的攻擊。去年5月,比特幣現金開採池BTC.com和BTC.top策劃了一次51%的網路攻擊,目的是扭轉來自未知礦商的無效交易。
但並非總能及時採取足夠的防禦措施。今年早些時候,惡意的礦工在兩天內以兩次51%的攻擊攻擊了比特幣黃金,並透過雙倍支出偷走了7.2萬美元。這起成功的搶劫案發生在2018年臭名昭著的51%比特幣黃金攻擊事件之後,導致1,800萬美元的損失。
對PoW機制的另一個批評是其巨大的電力。
根據劍橋另類金融中心(Cambridge Centre For Alternative Finance)的資料,比特幣採礦每年消耗88太瓦特小時(TWh)。
截至本文發表之日,如果比特幣是一個國家,它的年用電量將在全球排名第37位,超過智利和菲律賓。