Rollkit是第一个支持比特币主权rollup的rollup框架,使用Rollkit的目标是使构建和定制rollup变得容易
原文标题:Sovereign rollups on Bitcoin with Rollkit
原文作者:Rollkit
原文来源:rollkit.dev
编译:Kate, Marsbit
上周,我们介绍了Rollkit,这是一个用于rollup的模块化框架。今天,我们自豪地宣布Rollkit是第一个支持比特币主权rollup的rollup框架。早期的研究实现允许Rollkit rollup使用比特币来提供数据可用性。
Rollkit为开发人员打开了一扇大门,他们可以创建带有任意执行环境的rollup,这些环境继承了比特币的数据可用性保证和重组阻力。通过新的集成,现在可以在比特币上作为Rollkit主权rollup运行EVM。比特币的主权rollup不仅扩大了rollup的可能性,而且有可能帮助引导一个健康的比特币区块空间费用市场,从而实现更可持续的安全预算。
• 通过Rollkit新的早期研究集成,使用比特币进行数据可用性的主权rollup现在已经成为现实。
• 接下来是在比特币上作为主权Rollkit rollup运行的EVM的演示。
• 由于比特币的Taproot升级和Ordinals使用比特币发布任意数据,实现成为可能。
2023年2月1日,Luxor矿池挖出了有史以来最大的比特币区块(#774628),大约4 MB。大部分区块空间被用于用Ordinals来嵌入一个Taproot Wizards NFT,这是一个通过在链上发布图像数据来实现比特币NFT的项目。
比特币 NFT 使用 Taproot 见证来记录任意数据,这是通过比特币的 Taproot 升级实现的。Taproot witnesses 提供了比 SegWit 交易稍微好一点的有效载荷与数据的比率。一个标准交易最多可以包含大约 390kB 的任意数据,同时仍然通过公共内存池。矿工直接包含而不通过内存池的非标准交易可以包含接近 4MB 的任意数据。简而言之,有了 SegWit,将大量数据发布到比特币区块链变得可行。
从那时起,Ordinals用于NFT铭文和Taproot的使用开始了。Eric Wall发现,在他发推文的时候,发布比特币数据比以太坊便宜7倍。现在比特币上有成千上万的铭文,很明显,比特币上的主权rollup和dapp生态系统可能成为现实。缺失的部分是:一个可以轻松集成比特币作为数据可用性层的rollup框架。
Rollkit是一个用于rollup的模块化框架,开发人员可以在其中插入自定义执行层和数据可用性层。最初,Rollkit只支持Celestia作为数据可用性和共识的选项。现在,得益于Rollkit的比特币数据可用性模块的早期研究实现,比特币成为了一种选择。在这种情况下,主权rollup管理自己的执行和结算,同时将共识和数据可用性卸载给比特币。
rollkit-bitcoin-rollup
为了在比特币上读写数据,我们使用了Taproot交易。为了促进这一点,我们实现了一个名为bitcoin-da的Go包,它为比特币提供了一个读取器/写入器接口。关于接口如何工作以及如何使用Taproot的详细信息,请参见规范。任何想要在比特币上读写数据的项目都可以重用该包。
Rollkit是以模块化为核心构建的。它有一个数据可用性接口,因此开发人员可以简单地实现特定的方法来添加新的数据可用性层。要添加数据可用性层,实现者需要满足定义数据可用性客户端行为的DataAvailabilityLayerClient接口,以及定义如何同步块的BlockRetriever接口。这些接口位于da包中。这些接口中最重要的方法是用于读写块的SubmitBlock和RetrieveBlock。
在为比特币(bitcoin-da)实现了Taproot读写器接口之后,将其添加为Rollkit的数据可用性模块只花了不到一天的时间。我们基本上只需要为Rollkit实现SubmitBlock和RetrieveBlocks函数来调用bitcoin-da中的Read和Write方法。
rollkit-bitcoin-rollup-2
Rollkit支持自定义执行层,包括EVM、CosmWasm或Cosmos SDK。为了测试集成,我们使用Rollkit在本地比特币测试网络上运行EVM(使用Ethermint)作为主权rollup。请看下面的演示。
随着我们走向未来,主权社区将围绕不同的应用程序形成,要求他们承担部署第1层区块链成为主权的高成本和开销是不可持续的。主权rollup解决了这个问题,它使得部署一个主权链成为可能,该链继承了另一个第一层链(如比特币)的数据可用性和共识。
我们使用Rollkit的目标是使构建和定制rollup变得容易。我们邀请您试用Rollkit并在比特币上构建主权rollup,或使用不同的执行环境和数据可用性层自定义Rollkit。有关如何使用比特币数据可用性模块运行Rollkit的详细信息,请参阅此处的说明。请记住,集成是早期的研究实现,还没有准备好投入生产!
模块化,而不是最大化。