AWS KMSDétails techniques du porte-clés hiérarchique - AWS Encryption SDK

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.

AWS KMSDétails techniques du porte-clés hiérarchique

Le trousseau de clés AWS KMS hiérarchique utilise une clé de données unique pour chiffrer chaque champ et chiffre chaque clé de données avec une clé d'encapsulation unique dérivée d'une clé de branche active. Il utilise une dérivation de clé en mode compteur avec une fonction pseudo-aléatoire avec HMAC SHA-256 pour dériver la clé d'encapsulation de 32 octets avec les entrées suivantes.

  • Un sel aléatoire de 16 octets

  • La clé de branche active

  • La valeur codée en UTF-8 pour l'identifiant du fournisseur de clés « » aws-kms-hierarchy

Le trousseau de clés hiérarchique utilise la clé d'encapsulation dérivée pour chiffrer une copie de la clé de données en texte brut à l'aide du protocole AES-GCM-256 avec une balise d'authentification de 16 octets et les entrées suivantes.

  • La clé d'encapsulation dérivée est utilisée comme clé de chiffrement AES-GCM

  • La clé de données est utilisée comme message AES-GCM

  • Un vecteur d'initialisation aléatoire (IV) de 12 octets est utilisé comme AES-GCM IV

  • Données authentifiées supplémentaires (AAD) contenant les valeurs sérialisées suivantes.

    Valeur Longueur en octets Interprété comme
    "aws-kms-hierarchy" 17 Encodé en UTF-8
    L'identifiant de la clé de branche Variable Encodé en UTF-8
    La version de la clé de branche 16 Encodé en UTF-8
    Contexte de chiffrement Variable Paires de valeurs clés codées en UTF-8