Get a Wallet
Almost everything beyond reading the chain needs a wallet — staking, co-signing, receiving mining payouts. Liqua uses the dual-seed L8 model: a public seed everyone shares plus your private seed makes your instance, and your instance is your authorization (R6 · instance = auth). This page gets you a key the Liqua surfaces can use.
The full L8 wallet (CLI · GUI · the L8 LEDGER browser extension) is its own project in the ecosystem. This page documents how the Liqua surfaces connect to a wallet and how to get test funds — not how to build the wallet itself. A standalone in-codex key generator is on the roadmap.
The dual-seed model
A Liqua identity is derived deterministically, the same way your node identity is:
public seed shared · deterministic · NOT secret (the genesis everyone agrees on)
private seed yours · secret · 12/24 words or 0x-key
└─▶ instance = your wallet (R6 · instance = auth)
path BIP-44 m/44'/60'/account'/0/0 (same as your L8 wallet)
address keccak256(pubkey)[-20:] → 0x…
id compressed secp256k1 pubkey
Two accounts come off the same private seed, by BIP-44 account index:
| Account | Path | Use |
|---|---|---|
| HOT | m/44'/60'/0'/0/0 | operational — day-to-day signing, co-signing |
| COLD | m/44'/60'/1'/0/0 | vault — long-term holdings, big ve-locks |
Connect a wallet to a Liqua surface
The dapp surfaces (e.g. the validator connect page) offer three ways in, in order of preference:
-
L8 LEDGER extension — recommended
The page discovers your extension via EIP-6963 (
rdns: studios.7slf.l8) and lists it first as your wallet. Click to connect your address & balance; the page will offer to switch the extension to the Liqua chain (chainId 8888). An extension connection can view and send, but the on-chain ve-lock and live co-signing are signed by your key. -
Import a signer key — local only
Use
⚿ IMPORT L8 SIGNER KEYand paste a 12/24-word phrase or a0x…private key, then choose HOT or COLD. The key is used in-page to sign the lock and each head you co-sign — it never leaves the page and nothing is sent until you sign. This is what enables locking and co-signing when you don't have the extension. -
Any injected wallet — view
A generic injected wallet connects for viewing your address and balance. To lock LIQUA on-chain you'll still import an L8 signer key (above).
Whoever holds the private seed controls the instance — and on Liqua the instance is the authorization. Never paste a real seed into a page you don't trust. The phrases used in demos are devnet-only. Prefer the COLD account for anything you intend to lock for years.
Get test LIQUA · the devnet faucet
On devnet, the validator node exposes a faucet. The connect page has a ⛲ DEVNET FAUCET button; under
the hood it's a single call (see the validator API):
# grant test LIQUA to your address (validator node on :7100)
curl -X POST http://localhost:7100/stake/faucet \
-H 'content-type: application/json' \
-d '{"address":"0xYourAddr"}'
# → { "ok": true, "granted": 100000 }
The grant amount is published at GET /params as stake.faucetAmount (100000 on devnet).
Where your wallet is used
| Surface | What your wallet does |
|---|---|
| Validator | signs the on-chain ve-lock and co-signs each canonical head |
| Mining (pool) | your 0x… address is the Stratum username the pool credits |
| JSON-RPC | eth_getBalance reads your settled on-chain LIQUA balance |
| Locked liquidity | your locks appear in the public §3 proof-of-lock list |
Start the validator node (node miner/validator.mjs), open :7100, import a devnet signer
key, hit DEVNET FAUCET, and you're ready to stake.