Протокол аутентификации Challenge-Handshake - Challenge-Handshake Authentication Protocol

В вычислении , то вызов-Рукопожатие Authentication Protocol ( CHAP ) выполняет аутентификацию пользователя или сетевой узел к аутентификационной сущности. Этой организацией может быть, например, провайдер Интернет-услуг .

CHAP обеспечивает защиту от атак повторного воспроизведения со стороны однорангового узла за счет использования постепенно изменяющегося идентификатора и переменного значения вызова. CHAP требует, чтобы и клиент, и сервер знали открытый текст секрета, хотя он никогда не пересылается по сети. Таким образом, CHAP обеспечивает лучшую безопасность по сравнению с протоколом аутентификации пароля (PAP), который уязвим по обеим этим причинам. Вариант MS-CHAP не требует, чтобы какой-либо партнер знал открытый текст, и не передает его, но был нарушен.

Рабочий цикл

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

  1. После завершения фазы установления связи аутентификатор отправляет партнеру сообщение «запрос».
  2. Одноранговый узел отвечает значением, вычисленным с использованием односторонней хеш-функции для объединенного запроса и секрета.
  3. Аутентификатор проверяет ответ по собственному расчету ожидаемого значения хеш-функции. Если значения совпадают, аутентификатор подтверждает аутентификацию; в противном случае он должен разорвать соединение.
  4. Через случайные промежутки времени аутентификатор отправляет новый запрос партнеру и повторяет шаги с 1 по 3.

Пакеты CHAP

Описание 1 байт 1 байт 2 байта 1 байт Переменная переменная
Вызов Код = 1 Я БЫ Длина Продолжительность испытания Ценность задачи имя
отклик Код = 2 Я БЫ Длина Длина ответа Значение ответа имя
Успех Код = 3 Я БЫ Длина Сообщение
Неудача Код = 4 Я БЫ Длина Сообщение

ID, выбранный для случайного запроса, также используется в соответствующих пакетах ответа, успеха и отказа. Новая задача с новым идентификатором должна отличаться от последней задачи с другим идентификатором. Если успех или неудача потеряны, тот же ответ может быть отправлен снова, и он активирует ту же индикацию успеха или неудачи. Для MD5 в качестве хэша значение ответа равно MD5(ID||secret||challenge) MD5 для объединения идентификатора, секрета и запроса.

Смотрите также

Рекомендации

внешние ссылки

  • RFC   1994 PPP Challenge Handshake Authentication Protocol (CHAP).
  • RFC   2865 Служба удаленной аутентификации пользователей с телефонным подключением ( RADIUS ): использует PAP или CHAP
  • RFC   3748 Extensible Authentication Protocol ( EAP ): обсуждает CHAP