How accounts, keys, and wallets work on the XE block lattice. Ed25519 key pairs, account addresses, block types, and getting started with the CLI.
On this page
XE uses a block-lattice architecture where every account maintains its own blockchain. Each block's Previous field points to the hash of the preceding block. The first block has Previous = "0".
Transfers require two blocks: a send (debits the sender's chain) and a receive (credits the recipient's chain, referencing the send hash). This cross-chain referencing creates a directed acyclic graph (DAG).
Every account is an ed25519 key pair. The account address is the hex-encoded 32-byte public key – 64 lowercase hex characters. No base32, bech32, or checksum encoding.
Use the xe CLI to generate a new wallet.
# Generate a new wallet (ed25519 key pair) xe wallet create # Output: # Wallet created # Address: 3b66f35ce20c29e383dab3570d8fe9c2b3220058... # Seed saved to ~/.xe/wallet.key
On testnet, claim 100 XUSD from the faucet (once per 24 hours per account). XUSD is used to pay for compute leases and confers voting weight for consensus.
# Claim 100 XUSD from the faucet (once per 24 hours) xe fund # Then receive the pending claim xe receive
# Check your balances (XE and XUSD) xe wallet balance # Output: # XE: 0 # XUSD: 0
Transfers require a send block (debiting the sender) and a receive block (crediting the recipient). The recipient must explicitly receive pending sends.
# Send XUSD to another account xe send <recipient_address> 50 --asset XUSD # Recipient must run 'xe receive' to credit their chain
The core node exposes an HTTP REST API on port 8080. Rate limited: 100 req/s sustained, 500 burst per IP. JSON encoding. Hex-encoded hashes and keys. Unix nanosecond timestamps.
# Query account via REST API curl https://ldn.test.network/api/accounts/<address> # Submit a block via REST API curl -X POST https://ldn.test.network/api/blocks \ -H "Content-Type: application/json" \ -d '{"type":"send","account":"...","previous":"...","balance":...}' # Compute PoW server-side (for constrained devices) curl -X POST https://ldn.test.network/api/pow \ -H "Content-Type: application/json" \ -d '{"hash":"..."}'
XE supports eight block types. Each is signed with ed25519 and includes a blake2b proof-of-work nonce for anti-spam.
xe unified binary with 15+ commands.