作者:?AlexGluchowski
翻译:?阿剑
编者注:原标题为《干货|OptimisticRollupvs.ZKRollup:一探究竟,Part-1》
声明:本文的作者自ZK-Rollup的概念形成以来就一直在开发ZK-Rollup,因此不可避免会带有一些偏见。不过,我的经验也让我很适合从技术的角度深入分析和比较这两种解决方案。
摘要
OptimisticRollup是一种近期提出的、旨在扩展以太坊上智能合约通用性吞吐量的技术。如果开发相对较快的话,它就可以为迁移现有的dApp和服务提供一种简单的方案,而且为此付出的安全性/可扩展性牺牲也不会太大。它能帮助Eth1.0适应不断增长的需求。
而ZKRollup是一种更复杂的技术。今时今日它可以用于代币转移和定制化的应用。不过,真要用它来实现通用性智能合约,就需要更长时间,甚至需要更多研究工作来把EVM高效封装进零知识证明。不过好事情是,一旦ZKRollup开发完成,现在所有的以太坊dApp和服务都可以平滑迁移到ZKRollup上,无需花太多力气。
ZKRollup可以解决OptimisticRollup上的几个根本问题:
消除了令人厌恶的尾部风险:通过复杂但可行的攻击方法从OR中盗取资金
Findora基金会获得社区激励捐赠:金色财经报道,Findora基金会官方宣布获得社区激励捐赠,将用于激励社区活动和资助计划,具体金额暂未披露。据悉,此次捐赠旨在加速Findora生态系统的发展,可能资助一些初始项目包括大使项目和未来的Findora黑客马拉松,此外这笔捐赠还可以创建一个社区资助计划,吸引更多建设者。[2023/6/27 22:03:27]
将提取资金的时间从1-2周缩减到几分钟
支持快速的交易确认和退出,而且体量几无上限
默认保护隐私
对ZKRollup来说,OptimisticRollup的出现是个好消息。迁移到Layer-2扩展方案上需要对钱包、预言机、dApp和用户习惯的巨大变更。OptimisticRollup可以帮助整个生态为这样的迁移作好准备,并为那些当前还没有办法构建到ZKRollup之上的应用提供了扩展途径。这就给了ZKRollup时间来成长、使ZKRollup的普及可以尽可能顺利,同时保持以太坊的增长势头。
Rollup101
什么是Rollup?
Rollup是一种类似于Plasma的Layer-2扩展方案:用主链上的单个合约来保管所有的资金,并保存一条指向“侧链”状态的简洁密码学承诺。侧链的状态是由用户以及链下运营者来维护的,不会占用Layer-1的存储空间。
本周绿地元宇宙指数G-Meta Index跑输沪深300:金色财经报道,本周绿地元宇宙指数G-Meta Index最高4294.2点,周五收于4242.5点,较上周五下跌1.97%;同期沪深300下跌0.09%、创业板指数下跌0.70%。本周一至周四,绿地元宇宙指数连续下跌到达近期低点,周五受游戏、传媒、AI概念拉动出现明显反弹,全周跑输沪深300,相对收益为-1.88%。[2023/4/30 14:35:24]
Rollup与Plasma有所不同的是,Plasma会面临交易数据可用性的问题。而Rollup则通过在Layer-1网络上为每一笔交易公开一些数据解决了这个问题。因此,几千笔交易可以被打包到一个Rollup区块中。虽然这种方法的开销是O(n),也就是说它的开销会随着交易数量的增加而严格线性增长,但它也提供了实用的100倍吞吐量提升,因为CALLDATA的开销要比Layer-1的存储和计算便宜很多。
Rollup也一再被VitalikButerin认可为他最喜欢的Layer-2扩展方案。
根据状态转换有效性的保证方式不同,可区分出来两种Rollup方案:ZKRollup以及OptimisticRollup。两种方案的简史在?此文?中有清晰的阐释。
什么是ZK-Rollup?
CZ:福布斯故意曲解事实,将用户提款称为“转移抵押品”:金色财经报道,Binance首席执行官CZ在社交媒体上表示,福布斯许多指责性的问题,带有负面色彩,故意曲解事实。他们提到了我们客户完成的一些旧区块链交易。他们似乎不了解交易所运作的基础知识。我们的用户可以随时自由提取资产。他们的提款变成了“收到数亿转移的抵押品”。
我们的用户还必须先存入Binance才能提款,这在区块链上也很容易追踪。这篇文章方便地忽略了存款交易。文章力图将Binance和FTX归为一类,包括文章标题的选择。
Binance不一样,Binance经受住了时间的考验,用户在12月安全地提取了数十亿美元。我们使用新的零知识 (ZK) 方法(由 Vitalik 建议)实施了储备证明,以保护我们用户的安全和隐私。Binance 始终以 1:1 的比例持有用户资金。福布斯继续撰写毫无根据的文章,失去了自己的信誉。[2023/2/28 12:34:12]
在一个ZK-Rollup系统中,运营者必须为每一次状态转换提供一个简洁的零知识证明;该证明将由主链上的Rollup合约来验证。这样的一个SNARK证明了存在一些交易,这些交易是由发起人正确签名过的,并且正确地更新了相关账户的余额,并使旧的默克尔根值变为代表新状态的新值。这就杜绝了运营者提交无效状态或篡改状态的可能。
“香港将于今年6月对所有公民开放加密交易”或系推测 源头来自港财政司司长讲话:金色财经报道,Coinbase首席执行官Brian Armstrong近日在推特转发网友“香港将于今年6月正式对所有公民开放加密交易”消息,引发市场关注。推特网友表示,“2023年6月1日,香港将正式使加密货币买卖、交易对所有公民完全合法,期待大量大资金从东方涌入。香港也将推出基于亚洲货币的稳定币。”
金色财经查证发现,此消息或系网友推测,而消息源头来自香港财政司司长陈茂波今年1月在香港举办的web3会议上的讲话,陈茂波当时表示,“香港已经完成了为虚拟资产服务提供者设置发牌制度的立法工作,新制度将会在今年六月实施。在新制度下,虚拟资产交易所在反洗黑钱、反恐融资和投资者保护方面的要求与目前适用于传统金融机构的要求保持一致,相信能为虚拟资产交易所提供一定程度的市场认可。在满足相关监管条件下,金融中介机构和银行在为客户提供交易服务时将能够与获发牌的虚拟资产交易所合作。”[2023/2/16 12:10:36]
可以在EthResearch论坛?和MattLabs博文?处找到更多技术细节。你也可以尝试一下MatterLabs用于ERC-20代币转账的ZKRollup在线demo。
什么是OptimisticRollup?
Milo Credit已在美国发放1000万美元加密抵押贷款:7月20日消息,加密抵押贷款公司Milo Credit宣布已在美国发放了1000万美元的加密抵押贷款。其30年期加密抵押贷款于去年4月上市。
Milo Credit表示,该产品是全球首个加密抵押贷款产品,使加密投资者可以很容易地使用他们的数字资产购买房地产。(BeInCrypto)[2022/7/20 2:25:13]
在一个OptimisticRollup系统中,运营者发布新的状态根时无需每次都接受Rollup智能合约的检验。相反,每个人都假设状态转换是正确的。不过。如果有人发布了一次不正确的状态转换,其它运营者或者用户都可以指出不合法的交易并回滚不正确的区块、惩罚恶意验证者。
OR的理念是由JohnAdler首先构想出来的。读者可以在这篇OptimisticRollupAMA中发现更多细节。向PlasmaGroup的伟大成果致敬!
开始比较吧!
灵活性:通用性计算
OptimisticRollup
虽然OR可以用于专用性计算,PlasmaGroup最重要的创举其实是OVM:Optimistic虚拟机。OVM可以支持任意智能合约逻辑的实现。几乎所有在以太坊上可以执行的计算都可以在OVM上执行,包括智能合约的可组合性。它也可以给予EVM、EWASM或任何其它虚拟机。
OVM的一大长处是,如果与EVM搭配使用,大家就可以用Solidity来写码。因此,大部分现有的代码库都可以轻松移植到OR上。
如果OVM能直接重用现有的EVM字节码的话是最理想的,但可能没有那么简单。一个合适的实现应该要改变交易数据格式,还需要一个类似于Truebit/PlasmaLeap的复杂挑战/响应协议来接收错误性证明,这就很有可能导致与EVM的区别,否则便不能处理极端情况。这也意味着,要让现有的合约能适应OVM,还有一些工作要做。
另一个实现上的难点来源于一个事实:对大型区块的错误性证明所要求的Gas可能会大于Layer-1区块的Gas上限。那么这些错误性证明就必须被打散为多条ETH交易。
ZKRollup
迄今为止,所有ZK-Rollup现有的实现都只支持专用性操作比如代币转移或者原子化互换。这里面有几个原因。第一,现在还没有技术能够高效地实现不同零知识证明方案的简洁递归证明合成,但是想在一个区块内对不同智能合约做聚合执行又必然需要这样的技术。我们现在最好的方案就是椭圆曲线循环运算?加上Groth16,它需要对长字段进行运算,在用于大型计算时是完全没有效率的。
第二,即便我们有了更短的字段,Groth16也需要一个受信任初始设置流程,而且每个智能合约、每个新版本都需要独立的一个!显然,这绝对是不现实的。我们现在只有一种不需要受信任初始设置的高效零知识证明方案,就是基于FRI的STARKs,但是其中验证者仅对一小部分问题类型才是简洁的。一个STARK验证者必须执行被证明的计算语句的所有约束至少一次,这就意味着我们不能对一组异构的智能合约进行迭代运算。
不过所有这一切都会在SNORKs到来之后改变,这是一种新一代的零知识证明方案,它背后的密码学原语与前辈们的稍有不同——最值得注意的是多项式承诺方案。这一技术是由SeanBowe提出的,一开始命名为?Sonic;2019年夏天,代号为?PLONK?和?Marlin?的技术继承了这条路线。这几种技术都有一个共同特点:虽然整个方案仍然需要受信任初始设置,但这时候的初始设置是普遍性的且可升级的,只要做一次,就可以被任意数量的不同项目随时重用。
不过,这些证明系统所用的Kate多项式承诺方案,仍然需要高效的椭圆曲线循环运算来进行递归,这个高效运算现在还不能实现。这就是为什么我们对一些最新的、完全简洁且透明的证明系统,,例如Halo、SuperSonic、Fractal以及一些MatterLabs团队正在开发的新东西,感到非常兴奋的原因。长话短说:在ZKP上构建通用性智能合约系统的障碍在最近已被消除。ZKRollup完全可以支持像EVM一样的编程模式。第一批合约可能会要求定制化的DSL,虽然对于Solidity开发者来说,学习时间不会超过1天。最终来看,如果ZKP证明者技术维持当前的进步速率,我们可以预期所有现有的以太坊合约都可以轻松、高效地迁移。
可扩展性&交易费用
OptimisticRollup
根据JohnAdler的说法,当前的估计是在EIP2028/伊斯坦布尔升级激活之后,可以达到每笔交易只需4kgas
换算一下,TPS可上升到约100
有了BLS签名聚合技术之后,TPS可以上升到约500
如果愿意打破EVM的兼容性,理论上的吞吐量可以直逼ZKR的上限
现实的吞吐量估计:
500TPS。
对现在来说可能也蛮够用了。
ZKRollup
当前,在Matter测试网上,每笔转账交易的公开数据成本是16字节;在EIP2028/伊斯坦布尔升级激活之后,每笔交易要消耗272gas
此外,还有一个需要平摊的证明成本,当前的估计是300kgas
即便我们估计最坏的情况,需要付出100万gas的证明成本,预计天花板也是2140TPS
在一些讨论中,我听到有人提出ZKP包括了大量的计算开销,因此是非常昂贵的。实际上,相比起Gas的生产费用,计算开销是微不足道的;因为Gas的生产要兼顾抗审查性、去中心化,它的数量才是真正的瓶颈。我们也预计,这个负面因素的影响会大幅减弱。
现实的吞吐量估计:
超过2000TPS——就快赶上Visa了。
不过,对于大部分应用场景来说,ZKRollup都能提供更大的开销节约力度,因为可以免去在公开数据中存储较大的数据块,只要这些数据不是重建状态转换delta所必需的就好。这里的核心观念是这样的:虽然OR总是需要用户发布完整的交易输入,在ZK中我们可以有所选择:1)发布交易输入,删去不影响状态转换的见证数据;或者2)只发布交易输出。这样的选择可以相当优雅地实现,无需引入多少复杂性。
重要例子:
在多签名钱包、类似Argent的账户抽象型钱包或者去中心化交易所中,用户需要提交签名,以供合约验证。这些签名对状态更新也没有用,所以也可以从公开数据中省去。
像Gnosis的Dfusiondutch去中心化交易所这样的合约需要大量的数据集输入,这些数据集不会直接影响存储,只用来验证计算结果。
ETH2.0实现以后因为Rollup都会驻留在单个分片中,所以CALLDATA的成本应该不会有太大改变。除非带宽整体变得更加便宜。
原创:共享财经Neo 来源:共享财经 11月8日,“2019年世界区块链大会·乌镇”正式开幕。蚂蚁区块链资深总监、蚂蚁区块链BaaS平台负责人李杰力作为本次大会的首位演讲嘉宾,向外界揭开了阿里巴巴区块链的神秘面纱.
1900/1/1 0:00:00作者:?EliBenSasson翻译&校对:?周瑾?&?闵敏 来源:以太坊爱好者 在技术的辅助下,任何人都能独立验证一项密码货币业务是否能持续健康发展,再也不需要依赖于专业的审计师.
1900/1/1 0:00:00中国经营报报记者索寒雪上海报道 来源:中国经营报 编者注:原标题为《区块链助力贸易的时代已经来临》区块链技术的应用场景在第二届中国国际进口博览会上,被充分地想象.
1900/1/1 0:00:00来源:Medium; 翻译:头等仓Saline本文阐述了假冒伪劣产品对品牌的影响,进一步讨论进入区块链技术以便消费者知道自己所购商品是否为正品,以此打击造假者.
1900/1/1 0:00:00中国正在全力推进其国家支持的数字货币。尽管它可能是第一个发行数字货币的重要经济体,但不太可能是最后一个。俄罗斯、伊朗和英国都透露,他们正在认真研究这一领域.
1900/1/1 0:00:00实习记者:代小佩 来源:科技日报 “如今数字经济时代的大幕已被拉开,作为数字经济时代底层技术的区块链,瑞幸绝不会错过。”乍一看,这一段放在“RXChain瑞幸链”官网首页的文字充满情怀,让人禁不住想给瑞幸咖啡点个赞.
1900/1/1 0:00:00