Clés de chiffrement fournies par le client

Ce contenu a été mis à jour pour la dernière fois en février 2025 et correspond à l'état des connaissances à sa date de rédaction. Les règles et les systèmes de sécurité Google peuvent changer par la suite, car nous améliorons continuellement la protection de nos clients.

Les clés de chiffrement fournies par le client (CSEK) constituent une fonctionnalité de Cloud Storage et de Compute Engine. Si vous fournissez vos propres clés de chiffrement, Google utilisera votre clé afin de protéger les clés générées par Google pour chiffrer et déchiffrer vos données.

Ce document décrit le fonctionnement des CSEK et la façon dont ils sont protégés dansGoogle Cloud.

Fonctionnement des CSEK avec Cloud Storage

Lorsque vous utilisez des CSEK dans Cloud Storage, les clés suivantes font partie du processus d'encapsulation:

  • CSEK brute:vous fournissez une CSEK brute dans le cadre d'un appel d'API. La clé CSEK brute est transmise depuis l'interface frontale de Google (GFE) vers la mémoire du système de stockage. Cette clé est la clé de chiffrement de clé (KEK) dans Cloud Storage pour vos données.
  • Clés fragmentées encapsulées:la CSEK brute est utilisée pour encapsuler les clés fragmentées encapsulées.
  • Clés fragmentées brutes:les clés fragmentées encapsulées encapsulent les clés fragmentées brutes en mémoire. Les clés de fragment brut sont utilisées pour chiffrer les fragments de données stockés dans les systèmes de stockage. Elles servent de clés de chiffrement de données (DEK) pour vos données dans Cloud Storage.

Le schéma suivant illustre le processus d'encapsulation des clés.

CSEK dans Cloud Storage

Le tableau suivant décrit les clés.

Clés Stockée(s) dans Usage Accessible(s) jusqu'à

CSEK brute

Mémoire du système de stockage

Protège les clés fragmentées encapsulées.

L'opération demandée par le client (par exemple, insertObject ou getObject) est terminée.

Clés fragmentées encapsulées

Périphériques de stockage

Protégez les clés de fragment brut stockées au repos.

L'objet de stockage est supprimé.

Clés fragmentées brutes

Mémoire des périphériques de stockage

Protégez les données que vous lisez ou écrivez sur le disque.

La fin de l'opération demandée par le client.

Fonctionnement des CSEK avec Compute Engine

Lorsque vous utilisez des CSEK dans Compute Engine, les clés suivantes font partie du processus d'encapsulation:

  • CSEK brute:vous fournissez une CSEK brute ou une clé encapsulée en RSA dans le cadre d'un appel d'API. Le CSEK est transmis depuis le GFE vers l'interface frontale du gestionnaire de cluster interne. Le gestionnaire de cluster est un ensemble de processus exécutés sous l'identité d'un gestionnaire de cluster dans l'infrastructure de production de Google. Il met en œuvre la logique de gestion des ressources Compute Engine telles que les disques et les instances de VM.
  • Clé d'encapsulation asymétrique appartenant à Google:si une clé encapsulée en RSA est fournie en tant que CSEK, elle est désencapsulante à l'aide d'une clé d'encapsulation asymétrique appartenant à Google.
  • Clé dérivée de la CSEK:la CSEK brute est combinée à un nonce cryptographique par disque persistant pour générer une clé dérivée de la CSEK. Cette clé sert de KEK dans Compute Engine pour vos données. Dans l'interface frontale du gestionnaire de cluster, la CSEK et la clé dérivée de la CSEK ne sont conservées que dans la mémoire du gestionnaire de cluster. La clé dérivée de la CSEK est utilisée dans la mémoire du gestionnaire de cluster pour désencapsuler les clés de disque encapsulées qui sont stockées dans les métadonnées d'instance du gestionnaire de cluster et les métadonnées du gestionnaire d'instance, lorsque le redémarrage automatique est activé (ces métadonnées ne sont pas identiques aux métadonnées d'instance).

  • Clés de disque brutes:la clé dérivée de la CSEK permet d'encapsuler les clés de disque brutes lors de la création d'un disque et de désencapsuler ces mêmes clés lors de l'accès à un disque. Les événements suivants se produisent:

    • Si le redémarrage automatique est activé, les clés de disque encapsulées sont stockées de manière persistante par le gestionnaire de cluster pendant toute la durée de vie de la VM, afin que celle-ci puisse redémarrer en cas de plantage. Les clés de disque encapsulées sont encapsulées avec une clé d'encapsulation symétrique de Google. Les autorisations de la clé d'encapsulation ne permettent son utilisation que par Compute Engine. Si le redémarrage automatique est désactivé, les clés de disque encapsulées sont supprimées à l'aide du processus de suppression décrit dans la section Suppression des données surGoogle Cloud.
    • Si la migration à chaud est activée, la clé de disque brute est transférée depuis la mémoire de l'ancienne instance de VM vers celle de la nouvelle instance de VM, sans que le gestionnaire d'instance ou le gestionnaire de cluster n'ait besoin de copier la clé.

Les clés de disque brutes sont transmises à la mémoire du gestionnaire de cluster (CM), du gestionnaire d'instance et de la VM. Ces clés servent de clés de chiffrement des données dans Compute Engine pour vos données.

Le schéma suivant illustre le fonctionnement de l'encapsulation de clés.

CSEK dans Compute Engine

Clés Détenue(s) par Usage Accessible(s) jusqu'à

CSEK brute

Interface frontale du gestionnaire de cluster

Dériver la clé dérivée de la CSEK en ajoutant un nonce cryptographique.

L'opération demandée par le client (par exemple, instances.insert, instances.attachDisk) est terminée.

CSEK encapsulée avec une clé publique

(en cas de recours à l'encapsulation d'une clé RSA)

Interface frontale du gestionnaire de cluster

Dériver la clé dérivée de la CSEK en la désencapsulant d'abord avec une clé asymétrique de Google.

L'opération demandée par le client est terminée.

Clé asymétrique détenue par Google

(en cas de recours à l'encapsulation d'une clé RSA)

Keystore

Désencapsulez la clé encapsulée en RSA.

Indéfiniment.

Clé dérivée de la CSEK

Interface frontale du gestionnaire de cluster

Encapsule les clés de disque.

La fin de l'opération d'encapsulation ou de désencapsulation de la clé.

Clés de disque encapsulées par Google

(lorsque le redémarrage automatique est utilisé)

Interface frontale du gestionnaire de cluster

Permet de protéger les clés de disque stockées au repos, pour les disques associés aux instances en cours d'exécution.

Redémarrer l'instance en cas de perte de la mémoire de la VM (par exemple, plantage d'un hôte)

Arrêt ou suppression de la VM.

Clés de disque brutes

Mémoire du moniteur de la machine virtuelle (VMM), mémoire du gestionnaire de cluster

Lire ou écrire des données sur le disque, migrer à chaud la VM et effectuer des mises à niveau sur place

L'arrêt ou la suppression de la VM.

Clé dérivée de la CSEK encapsulée par Google

Base de données du gestionnaire de cluster

Permet de redémarrer l'opération en cas d'échec.

La fin de l'opération demandée par le client.

Protection des clés CSEK

Cette section décrit comment les clés CSEK sont protégées sur le disque, lorsqu'elles circulent sur l'infrastructure Google Cloud et dans la mémoire.

Les CSEK brutes, les clés dérivées de la CSEK et les clés de disque brutes ne sont jamais stockées sur un disque non chiffrées. Les clés de disque brutes sont stockées sous forme encapsulée avec des clés dérivées de la CSEK et avec des clés Google en cas de recours au redémarrage automatique. Google ne stocke pas vos clés de manière permanente sur ses serveurs.

Chaque service spécifie exactement quels autres services peuvent communiquer avec lui grâce aux fonctionnalités de gestion des accès fournies par l'infrastructure. Le service est configuré avec la liste d'autorisation des identités de compte de service autorisées, et cette restriction d'accès est ensuite automatiquement appliquée par l'infrastructure. Google CloudPour en savoir plus, consultez la section Identité, intégrité et isolement du service.

L'infrastructure fournit également une confidentialité et une intégrité par chiffrement pour les données RPC sur le réseau. Les services peuvent configurer le niveau de protection par chiffrement qu'ils souhaitent pour chaque appel RPC d'infrastructure. Ces niveaux sont activés pour les CSEK. Pour en savoir plus, consultez la section Chiffrement des communications entre les charges de travail.

Le matériel de la clé réside dans la mémoire de divers systèmes, y compris la mémoire du gestionnaire de cluster et celle du VMM. L'accès à la mémoire de ces systèmes est exceptionnel (par exemple, dans le cadre d'un incident) et géré par des listes de contrôle d'accès. Ces systèmes ont désactivé le vidage de la mémoire ou analysent automatiquement le matériel de la clé dans le vidage de la mémoire. Pour en savoir plus sur les protections de ces tâches, consultez la section Comment Google protège ses services de production.

Étape suivante