干货 | 区块链的热门主力方案Rollup是什么?_Blox:AITROLLS

?最近,以太坊创始人VitalikButerin在一篇题为“混合式二层协议的曙光”的文章里对Rollup方案大加赞赏,认为它为智能合约的可扩展性打开了大门。

那么什么是Rollup?它包括哪些主流方案?这些方案各自有什么优缺点?它们未来发展的前景如何?

Rollup的出现

最近几年,以太坊二层扩容技术得到了迅猛发展。

所谓二层,就是将一部分资金存储在主链智能合约里,在保证足够安全的前提下,把一部分交易放到主链之外进行,就好像链下多出来了一层网络。

在二层方案里表现比较突出的就是状态通道和Plasma侧链。虽然这两种方案诞生时间很早,但是发展的却比较缓慢。其背后的原因归根结底是数据的可用性问题。

就在二层扩容技术举步维艰的时候,一种名叫Rollup的新方案被提了出来。

但是与状态通道和Plasma不同的是,它可以“打包”交易,并将“打包”后的交易数据连同一个SNARK零知识证明发布到链上。

打包的正确性可以通过零知识证明来见证,负责“打包”的操作者不可能发布恶意或无效的交易。这就是后来被VitalikButerin称之为ZKRollup的二层扩容方案。

DownDetector:Facebook和Instagram出现故障:金色财经报道,据网络状况监测网站DownDetector:Meta Platforms(META.O)旗下社交媒体Facebook和Instagram出现故障。[2023/6/17 21:43:21]

ZKRollup并非万能,它遇到的最大问题就是通用性。除非要证明的交易非常简单,否则创建SNARK证明的成本会非常高。

因此,一种名叫OptimisticRollup的折中方案被提了出来。

OptimisticRollup同样也是把交易数据都放到链上,但不是用SNARK做见证,而是采用“加密经济学有效性博弈”来实现有效性验证。

作为一种提高区块链吞吐量的技术,Rollup可以在有效提高网络吞吐量的同时,避免对协议层进行大量的更改,部署Rollup也不需要对网络发起硬分叉升级。

目前已经有许多以太坊上的项目采用了Rollup协议来提高Dapp的吞吐量和用户体验。

Elon Musk:将解决Twitter加密垃圾邮件机器人问题,但不喜欢Facebook的方式:金色财经报道,在特斯拉创始人Elon Musk被披露持有社交媒体巨头Twitter公司9.2%股份后,加密社区用户@Pranay Pathole向他提出需要解决Twitter上的加密垃圾邮件机器人的问题,因为这些机器人程序真的很烦人并建议改进Twitter验证系统。

Elon Musk对此表示:的确如此,这也是他个人觉得Twitter上最烦人的一个问题。之后,Meta(原Facebook)首席技术官Boz回应称:Facebook很早就解决了这个问题,只需包含一个已被编辑的指示器以及更改日志就可以。不过,Elon Musk回复说:Facebook让我感到神经恐惧且有不适感。[2022/4/5 14:05:03]

Rollup是如何工作的?

链上有一个智能合约,它维护状态根:rollup状态的Merkle根。

任何人都能够以高度压缩的形式发布批处理,交易集合以及先前的状态根和新的状态根。

合同检查批处理中的先前状态根是否与其当前状态根相匹配;如果是这样,它将状态根切换到新的状态根。

Meta与VNTANA合作,帮助品牌在Facebook和Instagram投放3D/AR广告:金色财经报道,Meta与3D/AR电商解决方案开发商VNTANA达成新合作伙伴关系,帮助各品牌更容易在其Facebook和Instagram社交媒体平台上投放3D广告。

VNTANA表示,Meta与VNTANA的合作将支持品牌厂商将其产品3D模型上传至Facebook和Instagram,并轻松转换为广告内容。VNTANA公司首席执行官AshleyCrowder表示,此举是进入元宇宙广告业的踏脚石。此前,Meta曾与增强现实企业Modiface和PerfectCorp合作,帮助美妆品牌运行3D和AR广告。

AshleyCrowder表示:“元宇宙基本上是一个空间互联网,这是一个由3D模型构成的充满无限可能性的世界。”例如,Facebook和Instagram用户在电脑或手机上浏览时看到一个手提袋的3D广告,可以与之进行互动,移动图像并从各个角度查看该产品。(news.bitcoin)[2022/3/30 14:26:46]

为了支持存款和提款,我们增加了使输入或输出处于rollup状态“之外”的交易的功能。

声音 | BM:Facebook Coin 其实就像 PayPal 一样:据 IMEOS 报道,有成员在电报群问 BM 对 Facebook 即将发行代币有何看法。BM回复到,他们根本不明白,他们只是认为人们需要稳定加密货币,Fb coin 其实就像是 PayPal。[2019/3/10]

如果批次具有来自外部的输入,则提交该批次的事务也需要将这些资产转移到rollup合同中。

如果某个批次有外部输出,则在处理该批次时,智能合约会启动这些提款。

就是这样!除了一个主要细节:如何知道批次中的状态后根是正确的?

如果某人可以提交具有任何后期状态根源的批次而没有任何后果,那么他们可以将rollup中的所有Token转移给自己。

这个问题很关键,因为有两个非常不同的解决方案系列,而这两个解决方案系列就导致了两种rollup方式。

OptimisticRollup与ZKRollup

Rollup的两种类型分别是Optimisticrollup和ZKRollup。

1、OptimisticRollup

Optimisticrollup,使用欺诈证明—rollup合同会跟踪其整个状态根历史以及每个批次的哈希值。

OFAC考虑建立比特币黑名单,或改变加密货币生态:外国资产管理办公室(OFAC)于3月19日宣布,它正在考虑在被禁止进行交易的美国个人和实体名单中加上个人或实体的数字货币地址。在OFAC网站的一个新章节中,标题为“关于虚拟货币的问题”,OFAC指出,它可能会将数字货币地址添加到SDN列表中,以提醒公众特定的数字货币标识符与被屏蔽的人相关。金融机构将会被要求根据OFAC提供的清单筛选交易中的虚拟货币地址,并报告、拒绝服务或阻止涉及任何列出地址的交易。[2018/3/26]

如果有人发现某个批次的状态后根不正确,则发布需要链的证明,以证明该批次的计算不正确。合同将验证证明,并还原该批次及其之后的所有批次。

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层伸缩范例,在短期和中期的未来中,有望成为以太坊伸缩的基石。

投资有风险,本文观点和意见仅代表作者本人,并不构成任何建议。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

金智博客

[0:15ms0-9:195ms