Развернуть все
Свернуть все

Введение

Назначение модулей криптографической поддержки протоколов IKEv1 и ESP/AH

В КриптоПро CSP версии 3.6.1 включена криптографическая поддержка протоколов IKEv1 и ESP/AH группы протоколов IPsec.

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

Описание базовых пртоколов IPsec приведены в ряде документов RFC. RFC 2408, RFC 2409 определяют протокол аутентификации IKE v1 и защиту ISAKMP обменов. RFC 4301, RFC 4303 и RFC 4304 определяют защиту вложений (ESP) и защиту пакетов (AH).

Использование Российских стантартов криптографической защиты данных в протоколах IPsec производится в соответствии с проектами документов:

  • "Методические рекомендации по использованию ГОСТ 28147-89, ГОСТ Р 34.11-94 и ГОСТ Р 34.10-2001 при управлении ключами IKE и ISAKMP",

  • "Методические рекомендации по использованию комбинированного алгоритма шифрования вложений IPsec ESP на основе ГОСТ 28147-89",

  • "Методические рекомендации по использованию алгоритмов обеспечения целостности IPsec (AH, ESP) на основе ГОСТ Р 34.11-94".

В данном документе описаны интерфейсы библиотек уровня прользователя и модуля ядра ОС, предназначенные для реализации криптографических преобразований в протоколах IPsec.

Уровень реализованных интерфейсов библиотеки и модуля выбран исходя из следующих соображений:

  • сокрытие от пользователя сложных криптографических преобразований

  • отсутствие у пользователя необходимости в дополнительных вызовах криптографических функций

  • самодостаточное обоснование корректности реализации протоколов

  • минимизация трудоёмкости встраивания и обоснования ее корректности

  • самодостаточная ключевая система SADB

  • масштабирумость ключевой системы в рамках SADB

Данный документ предназначен для использования разработчиками прикладных систем в качестве руководства по встраиванию библиотеки libike_gost (cpike_40_api) и модуля esp_gost (cpesp_40_drv) в приложения, реализующие протоколы сетевой аутентификации и защиты соединений.

Основные требования к среде функционирования библиотеки и модуля

Среда функционирования:
  • ОС Windows;

  • ОС Linux.

Библиотеки и модуль ядра при работе используют установленный на целевом компьютере КриптоПро CSP версии 3.6.1:

  • на целевой компьютер устанавливается одна лицензия на CSP

  • проверка корректности и срока действия лицензии на КриптоПро CSP-3.6.1 выполняются средствами КриптоПро CSP

  • использование криптографической поддержки протоколов IKEv1 и ESP не влечёт за собой каких-либо изменений в использовании собственно CSP-3.6.1

Алгоритмы и преобразования, поддерживаемые библиотекой и модулем

Библиотека IKE обеспечивает поддержку трёх методов аутентификации:
  • IKE-GOST-PSK, переработанная версия PSK [RFC 2409]

  • IKE-GOST-SIGNATURE, переработанная версия 'digital signature' [RFC 2409]

  • IKE-GSS-API, при использовании совместно с сертифицированной реализацией GSS-API (или SSPI) [draft-ietf-ipsec-isakmp-gss-auth]

  • IKE-GOST-HYBRID-INITIATOR и IKE-GOST-HYBRID-RESPONDER, при использовании гибридной аутентификации [draft-ietf-ipsec-isakmp-hybrid-auth][draft-dukes-ike-mode-cfg]

Поддерживается протокол NAT-Traversal (NAT-T) [RFC 3947].

Поддержка протоколов ESP/AH включает в себя реализацию 2-х комбинированных методов защиты данных (combined algorithms [ESP]):

  • ESP_GOST-4M-IMIT

  • ESP_GOST-1K-IMIT

двух методов контроля целостности ESP пакетов

  • GOST-HMAC-4M

  • GOST-HMAC-1K

двух методов контроля целостности AH пакетов

  • AH_GOST-HMAC-4M

  • AH_GOST-HMAC-1K

Порядок использования библиотеки и модуля

Перед использованием библиотека уровня пользователя и модуль ядра ОС должны быть инициализированы. При инициализации задаются параметры, определяющие основные свойства библиотеки и модуля:
  • количество обслуживаемых сессий согласования ключей (защиты информации)

  • настройки параметров безопасности

  • способ протоколирования событий

При использовании библиотеки IKE возможно одновременное использование обоих методов аутентификации - выбор метода аутентификации выполняется при создании IKE сессии фазы 1 при вызове функции библиотеки p1_CreateFn.

Состав

Реализация состоит из 6-и компонент (обозначение для ОС Linux (ОС Windows)):
  • динамической библиотеки уровня пользователя libike_gost.so (cpike_40_api.dll)

  • динамической библиотеки уровня пользователя libesp_gost.so (cpesp_40_api.dll)

  • модуля ядра esp_gost.o (cpesp_40_drv.sys)

  • заголовочных файлов, необходимых для использования библиотеки libike_gost (cpike_40_api)

  • заголовочных файлов, необходимых для использования библиотеки libesp_gost (cpesp_40_api) и модуля ядра ОС esp_gost (cpesp_40_drv)

  • утилиты GenPSK генерации PSK

Библиотека уровня пользователя libike_gost (cpike_40_api) предназначена для обслуживания процессов согласования и выработки ключевой информации:

  • поддержки протоколов IKEv1

  • организации защищённого обмена ключевой информацией с модулем ядра esp_gost (cpesp_40_drv) (библиотекой libesp_gost (cpesp_40_api))

Библиотека libike_gost (cpike_40_api) содержит функции, необходимые для:

  • инициализации и завершения работы

  • реализации IKEv1 фазы 1, фазы 2

  • организации защищённого обмена ключевой информацией с модулем ядра esp_gost (cpesp_40_drv) (библиотекой libesp_gost (cpesp_40_api))

Библиотека уровня пользователя libesp_gost (cpesp_40_api) предназначена для обслуживания процессов обеспечения защищённого обмена:

  • поддержки протоколов ESP/AH

  • организации защищённого обмена ключевой информацией с библиотекой libike_gost (cpike_40_api)

Библиотека libesp_gost (cpesp_40_api) содержит функции, необходимые для:

  • инициализации и завершения работы

  • реализации протоколов ESP/AH

  • организации защищённого обмена ключевой информацией с библиотекой libike_gost (cpike_40_api)

Модуль ядра ОС esp_gost (cpesp_40_drv) содержит функции, необходимые для:

  • инициализации и завершения работы

  • реализации протоколов ESP/AH

  • организации защищённого обмена ключевой информацией с библиотекой libike_gost (cpike_40_api)

Библиотеки libike_gost (cpike_40_api), libesp_gost (cpesp_40_api) при работе использует КриптоПро CSP. Библиотеки могут использовать интерфейс КриптоПро CSP уровня CPC либо уровня Crypt. При использовании интерфейса уровня CPC приложение обязано создать провайдер, определяемый хендлом. Корректность хендла обеспечивается приложением.

Модуль esp_gost (cpesp_40_drv) при работе использует модуль КриптоПро CSP уровня ядра. Запуск модуля КриптоПро CSP и создание контейнеров выполняются пользователем модуля esp_gost (cpesp_40_drv).

Требования по встраиванию

Модули поддержки протоколов IKE и ESP/AH предназначены для обеспечения защиты информации при выходе в канал связи.

Встраивание модулей поддержки является самостоятельной разработкой СКЗИ и должно проводиться в соответствии с требованиями действующего законодательства.

Часть режимов работы данных модулей не была сертифицирована в составе КриптоПро CSP 3.6.1:

  • метод IKE-GOST-GSS-API библиотеки поддержки IKE

  • методы защиты данных AH_GOST-HMAC-4M, AH_GOST-HMAC-1K библиотеки поддержки ESP

При необходимости использования перечисленных методов их сертификация должна проводиться в составе разрабатываемых СКЗИ.

Использование типа данных аутентификации DT_PSK запрещено.