Cryptography Reference
In-Depth Information
Generation of a random number of type CLINT
Function:
int
RandRMDSAH1_l (CLINT r_l, STATERMDSHA1 *rstate, int l);
Syntax:
rstate (internal state of the pseudorandom number generator)
l (number of binary digits of the number to be generated)
Input:
r_l (random number in the interval 2 l 1
r_l 2 l
1 )
Output:
E_CLINT_OK if all O.K.
E_CLINT_RIN if the generator is uninitialized
Return:
For this generator as well there are associated macros bRandRMDSHA1_l() ,
sRandRMDSHA1_l() ,and lRandRMDSHA1_l() in the module random.h , which expect
as argument the appropriate initialized buffer from which random integers of
types UCHAR , USHORT , and ULONG are generated.
Finally, for sensitive applications, one needs a function for deleting the
internal state of the random number generator:
Function:
deletion of the internal state of RandRMDSHA-1
Syntax:
void
PurgeRandSHA_l (STATERMDSHA1 *rstate);
rstate (internal state of the pseudorandom number generator)
Input:
rstate (internal state of the generator, deleted by overwriting)
Ouput:
12.3 Quality Testing
For investigating the quality of random number generators, a large number of
theoretical and empirical tests have been developed that are suitable for detecting
the structural properties of sequences of random numbers.
Depending on the area of application, in addition to the statistical require-
ments on such sequences, one must also consider that random sequences that
are to be used in cryptographic applications must not be predictable without the
knowledge of secret information or reproducible from a small number of repre-
sentatives, so as to keep attackers from being able to reconstruct a cryptographic
key or sequence of keys derived from the sequence.
As an example, the German Institute for Security in Information Technology
has specified in [BSI2] functionality classes and quality criteria for evaluating
 
Search WWH ::




Custom Search