Quebrador de cifra de Vigenère

Esta calculadora online tenta decodificar a cifra de Vigenère sem saber a chave. Ela utiliza a técnica do índice de coincidência.

Se você chegou até aqui, provavelmente já sabe o que é a cifra de Vigenère. Caso contrário, você pode primeiro conferir a Cifra de Vigenère. Em resumo, a cifra de Vigenère é uma série de cifras de César e é classificada como uma cifra de substituição polialfabética. Ela permaneceu inquebrável por quase três séculos até 1863, quando Friedrich Kasiski publicou um método geral de decifrar as cifras de Vigenère.

Você pode usar o link acima para codificar e decodificar o texto com a cifra de Vigenère se souber a chave. A calculadora abaixo é diferente. Na verdade, ela tenta quebrar a cifra de Vigenère utilizando estatísticas de texto. A técnica para quebrar a cifra é descrita abaixo na calculadora.

PLANETCALC, Quebrador de cifra de Vigenère

Quebrador de cifra de Vigenère

Frequência de Letras

LetraFrequência
Itens por página:

Chave
 
Mensagem decodificada
 
Decodificado com chave de adivinhação
 
O arquivo é muito grande; pode ocorrer lentidão do navegador durante o carregamento e a criação.



A propósito, como você pode notar acima, o exemplo da calculadora está em Inglês. Isso ocorre porque as estatísticas padrão da carta foram criadas para o alfabeto Inglês.

A técnica usada aqui para quebrar a cifra é conhecida como teste de Friedman ou teste kappa, inventada na década de 1920 e é baseada no Índice de Coincidência ou IC. É usada para encontrar o comprimento de chave mais provável. Em seguida, a análise de frequência é usada para quebrar cifras de César separadas, que são cifras simples de substituição única.

A aplicação do Índice de Coincidência para a quebra da cifra de Vigenère é descrita na Wikipédia.
Em resumo, o procedimento é o seguinte:

  1. IC é usado para descobrir o comprimento de chave mais provável. O texto é separado em colunas, correspondendo ao comprimento da chave testada, e então o IC médio para todas as colunas é calculado. O comprimento da chave com o IC mais alto é o comprimento provável da chave de cifra (ou produto da multiplicação do comprimento da chave).
  2. O comprimento de chave determinado é usado para formar colunas de texto - e sabemos que o texto em cada coluna é cifrado por uma cifra de César separada. Agora precisamos testar todas as combinações possíveis da cifra de César (26 para o alfabeto Inglês) e, para cada resultado, calcular as frequências das letras e sua correlação com as frequências médias das letras em um texto em Inglês. A cifra de César que fornece a correlação mais alta provavelmente é a cifra de César utilizada na cifra de Vigenère. Uma série dessas cifras de César nos dá a chave de cifra de Vigenère..

Como você pode ver com os dados padrão de entrada da calculadora abaixo, ela poderia funcionar muito bem. Entretanto, é apenas uma aproximação. Ela pode falhar para um texto curto (é claro, a precisão aumenta com o tamanho do texto) ou se a chave for muito longa ou contiver padrões repetidos. É por isso que eu incluí algumas opções adicionais para este decodificador.

Considere o seguinte:

Clique para definir os dados de exemplo

Como você pode ver, a chave encontrada é NOOC. Entretanto, o texto decifrado tem pouco sentido. Então, é hora de clicar no botão Mostrar outras soluções possíveis. Se você fizer isso, verá a tabela que lista as chaves possíveis para cada comprimento de chave experimentado (por padrão, até 30). É fácil notar que a chave NONCNNON faz muito mais sentido. Observe que ela possui um comprimento de 8 (uma multiplicação de 4) e um padrão de repetição NON--NON. Não é de se admirar que nossa solução mais possível falhou.

Ainda assim, o texto decifrado contém alguns erros de digitação. Então, é hora de completar o quebra-cabeça e usar a opção Chave de adivinhação. Observando os erros de digitação do texto, você pode facilmente adivinhar que a quinta letra da chave NONCNNON está errada. A chave de adivinhação permite que você teste outra variante de forma rápida. Insira NONCANON e aproveite o texto completamente decifrado. O quebra-cabeça está resolvido.

Na nota final: tentei tornar esse quebrador universal. Clique no botão Editar frequências, e você terá acesso ao alfabeto e às frequências usadas na calculadora. Isso lhe permite ajustar as frequências das letras ou mudar o alfabeto completamente. Você pode ajustar as frequências se suspeitar do texto especializado - sabe-se que os textos especializados (ou seja, científicos) possuem frequências de letras diferentes dos textos regulares devido ao vocabulário diferente. Como dito anteriormente, por padrão, a calculadora foi desenvolvida para o alfabeto Inglês e utiliza frequências de letras para o alfabeto Inglês, mas caso você queira trabalhar com outros alfabetos (por exemplo, Espanhol ou Português) você pode alterar a frequência de letras na tabela. Se você deseja alterar o alfabeto, use letras maiúsculas e as posicione em ordem alfabética.

URL copiado para a área de transferência
PLANETCALC, Quebrador de cifra de Vigenère

Comentários