技术复杂性与挑战性 探索比特币Layer2 Rollup方案

2024-01-22 15:21

免责声明 免责声明:内容来源于网络收集,不构成任何投资建议!

作者:浩田,独立研究员来源:X,@tmel0211

以以太坊从Plasma 到Validium 再到主流Rollup,比特币从侧链到状态通道再到客户端验证。 Layer 2 本质上是寻找一个兼顾安全性、可扩展性和去中心化的系统。面向权衡计划。基于此,我将ZK-Rollup 与最近讨论的@BsquaredNetwork 解决方案进行了比较,并讨论了比特币Layer 2 在DA 实现、互操作性和安全挑战等技术实现方面的差异和复杂性。

为了更好地进行同比参考,以可以先模糊“定义”一组对应关系:

ETH Plasma = BTC 状态通道;ETH Validium = BTC 侧链;ETH Rollup = BTC 客户端验证。

不难看,以太坊Plasma对应比特币生态Lightning Network,承接了BTC的安全性性,但HTLC合约目前仅限于小额支付方向; 以以太坊Validium对应比特币生态系统的侧链,其扩展性非常强,但它拥有一套独立的共识,使得它始终不被主流认可; 以Ethereum Rollup 我更喜欢对应比特币生态系统的客户端验证。安全性、可扩展性和去中心化特性将采取综合权衡点,以以太坊Rollup 也因此成为主流焦点赛道。

遵循以以太坊ZK-Rollup的思路,我们以以比特币客户端验证为突破口。如何构建比特币layer2 Rollup解决方案? 以@BsquaredNetwork 举个例子来讨论:

1)客户端验证部分:

在一个完整的以以太坊ZK-Rollup中,链下环节包括Sequencer采集和批量交易,会生成ZK SNARK证明和Merkle树等打包并同步到主网Calldata,然后链下会ZK SNARK 证书经过Prover 系统验证,最终State diff 上传到主网。主网将状态根与Calldata中的区块数据结合起来,验证数据的完整性和一致性,最终完成。最终状态确认。

Bsquare的客户端部分主要包括Rollup层和DA层。 Rollup层的工作流程大致如下:Sequencer收集并Batch交易,首先将其同步到去中心化存储环境,然后通过zkEVM生成Proof证明。同时,交易原始数据、Merkle树以以及比特币状态等数据被汇总成Aggregator和Proof证明并同步到DA层的B节点。

过程中有两点不同。一方面,比特币需要将TX的原始数据同步到去中心化的存储环境,而zk-Rollup默认为本地环境存储;另一方面,以以太坊可以将以直接同步数据摘要到主网Call Data,但比特币主网存储有限,缺乏验证能力,所以Bsquare将这些数据同步到客户端环境中的Bnode。

2)Data Availability部分

在以以太坊系统中,主网向Rollup链输出DA能力。 Rollup将数据同步到Calldata的操作目的是验证主网的DA验证能力。鉴于比特币主网不具备验证能力,DA功能由客户端环境内置的DA层承担。

DA 层的B节点收到这部分Rollup 摘要数据后,会进行电路编译操作,将数据压缩并以以铭文的形式上传到比特币主网。同时,Bnodes还将运行Prover系统对ZK通证进行去中心化验证,生成Bitcoin Commitment承诺,该承诺将与Rollupdata等汇总数据一起发送至刻铭文。

这里会出现两个问题:

1. 为什么不直接使用像Celestia这样的第三方DA并选择自己构建它?这是由比特币生态系统的特殊性决定的。 Bnode需要配备索引器来对比特币主网络上的铭文进行去中心化分析和去中心化。索引,并将生成的ZK Proof会议承诺表上传至主网。当刻铭文时,数据还需要经过Circuit电路的预编译和压缩。 以确保主网缩减。占用网络存储空间。

2、既然DA不是主网提供的,为什么以的各种Rollup数据要以铭文的形式同步到主网呢?这实际上是为了在主网上保留一份不可篡改的交易记录,以供后续挑战。

enge过程提供基础。

3)Challenge 部分

在ZK-Rollup中,主网Rollup合约的可通过Calldata中的打包数据和Prover上传到主网的State diff二次校验确保交易的完整性和一致性,这是主网具备验证能力,ZK技术的优势。

然而在比特币的Rollup环境下,由于主网缺乏验证能力,ZK技术价值本质在于SNARKs数据简洁压缩同时确保一致性,倘若在链下环境的Sequencer收集交易过程中就存在数据作假,整个链条的数据都是假的,Finality状态确认并无法拒绝作假的数据,因此要设计一套机制要对“作假”行为进行挑战。

要如何做呢?大家回看我关于BitVM的文章就会知道,BitVM

是一种理论假设下可以让比特币实现图灵完备计算的方案,只不过其预编译电路向比特币主网传输TXs的Taproot Tree方式过于消耗矿工费而不现实,如果借鉴BitVM的实现逻辑来进行挑战机制设计就不一样了。

挑战机制会在主网UTXO中锁仓BTC,一旦用户以BitVM的形式向layer2链发起挑战,就可以拿走提前锁仓在比特币主网的资产。而刻录在比特币主网的铭文以及公开透明的B²nodes等Raw data、Merkle树、Commitment承诺等都会成为用户发起挑战的证据,一旦挑战结果证明B²nodes中的一系列数据和主网铭刻的Inscription数据存在不一致问题,B²nodes的节点不仅会失去锁在主网UTXO中的资产,还需要将交易回滚,重新更新索引器和历史数据。

以上不难看出,比特币生态的layer2 Rollup方案有相当的技术复杂性和特殊性:比如客户端验证环节要基于去中心化存储将Sequencer产生的一切数据都留底,为了确保数据可追溯;又比如DA环节要在链下环境构建一套去中心化数据验证系统,并且通过Commitment承诺和刻录铭文的方式来保证DA数据的一致性;又比如即使采用了ZK技术,也需要配备公开透明的挑战机制以确保安全;整个过程要权衡一套去中心化、安全、可扩展性三个矛盾点得到一个公允的方案出来。

探索的雏形答案显而易见:既然比特币主网无法验证,无法DA,那就利用铭文向主网刻录受限的DA+一套基于BitVM电路的图灵完备挑战系统来实现Rollup链的透明性和安全性。以ZK技术+BitVM挑战系统来弥补比特币缺失的DA和验证能力。

既然以太坊Rollup也还存在Rollup合约可Update的多签合约治理隐患,也不能百分百确保安全,大家相信的其实是一套相对透明公开的合约交互机制,那现在做不到绝对BTC共识安全,摆在面前是一套基于BitVM的透明公开挑战机制,虽然技术实现复杂太多,逻辑似乎也Make Sense。

总之,比特币Layer2这套ZK技术+客户端验证+DA铭刻+BitVM挑战的范式若逐渐得到市场认可,你觉得会成为新一轮的比特币layer2 Rollup标榜吗?