Método IObjectId::InitializeFromAlgorithmName (certenroll.h)
El método InitializeFromAlgorithmName inicializa el objeto a partir de un nombre de algoritmo o un identificador de objeto. Este método se ha proporcionado principalmente para permitirle inicializar el objeto a partir de un nombre de algoritmo cryptography API: Next Generation (CNG). Sin embargo, puede especificar cualquier nombre de OID. Este método está habilitado para web.
Sintaxis
HRESULT InitializeFromAlgorithmName(
[in] ObjectIdGroupId GroupId,
[in] ObjectIdPublicKeyFlags KeyFlags,
[in] AlgorithmFlags AlgFlags,
[in] BSTR strAlgorithmName
);
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
- 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_SIGN_KEY_FLAG
- XCN_CRYPT_OID_INFO_PUBKEY_ENCRYPT_KEY_FLAG
[in] AlgFlags
Valor de enumeración AlgorithmFlags . Puede ser uno de los siguientes valores:
- AlgorithmFlagsNone
- AlgorithmFlagsWrap
[in] strAlgorithmName
Variable BSTR que contiene el nombre. Puede especificar un nombre o un OID en formato decimal con puntos. El método comprueba que el formato es coherente con el estándar ASN.1 X.208. Para obtener más información sobre los nombres de algoritmo de CNG, consulte Identificadores de algoritmo de CNG.
Valor devuelto
Si la función se realiza 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 los que se indican en la tabla siguiente, entre otros. Para obtener una lista de códigos de error comunes, consulte Valores HRESULT comunes.
Código o valor devuelto | Descripción |
---|---|
|
No se encontró la información del OID. |
|
No se reconoce el nombre del algoritmo. |
|
El objeto ya se ha inicializado. |
Comentarios
Puede usar los 16 bits superiores del parámetro GroupId para especificar el tamaño de clave de los algoritmos que aceptan 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 , deslice la longitud izquierda por 16 y realice una combinación or bit a bit en la longitud de bits desplazada y el valor GroupId .
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows Vista [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2008 [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | certenroll.h |
Archivo DLL | CertEnroll.dll |