Tutorial de criptografia

⚡ Resumo Inteligente

A criptografia protege informações transformando-as em um formato ilegível para humanos, que somente quem possui a chave correta pode reverter. Esta página aborda seus recursos, aplicações, algoritmos e um exercício prático com o CrypTool.

  • 🔐 Ideia central: A criptografia converte um texto simples em um texto cifrado; a descriptografia o reverte usando uma chave secreta.
  • 🧩 Três disciplinas: A criptografia oculta o significado, a criptoanálise o decifra e a criptologia abrange ambas.
  • 📐 Famílias de algoritmos: Funções hash, cifras simétricas e sistemas de chave pública resolvem problemas diferentes.
  • Padrões atuais: Os algoritmos AES e SHA-2 permanecem aprovados, enquanto MD5, SHA-1 e RC4 são considerados vulneráveis.
  • 🧪 Prática prática: O CrypTool 1 demonstra a criptografia RC4 e a análise de força bruta de uma chave de 24 bits.
  • 🔮 Olhando para o futuro: O NIST publicou seus primeiros padrões pós-quânticos em agosto de 2024.

Tutorial de criptografia

A informação desempenha um papel vital nas operações comerciais, governamentais e militares, e a informação em mãos erradas pode custar receitas ou algo pior. Para proteger a comunicação, uma organização utiliza criptografia para cifrar informações — transformando-as em um formato ilegível para humanos e vice-versa.

Neste artigo sobre criptografia e segurança de redes, você aprenderá como a criptografia funciona e como manter as informações longe de mãos erradas.

O que é criptografia?

Criptografia é o estudo e a aplicação de técnicas que ocultam o verdadeiro significado da informação, transformando-a em formatos ilegíveis para humanos e vice-versa.

Considere um exemplo. Para enviar "EU AMO MAÇÃS", você substitui cada letra pela terceira letra consecutiva do alfabeto, produzindo "K NQXG CRRNGU". Para ler, o destinatário retrocede três letras, como mostrado abaixo.

Criptografia e descriptografia com deslocamento de cada letra em três posições.
Criptografia e descriptografia de cifras

Transformar informações em um formato não legível para humanos é chamado de criptografiae inverter isso é chamado descriptografiaO resultado criptografado é conhecido como um cifra.

A descriptografia utiliza uma chave secreta conhecida apenas pelos destinatários legítimos. Como a chave é obrigatória, a comunicação permanece segura mesmo quando um invasor intercepta a mensagem criptografada, o que não faria sentido sem ela.

Recursos de criptografia

Um sistema criptográfico é avaliado com base nas características abaixo.

Característica O que significa
Algoritmo O procedimento matemático publicado que realiza a transformação.
Confidencialidade Somente quem possui a chave pode ler os dados protegidos.
Integrity Qualquer alteração nos dados é detectável.
Adaptabilidade O esquema se ajusta a diferentes tamanhos de chave e níveis de ameaça.
Interoperabilidade Sistemas e fornecedores diferentes trocam dados protegidos.
Autenticação A origem de uma mensagem pode ser comprovada.
Global O desempenho se mantém estável mesmo com o aumento do volume de dados.
Gerenciamento de chaves As chaves são geradas, armazenadas, rotacionadas e descartadas com segurança.

Aplicações de criptografia

Essas características se transformam em serviços cotidianos dos quais as pessoas dependem sem perceber.

Aplicação Como a criptografia é usada
Criptografia TLS Protege o tráfego entre um navegador e um site.
Armazenamento de senha Armazena hashes com sal em vez de senhas legíveis.
Banca online Garante a segurança das transações e verifica a identidade do banco.
criptomoeda Assina transações e vincula blocos com hashes.
e-mail criptografado Mantém o conteúdo das mensagens privado durante a transmissão e o armazenamento.
Digiassinaturas tal Comprova a autoria e que um documento permanece inalterado.
Mensagens seguras Aplica criptografia de ponta a ponta entre dispositivos.
Ecommerce Protege os dados do cartão durante o processo de finalização da compra.

O que é criptoanálise?

A criptoanálise é a arte de decifrar mensagens sem a chave usada para criptografá-las. Ela aplica análises matemáticas e algoritmos para decifrar códigos e é usada tanto para invadir sistemas quanto, defensivamente, para medir o nível de proteção oferecido por um algoritmo.

O sucesso de um ataque de criptoanálise depende de:

  • Quantidade de tempo disponível
  • Poder de computação disponível
  • Capacidade de armazenamento disponível

A seguir, são apresentados os ataques de criptoanálise mais comumente discutidos:

  • Ataque de força bruta — tenta todas as combinações possíveis do texto simples ou da chave, decifrando cada uma e comparando-a com a cifra original.
  • Ataque de dicionário — usa uma lista de palavras para encontrar correspondências no texto simples ou na chave. É usado principalmente quando se tenta quebrar senhas criptografadas.
  • Ataque da mesa arco-íris — compara o texto cifrado com hashes pré-computados para encontrar correspondências. Adicionar um "salt" a cada senha armazenada impede a sua detecção.

O que é criptologia?

Criptologia é o campo abrangente que combina criptografia e criptoanálise. Ambas as partes são importantes: um algoritmo só é considerado confiável depois que os criptoanalistas tentam, sem sucesso, quebrá-lo.

Criptografia Algorithms

Os algoritmos abaixo aparecem repetidamente em trabalhos de segurança. Observe quais permanecem aprovados e quais sobrevivem apenas em sistemas legados.

  • MD5 — abreviação de Message-Digest 5, produz valores de hash de 128 bits. MD5 é uma função de hash, e não um hash. criptografiaPortanto, não pode ser revertido por design. Não é resistente a colisões — duas entradas diferentes podem produzir o mesmo hash — e não é adequado para senhas ou assinaturas.
  • SHA — abreviação de Secure Hash Algorithm (Algoritmo de Hash Seguro), essa família gera representações condensadas de uma mensagem, chamadas de resumo da mensagem:
    • SHA-0: produz valores de hash de 160 bits. Foi retirado de circulação devido a uma falha significativa e substituído pelo SHA-1.
    • SHA-1: produz valores de hash de 160 bits. Uma colisão prática foi demonstrada em 2017 e o NIST proibiu seu uso em assinaturas digitais, portanto, evite-o.
    • SHA-2: uma família de seis funções, incluindo SHA-256 e SHA-512, que operam com palavras de 32 bits e 64 bits, respectivamente. Ambas permanecem aprovadas.
    • SHA-3Padronizado em 2015 e anteriormente conhecido como Keccak, utiliza um design interno diferente como alternativa ao SHA-2.
  • AES — O Advanced Encryption Standard (AES) é a cifra de bloco simétrica que protege a maioria dos dados em repouso e em trânsito atualmente, com chaves de 128, 192 e 256 bits. Ele substituiu o DES e é o padrão para novos sistemas.
  • RC4 — uma cifra de fluxo que já foi comum em Secure Sockets Layer (SSL) e Wired Equivalent Privacy (WEP). Ambos os protocolos estão obsoletos, e a RFC 7465 proibiu o RC4 em todas as versões do TLS em 2015. Ele permanece aqui como um exemplo didático.
  • Blowfish — uma cifra de bloco simétrica com chave, usada historicamente para senhas e arquivos. Seu tamanho de bloco de 64 bits torna o AES a melhor opção moderna.

Olhando para o futuro, o NIST publicou seus primeiros padrões pós-quânticos em agosto de 2024 — ML-KEM para troca de chaves, ML-DSA e SLH-DSA para assinaturas — que substituirão gradualmente os algoritmos de chave pública atuais.

Atividade de Hacking: Como Criar uma Cifra Usando o CrypTool

Neste exercício prático do CrypTool, você criará uma cifra simples com RC4 e, em seguida, a recuperará por meio de uma análise de força bruta, assumindo que a chave seja conhecida e tenha 24 bits. O objetivo é demonstrar por que uma chave curta e uma cifra quebrada não oferecem proteção real.

Criando a cifra de fluxo RC4

Passo 1) Baixe e instale o CrypTool

O CrypTool 1 é uma ferramenta educacional de código aberto para criptologia. O desenvolvimento ativo passou para o CrypTool 2, mas a versão 1.4.42 ainda funciona no navegador. Windows e corresponde às telas abaixo. Faça o download em cryptool.org.

Passo 2) Abra o CrypTool e substitua o texto

A frase a ser criptografada é Nunca subestime a determinação de uma criança que tem muito tempo e pouco dinheiroA chave é 00 00 00.

  • Abra o CrypTool 1.

Janela principal do CrypTool 1 antes da substituição do texto de exemplo.

  • Substitua o texto pela frase acima.

Documento CrypTool contendo a frase de substituição

Etapa 3) Criptografe o texto

  • Clique no menu Criptografar/Descriptografar.

Menu Criptografar/Descriptografar do CrypTool com a opção Simétrica moderna selecionada.

  • Aponte para Simétrico (moderno) e selecione RC4.

Diálogo de entrada de chave RC4 do CrypTool

Passo 4) Selecione a chave de criptografia

  • Selecione 24 bits como o comprimento da chave.
  • Defina o valor para 00 00 00.
  • Clique em Criptografar para gerar a cifra de fluxo abaixo.

A cifra de fluxo RC4 resultante é mostrada no CrypTool.

Atacando a cifra de fluxo

Etapa 5) Inicie a análise

  • Clique no menu Análise.

Menu de análise do CrypTool com criptografia simétrica moderna em destaque.

  • Aponte para Criptografia Simétrica (moderna) e selecione RC4.

Diálogo de análise de força bruta do CrypTool para RC4

  • A premissa é uma chave secreta de 24 bits, portanto, selecione 24 bits como o comprimento da chave.
  • Clique em Iniciar.

Janela de progresso da análise de força bruta do CrypTool

  • Observação: O tempo necessário depende da capacidade de processamento da máquina utilizada e do comprimento da chave. Uma chave mais longa leva mais tempo, razão pela qual as chaves modernas têm 128 bits ou mais.

Etapa 6) Analise os resultados

  • Ao término da análise, as chaves candidatas aparecem classificadas da seguinte forma.

Resultados de força bruta do CrypTool classificados por entropia

  • Observação: Um valor de entropia mais baixo geralmente indica o resultado correto, embora um valor mais alto também possa estar correto.
  • Selecione a linha que parece fazer sentido e clique em Aceitar seleção.

Perguntas Frequentes

A criptografia simétrica usa uma única chave compartilhada e é rápida, protegendo assim grandes volumes de dados. A criptografia assimétrica usa um par de chaves pública e privada, o que resolve o problema da distribuição de chaves e possibilita assinaturas digitais.

Não. A criptografia é reversível com uma chave; o hashing é uma transformação unidirecional para um resumo de comprimento fixo. Os sistemas de senhas armazenam hashes com salt justamente porque o valor original não pode ser recuperado.

Um salt é um valor aleatório único armazenado ao lado de cada hash de senha. Ele faz com que senhas idênticas tenham hashes diferentes, burlando tabelas rainbow pré-computadas e forçando um atacante a trabalhar em cada conta separadamente.

Um certificado digital vincula uma chave pública a uma identidade verificada e é assinado por uma autoridade certificadora. Os navegadores verificam essa assinatura antes de confiar na conexão criptografada com um site.

Um computador quântico de grande porte quebraria as cifras RSA e as chaves de curva elíptica, enquanto as cifras simétricas precisam apenas de chaves maiores. O NIST respondeu publicando padrões pós-quânticos em 2024 para que a migração possa começar mais cedo.

O aprendizado de máquina não quebra cifras modernas robustas. Em vez disso, é usado para análise de canais laterais, detecção em larga escala de chaves fracas ou reutilizadas e sinalização de tráfego criptografado anômalo durante a detecção de ameaças.

O Copilot agiliza a criação de código repetitivo, mas frequentemente sugere algoritmos desatualizados ou chaves codificadas diretamente no código. Considere cada sugestão como um rascunho, prefira uma biblioteca validada em vez de código desenvolvido manualmente e peça a um revisor que verifique o tratamento de chaves.

Engenheiros de segurança, testadores de penetração e analistas forenses o aplicam diariamente, e ele constitui um domínio completo do Certificação CISSPA maioria das funções configura bibliotecas verificadas em vez de projetar algoritmos.

Resuma esta postagem com: