Есть два основных способа проверки надёжности PIN-кода: 1
- Неалгоритмический способ. 1 Введённый PIN-код сравнивают со значениями, которые хранятся в базе данных. 1 Обычно база шифруется методом прозрачного шифрования, чтобы повысить её защищённость, не усложняя процесса сравнения. 1
- Алгоритмический способ. 1 Введённый PIN-код преобразуют по определённому алгоритму с использованием секретного ключа и затем сравнивают со значением PIN-кода, которое хранится в определённой форме на карте. 1
Некоторые алгоритмы проверки PIN-кода:
- Visa PVV. 3 Рекомендован для карт Visa и MasterCard. 3 В основе алгоритма лежит значение PVV (PIN verification value) — криптограмма, которая получается на основе номера карты, индекса ключа проверки PIN и самого PIN-кода. 3 При проверке введённого PIN-кода формируется новое значение PVV и сравнивается с эталонным PVV для карты. 3 Если значения совпадают, то PIN считается верным, если не совпадают — неверным. 3
- IBM 3624 PIN offset. 3 В основе алгоритма лежит значение PIN offset (PIN verification value) — криптограмма, которая получается на основе контрольного значения (обычно — части номера карты). 3 Этот алгоритм позволяет восстановить значение PIN-кода из проверочного значения. 3
Чтобы сделать PIN-код надёжным, рекомендуется использовать случайные числа или комбинации с более сложными шаблонами, избегать последовательных или часто встречающихся цифр, а также личных данных. 2