Importação de chaves

Este tópico aborda informações conceptuais sobre a importação de chaves para o Cloud Key Management Service como novas versões de chaves. Para ver instruções passo a passo, consulte o artigo sobre a importação de uma versão de chave.

Introdução

Pode estar a usar chaves criptográficas existentes que foram criadas nas suas instalações ou num sistema de gestão de chaves externo. Se migrar uma aplicação para o Google Cloud ou adicionar suporte criptográfico a uma aplicação Google Cloud existente, pode importar as chaves relevantes para o Cloud KMS.

  • Só pode importar para chaves de software no Cloud KMS.
  • O material da chave é envolvido para proteção em trânsito. Pode usar a Google Cloud CLI para encapsular automaticamente a chave ou pode encapsular a chave manualmente.
  • Google Cloud tem acesso à chave de união apenas no âmbito da tarefa de importação.

Este tópico fornece detalhes sobre as limitações e os requisitos para a importação de chaves, e apresenta uma vista geral de como funciona a importação de chaves.

Limitações e requisitos

Reveja estas secções para verificar se as suas chaves podem ser importadas para o Cloud KMS.

Formatos de chaves suportados

  • Chaves simétricas para encriptação: As chaves simétricas importadas têm de ter 16 bytes (apenas para encriptação simétrica não processada) ou 32 bytes de dados binários e não podem ser codificadas. Se a sua chave estiver codificada em hexadecimal ou Base64, tem de descodificá-la antes de tentar importá-la.
  • Chaves simétricas para assinatura (chaves MAC): as chaves de assinatura HMAC importadas têm de ter um comprimento igual ao comprimento de saída da função de hash criptográfico que está a ser usada (por exemplo, as chaves HMAC-SHA256 têm de ter um comprimento de 32 bytes) e não podem ser codificadas. Se a sua chave estiver codificada em hexadecimal ou codificada em base64, tem de descodificá-la antes de tentar importá-la.
  • Chaves assimétricas para encriptação ou assinatura: as chaves assimétricas importadas têm de estar no formato PKCS #8 e têm de ser codificadas em DER. O formato PCKS #8 está definido no RFC 5208. A codificação DER é definida na União Internacional das Telecomunicações X.680. As chaves assimétricas têm de usar uma das combinações de comprimento e algoritmo suportadas pelo Cloud KMS.

Alguns aspetos de uma chave, como o comprimento da chave, não podem ser alterados depois de a chave ser criada. Nestes casos, não é possível importar a chave para o Cloud KMS.

Para validar e reformatar a chave para importação, consulte o artigo Formatar chaves para importação.

Níveis de proteção suportados

Só pode importar para chaves com o SOFTWARE nível de proteção Não pode importar para uma chave do Cloud External Key Manager.

Tamanhos de chaves de encapsulamento suportados

Quando cria uma tarefa de importação, pode controlar o tamanho da chave de encapsulamento usada para proteger a sua chave em trânsito para o Google Ads definindo o método de importação da tarefa de importação. Google Cloud O tamanho predefinido da chave de encapsulamento é 3072. Se tiver requisitos específicos, pode configurar a tarefa de importação para usar uma chave de 4096 bits.

Pode saber mais acerca dos algoritmos usados para a encriptação de chaves ou acerca da configuração de uma tarefa de importação.

Como funciona a importação de chaves

Esta secção ilustra o que acontece quando importa uma chave. Algumas partes do fluxo são diferentes se usar a união automática ou unir manualmente a chave. Recomendamos a utilização da quebra automática de linhas. Para ver instruções específicas, consulte o artigo Importe uma versão da chave. Para instruções específicas sobre como encapsular manualmente a chave antes da importação, consulte o artigo Encapsular uma chave com o OpenSSL no Linux.

O diagrama seguinte ilustra o processo de importação de chaves através da união automática de chaves. As fases apresentadas no diagrama são descritas nesta secção.

Fluxo de importação, descrito nesta secção

  1. Prepare-se para importar chaves.

    1. Primeiro, crie um conjunto de chaves de destino e uma chave que, eventualmente, vai conter a tarefa de importação e o material de chaves importado. Neste momento, a chave de destino não contém versões da chave.

    2. Em seguida, crie uma tarefa de importação. A tarefa de importação define o conjunto de chaves e a chave de destino para o material da chave importada. A tarefa de importação também define o método de importação, que é o algoritmo usado para criar a chave de encapsulamento que protege o material da chave durante os pedidos de importação.

      • A chave pública é usada para encapsular a chave a importar no cliente.
      • A chave privada é armazenada em Google Cloud e é usada para desembrulhar a chave depois de chegar ao projeto Google Cloud .

      Esta separação impede que a Google possa desembrulhar o seu material de chaves fora do âmbito da tarefa de importação.

    3. A chave tem de ser envolvida criptograficamente antes de ser transmitida à Google. A maioria dos utilizadores pode usar a CLI gcloud para encapsular, transmitir e importar automaticamente a chave, conforme descrito no passo seguinte. Se tiver requisitos regulamentares ou de conformidade para aplicar a união à chave manualmente, pode fazê-lo neste momento. Para encapsular a chave manualmente no sistema local:

      1. Configure o OpenSSL.
      2. Uma vez por tarefa de importação, transfira a chave de união associada à tarefa de importação.
      3. Uma vez por chave, defina várias variáveis de ambiente e envolva a chave.
  2. Durante um máximo de três dias, até a tarefa de importação expirar, pode usá-la para fazer pedidos de importação para importar uma ou mais chaves. Durante um pedido de importação:

    1. Se a chave não tiver sido envolvida manualmente, a Google Cloud CLI transfere a chave pública da tarefa de importação de Google Cloud para o sistema local e, em seguida, usa a chave pública, juntamente com uma chave privada associada ao cliente, para envolver o material da chave local.
    2. O material da chave envolvida é transmitido para o projeto Google Cloud
    3. O material da chave é desembrulhado através da chave privada da tarefa de importação e é inserido como uma nova versão da chave de destino no conjunto de chaves de destino. Esta é uma operação atómica.
    4. Para chaves simétricas, define a versão da chave importada como a versão da chave principal.

Depois de o pedido de importação ser concluído com êxito, pode usar a versão da chave importada para proteger os dados no Google Cloud.

O que se segue?