Post
Topic
Board Development & Technical Discussion
Re: There are more private keys than addresses ?
by
bigvito19
on 22/01/2021, 16:32:28 UTC
EDIT: I say too much and take too long to type. o_e_i_e_o has responded with mostly thee same response, only faster.  I'll leave this here just in case anyone finds that it adds any interest.
why every  bitcoin public address have 2^96 private key

Because with a version 1 P2PKH address there are approximately 2256 unique private-public key pairs. An address is based on a RIPEMD160 HASH of the public key (actually a RIPEMD160 HASH of a SHA256 HASH of a public key) resulting in 2160 unique version 1 P2PKH addresses.

2256 keys divided by 2160 addresses equals an average of about 296 private keys PER address.

and  how can i find my  (2^96- 1) private key for my bitcoin public address?

To find just 1 of those private keys...
  • Acquire access to enough computing power to calculate addresses from 1010 private keys per second.
  • Run that computing power continuously for (on average) 2.3 * 1030 years

To find ALL of those private keys...
  • Acquire access to enough computing power to calculate addresses from 1010 private keys per second.
  • Run that computing power continuously for (on average) 1.8 * 1059 years

Alternatively...

  • Study advanced mathematics
  • Become the top expert in the entire world in the mathematics related to ECDSA, SHA256, and RIPEMD160
  • Discover a mathematical weakness that nobody else in the world has ever discovered related to those algorithms
  • Use that mathematical weakness to calculate your private keys

since Elliptical curve private key and public key has 1:1 ratio, and that public key is encoded & hashed with some operation to get bitcoin public address.

Correct.

also is it possible to encrypt message with bitcoin public address and then decrypt with private key which is generated by ECC.

Don't bother. It's not worth the effort.  There are better systems to encrypt and decrypt messages. I believe that some have created some software to do it (with the public key, it can't be done with the address), but I wouldn't use any of it.

You already know that its software that find keys with the public key

https://bitcointalk.org/index.php?topic=5244940.0
https://bitcointalk.org/index.php?topic=5304368.0
https://github.com/JeanLucPons/Kangaroo
https://github.com/JeanLucPons/BSGS
https://github.com/WanderingPhilosopher/BSGS