|
| 1 | +# Chainlink CCIP |
| 2 | + |
| 3 | +### Chainlink CCIP on Hedera |
| 4 | + |
| 5 | +The **Chainlink Cross-Chain Interoperability Protocol (CCIP)** is the standard for blockchain interoperability.\ |
| 6 | +CCIP enables developers to build **secure cross-chain applications** that can transfer tokens, send messages, and initiate actions across blockchains. |
| 7 | + |
| 8 | +Through the **Cross-Chain Token (CCT)** standard, CCIP allows token developers to integrate new and existing tokens with CCIP in a **self-serve** manner within minutes—without requiring vendor lock-in, hard-coded functions, or external dependencies that limit future flexibility. |
| 9 | + |
| 10 | +CCTs support: |
| 11 | + |
| 12 | +* **Self-serve deployments** with full control and ownership |
| 13 | +* **Zero-slippage transfers** across supported chains |
| 14 | +* **Enhanced programmability** via configurable rate limits |
| 15 | +* **Smart Execution**, ensuring reliable cross-chain transaction delivery |
| 16 | + |
| 17 | +CCIP is powered by **Chainlink Decentralized Oracle Networks (DONs)**—a proven infrastructure that has secured **tens of billions of dollars** and enabled **over $21 trillion** in on-chain transaction value. |
| 18 | + |
| 19 | +*** |
| 20 | + |
| 21 | +#### Overview of CCIP and HTS Compatibility |
| 22 | + |
| 23 | +On Hedera, CCIP extends interoperability between **Hedera’s Hashgraph network** and **EVM-compatible blockchains** such as Ethereum.\ |
| 24 | +It integrates seamlessly with both the **Hedera Token Service (HTS)** and standard **EVM tokens (ERC-20 and ERC-721)**, allowing developers to bridge data, tokens, and logic across ecosystems. |
| 25 | + |
| 26 | +Through CCIP, developers can: |
| 27 | + |
| 28 | +* Send and receive arbitrary messages across chains |
| 29 | +* Execute programmable cross-chain logic using Chainlink’s oracle network |
| 30 | +* Experiment with **LINK**, **Wrapped HBAR (WHBAR)**, or **ETH** as fee tokens |
| 31 | +* Prepare for future **Cross-Chain Token (CCT)** transfers once fully enabled on Hedera |
| 32 | + |
| 33 | +> ⚠️ **Note:** Cross-Chain Token (CCT) transfers on Hedera are still in progress on testnet.\ |
| 34 | +> The current demos focus on message passing between Hedera Testnet and Ethereum Sepolia. |
| 35 | +
|
| 36 | +*** |
| 37 | + |
| 38 | +#### Why CCIP Matters |
| 39 | + |
| 40 | +CCIP provides a **unified framework** for cross-chain connectivity—replacing the need for custom bridges with a decentralized standard backed by Chainlink’s proven security model. |
| 41 | + |
| 42 | +By integrating CCIP, Hedera developers can create applications that benefit from: |
| 43 | + |
| 44 | +* **Secure message delivery** via decentralized oracle networks |
| 45 | +* **Universal token compatibility** through the CCT standard |
| 46 | +* **Reduced integration overhead** through SDK tooling and no-code deployment options |
| 47 | +* **Future-proof design** with no vendor lock-in |
| 48 | + |
| 49 | +This aligns with Hedera’s mission to enable high-throughput, low-fee interoperability across distributed ledger technologies. |
| 50 | + |
| 51 | +*** |
| 52 | + |
| 53 | +#### Key CCIP Developer Tools |
| 54 | + |
| 55 | +* [**CCIP Official Documentation**](https://docs.chain.link/ccip) — Start integrating CCIP into your cross-chain application. |
| 56 | +* [**CCIP Token Manager**](https://tokenmanager.chain.link/) — A web interface for deploying and managing Cross-Chain Tokens (CCTs) with no-code guided configuration. |
| 57 | +* [**CCIP SDK (JavaScript)**](https://docs.chain.link/ccip/ccip-javascript-sdk) — A development kit for building JavaScript dApps that perform token transfers or cross-chain messaging. |
| 58 | + |
| 59 | +*** |
| 60 | + |
| 61 | +#### Getting Started with CCIP on Hedera |
| 62 | + |
| 63 | +You can explore CCIP on Hedera using the [**Hedera CCIP Demo Repository**](https://github.com/mgarbs/hedera-ccip-demos), which demonstrates **bi-directional cross-chain messaging** between the **Hedera Testnet** and **Ethereum Sepolia**. |
| 64 | + |
| 65 | +These examples use the **Chainlink CCIP JavaScript SDK** and show how to configure networks, manage fee tokens, and send cross-chain messages. |
| 66 | + |
| 67 | +**Setup** |
| 68 | + |
| 69 | +1. **Install dependencies** |
| 70 | + |
| 71 | + ```bash |
| 72 | + pnpm install |
| 73 | + ``` |
| 74 | +2. **Configure your environment** |
| 75 | + |
| 76 | + ```bash |
| 77 | + cp .env.example .env |
| 78 | + ``` |
| 79 | + |
| 80 | + Add your Hedera Testnet private key: |
| 81 | + |
| 82 | + ``` |
| 83 | + PRIVATE_KEY=0x... |
| 84 | + ``` |
| 85 | +3. **Run a demo** |
| 86 | + |
| 87 | + ```bash |
| 88 | + pnpm run demo:hedera-sepolia-link |
| 89 | + ``` |
| 90 | + |
| 91 | +*** |
| 92 | + |
| 93 | +#### Available Demos |
| 94 | + |
| 95 | +<table><thead><tr><th width="182.1630859375">Direction</th><th width="152.56640625">Payment</th><th>Command</th><th>Description</th></tr></thead><tbody><tr><td>Read-only</td><td>—</td><td><code>pnpm run demo:readonly</code></td><td>Query CCIP configuration without executing transactions.</td></tr><tr><td>Hedera → Sepolia</td><td>LINK</td><td><code>pnpm run demo:hedera-sepolia-link</code></td><td>Send a message using LINK as the fee token.</td></tr><tr><td>Hedera → Sepolia</td><td>WHBAR</td><td><code>pnpm run demo:hedera-sepolia-whbar</code></td><td>Send a message using Wrapped HBAR for fees.</td></tr><tr><td>Sepolia → Hedera</td><td>ETH</td><td><code>pnpm run demo:sepolia-hedera</code></td><td>Send a message from Sepolia to Hedera using ETH for fees.</td></tr></tbody></table> |
| 96 | + |
| 97 | +> 💡 **Tip:** Wrap HBAR before running WHBAR examples: |
| 98 | +> |
| 99 | +> ```bash |
| 100 | +> pnpm run wrap-hbar |
| 101 | +> ``` |
| 102 | + |
| 103 | +All demos operate on **testnet** and are designed for **educational purposes only**. They are **not audited** and should not be used in production. |
| 104 | + |
| 105 | +*** |
| 106 | + |
| 107 | +#### Network Configuration |
| 108 | + |
| 109 | +**Hedera Testnet** |
| 110 | + |
| 111 | +<a href="https://chainlist.org/chain/296" class="button primary" data-icon="plus-large">ADD HEDERA TESTNET</a> |
| 112 | + |
| 113 | +<table><thead><tr><th width="220">Name</th><th width="360">Value</th></tr></thead><tbody><tr><td><strong>Network Name</strong></td><td>Hedera Testnet</td></tr><tr><td><strong>RPC Endpoint</strong></td><td><code>https://testnet.hashio.io/api</code></td></tr><tr><td><strong>Chain ID</strong></td><td><code>296</code></td></tr><tr><td><strong>CCIP Router</strong></td><td><code>0x802C5F84eAD128Ff36fD6a3f8a418e339f467Ce4</code></td></tr><tr><td><strong>Chain Selector</strong></td><td><code>222782988166878823</code></td></tr></tbody></table> |
| 114 | + |
| 115 | +*** |
| 116 | + |
| 117 | +**Ethereum Sepolia** |
| 118 | + |
| 119 | +<a href="https://chainlist.org/chain/11155111" class="button primary" data-icon="plus-large">ADD ETHEREUM SEPOLIA</a> |
| 120 | + |
| 121 | +<table><thead><tr><th width="156.6650390625">Name</th><th width="360">Value</th></tr></thead><tbody><tr><td><strong>Network Name</strong></td><td>Ethereum Sepolia</td></tr><tr><td><strong>Chain ID</strong></td><td><code>11155111</code></td></tr><tr><td><strong>CCIP Router</strong></td><td><code>0x0BF3dE8c5D3e8A2B34D2BEeB17ABfCeBaf363A59</code></td></tr><tr><td><strong>Chain Selector</strong></td><td><code>16015286601757825753</code></td></tr></tbody></table> |
| 122 | + |
| 123 | +*** |
| 124 | + |
| 125 | +#### Token Addresses |
| 126 | + |
| 127 | +<table><thead><tr><th width="160.10546875">Network</th><th width="113.70703125">Token</th><th>Address</th></tr></thead><tbody><tr><td><strong>Hedera Testnet</strong></td><td>LINK</td><td><code>0x90a386d59b9A6a4795a011e8f032Fc21ED6FEFb6</code></td></tr><tr><td></td><td>WHBAR</td><td><code>0xb1F616b8134F602c3Bb465fB5b5e6565cCAd37Ed</code></td></tr><tr><td><strong>Ethereum Sepolia</strong></td><td>LINK</td><td><code>0x779877A7B0D9E8603169DdbD7836e478b4624789</code></td></tr></tbody></table> |
| 128 | + |
| 129 | +> ⚠️ **Note:** WHBAR uses **8 decimals**, while most EVM tokens use **18 decimals**. |
| 130 | + |
| 131 | +*** |
| 132 | + |
| 133 | +#### Developer Considerations |
| 134 | + |
| 135 | +**Decimal Precision** |
| 136 | + |
| 137 | +HBAR’s smallest unit is the **tinybar (8 decimals)**. Because CCIP on EVM networks operates with 18-decimal precision, conversions between tinybars and wei-based values may be required. See EVM Differences and Compatibility. |
| 138 | + |
| 139 | +**Cross-Chain Fees** |
| 140 | + |
| 141 | +Ensure your wallet holds sufficient **LINK**, **WHBAR**, or **ETH** to cover CCIP fees. |
| 142 | + |
| 143 | +**Message Timing** |
| 144 | + |
| 145 | +Cross-chain message delivery on testnet may take several minutes while the Chainlink oracle network confirms execution. |
| 146 | + |
| 147 | +*** |
| 148 | + |
| 149 | +#### Test Tokens and Faucets |
| 150 | + |
| 151 | +| Network | Token | Faucet | |
| 152 | +| ------- | ----- | -------------------------------------------------------------------- | |
| 153 | +| Hedera | HBAR | [Hedera Faucet](https://portal.hedera.com/faucet) | |
| 154 | +| Hedera | LINK | [Chainlink Hedera Faucet](https://faucets.chain.link/hedera-testnet) | |
| 155 | +| Sepolia | ETH | [Chainlink Sepolia Faucet](https://faucets.chain.link/sepolia) | |
| 156 | + |
| 157 | +*** |
| 158 | + |
| 159 | +#### Additional Resources |
| 160 | + |
| 161 | +* [CCIP Official Documentation](https://docs.chain.link/ccip) |
| 162 | +* [CCIP Token Manager](https://tokenmanager.chain.link/) |
| 163 | +* [CCIP SDK (JavaScript)](https://docs.chain.link/ccip/ccip-javascript-sdk) |
| 164 | +* [Hedera CCIP Demo Repository](https://github.com/mgarbs/hedera-ccip-demos) |
| 165 | +* [HashScan Explorer](https://hashscan.io/testnet) |
| 166 | +* [Chainlink Faucets](https://faucets.chain.link/) |
| 167 | + |
| 168 | +*** |
| 169 | + |
| 170 | +#### Summary |
| 171 | + |
| 172 | +Chainlink CCIP establishes a universal standard for **secure, decentralized cross-chain interoperability**. It brings Hedera into a broader multi-chain ecosystem—enabling applications that move assets, execute logic, and share state across blockchains through a common protocol. |
| 173 | + |
| 174 | +On Hedera, CCIP provides a **modular and future-ready foundation** for interoperability, supporting HTS and EVM token compatibility under the **Cross-Chain Token (CCT)** standard. This capability complements other interoperability solutions like LayerZero and Hashport, positioning Hedera as a key network within the interoperable web3 ecosystem. |
0 commit comments