Método IObjectId::InitializeFromAlgorithmName (certenroll.h)
O método InitializeFromAlgorithmName inicializa o objeto de um nome de algoritmo ou de um identificador de objeto. Esse método foi fornecido principalmente para permitir que você inicialize o objeto de um nome de algoritmo de API de Criptografia: CNG (Próxima Geração). No entanto, você pode especificar qualquer nome OID. Esse método está habilitado para a Web.
Sintaxe
HRESULT InitializeFromAlgorithmName(
[in] ObjectIdGroupId GroupId,
[in] ObjectIdPublicKeyFlags KeyFlags,
[in] AlgorithmFlags AlgFlags,
[in] BSTR strAlgorithmName
);
Parâmetros
[in] GroupId
Um valor de enumeração ObjectIdGroupId que especifica o grupo OID a ser pesquisado. Pode ser qualquer um dos seguintes 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
Um valor de enumeração ObjectIdPublicKeyFlags que especifica se deseja pesquisar uma assinatura ou um algoritmo de criptografia. Esse valor pode ser um dos seguintes:
- XCN_CRYPT_OID_INFO_PUBKEY_SIGN_KEY_FLAG
- XCN_CRYPT_OID_INFO_PUBKEY_ENCRYPT_KEY_FLAG
[in] AlgFlags
Um valor de enumeração AlgorithmFlags . Esse valor pode ser um dos seguintes:
- AlgorithmFlagsNone
- AlgorithmFlagsWrap
[in] strAlgorithmName
Uma variável BSTR que contém o nome. Você pode especificar um nome ou um OID no formato decimal pontilhado. O método verifica se o formato é consistente com o padrão ASN.1 X.208. Para obter mais informações sobre nomes de algoritmo CNG, consulte Identificadores de algoritmo CNG.
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 as informações de OID. |
|
O nome do algoritmo não é reconhecido. |
|
O objeto já está inicializado. |
Comentários
Você pode usar os 16 bits superiores do parâmetro GroupId para especificar o tamanho da chave para algoritmos que aceitam um comprimento de bit variável. Por exemplo, para inicializar um objeto IObjectId de um algoritmo AES de 192 bits, especifique "AES" para o parâmetro strAlgorithmName , mova o comprimento para a esquerda em 16 e execute uma combinação bit a bit OR no comprimento do bit deslocado e no valor GroupId .
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 |