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.
Rechiffrement d'un objet chiffré
Il est possible de rechiffrer un texte chiffré client existant chiffré sous une clé KMS sur une autre clé KMS à l'aide de la commande Rechiffrer. La commande Rechiffrer permet de rechiffrer les données côté serveur à l'aide d'une nouvelle clé KMS, sans exposer le texte brut des données côté client. Les données sont d'abord déchiffrées, puis rechiffrées.
Voici la syntaxe de la demande.
{ "CiphertextBlob": "blob", "DestinationEncryptionContext": { "string" : "string" }, "DestinationKeyId": "string", "GrantTokens": ["string"], "SourceKeyId": "string", "SourceEncryptionContext": { "string" : "string"} }
La demande accepte les données suivantes au format JSON.
- CiphertextBlob
-
Texte chiffré des données à rechiffrer.
- DestinationEncryptionContext
-
(Facultatif) Contexte de chiffrement à utiliser lorsque les données sont rechiffrées.
- DestinationKeyId
-
Identificateur de clé de la clé utilisée pour rechiffrer les données.
- GrantTokens
-
(Facultatif) Une liste de jetons d'octrois qui représentent les octrois qui fournissent des autorisations permettant d'effectuer le déchiffrement.
- SourceKeyId
-
(Facultatif) Identificateur de clé de la clé utilisée pour déchiffrer les données.
- SourceEncryptionContext
-
(Facultatif) Contexte de chiffrement utilisé pour chiffrer et déchiffrer les données spécifiées dans le
CiphertextBlob
paramètre.
Le processus combine les opérations de déchiffrement et de chiffrement des descriptions précédentes : le texte chiffré du client est déchiffré sous la clé HBK initiale référencée par le texte chiffré du client vers la clé HBK actuelle sous la clé KMS prévue. Lorsque les clés KMS utilisées dans cette commande sont identiques, cette commande déplace le texte chiffré du client d'une ancienne version d'une clé HBK vers la dernière version d'une clé HBK.
Voici la syntaxe de la réponse.
{ "CiphertextBlob": blob, "DestinationEncryptionAlgorithm": "string", "KeyId": "string", "SourceEncryptionAlgorithm": "string", "SourceKeyId": "string" }
Si l'application appelante souhaite s'assurer de l'authenticité du texte en clair sous-jacent, elle doit vérifier que le texte SourceKeyId renvoyé est celui attendu.