Unlocking the Secrets of Key Management: O que é e qual a importância?

Foi abordado em outros artigos do CyberØ que a criptografia é uma técnica de segurança que se tornou cada vez mais importante na era digital. Ela é usada para proteger informações sensíveis, como senhas, informações financeiras e segredos comerciais, contra acesso não autorizado. Neste artigo, iremos explorar os conceitos básicos de criptografia, desde a cifra de César até a criptografia de chave pública. Hoje abordarei sobre Key Management (gerenciamento de chaves), ou seja, o processo de gerenciamento de chaves criptográficas. 

Como funcionam as chaves criptográficas?

As chaves criptográficas são análogas às combinações de números usadas para proteger um cofre físico. Somente o(s) usuário(s) autorizado(s) do cofre têm conhecimento das chaves de combinação do cofre.

O cofre pode empregar um mecanismo complexo para manter a porta trancada, mas mesmo o cofre mais resistente pode não oferecer segurança contra penetração, se a combinação de chaves for conhecida por um adversário não autorizado que esteja tentando arrombar a fechadura.

No mundo digital, a comunicação ocorre por meio da rede, entre diferentes entidades em diferentes localizações geográficas, que podem ou não ser capazes de compartilhar o conhecimento da chave entre si. Então, como você compartilha o conhecimento da chave secreta que permite comunicações seguras pela rede, onde um adversário pode estar presente como um espião intermediário?

O que é gerenciamento de chaves (Key Management)?

O uso eficaz da criptografia exige o gerenciamento de chaves, que se refere às atividades abrangentes de manuseio de chaves de criptografia durante todo o ciclo de vida. Ele foi projetado para se defender contra dois ataques, que se referem ao problema de troca de chaves:

Sigilo direto

O vazamento do material da chave pode comprometer as chaves de sessões anteriores. A falta de sigilo histórico permitiria que um adversário contornasse as operações de criptografia aplicadas a uma chave de sessão diferente. O conhecimento de uma chave de sessão futura pode ajudar a mapear os processos criptográficos usados nas sessões anteriores.

Ataque de chave conhecida

Se o material de codificação for comprometido, as futuras chaves de sessão não estarão mais seguras. Um adversário pode se passar por uma entidade legítima usando esse conhecimento, mas as sessões de comunicação anteriores não são comprometidas por esse ataque.

Ciclo de vida do gerenciamento de chaves

  1. Geração de chaves
    Primeira etapa: geração de uma chave de criptografia usando um conjunto de regras aprovado, incluindo o uso de um gerador pseudo-aleatório.
  2. Instalação da chave
    Em seguida, passamos ao processo de instalação, configuração e teste do material de chaveamento, incluindo hardware, software e criptomódulos.
  3. Estabelecimento de chaves
    A distribuição de chaves entre duas ou mais entidades envolvidas na comunicação. O processo pode envolver a geração de chaves ou o acordo de chaves, em que uma nova chave é produzida como uma função das informações secretas (chave) possuídas pelas partes individuais da comunicação.

Exploraremos esse processo em detalhes mais adiante, pois ele diferencia a criptografia de chave privada simétrica da criptografia de chave pública assimétrica.

  1. Certificação da chave
    Agora a chave precisa ser certificada – uma autenticação que usa assinaturas digitais (emitidas por uma autoridade de certificação terceirizada) que associa inequivocamente a chave às fontes apropriadas. Os usuários são registrados como membros autorizados do domínio de segurança ao qual essas assinaturas digitais podem ser aplicadas.
  2. Uso da chave
    O uso da chave é o processo de garantir a disponibilidade operacional do material de chaveamento durante o período de criptografia aplicável das chaves. Dependendo do tipo de protocolos de estabelecimento de chaves, a chave pode ser temporária (chave de sessão) e precisar de revogação no final da expiração do certificado digital.
  3. Armazenamento de chaves
    As chaves de criptografia devem ser armazenadas com um alto grau de confidencialidade, integridade e disponibilidade (CIA). O local de armazenamento pode não ser uma memória ativa, mas apenas adquirido de uma memória operacional disponível para algoritmos criptográficos.
  4. Atualização e recuperação de chaves
    Mecanismos que permitem que entidades autorizadas atualizem e recuperem as chaves armazenadas na memória operacional. Isso segue o princípio de proteção de dados em repouso e é útil para reconstruir uma chave a partir de informações de chaveamento arquivadas.
  5. Revogação de chaves
    A chave é destruída ou cancelada quando nenhuma outra operação de gerenciamento de chaves é aplicável às entidades de origem associadas. Essas entidades podem ter concluído o processo de comunicação ou podem não ser mais elegíveis para o processo de certificação de chaves.

Estabelecimento de chave privada

Na criptografia de chave simétrica, a mesma chave secreta é usada para criptografia e descriptografia. Isso também é chamado de criptografia de chave privada. O esquema é o seguinte, exemplo:

  1. Alice inicia uma solicitação para acessar informações criptografadas; uma solicitação de recuperação da chave de criptografia de dados (DEK) é enviada a Bob.
  2. Alice também envia um certificado para verificação a Bob, que verifica essa assinatura com uma autoridade de certificação (CA) para autenticação.
  3. Bob então responde enviando seu certificado para Alice para autenticação e aceitação pela CA e inicia uma conexão TLS segura. Agora, Alice pode criptografar os dados usando a DEK fornecida por Bob. Os esquemas de criptografia usados nesse protocolo de troca de chaves incluem AES e Triple-DES.
  4. Ao receber esse texto cifrado, Bob usa a Key Encryption Key (KEK) para descriptografar os dados.
  5. A DEK pode ser armazenada por Alice até o final da sessão.

Estabelecimento de chave pública

A criptografia de chave assimétrica é uma combinação de uma chave pública e uma chave privada secreta usada para criptografia e descriptografia. Isso também é chamado de criptografia de chave pública. Funciona da seguinte forma:

  1. Alice e Bob verificam o certificado um do outro em uma CA para autenticação e aceitação mútua.
  2. Bob então responde à solicitação de Alice para enviar sua chave pública.
  3. Alice cria uma chave de sessão efêmera usando um mecanismo de troca de chaves que pode seguir um esquema algorítmico assimétrico, como a criptografia de curva elíptica, a troca de chaves Diffie-Hellman ou o protocolo RSA.
  4. Em seguida, Alice criptografa essa chave secreta com a chave pública de Bob. A chave resultante é usada para criptografar dados a serem enviados a Bob.
  5. Bob recebe esses dados e os descriptografa com sua própria chave privada.

Finalidade e objetivo da criptografia

Agora que examinamos dois processos, podemos ver que o objetivo dos esquemas de criptografia é garantir:

  • Autenticação da entidade: As entidades estão vivas e ativas, corroborando com ambas as partes.
  • Autenticação da origem dos dados: Cada parte é corroborada pela fonte de informações.
  • Autenticação de chave implícita: Somente o destinatário pretendido pode determinar a chave privada e usá-la para concluir o processo de criptografia/descriptografia.
  • Confirmação de chave: Confirma que o destinatário está de posse de sua chave secreta específica.
  • Autenticação de chave explícita: Garantir que a chave secreta fornecida esteja em posse do destinatário pretendido.

Fonte:

Douglas Bernardini

Cybersecurity Specialist & Cloud Computing Expert with +10 years experience in IT infrastructure.

Specialist delivering assets for development teams in Google Cloud Platform (GCP) and Amazon web services (AWS)

Hands-on cloud security enterprise architect, with experience in SIEM/SOC, IAM, cryptography, pentest, network topologies, operating systems, databases, and applications.

Experience in DevSecOps analysis to discover vulnerabilities in software, identifying CI/CD risks gaps and recommending secure-coding process (S-SDLC).