风险提示:央行等十部委发布《关于进一步防范和处置虚拟货币交易炒作风险的通知》, 请读者提高风险意识。

Monad与以太坊: 区块链共识机制与交易执行优化分析

验证节点负责对区块进行验证,领导节点通过汇总投票形成QC,验证未通过时会广播超时信息。每个验证节点在接收到QC后,会对提议的区块进行最终确认。如果领导节点行为恶劣,至少有一个验证节点会生成TC,以太坊使用共识来执行状态机复制,Monad则通过取消在达成共识前执行交易的要求来放宽严格性。Monad采用乐观执行策略,可以并行执行多笔交易并优化交易处理流程。

MarsBit
MarsBit
热度 ...

原文作者:Rachit Srivastava

原文来源:Twitter@privacy_prophet

编译:火星财经,MK

验证节点负责对区块进行验证,并将其验证结果(肯定或否定)发送给领导节点。领导节点通过汇总这些肯定或否定的投票(使用阈值签名)来形成QC(Quorum Certificate,法定人数证书)。

若验证未通过,验证节点会广播一条签名的超时信息,并发送给所有对等节点。该信息包含验证节点所观察到的最高QC。如果超时请求的累计数量超过了验证节点总数的三分之二,则将形成一个TC(Timeout Certificate,超时证书),并发送给下一任领导节点。

每个验证节点在接收到第k+1轮的QC后,会对第k轮提议的区块进行最终确认。

假设第k+1轮的领导节点行为恶劣,在第k+2轮,至少有一个验证节点会生成第k+1轮的TC,随后第k+2轮的领导节点将检查该TC,并为那一轮生成一个TC而非QC。

在以太坊中,执行共识是先决条件,因此当节点就某个区块达成共识时,它们同时达成一致意见关于(1)区块中的交易列表和(2)执行这些交易后的所有状态的默克尔根。

因此,领导节点必须在分发提案前执行提案区块中的所有交易,而验证节点必须在进行投票响应前执行这些交易。

根据上述描述,一旦给定官方的交易顺序,真实状态就被完全确定了。执行揭示了真实状态,尽管这一真实已被固定。这是Monad优化的基础。

Monad利用了这种洞察,通过取消在达成共识前执行交易的要求。节点协议纯粹关于官方顺序;每个节点在独立执行区块N中的交易的同时,开始处理对区块N+1的共识。

以太坊的做法使用共识来严格执行状态机复制:节点达成共识后,大多数人同意官方顺序及其产生的状态。Monad则在这种严格性上做了适当的放宽。

在Monad中,终结性是单时隙(1秒)。

关于【Monad与以太坊: 区块链共识机制与交易执行优化分析】的延伸阅读

  • 走近BTC:理解BitVM所需的背景知识(1)

    Delphi Digital发布了比特币二层技术研报,介绍了比特币Rollup和四大采用BitVM的项目。BitVM利用MATT思想,将复杂程序和数据存储在链下的Merkle树中,只发布Merkle Root到链上,实现比特币原生的验证欺诈证明。比特币脚本和Taproot以及预签名是实现这一方案的重要技术。P2SH交易类型中可以添加Script,比特币节点会验证公钥和公钥hash是否匹配,以及数字签名是否正确。隔离见证/SegWit升级解决了交易延展性问题,P2WSH功能与P2SH相似。Taproot可精简脚本内容,BitVM基于此构建复杂方案。下一篇文章将详细介绍Taproot、预签名等技术。

  • 一张蛋糕蜡烛图,带你快速了解链抽象的关键要素

    本文介绍了链抽象的概念,旨在为用户提供无缝的跨链操作体验。该框架由四部分组成,涉及复杂的技术以确保可靠性、成本效益、安全性、速度和隐私。作者提出了六种设计方案来解决跨链三难困境,并介绍了CAKE框架的三个基础设施层。最后,作者强调了实现链抽象的关键设计决策,包括谁控制执行意图的权力、向求解器披露什么信息以及有哪些结算路径可供求解器使用。钱包、求解器层和跨链预言机是实现链抽象的关键组成部分。为了解决跨链三难问题,需要统一的跨链意图表达标准。

交易执行的结果(是否成功?之后的余额是多少?)在完整节点上通常会在终结性后不到1秒的时间内被确定。

任何希望安全查询交易结果而无需运行完整节点的个体,都可以运行轻客户端,并查询完整节点上的余额和默克尔证明。在这种情况下,查询将滞后于默克尔根更新。

交易成本:区块链中传输交易会产生费用,这是执行成本之外的单独收费项。保留余额用于支付这些传输成本;执行余额用于支付交易执行费用。

Monad采用乐观执行策略。这意味着Monad将在区块中较早的交易完成之前开始执行交易。这有时(但不总是)可能导致执行错误。

如果某交易依赖于前一交易的结果,乐观执行通过对比执行交易2时使用的输入与交易1的输出来解决依赖问题。

若两者不匹配,我们检测到交易2在执行过程中使用了错误的数据,需要用正确的数据重新执行。尽管Monad并行执行交易,每笔交易的更新状态会按顺序合并。

MonadDb是一个为存储区块链状态设计的定制数据库。大多数以太坊客户端使用的是基于B-Tree(如LMDB)或LSM-Tree(如LevelDB和RocksDB)的键值数据库结构。与之不同,MonadDb原生实现了Patricia Trie数据结构,这种结构既适用于磁盘也适用于内存存储。

Monad实现了多交易的并行执行。当某笔交易需要从磁盘读取状态数据时,不应该阻塞等待读取完成,而应该并行地启动读取操作并处理其他交易。

通过这种方式,Monad优化了交易处理流程,减少了单个交易执行中的延迟,并提高了整体系统的效率和响应速度。

免责声明:本文仅代表作者个人观点,不代表链观CHAINLOOK立场,不承担法律责任。文章及观点也不构成投资意见。请用户理性看待市场风险,以及遵守所在国家和地区的相关法律法规。
图文来源:MarsBit,如有侵权请联系删除。转载或引用请注明文章出处!

标签:

分享至
https://www.chainlook.cn/toutiao/1711947004.html

下一篇:

Greeks.live研究员:比特币波动率指数DVOL面临的下跌压力较大

链观CHAINLOOK消息,Greeks.live 研究员 Adam 于 X 发布了本周加密市场走势展望。 A […]

免责声明:
链观CHAINLOOK作为区块链技术应用与Web3行业研究的智库媒体,旨在为中国区块链专家、学者们提供最新的行业资讯信息与数据样本,用于区块链技术研究与创新。本站所发布的文章仅代表作者的个人观点,不代表链观CHAINLOOK官方立场,本站所发布的区块链行业研究报告与数据分析成果是通过人工智能算法对数据内容进行分析与归纳生成,不代表任何投资暗示与建议,链观CHAINLOOK不承担法律责任。

风险提示:
虚拟货币不具有法定货币等同的法律地位,参与虚拟货币投资交易存在法律风险,链观CHAINLOOK坚决反对各类代币炒作,请读者提高风险意识,理性看待区块链技术应用及市场风险。

© 链观CHAINLOOK All Rights Reserved. 京ICP备18054193号-5