Mécanismes pris en charge pour la bibliothèque PKCS #11 pour AWS CloudHSM Client SDK 5 - AWS CloudHSM

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Mécanismes pris en charge pour la bibliothèque PKCS #11 pour AWS CloudHSM Client SDK 5

La bibliothèque PKCS #11 est conforme à la version 2.40 de la spécification PKCS #11. Pour invoquer une fonctionnalité cryptographique à l'aide de PKCS #11, appelez une fonction avec un mécanisme donné. Les sections suivantes résument les combinaisons de fonctions et de mécanismes pris en charge par AWS CloudHSM Client SDK 5.

La bibliothèque PKCS #11 prend en charge les algorithmes suivants :

  • Chiffrement et déchiffrement — AES AES - CBCCTR, AES -, -ECB, AES -GCM, DES3 -CBC, DES3 - ECBOAEP, RSA - et RSA - PKCS

  • Signer et vérifier — RSAHMAC, et ECDSA ; avec et sans hachage

  • Hash/digest —SHA1,, SHA224SHA256, et SHA384 SHA512

  • Emballage pour AES clés — Emballage pour clés 1GCM, AES RSA -AES, - et RSA - OAEP

Génération de fonctions de clé et de paire de clés

La bibliothèque AWS CloudHSM logicielle de la bibliothèque PKCS #11 vous permet d'utiliser les mécanismes suivants pour les fonctions Generate Key et Key Pair.

  • CKM_RSA_PKCS_KEY_PAIR_GEN

  • CKM_RSA_X9_31_KEY_PAIR_GEN – Le fonctionnement de ce mécanisme est identique au mécanisme CKM_RSA_PKCS_KEY_PAIR_GEN, mais offre de meilleures garanties pour la génération de p et q.

  • CKM_EC_KEY_PAIR_GEN

  • CKM_GENERIC_SECRET_KEY_GEN

  • CKM_AES_KEY_GEN

  • CKM_DES3_KEY_GEN— le changement à venir est indiqué dans la note de bas de page 5.

Fonctions de signature et de vérification

La bibliothèque AWS CloudHSM logicielle de la bibliothèque PKCS #11 vous permet d'utiliser les mécanismes suivants pour les fonctions de signature et de vérification. Avec le Client SDK 5, les données sont hachées localement dans le logiciel. Cela signifie qu'il n'y a aucune limite quant à la taille des données pouvant être hachées par leSDK.

Avec le Client SDK 5RSA, le ECDSA hachage est effectué localement, il n'y a donc pas de limite de données. AvecHMAC, il y a une limite de données. Pour plus d'informations, consultez la note de bas de page 2.

RSA

  • CKM_RSA_X_509

  • CKM_RSA_PKCS - Opérations à une seule partie uniquement.

  • CKM_RSA_PKCS_PSS - Opérations à une seule partie uniquement.

  • CKM_SHA1_RSA_PKCS

  • CKM_SHA224_RSA_PKCS

  • CKM_SHA256_RSA_PKCS

  • CKM_SHA384_RSA_PKCS

  • CKM_SHA512_RSA_PKCS

  • CKM_SHA512_RSA_PKCS

  • CKM_SHA1_RSA_PKCS_PSS

  • CKM_SHA224_RSA_PKCS_PSS

  • CKM_SHA256_RSA_PKCS_PSS

  • CKM_SHA384_RSA_PKCS_PSS

  • CKM_SHA512_RSA_PKCS_PSS

ECDSA

  • CKM_ECDSA - Opérations à une seule partie uniquement.

  • CKM_ECDSA_SHA1

  • CKM_ECDSA_SHA224

  • CKM_ECDSA_SHA256

  • CKM_ECDSA_SHA384

  • CKM_ECDSA_SHA512

HMAC

  • CKM_SHA_1_HMAC2

  • CKM_SHA224_HMAC2

  • CKM_SHA256_HMAC2

  • CKM_SHA384_HMAC2

  • CKM_SHA512_HMAC2

CMAC

  • CKM_AES_CMAC

Fonctions de récupération de signature et de récupération de vérification

Le client SDK 5 ne prend pas en charge les fonctions Sign Recover et Verify Recover.

Fonctions de résumé

La bibliothèque AWS CloudHSM logicielle de la bibliothèque PKCS #11 vous permet d'utiliser les mécanismes suivants pour les fonctions Digest. Avec le Client SDK 5, les données sont hachées localement dans le logiciel. Cela signifie qu'il n'y a aucune limite quant à la taille des données pouvant être hachées par leSDK.

  • CKM_SHA_1

  • CKM_SHA224

  • CKM_SHA256

  • CKM_SHA384

  • CKM_SHA512

Fonctions de chiffrement et de déchiffrement

La bibliothèque AWS CloudHSM logicielle de la bibliothèque PKCS #11 vous permet d'utiliser les mécanismes suivants pour les fonctions de chiffrement et de déchiffrement.

  • CKM_RSA_X_509

  • CKM_RSA_PKCS - Opérations à une seule partie uniquement. Modification à venir répertoriée dans la note de bas de page 5.

  • CKM_RSA_PKCS_OAEP - Opérations à une seule partie uniquement.

  • CKM_AES_ECB

  • CKM_AES_CTR

  • CKM_AES_CBC

  • CKM_AES_CBC_PAD

  • CKM_DES3_CBC— le changement à venir est indiqué dans la note de bas de page 5.

  • CKM_DES3_ECB— le changement à venir est indiqué dans la note de bas de page 5.

  • CKM_DES3_CBC_PAD— le changement à venir est indiqué dans la note de bas de page 5.

  • CKM_AES_GCM 1, 2

  • CKM_CLOUDHSM_AES_GCM3

Fonctions de dérivation de clé

La bibliothèque AWS CloudHSM logicielle de la bibliothèque PKCS #11 vous permet d'utiliser les mécanismes suivants pour les fonctions Derive.

  • CKM_SP800_108_COUNTER_KDF

Fonctions d'encapsulage et de désencapsulage

La bibliothèque AWS CloudHSM logicielle de la bibliothèque PKCS #11 vous permet d'utiliser les mécanismes suivants pour les fonctions Wrap et Unwrap.

Pour plus d'informations sur l'emballage des AES clés, consultez la section Emballage AES des clés.

  • CKM_RSA_PKCS - Opérations à une seule partie uniquement. Une modification à venir est répertoriée dans la note de bas de page 5.

  • CKM_RSA_PKCS_OAEP4

  • CKM_AES_GCM1, 3

  • CKM_CLOUDHSM_AES_GCM3

  • CKM_RSA_AES_KEY_WRAP

  • CKM_CLOUDHSM_AES_KEY_WRAP_NO_PAD3

  • CKM_CLOUDHSM_AES_KEY_WRAP_PKCS5_PAD3

  • CKM_CLOUDHSM_AES_KEY_WRAP_ZERO_PAD3

Taille maximale des données pour chaque mécanisme

Le tableau suivant répertorie la taille maximale des données définie pour chaque mécanisme :

Taille maximale des jeux de données
Mécanisme Taille maximale des données en octets
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

Annotations du mécanisme

  • [1] Lors de l'exécution AES du GCM chiffrement, les données du vecteur d'initialisation (IV) de l'application HSM ne sont pas acceptées. Vous devez utiliser un vecteur d’initialisation qu’il génère. Le IV à 12 octets fourni par le HSM est écrit dans la référence de mémoire pointée par l'élément PiV de CK_GCM_PARAMS la structure de paramètres que vous fournissez. Pour éviter toute confusion chez l'utilisateur, PKCS #11 SDK dans les versions 1.1.1 et ultérieures garantit que le PIV pointe vers une mémoire tampon mise à zéro AES lorsque GCM le chiffrement est initialisé.

  • [2] Lors de l’utilisation de données avec l’un des mécanismes suivants, si la mémoire tampon des données dépasse la taille maximale des données, l’opération génère une erreur. Pour ces mécanismes, tout le traitement des données doit avoir lieu à l'intérieur duHSM. Pour plus d'informations sur les ensembles de tailles de données maximales pour chaque mécanisme, reportez-vous àTaille maximale des données pour chaque mécanisme.

  • [3] Mécanisme défini par le fournisseur. Afin d'utiliser les mécanismes définis par le HSM fournisseur du Cloud, les applications PKCS #11 doivent être incluses /opt/cloudhsm/include/pkcs11t.h lors de la compilation.

    CKM_CLOUDHSM_AES_GCM : Ce mécanisme propriétaire est une alternative plus sûre par programme à la norme CKM_AES_GCM. Il ajoute le IV généré par le HSM au texte chiffré au lieu de le réécrire dans la CK_GCM_PARAMS structure fournie lors de l'initialisation du chiffrement. Vous pouvez utiliser ce mécanisme avec les fonctions C_Encrypt, C_WrapKey, C_Decrypt et C_UnwrapKey. Lors de l'utilisation de ce mécanisme, la variable PiV dans la structure CK_GCM_PARAMS doit être définie sur NULL. Lors de l'utilisation de ce mécanisme avec C_Decrypt et C_UnwrapKey, le IV doit être ajouté au texte chiffré qui est en cours de désencapsulage.

    CKM_CLOUDHSM_AES_KEY_WRAP_PKCS5_PAD: AES Porte-clés avec rembourrage PKCS #5.

    CKM_CLOUDHSM_AES_KEY_WRAP_ZERO_PAD: AES Protège-clés sans rembourrage.

  • [4] Les CK_MECHANISM_TYPE et CK_RSA_PKCS_MGF_TYPE suivants sont pris en charge en tant que CK_RSA_PKCS_OAEP_PARAMS pour CKM_RSA_PKCS_OAEP:

    • CKM_SHA_1 utilisant CKG_MGF1_SHA1

    • CKM_SHA224 utilisant CKG_MGF1_SHA224

    • CKM_SHA256 utilisant CKG_MGF1_SHA256

    • CKM_SHA384 utilisant CKM_MGF1_SHA384

    • CKM_SHA512 utilisant CKM_MGF1_SHA512

  • [5] Conformément aux NIST directives, cela n'est pas autorisé pour les clusters en FIPS mode après 2023. Pour les clusters en FIPS mode non, cela est toujours autorisé après 2023. Consultez FIPS140 Conformité : dépréciation du mécanisme 2024 pour plus de détails.