Aula 1 de 4 · 9 min
Criptografia simétrica, criptografia assimétrica e hashing
Três ferramentas criptográficas diferentes garantem três coisas diferentes. Confundi-las é a fonte mais comum de falsa confiança.
As pessoas costumam dizer “está criptografado” como se isso resolvesse uma questão de segurança. Não resolve, porque criptografia não é uma coisa só. Esta aula cobre os três blocos fundamentais por trás de quase toda afirmação de proteção digital: criptografia simétrica, criptografia assimétrica e hashing. Cada uma garante algo diferente, e saber qual delas está em jogo diz o que realmente está sendo protegido.
Criptografia simétrica: uma chave compartilhada
O Learning Center da Cloudflare descreve a criptografia simétrica de forma simples: “existe apenas uma chave, e todas as partes que se comunicam usam a mesma chave (secreta) tanto para criptografar quanto para descriptografar”. O Advanced Encryption Standard (AES) é o exemplo padrão hoje, tendo substituído o mais antigo Data Encryption Standard (DES) depois que o tamanho curto da chave do DES o tornou quebrável por força bruta. A criptografia simétrica é rápida e é o que realmente embaralha a maior parte dos seus dados, seja um arquivo em disco ou o corpo de uma página web carregada por HTTPS. Seu problema central é a distribuição: os dois lados precisam da mesma chave secreta, e levar essa chave até a outra parte sem que ninguém mais a veja é exatamente o problema que a criptografia assimétrica resolve.
Criptografia assimétrica: duas chaves que funcionam como um par
Na criptografia assimétrica, ou de chave pública, existem duas chaves matematicamente ligadas: “uma chave é usada para criptografar, e uma chave diferente é usada para descriptografar”, segundo a Cloudflare. A chave de criptografia pode ser divulgada para qualquer pessoa — daí “chave pública” — enquanto a chave de descriptografia correspondente permanece privada. Dados trancados com a chave pública só podem ser destrancados com a chave privada. É isso que permite que duas pessoas que nunca se encontraram cheguem a um segredo compartilhado por uma rede aberta, exatamente o que acontece no início de toda conexão HTTPS (a próxima aula aborda esse aperto de mão em detalhes). RSA e criptografia de curvas elípticas são os algoritmos comuns por trás disso hoje.
Hashing: uma impressão digital, não um cadeado
Uma função de hash não é nenhuma das duas coisas anteriores: ela não tranca nada, e não existe chave para destrancá-la. O NIST a define como uma função que “mapeia uma sequência de bits de comprimento arbitrário para uma sequência de bits de comprimento fixo” — em termos simples, ela transforma qualquer arquivo ou mensagem em uma impressão digital curta e de tamanho fixo. O NIST especifica as propriedades que uma função de hash aprovada precisa ter: deve ser computacionalmente inviável encontrar uma entrada que produza uma saída específica (unidirecionalidade), e inviável encontrar duas entradas diferentes que produzam a mesma saída (resistência a colisões). É por isso que o hashing verifica integridade — este arquivo mudou? — e protege senhas armazenadas: um serviço pode conferir uma senha contra seu hash armazenado sem nunca guardar a senha em si. Funções de hash mais antigas, como MD5 e SHA-1, não são mais consideradas seguras contra um atacante determinado, e é por isso que os sistemas modernos usam as famílias SHA-2 ou SHA-3.
O que cada uma realmente garante
| Ferramenta | O que garante | O que não garante |
|---|---|---|
| Criptografia simétrica | Confidencialidade, se a chave compartilhada permanecer secreta | Uma forma segura de trocar essa chave em primeiro lugar |
| Criptografia assimétrica | Uma forma de trocar um segredo, e de verificar identidade (veja a próxima aula sobre assinaturas) | Velocidade; é bem mais lenta do que a criptografia simétrica para grandes volumes de dados |
| Hashing | Integridade: prova de que os dados não foram alterados, e uma forma de verificar segredos sem armazená-los | Confidencialidade; um hash não foi projetado para ser revertido, mas também não foi projetado para esconder o tamanho ou a presença dos dados |
Como elas se combinam na prática
Quase nada usa apenas uma dessas técnicas. Uma conexão segura típica usa criptografia assimétrica brevemente, para chegar a um segredo compartilhado, depois passa para a criptografia simétrica, mais rápida, para os dados de fato, enquanto o hashing roda o tempo todo para garantir que nada enviado foi alterado no caminho. Reconhecer esses três papéis é o que faz o resto deste curso — assinaturas, certificados, TLS e criptografia de ponta a ponta — fazer sentido como combinações do mesmo pequeno conjunto de ferramentas, em vez de mágica separada.
Para lembrar
- A criptografia simétrica usa uma chave compartilhada tanto para criptografar quanto para descriptografar; é rápida, mas exige uma forma segura de compartilhar a chave.
- A criptografia assimétrica usa uma chave pública e uma chave privada como um par, resolvendo o problema de distribuição de chaves que a criptografia simétrica tem.
- O hashing produz uma impressão digital de tamanho fixo dos dados; protege integridade e segredos armazenados, não confidencialidade — não existe chave para destrancar um hash.
- Sistemas reais combinam as três técnicas: criptografia assimétrica para chegar a um segredo, criptografia simétrica pela velocidade, hashing para detectar adulteração.
- Algoritmos mais antigos (DES, MD5, SHA-1) têm fraquezas conhecidas; o AES e as famílias SHA-2/SHA-3 são os padrões atuais.
Teste seus conhecimentos
1. Qual é a característica que define a criptografia simétrica?
- Ela usa uma chave pública e uma chave privada
- Ela usa uma única chave secreta compartilhada tanto para criptografar quanto para descriptografar — Certo.
- Ela não pode ser usada para grandes volumes de dados
- Ela nunca exige chave alguma
A criptografia simétrica depende de uma única chave compartilhada que as duas partes já possuem; o desafio é distribuir essa chave com segurança.
2. Qual problema a criptografia assimétrica resolve, que a criptografia simétrica não resolve sozinha?
- Tornar a criptografia mais rápida
- Permitir que duas partes cheguem a um segredo compartilhado sem se encontrar antes — Certo.
- Tornar as senhas mais fáceis de lembrar
- Impedir que os dados sejam apagados
A criptografia de chave pública permite que uma chave pública seja compartilhada abertamente enquanto só a chave privada correspondente consegue descriptografar, permitindo a troca segura de chaves em uma rede aberta.
3. Por que uma função de hash não pode ser usada para manter uma mensagem em segredo?
- Hashes são sempre curtos demais para conter uma mensagem
- Um hash é unidirecional por design; não existe chave para revertê-lo de volta aos dados originais — Certo.
- Funções de hash são ilegais para uso em criptografia
- Hashes só funcionam em imagens, não em texto
As funções de hash são construídas de forma que recuperar a entrada original a partir da saída seja computacionalmente inviável — essa propriedade (unidirecionalidade) as torna úteis para verificação de integridade e armazenamento de senhas, não para confidencialidade.
4. Qual par de algoritmos é considerado ultrapassado devido a fraquezas conhecidas?
- AES e RSA
- DES e MD5 — Certo.
- SHA-2 e criptografia de curvas elípticas
- TLS e HTTPS
O tamanho curto da chave do DES e as fraquezas de colisão do MD5 fazem com que os sistemas modernos usem AES e as famílias SHA-2/SHA-3 no lugar deles.
Praticar com o FireAI
Coloque esta lição em prática no seu próprio Mac.
- Inspeção profunda, sem descriptografar nada — Tenha detalhes reais sobre uma conexão segura sem que o FireAI leia nunca o que tem lá dentro.
- O que fica no seu Mac, e as únicas vezes em que o FireAI se conecta sozinho — Leia a lista completa do que o FireAI envia, em vez de confiar na palavra de um firewall.
Fontes
- Cloudflare Learning Center: What is encryption?
- NIST Computer Security Resource Center Glossary: hash function
Coloque em prática no seu Mac
Teste todos os recursos grátis por 17 dias, sem cartão.