A codificação com a cifra de Vigenère


O que é e como usar a codificação da cifra de Vigenère

A codificação com a cifra de Vigenère é um criptossistema simétrico, ou seja, utilizar a mesma chave para codificar e decodificar. A codificação com a cifra de Vigenère assemelha-se muito à codificação César, exceto que a primeira usa uma chave mais longa para neutralizar o principal problema da codificação César, isto é, o fato de uma letra só poder ser codificada de uma maneira. Para resolver esse problema, utiliza-se uma palavra chave ao invés de um simples caractere. Em primeiro lugar, cada letra é associada a um número correspondente:


ABCDEFGHIJKLMNOPRSTUVWXYZ
1234567891011121314151617181920212223242526

Isto consiste em codificar um texto com uma palavra acrescentando, a cada uma das suas letras, a letra de uma outra palavra, chamada palavra-chave. A palavra-chave é acrescentada indefinidamente no texto a ser codificado e, depois, o código ASCII de cada uma das letras da palavra-chave é adicionado ao texto a ser criptografado. Por exemplo, o texto rendez-vous à midi (encontro ao meio-dia) com a palavra-chave bonjour (bom dia) será codificado da seguinte maneira:

Texto original:


rendezvousamidi
11410111010010112211811111711597109105100105

Palavra-chave:


bonjour
98111110106111117114

Texto criptografado:


r+be+on+nd+je+oz+uv+ro+bu+os+na+jm+oi+ud+ri+b
114 + 98101 + 111110 + 110100 + 106101 + 111122 + 117118 + 114111 + 98117 + 111115 + 11097 + 106109 + 111105 + 117100 + 114105 + 98

Para descriptografar esta mensagem, basta ter a chave secreta e fazer a decodificação inversa, utilizando a subtração.

Embora esta codificação seja muito mais segura do que a codificação César, ela pode, assim mesmo, ser quebrada facilmente. Quando as mensagens são muito mais longas do que a palavra-chave, é possível identificar o comprimento da palavra-chave e utilizar, para cada sequência de palavra-chave, o método de cálculo da frequência com que aparecem as letras, determinando assim, um a um, os caracteres das palavras-chave.

Para evitar este problema, uma solução consiste em utilizar uma palavra-chave cujo tamanho seja próximo daquele do texto, para evitar um estudo estatístico do texto criptografado. Este tipo de sistema de codificação é chamado de sistema one-time pad. O problema com este tipo de método é o comprimento da chave de criptografia (quanto maior o texto a ser criptografado, maior deverá ser a chave), que impede a sua memorização e implica numa probabilidade de erro na chave muito maior (um só erro torna o texto ilegível).

Veja também

Este documento, intitulado 'A codificação com a cifra de Vigenère', está disponível sob a licença Creative Commons. Você pode copiar e/ou modificar o conteúdo desta página com base nas condições estipuladas pela licença. Não se esqueça de creditar o CCM (br.ccm.net) ao utilizar este artigo.