<p>Public keys are generated from a Private key in a one-way function. Public and private keys have a 1-to-1 relationship. A given private key can only generate one public key.</p>
<p>However, as specified in BIP 32, extended keys can be used to derive child keys (public keys). An extended private key (xprv) can derive many child private keys, each of which can derive a single public key.</p>
<p>This child key derivation (CKD) function is a one-way function, so child keys cannot be used to calculate their parents. Nor can child keys be used to calculate their sibling public keys.</p>
<p>Check out this article on wallets and public/private keys for more info and a visual explanation: <a href="https://river.com/learn/terms/h/hd-wallet/" rel="nofollow noreferrer">https://river.com/learn/terms/h/hd-wallet/</a></p>
<p>Check out BIP 32, which has some useful graphics: <a href="https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki" rel="nofollow noreferrer">https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki</a></p>

CC BY-SA 4.0
2021-11-06T00:08:44.707Z
2021-11-06T00:08:44.707Z
Sachin Meier
<p>Relationship between private and publiic keys is ( in practicality ) unidirectional and 1:1 so given an algorithm; a private key will always, generate the same public key.</p>
<p>There's an advanced concept, that has to do with your question and is deterministic wallets. Here private keys are created from a seed and there are scenarios where you could guess them from knowing one; but you would need to know the private key, not the public.</p>

CC BY-SA 4.0
2021-11-05T22:12:40.143Z
2021-11-05T22:18:01.927Z
2021-11-05T22:18:01.927Z
crma
<p>Lets say someone else generates 100 bitcoin addresses using the same private key.  If know one of the public addresses, can I deduce the other 99 public addresses?</p>

<public-key>
If I have a public wallet address can I calculate its other wallet addresses?
patrick
# If I have a public wallet address can I calculate its other wallet addresses?

(Asked by: username_0 on 2021-11-05)

Lets say someone else generates 100 bitcoin addresses using the same private key. If know one of the public addresses, can I deduce the other 99 public addresses?

**Tags:** public-key


---

## 2 answers

### Answer by username_1 on 2021-11-06. Score: 2 | Accepted answer

Public keys are generated from a Private key in a one-way function. Public and private keys have a 1-to-1 relationship. A given private key can only generate one public key.

However, as specified in BIP 32, extended keys can be used to derive child keys (public keys). An extended private key (xprv) can derive many child private keys, each of which can derive a single public key.

This child key derivation (CKD) function is a one-way function, so child keys cannot be used to calculate their parents. Nor can child keys be used to calculate their sibling public keys.

Check out this article on wallets and public/private keys for more info and a visual explanation: <https://river.com/learn/terms/h/hd-wallet/>

Check out BIP 32, which has some useful graphics: <https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki>


---

### Answer by username_2 on 2021-11-05. Score: 0

Relationship between private and publiic keys is ( in practicality ) unidirectional and 1:1 so given an algorithm; a private key will always, generate the same public key.

There's an advanced concept, that has to do with your question and is deterministic wallets. Here private keys are created from a seed and there are scenarios where you could guess them from knowing one; but you would need to know the private key, not the public.


---

