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 die PKCS #11 -Bibliothek für AWS CloudHSM Client-SDK 5
Die PKCS #11-Bibliothek entspricht Version 2.40 der PKCS #11-Spezifikation. Um eine kryptographische Funktion mit PKCS#11 aufzurufen, rufen Sie eine Funktion mit einem bestimmten Mechanismus auf. In den folgenden Abschnitten werden die Kombinationen von Funktionen und Mechanismen zusammengefasst, die vom AWS CloudHSM Client SDK 5 unterstützt werden.
Die PKCS #11-Bibliothek unterstützt die folgenden Algorithmen:
-
Verschlüsselung und Entschlüsselung — AES-CBC, AES-CTR, AES-ECB, AES-GCM, DES3-CBC DES3-ECB, und RSA-OAEP RSA-PKCS
-
Signieren und verifizieren — RSA, HMAC, ECDSA (mit und ohne Hashing), edDSA (Ed25519 und ED25519Ph) und (mit reinem und externem Mu-Modus) ML-DSA
-
Hash/digest— SHA1, SHA224, SHA256, SHA384 und SHA512
-
Schlüsselumschlag — AES Key Wrap,, und 1 AES-GCM RSA-AES RSA-OAEP
-
Schlüsselableitung — SP800-108 Counter KDF und ECDH mit KDF (Unterstützte KDF-Algorithmen sind X9.63 mit SHA1, SHA224, SHA256, SHA384, SHA512)
Schlüssel- und Schlüsselpaarfunktionen generieren
Die AWS CloudHSM Softwarebibliothek für die PKCS #11 -Bibliothek ermöglicht es Ihnen, die folgenden Mechanismen für die Funktionen „Schlüssel generieren“ und „Schlüsselpaar“ zu verwenden.
-
CKM_RSA_PKCS_KEY_PAIR_GEN -
CKM_RSA_X9_31_KEY_PAIR_GEN– Dieser Mechanismus ist funktionell identisch mit demCKM_RSA_PKCS_KEY_PAIR_GEN-Mechanismus, aber bietet stärkere Garantien für die Generierung vonpundq. -
CKM_EC_KEY_PAIR_GEN -
CKM_CLOUDHSM_ML_DSA_KEY_PAIR_GEN3 -
CKM_GENERIC_SECRET_KEY_GEN -
CKM_AES_KEY_GEN -
CKM_DES3_KEY_GEN– bevorstehende Änderung in der Fußnote 5 aufgeführt.
Funktionen zum Signieren und Überprüfen
Die AWS CloudHSM Softwarebibliothek für die PKCS #11 -Bibliothek ermöglicht es Ihnen, die folgenden Mechanismen für Sign- und Verify-Funktionen zu verwenden. Mit Client-SDK 5 werden die Daten lokal in der Software gehasht. Das bedeutet, dass die Größe der Daten, die vom SDK gehasht werden können, unbegrenzt ist.
Mit Client-SDK 5 erfolgt das RSA- und ECDSA-Hashing lokal, sodass es kein Datenlimit gibt. Bei HMAC und PureEd DSA (Ed25519) gibt es ein Datenlimit. Weitere Informationen finden Sie in der Fußnote 2.
RSA
CKM_RSA_X_509CKM_RSA_PKCS– Nur Single-Part-Operationen.CKM_RSA_PKCS_PSS– Nur Single-Part-Operationen.CKM_SHA1_RSA_PKCSCKM_SHA224_RSA_PKCSCKM_SHA256_RSA_PKCSCKM_SHA384_RSA_PKCSCKM_SHA512_RSA_PKCSCKM_SHA512_RSA_PKCSCKM_SHA1_RSA_PKCS_PSSCKM_SHA224_RSA_PKCS_PSSCKM_SHA256_RSA_PKCS_PSSCKM_SHA384_RSA_PKCS_PSSCKM_SHA512_RSA_PKCS_PSS
ECDSA
CKM_ECDSA– Nur Single-Part-Operationen.CKM_ECDSA_SHA1CKM_ECDSA_SHA224CKM_ECDSA_SHA256CKM_ECDSA_SHA384CKM_ECDSA_SHA512
ML-DSA
edDSA
CMAC
CKM_AES_CMAC
Funktionen zur Signierung, Wiederherstellung und Überprüfung der Wiederherstellung
Das Client-SDK 5 unterstützt die Funktionen Sign Recover und Verify Recover nicht.
Digest-Funktionen
Die AWS CloudHSM Softwarebibliothek für die PKCS #11 -Bibliothek ermöglicht es Ihnen, die folgenden Mechanismen für Digest-Funktionen zu verwenden. Mit Client-SDK 5 werden die Daten lokal in der Software gehasht. Das bedeutet, dass die Größe der Daten, die vom SDK gehasht werden können, unbegrenzt ist.
-
CKM_SHA_1 -
CKM_SHA224 -
CKM_SHA256 -
CKM_SHA384 -
CKM_SHA512
Funktionen zum Verschlüsseln und Entschlüsseln
Die AWS CloudHSM Softwarebibliothek für die PKCS #11 -Bibliothek ermöglicht es Ihnen, die folgenden Mechanismen für Verschlüsselungs- und Entschlüsselungsfunktionen zu verwenden.
-
CKM_RSA_X_509 -
CKM_RSA_PKCS– Nur Single-Part-Operationen. Bevorstehende Änderung in der Fußnote 5 aufgeführt. -
CKM_RSA_PKCS_OAEP– Nur Single-Part-Operationen. -
CKM_AES_ECB -
CKM_AES_CTR -
CKM_AES_CBC -
CKM_AES_CBC_PAD -
CKM_DES3_CBC– bevorstehende Änderung in der Fußnote 5 aufgeführt. -
CKM_DES3_ECB– bevorstehende Änderung in der Fußnote 5 aufgeführt. -
CKM_DES3_CBC_PAD– bevorstehende Änderung in der Fußnote 5 aufgeführt. CKM_CLOUDHSM_AES_GCM3
Schlüsselfunktionen ableiten
Die AWS CloudHSM Softwarebibliothek für die PKCS #11 -Bibliothek unterstützt die folgenden Schlüsselableitungsmechanismen:
-
CKM_SP800_108_COUNTER_KDF -
CKM_ECDH1_DERIVE- Unterstützt die ECDH-Schlüsselableitung mit den folgenden herstellerdefinierten KDF-Typen: 6
Funktionen „Packen“ und „Entpacken“
Die AWS CloudHSM Softwarebibliothek für die PKCS #11 -Bibliothek ermöglicht es Ihnen, die folgenden Mechanismen für Wrap- und Unwrap-Funktionen zu verwenden.
Weitere Informationen zum AES-Packen mit Schlüssel finden Sie unter AES Key Wrapping.
Maximale Datengröße für jeden Mechanismus
Die folgende Tabelle listet die maximale Datengröße für jeden Mechanismus auf:.
| Mechanismus | Maximale Datengröße in Bytes |
|---|---|
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 |
CKM_CLOUDHSM_EDDSA(PureEdDSA, NULL-Parameter) |
16000 |
Anmerkungen zum Mechanismus
[1] Bei der AES-GCM Verschlüsselung akzeptiert das HSM keine Initialisierungsvektordaten (IV) von der Anwendung. Sie müssen einen erzeugten IV verwenden. Das vom HSM bereitgestellte 12 Byte IV wird in den referenzierten Speicherbereich geschrieben, auf den das pIV-Element der von Ihnen bereitgestellten
CK_GCM_PARAMS-Parameterstruktur zeigt. Um Verwirrung bei den Benutzern zu vermeiden, stellt das PKCS #11 SDK in Version 1.1.1 und höher sicher, dass PiV bei der Initialisierung der Verschlüsselung auf einen auf Null gesetzten Puffer zeigt. AES-GCM[2] 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. Informationen zur maximalen Datensatzgröße für jeden Mechanismus finden Sie unter. Maximale Datengröße für jeden Mechanismus
-
[3] Vendor-defined Mechanismus. Um die von anbieterdefinierten CloudHSM-Mechanismen zu verwenden, müssen PKCS #11 -Anwendungen während der Kompilierung
/opt/cloudhsm/include/pkcs11/pkcs11t.henthalten.CKM_CLOUDHSM_AES_GCM: Dieser proprietäre Mechanismus ist eine programmatisch sicherere Alternative zum StandardCKM_AES_GCM. Er stellt die vom HSM generierte IV dem Chiffretext voran, anstatt sie zurück in dieCK_GCM_PARAMS- Struktur zu schreiben, die während der Chiffrierinitialisierung bereitgestellt wird. Sie können diesen Mechanismus mitC_Encrypt-,C_WrapKey-,C_Decrypt- undC_UnwrapKey-Funktionen verwenden. Bei Verwendung dieses Mechanismus muss die pIV-Variable in derCK_GCM_PARAMS-Struktur aufNULLgesetzt werden. Wenn Sie diesen Mechanismus mitC_DecryptundC_UnwrapKeyverwenden, wird erwartet, dass der IV dem Verschlüsselungstext vorangestellt wird, der entpackt werden soll.CKM_CLOUDHSM_AES_KEY_WRAP_PKCS5_PAD: AES-Verschlüsselung mit PKCS #5 Padding.CKM_CLOUDHSM_AES_KEY_WRAP_ZERO_PAD: AES-Verschlüsselung mit Zero Padding.CKM_CLOUDHSM_ML_DSA_KEY_PAIR_GEN: Generiert ein ML-DSA Schlüsselpaar. Verwenden Sie dasCKA_CLOUDHSM_PARAMETER_SETAttribut (typeCK_CLOUDHSM_ML_DSA_PARAMETER_SET_TYPE), um den Parametersatz anzugeben. Zulässige Werte:CKP_CLOUDHSM_ML_DSA_44,CKP_CLOUDHSM_ML_DSA_65,CKP_CLOUDHSM_ML_DSA_87.CKM_CLOUDHSM_ML_DSA: Einfach ML-DSA signieren und verifizieren. Signiert oder verifiziert Rohdaten mithilfe eines ML-DSA Schlüsselpaars.CKM_CLOUDHSM_EXT_MU_ML_DSA: ML-DSA Signieren und verifizieren Sie mit einer externen MU. Signiert oder verifiziert Daten, die zu einem externen mu-Wert vorverarbeitet wurden.CKM_CLOUDHSM_EDDSA: edDSA-Signaturmechanismus. Mit NULL-Parametern: PureEd DSA (Ed25519), nur einteilig, maximal 16.000 Byte. MitCK_EDDSA_PARAMS(phFlag = CK_TRUE,ulContextDataLen = 0): ed25519Ph, einteilig und mehrteilig, keine Größenbeschränkung. DieCK_EDDSA_PARAMSStruktur folgt der PKCS #11 v3.0-Spezifikation. [4] Die folgenden
CK_MECHANISM_TYPEundCK_RSA_PKCS_MGF_TYPEwerden alsCK_RSA_PKCS_OAEP_PARAMSfürCKM_RSA_PKCS_OAEPunterstützt:-
CKM_SHA_1mitCKG_MGF1_SHA1 -
CKM_SHA224mitCKG_MGF1_SHA224 -
CKM_SHA256mitCKG_MGF1_SHA256 -
CKM_SHA384mitCKM_MGF1_SHA384 -
CKM_SHA512mitCKM_MGF1_SHA512
-
[5] Gemäß den NIST-Richtlinien ist dies für Cluster im FIPS-Modus nach 2023 nicht zulässig. Für Cluster im Nicht-FIPS-Modus ist dies auch nach 2023 noch zulässig. Details dazu finden Sie unter FIPS-140-Konformität: Mechanismus 2024 nicht mehr unterstützt.
[6] Vom Hersteller definierte Typen. Um vom Anbieter definierte CloudHSM-Typen verwenden zu können, müssen PKCS #11 -Anwendungen bei der Kompilierung einbezogen
cloudhsm_pkcs11_vendor_defs.hwerden. Dies ist/opt/cloudhsm/include/pkcs11/cloudhsm_pkcs11_vendor_defs.hfür Linux-basierte Plattformen undC:\Program Files\Amazon\CloudHSM\include\pkcs11\cloudhsm_pkcs11_vendor_defs.hfür Windows-basierte Plattformen zu finden[7] Wird nur auf hsm2m.medium-Instances im Nicht-FIPS-Modus unterstützt.
[8] Die wichtigsten Ableitungsfunktionen (KDFs) sind in der NIST-Sonderveröffentlichung 800-56A Revision 3 spezifiziert. https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-56Ar3.pdf