Definição e objetivo
Criptografia de dados é o conjunto de técnicas que codificam informações para que apenas pessoas ou sistemas autorizados consigam compreendê-las. Na prática, ela transforma um dado “em claro” (legível) em “cifrado” (ilegível) usando um algoritmo e, quase sempre, uma chave. Mesmo que um terceiro capture o conteúdo, ele não consegue ler sem a chave correspondente.
Um modelo simples de funcionamento
Pense em duas etapas: cifrar e decifrar.
- Cifrar: um algoritmo aplica operações ao dado usando uma chave, produzindo o texto cifrado.
- Decifrar: o mesmo algoritmo, com a chave adequada (ou um mecanismo equivalente), reverte o processo e retorna ao dado original.
Em sistemas modernos, a “força” do esquema tende a depender de como as chaves são geradas, protegidas e rotacionadas, e também de como a aplicação valida identidades e protege a comunicação. Algoritmos bem estudados ajudam, mas não resolvem sozinhos problemas como chaves expostas, configurações incorretas ou autenticação ausente.
O que a criptografia protege (e o que pode ficar de fora)
É comum reduzir criptografia a “confidencialidade”, mas ela não cobre automaticamente tudo o que preocupa em segurança. Dependendo do esquema, você pode obter:
- Confidencialidade: impedir leitura por não autorizados.
- Integridade: detectar alterações no dado durante o transporte/armazenamento.
- Autenticidade: garantir que o originador ou destino é realmente quem diz ser.
Limitações importantes:
- Erros de implementação: vulnerabilidades podem surgir da forma como a criptografia é usada, e não apenas do algoritmo.
- Gestão de chaves: chaves fracas, reutilizadas demais, armazenadas sem proteção ou perdidas podem inviabilizar a segurança ou o acesso legítimo.
- Metadados e contexto: mesmo com dados cifrados, pode haver informações observáveis (por exemplo, padrões de comunicação) que revelem aspectos do uso.
Diferença entre criptografia “em trânsito” e “em repouso”
- Em trânsito: protege dados enquanto trafegam entre sistemas. O objetivo é impedir que interceptações revelem o conteúdo.
- Em repouso: protege dados armazenados (por exemplo, em disco ou banco). O objetivo é reduzir o impacto de acesso indevido ao armazenamento.
Na prática, um sistema completo tende a combinar ambas. Ainda assim, é possível que parte do risco permaneça se a aplicação não controlar acesso, não verificar identidades corretamente ou não proteger as chaves.
Verificações práticas para reduzir erros comuns
Você pode checar alguns pontos sem entrar em detalhes específicos de produtos:
- Confidencialidade com integridade: quando houver comunicação, procure mecanismos que não apenas cifrem, mas também detectem alteração dos dados.
- Validação de identidade: verifique se o sistema autentica os participantes (por exemplo, como uma conexão é estabelecida) e não aceita “qualquer” parceiro.
- Gestão de chaves: avalie como as chaves são geradas, armazenadas, rotacionadas e revogadas em caso de suspeita.
- Configuração e versões: esquemas criptográficos mudam ao longo do tempo; confirme se a aplicação usa práticas atuais e evita padrões desatualizados.
Se você estiver definindo requisitos internos, vale mapear modelo de ameaça: quem pode atacar, como (interceptação, acesso ao armazenamento, adulteração) e quais propriedades são essenciais (leitura, alteração, falsificação). Isso ajuda a escolher o tipo de criptografia e o nível de verificação necessários.
Limite que pode mudar a avaliação
Mesmo quando a criptografia é “correta”, a segurança pode falhar por fatores operacionais: chaves mal protegidas, credenciais fracas usadas para obter chaves, ausência de autenticação, ou processos de rotatividade e auditoria inexistentes. Portanto, a melhor checagem é olhar o ciclo completo: cifrar, transportar/armazenar, recuperar e controlar chaves. Se qualquer etapa for frágil, a proteção do conteúdo pode não se materializar.
