24.5.2 Authentication Header
Если для аутентификации используется резюме сообщения, заголовок Authentication Header (заголовок аутентификации) выполняет две задачи:
■ Проверяет отправителя, поскольку настоящий отправитель должен знать секретный ключ для вычисления резюме сообщения.
■ Проверяет, не были ли данные изменены при пересылке.
Формат Authentication Header показан на рис. 24.5. Получатель использует SPI для выбора требуемого протокола и ключа аутентификации. Ключ служит для вычисления приемником резюме по алгоритму MD5.
Рис. 24.5. Формат заголовка Authentication Header
Вычисление аутентификации по MD5 выполняется над всеми полями датаграммы IP, которые не изменяются при пересылке (изменяемые поля, например счетчик попаданий или указатель пути в версии 6, при вычислении трактуются как нулевые). Результат у получателя сравнивается со значением из поля данных аутентификации. При расхождении датаграмма отбрасывается.
24.5.3 Режимы транспорта и туннеля
Рассмотрим способы реализации конфиденциальности. Формат датаграммы IP версии 6 с шифрованной полезной нагрузкой более высокого уровня показан на рис. 24.6. Такой формат определяет режим транспорта (Transport-mode).
Рис. 24.6. Шифрование для режима транспорта
На рис. 24.7 показан формат для режима туннеля (Tunnel-mode). Шифруется вся датаграмма, включая все ее заголовки. Для пересылки подставляется новый заголовок. Режим туннеля между хостами может не сработать, если по пути следования попадутся фильтрующие маршрутизаторы со средствами защиты. Такие системы будут проверять информацию, подобную IP-адресам источника и назначения либо порты, а эти сведения будут скрыты внутри зашифрованного сообщения.
Рис. 24.7. Шифрование для режима туннеля
24.5.4 Инкапсуляция защищенной полезной нагрузки
Заголовок инкапсуляции защищенной полезной нагрузки протокола IP (IP Encapsulating Security Payload) применяется как для режима транспорта, так и для режима туннеля.
Формат этого заголовка показан на рис. 24.8. Получатель использует индекс SPI для выбора алгоритма и ключа (ключей). Оставшиеся данные зависят от выбранного алгоритма.
Рис. 24.8. Заголовок Encapsulating Security Payload
При использовании CBC-DES формат заголовка Encapsulating Security Payload и оставшаяся часть сообщения будут выглядеть как на рис. 24.9.
Рис. 24.9. Заголовок и полезная нагрузка при использовании алгоритма CBC-DES
Вектор инициализации (Initialization Vector) — это блок данных, необходимых для начала работы алгоритма CBC-DES. Затененная область на рисунке представляет зашифрованные данные. Тип 4 означает инкапсулирование в полезной нагрузке всей датаграммы (режим туннеля).
Хотя первоначально планируется использование CBC-DES, в будущем могут появиться другие протоколы для инкапсуляции полезной нагрузки, комбинирующие аутентификацию и целостность данных с шифрованием.
24.5.5 Аутентификация в режиме туннеля
При обмене между граничными маршрутизаторами в режиме туннеля в сообщение могут включаться два независимых заголовка аутентификации. Один будет размещен внутри исходного заголовка датаграммы и будет зашифрован и скрыт от остального мира. Этот заголовок обеспечит аутентификацию между конечными точками. Другой заголовок станет частью нешифрованного заголовка IP, используемого для обмена между граничными маршрутизаторами. Он обеспечит аутентификацию между границами сетей.
24.5.6 Обслуживание ключей
Широкое использование безопасности в IP требует распространения множества секретных ключей среди большого количества сетевых узлов. Ключи должны периодически обновляться, и их нужно синхронизовать между собой.
Существует много литературы по управлению ключами. Но ни один из методов управления ключами не специфицирован, поэтому имеются возможности для экспериментирования.
Использование асимметричных общедоступных/личных пар ключей вместо симметричного метода CBC-DES может значительно уменьшить количество администрируемых ключей.
24.6 Дополнительная литература
Следующий список RFC являлся актуальным на момент выхода книги. Последние изменения можно найти в индексе RFC.
RFC 1825 Security Architecture for the Internet Protocol (Архитектура безопасности для протокола Интернета). Справочный раздел этого документа содержит список множества других публикаций по теме безопасности.
RFC 1826 IP Authentication Header (Заголовок аутентификации протокола IP)
RFC 1828 IP Authentication using Keyed MD5 (Аутентификация в IP по ключам MD5)
RFC 1321 The MD5 Message-Digest Algorithm (Алгоритм вычисления резюме сообщения MD5)
RFC 1827 IP Encapsulating Security Payload — ESP (Инкапсуляция защищенной полезной нагрузки в протоколе IP)
RFC 1829 The ESP DES-CBC Transform (Преобразование ESP по алгоритму DES-CBC)
Приложение А
Сокращения и аббревиатуры
AAL | ATM Adaptation Layer (Уровень адаптации в ATM) |
ACK | An Acknowledgment (Подтверждение) |
AF | Address Family (Семейство адресов) |
АН | Authentication Header (Заголовок аутентификации) |
ANSI | American National Standards Institute (Американский национальный институт стандартов) |
API | Application Programming Interface (Интерфейс программирования приложений) |
ARP | Address Resolution Protocol (Протокол разрешения адресов) |
ARPA | Advanced Research Projects Agency (Агентство перспективных исследовательских проектов) |
ARPANET | Advanced Research Projects Agency Network (Сети ARPA) |
AS | Autonomous System (Автономная система) |
ASA | American Standards Association (Американская ассоциация по стандартизации) |
ASCII | American National Standard Code for Information Interchange (Американский национальный стандартный код для обмена информацией) |