Требования к протоколу IPSec
1. Требования к идентификационному заголовку AH:
1.1. идентификационный заголовок протокола IPSec (AH) должен использоваться для обеспечения целостности дейтаграмм IP и идентификации источника данных без организации специальных соединений и защиты против повторного использования пакетов. AH может использоваться в комбинации с ESP или путем вложения. Услуги по защите могут обеспечиваться между парой взаимодействующих элементов сети IP.
1.2. формат заголовка идентификации AH приведен на рисунке 1.
Следующий заголовок | Длина заголовка | Резерв |
Идентификатор параметров защиты (SPI) | ||
Порядковый номер | ||
Аутентификационные данные (Значение контрольной суммы (ICV)) |
Рисунок 1
Примечание:
поле "Следующий заголовок" (1 октет) должно показывать тип информации, расположенной после идентификационного заголовка AH. Значения этого поля должны выбираться из списка номеров протоколов, предоставленного Администрацией адресного пространства Интернет IANA;
поле "Длина заголовка" (1 октет) должно содержать информацию о размере заголовка AH в 32-битовых словах (4-байтовых блоках) минус 2;
поле "Резерв" (2 октета) должно быть резервным, равно "0" и игнорируется получателем. Значение этого поля должно учитываться при вычислении ICV, но игнорироваться получателем;
поле "Идентификатор параметров защиты" (SPI) должно быть произвольным 32-битовым значением, используемым получателем для идентификации SA, с которой связан входящий пакет. Для индивидуальных SA значение SPI может идентифицировать SA или использоваться в комбинации с типом протокола IPsec (в данном случае AH). Поле SPI должно быть обязательным и механизм отображения входящего трафика на индивидуальные SA должен поддерживаться всеми реализациями AH;
поле "Порядковый номер" (4 октета) должно содержать значение счетчика пакетов, увеличиваемое на "1" для каждого переданного пакета (счетчик пакетов для SA). Это поле должно быть обязательным и присутствовать даже в случае, когда получатель не пользуется услугами по предотвращению повторного использования пакетов для конкретной SA. Отправитель должен передавать указанное поле, но получатель не обязан принимать его во внимание. Счетчики на стороне отправителя и получателя должны инициализироваться при значении поля "Порядковый номер" равном "0" при создании SA (первый пакет, переданный с использованием данной SA, будет иметь порядковый номер - "1"). Если предотвращение повторного использования пакетов включено (используется по умолчанию), передаваемые порядковые номера никогда не должны повторяться. Расширенный порядковый номер должен позволять использовать для SA 64-битовые порядковые номера. В заголовке AH каждого пакета должны передаваться только младшие 32 бита расширенного порядкового номера, а старшие 32 бита должны учитываться как часть порядкового номера отправителем и получателем и включаться в расчет ICV, но не должны передаваться;
поле "Аутентификационные данные" должно содержать значение контрольной суммы ICV для данного пакета. Размер поля должен быть кратным 32 битам как для IPv4, так и для IPv6. Указанное поле может включать заполнение для обеспечения кратности размера заголовка AH в целом 32 (IPv4) или 64 (IPv6) битам. Заполнение должны поддерживать все реализации и размер заполнения должен быть минимально достаточным для выравнивания заголовков в соответствии с требованиями IPv4/IPv6;
1.3. местонахождение заголовка AH:
AH должно обеспечивать работу в двух режимах: транспортном и туннельном:
а) в транспортном режиме AH должен помещаться между заголовком протокола IP и заголовком протокола транспортного уровня или перед другими заголовками IPsec при наличии. Требования к местонахождению заголовка AH в транспортном режиме приведены на рисунке 2.
Заголовок | Заголовок AH | Заголовок TCP (UDP) | Данные |
Рисунок 2
При использовании IPv4 AH должен размещаться после заголовка IP (после всех опций заголовка IP), но перед заголовком протокола следующего уровня. При использовании IPv6 заголовок AH должен размещаться после заголовков IP и расширения. В расширенном заголовке необходимо обеспечить расположение опций получателя перед заголовком AH, после него или по обе стороны;
б) в туннельном режиме заголовок AH должен защищать исходный IP пакет целиком (включая его заголовок).
Требования к местонахождению заголовка AH в туннельном режиме приведены на рисунке 3;
Заголовок внешнего IP пакета | Заголовок AH | Заголовок | Заголовок | Данные |
Рисунок 3