Next-bit Test
   HOME

TheInfoList



OR:

In
cryptography Cryptography, or cryptology (from grc, , translit=kryptós "hidden, secret"; and ''graphein'', "to write", or ''-logia'', "study", respectively), is the practice and study of techniques for secure communication in the presence of adver ...
and the
theory of computation In theoretical computer science and mathematics, the theory of computation is the branch that deals with what problems can be solved on a model of computation, using an algorithm, how efficiently they can be solved or to what degree (e.g., a ...
, the next-bit test
Andrew Chi-Chih Yao Andrew Chi-Chih Yao (; born December 24, 1946) is a Chinese computer scientist and computational theorist. He is currently a professor and the dean of Institute for Interdisciplinary Information Sciences (IIIS) at Tsinghua University. Yao used ...

Theory and applications of trapdoor functions
In Proceedings of the 23rd IEEE Symposium on Foundations of Computer Science, 1982.
is a test against pseudo-random number generators. We say that a sequence of bits passes the next bit test for at any position i in the sequence, if any attacker who knows the i first bits (but not the seed) cannot predict the (i+1)st with reasonable computational power.


Precise statement(s)

Let P be a polynomial, and S=\ be a collection of sets such that S_k contains P(k)-bit long sequences. Moreover, let \mu_k be the
probability distribution In probability theory and statistics, a probability distribution is the mathematical function that gives the probabilities of occurrence of different possible outcomes for an experiment. It is a mathematical description of a random phenomenon i ...
of the strings in S_k. We now define the next-bit test in two different ways.


Boolean circuit formulation

A predicting collection
Manuel Blum Manuel Blum (born 26 April 1938) is a Venezuelan-American computer scientist who received the Turing Award in 1995 "In recognition of his contributions to the foundations of computational complexity theory and its application to cryptography and ...
and
Silvio Micali Silvio Micali (born October 13, 1954) is an Italian computer scientist, professor at the Massachusetts Institute of Technology and the founder of Algorand. Micali's research centers on cryptography and information security. In 2012, he received ...
, How to generate cryptographically strong sequences of pseudo-random bits, in SIAM J. COMPUT., Vol. 13, No. 4, November 1984
C=\ is a collection of
boolean circuits In computational complexity theory and circuit complexity, a Boolean circuit is a mathematical model for combinational digital logic circuits. A formal language can be decided by a family of Boolean circuits, one circuit for each possible input ...
, such that each circuit C_k^i has less than P_C(k) gates and exactly i inputs. Let p_^C be the probability that, on input the i first bits of s, a string randomly selected in S_k with probability \mu_k(s), the circuit correctly predicts s_, i.e. :
p_^C= \left s\in S_k\text\mu_k(s)
Now, we say that \_k passes the next-bit test if for any predicting collection C, any polynomial Q :
p_^C<\frac+\frac


Probabilistic Turing machines

We can also define the next-bit test in terms of
probabilistic Turing machines In theoretical computer science, a probabilistic Turing machine is a non-deterministic Turing machine that chooses between the available transitions at each point according to some probability distribution. As a consequence, a probabilistic Turi ...
, although this definition is somewhat stronger (see
Adleman's theorem In computational complexity theory, P/poly is a complexity class representing problems that can be solved by small circuits. More precisely, it is the set of formal languages that have polynomial-size circuit families. It can also be defined equiva ...
). Let \mathcal M be a probabilistic Turing machine, working in polynomial time. Let p_^ be the probability that \mathcal M predicts the (i+1)st bit correctly, i.e.
p_^= s\in S_k\text\mu_k(s)/math>
We say that collection S=\ passes the next-bit test if for all polynomial Q, for all but finitely many k, for all 0:
p_^<\frac+\frac


Completeness for Yao's test

The next-bit test is a particular case of
Yao's test In cryptography and the theory of computation, Yao's test is a test defined by Andrew Chi-Chih Yao in 1982, Andrew Chi-Chih YaoTheory and applications of trapdoor functions In Proceedings of the 23rd IEEE Symposium on Foundations of Computer Scienc ...
for random sequences, and passing it is therefore a
necessary condition In logic and mathematics, necessity and sufficiency are terms used to describe a conditional or implicational relationship between two statements. For example, in the conditional statement: "If then ", is necessary for , because the truth of ...
for passing
Yao's test In cryptography and the theory of computation, Yao's test is a test defined by Andrew Chi-Chih Yao in 1982, Andrew Chi-Chih YaoTheory and applications of trapdoor functions In Proceedings of the 23rd IEEE Symposium on Foundations of Computer Scienc ...
. However, it has also been shown a
sufficient condition In logic and mathematics, necessity and sufficiency are terms used to describe a conditional or implicational relationship between two statements. For example, in the conditional statement: "If then ", is necessary for , because the truth of ...
by Yao. We prove it now in the case of the probabilistic Turing machine, since
Adleman Adleman is a surname. Notable people with the surname include: * Leonard Adleman (born 1945), American theoretical computer scientist and professor of computer science and molecular biology * Robert H. Adleman (1919–1995), American novelist and h ...
has already done the work of replacing randomization with non-uniformity in
his theorem His or HIS may refer to: Computing * Hightech Information System, a Hong Kong graphics card company * Honeywell Information Systems * Hybrid intelligent system * Microsoft Host Integration Server Education * Hangzhou International School, i ...
. The case of Boolean circuits cannot be derived from this case (since it involves deciding potentially undecidable problems), but the proof of Adleman's theorem can be easily adapted to the case of non-uniform Boolean circuit families. Let \mathcal M be a distinguisher for the probabilistic version of Yao's test, i.e. a probabilistic Turing machine, running in polynomial time, such that there is a polynomial Q such that for infinitely many k
, p_^-p_^, \geq\frac
Let R_=\. We have: R_=\^ and R_=S_k. Then, we notice that \sum_^, p_^-p_^, \geq , p^_-p^_, =, p_^-p_^, \geq\frac. Therefore, at least one of the , p_^-p_^, should be no smaller than \frac. Next, we consider probability distributions \mu_ and \overline on R_. Distribution \mu_ is the probability distribution of choosing the i first bits in S_k with probability given by \mu_k, and the P(k)-i remaining bits uniformly at random. We have thus:
\mu_(w_1\ldots w_)=\left(\sum_\mu_k(s)\right)\left(\frac\right)^
\overline(w_1\ldots w_)=\left(\sum_\mu_k(s)\right)\left(\frac\right)^
We thus have \mu_=\frac(\mu_+\overline) (a simple calculus trick shows this), thus distributions \mu_ and \overline can be distinguished by \mathcal M. Without loss of generality, we can assume that p^_-p^_\geq\frac+\frac, with R a polynomial. This gives us a possible construction of a Turing machine solving the next-bit test: upon receiving the i first bits of a sequence, \mathcal N pads this input with a guess of bit l and then P(k)-i-1 random bits, chosen with uniform probability. Then it runs \mathcal M, and outputs l if the result is 1, and 1-l else.


References

{{DEFAULTSORT:Next-Bit Test Pseudorandom number generators