Cryptography Stack Exchange is a question and answer site for software developers, mathematicians and others interested in cryptography. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

In the section 3 (page 44) of the book "Post Quantum Cryptography", it says:

Then each one-time signature key must be generated twice, once for the MSS public key generation and once during the signing phase.

Also defined $\text{PRNG}$: $\text{Seed}_{\text{in}} \rightarrow (RAND, SEED_{\text{out}})$, where $\text{RAND}$ is a random number.

Finally, it describes an example of MSS + W-OTS. Here, $\text{SEEDOTS}_j$ is used to generate signature key $X_j = (x_{t-1},...,x_0)$ where $x_i$ are generated on $(x_i, \text{SEEDOTS}_j)=PRNG(\text{SEEDOTS}_j)$.

My question: How is possible generate the same key for public key generation and during the signing phase, for each one-time signature key, if $x_i$ is random (by definition of $\text{PRNG}$)?

share|improve this question
Your post doesn't have the $\$$ symbols, and I can't quite tell where they should be. $\hspace{1.05 in}$ – Ricky Demer Jul 8 '13 at 0:33
@RickyDemer I edit my question – juaninf Jul 8 '13 at 0:43
up vote 1 down vote accepted

Probably it's possible because they are using a deterministic pseudorandom random number generator (PRNG) to generate these values, as a deterministic function of some seed, which is remembered by the holder of the private key.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.