Parte II · 3 — Primitivas assimétricas
O salto de 1976: cada parte tem um par de chaves — uma pública, uma privada. É o que permite combinar segredos e provar autoria entre estranhos, sem nunca ter compartilhado nada. O preço: é ordens de grandeza mais lenta que a simétrica — por isso sistemas reais são híbridos.
3.1 A ideia: função de mão única com alçapão
A assimetria repousa em funções de alçapão (trapdoor): fáceis de calcular numa direção, inviáveis de inverter — a menos que você tenha um segredo (a chave privada). A segurança vem de problemas matemáticos que acreditamos ser difíceis (segurança computacional, não perfeita):
| Família | Problema difícil | Primitivas |
|---|---|---|
| Fatoração | Fatorar n = p·q de inteiros enormes. |
RSA |
| Logaritmo discreto | Achar x em g^x mod p. |
Diffie-Hellman, DSA |
| Log. discreto em curvas elípticas | O mesmo, sobre uma curva elíptica. | ECDH, ECDSA, Ed25519 |
Todos esses problemas caem diante de um computador quântico (algoritmo de Shor) — o motivo da Parte IV (pós-quântica).
3.2 Duas operações, não uma
Confundir as duas é erro comum. A criptografia assimétrica faz coisas distintas com o par de chaves:
| Operação | Quem usa a chave pública | Quem usa a privada | Garante |
|---|---|---|---|
| Cifrar / encapsular chave (KEM) | o remetente cifra para você | você decifra | confidencialidade |
| Assinar | qualquer um verifica sua assinatura | você assina | autenticidade + não-repúdio |
Repare na inversão: para sigilo, a chave pública cifra e a privada abre; para assinatura, a privada assina e a pública verifica. A mesma matemática, papéis trocados.
3.3 Os algoritmos que importam
- Diffie–Hellman (DH) / ECDH — troca de chaves: dois lados derivam um
segredo comum trocando só valores públicos. A versão efêmera (ECDHE) dá forward secrecy e é o coração do handshake TLS.
- RSA — versátil (cifra e assina), mas lento e com chaves grandes;
nunca use "RSA cru" — só com padding seguro (OAEP para cifra, PSS para assinatura). Em retirada gradual a favor de curvas.
- Curvas elípticas — mesma segurança com chaves muito menores:
- X25519 — troca de chaves (o ECDH moderno).
- Ed25519 — assinaturas rápidas, determinísticas, sem armadilhas de
implementação. Default para assinar hoje.
3.4 Por que chaves elípticas são tão menores
Para o mesmo nível de segurança, a matemática das curvas elípticas é muito mais "densa" que a fatoração:
| Nível de segurança | RSA / DH | Curva elíptica |
|---|---|---|
| 128 bits | 3072 bits | 256 bits (P-256, Curve25519) |
| 256 bits | 15360 bits | 512 bits |
Chaves menores ⇒ handshakes mais rápidos, menos banda, menos CPU. É por isso que a web migrou de RSA para ECDHE + Ed25519.
3.5 O modelo híbrido (e a ponte para os protocolos)
Como a assimétrica é lenta, ninguém cifra dados com ela. O padrão universal:
- A assimétrica (ECDHE) estabelece uma chave de sessão simétrica.
- A simétrica (AES-GCM / ChaCha20-Poly1305) protege os dados, rápida.
- Uma assinatura (Ed25519) ou certificado autentica quem é quem.
Esse encaixe das três primitivas — troca de chave, cifra simétrica, assinatura — é o que um protocolo coreografa. É exatamente o que o TLS faz a cada conexão HTTPS, tema da Parte III.
Referência densa: o detalhe matemático de DH, RSA (OAEP/PSS), ElGamal, DSAECDSAEdDSA e tamanhos equivalentes está em
05-assimetrica. Fim da Parte II — as caixas-pretas estão abertas. A Parte III — Protocolos (em construção) as coreografa em TLS, Signal e PKI.