v0.1.7
Canton-Ethereum Token Bridge - Release Notes v1.0
Overview
A centralized token bridge connecting CIP-56 tokens on Canton Network with ERC-20 tokens on Ethereum Mainnet, enabling bidirectional cross-chain transfers.
Core Features
Relayer Service
- Go-based relayer node running as a sidecar to Canton Network Partner Node
- Bidirectional event streaming from both Canton and Ethereum
- Persistent offset tracking with PostgreSQL for crash recovery
- Automatic reconciliation of pending transfers (every 5 minutes)
- Readiness probes for Kubernetes deployment
Deposit Flow (EVM → Canton)
- Monitors
Depositevents on Ethereum bridge contract - Creates
PendingDepositon Canton via Ledger API - Resolves user fingerprint mapping and processes deposit
- Unlocks/mints tokens to Canton user's holding
Withdrawal Flow (Canton → EVM)
- Streams
WithdrawalEventcontracts from Canton - Submits
withdrawFromCantontransaction on Ethereum - Marks withdrawal complete on Canton for reconciliation
- Idempotency protection via Canton tx hash tracking
Smart Contracts
- Ethereum: Solidity bridge contract for ERC-20 lock/unlock and wrapped token mint/burn
- Canton: DAML contracts for CIP-56 token management and bridge operations
Operational Scripts
bootstrap-bridge.go- Initialize Canton bridge contractsregister-user.go- Register user fingerprint mappingsquery-holdings.go- Query Canton token holdingsinitiate-withdrawal.go- Initiate Canton→EVM withdrawalscleanup-withdrawals.go- Reconcile incomplete withdrawals
Configuration
- YAML-based configuration with environment variable overrides
- Support for local, devnet, and mainnet environments
- Docker Compose deployments included
Observability
- Prometheus metrics for pending transfers
- Structured logging with zap
- Health/readiness endpoints