ALG_ID (Windows CE 5.0)

Send Feedback

This data type specifies algorithm identifiers. Most of the functions in the CryptoAPI pass parameters of this data type that are defined in the Wincrypt.h header file as follows.

typedef unsigned int ALG_ID;

Remarks

Authors of custom cryptographic service providers (CSPs) can define algorithm identifiers. The identifiers used by custom CSPs for the key specifications AT_KEYEXCHANGE and AT_SIGNATURE are provider-dependent. The following table shows the algorithm identifiers that are currently defined.

Constant Description
CALG_AES_128 128-bit AES block encryption algorithm.
CALG_AES_192 192-bit AES block encryption algorithm.
CALG_AES_256 256-bit AES block encryption algorithm.
CALG_AGREEDKEY_ANY Temporary algorithm identifier for handles of Diffie-Hellman–agreed keys.
CALG_CYLINK_MEK* An algorithm to create a 40-bit DES key that has parity bits and zeroed key bits to make its key length 64 bits.
CALG_DES DES encryption algorithm.
CALG_DESX DES encryption algorithm.
CALG_3DES Triple DES encryption algorithm.
CALG_3DES_112 Two-key triple DES encryption algorithm, with effective key length equal to 112 bits.
CALG_DH_EPHEM Diffie-Hellman ephemeral key exchange algorithm.
CALG_DH_SF Diffie-Hellman store and forward key exchange algorithm.
CALG_DSS_SIGN DSA public-key signature algorithm.
CALG_HMAC* HMAC keyed-hash algorithm.
CALG_KEA_KEYX KEA key exchange algorithm (FORTEZZA).
CALG_MAC* MAC keyed-hash algorithm.
CALG_MD2* MD2 hashing algorithm.
CALG_MD4 MD4 hashing algorithm.
CALG_MD5* MD5 Hashing algorithm.
CALG_RC2* RC2 block encryption algorithm.
CALG_RC4* RC4 stream encryption algorithm.
CALG_RC5 RC5 block encryption algorithm.
CALG_RSA_KEYX* RSA public-key key exchange algorithm.
CALG_RSA_SIGN* RSA public-key signature algorithm.
CALG_SEAL SEAL encryption algorithm.
CALG_SHA* SHA hashing algorithm.
CALG_SHA1* Same as CALG_SHA, except that it generates a 160-bit message digest or hash.
CALG_SHA_256 Generates a 256-bit message digest or hash.
CALG_SHA_384 Generates a 384-bit message digest or hash.
CALG_SHA_512 Generates a 512-bit message digest or hash.
CALG_SKIPJACK Skipjack block encryption algorithm (FORTEZZA).
CALG_SSL3_SHAMD5 SSL3 client authentication algorithm.
CALG_TEK TEK algorithm (FORTEZZA).
CALG_SSL3_SHAMD5 Used by the schannel.dll operations system. This identifier should not be used by applications.
CALG_SSL3_MASTER Used by the schannel.dll operations system. This identifier should not be used by applications.
CALG_SCHANNEL_MASTER_HASH Used by the schannel.dll operations system. This identifier should not be used by applications.
CALG_SCHANNEL_MAC_KEY Used by the schannel.dll operations system. This identifier should not be used by applications.
CALG_SCHANNEL_ENC_KEY Used by the schannel.dll operations system. This identifier should not be used by applications.
CALG_PCT1_MASTER Used by the schannel.dll operations system. This identifier should not be used by applications.
CALG_SSL2_MASTER Used by the schannel.dll operations system. This identifier should not be used by applications.
CALG_TLS1_MASTER Used by the schannel.dll operations system. This identifier should not be used by applications.
CALG_TLS1PRF Used by the schannel.dll operations system. This identifier should not be used by applications.

* Algorithms supported by the Microsoft Base Cryptographic Provider.

For the Microsoft Base Cryptographic Provider and the Microsoft Enhanced Cryptographic Provider, the following identifiers are used for the key specifications AT_KEYEXCHANGE and AT_SIGNATURE:

  • CALG_RSA_KEYX for AT_KEYEXCHANGE
  • CALG_RSA_SIGN for AT_SIGNATURE

For the Microsoft DSS Cryptographic Provider and the Diffie-Hellman Provider, the following identifiers are used for the key specifications AT_KEYEXCHANGE and AT_SIGNATURE:

  • CALG_DH_SF for AT_KEYEXCHANGE
  • CALG_DSS_SIGN for AT_SIGNATURE

Requirements

OS Versions: Windows CE 3.0 and later.
Header: Wincrypt.h.

See Also

Cryptography Reference | Cryptography Data Types | CryptFindOIDInfo | CRYPT_ALGORITHM_IDENTIFIER

Send Feedback on this topic to the authors

Feedback FAQs

© 2006 Microsoft Corporation. All rights reserved.