Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Genere un par de ML-DSA claves asimétricas con la CLI de CloudHSM
Use el key generate-asymmetric-pair ml-dsa comando de la CLI de CloudHSM para generar un par de claves asimétricas ML-DSA en su clúster. AWS CloudHSM ML-DSA es un algoritmo de firma digital poscuántica. Genere un par de ML-DSA claves cuando necesite firmar o verificar datos mediante un algoritmo de resistencia cuántica.
Tipo de usuario
Los tipos de usuarios siguientes pueden ejecutar este comando.
-
Usuarios de criptografía (CU)
Requisitos
Para ejecutar este comando, debe iniciar sesión como CU.
Sintaxis
aws-cloudhsm >help key generate-asymmetric-pair ml-dsaGenerate an ML-DSA key pair Usage: key generate-asymmetric-pair ml-dsa [OPTIONS] --public-label<PUBLIC_LABEL>--private-label<PRIVATE_LABEL>--mldsa-algorithm<MLDSA_ALGORITHM>Options: --cluster-id<CLUSTER_ID>Unique Id to choose which of the clusters in the config file to run the operation against. If not provided, will fall back to the value provided when interactive mode was started, or error --public-label<PUBLIC_LABEL>Label for the public key --private-label<PRIVATE_LABEL>Label for the private key --session Creates a session key pair that exists only in the current session. The key cannot be recovered after the session ends --mldsa-algorithm<MLDSA_ALGORITHM>ML-DSA algorithm [possible values: ML-DSA-44, ML-DSA-65, ML-DSA-87] --public-attributes [<PUBLIC_KEY_ATTRIBUTES>...] Space separated list of key attributes to set for the generated ML-DSA public key in the form of KEY_ATTRIBUTE_NAME=KEY_ATTRIBUTE_VALUE --private-attributes [<PRIVATE_KEY_ATTRIBUTES>...] Space separated list of key attributes to set for the generated ML-DSA private key in the form of KEY_ATTRIBUTE_NAME=KEY_ATTRIBUTE_VALUE --share-crypto-users [<SHARE_CRYPTO_USERS>...] Space separated list of Crypto User usernames to share the ML-DSA key with --manage-private-key-quorum-value<MANAGE_PRIVATE_KEY_QUORUM_VALUE>The quorum value for key management operations for the private key --use-private-key-quorum-value<USE_PRIVATE_KEY_QUORUM_VALUE>The quorum value for key usage operations for the private key -h, --help Print help
Ejemplos
En estos ejemplos se muestra cómo usarlo key generate-asymmetric-pair ml-dsa para crear un ML-DSA par de claves.
ejemplo Ejemplo: crear un par de ML-DSA-44 claves
aws-cloudhsm >key generate-asymmetric-pair ml-dsa \ --mldsa-algorithm ML-DSA-44 \ --public-label ml-dsa-public-key-example \ --private-label ml-dsa-private-key-example{ "error_code": 0, "data": { "public_key": { "key-reference": "0x000000000000240b", "key-info": { "key-owners": [ { "username": "cu1", "key-coverage": "full" } ], "shared-users": [], "key-quorum-values": { "manage-key-quorum-value": 0, "use-key-quorum-value": 0 }, "cluster-coverage": "full" }, "attributes": { "key-type": "ml-dsa", "label": "ml-dsa-public-key-example", "id": "0x", "check-value": "0x988721", "class": "public-key", "encrypt": false, "decrypt": false, "token": true, "always-sensitive": false, "derive": false, "destroyable": true, "extractable": true, "local": true, "modifiable": true, "never-extractable": false, "private": true, "mldsa-algorithm": "ML-DSA-44", "sensitive": false, "sign": false, "trusted": false, "unwrap": false, "verify": false, "wrap": false, "wrap-with-trusted": false, "key-length-bytes": 1312 } }, "private_key": { "key-reference": "0x0000000000000f63", "key-info": { "key-owners": [ { "username": "cu1", "key-coverage": "full" } ], "shared-users": [], "key-quorum-values": { "manage-key-quorum-value": 0, "use-key-quorum-value": 0 }, "cluster-coverage": "full" }, "attributes": { "key-type": "ml-dsa", "label": "ml-dsa-private-key-example", "id": "0x", "check-value": "0x988721", "class": "private-key", "encrypt": false, "decrypt": false, "token": true, "always-sensitive": true, "derive": false, "destroyable": true, "extractable": true, "local": true, "modifiable": true, "never-extractable": false, "private": true, "mldsa-algorithm": "ML-DSA-44", "sensitive": true, "sign": false, "trusted": false, "unwrap": false, "verify": false, "wrap": false, "wrap-with-trusted": false, "key-length-bytes": 2560 } } } }
ejemplo Ejemplo: cree un par de ML-DSA claves con atributos opcionales
aws-cloudhsm >key generate-asymmetric-pair ml-dsa \ --mldsa-algorithm ML-DSA-65 \ --public-label ml-dsa-public-key-example \ --private-label ml-dsa-private-key-example \ --public-attributes verify=true \ --private-attributes sign=true{ "error_code": 0, "data": { "public_key": { "key-reference": "0x00000000002806eb", "key-info": { "key-owners": [ { "username": "cu1", "key-coverage": "full" } ], "shared-users": [], "key-quorum-values": { "manage-key-quorum-value": 0, "use-key-quorum-value": 0 }, "cluster-coverage": "full" }, "attributes": { "key-type": "ml-dsa", "label": "ml-dsa-public-key-example", "mldsa-algorithm": "ML-DSA-65", "verify": true, "key-length-bytes": 1952 } }, "private_key": { "key-reference": "0x00000000002806ec", "key-info": { "key-owners": [ { "username": "cu1", "key-coverage": "full" } ], "shared-users": [], "key-quorum-values": { "manage-key-quorum-value": 0, "use-key-quorum-value": 0 }, "cluster-coverage": "full" }, "attributes": { "key-type": "ml-dsa", "label": "ml-dsa-private-key-example", "mldsa-algorithm": "ML-DSA-65", "sign": true, "key-length-bytes": 4032 } } } }
Argumentos
<CLUSTER_ID>-
El ID del clúster en el que se va a ejecutar esta operación.
Obligatorio: si se han configurado varios clústeres.
<MLDSA_ALGORITHM>-
Especifica el ML-DSA algoritmo.
ML-DSA-44
ML-DSA-65
ML-DSA-87
Obligatorio: sí
<PUBLIC_KEY_ATTRIBUTES>-
Especifica una lista de atributos clave separados por espacios que se va a establecer para la clave ML-DSA pública generada en forma de
KEY_ATTRIBUTE_NAME=KEY_ATTRIBUTE_VALUE(por ejemplo,verify=true).Para obtener una lista de los atributos de clave compatibles, consulte Atributos de clave de la CLI de CloudHSM.
Obligatorio: no
<PUBLIC_LABEL>-
Especifica una etiqueta definida por el usuario para la clave pública. El tamaño máximo permitido para
labeles de 127 caracteres para Client SDK 5.11 de y versiones posteriores. Client SDK 5.10 y versiones anteriores tienen un límite de 126 caracteres.Obligatorio: sí
<PRIVATE_KEY_ATTRIBUTES>-
Especifica una lista de atributos clave separados por espacios para establecer para la clave ML-DSA privada generada en forma de
KEY_ATTRIBUTE_NAME=KEY_ATTRIBUTE_VALUE(por ejemplo,).sign=truePara obtener una lista de los atributos de clave compatibles, consulte Atributos de clave de la CLI de CloudHSM.
Obligatorio: no
<PRIVATE_LABEL>-
Especifica la etiqueta de clave privada definida por el usuario. El tamaño máximo permitido para
labeles de 127 caracteres para Client SDK 5.11 y versiones posteriores. Client SDK 5.10 y versiones anteriores tienen un límite de 126 caracteres.Obligatorio: sí
<SESSION>-
Crea una clave que solo existe en la sesión actual. La clave no se podrá recuperar una vez finalizada la sesión.
Utilice este parámetro cuando necesite una clave solo brevemente.
De forma predeterminada, el HSM genera claves persistentes (simbólicas). La introducción <SESSION>cambia esta situación, lo que garantiza que el HSM genere una clave de sesión (efímera) en su lugar.
Obligatorio: no
<SHARE_CRYPTO_USERS>-
Especifica una lista separada por espacios de los nombres de usuario criptográficos con los que compartir la clave privada. ML-DSA
Obligatorio: no
<MANAGE_PRIVATE_KEY_QUORUM_VALUE>-
El valor de quórum para las operaciones de administración de la clave privada. Este valor debe ser menor o igual que el número de usuarios con los que la clave está asociada. Esto incluye a los usuarios con los que se comparte la clave y al propietario de la clave. El valor máximo es 8.
Obligatorio: no
<USE_PRIVATE_KEY_QUORUM_VALUE>-
El valor de quórum para las operaciones de uso de claves de la clave privada. Este valor debe ser menor o igual que el número de usuarios con los que la clave está asociada. Esto incluye a los usuarios con los que se comparte la clave y al propietario de la clave. El valor máximo es 8.
Obligatorio: no