VNBIG科普貼:比特幣的工作量證明(PoW),你瞭解多少?

“在一個互不認識、沒有中心、缺乏互信的環境裡,大家只需要在長的區塊鏈上工作,就能保證系統信息的真實性,這就是‘工作量證明’機制。”長江商學院副教授李洋如此評論比特幣工作量證明機制。如果你還是無法完全get,那麼請跟隨VNBIG更詳細地瞭解一番。

1、什麼是POW?

工作量證明機制隨著比特幣價格的暴漲而廣為人知,但是工作量證明這種理念卻由來已久,這一概念最早由Cynthia Dwork和Moni Naor於1993年的學術論文提出,而工作量證明一詞則是在1999年由Markus Jakobsson與Ari Juels所發表。PoW要求用戶進行一些耗時適當的複雜運算,並且答案能被服務方快速驗算,以此耗用的時間、設備與能源做為擔保成本,以確保服務與資源是被真正的需求所使用。

2、POW機制如何運轉?

簡要地說,POW機制在運轉過程中,主要分為以下幾個步驟:

1)各節點獨立記錄全網數據,並對數據進行初步驗證、存儲;

2)各節點憑藉自身算力嘗試不同的隨機數,規矩規則進行哈希計算,直至找到符合要求的隨機數;

3)找到合理的隨機數後,生成區塊信息,首先輸入區塊頭信息,然後是數據記錄信息;

4)接單對外部廣播出新產生的區塊,其他節點驗證通過後,連接至區塊鏈中,主鏈高度加一,然後所有節點切換至新區塊後面繼續進行工作量證明和區塊生產。

VNBIG科普貼:比特幣的工作量證明(PoW),你瞭解多少?

3、POW和比特幣

眾所周知,比特幣就是通過POW機制維護區塊鏈的整體運行及其安全性。驗證節點通過隨機的散列運算,爭奪比特幣區塊鏈的記賬權,防止欺詐交易,避免“雙重支付”,這一過程需要消耗電力和算力來完成。因此,驗證節點被形象的稱為“礦工”,隨機數計算查找過程稱為“挖礦”。每一個比特幣區塊鏈中的區塊都包含著一個由無意義數據構成的短字符串(稱為隨機數),找到一個合適的隨機數唯一已知的方法是不停地隨機試探直到搜索到一個有效的數。比特幣的POW中,平均每10分鐘有一個節點找到一個區塊。

比特幣挖礦也經歷了由個人電腦(CPU)到GPU到專業礦機再到聯合礦池的發展歷程,在這其中,挖礦難度和算力水平都有了相當的提高。目前比特幣的挖礦工作已經由幾大礦池所瓜分,全網算力維持在51.34 EH/s上下。

4、POW下的挖礦有何意義?

在比特幣等數字貨幣的挖礦過程中,可以實現以下三個功能:一是發行新的貨幣;二是維繫系統的支付功能;三是通過算力保障系統安全。首先,挖礦消耗資源將黃金注入流通經濟,比特幣通過“挖礦”完成相同的事情,只不過消耗的是 CPU 時間與電力,比特幣的可觀收益,也是吸引眾多礦機、礦池積極加入的重要原因。其次,挖礦用於產量調節,區塊的產量為大約每兩週2016個,即每10分鐘一塊。第三,通過算力保障系統安全。

5、POW面臨的主要問題?

目前POW最為人所詬病的主要有資源、電力浪費和算力過於集中兩大問題。由於POW機制下,礦工實際所做的大部分工作是尋找正確的隨機數,而這一過程與數據記錄無關,用來尋找隨機數的能量和資源大多被白白浪費。另外一點,現階段大量的算力集中在比特大陸、螞蟻礦池等幾大機構手中,一方面算力難度不斷提高使得個人礦工難以加入,另一方面算力的持續集中讓人不免為潛在的51%攻擊可能給比特幣網絡帶來的威脅為擔憂。

除了POW,也有不少區塊鏈網絡採用了POS、DPOS、PBFT等共識算法,或者將其中兩種或多種算法相結合,在確保安全和提高效率以及節約能源之間尋找一個平衡點,隨著區塊鏈技術的不斷提升,我們相信在未來一定可以找到一個完美的解決辦法。


分享到:


相關文章: