Enumerazione AlgorithmOperationFlags (certenroll.h)
Il tipo di enumerazione AlgorithmOperationFlags specifica le operazioni che un algoritmo può eseguire. Questa enumerazione viene usata nelle interfacce seguenti per recuperare le funzionalità operative di un provider di crittografia o informazioni sullo stato in base a tali funzionalità.
Il formato binario dei flag è il seguente.
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
Sintassi
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
} ;
Costanti
XCN_NCRYPT_NO_OPERATION Valore: 0 Non viene specificata alcuna operazione. |
XCN_NCRYPT_CIPHER_OPERATION Valore: 0x1 L'algoritmo può essere usato per la crittografia simmetrica. Sono inclusi gli algoritmi RC2, RC4, Data Encryption Standard (DES), 3DED e AES. |
XCN_NCRYPT_HASH_OPERATION Valore: 0x2 L'algoritmo può essere usato per l'hashing. Sono inclusi gli algoritmi di hashMD2, MD4, SHA1, SHA256, SHA384, SHA512 MAC e Hash-Based Message Authentication Code (HMAC). |
XCN_NCRYPT_ASYMMETRIC_ENCRYPTION_OPERATION Valore: 0x4 L'algoritmo può essere usato per la crittografia della chiave pubblica . Ciò include RSA. |
XCN_NCRYPT_SECRET_AGREEMENT_OPERATION Valore: 0x8 L'algoritmo può essere usato per lo scambio di chiavi. Include l'algoritmo Diffie-Hellman e l'algoritmo ECDH. |
XCN_NCRYPT_SIGNATURE_OPERATION Valore: 0x10 L'algoritmo può essere usato per la firma. Ciò include l'algoritmo RSA, l'algoritmo DSA (Digital Signature Algorithm ) e l'algoritmo ECDSA. |
XCN_NCRYPT_RNG_OPERATION Valore: 0x20 L'algoritmo può essere usato per generare un numero casuale. |
XCN_NCRYPT_KEY_DERIVATION_OPERATION Valore: 0x40 |
XCN_NCRYPT_ANY_ASYMMETRIC_OPERATION L'algoritmo può essere usato per la crittografia delle chiavi pubbliche, lo scambio di chiavi e la firma. Si tratta di una combinazione bit per bit-OR delle costanti seguenti:
|
XCN_NCRYPT_PREFER_SIGNATURE_ONLY_OPERATION Valore: 0x200000 Gli algoritmi di firma sono preferiti ma non necessari. È possibile scegliere invece un algoritmo di crittografia. Questo viene usato durante la ricerca di informazioni sullo stato del provider di servizi di crittografia (CSP) in base alle funzionalità operative supportate. |
XCN_NCRYPT_PREFER_NON_SIGNATURE_OPERATION Valore: 0x400000 Un algoritmo di crittografia ,ad esempio quello identificato dai flag di XCN_NCRYPT_ANY_ASYMMETRIC_OPERATION o di XCN_NCRYPT_SECRET_AGREEMENT_OPERATION , è preferibile ma non obbligatorio. È possibile scegliere invece un algoritmo di firma. Questa operazione viene usata durante la ricerca di informazioni sullo stato del provider di servizi di rete in base alle funzionalità operative supportate. |
XCN_NCRYPT_EXACT_MATCH_OPERATION Valore: 0x800000 Viene selezionato solo un algoritmo che corrisponde esattamente alle operazioni specificate. |
XCN_NCRYPT_PREFERENCE_MASK_OPERATION Valore: 0xe00000 Usare per mascherare la preferenza dell'operazione dell'algoritmo. |
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows Vista [solo app desktop] |
Server minimo supportato | Windows Server 2008 [solo app desktop] |
Intestazione | certenroll.h |