CRIPTOGRAFIA: conceitos, técnicas e padrões

8.4 Introdução à Criptografia

A criptografia tem uma história de milênios, com o objetivo de transformar mensagens em formas ilegíveis para terceiros não autorizados. Hoje, o campo distingue entre cifras (transformação bit a bit, sem considerar a linguagem) e códigos (substituição de palavras). O modelo básico envolve uma função de criptografia E com uma chave K que gera o texto cifrado a partir do texto simples P, e a função de descriptografia D que reverte C em P.

8.4.1 Introdução à criptografia

Três grandes grupos históricos contribuíram para a criptografia: militares, diplomatas, e pessoas privadas que desejam manter informação confidencial. Antes dos computadores, o segredo geralmente era o algoritmo conhecido apenas por quem realizava a criptografia; a chave era o segredo-chave que variava com o tempo. A ideia de que o segredo reside na chave (em vez do algoritmo) é associada a Auguste Kerckhoffs.

Notação comum: se E é a criptografia de P com chave K gerando C, então C = E_K(P) e P = D_K(C). A criptografia moderna assume que o algoritmo é público e a segurança depende da chave.

8.4.2 Dois princípios fundamentais da criptografia

Princípio 1 – Redundância: toda mensagem criptografada deve conter informações redundantes, para que o receptor possa verificar se a mensagem recebida é válida. Exemplo: se uma encomenda inclui apenas 3 bytes de dados, a redundância ajuda a impedir que o intruso envie dados inválidos que pareçam válidos.

Princípio 2 – Prevenção de reuso (anti-replay): mecanismos para impedir que mensagens antigas sejam reutilizadas. Ter um tempo válido (ex.: 60 segundos) ou um contador ajuda a filtrar mensagens antigas.

8.4.3 Cifras de substituição

Cifra de César é um caso particular de cifra de substituição monoalfabética, em que cada letra é deslocada por k posições no alfabeto. Em substituição monoalfabética, cada caractere é substituído por outro de forma fixa. Um criptoanalista pode usar estatísticas da língua (frequência de letras, digramas e trigramas) para adivinhar a substituição. Um exemplo simples ilustra como frequências ajudam a deduzir a chave.

8.4.4 Cifras de transposição

Cifras de transposição rearranjam a ordem das letras sem alterar os símbolos. A cifra de transposição por colunas usa uma chave sem repetições (ex.: NEGABUCK). A mensagem é escrita horizontalmente; a leitura se faz por colunas seguindo a ordem determinada pela chave. Quebrar envolve estimar o número de colunas, deduzir o tamanho da chave a partir de padrões de digramas/trigramas, e então ordenar as colunas para reconstruir o texto simples.

8.4.5 Chave única

O conceito de chave única (one-time pad, OTP) usa uma chave aleatória tão longa quanto a mensagem, com operações como XOR entre a mensagem e a chave para produzir o ciphertext. Teoricamente, OTP oferece segurança perfeita (informação nula na ciphertext). Na prática, a desvantagem é a distribuição e gestão de chaves extremamente grandes. A criptografia quântica (BB84) surge como uma forma de distribuir chaves de maneira segura.

Exemplo: se a mensagem "I love you" é convertida em ASCII de 7 bits e XOR com uma chave única, qualquer mensagem de tamanho correspondente pode ser gerada a partir do ciphertext, o que ilustra a propriedade de confidencialidade perfeita sob OTP.

A criptografia quântica BB84 descreve uma forma prática de distribuir chaves seguras usando fotões polarizados, com a presença de intrusos (p.ex., Trudy) sendo detectável pelas alterações nas bases de medição.

Resumo de tópicos (síntese rápida)

  • 8.4 Introdução à Criptografia: definição, notação, princípios de Kerckhoffs, uso de chave pública vs. segredo do algoritmo.
  • 8.4.1 Introdução: grupos históricos (militares, diplomatas, privados), o modelo de criptografia com chave e o papel da chave.
  • 8.4.2 Dois princípios fundamentais: redundância (verificação de validade) e prevenção de repetição (anti-replay).
  • 8.4.3 Cifras de substituição: César e substituição monoalfabética; uso de estatísticas de idioma para quebrar a cifra.
  • 8.4.4 Cifras de transposição: rearranjo de letras; exemplos como cifra por colunas; método de quebra com contagem de dígrafos e trigrafos.
  • 8.4.5 Chave única: OTP; sua segurança teórica; limitações práticas; criptografia quântica BB84 como alternativa de distribuição segura de chaves.

Observação: manter o algoritmo público e a chave secreta (Kerckhoffs) é a prática moderna. Oferecer redundância suficiente evita mensagens inválidas, mas também aumenta as informações que o atacante pode explorar. O equilíbrio entre segurança prática e teórica é fundamental.

Mapa mental (Mermaid)

mindmap root((CRIPTOGRAFIA)) 8_4(Introdução) 8_4_1(Introdução à criptografia) 8_4_2(Dois princípios) Redundância(Redundância) Repetição(Repetição/anti-replay) 8_4_3(Cifras de substituição) César(Cifra de César) Monoalfabética(Substituição monoalfabética) 8_4_4(Transposição) Colunas(Transposição por colunas) 8_4_5(Chave única) OTP(One-time Pad) Criptografia quântica(BB84) 8_5(Chave simétrica) 8_5_1(DES) 8_5_2(AES) 8_5_3(Modos de cifra) ECB(Electronic Code Book) CBC(Encadeamento de blocos) CFB(Feedback) Flow(Fluxo de cifras)

Questões sobre o assunto

Questão 1 (média): Quais são os dois princípios fundamentais da criptografia apresentados na seção?
1.50 Média

Resposta correta: B) Redundância e prevenção de repetição

A redundância serve para validar a mensagem; a prevenção de repetição impede ataques de reutilização de mensagens antigas.

Questão 2 (difícil): Qual é o objetivo da redundância nas mensagens criptografadas?
2.50 Difícil

Resposta correta: B) Permitir ao receptor verificar se a mensagem é válida e não inválida

A redundância facilita a confirmação de validade e impede que dados inválidos sejam interpretados como válidos.

Questão 3 (difícil): O que caracteriza o modo ECB (Electronic Code Book) em cifras de bloco?
2.50 Difícil

Resposta correta: C) Cada bloco de texto simples é codificado com a mesma chave, resultando no mesmo ciphertext para blocos iguais

O ECB é simples, mas vulnerável: blocos idênticos geram ciphertext idêntico, facilitando a análise.

Questão 4 (extremamente difícil): Sobre AES, escolha a afirmação correta.
3.50 Extrema

Resposta correta: C) AES (Rijndael) usa blocos de 128 bits e chaves de 128, 192 ou 256 bits

O AES opera com blocos de 128 bits e suporta chaves de 128/192/256 bits, com várias rondas dependendo do tamanho da chave.

Pontuação Total
0.00