IBC协议2023年度总结:跨链协议的黄金标准
Cosmos 团队提出的 IBC(Inter-Blockchain Communication)协议是一个完全开源、通用的区块链跨链互操作协议。其「分层技术架构」和开放的「技术开源策略」,让 IBC 可以支持功能丰富、无需信任的跨链互操作,成为当之无愧的跨链协议的黄金标准。
2023 全年,部署并且启用 IBC 协议的区块链,从 53 个增长到了 107 个,仅在 12 月单月,就产生了 25 亿美元的交易量,完成了超过 530 万次的通证跨链。
IBC 区块链数量:
https://tfm.com/bridge?chainFrom=cosmoshub-4&chainTo=
530 万次转账https://mapofzones.com/zones?columnKey=ibcVolume&period=30d
与此同时,IBC Github 代码库共收到 124 位贡献者提交的代码,进行了版本升级、新增了许多功能、工具和应用,并实现了与 Polkadot 和 Avalanche 测试网的跨链。
基于这些年的蓬勃发展,IBC 跨链协议正式进行了品牌重塑。
值得一提的是,尽管 Rekt 排行榜中超过 50% 都是跨链协议,但 IBC 协议从未出现过,进一步验证了 IBC 的跨链黄金标准地位。
Rekt:https://rekt.news/leaderboard/
ibc-go :对链间账户的改变
https://medium.com/the-interchain-foundation/ibc-go-v6-changes-to-interchain-accounts-and-how-it-impacts-your-chain-806c185300d7
34条额外的链:
https://lookerstudio.google.com/u/0/reporting/37cfb84a-8544-496b-92ff-0f7ff7dce1c6/page/HnOdD
ICAcontrollersubmodule、ICAhostfunctionality
https://ibc.cosmos.network/main/apps/interchain-accounts/overview#concepts
与此同时 ibc-rs 开始展示其日渐增长的适应性。用户包括 Namada,一个注重隐私的 L1 区块链;Nomic,Cosmos 的比特币桥;Octopus Network,构建了 NEAR-IBC;以及 ComposableFi,正在研究 Solana <> Cosmos 的互操作性。
ibc-rs:
https://github.com/cosmos/ibc-rs
Ibc-solidity 在跨链开发者社区中已经有越来越多的采用,潜力无限。例如 Composable Finance 采用了该模块,建立了以太坊和 Cosmos 生态系统之间的桥梁。此外,TOKI 即将在公开测试网上推出的桥梁,将促进以太坊和币安智能链之间的连通性。我们期待出现更多扩展到 EVM 生态系统的应用。
Authz: https://github.com/cosmos/cosmos-sdk/tree/main/x/authz
回调中间件/ Callbacks Middleware 是一个 IBC 模块,它给已实现 IBC 的链、产品以及智能合约提供了进行回调的能力。它使得一个主要的应用,比如 transfer 或是 ICA,能够向一些初级的应用如 Wasm 或 EVM 执行框架进行回调。这样,像 x/wasm 或 ethermint 这样的执行框架上的智能合约在数据包生命周期期间就能接收回调。回调中间件有自己的 go.mod,并在 ibc-go 的 7.3.0 版本以及更高版本中得到支持。感谢 Osmosis 团队,Nicolas Lara,Alex Peters,以及 Confio 团队在开发这个特性时的反馈。
《介绍回调中间件》
https://medium.com/the-interchain-foundation/introducing-the-callbacks-middleware-compose-smart-contracts-and-modules-with-ibc-6f3fb527e44a
Wasm 客户端模块使添加新的轻客户端变得更加简单。它包括一个能够托管轻客户端字节码的 Wasm VM,因此轻客户端可以用任何支持 Wasm 的语言如 Rust、C/C 、JS 或 Go 进行开发。Wasm 客户端模块有它自己的 go.mod,独立于 ibc-go 发行。
感谢 Confio、 Strangelove、 Composable、 Chorus One 和 Ethan Frey 对这个特性的宝贵贡献。请阅读博客文章,了解更多关于 08-wasm 的信息。
Wasm 客户端 https://github.com/cosmos/ibc-go/tree/feat/wasm-clients/modules/light-clients/08-wasm
1、重新设计 API :团队重新设计了 API 以支持更广泛的用例,目标是帮助团队把 IBC 带出 Cosmos。请查阅 ADR 005 和 ADR 007 。
2、改进的安全性和可靠性:全面的错误解决和与 ibc-go 一致的高级验证检查。
3、选择性的模块或域型库导入:将 ibc-rs 仓库从一个整体库重构为多个嵌套的库,赋予用户根据特定用例选择性导入不同模块或类型的灵活性。
4、Ibc-query 和 ibc-testkit 库:介绍了容纳查询 ibc-rs 启用链的实用特性和实现的 ibc-query 库,以及用于简化测试的 ibc-testkit 库。
5、功能性客户机的可升级性:主机链现在可以访问 API 和升级提案实用工具,以处理升级客户机消息和提案。
6、No-float 和 no-std 环境的兼容性:加入了 No-float 和环境的兼容性,以实现更顺畅的编译体验。
7、用于集成测试的重构的 basecoin-rs :ABCI 应用 basecoin-rs 经过了重构,现在是 ibc-rs 集成测试的主要场所。
Datachain 的 ibc-solidity 团队提供了一系列改进,提高了其对 IBC 的 Interchain 标准的符合度,同时支持向其他生态系统扩展。他们还展示了一个使用 ibc-solidity 以及 LCP 客户端将以太坊和 Cosmos (ibc-go) 链接起来的示例,实现了两个生态系统之间的 IBC 连接。以下是一些新增功能和改进的例子:
1、和 ibc-go 的 ICS-20、 ICS-03 和 ICS-04 兼容:ICS-20 的通证迁移支援,使 IBC 应用能够集成到诸如 CosmWasm 合约调用基于 EVM 的链路等混合生态系统中。ICS-03 和 ICS-04 为超时及连接版本协商提供了支援。
2、重构 ibc-solidity 模块:提高了以太坊等 EVM 链的 gas 效率,同时也便于 EIP -2535 的应用。具体参见 PR 130 和 234 。
一个强大且易于使用的 IBC 多链测试环境,能帮助用户快速启动自定义的测试网和开发环境,以测试 IBC,链基础设施,智能合约等。这个框架通过 Docker 容器进行 Go 测试,并且近期已经扩展到包括私有测试网的本地- interchain 和 Ethermint 集成。该框架由 Strangelove 开发。
2、IBC Hooks
https://github.com/osmosis-labs/osmosis/blob/ccfbda098583c5923c799599e4786babfe50ae76/x/ibc-hooks/README.md
Wasm hook 是一个 IBC 中间件,通过 memo 字段,使得 ICS-20 通证转移能够发起 Wasm 合约调用。其中,跨链交易就是这个中间件的主要原语之一。此中间件由 Osmosis 开发。
3、 ICS-721
https://github.com/cosmos/ibc/tree/main/spec/app/ics-721-nft-transfer
这个应用启用了 IBC 上的跨链 NFT(非同质化通证)转移。该应用由 Bianjie 和 Stargaze 共同开发。
Interchain 的分布式开发团队都秉持着一个共同的目标,那就是创造最好的技术栈。
ibc-go 团队的 Damian Nolan 发现了一个非 SDK 仓库的 Ledger 签名问题,并且成功地解决了它。他还向团队提供了正确修复方案的文档。ibc-go 团队技术负责人 Colin Axnér 发现并修复了 Cosmos SDK 治理模块和 SDK 错误字符串非确定性的问题;他的主动检测和报告功能帮助防止了安全风险。ibc-go 工程团队也在今年发现并修复了几个较小的跨链技术栈问题。这包括参数迁移问题,CometBFT key/value 的变化导致中继器遗漏某些事件,以及 SDK v.0.50.0 的起源迁移代码中的错误参数等。尽管这些发现并不重要,但解决它们在保持 Cosmos SDK 和 CometBFT 的强大和可靠,以及 IBC 协议的稳定方面起了关键作用。
今年,我们显著改进了端到端()测试流程,使我们能够更有效地检测和处理问题。我们要感谢 Strangelove 构建了 interchaintest 框架,这是我们 测试过程的基础。我们要对建设 Interchain Stack 的团队表示深深的感谢,特别是 Informal Systems,Binary Builders,Confio GmbH 和 Strangelove。识别和解决和堆栈相关挑战的协作过程强调了 Interchain 生态系统的相互关联性。这显示了我们全球网络的精神,共同努力带来持续的改进和成长。
IBC 的力量来自其贡献者。
IBC 的 Interchain 标准、ibc-go、ibc-rs、ibc-solidity 和 ibc-apps 的 GitHub 仓库有着 124 个贡献者,他们中很多人在 IBC 启用的链和应用上工作,并主动投入时间来改进协议。总的来说,IBC 贡献者社区致力于数百个创新项目,共同推动了协议的发展,并在开源代码的同行评议中投入了大量时间。
去年,ibc-go 的生命周期中拥有了 52 个外部贡献者,然而到 2023 年这个数字增加到了 80 ,实现了显著的 53% 的增长。以下的表格显示了截至 2023 年 11 月 27 日,ibc-go 的前 5 位外部贡献者在提交次数上的表现。Interchain 的 IBC 团队对这些人以及所有 IBC 贡献者表示最深的感谢,他们的无私贡献将 IBC 的发展推进了一大步。
关于 GitHub 的活动,这里有一些数据可以显示直到 2023 年 11 月底,ibc、ibc-go、ibc-rs、ibc-apps 和 ibc-solidity 仓库的开发进度。今年一共有 1742 个 PR 被合并。
2023 年 IBC 协议的开发达到了几个重要的里程碑。
当前,有多个团队正在研发 IBC 与 rollup 互通项目。其中,Dymension 正在推动其他 rollup 项目在他们的基础上进行部署。这样,所有的 rollup 便能利用 IBC 实现互联互通。此外,他们还正在开发一款名为 eIBC 的中间件,可以在不等待争议期的情况下实现乐观 rollup 的通证转移功能。目前,Dymension 已经拥有千余个已部署 rollup 的激励试验网。
为制定 rollup 的开发框架 Rollkit 与在 Interchain Foundation 的 IBC 团队正合作进行接口整合,使得 Rollkit 与 rollup,以及 Rollkit 与 IBC-enable 的链之间都可以通过 IBC 进行交流。另一家名为 Sovereign SDK 的 ZK-rollup 框架公司,也在与 ibc-rs 团队共同研发一个 SDK 的接口模块,以实现使用 Sovereign SDK 构建的 rollups 能够通过 IBC 实现交流。
作为用户活跃度、流动性、开发者倾向以及市场份额都处于领先的链,把 IBC 集成到以太坊主网是一项优先级极高的工作。Union 团队最近宣布他们在将 IBC 集成到以太坊主网方面取得了进展。他们已经有一个测试网,在 Cosmos 和以太坊( Sepolia 测试网)两方都完全工作的轻量级客户端,会员认证和非会员认证,全功能的中继器实现,以及一个零知识证明器。Composable Finance 也已经有一个针对 Cosmos 与以太坊 IBC 连接的测试网。Polymer Labs 最近也宣布他们从 Cosmos SDK 链切换到了结合了 Cosmos SDK 和 OP 栈的二层 rollup,旨在提供从 Cosmos 链到以太坊主网以及其他 rollup 的 IBC 互操作性。以太坊本身也将在其 rollup 中验证 IBC 的执行。Landslide 宣布了针对将 IBC 集成到雪崩的测试网 Landslide 是一个雪崩子网,目标是作为把 IBC 集成到雪崩生态系统的入口,使得 Cosmos 链可以和雪崩子网进行互操作,反之亦然。Landslide 目前有一个有激励的测试网,并计划明年推出主网。
跨链通信协议的强大之处源于其大量的开发者、用户和爱好者组成的社区,每年都在推动着协议发展,并且达到新的高峰。2024 年,IBC 的两大目标是扩展到新的生态系统并提升协议的易用性。重点包括 OP Stack、 Rollkit 和 Sovereign SDK 在内的 rollup 框架集成,测试框架和开发者工具的改进,对现有功能的增强等等。我们将在 2024 年年初发布文章做更详细的介绍。我们相信,IBC 必将成为区块链的 TCP/IP 而被广泛采用。
免责声明:本文仅供参考,不得被用作法律、税务、投资、理财或任何其他建议。