Criptografia chave simétrica de bloco e de fluxo

Este artigo descreve o que são os algoritmos de chave simétrica, no que são baseados e suas aplicações. Descreve os algoritmos simétricos de bloco e de fluxo. Pode ser considerado uma continuação do artigo "Introdução a criptografia".

[ Hits: 181.453 ]

Por: Elgio Schlemer em 09/03/2009 | Blog: https://elgio.prof.nom.br/~elgio


Conclusão e referências



Os algoritmos de fluxo são muito interessantes na comunicação de dados. Os de bloco são melhores para cifrar dados estáticos, onde já se sabe antecipadamente o tamanho e se pode dividir em blocos de M bits.

Os algoritmos de bloco, na sua forma original, permitem a exploração de ataques de repetição, supressão e inserção de bloco. Como cada bloco é cifrado de forma individual, um atacante poderá copiar um bloco sobre o outro, remover um bloco ou mesmo inserir o bloco 0 entre o 2 e o 3 e mesmo assim a decifragem será feita de forma positiva. Na prática toda a ferramenta de cifragem insere cabeçalhos incluindo CRC para verificar se a decifragem ocorreu da forma esperada. Mesmo assim, uma variação da cifra de bloco conhecida como CBC (Cipher-Block Chaining) implementa um encadeamento entre os blocos frustrando este tipo de ataque.

No Linux o canivete suíço da criptografia é o gnupg. Baseado na sua versão comercial, o PGP, esta ferramenta implementa os principais tipos de cifras que se pode pensar, incluindo os de bloco. Também tem o openssl, disponível tanto em linha de comando como em bibliotecas de programação. Ninguém que deseje incorporar criptografia em seus programas precisa, hoje, programar uma linha sequer, pois tudo já existe. Gnupg e OpenSSL podem vir a se tornar outro artigo no futuro

Uma implementação tosca em C do algoritmo de criptografia XOR pode ser encontrando em Criptografia XOR em C.

Praticamente todas as referências bibliográficas que citei em meu primeiro artigo (Introdução a criptografia), se aplicam a este artigo.

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Algoritmos simétricos de bloco
   3. Algoritmos simétricos de fluxo
   4. Algoritmo de fluxo RC4
   5. Conclusão e referências
   6. Anexo A: problema do XOR
Outros artigos deste autor

Programação com números inteiros gigantes

Armazenamento de senhas no Linux

Fundamentos da criptografia assimétrica

Guerra Infinita, uma análise da Ciência da Computação

Estrutura do IPTables 2: a tabela nat

Leitura recomendada

Certificações em Segurança: para qual estudar?

Definição de hacker

Importar Chave GPG

Análise Forense - Aspectos de perícia criminal

Construindo um Log Server utilizando Linux, Unix e Windows

  
Comentários
[1] Comentário enviado por elgio em 09/03/2009 - 15:08h

***** ERRATA: No desenho da Figura 1 onde lê-se Bytes na verdade são bits. 288 Bits, 320 Bits

[2] Comentário enviado por gustavs em 29/04/2009 - 22:06h

Muito bom! Não conhecia praticamente nada de criptografia, agora me interessei.
Recomenda alguma leitura nesse assunto ?

[3] Comentário enviado por adrianoturbo em 02/05/2009 - 14:24h

Interessante a utilização do XOR.

[4] Comentário enviado por grandmaster em 05/05/2009 - 21:06h

Muito legal o artigo. Bem interessante.

Renato de Castro Henriques
CobiT Foundation 4.1 Certified ID: 90391725
http://www.renato.henriques.nom.br

[5] Comentário enviado por thiagods.ti em 17/06/2009 - 16:12h

Teus artigos geralmente são bons, hoje foi só ver que você lançou um artigo novo que a primeira coisa que eu faço quando tenho tempo é ler.

Parabéns =)

[6] Comentário enviado por Credmann em 21/06/2009 - 17:35h

Este artigo é quase a resposta da minha dúvida:
Qual criptografia tem melhor desempenho numa sessão interativa SSH?

[7] Comentário enviado por leomarcsys em 05/01/2012 - 18:30h

Há uma imprecisão quanto a informação sobre os tamanhos de bloco do AES.
O algoritmo de Rijndael, vencedor do concurso do nist para a definição do AES, prevê tamanhos variados de blocos e de chaves, no entanto o fips-197 que especifica o AES define apenas o tamanho de bloco como 128 bits.
http://csrc.nist.gov/publications/fips/fips197/fips-197.pdf


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts