

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.

# AWS CloudHSM Le SDK client 3 vérifie les performances du HSM avec l'outil pkpspeed
<a name="troubleshooting-verify-hsm-performance"></a>

Cette rubrique explique comment vérifier les performances du module de sécurité AWS CloudHSM matérielle (HSM) avec le SDK client 3.

Pour vérifier les performances de votre AWS CloudHSM cluster, vous pouvez utiliser l'outil pkpspeed (Linux) ou pkpspeed\$1blocking (Windows) inclus dans le SDK client 3. HSMs L'outil pkpspeed s'exécute dans des conditions idéales et appelle directement le HSM pour exécuter des opérations sans passer par un SDK tel que. PKCS11 Nous vous recommandons de tester la charge de votre application de manière indépendante afin de déterminer vos besoins en matière de mise à l'échelle. Nous vous déconseillons d'exécuter les tests suivants : Random (I), ModExp (R) et EC point mul (Y).

 Pour plus d'informations sur l'installation du client sur une instance Linux EC2, consultez [Installation et configuration du AWS CloudHSM client pour CMU (Linux)](cmu-install-and-configure-client-linux.md). Pour plus d'informations sur l'installation du client sur une instance Windows, consultez [Installation et configuration du AWS CloudHSM client pour CMU (Windows)](cmu-install-and-configure-client-win.md). 

Après avoir installé et configuré le AWS CloudHSM client, exécutez la commande suivante pour le démarrer.

------
#### [ Amazon Linux ]

```
$ sudo start cloudhsm-client
```

------
#### [ Amazon Linux 2 ]

```
$ sudo service cloudhsm-client start
```

------
#### [ CentOS 7 ]

```
$ sudo service cloudhsm-client start
```

------
#### [ CentOS 8 ]

```
$ sudo service cloudhsm-client start
```

------
#### [ RHEL 7 ]

```
$ sudo service cloudhsm-client start
```

------
#### [ RHEL 8 ]

```
$ sudo service cloudhsm-client start
```

------
#### [ Ubuntu 16.04 LTS ]

```
$ sudo service cloudhsm-client start
```

------
#### [ Ubuntu 18.04 LTS ]

```
$ sudo service cloudhsm-client start
```

------
#### [ Windows ]
+ Pour le Client Windows version 1.1.2 et ultérieure :

  ```
  C:\Program Files\Amazon\CloudHSM>net.exe start AWSCloudHSMClient
  ```
+ Pour les clients Windows version 1.1.1 et antérieure :

  ```
  C:\Program Files\Amazon\CloudHSM>start "cloudhsm_client" cloudhsm_client.exe C:\ProgramData\Amazon\CloudHSM\data\cloudhsm_client.cfg
  ```

------

Si vous avez déjà installé le logiciel client, vous devrez télécharger et installer la dernière version pour obtenir pkpspeed. L'outil pkpspeed est disponible dans `/opt/cloudhsm/bin/pkpspeed` sous Linux ou dans `C:\Program Files\Amazon\CloudHSM\` sous Windows. 

Pour utiliser pkpspeed, exécutez la commande **pkpspeed** ou **pkpspeed\$1blocking.exe**, en spécifiant le nom d'utilisateur et le mot de passe d'un utilisateur de chiffrement sur le HSM. Ensuite, définissez les options à utiliser tout en prenant en compte les recommandations suivantes. 

## Recommandations de test
<a name="w2aac37c11c17"></a>
+ Pour tester les performances des opérations de signature et de vérification RSA, choisissez le chiffrement `RSA_CRT` sous Linux ou l'option B sous Windows. Ne choisissez pas `RSA` (option A sous Windows). Les chiffrements sont équivalents, mais `RSA_CRT` est optimisé pour les performances. 
+ Commencez par un petit nombre de threads. Pour tester les performances AES, un seul thread suffit généralement pour afficher des performances maximales. Pour tester les performances RSA (`RSA_CRT`), trois ou quatre threads suffisent généralement. 

## Options configurables pour l'outil pkpspeed
<a name="w2aac37c11c19"></a>
+ **Mode FIPS** : AWS CloudHSM est toujours en mode FIPS (voir [AWS CloudHSM FAQs](https://aws.amazon.com/cloudhsm/faqs/)pour plus de détails). Cela peut être vérifié en utilisant les outils CLI tels que décrits dans le guide de AWS CloudHSM l'utilisateur et en exécutant la ** [Obtenez des informations matérielles pour chaque HSM d'un AWS CloudHSM cluster grâce à la CMU](cloudhsm_mgmt_util-getHSMInfo.md) ** commande qui indiquera l'état du mode FIPS.
+ **Type de test (bloquant ou non bloquant)** : indique comment les opérations sont effectuées de manière progressive. Vous obtiendrez probablement de meilleurs numéros en utilisant le non-blocage. Cela est dû au fait qu'ils utilisent des threads et la simultanéité.
+ **Nombre de fils** : nombre de fils avec lesquels exécuter le test.
+ **Durée en secondes d'exécution du test (max = 600)** : pkpspeed produit des résultats mesurés en « opérations/seconde » et indique cette valeur pour chaque seconde pendant laquelle le test est exécuté. Par exemple, si le test est exécuté pendant 5 secondes, le résultat peut ressembler aux exemples de valeurs suivants :
  + `OPERATIONS/second 821/1`
  + `OPERATIONS/second 833/1`
  + `OPERATIONS/second 845/1`
  + `OPERATIONS/second 835/1`
  + `OPERATIONS/second 837/1`

## Tests pouvant être exécutés avec l'outil pkpspeed
<a name="w2aac37c11c21"></a>
+ **AES GCM** : teste le chiffrement en mode AES GCM.
+ **Basic 3DES CBC** : teste le chiffrement en mode 3DES CBC. Voir la note [1](#verify-hsm-performance-note-1) ci-dessous pour un changement à venir.
+ **AES de base** : teste le CBC/ECB chiffrement AES.
+ **Digest** : teste le condensé de hachage.
+ **ECDSA Sign** : teste la signature ECDSA.
+ **ECDSA Verify** : teste la vérification ECDSA.
+ **FIPS Random** : teste la génération d'un nombre aléatoire conforme à la norme FIPS (Remarque : cela ne peut être utilisé qu'en mode blocage).
+ **HMAC** : Teste le HMAC.
+ **Random** : Ce test n'est pas pertinent car nous utilisons des HSM FIPS 140-2.
+ Comparaison entre **RSA non-CRT et RSA\$1CRT** : teste les opérations de signature et de vérification RSA.
+ **RSA OAEP Enc** : teste le chiffrement RSA OAEP.
+ **RSA OAEP Dec** : teste le déchiffrement RSA OAEP.
+ **RSA private dec non-CRT** : teste le chiffrement par clé privée RSA (non optimisé).
+ **RSA private key dec CRT** : teste le chiffrement par clé privée RSA (optimisé).
+ **RSA PSS Sign** : teste la signature RSA PSS.
+ **RSA PSS Verify** : teste la vérification RSA PSS.
+ **RSA public key enc** : teste le chiffrement par clé publique RSA.

Le chiffrement par clé publique RSA, le déchiffrement privé RSA sans CRT et le déchiffrement par clé privée RSA invitent également l'utilisateur à répondre aux questions suivantes :

```
Do you want to use static key [y/n]
```

Si `y` est saisi, une clé pré-calculée est importée dans le HSM.

Si `n` est saisi, une nouvelle clé est générée.

[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.

## Exemples
<a name="w2aac37c11c23"></a>

Les exemples suivants montrent les options que vous pouvez choisir avec pkpspeed (Linux) ou pkpspeed\$1blocking (Windows) pour tester les performances des modules HSM par rapport aux opérations RSA et AES. 

**Example - Utilisation de pkpspeed pour tester les performances RSA**  
Vous pouvez exécuter cet exemple sous Windows, Linux et les systèmes d'exploitation compatibles.  
Utilisez ces instructions pour Linux et les systèmes d'exploitation compatibles.  

```
/opt/cloudhsm/bin/pkpspeed -s CU user name -p password

SDK Version: 2.03

        Available Ciphers:
                AES_128
                AES_256
                3DES
                RSA  (non-CRT. modulus size can be 2048/3072)
                RSA_CRT (same as RSA)
For RSA, Exponent will be 65537

Current FIPS mode is: 00002
Enter the number of thread [1-10]: 3
Enter the cipher: RSA_CRT
Enter modulus length: 2048
Enter time duration in Secs: 60
Starting non-blocking speed test using data length of 245 bytes...
[Test duration is 60 seconds]

Do you want to use static key[y/n] (Make sure that KEK is available)?n
```

```
c:\Program Files\Amazon\CloudHSM>pkpspeed_blocking.exe -s CU user name -p password

Please select the test you want to run

RSA non-CRT------------------->A
RSA CRT----------------------->B
Basic 3DES CBC---------------->C
Basic AES--------------------->D
FIPS Random------------------->H
Random------------------------>I
AES GCM ---------------------->K

eXit------------------------>X
B

Running 4 threads for 25 sec

Enter mod size(2048/3072):2048
Do you want to use Token key[y/n]n
Do you want to use static key[y/n] (Make sure that KEK is available)?  n
OPERATIONS/second                821/1
OPERATIONS/second                833/1
OPERATIONS/second                845/1
OPERATIONS/second                835/1
OPERATIONS/second                837/1
OPERATIONS/second                836/1
OPERATIONS/second                837/1
OPERATIONS/second                849/1
OPERATIONS/second                841/1
OPERATIONS/second                856/1
OPERATIONS/second                841/1
OPERATIONS/second                847/1
OPERATIONS/second                838/1
OPERATIONS/second                843/1
OPERATIONS/second                852/1
OPERATIONS/second                837/
```

**Example - Utilisation de pkpspeed pour tester les performances AES**  
Utilisez ces instructions pour Linux et les systèmes d'exploitation compatibles.  

```
/opt/cloudhsm/bin/pkpspeed -s <CU user name> -p <password>

SDK Version: 2.03

        Available Ciphers:
                AES_128
                AES_256
                3DES
                RSA  (non-CRT. modulus size can be 2048/3072)
                RSA_CRT (same as RSA)
For RSA, Exponent will be 65537

Current FIPS mode is: 00000002
Enter the number of thread [1-10]: 1
Enter the cipher: AES_256
Enter the data size [1-16200]: 8192
Enter time duration in Secs: 60
Starting non-blocking speed test using data length of 8192 bytes...
```

```
c:\Program Files\Amazon\CloudHSM>pkpspeed_blocking.exe -s CU user name -p password
login as USER
Initializing Cfm2 library
        SDK Version: 2.03

 Current FIPS mode is: 00000002
Please enter the number of threads [MAX=400] : 1
Please enter the time in seconds to run the test [MAX=600]: 20


Please select the test you want to run

RSA non-CRT------------------->A
RSA CRT----------------------->B
Basic 3DES CBC---------------->C
Basic AES--------------------->D
FIPS Random------------------->H
Random------------------------>I
AES GCM ---------------------->K

eXit------------------------>X
D

Running 1 threads for 20 sec

Enter the key size(128/192/256):256
Enter the size of the packet in bytes[1-16200]:8192
OPERATIONS/second                9/1
OPERATIONS/second                10/1
OPERATIONS/second                11/1
OPERATIONS/second                10/1
OPERATIONS/second                10/1
OPERATIONS/second                10/...
```