<p>A Bitcoin private key always have exactly one corresponding public key from which the Bitcoin address can be derived. The derivation paths looks as this:
Private key -> public key -> Bitcoin address. If you e.g. only have the public key you can determine the bitcoin address, but not the private key. Given only the Bitcoin address you can in fact not even determine the underlying public key.</p>

<p>Therefore all you actually need to save is the private key, from which you can find the public key/address and check if there are any unspent outputs for it. </p>

<p>On top of that deterministic Bitcoin wallets have a clever way to derive determanisticly a nearly infinite amount of private keys, so all you then would need to keep safe is the seed for this derivation.</p>

CC BY-SA 3.0
2016-11-25T12:39:39.577Z
Thanks Inaki that makes total sense. I don't know where I got the idea that 1 private key => many public keys. I think because if you need to create a new address for every transaction, what links all your keypairs together to create one "wallet"? Why don't they say you need to create a new wallet for every transaction?
08Dc91wk
CC BY-SA 3.0
2016-11-25T12:50:14.497Z
In the most basic form, a wallet is simply a collection of private keys that (eventually) contain unspent outputs for the corresponding addresses. When
you want to send bitcoin, the Bitcoin wallet client then decides which of those unspent outputs to combine to send them. In fact you would only need to backup
private keys for which there (still) are unspent outputs. But nowadays the private keys are typically derived using a deterministic method (BIP32) with a
seed and since EVERY private key you use in your wallet is derived from it, you just need to backup the seed once and for all!
Bjarne Magnussen
CC BY-SA 3.0
2016-11-25T12:21:26.313Z
2016-11-25T12:21:26.313Z
Bjarne Magnussen
<p>I understand a "wallet" to be a private key and a collection of associated public keys. But if I was to be given <em>only</em> a private key, would I be able to determine if it had any associated addresses/public keys that had unspent bitcoin in them? If so, how? </p>

<private-key><public-key>
Given only a private key, is it possible to see if it has unspent bitcoin?
08Dc91wk
# Given only a private key, is it possible to see if it has unspent bitcoin?

(Asked by: username_0 on 2016-11-25)

I understand a "wallet" to be a private key and a collection of associated public keys. But if I was to be given *only* a private key, would I be able to determine if it had any associated addresses/public keys that had unspent bitcoin in them? If so, how?

**Tags:** private-key, public-key


---

## 1 answers

### Answer by username_1 on 2016-11-25. Score: 3 | Accepted answer

A Bitcoin private key always have exactly one corresponding public key from which the Bitcoin address can be derived. The derivation paths looks as this:
Private key -> public key -> Bitcoin address. If you e.g. only have the public key you can determine the bitcoin address, but not the private key. Given only the Bitcoin address you can in fact not even determine the underlying public key.

Therefore all you actually need to save is the private key, from which you can find the public key/address and check if there are any unspent outputs for it.

On top of that deterministic Bitcoin wallets have a clever way to derive determanisticly a nearly infinite amount of private keys, so all you then would need to keep safe is the seed for this derivation.

> **Comments:**
> **username_0**: Thanks Inaki that makes total sense. I don't know where I got the idea that 1 private key => many public keys. I think because if you need to create a new address for every transaction, what links all your keypairs together to create one "wallet"? Why don't they say you need to create a new wallet for every transaction?  
> **username_1**: In the most basic form, a wallet is simply a collection of private keys that (eventually) contain unspent outputs for the corresponding addresses. When you want to send bitcoin, the Bitcoin wallet client then decides which of those unspent outputs to combine to send them. In fact you would only need to backup private keys for which there (still) are unspent outputs. But nowadays the private keys are typically derived using a deterministic method (BIP32) with a seed and since EVERY private key you use in your wallet is derived from it, you just need to backup the seed once and for all!  

---

