What is up to sale:
After 18 days of excessive work, I have today finished my hobby project:
It's a ECDSA private key cracker for the secp256k1 curve which is for example used in bitcoin.
What does this tool make better than others:
Existing Bitcoin Private Key crackers go through the whole palette of algorithms that are used in bitcoin - to mention some we have ECDSA, sha256, ripemd160 and base58 encoding.
Actually, we do not need to do most of them at all. My tool bases on elliptic curve cryptography only.
A known bitcoin public key has to be converted to hexadecimal and embedded into the software - then using elliptic curve mathematic only it can quite efficiently search through the search space.
Exact functioning:
- Keyspace is reduced in a precomputation phase by calculating several thousand rendezvous points (they are hardcoded in the software but may be changed at any time).
- This precomputation phase is inspired by the "Baby-Step-Giant-Step" algorithm.
- The target public key is then (using ecdsa arithmetic) reduced subseqentially until hitting one of the rendezvous point. Given G is the generator point, and R=x*G the rendezvous point (which private key is known),
we then may get the original privatekey by just taking PrivKey=x+iterations where iterations equals to the number of decrements were needed to hit R.