Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Функция BCryptGetProperty извлекает значение именованного свойства для объекта CNG.
Синтаксис
NTSTATUS BCryptGetProperty(
[in] BCRYPT_HANDLE hObject,
[in] LPCWSTR pszProperty,
[out] PUCHAR pbOutput,
[in] ULONG cbOutput,
[out] ULONG *pcbResult,
[in] ULONG dwFlags
);
Параметры
[in] hObject
Дескриптор, представляющий объект CNG для получения значения свойства.
[in] pszProperty
Указатель на строку Юникода, завершающую значение NULL, содержащую имя свойства для извлечения. Это может быть один из стандартных идентификаторов Cryptography Primitive Property Identifiers или пользовательского идентификатора свойства.
[out] pbOutput
Адрес буфера, получающего значение свойства. Параметр cbOutput содержит размер этого буфера.
[in] cbOutput
Размер в байтах буфера pbOutput .
[out] pcbResult
Указатель на переменную ULONG , которая получает количество байтов, скопированных в буфер pbOutput . Если параметр pbOutput имеет NULLзначение, эта функция будет размещать требуемый размер в байтах в расположении, на которое указывает этот параметр.
[in] dwFlags
Набор флагов, изменяющих поведение этой функции. Для этой функции флаги не определены.
Этот параметр должен иметь значение нулю для ML-KEM.
Возвращаемое значение
Возвращает код состояния, указывающий на успешность или сбой функции.
Возможные коды возврата включают, но не ограничиваются следующими:
| Код возврата | Описание |
|---|---|
| STATUS_SUCCESS | Функция была успешной. |
| STATUS_BUFFER_TOO_SMALL | Размер буфера, указанный параметром cbOutput , недостаточно велик для хранения значения свойства. |
| STATUS_INVALID_HANDLE | Дескриптор в параметре hObject недопустим. |
| СТАТУС_НЕДЕЙСТВИТЕЛЬНЫЙ_ПАРАМЕТР | Один или несколько параметров недопустимы. |
| STATUS_NOT_SUPPORTED | Свойство, указанное параметром pszProperty , не поддерживается. |
Замечания
Чтобы получить требуемый размер свойства, передайте NULL для параметра pbOutput . Эта функция будет размещать требуемый размер в байтах в значении, на которое указывает параметр pcbResult .
В зависимости от того, какие режимы процессора поддерживает поставщик, BCryptGetProperty можно вызывать из пользовательского режима или режима ядра. Вызывающие серверы режима ядра могут выполняться в PASSIVE_LEVELIRQL или DISPATCH_LEVEL IRQL. Если текущий уровень IRQL DISPATCH_LEVEL, все указатели, передаваемые функции BCryptGetProperty , должны ссылаться на неупакованную (или заблокированную) память. Если объект, указанный в параметре hObject , является дескриптором, он должен быть открыт с помощью флага BCRYPT_PROV_DISPATCH .
Свойство BCRYPT_PARAMETER_SET_NAME должно быть задано в ключах BCrypt ML-DSA, прежде чем их можно будет использовать. Эти данные можно получить из ключевых объектов.
Чтобы вызвать эту функцию в режиме ядра, используйте Cng.libпакет средств разработки драйверов (DDK).
Windows Server 2008 и Windows Vista: Чтобы вызвать эту функцию в режиме ядра, используйте Ksecdd.lib.
Требования
| Требование | Ценность |
|---|---|
| Минимальный поддерживаемый клиент | Windows Vista [классические приложения | Приложения UWP] |
| минимальный поддерживаемый сервер | Windows Server 2008 [классические приложения | Приложения UWP] |
| целевая платформа | Виндоус |
| Заголовок | bcrypt.h |
| Библиотека | Bcrypt.lib |
| Библиотека dll | Bcrypt.dll |