最近,以太坊创始人Vitalik Buterin在一篇题为“混合式二层协议的曙光” 的文章里对Rollup方案大加赞赏,认为它为智能合约的可扩展性打开了大门。
那么什么是Rollup?它包括哪些主流方案?这些方案各自有什么优缺点?它们未来发展的前景如何?
Rollup的出现
最近几年,以太坊二层(Layer-2)扩容技术得到了迅猛发展。
所谓二层,就是将一部分资金存储在主链智能合约里,在保证足够安全的前提下,把一部分交易放到主链之外进行,就好像链下多出来了一层网络。
在二层方案里表现比较突出的就是状态通道和 Plasma侧链。虽然这两种方案诞生时间很早,但是发展的却比较缓慢。其背后的原因归根结底是数据的可用性问题。
就在二层扩容技术举步维艰的时候,一种名叫 Rollup的新方案被提了出来。
但是与状态通道和Plasma不同的是,它可以“打包”交易,并将“打包”后的交易数据连同一个SNARK零知识证明发布到链上。
打包的正确性可以通过零知识证明来见证,负责“打包”的操作者不可能发布恶意或无效的交易。这就是后来被Vitalik Buterin称之为ZK Rollup 的二层扩容方案。
Bitfinex将于7月3日在Kava区块链上支持USDT存取款:6月30日消息,据官方公告,Bitfinex宣布客户将能够使用Kava传输层在Bitfinex平台上存入和提取USDT,此举旨在为Bitfinex客户提供更强的可访问性和管理USDT的灵活性。Bitfinex将于2023年7月3日在Kava区块链上支持USDT存取款,至此Bitfinex将其对USDT存取款的支持扩展到总共15个区块链。
此前6月21日消息,Tether宣布将在Kava网络上推出原生USDT。[2023/6/30 22:10:00]
ZK Rollup并非万能,它遇到的最大问题就是通用性。除非要证明的交易非常简单,否则创建SNARK证明的成本会非常高。
因此,一种名叫Optimistic Rollup的折中方案被提了出来。
Optimistic Rollup同样也是把交易数据都放到链上,但不是用SNARK做见证,而是采用“加密经济学有效性博弈”来实现有效性验证。
作为一种提高区块链吞吐量的技术,Rollup可以在有效提高网络吞吐量的同时,避免对协议层进行大量的更改,部署Rollup也不需要对网络发起硬分叉升级。
Coinbase、Robinhood、Kraken可能因潜在的违反证券法而面临诉讼:金色财经报道,Coinbase、Robinhood、Kraken和其他公司可能因潜在的违反证券法行为而面临诉讼。(Fox Business)[2023/3/10 12:53:32]
目前已经有许多以太坊上的项目(如Celer,ANON等)采用了Rollup协议来提高Dapp的吞吐量和用户体验。
Rollup是如何工作的?
链上有一个智能合约,它维护状态根:rollup状态的Merkle根(意思是,“余额”内的帐户余额,合同代码等)。
任何人都能够以高度压缩的形式发布批处理,交易集合以及先前的状态根和新的状态根(处理交易后的Merkle根)。
合同检查批处理中的先前状态根是否与其当前状态根相匹配;如果是这样,它将状态根切换到新的状态根。
Circle发布跨链传输协议开发文档:USDC的跨链销毁和铸造必须获得签名证明:金色财经报道,美元稳定币 USDC 发行方 Circle 发布跨链传输协议开发文档,用户跨链发起 USDC 转移需要在目标链上指定接收方钱包地址,并用于在源链上销毁 USDC。
Circle 会进行取证,包括观察和证明原链上的 USDC 销毁交易,原链应用程序需要请求来自 Circle 的签名证明才能进行销毁,同时也必须在获得签名证明后才能在目标链上授权铸造指定数量的 USDC,完成铸造后访客将 USDC 发送至接收者的钱包地址,当前跨链传输协议主要用例包括交易、借贷、支付、NFT 和游戏等。
此前消息,Circle 将于 2023 年第一季度上线以太坊和 Avalanche 主网,目前已在以太坊的 Goerli 测试网和 Avalanche 的 Fuji 测试网上可用。[2023/1/26 11:30:17]
为了支持存款和提款,我们增加了使输入或输出处于rollup状态“之外”的交易的功能。
如果批次具有来自外部的输入,则提交该批次的事务也需要将这些资产转移到rollup合同中。
如果某个批次有外部输出,则在处理该批次时,智能合约会启动这些提款。
就是这样!除了一个主要细节:如何知道批次中的状态后根是正确的?
Swing推出软件工具以更轻松地部署跨链解决方案:金色财经报道,去中心化跨链流动性协议Swing推出了一个新的小部件和软件开发工具包 (SDK),以简化跨链加密部署。该项目于周三宣布,Swing的新小部件和SDK支持21个EVM兼容链,包括Ethereum、BNB Chain、Arbitrum和Optimism。Swing还计划扩展到覆盖四个非EVM网络,如Solana和Cosmos。(The Block)[2023/1/18 11:19:24]
如果某人可以提交具有任何后期状态根源的批次而没有任何后果,那么他们可以将rollup中的所有Token转移给自己。
这个问题很关键,因为有两个非常不同的解决方案系列,而这两个解决方案系列就导致了两种rollup方式。
Optimistic Rollup与ZK Rollup
Rollup的两种类型分别是Optimistic rollup和ZK Rollup。
Optimistic Rollup
Optimistic rollup,使用欺诈证明—rollup合同会跟踪其整个状态根历史以及每个批次的哈希值。
如果有人发现某个批次的状态后根不正确,则发布需要链的证明,以证明该批次的计算不正确。合同将验证证明,并还原该批次及其之后的所有批次。
欧盟委员会的研究报告:标准政策无法有效监管DeFi:金色财经报道,根据欧盟委员会本周发布的一份研究报告,欧盟委员会正在通过本周发布的一份新报告调查有关如何监管DeFi的提案。?报告称,认识到DeFi的信息结构方式与传统金融的不同,标准政策无法有效监管DeFi。该报告提出了 4 项政策建议:
1.报告建议根据微观审慎要求制定一项单独的政策来规范法人实体的活动。
2.自愿遵守框架将涵盖协议和法律实体。
3.建立一个公共观察站,根据公共链上数据发表意见(\"嵌入式监督\")。
4.建立一个甲骨文监督/监管的方法。[2022/10/21 16:34:53]
ZK rollup
ZK rollup,使用有效性证明—每个批次都包含一个称为ZK-SNARK的加密证明(例如,使用PLONK协议),这证明后状态根是执行批次的正确结果。
无论计算量有多大,都可以在链上非常迅速地验证证明。
总的来说,我个人认为,在短期内,对于通用EVM计算而言,乐观可能会胜出;而对于简单付款,交易和其他特定于应用的用例,ZK可能会胜出。
随着ZK-SNARK技术的改进,中长期ZK将在所有用例中胜出。
Rollup工作细节
在Optimistic Rollup中,首先我们需要设立一个可信任的节点,这个节点负责收集所有的交易信息、验证然后打包.
打包后的信息集合将带上该节点的签名发送到区块链网络中。
当一个可信节点设置成功后,该节点将成为Rollup节点,这个节点需要同全节点一样,下载整个区块数据并实时更新区块状态。
我们仍旧以之前那个公司为例,假设目前有2000笔交易正在等待执行,公司的员工会将2000笔交易发给Rollup节点。
之后,Rollup节点需要根据已有的状态和区块数据,对交易进行验证,并保存以下数据集(交易内容,交易前状态,交易后状态)。
当Rollup节点对所有交易完成了验证与执行并生成数据集后,节点需要对这个数据集进行签名,即Sig Rollup节点(交易内容,交易前状态,交易后状态)。
最后将签名与数据集整合到一笔交易中,这个交易被称作断言Assertion,发送到区块链网络等待其他节点验证即可。
需要注意的是,网络中的其他节点并不会验证Rollup节点发来的数据集,仅仅只验证其签名,验证完毕后将根据数据集更新区块链网络状态。
正如它的名称“Optimistic Rollup”,实际上所有的Rollup协议由于将交易验证从链上转移到了链下,因此都是一种基于“乐观”的假设—假设大多数情况下Rollup节点不会作恶。
但光有乐观假设是不足的,节点总会因为各种各样的原因出现问题。
为了避免这些节点恶意行为,提高作恶成本,Optimistic Rollup中还有如下机制:
一方面,Rollup节点需要向网络质押一定额度的Token,这些Token有一定的解锁时间,并会在Rollup节点做出恶意行为时被罚没。
另一方面,Rollup节点所提交断言不会被网络立即认可,所以存在一定时间的窗口期(一般是1周)。
如果其他节点认为该Rollup节点提交的断言存在恶意行为,节点可以质押一定押金并对该断言发起挑战。
并且区块链中的出块/验证节点会对该断言中的所有内容(包括数据集)进行重新验证、执行,比对交易状态的差距。
如果的确存在恶意行为,那么Rollup节点的押金会被罚没,则发起挑战的节点则会获得一定奖励。如果不存在恶意行为,则发起挑战节点的押金会被罚没。
另外,在窗口期结束时没有其他节点对断言发起挑战的话,断言中的状态信息将会被系数更新至区块链状态中。
Optimistic Rollup可以将多个交易信息经可信第三方聚合为单笔信息,由于交易中的状态变更情况是由链下节点验证而非链上节点验证。
因此降低了区块链上节点的验证难度(仅需要验证Rollup节点所提交的签名,并更新由该节点提交的状态信息即可)。
数据集虽然看起来并没有较单个交易的叠加更小,但数据集因为不会受链上节点的验证,故不需要为其支付高昂的手续费。
依靠这种Layer2处理方案,可以很容易的提高区块链的有效吞吐量。
ZK rollup是如何工作的?
一个简单的以太坊交易(发送ETH)需要约110个字节。但是,Rollup上的ETH传输仅占用约12个字节。
ZK特有的一个重要压缩技巧是,如果事务的一部分仅用于验证,而与计算状态更新无关,则可以将该部分留在链下。
这不会完全在乐观的状态下完成,因为如果以后需要在欺诈证明中检查数据,则仍需要将数据包含在链上。
而在ZK中,SNARK证明批次的正确性已证明任何数据提供了验证所需的信息。
还有一个重要的例子是隐私保护,在乐观的状态下,每笔交易中用于隐私的约500字节需要进行保留,而在ZK中,覆盖整个批次的ZK-SNARK已经没有了。
这些压缩技巧是Rollup可伸缩性的关键。没有它们,Rollup可能只会使基础链的可伸缩性提高约10倍,而采用压缩技巧时,缩放系数几乎可以超过100倍所有应用程序。
链金分析
Rollup的基本概念现在已经得到了很好的理解,但我们可以肯定它们在根本上是可行且安全的,并且已经将多个Rollup部署到了主网上。
但仍有很多Rollup设计领域尚未得到很好的探索,充分利用以太坊的可伸缩性,将以太坊生态系统的大部分完全整合到Rollup中还将面临很多挑战。
Rollup是一种强大的新的2层伸缩范例,在短期和中期的未来(以及可能也是长期的)中,有望成为以太坊伸缩的基石。
Web 1(时间跨度大约在 1990-2005 年),主要核心是去中心化和社区管理的开放协议,大部分价值都分配给了网络的边缘,即:用户和建设者(Builder).
1900/1/1 0:00:00非同质化代币,或NFT,它无处不在。虽然于2012年就已经诞生,但今年早些时候,需求的巨大激增将NFT市场正式送到了大众面前.
1900/1/1 0:00:00北京时间周四凌晨,美联储宣布维持零利率水平和每月1200亿美元的购债规模不变,并表示可能会在11月份的会议上正式缩债,符合市场预期。但美联储将加息时间提前至明年.
1900/1/1 0:00:00英国央行正在加强对央行数字货币(CBDC)的研究,并选择了一些银行专家和金融科技专家来给予协助.
1900/1/1 0:00:009月16日,Coinbase 正式上线自由职业者招聘平台 Braintrust 代币 BTRST.
1900/1/1 0:00:00嗨!你好呀,约瑟夫·熊彼特(Joseph Schumpeter)在1942年创造了创造性破坏(creative destruction)一词.
1900/1/1 0:00:00