struttura CRYPT_KEY_SIGN_MESSAGE_PARA (wincrypt.h)

La struttura CRYPT_KEY_SIGN_MESSAGE_PARA contiene informazioni sul provider di servizi di crittografia (CSP) e sugli algoritmi usati per firmare un messaggio.

Sintassi

typedef struct _CRYPT_KEY_SIGN_MESSAGE_PARA {
  DWORD                      cbSize;
  DWORD                      dwMsgAndCertEncodingType;
  union {
    HCRYPTPROV        hCryptProv;
    NCRYPT_KEY_HANDLE hNCryptKey;
  } DUMMYUNIONNAME;
  DWORD                      dwKeySpec;
  CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
  void                       *pvHashAuxInfo;
  CRYPT_ALGORITHM_IDENTIFIER PubKeyAlgorithm;
} CRYPT_KEY_SIGN_MESSAGE_PARA, *PCRYPT_KEY_SIGN_MESSAGE_PARA;

Members

cbSize

Dimensione, in byte, di questa struttura di dati.

dwMsgAndCertEncodingType

Specifica il tipo di codifica del messaggio e del certificato utilizzata. Può trattarsi di una combinazione di uno o più dei valori seguenti.

Valore Significato
X509_ASN_ENCODING
Specifica la codifica del certificato X.509 .
PKCS_7_ASN_ENCODING
Specifica la codifica dei messaggi PKCS 7.

DUMMYUNIONNAME

DUMMYUNIONNAME.hCryptProv

Handle del provider di servizi di configurazione da usare per firmare il messaggio. La funzione CryptAcquireContext viene chiamata per ottenere questo handle.

DUMMYUNIONNAME.hNCryptKey

Handle del CSP Cryptography API: Next Generation (CNG) da usare per firmare il messaggio. Gli algoritmi di firma CNG sono supportati solo nelle funzioni CNG.

dwKeySpec

Identifica il tipo di chiave privata da usare per firmare il messaggio. Deve essere uno dei valori seguenti. Questo membro viene ignorato se viene passata una chiave CNG nel membro hNCryptKey .

Valore Significato
AT_KEYEXCHANGE
Usare la chiave di scambio delle chiavi.
AT_SIGNATURE
Usare la chiave di firma digitale.

HashAlgorithm

Struttura CRYPT_ALGORITHM_IDENTIFIER che specifica l'algoritmo da utilizzare per generare l'hash del messaggio. Deve essere un algoritmo hash.

pvHashAuxInfo

Questo membro non viene utilizzato e deve essere impostato su NULL.

PubKeyAlgorithm

Struttura CRYPT_ALGORITHM_IDENTIFIER che specifica l'algoritmo da utilizzare per firmare il messaggio. Deve trattarsi di una chiave pubblica o di un algoritmo di firma.

Requisiti

Requisito Valore
Client minimo supportato Windows XP [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Intestazione wincrypt.h