IOCTL_BIOMETRIC_GET_SUPPORTED_ALGORITHMS IOCTL (winbio_ioctl.h)
IOCTL_BIOMETRIC_GET_SUPPORTED_ALGORITHMS IOCTL извлекает список криптографических хэш-алгоритмов, поддерживаемых устройством. Этот IOCTL является необязательным.
Основной код
Входной буфер
Нет.
Длина входного буфера
Нет.
Выходной буфер
AssociatedIrp. Элемент SystemBuffer указывает на буфер, содержащий структуру WINBIO_SUPPORTED_ALGORITHMS.
Длина выходного буфера
Наименьший допустимый размер выходного буфера — это размер DWORD. Если драйвер получает выходной буфер размера DWORD, драйвер должен вернуть размер буфера, необходимый для запрошенной операции.
Блок состояния
Указывает, завершен ли вызов DeviceIoControl к драйверу и допустимы ли полезные данные OUT.
Для элемента Status задано одно из значений в следующей таблице.
Значение состояния | Описание |
---|---|
S_OK, STATUS_SUCCESS | Операция выполнена успешно. Если размер возвращаемых данных — DWORD, полезные данные содержат размер буфера, необходимый для вызова. В противном случае полезные данные содержат полный выходной буфер. |
E_INVALIDARG | Параметры указаны неправильно. |
E_UNKNOWN | Любой другой сбой, который препятствует заполнению полезных данных. |
E_UNEXPECTED | Любой другой сбой, который препятствует заполнению полезных данных. |
E_FAIL | Любой другой сбой, который препятствует заполнению полезных данных. |
Комментарии
Алгоритмы задаются с помощью строк в кодировке UTF-8, заканчивающихся null. Строки идентификатора алгоритма OID определены в RFC 3279 и RFC 3278 .
Ниже приведены примеры строк OID для хэш-алгоритмов.
Алгоритм | Строка идентификатора алгоритма |
---|---|
SHA-1 | "1.3.14.3.2.26" |
SHA-256 | "2.16.840.1.101.3.4.2.1" |
SHA-384 | "2.16.840.1.101.3.4.2.2" |
SHA-512 | "2.16.840.1.101.3.4.2.3" |
IOCTL_BIOMETRIC_GET_SUPPORTED_ALGORITHMS необходимо реализовать, если устройство поддерживает WINBIO_CAPABILITY_SECURE_STORAGE. Для хранения шаблонов WinBio устройство должно поддерживать по крайней мере SHA-1 ("1.3.14.3.2.26").
Если предоставленный поставщиком драйвер передает все полезные данные, он должен заполнить элемент WinBioHresultWINBIO_SUPPORTED_ALGORITHMS состоянием биометрической операции.
Возможные значения:
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Доступно в Windows 7 и более поздних версиях Windows. |
Верхняя часть | winbio_ioctl.h |