區塊鏈
挖礦,比特幣,EOS,以太坊

Filecoin: 影響力容錯(PFT)和預期共識(EC)

58

微信圖片_20180621151059.jpg

名字翻譯:
Power Fault Tolerance:影響力容錯
關于這個名字翻譯,小編思考了大約2周時間,期間也跟各路技術牛人進行了交流。
The Power Fault Tolerance model (PFT) unifies all these classes of protocols by modeling the influence participants have over the output of the protocol as power
這是filecoin協議里面對 PFT的解釋,power概念就是礦工的影響力(influence),“Power”是filecoin系統的投票權力的大小度量,根據礦工貢獻的Power來計算礦工的投票權有多大,根據信達雅的基本要求,所以稱為“影響力容錯”。
之前曾經考慮過“權利容錯”和“權益容錯”,“權利”這個詞本身表達不了大小的概念,而“權益”又跟Proof of Stake(權益證明:EC共識是在這個基礎上進行的,有必要區分)有沖突,于是小編把這個詞翻譯成影響力容錯。
或許有更貼切的表達方式,歡迎討論!
共識(Consensus):拜占庭共識共識—一個區塊鏈領域領域里面經常談起的一個概念,任何區塊鏈都無法繞開的一個問題。在我們的日常生活中,絕大多數機構都是中心化的,一家銀行,快遞公司,電商網站等等。共識是在參與者之間達成一致。由于中心化的機構由中心化的機構本身來維護共識,比如:銀行,幫我們所有人記賬,由國家權力保障,我們信任銀行,這是我們的經濟得以發展的基礎。
在區塊鏈領域里面,所有節點都是對等節點,就是說沒有任何一個節點有超越其他節點的權限。那么想在這么一個一盤散沙的節點中維護一個共識是一件非常難的事情,試想一下,大廣場上有1000個平等的互相不信任的人,要讓他們對一件事情做出共同的決策,其難度有多高?

起源在學術界里面這個問題起源于1982年Leslie Lamport(圖靈獎獲得者)在他的論文里面提出的“拜占庭將軍問題”(Byzantine Generals Problem),目的是解決分布式對等網絡的通信容錯問題。
拜占庭將軍問題描述:簡單的描述:假設有9個拜占庭將軍共同圍困一座城市,將軍之間都是平等的,他們的對于城市的策略只有兩種:進攻和撤退。如果一部分進攻一部分撤退,將會造成災難性的后果。9個將軍分布在城市的不同方向,只能通過信使進行通信。那么他們要達成一致,就需要進行投票,每位將軍根據收到的情報來決定進攻還是撤退。
問題是將軍里面會有叛徒,比如:當將軍的投票達到4個進攻4個撤退的時候,叛徒將軍可以采取對4個進攻的將軍投進攻票,對4個撤退的將軍投撤退票。決策的最終結果就會崩潰,一部分將軍選擇了進攻,一部分將軍選擇了撤退。
微信圖片_20180621151102.jpg
圍觀一下牛人:Leslie Lamport
在這個問題中,將軍投票達成一致協議,就叫做拜占庭共識,在有將軍叛變的情況下仍然能夠達成正確的共識就做拜占庭容錯,當然這是一個很簡化版的描述。(小編在巴比特上面找到一個講的比較全面的,大家可以參考一下:http://www.8btc.com/bitcoin-and-the-byzantine-generals-problem)。
將這個問題轉換到計算機里面,對等節點之間的通訊是通過電信號進行的,電信號是會出現各種干擾(例如磁場),0和1最終可能會發生錯誤。
這個難題困擾了學術界很久很久,直到1999年Miguel Castro和Barbara Liskov提出了實用拜占庭容錯算法PBFT(Practical Byzantine Fault Tolerance),提供了(n-1)/3節點的容錯。這是一個非常了不起的成就(算法的具體過程不屬于本文的討論范圍,有興趣的讀者可以自行Google一下)。
2009年中本聰使用工作量證明(Proof of Work)解決了這一問題,使得BTC能夠成為現實。
那么具體到Filecoin上,Filecoin是如何解決拜占庭容錯的呢?
Filecon在拜占庭容錯BTF的基礎上提出了改進版的拜占庭容錯,這就是 影響力容錯(Power Fault Tolerance)和預期共識(Expected Consensus),用來替代能源和計算資源嚴重浪費的工作量證明(Proof-of-Work)機制。
Filecoin的分布式網絡協議可以使用任何共識協議來實現,完全可以使用BTC的機制(Proof-of-Work)。但是BTC的工作量證明帶來的問題是能源和計算資源的巨大浪費,于是Filecoin協議拋棄這個共識機制,使用Proof-of-Spacetime(PoSt)來替代工作量證明.
PoSt是filecoin在驗證礦工存儲用戶數據的時候產生的,Filecoin把礦工在網絡中的當前存儲數據相對于整個網絡的存儲比例轉化為礦工投票權(voting power of the miner),重用PoSt來產生共識,太環保了,不用像BTC那樣浪費計算資源和能源,并且能激勵礦工投入更多的硬盤而不是計算資源和能源,為網絡做貢獻—–完美!!!
預期共識(Expected Consensus,EC):Filecoin的共識協議是基于權益共識(Proof-of-Stake)構建的,將權益共識里面的權益(stake)換成了存儲,這就是Filecoin的預期共識(Expected Consensus),策略是每一輪里面選舉出來一名或者多名礦工來創建新的block,礦工贏得選舉的可能性跟礦工已分配的存儲成比例。
在每一個周期里面,預期選舉出來的領導礦工(Leader)是1個,但是在某些情況下也會選舉出來多個領導礦工。被選舉出來的礦工創建新的block,并把新的block對網絡進行廣播。
盡管鏈中的block是線性的,但是filecoin的block數據結構采用的DAG(有向無環圖),可以在同一時間產生多個block(所以Filecoin的交易要比BTC的有效的多,這也是為什么把filecoin叫做“可能的blockchain 3.0”)。
共識是一個區塊鏈領域的核心,區塊鏈天生就是對等的分布式網絡,這就是所謂的去中心化。去中心化現在被吹的有點過了,去中心化不是萬物的靈藥,只是在自己領域里面有獨特的作用,中心化的效率還是非常高的。
所以不應一味的強調去中心化,而是應該根據實際的應用場景來決定使用范圍。
相信區塊鏈的共識協議會隨著區塊鏈的發展進化出更加美好的共識協議,區塊鏈也會逐步進化,成長!


 

贊(0)

評論 搶沙發

  • 昵稱 (必填)
  • 郵箱 (必填)
  • 網址
p3试机号99