Importowanie kluczy chronionych przez moduł HSM do zarządzanego modułu HSM (BYOK)

Zarządzany moduł HSM usługi Azure Key Vault obsługuje importowanie kluczy wygenerowanych w lokalnym sprzętowym module zabezpieczeń (HSM); klucze nigdy nie opuszczają granicy ochrony modułu HSM. Ten scenariusz często jest określany jako bring your own key (BYOK). Zarządzany moduł HSM chroni klucze za pomocą adapterów HSM LiquidSecurity HSM (zweryfikowanych pod kątem zgodności ze standardem FIPS 140-2 poziom 3).

Skorzystaj z informacji w tym artykule, aby ułatwić planowanie, generowanie i przenoszenie własnych kluczy chronionych przez moduł HSM do użycia z zarządzanym modułem HSM.

Uwaga

Ta funkcja nie jest dostępna dla platformy Microsoft Azure obsługiwanej przez firmę 21Vianet. Ta metoda importu jest dostępna tylko dla obsługiwanych modułów HSM.

Aby uzyskać więcej informacji i samouczka, aby rozpocząć korzystanie z zarządzanego modułu HSM, zobacz Co to jest zarządzany moduł HSM?.

Omówienie

Oto omówienie procesu. Szczegółowe kroki do wykonania opisano w dalszej części artykułu.

  • W zarządzanym module HSM wygeneruj klucz (nazywany kluczem wymiany kluczy (KEK)). Klucz KEK musi być kluczem RSA-HSM, który ma tylko operację import klucza.
  • Pobierz klucz publiczny KEK jako plik pem.
  • Przenieś klucz publiczny klucza KEK na komputer w trybie offline połączony z lokalnym modułem HSM.
  • Na komputerze w trybie offline użyj narzędzia BYOK dostarczonego przez dostawcę modułu HSM, aby utworzyć plik BYOK.
  • Klucz docelowy jest szyfrowany przy użyciu klucza KEK, który pozostaje zaszyfrowany, dopóki nie zostanie przeniesiony do zarządzanego modułu HSM. Tylko zaszyfrowana wersja klucza pozostawia lokalny moduł HSM.
  • Klucz KEK generowany wewnątrz zarządzanego modułu HSM nie jest eksportowalny. Moduły HSM wymuszają regułę, że nie ma jasnej wersji klucza KEK poza zarządzanym modułem HSM.
  • Klucz KEK musi znajdować się w tym samym zarządzanym module HSM, w którym zostanie zaimportowany klucz docelowy.
  • Po przekazaniu pliku BYOK do zarządzanego modułu HSM zarządzany moduł HSM używa klucza prywatnego klucza KEK do odszyfrowania materiału klucza docelowego i zaimportowania go jako klucza HSM. Ta operacja odbywa się całkowicie wewnątrz modułu HSM. Klucz docelowy zawsze pozostaje w granicy ochrony modułu HSM.

Wymagania wstępne

Aby użyć poleceń interfejsu wiersza polecenia platformy Azure w tym artykule, musisz mieć następujące elementy:

Azure Cloud Shell

Na platforma Azure hostowane jest Azure Cloud Shell, interaktywne środowisko powłoki, z którego można korzystać w przeglądarce. Do pracy z usługami platformy Azure można używać programu Bash lub PowerShell w środowisku Cloud Shell. Aby uruchomić kod w tym artykule, możesz użyć wstępnie zainstalowanych poleceń usługi Cloud Shell bez konieczności instalowania niczego w środowisku lokalnym.

Aby uruchomić środowisko Azure Cloud Shell:

Opcja Przykład/link
Wybierz pozycję Wypróbuj w prawym górnym rogu bloku kodu lub polecenia. Wybranie pozycji Wypróbuj nie powoduje automatycznego skopiowania kodu lub polecenia do usługi Cloud Shell. Screenshot that shows an example of Try It for Azure Cloud Shell.
Przejdź do witryny https://shell.azure.com lub wybierz przycisk Uruchom Cloud Shell, aby otworzyć środowisko Cloud Shell w przeglądarce. Button to launch Azure Cloud Shell.
Wybierz przycisk Cloud Shell na pasku menu w prawym górnym rogu witryny Azure Portal. Screenshot that shows the Cloud Shell button in the Azure portal

Aby użyć usługi Azure Cloud Shell:

  1. Uruchom usługę Cloud Shell.

  2. Wybierz przycisk Kopiuj w bloku kodu (lub bloku poleceń), aby skopiować kod lub polecenie.

  3. Wklej kod lub polecenie do sesji usługi Cloud Shell, wybierając klawisze Ctrl+Shift V w systemach Windows i Linux lub wybierając pozycję Cmd+Shift++V w systemie macOS.

  4. Wybierz klawisz Enter, aby uruchomić kod lub polecenie.

Aby zalogować się do platformy Azure przy użyciu interfejsu wiersza polecenia, wpisz:

az login

Aby uzyskać więcej informacji na temat opcji logowania za pośrednictwem interfejsu wiersza polecenia, zapoznaj się z tematem Logowanie za pomocą interfejsu wiersza polecenia platformy Azure

Obsługiwane moduły HSM

Nazwa dostawcy Typ dostawcy Obsługiwane modele modułu HSM Więcej informacji
Cryptomathic Niezależne dostawcy oprogramowania (system zarządzania kluczami przedsiębiorstwa) Wiele marek i modeli HSM, w tym
  • nCipher
  • Thales
  • Utimaco
Aby uzyskać szczegółowe informacje, zobacz witrynę Cryptomathic
Powierzyć Producent
Moduł HSM jako usługa
  • nShield rodziny modułów HSM
  • nShield jako usługa
nCipher nowe narzędzie BYOK i dokumentacja
Fortanix Producent
Moduł HSM jako usługa
  • Samodzielna ochrona usługa zarządzania kluczami (SDKMS)
  • Equinix SmartKey
Eksportowanie kluczy ZESTAWU SDKMS do dostawców chmury dla usługi BYOK — Azure Key Vault
IBM Producent IBM 476x, CryptoExpress IBM Enterprise Key Management Foundation
Marvell Producent Wszystkie moduły HSM z zabezpieczeniami LiquidSecurity za pomocą polecenia
  • Oprogramowanie układowe w wersji 2.0.4 lub nowszej
  • Oprogramowanie układowe w wersji 3.2 lub nowszej
Marvell BYOK tool and documentation (Narzędzie i dokumentacja marvell BYOK)
Securosys SA Producent, moduł HSM jako usługa Rodzina modułów HSM Primus, Securosys Clouds HSM Primus BYOK narzędzie i dokumentacja
StorMagic Niezależne dostawcy oprogramowania (system zarządzania kluczami przedsiębiorstwa) Wiele marek i modeli HSM, w tym
  • Utimaco
  • Thales
  • nCipher
Aby uzyskać szczegółowe informacje, zobacz witrynę StorMagic
Rozwiązania SVKMS i Azure Key Vault BYOK
Thales Producent
  • Rodzina Luna HSM 7 z oprogramowaniem układowym w wersji 7.3 lub nowszej
Narzędzie i dokumentacja luna BYOK
Utimaco Producent
Moduł HSM jako usługa
u.trust Anchor, CryptoServer Przewodnik po narzędziu UTimaco BYOK i integracji

Obsługiwane typy kluczy

Nazwa klucza Typ klucza Rozmiar/krzywa klucza Pochodzenie opis
Klucz wymiany kluczy (KEK) RSA-HSM 2048-bitowy
3072-bitowy
4096-bitowy
Zarządzany moduł HSM Para kluczy RSA z obsługą modułu HSM wygenerowana w zarządzanym module HSM
Klucz docelowy
RSA-HSM 2048-bitowy
3072-bitowy
4096-bitowy
Moduł HSM dostawcy Klucz, który ma zostać przeniesiony do zarządzanego modułu HSM
Moduł EC-HSM P-256
P-384
P-521
Moduł HSM dostawcy Klucz, który ma zostać przeniesiony do zarządzanego modułu HSM
Klucz symetryczny (oct-hsm) 128-bitowy
192-bitowy
256-bitowy
Moduł HSM dostawcy Klucz, który ma zostać przeniesiony do zarządzanego modułu HSM

Generowanie i przenoszenie klucza do zarządzanego modułu HSM

Aby wygenerować i przenieść klucz do zarządzanego modułu HSM:

Krok 1. Generowanie klucza KEK

Klucz KEK to klucz RSA generowany w zarządzanym module HSM. Klucz KEK służy do szyfrowania klucza, który chcesz zaimportować (klucz docelowy).

Klucz KEK musi być:

  • Klucz RSA-HSM (2048-bitowy; 3072-bitowy; lub 4096-bitowy)
  • Wygenerowany w tym samym zarządzanym module HSM, w którym zamierzasz zaimportować klucz docelowy
  • Utworzono z dozwolonymi operacjami klucza ustawionymi na wartość import

Uwaga

Klucz KEK musi mieć wartość "import" jako jedyną dozwoloną operację klucza. "import" wyklucza się wzajemnie ze wszystkimi innymi operacjami kluczowymi.

Użyj polecenia az keyvault key create, aby utworzyć klucz KEK zawierający kluczowe operacje ustawione na importwartość . Zarejestruj identyfikator klucza (kid), który jest zwracany z następującego polecenia. (Użyjesz kid wartości w kroku 3).

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

Krok 2. Pobieranie klucza publicznego klucza KEK

Użyj polecenia az keyvault key download , aby pobrać klucz publiczny KEK do pliku pem. Importowany klucz docelowy jest szyfrowany przy użyciu klucza publicznego klucza KEK.

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

Przenieś plik KEKforBYOK.publickey.pem na komputer w trybie offline. Ten plik będzie potrzebny w następnym kroku.

Krok 3. Generowanie i przygotowywanie klucza do przeniesienia

Zapoznaj się z dokumentacją dostawcy modułu HSM, aby pobrać i zainstalować narzędzie BYOK. Postępuj zgodnie z instrukcjami od dostawcy modułu HSM, aby wygenerować klucz docelowy, a następnie utwórz pakiet transferu kluczy (plik BYOK). Narzędzie BYOK użyje kid pliku z kroku 1 i pliku KEKforBYOK.publickey.pem pobranego w kroku 2 , aby wygenerować zaszyfrowany klucz docelowy w pliku BYOK.

Przenieś plik BYOK na połączony komputer.

Uwaga

Importowanie kluczy RSA 1024-bitowych nie jest obsługiwane. Importowanie kluczy P256K EC-HSM jest obsługiwane.

Znany problem: Importowanie klucza docelowego RSA 4K z modułów HSM Luna jest obsługiwane tylko w przypadku oprogramowania układowego 7.4.0 lub nowszego.

Krok 4. Przenoszenie klucza do zarządzanego modułu HSM

Aby ukończyć importowanie klucza, przenieś pakiet transferu kluczy (plik BYOK) z komputera odłączonego do komputera podłączonego do Internetu. Użyj polecenia az keyvault key import, aby przekazać plik BYOK do zarządzanego modułu HSM.

az keyvault key import --hsm-name ContosoKeyVaultHSM --name ContosoFirstHSMkey --byok-file KeyTransferPackage-ContosoFirstHSMkey.byok

Jeśli przekazywanie zakończy się pomyślnie, interfejs wiersza polecenia platformy Azure wyświetli właściwości zaimportowanego klucza.

Następne kroki

Teraz możesz użyć tego klucza chronionego przez moduł HSM w zarządzanym module HSM. Aby uzyskać więcej informacji, zobacz porównanie cen i funkcji.