Étape 2 : Téléchargement de la clé publique d’encapsulage et du jeton d'importation - AWS Key Management Service

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.

Étape 2 : Téléchargement de la clé publique d’encapsulage et du jeton d'importation

Après avoir créé un élément AWS KMS key sans clé, téléchargez une clé publique encapsulée et un jeton d'importation pour cette KMS clé à l'aide de la AWS KMS console ou du GetParametersForImportAPI. La clé publique d'encapsulage et le jeton d'importation constituent un ensemble indivisible qui doit être utilisé ensemble.

Vous utiliserez la clé publique d'encapsulage pour chiffrer votre élément de clé pour le transport. Avant de télécharger une paire de clés RSA d'encapsulation, vous sélectionnez la longueur (spécification de clé) de la paire de clés RSA d'encapsulation et l'algorithme d'encapsulation que vous utiliserez pour chiffrer le matériel clé importé en vue de son transport à l'étape 3. AWS KMS prend également en charge la spécification de la clé d'SM2emballage (régions chinoises uniquement).

Chaque ensemble de clés publiques d'encapsulage et de jetons d'importation est valide pendant 24 heures. Si vous ne les utilisez pas pour importer les éléments de clé dans les 24 heures après les avoir téléchargés, vous devez en télécharger de nouveaux. Vous pouvez télécharger de nouvelles clés publiques d'encapsulage et importer des ensembles de jetons à tout moment. Cela vous permet de modifier la longueur de votre clé RSA d'emballage (« spécification clé ») ou de remplacer un ensemble perdu.

Vous pouvez également télécharger un ensemble de clés publiques d'encapsulage et de jetons d'importation pour réimporter le même contenu clé dans une KMS clé. Vous pouvez le faire pour définir ou modifier le délai d'expiration des éléments de clé ou pour restaurer des éléments de clé expirés ou supprimés. Vous devez télécharger et rechiffrer votre contenu clé chaque fois que vous l'importez dans. AWS KMS

Utilisation de la clé publique d'encapsulage

Le téléchargement inclut une clé publique qui vous est propre Compte AWS, également appelée clé publique encapsulée.

Avant d'importer le contenu clé, vous le chiffrez à l'aide de la clé d'encapsulage publique, puis vous le téléchargez sur. AWS KMS Lorsqu'il AWS KMS reçoit le contenu de votre clé chiffrée, il le déchiffre avec la clé privée correspondante, puis le chiffre à nouveau sous une clé AES symétrique, le tout dans un AWS KMS module de sécurité matériel (). HSM

Utilisation du jeton d'importation

Le téléchargement comprend un jeton d'importation avec des métadonnées qui garantissent que vos éléments de clé sont importés correctement. Lorsque vous téléchargez le contenu de votre clé chiffrée sur AWS KMS, vous devez télécharger le même jeton d'importation que celui que vous avez téléchargé à cette étape.

Sélectionnez une spécification de clé publique d'encapsulage

Pour protéger votre contenu clé lors de l'importation, vous le chiffrez à l'aide de la clé publique d'encapsulage à partir de AWS KMS laquelle vous le téléchargez et d'un algorithme d'encapsulage pris en charge. Vous sélectionnez une spécification de clé avant de télécharger votre clé publique d'encapsulage et votre jeton d'importation. Toutes les paires de clés d'encapsulage sont générées dans les modules de sécurité AWS KMS matériels (HSMs). La clé privée ne le laisse jamais HSM en texte brut.

RSAspécifications clés de l'emballage

La spécification clé de la clé publique enveloppante détermine la longueur des clés de la paire de RSA clés qui protège le contenu de votre clé pendant son transport vers AWS KMS. En général, nous recommandons d'utiliser la clé publique d'encapsulage la plus longue qui soit pratique. Nous proposons plusieurs spécifications d'encapsulation des clés publiques pour soutenir une variété HSMs de gestionnaires clés.

AWS KMS prend en charge les spécifications clés suivantes pour les clés RSA d'emballage utilisées pour importer du matériel clé de tous types, sauf indication contraire.

  • RSA_4096 (préféré)

  • RSA_3072

  • RSA_2048

    Note

    La combinaison suivante est NOT prise en charge : le matériau clé ECC _ NIST _P521, la spécification de clé d'encapsulation publique RSA _2048 et un RSAES algorithme d'encapsulage _ _ _*. OAEP SHA

    Vous ne pouvez pas envelopper directement le matériel clé ECC _ NIST _P521 avec une clé d'emballage publique RSA _2048. Utilisez une clé d'encapsulation plus grande ou un algorithme d'encapsulation RSA AES KEY WRAP _ _ _ _ SHA _*.

SM2spécification clé d'emballage (régions chinoises uniquement)

AWS KMS prend en charge les spécifications clés suivantes pour les clés SM2 d'emballage utilisées pour importer du matériel clé asymétrique.

  • SM2

Sélectionner un algorithme d'encapsulage

Pour protéger vos éléments de clé pendant l'importation, vous les chiffrez à l'aide de la clé publique d’encapsulage téléchargée et d'un algorithme d'enveloppement pris en charge.

AWS KMS prend en charge plusieurs algorithmes RSA d'encapsulation standard et un algorithme d'encapsulation hybride en deux étapes. En général, nous vous recommandons d'utiliser l'algorithme d'encapsulage le plus sécurisé qui soit compatible avec l’élément de clé importé et les spécifications de clé d’encapsulage. En général, vous choisissez un algorithme pris en charge par le module de sécurité matériel (HSM) ou le système de gestion des clés qui protège le contenu de vos clés.

Le tableau suivant présente les algorithmes d'encapsulation pris en charge pour chaque type de matériau clé et de KMS clé. Les algorithmes sont répertoriés dans l'ordre de préférence.

Éléments de clé Algorithme et spécification d'encapsulage pris en charge
Clés de chiffrement symétrique

clé 256 bits AES

SM4Clé 128 bits (régions chinoises uniquement)

Algorithmes d'encapsulage :

RSAES_ OAEP _ SHA _256

RSAES_ OAEP _ SHA _1

Algorithmes d'encapsulage obsolètes :

RSAESPKCS1__V1

Note

Depuis le 10 octobre 2023, AWS KMS ne prend pas en charge l'algorithme d'RSAESencapsulage _ PKCS1 _V1_5.

Spécifications de clés d'encapsulage :

RSA_2048

RSA_3072

RSA_4096

Clé RSA privée asymétrique
Algorithmes d'encapsulage :

RSA_ AES _ _ KEY WRAP _ SHA _256

RSA_ AES _ _ KEY WRAP _ SHA _1

SM2PKE(Régions chinoises uniquement)

Spécifications de clés d'encapsulage :

RSA_2048

RSA_3072

RSA_4096

SM2(Régions chinoises uniquement)

Clé privée à courbe elliptique asymétrique (ECC)

Vous ne pouvez pas utiliser les algorithmes d'emballage RSAES OAEP _ _ SHA _* avec la spécification de clé d'emballage RSA _2048 pour envelopper le matériau clé ECC _ NIST _P521.

Algorithmes d'encapsulage :

RSA_ AES _ _ KEY WRAP _ SHA _256

RSA_ AES _ _ KEY WRAP _ SHA _1

RSAES_ OAEP _ SHA _256

RSAES_ OAEP _ SHA _1

SM2PKE(Régions chinoises uniquement)

Spécifications de clés d'encapsulage :

RSA_2048

RSA_3072

RSA_4096

SM2(Régions chinoises uniquement)

Clé SM2 privée asymétrique (régions chinoises uniquement)
Algorithmes d'encapsulage :

RSAES_ OAEP _ SHA _256

RSAES_ OAEP _ SHA _1

SM2PKE(Régions chinoises uniquement)

Spécifications de clés d'encapsulage :

RSA_2048

RSA_3072

RSA_4096

SM2(Régions chinoises uniquement)

HMACclé
Algorithmes d'encapsulage :

RSAES_ OAEP _ SHA _256

RSAES_ OAEP _ SHA _1

Spécifications de clés d'encapsulage :

RSA_2048

RSA_3072

RSA_4096

Note

Les algorithmes RSA_AES_KEY_WRAP_SHA_1 d'encapsulation RSA_AES_KEY_WRAP_SHA_256 et de compression ne sont pas pris en charge dans les régions chinoises.

  • RSA_AES_KEY_WRAP_SHA_256— Un algorithme d'encapsulation hybride en deux étapes qui combine le chiffrement de votre contenu clé avec une clé AES symétrique que vous générez, puis le chiffrement de la clé AES symétrique avec la clé d'encapsulation RSA publique téléchargée et l'algorithme d'encapsulage RSAES _ _ OAEP _256. SHA

    Un algorithme RSA_AES_KEY_WRAP_SHA_* d'encapsulage est requis pour encapsuler le contenu à clé RSA privée, sauf dans les régions de Chine, où vous devez utiliser l'algorithme SM2PKE d'encapsulage.

  • RSA_AES_KEY_WRAP_SHA_1— Un algorithme d'encapsulation hybride en deux étapes qui combine le chiffrement de votre contenu clé avec une clé AES symétrique que vous générez, puis le chiffrement de la clé AES symétrique avec la clé publique d'RSAencapsulation téléchargée et l'algorithme d'encapsulage RSAES _ _ OAEP _1. SHA

    Un algorithme RSA_AES_KEY_WRAP_SHA_* d'encapsulage est requis pour encapsuler le contenu à clé RSA privée, sauf dans les régions de Chine, où vous devez utiliser l'algorithme SM2PKE d'encapsulage.

  • RSAES_OAEP_SHA_256— L'algorithme de RSA chiffrement avec rembourrage asymétrique optimal (OAEP) avec la fonction de hachage SHA -256.

  • RSAES_OAEP_SHA_1— L'algorithme de RSA chiffrement avec Optimal Asymmetric Encryption Padding (OAEP) avec la fonction de SHA hachage -1.

  • RSAES_PKCS1_V1_5(Obsolète ; depuis le 10 octobre 2023, il AWS KMS ne prend pas en charge l'algorithme d'encapsulage RSAES _ PKCS1 _V1_5) — L'algorithme de RSA chiffrement avec le format de remplissage défini dans #1 Version 1.5. PKCS

  • SM2PKE(Régions chinoises uniquement) — Algorithme de chiffrement basé sur une courbe elliptique défini par la norme GM/T OSCCA 0003.4-2012.

Téléchargement de la clé publique d’encapsulage et du jeton d'importation (console)

Vous pouvez utiliser la AWS KMS console pour télécharger la clé publique d'encapsulage et le jeton d'importation.

  1. Si vous venez de suivre les étapes de création d'une KMS clé sans élément clé et que vous vous trouvez sur la page Télécharger la clé d'encapsulage et le jeton d'importation, passez àÉtape 9.

  2. Connectez-vous à la console AWS Key Management Service (AWS KMS) AWS Management Console et ouvrez-la à l'adresse https://console.aws.amazon.com/kms.

  3. Pour modifier le Région AWS, utilisez le sélecteur de région dans le coin supérieur droit de la page.

  4. Dans le volet de navigation, sélectionnez Clés gérées par le client.

    Astuce

    Vous ne pouvez importer du matériel clé que dans une KMS clé dont l'origine est externe (matériel clé d'importation). Cela indique que la KMS clé a été créée sans aucun élément clé. Pour ajouter la colonne Origine à votre table, dans le coin supérieur droit de la page, choisissez l'icône des paramètres ( Gear or cog icon representing settings or configuration options. ). Activez Origine, puis choisissez Confirmer.

  5. Choisissez l'alias ou l'ID de clé de la KMS clé en attente d'importation.

  6. Choisissez l'onglet Cryptographic configuration (Configuration de chiffrement) et affichez ses valeurs. Les onglets se trouvent sous la section General configuration (Configuration générale).

    Vous ne pouvez importer que du matériel clé dans des KMS clés d'origine externe (matériel clé d'importation). Pour plus d'informations sur la création de KMS clés avec du matériel clé importé, voir,Importation de matériel clé pour les AWS KMS clés.

  7. Choisissez l'onglet Key material (Éléments de clé) puis choisissez Import key material (Importation des éléments de clé).

    L'onglet Matériau clé apparaît uniquement pour les KMS clés dont la valeur d'origine est Externe (matériau clé d'importation).

  8. Pour Select Wrapping Key spec, choisissez la configuration de votre KMS clé. Une fois cette clé créée, vous ne pouvez pas modifier ses spécifications.

  9. Pour Sélectionner l'algorithme d'encapsulage, choisissez l'option que vous allez utiliser pour chiffrer vos éléments de clé. Pour de plus amples informations sur les options, veuillez consulter Sélectionner l'algorithme d'encapsulage.

  10. Choisissez Télécharger la clé publique d'encapsulage et le jeton d'importation, puis enregistrez le fichier.

    Si vous avez une option Suivant, pour poursuivre le processus immédiatement, choisissez Suivant. Pour continuer ultérieurement, choisissez Annuler.

  11. Décompressez le fichier .zip que vous avez enregistré à l'étape précédente (Import_Parameters_<key_id>_<timestamp>).

    Le dossier contient les fichiers suivants :

    • Une clé publique encapsulée dans un fichier nomméWrappingPublicKey.bin.

    • Un jeton d'importation dans un fichier nommé ImportToken.bin.

    • Un fichier texte nommé README .txt. Ce fichier contient des informations sur la clé publique d'encapsulage, l'algorithme d'encapsulage à utiliser pour chiffrer vos éléments de clé, et la date et l'heure d'expiration de la clé publique d'encapsulage et du jeton d'importation.

  12. Pour poursuivre le processus, consultez Chiffrer vos éléments de clé.

Téléchargement de la clé publique d'encapsulage et du jeton d'importation (AWS KMS API)

Pour télécharger la clé publique et le jeton d'importation, utilisez le GetParametersForImportAPI. Spécifiez la KMS clé qui sera associée au matériau clé importé. Cette KMS clé doit avoir une valeur d'origine deEXTERNAL.

Cet exemple indique l'algorithme RSA_AES_KEY_WRAP_SHA_256 d'encapsulage, la spécification de clé publique d'encapsulage RSA _3072 et un exemple d'ID de clé. Remplacez ces exemples de valeurs par des valeurs valides pour votre téléchargement. Pour l'ID de clé, vous pouvez utiliser un ID de clé ou une clé ARN, mais vous ne pouvez pas utiliser de nom d'alias ou d'alias ARN dans cette opération.

$ aws kms get-parameters-for-import \ --key-id 1234abcd-12ab-34cd-56ef-1234567890ab \ --wrapping-algorithm RSA_AES_KEY_WRAP_SHA_256 \ --wrapping-key-spec RSA_3072

Lorsque la commande s'exécute correctement, vous obtenez une sortie similaire à ce qui suit :

{ "ParametersValidTo": 1568290320.0, "PublicKey": "public key (base64 encoded)", "KeyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "ImportToken": "import token (base64 encoded)" }

Pour préparer les données pour l'étape suivante, base64 décode la clé publique, importe le jeton et enregistre les valeurs décodées dans des fichiers.

Pour décoder la clé publique et le jeton d'importation en base64 :

  1. Copiez la clé publique codée en base64 (représentée par public key (base64 encoded) dans l'exemple de sortie), collez-le dans un nouveau fichier, puis enregistrez le fichier. Donnez au fichier un nom descriptif, par exemple PublicKey.b64.

  2. Utilisez Open SSL pour décoder le contenu du fichier en base64 et enregistrer les données décodées dans un nouveau fichier. L'exemple suivant décode les données dans le fichier que vous avez enregistré à l'étape précédente (PublicKey.b64) et enregistre le résultat dans un nouveau fichier nommé WrappingPublicKey.bin.

    $ openssl enc -d -base64 -A -in PublicKey.b64 -out WrappingPublicKey.bin
  3. Copiez le jeton d'importation codé en base64 (représenté par import token (base64 encoded) dans l'exemple de sortie), collez-le dans un nouveau fichier, puis enregistrez le fichier. Donnez au fichier un nom descriptif, par exemple importtoken.b64.

  4. Utilisez Open SSL pour décoder le contenu du fichier en base64 et enregistrer les données décodées dans un nouveau fichier. L'exemple suivant décode les données dans le fichier que vous avez enregistré à l'étape précédente (ImportToken.b64) et enregistre le résultat dans un nouveau fichier nommé ImportToken.bin.

    $ openssl enc -d -base64 -A -in importtoken.b64 -out ImportToken.bin

Passez à Étape 3 : Chiffrement des éléments de clé.