The forking lemma is any of a number of related
lemmas 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 adve ...
research. The lemma states that if an adversary (typically a
probabilistic Turing machine
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 Turin ...
), on inputs drawn from some
distribution Distribution may refer to:
Mathematics
*Distribution (mathematics), generalized functions used to formulate solutions of partial differential equations
*Probability distribution, the probability of a particular value or value range of a varia ...
, produces an output that has some property with
non-negligible probability
Probability is the branch of mathematics concerning numerical descriptions of how likely an Event (probability theory), event is to occur, or how likely it is that a proposition is true. The probability of an event is a number between 0 and ...
, then with non-negligible probability, if the adversary is re-run on new inputs but with the same
random tape
In common usage, randomness is the apparent or actual lack of pattern or predictability in events. A random sequence of events, symbols or steps often has no order and does not follow an intelligible pattern or combination. Individual rando ...
, its second output will also have the property.
This concept was first used by
David Pointcheval and
Jacques Stern
Jacques Stern (born 21 August 1949) is a cryptographer, currently a professor at the École Normale Supérieure. He received the 2006 CNRS Gold medal. His notable work includes the cryptanalysis of numerous encryption and signature schemes, t ...
in "Security proofs for signature schemes," published in the proceedings of
Eurocrypt 1996.
[Adam Young and Moti Yung, "Malicious Cryptography: Exposing Cryptovirology", Wiley press, 2004, pp. 344.] In their paper, the forking lemma is specified in terms of an adversary that attacks a
digital signature
A digital signature is a mathematical scheme for verifying the authenticity of digital messages or documents. A valid digital signature, where the prerequisites are satisfied, gives a recipient very high confidence that the message was created b ...
scheme instantiated in the
random oracle model. They show that if an adversary can forge a signature with non-negligible probability, then there is a non-negligible probability that the same adversary with the same random tape can create a second forgery in an attack with a different random oracle. The forking lemma was later generalized by
Mihir Bellare and Gregory Neven.
[ Mihir Bellare and Gregory Neven,]
Multi-Signatures in the Plain Public-Key Model and a General Forking Lemma
, Proceedings of the 13th Association for Computing Machinery
The Association for Computing Machinery (ACM) is a US-based international learned society for computing. It was founded in 1947 and is the world's largest scientific and educational computing society. The ACM is a non-profit professional member ...
(ACM) Conference on Computer and Communications Security (CCS), Alexandria, Virginia
Alexandria is an independent city in the northern region of the Commonwealth of Virginia, United States. It lies on the western bank of the Potomac River approximately south of downtown Washington, D.C.
In 2020, the population was 159,467. ...
, 2006, pp. 390–399. The forking lemma has been used and further generalized to prove the security of a variety of digital signature schemes and other random-oracle based cryptographic constructions.
Statement of the lemma
The generalized version of the lemma is stated as follows.
Let ''A'' be a probabilistic algorithm, with inputs (''x'', ''h''
1, ..., ''h''
''q''; ''r'') that outputs a pair (''J'', ''y''), where ''r'' refers to the random tape of ''A'' (that is, the random choices A will make). Suppose further that ''IG'' is a probability distribution from which ''x'' is drawn, and that ''H'' is a set of size ''h'' from which each of the ''h
i'' values are drawn according to the
uniform distribution
Uniform distribution may refer to:
* Continuous uniform distribution
* Discrete uniform distribution
* Uniform distribution (ecology)
* Equidistributed sequence In mathematics, a sequence (''s''1, ''s''2, ''s''3, ...) of real numbers is said to be ...
. Let acc be the probability that on inputs distributed as described, the ''J'' output by ''A'' is greater than or equal to 1.
We can then define a "forking algorithm" ''F
A'' that proceeds as follows, on input ''x'':
# Pick a random tape ''r'' for ''A''.
# Pick ''h''
1, ..., ''h''
''q'' uniformly from ''H''.
# Run ''A'' on input (''x'', ''h''
1, ..., ''h''
''q''; ''r'') to produce (''J'', ''y'').
# If ''J'' = 0, then return (0, 0, 0).
# Pick ''h'
J, ..., h'
q'' uniformly from ''H''.
# Run ''A'' on input (''x'', ''h''
1, ..., ''h''
''J''−1, ''h''
'''J'', ..., ''h''
'''q''; ''r'') to produce (''J''
', ''y''
').
# If ''J' '' = ''J'' and ''h
J'' ≠ ''h'
J'' then return (1, ''y'', ''y''
'), otherwise, return (0, 0, 0).
Let frk be the probability that ''F
A'' outputs a triple starting with 1, given an input ''x'' chosen randomly from ''IG''. Then
:
Intuition
The idea here is to think of ''A'' as running two times in related executions, where the process "
forks" at a certain point, when some but not all of the input has been examined. In the alternate version, the remaining inputs are re-generated but are generated in the normal way. The point at which the process forks may be something we only want to decide later, possibly based on the behavior of ''A'' the first time around: this is why the lemma statement chooses the branching point (''J'') based on the output of ''A''. The requirement that ''h
J'' ≠ ''h'
J'' is a technical one required by many uses of the lemma. (Note that since both ''h
J'' and ''h'
J'' are chosen randomly from ''H'', then if ''h'' is large, as is usually the case, the probability of the two values not being distinct is extremely small.)
Example
For example, let ''A'' be an algorithm for breaking a
digital signature
A digital signature is a mathematical scheme for verifying the authenticity of digital messages or documents. A valid digital signature, where the prerequisites are satisfied, gives a recipient very high confidence that the message was created b ...
scheme in the
random oracle model. Then ''x'' would be the public parameters (including the public key) ''A'' is attacking, and ''h
i'' would be the output of the random oracle on its ''i''th distinct input. The forking lemma is of use when it would be possible, given two different random signatures of the same message, to solve some underlying hard problem. An adversary that forges once, however, gives rise to one that forges twice on the same message with non-negligible probability through the forking lemma. When ''A'' attempts to forge on a message ''m'', we consider the output of ''A'' to be (''J'', ''y'') where ''y'' is the forgery, and ''J'' is such that ''m'' was the ''J''th unique query to the random oracle (it may be assumed that ''A'' will query ''m'' at some point, if ''A'' is to be successful with non-negligible probability). (If ''A'' outputs an incorrect forgery, we consider the output to be (0, ''y'').)
By the forking lemma, the probability (''frk'') of obtaining two good forgeries ''y'' and ''y' '' on the same message but with different random oracle outputs (that is, with ''h
J ≠ h'
J'') is non-negligible when ''acc'' is also non-negligible. This allows us to prove that if the underlying hard problem is indeed hard, then no adversary can forge signatures.
This is the essence of the proof given by Pointcheval and Stern for a modified
ElGamal signature scheme
The ElGamal signature scheme is a digital signature scheme which is based on the difficulty of computing discrete logarithms. It was described by Taher Elgamal in 1985. (conference version appeared in CRYPTO'84, pp. 10–18)
The ElGamal signature ...
against an adaptive adversary.
Known issues with application of forking lemma
The reduction provided by the forking lemma is not tight. Pointcheval and Stern proposed security arguments for Digital Signatures and Blind Signature using Forking Lemma.
Claus P. Schnorr
Claus-Peter Schnorr (born 4 August 1943) is a German mathematician and cryptography, cryptographer.
Life
He received his Doctor of Philosophy, Ph.D. from the Saarland University, University of Saarbrücken in 1966, and his habilitation in 1970 ...
provided an attack on blind Schnorr signatures schemes, with more than
concurrent executions (the case studied and proven secure by Pointcheval and Stern). A polynomial-time attack, for
concurrent executions, was shown in 2020 by Benhamouda, Lepoint, Raykova, and Orrù.
Schnorr also suggested enhancements for securing blind signatures schemes based on
discrete logarithm
In mathematics, for given real numbers ''a'' and ''b'', the logarithm log''b'' ''a'' is a number ''x'' such that . Analogously, in any group ''G'', powers ''b'k'' can be defined for all integers ''k'', and the discrete logarithm log' ...
problem.
[C.P. Schnorr, "Enhancing the security than of perfect blind DL-signatures," Information Sciences, Elsevier, Vol. 176, pp 1305--1320, 2006]
Available on Internet
References
{{DEFAULTSORT:Forking Lemma
Cryptography