Are there conditions on the definition of cryptographically secure pseudo random number generators that require distinct seeds to generate distinct (periodic) sequences? What if a generator has the property that two distinct seeds generate the same sequence, but the generator is provably secure? Can this property be ignored then or is it a requirement that distinct seeds generate distinct pseudo random sequences?
CSPRNG, finding two seeds that generate the same sequence should be difficult as finding two strings with the same hash. Similarly if someone can find these two strings, then this
CSPRNG must be deprecated, cause the entropy should be so large enough so that the probability of finding this "collision" is negligible.
Two very important properties should be accomplished by a CSPRNG:
The next bit test: states that given a sequence of m bits generated from a generator, no feasible method can predict the
(m + 1)thbit with probability significantly higher than one half.
Malicious seeding resistance: even if an attack(er) can gain full or partial control of the inputs to the
CSPRNGfor a period (time), it is still unfeasible to predict or reproduce any random output from the
Nevertheless, when you're going to use a
CSPRNG, ensure all the seeds are as much real random as possible (eg., devrandom).