Ir para o conteúdo

Cifra de Hill

Cifre ou decifera texto com uma chave de matriz, a cifra poligráfica clássica da álgebra linear.

Entrada
Saída

Cifra de Hill

A cifra de Hill, inventada por Lester Hill em 1929, cifra texto tratando letras como números e multiplicando blocos delas por uma matriz de chave quadrada, módulo o tamanho do alfabeto. Cole texto simples para cifrá-lo, ou texto cifrado para decifrá-lo — esta ferramenta executa ambas as direções com a mesma chave.

Escolha um tamanho de matriz 2×2 ou 3×3, depois introduza a chave como números brutos (linha por linha, separados por espaços ou vírgulas) ou como uma palavra — suas letras preenchem a matriz em ordem de leitura. O tamanho do alfabeto pode ser 26 (apenas A–Z) ou 29, que adiciona espaço, ponto e interrogação para que frases curtas mantenham sua pontuação. Caracteres fora do alfabeto escolhido são eliminados, e letras acentuadas são normalizadas para seu equivalente simples primeiro. Se a contagem de letras não for múltiplo do tamanho da matriz, a letra de preenchimento completa o último bloco.

A decifração requer que a matriz de chave seja invertível módulo o tamanho do alfabeto — seu determinante não deve compartilhar fator comum com 26 (ou 29). Quando não é, a ferramenta explica por que em vez de retornar lixo, já que uma matriz não invertível não tem inversa única para decifrar. Ative "Mostrar matriz, determinante e inversa" para ver exatamente como a chave se resolve, o que é útil para verificar uma chave manualmente ou acompanhar um exemplo de livro didático.

Tudo corre localmente no seu navegador — nada que escreve é carregado em lugar algum. Copie o resultado, faça download como arquivo .txt, ou envie a saída diretamente de volta para a entrada para encadear outra transformação.

FAQ

Como a cifra de Hill realmente cifra um bloco de letras?
Cada letra torna-se um número (A=0, B=1, …), um bloco de tamanho fixo delas é tratado como um vetor coluna, e esse vetor é multiplicado pela matriz de chave módulo o tamanho do alfabeto. Os números resultantes tornam-se as letras de texto cifrado para esse bloco.
Por que a decifração falhou com um erro sobre o determinante?
Decifrar requer a inversa da matriz de chave, que só existe quando o determinante não compartilha fator comum com o tamanho do alfabeto (26 ou 29). Escolha valores de chave diferentes para que o determinante seja coprime com esse número.
Para que serve a letra de preenchimento?
A cifra de Hill só funciona em blocos completos de 2 ou 3 letras. Se a contagem de letras do seu texto não for múltiplo do tamanho da matriz, a letra de preenchimento completa o último bloco — a saída decifrada pode terminar com uma ou duas letras de preenchimento pela mesma razão.
Devo introduzir a chave como números ou como uma palavra?
Qualquer um funciona. Números dão-lhe controle exato sobre a matriz; uma palavra é mais fácil de lembrar e suas letras preenchem a matriz linha por linha, com a letra de preenchimento usada se a palavra for mais curta do que a matriz precisa.
O meu texto é carregado em algum lugar?
Não. A cifra de Hill funciona inteiramente no seu navegador — seu texto e chave nunca saem do seu dispositivo.