Tous les produits
Search
Centre de documentation

Key Management Service:Utilisation du chiffrement sous enveloppe

Dernière mise à jour :Aug 09, 2026

Le chiffrement direct de volumes importants de données via KMS engendre une latence réseau et expose vos données sensibles en les faisant sortir de votre machine. Le chiffrement sous enveloppe résout ce problème en maintenant le chiffrement des données en local : KMS génère et protège une clé de données, que votre application utilise ensuite pour chiffrer les données sur la machine locale sans les transmettre à KMS.

Cette rubrique aborde le chiffrement sous enveloppe dans vos propres applications. Pour le chiffrement côté serveur dans les services Alibaba Cloud, consultez Intégration avec KMS .

Types de clés applicables

Vous pouvez utiliser des clés protégées par logiciel et des clés protégées par matériel pour le chiffrement sous enveloppe dans vos propres applications.

Important

Les clés de service et les clés maîtres client (CMK) utilisées comme clés par défaut peuvent également servir au chiffrement sous enveloppe, mais leur usage est restreint au chiffrement côté serveur dans les services Alibaba Cloud ; elles ne peuvent pas être utilisées pour le chiffrement dans vos propres applications. Les clés protégées par logiciel et par matériel sont compatibles à la fois avec le chiffrement côté serveur dans les services Alibaba Cloud et le chiffrement dans vos propres applications.

Fonctionnement

La sécurité des données chiffrées repose sur la protection de la clé de données permettant de les déchiffrer. La bonne pratique mise en œuvre par le chiffrement sous enveloppe consiste à chiffrer la clé de données avec une clé KMS distincte et à stocker la forme chiffrée aux côtés des données.

Flux de chiffrement

image..png

  1. Appelez GenerateDataKey pour générer une clé de données. Transmettez les paramètres suivants :

    Paramètre Description
    KeyId ID ou alias de la clé KMS à utiliser
    NumberOfBytes Longueur de la clé de données en octets. Définissez une valeur d'au moins 24 octets. Pour AES (Advanced Encryption Standard), utilisez 16, 24 ou 32 octets. Pour 3DES (Triple Data Encryption Standard), utilisez 16 ou 24 octets.
  2. Recevez la clé de données depuis KMS. La réponse contient trois champs :

    Avertissement

    Conservez le texte chiffré de la clé de données en toute sécurité. En cas de perte, le déchiffrement devient impossible et vos données ne peuvent pas être récupérées.

    Champ Description
    Texte en clair de la clé de données Utilisé pour chiffrer les données localement
    Texte chiffré de la clé de données Le texte en clair chiffré avec votre clé KMS en mode GCM (Galois/Counter Mode). Stockez-le aux côtés du texte chiffré des données.
    Paramètres de chiffrement L'algorithme de chiffrement et le vecteur d'initialisation (IV) utilisés pour générer le texte chiffré de la clé de données
  3. Utilisez le texte en clair de la clé de données pour chiffrer les données localement à l'aide d'une bibliothèque ou d'un module cryptographique conforme à votre langage et à vos exigences de conformité. Nous vous recommandons de détruire le texte en clair de la clé de données dès que possible après la fin du chiffrement.

  4. Stockez le texte chiffré des données avec le texte chiffré de la clé de données, l'identifiant de la clé KMS et les paramètres de chiffrement.

Flux de déchiffrement

image..png

  1. Lisez le texte chiffré des données, le texte chiffré de la clé de données, l'identifiant de la clé KMS et les paramètres de chiffrement stockés.

  2. Appelez Decrypt avec le texte chiffré de la clé de données et les paramètres de chiffrement pour obtenir le texte en clair de la clé de données depuis KMS.

  3. Utilisez le texte en clair de la clé de données pour déchiffrer le texte chiffré des données localement.

Cas d'utilisation

Chiffrement de plusieurs fichiers avec des clés indépendantes

L'utilisation d'une clé unique pour un grand nombre de fichiers augmente le risque de compromission de la clé. Avec le chiffrement sous enveloppe, chaque fichier obtient une clé de données unique protégée par une seule clé KMS, ce qui isole l'exposition de chaque fichier.

Chiffrement de volumes importants de données

L'envoi de données volumineuses à KMS pour un chiffrement via le réseau ajoute de la latence et des coûts. Le chiffrement sous enveloppe maintient le chiffrement des données en local — seule la petite clé de données est échangée avec KMS —, rendant ainsi pratique le chiffrement d'ensembles de données tels que les données de disque complet.

Limitations

Le chiffrement sous enveloppe nécessite une clé KMS symétrique provenant d'une instance de gestion de clés logicielle ou matérielle. Spécifications de clés prises en charge :

Type d'instance Spécifications prises en charge
Gestion de clés logicielle Aliyun_AES_256
Gestion de clés matérielle Aliyun_AES_256, Aliyun_AES_192, Aliyun_AES_128, Aliyun_DES3_192

Prérequis

Avant de commencer, assurez-vous d'avoir :

Exemples de code

Les exemples suivants utilisent une clé de données AES de 32 octets chiffrée en mode GCM.

Java

Utilise la bibliothèque cryptographique SunJCE Provider.

Python

Utilise la bibliothèque cryptographique cryptography.hazmat.

Go

Utilise la bibliothèque cryptographique golang/crypto.

PHP

Utilise la bibliothèque cryptographique OpenSSL.

Voir aussi