PoW Makes Decentralization & Rightness
為何說PoW能做到「去中心化」?
剛剛我們說一旦新區塊產生後,
其餘礦工便由競爭模式改為共同維護更新該區塊模式。
這意味,
藉由允許讓每個人參加驗證交易,
來實現一個能多方共同維護的單一系統,
並共享同一份記錄交易的帳本,
以形成一個基於零信任基礎,
卻能實現去中心化的 P2P 網路系統。
為何說PoW也能做到公正性?
進行 POW 計算的過程俗稱挖礦,很多人也常用算一道數學題形容。
不過,這道數學題目是甚麼?
(以下內容請服用下圖!)

每個區塊中 Block Header 包含許多固定的值,其中只有 Nonce 值為隨機值。每個節點(礦工ㄉ意思)進行 POW 時,要不斷替換這個 Nonce 值,讓這個區塊的 Block Header Hash 值要小於一個被設定好的難度目標值(Difficulty Target)。
這裡提到的難度值(Difficulty)是指,節點要運算出低於困難度目標值的Hash值,平均需花多久時間;換句話說,平均要完成一次POW的時間。
在比特幣區塊鏈設定的難度值為,大約每10分鐘會有節點成功算出新的區塊。不過這10分鐘只是基於理論值,實際每個新區塊產生的時間,有可能只需要17秒,也有可能需要20分鐘以上。
Difficulty 可動態調整,目前每產生2016個區塊會調整一次難度,以每10分鐘產生一區塊估算,大約是每兩周會調整一次 Difficulty。 由於POW具有一定的難度,因此無法預期哪個運算節點可以最快算出新區塊,藉此來確保交易驗證的公正性。