Enumeración AlgorithmOperationFlags (certenroll.h)
El tipo de enumeración AlgorithmOperationFlags especifica las operaciones que puede realizar un algoritmo. Esta enumeración se usa en las interfaces siguientes para recuperar las funcionalidades operativas de un proveedor criptográfico o información de estado en función de esas funcionalidades.
El formato binario de las marcas es el siguiente.
XCN_NCRYPT_NO_OPERATION = 00000000 00000000 00000000
XCN_NCRYPT_CIPHER_OPERATION = 00000000 00000000 00000001
XCN_NCRYPT_HASH_OPERATION = 00000000 00000000 00000010
XCN_NCRYPT_ASYMMETRIC_ENCRYPTION_OPERATION = 00000000 00000000 00000100
XCN_NCRYPT_SECRET_AGREEMENT_OPERATION = 00000000 00000000 00001000
XCN_NCRYPT_SIGNATURE_OPERATION = 00000000 00000000 00010000
XCN_NCRYPT_ANY_ASYMMETRIC_OPERATION = 00000000 00000000 00011100
XCN_NCRYPT_RNG_OPERATION = 00000000 00000000 00100000
XCN_NCRYPT_PREFER_SIGNATURE_ONLY_OPERATION = 00100000 00000000 00000000
XCN_NCRYPT_PREFER_NON_SIGNATURE_OPERATION = 01000000 00000000 00000000
XCN_NCRYPT_EXACT_MATCH_OPERATION = 10000000 00000000 00000000
XCN_NCRYPT_PREFERENCE_MASK_OPERATION = 11100000 00000000 00000000
Syntax
typedef enum AlgorithmOperationFlags {
XCN_NCRYPT_NO_OPERATION = 0,
XCN_NCRYPT_CIPHER_OPERATION = 0x1,
XCN_NCRYPT_HASH_OPERATION = 0x2,
XCN_NCRYPT_ASYMMETRIC_ENCRYPTION_OPERATION = 0x4,
XCN_NCRYPT_SECRET_AGREEMENT_OPERATION = 0x8,
XCN_NCRYPT_SIGNATURE_OPERATION = 0x10,
XCN_NCRYPT_RNG_OPERATION = 0x20,
XCN_NCRYPT_KEY_DERIVATION_OPERATION = 0x40,
XCN_NCRYPT_ANY_ASYMMETRIC_OPERATION,
XCN_NCRYPT_PREFER_SIGNATURE_ONLY_OPERATION = 0x200000,
XCN_NCRYPT_PREFER_NON_SIGNATURE_OPERATION = 0x400000,
XCN_NCRYPT_EXACT_MATCH_OPERATION = 0x800000,
XCN_NCRYPT_PREFERENCE_MASK_OPERATION = 0xe00000
} ;
Constantes
XCN_NCRYPT_NO_OPERATION Valor: 0 No se especifica ninguna operación. |
XCN_NCRYPT_CIPHER_OPERATION Valor: 0x1 El algoritmo se puede usar para el cifrado simétrico. Esto incluye los algoritmos RC2, RC4, Data Encryption Standard (DES), 3DED y AES . |
XCN_NCRYPT_HASH_OPERATION Valor: 0x2 El algoritmo se puede usar para aplicar un algoritmo hash. Esto incluye los algoritmos hashMD2, MD4, SHA1, SHA256, SHA384, SHA512 MAC y Código de autenticación de mensajes basado en hash (HMAC). |
XCN_NCRYPT_ASYMMETRIC_ENCRYPTION_OPERATION Valor: 0x4 El algoritmo se puede usar para el cifrado de clave pública . Esto incluye RSA. |
XCN_NCRYPT_SECRET_AGREEMENT_OPERATION Valor: 0x8 El algoritmo puede usarse para el intercambio de claves. Esto incluye el algoritmo Diffie-Hellman y el algoritmo ECDH. |
XCN_NCRYPT_SIGNATURE_OPERATION Valor: 0x10 El algoritmo se puede usar para firmar. Esto incluye el algoritmo RSA, el algoritmo de firma digital (DSA) y el algoritmo ECDSA. |
XCN_NCRYPT_RNG_OPERATION Valor: 0x20 El algoritmo se puede usar para generar un número aleatorio. |
XCN_NCRYPT_KEY_DERIVATION_OPERATION Valor: 0x40 |
XCN_NCRYPT_ANY_ASYMMETRIC_OPERATION El algoritmo se puede usar para el cifrado de claves públicas, el intercambio de claves y la firma. Se trata de una combinación or bit a bit de las siguientes constantes:
|
XCN_NCRYPT_PREFER_SIGNATURE_ONLY_OPERATION Valor: 0x200000 Los algoritmos de firma son preferidos, pero no son necesarios. En su lugar, se puede elegir un algoritmo de cifrado. Esto se usa al buscar información de estado del proveedor de servicios criptográficos (CSP) en función de la funcionalidad operativa admitida. |
XCN_NCRYPT_PREFER_NON_SIGNATURE_OPERATION Valor: 0x400000 Se prefiere un algoritmo de cifrado (como el identificado por las marcas XCN_NCRYPT_ANY_ASYMMETRIC_OPERATION o XCN_NCRYPT_SECRET_AGREEMENT_OPERATION ), pero no es necesario. En su lugar, se puede elegir un algoritmo de firma. Se usa al buscar información de estado de CSP en función de la funcionalidad operativa admitida. |
XCN_NCRYPT_EXACT_MATCH_OPERATION Valor: 0x800000 Solo se selecciona un algoritmo que coincida exactamente con las operaciones especificadas. |
XCN_NCRYPT_PREFERENCE_MASK_OPERATION Valor: 0xe00000 Use para enmascarar la preferencia de operación del algoritmo. |
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows Vista [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2008 [solo aplicaciones de escritorio] |
Encabezado | certenroll.h |