"There is no dealer's gambling" Mathematical problem: On the application of trusted random numbers in the field of blockchain
Author: white jade discs
First, about random numbers
Random numbers, as an important basic scientific resource, are widely used and are the basis of cryptography, game, and scientific simulation.
The earliest understanding of random numbers began with casinos. A large number of classical mathematical problems involving random numbers correspond to everyday problems in casinos.
For example, the “probability theory” of modern insurance and the basic discipline of the bank comes from the question of “how two gamblers divide the gambling fairly”.
1, pseudo-random number (surface random number)
(1) Consensus in academia
With the deepening of scientific cognition, modern scientists have found that any random number generated by classical mechanics-based processes is not really random.
Because the randomness in the classical system is "surface randomness", it is only the probability combination of deterministic events. The reason why it exhibits randomness is because the observer does not fully understand the overall operating mechanism of the system.
(2) Computer and random number
Previously, the consensus in the global academic community was that "computer-generated random numbers are considered pseudo-random numbers."
It is generally believed that true random numbers can only be produced in quantum systems.
2, true random number (quantum random number)
(1) Quantum system and true random number
The state of microscopic particles has "intrinsic randomness", and its randomness is not caused by lack of understanding of the system, but by the inherent characteristics of microscopic particles.
With this intrinsic randomness, a true random number can be generated.
(2) Defects in practical applications
However, in practical applications, a cryptosystem is composed of multiple parties.
The true random number generated by a certain quantum device has only the "equal probability" feature, that is, the probability of occurrence of each bit 0 and 1 is equal, which cannot meet the requirements of a cryptosystem.
It is safe because the quantum device cannot be confirmed.
Therefore, in order to meet the security requirements of a cryptosystem, it must also have "independence."
That is, each bit is statistically independent of any other variable, including other bits and external variables in the random number.
In short, quantum devices that generate true random numbers must have absolute confidence. Under the premise that the device owner will cheat, the random number generated by the entire system can still be absolutely credible.
3, device-independent true random number
(1) You can get true random numbers without trusting quantum devices.
The device-independent quantum random number expansion method is used to implement the extension of the random number while ensuring that the extended new random number is trusted (ie, not associated with any external variables).
When using this scheme, even if the user does not trust the device vendor, it can be ensured that no one else knows anything about the random number generated by the user.
At present, the generation and verification of device-independent true random numbers is extremely expensive and not yet practical.
This includes experiments supported by the US Department of Defense a few years ago and experiments conducted by the Chinese Pan Jianwei team in 2018. Device-independent true random numbers can be generated in systems in a lab environment. But the cost is still not borne by any operating system, including military systems that do not cost, and cannot afford such costs.
Therefore, whether it is possible to fully exploit the quantum mechanical properties and design a better expansion scheme for various performance indicators, so that the equipment-independent true random number is lower in cost, more efficient, and more applicable, and is an important researcher of the world. direction.
Second, a very low cost, method to generate absolutely reliable device-independent random numbers
(1) Casino without a dealer
UOC found a way to generate fully trusted device-independent random numbers within any agreed range when solving a mathematical problem "no dealer's gambling."
This method, at very low cost, can generate a fully trusted device-independent random number in the cryptographic system, within any agreed range.
The random number generated by this method, we named it "trusted random number", related algorithm, we named it "MP.WJ algorithm"
(2) "There is no dealer's gambling" mathematics problem
This is a mathematical problem that has not been solved satisfactorily for many years.
Describe how to complete a fair and credible bet without a third-party dealer in a poker gambling game.
The mathematics problem, in 1979, the three RSA professors proposed an algorithm that can solve the problem, which is generally called the Mental Poker RSA algorithm by the mathematics community. But because of cost, efficiency, and application range, it has not been applied for many years.
The trusted random numbers we have implemented are widely used, not only in the blockchain domain, but also in all Internet and offline business environments that require high quality random numbers. Such as:
(1) Completely solved the major underlying technical problems of "blockchain pseudo-random number vulnerability";
(2) Supports a new consensus algorithm that is far more efficient than the POW consensus algorithm (on the premise of fairness and security);
(3) Completely solve the "plug-in" problem in most online games.
(4) It is absolutely impossible to cheat most of the gambling in offline casinos, and at the same time significantly reduce personnel costs.
(5) Let online casinos absolutely never cheat.
In 2018, UOC's trusted random number algorithm was verified by the mathematician Professor Qiu Chengtong and the co-founder of Shanda Group, Tan Qunzhen.
Third, the problem of pseudo-random number vulnerability in the field of blockchain
1, the computer has problems
In computers, only "pseudo-random numbers" can be generated all the time.
However, due to the closed nature of the centralized computer network system itself, its security issues are not easily exposed.
2, the blockchain field is particularly serious
In the blockchain project, because of its open code and open operating mechanism, the problem of pseudo-random numbers is particularly serious, and it is easy to be grasped by the pseudo-random number in advance.
However, because the current blockchain project is extremely simple, there are very few places where random numbers are used. So it has not been taken seriously by people.
Until 2018, with the increasing number of blockchain projects using pseudo-random numbers, the number of pseudo-random number vulnerabilities broke out more and more frequently, which attracted everyone's attention and proposed various compensation solutions.
3. There is no ready solution
But because of the root cause, it is the generation mechanism of pseudo-random numbers, which causes problems in the open and transparent blockchain operating environment.
Therefore, none of these remediation plans have been proven to be able to solve the problem fundamentally.
The Mental Poker algorithm, published by the inventor of the RSA algorithm in 1979, cannot solve the problem of blockchain pseudo-random number vulnerabilities.
4, the direction of complete resolution
In the computer network environment, the generation of "fully trusted device-independent random numbers" is the fundamental method to solve the "blockchain pseudo-random number vulnerability".
Fourth, the Talent Poker RSA algorithm
1, the previous algorithm
The problem of "there is no dealer's gambling". Before us, the most effective solution was the three inventors of the RSA algorithm, Ronald Linn Rivest, Adi Shamir, and Leonard Adleman, which were proposed in 1979 and called by the academic community. Mental Poker RSA algorithm."
However, the algorithm, because of its extremely low efficiency, high cost, and very narrow application, has only theoretically solved the problem, but has not landed in practical applications.
Some foreign blockchain projects have not succeeded in attempting to solve the blockchain pseudo-random number problem using the Mental Poker RSA algorithm.
EOS's Daniel Larimer, in response to the 2018 EOS pseudo-random number vulnerability problem, also proposed to use the algorithm to solve, but still failed to solve the problem.
In 2018, based on Ethereum's gambling game Dice2win, the algorithm was also adopted, but it was still exploited by hackers through pseudo-random number vulnerabilities.