Celo ↔ Base の Hyperlane 相互運用サンプル

Library

概要

Celo Sepolia から Base Sepolia へ Hyperlane V3 を介してクロスチェーン・メッセージを送るための実装サンプルです。リポジトリは Solidity を中心に構成され、Celo 側の CeloSender コントラクトでメッセージを生成・送信し、Hyperlane の Mailbox がそのメッセージを仲介、Base 側の BaseReceiver が受信・処理します。テストネット向けに既にデプロイ済みのコントラクトアドレスが README に記載されており、実際の送受信の流れを手元で試せます。Hyperlane の仕組み(Mailbox によるメッセージ伝達と検証)を体験しながら、EVM 間の基本的な相互運用を学ぶのに適したプロジェクトです。

GitHub

リポジトリの統計情報

  • スター数: 2
  • フォーク数: 1
  • ウォッチャー数: 2
  • コミット数: 13
  • ファイル数: 15
  • メインの言語: Solidity

主な特徴

  • Hyperlane V3 の Mailbox を利用したシンプルなクロスチェーン・メッセージング実装
  • Celo Sepolia(送信)→ Base Sepolia(受信)の実デプロイ済みコントラクト
  • Solidity による送信・受信ロジックのサンプルとデプロイ情報を収録
  • ローカル環境で再現するためのセットアップファイルと構成(.env.example 等)

技術的なポイント

本リポジトリは Hyperlane の Mailbox 構成を前提に、EVM 間メッセージングの基本フローを明確に示します。CeloSender は送信側のエントリポイントで、Hyperlane に対してメッセージをエンキューし、送信先ドメイン(Base Sepolia)を指定して送信します。Hyperlane V3 の Mailbox はメッセージのストレージと検証を担い、適切な経路で受信チェーンにメッセージを配送します。BaseReceiver は受信側で、Mailbox から届いたメッセージの検証・処理を行うシンプルなコントラクトです。

実装面では、以下が注目点です:メッセージのフォーマット(送信元/送信先アドレス、ペイロード)、チェーン間の domain/chain ID の扱い、Hyperlane の Mailbox アドレスを利用した認証(Mailbox からのコールのみを受け付ける等)、およびテストネット上でのデプロイ済みアドレスを利用した実動作確認が可能な点です。また、Gas や最終性(finality)の違いに起因する運用上の注意点は、実際に Sepolia 間でテストすることで理解が深まります。Solidity コードは最小構成で書かれており、Hyperlane のライブラリ/インタフェースとの連携方法が参考になります。デプロイやローカル実行を想定した環境ファイル(.env.example)や GitHub Actions 等のワークフロー配置があるため、CI/CD を使ったデプロイの拡張も容易です。

プロジェクトの構成

主要なファイルとディレクトリ:

  • .env.example: file
  • .github: dir
  • .gitignore: file
  • .gitmodules: file
  • README.md: file

…他 10 ファイル

まとめ

Hyperlane を使った EVM 間メッセージングを手早く試せる実践的なサンプルです(学習・プロトタイピング向け)。

リポジトリ情報:

READMEの抜粋:

Celo -> Base Hyperlane Interoperability

Cross-chain messaging from Celo Sepolia to Base Sepolia using Hyperlane V3.

Deployed Contracts

Celo Sepolia (Chain ID: 11142220)

  • CeloSender: 0x1b2BD8a0D259DFf9fBB65Fd6B4483137724A6eae
  • Mailbox: 0xD0680F80F4f947968206806C2598Cbc5b6FE5b03

Base Sepolia (Chain ID: 84532)

  • BaseReceiver: 0xC12e43b15213e25d3E3C3B26711B3e187FcE3f25
  • Mailbox: 0x6966b0E55883d49BFB24539356a2f8A673E02039

Setup

# Install depend...