Модель «рукопожатия» для аутентификации пользователя в КС и протокол взаимной аутентификации.

Но в любом варианте парольной аутентификации подтвержде­ние подлинности пользователя осуществляется на основе ввода им некоторой конфиденциальной информации, которую можно подсмотреть, выманить, подобрать, угадать и т. п. Рассмотрим аутентификацию пользователей на основе модели «рукопожатия», во многом свободную от указанных недостатков.

В соответствии с этой моделью пользователь П и система С i согласовывают при регистрации пользователя в КС функцию, известную только им. Протокол аутентификации пользователя в ; этом случае выглядит следующим образом:

1. С: генерация случайного значения х; вычисление у = /(х); вывод х.

2. П: вычисление у' =/'(х); ввод у'.

3. С: если у и у' совпадают, то пользователь допускается к ра­боте в системе, иначе попытка входа в систему отклоняется.

К функции/предъявляется требование, чтобы по известным х \ и /(х) нельзя было угадать /

Преимущества аутентификации на основе модели «рукопожа­тия» перед парольной аутентификацией:

• между пользователем и системой не передается никакой конфиденциальной информации, которую нужно сохранять в тайне;

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

К недостаткам аутентификации на основе модели «рукопожа­тия» относится большая длительность этой процедуры по сравне­нию с парольной аутентификацией.

Парольная аутентификация совершенно неприменима в слу­чае взаимного подтверждения подлинности пользователей ком­пьютерной сети. Действительно, пусть А и Б обозначают двух пользователей сети, имеющих соответственно пароли РА и РБ. Тогда протокол взаимной аутентификации А и Б мог бы выглядеть сле­дующим образом:

1. А->Б: А, запрос РБ.

2. Б^А: Б, запрос РА.

3. А^Б: А, РА.

4. Б^А: Б, РБ.

Но в момент отправки своего пароля (неважно, в открытой или защищенной форме) А не может быть уверен в подлинности | Б, который может воспользоваться паролем А, чтобы выдать себя за А при взаимодействии еще с одним пользователем компьютер­ной сети В.

Модель «рукопожатия» вполне приемлема для взаимной аутен­тификации:

1. А: выбор значения х; вычисление у =f(x).

2. А^Б: А, х.

3. Б: вычисление у' =(х).

4. Б—»А: Б, у'.

5. А: если у и у' совпадают, то А может доверять Б.

Затем процедура аутентификации повторяется с переменой ролей (теперь Б начинает процесс и выбирает значение х), чтобы Б мог быть также уверен в подлинности А.

Для повышения безопасности протокола взаимной аутентифи­кации перед отправкой по сети значения х и у' (пп. 2 и 4 протоко­ла) могут быть зашифрованы на секретном ключе, которым дол­жны предварительно обменяться по защищенному каналу А и Б. В этом случае потенциальному нарушителю, который имеет воз­можность перехвата всех передаваемых по сети данных и желает выдать себя за одного из легальных пользователей сети, придется не только определить функцию, но и предварительно взломать шифротекст;

При интерактивном доступе пользователя к системе функция/ может быть задана таблицей своих значений. Рассмотрим два при­мера. В первом примере система предлагает пользователю ответить при регистрации его в КС на несколько вопросов, имеющих час­тично объективное и частично вымышленное содержание (напри­мер: «девичья фамилия Вашей матери», «в каком городе Вы про­живали в июне 2002 г.», «где находится клуб», «когда откроется пул» и т. п.). При входе в систему пользователю предлагается отве­тить на другой список вопросов, среди которых есть некоторые из заданных ему при регистрации. Для правильной аутентификации пользователь должен дать те же ответы, которые он давал на ана­логичные вопросы при регистрации.

Второй пример — аутентификация на основе модели «рукопо­жатия». При регистрации в КС пользователю предлагается набор небольших изображений (например, пиктограмм), среди которых он должен выбрать заданное число картинок. При последующем входе в систему ему выводится другой набор изображений, часть из которых он видел при регистрации. Для правильной аутенти­фикации пользователь должен отметить те картинки, которые он выбрал при регистрации.