Full Domain Hash Explained

In cryptography, the Full Domain Hash (FDH) is an RSA-based signature scheme that follows the hash-and-sign paradigm. It is provably secure (i.e., is existentially unforgeable under adaptive chosen-message attacks) in the random oracle model. FDH involves hashing a message using a function whose image size equals the size of the RSA modulus, and then raising the result to the secret RSA exponent.

Exact security of full domain hash

In the random oracle model, if RSA is

(t',\epsilon')

-secure, then the full domain hash RSA signature scheme is

(t,\epsilon)

-secure where,

\begin{align} t&=t'-(qhash+qsig+1)l{O}\left(k3\right)\\ \epsilon&=\left(1+

1
qsig
qsig+1
\right)

qsig\epsilon' \end{align}

.

For large

qsig

this reduces to

\epsilon\sim\exp(1)qsig\epsilon'

.

This means that if there exists an algorithm that can forge a new FDH signature that runs in time t, computes at most

qhash

hashes, asks for at most

qsig

signatures and succeeds with probability

\epsilon

, then there must also exist an algorithm that breaks RSA with probability

\epsilon'

in time

t'

.

References