Импорт защищенных модулем HSM ключей в Управляемый модуль HSM (BYOK)

Azure Key Vault Управляемое HSM поддерживает импорт ключей, созданных в вашем локальном модуле аппаратной безопасности (HSM). Ключи никогда не покидают границу защиты HSM. Этот сценарий часто называется принесите свой ключ (BYOK). Управляемый HSM использует адаптеры Marvell LiquidSecurity HSM, сертифицированные по стандарту FIPS 140-3 третий уровень, для защиты ваших ключей.

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

Замечание

Этот метод импорта доступен только для поддерживаемых модулей HSM.

Дополнительные сведения и руководство по началу работы с управляемым HSM см. в статье "Что такое управляемый HSM?"

Обзор

Ниже представлен обзор этого процесса. Конкретные действия, которые необходимо для этого выполнить, описаны далее в этой статье.

  • В управляемом HSM создайте ключ (называемый Key Exchange Key (KEK)). KEK должен быть ключом RSA-HSM, который выполняет только операцию ключа import.
  • Скачайте открытый ключ KEK в виде PEM-файла.
  • Перенесите открытый ключ KEK на автономный компьютер, подключенный к локальному модулю HSM.
  • На автономном компьютере используйте средство BYOK, предоставленное поставщиком HSM, для создания файла BYOK.
  • Целевой ключ шифруется с помощью KEK, который остается зашифрованным, пока он не будет передан в управляемый HSM. Локальный модуль HSM покидает только зашифрованная версия ключа.
  • KEK, созданный в управляемом HSM, не может экспортироваться. Модули HSM обеспечивают соблюдение правила, согласно которому за пределами управляемого HSM не существует незашифрованной версии KEK.
  • Ключ KEK должен находиться в том же управляемом модуле HSM, в который будет импортирован целевой ключ.
  • При отправке файла BYOK в Управляемый HSM управляемый HSM использует закрытый ключ KEK для расшифровки целевого материала ключа и импорта его в виде ключа HSM. Эта операция выполняется полностью в HSM. Целевой ключ всегда находится внутри границы системы защиты HSM.

Предпосылки

Требуется Azure подписка. Если у вас еще нет аккаунта, создайте бесплатную учетную запись, прежде чем начать.

Кроме того, вам понадобится следующее:

Azure Cloud Shell

Azure предоставляет Azure Cloud Shell, интерактивную среду оболочки, которую можно использовать через браузер. Вы можете использовать Bash или PowerShell с Cloud Shell для работы со службами Azure. Вы можете использовать предварительно установленные команды Cloud Shell для запуска кода в этой статье, не устанавливая ничего в локальной среде.

Чтобы начать Azure Cloud Shell, выполните приведенные действия.

Вариант Пример/ссылка
Нажмите кнопку Попробовать в правом верхнем углу блока кода или команд. Выбор Try It не копирует код или команду в Cloud Shell. Screenshot, показывающий пример пробной версии для Azure Cloud Shell.
Перейдите к https://shell.azure.com или нажмите кнопку Launch Cloud Shell, чтобы открыть Cloud Shell в браузере. Кнопка для запуска Azure Cloud Shell.
Нажмите кнопку Cloud Shell в строке меню в правом верхнем углу на портале Azure. Скриншот, показывающий кнопку Cloud Shell на портале Azure

Чтобы использовать Azure Cloud Shell:

  1. Запустите Cloud Shell.

  2. Нажмите кнопку Копировать в блоке кода (или блоке команд), чтобы скопировать код или команду.

  3. Вставьте код или команду в сеанс Cloud Shell, выбрав Ctrl+Shift+V в Windows и Linux, или выбрав Cmd+Shift+V в macOS.

  4. Нажмите Enter, чтобы запустить код или команду.

Чтобы войти в Azure с помощью интерфейса командной строки, введите следующее:

az login

Дополнительные сведения о параметрах проверки подлинности с помощью интерфейса командной строки см. в разделе sign in with Azure CLI.

Поддерживаемые модули аппаратной защиты (HSM)

Наименование поставщика Тип поставщика Поддерживаемые модели модуля HSM Дополнительные сведения
Cryptomathic ISV (корпоративная система управления ключами) Несколько торговых марок и моделей HSM, в том числе
  • nCipher
  • Фалес
  • Utimaco
Дополнительные сведения см. на сайте Cryptomathic.
Вверять Производитель,
HSM как услуга
  • Семейство модулей HSM nShield
  • nShield как услуга
Новое средство BYOK и документация для nCipher
Fortanix Производитель,
HSM как услуга
  • Служба управления ключами для самостоятельной защиты (SDKMS)
  • Equinix SmartKey
Экспорт ключей SDKMS к облачным провайдерам с использованием собственных ключей — Azure Key Vault
IBM Изготовитель IBM 476x, CryptoExpress IBM Enterprise Key Management Foundation
Marvell Изготовитель Все модули HSM LiquidSecurity со
  • микропрограммы версии 2.0.4 или выше
  • прошивка версии 3.2 или новее
Средство BYOK и документация для Marvell
Securosys SA Производитель, HSM как услуга Семейство Primus HSM, Securosys Clouds HSM Новое средство BYOK и документация для Primus
StorMagic ISV (корпоративная система управления ключами) Несколько торговых марок и моделей HSM, в том числе
  • Utimaco
  • Фалес
  • nCipher
Дополнительные сведения см. на сайте StorMagic.
SvKMS и Azure Key Vault BYOK
Фалес Изготовитель
  • Семейство HSM 7 Luna со встроенным ПО версии 7.3 или более поздней
Средство и документация Luna BYOK
Utimaco Производитель,
HSM как услуга
Привязка u.trust, CryptoServer Инструмент Utimaco BYOK и руководство по интеграции

Поддерживаемые типы ключей

Имя ключа Тип ключа Размер ключа/кривая Происхождение Описание
Ключ обмена ключами (KEK) RSA-HSM 2048-разрядный
3072-разрядный
4096-разрядный
Управляемый модуль HSM Защищенная модулем HSM пара ключей RSA, созданная в управляемом модуле HSM
Целевой ключ
RSA-HSM 2048-разрядный
3072-разрядный
4096-разрядный
HSM от поставщика Ключ, который нужно передать в управляемый модуль HSM
EC-HSM P-256
P-384
P-521
HSM от поставщика Ключ, который нужно передать в управляемый модуль HSM
Симметричный ключ (oct-hsm) 128-разрядное
192-битный
256-битный
HSM от поставщика Ключ, который нужно передать в управляемый модуль HSM

Сгенерируйте ключ и передайте его на управляемый модуль HSM.

Шаг 1. Создание KEK

KEK — это ключ RSA, создаваемый в управляемом HSM. Используйте KEK для шифрования ключа, который требуется импортировать ( целевой ключ).

Ключ шифрования ключей (KEK) должен:

  • Ключ RSA-HSM (2048-разрядная, 3072-разрядная или 4096-разрядная версия)
  • Создан в том же управляемом HSM, где планируется импортировать целевой ключ.
  • Создан с установленным набором разрешённых ключевых операций import.

Замечание

KEK должен иметь import в качестве единственной разрешенной операции ключа. import является взаимоисключающим со всеми другими ключевыми операциями.

С помощью команды az keyvault key create создайте ключ KEK, для которого в качестве операции с ключами задана операция import. Запишите идентификатор ключа (kid), возвращаемый следующей командой. (Вы будете использовать значение kid на шаге 3.)

az keyvault key create --kty RSA-HSM --size 4096 --name KEKforBYOK --ops import --hsm-name <hsm-name>

Шаг 2. Скачивание открытого ключа KEK

Чтобы скачать открытый ключ KEK в PEM-файл, используйте команду az keyvault key download. Импортируемый целевой ключ шифруется с помощью открытого ключа KEK.

az keyvault key download --name KEKforBYOK --hsm-name <hsm-name> --file KEKforBYOK.publickey.pem

Перенесите KEKforBYOK.publickey.pem файл на автономный компьютер. Этот файл понадобится на следующем шаге.

Шаг 3. Создание ключа и подготовка его к передаче

Чтобы скачать и установить средство BYOK, ознакомьтесь с документацией поставщика HSM. Следуйте инструкциям поставщика HSM, чтобы создать целевой ключ, а затем создать пакет передачи ключей (BYOK-файл). Средство BYOK использует kid из Шага 1 и KEKforBYOK.publickey.pem файл, скачанный в Шаге 2, для генерации зашифрованного целевого ключа BYOK.

Перенесите файл BYOK на подключенный компьютер.

Замечание

Импорт ключей RSA 1024-разрядной версии не поддерживается. Поддерживается импорт ключей EC-HSM P256K.

Известная проблема. Импорт целевого 4096-разрядного ключа RSA из модулей HSM Luna поддерживается только при использовании встроенного ПО версии 7.4.0 или более поздней.

Шаг 4. Перенос ключа в управляемый модуль HSM

Чтобы завершить импорт ключа, перенесите пакет обмена ключами (файл BYOK) с отключенного компьютера на компьютер, подключенный к Интернету. Чтобы передать файл BYOK в управляемый модуль HSM, используйте команду az keyvault key import.

az keyvault key import --hsm-name <hsm-name> --name <key-name> --byok-file KeyTransferPackage-<key-name>.byok

Если отправка выполнена успешно, Azure CLI отображает свойства импортированного ключа.

Дальнейшие шаги

Теперь ключ, защищенный модулем HSM, можно использовать в управляемом модуле HSM. Дополнительные сведения см. на этой странице цен и сравнения характеристик.