A Aldeia Numaboa ancestral ainda está disponível para visitação. É a versão mais antiga da Aldeia que eu não quis simplesmente descartar depois de mais de 10 milhões de pageviews. Como diz a Sirley, nossa cozinheira e filósofa de plantão: "Misericórdia, ai que dó!"

Se você tiver curiosidade, o endereço é numaboa.net.br.

Leia mais...

Criptografia Numaboa

Modos de operação das cifras de bloco

Qui

6

Out

2005


18:15

(28 votos, média 4.32 de 5) 


Cifras de Feistel

O diagrama a seguir mostra a estrutura genérica de uma cifra de Feistel, um esquema usado na grande maioria das cifras de bloco modernas. A entrada é quebrada em dois blocos de mesmo tamanho, geralmente chamados de esquerdo (L - left) e direito (R - right), que são repetidamente ciclados através do algoritmo. Em cada ciclo, uma função hash (f) é aplicada no bloco direito e na chave, e o resultado do hash é usado para fazer um XOR com o bloco esquerdo. Depois disto, os blocos são trocados. O resultado do XOR torna-se o novo bloco direito e o bloco direito inalterado torna-se o bloco esquerdo. O processo é então repetido algumas vezes.

Feistel
Cifras de Feistel

A função hash é apenas um embaralhador de bits. A operação correta do algoritmo se baseia apenas na propriedade determinística da função hash, ou seja, se processar exatamente as mesmas entradas o resultado será sempre o mesmo.

Na decifração, o texto cifrado é dividido nos blocos esquerdo e direito. A chave e o bloco bloco direito são submetidos à função hash para se obter o mesmo resultado hash usado no último ciclo da cifragem (observe que o bloco direito permanece inalterado no último ciclo da cifragem). Depois disto é feito um XOR entre o hash e o bloco esquerdo para reverter o último ciclo da cifragem e o processo é repetido até que todos os ciclos tenham sido revertidos.

A segurança de uma cifra de Feistel depende essencialmente do tamanho da chave e da irreversibilidade da função hash. A forma ideal é quando o resultado da função hash se parece com bits randômicos, a partir dos quais não seja possível obter qualquer informação a respeito da(s) entrada(s).

Informações adicionais