The Base Cryptographic Functions

These are the functions that provide you with the most flexibility in applying cryptography to your applications. It is through these functions that communication with the CSPs occurs.

All cryptographic operations are performed by independent modules known as Cryptographic Service Providers (CSP). A minimum of one CSP is required, but more than one can exist. If more than one exists, the one to use can be specified in the CryptoAPI cryptographic function calls. One CSP, the Microsoft Base Cryptographic Provider, is bundled with the CryptoAPI.

Each CSP provides a different implementation of the cryptographic support provided to the CryptoAPI. Some provide stronger cryptographic algorithms, while others contain hardware components such as smart cards. In addition, some CSPs may occasionally communicate with users directly, such as when digital signatures are performed by using the user's signature private key.