CryptCreateKeyIdentifierFromCSP-Funktion (wincrypt.h)
Diese Funktion wandelt eine PUBLICKEYSTRUC- eines CSP in eine X.509-CERT_PUBLIC_KEY_INFO-Struktur um und codiert sie. Die codierte Struktur wird dann hashed mit dem SHA1-Algorithmus, um den Schlüsselbezeichner abzurufen.
Syntax
BOOL CryptCreateKeyIdentifierFromCSP(
[in] DWORD dwCertEncodingType,
[in] LPCSTR pszPubKeyOID,
[in] const PUBLICKEYSTRUC *pPubKeyStruc,
[in] DWORD cbPubKeyStruc,
[in] DWORD dwFlags,
[in] void *pvReserved,
[out] BYTE *pbHash,
[in, out] DWORD *pcbHash
);
Parameter
[in] dwCertEncodingType
Gibt den verwendeten Codierungstyp an. Es ist immer akzeptabel, sowohl das Zertifikat als auch Nachrichtencodierungstypen anzugeben, die, indem sie mit einem bitweisenODER--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] pszPubKeyOID
Ein Zeiger auf den öffentlichen Schlüssel Objektbezeichner (OID). Ein Wert, der nicht NULL überschreibt das Standard-OID, das aus dem aiKeyAlg Member der Struktur abgerufen wird, auf pPubKeyStrucverweist. Um das Standard-OID zu verwenden, legen Sie pszPubKeyOID- auf NULL-fest.
[in] pPubKeyStruc
Ein Zeiger auf eine PUBLICKEYSTRUC- Struktur. Im Standardfall wird das aiKeyAlg Element der Struktur verwendet, auf das von pPubKeyStruc verwiesen wird, um den öffentlichen Schlüssel OID zu finden. Wenn der Wert von pszPubKeyOID nicht NULL-ist, wird der Standardwert außer Kraft gesetzt.
[in] cbPubKeyStruc
Die Größe des PUBLICKEYSTRUC-in Bytes.
[in] dwFlags
Reserviert für die zukünftige Verwendung und muss null sein.
[in] pvReserved
Reserviert für die zukünftige Verwendung und muss NULL-sein.
[out] pbHash
Ein Zeiger auf einen Puffer zum Empfangen des Hash- des öffentlichen Schlüssels und des Schlüsselbezeichners.
Um die Größe dieser Informationen für Speicherzuweisungszwecke abzurufen, legen Sie diesen Parameter auf NULL-fest. Weitere Informationen finden Sie unter Abrufen von Daten unbekannter Länge.
[in, out] pcbHash
Ein Zeiger auf eine DWORD-, die die Größe des Puffers in Byte angibt, auf den der PbHash-Parameter verweist. Wenn die Funktion zurückgegeben wird, enthält die DWORD- die Anzahl der im Puffer gespeicherten Bytes. Bei Verwendung von SHA1-Hashing beträgt die Länge des erforderlichen Puffers zwanzig.
Rückgabewert
Wenn die Funktion erfolgreich ist, gibt die Funktion nonzero (TRUE) zurück.
Wenn die Funktion fehlschlägt, wird null (FALSE) zurückgegeben. Rufen Sie für erweiterte Fehlerinformationen GetLastError-auf.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Windows XP [nur Desktop-Apps] |
mindestens unterstützte Server- | Windows Server 2003 [Nur Desktop-Apps] |
Zielplattform- | Fenster |
Header- | wincrypt.h |
Library | Crypt32.lib |
DLL- | Crypt32.dll |