Cryptography Landscape AtlasDigital Signatures
Overview

Digital signatures

A signer holding a secret key produces signatures that anyone can check against the matching public key, and no one else can produce a valid signature on a new message.

What it is

A signature scheme has three algorithms. KeyGen outputs a public verification key and a secret signing key. Sign uses the secret key to produce a signature on a message. Verify uses the public key to accept or reject a message–signature pair, and honestly generated signatures must be accepted. The standard security notion is existential unforgeability under adaptive chosen-message attack (EUF-CMA): an adversary that may request signatures on messages of its choice cannot output a valid signature on any message it did not query (). RSA gave the first public-key signature construction (), but unpadded RSA signatures are not EUF-CMA secure.

Core notions

  • EUF-CMA and SUF-CMA: strong unforgeability (SUF-CMA) also forbids a new signature on a message that was already signed.
  • One-time and many-time: a one-time signature is secure for a single message; Lamport's scheme needs only a one-way function ().
  • Stateful versus stateless: a Merkle tree authenticates many one-time keys under one root, but the signer must remember which keys it has used (); a stateless scheme needs no such memory ().
  • Proof model: standard model; random-oracle model (ROM), where a hash function is modelled as a random function; quantum ROM (QROM), where the adversary may query the hash in superposition.
  • Hash-and-sign versus Fiat–Shamir: hash-and-sign applies a trapdoor function to a hash of the message (, ). Fiat–Shamir turns an identification protocol into a signature by hashing the commitment and the message into the challenge ().
  • Nonces and sampling: randomized signing must keep its per-signature randomness secret and well distributed; deterministic nonces remove a common failure (). Lattice signers must also avoid leaking the key through the signature distribution, by rejection sampling or trapdoor Gaussian sampling.
  • Tightness: how much security a reduction loses relative to the underlying assumption.

Main approaches

  • RSA and factoring: the randomized PSS encoding in the ROM () and standard-model signatures under strong RSA ().
  • Discrete logarithms: Schnorr signatures via Fiat–Shamir () and Ed25519 (). ECDSA is not a Fiat–Shamir scheme; its proofs idealize part of the conversion function () or the group (). FIPS 186-5 specifies RSA, ECDSA, and EdDSA and keeps DSA for verification only ().
  • Pairings: signatures of one group element in the ROM () and short signatures without random oracles under q-SDH ().
  • Hash-based: from Lamport and Merkle to the stateless SPHINCS+ hypertree (), standardized as SLH-DSA (). They rest on hash functions alone, but SLH-DSA signatures are 7,856 bytes or more.
  • Lattice hash-and-sign: GPV trapdoor preimage sampling (), instantiated over NTRU lattices in Falcon ().
  • Lattice Fiat–Shamir with aborts: rejection sampling hides the secret without a trapdoor (); Gaussian rejection sampling then gives SIS- and LWE-based signatures of norm (), leading to Dilithium (), standardized as ML-DSA ().
Notation used in the comparison table

Parameters below occur in efficiency or security bounds. Each meaning is scoped to its stated regime. Measured quantities are named in words; protocol objects are defined where used. Source aliases do not equate different regimes.

SymbolMeaningRegimePaper aliases
λComputational security parameter.Signature security and random-oracle lower bounds.No paper spelling asserted.
qCoefficient modulus.Lattice signatures. writes q
nLattice dimension or polynomial degree, as specified by the construction.Lattice bounds: dimension or polynomial degree. ECDSA body text separately defines the group order; these parameters are not equated. writes n; writes n
kModule row rank.Dilithium parameters. writes k
ℓModule column rank.Dilithium parameters. writes ℓ
qsAdversary signing-oracle query count.Unforgeability reductions.No paper spelling asserted.
qhAdversary hash-oracle query count.Unforgeability reductions.No paper spelling asserted.
εForgery advantage in the stated game.Security reductions.No paper spelling asserted.

This topic covers publicly verifiable signatures under one signing key: RSA, discrete-log and Schnorr-type, pairing-based, hash-based, and lattice signatures. MACs and identity-based, blind, ring, group, and other specialized signatures are separate functionalities; multisignatures and aggregate signatures are adjacent; threshold signatures have their own topic.