BTC
ETH
HTX
SOL
BNB
View Market
简中
繁中
English
日本語
한국어
ภาษาไทย
Tiếng Việt

The most powerful number in the crypto world: 2²⁵⁶

Moni
Odaily资深作者
This article is about 3933 words, reading the full article takes about 6 minutes
"2 to the power of 256" is important because it is the entire "perceived" range of private key values ​​that cryptography may use in a blockchain.
AI Summary
"2 to the power of 256" is important because it is the entire "perceived" range of private key values ​​that cryptography may use in a blockchain.

This article comes fromDecentralize.today, original author: Sean

Odaily Translator |

Odaily Translator |

2²⁵⁶ is 2 to the 256th power.

What does this number represent for the blockchain and encryption industry?

00 = 0

01 = 1

10 = 2

11 = 3

We know that computers are based on binary digital calculations. The following is an example. If it is represented by two digits, the number on each bit can only be "0" or "1", then we can generate the following four possible combinations (note that we count from 0):

000 = 0

001 = 1

010 = 2

011 = 3

100 = 4

101 = 5

110 = 6

101 = 7

111 = 8

If the number of digits is 3, then there are nine possible binary combinations, namely "2 to the 3rd power", as follows:

115,792,089,237,316,195,423,570,985,008,687,907,853,269,984,665,640,564,039,457,584,007,913,129,639,936

If there are 256 digits, it means that there are "2 to the 256th power" possible binary combinations, which is also a very, very large number combination! So, what does "2 to the power of 256" look like in decimal? Please don't blink, the answer is:

In simple terms, it is 1.158x10⁷⁷ (that is, there are 74 0s behind 1158), that is, "1.158 times 10 to the 77th power".

If you can't intuitively understand how big "2 to the 256th power" is "1.158 times 10 to the 77th power", let's make a comparison here, which may give you a clearer understanding of the "terrible" of this number, In contrast:

1. The total amount of sand on the earth is only "7.5 times 10 to the 15th power";

2. In the "observable" universe, there are estimated to be "30 times 10 to the 21st power" to "70 times 10 to the 21st power" or "10 times 10 to the 23rd power" stars;

So, "2 to the 256th power" is 3.5 times the total number of stars in the observable universe, and only "a few zeros" less than the total number of atoms in the observable universe.

secondary title

Why is "2 to the 256th power" important? Because 256-bit encrypted private key security can be astronomical

"2 to the power of 256" is important because it is the entire "perceived" range of private key values ​​that cryptography may use in a blockchain.

In the cryptocurrency world, if you want to crack a 256-bit encrypted security system, you must guess a 256-bit bit string correctly, and you have to guess twice, the first time in the electronic signature, and the second time is when solving a cryptographic hash function.

For example, if you want to find a piece of information whose SHA256 hash is equal to some 256-bit bit string, there's basically no other way but to make random guesses and check the result -- which means, on average , you need to try "2 to the 256th power" times! (Unless you're very very very...well, lucky enough to have "2 to the 256th power" luck once)

The number "2 to the 256th power" is much larger than we usually encounter, so it's hard to appreciate its scale, but you can think of it as "2 to the 32th power multiplied by itself 8 times," which makes sense when you think of it this way, because "2 to the 32nd power" is roughly equal to 4 billion (4,294,967,296). Now, all we have to do is to experience the concept of multiplying 4 billion times 8 times in a row:

I'm sure most of us know that the GPU in a computer can do a lot of parallel computing very quickly, so if you specifically let the GPU repeatedly calculate cryptographic hash functions, a good GPU may be able to calculate close to 1 billion hashes per second Value, if you have a bunch of these GPUs, and then put them all into the computer, so that your computer can calculate 4 billion hash values ​​​​per second, then the first 4 billion represents the hash value calculated by each computer per second The number of hash values, imagine 4 billion computers fully loaded with GPUs - for comparison, although Google has not announced the number of their servers, some people estimate that there are several million, and in reality most of Google's server computing power They are not as good as our computers fully loaded with GPUs, but if we assume that Google replaces all of its millions of servers with computers fully loaded with GPUs, then 4 billion computers are roughly equivalent to 1,000 such "chicken-blooded" Googles. To explain it well, we temporarily call this computing power "thousand Google".

Now, the total population of the world is about 7.3 billion. Next, let's assume that 4 billion people have one of these "thousand Google" computers in their hands. Then, imagine that there are 4 billion earths (for comparison, the number of stars detected in the Milky Way is about 100-400 billion, although it is not certain, but the estimate is roughly in this range), so it is equivalent to 1% of the stars in the Milky Way There will be an Earth where more than half the population has their own "Thousand Google" computers.

By the way, the current hashing power of Bitcoin - adding up all the miners, can guess and verify 50 billion hash values ​​per second, which is only equivalent to the computing power of the "thousand Google" computer mentioned earlier. one third. Of course, this is not because there are billions of computers fully loaded with GPUs, but because miners use chips that are about 1,000 times more powerful than GPUs. It is tailor-made for Bitcoin mining, but this chip will not do anything but calculate the hash value based on the SHA256 algorithm. In other words, if you want to obtain huge computing power, you have to give up general computing needs and design an integrated circuit that can only perform a single task.

secondary title

Does every cryptocurrency have "2 to the power of 256" possible private keys?

432420386565659656852420866394968145599

Not quite, not all numbers in the "2 to the power of 256" range are used in the curve of numbers to find a matching public key. Bitcoin and Ethereum (and many other cryptocurrencies) use the secp256k1 elliptic curve, which first defines a public key matching range slightly smaller than "2 to the 256th power". If the number range of the secp256k1 elliptic curve is expressed slightly more accurately, the possible result is:

N=115792089237316195423570985008687907852837564279074904382605163141518161494336

2²⁵⁶-N = 432420386565659656852420866394968145599

According to the definition of the SEC2 standard, the key value range is from "0" to 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEBAAEDCE6AF48A03BBFD25E8CD0364141. Suppose we use "N" to represent this value, then express N in decimal:

(Odaily Jun o-daily Note: Briefly explain the meaning of "secp256k1", it is actually a combination of letters and numbers "SEC", "P", "256", "K" and "1", each All have different meanings: "SEC" represents the standard of SEC2 efficient cryptography, "P" represents that the curve coordinates are prime number fields, "256" represents that the prime number is 256 bits long, and "K" represents that it is a variable of the so-called Koblitz curve , "1" means it is the first and only curve standard of that type.)

secondary title

Hold on, besides Bitcoin, let's look at the keys of Ethereum

The Bitcoin address is RIPEMD-160 of the public address, RIPEMD is a cryptographic hash function released in 1996 by the COSIC research group composed of Hans Dobbertin, Antoon Bosselaers and Bart Prenee at the University of Leuven. RIPEMD is designed around the principles of MD4, and behaves similarly to the better known SHA-1. RIPEMD-160 is an improved 160-bit version of the original RIPEMD and is the most common version in the RIPEMD series. RIPEMD-160 is designed for use by the academic community, as opposed to the SHA-1 and SHA-2 algorithms. On the other hand, RIPEMD-160 is less used than SHA-1, so that may be one of the reasons why RIPEMD-160 is less frequently reviewed than SHA. In addition, RIPEMD-160 is not restricted by any patents.

There are also 128, 256, and 320 bit versions of this algorithm, called RIPEMD-128, RIPEMD-256, and RIPEMD-320. The 128-bit version is only intended to replace the original RIPEMD, which was also 128-bit and was found to have potential security issues. The 256 and 320-bit versions only reduce the probability of collisions, but do not improve the safety level. However, the designers of RIPEMD did not really design the two standards of 256 and 320 bits. They just modified the initial parameters and s-box on the basis of 128 bits and 160 bits to achieve the output of 256 and 320 bits. Yuan. Therefore, the strength of 256 bits is equivalent to that of 128, and the strength of 320 bits is equivalent to that of 160 bits, and RIPEMD is built on the basis of md, so the way of adding data is exactly the same as md5.

Ethereum reduced the key length to 160 bits, which is still a very large number, expressed in decimal:

2¹⁶⁰ = 1.46x10⁴⁸ or 1461501637330902918203684832716283019655932542976.

secondary title

Summarize

Summarize

ETH
BTC
Welcome to Join Odaily Official Community