為什麼工作量證明、權益證明與共識機制/算法相關聯?
許多人經常將工作證明、股權證明等與區塊鏈共識算法/機制聯繫起來。
我認為這種關聯是不准確的。是的,工作證明/權益證明是選舉領導者驗證交易的機制。這是建立共識的關鍵部分,但不是唯一的。例如,在比特幣區塊鏈中,最長的鏈獲勝——對我來說,這也被認為是在節點之間建立共識的關鍵部分。
作為一個區塊鏈納粹,對我來說,將 Paxos、Raft、PBFT 等分佈式共識算法稱為共識算法/機制是有意義的,因為它具有理論/數學基礎。
那麼為什麼工作證明、股權證明與共識機制/算法可以互換使用呢?
據我了解,當您添加區塊時,區塊鏈可能會暫時分裂。
例如,剛剛添加了塊 A,但同時添加了塊 B。這會在鏈 A 和鏈 B 中產生分裂。區塊會不斷地添加到兩者上,但最終網路同意一條鏈,而另一條鏈被丟棄。這就是為什麼當您將乙太幣存入交易所時必須等待確認,他們正在等待網路對存款實際發生的共識。
所以它是一種機制,雖然不是形成共識的最佳機制。您提到的使用 PBFT 的區塊鏈範例是 zilliqa。
好問題!我自己一直在為此苦苦掙扎。
答案是因為中本聰在比特幣白皮書中將 PoW 稱為共識機制:
節點可以隨意離開和重新加入網路,接受工作量證明鏈作為他們離開時發生的事情的證明。他們用他們的 CPU 能力投票,通過努力擴展它們來表達他們對有效塊的接受,並通過拒絕處理它們來拒絕無效塊。任何需要的規則和激勵措施都可以通過這種共識機制來執行
然而,文章:A Primer on Blockchain Design指出它們不是共識機制!
PoW、PoS 和 DAG 不是共識協議 工作量證明、股權證明和有向無環圖的大肆宣傳的概念經常被錯誤地宣傳為“共識協議”。它們都不是,而是解決了強大的區塊鏈設計的關鍵挑戰:Sybil 抗性和非同步性。
這個推特執行緒探討了我們應該稱之為女巫抵抗機制的想法:
https://twitter.com/el33th4xor/status/1006931658338177024
On Quora:共識算法是否只有工作量證明、股權證明、經過時間證明等?
我們可以將宇宙劃分為四種共識算法:
已知參與者、非拜占庭失敗:Paxos、Raft
未知參與者、有限攻擊模式:Chord(原始)和其他分佈式雜湊表
已知參與者、拜占庭失敗:PBFT、UpRight、拜占庭 Paxos
未知參與者、拜占庭失敗:Proof of Work、Proof股權,S-和弦
$$ snip $$ 我不認為我見過其他人做出同樣的分類。我根據我知道的例子把它放在一起。
我認為將 PoW 和 PoS 視為分佈式共識算法的組成部分當然更準確;它們本身不是算法。