Encriptação de envelopes

Introdução

O armazenamento e a encriptação de dados à escala da Google requerem a utilização de um serviço de gestão de chaves criptográficas central com várias camadas de chaves para os dados encriptados. Um exemplo de várias camadas de chaves é a encriptação de envelope, que é o processo de encriptação de uma chave com outra chave.

Pode encriptar dados na camada de aplicação, que é responsável por apresentar dados aos utilizadores, e na camada de armazenamento, que fornece o armazenamento físico de dados.

Por predefinição, na camada de armazenamento,o Google Cloud Google Cloud encripta o conteúdo do cliente armazenado em repouso através da encriptação em envelope, com o serviço de gestão de chaves interno da Google como o arquivo de chaves central. Se estiver a armazenar e encriptar dados por si, pode usar o Cloud Key Management Service como o seu repositório de chaves central na camada de aplicação, que é o foco deste tópico.

O Cloud KMS armazena chaves numa hierarquia de chaves concebida para facilitar o acesso aos recursos na hierarquia de chaves regidos pela gestão de identidade e de acesso. A imagem seguinte mostra os principais níveis de uma hierarquia de chaves do Cloud KMS:

Recursos

Saiba mais acerca da hierarquia principal em hierarquia de objetos.

Chaves de encriptação de dados

A chave usada para encriptar os dados propriamente dita chama-se chave de encriptação de dados (DEK).

Seguem-se as práticas recomendadas para gerir DEKs:

  • Gere DEKs localmente.
  • Quando armazenadas, certifique-se sempre de que as DEKs estão encriptadas em repouso.
  • Para facilitar o acesso, armazene a DEK perto dos dados que encripta.
  • Gerar uma nova DEK sempre que escreve os dados. Isto significa que não tem de rodar as DEKs.
  • Não use a mesma DEK para encriptar dados de dois utilizadores diferentes.
  • Use um algoritmo forte, como o Advanced Encryption Standard (AES) de 256 bits no modo de contador de Galois (GCM).

Chaves de encriptação de chaves