撰文:100y
编译:Luffy,Foresight News
1. 陨落的以太坊村庄
从前,在以太坊村里住着一群绿色的佩佩蛙。这里曾经是最热闹的国度之一,高度去中心化和强大的安全性催生了繁荣的经济。
在这些原则的指导下,村民们根据自己的利益定期举行选举,任命领导者来监督每 12 秒生成一个的记录交易的区块。通过这种方式,他们勤勉地管理着村庄的繁荣经济。
现在,以太坊昔日的辉煌开始褪色,meme 病毒肆虐,村庄的力量被削弱。街道上笼罩着阴影,绿色的佩佩蛙们拖着沉重的步伐,漫无目的地徘徊在荒凉阴暗的村庄里。
然而,仍有一些绿色佩佩蛙渴望恢复以太坊失去的辉煌。他们支持「L2 改革」,这是一场旨在振兴村庄的运动。在他们的努力下,以太坊开始再次繁荣,实现了曾经被认为不可能实现的经济活力。
但 L2 改革也有局限性。附近的村庄如 Solana 和 Sui,虽然年轻且充满不稳定因素,但通过前所未有的科学革命正在迅速发展。他们的创新使复杂的金融交易变得无缝衔接,而以太坊尽管进行了改革,但仍举步维艰。因此,佩佩蛙之间流传着关于搬迁到这些邻近村庄的可能性的传言。
然后,在一个决定命运的日子,一个紫色的佩佩巫师出现在以太坊村庄。
2. 紫色佩佩巫师的到来
身穿紫袍的佩佩巫师悲伤地凝视着以太坊村庄失去的辉煌,决心建立一个名为 Monad 的新国度。
一天,他出现在绿色佩佩蛙们面前,宣布了他建立 Monad 村庄的雄伟计划。他把绿色佩佩蛙们聚集在中央广场,开始倾听他们的想法。
绿色佩佩蛙 1 发言:「我希望 Monad 的生活就像以太坊一样。尽管以太坊缺乏 Solana 或 Sui 的可扩展性,但我从未考虑过离开,因为他们的文化与我们的文化截然不同。」
绿色佩佩蛙 2 补充道:「保持相同的生活方式和文化很重要,但我也希望有一个与其他村庄一样高效的系统。虽然以太坊很安全,但它对追求速度和敏捷性的企业来说还不够。」
巫师将他们的愿望铭记在心,承诺要创建具有以太坊文化特性和 Solana、Sui 可扩展性的 Monad。他思索了实现这个梦想所需的强大咒语,一个与以太坊传统兼容、能满足新时代进步效率的村庄。
然后,他与热切期待新村庄的佩佩蛙们分享了他的愿景,激发了他们对这个能够真正提供两全其美的家园的希望。
3. 秘法一:延迟执行
以太坊村庄可扩展性的一个限制在于共识过程中每笔交易的处理,这是生成每个新区块的必要步骤。
在以太坊中,提议区块的领导者必须在提议之前计算区块内的所有交易,以确保每笔交易的结果。此外,接收此区块的验证节点也必须计算所有交易以验证区块的合法性并进行投票。
由于共识过程涉及村民之间的计算和沟通,因此分配给处理交易的时间预算非常低,最终导致可扩展性有限。
为了解决这个问题,紫色佩佩巫师引入了一个新的咒语,称为「延迟执行」。这个咒语将「共识」过程(排序村民的交易)与「执行」过程(计算这些交易的结果)分开。
简单来说,它不是对每个区块同时进行共识和执行,而是对第 N 个区块进行共识的同时对第 N-1 个区块(交易排序已经确定)进行执行。
通过允许一个完整的区块时间进行执行,这种方法大大增加了可以在同一时间范围内处理的交易数量。
高级法术:延迟 Merkle 根
在以太坊中,节点在达成共识之前进行计算,从而确保区块的有效性。然而,在 Monad 的延迟执行系统中,共识和执行是分开的。这为恶意节点提供了忽略先前达成共识的交易或随意更改计算状态的可能性。
为了防止这种情况,Monad 将 Merkle 根(第 N-10 个区块的计算结果)嵌入到第 N 个区块的提议中。如果超过三分之二的节点就第 N 个区块达成共识,则意味着对第 N-10 个区块的计算达成共识。
如果任何节点第 N-10 个区块的计算结果与第 N 个区块中包含的 Merkle 根不匹配,则该节点将从第 N 个区块开始的共识中被移除。Merkle 根的 10 个区块延迟可确保及时检测到任何计算错误。
值得注意的是,Monad 的区块时间为 1 秒,但这并不意味着 Monad 的最终性需要 10 秒。得益于 Monad 的 MonadBFT 系统,可以实现单槽最终性,即在 1 秒内实现最终性。
4. 秘法二:交易哈希
聪明的紫色佩佩巫师思考着村庄的领导者如何迅速将区块提议广播到其他节点。
在以太坊通常是将整个区块提议(包括所有交易)打包,然后通过网络发送。
然而,佩佩巫师意识到,如果 Monad 采用这种方法,广播包含大量交易的区块提案将是一项艰巨而费力的工作。
为了解决这个问题,紫色佩佩巫师引入了「交易哈希」的概念。由于所有村民提交的交易都已在网络中传播,因此每个节点都会在自己的内存池中维护 Monad 村庄交易的记录。
这意味着领导者不再需要在每个区块提案中传输完整的交易列表。相反,领导者可以简单地引用交易,仅发送哈希值。
这样,Monad 的区块提案就只包含每笔交易的哈希值。收到这些哈希值后,其他节点可以轻松地将它们与自己的交易记录进行比较。
5. 秘法三:MonadBFT
在 Monad 村庄中,每个区块内的交易顺序和区块创建的共识由 MonadBFT 控制,这是一种基于 HotStuff 的高性能共识机制。这种分阶段 BFT(拜占庭容错)算法允许分两步达成共识。
区块领导者的角色是根据每个参与者的质押份额随机选择的。在 Monad 中,区块的构建效率比以太坊村庄更高,因为每个区块 N 提案都与前一个区块 N-1 的法定人数证明 (Quorum Certificate,QC) 一起传输,它表明超过三分之二的节点已验证该区块。
事情的经过如下:
领导者 N 广播了针对区块 N 的提案,并附带了针对区块 N-1 的 QC。
然后,验证者验证了区块 N,并将其投票发送给领导者 N+1。
领导者 N+1 分享了针对区块 N+1 的提案,以及针对区块 N 的 QC。
然而,即使有了 QC N,验证者也无法立即确定区块 N,因为区块链的性质无法确保所有参与者同步在线。
为了完全保护区块 N,验证者必须将他们对包含 QC N 的区块 N+1 的「赞成」投票发送给领导者 N+2。当领导者 N+2 生成 QC N+1 时,它确认了 N+1 轮的成功完成,从而区块 N 最终确定。
因此,凭借巧妙的魔法,紫色佩佩巫师引导 Monad 村进入了一个新时代。
6. 秘法四:并行执行
在 Monad 中,为了处理大量村民交易,紫色佩佩巫师设计了一个新咒语,交易不同以太坊村庄的串行方式处理,而是以并行方式处理。
借助延迟执行,只有在区块的交易顺序达成共识后才会开始执行。Monad 村庄由许多熟练的执行者组成,每个人都负责处理交易,独立计算其输入和输出并创建待处理列表。
这些输入和输出不会立即改变村庄的状态,而是以悬浮魔法的形式等待,准备按照共识确定的顺序提交。这种提交是将输出逐一合并到当前状态,就像魔法线编织出无缝有序的挂毯一样。
然而,事情发生了转折。并行处理引入了交易冲突的可能性,这在有序的以太坊村庄中很少见,但在 Monad 却是一个新的挑战。
例如,如果一笔交易(交易 b)显示村民 A 赠送 1 ETH 给村民 B,而另一笔交易(交易 c)显示 B 在村里的小旅馆花费了这笔 ETH,那么它们的顺序就至关重要。如果交易 c 试图在交易 b 之前执行,交易就会失败。在这种情况下,冲突的交易会被重新安排,交易 c 会等待交易 b 完成后再执行。
因此,在 Monad 中,并行执行的核心在于排序:结果是并行计算的,但状态更新按照所需的精确顺序合并。
7. 秘法五:MonadDb
紫色佩佩巫师的奇思妙想没有就此止步。他又变出了 MonadDb,这是 Monad 村独有的自定义数据库,专门用于存储区块链的状态。以太坊依赖于复杂的 Merkle Patricia Trie,这种结构以其弹性而闻名,但也因其对外部客户端的低效率而闻名。
MonadDb 在设计时充分考虑了村庄的并行执行,支持同时进行多个读取和写入,并且精度很高。与要求每项任务完成后才能转到下一项任务的传统数据库不同,MonadDb 拥有异步 I/O 魔法,允许任务无缝重叠,为真正的并行事务处理打开了大门。
8. 来参观 Monad 村庄吧
通过一系列奇妙的咒语和复杂的魔法,紫色的佩佩巫师创造了 Monad 村庄。在这里,以太坊的可信账户、加密技术、交易格式、语言和钱包与 Solana、Sui 的可扩展性轻松融合。现在,Monad 正蓬勃发展,向着实现每秒 10,000 笔交易的梦想出发。
诞生于智慧与希望的 Monad 村庄,能否拯救被 meme 病毒所困扰的世界,并帮助以太坊重获荣耀?只有时间能告诉我们答案。
]]>