Cifra polialfabética
Uma cifra polialfabética é qualquer cifra baseada na substituição, usando vários alfabetos de substituição. A cifra de Vigenère é, provavelmente, o exemplo mais conhecido de uma cifra polialfabética, embora seja um caso especial simplificado. A máquina Enigma é mais complexa, mas ainda é fundamentalmente uma cifra de substituição polialfabética.
História
editarAcredita-se que a cifra de Alberti, criada por Leon Battista Alberti por volta de 1467, seja a primeira cifra polialfabética. Alberti utilizou um alfabeto misto para criptografar uma mensagem, mas sempre que ele queria, ele mudava para um outro alfabeto, indicando que ele tinha feito isso por meio de uma letra maiúscula ou um número no criptograma. Para esta codificação, Alberti utilizou um dispositivo decodificador, seu disco de cifragem, que implementava uma substituição polialfabética com a mistura de alfabetos.
Apesar de Alberti ser geralmente considerado o pai da cifra polialfabética, já foi alegado que as cifras polialfabéticas podem ter sido desenvolvidas pelo criptólogo árabe Alquindi 600 anos antes de Alberti.[1] Johannes Trithemius—em seu livro Polygraphiae libri sex (Seis livros da poligrafia), que foi publicado em 1518 depois de sua morte—inventou uma cifra polialfabética de chave progressivo chamada de cifra de Trithemius.[2] Diferentemente da cifra de Alberti, que trocava de alfabeto em intervalos aleatórios, a de Trithemius trocava de alfabeto para cada letra da mensagem. Ele começava com uma tabula recta, um quadrado contendo 26 letras (embora Trithemius, escrevendo em latim, usasse 24 letras). Cada alfabeto era deslocado uma letra à esquerda em relação ao que estava logo acima, e começava novamente com A depois de chegar ao Z (ver tabela).
A ideia de Trithemius era criptografar a primeira letra da mensagem usando o primeiro alfabeto deslocado, de modo que A se tornasse B, B se tornasse C, e assim por diante. A segunda letra da mensagem era cifrada usando o segundo alfabeto deslocado, e assim sucessivamente. O disco de cifra de Alberti implementava o mesmo esquema. Ele tinha dois alfabetos, um no anel fixo externo, e o outro no disco rotativo. Uma letra é cifrada olhando para tal letra no anel externo, e codificando-a como a letra abaixo dela no disco. O disco começa com A abaixo de B, e o usuário girava o disco em uma letra após a encriptação de cada letra.
A cifra podia ser quebrada trivialmente, e a implementação da máquina de Alberti não era muito mais difícil. Em ambos os casos a progressão da chave foi mal escondida dos atacantes. Mesmo a implementação de Alberti de sua cifra polialfabética era bastante fácil de quebrar (a letra em maiúscula é uma grande pista para o criptoanalista). Para a maior parte dos cem anos seguintes, a importância de se utilizar múltiplos alfabetos para substituições foi esquecida por quase todos. Os designers de cifras de substituição polialfabética parecem ter se concentrado em obscurecer a escolha de alguns desses alfabetos (repetindo conforme necessário), e não na maior segurança possível com o uso de muitos alfabetos, e sem nunca repetir nenhum deles.
O princípio (particularmente os alfabetos de substituição adicionais ilimitados de Alberti) foi um grande avanço—o mais significativo em várias centenas de anos, desde que a análise de frequência foi desenvolvida. Uma implementação razoável teria sido (e, quando finalmente conseguida, foi) muito mais difícil de quebrar. Não foi até meados do século XIX (no trabalho secreto de Babbage durante a Guerra da Crimeia e a divulgação pública em linhas gerais equivalente de Friedrich Kasiski, alguns anos mais tarde), que a criptoanálise de cifras polialfabéticas bem implementadas chegou a algum lugar.
Notas
editar- ↑ Maclean, Donald, Al-Kindi, consultado em 13 de abril de 2012
- ↑ Johann Tritheim, Polygraphiae libri sex ... (Basileia, Suíça: Michael Furter e Adam Petri, 1518), Liber quintus (quinto livro), pp. 461-462; a Recta transpositionis tabula (mesa quadrada de transposições, ou "Vigenère tabela") aparece na página 463.
Referências
editar- Alberti, Leon Battista (1997), A Treatise on Ciphers, trans. A. Zaccagnini. Foreword by David Kahn, Torino: Galimberti
- Churchhouse, Robert (2002), Codes and Ciphers: Julius Caesar, the Enigma and the Internet, ISBN 978-0-521-00890-7, Cambridge: Cambridge University Press
- Gaines, Helen Fouché (1939), Cryptanalysis, ISBN 0-486-20097-3, Dover