Share via


ICspAlgorithm ::GetAlgorithmOid, méthode (certenroll.h)

La méthode GetAlgorithmOid récupère l’identificateur d’objet d’algorithme (OID). Cette méthode est activée sur le web.

Syntaxe

HRESULT GetAlgorithmOid(
  [in]  LONG           Length,
  [in]  AlgorithmFlags AlgFlags,
  [out] IObjectId      **ppValue
);

Paramètres

[in] Length

Variable LONG qui identifie la taille de clé requise de l’algorithme de chiffrement symétrique. Utilisez ce paramètre pour récupérer un algorithme AES spécifique à partir d’une API de chiffrement : fournisseur de stockage de clés (KSP) nouvelle génération (CNG). Un KSP ne peut répertorier qu’un seul algorithme nommé AES, mais prend en charge toutes les variantes AES dans la liste suivante :

  • szOID_NIST_AES128_CBC (2.16.840.1.101.3.4.1.2)
  • szOID_NIST_AES192_CBC (2.16.840.1.101.3.4.1.22)
  • szOID_NIST_AES256_CBC (2.16.840.1.101.3.4.1.42)
  • szOID_NIST_AES128_WRAP (2.16.840.1.101.3.4.1.5)
  • szOID_NIST_AES192_WRAP (2.16.840.1.101.3.4.1.25)
  • szOID_NIST_AES256_WRAP (2.16.840.1.101.3.4.1.45)

Si vous spécifiez zéro pour le paramètre Length et AlgorithmFlagsNone (0x00000000) pour le paramètre AlgFlags , l’OID associé à l’algorithme par défaut est récupéré. Pour le KSP logiciel Microsoft et le KSP de carte à puce Microsoft, l’algorithme AES par défaut est szOID_NIST_AES128_CBC (2.16.840.1.101.3.4.1.2).

Note Ce paramètre doit être égal à zéro pour tout algorithme autre qu’un algorithme de chiffrement symétrique.

 

[in] AlgFlags

Valeur d’énumération AlgorithmFlags qui spécifie s’il faut rechercher un algorithme d’habillage de clé. Il peut s’agir de l’une des valeurs suivantes :

  • AlgorithmFlagsNone
  • AlgorithmFlagsWrap

Si vous spécifiez AlgorithmFlagsWrap , cette méthode recherche des algorithmes pour lesquels le nom d’affichage se termine par « wrap ». Cela inclut les OID suivants :

  • szOID_NIST_AES128_WRAP (2.16.840.1.101.3.4.1.5)
  • szOID_NIST_AES192_WRAP (2.16.840.1.101.3.4.1.25)
  • szOID_NIST_AES256_WRAP (2.16.840.1.101.3.4.1.45)
  • XCN_OID_RSA_SMIMEalgCMS3DESwrap (1.2.840.113549.1.9.16.3.6)
  • XCN_OID_RSA_SMIMEalgCMSRC2wrap (1.2.840.113549.1.9.16.3.7)

Si vous spécifiez zéro pour le paramètre Length et AlgorithmFlagsNone (0x00000000) pour le paramètre AlgFlags , l’OID associé à l’algorithme par défaut est récupéré. Pour le KSP logiciel Microsoft et le KSP de carte à puce Microsoft, l’algorithme AES par défaut est szOID_NIST_AES128_CBC (2.16.840.1.101.3.4.1.2).

Note Ce paramètre doit être égal à zéro pour tout algorithme autre qu’un algorithme de chiffrement symétrique.

 

[out] ppValue

Adresse d’une variable qui reçoit un pointeur vers une interface IObjectId qui représente l’OID de l’algorithme.

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
L’OID de l’algorithme est introuvable.
OLE_E_BLANK
Les informations csp n’ont pas été initialisées. Pour plus d’informations, consultez l’interface ICspInformation .

Remarques

Vous devez appeler la méthode InitializeFromName ou la méthode InitializeFromType sur l’interface ICspInformation avant d’appeler GetAlgorithmOid.

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

ICspAlgorithm