什麼是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共識算法的局限性之一。

* 投資有風險,入市須謹慎。本文不作為 Gate.io 提供的投資理財建議或其他任何類型的建議。
* 在未提及 Gate.io 的情況下,複製、傳播或抄襲本文將違反《版權法》,Gate.io 有權追究其法律責任。

什麼是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共識算法的局限性之一。

* 投資有風險,入市須謹慎。本文不作為 Gate.io 提供的投資理財建議或其他任何類型的建議。
* 在未提及 Gate.io 的情況下,複製、傳播或抄襲本文將違反《版權法》,Gate.io 有權追究其法律責任。
即刻開始交易
註冊並交易即可獲得
$100
和價值
$5500
理財體驗金獎勵!