A system and method for performing asynchronous cryptographic operations.
A cryptographic toolkit receives requests for cryptographic operations,
and initiates the cryptographic operations within a thread of execution.
The toolkit detects when the cryptographic operations are complete,
retrieves the results, and returns the results to a calling program. The
cryptographic operations are performed in an asynchronous manner, without
blocking a calling program. The calling program can specify whether the
requested operations are to be performed without blocking.