← back to the blog index
@andrea@giveabit.io · Bitcoin Knowledge · giveabit.io

Why self-custody matters

Not your keys, not your coins — and the same logic applies to your identity. Why holding your own key is the only safe default.

"Not your keys, not your coins"

If a bank, exchange, or app holds your bitcoin, it holds your keys — and whoever holds the keys controls the coins. The moment a custodian freezes, folds, or gets hacked, "your" bitcoin may be gone with it. The saying exists because it's been proven true, over and over, by history.

Self-custody means you hold the keys. No one can freeze, seize, or lose them but you — and no one can save them for you if you lose them. That trade is the whole story.

Keys are identity too

Here's the part most money conversations skip: keys aren't just for coins. In the Give A Bit family, the same idea powers identity. Your NIP-05 name maps to a public key; your nsec signs your actions. If you hand that key to a service, you've handed over your identity the way you'd hand over your wallet.

Your identity key is public and checkable
curl -s 'https://giveabit.io/.well-known/nostr.json?name=andrea' \
  | jq -r '.names["andrea"]'
Expected: 43ff51e8bc175c700c31ce86dba0c294a8fd5e376d3b9083be8f70a41abab1ee — a key the public registry vouches for. Whoever holds the matching secret key is, cryptographically, Andrea.

Self-custody is a spectrum, not a binary

Honesty about trade-offs: self-custody is harder. There is no "forgot my password? click here" — a lost key is lost money, full stop. So the responsible position is a spectrum:

The honest caveat. Self-custody puts safety on you. It is the only way to be truly your own bank, and it is also the one where a mistake has no undo button. That's why backups and small-first practice aren't optional — they're the whole method.

How Give A Bit runs it in practice

Give A Bit's Lightning node is backed up and restore-tested, and the seed is written to paper (not just a digital file). The family's wallets all route to that node. The public wallets.json describes the setup plainly — including the parts that aren't finished yet (the node currently has zero open channels, which is stated openly rather than hidden).

Read the real operations note
curl -s 'https://giveabit.io/wallets.json' | jq '{backbone, note}'

That honesty is itself a self-custody principle: you can only trust a system you can inspect, and you can only self-custody what you actually understand.

The principle generalizes

Hold your own keys — for your coins and for your identity. A third party in the middle is a single point of failure that converts "your money, your name" into "their permission, their records." Self-custody is the unglamorous, essential refusal to outsource the two things that make you you: what you own and who you are.

The takeaway

Not your keys, not your coins — and not your identity either. Self-custody is the only default where the thing you own can't be taken by someone else's failure. It asks more of you, and in return it takes less away.

Live fact check. Backup + registry claims verified 2026-08-25: giveabit.io/wallets.json documents the LND seed backup and node state openly, and the registry resolves andrea to a live key.

Your identity, your key

Your identity key should be checkable — here is Andrea's, live from the public registry:

curl -s 'https://giveabit.io/.well-known/nostr.json?name=andrea' \
  | jq -r '.names["andrea"]'
Expected output: 43ff51e8bc175c700c31ce86dba0c294a8fd5e376d3b9083be8f70a41abab1ee · npub npub1g0l4r69uzaw8qrp3e6rdhgxzjj506h3hd5aepqa73ac2gx46k8hqhq7305

Holding the matching secret key is what makes that name yours. Keep it self-custodied, and the name and everything signed with it stays yours too.