This section lists each function that must be exported from the CSP, and briefly discusses any required functionality beyond PROV_DSS_DH. Additional functions specific to a CSP may exist within the CSP.
Function | Description |
---|---|
CPAcquireContext | Acquires a handle to a particular key container within a particular CSP. See CPAcquireContext. |
CPCreateHash | Initiates hashing a stream of data. See CPCreateHash Diffie-Hellman/Schannel Extensions. |
CPDecrypt | Decrypts data that was previously encrypted via the CPEncrypt function. See CPDecrypt Diffie-Hellman/Schannel Extensions. |
CPDeriveKey | Generates cryptographic keys derived from base data. See CPDeriveKey Diffie-Hellman/Schannel Extensions. |
CPDestroyHash | Destroys the hash object referenced by the hHash parameter. See CPDestroyHash. |
CPDestroyKey | Releases the handle referenced by the hKey parameter. After a key handle has been released, it becomes invalid and cannot be used again. See CPDestroyKey. |
CPDuplicateHash | Makes an exact copy of a hash and the state the hash is in. See CPDuplicateHash. |
CPDuplicateKey | Makes an exact copy of a key and the state the key is in. See CPDuplicateKey. |
CPEncrypt | Encrypts data. See CPEncrypt Diffie-Hellman/Schannel Extensions. |
CPExportKey | Exports cryptographic keys from a cryptographic service provider in a secure manner. See CPExportKey. |
CPGenKey | Generates random cryptographic keys for use with the CSP module. See CPGenKey. |
CPGenRandom | Fills a buffer with random bytes. See CPGenRandom. |
CPGetHashParam | Retrieves data that governs the operations of a hash object. See CPGetHashParam. |
CPGetKeyParam | Retrieves data that governs the operations of a key. See CPGetKeyParam. |
CPGetProvParam | Retrieves parameters that govern the operations of a CSP. See CPGetProvParam Diffie-Hellman/Schannel Extensions. |
CPGetUserKey | Retrieves a handle to a permanent user key pair, such as the user's signature key pair. See CPGetUserKey. |
CPHashData | Computes the cryptographic hash on a stream of data. See CPHashData. |
CPHashSessionKey | Computes the cryptographic hash on a key object. See CPHashSessionKey Diffie-Hellman/Schannel Extensions. |
CPImportKey | Transfers a cryptographic key from a key blob to a CSP. See CPImportKey. |
CPReleaseContext | Releases a handle to a CSP and a key container. See CPReleaseContext. |
CPSetHashParam | Customizes the operations of a hash object. Currently, only a single parameter is defined for this function. See CPSetHashParam. |
CPSetKeyParam | Customizes various aspects of a key's operations. See CPSetKeyParam Diffie-Hellman/Schannel Extensions. |
CPSetProvParam | Customizes the operations of a CSP. See CPSetProvParam. |
CPSignHash | Signs a piece of data. See CPSignHash. |
CPVerifySignature | Verifies a signature against a hash object. See CPVerifySignature. |