宇宙链 宇宙链
Ctrl+D收藏宇宙链
首页 > DOT > 正文

了解 EVM 本地设计的 Optimistic Rollup 的关键优势

作者:

时间:1900/1/1 0:00:00

几周前,我们宣布了Specular—一个具有新颖EVM本地设计的OptimisticRollup—并且很高兴看到我们的Twitter线程激发了关于如何最好地设计此类系统的兴奋和讨论。在这篇文章中,我们想澄清一下我们认为EVM原生方法相对于其他Optimisticrollup方法的一些关键优势,包括Optimism和Arbitrum正在进行的工作,通过在较低级别VM上定义的欺诈证明系统来追求EVM等效性。

在我们开始之前,这篇文章假设您对optimisticrollup(ORU)有基本的了解;以及现代以太坊ORU如何依赖负责裁决争议的链上交互式欺诈证明机制。可以在此处找到对相关先前工作的广泛调查。

背景

Optimism和Arbitrum正在推出一种利用现有以太坊客户端基础设施的新架构,以便与现有的以太坊工具和L2智能合约完全兼容。由客户端执行导致的状态转换争议通过链上验证的交互式欺诈证明(IFP)解决。为了支持IFP,客户端程序被编译为较低级别的目标VM,可以在指令级别为其构建状态转换证明。然后将生成的二进制文件提交到链上,允许链上验证者以较低级别VM语义的粒度强制执行其执行。

至关重要的是,这种较低级别的VM方法完全不知道EVM的存在及其语义。因此,它不是按照意图强制执行EVM语义,而是强制执行较低级别的语义来执行据称实现了EVM的特定二进制文件。因此,这种设计技术(1)排除了多个以太坊客户端程序的无许可和信任最小化参与;(2)导致难以独立审计且无法正式验证的臃肿、过大的可信计算库;(3)遭受频繁触发但不透明的升级过程的困扰,进一步增加了安全审计开销。

为了解决这些问题,我们主张采用我们认为更简单、更自然的EVM原生方法来处理IFP。也就是说,我们建议在单个EVM指令级别显式地在链上执行EVM语义。下面我们将描述这种设计相对于较低级别的VM方法的一些优点。

美国数字商务协会主席:美国发展数字美元 首先需教育国会了解区块链和CBDC:美国数字商务协会主席Perianne Boring表示,如果美国想要发展数字美元,首先需要教育国会进一步了解区块链和CBDC相关知识。

Boring称,目前正对国会议员开展的工作之一就是让他们接触技术,体验技术并在现实生活中使用到区块链。美国不应该与中国竞争推出首个CBDC,而应该花时间扭转心态。(Decrypt)[2020/6/5]

客户端多元化

虽然以太坊网络由包括Geth、Besu和Erigon在内的不同客户端运行,但当前的L2解决方案还没有接近支持客户端多样性。这很重要,因为我们希望防止由软件错误/漏洞引起的无效ORU状态转换因为未检测到和无可争议而出差错。

Optimism团队提出了一种潜在的解决方案,该解决方案通过为许多列入白名单的客户端程序中的每一个包括一个链上二进制承诺,将较低级别的VM方法扩展到多客户端设置。验证者必须准备好参与涉及其中任何一个的挑战阶段,只有在他们设法赢得所调用的挑战阶段的门槛时才能赢得整体争议。

这种方法只提供外在的客户多样性,而不是证明系统本身的内在。每个客户都有自己的独立证明系统与之关联。事实上,这只是一种通用的纵深防御技术,任何Rollup都可以在使用多数票组合不同证明系统的方案中使用)。虽然它可能会提供一些客户端多样性的表象,但在单独使用时会引入多个问题:

英国警察:执法部门必须了解比特币:英国莱斯特郡警官Phil Ariss表示,执法部门必须了解比特币。随着越来越多的罪犯转向使用比特币和其他金融隐私手段,执法部门需要知道要注意什么是重要的。而据Phil Ariss透露,4月18日,当局逮捕暗网贩男子Paul Johnson,并查获了约37.5万美元加密资产。而在上个月,英国透露,在过去两年中,英国全国范围内共发生了562起与比特币相关的事件。(Cointelegraph)[2020/4/20]

1.客户端程序的参与是许可的。也就是说,客户端程序的编译二进制文件必须作为白名单程序提交到链上,才能被允许参与争议解决。

此外,由于二进制承诺随版本的变化而变化,Optimism的治理过程也处于升级任何客户端程序的关键路径上。

理想情况下:客户端程序可以参与和升级,而无需经过ORU的治理。

2.有一个强大的信任假设,即大多数客户端程序正确地实现了EVM。这可以解释为K-of-N版本或N-of-N版本编程。

正如我们在下一节中指出的,这尤其成问题,因为客户端程序难以审计。

理想情况下:只需一个客户端程序即可正确实现EVM。

3.验证者别无选择,只能准备运行每个列入白名单的客户端程序来解决争议。

由于争议过程中的额外冗余,这不仅昂贵且缓慢,而且操作上也更加复杂,因为验证者必须学习如何配置和运行每个程序。

操作复杂性随着客户数量的增加而增加,对可以包含多少客户端程序设置了实际限制。

总而言之,我们认为这种设计不能有效地分配信任——客户端程序包含是许可的,必须信任大多数人才能正确实现EVM语义,并且支持的数量实际上会受到信任、devops和一般操作复杂性问题的限制。

动态 | 美国作家Chrissy Teigen发推称不了解比特币,加密社区鼓励其进一步研究:美国模特兼作家Chrissy Teigen近期发推称:“我不了解,但也懒得去研究并尝试的两件事:比特币和TikTok。”到目前为止,已有超过7000人转发了这条推文,在撰写本文时,这条推文获得了近8万个赞。虽然有一些反对加密货币的人加入了讨论,但绝大多数回复都表示支持,并鼓励Teigen更深入地研究比特币,其中包括Morgan Creek创始人Anthony Pompliano。[2019/7/15]

我们的方法提供了内在的客户端多样性,因为链上验证者对客户端程序是不可知的。所有客户端都使用相同的证明系统进行交互。任何支持EVM语义的程序都可以无许可参与,并且只有一个程序必须实现正确的语义才能检测/争议故障。验证者还可以真正选择运行他们最熟悉的任何客户端程序,从而提供更简单的devops。

因此,EVM本地ORU为无需许可、信任最小化的客户端多样性提供支持。虽然这两种方法都可以检测恶意注入的状态转换,但只有EVM本地方法能够可靠地检测和解决错误/漏洞。

可审计性

ORU的TCB必须是可审计的和/或可正式验证的,以确保其可信度。现有的ORU达不到这个目标。

客户端程序信任假设

在较低级别的VM方法中:因为链上验证者在目标ISA指令级别强制执行客户端程序,因此仅检查验证者不足以确定等价性将强制语义与EVM的语义相比较。ORUVM的强制语义由列入白名单的客户端二进制文件隐式确定。如果不审计整个客户端程序和编译器,就不可能先验地确定这些语义是否等同于EVM语义。而在外部客户端多样性的情况下,这个问题会进一步恶化,因为语义是由多数共识决定的,需要对所有或至少大多数客户端程序和编译器进行审计。

现场 | AP-Coin创始人张亮:投资最大陷阱是对自己不了解:金色财经现场报道,12月14日,AP-Coin创始人张亮在由金色财经主办的第五期金色沙龙现场进行了演讲。他说,在投资过程中,最大的陷阱是自己,因为大家对自己的认识是不充足的。他举例说,人们经常说币圈进入到一个熊市,但是大家的币并没有少,这就是一种自我认知的缺失。他说,如果基准发生了错误,结果就是错误的,所以在投资过程中,最大的陷阱就是对自己的不了解。[2018/12/14]

因此,TCB不仅包括验证者,还包括每个客户端程序,以及与每个程序关联的编译器工具链和二进制提交生成器。TCB臃肿的规模和复杂性造成了明显的软件错误/漏洞风险,这些风险可能会影响ORU的安全性,并相应地增加审计开销。

我们强调,它不像捎带由上游客户端程序的维护者进行的安全审计那么简单,因为该程序必须定制以支持一步证明生成。此外,由于链上验证者无法访问存储区块、交易和帐户/存储状态的以太坊数据库,因此他们必须插入原像预言机组件以允许MIPS/WASM代码查询数据库。

在EVM本地方法中,EVM语义由链上验证者明确实施。由于无需许可和信任最小化的客户端多样性,ORU的整体安全性不会在很大程度上依赖于任何单个客户端程序的正确性。因此,EVM本地ORU的TCB仅包括链上验证者。这很好,因为TCB的有限范围允许它更容易审计,并且相对于正式的EVM规范完全可以正式验证,正如我们在下面谈到的那样。

验证者信任假设

EVM本地和较低级别的VM方法都在TCB中包含一步形式验证者。虽然较低级别的VM验证者可能更易于实施和审计,但考虑到端到端实施和/或审计系统其余部分的难度——尤其是客户端和编译器。

此外,形式验证——尤其是KEVM——使竞争环境更加公平。KEVM是使用支持Solidity智能合约形式验证的K-Framework实现的EVM的可执行形式规范。因此,KEVM是Specular的完美补充,因为它提供了正式的规范和一套验证工具,使我们能够正式验证我们的链上验证者。我们正在积极参与这一研究方向,目前正在与KEVM团队合作探索利用KEVM的各种方法。

金色财经现场报道 CSDN创始人蒋涛:区块链时代高手要了解技术、经济和组织系统:金色财经现场报道,在2018区块链企业级服务创新论坛暨权大师A轮融资及战略升级发布会上,CSDN创始人蒋涛表示,要成为区块链时代的高手比较难,首先要进行技术系统研究,了解区块链发展的不足和未来能发展到何种程度;另外,还要了解通证经济系统,了解通证如何流转升级从而驱动经济体螺旋式上升;最后是区块链改变了组织关系,要对组织系统进行了解。[2018/4/20]

另一方面,正式验证采用低级别VM方法的ORU的TCB是不可行的。虽然可以正式验证MIPS验证者,但这并不能保证EVM语义的执行。为了实现这样的保证,Geth本身——连同它的编译工具链——必须经过形式验证;然而,鉴于这些程序的复杂、计算无界和并发的性质,这实际上是不可能的。

因此,EVM本地ORU的TCB可以根据现有的、经过充分测试的正式规范进行形式验证,而较低级别的VM方法则不能。

编译器信任假设

在较低级别的VM方法中,引入了高度定制的编译工具链来支持一步证明生成。然而,这个工具链并不成熟。编译器和目标ISA都是定制的。Nitro为原像预言机和收件箱添加了几个自定义WASM操作码,而Cannon则添加了几个自定义MIPS系统调用。目标运行时模型也受到若干约定或约束的修改和约束。例如,Nitro和Cannon都对内存进行了默克化处理,以实现简洁的一步证明,而不会泄露整个内存空间。Cannon还要求将编译后的程序和输入/输出加载到内存的特定位置。此外,Nitro和Cannon都将浮点指令替换为软浮点实现。@pepyakin写了一篇很棒的博客文章?,它涉及到使用WASM作为目标ISA的其他复杂性。

这些定制中的任何一个都可能无意中改变已编译的Geth二进制文件的行为,因此必须进行广泛的审计。鉴于编译器工具链的不成熟,x86Geth和MIPS/WASMGeth之间的一致性不能被视为给定的。

EVM本地方法没有任何这些问题——正常的执行和争议解决在相同的抽象层面上运行,并且在实践中密切共享代码路径。

TCB升级

频率

虽然以太坊客户端程序经常升级,但以太坊协议本身往往一年只硬分叉几次。实际修改EVM语义的硬分叉甚至更少见,大约一年一次。此外,许多这些更改不会影响执行语义。因此,与采用较低级别VM方法的ORU相比,EVM本地ORU的TCB需要相对较少的升级。相比之下,较低级别的VM方法需要每次客户端升级时都升级L1合约,因为更改必须反映在链上新的二进制承诺中。

此外,我们预计以太坊协议和EVM规范最终会以某种形式稳定下来。这有两个含义:

从长远来看,EVM本地ORU的TCB的升级频率将会降低——最终趋于零。另一方面,个别客户端程序可能会继续经历旨在提高性能和修复错误的升级,从而在较低级别的VM方法中触发频繁必要的TCB升级。

EVM本地ORU可以与以太坊同步稳定。这是因为负责开发Specular的社区可能会放弃其L1合约升级密钥,而不会失去向客户提供性能升级和错误修复的能力。另一方面,一旦Optimism团队扔掉了钥匙,就不可能及时进行此类升级。这使得这样做是一项风险更高的工作,即使外部客户多样性计划提供了轻微的保护措施——以至于它可能永远不够安全,无法摆脱它们。

因此,我们认为放弃升级密钥的最安全和最实用的途径是通过EVM本地ORU设计。

透明度

较低级别VM方法中TCB的大小和复杂性导致升级过程不透明。例如,客户端的升级方式不如以太坊规范透明,后者需要经过慎重的提议(EIP)流程。对特定于ORU的工具链组件的升级,例如Golang-to-ISA编译器,仍然更不透明。

在我们的方法中,语义验证与实现这些语义的客户端程序之间存在明显的区别。因此,更容易辨别升级是否会潜在地影响语义的解释——审计人员只需要查看L1合约源代码中的差异。

结论

由于上述原因,我们相信EVM本地设计可提供卓越的安全性和信任属性。

感谢PatrickMcCorry对这篇文章的反馈和意见。

附录

在本节中,我们对@kelvinfichter深思熟虑的博文?中的具体摘录做出回应,他在博文中总结了两种方法之间的权衡。虽然这篇文章承认了上述大部分观点,但它也提出了一些有趣的问题。

升级

Optimism基本可以在不触碰任何智能合约的情况下自由修改客户端代码

二元承诺仍然必须改变。在治理过程中如何处理对安全关键合约代码的修改和对合约中编译和提交的安全关键客户端代码的修改之间应该没有有意义的区别。任何一方的修改都会对较低级别VM方法中Rollup的安全性产生不利影响。

此外,虽然确实任何人都可以计算客户端代码版本之间的差异,以查看升级中发生了什么变化,但在实践中审核跨越数万到数十万个LoC的代码库的更改更具挑战性,因为任何给定修改的影响都不太清楚。

此外,由于客户端的更改不需要传播到证明,EVM更新不会触发新的智能合约审计。原生EVM故障证明必然受上游EVM更改的支配。以太坊硬分叉大约每年两次,并且这些硬分叉中至少有一个通常会引入EVM调整。如果本地EVM证明系统想要维持上游EVM等效性,则必须升级证明合约。

在EVM本地方法中需要审计的相同硬分叉也可能会在较低级别的VM方法中触发审计。在我们看来,单个客户端的工程/审计工作的差异并不显着——正如前面所讨论的,EVM原生方法在多客户端案例中领先。

引入新功能

尝试在EVM之外引入新功能时,具有本地EVM证明的系统可能会更加困难。以调用数据压缩为例

我们同意EVM范围之外的某些功能压缩)可能有助于为用户实现低交易成本。较低级别的VM方法在这里确实具有更大的灵活性。然而,所有的希望都不会消失。

通过将L2扩展与EVM语义分离,我们可以专注于确保链上验证者的安全性。可以引入不同的验证者来支持L2扩展,从而保持核心EVM验证者独立且完整。我们目前计划插入零知识证明技术来验证此类扩展。虽然在SNARK中执行EVM语义可能很复杂,但数据压缩等L2扩展更易于处理,因为语义规范完全在我们的控制之下。我们注意到,这仍然是一个正在进行的研究领域。

工程努力

本地EVM证明合约比低级证明复杂得多,以至于即使构建单个原生EVM证明也将是一项巨大的工程工作。然而,KEVM的存在意味着有可能形式验证证明的EVM方面的正确性。

鉴于迄今为止我们为构建Specular所投入的工程资源数量,我们认为这是一个高估。此外,如上所述并在帖子中承认,许多问题实际上可以通过形式的方法来解决。

脚注

我们使用术语EVM语义,包括以太坊黄皮书中定义的交易间和交易内语义。

为了消除歧义,我们将实现以太坊的软件称为客户端程序,并将它们的实例称为客户端。

原文:Specular,由DeFi之道翻译编辑。

来源:DeFi之道

标签:以太坊MISTIMIPTI以太坊币最新价格6月走势分析MissionOptimism DogeOPTI价格

DOT热门资讯
比特币前传(一):70 年代公钥传奇

三位密码学家打破政府对密码学知识的垄断、发表的公钥密码学掀起了公众对密码学研究的第一次大热潮。撰文:Peter‘pet3rpan’编译:AididiaoJP,ForesightNews如果问起比特币或加密货币的历史,多数人的答案可能会.

1900/1/1 0:00:00
Coinbase:我们为什么需要在Web3构建身份层

要以一种优先考虑用户隐私、安全和控制权的方式构建Web3身份层次。为了给世界创建一个开放的金融系统,我们需要确保每个人都可以使用Web3.

1900/1/1 0:00:00
a16z:需要监管的应是 Web3 应用 而非协议

互联网的许多早期支持者主张永远保持自由和开放,使其成为全人类的无边界和无监管的工具。在过去的20年里,随着政府对滥用行为的打击,这一愿景失去了一些明确性.

1900/1/1 0:00:00
全员出动 盘点9家央媒背景数藏平台

随着央视网孵化的数字藏品平台“央数藏”于9月16日正式上线,国内央媒几乎全员入局数藏市场,这对于国内该市场的发展至关重要!作为风向标般存在的最具影响力的媒体参与到数藏的发展中,一方面肯定了该领域的潜力正不断展现.

1900/1/1 0:00:00
金色晨讯 | 9月16日隔夜重要动态一览

21:00-7:00关键词:Valkyrie、Voyager、Coinbase、数字欧元1.Valkyrie旗下两支加密信托基金已筹集约7400万美元;2.ETH2.0存款合约中的总价值达到历史新高;3.

1900/1/1 0:00:00
总结:Web3用户体验的四个层

本文试图为Web3UX创建一个更大的框架。Web3和Web2之间有太多的新元素,比如gas费、代币、钱包和智能合约,我们需要考虑的不仅仅是UI。现在已经有更多的层要去考虑。我们需要改进所有这些层面,以创造良好的用户体验.

1900/1/1 0:00:00