
- •Кафедра судовой автоматики и измерений
- •Часть 2
- •Санкт-Петербург
- •Введение
- •1 Роль стандартов информационной безопасности
- •1.2 Международные стандарты информационной безопасности
- •1.2.1 Стандарты iso/iec 17799:2002 (bs 7799:2000)
- •1.2.2 Германский стандарт bsi
- •1.2.3 Международный стандарт iso 15408 «Общие критерии безопасности информационных технологий»
- •1.2.4 Стандарты для беспроводных сетей
- •1.2.5 Стандарты информационной безопасности в Интернете
- •1.3 Отечественные стандарты безопасности информационных технологий
- •2 Криптографическая защита информации
- •2.1 Симметричные криптосистемы шифрования
- •2.1.1 Стандарт шифрования гост 28147-89
- •2.1.2 Особенности применения алгоритмов симметричного шифрования
- •2.2 Асимметричные криптосистемы шифрования
- •2.3 Криптозащита информации в беспроводных сетях
- •3 Технология аутентификации
- •3.1 Методы аутентификации, использующие пароли и pin-коды
- •3.1.1 Аутентификация на основе многоразовых паролей
- •3.1.2 Аутентификация на основе одноразовых паролей
- •3.1.3 Аутентификация на основе pin–кода
- •3.2 Биометрическая аутентификация пользователя
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-кода между банкоматом или кассиром-автоматом и главным компьютером банка исключает его перехват злоумышленником или навязывание результатов сравнения;
-
упрощение работы по созданию программного обеспечения системы, так как уже нет необходимости действий в реальном масштабе времени.