6 min read8 sections
The passkey wallet
A wallet that lives in your browser and signs with your fingerprint or PIN.
Open WalletIn shortA wallet sealed inside your browser that signs with your fingerprint, face or PIN. Save the recovery key the one time it is shown.
- Unlock
- Touch ID, Face ID or PIN
- Recovery key
- shown once
- Backup
- vault file or a second passkey
- Staking
- 0.002 KCAL per SOUL a day
- Base address
- P2P market, Move USDC out
The passkey wallet keeps a Phantasma private key sealed inside your browser. Every signature asks for Touch ID, Face ID or your device PIN. The passkey wallet never signs without your passkey prompt. There is no password to remember, nothing stays open between signatures, and the key never leaves the device.
Creating one
- Open Wallet, give the wallet a name and press Create with passkey. Your device asks you to confirm.
- The recovery key appears once. It is the raw private key. Write it down somewhere safe and tick the box to say you did. Nothing else can restore this wallet if the device is lost.
- Press Verify passkey once. It signs a throwaway message and checks the signature, so you know the whole path works before any money is involved.
Keeping it
- Add passkey enrols a second device or a security key on the same wallet, so a lost phone is not a lost wallet.
- Export vault file saves an encrypted copy you can load in another browser. The file alone opens nothing, the passkeys have to be yours.
- Recovery key shows the private key again, behind a fresh passkey prompt.
Your Base address, for the P2P market
Each passkey wallet also has an address on Base, worked out from the same key. It is there for the P2P market: buying with USDC, and being paid if you choose it. On the Wallet page it has its own tile on the wallet card, marked Base (Base Sepolia on devnet), with its ETH and USDC and a copy button; the Phantasma tile beside it (above it on a phone) holds the Phantasma address and your favourite tokens. Press either short address to see both in full, each with a copy button and a link to its explorer. The ↻ at the top of the card refreshes the balances of both. Move USDC out sends its USDC to another Base address. An older wallet shows Show Base address instead: one passkey check. Nothing is sent and no transaction is signed, only a proof that the address belongs to the wallet.
- Move USDC out, in the wallet card's row of actions: type a Base address (0x…) and an amount, or press Max, then Review. The page refuses a Phantasma address, a mixed-case address with a typo, the zero address and Base's own system addresses, the wallet's own address and the USDC and P2P contracts. It reads the balances again and shows the amount, the full address and the most the network fee can be. Confirm with passkey signs exactly that transfer. It needs a little ETH on Base for the fee; the rest of the ETH stays on the address. The passkey prompt shows only this site's name, not the address or the amount, so compare the whole address in the summary with where you copied it, not only its start and end. Transfers cannot be undone. Move USDC out works only on a network where this site has Saturn's P2P contract on Base built in: on devnet (Base Sepolia), and on mainnet (Base) from the site release that launches P2P there. Elsewhere its button stays greyed out.
- The page shows the address only when the wallet's key has signed it together with the wallet's Phantasma address. Storage that has been tampered with can change both at once, so before you send money to the Base address, check that the Phantasma address on the same wallet card is yours.
- Your recovery key brings this Base address back when you import it into Saturn's passkey wallet. Other wallets (Ecto, Poltergeist, MetaMask) cannot work it out from the recovery key.
- If you keep money on Base, also save the Base key: Base key, in the wallet card's ⋯ menu, shows it behind a fresh passkey prompt. It is what MetaMask or Rabby import, and the only way to move the ETH on the address. Once exported, the key works in any wallet, outside this site's limits.
- For recovery tools: the Base key is HKDF-SHA256 of the 32-byte private key inside the recovery key (decoded from base58, the bytes after the leading 0x80 and before the 0x01 and the checksum), with salt 'saturn-ops/base-key/v1', info 'secp256k1/evm' and 48 bytes of output, read as a big-endian number, taken modulo n minus 1, plus 1, where n is the order of the secp256k1 curve. The address is the usual Ethereum address of that key.
Tokens, favourites and sending
- The card shows your favourite tokens up front: SOUL, KCAL, TAZ and RA until you pick your own. The header wallet menu shows the same ones.
- All tokens lists everything the wallet holds, with a search box. The star next to a token makes it a favourite on this device.
- Send moves any token to any Phantasma address in one passkey signature. The page refuses a malformed address or your own before anything is signed, and keeps a little KCAL back for the network fee when you press max.
- Transfers cannot be undone, so check the address. The network fee is a few hundredths of a KCAL.
Burning tokens
Burn, in the wallet card's row of actions or next to a token under All tokens, destroys an amount of a token for good: it leaves your wallet and the token's total supply goes down by the same amount. It is the way to take tokens out of the supply for good, a team allocation or what is left over after a launch for example, and every passkey wallet has it. You type the token's symbol to confirm, then sign with your passkey. It cannot be undone. Some tokens refuse burning in their own contract, and then nothing is burned. A burn never makes room to mint the amount again: since October 2026 a token's cap counts every token ever minted, burned or not. A token with no cap can be minted regardless. SATURN pool certificates are never offered.
Staking SOUL for KCAL
Staking is Phantasma's own: the staked SOUL stays in your wallet and generates KCAL, the network's gas token, at 0.002 KCAL per SOUL per day. The rate is the same whatever the amount, so 200,000 SOUL earns 400 KCAL a day whether it sits in one wallet or four. Open Staking on a wallet card to stake, unstake or claim.
- Claim moves the KCAL generated so far into the wallet. Claim on the Passkey wallet header, at the top of the Wallet page, claims on every wallet here at once, one passkey prompt per wallet.
- You can unstake a couple of minutes after your last stake or claim. Earlier, the chain refuses and only the network fee is spent.
- Soul Master rewards, the old monthly bonus for staking 50,000 SOUL, are not active on the current Phantasma chain; the last one was paid in January 2024.
Other wallets
Connect wallet in the top bar also accepts Phantasma wallets that support wallet link. They sign the same transactions in their own window.
Anyone with the recovery key owns the wallet and its Base address, and anyone with the Base key owns the Base address. Never paste either into a chat, a form or a website, including this one, unless you are deliberately importing it.