Método ICspAlgorithm::GetAlgorithmOid (certenroll.h)
O método GetAlgorithmOid recupera o OID (identificador de objeto de algoritmo). Esse método está habilitado para a Web.
Sintaxe
HRESULT GetAlgorithmOid(
[in] LONG Length,
[in] AlgorithmFlags AlgFlags,
[out] IObjectId **ppValue
);
Parâmetros
[in] Length
Uma variável LONG que identifica o tamanho da chave necessário do algoritmo de criptografia simétrica. Use esse parâmetro para recuperar um algoritmo AES específico de uma API de Criptografia: KSP (provedor de armazenamento de chaves) de próxima geração (CNG). Um KSP pode listar apenas um algoritmo chamado AES, mas dar suporte a todas as variantes do AES na lista a seguir:
- 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)
Se você especificar zero para o parâmetro Length e AlgorithmFlagsNone (0x00000000) para o parâmetro AlgFlags , o OID associado ao algoritmo padrão será recuperado. Para o KSP do Microsoft Software e o KSP do Cartão Inteligente da Microsoft, o algoritmo AES padrão é szOID_NIST_AES128_CBC (2.16.840.1.101.3.4.1.2).
[in] AlgFlags
Um valor de enumeração AlgorithmFlags que especifica se um algoritmo de encapsulamento de chave deve ser pesquisado. Esse valor pode ser um dos seguintes:
- AlgorithmFlagsNone
- AlgorithmFlagsWrap
Especificar AlgorithmFlagsWrap faz com que esse método pesquise algoritmos para os quais o nome de exibição termina com "wrap". Isso inclui os seguintes OIDs:
- 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)
Se você especificar zero para o parâmetro Length e AlgorithmFlagsNone (0x00000000) para o parâmetro AlgFlags , o OID associado ao algoritmo padrão será recuperado. Para o KSP do Microsoft Software e o KSP do Cartão Inteligente da Microsoft, o algoritmo AES padrão é szOID_NIST_AES128_CBC (2.16.840.1.101.3.4.1.2).
[out] ppValue
Endereço de uma variável que recebe um ponteiro para uma interface IObjectId que representa o algoritmo OID.
Retornar valor
Se a função for bem-sucedida, a função retornará S_OK.
Se a função falhar, ela retornará um valor HRESULT que indica o erro. Os possíveis valores incluem, mas sem limitação, aqueles na tabela a seguir. Para obter uma lista de códigos de erro comuns, consulte Valores HRESULT comuns.
Valor/código retornado | Descrição |
---|---|
|
Não foi possível encontrar o OID do algoritmo. |
|
As informações do CSP não foram inicializadas. Para obter mais informações, consulte a interface ICspInformation . |
Comentários
Você deve chamar o método InitializeFromName ou o método InitializeFromType na interface ICspInformation antes de chamar GetAlgorithmOid.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows Vista [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2008 [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | certenroll.h |
DLL | CertEnroll.dll |