If you naively implement this G * G * G...* G
method, you will have to perform an enormous number of operations until get your public key. For instance, if your public key is 2^128, you need to add G
to itself 2^128 times, this is computationally unfeasible. However, there is a more optimized algorithm for this, called Double and Add, which computes the public key with O(n) Double and Add step, where n
is the bit length of your private key.
However, as far as we know, there is no Deterministically Polynomial Time algorithm to go in the other way. If you go naively again, you'll subtract G
from your public key 2^128 times in the above example, until you're left with just G
. Again, unfeasible. There is a better algorithm, but is still sub-exponential, and takes an average of 2^128 operations to succeed in secp256k1 (technically O(srqt(n)), where n
is the curve order).
The short hawser is: Yes, you can reverse it, but for cryptographically secure keys, you'll need a WHILE until you succeed.
You can get bonuses upto $100 FREE BONUS when you:
π° Install these recommended apps:
π² SocialGood - 100% Crypto Back on Everyday Shopping
π² xPortal - The DeFi For The Next Billion
π² CryptoTab Browser - Lightweight, fast, and ready to mine!
π° Register on these recommended exchanges:
π‘ Binanceπ‘ Bitfinexπ‘ Bitmartπ‘ Bittrexπ‘ Bitget
π‘ CoinExπ‘ Crypto.comπ‘ Gate.ioπ‘ Huobiπ‘ Kucoin.
Comments