Compartir a través de


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_ASYMMETRIC_ENCRYPTION_OPERATION

  • XCN_NCRYPT_SECRET_AGREEMENT_OPERATION

  • XCN_NCRYPT_SIGNATURE_OPERATION

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

Consulte también

AlgorithmType

CertEnroll (enumeraciones)

CertEnroll Interfaces