Aula 03 – Fundamentos de Criptografia 🔐
Bem-vindo à parte mais matemática (e mais fascinante) do curso! Nesta aula você vai entender os conceitos que sustentam toda a criptografia moderna, dos cadeados de cifra de César aos algoritmos que protegem o seu banco.
🧐 O que é Criptografia?
Criptografia é a ciência de transformar informação legível (texto claro) em algo ilegível (texto cifrado) para quem não possui a chave correta — e de reverter esse processo para quem possui.
| Termo | Definição |
|---|---|
| Texto claro (plaintext) | A informação original, legível |
| Texto cifrado (ciphertext) | A informação transformada, ilegível sem a chave |
| Chave | O segredo que controla a cifragem/decifragem |
| Algoritmo (cifra) | A regra matemática que transforma texto claro em cifrado |
graph LR
A["Texto Claro"] -- "Cifragem + Chave" --> B["Texto Cifrado"]
B -- "Decifragem + Chave" --> A 📜 Um Pouco de História: a Cifra de César
Uma das cifras mais antigas conhecidas — usada por Júlio César — desloca cada letra do alfabeto um número fixo de posições.
- Chave: deslocamento de 3
- Texto claro:
ATAQUE - Texto cifrado:
DWDTXH
Por que isso importa hoje?
A cifra de César é trivialmente quebrável (só 25 chaves possíveis), mas ilustra o conceito fundamental que toda cifra moderna usa: transformação reversível controlada por uma chave.
🔑 O Princípio de Kerckhoffs
Um dos pilares da criptografia moderna, formulado no século XIX:
Princípio de Kerckhoffs
A segurança de um sistema criptográfico deve depender apenas do sigilo da chave, nunca do sigilo do algoritmo.
Isso significa que algoritmos como AES e RSA são públicos — qualquer pessoa pode estudar seu funcionamento. A segurança vem inteiramente de manter a chave em segredo, não de "esconder como o sistema funciona" (isso se chama security through obscurity e é considerado uma prática ruim).
🌳 As Duas Grandes Famílias
Existem duas abordagens fundamentais que veremos em detalhe nas próximas duas aulas:
| Tipo | Como funciona | Exemplo | Vantagem |
|---|---|---|---|
| Simétrica | Mesma chave cifra e decifra | AES, DES | Rápida |
| Assimétrica | Um par de chaves (pública/privada) | RSA, Diffie-Hellman | Resolve o problema de troca de chaves |
💻 Sua Primeira Cifra em Terminal
📝 Exercícios de Fixação
- Básico: Cifre a palavra "SENHA" usando a Cifra de César com deslocamento 5.
- Básico: Explique com suas palavras o Princípio de Kerckhoffs e por que ele é importante.
- Intermediário: Por que a Cifra de César é insegura mesmo escondendo o deslocamento usado?
- Intermediário: Qual a diferença fundamental entre criptografia simétrica e assimétrica?
- Desafio: Pesquise o que é um "ataque de força bruta" contra a Cifra de César e calcule quantas tentativas, no máximo, seriam necessárias para quebrá-la.
🚀 Mini-Projeto: Quebrador de Cifra de César
Objetivo: Escrever um script que tenta todos os 25 deslocamentos possíveis de uma Cifra de César e imprime os resultados, para você identificar visualmente qual é o texto original.
- Escolha uma linguagem (Python é uma boa opção).
- Receba um texto cifrado como entrada.
- Para cada deslocamento de 1 a 25, aplique a decifragem e imprima o resultado.
- Identifique visualmente qual deslocamento produz um texto com sentido.