Jump to content

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

(Перенаправлено с KMIP )
Участники взаимодействия OASIS 2017 на конференции RSA 2017 .

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

Стандарт KMIP был впервые выпущен в 2010 году. Клиенты и серверы коммерчески доступны от нескольких поставщиков. Работа по стандартизации KMIP регулируется органом по стандартизации OASIS . Технические подробности также можно найти на официальной странице КМИП. [1] и кмип вики. [2]

Описание

[ редактировать ]

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

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

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

К типам управляемых объектов, которыми управляет KMIP, относятся:

  • Симметричные ключи, используемые для таких алгоритмов, как AES.
  • Открытые и закрытые ключи, используемые для асимметричных алгоритмов, таких как RSA и ECDH. Для хранения открытого и закрытого ключей используются отдельные объекты, поэтому пользователь может иметь разрешение на доступ к одному, но не к другому. Связанные объекты обычно содержат атрибуты Link, содержащие уникальный идентификатор другого объекта.
  • Сертификаты и ключи PGP.
  • Разделенные ключи, при этом каждое разделение представляет собой отдельный объект, которым можно управлять независимо от других разделений.
  • Секретные данные, такие как пароли.
  • Непрозрачные данные для расширений, определяемых клиентом и сервером.
  • Запросы на подпись сертификата.

Операции

[ редактировать ]

Операции, предоставляемые КМИП, включают в себя:

  • Создайте новый управляемый объект, например симметричный ключ, и верните идентификатор.
  • Создайте пару ключей, создав два объекта, представляющие асимметричные ключи.
  • Get — получение значения объекта по его уникальному идентификатору. Возвращенное значение может быть обернуто (зашифровано) другим ключом, находящимся на сервере, для дополнительной безопасности.
  • Зарегистрируйтесь, сохраняя сгенерированное извне значение ключа.
  • Добавить атрибуты, получить атрибуты, изменить атрибуты и установить атрибут. Их можно использовать для управления изменяемыми атрибутами управляемого объекта.
  • Найдите, получив список объектов на основе предикатов.
  • Re-Key: создание нового ключа, который может заменить существующий ключ. Существуют также атрибуты, которые можно использовать для автоматической ротации ключей сервером после определенного периода или количества использований. Имя перемещается в новый ключ и обычно используется для получения ключа для операций защиты, таких как шифрование и подпись. Старый ключ также можно получить с помощью уникального идентификатора для операций процесса, таких как расшифровка и проверка подписи.
  • (Re-)Certify — удостоверяет сертификат.
  • Разделить и соединить N из M клавиш.
  • Шифрование, дешифрование, MAC и т. д. Криптографические операции, выполняемые на сервере управления ключами. Сам ключ может быть помечен как неизвлекаемый, и в этом случае его значение никогда не покидает сервер.
  • Экспортируйте и импортируйте ключи на другие серверы KMIP и обратно.
  • Операции по реализации жизненного цикла ключей NIST .

Жизненный цикл ключа

[ редактировать ]

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

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

Структура сообщения

[ редактировать ]

KMIP — это протокол без сохранения состояния, в котором сообщения отправляются от клиента на сервер, а затем клиент обычно ожидает ответа. Каждый запрос может содержать множество операций, что позволяет протоколу эффективно обрабатывать большое количество ключей. Существуют также расширенные функции асинхронной обработки запросов.

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

Существуют также четко определенные кодировки протокола XML и JSON для сред, где двоичный код не подходит. очень компактная кодировка CBOR Для приложений, которым это требуется, также предоставляется .

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

Управление системой

[ редактировать ]

KMIP предоставляет стандартизированные механизмы для управления сервером KMIP надлежащим образом авторизованными административными клиентами с использованием системных объектов.

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

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

Могут быть предоставлены значения атрибутов по умолчанию, поэтому простым клиентам не нужно указывать криптографические и другие параметры. Например, пользователь с правами администратора может указать, что все ключи «SecretAgent» должны быть 192-битными ключами AES с цепочкой блоков CBC . Затем клиенту нужно только указать, что он хочет создать ключ «SecretAgent», чтобы предоставить эти значения по умолчанию. Также возможно ввести ограничения на ключевые параметры, реализующие политику безопасности.

Профили КМИП

[ редактировать ]

KMIP также определяет набор профилей , которые являются подмножествами спецификации KMIP и показывают общее использование для определенного контекста. Конкретная реализация KMIP считается соответствующей профилю, если она удовлетворяет всем требованиям, изложенным в документе спецификации профиля. OASIS разработал различные профили, описывающие требования к соответствию массивам хранения данных. [3] и ленточные библиотеки, [4] но любая организация может создать профиль.

Связь с PKCS#11

[ редактировать ]

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

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

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

Реализации KMIP

[ редактировать ]

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

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

[ редактировать ]

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

Стенды Interop на конференции RSA 2015. Каждый поставщик взаимодействует друг с другом.

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

Ниже показано XML-кодирование запроса на поиск ключа с именем «MyKeyName» и возврат его значения, завернутого в другой ключ с идентификатором «c6d14516-4d38-0644-b810-1913b9aef4da». (TTLV — более распространенный проводной протокол, но XML более удобен для чтения человеком.)

<RequestMessage>
  <RequestHeader>
    <ProtocolVersion>
      <ProtocolVersionMajor type="Integer" value="3"/>
      <ProtocolVersionMinor type="Integer" value="0"/>
    </ProtocolVersion>
  </RequestHeader>
  <BatchItem>
    <Operation type="Enumeration" value="Locate"/>
    <UniqueBatchItemID type="ByteString" value="1"/>
    <RequestPayload>
      <Attributes>
        <Name type="TextString" value="MyKeyName"/>
      </Attributes>
    </RequestPayload>
  </BatchItem>
  <BatchItem>
    <Operation type="Enumeration" value="Get"/>
    <UniqueBatchItemID type="ByteString" value="2"/>
    <RequestPayload>
      <KeyWrappingSpecification>
        <WrappingMethod type="Enumeration" value="Encrypt"/>
        <EncryptionKeyInformation>
          <UniqueIdentifier type="Integer" value="c6d14516-4d38-0644-b810-1913b9aef4da"/>
        </EncryptionKeyInformation>
      </KeyWrappingSpecification>
    </RequestPayload>
  </BatchItem>
</RequestMessage>

Документация

[ редактировать ]

Документация находится в свободном доступе на веб-сайте OASIS. [5] Сюда входит официальная техническая спецификация и руководство по использованию для помощи людям, незнакомым со спецификацией. Также предоставляется обширная библиотека тестовых примеров. Они используются для проверки совместимости клиентов и серверов, а также предоставляют конкретные примеры использования каждой стандартной функции KMIP.

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

[ редактировать ]
Краткое описание версий и функций KMIP.
Версия Проект комитета Основные характеристики
1.0 октябрь 2010 г. Начальная версия
1.1 январь 2013 г.
1.2 июнь 2014 г. Криптографические операции (шифрование, дешифрование, подпись и т. д.). Введение профилей, включая идентификаторы приложений для ленточных библиотек.
1.3 2015 Потоковые криптографические операции; Регистрация клиента; Найдите смещение/предел; Устаревшие шаблоны; ГСЧ-запросы;
1.4 2016 Улучшение асинхронных операций; Импорт/экспорт ключей на другие серверы; Поддержка ПККС №12; Стандартизированная упаковка ключей; Сертифицировать атрибуты; Значения корреляции клиента и сервера; Описательные атрибуты; поддержка AEAD; поддержка AES-XTS; Создать секретные данные; Поддержка RSA PSS; Множество расширений для Query.
2.0 2018 Удаление устаревших элементов; Эффективное представление атрибутов; Замена соглашения «x-» для пользовательских атрибутов; Работа журнала клиента; Разрешение даты и времени 1 микросекунда; Найдите разрушенное; Улучшенная обработка ошибок и причины результатов; Улучшенная подготовка клиентов; новый CSR объект ; Удаление индекса атрибутов; Поддержка токенизации; Атрибут типа ключа NIST; Уникальные идентификаторы фиксированной длины; Несколько новых атрибутов и расширений запросов; Делегированные входы в систему; Хешированные пароли; Несколько заполнителей уникальных идентификаторов; Поддержка ReEncrypt с использованием ссылок на данные; Операция установки атрибута; Инкапсуляция PKCS #11.
2.1 2019 Пинг; Обрабатывать и запрашивать асинхронные запросы; Стандартизировать ротацию ключей на стороне сервера; Установка и запрос значений атрибутов по умолчанию; Устанавливать и запрашивать ограничения для атрибутов; [6]
3.0 2021 Добавить явную концепцию пользователей KMIP, смоделированных как системные объекты; Улучшения жизненного цикла ссылок на другие объекты с использованием имен, а также уникальных идентификаторов; Формализовать группы объектов и иерархии; Уничтожить административную деятельность; [7]

См. также

[ редактировать ]
  1. ^ «Протокол взаимодействия управления ключами OASIS (KMIP) TC | OASIS» .
  2. ^ https://wiki.oasis-open.org/kmip вики.
  3. ^ «Массив хранения данных KMIP с профилем самошифрующихся дисков, версия 1.0» .
  4. ^ «Профиль ленточной библиотеки KMIP, версия 1.0» .
  5. ^ «Протокол взаимодействия управления ключами OASIS (KMIP) TC | OASIS» .
  6. ^ «Спецификация KMIP v2.1 WD07» .
  7. ^ «Спецификация KMIP v3.0 WD09» .
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: dc9c385518c8b6d97bc7912dabe04bef__1706096280
URL1:https://arc.ask3.ru/arc/aa/dc/ef/dc9c385518c8b6d97bc7912dabe04bef.html
Заголовок, (Title) документа по адресу, URL1:
Key Management Interoperability Protocol - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)