ox Addresses
OmbraChain accounts are identified by an ox-prefixed address. The prefix is the letter “o” (from
Ombra) — not a zero. It's lowercase on purpose so it survives the .toLowerCase() normalization used
across the stack.
ox7a8b70389a52a96aa85ca641c5ad2fb7a1e2e1ca
└┬┘└──────────────── 40 hex chars (20 bytes) ───────────┘
prefix
Derivation
An address is the first 20 bytes of the SHA-256 of the Ed25519 public key:
address = "ox" + hex( sha256(publicKey)[0:20] )
Try it — this generates a real keypair in your browser and derives the address exactly like the chain does:
◆ ox address generator
Generate a real Ed25519 keypair in your browser. The address is ox + first 20 bytes of sha256(publicKey) — identical to how the chain derives it.
Notes
- Keys are Ed25519 (32-byte private, 32-byte public).
- Wallets are derived from a BIP-39 mnemonic at path
m/44'/7777'/0'/0/index(coin type7777). - Addresses are case-insensitive and always stored lowercase.
- The treasury address is
ox0000000000000000000000000000000000000001.
tip
The SDKs do this for you — see Quickstart › Create a wallet.