<p>Public keys do not need approval.</p>

<p>In the regular PKI setup, such as for SSL, trust is granted by Certificate Authorities. The implicit understanding is that if you have been endorsed by a known CA, they have verified you within certain parameters to be worthy of that endorsement. Similarly, in PGP's web of trust, the endorsements come from people, who have in turn been endorsed by other people.</p>

<p>In Bitcoin, such kinds of endorsements are not required. Bitcoin only uses public keys to lock coins, and to verify that they are being spent by the entity or person they were locked to. Thus, as long as you are able to prove you hold the private key corresponding to the public key, you can participate in the network.</p>

<p>There is little harm to a user generating multiple keys, so there are no controls to prevent it. It is simply not required.</p>

<p>Keys are generated over the secp256k1 curve using elliptic curve operations. </p>

CC BY-SA 4.0
2018-11-11T13:52:42.030Z
Thank you, yes of course in Bitcoin we do not need to generate more than one public key. However, if we assume that we want to control number of public keys owned by a user (because of any reason) do you think it is possible in a decentralized manner with keeping anonymity of the user? Thanks
Questioner
CC BY-SA 4.0
2018-11-11T17:44:58.693Z
I think you missed the point of Raghav's answer. There is *no* process for approving keys *at all*, because there is no need to prevent people from having multiple keys (in fact, that is very widely encouraged). You simply generate a new key and ask someone to send to it; you don't need to inform the network of your key or address in any way.
Pieter Wuille
CC BY-SA 4.0
2018-11-11T13:29:07.260Z
2018-11-11T13:29:07.260Z
Raghav Sood
<p>In a PKI approach a public key is approved by a Certificate Authority (CA) with a centralized manner. However, since Bitcoin network is a decentralized network, how my public key validity is approved? Or in general is there an approving process of public keys? And if not, it does not cause any security issues? And how a public/private key is generated in the Bitcoin network? And is there a way to prevent a user to generate too many public key in the Bitcoin network?</p>

<p>Thanks  </p>

<private-key><public-key>
Who approves my public key in Bitcoin network?
Questioner
# Who approves my public key in Bitcoin network?

(Asked by: username_0 on 2018-11-11)

In a PKI approach a public key is approved by a Certificate Authority (CA) with a centralized manner. However, since Bitcoin network is a decentralized network, how my public key validity is approved? Or in general is there an approving process of public keys? And if not, it does not cause any security issues? And how a public/private key is generated in the Bitcoin network? And is there a way to prevent a user to generate too many public key in the Bitcoin network?

Thanks

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


---

## 1 answers

### Answer by username_1 on 2018-11-11. Score: 2

Public keys do not need approval.

In the regular PKI setup, such as for SSL, trust is granted by Certificate Authorities. The implicit understanding is that if you have been endorsed by a known CA, they have verified you within certain parameters to be worthy of that endorsement. Similarly, in PGP's web of trust, the endorsements come from people, who have in turn been endorsed by other people.

In Bitcoin, such kinds of endorsements are not required. Bitcoin only uses public keys to lock coins, and to verify that they are being spent by the entity or person they were locked to. Thus, as long as you are able to prove you hold the private key corresponding to the public key, you can participate in the network.

There is little harm to a user generating multiple keys, so there are no controls to prevent it. It is simply not required.

Keys are generated over the secp256k1 curve using elliptic curve operations.

> **Comments:**
> **username_0**: Thank you, yes of course in Bitcoin we do not need to generate more than one public key. However, if we assume that we want to control number of public keys owned by a user (because of any reason) do you think it is possible in a decentralized manner with keeping anonymity of the user? Thanks  
> **username_2**: I think you missed the point of username_1's answer. There is *no* process for approving keys *at all*, because there is no need to prevent people from having multiple keys (in fact, that is very widely encouraged). You simply generate a new key and ask someone to send to it; you don't need to inform the network of your key or address in any way.  

---

