Consensus
超級賬本共識協議。
我非常了解 PoW、PoS、PoA 等共識協議或在摩根大通的 Quorum(基於 Raft)、Istambul 等許可/私有區塊鏈上使用的其他變體。
但我還沒有進入 Hyperledger 共識協議及其實現規範和差異。
所以我的問題是:
- Hyperledger 上使用的共識協議是什麼?它是從上面提到的任何一個繼承而來的嗎?
- 它的變體(Fabric、Iroha、Sawtooth 和 Indy)之間的主要區別是什麼?
拜託,如果在答案中添加了有用的文件連結/文章/講座,那就太好了。
謝謝。
請記住,這
Hyperledger
是一個 Linux 基金會聯盟,指的是多個獨立的區塊鏈平台。上面缺少來自 Hyperledger Sawtooth 的共識算法,所以它們是:
PoET
已用時間證明(用於鋸齒的可選 Nakamoto 式共識算法)。SGX 的 POET 有 BFT。PoET Simulator 有 CFT。不像 PoW 風格的算法那樣佔用 CPU 資源,儘管它仍然可以分叉並擁有陳舊的塊。請參閱https://sawtooth.hyperledger.org/docs/core/release s/latest/architecture/poet.html上的 PoET 規範RAFT
在任意時間內選舉領導者的共識算法。如果超時,則更換領導者。Raft 比 PoET 快,但不是 BFT(Raft 是 CFT)。Raft 也不會分叉。Hyperledger Sawtooth 具有不可插拔共識的優勢。無需重新初始化區塊鏈甚至重新啟動軟體即可更改算法。以下是其他一些共識算法:
PoW
工作證明。完成工作(CPU 密集型 Nakamoto 式共識算法)。通常用於無許可區塊鏈PoS
股權證明。基於最多財富或年齡(stake)的中本式共識算法PBFT
實用的拜占庭容錯。使用狀態機的“經典”共識算法。使用領導者和塊選舉。PBFT 是一種三階段網路密集型算法(n^2 條消息),因此無法擴展到大型網路
將問題限制在 Hyperledger Burrow 1 - 它使用 EVM 的 Apache 許可實現 - 預設共識引擎是 Tendermint(網站;白皮書)。
從文件:
使用拜占庭容錯 Tendermint 協議對交易進行排序和最終確定。Tendermint 協議通過一組已知驗證器提供高交易吞吐量,並防止區塊鏈分叉。
1根據之前的討論,一般 Hyperledger Fabric 框架和相關項目沒有實現 EVM 的任何部分,或者與乙太坊相關的任何其他內容,可能是題外話。不幸的是,區塊鏈技術 SE網站在其 Area51 階段沒有得到足夠的支持,因此此類問題的最佳地點可能仍然是比特幣 SE 網站。