1. 程式人生 > >共識演算法-PoS(股權證明)演算法

共識演算法-PoS(股權證明)演算法


title: 共識演算法-PoS(股權證明)演算法
tags: 區塊鏈,共識演算法


為什麼會出現PoS?

        在比特幣系統中採用了PoW(工作量證明)演算法,PoW其實就是由所有的節點相互競爭,提交一個難於計算但是容易驗證的計算結果,任何節點都可以驗證這個這個結果的正確性,驗證通過即算這個節點完成了大量的計算工作。

        然而PoW機制存在明顯的弊端。 一是算力不公平,礦場的競爭力比單個節點大,還有就是隨著硬體的發展,特別是量子計算機的出現,可能幾秒就破解了Hash。 二是PoW演算法太浪費了,比特幣網路每秒可完成數百萬億次SHA256計算, 但這些計算除了使惡意攻擊者不能輕易地偽裝成幾百萬個節點和打垮比特幣網路,並沒有更多實際或科學價值。

        有鑑於此, 人們提出了一些工作量證明的替代者。 權益證明( Proof of Stake, PoS)就是其中的一種方法。

PoS股權證明

        權益證明( Proof of Stake,PoS) ,最早在 2013 年被提出,最早在 Peercoin 系統中被實現,類似現實生活中的股東機制,擁有股份越多的人越容易獲取記賬權( 同時越傾向於維護網路的正常工作) 。

        典型的過程是通過保證金( 代幣、資產、名聲等具備價值屬性的物品即可) 來對賭一個合法的塊成為新的區塊,收益為抵押資本的利息和交易服務費。提供證明的保證金( 例如通過轉賬貨幣記錄) 越多,則獲得記賬權的概率就越大。合法記賬者可以獲得收益。

        PoS 試圖解決在 PoW 中大量資源被浪費的缺點,受到了廣泛關注。惡意參與者將存在保證金被罰沒的風險,即損失經濟利益。一般的,對於 PoS 來說,需要掌握超過全網 1/3 的資源,才有可能左右最終的結果。這個也很容易理解,三個人投票,前兩人分別支援一方,這時候,第三方的投票將決定最終結果。

        在股權證明模式下, 有一個名詞叫幣齡, 每個幣每天產生1幣齡, 例如,你持有100個幣, 總共持有了30天, 那麼, 此時你的幣齡就為3000, 這個時候, 如果你發現了一個PoS區塊, 你的幣齡就會被清空為0。 你每被清空365幣齡, 你將會從區塊中獲得0.05個幣的利息( 可以理解為年利率5%) , 那麼在這個案例中, 利息=3000×5%/365=0.41個幣。

        以現有的比特幣執行發展情況來看, 比特幣每年的挖礦產量都在不斷減半, 我們可以預計, 隨著比特幣產量的不斷降低, 礦工人數也會越來越少, 這樣就會導致整個比特幣網路的穩定性出現問題。 PoS的解決方案是鼓勵大家都去開啟錢包客戶端程式, 因為只有這樣才可以發現PoS區塊, 才會獲得利息, 這也增加了網路的健壯性。還有當礦工數量變少的時候,比特幣被51%算力攻擊就越容易。

PoS 的優缺點

優點

1.省資源:不需要挖礦,不需要大量耗費電力和能源。
2.更加去中心化:相對於比特幣等PoW型別的加密貨幣,更加去中心化,相比PoW演算法的51%算力攻擊,PoS需要購買51%的貨幣,成本更高,沒有攻擊意義。
3.避免通貨膨脹:PoS機制的加密貨幣按一定的年利率新增貨幣,可以有效避免緊縮出現,保持基本穩定。

缺點

1.開發者作惡:純PoS機制的加密貨幣,只能通過IPO的方式發行,這就導致“少數人”(通常是開發者)獲得大量成本極低的加密貨幣,在利益面前,很難保證他們不會大量拋售。

2.信用度低: PoS機制的加密貨幣,信用基礎不夠牢固。 為解決這個問題,很多采用PoW+PoS的雙重機制,通過PoW挖礦發行加密貨幣,使用PoS維護網路穩定。或者採用DPoS機制,通過社群選舉的方式,增強信任。