Unterstützte Mechanismen für AWS CloudHSM Client SDK 3 - 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.

Unterstützte Mechanismen für AWS CloudHSM Client SDK 3

Die PKCS #11 -Bibliothek unterstützt die folgenden Algorithmen für AWS CloudHSM Client SDK 3:

  • Verschlüsselung und Entschlüsselung — AES -CBC, AES -CTR, AES -ECB, AES -GCM, DES3 -CBC, DES3 -ECB, RSA -OAEP, und RSA - PKCS

  • Signieren und verifizieren —RSA,HMAC, undECDSA; mit und ohne Hashing

  • Hash/Digest —SHA1,,, und SHA224 SHA256 SHA384 SHA512

  • Schlüsselumbruch — AES Schlüsselumbruch, 4AES-GCM, - und RSA - AES RSA OAEP

  • Ableitung von Schlüsseln —ECDH, 00-108 5SP8CTRKDF

Die Funktionstabelle des PKCS Bibliotheksmechanismus von #11

Die PKCS #11 -Bibliothek entspricht Version 2.40 der PKCS #11 -Spezifikation. Um eine kryptografische Funktion mit PKCS #11 aufzurufen, rufen Sie eine Funktion mit einem bestimmten Mechanismus auf. Die folgende Tabelle fasst die Kombinationen von Funktionen und Mechanismen zusammen, die von AWS CloudHSM unterstützt werden.

Interpretation der unterstützten PKCS #11 -Mechanismus-Funktionstabelle

Ein ✔ -Zeichen bedeutet, dass der Mechanismus für die Funktion AWS CloudHSM unterstützt wird. Wir unterstützen nicht alle möglichen Funktionen, die in der PKCS #11 -Spezifikation aufgeführt sind. Ein ✖ -Zeichen weist darauf hin, dass AWS CloudHSM der Mechanismus für die angegebene Funktion noch nicht unterstützt wird, obwohl der PKCS #11 -Standard dies zulässt. Leere Zellen bedeuten, dass der Standard PKCS #11 den Mechanismus für die angegebene Funktion nicht unterstützt.

Unterstützte Mechanismen und Funktionen der PKCS #11 -Bibliothek

Mechanismus

Funktionen

 

Schlüssel generieren oder Schlüsselpaar

Signieren und prüfen

SR und VR

Digest

Verschlüsseln/Entschlüsseln

Schlüssel ableiten

Wickeln und UnWrap

CKM_RSA_PKCS_KEY_PAIR_GEN

 

 

 

 

 

 

CKM_RSA_X9_31_KEY_PAIR_GEN

2

 

 

 

 

 

 

CKM_RSA_X_509

 

 

 

 

 

CKM_RSA_PKCSsiehe Hinweis 8

  1   1

 

1

CKM_RSA_PKCS_OAEP

 

 

 

 

1

 

6

CKM_SHA1_RSA_PKCS

 

3.2

 

 

 

 

 

CKM_SHA224_RSA_PKCS

 

3.2

 

 

 

 

 

CKM_SHA256_RSA_PKCS

 

3.2

 

 

 

 

 

CKM_SHA384_RSA_PKCS

 

2,3.2

 

 

 

 

 

CKM_SHA512_RSA_PKCS

 

3.2

 

 

 

 

 

CKM_RSA_PKCS_PSS

 

1

 

 

 

 

 

CKM_SHA1_RSA_PKCS_PSS

 

3.2

 

 

 

 

 

CKM_SHA224_RSA_PKCS_PSS

 

3.2

 

 

 

 

 

CKM_SHA256_RSA_PKCS_PSS

 

3.2

 

 

 

 

 

CKM_SHA384_RSA_PKCS_PSS

 

2,3.2

 

 

 

 

 

CKM_SHA512_RSA_PKCS_PSS

 

3.2

 

 

 

 

 

CKM_EC_KEY_PAIR_GEN

 

 

 

 

 

 

CKM_ECDSA

 

1

 

 

 

 

 

CKM_ECDSA_SHA1

 

3.2

 

 

 

 

 

CKM_ECDSA_SHA224

 

3.2

 

 

 

 

 

CKM_ECDSA_SHA256

 

3.2

 

 

 

 

 

CKM_ECDSA_SHA384

 

3.2

 

 

 

 

 

CKM_ECDSA_SHA512

 

3.2

 

 

 

 

 

CKM_ECDH1_DERIVE

 

 

 

 

 

5

 

CKM_SP800_108_COUNTER_KDF

 

 

 

 

 

 

CKM_GENERIC_SECRET_KEY_GEN

 

 

 

 

 

 

CKM_AES_KEY_GEN

 

 

 

 

 

 

CKM_AES_ECB

 

 

 

 

 

CKM_AES_CTR

 

 

 

 

 

CKM_AES_CBC

 

 

 

 

3.3

 

CKM_AES_CBC_PAD

 

 

 

 

 

CKM_DES3_KEY_GEN siehe Hinweis 8

 

 

 

 

 

 

CKM_DES3_CBC siehe Hinweis 8

 

 

 

 

3.3

 

CKM_DES3_CBC_PAD siehe Hinweis 8

 

 

 

 

 

CKM_DES3_ECB siehe Hinweis 8

 

 

 

 

 

CKM_AES_GCM

 

 

 

 

3.3, 4

 

7.1

CKM_CLOUDHSM_AES_GCM

 

 

 

 

7.1

 

7.1

CKM_SHA_1

 

 

 

3.1

 

 

 

CKM_SHA_1_HMAC

 

3.3

 

 

 

 

 

CKM_SHA224

 

 

 

3.1

 

 

 

CKM_SHA224_HMAC

 

3.3

 

 

 

 

 

CKM_SHA256

 

 

 

3.1

 

 

 

CKM_SHA256_HMAC

 

3.3

 

 

 

 

 

CKM_SHA384

 

 

 

3.1

 

 

 

CKM_SHA384_HMAC

 

3.3

 

 

 

 

 

CKM_SHA512

 

 

 

3.1

 

 

 

CKM_SHA512_HMAC

 

3.3

 

 

 

 

 

CKM_RSA_AES_KEY_WRAP

 

 

 

 

 

 

CKM_AES_KEY_WRAP

 

 

 

 

 

 

CKM_AES_KEY_WRAP_PAD

 

 

 

 

 

 

CKM_CLOUDHSM_AES_KEY_WRAP_NO_PAD

 

 

 

 

 

 

7.1

CKM_CLOUDHSM_AES_KEY_WRAP_PKCS5_PAD

 

 

 

 

 

 

7.1

CKM_CLOUDHSM_AES_KEY_WRAP_ZERO_PAD

 

 

 

 

 

 

7.1

Anmerkungen zum Mechanismus

  • [1] Nur Single-Part-Operationen.

  • [2] Der Mechanismus ist funktionell identisch mit dem CKM_RSA_PKCS_KEY_PAIR_GEN-Mechanismus, bietet aber stärkere Garantien für die p- und q-Generierung.

  • [3.1] AWS CloudHSM geht je nach Client SDK unterschiedlich an das Hashing heran. Bei Kunde SDK 3 hängt der Ort, an dem wir das Hashing durchführen, von der Datengröße ab und davon, ob Sie einteilige oder mehrteilige Operationen verwenden.

    Einteilige Operationen in Client 3 SDK

    In Tabelle 3.1 ist die maximale Datensatzgröße für jeden Mechanismus für Client SDK 3 aufgeführt. Der gesamte Hash wird innerhalb von berechnet. HSM Keine Unterstützung für Datengrößen über 16 KB.

    Tabelle 3.1, Maximale Datensatzgröße für einteilige Operationen
    Mechanismus Maximale Datengröße
    CKM_SHA_1 16296
    CKM_SHA224 16264
    CKM_SHA256 16296
    CKM_SHA384 16232
    CKM_SHA512 16232

    Mehrteilige Operationen Client 3 SDK

    Support für Datengrößen über 16 KB, aber die Datengröße bestimmt, wo das Hashing stattfindet. Datenpuffer mit weniger als 16 KB werden innerhalb von gehasht. HSM Puffer zwischen 16 KB und der maximalen Datengröße für Ihr System werden lokal in der Software gehasht. Denken Sie daran: Hash-Funktionen benötigen keine kryptografischen Geheimnisse, sodass Sie sie sicher außerhalb von berechnen können. HSM

  • [3.2] AWS CloudHSM geht je nach Client unterschiedlich an das Hashing heran. SDK Bei Client SDK 3 hängt der Ort, an dem wir das Hashing durchführen, von der Datengröße ab und davon, ob Sie einteilige oder mehrteilige Operationen verwenden.

    Einteilige Operationen (Client 3) SDK

    In Tabelle 3.2 ist die maximale Datensatzgröße für jeden Mechanismus für Client SDK 3 aufgeführt. Keine Unterstützung für Datengrößen über 16 KB.

    Tabelle 3.2, Maximale Datensatzgröße für einteilige Operationen
    Mechanismus Maximale Datengröße
    CKM_SHA1_RSA_PKCS 16296
    CKM_SHA224_RSA_PKCS 16264
    CKM_SHA256_RSA_PKCS 16296
    CKM_SHA384_RSA_PKCS 16232
    CKM_SHA512_RSA_PKCS 16232
    CKM_SHA1_RSA_PKCS_PSS 16296
    CKM_SHA224_RSA_PKCS_PSS 16264
    CKM_SHA256_RSA_PKCS_PSS 16296
    CKM_SHA384_RSA_PKCS_PSS 16232
    CKM_SHA512_RSA_PKCS_PSS 16232
    CKM_ECDSA_SHA1 16296
    CKM_ECDSA_SHA224 16264
    CKM_ECDSA_SHA256 16296
    CKM_ECDSA_SHA384 16232
    CKM_ECDSA_SHA512 16232

    Mehrteilige Operationen (Client SDK 3).

    Support für Datengrößen über 16 KB, aber die Datengröße bestimmt, wo das Hashing stattfindet. Datenpuffer mit weniger als 16 KB werden innerhalb von gehasht. HSM Puffer zwischen 16 KB und der maximalen Datengröße für Ihr System werden lokal in der Software gehasht. Denken Sie daran: Hash-Funktionen benötigen keine kryptografischen Geheimnisse, sodass Sie sie sicher außerhalb von berechnen können. HSM

  • [3.3] Wenn der Datenpuffer die maximale Datengröße überschreitet, führt die Operation bei der Bearbeitung von Daten mittels eines der folgenden Mechanismen zu einem Fehler. Für diese Mechanismen muss die gesamte Datenverarbeitung innerhalb des HSM erfolgen. Die folgende Tabelle listet die maximale Datengröße für jeden Mechanismus auf:

    Tabelle 3.3, Maximale Datensatzgröße
    Mechanismus Maximale Datengröße
    CKM_SHA_1_HMAC 16288
    CKM_SHA224_HMAC 16256
    CKM_SHA256_HMAC 16288
    CKM_SHA384_HMAC 16224
    CKM_SHA512_HMAC 16224
    CKM_AES_CBC 16272
    CKM_AES_GCM 16224
    CKM_CLOUDHSM_AES_GCM 16224
    CKM_DES3_CBC 16280
  • [4] Bei der AES GCM Verschlüsselung akzeptiert der HSM keine Initialisierungsvektordaten (IV) von der Anwendung. Sie müssen einen erzeugten IV verwenden. Das von der bereitgestellte 12-Byte-IV HSM wird in die Speicherreferenz geschrieben, auf die das PiV-Element der von Ihnen angegebenen CK_GCM_PARAMS Parameterstruktur zeigt. Um Verwirrung bei den Benutzern zu vermeiden, stellt PKCS #11 SDK in Version 1.1.1 und höher sicher, dass pIV auf einen Puffer zeigt, der Null gesetzt wurde, wenn die Verschlüsselung initialisiert wirdAES. GCM

  • [5] Nur Client 3. SDK Der Mechanismus dient der Unterstützung und SSL TLS Auslagerung von Fällen und wird nur teilweise innerhalb von ausgeführt. HSM Bevor Sie diesen Mechanismus verwenden, lesen Sie bitte den Abschnitt „Problem: Die ECDH Schlüsselableitung wird nur teilweise innerhalb vonHSM" ausgeführt. Bekannte Probleme in der PKCS #11 -Bibliothek für AWS CloudHSM CKM_ECDH1_DERIVEunterstützt die secp521r1 (P-521) -Kurve nicht.

  • [6] Die folgenden CK_MECHANISM_TYPE und CK_RSA_PKCS_MGF_TYPE werden als CK_RSA_PKCS_OAEP_PARAMS für CKM_RSA_PKCS_OAEP unterstützt:

    • CKM_SHA_1 mit CKG_MGF1_SHA1

    • CKM_SHA224 mit CKG_MGF1_SHA224

    • CKM_SHA256 mit CKG_MGF1_SHA256

    • CKM_SHA384 mit CKM_MGF1_SHA384

    • CKM_SHA512 mit CKM_MGF1_SHA512

  • [7.1] Vom Anbieter definierter Mechanismus. Um die vom HSM Cloud-Anbieter definierten Mechanismen verwenden zu können, müssen #11 -Anwendungen bei der Kompilierung berücksichtigt werden. PKCS /opt/cloudhsm/include/pkcs11t.h

    CKM_CLOUDHSM_AES_GCM: Dieser proprietäre Mechanismus ist eine programmatisch sicherere Alternative zum Standard CKM_AES_GCM. Es stellt die von der generierte IV dem Chiffretext voran, anstatt sie wieder in die CK_GCM_PARAMS Struktur HSM zu schreiben, die bei der Chiffrierinitialisierung bereitgestellt wird. Sie können diesen Mechanismus mit C_Encrypt-, C_WrapKey-, C_Decrypt- und C_UnwrapKey-Funktionen verwenden. Bei Verwendung dieses Mechanismus muss die pIV-Variable in der CK_GCM_PARAMS-Struktur auf NULL gesetzt werden. Wenn Sie diesen Mechanismus mit C_Decrypt und C_UnwrapKey verwenden, wird erwartet, dass der IV dem Verschlüsselungstext vorangestellt wird, der entpackt werden soll.

    CKM_CLOUDHSM_AES_KEY_WRAP_PKCS5_PADAES: Tastenumbruch mit #5 -Padding PKCS

    CKM_CLOUDHSM_AES_KEY_WRAP_ZERO_PAD: AES Schlüsselumschlag ohne Polsterung

    Weitere Informationen zur AES Schlüsselumhüllung finden Sie unter AESSchlüsselumhüllung.

  • [8] Gemäß den NIST Leitlinien ist dies für Cluster, die sich nach 2023 im FIPS Modus befinden, nicht zulässig. Für Cluster, die sich nicht im FIPS Modus befinden, ist dies auch nach 2023 zulässig. Details dazu finden Sie unter FIPS140-Konformität: Der Mechanismus wird 2024 nicht mehr unterstützt.