?最近,以太坊创始人VitalikButerin在一篇题为“混合式二层协议的曙光”的文章里对Rollup方案大加赞赏,认为它为智能合约的可扩展性打开了大门。
那么什么是Rollup?它包括哪些主流方案?这些方案各自有什么优缺点?它们未来发展的前景如何?
Rollup的出现
最近几年,以太坊二层扩容技术得到了迅猛发展。
所谓二层,就是将一部分资金存储在主链智能合约里,在保证足够安全的前提下,把一部分交易放到主链之外进行,就好像链下多出来了一层网络。
在二层方案里表现比较突出的就是状态通道和Plasma侧链。虽然这两种方案诞生时间很早,但是发展的却比较缓慢。其背后的原因归根结底是数据的可用性问题。
就在二层扩容技术举步维艰的时候,一种名叫Rollup的新方案被提了出来。
但是与状态通道和Plasma不同的是,它可以“打包”交易,并将“打包”后的交易数据连同一个SNARK零知识证明发布到链上。
打包的正确性可以通过零知识证明来见证,负责“打包”的操作者不可能发布恶意或无效的交易。这就是后来被VitalikButerin称之为ZKRollup的二层扩容方案。
报告:疫情未阻止企业长期看好产业区块链:日前,清华大学互联网产业研究院和中国物流与采购联合会区块链分会共同发布《后疫情时期产业区块链发展状况调研报告》。从调研数据来看,虽然疫情对企业的营收均产生了不同程度的影响,但仍有将近七成的企业表示不会降低区块链项目资金投入,其中有20%的企业更是将加大区块链项目资金投入。该报告指出,当前产业区块链中,小微型企业占比较大,然而融资难、融资贵一直是困扰该类企业发展的“拦路虎”。经此疫情,小微企业的经营均受到影响,融资需求进一步提升,因此,通过资金补贴帮助区块链项目解决前期阶段启动难、盈利难非常重要。报告认为,虽然疫情给产业区块链发展带来较大影响,但区块链技术在疫情防控和助力企业复工复产上发挥了重要作用,同时也加速了产业区块链在许多领域的应用。该报告还强调,疫情并未阻止企业对产业区块链长期看好的态度,产业区块链的发展也将迎来爆发期。(中国贸易报)[2020/5/26]
ZKRollup并非万能,它遇到的最大问题就是通用性。除非要证明的交易非常简单,否则创建SNARK证明的成本会非常高。
因此,一种名叫OptimisticRollup的折中方案被提了出来。
OptimisticRollup同样也是把交易数据都放到链上,但不是用SNARK做见证,而是采用“加密经济学有效性博弈”来实现有效性验证。
现场 | 于佳宁:数字金融不是区块链终点,要坚定长期拥抱产业区块链:金色财经现场报道,在10月26日火币大学全球区块链领导者课程毕业典礼上,火币大学校长于佳宁以《深入学习贯彻总书记有关区块链产业重要论述 加快推动区块链技术和产业创新发展
》为主题进行了分享。于佳宁校长分享学习中共中央总书记在局第十八次集体学习上讲话的心得。
于佳宁校长表示,不能再用盲人摸象的方法去认识区块链,如果简单地认为区块链是分布式账本,是社群经济,是交易机会等,则是很片面的。区块链是技术创新、数字金融、产业应用三位一体的深度融合。当前区块链技术和基础设施尚在建设进程,技术创新依旧是现阶段的产业重点方面。产业应用是区块链发展的价值,以通证经济为核心的数字金融是区块链发展的动力。但是数字金融不是终点,要坚定长期拥抱产业区块链,坚定实践火币大学校训“链接产业、赋能实体”。[2019/10/26]
作为一种提高区块链吞吐量的技术,Rollup可以在有效提高网络吞吐量的同时,避免对协议层进行大量的更改,部署Rollup也不需要对网络发起硬分叉升级。
目前已经有许多以太坊上的项目采用了Rollup协议来提高Dapp的吞吐量和用户体验。
动态 | 杭州望江新城北侧产业区块将引入区块链等技术:据浙江在线报道,3月28日,杭州上城区举行了城市建设新闻发布会,现场首次对外发布了望江新城未来三年的城市建设规划。未来三年,望江新城将以城市年轮带为主轴,形成南、中、北三个产业区块。其中,南侧以文化产业为主,中部主要是年轮商业街、国际社区以及智能企业加速器,北侧则是金融信息港和新金融聚集区,这里将引入大数据、区块链、云计算等前沿技术。[2019/3/30]
Rollup是如何工作的?
链上有一个智能合约,它维护状态根:rollup状态的Merkle根。
任何人都能够以高度压缩的形式发布批处理,交易集合以及先前的状态根和新的状态根。
合同检查批处理中的先前状态根是否与其当前状态根相匹配;如果是这样,它将状态根切换到新的状态根。
为了支持存款和提款,我们增加了使输入或输出处于rollup状态“之外”的交易的功能。
如果批次具有来自外部的输入,则提交该批次的事务也需要将这些资产转移到rollup合同中。
动态 | 新华社:业内人士认为市场出清后“产业区块链”时代即将到来:新华社报道称,业内人士认为,从短期来看,在全球市场上进行跨国价值转移时,比特币仍然是比较成熟的中介,存在一定市场基础,但是随着各国监管政策收紧,比特币的监管套利空间进一步缩小。有业内人士表示,近期比特币下跌意味着很多项目缺乏实际资产的支撑,处于“丛林”状态,被市场证明是低效的。市场出清后,“产业区块链”时代即将到来,未来数字资产与产业将深度绑定,市场监管将更加完善。[2018/11/25]
如果某个批次有外部输出,则在处理该批次时,智能合约会启动这些提款。
就是这样!除了一个主要细节:如何知道批次中的状态后根是正确的?
如果某人可以提交具有任何后期状态根源的批次而没有任何后果,那么他们可以将rollup中的所有Token转移给自己。
这个问题很关键,因为有两个非常不同的解决方案系列,而这两个解决方案系列就导致了两种rollup方式。
OptimisticRollup与ZKRollup
Rollup的两种类型分别是Optimisticrollup和ZKRollup。
1、OptimisticRollup
Optimisticrollup,使用欺诈证明—rollup合同会跟踪其整个状态根历史以及每个批次的哈希值。
韩国举行第4产业区块链技术与虚拟货币研讨会:在本月12日,在韩国狎鷗亭洞的邮轮378举行了区块链技术和虚拟货币的使用方案和其价值进行研讨会,该研讨会面向全韩国200名参与者。其研讨会由专家组成,并分享对于虚拟货币和区块链技术的见解。[2018/4/10]
如果有人发现某个批次的状态后根不正确,则发布需要链的证明,以证明该批次的计算不正确。合同将验证证明,并还原该批次及其之后的所有批次。
2、ZKrollup
ZKrollup,使用有效性证明—每个批次都包含一个称为ZK-SNARK的加密证明,这证明后状态根是执行批次的正确结果。
无论计算量有多大,都可以在链上非常迅速地验证证明。
总的来说,我个人认为,在短期内,对于通用EVM计算而言,乐观可能会胜出;而对于简单付款,交易和其他特定于应用的用例,ZK可能会胜出。
随着ZK-SNARK技术的改进,中长期ZK将在所有用例中胜出。
Rollup工作细节
在OptimisticRollup中,首先我们需要设立一个可信任的节点,这个节点负责收集所有的交易信息、验证然后打包.
打包后的信息集合将带上该节点的签名发送到区块链网络中。
当一个可信节点设置成功后,该节点将成为Rollup节点,这个节点需要同全节点一样,下载整个区块数据并实时更新区块状态。
我们仍旧以之前那个公司为例,假设目前有2000笔交易正在等待执行,公司的员工会将2000笔交易发给Rollup节点。
之后,Rollup节点需要根据已有的状态和区块数据,对交易进行验证,并保存以下数据集。
当Rollup节点对所有交易完成了验证与执行并生成数据集后,节点需要对这个数据集进行签名,即SigRollup节点。
最后将签名与数据集整合到一笔交易中,这个交易被称作断言Assertion,发送到区块链网络等待其他节点验证即可。
需要注意的是,网络中的其他节点并不会验证Rollup节点发来的数据集,仅仅只验证其签名,验证完毕后将根据数据集更新区块链网络状态。
正如它的名称“OptimisticRollup”,实际上所有的Rollup协议由于将交易验证从链上转移到了链下,因此都是一种基于“乐观”的假设—假设大多数情况下Rollup节点不会作恶。
但光有乐观假设是不足的,节点总会因为各种各样的原因出现问题。
为了避免这些节点恶意行为,提高作恶成本,OptimisticRollup中还有如下机制:
一方面,Rollup节点需要向网络质押一定额度的Token,这些Token有一定的解锁时间,并会在Rollup节点做出恶意行为时被罚没。
另一方面,Rollup节点所提交断言不会被网络立即认可,所以存在一定时间的窗口期。
如果其他节点认为该Rollup节点提交的断言存在恶意行为,节点可以质押一定押金并对该断言发起挑战。
并且区块链中的出块/验证节点会对该断言中的所有内容进行重新验证、执行,比对交易状态的差距。
如果的确存在恶意行为,那么Rollup节点的押金会被罚没,则发起挑战的节点则会获得一定奖励。如果不存在恶意行为,则发起挑战节点的押金会被罚没。
另外,在窗口期结束时没有其他节点对断言发起挑战的话,断言中的状态信息将会被系数更新至区块链状态中。
OptimisticRollup可以将多个交易信息经可信第三方聚合为单笔信息,由于交易中的状态变更情况是由链下节点验证而非链上节点验证。
因此降低了区块链上节点的验证难度。
数据集虽然看起来并没有较单个交易的叠加更小,但数据集因为不会受链上节点的验证,故不需要为其支付高昂的手续费。
依靠这种Layer2处理方案,可以很容易的提高区块链的有效吞吐量。
ZKRollup是如何工作的?
一个简单的以太交易需要约110个字节。但是,Rollup上的ETH传输仅占用约12个字节。
ZK特有的一个重要压缩技巧是,如果事务的一部分仅用于验证,而与计算状态更新无关,则可以将该部分留在链下。
这不会完全在乐观的状态下完成,因为如果以后需要在欺诈证明中检查数据,则仍需要将数据包含在链上。
而在ZK中,SNARK证明批次的正确性已证明任何数据提供了验证所需的信息。
还有一个重要的例子是隐私保护,在乐观的状态下,每笔交易中用于隐私的约500字节需要进行保留,而在ZK中,覆盖整个批次的ZK-SNARK已经没有了。
这些压缩技巧是Rollup可伸缩性的关键。没有它们,Rollup可能只会使基础链的可伸缩性提高约10倍,而采用压缩技巧时,缩放系数几乎可以超过100倍所有应用程序。
分析
Rollup的基本概念现在已经得到了很好的理解,但我们可以肯定它们在根本上是可行且安全的,并且已经将多个Rollup部署到了主网上。
但仍有很多Rollup设计领域尚未得到很好的探索,充分利用以太坊的可伸缩性,将以太坊生态系统的大部分完全整合到Rollup中还将面临很多挑战。
Rollup是一种强大的新的2层伸缩范例,在短期和中期的未来中,有望成为以太坊伸缩的基石。
投资有风险,本文观点和意见仅代表作者本人,并不构成任何建议。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。