AlgorithmType enumeration
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_SIGNATURE_INTERFACE = 0x5, XCN_BCRYPT_ASYMMETRIC_ENCRYPTION_INTERFACE = 0x3, XCN_BCRYPT_CIPHER_INTERFACE = 0x1, XCN_BCRYPT_HASH_INTERFACE = 0x2, XCN_BCRYPT_SECRET_AGREEMENT_INTERFACE = 0x4, XCN_BCRYPT_RNG_INTERFACE = 0x6 } AlgorithmType;
Constants
- XCN_BCRYPT_UNKNOWN_INTERFACE
-
The algorithm type is not defined.
- XCN_BCRYPT_SIGNATURE_INTERFACE
-
The algorithm is used for signing. This includes the RSA algorithm, Digital Signature Algorithm (DSA), and ECDSA algorithm.
- XCN_BCRYPT_ASYMMETRIC_ENCRYPTION_INTERFACE
-
The algorithm is used for public key encryption. This includes RSA.
- XCN_BCRYPT_CIPHER_INTERFACE
-
The algorithm is used for symmetric encryption. This includes the RC2, RC4, Data Encryption Standard (DES), 3DED, and AES algorithms.
- XCN_BCRYPT_HASH_INTERFACE
-
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_SECRET_AGREEMENT_INTERFACE
-
The algorithm is used for key exchange. This includes the Diffie-Hellman algorithm and ECDH algorithm.
- XCN_BCRYPT_RNG_INTERFACE
-
The algorithm is used to generate a random number.
Requirements
|
Minimum supported client | Windows Vista [desktop apps only] |
|---|---|
|
Minimum supported server | Windows Server 2008 [desktop apps only] |
|
Header |
|
See also
Send comments about this topic to Microsoft
Build date: 10/26/2012