Lamport's one-time signature scheme
From CRYPTUTOR
Lamport's one-time signature scheme is a simple digital signature scheme for fixed-length messages, using a one-way function.
Construction
Let f be a one-way function. Lamport's scheme for
-bit messages (where
is a polynomial) is defined by the following algorithms:
- KeyGen: Take n as the security parameter of the scheme, and return:
-
, where each
is a randomly chosen n-bit string.
-
, where each
.
-
-
-
if and only if
for all i.
Note that the signature is much longer than the message.
It is clear that the correctness condition holds for this scheme -- i.e,
for all key pairs
.
Proof of security
We show that Lamport's scheme achieves the one-time unforgeability requirement for a digital signature scheme.
Let A be any adversary for the one-time unforgeability experiment, with success probability ε. We will show that this probability is negligible in n. We construct an inverting adversary A * for f as follows:
A * : Simulator for inverting f:
On input y, we wish to find x such that f(x) = y.
- Generate a key pair (SK,VK) for Lamport's scheme, but insert y into a random position in VK, (say,
for random
and
). Note that the distribution of keys is identical as in the unforgeability experiment, and independent of i and b.
- Simulate A. When it asks for a signature of message m,
- If mi = b, then exit (we don't have a preimage for
).
- Otherwise give the prescribed signature for m.
- When A outputs a final message/signature pair (m',σ),
- If m'i = mi, then exit.
- Otherwise, give σi as output (our guess for a preimage of y)
Assuming A * outputs a guess and A gave a valid forgery, the guess σi must be a preimage of y. The probability that we reach the final step is at least
, since A's behavior is independent of i and b (we must have chosen i to be one of the positions where m and m' will differ). The probability that A then gives a valid forgery is at least ε, so A * inverts f with probability at least
.
Since we assumed f was a OWF, this quantity is negligible in n. Since
is a polynomial, ε must be negligible, as desired.
for random
and
). Note that the distribution of keys is identical as in the unforgeability experiment, and independent of 
