自定义加密服务提供商 (CSP) 的作者可以定义算法标识符。自定义 CSP 用于密钥规范 AT_KEYEXCHANGE 和 AT_SIGNATURE 的标识符取决于提供者。下表显示了当前定义的算法标识符。
常数说明CALG_AES_128
128 位 AES 块加密算法。
CALG_AES_192
192 位 AES 块加密算法。
CALG_AES_256
256 位 AES 块加密算法。
CALG_AGREEDKEY_ANY
Diffie-Hellman 协议密钥句柄的临时算法标识符。
CALG_CYLINK_MEK*
一种创建 40 位 DES 密钥的算法,该密钥具有奇偶校验位和零密钥位,以使其密钥长度为 64 位。
CALG_DES
DES 加密算法。
CALG_DESX
DES 加密算法。
CALG_3DES
三重DES加密算法。
CALG_3DES_112
双密钥三重DES加密算法,有效密钥长度等于112位。
CALG_DH_EPHEM
Diffie-Hellman 临时密钥交换算法。
CALG_DH_SF
Diffie-Hellman 存储转发密钥交换算法。
CALG_DSS_SIGN
DSA 公钥签名算法。
CALG_HMAC*
HMAC 键控散列算法。
CALG_KEA_KEYX
KEA 密钥交换算法(FORTEZZA)。
CALG_MAC*
MAC 密钥哈希算法。
CALG_MD2*
MD2 哈希算法。
CALG_MD4
MD4 散列算法。
CALG_MD5*
MD5 哈希算法。
CALG_RC2*
RC2块加密算法。
CALG_RC4*
RC4流加密算法。
CALG_RC5
RC5块加密算法。
CALG_RSA_KEYX*
RSA公钥密钥交换算法。
CALG_RSA_SIGN*
RSA公钥签名算法。
CALG_SEAL
SEAL 加密算法。
CALG_SHA*
SHA 哈希算法。
CALG_SHA1*
与 CALG_SHA 相同,只是它生成 160 位消息摘要或哈希。
CALG_SHA_256
生成 256 位消息摘要或散列。
CALG_SHA_384
生成 384 位消息摘要或散列。
CALG_SHA_512
生成一个 512 位的消息摘要或散列。
CALG_SKIPJACK
Skipjack 块加密算法 (FORTEZZA)。
CALG_SSL3_SHAMD5
SSL3 客户端认证算法。
CALG_TEK
TEK 算法(FORTEZZA)。
CALG_SSL3_SHAMD5
由 schannel.dll 操作系统使用。应用程序不应使用此标识符。
CALG_SSL3_MASTER
由 schannel.dll 操作系统使用。应用程序不应使用此标识符。
CALG_SCHANNEL_MASTER_HASH
由 schannel.dll 操作系统使用。应用程序不应使用此标识符。
CALG_SCHANNEL_MAC_KEY
由 schannel.dll 操作系统使用。应用程序不应使用此标识符。
CALG_SCHANNEL_ENC_KEY
由 schannel.dll 操作系统使用。应用程序不应使用此标识符。
CALG_PCT1_MASTER
由 schannel.dll 操作系统使用。应用程序不应使用此标识符。
CALG_SSL2_MASTER
由 schannel.dll 操作系统使用。 应用程序不应使用此标识符。
CALG_TLS1_MASTER
由 schannel.dll 操作系统使用。 应用程序不应使用此标识符。
CALG_TLS1PRF
由 schannel.dll 操作系统使用。 应用程序不应使用此标识符。