Простое управление ключами для интернет-протокола - Simple Key-Management for Internet Protocol

Простое управление ключами для интернет-протокола или же ПРОПУСКАТЬ протокол, разработанный примерно в 1995 г. IETF Рабочая группа по безопасности для обмена ключи шифрования. ПРОПУСТИТЬ и Photuris были оценены как механизмы обмена ключами для IPsec до принятия АЙК в 1998 г.[1]

Пропустить - это гибридный протокол распределения ключей. Простое управление ключами для интернет-протоколов (SKIP) похоже на SSL, за исключением того, что он устанавливает долгосрочный ключ один раз, а затем не требует предварительной связи для установления или обмена ключами в каждом сеансе. сессионная основа. Таким образом, отсутствуют накладные расходы на установку соединения, и новые значения ключей не генерируются постоянно. SKIP использует информацию о своем собственном секретном ключе или частном компоненте и общедоступном компоненте адресата для вычисления уникального ключа, который может использоваться только между ними.

Общедоступный компонент каждой стороны может быть определен как gx mod p, где x - частный компонент. В этой системе g - генератор, а p - простое число, которое используется как модуль (mod). g и p - фиксированные значения, известные обеим сторонам.

Первый узел называется Узлом I. Узел I имеет открытый компонент Ki и частный компонент i. Второй узел называется Узлом J. Узел J имеет общедоступный компонент Kj и частный компонент j.

Публичный компонент каждого узла распространяется в виде сертификата. Они связаны небезопасной сетью.

Поскольку Node I знает свой собственный частный компонент и открытый компонент Node J, он может использовать эти два компонента для вычисления уникального ключа, который могут знать только оба из них.


Примечание. Этот общий секрет неявный. Его не нужно явно сообщать ни одному из принципалов. Каждый принципал может вычислить этот секрет на основе информации об идентичности другого принципала и сертификате открытого ключа. Общий секрет вычисляется с использованием известного алгоритма Диффи-Хеллмана.


Этот долговременный секрет с взаимной аутентификацией используется для получения ключа, который обозначается Kij в SKIP версии 1 и Kijn в SKIP, n - это число, полученное из постоянно увеличивающегося счетчика, который называется «счетчик n».


Примечание. В SKIP мастер-ключ не используется напрямую, а хешируется вместе с некоторыми другими данными для создания ключа.


Ключ получается из младших битов размера ключа gij mod p. Ключ Kij или Kijn используется в качестве главного ключа или ключа шифрования для обеспечения шифрования и аутентификации на основе IP-пакетов. Отдельный IP-пакет шифруется (или аутентифицируется) с использованием случайно сгенерированного ключа пакета, обозначенного как Kp.

Ключ пакета, в свою очередь, зашифровывается с помощью Kij или Kijn. Поскольку Kij или Kijn могут быть кэшированы для повышения эффективности, это позволяет очень быстро изменять ключи трафика (то есть пакетов) (при необходимости, даже для каждого пакета) без дополнительных вычислительных затрат, связанных с операцией с открытым ключом.

Кроме того, поскольку ключи передаются в самих пакетах, нет необходимости нести накладные расходы и сложность псевдосеансового уровня под IP. На рисунке B-5 показан зашифрованный IP-пакет с использованием описанной выше двухэтапной процедуры шифрования.

Рисунок B-5 Зашифрованный пакет

Когда узел получает этот зашифрованный пакет, он ищет сертификат отправителя. Используя этот и долгосрочный закрытый ключ принимающего узла, принимающий узел может вычислить Kij или Kijn. Используя Kij или Kijn, принимающий узел может расшифровать Kp и, следовательно, расшифровать пакет.

Хотя в каждом пакете есть ключ пакета, нет необходимости менять ключ в каждом пакете. Ключи можно менять так часто, как это необходимо, в зависимости от политик управления ключами, применяемых на сайте.

Обновление мастер-ключа нулевого сообщения

В предыдущем разделе описывается, как узлы могут вычислять один долгосрочный ключ, Kij или Kijn. Для изменения этого ключа требуется выдать новый сертификат тому или иному принципалу.

Есть две желательные причины для обновления главного ключа. Во-первых, он сводит к минимуму раскрытие любого данного ключа шифрования ключа, что затрудняет криптоанализ. Во-вторых, обновление главного ключа предотвращает повторное использование скомпрометированных ключей трафика (Kp). Если ключ трафика, используемый для аутентификации пакета, когда-либо будет скомпрометирован (по какой-либо причине), то его нельзя будет использовать для отправки поддельного трафика, поскольку шифрование Kp при текущих Kij или Kijn неизвестно.

Главный ключ обновляется путем отправки счетчика (скажем, n) в пакете, который только увеличивается и никогда не уменьшается. Ключ Kij становится функцией этого счетчика n следующим образом:

Kijn = h (Kij, n) 

где h - псевдослучайная функция, например MD5.

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

В SKIP значение счетчика n увеличивается один раз в час. Он начался с нуля 1 января 1995 года, 00:00:00 по Гринвичу.

Резюме

В этом приложении более подробно обсуждаются идеи, необходимые для понимания того, как работает SKIP. В нем описано, как SunScreen SKIP обрабатывает ключи и сертификаты с CA и без него; изучили, как работает алгоритм шифрования; перечислил, какие важные услуги предоставляет SunScreen SKIP; и представил общий вид архитектуры SunScreen SKIP.

Рекомендации

  1. ^ Дубравски, Идо (2002-08-15). «Настройка IPsec / IKE в Solaris». Безопасность. Получено 2009-12-02.

http://docs.oracle.com/cd/E19957-01/805-5743/6j5dvnrfs/index.html