

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 le SDK client 3 pour le SDK AWS CloudHSM client 3
<a name="java-lib-supported"></a>

Cette rubrique fournit des informations sur les mécanismes pris en charge par le fournisseur JCE avec AWS CloudHSM le SDK client 3. Pour plus d'informations sur les interfaces JCA (Java Cryptography Architecture) et les classes de moteur prises en charge par AWS CloudHSM, consultez les rubriques suivantes. 

**Topics**
+ [Clés prises en charge](#java-keys)
+ [Chiffrements pris en charge](#java-ciphers)
+ [Synthèses prises en charge](#java-digests)
+ [Algorithmes HMAC (Hash-Based Message Authentication Code) pris en charge](#java-mac)
+ [sign/verify Mécanismes pris en charge](#java-sign-verify)
+ [Annotations du mécanisme](#w2aac25c23c25c11c17)

## Clés prises en charge
<a name="java-keys"></a>

La bibliothèque AWS CloudHSM logicielle pour Java vous permet de générer les types de clés suivants.
+ AES – Clés AES de 128, 192 et 256 bits.
+ DESede — Clé 3DES 92 bits. Voir la note [1](#java-keys-note-1) ci-dessous pour un changement à venir.
+ Paires de clés ECC pour courbes NIST secp256r1 (P-256), secp384r1 (P-384) et secp256k1 (Blockchain).
+ RSA : Clés RSA de 2 048 bits à 4 096 bits, par incréments de 256 bits.

Outre les paramètres standard, nous prenons en charge les paramètres suivants pour chaque clé générée.
+ **Label** : étiquette de clé que vous pouvez utiliser pour rechercher des clés.
+ **isExtractable** : indique si la clé peut être exportée depuis le HSM.
+ **isPersistent** : indique si la clé reste sur le HSM lorsque la session en cours se termine.

**Note**  
 La version 3.1 de la bibliothèque Java permet de spécifier les paramètres plus en détail. Pour plus d'informations, consultez [Attributs Java pris en charge](java-lib-attributes.md).

## Chiffrements pris en charge
<a name="java-ciphers"></a>

La bibliothèque AWS CloudHSM logicielle pour Java prend en charge les combinaisons d'algorithmes, de modes et de remplissage suivantes.


| Algorithm | Mode | Remplissage | Remarques | 
| --- | --- | --- | --- | 
| AES | CBC |  `AES/CBC/NoPadding` `AES/CBC/PKCS5Padding`  | Implémente `Cipher.ENCRYPT_MODE` et `Cipher.DECRYPT_MODE`.  | 
| AES | ECB |  `AES/ECB/NoPadding` `AES/ECB/PKCS5Padding`  | Implémente Cipher.ENCRYPT\$1MODE et Cipher.DECRYPT\$1MODE. Utilisez Transformation AES. | 
| AES | CTR |  `AES/CTR/NoPadding`  |  Implémente `Cipher.ENCRYPT_MODE` et `Cipher.DECRYPT_MODE`.  | 
| AES | GCM | AES/GCM/NoPadding | Implémente `Cipher.ENCRYPT_MODE` et `Cipher.DECRYPT_MODE`, `Cipher.WRAP_MODE` et `Cipher.UNWRAP_MODE`.Lorsque vous effectuez un chiffrement AES-GCM, le HSM ignore le vecteur d'initialisation (IV) dans la demande et utilise un vecteur d'initialisation généré. Lorsque l'opération est terminée, vous devez appeler `Cipher.getIV()` pour obtenir le vecteur d'initialisation. | 
| AESWrap | ECB |  `AESWrap/ECB/ZeroPadding` `AESWrap/ECB/NoPadding` `AESWrap/ECB/PKCS5Padding`  |  Implémente `Cipher.WRAP_MODE` et `Cipher.UNWRAP_MODE`. Utilisez Transformation AES.  | 
| DESede (Triple DES) | CBC |  `DESede/CBC/NoPadding` `DESede/CBC/PKCS5Padding`  |  Implémente `Cipher.ENCRYPT_MODE` et `Cipher.DECRYPT_MODE`. Les routines de génération de clé acceptent une taille de 168 ou 192 bits. Cependant, en interne, toutes les DESede clés sont de 192 bits. Voir la note [1](#java-keys-note-1) ci-dessous pour un changement à venir.  | 
| DESede (Triple DES) | ECB | `DESede/ECB/NoPadding``DESede/ECB/PKCS5Padding` | Implémente `Cipher.ENCRYPT_MODE` et `Cipher.DECRYPT_MODE`. Les routines de génération de clé acceptent une taille de 168 ou 192 bits. Cependant, en interne, toutes les DESede clés sont de 192 bits. Voir la note [1](#java-keys-note-1) ci-dessous pour un changement à venir.  | 
| RSA | ECB | `RSA/ECB/NoPadding``RSA/ECB/PKCS1Padding` | Implémente `Cipher.ENCRYPT_MODE` et `Cipher.DECRYPT_MODE`. Voir la note [1](#java-keys-note-1) ci-dessous pour un changement à venir. | 
| RSA | ECB | `RSA/ECB/OAEPPadding` `RSA/ECB/OAEPWithSHA-1ANDMGF1Padding` `RSA/ECB/OAEPWithSHA-224ANDMGF1Padding` `RSA/ECB/OAEPWithSHA-256ANDMGF1Padding` `RSA/ECB/OAEPWithSHA-384ANDMGF1Padding` `RSA/ECB/OAEPWithSHA-512ANDMGF1Padding`  |  Implémente `Cipher.ENCRYPT_MODE`, `Cipher.DECRYPT_MODE`, `Cipher.WRAP_MODE` et `Cipher.UNWRAP_MODE`. `OAEPPadding` est `OAEP` avec le type de remplissage `SHA-1`.  | 
| RSAAESWrap | ECB | OAEPPADDING | Implémente Cipher.WRAP\$1Mode et Cipher.UNWRAP\$1MODE.  | 

## Synthèses prises en charge
<a name="java-digests"></a>

La bibliothèque AWS CloudHSM logicielle pour Java prend en charge les résumés de messages suivants.
+ `SHA-1`
+ `SHA-224`
+ `SHA-256`
+ `SHA-384`
+ `SHA-512`

**Note**  
Les données inférieures à 16 Ko en longueur sont hachées sur le HSM, tandis que les données plus grandes le sont localement dans le logiciel.

## Algorithmes HMAC (Hash-Based Message Authentication Code) pris en charge
<a name="java-mac"></a>

La bibliothèque AWS CloudHSM logicielle pour Java prend en charge les algorithmes HMAC suivants.
+ `HmacSHA1`
+ `HmacSHA224`
+ `HmacSHA256`
+ `HmacSHA384`
+ `HmacSHA512`

## sign/verify Mécanismes pris en charge
<a name="java-sign-verify"></a>

La bibliothèque AWS CloudHSM logicielle pour Java prend en charge les types de signature et de vérification suivants.

**Types de signature RSA**
+ `NONEwithRSA`
+ `SHA1withRSA`
+ `SHA224withRSA`
+ `SHA256withRSA`
+ `SHA384withRSA`
+ `SHA512withRSA`
+ `SHA1withRSA/PSS`
+ `SHA224withRSA/PSS`
+ `SHA256withRSA/PSS`
+ `SHA384withRSA/PSS`
+ `SHA512withRSA/PSS`

**Types de signature ECDSA**
+ `NONEwithECDSA`
+ `SHA1withECDSA`
+ `SHA224withECDSA`
+ `SHA256withECDSA`
+ `SHA384withECDSA`
+ `SHA512withECDSA`

## Annotations du mécanisme
<a name="w2aac25c23c25c11c17"></a>

[1] Conformément aux directives du NIST, cela n'est pas autorisé pour les clusters en mode FIPS après 2023. Pour les clusters en mode non FIPS, cela est toujours autorisé après 2023. Consultez [Conformité à la norme FIPS 140 : mécanisme 2024 rendu obsolète](compliance-dep-notif.md#compliance-dep-notif-1) pour plus de détails.