TOTHEXECUTION DESKSIGN INI HAVE AN INVITE →
Learn · Crypto

Holding your own keys: what a signature proves, and what nobody should ask you for

LAST UPDATED NOVEMBER 2026

A crypto wallet is a key, not a vault, and the recovery phrase is the key to the key. Why there is no password reset, what "sign a message" proves against what "sign a transaction" does, how 2024's $494 million of drainer thefts were taken, why the desk wallet's key lives at wallet.tradersoth.com and what its password is not, and the short list of things TOTH will never ask you for.

A bank account is a promise someone else keeps. A crypto wallet is not an account at all: it is a key, and the coins it "holds" are entries on a public ledger that the key can move. Nobody keeps a promise to you, nobody can reverse a transfer, and nobody — not the wallet company, not the chain, not this desk — can give the key back if it is lost. That is the whole bargain of holding your own coins, and every sentence on this page follows from it. Read it before you connect anything to the desk's crypto room or open its signer, because the panel there will ask you to sign a message, and you should know exactly what that is and what it is not.

The key, and the key to the key

A wallet generates a keypair: a private key that signs, and a public key that anyone can check a signature against. Solana's own glossary puts it in one line — a keypair is "a public key and corresponding private key for accessing an account." The private key never leaves the wallet; the public key, or something derived from it, is your address.

Because a private key is just a very large number, wallets wrap it in words. The recovery phrase (seed phrase, secret phrase — the names vary) is twelve or twenty-four words from which every key the wallet will ever make can be regenerated. Ledger's description is the plain one: all of its devices use a 24-word phrase, and that phrase "allows anyone to restore your entire wallet." Anyone. The phrase is not a password that protects the key; it is the key, in a form a person can write down.

Three consequences, none of them negotiable:

  • There is no password reset. Phantom says it flatly: "We will not be able to help you if your credentials are lost." The same is true of every self-custody wallet, because the company never had the phrase. Phantom again: it "never holds your recovery phrases, private keys, and does not control your assets." That sentence is the feature. It is also the warning.
  • Whoever has the phrase has the coins. Not "can access" — has. A phrase typed into a website, a support chat, a "wallet validation" form or a photo in a cloud album is a phrase someone else may now hold. Ledger's rule is to never enter it "into a computer or smartphone" at all and never share it, "not even with Ledger."
  • A lost phrase is a lost wallet. Write it on something that survives water and fire, keep it where a burglar would not look and a flood would not reach, and tell one person you trust where that is. The FTC's summary of what happens otherwise: if your wallet is compromised or you lose the password, you are "likely to find that no one can step in to help you recover your funds."

Three kinds of wallet

The phrase lives somewhere, and where it lives is most of the security.

A hardware wallet is a small device that holds the key and signs inside itself; the computer it plugs into sees only the signature. Malware on the computer cannot read the key, and the device's own screen shows what you are about to sign. The costs are the price of the device, the ceremony of using it, and the fact that the phrase still has to be written down somewhere — the device protects the key in use, not the backup.

A browser-extension or phone wallet — Phantom, Solflare and Backpack are the common ones on Solana — keeps the key encrypted on your own device, unlocked by a password you set. It is what most people use and what the desk's connect door talks to. The key is only as safe as the device: a compromised laptop can be a compromised wallet, and the password protects the file, not the phrase.

An embedded wallet is one a website or app creates for you and keeps, in your browser or on its servers, so that you never see a phrase at all. It is convenient and it is custody by another name: the question to ask is who can sign without you, and what happens to the key when the company stops existing. The where-a-trade-happens page is about that question in general; it applies to wallets exactly as it applies to exchanges. The desk's own "desk wallet" is deliberately not one of these: the phrase and the key are created and kept in your browser, on a page of their own that the desk opens and cannot read, the desk holds none of them, and the section on it below says exactly what that means.

What a signature proves, and what it does

Everything a wallet does is a signature, and there are two very different things it can sign.

Signing a message means the wallet signs an arbitrary piece of text and hands back the signature. Nothing is sent to the network, nothing is paid, nothing moves. Phantom's developer documentation describes the use: message signatures "do not involve network fees and are a convenient way for apps to verify ownership of an address." It is the crypto equivalent of showing your ID — proof that you hold the key behind an address, and only that.

Signing a transaction means the wallet signs an instruction to the network: send this, approve that, give this contract permission to spend these tokens. Solana's glossary calls a transaction instructions "executed atomically with only two possible outcomes: success or failure" — and success is irreversible.

This is the distinction the desk's crypto room rests on. For a wallet you connect, TOTH asks for the first and never the second. The panel there issues a short text — it names tradersoth.com, your seat (your username, as the desk shows it), your address, a one-time code, the time and the network, and ends with the words "This signature proves you control this address. It moves nothing and spends nothing." — and asks your wallet to sign it. The server checks the signature against the address and stores the address. That is the entire transaction between you and the desk: a sentence, signed. A prompt naming someone else's seat is someone else's request — decline it. If a prompt from TOTH, or from anything claiming to be TOTH, ever asks you to approve a transaction, a token allowance or a transfer you did not compose yourself, it is not TOTH. Close it. The one place a transaction is signed on this desk is the signer window described below, and only a send or a vault spend you typed on the desk and confirmed again in that window.

The Wallet Standard, the open interface the panel speaks, draws the same line in code: solana:signMessage takes an account and message bytes and returns a signature, and is a separate feature from the ones that sign and send transactions. A site that only uses the first cannot use the second without asking your wallet a visibly different question.

How wallets are drained

The crime of 2024 was not stolen phrases — it was signatures given freely to the wrong prompt. Scam Sniffer's annual count of wallet-drainer thefts put 2024's losses at about $494 million, up 67% on the year, from about 332,000 victim addresses, with the number of victims up only 3.7% — the average loss grew, not the crowd. The method is a web page, reached through a hacked project Discord, a bought search ad, a fake airdrop, a direct message or an expired invite link, that asks the visitor to sign something disguised as "verify your wallet," "check eligibility," "claim" or "migrate for security." On the chains Scam Sniffer measures, the signature was most often a Permit — a token allowance that lets the attacker spend your balance later, without another prompt — which accounted for 56.7% of the large losses, or a setOwner change of a contract's owner, at 31.9%. The largest single loss of the year, about $55 million in DAI, was one such ownership signature in August.

Zoom out and the picture is the same. Chainalysis counted about $2.2 billion stolen across crypto in 2024, up about 21%, with private key compromises the largest share at 43.8%. Keys and signatures, not clever code, are where the money goes.

Four habits cover most of it:

  1. Read the prompt. A wallet shows you what it is about to sign. A message is text; a transaction lists what moves and what is approved. If you cannot tell which it is, it is a no.
  2. Treat every unsolicited link as the attack. The FTC's rule is general and correct: "Never click on a link from an unexpected text, email, or social media message." Airdrops you did not sign up for, support agents who found you first, and urgency of any kind are the lure, not the bonus.
  3. Keep the wallet that holds anything serious away from the browser you experiment with, and consider a hardware wallet for it. A signature from a key the browser does not hold cannot be phished by a web page.
  4. Nobody legitimate guarantees anything. The FTC's rule is that only a scammer promises a sure return. That sentence is also how to read a track record, and it applies to this desk.

Solana specifically: accounts, addresses, lamports

The desk's panel reads Solana, so the local vocabulary helps. Solana's documentation says "each account is identified by a unique 32-byte address," and for a wallet that address is the Ed25519 public key itself, written in base58 — the 32-to-44-character string that starts a Phantom address. A signature is "a 64-byte ed25519 signature." Balances are kept in lamports, "a fractional native token with the value of 0.000000001 sol" — a billion to the SOL. Tokens other than SOL, USDC among them, do not sit in the wallet account directly; each is held in a separate token account the wallet owns, which is why a wallet that has never touched USDC simply has no USDC account rather than a zero balance.

Devnet versus mainnet

Solana runs several clusters, each "a set of validators maintaining a single ledger." Mainnet is the one where coins have value. Devnet is a rehearsal ledger with a faucet that hands out coins to anyone who asks; Solana's documentation says it in three words — "Devnet tokens are not real." Even the USDC there is a different token: Circle publishes a separate devnet mint for it and heads the page "Testnet tokens have no financial value."

The desk's panel shows both, behind a switch, and the switch is not symmetrical. DEVNET is always there: the balances it shows are rehearsal figures, labelled so, and nothing about them is money. MAINNET appears only when the founder has opened it, by a switch he reads server-side on every action, and it reads real coins: a send there is real money leaving, final the moment it confirms, and the panel asks you to accept the wallet disclosure once before your first mainnet send and again whenever its words change. The same key sits behind both — a Solana address is the same address on every cluster — so the habit to build on devnet is the one you will need on mainnet: read the cluster name in capitals on the review screen, and read it again in the signer window, before you confirm anything.

The desk wallet: where the key lives, and what you hold

Since November 2026 the crypto room has a second door, OPEN THE SIGNER. A member with no wallet extension can create a desk wallet there. Despite the name, the desk holds none of it. Here is exactly what happens, so you can check it against the page.

  • The signer is a separate page on its own address. Clicking the door opens a small window — a pop-up, never a frame — whose address bar reads wallet.tradersoth.com. That address is the point. A browser keeps each website's storage apart from every other's, so a key kept by wallet.tradersoth.com cannot be read by a page on tradersoth.com, any more than it could be read by any other site; the desk can only ask the signer to sign, and the signer shows you what was asked and signs after a click in its own window. The one check that works against an imitation is the address bar of that window: if it does not read wallet.tradersoth.com, close it. The desk's pages never ask you to type a phrase or a password; only that window does.
  • Your browser makes the phrase, in that window. Twelve words, from 128 bits of randomness your browser's own generator produced, in the BIP-39 form every wallet above uses. They are shown once, on your screen, after you have read three facts: the desk cannot recover them, the key lives in this browser profile, and losing the phrase loses the wallet. Then they leave the screen and two of them are asked back. Nothing is stored until you answer.
  • Your browser derives the key. By SLIP-0010 at Solana's standard path, the derivation Phantom and Solflare use, so the same twelve words typed into either of those wallets open the same address, and a phrase from them restores the same first address here.
  • The signer holds the key and will not hand it out. The private key is imported into the browser's own cryptography module as a non-extractable key that can only sign. The signer page can ask it to sign; it cannot read the key's bytes, and neither can a script that gets into any page later. It lives in that origin's storage on this device: a cleared profile, another browser or another device has no wallet in it until you restore from the phrase. A browser that cannot hold a key this way is told so and offered the connect door instead; there is no second, weaker way.
  • You set a wallet password, and you should know what it is not. The signer asks for a password of eight characters or more, typed twice. It is a local unlock: it encrypts, on that device, the material the vault is built from, and the signer asks for it whenever you create a vault or sign a vault spend. It is not the key, it does not replace the phrase, and it protects nothing if someone has the phrase. A forgotten password is repaired by restoring from the phrase, which sets a new one. A lost phrase is not repaired by anything.
  • The desk stores the address and a signed sentence. The desk wallet proves itself exactly as a connected one does: the signer signs the desk's text and the server checks the signature. The record is the same row with one label, "desk wallet," and a note of where the key lives, which the server writes after the check and never trusts for anything.
  • The desk's server never sees the phrase, the key or the password, nor any encrypted copy of them. There is no field for one, and the code that handles them imports nothing that talks to the server; a test fails if it ever does. What the desk's server does see, since every chain read now goes through it rather than from your browser to a Solana node, is the public side of your wallet — addresses, balances, transactions — and the privacy page says so.

Two consequences follow, and the panel says both.

Sending. Moving anything out of a desk wallet sits behind a desk-wide lock that is on by default. While it holds, the panel reads SEND LOCKED and the desk draws no send form. If the founder lifts it, a send works like this and only like this: you type the recipient and the amount on the desk, the desk shows you the transaction in plain words — cluster, from, to, amount, asset, fee — and when you click again the signer window opens, decodes the same transaction itself, shows you the same words from its own reading, and signs only when you confirm there. The desk records what you asked before anything is signed, and what the chain answered after. On devnet the coins have no value; on mainnet they are real, and the disclosure comes first. Either way a confirmed send cannot be reversed by anyone. A send from the vault is the same ceremony with one more step, the password, and its own page explains why.

Forgetting. You can tell the signer to forget the wallet; it asks you to type the word first and says what it means: without the phrase, whatever that address holds stays on the ledger with no key to move it. Revoking the link on the desk is a different act — it removes the desk's record of the address and leaves the key where it is. If your browser still holds a key from the desk wallet's first weeks, when the key lived in the desk's own page, the panel tells you so: restore it in the signer from your phrase, then forget it on the page. No new key is made that way.

Write the twelve words on paper. The desk has nothing to send you if you lose them.

What TOTH will never ask you for

  • Your recovery phrase. Not in a form, not in a chat, not in an email, not "to verify," not to a person who says they are the founder. The signer's restore box, in its own window at wallet.tradersoth.com, reads a phrase in your browser alone and sends it nowhere; no other page or person on the desk ever has a reason to see one.
  • Your wallet password. The signer asks for it, in that window, when you create a vault or sign a vault spend. No desk page, email, chat or person asks for it, and nothing the desk's server does could use it.
  • Your private key, in any encoding.
  • A transaction you did not compose yourself. No token approval, no "activation," no fee to receive anything. A wallet you connect is only ever asked to sign a sentence that says it moves nothing. A desk wallet signs only a send or a vault spend you typed on the desk and confirmed again in the signer, and only while the founder's send lock is lifted.
  • Money sent to an address to receive anything back. The FTC's first rule of crypto scams: "Only scammers demand payment in cryptocurrency."

If any of those arrive carrying the desk's name, the desk did not send them. TOTH never holds your keys or your funds — the panel is built so that it cannot, which is a stronger promise than will not. The vault page explains the compartment behind a hash-based key and what it does and does not protect, the post-quantum page why the public key on the ledger is itself a long-run exposure, and the staking page what happens when that key is used to earn. All of them begin where this page ends: with a key you hold, and no one to call.

Sources · checked November 5, 2026
  1. BIP-39: Mnemonic code for generating deterministic keys — the twelve-word form of a 128-bit secret, and the PBKDF2 step from words to seed, that the desk wallet and every wallet named here use
  2. SLIP-0010: Universal private key derivation from master private key — SatoshiLabs: the Ed25519 derivation the desk wallet uses, HMAC-SHA512 with "ed25519 seed" as the master key, hardened children only; the test vectors the desk's code is pinned to
  3. Secure Curves in the Web Cryptography API — WICG: Ed25519 in the browser's own cryptography module, where a key can be imported as non-extractable and used only to sign
  4. What is a recovery phrase? — Ledger Academy: the 24 words "allow anyone to restore your entire wallet"; never enter it into a computer or phone, never share it, "not even with Ledger"
  5. How to avoid scams — Phantom Help Center: Phantom "never holds your recovery phrases, private keys, and does not control your assets"; "We will not be able to help you if your credentials are lost"
  6. Signing a message — Phantom developer docs: message signatures "do not involve network fees and are a convenient way for apps to verify ownership of an address"; Ed25519
  7. Solana terminology — lamport = 0.000000001 SOL; a signature is "a 64-byte ed25519 signature"; keypair, account, transaction
  8. Solana accounts — "Each account is identified by a unique 32-byte address" (an Ed25519 public key)
  9. Solana clusters and public RPC endpoints — devnet, testnet, mainnet; "Devnet tokens are not real"
  10. USDC contract addresses — Circle: the mainnet and devnet mints are different tokens; "Testnet tokens have no financial value"
  11. Scam Sniffer 2024: Web3 phishing attacks — wallet drainers drain $494 million — about 332,000 victim addresses, up 3.7%; losses up 67%; Permit signatures 56.7% of large losses, setOwner 31.9%; the $55 million DAI case
  12. Cryptocurrency wallet drainers stole $494 million in 2024 — BleepingComputer, January 2025, on the same report
  13. 2025 Crypto Crime Report: introduction — Chainalysis: stolen funds up about 21% to $2.2 billion in 2024; private key compromises 43.8% of it
  14. What to know about cryptocurrency and scams — FTC: only scammers demand payment in crypto or promise a sure return; no one can step in to recover a lost wallet
  15. Wallet Standard — Solana features and chains — the `solana:signMessage` feature (account + message bytes in, signature out) and the `solana:devnet` chain identifier the desk's panel uses

Education, not advice. Nothing on this page recommends buying or selling anything, and nothing is a promise of results — every figure is cited above or hypothetical. TOTH does not provide investment advice. New to the vocabulary? The glossary has plain definitions.

More in Crypto

← Crypto · All of Learn