A Choice In The Fundamental Basics of Bitcoin
Crypto-currency, or mainly Bitcoin, has become a household name. For the right reasons, obviously. It’s an aim and dream of taking the world from a centralized authority towards the freedom of decentralization.
However, this freedom comes at great complexities and costs of energy (in form of electricity), computational capacity, and intellectual brains behind the project.
As we appreciate the tremendous success of the crypto projects and their applications, let’s look at one of the most fundamental concepts behind it and the choices that were made.
One such choice is the – Satoshi secp256k1 graph curve.
What is it? Well, it sounds really complex, doesn’t it? In fact, it is. But in layman’s terms, let’s try to see what it relays.
At first, assuming we all know a bit of the basics of Bitcoin, we know how to create a Bitcoin wallet, how to buy Bitcoin, how to store, transfer, receive the coins. We know what a Bitcoin address looks like, and we all have heard about the word blockchain which we know is a public ledger that keeps records of the Bitcoin transactions!
Now, we also kinda know that, in order for us to mark and use a Bitcoin address as our own and use it for transactional purposes, we have to have the private keys for the wallet and to prevent unauthorized access to a wallet, the private keys must be secret, at the same time there must be a one-way process of deriving a public key (the Bitcoin wallet address is generated from it) from the private key.
So, technically, sepc256k1 is a type of elliptical graph that helps us do exactly the same.
It’s a curve on a graph that helps us compute a public key out of a private key, but ensures that anyone who knows a public key can’t just reverse the process to derive a private key. You see, lots of mathematics is involved right there!
Now, talking about a choice that was made by the legendary Satoshi Nakamoto (creator of Bitcoin), was, he chose a certain graph over another graph that is widely used.
Why The Choice And What Were The Competitions?
The choice was between the curves secp256k1 and secp256r1. The secp256k1 is a Koblitz (a famous mathematician) curve while the secp256r1 is a NIST plus NSA created and recommended prime field curve.
Without going into many technical complexities in both of them, let’s see the cover and index of the book.
The secp256r1 is generally used much more, and it’s also officially said to be “random”, it provides a constant speed for calculations and it also is recommended by the strongest agency in the world, believed to be much more secure. On the other hand, the secp256k1 is a known curve that isn’t random, has variable computational speeds, can giveaway some technical details at some point.
What did Satoshi choose?
He chose the secp256k1 curve rather than the other. As we discuss why, here’s the basic information about the curve and the variables he chose the value of :
P = 2^256-2^32-2^9-2^8-2^7-2^6-2^4-1
A = 0, B= 7 , G=02 79BE667E F9DCBBAC 55A06295 CE870B07
029BFCDB 2DCE28D9 59F2815B 16F81798
n=FFFFFFFFFFFFFFFF FFFFFFFF FFFFFFFE BAAEDCE6 AF48A03B BFD25E8C D0364141
h = 1 ;
for the computational purposes of the public keys.
Why did he choose this?
Well, for the same reason why secp256r1 was hailed for. Satoshi was skeptical of the recommendations made by the NSA to use the graph as he thought, there might be some backdoors created by NSA itself. Secondly, secp256k1 is a pure SECG curve that has received less scrutiny as compared to its competitor, and hence, a less attention-seeking choice was made.
Mainly, Satoshi did know the vulnerabilities of the secp256k1 and took it in the choice rather than going for the more secure one (of whose vulnerabilities he didn’t know and was skeptical about).
We can say that both graphs are very highly secure and are efficient, and unless one spends thousands of hours using a super quantum computer and also figure out what exactly they are trying to get when they try to break through the Bitcoin network, we are pretty much safe from any major attacks or exploitation of loopholes in the most fundamental basis of Bitcoin technology.