Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Метод InitializeFromAlgorithmName инициализирует объект из имени алгоритма или идентификатора объекта. Этот метод был предоставлен в основном для инициализации объекта из API шифрования: имя алгоритма следующего поколения (CNG). Однако можно указать любое имя OID. Этот метод включен в Интернете.
Синтаксис
HRESULT InitializeFromAlgorithmName(
[in] ObjectIdGroupId GroupId,
[in] ObjectIdPublicKeyFlags KeyFlags,
[in] AlgorithmFlags AlgFlags,
[in] BSTR strAlgorithmName
);
Параметры
[in] GroupId
Значение перечисления ObjectIdGroupId , указывающее группу OID для поиска. Это может быть любой из следующих групп алгоритмов:
- 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
Значение перечисления ObjectIdPublicKeyFlags , указывающее, следует ли выполнять поиск подписи или алгоритма шифрования. Может иметь одно из следующих значений:
- XCN_CRYPT_OID_INFO_PUBKEY_SIGN_KEY_FLAG
- XCN_CRYPT_OID_INFO_PUBKEY_ENCRYPT_KEY_FLAG
[in] AlgFlags
Значение перечисления AlgorithmFlags . Может иметь одно из следующих значений:
- AlgorithmFlagsNone
- AlgorithmFlagsWrap
[in] strAlgorithmName
Переменная BSTR , содержащая имя. Можно указать имя или OID в пунктирном десятичном формате. Метод проверяет, соответствует ли формат стандарту ASN.1 X.208. Дополнительные сведения об именах алгоритмов CNG см. в разделе "Идентификаторы алгоритма CNG".
Возвращаемое значение
Если функция выполнена успешно, функция возвращает S_OK.
Если функция завершается ошибкой, она возвращает значение HRESULT , указывающее на ошибку. Возможные значения включают, но не ограничиваются ими в следующей таблице. Список распространенных кодов ошибок см. в разделе "Общие значения HRESULT".
| Возврат кода или значения | Description |
|---|---|
|
Не удалось найти сведения об OID. |
|
Имя алгоритма не распознается. |
|
Объект уже инициализирован. |
Замечания
Можно использовать верхние 16 бит параметра GroupId , чтобы указать размер ключа для алгоритмов, которые принимают переменную битовую длину. Например, чтобы инициализировать объект IObjectId из 192-разрядного алгоритма AES, укажите "AES" для параметра strAlgorithmName , переместите длину влево на 16 и выполните побитовую комбинацию по битовой длине и значению GroupId .
Требования
| Требование | Ценность |
|---|---|
| Минимальный поддерживаемый клиент | Windows Vista [только классические приложения] |
| минимальный поддерживаемый сервер | Windows Server 2008 [только классические приложения] |
| целевая платформа | Виндоус |
| Header | certenroll.h |
| DLL | CertEnroll.dll |