IX509PublicKey ::ComputeKeyIdentifier, méthode (certenroll.h)
La méthode ComputeKeyIdentifier crée un identificateur à partir d’un hachage SHA-1 160 bits de la clé publique.
Syntaxe
HRESULT ComputeKeyIdentifier(
[in] KeyIdentifierHashAlgorithm Algorithm,
[in] EncodingType Encoding,
[out] BSTR *pValue
);
Paramètres
[in] Algorithm
Valeur de l’énumération KeyIdentifierHashAlgorithm qui spécifie l’algorithme de hachage à utiliser pour créer l’identificateur de clé.
Si cette valeur est SKIHashDefault ou SKIHashSha1, l’identificateur est créé en hachant uniquement le tableau d’octets qui contient la clé et en excluant les champs de balise Distinguished Encoding Rules (DER), de longueur et de bits inutilisés.
Si cette valeur est SKIHashCapiSha1, l’identificateur est créé en hachant le tableau d’octets encodé en DER qui contient l’étiquette, la longueur, le nombre de bits inutilisés et la clé publique.
[in] Encoding
Valeur d’énumération EncodingType qui spécifie le type d’encodage Unicode à appliquer au hachage contenu dans le paramètre pValue . La valeur par défaut est XCN_CRYPT_STRING_BASE64.
[out] pValue
Pointeur vers une variable BSTR qui contient l’identificateur de clé.
Valeur retournée
Si la fonction réussit, la fonction retourne S_OK.
Si la fonction échoue, elle retourne une valeur HRESULT qui indique l’erreur. Les valeurs possibles sont notamment celles figurant dans le tableau suivant. Pour obtenir la liste des codes d’erreur courants, consultez Valeurs HRESULT courantes.
Code/valeur de retour | Description |
---|---|
|
L’identificateur d’objet de l’algorithme ou les paramètres de clé publique sont introuvables. |
Remarques
Vous devez appeler la méthode InitializeFromEncodedPublicKeyInfo ou la méthode Initialize pour initialiser l’objet de clé publique avant d’appeler ComputeKeyIdentifier.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows Vista [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2008 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | certenroll.h |
DLL | CertEnroll.dll |