Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
The AlgorithmType enumeration type specifies the intended purpose of a cryptographic algorithm supported by a cryptographic provider. Algorithms are typically classified by use into the following general categories:
- Signing
- Hashing
- Asymmetric encryption
- Symmetric encryption
- Key exchange
Syntax
typedef enum AlgorithmType {
XCN_BCRYPT_UNKNOWN_INTERFACE = 0,
XCN_BCRYPT_CIPHER_INTERFACE = 0x1,
XCN_BCRYPT_HASH_INTERFACE = 0x2,
XCN_BCRYPT_ASYMMETRIC_ENCRYPTION_INTERFACE = 0x3,
XCN_BCRYPT_SIGNATURE_INTERFACE = 0x5,
XCN_BCRYPT_SECRET_AGREEMENT_INTERFACE = 0x4,
XCN_BCRYPT_RNG_INTERFACE = 0x6,
XCN_BCRYPT_KEY_DERIVATION_INTERFACE = 0x7
} ;
Constants
XCN_BCRYPT_UNKNOWN_INTERFACEValue: 0 The algorithm type is not defined. |
XCN_BCRYPT_CIPHER_INTERFACEValue: 0x1 The algorithm is used for symmetric encryption. This includes the RC2, RC4, Data Encryption Standard (DES), 3DED, and AES algorithms. |
XCN_BCRYPT_HASH_INTERFACEValue: 0x2 The algorithm is used for hashing. This includes the MD2, MD4, SHA1, SHA256, SHA384, SHA512 MAC, and Hash-Based Message Authentication Code (HMAC) hash algorithms. |
XCN_BCRYPT_ASYMMETRIC_ENCRYPTION_INTERFACEValue: 0x3 The algorithm is used for public key encryption. This includes RSA. |
XCN_BCRYPT_SIGNATURE_INTERFACEValue: 0x5 The algorithm is used for signing. This includes the RSA algorithm, Digital Signature Algorithm (DSA), and ECDSA algorithm. |
XCN_BCRYPT_SECRET_AGREEMENT_INTERFACEValue: 0x4 The algorithm is used for key exchange. This includes the Diffie-Hellman algorithm and ECDH algorithm. |
XCN_BCRYPT_RNG_INTERFACEValue: 0x6 The algorithm is used to generate a random number. |
XCN_BCRYPT_KEY_DERIVATION_INTERFACEValue: 0x7 |
Requirements
| Requirement | Value |
|---|---|
| Minimum supported client | Windows Vista [desktop apps only] |
| Minimum supported server | Windows Server 2008 [desktop apps only] |
| Header | certenroll.h |