Overview of the CAPI Registry

CAPI uses the registry to store a database of the CSPs that have been installed on the Windows CE–based device. Both the Windows CE–based device default providers and the user-installed providers are recorded here.

Warning This section is included for informational purposes only. Details of the CAPI registry use may change at any time. Under no circumstances should an application read from or alter the registry directly.

Entries under the HKEY_LOCAL_MACHINE\...\Provider key contain data about all of the CSPs that have been installed on the computer. These entries are created by the setup application used to install a new CSP. These entries are organized under subkeys whose names indicate the provider name. For example:

[HKEY_LOCAL_MACHINE\Comm\Security\Crypto\Defaults\Provider\Microsoft Base Cryptographic Provider v1.0]
    Image Path = REG_SZ:rsabase.dll
    Signature = REG_BINARY:digital signature
    Type = REG_DWORD:0x1

[HKEY_LOCAL_MACHINE\Comm\Security\Crypto\Defaults\Provider\XYZ Provider]
    Image Path = REG_SZ:johncsp.dll
    Signature = REG_BINARY:digital signature
    Type = REG_DWORD:0x2a

Entries under the HKEY_LOCAL_MACHINE\...\Provider Types key contain the name of the machine default CSP for each provider type. These entries are also created by the setup application used to install a new CSP. These entries are organized under subkeys whose names, appearing in decimal format, indicate the provider type. For example:

[HKEY_LOCAL_MACHINE\Comm\Security\Crypto\Defaults\Provider Types\Type 001]
    Name = REG_SZ:Microsoft Base Cryptographic Provider v1.0

[HKEY_LOCAL_MACHINE\Comm\Security\Crypto\Defaults\Provider Types\Type 042]
    Name = REG_SZ:XYZ Provider

Entries under the HKEY_CURRENT_USER\...\Providers key contain the name of the current user default CSP for each provider type. These entries are created or modified by the CryptSetProvider function. These entries are organized under subkeys whose names indicate the provider type. For example:

[HKEY_CURRENT_USER\Comm\Security\Crypto\Providers\Type 001]
    Name = REG_SZ:Microsoft Base Cryptographic Provider v1.0