Funzione CryptMsgGetAndVerifySigner (wincrypt.h)

La funzione CryptMsgGetAndVerifySigner verifica la firma di un messaggio di crittografia.

Sintassi

BOOL CryptMsgGetAndVerifySigner(
  [in]                HCRYPTMSG      hCryptMsg,
  [in]                DWORD          cSignerStore,
  [in, optional]      HCERTSTORE     *rghSignerStore,
  [in]                DWORD          dwFlags,
  [out, optional]     PCCERT_CONTEXT *ppSigner,
  [in, out, optional] DWORD          *pdwSignerIndex
);

Parametri

[in] hCryptMsg

Handle di un messaggio di crittografia.

[in] cSignerStore

Numero di archivi nella matrice rghSignerStore .

[in, optional] rghSignerStore

Matrice di handle dell'archivio certificati che è possibile cercare il certificato di un firmatario.

[in] dwFlags

Indica un particolare uso della funzione.

Valore Significato
CMSG_TRUSTED_SIGNER_FLAG
Gli archivi in rghSignerStore vengono considerati attendibili e sono gli unici archivi cercati per trovare il certificato corrispondente all'emittente e al numero di serie del firmatario. In caso contrario, gli archivi firmatari possono essere forniti per integrare l'archivio dei certificati del messaggio. Se viene trovato un certificato del firmatario, la chiave pubblica viene usata per verificare la firma del messaggio.
CMSG_SIGNER_ONLY_FLAG
Restituire il firmatario senza eseguire la verifica della firma.
CMSG_USE_SIGNER_INDEX_FLAG
Viene restituito solo il firmatario specificato da *pdwSignerIndex . In caso contrario, scorrere tutti i firmatari fino a quando non viene verificata una firma o non sono presenti altri firmatari.

[out, optional] ppSigner

Se la firma viene verificata, ppSigner viene aggiornato in modo che punti al contesto del certificato del firmatario. Al termine dell'uso del certificato, liberare il contesto chiamando la funzione CertFreeCertificateContext . Questo parametro può essere NULL se l'applicazione non ha bisogno del certificato del firmatario.

[in, out, optional] pdwSignerIndex

Se la firma viene verificata, pdwSigner viene aggiornato in modo che punti all'indice del firmatario nella matrice di firmatari. Questo parametro può essere NULL se l'applicazione non ha bisogno dell'indice del firmatario.

Valore restituito

Se la funzione ha esito positivo, il valore restituito è diverso da zero (TRUE).

Se la funzione ha esito negativo, il valore restituito è zero (FALSE). Per informazioni sugli errori estesi, chiamare GetLastError.

Requisiti

Requisito Valore
Client minimo supportato Windows XP [app desktop | App UWP]
Server minimo supportato Windows Server 2003 [app desktop | App UWP]
Piattaforma di destinazione Windows
Intestazione wincrypt.h
Libreria Crypt32.lib
DLL Crypt32.dll

Vedi anche

CERT_CONTEXT

CTL_CONTEXT

CryptMsgControl

CryptMsgOpenToDecode

Funzioni di verifica tramite elenchi di controllo di accesso (CTL)