什麼是PoW(工作量證明)?

新手7/16/2024, 2:38:30 AM
在加密世界中,PoW 是區塊鏈網路的底層共識模型,是使各節點在網路中的達成一致的標準,以此來確認交易並爲區塊鏈生成新區塊,並在此過程中建立激勵機制,用作對生成區塊的節點的獎勵。

工作量證明(Proof of Work,簡稱PoW),類似於現實生活中的畢業證或駕駛證,通過檢驗結果的方式(如通過相關的考試)來獲得認證。在加密世界中,PoW 是區塊鏈網路的底層共識模型,是使各節點在網路中的達成一致的標準,以此來確認交易並爲區塊鏈生成新區塊,並在此過程中建立激勵機制,用作對生成區塊的節點的獎勵。
[圖片]

PoW 的提出

PoW (Proof of Work)工作量證明相關的學術研究最早始於20世紀90年代初。1993年,美國計算機科學家、哈佛大學教授辛西婭·德沃克(Cynthia Dwork)提出了工作量證明思想,用來解決垃圾郵件問題。
1997年,亞當·貝克(Adam Back)發明的哈希現金(HashCrash)技術中應用了工作量證明機制,用於抵抗郵件的
拒絕服務攻擊及垃圾郵件網關濫用,強制要求每個郵件發送者,必須進行一段哈希運算,人爲造成一小段時間的延遲。
哈希現金技術後來被廣泛用於垃圾郵件的過濾,也被微軟用於著名的Hotmail、Exchange,Outlook等產品中)。
2008年,中本聰在發表的《比特幣:一種點對點的電子現金系統》等相關論文中,首次將工作量證明思想應用於區塊鏈共識過程中,提出了比特幣系統的區塊鏈PoW共識算法。

原理

PoW共識算法的工作基礎是哈希函數,對於一個一定長度的的字符串輸入s,哈希函數H(s)輸出結果的長度是固定的,並且計算H(s)的過程是高效的。而對於比特幣、以太坊等典型區塊鏈系統所使用的哈希函數,還需要具備以下3個前提。
前提1:哈希函數要避免碰撞,即不會出現輸入的值不同,但得到的哈希值一樣。
前提2:計算過程不可逆,對於一個給定的輸出結果H(s),想要逆向推導出輸入s,在計算上是不可能的。
前提3:不能使用窮舉法之外的其它方法使哈希函數計算結果H(s)落在特定的範圍。

如何運作

PoW 共識算法的參考流程如下:
(1)系統指定一個全局難度值,根據該難度值可以決定下一個區塊的哈希計算結果必須滿足的要求,一般是要求哈希值小於某個值,爲了保證出塊時間穩定,隨着系統的節點規模逐步增大,難度值也會逐步增加,並且每過一段時間系統會調整難度值;
(2)系統各節點將接收到的多個交易信息打包到新區塊的區塊體中;
(3)系統各節點構根據新區塊體中的交易信息組裝新區塊的區塊頭,區塊頭一般應包含上一個區塊的哈希值、由新區塊打包的交易信息生成的哈希值、當前系統確定的難度值、時間戳、隨機數Nonce的值;
(4)系統各節點使用區塊鏈系統規定的哈希算法進行計算,如比特幣系統採用的雙重SHA256哈希函數,並將計算結果與系統當前的難度值進行比較,如果哈希值不滿足難度值要求,則修改區塊頭中的隨機數Nonce的值,循環進行下一次哈希值的計算;如果節點成功計算出滿足難度值要求的哈希值,則馬上對系統統所有節點廣播新區塊信息;

(5)節點收到來自其它節點的廣播後,會對收到的新區塊信息具進行驗證,如比特幣系統節點對收到的新區塊頭進行雙重 SHA256 哈希計算。如果驗證通過,就不會再競爭當前區塊,而是選擇接受新區塊,寫入到分布式帳本的本地副本中。
(6)系統各節點開始下一輪出塊權的競爭。
在PoW 算法中,系統中只有最快計算出滿足難度值要求的希值的節點,才會擁有將新區塊添加到分布式帳本中的權力,而其它節點只允許對主節點創建的新區塊進行復制,從而確保每個節點中分布式帳本刷本數據的一致性。

局限性

PoW 共識算法依靠算力競爭來分配記帳權,隨着區塊鏈系統節點規模的快速增加,必然造成巨大的算力資源和電力浪費,據相關數據,2020 年比特幣系統消耗電力達 1348.9 億度電,相當於一個省全年的用電量,這是PoW算法最大的局限性。
同時 PoW 共識算法由於運算時間過長,變得獲得記帳權的等待時間變久交易確認週期也會變長,嚴重影響產生區塊的效率,例如比特幣系統,目前大概是每10分鍾產生一個區塊,因此比特幣系統無法每秒交易處理,性能 TPS 也是PoW共識算法的局限性之一。

* The information is not intended to be and does not constitute financial advice or any other recommendation of any sort offered or endorsed by Gate.io.
* This article may not be reproduced, transmitted or copied without referencing Gate.io. Contravention is an infringement of Copyright Act and may be subject to legal action.

什麼是PoW(工作量證明)?

新手7/16/2024, 2:38:30 AM
在加密世界中,PoW 是區塊鏈網路的底層共識模型,是使各節點在網路中的達成一致的標準,以此來確認交易並爲區塊鏈生成新區塊,並在此過程中建立激勵機制,用作對生成區塊的節點的獎勵。

工作量證明(Proof of Work,簡稱PoW),類似於現實生活中的畢業證或駕駛證,通過檢驗結果的方式(如通過相關的考試)來獲得認證。在加密世界中,PoW 是區塊鏈網路的底層共識模型,是使各節點在網路中的達成一致的標準,以此來確認交易並爲區塊鏈生成新區塊,並在此過程中建立激勵機制,用作對生成區塊的節點的獎勵。
[圖片]

PoW 的提出

PoW (Proof of Work)工作量證明相關的學術研究最早始於20世紀90年代初。1993年,美國計算機科學家、哈佛大學教授辛西婭·德沃克(Cynthia Dwork)提出了工作量證明思想,用來解決垃圾郵件問題。
1997年,亞當·貝克(Adam Back)發明的哈希現金(HashCrash)技術中應用了工作量證明機制,用於抵抗郵件的
拒絕服務攻擊及垃圾郵件網關濫用,強制要求每個郵件發送者,必須進行一段哈希運算,人爲造成一小段時間的延遲。
哈希現金技術後來被廣泛用於垃圾郵件的過濾,也被微軟用於著名的Hotmail、Exchange,Outlook等產品中)。
2008年,中本聰在發表的《比特幣:一種點對點的電子現金系統》等相關論文中,首次將工作量證明思想應用於區塊鏈共識過程中,提出了比特幣系統的區塊鏈PoW共識算法。

原理

PoW共識算法的工作基礎是哈希函數,對於一個一定長度的的字符串輸入s,哈希函數H(s)輸出結果的長度是固定的,並且計算H(s)的過程是高效的。而對於比特幣、以太坊等典型區塊鏈系統所使用的哈希函數,還需要具備以下3個前提。
前提1:哈希函數要避免碰撞,即不會出現輸入的值不同,但得到的哈希值一樣。
前提2:計算過程不可逆,對於一個給定的輸出結果H(s),想要逆向推導出輸入s,在計算上是不可能的。
前提3:不能使用窮舉法之外的其它方法使哈希函數計算結果H(s)落在特定的範圍。

如何運作

PoW 共識算法的參考流程如下:
(1)系統指定一個全局難度值,根據該難度值可以決定下一個區塊的哈希計算結果必須滿足的要求,一般是要求哈希值小於某個值,爲了保證出塊時間穩定,隨着系統的節點規模逐步增大,難度值也會逐步增加,並且每過一段時間系統會調整難度值;
(2)系統各節點將接收到的多個交易信息打包到新區塊的區塊體中;
(3)系統各節點構根據新區塊體中的交易信息組裝新區塊的區塊頭,區塊頭一般應包含上一個區塊的哈希值、由新區塊打包的交易信息生成的哈希值、當前系統確定的難度值、時間戳、隨機數Nonce的值;
(4)系統各節點使用區塊鏈系統規定的哈希算法進行計算,如比特幣系統採用的雙重SHA256哈希函數,並將計算結果與系統當前的難度值進行比較,如果哈希值不滿足難度值要求,則修改區塊頭中的隨機數Nonce的值,循環進行下一次哈希值的計算;如果節點成功計算出滿足難度值要求的哈希值,則馬上對系統統所有節點廣播新區塊信息;

(5)節點收到來自其它節點的廣播後,會對收到的新區塊信息具進行驗證,如比特幣系統節點對收到的新區塊頭進行雙重 SHA256 哈希計算。如果驗證通過,就不會再競爭當前區塊,而是選擇接受新區塊,寫入到分布式帳本的本地副本中。
(6)系統各節點開始下一輪出塊權的競爭。
在PoW 算法中,系統中只有最快計算出滿足難度值要求的希值的節點,才會擁有將新區塊添加到分布式帳本中的權力,而其它節點只允許對主節點創建的新區塊進行復制,從而確保每個節點中分布式帳本刷本數據的一致性。

局限性

PoW 共識算法依靠算力競爭來分配記帳權,隨着區塊鏈系統節點規模的快速增加,必然造成巨大的算力資源和電力浪費,據相關數據,2020 年比特幣系統消耗電力達 1348.9 億度電,相當於一個省全年的用電量,這是PoW算法最大的局限性。
同時 PoW 共識算法由於運算時間過長,變得獲得記帳權的等待時間變久交易確認週期也會變長,嚴重影響產生區塊的效率,例如比特幣系統,目前大概是每10分鍾產生一個區塊,因此比特幣系統無法每秒交易處理,性能 TPS 也是PoW共識算法的局限性之一。

* The information is not intended to be and does not constitute financial advice or any other recommendation of any sort offered or endorsed by Gate.io.
* This article may not be reproduced, transmitted or copied without referencing Gate.io. Contravention is an infringement of Copyright Act and may be subject to legal action.
Start Now
Sign up and get a
$100
Voucher!