Partager via


Méthode IObjectId ::GetAlgorithmName (certenroll.h)

La méthode GetAlgorithmName récupère le nom d’affichage associé à un identificateur d’objet d’algorithme (OID).

Syntaxe

HRESULT GetAlgorithmName(
  [in]  ObjectIdGroupId        GroupId,
  [in]  ObjectIdPublicKeyFlags KeyFlags,
  [out] BSTR                   *pstrAlgorithmName
);

Paramètres

[in] GroupId

Valeur d’énumération ObjectIdGroupId qui spécifie le groupe OID à rechercher. Il peut s’agir de l’un des groupes d’algorithmes suivants :

  • XCN_CRYPT_HASH_ALG_OID_GROUP_ID
  • XCN_CRYPT_ENCRYPT_ALG_OID_GROUP_ID
  • XCN_CRYPT_PUBKEY_ALG_OID_GROUP_ID
  • XCN_CRYPT_SIGN_ALG_OID_GROUP_ID
En outre, vous pouvez également spécifier des groupes qui ne contiennent pas d’algorithmes de chiffrement :
  • XCN_CRYPT_RDN_ATTR_OID_GROUP_ID
  • XCN_CRYPT_EXT_OR_ATTR_OID_GROUP_ID
  • XCN_CRYPT_ENHKEY_USAGE_OID_GROUP_ID
  • XCN_CRYPT_POLICY_OID_GROUP_ID
  • XCN_CRYPT_TEMPLATE_OID_GROUP_ID

[in] KeyFlags

Valeur d’énumération ObjectIdPublicKeyFlags qui spécifie s’il faut rechercher un algorithme de signature ou de chiffrement. Il peut s’agir de l’une des valeurs suivantes :

  • XCN_CRYPT_OID_INFO_PUBKEY_ANY
  • XCN_CRYPT_OID_INFO_PUBKEY_SIGN_KEY_FLAG
  • XCN_CRYPT_OID_INFO_PUBKEY_ENCRYPT_KEY_FLAG
Vous pouvez utiliser l’une des deux dernières valeurs pour lever l’ambiguïté entre les algorithmes tels que RSA qui peuvent être utilisés pour chiffrer et signer des messages. Vous devez également spécifier XCN_CRYPT_PUBKEY_ALG_OID_GROUP_ID dans le paramètre GroupId . Spécifiez XCN_CRYPT_OID_INFO_PUBKEY_ANY si vous définissez le paramètre GroupId sur autre chose que XCN_CRYPT_PUBKEY_ALG_OID_GROUP_ID.

[out] pstrAlgorithmName

Pointeur vers une variable BSTR qui contient le nom.

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
CERTSRV_E_PROPERTY_EMPTY
La chaîne qui contient le nom de l’algorithme est vide.
OLE_E_BLANK
Le nom de l’algorithme est introuvable. Vous devez appeler InitializeFromAlgorithmName avant d’appelerGetAlgorithmName.

Remarques

Vous pouvez utiliser la constante XCN_CRYPT_ENCRYPT_ALG_OID_GROUP_ID pour créer une valeur de paramètre GroupId qui prend en compte la taille de la clé pour les algorithmes qui peuvent être identifiés par une longueur de bits variable. Par exemple, pour initialiser un objet IObjectId à partir d’un algorithme AES 192 bits, spécifiez « AES » pour le paramètre strAlgorithmName , déplacez la longueur vers la gauche de 16 et effectuez une combinaison or au niveau du bit sur la longueur de bits décalée et la XCN_CRYPT_ENCRYPT_ALG_OID_GROUP_ID.

Si vous définissez le paramètre GroupId sur autre chose que XCN_CRYPT_PUBKEY_ALG_OID_GROUP_ID, spécifiez XCN_CRYPT_OID_INFO_PUBKEY_ANY pour le paramètre KeyFlags .

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

Voir aussi

IObjectId