Wallets
C12 accounts use the Cosmos c12 bech32 prefix (app/config/bech32.go):
| HRP | Purpose |
|---|---|
c12 | Account addresses |
c12pub | Account pubkeys |
c12valoper | Validator operator |
c12valcons | Consensus keys |
Event identifiers use HRP c12evt for CLI helpers (x/attest/types/keys.go).
Cosmos wallets
Keplr
Add c12-testnet-1 with REST/RPC from Testnet status. Chain registry for explorers mirrors testnet/explorer/chain.json in the chain repo (update RPC URLs for hosted testnet).
c12d keys
c12d keys add mykey --keyring-backend os --home $HOME/.c12d
c12d keys list --home $HOME/.c12dTestnet scripts recover faucet and fixture keys with algorithm eth_secp256k1:
c12d keys add faucet --recover --keyring-backend test --algo eth_secp256k1 --home .testnet/...This matches Cosmos EVM key derivation used in local bring-up (testnet/scripts/up.sh).
EVM wallets (MetaMask)
| Field | Testnet value |
|---|---|
| Network name | Carbon12 Testnet (suggested) |
| RPC URL | https://evm.testnet.carbon12.network |
| Chain ID | 12121 (hex 0x2f59) |
| Currency symbol | C12 (display; gas paid in uc12 mapping) |
Devnet local EVM id is 1212 (app/config/constants.go) — do not confuse with testnet 12121.
Key types
- Default Cosmos secp256k1 keys work for most CLI flows.
eth_secp256k1is used for EVM-aligned keys in testnet/devnet automation and faucet recovery.
Faucet
Fund test addresses with uc12 (no monetary value):
https://faucet.testnet.carbon12.network
Local make testnet-up also writes mnemonics to .testnet/mnemonics.txt — never reuse fixture private keys from devnet/genesis/keys.json on internet-facing services (chain testnet/README.md, ingest SDK README).
Signing transactions
- Cosmos:
c12d tx …or CosmJS@cosmjs/stargateagainst REST +POST /cosmos/tx/v1beta1/txs - EVM: standard EIP-155 txs on chain id 12121; contract calls to
0x…0C12hit the read-only IC12 precompile (no deployment required)
See Connecting to the chain for endpoints and code samples.