Sobre esta ferramenta
A Calculadora de Índice de Coincidência (IoC) calcula uma estatística clássica de criptoanálise: a probabilidade de duas letras sorteadas aleatoriamente do texto serem iguais. Ela filtra a entrada mantendo apenas letras, converte para maiúsculas, conta cada uma das 26 letras n_i sobre um total de N letras e avalia IC = Σ n_i·(n_i − 1) / (N·(N − 1)). Ela também informa o IC normalizado = IC × 26, escalado de modo que texto aleatório uniforme fique perto de 1,0 e texto simples em inglês perto de 1,73.
Esses valores de referência são o que tornam o IoC útil. O texto simples em inglês tem um IC em torno de 0,0667 (normalizado ≈ 1,73) porque sua distribuição de letras está longe de ser uniforme, enquanto texto cifrado aleatório-uniforme ou polialfabético bem misturado cai para cerca de 0,0385 (normalizado ≈ 1,00). Uma substituição monoalfabética preserva o IC do texto simples, então um IC alto sinaliza uma cifra simples; um IC baixo sinaliza uma polialfabética, como a de Vigenère.
Para recuperar o comprimento da chave de Vigenère, insira um comprimento máximo de chave para executar uma varredura de colunas. A ferramenta divide o texto em k colunas para cada k candidato, calcula o IC médio entre essas colunas e sinaliza o k cuja média é a mais próxima do valor do inglês — o comprimento provável da chave, pois dividir pelo período verdadeiro reagrupa colunas monoalfabéticas. Tudo é determinístico e calculado offline no seu navegador; nada é enviado.