Docsuser guidesMulti-Chain Support

Multi-Chain Support

How to use Kairo Guard across Ethereum, Bitcoin, Solana, and other blockchains with unified policy protection.

6 min read

Multi-Chain Support

Kairo protects your assets across multiple blockchains. One policy, one wallet interface, consistent security everywhere. This guide explains how multi-chain support works and how to make the most of it.

Supported Blockchains

Kairo currently supports:

| Chain | Status | Features | |-------|--------|----------| | Ethereum | Full support | All policy features, ERC20 limits | | EVM Chains | Full support | Base, Arbitrum, Optimism, Polygon, etc. | | Bitcoin | Full support | PSBT signing, script type controls | | Solana | Full support | Transaction signing, program restrictions | | Sui | Policy layer | Where your policy lives (always active) |

How Multi-Chain Works

One Key, Many Addresses

Your Kairo dWallet derives addresses for each supported blockchain:

Your dWallet
    ├── Ethereum address: 0x742d35Cc...
    ├── Bitcoin address: bc1qxy2kgdyg...
    ├── Solana address: 7nYBDM...
    └── (Same key, different derivation paths)

This means:

  • One wallet to manage
  • One policy to configure
  • One recovery process
  • Consistent security everywhere

Policy Enforcement Per Chain

Your policy rules apply across all chains, but some rules are chain-specific:

Universal Rules:

  • Destination allowlist/denylist
  • General spending limits
  • Policy expiration

Chain-Specific Rules:

  • EVM: Contract function selectors, ERC20 amount limits
  • Bitcoin: Script type restrictions, fee rate limits
  • Solana: Program ID restrictions

Using Ethereum and EVM Chains

Connecting to dApps

  1. Visit any Ethereum dApp
  2. Click "Connect Wallet"
  3. Select Kairo Guard
  4. Choose which network (Ethereum, Base, etc.)
  5. Approve the connection

Kairo appears as a standard Ethereum wallet to dApps.

EVM-Specific Policy Options

Selector Controls You can allow or block specific contract functions:

  • Allow swap() on DEX routers
  • Block unlimited approve() calls
  • Restrict to transfer() only for specific tokens

ERC20 Amount Limits Set maximum amounts for specific tokens:

  • USDC: Max 10,000 per transaction
  • WETH: Max 5 per transaction
  • DAI: Max 50,000 per transaction

Chain Restrictions Limit which EVM networks are allowed:

  • Mainnet only
  • Mainnet + Layer 2s
  • Specific chains you actively use

Switching Networks

In the Kairo extension:

  1. Click the network indicator
  2. Select your target network
  3. Your address updates for that chain
  4. dApps automatically see the switch

Using Bitcoin

Bitcoin Addresses

Kairo supports multiple Bitcoin address formats:

| Type | Format | Example | |------|--------|---------| | P2WPKH | Native SegWit | bc1qxy2kgdyg... | | P2TR | Taproot | bc1pxy2kgdyg... | | P2PKH | Legacy | 1BvBMSEYstW... |

Your policy can restrict which address types are allowed.

Bitcoin-Specific Policy Options

Script Type Restrictions Limit which address types can be used:

  • Taproot only (most private)
  • SegWit only (efficient)
  • Any type (flexible)

Fee Rate Limits Prevent overpaying for transactions:

  • Set maximum sat/vB fee rate
  • Protects against accidental high fees
  • Example: Max 100 sat/vB

Signing Bitcoin Transactions

Bitcoin signing works via PSBT (Partially Signed Bitcoin Transactions):

  1. Create transaction in your Bitcoin app/wallet
  2. Transaction is formatted as PSBT
  3. Kairo validates against your policy
  4. If approved, Kairo signs the PSBT
  5. Broadcast the signed transaction

Using Solana

Solana Addresses

Your Solana address is derived from the same underlying key:

Solana: 7nYBDMpCkxoLVJtFsNbzM8kJFH...

Solana-Specific Policy Options

Program ID Restrictions Control which Solana programs you interact with:

  • Allowlist: Only these programs
  • Denylist: Block these programs
  • Common programs: System, Token, Associated Token Account

Destination Controls Same as other chains—allowlist or denylist addresses.

Connecting to Solana dApps

  1. Visit a Solana dApp (Phantom, Marinade, etc.)
  2. Click "Connect Wallet"
  3. If the dApp supports standard wallet adapters, select Kairo
  4. Or use WalletConnect where available

Cross-Chain Consistency

Address Sharing

When you add an address to your allowlist, Kairo intelligently handles cross-chain:

  • Same format addresses: Recognized across EVM chains
  • Named addresses: The label you give carries across chains
  • Chain-specific addresses: Only apply where relevant

Policy Versioning

When you update your policy:

  1. New version published to Sui
  2. Applies to ALL supported chains immediately
  3. You reaffirm once, covers everything
  4. Audit trail shows cross-chain policy history

Unified Custody Trail

All signing events across all chains are recorded in the same custody ledger on Sui:

Custody Chain for your dWallet:
  Event 1: ETH transfer on Ethereum mainnet
  Event 2: Token swap on Base
  Event 3: BTC transfer on Bitcoin mainnet
  Event 4: NFT purchase on Solana
  ...

This gives you a complete, verifiable history regardless of which chain you used.

Network Configuration

Adding Custom EVM Networks

For EVM chains not in the default list:

  1. Open Kairo → Settings → Networks
  2. Click "Add Custom Network"
  3. Enter:
    • Network name
    • Chain ID
    • RPC URL
    • Block explorer URL
  4. Save

Your policy automatically applies to the new network.

Network Priorities

Set your preferred networks:

  1. Drag networks to reorder
  2. Your primary network appears first in the extension
  3. dApps default to your primary network

Best Practices

Keep Allowlists Chain-Aware

When adding addresses to your allowlist:

  • Specify which chains they're valid for (when relevant)
  • Use clear names that indicate the chain
  • Examples: "Uniswap Router (Ethereum)", "My Bitcoin Cold Storage"

Test on Each Chain

Before relying on Kairo for a new chain:

  1. Make a small test transaction
  2. Verify the approval flow works
  3. Confirm the transaction completes
  4. Check the custody event was recorded

Consider Chain-Specific Policies

For advanced users, you might want different policies per chain:

  • Stricter rules for mainnet
  • More relaxed for testnets/development
  • Different spending limits based on chain activity

Troubleshooting

dApp Doesn't Recognize Kairo

Some dApps have limited wallet support:

  1. Check if WalletConnect is available
  2. Try importing Kairo into MetaMask as a custom wallet
  3. Contact the dApp developer to request Kairo support

Transaction Stuck on Wrong Chain

If a transaction appears on an unexpected chain:

  1. Verify the chain ID in your transaction
  2. Check the dApp's network selector
  3. Ensure Kairo is set to the intended network

Bitcoin Transaction Not Broadcasting

  1. Verify your policy allows the script type
  2. Check the fee rate is within your limits
  3. Ensure the destination is in your allowlist

Coming Soon

We're actively expanding multi-chain support:

  • More EVM chains: Additional L2s and alt-L1s
  • Cosmos ecosystem: Support for IBC chains
  • Cross-chain bridging: Policy-protected bridge transactions
  • Chain-specific policies: Different rules per network

Next Steps

© 2026 Kairo Guard. All rights reserved.