skip to content

Challenge Handshake Authentication Protocol

 

Протокол Challenge Handshake Authentication Protocol (CHAP) [RFC-1994] используется для первоначальной аутентификации субъекта после установле­ния соединения, но может, в зависимости от конкретной реализации, быть использован для периодического подтверждения аутентифицированности субъекта во время работы в рамках установленного соединения. Аутентифи­кация происходит за три итерации (англ, three-way handshake). В поле Прото­кол РРР кадра указывается значение 0хС223, поле Данные преобразуется в четыре поля, аналогично РАР пакету (см. рис. 22.2) со схожими типами, единственное отличие в том, что поле Код имеет теперь четыре значения:

Код — 1: Запрос на предоставление данных для аутентификации.

Код = 2: Ответ на запрос с аутентификационными данными.

Код = 3: Подтверждение аутентификации.

Код = 4: Отказ в аутентификации.

Формат поля Данные зависит от поля Код.

Реализация протокола CHAP требует, чтобы обе стороны имели в распоря­жении заранее согласованный пароль (англ, pre-shared secret), который не вы­сылается по сети, но чаще всего присутствует у объекта в открытом вид (plaintext),  при этом длина пароля должна быть не меньше   1 байта, и в принципе он должен соответствовать требованиям хэш-алгоритма, выбранного для реализации.

Собственно процедура аутентификации инициируется, в отличие от РАР, не субъектом, а объектом и происходит следующим образом (рис. 22.6):