Как работают механизмы биометрической аутентификации по отпечаткам пальцев.

Merkel

Carder
Messages
39
Reputation
0
Reaction score
36
Points
18
Перевод статьи Hacker , специально для Carder.uk

Более ста лет назад человечество научилось идентифицировать человека по отпечаткам пальцев. Сейчас эта технология используется в каждом втором телефоне и значительно повышает уровень безопасности по сравнению с PIN-кодами. Но как именно работают эти сканеры? Мне стало интересно, и, разобравшись, я расскажу об этом и вам.

Виды сканеров отпечатков пальцев
Существует несколько различных способов получения изображения отпечатка пальца. Давайте разберем их по порядку.

Оптический сканер
Этот тип датчика работает по простому принципу: имеется светочувствительная матрица (в большинстве случаев это CCD, которая используется во многих современных фотоаппаратах) и несколько небольших светоизлучателей, которые освещают поверхность пальца.

Свет отражается от папиллярного узора, и в зависимости от того, попадает ли световой луч на гребень или впадину, его интенсивность меняется.

Внешнее стекло такого сканера тонкое, чтобы вызвать эффект полного нарушенного внутреннего отражения. Благодаря этому эффекту свет в местах контакта кожи со стеклом - на гребнях - полностью отражается в фотосенсор.


Вы можете наблюдать это явление на примере стакана с водой: положите палец на одну сторону стекла и посмотрите с другой - вы четко увидите свой отпечаток.

Вот и весь феномен

Датчики такого типа довольно громоздки: требуется большая камера и маленький излучатель света - и поэтому они практически не используются. Есть и другая проблема: свет может одинаково отражаться от кожи и других материалов, и поэтому подделать отпечаток пальца становится слишком легко.

Полупроводниковые сканеры
В этих сканерах используются полупроводники, которые меняют свои свойства при прикосновении. Они реагируют на различные параметры: тепло, проводимость, давление.


Тепловые датчики реагируют на изменение проводимости полупроводника в зависимости от температуры. Воздух и кожа передают тепло с разной скоростью, датчики регистрируют это, и мы получаем изображение отпечатка.

Датчики давления реагируют на давление каждого небольшого участка кожи на поверхность проводника, регистрируя разницу в давлении между долинами и гребнями. Но такие сканеры очень хрупки и поэтому практически бесполезны: любое чрезмерное давление на поверхность может полностью вывести из строя некоторые из датчиков, сделав весь сканер неработоспособным.

Емкостные датчики используют КМОП-сенсоры, которые действуют как маленькие конденсаторы, позволяющие небольшому количеству заряда проходить через поверхность пальца. Способность воздуха и кожи изолировать электрический ток различна: чем больше емкость конденсатора, тем больше воздуха задерживается между датчиком и кожей.


Последний способ наиболее универсален: такой датчик компактен и вмещает до сорока тысяч датчиков на квадратный сантиметр. Именно такой тип датчиков установлен в большинстве устройств от Apple, Xiaomi, Samsung и других лидеров мобильного рынка.

И хотя сканеры такого типа сложнее обмануть, чем оптические, возможность создания муляжа все равно остается: не только кожа обладает всеми эффектами, на которые опираются эти сканеры. Подделка такого уровня уже на порядок сложнее: нужна тонкая работа с материалами, качественная печать и небольшая лаборатория.

Ультразвуковой сканер
Ультразвуковые датчики используют точные часы и принцип, схожий с эхолотом: излучатель испускает высокочастотный импульс, который отражается от поверхности пальца и регистрируется датчиком. Сигнал, попавший в область впадины, проходит большее расстояние и, соответственно, возвращается дольше, чем сигнал, отскочивший от гребня.


Такое устройство датчика позволяет получить четкое изображение папиллярного узора, которое учитывает не только факт прикосновения, но и глубину каждого отдельного участка кожи. Это позволяет получить еще более точное изображение, хотя сканирование занимает больше времени и стоимость прибора выше.

Однако, помимо высокой точности, ультразвуковые сканеры имеют еще одно ощутимое конкурентное преимущество, которое заставляет производителей вкладывать все больше средств в их упрощение и удешевление: такие датчики не требуют отдельной поверхности и могут работать через любой плотный материал. Таким образом, интегрировать сканер отпечатков пальцев непосредственно в экран становится не только возможно, но и относительно просто.

Производители смартфонов не только экспериментируют с этой технологией в лабораториях, но и уже внедрили ее в некоторые новейшие модели: Samsung S10 Plus, Huawei P30 Pro, One Plus 7, Xiaomi Mi 9 имеют сканеры, встроенные прямо в экран.

Анализ и сравнение отпечатков
Отпечаток состоит из набора повторяющихся узоров - форм. Чаще всего анализ отпечатков пальцев проводится на их основе.


Характеристики папиллярного узора
Каждую характеристику можно отнести к одной из двух групп: глобальные, которые видны невооруженным глазом, и локальные, заключающиеся в особенностях строения каждой отдельной папиллярной линии.
Арка, петля и завиток - самые распространенные глобальные узоры. Вы даже можете попытаться посмотреть на свой палец и найти их, потому что эти признаки есть у каждого человека. Но они, как правило, не являются уникальными; их одних недостаточно для точной идентификации. Зато эти узоры используются для предварительного отсеивания ненужных записей в больших базах данных отпечатков, например, в МВД.

Гораздо больший интерес для анализа представляют локальные признаки - минуции. Причем важно не только то, что они есть, но и где они находятся на изображении. Сами по себе миниатюры - это простые геометрические фигуры, которые можно найти на изображении методом перебора.

Существует два типа локальных характеристик: окончания и разветвления (в медицине - бифуркации). Их можно найти на готовом отпечатке, но разобрать без лупы на собственном пальце практически невозможно.
Обработка изображения
Фотография делается черно-белой, а затем уменьшается до такого размера, чтобы ширина каждой папиллярной линии составляла всего один пиксель. После таких преобразований анализировать отпечаток пальца становится проще и удобнее.


Следующий шаг - разделить изображения на отдельные блоки размером три на три пикселя, в центре должен быть заполненный пиксель папиллярной линии. Если вокруг этого пикселя есть еще ровно один или три таких же, то этот блок считается признаком, который сохраняется в памяти вместе с типом признака и его координатами.

Если блок приходится на конец папиллярной линии, то эта линия должна каким-то образом попасть в центр блока, но не должна покидать его. Если блок является ветвью, то одна линия входит в центр блока, а две выходят из него - в общей сложности три линии сходятся в одной точке.

Данные каждого такого блока вместе с типом локального паттерна записываются в память и затем используются для сравнения при каждом входе в систему.

Сравнение отпечатков
Для сравнения необходимо повторное сканирование, обработка изображения и разделение его на блоки. Такое разделение позволяет сравнивать блоки в случае, если положение пальца изменилось между измерениями.


Само сравнение блоков не так тривиально, как хотелось бы: сначала необходимо устранить последствия смещения и поворота пальца. Чаще всего это достигается перебором (хотя некоторые сканеры этого не делают, а просто игнорируют слишком сильно повернутые отпечатки). Во-вторых, блоки сравниваются попарно, и программа пытается найти два блока одного типа в одном и том же месте.

Доля таких найденных пар от общего числа существующих характеристик служит своеобразной "уверенностью" алгоритма сравнения в том, что отпечатки принадлежат одному и тому же человеку. Вы удивитесь, но для одного человека эта характеристика составляет всего 45-55%.

Это связано с тем, что качество отпечатков далеко от идеала. Из-за загрязнения или неаккуратно приложенного для анализа пальца целые области изображения могут быть недоступны. И несмотря на это, в большинстве случаев даже порога в 40% достаточно, чтобы сканер точно идентифицировал человека.

Защита данных об отпечатках пальцев
Как выглядят "пальцы", хранящиеся в памяти? После анализа они превращаются в описания положений и типов блоков. Далее эти данные обычно шифруются или хранятся в специальной внутренней памяти (защищенной операционной системой) или в отдельном чипе для хранения ключей и паролей. Обычно в качестве алгоритма шифрования используется AES с длиной ключа более 128 бит, что обеспечивает полную безопасность наших биометрических данных.
Устройства Apple, например, хранят этот ключ в Secure Enclave, который находится на отдельном чипе. Производители Android-смартфонов решают эту проблему по-разному - часто выбор падает на чипы безопасного исполнения Qualcomm (например, Qualcomm Trusted Execution Environment - см. PDF) или ARM TrustZone.

Заключение
Как видите, в самом сканере отпечатков пальцев нет ничего сложного: каждый механизм, который здесь используется, нельзя назвать большим прорывом в области физики или информатики. Однако столь удобное сочетание всех этих мелких деталей и алгоритмов в одном устройстве позволяет нам с вами тратить меньше времени на такие мелочи, как набор пароля.
 
Top