Compartir a través de


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

El método GetAlgorithmName recupera el nombre para mostrar asociado a un identificador de objeto de algoritmo (OID).

Syntax

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

Parámetros

[in] GroupId

Valor de enumeración ObjectIdGroupId que especifica el grupo de OID que se va a buscar. Puede ser cualquiera de los siguientes grupos de algoritmos:

  • 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
Además, también puede especificar grupos que no contengan algoritmos criptográficos:
  • 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

Valor de enumeración ObjectIdPublicKeyFlags que especifica si se debe buscar una firma o un algoritmo de cifrado. Puede ser uno de los siguientes valores:

  • XCN_CRYPT_OID_INFO_PUBKEY_ANY
  • XCN_CRYPT_OID_INFO_PUBKEY_SIGN_KEY_FLAG
  • XCN_CRYPT_OID_INFO_PUBKEY_ENCRYPT_KEY_FLAG
Puede usar cualquiera de los dos últimos valores para desambiguar entre algoritmos, como RSA, que se pueden usar para cifrar y firmar mensajes. También debe especificar XCN_CRYPT_PUBKEY_ALG_OID_GROUP_ID en el parámetro GroupId . Especifique XCN_CRYPT_OID_INFO_PUBKEY_ANY si establece el parámetro GroupId en algo distinto de XCN_CRYPT_PUBKEY_ALG_OID_GROUP_ID.

[out] pstrAlgorithmName

Puntero a una variable BSTR que contiene el nombre.

Valor devuelto

Si la función se ejecuta correctamente, la función devuelve S_OK.

Si se produce un error en la función, devuelve un valor HRESULT que indica el error. Entre los valores posibles se incluyen, entre otros, los de la tabla siguiente. Para obtener una lista de códigos de error comunes, consulte Valores HRESULT comunes.

Código y valor devueltos Description
CERTSRV_E_PROPERTY_EMPTY
La cadena que contiene el nombre del algoritmo está vacía.
OLE_E_BLANK
No se encontró el nombre del algoritmo. Debe llamar a InitializeFromAlgorithmName antes de llamar a GetAlgorithmName.

Observaciones

Puede usar la constante XCN_CRYPT_ENCRYPT_ALG_OID_GROUP_ID para crear un valor de parámetro GroupId que tenga en cuenta el tamaño de clave de los algoritmos que se pueden identificar con una longitud de bits variable. Por ejemplo, para inicializar un objeto IObjectId a partir de un algoritmo AES de 192 bits, especifique "AES" para el parámetro strAlgorithmName , cambie la longitud izquierda por 16 y realice una combinación or bit a bit en la longitud de bits desplazada y XCN_CRYPT_ENCRYPT_ALG_OID_GROUP_ID.

Si establece el parámetro GroupId en algo distinto de XCN_CRYPT_PUBKEY_ALG_OID_GROUP_ID, especifique XCN_CRYPT_OID_INFO_PUBKEY_ANY para el parámetro KeyFlags .

Requisitos

Requirement Importancia
Cliente mínimo compatible Windows Vista [solo aplicaciones de escritorio]
Servidor mínimo admitido Windows Server 2008 [solo aplicaciones de escritorio]
de la plataforma de destino de Windows
Header certenroll.h
DLL de CertEnroll.dll

Consulte también

IObjectId