CRHF + One-time signature ⇒ DS
Statement
A collision-resistant hash function and a one-time signature scheme yield a stateful many-time signature scheme: the public key is the root of a Merkle tree over one-time verification keys — a single -bit hash — and the -th signature is a one-time signature under the -th key together with that key and its authentication path of hashes, so signatures have size plus one one-time key and signature — Mer89.
Sketch
The reduction plants the one-time challenge key at a random leaf. A forgery under index either carries a verification key or authentication path other than the honest ones, and then it and the honest path hash to the same root, giving a collision at some tree node; or it carries the honest and path, and then its one-time signature, on a message never signed under , is a one-time forgery, against the challenge key when that leaf is .
Notes
- One-time signatures exist from one-way functions (OWF ⇒ One-time signatures (Lamport)) — Lam79.
- Universal one-way (target-collision-resistant) hash functions, obtainable from any one-to-one one-way function, suffice for many-time signatures — NY89.
- Any one-way function suffices for many-time signatures (OWF ⇒ DS) — Rom90.