2

So I'm really new to Bitcoin and cryptocurrencies, and I don't truly understand realtion between Bitcoin private and public key, and address!

I understand that for every private key, there is a public key, and that public key can be made and is made from a private key. So for every transaction you would have one private key and corresponding public key.

What I can't understand is how to backup Bitcoin wallet using private key! Everyone says you just need to backup your private keys, but do I need to backup every private key, or just the first one, or i just need one private key to access my wallet?

Lets say i would like to backup my Bitcoin wallet by writing private keys on a piece of paper and storing that somewhere safe:

  1. Do I need to save only first ever created private key to have access to all bitcoins I own, even i added them through multiple transactions?
  2. Do I need to save every single private key generated, from every transaction to have access to all Bitcoins on blockcain?
  3. If I save only half of private keys, from half of my transactions, does it mean i can only access Bitcoins from those transactions i own private keys?

I'm really confused about this one, and cant find answer anywhere! I'm not interested in backing up wallet, i need to store my private keys on a paper!

Sorry if question seems silly, I'm an old guy trying to learn all this new wonders! Thank you!

  • Private and public key pair is related to the address you keep funds in. Actually public key can be considered to be the address. for someone to send you funds they need your address. You need private key to control the funds that are on that address (that is to send them from that address). – croraf Nov 19 '17 at 22:36
  • Thanks croraf! So lets say I have made 3 transactions to 3 different addresses. I would have to own 3 corresponding private keys to access bitcoins on those public keys, correct? If I would own only 1 private key, I would have access to just one transaction? OK, I get that part now! So if I have software wallet on my PC, and have many transactions and private / public key pairs, if I lose one private key, I can't get Bitcoins from that transaction right? So the best way would be to transfer all the bitcoins to new public key / address, and save corresponding private key? Thanks again! – geppetto Nov 19 '17 at 22:49
3

It depends on what kind of wallet you have.

Traditionally each private key was generated randomly by your wallet software. In this case every private key needs to be backed up.

Recently deterministic wallets have become popular. Deterministic wallets randomly generate a seed, and then use that seed to deterministically derive the private keys in a cryptographically secure way.

To answer your questions specifically:

  1. It depends on whether you use a deterministic wallet. Traditional method: If you make multiple transactions, new keys are periodically generated and these need to be backed up too. Deterministic wallet: backing up only the seed is sufficient.
  2. Also depends on wallet. Traditional: back up every key. Deterministic: just backup the seed.
  3. Yes. Private key ownership = ownership of the bitcoin held at the addresses derived from those keys. If you don't have the key, you can't spend the bitcoin.

In Bitcoin Core, both kinds of wallet can be sufficiently backed up by backing up your wallet.dat file. There is an HD (Hierarchical Deterministic) symbol in the bottom right that is greyed out and crossed out if you do not have a deterministic wallet.

Since you want to backup on paper, maybe Bitcoin Core is not the best solution for you. You could try using a wallet that implements BIP 39 (there is a list of them on the deterministic wallet article), which derives the seed from a human-readable list of words. In this case, writing down the seed words is a sufficient backup.

  • So I can think about Bitcoin wallet as a software that creates public and private keys, and enables me to send Bitcoins to public keys, and retrieve them with private keys. And if I have lets say 5 public / private keys, it just sums all the Bitcoins on that 5 addresses and shows me the sum of Bitcoins on those 5 addresses, correct? And I can easily create new public address, send all the Bitcoins to that address, save the private key and write it on a paper and all my Bitcoins are on that public key / address, and I can spend them using corresponding private key? Did I get that right? – geppetto Nov 20 '17 at 0:32
  • That's the basic idea, yes. There are later additions to bitcoin called script hashes which are an alternative to public keys that complicate things a bit. You can tell you're dealing with a public key because the address starts with a 1, not a 3. – Adam Millerchip Nov 20 '17 at 0:49
  • @geppetto Wallet allows you to create private/public key pairs, to send Bitcoins from some of your public keys (addresses) using respective private keys that control the addresses. But you don't retrieve with private keys. You don't retrieve anything. Showing your balance does not require private keys, just your walled has to know which addresses belong to you. – croraf Nov 20 '17 at 18:36

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.