热门话题
#
Bonk 生态迷因币展现强韧势头
#
有消息称 Pump.fun 计划 40 亿估值发币,引发市场猜测
#
Solana 新代币发射平台 Boop.Fun 风头正劲
Monad如何在保持去中心化的同时扩展EVM?
MonadBFT是Monad中使用的共识算法,它是Hotstuff的第一个抗尾叉实现(这是什么意思?)
以下是MonadBFT如何在保持高性能的同时扩展到数千个验证者的方式 🧵
1/7 共识机制
区块链用来确保新块被大多数验证者达成一致的机制。
到目前为止,共识算法无法扩展到几百个验证者以上,因为复杂性通常是基于验证者数量的平方增加。
由于每个验证者都与所有其他验证者进行沟通以达成对区块的共识:n 个验证者 x n 条消息 = n 平方条消息。
因此,随着验证者数量的增加,复杂性显著增加。
2/7 Hotstuff 是一种共识算法,通过避免全对全的消息传递并允许单个“领导者”与所有验证者进行通信,从而可以线性扩展(与验证者数量成正比)。
因此,Hotstuff 的扩展效率优于传统的 PBFT 共识,但它容易受到尾分叉攻击。
MonadBFT 是 Hotstuff 的第一个抗尾分叉实现。
3/7 什么是尾分叉?
尾分叉发生在下一个领导者(提议下一个区块的验证者)故意或意外地未能在其新区块提案中包含前一个领导者有效区块的QC(合格证书)。(QC代表合格证书,是所有验证者对前一个区块达成一致的证明)
因此,尽管前一个区块是有效的并且得到了大多数支持,但仍然未被提交,最终被孤立或被同一高度的不同区块替代。
这破坏了激励机制:诚实的提议者如果他们的区块被跳过,可能无法获得区块奖励或费用,从而鼓励不公平行为并削弱网络的安全性。

4/7 MonadBFT 是如何工作的?
→ 一位领导者(Alice)向所有其他节点广播一个签名的区块提案(fan out),其他节点通过向下一个领导者 Bob 发送签名的证明来确认其有效性(fan in)。
→ Bob 将证明汇总成一个“法定证书”(QC)
→ Bob 将 QC 广播给所有节点,节点通过向第三位领导者(Charlie)发送消息来证明已接收到 QC,Charlie 汇总这些证明。由于这些证明是关于 QC 的,我们称这个新的 QC 为 QC-on-QC。
→ Charlie 将 QC-on-QC 发送给每个人。收到 QC-on-QC 后,大家都知道 Alice 的区块已经被最终确认。

5/7 流水线处理
在上述故事中,Bob 和 Charlie 仅发送 QC 或 QC-on-QC,但实际上提案是流水线处理的:Bob 的消息包含了 Alice 的区块的 QC 以及一个新区块的内容。
Charlie 的消息包含了 Bob 的区块的 QC(这是 Alice 的区块的 QC-on-QC),并且还包含了一个新区块的交易。
当验证者为 Bob 的消息发送证明时,他们是在证明 Bob 的区块的有效性和 QC 的有效性。
这种流水线处理提高了网络的吞吐量,因为每个时隙都会生成一个新区块。

6/7 Raptorcast: Monad的区块传播协议
MonadBFT要求领导者将区块提案发送给每个验证者。
然而,区块可能相当大:10,000笔交易/秒 * 200字节/笔交易 = 2 MB/秒。直接发送给200个验证者将需要400 MB/秒。
理想情况下,验证者不应该有如此高的上传带宽。这就是Raptorcast的用武之地。
→ 区块由领导者进行纠删编码(纠删编码意味着消息被分解为一组块,并且可以从这些块的足够大子集解码)
→ 领导者将不同的块集分发给网络中的所有验证者(持有更高股份的验证者会相应地收到更多)
→ 每个验证者将他们的块重新广播给网络中的所有其他验证者
通过这种方式,整个网络的带宽被用来传播区块提案。

5.73K
热门
排行
收藏