CCIP 可编程代币转账功能能够实现跨链交换用例,任何代币都可以通过 CCIP 连接到源链和目标链上的流动性池/去中心化交易所(DEX),从而有效进行桥接。
例如,建立在 CCIP 之上的跨链交换应用程序允许用户在 Arbitrum 上持有的 Token A 交换为 Optimism 上的 Token B。操作过程是先将 Arbitrum 上的 Token A 交换为 USDC,然后将 USDC 连同交换数据一起桥接到 Optimism,并自动将 USDC 交换为 Token B,最后发送到用户的钱包。这就是 CCIP 对原生 USDC 支持 的强大之处;它不仅支持通过销毁和铸造方式进行原生 USDC 的跨链转账,而且还支持同时传输有关到达目标链后如何处理 USDC 的数据——这是 CCIP 可编程代币转账的独特功能。
XSwap 是一个跨链交换协议,也是 构建计划(BUILD Project)的参与者,它使用 CCIP 的可编程代币转账功能来实现区块链网络之间的跨链交换。XSwap 使用 USDC 作为流动性代币。自推出以来,XSwap 用户已经发起了超过 1.3 亿美元的 CCIP 可编程代币转账。
其他使用CCIP可编程代币转账的用户包括 Transporter、ChainSwap、WEMIX PLAY、Amino Rewards等。
CCIP 可编程代币转账为跨链质押和再质押解锁了创新。最终用户可以直接从二层网络进行质押/再质押,其中 CCIP 用于将原生资产转回第一层区块链,并附带指示(再)质押资产到指定的(再)质押协议的指令。这降低了用户的 gas 成本,并为他们提供了从任何链上进行(再)质押的便利。
例如,EigenPie 正在集成 Chainlink CCIP,以使其用户能够直接将ETH存入他们的二层合约中,以接收相应的LRT(egETH),而无需离开链。一旦用户将ETH存入二层合约,CCIP的可编程代币转账将把代币桥接到以太坊,并附带指示将它们再质押到 Eigenlayer 的指令。然后,CCIP 被用来锁定在以太坊上铸造的egETH,并将其桥接回 L2,在那里进行铸造并发送到最终用户的钱包地址。
你可以在博客上阅读更多关于Chainlink对质押和再质押的支持:Chainlink 平台如何解锁 DeFi 中的 LST 和 LRT 采用。了解如何在 CCIP大师课:跨链质押版中实现Chainlink CCIP可编程代币转账,以获得更深入的技术洞察。
Chainlink CCIP 概述
互操作性 是指在不同系统或网络之间交换信息的能力,即使它们是不兼容的。不同网络上的共享概念确保了各方理解并信任交换的信息。它还考虑了最终性的概念,通过验证信息的准确性和完整性来建立对交换信息的信任。
Web3生态系统已经变得多链化,随着第一层(layer-1)区块链和像应用链(appchains)、子网(subnets)等第二层(layer-2)扩展解决方案的兴起,每个网络都有其自己的可扩展性、安全性和信任度的方法。
然而,区块链是孤立的网络,它们独立运行且不能本地通信。要创建一个真正可互操作的Web3生态系统,数据和价值必须在链之间无缝移动。这就是跨链桥(bridges)的作用所在。
传统的跨链桥(bridges)是当今Web3生态系统中最大的问题之一,因为它们是中心化的。当您使用跨链桥将资金从一条链转移到另一条链时,您实际上是在将您的资金交给某个中心化的实体,并信任他们这些资金将出现在另一侧。令人惊讶的是,到目前为止已经发生了多起跨链桥被黑客攻击的事件。
Chainlink 跨链互操作性协议(CCIP)提供了一个简洁的单一接口,通过这个接口,去中心化应用(dApps)和 Web3 创业者可以安全地满足他们所有的跨链需求,包括代币转账和任意消息传递。
Chainlink CCIP 通过“通道”(lanes)连接区块链网络。“通道”是源区块链到目标区块链路径的唯一组合,例如,从区块链 A 到区块链 C,要使用一个通过。而如果要使用 Chainlink CCIP 反向传输消息,即从区块链 C 到区块链 A,您将需要使用不同的通道,即专属于 C 到 A 路径的通道。
Chainlink CCIP 将始终支持未来添加的每个新链的双向通道。逻辑上的问题是如何让 CCIP 知道通过哪个通道传输 CCIP 跨链消息。实际上这相当简单——每个由 CCIP 支持的区块链都有一个唯一的链选择器。
我们多次提到,通过使用 Chainlink CCIP,您可以 发送跨链消息。但是跨链消息可以包含哪些内容呢?使用 Chainlink CCIP,您可以:
转账(支持的)代币
发送任何种类的数据
同时发送代币和数据
CCIP 的发送者可以是:
外部拥有的账户(EOA)
任何智能合约
CCIP 的接收者可以是:
外部拥有的账户(EOA)
任何实现了 CCIPReceiver.sol
的智能合约
注意:如果您向外部拥有的账户(EOA)发送消息和代币,只有代币会到达。
目前,您可以将 CCIP 视为一个“黑盒”组件,并且只需了解路由器合约。我们将在接下来的章节中解释 Chainlink CCIP 的架构。
路由合约(Router) 是 CCIP 用户交互的主要合约。该合约负责启动跨链交互。每个链都有一个路由合约。在转账代币时,调用者必须批准路由合约能够“花费”(转移)调用者的代币。当消息在目标链上接收时,路由器是将代币“交付”到用户账户或将消息传递给接收者(receiver)合约。
Chainlink 跨链互操作性协议提供了一个单一的接口,以安全和去中心化的方式在多个链之间传输代币和数据。
术语 | 意义 |
---|---|
Interoperability (互操作性)
在不同系统或网络之间交换信息的能力,即使它们不兼容
Chainlink CCIP
允许你跨不同区块链发送代币和任意消息的协议
Lane (通道)
源区块链到目标区块链路径的独特组合
Chain Selector (链选择器)
Chainlink CCIP 中区块链的唯一标识符
CCIP Message (CCIP 消息)
您可以通过 CCIP 通道跨区块链发送的消息,该消息可以由代币和任意数据组成
Sender (发送者合约)
发送 CCIP 消息的智能合约(用户的)或外部拥有的账户(EOA)。
Source blockchain (源链)
CCIP 消息发送来源的区块链
Receiver (接收者合约)
接收CCIP消息的智能合约或外部拥有的账户(EOA)。
Destination blockchain (目标链)
CCIP 消息被发送至的区块链。
Chainlink跨链互操作性协议(CCIP)不仅仅是一个简单的代币桥接解决方案。它是一个通用的跨链消息协议,用于在单个跨链交易中传输代币(价值)、消息(数据)或同时传输代币和消息——这被称为可编程代币传输。
实际上,CCIP可编程代币传输使智能合约能够在跨链传输代币的同时,附上关于接收智能合约在目标链上接收到这些代币后应如何处理这些代币的指令。这种将价值和指令结合在一起的革命性概念,就是消息跨链的一种,允许代币化资产在到达目的地后自动和动态地进行交互,基于此可以有很多的创新型应用。
在去中心化金融(DeFi)中,CCIP可编程代币传输使创建跨链原生 dApp 成为可能,例如,一个智能合约可以自动跨链传输代币,并将它们存入收益率最高的借贷市场。在传统金融(TradFi)中,CCIP 可编程代币传输使高级用例成为可能,例如跨链交割对支付(DvP)交易,其中持有稳定币的机构在其私有区块链上可以购买在不同私有或公共链上发行的代币化资产。
重要的是,CCIP 可编程代币传输使机构能够在不需要与该区块链集成或直接与之交互的情况下,与其他区块链网络上的智能合约和代币化资产进行交互。他们所需做的只是向 CCIP 发送指令,说明如何与该链交互,大大减少了他们的开销和与每个区块链网络点对点集成相关的风险。
就像TCP/IP是支撑互联网的通用标准一样,Chainlink CCIP是支撑 合约互联网(Internet of Contracts) 的通用标准。为了支持DeFi和TradFi中存在的各种跨链用例,CCIP允许以多种方式跨区块链传输数据和/或价值。
CCIP对 任意消息传递 的支持使开发人员能够跨区块链网络传输任何任意数据(编码为字节)。开发人员利用CCIP的任意消息传递使他们的智能合约应用成为跨链原生。
有了CCIP,源链上的智能合约可以调用目标链上任何智能合约的任何任意函数来触发任何任意行为(如果需要,还可以在源链上接收回调)。开发人员可以在单个消息中编码多个指令,使他们能够协调复杂的多步骤、多链任务。
CCIP代币传输通过高度审计和安全审查的代币池合约启用了链间代币传输。交易可以由外部拥有的账户(EOA)直接发起,例如通过像 Transporter 这样的桥接应用程序从用户钱包,或者由智能合约直接发起。然后,代币可以发送到EOA或智能合约。
为确保最高级别的安全性和卓越的用户体验,代币发行者可以在其代币的智能合约内直接使用CCIP,使其成为跨链原生代币。因此,任何用户或开发人员都可以使用CCIP跨链传输该发行者的代币的官方(规范)版本。各种第一层区块链和第二层扩展解决方案,如Wemix和Metis,通过将 CCIP作为他们的官方跨链基础设施 来集成,构建了这一概念,以推动他们的规范代币桥接。通过CCIP传输到这些区块链网络上的每个代币都是该链上该代币的规范表示。
开发人员可以通过以下三种主要方式集成CCIP进行代币传输:
销毁和铸造 (Burn and mint) — 在源链上销毁代币,并在目标链上铸造等量代币。这使得跨链原生代币具有统一的供应量。CCIP 通过销毁和铸造代币传输方法支持Circle的USDC 。
锁定和铸造 (Lock and mint) — 代币在它们原本发行的链上被锁定,而在目标链上铸造完全抵押的“包装”(Wrapped)代币。这些包装代币可以通过销毁和铸造在其他非原生目标链上转移,或者被销毁以在原始发行源链上解锁代币。Truflation 的 TRUF 代币利用锁定和铸造进行其在 CCIP 上的代币传输。
锁定和解锁 (Lock and unlock) — 代币在源区块链上被锁定,相应数量的代币在目标区块链上被释放。这使得支持没有销毁/铸造功能的代币或如果被包装会带来挑战的代币,例如原生区块链燃气代币。CCIP通过锁定和解锁代币传输方法支持 原生ETH传输 。
可编程代币传输将代币传输与任意消息传递结合起来。这使开发人员能够在单个交易中跨链传输代币(价值)和有关如何处理这些代币的指令(数据)。重要的是,可编程代币传输是原生构建到CCIP中的,为用户提供了最佳的安全性、可靠性、用户体验(例如,可组合性)和风险管理。
CCIP可编程代币转账对于实现跨链 货银兑付(DvP)交易 至关重要。在传统金融中,DvP指的是资产交付(例如,证券)和这些资产的支付必须同时发生(即,原子结算)。DvP 是一个重要的特性,可以避免交易双方,一方履行交易义务,但是另一方却没有履行的情况。
澳大利亚和新西兰银行集团有限公司(ANZ)展示了 CCIP 可编程代币转账如何实现跨境、跨链、跨货币的DvP 交易。在一次单一的跨链交易中,一种由本地货币支持的稳定币(NZ$DC)被转换为另一种不同国家货币的稳定币(A$DC),从买方的源链转移到卖方的目标链,并附带购买代币化资产(例如,珊瑚信用)的指令,随后这些资产被发送回客户在源链上的钱包。
想要了解更多信息,请查看与ANZ合作编写的案例研究 使用CCIP进行代币化资产的跨链结算,以及Chainlink联合创始人Sergey Nazarov和ANZ银行服务负责人Nigel Dobson在 Sibos小组讨论 中的对话。