Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ПАЗИ часть 2 версия 2.1.doc
Скачиваний:
60
Добавлен:
07.11.2018
Размер:
461.31 Кб
Скачать

3.1.3 Аутентификация на основе pin–кода

Наиболее распространенным методом аутентификации держателя пластиковой карты и смарт-карты является ввод секретного числа, которое обычно называют PIN-кодом (Personal Identification Number - персональный идентификационный код) или иногда CHV (CardHolder Verification). Защита PIN-кода карты является критичной для безопасности всей системы. Карты могут быть потеряны, украдены или подделаны. В таких случаях единственной контрмерой против несанкционированного доступа остается секретное значение PIN-кода. Вот почему открытая форма PIN должна быть известна только законному держателю карты. Очевидно, значение PIN нужно держать в секрете в течение всего срока действия карты.

Длина PIN-кода должна быть достаточно большой, чтобы минимизировать ве­роятность определения правильного PIN-кода методом проб и ошибок. С другой стороны, длина PIN-кода должна быть достаточно короткой, чтобы дать возмож­ность держателям карт запомнить его значение. Согласно рекомендации стандарта ISO 9564-1, PIN-код должен содержать от четырех до двенадцати буквенно-цифровых символов. Однако в большинстве случаев ввод нецифровых символов тех­нически невозможен, поскольку доступна только цифровая клавиатура. Поэтому обычно PIN-код представляет собой четырехразрядное число, каждая цифра кото­рого может принимать значение от 0 до 9.

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

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

Изменяемый PIN-код может быть изменен согласно пожеланиям пользователя или заменен на число, которое пользователю легче запомнить. Однако при таком подходе возникает опасность быстрого раскрытия подобного PIN-кода, поскольку числа, которые большинство людей считают удобными для запоминания, являются тривиальными числами вида 1234, 4321, 5115 и т.п. Смарт-карта обычно не прове­ряет употребление таких тривиальных чисел, поскольку для хранения необходи­мой таблицы не хватает доступной памяти. Однако терминал может воспрепятство­вать замене PIN на такое число.

Некоторые приложения используют также транспортные PIN-коды. Смарт-карта персонализируется со случайным значением PIN-кода, и держатель карты получает значение PIN-кода в заказном письме. Однако, начиная применять карту, пользова­тель должен заменить PIN-код, использованный при персонализации карты, на выб­ранный им самим. Такая процедура исключает возможность того, что PIN-код, выс­леженный во время персонализации, позже может быть незаконно использован.

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

Если число разрешенных попыток ввода i = 3, тогда вероятность угадывания правильного значения PIN-кода из четырех десятичных цифр за три попытки вво­да составляет примерно 0,03%.

Спецификации PC/SC рекомендуют, чтобы в смарт-картах были установлены ограничения на число неверных попыток ввода PIN-кода. Когда число обнаружен­ных неверных попыток достигает заданного предела, процесс ввода должен быть заблокирован, препятствуя дальнейшим попыткам аутентификации. Рекомендуется устанавливать допускаемое число неверных попыток в диапазоне от 1 до 255. Метод, используемый для разблокирования процесса ввода, должен быть защищен независимым механизмом аутентификации.

Генерация PIN-кода. Для генерации PIN-кода смарт-карты используются генератор случайных чисел и алгоритм, который преобразует случайное число в PIN-код необходимой длины. Затем можно использовать таблицу известных тривиаль­ных комбинаций, чтобы распознать и отбросить значение PIN-кода, совпадающее с одной из таких комбинаций. Наконец этот PIN-код записывается в смарт-карту в виде соответствующей криптограммы. Вычисленное значение PIN-кода переда­ется также держателю смарт-карты через защищенный канал.

В настоящее время все дебетовые карты (такие, как карты Eurocheque) из сооб­ражений совместимости имеют магнитные полосы, даже если они оснащены мик­роконтроллерами. Для гибридных карт с чипом и магнитной полосой генерация PIN-кода несколько усложняется. Это обусловлено тем, что банкомат или кассир-автомат, работающий в автономном режиме, должен иметь возможность проверить введенный PIN-код, основанный на данных, расположенных на магнитной полосе. Поэтому алгоритм генерации PIN-кода для гибридных карт с чипом и магнитной полосой должен быть детерминированным, то есть он должен всегда выдавать один и тот же результат для заданного набора входных величин. Генератор случайных чисел не позволяет это сделать. Соответственно, нужна процедура, которая может генерировать PIN-код, основанный на данных магнитной полосы. Чтобы избежать зависимости безопасности системы от самой процедуры генерации PIN-кода, в процесс вычисления должен быть также включен секретный ключ.

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

При идентификации клиента по значению PIN-кода и предъявленной карте ис­пользуется два основных способа проверки PIN-кода: неалгоритмический и алго­ритмический [24].

Неалгоритмический способ проверки PIN-кода не требует применения специ­альных алгоритмов. Проверка PIN-кода осуществляется путем непосредственного сравнения введенного клиентом PIN-кода со значениями, хранимыми в базе дан­ных. Обычно база данных со значениями PIN-кодов клиентов шифруется методом прозрачного шифрования, чтобы повысить ее защищенность, не усложняя процес­са сравнения.

Алгоритмический способ проверки PIN-кода заключается в том, что введенный клиентом PIN-код преобразуют по определенному алгоритму с использованием секретного ключа и затем сравнивают со значением PIN-кода, хранящимся в опре­деленной форме на карте. Достоинства этого метода проверки:

  • отсутствие копии PIN-кода на главном компьютере исключает его раскрытие обслуживающим персоналом;

  • отсутствие передачи PIN-кода между банкоматом или кассиром-автоматом и главным компьютером банка исключает его перехват злоумышленником или навязывание результатов сравнения;

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