The HCRYPTKEY data type is used to represent handles to cryptographic keys. These handles are used to indicate to the CSP module which key is being used in a specific operation. The CSP module does not enable direct access to the key values. Instead, the user performs functions by using the key value through the key handle.
HCRYPTKEY is defined in the Wincrypt.h header file as:
typedef unsigned long HCRYPTKEY;