Pseudorandom Number Generation
Functions
Many cryptographic systems rely on pseudorandom
number generation functions in their design that make the unpredictable nature
inherited from a pseudorandom number generator the security foundation to
ensure safe communication over open channels and protection against potential
adversaries.
This section describes functions that make the
pseudorandom bit sequence generator implemented by a US FIPS-approved method
and based on a SHA-1 one-way hash function specified by [FIPS PUB 186-2]
, appendix
3
.
The application code for generating a sequence of
pseudorandom bits should perform the following sequence of operations:
- Call the functionPRNGGetSizeto get the size required to configure theIppsPRNGStatecontext.
- Ensure that the required memory space is properly allocated. With the allocated memory, call thePRNGInitfunction to set up the default value of the parameters for pseudorandom generation process.
- If the default values of the parameters are not satisfied, call the function PRNGSetSeed and/orPRNGSetAugmentand/orPRNGSetModulusand/orPRNGSetH0to reset any of the control pseudorandom generator parameters.
- Clean up secret data stored in the context.
- Free the memory allocated for theIppsPRNGStatecontext by calling the operating system memory free service function.