Important:
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.
A version of this page is also available for
4/8/2010

The following table shows the cryptography functions with a description of the purpose of each.

Programming element Description

CPAcquireContext

This function acquires a handle to the key container specified by the pszContainerparameter.

CryptAcquireContext

This function acquires a handle to a specific key container within a particular cryptographic service provider (CSP).

CryptContextAddRef

This function adds one to the reference count of an HCRYPTPROVhandle.

CryptCreateHash

This function initiates the hashing of a stream of data.

CryptDecrypt

This function decrypts data that was previously encrypted with the CryptEncryptfunction.

CryptDeriveKey

This function generates cryptographic session keys derived from base data.

CryptDestroyHash

This function destroys the hash object referenced by the hHashparameter.

CryptDestroyKey

This function frees the handle referenced by the hKeyparameter.

CryptDuplicateHash

This function makes an exact copy of a hash and the state the hash is in.

CryptDuplicateKey

This function makes an exact copy of a key and the state the key is in.

CryptEncrypt

This function encrypts data.

CryptEnumProviders

This function retrieves the first or next available cryptographic service provider (CSP).

CryptEnumProviderTypes

This function retrieves the first or next type of cryptographic service provider (CSP) supported on the computer.

CryptExportKey

This function exports cryptographic keys from of a cryptographic service provider (CSP) in a secure manner.

CryptGenKey

This function generates a random cryptographic session key or a public/private key pair for use with the cryptographic service provider (CSP).

CryptGenRandom

This function fills a buffer with random bytes.

CryptGetDefaultProvider

This function finds the default cryptographic service provider (CSP) of a specified type either for the current user or the device.

CryptGetHashParam

This function retrieves data that governs the operations of a hash object and retrieves the actual hash value.

CryptGetKeyParam

This function lets applications retrieve data that governs the operations of a key.

CryptGetProvParam

This function retrieves parameters that govern the operations of a cryptographic service provider (CSP).

CryptGetUserKey

This function retrieves a handle to a permanent user key pair, such as the user's signature key pair.

CryptHashData

This function adds data to a specified hash object.

CryptHashSessionKey

This function computes the cryptographic hash of a session key object.

CryptImportKey

This function transfers a cryptographic key from a key binary large object (BLOB) to the cryptographic service provider (CSP).

CryptMsgCalculateEncodedLength

This function calculates the maximum number of bytes need for an encoded cryptographic message when it is given the message type, encoding parameters, and total length of the data to be encoded.

CryptMsgClose

This function closes a cryptographic message handle.

CryptMsgControl

This function performs a control operation after a message has been decoded by a final CryptMsgUpdatecall.

CryptMsgDuplicate

This function duplicates a cryptographic message handle by incrementing its reference count.

CryptMsgGetParam

This function acquires a message parameter after a cryptographic message has been encoded or decoded.

CryptMsgOpenToDecode

This function opens a cryptographic message for decoding and returns a handle of the opened message.

CryptMsgOpenToEncode

This function opens a cryptographic message for encoding and returns a handle of the opened message.

CryptMsgUpdate

This function adds contents to a cryptographic message.

CryptProtectData

This function performs encryption on the data in a BLOB (Cryptography)structure.

CryptReleaseContext

This function frees the handle to a cryptographic service provider (CSP) and the key container.

CryptSetHashParam

This function customizes the operations of a hash object.

CryptSetKeyParam

This function customizes various aspects of a key's operations.

CryptSetProvider

This function specifies the current user default cryptographic service provider (CSP).

CryptSetProviderEx

This function specifies the default cryptographic service provider (CSP) for the current user or the local device.

CryptSetProvParam

This function customizes the operations of a cryptographic service provider (CSP).

CryptSignHash

This function signs data.

CryptUnprotectData

This function decrypts and checks the integrity of the data in a BLOB (Cryptography)structure.

CryptVerifySignature

This function verifies the signature of a hash object.

See Also