Método ICspAlgorithm::GetAlgorithmOid (certenroll.h)
El método GetAlgorithmOid recupera el identificador de objeto de algoritmo (OID). Este método está habilitado para web.
Sintaxis
HRESULT GetAlgorithmOid(
[in] LONG Length,
[in] AlgorithmFlags AlgFlags,
[out] IObjectId **ppValue
);
Parámetros
[in] Length
Variable LONG que identifica el tamaño de clave necesario del algoritmo de cifrado simétrico. Use este parámetro para recuperar un algoritmo AES específico de una API de criptografía: proveedor de almacenamiento de claves (KSP) de próxima generación (CNG). Un KSP puede enumerar solo un algoritmo denominado AES, pero admite todas las variantes de AES en la lista siguiente:
- 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 especifica cero para el parámetro Length y AlgorithmFlagsNone (0x00000000) para el parámetro AlgFlags , se recupera el OID asociado al algoritmo predeterminado. Para el KSP de software de Microsoft y el KSP de tarjeta inteligente de Microsoft, el algoritmo AES predeterminado es szOID_NIST_AES128_CBC (2.16.840.1.101.3.4.1.2).
[in] AlgFlags
Valor de enumeración AlgorithmFlags que especifica si se va a buscar un algoritmo de ajuste de claves. Puede ser uno de los siguientes valores:
- AlgorithmFlagsNone
- AlgorithmFlagsWrap
Especificar AlgorithmFlagsWrap hace que este método busque algoritmos para los que el nombre para mostrar termina con "wrap". Esto incluye los siguientes OID:
- 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 especifica cero para el parámetro Length y AlgorithmFlagsNone (0x00000000) para el parámetro AlgFlags , se recupera el OID asociado al algoritmo predeterminado. Para el KSP de software de Microsoft y el KSP de tarjeta inteligente de Microsoft, el algoritmo AES predeterminado es szOID_NIST_AES128_CBC (2.16.840.1.101.3.4.1.2).
[out] ppValue
Dirección de una variable que recibe un puntero a una interfaz IObjectId que representa el OID del algoritmo.
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ó el OID del algoritmo. |
|
No se ha inicializado la información de CSP. Para obtener más información, consulte la interfaz ICspInformation . |
Comentarios
Debe llamar al método InitializeFromName o al método InitializeFromType en la interfaz ICspInformation antes de llamar a GetAlgorithmOid.
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 |