GendSA KeyPair - 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.

GendSA KeyPair

La commande genDSAKeyPair de l'outil key_mgmt_util génère une paire de clés Digital Signing Algorithm (DSA) dans vos 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_mgmt_util, vous devez démarrer key_mgmt_util et vous connecter 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. Pour trouver les clés d'un utilisateur en particulier, utilisez getKeyInfo. Pour rechercher des clés en fonction de leurs valeurs d'attribut, utilisez findKey.

Syntaxe

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

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

Exemple : 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
Exemple : 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 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
Exemple : 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
Exemple : 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 getKeyInfola 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

Paramètres

-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_srv

Spécifie le nombre minimal de HSM sur lesquels la clé est synchronisée avant que la valeur du paramètre -timeout n'expire. 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 le processus, définissez la valeur de min_srv sur une valeur inférieure au nombre de HSM dans le cluster et définissez une valeur de délai d'expiration peu élevée. Toutefois, notez que certaines demandes peuvent ne pas générer une clé.

Valeur par défaut : 1

Obligatoire : non

-m_value

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.

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

Par défaut : la clé est persistante.

Obligatoire : non

-timeout

Spécifie la durée (en secondes) pendant laquelle la commande attend qu'une clé soit synchronisée avec le nombre de HSM spécifié par le paramètre min_srv.

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 de chiffrement (CU) HSM à 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.

Saisissez une liste séparée par des virgules d'ID utilisateur HSM, par exemple -u 5,6. N'incluez pas l'ID utilisateur HSM de l'utilisateur actuel. Pour trouver les ID utilisateur HSM des CU sur le HSM, utilisez listUsers. Pour partager ou annuler le partage d'une clé existante, utilisez shareKey dans cloudhsm_mgmt_util.

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