PoW vs. BFT

写在前面

比特币挖矿对应PoW(工作量证明)、拜占庭容错对应BFT。

PoW和BFT目的都是在去中心化且不可信的分布式环境中达成共识,但两者思路不同,所能达成的共识在效果上存在细微差别,而在性能(吞吐率和可扩展性)上面则呈现两极分化。

PoW

  • PoW可以认为是间接达成共识。它的做法是网络的参与者都在努力解决一个数学难题,该题目很难得到答案(且只能那个用类似穷举的方法来求解),但很容易验证答案是否正确。

  • 由于产生的区块可能分叉,比特币网络通常需要等待6个区块才能以很高的概率确认某个交易被网络接受。

  • 无须任何身份认证。

  • 放宽了对一致性的要求,满足可用性和分区容忍性。(CAP理论)

BFT

  • BFT可认为是直接达成共识。网络的参与者直接通过投票的方式来决定共识的内容。

  • 一旦达成一致,新的共识就会被加入到区块链上去。(即共识的不可改变性)

  • 需要每个节点的身份以及数字证书(这就是最大的限制,于是才有了后来的FBFT中的SCP)

  • 在分区容忍性上做出让步,满足一致性和可用性。(CAP理论)

对比总结

  • 性能对比
响应时间 吞吐率 可扩展性
PoW
BFT
  • CAP理论
一致性 可用性 分区容忍性
PoW
BFT
posted @ 2022-08-12 19:52  Weisswire  阅读(126)  评论(0编辑  收藏  举报