> For the complete documentation index, see [llms.txt](https://cll-devrel.gitbook.io/ccip-bootcamp/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://cll-devrel.gitbook.io/ccip-bootcamp/mandarin-ccip-bootcamp/di-1-tian/hu-cao-zuo-xing-wen-ti-he-chainlink-ccip-jian-jie.md).

# 互操作性问题 和 Chainlink CCIP 简介

## Chainlink CCIP

Chainlink CCIP 概述

### 互操作性问题 <a href="#the-interoperability-problem" id="the-interoperability-problem"></a>

**互操作性** 是指在不同系统或网络之间交换信息的能力，即使它们是不兼容的。不同网络上的共享概念确保了各方理解并信任交换的信息。它还考虑了最终性的概念，通过验证信息的准确性和完整性来建立对交换信息的信任。

Web3生态系统已经变得多链化，随着第一层（layer-1）区块链和像应用链（appchains）、子网（subnets）等第二层（layer-2）扩展解决方案的兴起，每个网络都有其自己的可扩展性、安全性和信任度的方法。

然而，区块链是孤立的网络，它们独立运行且不能本地通信。要创建一个真正可互操作的Web3生态系统，数据和价值必须在链之间无缝移动。这就是跨链桥（bridges）的作用所在。

<figure><img src="https://350481083-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FET2sd7MFg08ZOdjqDg1u%2Fuploads%2F1Dw4HoopduFAMijffcoB%2FMandarin_Day%201_Intro_Lanes_1.png?alt=media&amp;token=cce0604e-46ea-41cd-85e8-28064bed16e7" alt=""><figcaption><p> Example of a traditional bridge</p></figcaption></figure>

传统的跨链桥（bridges）是当今Web3生态系统中最大的问题之一，因为它们是中心化的。当您使用跨链桥将资金从一条链转移到另一条链时，您实际上是在将您的资金交给某个中心化的实体，并信任他们这些资金将出现在另一侧。令人惊讶的是，到目前为止已经发生了多起跨链桥被黑客攻击的事件。

<figure><img src="https://350481083-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FET2sd7MFg08ZOdjqDg1u%2Fuploads%2FOWPL8KXpLDJLBCiGDxCg%2FMandarin_Day%201_Intro_Patrick%20Collins.png?alt=media&amp;token=aa66d7d5-7521-4110-a961-ae5f51ff76d0" alt=""><figcaption><p>Trust assumptions - Patrick bridging funds</p></figcaption></figure>

### 解决方案——Chainlink CCIP <a href="#the-solution-chainlink-ccip" id="the-solution-chainlink-ccip"></a>

*Chainlink 跨链互操作性协议*（*CCIP*）提供了一个简洁的单一接口，通过这个接口，去中心化应用（dApps）和 Web3 创业者可以安全地满足他们所有的跨链需求，包括代币转账和任意消息传递。&#x20;

Chainlink CCIP 通过“通道”（**lanes**）连接区块链网络。“通道”是源区块链到目标区块链路径的唯一组合，例如，从区块链 A 到区块链 C，要使用一个通过。而如果要使用 Chainlink CCIP 反向传输消息，即从区块链 C 到区块链 A，您将需要使用不同的通道，即专属于 C 到 A 路径的通道。

<figure><img src="https://350481083-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FET2sd7MFg08ZOdjqDg1u%2Fuploads%2Ft7F3sBqPqtJQ8Tn8wl4x%2FMandarin_Day%201_Intro_Lanes_2.png?alt=media&amp;token=a5757ac2-3e12-4022-9fca-3251ffba3178" alt=""><figcaption><p>Example of bi-directional CCIP lanes between two blockchains</p></figcaption></figure>

Chainlink CCIP 将始终支持未来添加的每个新链的双向通道。逻辑上的问题是如何让 CCIP 知道通过哪个通道传输 CCIP 跨链消息。实际上这相当简单——每个由 CCIP 支持的区块链都有一个唯一的链选择器。

<figure><img src="https://350481083-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FET2sd7MFg08ZOdjqDg1u%2Fuploads%2FVyBp5cJyeI6SFLWo1PV0%2FMandarin_Day%201_Intro_Lanes_3.png?alt=media&amp;token=d4b765a0-af42-4e66-9dfc-dabce59471b2" alt=""><figcaption><p>CCIP lanes</p></figcaption></figure>

我们多次提到，通过使用 Chainlink CCIP，您可以 **发送跨链消息**。但是跨链消息可以包含哪些内容呢？使用 Chainlink CCIP，您可以：

* 转账（支持的）代币
* 发送任何种类的数据
* 同时发送代币和数据

CCIP 的发送者可以是：

* 外部拥有的账户（EOA）
* 任何智能合约

CCIP 的接收者可以是：

* 外部拥有的账户（EOA）
* 任何实现了 `CCIPReceiver.sol` 的智能合约

<figure><img src="https://350481083-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FET2sd7MFg08ZOdjqDg1u%2Fuploads%2FG89K39kj5EHma9bbJcPf%2FMandarin_Day%201_Intro_Basic%20CCIP%20Architecture.png?alt=media&amp;token=ae465fd2-9589-4441-a3d8-4159fe44fd78" alt=""><figcaption><p>Basic CCIP Architecture</p></figcaption></figure>

**注意**：如果您向外部拥有的账户（EOA）发送消息和代币，只有代币会到达。

目前，您可以将 CCIP 视为一个“黑盒”组件，并且只需了解路由器合约。我们将在接下来的章节中解释 Chainlink CCIP 的架构。

**路由合约（Router）** 是 CCIP 用户交互的主要合约。该合约负责启动跨链交互。每个链都有一个路由合约。在转账代币时，调用者必须批准路由合约能够“花费”（转移）调用者的代币。当消息在目标链上接收时，路由器是将代币“交付”到用户账户或将消息传递给接收者（receiver）合约。

### Recap概括 <a href="#recap" id="recap"></a>

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 消息被发送至的区块链。                       |
