# 🌐 Multi-Chain Deployment Guide - Complete Package **Version**: 1.0 **Last Updated**: 2026-01-24 **Status**: βœ… Foundation Complete - Ready for Expansion --- ## πŸ“‹ **Table of Contents** 1. [Overview](#overview) 2. [Architecture](#architecture) 3. [Deployment Checklist](#deployment-checklist) 4. [Chain-Specific Guides](#chain-specific-guides) 5. [Hyperledger Integration](#hyperledger-integration) 6. [Admin Dashboard Configuration](#admin-dashboard-configuration) 7. [Testing & Verification](#testing--verification) 8. [Troubleshooting](#troubleshooting) --- ## 🎯 **Overview** This guide covers the complete deployment of the Universal Cross-Chain Asset Hub across: - **10 EVM Chains**: ChainID 138, Ethereum, Polygon, Arbitrum, Optimism, Base, Avalanche, BSC, XDC, Alltra - **8 Non-EVM Chains**: XRPL, Stellar, Algorand, Hedera, Tron, TON, Cosmos, Solana - **4 Hyperledger Frameworks**: Firefly, Cacti, Fabric, Indy --- ## πŸ—οΈ **Architecture** ``` β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ Universal Bridge Router β”‚ β”‚ (BridgeOrchestrator + ChainRegistry) β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ β”‚ β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ EVM Adaptersβ”‚ β”‚Non-EVM β”‚ β”‚ Hyperledger β”‚ β”‚ β”‚ β”‚Adapters β”‚ β”‚ Adapters β”‚ β”‚ - XDC β”‚ β”‚- XRPL β”‚ β”‚- Firefly β”‚ β”‚ - Alltra β”‚ β”‚- Stellar β”‚ β”‚- Cacti β”‚ β”‚ - Polygon β”‚ β”‚- Algorand β”‚ β”‚- Fabric β”‚ β”‚ - etc. β”‚ β”‚- etc. β”‚ β”‚- Indy β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ ``` --- ## βœ… **Deployment Checklist** ### **Phase 1: Core Infrastructure** βœ… - [x] ChainRegistry contract - [x] IChainAdapter interface - [x] XDC adapter - [x] Alltra adapter - [x] XRPL adapter - [x] Firefly adapter ### **Phase 2: Remaining EVM Chains** ⚠️ - [ ] Standard EVM adapter template - [ ] Polygon deployment script - [ ] Arbitrum deployment script - [ ] Optimism deployment script - [ ] Base deployment script - [ ] Avalanche deployment script - [ ] BSC deployment script - [ ] Ethereum Mainnet deployment script ### **Phase 3: Non-EVM Chains** ⚠️ - [ ] Stellar adapter + oracle service - [ ] Algorand adapter + oracle service - [ ] Hedera adapter + oracle service - [ ] Tron adapter + oracle service - [ ] TON adapter + oracle service - [ ] Cosmos adapter (IBC integration) - [ ] Solana adapter (Wormhole integration) ### **Phase 4: Hyperledger** ⚠️ - [x] Firefly adapter + service client - [ ] Cacti adapter + connector service - [ ] Fabric chaincode + adapter + listener - [ ] Indy verifier contract + agent service ### **Phase 5: Deployment Automation** ⚠️ - [x] Deployment orchestrator script - [ ] Per-chain deployment scripts - [ ] Configuration templates - [ ] Verification scripts ### **Phase 6: Admin Dashboard** ⚠️ - [ ] Chain management UI - [ ] Deployment status dashboard - [ ] Bridge monitoring - [ ] Configuration templates UI --- ## πŸ”— **Chain-Specific Guides** ### **XDC Network (Chain ID 50)** **Status**: βœ… Adapter Created **Deployment Steps**: 1. Deploy XDCAdapter: ```bash forge script script/deploy/adapters/DeployXDCAdapter.s.sol \ --rpc-url https://rpc.xinfin.network \ --broadcast \ --private-key $PRIVATE_KEY ``` 2. Register in ChainRegistry: ```solidity chainRegistry.registerEVMChain( 50, xdcAdapterAddress, "https://explorer.xdc.network", 12, // min confirmations 2, // avg block time "" // additional data ); ``` **Special Notes**: - XDC uses `xdc` prefix instead of `0x` - Adapter includes conversion functions - Very low fees (~0.001 XDC per tx) --- ### **ALL Mainnet** **Status**: βœ… Adapter Created (Chain ID: 651940) **Chain Information**: - **Chain ID**: 651940 (0x9f2a4) - **Network Name**: ALL Mainnet - **Native Currency**: ALL (18 decimals) - **RPC**: https://mainnet-rpc.alltra.global - **Explorer**: https://alltra.global - **ChainList**: https://chainlist.org/chain/651940 **Deployment Steps**: 1. βœ… Chain ID updated in `AlltraAdapter.sol` (651940) 2. ⚠️ Verify CCIP support via CCIP Directory 3. ⚠️ Verify LiFi support via LiFi API 4. Deploy adapter 5. Register in ChainRegistry **Configuration Needed**: - [x] Confirm ALL Mainnet Chain ID (651940) - [x] Get RPC endpoint (https://mainnet-rpc.alltra.global) - [x] Get block explorer URL (https://alltra.global) - [ ] Verify CCIP chain selector (if supported) - [ ] Verify USDC deployment on ALL Mainnet - [ ] Update routing logic based on CCIP/LiFi support status **Important**: Distinguish between: - **ALL Mainnet** (chain, chainId 651940) - The EVM blockchain - **ALLTRA** (orchestration layer) - The hybrid service layer --- ### **XRPL (XRP Ledger)** **Status**: βœ… Adapter Created **Deployment Steps**: 1. Deploy XRPLAdapter 2. Deploy Oracle Service (monitors XRPL transactions) 3. Register in ChainRegistry **Oracle Service Requirements**: - Monitor XRPL for bridge transactions - Call `confirmXRPLTransaction()` on adapter - Handle XRP drops conversion **XRPL Features**: - Destination tags (for exchanges) - Very low fees (~0.000012 XRP) - Fast finality (3-5 seconds) --- ### **Hyperledger Firefly** **Status**: βœ… Adapter + Service Client Created **Infrastructure**: βœ… VMIDs 6202, 6203 deployed **Deployment Steps**: 1. Initialize Firefly on VMID 6202: ```bash ssh root@192.168.11.175 ff init alltra-bridge --multiparty ``` 2. Connect to Besu (ChainID 138): ```bash ff accounts create --key /path/to/besu/key.json ``` 3. Deploy FireflyAdapter contract 4. Configure Firefly namespace in adapter 5. Start Firefly event listener service **Firefly Configuration**: ```yaml # firefly/config/firefly.core.yml namespaces: predefined: - name: alltra-bridge plugins: blockchain: - ethereum: ethconnect: url: http://192.168.11.172:8545 tokens: - erc20_erc721 ``` --- ## πŸ”§ **Hyperledger Integration** ### **Cacti (VMID 5201)** **Status**: ⚠️ Needs Adapter **Deployment Steps**: 1. Install Cacti API server on VMID 5201 2. Configure Besu connector plugin 3. Configure Fabric connector plugin (if needed) 4. Deploy CactiAdapter contract 5. Create Cacti client service **Cacti Configuration**: ```json { "plugins": [ { "packageName": "@hyperledger/cactus-plugin-ledger-connector-besu", "options": { "rpcApiHttpHost": "http://192.168.11.172:8545", "instanceId": "alltra-besu-connector" } } ] } ``` --- ### **Fabric** **Status**: ⚠️ Needs Network Deployment **Required Infrastructure**: - [ ] Deploy Fabric network (peers, orderers, CAs) - [ ] Create bridge-channel - [ ] Deploy bridge chaincode - [ ] Create Fabric event listener - [ ] Deploy FabricAdapter contract **Fabric Chaincode** (Go): ```go // fabric/chaincode/bridge/bridge.go // See implementation guide for full code ``` --- ### **Indy** **Status**: ⚠️ Needs Network Deployment **Required Infrastructure**: - [ ] Deploy Indy steward nodes - [ ] Create credential schemas - [ ] Deploy IndyVerifier contract - [ ] Create Indy verifier agent **Use Cases**: - KYC verification for bridge - Accredited investor status - Jurisdiction compliance --- ## πŸŽ›οΈ **Admin Dashboard Configuration** ### **Chain Management UI** **Location**: `frontend-dapp/src/components/admin/ChainManagement.tsx` **Features Needed**: - Add/remove chains - Enable/disable chains - View chain status - Configure adapters - Test connectivity ### **Deployment Dashboard** **Features Needed**: - View deployment status per chain - Trigger deployments - View contract addresses - Monitor deployment progress --- ## πŸ§ͺ **Testing & Verification** ### **Unit Tests** ```bash # Test adapters forge test --match-contract XDCAdapter forge test --match-contract XRPLAdapter forge test --match-contract FireflyAdapter ``` ### **Integration Tests** ```bash # Test cross-chain flows forge test --match-path test/integration/MultiChainBridge.t.sol ``` ### **Verification** ```bash # Verify contracts on each chain forge verify-contract
\ --chain-id \ --etherscan-api-key ``` --- ## πŸ› **Troubleshooting** ### **Common Issues** 1. **Adapter Not Found** - Check ChainRegistry registration - Verify adapter address - Check adapter is active 2. **Oracle Not Confirming** - Check oracle service is running - Verify oracle has ORACLE_ROLE - Check event logs 3. **Firefly Not Responding** - Check Firefly service status - Verify namespace configuration - Check WebSocket connection --- ## πŸ“š **Additional Resources** - [Chain Registry Documentation](./CHAIN_REGISTRY.md) - [Adapter Development Guide](./ADAPTER_DEVELOPMENT.md) - [Hyperledger Integration Guide](./HYPERLEDGER_INTEGRATION.md) - [Oracle Service Setup](./ORACLE_SERVICE_SETUP.md) --- ## βœ… **Summary** **Foundation Complete**: βœ… **Ready for Expansion**: βœ… **Next Priority**: Complete remaining adapters and deployment automation This deployment package provides everything needed to expand the Universal Bridge to **22+ chains** across EVM, non-EVM, and enterprise blockchain ecosystems.