Pular para conteúdo

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

$ # Cifra de Cesar simples com tr (deslocamento de 3) $ echo "ATAQUE" | tr 'A-Z' 'D-ZA-C' $ DWDTXH $ $ # Revertendo (deslocamento -3, ou seja, +23) $ echo "DWDTXH" | tr 'A-Z' 'X-ZA-W' $ ATAQUE

📝 Exercícios de Fixação

  1. Básico: Cifre a palavra "SENHA" usando a Cifra de César com deslocamento 5.
  2. Básico: Explique com suas palavras o Princípio de Kerckhoffs e por que ele é importante.
  3. Intermediário: Por que a Cifra de César é insegura mesmo escondendo o deslocamento usado?
  4. Intermediário: Qual a diferença fundamental entre criptografia simétrica e assimétrica?
  5. 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.

  1. Escolha uma linguagem (Python é uma boa opção).
  2. Receba um texto cifrado como entrada.
  3. Para cada deslocamento de 1 a 25, aplique a decifragem e imprima o resultado.
  4. Identifique visualmente qual deslocamento produz um texto com sentido.

Ir para Aula 04