

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.

# Génération d'une paire de clés AWS CloudHSM DSA à l'aide de KMU
<a name="key_mgmt_util-genDSAKeyPair"></a>

Utilisez la **genDSAKeyPair** commande de l'outil AWS CloudHSM key\$1mgmt\$1util pour générer une paire de clés d'algorithme de [signature numérique (DSA](https://en.wikipedia.org/wiki/Digital_Signature_Algorithm)) dans vos modules de sécurité matériels (HSM). Vous devez spécifier la longueur du module ; la commande génère la valeur du module. Vous pouvez également attribuer un ID, partager la clé avec d'autres utilisateurs HSM, créer des clés non extractibles, et créer des clés qui expirent lorsque la session se termine. Lorsque la commande aboutit, elle renvoie les *handles de clé* attribués par le HSM aux clés publiques et privées. Vous pouvez utiliser les handles de clé pour identifier les clés pour d'autres commandes.

Avant d'exécuter une commande key\$1mgmt\$1util, vous devez [démarrer key\$1mgmt\$1util](key_mgmt_util-setup.md#key_mgmt_util-start) et vous [connecter](key_mgmt_util-log-in.md) au HSM en tant qu'utilisateur de chiffrement (CU). 

**Astuce**  
Pour rechercher les attributs d'une clé que vous avez créée, tels que le type, la longueur, l'étiquette et l'ID, utilisez [getAttribute](key_mgmt_util-getAttribute.md). Pour trouver les clés d'un utilisateur en particulier, utilisez [getKeyInfo](key_mgmt_util-getKeyInfo.md). Pour rechercher des clés en fonction de leurs valeurs d'attribut, utilisez [findKey](key_mgmt_util-findKey.md). 

## Syntaxe
<a name="genDSAKeyPair-syntax"></a>

```
genDSAKeyPair -h

genDSAKeyPair -m <modulus length> 
              -l <label> 
              [-id <key ID>] 
              [-min_srv <minimum number of servers>] 
              [-m_value <0..8>]
              [-nex] 
              [-sess] 
              [-timeout <number of seconds> ]
              [-u <user-ids>] 
              [-attest]
```

## Exemples
<a name="genDSAKeyPair-examples"></a>

Ces exemples montrent comment utiliser **genDSAKeyPair** pour créer une paire de clés DSA.

**Example : Créer une paire de clés DSA**  
Cette commande crée une paire de clés DSA avec une étiquette `DSA`. La sortie montre que le handle de la clé publique est `19` et celui de la clé privée, `21`.  

```
Command: genDSAKeyPair -m 2048 -l DSA

        Cfm3GenerateKeyPair: returned: 0x00 : HSM Return: SUCCESS

        Cfm3GenerateKeyPair:    public key handle: 19    private key handle: 21

        Cluster Error Status
        Node id 0 and err state 0x00000000 : HSM Return: SUCCESS
```

**Example : Créer une paire de clés DSA de session unique**  
Cette commande crée une paire de clés DSA valable uniquement dans la session en cours. La commande affecte l'ID unique `DSA_temp_pair` en plus de l'étiquette requise (non unique). Vous pouvez créer une paire de clés de ce type pour signer et vérifier un jeton de session unique. La sortie montre que le handle de la clé publique est `12` et celui de la clé privée, `14`.  

```
Command: genDSAKeyPair -m 2048 -l DSA-temp -id DSA_temp_pair -sess

        Cfm3GenerateKeyPair: returned: 0x00 : HSM Return: SUCCESS

        Cfm3GenerateKeyPair:    public key handle: 12    private key handle: 14

        Cluster Error Status
        Node id 0 and err state 0x00000000 : HSM Return: SUCCESS
```
Pour confirmer que la paire de clés existe seulement dans la session, utilisez le paramètre `-sess` de [findKey](key_mgmt_util-findKey.md) avec la valeur `1` (vrai).  

```
  Command: findKey -sess 1

  Total number of keys present 2

 number of keys matched from start index 0::1
12, 14

        Cluster Error Status
        Node id 0 and err state 0x00000000 : HSM Return: SUCCESS

        Cfm3FindKey returned: 0x00 : HSM Return: SUCCESS
```

**Example : Créer une paire de clés DSA partagée, non extractible**  
Cette commande crée une paire de clés DSA. La clé privée est partagé avec trois autres utilisateurs, et ne peut pas être exportée à partir du HSM. Les clés publiques peuvent être utilisées par n'importe quel utilisateur et peuvent toujours être extraites.   

```
        Command:  genDSAKeyPair -m 2048 -l DSA -id DSA_shared_pair -nex -u 3,5,6

        Cfm3GenerateKeyPair: returned: 0x00 : HSM Return: SUCCESS

        Cfm3GenerateKeyPair:    public key handle: 11    private key handle: 19

        Cluster Error Status
        Node id 0 and err state 0x00000000 : HSM Return: SUCCESS
```

**Example : Créer une paire de clés contrôlée par quorum**  
Cette commande crée une paire de clés DSA avec l'étiquette `DSA-mV2`. La commande utilise le paramètre `-u` pour partager la clé privée avec les utilisateurs 4 et 6. Elle utilise le paramètre `-m_value` pour demander un quorum d'au moins deux approbations pour les opérations de chiffrement qui utilisent la clé privée. La commande utilise également le paramètre `-attest` pour vérifier l'intégrité du microprogramme sur lequel la paire de clés est générée.  
La sortie montre que la commande génère une clé publique avec le handle de clé `12` et une clé privée avec le handle de clé `17`, mais aussi que le contrôle d'attestation sur le microprogramme du cluster a abouti.  

```
        Command:  genDSAKeyPair -m 2048 -l DSA-mV2 -m_value 2 -u 4,6 -attest

        Cfm3GenerateKeyPair: returned: 0x00 : HSM Return: SUCCESS

        Cfm3GenerateKeyPair:    public key handle: 12    private key handle: 17

        Attestation Check : [PASS]

        Cluster Error Status
        Node id 1 and err state 0x00000000 : HSM Return: SUCCESS
        Node id 0 and err state 0x00000000 : HSM Return: SUCCESS
```
Cette commande utilise [getKeyInfo](key_mgmt_util-getKeyInfo.md)la clé privée (descripteur de clé`17`). La sortie confirme que la clé appartient à l'utilisateur actuel (utilisateur 3) et qu'elle est partagée avec les utilisateurs 4 et 6 (et aucun autre). La sortie montre également que l'authentification du quorum est activée et que la taille du quorum est deux.  

```
        Command:  getKeyInfo -k 17

        Cfm3GetKey returned: 0x00 : HSM Return: SUCCESS

        Owned by user 3

        also, shared to following 2 user(s):

                 4
                 6
         2 Users need to approve to use/manage this key
```

## Parameters
<a name="genDSAKeyPair-params"></a>

**-h**  
Affiche l'aide concernant la commande.   
Obligatoire : oui

**-m**  
Indique la longueur du module en bits. La seule valeur valide est `2048`.  
Obligatoire : oui

**-l**  
Spécifie l'étiquette définie par l'utilisateur pour la paire de clés. Saisissez une chaîne. La même étiquette s'applique aux deux clés de la paire. La taille maximale autorisée pour `label` est de 127 caractères.  
Vous pouvez utiliser n'importe quelle phrase qui vous aide à identifier la clé. Comme il n'est pas nécessaire que l'étiquette soit unique, vous pouvez l'utiliser pour regrouper et classer des clés.   
Obligatoire : oui

**-id**  
Spécifie un identifiant défini par l'utilisateur pour la paire de clés. Saisissez une chaîne unique dans le cluster. La valeur par défaut est une chaîne vide. L'ID que vous spécifiez s'applique aux deux clés de la paire.  
Valeur par défaut : pas de valeur d'ID.  
Obligatoire : non

**-min\$1srv**  
Spécifie le nombre minimum HSMs sur lequel la clé est synchronisée avant l'expiration de la valeur du `-timeout` paramètre. Si la clé n'est pas synchronisée sur le nombre spécifié de serveurs dans le temps imparti, elle n'est pas créée.  
AWS CloudHSM synchronise automatiquement chaque clé avec chaque HSM du cluster. Pour accélérer votre processus, réglez la valeur de sur une valeur inférieure `min_srv` au nombre de HSMs dans le cluster et définissez une valeur de délai d'expiration faible. Toutefois, notez que certaines demandes peuvent ne pas générer une clé.  
Valeur par défaut : 1  
Obligatoire : non

**-m\$1value**  
Spécifie le nombre d'utilisateurs qui doivent approuver les opérations cryptographiques qui utilisent la clé privée dans la paire. Entrez une valeur comprise entre `0` et `8`.  
Ce paramètre définit une exigence d'authentification par quorum pour la clé privée. La valeur par défaut, `0`, désactive la fonctionnalité d'authentification par quorum pour la clé. Lorsque l'authentification par quorum est activée, le nombre spécifié d'utilisateurs doit signer un jeton pour approuver les opérations cryptographiques utilisant la clé privée et les opérations qui partagent ou annulent le partage de la clé privée.  
Pour trouver le `m_value` code d'une clé, utilisez [getKeyInfo](key_mgmt_util-getKeyInfo.md).  
Ce paramètre est valide uniquement quand le paramètre `-u` de la commande partage la paire de clés avec suffisamment d'utilisateurs pour satisfaire l'exigence `m_value`.  
Par défaut : 0  
Obligatoire : non

**-nex**  
Rend la clé privée non extractible. La clé privée générée ne peut pas être [exportée depuis le HSM](export-keys.md). Les clés publiques sont toujours extractibles.  
Par défaut : les clés publiques et privées de la paire de clés sont extractibles.  
Obligatoire : non

**-sess**  
Crée une clé qui existe uniquement dans la session en cours. La clé ne peut pas être récupérée une fois la session terminée.  
Utilisez ce paramètre lorsque vous n'avez besoin que brièvement d'une clé, par exemple une clé d'encapsulage qui chiffre, puis déchiffre rapidement, une autre clé. N'utilisez pas de clé de session pour chiffrer les données que vous pourriez avoir besoin de déchiffrer après la fin de la session.  
Pour remplacer une clé de session par une clé persistante (jeton), utilisez [setAttribute](key_mgmt_util-setAttribute.md).  
Par défaut : la clé est persistante.   
Obligatoire : non

**-timeout**  
Spécifie la durée (en secondes) pendant laquelle la commande attend qu'une touche soit synchronisée avec le nombre de touches HSMs spécifié par le `min_srv` paramètre.   
Ce paramètre n'est valide que lorsque le paramètre `min_srv` est également utilisé dans la commande.  
Par défaut : aucun délai d’expiration. La commande attend indéfiniment et ne renvoie des résultats que lorsque la clé est synchronisée avec le nombre minimum de serveurs.  
Obligatoire : non

**-u**  
Partage la clé privée de la paire avec les utilisateurs spécifiés. Ce paramètre autorise les autres utilisateurs du chiffrement HSM (CUs) à utiliser la clé privée dans les opérations cryptographiques. Les clés publiques peuvent être utilisées par n'importe quel utilisateur sans partage.  
Tapez une liste d'utilisateurs HSM séparée par des virgules IDs, telle que -. `u 5,6` N'incluez pas l'ID utilisateur HSM de l'utilisateur actuel. [Pour trouver l'utilisateur HSM IDs de CUs sur le HSM, utilisez ListUsers.](key_mgmt_util-listUsers.md) Pour partager ou annuler le partage d'une clé existante, utilisez [shareKey](cloudhsm_mgmt_util-shareKey.md) dans cloudhsm\$1mgmt\$1util.   
Par défaut : seul l'utilisateur actuel peut utiliser la clé privée.   
Obligatoire : non

**-attest**  
Exécute un contrôle d'intégrité qui vérifie que le microprogramme sur lequel le cluster est exécuté n'a pas été altéré.  
Par défaut : aucune vérification d'attestation.  
Obligatoire : non

## Rubriques en relation
<a name="genDSAKeyPair-seealso"></a>
+ [gen RSAKey Pair](key_mgmt_util-genRSAKeyPair.md)
+ [genSymKey](key_mgmt_util-genSymKey.md)
+ [gen ECCKey Pair](key_mgmt_util-genECCKeyPair.md)