Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Метод GetAlgorithmOid извлекает идентификатор объекта алгоритма (OID). Этот метод включен в Интернете.
Синтаксис
HRESULT GetAlgorithmOid(
[in] LONG Length,
[in] AlgorithmFlags AlgFlags,
[out] IObjectId **ppValue
);
Параметры
[in] Length
Переменная LONG , определяющая необходимый размер ключа алгоритма симметричного шифрования. Используйте этот параметр для получения определенного алгоритма AES из API шифрования: поставщик хранилища ключей следующего поколения (CNG). KSP может содержать только один алгоритм с именем AES, но поддерживает все варианты AES в следующем списке:
- 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)
Если для параметра AlgFlagsNone (0x00000000) указать ноль параметра Length и AlgorithmFlags, извлекается OID, связанный с алгоритмом по умолчанию. Для KSP Программного обеспечения Майкрософт и KSP Microsoft Smart Card алгоритм AES по умолчанию szOID_NIST_AES128_CBC (2.16.840.1.101.3.4.1.2).
[in] AlgFlags
Значение перечисления AlgorithmFlags , указывающее, следует ли искать алгоритм упаковки ключей. Может иметь одно из следующих значений:
- AlgorithmFlagsNone
- AlgorithmFlagsWrap
Указание AlgorithmFlagsWrap приводит к поиску алгоритмов, для которых отображаемое имя заканчивается "оболочкой". К ним относятся следующие 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)
Если для параметра AlgFlagsNone (0x00000000) указать ноль параметра Length и AlgorithmFlags, извлекается OID, связанный с алгоритмом по умолчанию. Для KSP Программного обеспечения Майкрософт и KSP Microsoft Smart Card алгоритм AES по умолчанию szOID_NIST_AES128_CBC (2.16.840.1.101.3.4.1.2).
[out] ppValue
Адрес переменной, получающей указатель на интерфейс IObjectId , представляющий алгоритм OID.
Возвращаемое значение
Если функция выполнена успешно, функция возвращает S_OK.
Если функция завершается ошибкой, она возвращает значение HRESULT , указывающее на ошибку. Возможные значения включают, но не ограничиваются ими в следующей таблице. Список распространенных кодов ошибок см. в разделе "Общие значения HRESULT".
| Возврат кода или значения | Description |
|---|---|
|
Не удалось найти алгоритм OID. |
|
Сведения CSP не инициализированы. Дополнительные сведения см. в интерфейсе ICspInformation . |
Замечания
Перед вызовом GetAlgorithmOid необходимо вызвать метод InitializeFromName или метод InitializeFromType в интерфейсе ICspInformation.
Требования
| Требование | Ценность |
|---|---|
| Минимальный поддерживаемый клиент | Windows Vista [только классические приложения] |
| минимальный поддерживаемый сервер | Windows Server 2008 [только классические приложения] |
| целевая платформа | Виндоус |
| Header | certenroll.h |
| DLL | CertEnroll.dll |