Aula 7 – Criptografia: Fundamentos

Explorando os conceitos essenciais da criptografia moderna e sua aplicação prática na proteção de informações digitais

LABORATÓRIO PRÁTICO: DESAFIO DE CRIPTOGRAFIA

Desafio

Objetivo da Atividade

Nesta atividade, vocês atuarão como analistas de segurança responsáveis por investigar dados após um incidente em uma organização.

Os objetivos são:

  • Aplicar técnicas de codificação e criptografia
  • Utilizar ferramentas online para análise de dados
  • Desenvolver raciocínio investigativo
  • Identificar vulnerabilidades em um cenário simulado

Contexto do Cenário

A empresa TechSecure Solutions sofreu um incidente de segurança.

Durante a análise inicial, foi identificado que:

  • Parte das informações foi criptografada utilizando técnicas simples
  • Alguns dados foram apenas codificados
  • Há indícios de exposição de credenciais sensíveis
  • Parte dos dados pode estar incompleta, alterada ou inserida como distração

Cada equipe foi designada para investigar um conjunto específico de evidências.

Organização da Atividade

  • Os alunos estão divididos em grupos
  • Cada grupo receberá um conjunto exclusivo de desafios
  • Os desafios serão disponibilizados apenas no momento da aula
  • Não haverá acesso prévio ao conteúdo
  • As fases devem ser resolvidas em sequência, quando aplicável

Regra de Sigilo

  • Os desafios são diferentes para cada grupo
  • Não é permitido compartilhar informações entre grupos
  • Qualquer tentativa de troca de respostas comprometerá a avaliação

Regras Gerais

  • Não utilizar dados reais
  • Utilizar apenas ferramentas online
  • Registrar o raciocínio utilizado em cada etapa
  • Justificar tecnicamente cada decisão

Ferramentas Permitidas

ESTRUTURA DO DESAFIO

Cada grupo receberá um conjunto contendo entre 6 e 10 fases, podendo incluir:

  • Codificação Base64
  • Cifra de César
  • Hash (MD5 ou similar)
  • Múltiplas camadas de codificação
  • Dados com ruído
  • Fragmentação de informação
  • Dados falsos (decoy)
  • Correlação entre informações

⚠️ Importante:

  • Nem todas as fases indicarão qual técnica deve ser utilizada
  • Algumas informações podem ser irrelevantes ou enganosas
  • Nem todas as etapas possuem apenas uma abordagem possível

NATUREZA DOS DESAFIOS

Os desafios podem envolver:

1. Identificação de Técnica

O grupo deverá reconhecer qual método foi utilizado sem instrução direta.

2. Múltiplas Etapas

Uma informação pode exigir mais de uma transformação para ser compreendida.

3. Dados com Ruído

Parte da informação pode estar misturada com conteúdo irrelevante.

4. Fragmentação

Os dados podem estar divididos e fora de ordem.

5. Validação

Nem toda informação obtida será útil ou verdadeira.

6. Correlação

Os dados finais devem fazer sentido dentro do contexto do incidente.

ENTREGA FINAL

Cada grupo deverá apresentar:

  1. As informações recuperadas (login, senha, servidor, etc.)
  1. As técnicas utilizadas em cada fase
  1. O raciocínio adotado em cada etapa
  1. As decisões tomadas em situações de incerteza

ANÁLISE FINAL

O grupo deverá responder:

  • As técnicas utilizadas eram seguras?
  • Quais vulnerabilidades foram identificadas?
  • Houve dados irrelevantes ou enganosos?
  • Como validaram as informações obtidas?
  • Como o incidente poderia ter sido evitado?

CRITÉRIOS DE AVALIAÇÃO

  • Correção das respostas
  • Aplicação adequada das técnicas
  • Clareza na explicação
  • Capacidade de investigação
  • Justificativa técnica das decisões
  • Postura diante de dados ambíguos

Observação Final

Esta atividade simula um cenário real de análise em segurança da informação. O foco não está apenas na resposta final, mas no processo investigativo, na tomada de decisão e na capacidade de validar informações em um ambiente incerto.


Capítulo 1

Introdução à Criptografia

A arte e a ciência de proteger informações através dos séculos, desde as antigas civilizações até a era digital moderna

O que é Criptografia?

Proteção de Informações

Técnica para proteger dados transformando-os em códigos secretos que apenas destinatários autorizados podem decifrar

Origem Histórica

Do grego kryptós (oculto) + graphos (escrever) — a escrita secreta que atravessa milênios

Objetivos Principais

Garantir confidencialidade, integridade e autenticidade das informações em qualquer meio de comunicação

A História da Criptografia

1

Antiguidade Clássica

Júlio César utilizava a cifra de César: um deslocamento simples no alfabeto para proteger mensagens militares. Método básico, mas revolucionário para a época

2

Uso Militar e Diplomático

Desde a antiguidade, governos e exércitos desenvolveram sistemas cada vez mais complexos para proteger comunicações estratégicas e segredos de estado

3

Era da Computação

Após a Segunda Guerra Mundial, com o advento dos computadores, a criptografia evoluiu dramaticamente, tornando-se matemática avançada e ciência da computação

"A base da criptografia moderna reside nos princípios desenvolvidos há milhares de anos"

Terminologia Essencial

Texto Aberto

Mensagem original em formato legível e compreensível, antes de qualquer processo de criptografia ser aplicado


Texto Cifrado

Mensagem após o processo de criptografia — codificada e completamente ilegível sem a chave adequada para decifrá-la

Chave Criptográfica

Informação secreta usada tanto para cifrar quanto para decifrar mensagens. É o elemento crítico da segurança


Cifrar e Decifrar

Processos de transformar texto aberto em cifrado (cifrar) e reverter texto cifrado para legível (decifrar)

Capítulo 2

Criptografia Simétrica

A forma mais antiga e eficiente de criptografia, onde uma única chave secreta protege todas as comunicações

O que é Criptografia Simétrica?

Conceito Fundamental

Sistema que utiliza exatamente a mesma chave secreta tanto para cifrar quanto para decifrar dados, garantindo simetria no processo

Algoritmos Clássicos

DES (Data Encryption Standard) e AES (Advanced Encryption Standard) são os exemplos mais conhecidos e amplamente utilizados

Vantagem Principal

Extrema rapidez e eficiência computacional para processar grandes volumes de dados, ideal para sistemas que exigem alto desempenho

Desafios da Criptografia Simétrica

Compartilhamento Seguro

O maior desafio é distribuir a chave secreta de forma segura entre as partes sem que seja interceptada

Risco de Interceptação

Se a chave for capturada por terceiros, toda a segurança do sistema é comprometida instantaneamente

Modos de Operação

ECB, CBC, CFB e OFB são diferentes modos que balanceiam segurança e eficiência em contextos variados

Algoritmos Simétricos Importantes

56

DES - Bits de Chave

Algoritmo pioneiro que revolucionou a criptografia, mas hoje considerado vulnerável devido ao tamanho limitado da chave

256

AES - Bits Máximos

Padrão atual de criptografia, oferecendo chaves de 128, 192 e 256 bits para segurança robusta e confiável

3

Principais Alternativas

Blowfish e 3DES (Triple DES) oferecem opções balanceadas entre segurança elevada e desempenho otimizado

Diagrama simplificado do funcionamento do AES, mostrando como blocos de dados são transformados através de múltiplas rodadas de criptografia

Capítulo 3

Criptografia Assimétrica

A revolução que permitiu comunicação segura entre pessoas que nunca se encontraram, usando pares de chaves matemáticas

Fundamentos da Criptografia Assimétrica

Chave Pública

Disponível para todos cifrarem mensagens destinadas ao proprietário

Chave Privada

Mantida em segredo absoluto, permite decifrar mensagens recebidas

Algoritmos RSA e ECC

Padrões matemáticos que garantem a segurança do sistema

Comunicação Direta

Possibilita troca segura sem compartilhamento prévio de chaves secretas

Como Funciona na Prática

01

Distribuição da Chave Pública

Qualquer pessoa pode obter e usar a chave pública para cifrar mensagens destinadas ao proprietário do par de chaves

02

Criptografia com Chave Pública

O remetente utiliza a chave pública do destinatário para transformar a mensagem em texto cifrado impossível de ler

03

Decriptografia com Chave Privada

Somente o dono da chave privada correspondente pode decifrar e ler a mensagem original em texto claro

04

Aplicações Avançadas

Usada extensivamente para autenticação de identidade, assinatura digital e estabelecimento seguro de canais de comunicação

Vantagens e Desvantagens

Vantagens

  • Muito mais segura para troca inicial de informações entre partes desconhecidas
  • Elimina o problema de distribuição segura de chaves secretas
  • Permite autenticação e assinaturas digitais confiáveis
  • Base para infraestruturas de chave pública (PKI)

Desvantagens

  • Computacionalmente muito mais lenta que criptografia simétrica
  • Requer chaves significativamente maiores para segurança equivalente
  • Processamento intensivo de recursos de hardware
  • Geralmente usada em conjunto com simétrica para otimizar desempenho

Representação visual do processo de criptografia assimétrica: a chave pública cifra, enquanto apenas a chave privada correspondente pode decifrar

Capítulo 4

Funções Hash e Assinaturas Digitais

As impressões digitais do mundo digital, garantindo integridade e autenticidade de informações

O que são Funções Hash?

Definição

Algoritmos matemáticos que transformam dados de qualquer tamanho em um valor fixo de comprimento específico, chamado resumo ou hash

Propriedades Cruciais

  • Determinística: mesma entrada sempre gera mesmo hash
  • Rápida de calcular
  • Resistente a colisões
  • Irreversível

Exemplos Principais

SHA-256 é o padrão atual amplamente utilizado. MD5, apesar de popular, é considerado obsoleto e inseguro para uso criptográfico

Aplicações das Funções Hash

Verificação de Integridade

Garante que arquivos não foram alterados durante download ou transmissão. Qualquer mudança mínima no arquivo resulta em hash completamente diferente

Assinaturas Digitais

Servem como base para criar assinaturas digitais, permitindo verificar autenticidade e autoria de documentos eletrônicos

Armazenamento de Senhas

Senhas são armazenadas como hashes, não em texto claro, protegendo usuários mesmo se o banco de dados for comprometido

Blockchain e Criptomoedas

Fundamentais para tecnologias blockchain, garantindo imutabilidade e integridade das transações registradas

Assinaturas Digitais

1

Garantia de Autenticidade

Comprovam que a mensagem ou documento foi realmente criado pelo autor declarado, não por um impostor

2

Processo de Criação

Geradas aplicando a chave privada do remetente ao hash da mensagem, criando uma assinatura única e verificável

3

Verificação Pública

Qualquer pessoa com acesso à chave pública correspondente pode verificar a autenticidade da assinatura

4

Aplicações Práticas

Essenciais em documentos eletrônicos, contratos digitais, certificados SSL/TLS e transações financeiras online

Fluxo completo de uma assinatura digital: criação do hash, assinatura com chave privada e verificação usando chave pública

Capítulo 5

Prática – Implementação Básica

Colocando a teoria em prática através de implementações simples e didáticas em Python

Implementando a Cifra de César em Python

Objetivo Educacional

Criar um código simples e direto que demonstra os conceitos fundamentais de chave, transformação de texto e reversibilidade da criptografia

A cifra de César é perfeita para iniciantes entenderem como a criptografia funciona na prática

Conceitos Demonstrados

  • Como uma chave (deslocamento) transforma texto
  • Processo de cifrar caractere por caractere
  • Reversibilidade: decifrar recupera mensagem original
  • Vulnerabilidade de algoritmos simples

Exemplo de Código (Cifra de César)

def cifra_cesar(texto, chave, cifrar=True): resultado = "" for char in texto: if char.isalpha(): base = ord('A') if char.isupper() else ord('a') deslocamento = chave if cifrar else -chave novo_char = chr((ord(char) - base + deslocamento) % 26 + base) resultado += novo_char else: resultado += char return resultado # Exemplo de uso mensagem = "HELLO WORLD" chave = 3 cifrado = cifra_cesar(mensagem, chave, cifrar=True) decifrado = cifra_cesar(cifrado, chave, cifrar=False) print(f"Original: {mensagem}") print(f"Cifrado: {cifrado}") print(f"Decifrado: {decifrado}")

Implementação Simples de Função Hash (SHA-256)

import hashlib def gerar_hash(mensagem): # Converte string para bytes mensagem_bytes = mensagem.encode('utf-8') # Cria objeto hash SHA-256 hash_obj = hashlib.sha256() # Atualiza com a mensagem hash_obj.update(mensagem_bytes) # Retorna hash em hexadecimal return hash_obj.hexdigest() # Exemplo de uso texto = "Criptografia é fundamental" hash_resultado = gerar_hash(texto) print(f"Hash SHA-256: {hash_resultado}")

Verificação de Integridade

Este código demonstra como gerar um hash SHA-256 usando a biblioteca hashlib do Python, que é confiável e amplamente testada

O hash gerado serve como impressão digital única do conteúdo, permitindo verificação rápida se a mensagem foi alterada

Qualquer modificação, por menor que seja, resulta em hash completamente diferente

Demonstração Prática: Assinatura Digital Simples

Gerar Par de Chaves

Criar chave pública e privada usando biblioteca cryptography com algoritmo RSA de 2048 bits

Assinar Mensagem

Gerar hash SHA-256 da mensagem e aplicar chave privada para criar assinatura digital única

Verificar Assinatura

Usar chave pública para validar que a assinatura corresponde à mensagem e foi criada com a chave privada correta

A implementação completa requer a biblioteca cryptography: pip install cryptography

Exemplo visual de código comentado com execução e resultados, demonstrando os três algoritmos implementados: Cifra de César, SHA-256 e Assinatura Digital

Boas Práticas em Criptografia

Gestão de Chaves

Nunca reutilizar chaves secretas entre diferentes contextos ou aplicações. Implementar rotação periódica de chaves

Algoritmos Atualizados

Manter algoritmos atualizados conforme avanços tecnológicos e descobertas de vulnerabilidades. Abandonar padrões obsoletos

Bibliotecas Confiáveis

Sempre usar bibliotecas criptográficas bem estabelecidas, testadas e mantidas pela comunidade. Nunca criar algoritmos próprios

Auditoria e Testes

Realizar auditorias de segurança regulares e testes de penetração para identificar vulnerabilidades antes de atacantes

Desafios Atuais e Futuro da Criptografia

1
2
3
4
5
1

Computação Quântica

Ameaça iminente aos algoritmos atuais

2

Criptografia Pós-Quântica

Novos algoritmos resistentes sendo desenvolvidos

3

Padronização Internacional

NIST liderando esforços para novos padrões globais

4

Educação e Conscientização

Crescente importância da formação em segurança digital para todos

5

Aplicações Emergentes

IoT, blockchain e inteligência artificial demandam novas soluções criptográficas

O futuro da criptografia está sendo escrito agora, com pesquisadores correndo contra o relógio para proteger dados contra ameaças quânticas

Conclusão: A Criptografia no Mundo Digital

Pilar da Segurança

A criptografia é o alicerce fundamental para toda a segurança da informação no mundo digital moderno

Teoria e Prática

Combinação sofisticada de matemática avançada e implementação computacional eficiente

Ferramenta Essencial

Indispensável para proteger dados sensíveis, privacidade pessoal e manter a confiança nas comunicações online

Próximos Passos

Aprofundar o estudo através de projetos práticos, experimentação com bibliotecas e aplicação em cenários reais de segurança

Made with