Importieren von durch HSM geschützten Schlüsseln in verwaltetes HSM (BYOK)

Das verwaltete HSM von Azure Key Vault unterstützt den Import von Schlüsseln, die in Ihrem lokalen Hardwaresicherheitsmodul (HSM) generiert wurden. Die Schlüssel verlassen nie die HSM-Schutzgrenze. Dieses Szenario wird häufig als Bring Your Own Key (BYOK) bezeichnet. Das verwaltete HSM verwendet die HSM-Adapter von Marvell LiquidSecurity (validiert für FIPS 140-2 Level 3) zum Schützen der Schlüssel.

Verwenden Sie die Informationen in diesem Artikel zum Planen, Generieren und Übertragen Ihrer eigenen durch HSM geschützten Schlüssel für die Nutzung mit verwaltetem HSM.

Hinweis

Diese Funktionalität ist für Microsoft Azure des Betreibers 21Vianet nicht verfügbar. Diese Importmethode ist nur für unterstützte HSMs verfügbar.

Weitere Informationen und ein Tutorial zu den ersten Schritten mit verwaltetem HSM finden Sie unter Was ist verwaltetes HSM?.

Übersicht

Im Folgenden finden Sie eine Übersicht über den Prozess. Einige der Schritte, die Sie ausführen müssen, werden weiter unten in diesem Artikel beschrieben.

  • Generieren Sie in verwaltetem HSM einen Schlüssel (als Schlüsselaustauschschlüssel (Key Exchange Key, KEK) bezeichnet). Der KEK muss ein RSA-HSM-Schlüssel sein, der nur den Schlüsselvorgang import umfasst.
  • Laden Sie den öffentlichen Schlüssel des KEK als PEM-Datei herunter.
  • Übertragen Sie den öffentlichen Schlüssel des KEK auf einen Offlinecomputer, der mit einem lokalen HSM verbunden ist.
  • Verwenden Sie auf dem Offlinecomputer das von Ihrem HSM-Anbieter bereitgestellte BYOK-Tool, um eine BYOK-Datei zu erstellen.
  • Der Zielschlüssel wird mit einem KEK verschlüsselt. Die Verschlüsselung bleibt bis zur Übertragung an das verwaltete HSM bestehen. Nur die verschlüsselte Version Ihres Schlüssels verlässt das lokale HSM.
  • Ein KEK, der innerhalb eines verwalteten HSM generiert wurde, kann nicht exportiert werden. HSMs erzwingen die Regel, dass keine unverschlüsselte Version eines KEK außerhalb eines verwalteten HSMs vorhanden sein darf.
  • Der KEK muss sich in demselben verwalteten HSM befinden, in das der Zielschlüssel importiert werden soll.
  • Wenn die BYOK-Datei in das verwaltete HSM hochgeladen wird, verwendet ein verwaltetes HSM den privaten Schlüssel des KEK, um das Zielschlüsselmaterial zu entschlüsseln und als HSM-Schlüssel zu importieren. Dieser Vorgang erfolgt vollständig innerhalb des HSM. Der Zielschlüssel verbleibt stets in den Schutzgrenzen des HSM.

Voraussetzungen

Für die Verwendung der Azure CLI-Befehle in diesem Artikel benötigen Sie Folgendes:

Azure Cloud Shell

Azure hostet Azure Cloud Shell, eine interaktive Shell-Umgebung, die Sie über Ihren Browser nutzen können. Sie können entweder Bash oder PowerShell mit Cloud Shell verwenden, um mit Azure-Diensten zu arbeiten. Sie können die vorinstallierten Befehle von Cloud Shell verwenden, um den Code in diesem Artikel auszuführen, ohne etwas in Ihrer lokalen Umgebung installieren zu müssen.

Starten von Azure Cloud Shell:

Option Beispiel/Link
Wählen Sie rechts oben in einem Code- oder Befehlsblock die Option Ausprobieren aus. Durch die Auswahl von Ausprobieren wird der Code oder Befehl nicht automatisch in Cloud Shell kopiert. Screenshot: Beispiel von „Jetzt testen“ für Azure Cloud Shell.
Rufen Sie https://shell.azure.com auf, oder klicken Sie auf die Schaltfläche Cloud Shell starten, um Cloud Shell im Browser zu öffnen. Schaltfläche zum Starten von Azure Cloud Shell.
Wählen Sie im Azure-Portal rechts oben im Menü die Schaltfläche Cloud Shell aus. Screenshot: Schaltfläche „Cloud Shell“ im Azure-Portal

So verwenden Sie Azure Cloud Shell:

  1. Starten Sie Cloud Shell.

  2. Wählen Sie die Schaltfläche Kopieren für einen Codeblock (oder Befehlsblock) aus, um den Code oder Befehl zu kopieren.

  3. Fügen Sie den Code oder Befehl mit STRG+UMSCHALT+V unter Windows und Linux oder CMD+UMSCHALT+V unter macOS in die Cloud Shell-Sitzung ein.

  4. Drücken Sie die EINGABETASTE, um den Code oder Befehl auszuführen.

Geben Sie zur Anmeldung bei Azure über die CLI Folgendes ein:

az login

Weitere Informationen zu den Anmeldeoptionen über die CLI finden Sie unter Anmelden mit der Azure CLI.

Unterstützte HSMs

Herstellername Herstellertyp Unterstützte HSM-Modelle Weitere Informationen
Cryptomathic ISV (Enterprise Key Management System) Mehrere HSM-Marken und -Modelle, einschließlich
  • nCipher
  • Thales
  • Utimaco
Weitere Informationen finden Sie auf der Cryptomathic-Website.
Entrust Hersteller,
HSM als Dienst
  • HSM-Produktfamilie „nShield“
  • nShield als Dienst
nCipher – Neues BYOK-Tool und -Dokumentation
Fortanix Hersteller,
HSM als Dienst
  • Self-Defending Key Management Service (SDKMS, selbstverteidigender Schlüsselverwaltungsdienst)
  • Equinix SmartKey
Exportieren von SDKMS-Schlüsseln nach Cloudanbietern für BYOK – Azure Key Vault
IBM Hersteller IBM 476x, CryptoExpress IBM Enterprise Key Management Foundation
Marvell Hersteller Alle Liquid Security-HSMs mit
  • Firmwareversion 2.0.4 oder höher
  • Firmwareversion 3.2 oder höher
Marvell – BYOK-Tool und -Dokumentation
Securosys SA Hersteller, HSM-as-a-Service Primus-HSM-Familie, Securosys Clouds HSM Primus – BYOK-Tool und -Dokumentation
StorMagic ISV (Enterprise Key Management System) Mehrere HSM-Marken und -Modelle, einschließlich
  • Utimaco
  • Thales
  • nCipher
Weitere Informationen finden Sie auf der StorMagic-Website.
SvKMS und Azure Key Vault BYOK
Thales Hersteller
  • Produktfamilie „Luna HSM 7“ mit Firmwareversion 7.3 oder neuer
Luna – BYOK-Tool und -Dokumentation
Utimaco Hersteller,
HSM als Dienst
u.trust Anchor, CryptoServer Utimaco-BYOK-Tool und Integrationshandbuch

Unterstützte Schlüsseltypen

Schlüsselname Schlüsseltyp Schlüsselgröße/Kurve Origin BESCHREIBUNG
Schlüsselaustauschschlüssel (Key Exchange Key, KEK) RSA-HSM 2\.048 Bit
3\.072 Bit
4\.096 Bit
Verwaltetes HSM Dies ist ein durch HSM gestütztes RSA-Schlüsselpaar, das im verwalteten HSM generiert wurde.
Zielschlüssel
RSA-HSM 2\.048 Bit
3\.072 Bit
4\.096 Bit
Anbieter-HSM Der an das verwaltete HSM zu übertragende Schlüssel
EC-HSM P-256
P-384
P-521
Anbieter-HSM Der an das verwaltete HSM zu übertragende Schlüssel
Symmetrischer Schlüssel (oct-hsm) 128 Bit
192 Bit
256 Bit
Anbieter-HSM Der an das verwaltete HSM zu übertragende Schlüssel

Generieren und Übertragen des Schlüssels an das verwaltete HSM

Schritt 1: Generieren eines KEK

Ein KEK ist ein RSA-Schlüssel, der in einem verwalteten HSM generiert wird. Der KEK wird zum Verschlüsseln des Schlüssels verwendet, den Sie importieren möchten (Zielschlüssel).

Für den KEK gilt Folgendes:

  • Es muss sich um einen RSA-HSM-Schlüssel handeln (2.048 Bit, 3.072 Bit oder 4.096 Bit).
  • Er muss im selben verwalteten HSM generiert werden, in das Sie den Zielschlüssel importieren möchten.
  • Die zulässigen Schlüsselvorgänge müssen auf import festgelegt sein.

Hinweis

Der KEK muss als einzigen zulässigen Schlüsselvorgang „import“ aufweisen. „import“ schließt sich mit allen anderen wichtigen Vorgängen gegenseitig aus.

Verwenden Sie den Befehl az keyvault key create, um den KEK mit auf import festgelegten Schlüsselvorgängen zu erstellen. Notieren Sie die Schlüssel-ID (kid), die vom folgenden Befehl zurückgegeben wird. (Sie verwenden den kid-Wert in Schritt 3.)

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

Schritt 2: Herunterladen des öffentlichen Schlüssels des KEK

Verwenden Sie den Befehl az keyvault key download, um den öffentlichen Schlüssel des KEK in eine PEM-Datei herunterzuladen. Der importierte Zielschlüssel ist mit dem öffentlichen Schlüssel des KEK verschlüsselt.

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

Übertragen Sie die Datei „KEKforBYOK.publickey.pem“ an Ihren Offlinecomputer. Sie benötigen diese Datei im nächsten Schritt.

Schritt 3: Generieren des Schlüssels und Vorbereiten für die Übertragung

Informieren Sie sich in der Dokumentation Ihres HSM-Anbieters darüber, wie Sie das BYOK-Tool herunterladen und installieren. Befolgen Sie die Anweisungen des HSM-Anbieters, um einen Zielschlüssel zu generieren und dann eine Schlüsselübertragungsdatei (BYOK-Datei) zu erstellen. Das BYOK-Tool verwendet den kid aus Schritt 1 und die Datei „KEKforBYOK.publickey.pem“, die Sie in Schritt 2 heruntergeladen haben, um einen verschlüsselten Zielschlüssel in einer BYOK-Datei zu generieren.

Übertragen Sie die BYOK-Datei an Ihren verbundenen Computer.

Hinweis

Das Importieren von RSA-Schlüsseln mit 1.024 Bit wird nicht unterstützt. Der Import von EC-HSM P256K-Schlüsseln wird unterstützt.

Bekanntes Problem: Das Importieren eines RSA 4K-Zielschlüssels von Luna HSMs wird nur mit Firmware 7.4.0 oder höher unterstützt.

Schritt 4: Übertragen Ihres Schlüssels an das verwaltete HSM

Um den Schlüsselimport abzuschließen, übertragen Sie das Schlüsselübertragungspaket (BYOK-Datei) von Ihrem nicht verbundenen Computer an den mit dem Internet verbundenen Computer. Verwenden Sie den Befehl az keyvault key import, um die BYOK-Datei in das verwaltete HSM hochzuladen.

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

Wenn der Upload erfolgreich ist, werden die Eigenschaften des importierten Schlüssels in der Azure-Befehlszeilenschnittstelle angezeigt.

Nächste Schritte

Sie können diesen HSM-geschützten Schlüssel jetzt in Ihrem verwalteten HSM verwenden. Weitere Informationen finden Sie in dieser Gegenüberstellung von Preisen und Funktionen.