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.
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, |
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.
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, |
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
Clés de chiffrement fournies par le client dans Cloud Storage
Clés de chiffrement fournies par le client dans Compute Engine