Задать вопрос

Считыватели отпечатков пальцев — хранение данных

Возник вопрос к знающим людям по поводу схемы работы считывателей отпечатков.
Положим, есть компьютер, есть подключенный считыватель.
Пользователь выполняет операцию enroll (первичная регистрация отпечатков): прикладывает палец, софт анализирует рисунок, какие-то особенности, сохраняет эти данные… где? как? Предположим, в некотором файле.
После этого пользователь настраивает Windows для авторизации по отпечатку. Как это происходит? пользователь вводит свой пароль, этот пароль ассоциируется с его учетной записью.
Далее, пользователь через какое-то время пытается авторизоваться — прикладывает палец, сравнивает полученные данные с первоначальной сохраненной на компьютере версией отпечатка (или результата его анализа), в случае успеха — выполняется вход в учетную запись.
Возникает вопрос — где здесь безопасность в этом механизме? Например, злоумышленник может украсть данные о первоначальных отпечатках вместе с этим файлом. Что помешает ему в дальнейшем считать эти данные и подсунуть их той службе Windows, которая осуществляет проверку (Verify) отпечатков? Ведь нигде не говорится о шифровании этих данных, при этом, на мой взгляд, оно не имеет смысла — как сравнивать зашифрованные данные? их надо расшифровать, значит, хранить опять же какой-то ключ.

Ведь с паролем очень просто — пароль хранится в уме пользователя, и в зашифрованном/захешированном виде на компьютере (можно в таком виде, который не поддается обратной расшифровке). Пользователь ввел пароль, система его захешировала (ну берем тот же механизм NTLM-авторизации в Windows), сравнила с сохраненной ранее копией.
С отпечатками сложнее — отпечаток хранится на пальце пользователя, в чистом виде на компьютере, и после ввода отпечатка осуществляется сверка введенного с копией на компьютере. При этом проверяется не 100%-е совпадение, а лишь частичное.

Собственно вопрос — а в чем смысл авторизации по пальцу, если её можно обойти даже не путем подмены отпечатков, а просто считав данные первоначальных отпечатков и подсунув их же системе. И как избавиться от этой проблемы? Только не путем хранения первоначальных отпечатков на сервере, речь только о локальной машине.
  • Вопрос задан
  • 6079 просмотров
Подписаться 3 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 3
Sellec
@Sellec Автор вопроса
Кодер
сканер так же обрабатывает полученное изображение и сравнивает получившуюся последовательность с контрольной

В этом и вопрос: я же могу добыть контрольный шаблон, записанный сканером, и подсунуть шаблон сканеру, минуя процесс сканирования пальца. Сканер распознает эту подсунутую последовательность как 100% совпадение с контрольным шаблоном. Вот и вся авторизация.
Ответ написан
почитайте habrahabr.ru/post/126144/
Ответ написан
Комментировать
wannasome
@wannasome
Биометрическая система работает не с изображением, а с полуенным из него шаблоном. Когда создаётся новый образец (контрольный шаблон), сканер получает изображение, обрабатывает его, т.е. согласно некоторому алгоритму выявляет на снимке характерные признаки, и результат обработки записывает в виде числовой последовательности. Из данных контрольного шаблона восстановить исходное изображение нельзя. Когда происходит авторизация, сканер так же обрабатывает полученное изображение и сравнивает получившуюся последовательность с контрольной и если образцы совпадают не менее чем на сколько-то процентов, то авторизация считается пройденной.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы