Протокол взаимодействия управления ключами - Key Management Interoperability Protocol

Участники взаимодействия OASIS 2017 на конференции RSA 2017.

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

Стандарт KMIP был впервые выпущен в 2010 году. Клиенты и серверы коммерчески доступны от нескольких поставщиков. Стандартные усилия KMIP регулируются Орган по стандартизации OASIS. Технические подробности также можно найти на официальная страница KMIP и вики.

Описание

Сервер KMIP хранит и контролирует Управляемые объекты такие как симметричные и асимметричные ключи, сертификаты и определенные пользователем объекты. Затем клиенты используют протокол для доступа к этим объектам в соответствии с моделью безопасности, которая реализуется серверами. Предоставляются операции для создания, поиска, извлечения и обновления управляемых объектов.

У каждого управляемого объекта есть неизменный Ценить например, ключевой блок, содержащий криптографический ключ. Они также содержат изменяемые Атрибуты который можно использовать для хранения метаданных о ключах. Некоторые атрибуты выводятся непосредственно из значения, например криптографический алгоритм и длина ключа. Другие атрибуты определены в спецификации для управления объектами, например, идентификатор приложения, который обычно получается из идентификационных данных ленты. Дополнительные идентификаторы могут быть определены сервером или клиентом по мере необходимости для приложения.

Каждый объект идентифицируется уникальным и неизменным идентификатором объекта, который генерируется сервером и используется для получения значений объекта. Управляемым объектам также может быть предоставлен ряд изменяемых, но глобально уникальных Имя атрибут, который можно использовать для поиска объектов.

Типы управляемых объектов, которыми управляет KMIP, включают:

  • Симметричные ключи.
  • Открытые и частные ключи.
  • Сертификаты и ключи PGP.
  • Разделенные ключи.
  • Секретные данные (пароли).
  • Непрозрачные данные для расширений, определенных клиентом и сервером.

KMIP предоставляет следующие операции:

  • Создать - для создания нового управляемого объекта, такого как симметричный ключ, и возврата идентификатора.
  • Get - получить значение объекта по его уникальному идентификатору.
  • Регистр - для хранения сгенерированного извне значения ключа.
  • Добавить атрибуты, получить атрибуты и изменить атрибуты - для управления атрибутами управляемого объекта.
  • Найти - получить список объектов на основе комбинации предикатов.
  • Re-Key - для создания нового ключа, который может заменить существующий ключ.
  • Создать пару ключей - создать асимметричные ключи.
  • (Re-) Certify - для подтверждения сертификата.
  • Разделить и объединить n из m ключей.
  • Encrypt, Decrypt, MAC и т. Д. - криптографические операции, выполняемые на сервере управления ключами.
  • Экспорт и импорт ключей на другие серверы KMIP.
  • Операции по реализации NIST ключевой жизненный цикл.

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

Кодировка сообщения

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

  • Заполнение: TTLV выравнивает данные до ближайших 4 или 8 байтов, чтобы обеспечить оптимальный выравнивание процессора.
  • Расширяемость: намеренно оставляя место в перечислениях, чтобы можно было легко добавлять новые теги, типы данных и значения атрибутов.
  • Сопоставление с другими кодировками: протокол позволяет кодировать сообщения KMIP в виде XML и JSON, как описано в Дополнительные кодировки сообщений KMIP документ.

Также существуют четко определенные кодировки XML и JSON протокола для сред, в которых двоичные файлы не подходят.

Сам по себе TTLV представляет собой необработанный двоичный формат и не обеспечивает шифрование передаваемых сообщений. TLS требуется для обеспечения безопасности на уровне канала связи между клиентами и серверами.

KMIP профили

KMIP также определяет набор профили, которые являются подмножествами спецификации KMIP, показывающими общее использование для конкретного контекста. Конкретная реализация KMIP называется соответствующий к профилю, если он соответствует всем требованиям, изложенным в документе спецификации профиля. ОАЗИС разработал различные профили с описанием требований к массивам хранения[1] и ленточные библиотеки,[2] но любая организация может создать профиль.

Отношение к PKCS # 11

PKCS # 11 является API используется для управления аппаратный модуль безопасности. PKCS # 11 обеспечивает криптографические операции для шифрования и дешифрования, а также операции для простого управления ключами. Между API PKCS # 11 и протоколом KMIP существует значительная часть совпадений.

Эти два стандарта изначально были разработаны независимо. PKCS # 11 был создан RSA Безопасность, но теперь стандарт также регулируется ОАЗИС технический комитет. Заявленная цель комитетов PKCS # 11 и KMIP - согласовать стандарты там, где это возможно. Например, атрибуты PKCS # 11 Sensitive и Extractable добавляются в KMIP версии 1.4. Многие из тех же людей входят в технические комитеты как KMIP, так и PKCS # 11.

Реализации KMIP

Технический комитет OASIS KMIP ведет список известных реализаций KMIP, который можно найти на Сайт OASIS. По состоянию на март 2017 года в этом списке 28 внедрений и 61 продукт KMIP.

Взаимодействие между реализациями

Стандарт KMIP определяется с использованием официального документа спецификации, тестовых наборов и профилей, представленных ОАЗИС Технический комитет KMIP. Эти документы находятся в открытом доступе на веб-сайте OASIS.

Поставщики демонстрируют совместимость во время процесса, организованного техническим комитетом OASIS KMIP за несколько месяцев до каждой конференции RSA по безопасности. Эти демонстрации неофициально известны как взаимодействие. Взаимодействие KMIP проводится ежегодно с 2010 года. На следующей диаграмме показано количество отдельных тестов, выполненных каждой комбинацией клиента и поставщика сервера с 2012 года.

Полную информацию о результате взаимодействия 2017 года можно найти на сайте OASIS.

В 2014 г. Промышленная ассоциация сетей хранения данных (SNIA) анонсировала аналогичную, но отличную от других платформу для тестирования KMIP.[3] Он известен как Программа тестирования на соответствие SSIF KMIP. Однако программа испытаний на соответствие SSIF KMIP была прекращена с 1 сентября 2017 года, и, согласно веб-сайту SNIA, в настоящее время нельзя запланировать проведение новых испытаний.

История версий

Обзор версий и функций KMIP.
ВерсияПроект комитетаОсновные особенности
1.0Октябрь 2010 г.Первоначальный вариант
1.1Январь 2013 г.
1.2Июнь 2014 г.Криптографические операции. Введение профилей, включая идентификаторы приложений для ленточных библиотек.
1.32015Потоковые криптографические операции; Регистрация клиента; Найдите смещение / предел; Устарели шаблоны; Запросы ГСЧ;
1.42017Лучше асинхронные операции; Импорт / экспорт ключей на другие серверы; Поддержка PKCS # 12; Лучшая обработка ошибок; Стандартизированная упаковка ключей; Сертифицировать атрибуты; Значения корреляции между клиентом и сервером; Описательные атрибуты; Поддержка AEAD; Поддержка AES-XTS; Создать секретные данные; Поддержка RSA PSS; Множество расширений Query.
2.0Текущая версия в разработке, принятые предложения Февраль 2017Удаление устаревших элементов; Замена условного обозначения «x-» для настраиваемых атрибутов; Работа с клиентским журналом; Дата Разрешение времени 1 микросекунда; Найдите разрушенные и узоры; Лучшая обработка ошибок; новый CSR объект; Удаление индекса атрибута; Поддержка токенизации; Тип ключа NIST; Уникальные идентификаторы фиксированной длины; Несколько новых атрибутов и расширений запросов.

Смотрите также

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


внешняя ссылка

  • «Технический комитет OASIS KMIP».