Исследователи из Италии и Нидерландов разработали метод для определения вводимого в банкомате PIN-кода от банковской карты. С его помощью им удалось доказать, что алгоритм глубокого обучения способен угадывать PIN-код даже в том случае, если владелец карты при вводе прикрывает панель с клавиатурой своими руками. Метод работает на базе свёрточной нейронной сети и использует модуль долгой краткосрочной памяти.
Обучение распознания нажатий и назначения определённых вероятностей выбора происходило при помощи 5800 видеозаписей ввода 4- и 5-значных PIN-кодов. В эксперименте принимали участие 58 добровольцев, имеющих отношение к разным демографическим группам. Модель прогнозирования была запущена на Xeon E5-2670 с 128 ГБ ОЗУ и трёх Tesla K20m в комплектации с 5 ГБ ОЗУ.
Результат эксперимента показал, что система способна в 41% случаев за три попытки угадать 4-значный и в 30% — пятизначный PIN-код. По словам исследователей, система оценивает топологическое расстояние между двумя клавишами. Ключевую роль в сценарии восстановления правильной последовательности набора PIN-кода играет размещение камеры, фиксирующей попытки ввода, в том числе при съёмке левшей или правшей.
Оказалось, что эффективнее всего размещать камеру в верхней части банкомата. В случае, если камера способна записывать звук, то алгоритм может задействовать звуковую обратную связь при нажатии. Она может немного отличаться для каждой цифры, что даёт возможность делать прогнозы более точными.
Исследователи пришли к мнению, что для защиты прикрывать панель банкомата рукой при вводе PIN-кода недостаточно. Именно поэтому рекомендуется при возможности выбирать 5-значный PIN-код. Банкам же советуют устанавливать на банкоматы виртуальную и рандомизированную клавиатуры.
Заглавное изображение: Евгений Леонов / ТАСС