Идентификация и проверка подлинности


2. Идентификация и механизмы подтверждения подлинности пользователя

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

Когда пользователь начинает работу в КС, используя терминал, система запрашивает его имя и идентификационный номер. В зависимости от ответов пользователя компьютерная система проводит его идентификацию. Затем система проверяет, является ли пользователь действительно тем, за кого он себя выдает. Для этого она запрашивает у пользователя пароль. Пароль - это лишь один из способов подтверждения подлинности пользователя.

Перечислим возможные способы подтверждения подлинности.

Применение пароля для подтверждения подлинности пользователя. Традиционно каждый законный пользователь компьютерной системы получает идентификационный номер и/или пароль. В начале сеанса работы на терминале пользователь указывает свой идентификационный номер (идентификатор пользователя) системе, которая затем запрашивает у пользователя пароль.

Рис.1. Схема простой аутентификации с помощью пароля

Простейший метод подтверждения подлинности с использованием пароля основан на сравнении представляемого пользователем пароля РА с исходным значением Р'А, хранящимся в компьютерном центре (рис.1). Поскольку пароль должен храниться в тайне, его следует шифровать перед пересылкой по незащищенному каналу. Если значения РА и Р'А совпадают, то пароль РА считается подлинным, а пользователь - законным. Если кто-нибудь, не имеющий полномочий для входа в систему, узнает каким-либо образом пароль и идентификационный номер законного пользователя, он получит доступ в систему.

Иногда получатель не должен раскрывать исходную открытую форму пароля. В этом случае отправитель должен пересылать вместо открытой формы пароля отображение пароля, получаемое с использованием односторонней функции a(·) пароля. Это преобразование должно гарантировать невозможность раскрытия противником пароля по его отображению, так как противник наталкивается на неразрешимую числовую задачу.

Например, функция a (·) может быть определена следующим образом:

a(Р) = ЕР(ID),

где Р - пароль отправителя; ID - идентификатор отправителя;

ЕP - процедура шифрования, выполняемая с использованием пароля Р в качестве ключа.

Такие функции особенно удобны, если длина пароля и длина ключа одинаковы. В этом случае подтверждение подлинности с помощью пароля состоит из пересылки получателю отображения a(P) и сравнения его с предварительно вычисленным и хранимым эквивалентом a'(Р).

На практике пароли состоят только из нескольких букв, чтобы дать возможность пользователям запомнить их. Короткие пароли уязвимы к атаке полного перебора всех вариантов. Для того чтобы предотвратить такую атаку, функцию a(Р) определяют иначе,а именно:

a (Р)=ЕPÅK(ID),

где К и ID - соответственно ключ и идентификатор отправителя.

Очевидно, значение a (Р) вычисляется заранее и хранится в виде a'(P) в идентификационной таблице у получателя (рис. 2). Подтверждение подлинности состоит из сравнения двух отображений пароля aA) и aA) и признания пароля РA, если эти отображения равны. Конечно, любой, кто получит доступ к идентификационной таблице, может незаконно изменить ее содержимое, не опасаясь, что эти действия будут обнаружены.

Рис. 2. Схема аутентификации с помощью пароля с использованием идентификационной таблицы


[Предыдущий раздел][Содержание][Следующий раздел]

Hosted by uCoz