When will the limit be reached?.
When will the limit be reached?
The proposed article once again returns us to the question of the necessary key length for symmetric encryption algorithms. Despite the fact that this topic has already been widely covered in the press, the author of this work examines it in a new, somewhat unexpected plane, although it is of purely theoretical interest.
The age of the Universe is estimated at 20 billion years. The Earth is 4.5 billion years old, monkeys turned into humans 10,000 years ago, and people have known the art of cryptography for about 3,000 years. Finally, only 55 years separate us from the appearance of the first computer. Just 20 years ago, encryption algorithms with a key length of 56 bits met the most demanding requirements, but today their level of reliability is determined by at least 75 bits, and according to authoritative estimates, in 20 years this bar will rise to 90. Nevertheless, algorithms with a key length of 128, 168 and 256 bits already exist.
Let's ask ourselves: if the Sun shines for another 100 million years, what number will the key length be measured in by the time it goes out? After all, figuratively speaking, to date, human civilization has only taken the first step of a 10-kilometer journey in its development!
It is logical to assume that the key length cannot increase indefinitely. At least because the speed of light as the maximum speed of information transfer is not infinite, and the mass of the Universe is not infinite, and therefore the number of atoms in it, using which information can be recorded, is not infinite. That is, those factors are finite that, in all likelihood, will put an end to further increases in the key length for encryption algorithms. As far as the author knows, such an approach to the issue under consideration has not been previously discussed in open research and may be of independent interest. Let us therefore try to construct several upper estimates for the maximum key length, based on the simplest information from the Great Soviet Encyclopedia and a number of other encyclopedic publications.
One of the estimates of the maximum key length for ideal encryption algorithms is related to the definition of the maximum processor speed, based on the seemingly paradoxical assertion that the smaller the processor size, the higher the processor speed. Let us introduce the following notations: V is the speed of light in a vacuum — 3*10^8 m; R is the size of atoms — 10^(-10) m.
Let's assume that the processor and the atom are the same size. Then, in our notation, the performance of a hypothetical processor will be expressed by the formula V/R=3*10^18 — this is how many times in 1 second light will travel a distance equal to the size of an atom. Considering that there are approximately 31,536,000 seconds in a year, during this time interval our hypothetical processor will perform 9.46*10^25 operations, that is, it will be able to perform a complete enumeration of a key sequence up to 86.4 bits long. A faster processor is impossible in principle, therefore, faster decryption by the method of total enumeration of keys is also fundamentally impossible!
One such processor is approximately equal in performance to the simultaneous operation of three million Intel ASCI Red supercomputers (the exact value is 2,999,746.3).
If we assume that the cipher must be guaranteed against hacking for 100 years, then during the specified period the hypothetical processor will perform 10^28 operations or will be able to sort through 10^28 keys, provided that it processes one key in one cycle of its work. Translated into the language of bits, the length of the disclosed key will be about 93 bits.
Conclusion: all keys longer than 93 bits guarantee the stability of the cipher for 100 years, and the introduction of excess length only slows down the encryption and decryption processes.
It is obvious that it is possible to speed up the process of processing key sequences only by: — reducing the size of the atom — increasing the speed of light — increasing the number of processors in the system
The subtleties of engineering implementation of the first two methods are the work of God, and we will not deprive him of the tempting opportunity to change the world constants. The last method means that the speed function qualitatively changes its growth pattern from exponential to linear, and the computing power of the hypothetical system will be determined only by how many processors a group of interested persons can use to implement their intentions.
However, we note that the increase in the number of processors in the system cannot be infinite either. For our planet, the natural limit is the area of the earth's surface. If we express the surface of the globe (including oceans, deserts, the Arctic and Antarctica) in square millimeters and place a million superprocessors on each millimeter, the power of such a computing device will be 5.1*10^52 operations per year, which is equivalent to a key length of 175-176 bits. In 100 years of continuous operation, which we have defined as a sufficient period of algorithm stability, the system will be able to try 5*10^54 keys or perform a successful force attack on a 181-182-bit key. And this is provided that the computing resources of the processors are fully focused on solving the task at hand and no part of them is spent on coordinating work in the system (in multiprocessor systems, this usually takes about 20% of the power of each processor.
There can only be one conclusion — it is practically impractical to create encryption algorithms with a «cosmic» key length. The introduction of excess bits is permissible to compensate for shortcomings in the cryptographic resistance of real systems.
The second estimate, which due to its obvious unattainability can only be of theoretical interest, follows from the following considerations: the mass of the Universe is approximately 10^50 grams, and almost all of it consists of hydrogen. In 1 gram of hydrogen there are approximately 6*10^23 atoms. If we assume that the recording density of a key/atom will be achieved at some point in the future, it becomes obvious that the Universe can contain 6*10^73 keys. The key length in this case will be 245.08 bits.
With a more realistic recording density of bits/atom, the number of possible keys will decrease slightly and will be 2.53*10^71, and the key length will be 273.2 bits.
In order to enumerate all these keys at the speed of a hypothetical processor, it would take 6*10^47 years in the case of «key/atom» and 6*10^45 years in the case of «bit/atom». The «Planet Earth» system described above would need 1.2*10^21 years and 5*10^18 years, respectively, to implement the enumeration.
Let's consider another, more down-to-earth option based on the financial aspect of the problem. Obviously, every state allocates a certain part of its material resources to work related to decryption and, as a result, has a certain computing potential. To achieve maximum computing power, the state must direct all its income to the implementation of a specific cryptographic task. Having data on the income of a certain state (a potential enemy), as well as on the cost of one computer operation, it is possible to determine the key length that it can handle today.
For simplicity, we will not take into account in these calculations the cost of electricity consumed by computing devices, human resources, premises, organizational work required to conduct such large-scale events, the costs of creating and optimizing software, as well as the desire of taxpayers to finance such a project, etc.
Country | Gold reserves (tons) | Foreign exchange reserves (billions of dollars) | Amount (billions of dollars) | Intel ASCI Red | Keys per year | Key length (bits) |
USA | 8142.6 | 75.71 | 157.14 | 2857 | 9*10^22 | 76.3 |
Japan | 753.6 | 143.55 | 151.1 | 2747 | 8.66*10^22 | 76.3 |
Germany | 2865.3 | 82.05 | 110.7 | 2012.7 | 6.35*10^22 | 75.7 |
China | 395.0 | 59.35 | 63.3 | 1151 | 3.63*10^22 | 74.9 |
Great Britain | 1198.4 | 41 | 53 | 963.63 | 3*10^22 | 74, 7 |
France | 2545.8 | 26.62 | 52.1 | 947.3 | 3 *10^22 | 74.7 |
Italy | 2073.7 | 28.24 | 49 | 891 | 2 ,8*10^22 | 74.4 |
Netherlands | 1081.5 | 37.49 | 48.3 | 878.2 | 2.8*10^22 | 74.4 |
Switzerland | 2590.3 | 32 | 57.9 | 507.3 | 1.6*10^22 | 73.7 |
Russia | 241.3 | 10.09 | 12.5 | 227.3 | 0.72*10^22 | 72.6 |
Gold and foreign exchange reserves of individual countries according to international financial statistics (as of 1995, Trud newspaper, October 19, 1995)
The table below shows the size of gold and foreign exchange reserves of the ten richest countries in the world. The cost of one gram of gold in the calculations was taken to be equal to 10 dollars. Based on the fact that the cost of one Intel ASCI Red supercomputer is 55 million dollars, column 5 shows the number of them that a particular country can afford to purchase. The resulting possibilities for solving cryptographic problems are reflected in columns 6 and 7.
It is possible that during the past period there have been some changes in the indicators characterizing the financial capabilities of the world's leading countries, however, they were unlikely to be so significant as to significantly affect the final result.
In conclusion, I would like to say the following: the issues of coexistence of society and information technology in the modern world have arisen relatively recently, and it is not always obvious that they are often based not only on political or technical factors, but also on physical laws. The prospects for their scientific resolution are associated with the awareness of the limitations imposed by the laws of nature. Moreover, these limitations will not be anthropomorphic, based on the clock frequency of processors and the speed of computers, not on such momentary and historically variable factors as the subjective assessment by the country's leadership of the importance of state secrets or the tension of the international situation, but necessarily fundamental (insurmountable), based on natural laws, on the constants of our Universe.
In relation to the issue under consideration, it should be noted that the use of cryptographic means of information protection by humanity is not an end in itself, but is in demand by society only to the extent that they can bring practical benefits or allow avoiding losses, which is ultimately expressed in specific cost indicators.
Therefore, it is always interesting to know what is the average cost of one sign of encrypted and decrypted information? What part of their national income do developed countries direct to solving cryptographic problems? Are the organizations supervising these issues profitable, or are they obviously unprofitable? It is clear that these issues are most likely a state secret, but they cannot but interest researchers. Of greatest interest could be a comparative analysis of such data for different countries with the aim of scientifically determining (justifying) the necessary and sufficient share of such costs depending on the amount of resources to be protected in combination with the available capabilities.