IX509PublicKey::ComputeKeyIdentifier-Methode (certenroll.h)
Die ComputeKeyIdentifier-Methode erstellt einen Bezeichner aus einem 160-Bit-SHA-1-Hash des öffentlichen Schlüssels.
Syntax
HRESULT ComputeKeyIdentifier(
[in] KeyIdentifierHashAlgorithm Algorithm,
[in] EncodingType Encoding,
[out] BSTR *pValue
);
Parameter
[in] Algorithm
Ein Wert der KeyIdentifierHashAlgorithm-Enumeration , der angibt, welchen Hashalgorithmus zum Erstellen des Schlüsselbezeichners verwendet werden soll.
Wenn dieser Wert SKIHashDefault oder SKIHashSha1 ist, wird der Bezeichner erstellt, indem nur das Bytearray gehasht wird, das den Schlüssel enthält, und die Felder Distinguished Encoding Rules (DER) Tag, Länge und nicht verwendete Bits ausschließen.
Wenn dieser Wert SKIHashCapiSha1 ist, wird der Bezeichner durch Hashing des DER-codierten Bytearrays erstellt, das das Tag, die Länge, die Anzahl nicht verwendeter Bits und den öffentlichen Schlüssel enthält.
[in] Encoding
Ein EncodingType-Enumerationswert , der den Typ der Unicode-Codierung angibt, der auf den im pValue-Parameter enthaltenen Hash angewendet werden soll. Der Standardwert ist XCN_CRYPT_STRING_BASE64.
[out] pValue
Zeiger auf eine BSTR-Variable , die den Schlüsselbezeichner enthält.
Rückgabewert
Wenn die Funktion erfolgreich ist, gibt die Funktion S_OK zurück.
Wenn die Funktion fehlschlägt, gibt sie einen HRESULT-Wert zurück, der den Fehler angibt. Mögliches Werte (aber nicht die Einzigen) sind die in der folgenden Tabelle. Eine Liste allgemeiner Fehlercodes finden Sie unter Allgemeine HRESULT-Werte.
Rückgabecode/-wert | BESCHREIBUNG |
---|---|
|
Der Algorithmusobjektbezeichner oder die Parameter für den öffentlichen Schlüssel konnten nicht gefunden werden. |
Hinweise
Sie müssen die InitializeFromEncodedPublicKeyInfo-Methode oder die Initialize-Methode aufrufen, um das Öffentliche Schlüsselobjekt zu initialisieren, bevor ComputeKeyIdentifier aufgerufen wird.
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 | certenroll.h |
DLL | CertEnroll.dll |