FABRKNT
Cross-Chain Bridges — CCIP から light client まで
実 Bridge を読む
レッスン 4 / 7·CONTENT18 分45 XP
コース
Cross-Chain Bridges — CCIP から light client まで
レッスンの役割
CONTENT
順序
4 / 7

レッスン3 — Chainlink CCIP(Tempo が使うクロスチェーンレール)

問い

Tempo で merchant が USDC で決済を受け取る。裏側で treasury 用に Ethereum、DeFi yield 用に Solana に決済必要 — 3 chain にまたがり 2 つは直接通信不可。Tempo が今日まさに本番で動かしているクロスチェーン決済のレールが Chainlink CCIP — light client でも Wormhole fork でもない、任意 chain ペア向け本番 bridge。

原理(最小モデル)

  • 2 ネットワーク + RMN. Committing DON(source イベント → Merkle commitment)+ Executing DON(destination で実行)+ Risk Management Network(悪意 / 制裁メッセージ veto、別 validator)。
  • CCIP は技術的には multisig. 専用設計(大 validator + RMN + トークンプール + chain ごとリスクパラメータ)= 「洗練された multisig」。
  • Trust 仮定: DON 共謀 + RMN. DON 共謀でメッセージ偽造可、RMN がバックアップ(特定レーン停止)。暗号 trustless ではなく信頼ベース
  • メッセージ 3 形態. Data-only(任意 calldata) / Token(asset 転送) / Programmable(両方、Soltempo の主用途)。
  • トークンプールモデルで wrapping カオス回避. Burn-mint(USDC.e ではなく canonical USDC)/ Lock-release(プール保持)。
  • レーンモデル. 向きのある chain ペア、Ethereum→Tempo と Tempo→Ethereum は別。30+ chain × ~900 レーン構成可能。
  • 手数料. Native gas または LINK(~20% 割引)、$0.50-$2/msg = 決済 $100+ で許容。
  • CCIP vs 代替. Wormhole(19/N multisig、最安 multisig リスク)/ LayerZero(DVN モデル、柔軟)/ OP Standard(L2 専用 7 日)。Tempo は trust + 規制で CCIP 勝ち。

具体例

CCIP アーキテクチャ:

flowchart LR
    Source["Source chain<br/>(Ethereum)"] -->|user tx| Router["CCIP Router"]
    Router -->|emit| OnRamp["OnRamp contract"]
    OnRamp -->|message| DON["Decentralized Oracle Network<br/>(commit + execute)"]
    DON -->|verify + relay| OffRamp["OffRamp contract"]
    OffRamp -->|deliver| Dest["Destination chain<br/>(Tempo)"]
    RMN["Risk Management<br/>Network"] -.->|cursing| DON

3 ネットワーク:

ネットワーク役割Trust モデル
Committing DONSource イベントを Merkle commitment に集約M-of-N の PoS validator
Executing DONDestination でメッセージ実行同じ / 別の N-of-M
Risk Management Network悪意 / 制裁メッセージ veto別 validator、off-chain monitoring

メッセージフォーマット:

struct Any2EVMMessage {
    bytes32 messageId;       // 一意 ID
    uint64 sourceChainSelector;
    bytes sender;            // Source 上の ABI エンコード sender
    bytes data;              // 任意の calldata
    EVMTokenAmount[] destTokenAmounts;  // Destination で release するトークン
}

メッセージ 3 形態:

ユースケース何を送るか
Data-onlydata(任意 calldata)汎用クロスチェーン呼び出し
TokendestTokenAmountsAsset 転送
Programmable両方クロスチェーン swap、settle-and-call、Soltempo

CCIP vs 代替(merchant 規模支払い):

BridgeTrust モデル手数料レイテンシTempo にとって
CCIPPoS DON + RMN$0.50-$2~10 分本番準備済、Solana サポート
LayerZeroDVN モデル$0.30-$1~5 分Solana サポート、柔軟
Wormhole19-of-N guardian multisig$0.20-$1~2 分最安だが multisig リスク
OP StandardRollup コンセンサス~$0.10 + L1 gas7 日L2 専用、Tempo 用途に不適

Solidity Receiver(Tempo 上の Soltempo Vault):

contract SoltempoVault is CCIPReceiver {
    function _ccipReceive(Any2EVMMessage memory message) internal override {
        // Sender をデコード (認可された soltempo source contract であるべき)
        address sourceContract = abi.decode(message.sender, (address));
        require(sourceContract == authorizedSource, "unauthorized");

        // 支払いメタデータデコード
        PaymentReceipt memory receipt = abi.decode(message.data, (PaymentReceipt));

        // 受信した USDC で merchant 状態を更新
        _processSettlement(message.destTokenAmounts, receipt);
    }
}

Rust Receiver(Tempo→Solana、Anchor):

#[program]
mod soltempo_vault {
    use ccip_solana::CcipReceiver;

    pub fn ccip_receive(ctx: Context<CcipReceive>, message: Any2SVMMessage) -> Result<()> {
        // Sender 検証
        require!(message.sender == authorized_source, ErrorCode::Unauthorized);

        // 決済処理
        process_settlement(ctx, message)
    }
}

mppsol アーキテクチャ:

Merchant 支払い ──[CCIP]── Solana DeFi ──[CCIP]── Tempo merchant 残高
       ↑                       ↓                          ↑
  Ethereum USDC            Yield earn                オンデマンド引出し

失敗例(誤解)

「CCIP は trustless」— 間違い。技術的には multisig(committing + executing DON)+ RMN(バックアップ)。洗練された保護機構を備えた multisig であって暗号 trustless ではない。DON 共謀でメッセージ偽造可、RMN がそれを止めるが信頼ベース。

「Wormhole の方が安いから choose Wormhole」— 半分間違い。確かに $0.20-$1 で最安、$0.50-$2 の CCIP より安い。しかし multisig リスク(過去 $325M ハック)+ 規制統合の弱さ。Tempo は trust + 規制 + 本番成熟度で CCIP。

「トークンプール = wrapping」— 間違い。Wrapping は USDC.e のような偽 USDC を作る、トークンプールは canonical USDC のまま burn-mint(source で burn、destination で同 total supply から mint)。「USDC.e」は存在せず、別 chain 上の同じ USDC

🛑 予測。 CCIP は「Risk Management Network」がメッセージを ブロックする 権限を備えている。なぜ? 純粋暗号で防げない何の攻撃を防ぐ?(答え: ① DON 共謀メッセージ偽造(committing + executing DON が共謀すれば不正メッセージ通せる)、② 特定アドレスの悪意活動(北朝鮮制裁アドレスからの bridge を停止)、③ 緊急時の規制対応(裁判所命令でレーン停止)、④ 新興バグ発覚時の影響限定(DON ソフトウェアバグ判明時にレーンを pause)。暗号は数学的に正しい結果を保証するが、人間社会の例外を扱えない → RMN が「数学が正しくても社会的に正しくない」ケースの安全弁。第二防衛層。)

ステップで組み立てる

Step 1: 3 ネットワークを即答

Committing DON / Executing DON / RMN。

Step 2: メッセージ 3 形態

Data-only / Token / Programmable。Soltempo は Programmable(USDC + 決済メタデータ)。

Step 3: トークンプールの burn-mint vs lock-release

USDC = burn-mint(canonical 維持)/ wrapped token = lock-release(pool 保持)。wrapping カオス回避

Step 4: CCIP vs 代替を判断

Trust + 規制成熟度 = CCIP。最安 = Wormhole(multisig リスク)。柔軟性 = LayerZero。L2 専用 = OP Standard。

Step 5: Solidity / Rust Receiver パターン

CCIPReceiver 継承 + _ccipReceive override + sender 検証 + メッセージ処理。EVM = Solidity / Solana = Anchor Rust。同じパターン、言語差

Step 6: 手数料モデル

Native gas または LINK(20% 割引)、$0.50-$2/msg。$100+ の決済で許容(0.5% 以下)。

Step 7: スケール検証

レーンあたり 10-100 msg/sec、1000 同時決済はキュー積み。即時性必須なら問題、非即時なら許容。

答え合わせ

  • CCIP の真の trust 仮定: DON 共謀でメッセージ偽造可 + RMN がバックアップ(特定レーン停止可能)+ 規制対応で外部介入可能。「multisig + 第二防衛層」。暗号 trustless ではないが、本番運用 + 規制統合 + RMN 安全弁で機関投資家向きの trust モデル。
  • Soltempo が CCIP 専用の理由: ① Solana サポートが成熟(CCIP は 2026 で対応)、② RMN による on-chain リスク管理(規制対応で重要)、③ 機関統合実績 + 保険、④ Chainlink の最も確立されたクロスチェーンインフラ。規制された決済レール = 速度より trust + 制度
  • $1M 決済 $0.50 手数料の妥当性: 0.005% = 極低い。クレジットカード 2-3% / 国際送金 5-10% と比較で圧倒的。スループット限界(レーン 10-100 msg/s)= 1000 同時決済キューイングで非即時用途には許容、merchant リアルタイム UX 要求では問題。

合格基準

  • 3 ネットワーク(Committing / Executing DON + RMN)を即答できる。
  • メッセージ 3 形態と Soltempo の使い分けを言える。
  • トークンプール(burn-mint vs lock-release)を説明できる。
  • CCIP vs Wormhole / LayerZero / OP Standard を 4 軸で比較できる。
  • Solidity / Rust Receiver パターンを書ける。

まとめ(3行)

  • CCIP = 「洗練された multisig」(Committing + Executing DON + RMN)、技術的 trustless ではないが本番運用 + 規制統合 + RMN 安全弁で機関投資家向き trust モデル。
  • トークンプール burn-mint で wrapping カオス回避(USDC.e 不要)、メッセージ 3 形態(Data / Token / Programmable)、$0.50-$2/msg で決済 $100+ に許容。
  • Tempo(Soltempo + mppsol)が本番採用 = trust + 規制 + Solana サポート成熟度の組み合わせで Wormhole / LayerZero を上回る、Solidity CCIPReceiver + Rust Anchor で両 VM 対応。