Who approves my public key in Bitcoin network? 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
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.