PFN_CRYPT_EXTRACT_ENCODED_SIGNATURE_PARAMETERS_FUNC Rückruffunktion (wincrypt.h)

Wenn eine Signatur codierte Parameter enthält, wird die PFN_CRYPT_EXTRACT_ENCODED_SIGNATURE_PARAMETERS_FUNC Rückruffunktion aufgerufen, um den Hashalgorithmusbezeichner und optional die Signaturparameter zurückzugeben.

Syntax

PFN_CRYPT_EXTRACT_ENCODED_SIGNATURE_PARAMETERS_FUNC PfnCryptExtractEncodedSignatureParametersFunc;

BOOL PfnCryptExtractEncodedSignatureParametersFunc(
  [in]            DWORD dwCertEncodingType,
  [in]            PCRYPT_ALGORITHM_IDENTIFIER pSignatureAlgorithm,
  [out, optional] void **ppvDecodedSignPara,
  [out]           LPWSTR *ppwszCNGHashAlgid
)
{...}

Parameter

[in] dwCertEncodingType

Gibt den Typ der verwendeten Codierung an. Es ist immer akzeptabel, sowohl den Zertifikat- als auch den Nachrichtencodierungstyp anzugeben, indem sie mit einem bitweisen OR-Vorgang kombiniert werden, wie im folgenden Beispiel gezeigt:

X509_ASN_ENCODING | PKCS_7_ASN_ENCODING Derzeit definierte Codierungstypen sind:

  • X509_ASN_ENCODING
  • PKCS_7_ASN_ENCODING

[in] pSignatureAlgorithm

Ein Zeiger auf eine CRYPT_ALGORITHM_IDENTIFIER Struktur, die den Signaturobjektbezeichner (Signature Object Identifier , OID) und die optional codierten Parameter enthält.

[out, optional] ppvDecodedSignPara

Ein Zeiger auf eine Adresse für die datenstruktur der decodierten und zugeordneten Signaturparameter. Das Zurückgeben des decodierten Puffers ist optional.

[out] ppwszCNGHashAlgid

Ein Zeiger auf eine Adresse für die zugeordnete Unicode-Zeichenfolge, die den CNG-Hashalgorithmusbezeichner darstellt, der aus den codierten Signaturparametern extrahiert wird. Wenn diese Funktion TRUE zurückgibt, muss ein Nicht-NULL-Zeiger zurückgegeben werden.

Rückgabewert

Wenn die Funktion erfolgreich ist, gibt die Funktion nonzero (TRUE) zurück.

Wenn die Funktion fehlschlägt, gibt sie null (FALSE) zurück. Rufen Sie GetLastError auf, um erweiterte Fehlerinformationen zu erhalten.

Wenn diese Rückruffunktion den Signaturalgorithmus nicht unterstützt, muss sie FALSE zurückgeben und SetLastError mit ERROR_NOT_SUPPORTED aufrufen.

Hinweise

Arbeitsspeicher für die Parameter ppvDecodedSignPara und ppwszCNGHashAlgid muss mithilfe der LocalAlloc-Funktion zugewiesen werden.

Sie können OID-Unterstützungsfunktionen verwenden, um diese Rückruffunktion bereitzustellen. Wincrypt.h definiert die folgende Konstante für diesen Zweck.

Dauerhaft Definition
CRYPT_OID_EXTRACT_ENCODED_SIGNATURE_PARAMETERS_FUNC "CryptDllExtractEncodedSignatureParameters"

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows Vista [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile wincrypt.h