You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Fontes<br />
• "The DES Algorithm Illustrated", de J. Orlin Grabbe. Grabbe é o autor do<br />
"International Financial Markets", internacionalmente conhecido como um<br />
especialista em derivativos. Atua em criptografia, segurança de transações<br />
bancárias e dinheiro eletrônico. Sua home page está em<br />
http://orlingrabbe.org/.<br />
• Simon Singh, autor de vários livros de sucesso, também escreveu "The<br />
Code Book", livro sobre criptologia rico em detalhes históricos e<br />
extremamente didático.<br />
• Cracking DES no site da EFF.<br />
O DES trabalha com bits ou números binários - os 0s e 1s dos computadores<br />
digitais. Cada grupo de 4 bits corresponde a um valor hexadecimal, cuja base é<br />
16. O binário "0001" corresponde ao número hexadecimal "1", o binário "1000" é<br />
igual ao número hexadecimal "8", "1001" é igual ao hexadecimal "9", "1010" é<br />
igual a o hexadecimal "A" e "1111" é igual ao hexadecimal "F".<br />
O DES funciona encriptando grupos de 64 bits de mensagem, o que significa 16<br />
números hexadecimais. Para realizar a encriptação, o DES utiliza "chaves" com<br />
comprimento aparente de 16 números hexadecimais, ou comprimento aparente<br />
de 64 bits. Entretanto, no algoritmo DES, cada oitavo bit da chave é ignorado, de<br />
modo que a chave acaba tendo o comprimento de 56 bits. Mas, para todos os<br />
efeitos, o DES é organizado baseando-se no número redondo de 64 bits (16<br />
dígitos hexadecimais).<br />
Por exemplo, se tomarmos a mensagem clara hexadecimal 8787878787878787 e<br />
a encriptarmos com a chave DES hexadecimal 0E329232EA6D0D73, obteremos<br />
o texto cifrado hexadecimal 0000000000000000. Se o criptograma for decifrado<br />
com a mesma chave secreta, o resultado será o texto claro original<br />
8787878787878787 hexadecimal.<br />
Este exemplo é limpo e metódico porque nosso texto claro tinha o comprimento<br />
de exatos 64 bits. O mesmo seria verdade caso nosso texto claro tivesse um<br />
comprimento múltiplo de 64 bits. Mas a maioria das mensagens não cairá nesta<br />
categoria. Não serão um múltiplo exato de 64 bits (isto é, um múltiplo exato de<br />
16 números hexadecimais).<br />
Por exemplo, considere a seguinte mensagem: "Criptologia sempre NumaBoa".<br />
Esta mensagem clara possui 28 bytes (56 dígitos hexadecimais) de comprimento.<br />
Neste caso, para encriptar a mensagem, seu comprimento precisa ser ajustado<br />
com a adição de alguns bytes extras no final. Depois de decifrar a mensagem,<br />
estes bytes extras são descartados. É lógico que existem vários esquemas<br />
diferentes para adicionar bytes. Aqui nós iremos adicionar apenas zeros no final,<br />
de modo que a mensagem total seja um múltiplo de 8 bytes (ou 16 dígitos<br />
hexadecimais, ou 64 bits).<br />
O texto claro "Criptologia sempre NumaBoa" é, em hexadecimal,<br />
43 72 69 70 74 6F 6C 6F<br />
67 69 61 20 73 65 6D 70<br />
72 65 20 4E 75 6D 61 42