1 Introduç˜ao 2 Método 3 Material
Transcrição
1 Introduç˜ao 2 Método 3 Material
Instituto de Computação Universidade Estadual de Campinas 1o¯ Trabalho Prático MO421/MC889 - Introdução à Criptografia Prof. Julio López 1o¯ Semestre de 2008 1 Introdução O trabalho objetiva implementar um método de criptoanálise de uma cifra clássica, de posse apenas da tabela de freqüências da lı́ngua em que se encontra o texto claro. 2 Método A Cifra de Vigenére é um método clássico de encriptação que utiliza uma série de diferentes Cifras de César baseadas em caracteres de uma chave. Trata-se de uma versão simplificada de uma cifra geral de substituição polialfabética. Para implementação em computadores, cada caractere individual do texto claro é representado por um inteiro entre 0 e 255. A operação de substituição é uma adição módulo 256, ou a operação de XOR entre um caractere do texto claro e um caractere da chave. Para este trabalho, o conjunto de caracteres considerado é o padrão ISO 8859-1. 3 Material Como apoio, é fornecido um programa em C que cifra um arquivo arbitrário utilizando a Cifra de Vigenére. O código-fonte deste programa encontra-se no arquivo vigenere.c. Utilize este arquivo para entender o método de cifração e para construir criptogramas adicionais de fácil decifração para fins de teste. Para compilar este arquivo, execute: $ gcc vigenere.c -o vigenere Para utilizar o programa em modo de cifração: $ ./vigenere -e entrada.txt saida.txt 1 O programa pedirá o comprimento da chave e uma seqüência de inteiros que especifica a chave: Digite o tamanho da chave: 5 Digite a chave: 40 67 23 200 56 Para utilizar o programa em modo de decifração: $ ./vigenere -d saida.txt entrada.txt A chave deverá ser informada no formato descrito anteriormente. Adicionalmente, é fornecida uma tabela de freqüências para caracteres na Lı́ngua Portuguesa. A tabela encontra-se em formato texto para fácil processamento pelo programa de criptoanálise. Em cada linha da tabela, é listado um caractere e um número real entre 0 e 1 descrevendo a probabilidade de ocorrência daquele monograma. Observe que a tabela apresenta letras, números e sı́mbolos de pontuação. 4 Objetivo O objetivo é determinar o comprimento e a chave de cifração do criptograma fornecido na página do curso. A ferramenta de criptoanálise deve receber o arquivo de criptograma como entrada e imprimir a chave de cifração e o texto claro resultantes da criptoanálise do criptograma fornecido. O texto claro resultante deve ser idêntico ao utilizado para geração do criptograma. Para fins de conferência, o criptograma tem 2094 bytes e o seguinte valor MD5: $ md5sum criptograma.txt 8aeef25a44b214bd58993f726ed432f2 2
Documentos relacionados
1 Introduç˜ao 2 Método 3 Material
em seqüência. Pode-se implementar uma cifra qualquer em uma imagem completandose esta seqüência de bytes com zeros até que seu comprimento seja múltiplo do tamanho do bloco da cifra.
Leia mais