项目调研丨解读首个比特币Sovereign Rollup项目Rollkit。

解读比特币Sovereign Rollup项目Rollkit。

项目简介

Rollkit是由Celestia社区开发的模块化开发链SDK,是一个Rollup框架,可以让开发人员可以在整个模块化堆栈中部署Rollup,并轻松修改它以适合他们的应用程序,为快速实验和创新开辟了新的可能性。

Rollkit框架具有一个模块化节点,可以运行Rollup并公开ABCI兼容的客户端接口,可以在任何ABCI兼容的区块链应用程序中用作Tendermint的替代品。默认情况下,节点使用Celestia作为数据可用性(DA)层,但可以集成其他数据可用性层。

Rollkit从2021年开始开发,并成为独立于Celestia区块链的事物。Rollkit作为社区主导的公共产品,推动模块化生态系统的发展,目前可用于部署Sovereign Rollup或Sovereign结算层。

项目愿景

将去中心化应用程序部署为共享区块链上的智能合约意味着它将共享计算资源并仅限于该区块链的执行环境。这限制了应用程序的可扩展性和灵活性。而如果部署一条新的L1公链,开发人员必须收集一组验证器来保护链,发行代币来补偿这些验证器,并持续维护网络基础设施。这意味着社会协调、时间、资本和专业知识方面的巨大成本。这种成本阻碍了许多开发者推出自己的区块链。

Rollkit的出现就解决了部署智能合约或新的L1时遇到的挑战。Rollup提供与L1区块链类似的优势,但减少了部署和维护自己的链的成本。

Rollkit的目标是让开发人员能够以最小的成本快速创建新的Rollup,并使部署新链像部署智能合约一样简单。它为开发人员提供多种选择,以便他们可以轻松地插入、切换或替换Rollkit中的功能。Rollkit的可定制堆栈将使开发人员能够更快、更灵活地将他们的产品推向市场。

发展历史

Celestia Labs于2021年开始开发Rollkit。当时模块化生态系统还处于萌芽阶段,通用的Rollup软件还不存在。Celestia Labs出于自身需要开始构建Rollkit,因为拥有用于Rollup链的通用软件对于Celestia的使命至关重要,因为当时Celestia Labs的目标是让部署新链像部署智能合约一样简单。

2023年2月,Rollkit从Celestia Labs剥离出来,成为一个独立的项目。这次分拆使得Celestia和Rollkit能够作为公共产品服务于整个模块化生态系统。同时,这个分拆保证了Celestia是一个去中心化且可信中立的数据可用性层。

2023年3月,Rollkit宣布支持比特币Sovereign Rollup,允许Rollkit Rollup使用比特币的数据可用性,开发者可以创建具有任意执行环境的Rollup,继承比特币的数据可用性保障和安全保障。

目前,Rollkit仍处于MVP阶段。该框架提供了一个执行接口(ABCI或Cosmos SDK)以及与数据可用性层(Celestia)的连接。开发者可以在Celestia的Mocha测试网使用Rollkit进行构建。

项目架构

应用结构

  • ABCI接口

Rollkit是一款功能齐全的应用程序区块链接口(ABCI)客户端软件。它允许开发者在不同的运行环境中切换,可以用作任何ABCI应用程序的CometBFT替代品。用户可以使用工具如abci-cli来测试和调试Rollup。

  • 数据可用性

可以使用通用ABCI接口来访问数据可用层(DA),这种设计允许与任何DA层无缝集成。新的实现可以通过编程方式插入,无需分叉Rollkit。Celestia是为Rollkit实现的数据可用性集成的一个示例。通过数据集成,在Celestia上部署Rollkit Rollup。另外,Rollkit还支持使用其他数据可用性(DA)层。目前已经支持Rollkit Rollup使用比特币的数据可用性。

节点类型

  • 全节点

全节点验证所有区块,并为OP Rollup生成欺诈证明。由于他们完全验证所有Rollup块,因此他们不依赖欺诈或有效性证明来确保安全。

  • 轻节点

轻节点是验证区块头的轻量级Rollup节点,可以通过欺诈证明或有效性证明来保护。运行轻节点的用户可以对Rollup状态进行信任最小化查询。目前,Rollkit轻节点仍在开发中。

  • 定序器节点

Rollup可以利用定序器节点。定序器是Rollup的区块生产者,负责将交易聚合到区块中,并且通常执行交易以生成状态根,供Rollup的轻客户端使用。

Rollkit计划支持多种不同的可插拔定序器方案。

一键部署 比L1更快的确认 控制Rollup的事务顺序 与其他Rollup的原子可组合性 抗审查制度 实施情况
集中定序器 需要启动定序器 最后阶段 已实施
去中心化定序器 需要启动定序器 实时 计划
共享区中心定序器 实时 计划
纯分叉选择规则 不确定 不确定 最后阶段 计划

注:“纯分叉选择规则”是指没有特权定序器的任何Rollup,例如节点遵循数据可用性层进行排序并应用“先来先服务”分叉选择规则。

团队 & 融资

Celestia Labs于2021年开始开发Rollkit,并已剥离成为独立项目。有关Celestia Labs团队和融资信息可以参考之前的文章项目调研 | 首个模块化公链Celestia研究报告。Rollkit作为社区主导的公共产品,由社区共同推动生态系统的发展,并定期举行电话会议。目前,GitHub上有30多个活跃贡献者,主要来自Celestia Labs的解决方案工程师以及其他一些区块链开发者和软件工程师。此外,从GitHub数据来看,项目一直保持着较高的代码提交活跃度,特别是在3月份宣布支持比特币Sovereign Rollup之后,代码提交活跃度一直很稳定,说明项目一直在努力推进。

发展成果

2023年3月,Rollkit宣布成为第一个支持比特币的Rollup框架,实现通过Rollkit Rollups,使用比特币进行数据可用性。开发者可以创建具有任意执行环境的Rollup,继承比特币的数据可用性保障和安全保障。通过这个新的集成,可以在比特币上运行EVM作为Rollkit进行Sovereign Rollup。

Rollkit表示,得益于比特币的Taproot升级和Ordinals允许使用比特币发布任意数据,使用比特币进行数据可用性的Sovereign Rollup得以实现。

SegWit引入了见证数据的概念,通过将一部分见证数据从交易中移除,降低了每笔交易对区块大小的占有率。Taproot改进了SegWit升级,消除了见证数据的大小限制。通过在见证数据中使用Taproot脚本,可以存储4MB大小的任意数据。凭借SegWit和Taproot两次升级,大量数据可以发布到比特币网络上。

从那时起,比特币上的Sovereign Rollup和Dapp生态系统就成为可能,但当时缺乏一款能够轻松集成比特币作为数据可用性层的Rollup框架。

Rollkit作为一款用于Rollup的模块化框架,开发人员可以在其中插入自定义执行层和数据可用性层。最初,Rollkit只支持Celestia作为数据可用性和共识选项。随着Rollkit比特币数据可用性早期研究的实施,使得选择比特币成为一种选项,此时Sovereign Rollup管理其自身的执行和结算,并将共识和数据可用性转移到比特币上。

为了在比特币上读取和写入数据,Rollkit使用Taproot交易。为了实现这一点,建立了一个名为bitcoin-da(比特币数据包)的Go包,提供了比特币数据包的Taproot读写接口。该包可以被任何有读写比特币数据需求的项目重复使用。

Rollkit的构建以标准化为核心,它具有数据可用性接口,开发人员可以简单地实现特定方法来添加新的数据可用性层。要添加数据可用性层,实现者需要满足定义数据可用性客户端行为的DataAvailabilityLayerClient接口,以及定义如何同步块的BlockRetriever接口。这些接口位于数据包中,其中最重要的作用是用于读取块的SubmitBlock和RetrieveBlock。

从此,Rollkit实现了在比特币上构建Sovereign Rollup的目标。比特币的Rollup不仅扩大了Rollup的可能性,而且可能有助于引导比特币健康的区块空间费用市场,从而实现更可持续的安全分配。

除了集成比特币数据可用层,开发者目前还在寻找利用这种集成进行创新,并将其复制到其他L1区块链上。

经济模型

目前Rollkit尚未发行代币。

优势与风险

优势

  • 可扩展性:Rollkit Rollup部署在专门的数据可用性层上,直接利用DA层的可扩展性。此外,Rollup交易是在链外执行的,而不是在数据可用性层执行的。这意味着Rollup有自己专用的计算资源,而不是与其他应用程序共享计算资源。
  • 可定制性:Rollkit使开发人员可以更轻松地使用主要组件并自定义其Rollup。这些组件包括数据可用性层、执行环境、证明系统和排序器方案。Rollkit堆栈使用的组件是可定制的。
  • 更快的部署时间:Rollkit消除了引导验证器组、管理共识网络、高昂的经济成本以及部署新的L1的挑战。Rollkit的目标是让部署Rollup变得更加简单,就像部署智能合约一样,从而将区块链产品推向市场所需的时间从几个月甚至几年缩短到几分钟。

风险

  • Sovereign Rollup的争议:Sovereign Rollup目前还是一个相对较新的领域,它具有高度的自主性,可以独立于一层区块链运行,并可以定义自己的交易验证和结算规则。但由于这种独立性,在一定程度上丧失了一层区块链的安全保障,而且由于独立的共识机制,Sovereign Rollup的升级可能会更加复杂。
  • 缺乏有效的市场验证:该项目仍处于非常早期的阶段,从项目进展角度来看,在集成比特币数据可用层之后,并没有其他方向的创新;从社区规模来看,推特关注者仅有3800人,电报群也只有211人,并且无论是推特还是其他社区,其成员活跃度都很低,因此该项目能否成功还需经过市场进一步验证。

目前各种新型Rollup不断出现,Rollup的开发为使用L1区块链数据可用层开辟了新的可能性。Rollkit的真正潜力在于其开发者和用户社区,目前项目已开源,未来随着Rollkit集成新的数据可用性层,其社区成员将改进这种集成并以真正使社区受益的方式使用它。

参考文献: Rollkit官方文档