CertGetCRLContextProperty-Funktion (wincrypt.h)
Die CertGetCRLContextProperty-Funktion ruft eine erweiterte Eigenschaft für den angegebenen Zertifikatsperrlistenkontext (Certificate Revocation List , CRL) ab.
Syntax
BOOL CertGetCRLContextProperty(
[in] PCCRL_CONTEXT pCrlContext,
[in] DWORD dwPropId,
[out] void *pvData,
[in, out] DWORD *pcbData
);
Parameter
[in] pCrlContext
Ein Zeiger auf die CRL_CONTEXT-Struktur .
[in] dwPropId
Gibt die abzurufende Eigenschaft an. Derzeit definierte Bezeichner und der datentyp, der in pvData zurückgegeben werden soll, sind in der folgenden Tabelle aufgeführt.
Wert | Bedeutung |
---|---|
|
Datentyp für pvData: Zeiger auf ein DWORD
Gibt einen DWORD-Wert zurück, der angibt, ob Schreibvorgänge in das Zertifikat beibehalten werden. Der DWORD-Wert wird nicht festgelegt, wenn sich das Zertifikat in einem Speicher oder in einem registrierungsbasierten Speicher befindet, der schreibgeschützt geöffnet ist. |
|
Datentyp für pvData: NULL
Gibt an, dass das Zertifikat während der Enumerationen übersprungen wird. Ein Zertifikat mit diesem Eigenschaftensatz wird mit expliziten Suchvorgängen gefunden, z. B. mit denen, die zum Suchen eines Zertifikats mit einem bestimmten Hash oder einer Seriennummer verwendet werden. Dieser Eigenschaft sind keine Daten in pvData zugeordnet. |
|
Datentyp für pvData: Zeiger auf ein BYTE-Array Gibt eine mit NULL endende Unicode-Zeichenfolge mit dem Namen des Zertifikattyps zurück, für den das Zertifikat automatisch registriert wurde. |
|
Datentyp für pvData: Zeiger auf ein BYTE-Array Gibt ein Bytearray zurück , das eine ASN.1-codierte asn.1-codierte CTL_USAGE-Struktur enthält. |
|
Datentyp für pvData: Zeiger auf ein BYTE-Array Gibt die Eigenschaft zurück, die von der Zertifikatbenutzeroberfläche angezeigt wird. Mit dieser Eigenschaft kann der Benutzer die Verwendung des Zertifikats beschreiben. |
|
Datentyp für pvData: Gibt ein Bytearray zurück, das eine ASN.1-codierte CERT_ENHKEY_USAGE-Struktur enthält. |
|
Datentyp für pvData: Zeiger auf ein BYTE-Array Gibt eine Unicode-Zeichenfolge mit Null-Termin zurück, die den Anzeigenamen für die Zertifikatsperrliste enthält. |
|
Datentyp für pvData: Zeiger auf eine unicode-Zeichenfolge mit Null-Endung.
Gibt eine Zeichenfolge zurück, die einen Satz von L"<PUBKEY>/<BITLENGTH>"-Algorithmus-Paaren mit öffentlichem Schlüssel und Bitlängenpaaren enthält. Das Semikolon L";" wird als Trennzeichen verwendet. Der <PUBKEY-Wert> identifiziert den Öffentlichen Schlüsselalgorithmus von CNG. Die folgenden Algorithmen werden unterstützt:
Hinweis Diese Eigenschaft kann nicht für ein delegiertes OCSP-Signerzertifikat abgerufen werden. Ein delegiertes Signaturzertifikat wird mit demselben Schlüssel signiert, der zum Signieren des Antragstellerzertifikats verwendet wird, und dort überprüft.
: L"RSA/2048; RSA/4096" |
|
Datentyp für pvData: Zeiger auf eine unicode-Zeichenfolge mit Null-Endung.
Gibt eine Zeichenfolge zurück, die einen Satz von L"<SIGNATURE HASH"->/<>Algorithmuspaaren enthält. Das Semikolon L";" wird als Trennzeichen zwischen Paaren verwendet. Diese Eigenschaft wird nur festgelegt, wenn eine OCSP-Antwort in eine CRL konvertiert wird. Für ein delegiertes OCSP-Signaturzertifikat wird nur das Algorithmuspaar für das Signiererzertifikat zurückgegeben. Für eine unabhängige OCSP-Signatur-Zertifikatkette wird für jedes Zertifikat in der Kette ein Algorithmuspaar mit Ausnahme des Stamms zurückgegeben. Der <SIGNATURE-Wert> identifiziert den Öffentlichen Schlüsselalgorithmus von CNG. Die folgenden Algorithmen werden unterstützt:
|
|
Datentyp für pvData: Zeiger auf einen DWORD-Wert .
Gibt die Länge des öffentlichen Schlüssels im Zertifikat des Zertifikatsperrlistenausstellers in Bits zurück. Diese Eigenschaft gilt auch für eine OCSP-Antwort, die in eine CRL konvertiert wurde. Windows 8 und Windows Server 2012: Die Unterstützung für diese Eigenschaft beginnt. |
|
Datentyp für pvData: Zeiger auf eine CERT_KEY_CONTEXT
Gibt eine CERT_KEY_CONTEXT-Struktur zurück. |
|
Datentyp für pvData: Zeiger auf ein BYTE-Array Wenn nicht vorhanden, sucht nach der erweiterung szOID_SUBJECT_KEY_IDENTIFIER. Wenn dies fehlschlägt, wird ein SHA1-Hash für das SubjectPublicKeyInfo-Element des Zertifikats ausgeführt, um die Bezeichnerwerte zu erzeugen. |
|
Datentyp für pvData: Zeiger auf eine HCRYPTPROV
Gibt das vom CERT_KEY_CONTEXT_PROP_ID abgerufene Anbieterhandle zurück. |
|
Datentyp für pvData: Zeiger auf eine CRYPT_KEY_PROV_INFO
Gibt einen Zeiger auf eine CRYPT_KEY_PROV_INFO zurück. |
|
Datentyp für pvData: Zeiger auf ein DWORD
Gibt einen DWORD-Wert zurück, der den privaten Schlüssel angibt, der von CERT_KEY_CONTEXT_PROP_ID -Eigenschaft abgerufen wurde, sofern vorhanden. Andernfalls, wenn CERT_KEY_PROV_INFO_PROP_ID vorhanden ist, ist dies die Quelle von dwKeySpec. |
|
Datentyp für pvData: Zeiger auf ein BYTE-Array Gibt den MD5-Hash zurück. Wenn der Hash nicht vorhanden ist, wird er mit CryptHashCertificate berechnet. |
|
Datentyp für pvData: Zeiger auf ein BYTE-Array Gibt die ASN.1-codierte CERT_ALT_NAME_INFO-Struktur zurück. CERT_NEXT_UPDATE_LOCATION_PROP_ID wird derzeit nur mit CTLs verwendet. |
|
Datentyp für pvData: Zeiger auf ein BYTE-Array Gibt eine breite Unicode-Zeichenfolge mit Null-Beendigung zurück, die den Dateinamen angibt, der den privaten Schlüssel enthält, der dem öffentlichen Schlüssel des Zertifikats zugeordnet ist. |
|
Datentyp für pvData: Zeiger auf ein BYTE-Array Gibt den SHA1-Hash zurück. Wenn der Hash nicht vorhanden ist, wird er mithilfe von CryptHashCertificate berechnet. |
|
Datentyp von pvData: Zeiger auf eine Unicode-Zeichenfolge mit Null-Endung.
Gibt die L"<SIGNATURE>/<HASH>"-Zeichenfolge zurück, die die Zertifikatsignatur darstellt. Der <SIGNATURE-Wert> identifiziert den Öffentlichen CNG-Schlüsselalgorithmus. Die folgenden Algorithmen werden unterstützt:
Windows 8 und Windows Server 2012: Die Unterstützung für diese Eigenschaft beginnt. |
|
Datentyp für pvData: Zeiger auf ein BYTE-Array Gibt den Signaturhash zurück. Wenn der Hash nicht vorhanden ist, wird er mit CryptHashToBeSigned berechnet. Die Länge des Hashes beträgt 20 Bytes für SHA und 16 byte für MD5. |
Bei vielen Eigenschaftsbezeichnern verweist pvData auf ein Array von Bytes und nicht auf ein CRYPT_DATA_BLOB , wie der pvData-Parameter in CertSetCRLContextProperty zeigt.
Weitere Informationen zu den einzelnen Eigenschaftenbezeichnern finden Sie in der Dokumentation zum dwPropId-Parameter in CertSetCertificateContextProperty.
[out] pvData
Ein Zeiger auf einen Puffer, um die Von dwPropId ermittelten Daten zu empfangen. Strukturen, auf die von Elementen einer zurückgegebenen Struktur verwiesen wird, werden ebenfalls nach der Basisstruktur zurückgegeben. Daher überschreitet die in pcbData enthaltene Größe häufig die Größe der Basisstruktur.
Dieser Parameter kann NULL sein, um die Größe der Informationen für Speicherzuordnungszwecke festzulegen. Weitere Informationen finden Sie unter Abrufen von Daten unbekannter Länge.
[in, out] pcbData
Ein Zeiger auf einen DWORD-Wert , der die Größe des Puffers in Bytes angibt, auf den der pvData-Parameter verweist. Wenn die Funktion zurückgibt, enthält der DWORD-Wert die Anzahl der Bytes, die im Puffer gespeichert werden sollen.
Rückgabewert
Wenn die Funktion erfolgreich ist, ist der Rückgabewert TRUE.
Wenn die Funktion fehlschlägt, ist der Rückgabewert FALSE.
Beachten Sie, dass Fehler aus der aufgerufenen Funktion CryptHashCertificate an diese Funktion weitergegeben werden können. Rufen Sie GetLastError auf, um erweiterte Fehlerinformationen zu erhalten. Es folgen einige mögliche Fehlercodes.
Rückgabecode | Beschreibung |
---|---|
|
Die Zertifikatsperrliste verfügt nicht über die angegebene Eigenschaft. |
|
Wenn der vom pvData-Parameter angegebene Puffer nicht groß genug ist, um die zurückgegebenen Daten aufzunehmen, legt die Funktion den ERROR_MORE_DATA Code fest und speichert die erforderliche Puffergröße in Bytes in der Variablen, auf die von pcbData verwiesen wird. |
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows XP [Desktop-Apps | UWP-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2003 [Desktop-Apps | UWP-Apps] |
Zielplattform | Windows |
Kopfzeile | wincrypt.h |
Bibliothek | Crypt32.lib |
DLL | Crypt32.dll |