Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лекции 2 (от него).docx
Скачиваний:
22
Добавлен:
21.11.2018
Размер:
3.38 Mб
Скачать

Криптопротокол ipSec

Спецификация криптопротокола IPSec была разработана рабочей группой IETF в 1998 г. и включает в себя набор из трёх базовых протоколов:

  • протокола инкапсуляции зашифрованных данных ESP (Encapsulating Security Payload);

  • протокола аутентифицирующего заголовка АН (Authentication header);

  • протокола обмена криптографическими ключами через сеть Интернет IKE (Internet Key Exchange).

Протокол ESP позволяет выполнять функции обеспечения конфиденциальности данных пользователя, функции проверки целостности передаваемых пакетов данных, а также функции защиты от повторной посылки пакетов, ранее перехваченных нарушителем.

Протокол АН позволяет выполнять функции, аналогичные функциям протокола ESP, за исключением отсутствия возможности обеспечения конфиденциальности передаваемых данных пользователя. Протокол IKE предназначен для согласования работы криптошлюзов ВЧС и выполняет функции настройки следующих параметров: алгоритма шифрования данных пользователя ГСПД, алгоритма обмена криптографическими ключами, размеров и срока службы ключей, алгоритма аутентификации пользователей ГСПД и др.

Протоколы АН и ESP могут быть использованы в двух режимах: туннельном и транспортном. В туннельном режиме весь IP-пакет помещается в поле данных нового пакета данных IPSec, сформированного на основе протоколов АН или ESP. Заголовок пакета данных IPSec содержит новые IP-адреса отправителя и получателя (адреса криптошлюзов), новые параметры IP-заголовка, а также аутентификатор. Транспортный режим протоколов АН и ESP не предполагает инкапсуляции IP-пакета в другой пакет данных IPSec. В данном режиме пакет данных передаётся с исходным заголовком.

Рассмотрим структуры заголовков пакетов данных, формируемых на основе протоколов ESP и АН. Структура заголовка пакета данных ESP изображена на рис. 19.3.

Поле «SPI» (32 бита)

Порядковый номер (32 бита)

Поле данных (переменная длина)

Поле PAD (0-255 байт)

Длина PAD (8 бит)

Следующий заголовок (8 бит)

Аутентификационные данные (переменная длина)

Рисунок 19.3 - Структура заголовка пакета данных ESP

Поле «SPI» (Security Parameter Index) определяет тип и параметры используемого алгоритма аутентификации и шифрования поля данных пакета ESP. Необходимо также отметить, что диапазон значений 1-255 считается зарезервированным для дальнейшего использования.

Поле «Порядковый номер» (Sequence Number) содержит 32-битовое число, представляющее собой счётчик пакетов данных ESP, необходимый для защиты от повторной посылки пакетов, ранее перехваченных нарушителем. В начале процедуры установления соединения между пользователями значение этого поля должно принимать нулевое значение.

Поле «PAD» (Padding) содержит байты, добавляемые для обеспечения кратности длины пакета данных и размера блока шифрования. По умолчанию это поле заполняется возрастающей последовательностью чисел, начиная с нуля.

Значением поля «Длина PAD» является количество байт, содержащихся в поле «PAD». Как уже отмечалось выше, это поле может содержать значения от 0 до 255. Если данное поле принимает нулевое значение, то это означает, что поле «PAD» не содержит ни одного байта.

Поле «Следующий заголовок» (Next Header) содержит код типа протокола, посредством которого был сформирован блок данных, содержащийся в поле данных пакета IPSec. В качестве возможных значений этого поля могут выступать числовые коды транспортных протоколов UDP или TCP, протокола ICMP и др. Значения этого поля устанавливаются в соответствии со стандартом Агентства по выделению имён и уникальных параметров протоколов сети Интернет IANA (Internet Assigned Number Authority).

Поле «Аутентификационные данные» (Authentication data) имеет переменную длину и содержит аутентификатор, вычисленный в соответствии с алгоритмом, тип которого указан в поле SPI.

Общая длина заголовка пакета данных ESP может составлять от 14 до 269 байт в зависимости от длины поля PAD.

Как уже отмечалось выше, протокол ESP может быть использован в туннельном и транспортном режимах. В транспортном режиме заголовок пакета данных ESP размещается сразу же после заголовка исходного IP-пакета, до параметров протоколов вышележащих уровней, таких как TCP или UDP (рис. 19.4).

Начало ESP-заголовка включает в себя поля SPI и «Порядковый номер» и занимает 8 байт. Окончание ESP-заголовка включает в себя поля PAD, «Длина PAD» и «Следующий заголовок», и его длина может составлять от 2 до 257 байт. Переменная длина окончания ESP-заголовка связана с тем, что поле «PAD» может содержать разное количество байт в зависимости от типа используемого криптографического алгоритма.

В туннельном режиме протокола ESP создаётся новый заголовок IP-пакета, содержащий новые IP-адреса отправителя и получателя, вслед за которыми размещается заголовок пакета данных ESP и инкапсулированный исходный IP-пакет (рис. 19.5).

До применения протокола ESP

IP

Исходный заголовок

IP-пакета

TCP

Данные

После применения протокола ESP

IP

Исходный заголовок IP-пакета

начало заголовка ESP-пакета

TCP

Данные

окончание заголовка ESP-пакета

ESP аутентификатор

|<--------------- зашифровано ---------------->|

|<--------------------- аутентифицировано --------------------->|

Рисунок 19.4 - Размещение заголовка пакета данных протокола ESP в транспортном режиме

IP

Новый заголовок IP-пакета

начало заголовка ESP

Исходный заголовок IP-пакета

TCP

Данные

окончание заголовка ESP

ESP аутентификатор

|<----------------------- зашифровано --------------------->|

|<-------------------------- аутентифицировано -------------------------->|

Рисунок 19.5 - Размещение заголовка пакета данных протокола ESP в туннельном режиме

Протокол аутентифицирующего заголовка АН обеспечивает функции контроля целостности заголовков и полей данных пакетов данных, а также обеспечение защиты от повторной посылки пакетов, ранее перехваченных нарушителем. Структура заголовка пакета данных АН изображена на рис. 19.6.

Следующий заголовок (8 бит)

Длина (8 бит)

Зарезервировано (16 бит)

Поле “SPI” (32 бита)

Порядковый номер (32 бита)

Аутентификационные данные (переменная длина)

Рисунок 19.6 - Структура заголовка пакета данных АН

Значения полей заголовка пакетов данных АН аналогичны значениям полей заголовка пакетов данных ESP, рассмотренным выше. Общая длина заголовка пакета данных АН составляет 16 байт.

Как и ESP-протокол, протокол АН может использоваться в туннельном и транспортном режимах. В транспортном режиме заголовок пакета данных АН размещается сразу после заголовка исходного IP-пакета, до параметров протоколов вышележащих уровней, таких как TCP, UDP и др. Такое размещение схематично изображено на рис. 19.7.

В отличие от транспортного режима, в туннельном режиме создаётся новый заголовок IP-пакета, вслед за которым размещается заголовок пакета данных АН и инкапсулированный исходный IP-пакет (рис. 19.8).

До применения протокола AH

IP

Исходный заголовок

IP-пакета

TCP

Данные

После применения протокола AH

IP

Исходный заголовок IP-пакета

заголовок АН

TCP

Данные

|<--------------------------------------------- аутентифицировано ---------------------------------------------->|

Рисунок 19.7 – Размещение заголовка пакета данных АН в транспортном режиме

IP

Новый заголовок IP-пакета

заголовок АН

Исходный заголовок IP-пакета

TCP

Данные

|<----------------------------------------------- аутентифицировано ------------------------------------------------>|

Рисунок 19.8 - Размещение заголовка пакета данных АН в туннельном режиме