Trilha 13

🔐 Segurança e criptografia

Quase tudo em criptografia nasce de uma única ideia: operações fáceis de fazer e inviáveis de desfazer. Multiplicar dois primos é trivial; fatorar o produto, não. Calcular um hash é instantâneo; revertê-lo, impossível. Esta trilha constrói, camada por camada, o que essa assimetria permite: funções hash, cifras simétricas, chave pública, assinaturas e certificados — até montar o HTTPS inteiro e terminar onde a segurança real costuma falhar, que é a aplicação. As demonstrações usam SHA-256 de verdade e a aritmética modular real, com números pequenos o bastante para caber na tela.

13.1

Funções hash criptográficas

Efeito avalanche, colisões e o paradoxo do aniversário. Salt, rainbow tables e por que senhas exigem funções deliberadamente lentas.

Disponível
13.2

Criptografia simétrica

XOR, one-time pad e AES. Os modos de operação — e a demonstração de que uma cifra forte no modo errado não esconde absolutamente nada.

Disponível
13.3

Criptografia de chave pública

Diffie-Hellman, RSA e curvas elípticas: como combinar um segredo por um canal que todos escutam. E o que os computadores quânticos ameaçam.

Disponível
13.4

Assinaturas e certificados

Assinatura digital, HMAC vs assinatura, X.509 e a cadeia de confiança que termina nas ~150 raízes instaladas na sua máquina.

Disponível
13.5

TLS e HTTPS

O handshake mensagem por mensagem, sigilo futuro, ataques de downgrade — e o que o HTTPS não esconde de quem observa a rede.

Disponível
13.6

Autenticação na web

Sessões, JWT, XSS, CSRF, OAuth, MFA e passkeys. Onde a segurança de verdade costuma falhar: na aplicação, não na matemática.

Disponível
A regra que atravessa a trilha inteira: entender criptografia serve para escolher e usar bem as ferramentas certas — não para implementá-las. Código criptográfico correto na teoria ainda vaza a chave por canais laterais como tempo de execução e cache. Em produção, use bibliotecas maduras e auditadas: libsodium, a cryptography do Python, a Web Crypto API.
Conexões com outras trilhas: Hash tables por dentro (trilha 04) mostra o outro tipo de hash — o não criptográfico, feito para velocidade; HTTP e HTTPS (trilha 09) situa o TLS dentro da pilha de rede; e Segurança no navegador (trilha 10) aprofunda a same-origin policy e o CORS.