Use the Network
Wallets & Accounts
Estimated read time: 7 minutes
Updated 2026-09-09: Asentum addresses are ase1 bech32, not 20-byte hex.
How accounts work
Asentum uses an account model like Ethereum. Every account (user or contract) has persistent state { balance, nonce, codeHash, storageRoot }. Transactions mutate account state and carry a monotonically increasing per-account nonce for replay protection.
Unlike Ethereum, however, accounts on Asentum are secured by ML-DSA-65 (Dilithium3) keypairs - NIST FIPS 204 post-quantum signatures, not ECDSA. You don't need an "account" in the traditional sense. There's no email, no password, no KYC. Your wallet is your account. If you have the private key, you control the address.
The signing experience is the same as any other modern wallet - the post-quantum cryptography is invisible to the end user. Your wallet handles key generation, signing, and verification transparently.
Address format
Asentum addresses are bech32-encoded with an ase1 human-readable prefix, derived from the public key:
address = bech32("ase", BLAKE3(pubkey)[0:20])Example:
ase1hwamhwamhwamhwamhwamhwamhwamhwamg6vkq4The bech32 encoding carries a built-in checksum and the distinct ase1 prefix, so Asentum addresses can never be confused with Ethereum 0x addresses. Because Asentum public keys are Dilithium3 (not ECDSA), the address spaces are fundamentally disjoint from Ethereum.
Generate a wallet
There are three ways to generate an Asentum wallet:
Option A: Browser extension. Install the Asentum Wallet extension. Click "Create New Wallet" and write down your recovery phrase.
Option B: CLI. Install the CLI via the one-line installer: curl -fsSL https://testnet.asentum.com/install | sh, then run asentum wallet create to generate a new keypair. (npm publishing is coming pre-mainnet - for now, use the installer.)
Option C: SDK. Use @asentum/sdk programmatically:
import { generateKeypair, addressFromPublicKey } from '@asentum/crypto';
const { publicKey, secretKey } = await generateKeypair();
const address = addressFromPublicKey(publicKey);Note on HD wallets: BIP32-style hierarchical-deterministic key derivation for Dilithium is an open standardization problem. The Asentum wallet uses a project-defined derivation path until the IETF community converges on a standard.
Connect to the network
Asentum exposes a JSON-RPC API compatible with the Ethereum tooling ecosystem. Configure your wallet or application to point to the Asentum RPC endpoint. The testnet RPC is live at https://testnet.asentum.com (chain ID 1418).
For CLI users:
asentum config set rpc https://testnet.asentum.comThe native Asentum Chrome extension auto-detects the network and signs your transactions. EVM tools (MetaMask, ethers.js, viem) can read Asentum over the compatibility RPC but cannot sign native transactions, since Asentum uses ase1 addresses and ML-DSA-65 signatures. See Connect a Wallet.
Get testnet ASE
The testnet faucet is live and available at testnet.asentum.com. Paste your wallet address; you'll receive free testnet ASE instantly - enough to deploy contracts, send transactions, and experiment without spending real tokens.
Testnet tokens have no real value. They exist only to let developers and validators exercise the network safely before mainnet launch.
Securing your keys
Never share your private key or recovery phrase. Anyone with your private key controls your wallet and all assets in it. Store your recovery phrase offline - write it on paper, keep it safe.
For validator operators, we recommend hardware security modules (HSMs) or dedicated signing devices for production deployments. The CLI supports external signers via the --signer flag.
Read next