Benutzerdefiniert IVs mit nicht konformer Länge für den AES Schlüsselumbruch AWS CloudHSM - AWS CloudHSM

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Benutzerdefiniert IVs mit nicht konformer Länge für den AES Schlüsselumbruch AWS CloudHSM

Mithilfe dieses Themas zur Problembehandlung können Sie feststellen, ob Ihre Anwendung unwiederbringliche verpackte Schlüssel generiert. Wenn Sie von diesem Problem betroffen sind, verwenden Sie dieses Thema, um das Problem zu lösen.

Stellen Sie fest, ob Ihr Code unwiederbringliche verpackte Schlüssel generiert

Sie sind nur betroffen, wenn Sie alle folgenden Bedingungen erfüllen:

Bedingung Woher soll ich das wissen?

Ihre Anwendung verwendet die Bibliothek PKCS #11

Die PKCS #11 -Bibliothek wird als libpkcs11.so Datei in Ihrem /opt/cloudhsm/lib Ordner installiert. In der Sprache C geschriebene Anwendungen verwenden im Allgemeinen direkt die PKCS #11 -Bibliothek, während in Java geschriebene Anwendungen die Bibliothek möglicherweise indirekt über eine Java-Abstraktionsschicht verwenden. Wenn Sie Windows verwenden, sind Sie NOT davon betroffen, da die PKCS #11 -Bibliothek derzeit nicht für Windows verfügbar ist.

Ihre Anwendung verwendet speziell Version 3.0.0 der #11 -Bibliothek PKCS

Wenn Sie eine E-Mail vom AWS CloudHSM Team erhalten haben, verwenden Sie wahrscheinlich Version 3.0.0 der PKCS #11 -Bibliothek.

Verwenden Sie diesen Befehl, um die Softwareversion auf Ihren Anwendungs-Instances zu überprüfen:

rpm -qa | grep ^cloudhsm

Sie umschließen Schlüssel mithilfe von AES Schlüsselumbruch

AESEin Schlüsselumbruch bedeutet, dass Sie einen AES Schlüssel verwenden, um einen anderen Schlüssel zu umschließen. Der Name des entsprechenden Mechanismus lautet CKM_AES_KEY_WRAP. Er wird zusammen mit der Funktion C_WrapKey verwendet. Andere AES basierte Umschließungsmechanismen, die Initialisierungsvektoren (IVs) verwenden, wie z. B. CKM_AES_GCM und CKM_CLOUDHSM_AES_GCM, sind von diesem Problem nicht betroffen. Erfahren Sie mehr über Funktionen und Mechanismen.

Sie geben eine benutzerdefinierte IV an, wenn Sie den AES Schlüsselumbruch aufrufen, und die Länge dieser IV ist kürzer als 8

AESDer Schlüsselumbruch wird im Allgemeinen mit einer CK_MECHANISM Struktur wie folgt initialisiert:

CK_MECHANISM mech = {CKM_AES_KEY_WRAP, IV_POINTER, IV_LENGTH};

Dieses Problem trifft auf Sie nur in folgenden Fällen zu:

  • IV_ POINTER ist nicht NULL

  • IV_ LENGTH ist weniger als 8 Byte

Wenn Sie nicht alle oben genannten Bedingungen erfüllen, können Sie jetzt mit dem Lesen aufhören. Ihre verpackten Schlüssel können ordnungsgemäß ausgepackt werden, und dieses Problem hat keine Auswirkungen auf Sie. Andernfalls lesen Sie unter Maßnahmen, die Sie ergreifen müssen, wenn Ihr Code unwiederbringliche verpackte Schlüssel generiert weiter.

Maßnahmen, die Sie ergreifen müssen, wenn Ihr Code unwiederbringliche verpackte Schlüssel generiert

Sie sollten die folgenden drei Schritte ausführen:

  1. Aktualisieren Sie Ihre PKCS #11 -Bibliothek sofort auf eine neuere Version

  2. Aktualisieren Sie Ihre Software, um eine standardkonforme IV zu verwenden

    Wir empfehlen Ihnen dringend, unserem Beispielcode zu folgen und einfach eine NULL IV anzugeben, wodurch die HSM standardkonforme Standard-IV verwendet wird. Alternativ können Sie die IV explizit als 0xA6A6A6A6A6A6A6A6 mit einer entsprechenden IV-Länge von 8 angeben. Wir empfehlen nicht, andere IV für den AES Schlüsselumbruch zu verwenden, und werden in einer future Version der PKCS #11 -Bibliothek den benutzerdefinierten IVs AES Schlüsselumbruch explizit deaktivieren.

    Der Beispielcode für die korrekte Angabe der IV erscheint in aes_wrapping.c unter. GitHub

  3. Identifizieren Sie vorhandene verpackte Schlüssel und stellen Sie sie wieder her

    Sie sollten alle Schlüssel identifizieren, die Sie mit Version 3.0.0 der PKCS #11 -Bibliothek verpackt haben, und sich dann an den Support wenden, um Unterstützung (https://aws.amazon.com/support) bei der Wiederherstellung dieser Schlüssel zu erhalten.

Wichtig

Dieses Problem betrifft nur Schlüssel, die in Version 3.0.0 der PKCS #11 -Bibliothek enthalten sind. Sie können Schlüssel mit früheren Versionen (2.0.4 und Pakete mit niedrigeren Nummern) oder späteren Versionen (3.0.1 und Pakete mit höheren Nummern) der #11 -Bibliothek umbrechen. PKCS