| Протоколы MS-CHAP и MS-CHAP v2 Протокол MS-CHAP (Microsoft Challenge
Handshake Protocol) представляет собой реализацию протокола CHAP, предложенную
компанией Microsoft. В отличие от CHAP, для хэширования паролей применяется алгоритм
MD4. Существует две версии протокола MS-CHAP. Вторая версия протокола MS-CHAP
(MS-CHAP v2) предлагает более эффективный механизм аутентификации (табл. 14.1).
В частности, реализован механизм взаимной аутентификации. Сервер удаленного доступа
по окончании процедуры аутентификации клиента удаленного доступа предоставляет
ему информацию о собственных полномочиях. Соединение не считается установленным
до тех пор, пока клиент не удостоверится в подлинности сервера удаленного доступа.
Таблица 14.1. Сравнение протоколов MS-CHAP
версий 1 и 2
Проблемы MS-CHAP версии 1
| Решение в MS-CHAP версии 2 | Кодирование ответа
по схеме LAN Manager, которое используется для обратной совместимости со старыми
клиентами Microsoft удаленного доступа, использует слабое шисррование |
MS-CHAP v2 более не поддерживает ответы, закодированные по схеме LAN Manager
| Кодирование пароля по схеме LAN Manager использует слабое
шифрование | MS-CHAP v2 более не поддерживает передачу изменений паролей,
закодированных по схеме LAN Manager | Возможна только однонаправленная
проверка подлинности. Клиент удаленного доступа не может проверить, соединился
он с подлинным или с ложным (подставным) сервером удаленного доступа |
MS-CHAP v2 поддерживает двустороннюю проверку подлинности, также называемую взаимной
проверкой подлинности. Клиент удаленного доступа проверяет, к тому ли серверу
удаленного доступа он подключился | При 40-разрядном шифровании
ключ шифрования основывается на пароле пользователя. Каждый раз, когда пользователь
подключается с тем же самым паролем, будет сгенерирован тот же самый ключ
| При использовании MS-CHAP v2 ключ шифрования основывается на пароле
пользователя и произвольной строке запроса. Каждый раз, когда пользователь подключается
с тем же самым паролем, используется другой ключ | Используется
единый ключ шифрования для данных, передаваемых в обоих направлениях соединения
| Используются отдельные ключи шифрования, которые генерируются для передаваемых
и получаемых данных | |