Mecanismos de encapsulamento de chaves

Um mecanismo de encapsulamento de chaves (KEM) é um processo criptográfico usado para estabelecer um segredo compartilhado entre duas partes em um canal não confiável. Um mecanismo de encapsulamento de chaves envolve três algoritmos principais:

  • Geração de chaves: um par de chaves é gerado, consistindo em uma chave pública e uma chave privada.
  • Encapsulamento: a chave pública é usada para produzir uma senha secreta compartilhada e um texto cifrado correspondente.
  • Decapsulação: a chave privada é usada para recuperar o segredo compartilhado do texto cifrado.

Os mecanismos de encapsulamento de chaves são um elemento fundamental para protocolos de troca de chaves e criptografia de chave pública híbrida (HPKE).

Fluxo de trabalho de encapsulamento e desencapsulamento

A seguir, descrevemos o processo para usar um par de chaves KEM para encapsular e desencapsular dados. Os dois participantes neste fluxo de trabalho são um remetente e um destinatário. O remetente cria um texto criptografado e um segredo compartilhado usando a chave pública do destinatário. Em seguida, o destinatário descriptografa o texto criptografado usando a chave privada dele para recuperar o segredo compartilhado. Somente alguém com conhecimento da chave privada pode desencapsular o texto cifrado para recuperar o segredo compartilhado original.

  1. O remetente recupera a chave pública do destinatário.

  2. O remetente usa a chave pública para realizar a etapa de encapsulamento, que gera uma senha secreta compartilhada e um texto criptografado correspondente.

  3. O remetente envia o texto cifrado para o destinatário.

  4. O destinatário usa a chave privada dele para desencapsular o texto criptografado. O destinatário e o remetente agora têm o mesmo segredo compartilhado.

Mecanismos de encapsulamento de chaves pós-quânticas (PQ-KEM)

Os computadores quânticos podem descriptografar material criptografado por algoritmos clássicos, como os algoritmos RSA e ECDSA, que são amplamente usados. Isso pode tornar o material criptografado vulnerável a ataques de "coletar agora, descriptografar depois". Nesses ataques, os adversários coletam e armazenam dados criptografados atuais que usam algoritmos de criptografia clássicos, com a intenção de descriptografá-los mais tarde, quando computadores quânticos potentes estiverem disponíveis. Os PQ-KEMs são projetados para resistir a ataques quânticos, garantindo que os dados criptografados com eles hoje permaneçam seguros mesmo na era quântica, evitando a descriptografia futura das informações coletadas hoje.

O Cloud Key Management Service oferece suporte a ML-KEM-768 e ML-KEM-1024, que foram padronizados pelo NIST no FIPS-203, e X-Wing, um KEM híbrido que combina ML-KEM-768 com X25519. Esses algoritmos têm os seguintes valores de tamanho (em bytes):

Algoritmo Chave pública Texto criptografado Senha secreta
ML_KEM_768 1184 1.088 32
ML_KEM_1024 1568 1568 32
KEM_XWING 1216 1120 32

Recursos de KEMs do Cloud KMS

O Cloud KMS oferece os seguintes recursos relacionados a mecanismos de encapsulamento de chaves:

Para encapsular usando chaves do Cloud KMS, use SDKs e ferramentas disponíveis abertamente com a chave pública. O Cloud KMS não oferece recursos de encapsulamento.