Quando era criança, tinha um anel descodificador “Captain Midnight”? Com ele, podia-se enviar mensagens a um amigo que ninguém mais conseguia ler. Ou talvez se lembre de usar símbolos especiais para escrever notas para o seu “aperto” na aula. Se a nota fosse interceptada, o seu professor, não poderia aprender nada sobre o seu romance.
Em usos mais sérios, os códigos e cifras são usados pelas nossas forças militares e diplomáticas para manter a informação confidencial de olhos não autorizados. As empresas também enviam dados que foram codificados para tentar proteger os segredos comerciais e os negócios de retaguarda. Afinal, não gostaria que o seu concorrente soubesse que estava prestes a adquirir a sua empresa com uma compra alavancada.
O estudo de cifragem e codificação (no lado de envio), e decifração e descodificação (no lado de recepção) chama-se criptografia do grego κρυπτός (kryptos), ou oculta e γράφειν (gráfica), ou escrita. Se não souber grego (e poucos de nós sabem), as letras acima podem ser uma forma de código em si! Embora a distinção seja difusa, as cifras são diferentes dos códigos. Quando se substitui uma palavra por outra palavra ou frase, como se usasse um dicionário de língua estrangeira, está-se a usar um código. Quando se mistura ou substitui letras existentes, está-se a utilizar uma cifra. (Eu disse-lhe que a diferença era difusa, e pode combinar códigos e cifras substituindo uma palavra por outra e depois misturar o resultado). Vamos concentrar-nos nas cifras.
Para que uma cifra seja útil, várias coisas têm de ser conhecidas tanto no final do envio como no final do recebimento.
- O algoritmo ou método utilizado para cifrar a mensagem original (conhecido como o texto em forma de placa).
- A chave utilizada com o algoritmo para permitir que o texto em quadrícula seja tanto decifrado como decifrado.
- O período ou tempo durante o qual a chave é válida.
Por analogia, para entrar em sua casa, colocaria uma chave numa fechadura para abrir a porta. Este processo (a utilização de uma chave e de uma fechadura) é o método ou algoritmo. Agora, este método só funciona se tiver a chave adequada para espetar na fechadura, e a sua chave só será válida enquanto for o residente da residência em particular. O próximo residente terá as fechaduras mudadas para uma chave diferente para ter a certeza de que não poderá entrar mesmo que conheça o método.
A selecção dos três itens acima – algoritmo, chave e período – depende das suas necessidades. Se estiver no campo de batalha e estiver a receber dados tácticos actuais, quer um algoritmo que torne fácil decifrar a mensagem no calor da batalha. Por outro lado, deve também assumir que o seu adversário interceptou a sua mensagem decifrada e está ocupado a tentar decifrá-la. Por conseguinte, deve escolher um algoritmo (método) que seja suficientemente complicado para que, quando o seu oponente o descobrir, os dados já não valham nada. Quanto mais fácil for a escolha do algoritmo, mais frequentemente terá de alterar a chave que desbloqueia o código – se quiser manter o seu inimigo no escuro.
Cifras são quebradas em duas categorias principais; cifras de substituição e cifras de transposição. As cifras de substituição substituem as letras no texto em plaqueta por outras letras ou símbolos, mantendo a ordem em que os símbolos caem na mesma. As cifras de transposição mantêm intactas todas as letras originais, mas misturam a sua ordem. O texto resultante de qualquer um dos métodos de cifragem é chamado de texto cifrado. Claro que se pode usar ambos os métodos, um após o outro, para confundir ainda mais um receptor não intencional. Para ter uma ideia destes métodos, vejamos algumas cifras.
Substituição de cifras e anéis descodificadores
Utilizamos cifras de substituição a toda a hora. (Na verdade, as cifras de substituição poderiam ser chamadas códigos de forma adequada na maioria dos casos). Código morse, shorthand, semáforo, e o código ASCII com o qual estes caracteres estão a ser armazenados dentro do meu Macintosh são todos exemplos. (ASCII significa “American Standard Code for Information Interchange”, no caso de estar interessado). A única diferença entre estes e os códigos de espionagem é que os exemplos acima são padronizados para que todos os conheçam.
O anel descodificador Captain Midnight (que é também um anel “codificador”) permite-lhe fazer uma simples cifra de substituição. Tem normalmente duas rodas concêntricas de letras, de A a Z. Roda-se o anel exterior e substitui-se as letras da mensagem encontrada no anel exterior pelas letras directamente abaixo no anel interior (ver diagrama). Aqui, o algoritmo é para compensar o alfabeto e a chave é o número de caracteres para o compensar. Júlio César utilizou este esquema simples, compensando por 3 caracteres (Ele teria colocado o “A” no anel exterior de letras sobre o “D” no anel interior se tivesse possuído um anel descodificador Capitão Meia-Noite). A palavra “EXPLORATORIUM” torna-se assim “HASORUDWRULXP”. Tal esquema foi facilmente quebrado e mostrou um certo nível de ingenuidade da parte de César relativamente à inteligência do inimigo.
Rodas de cifras de substituição
clique aqui para descarregar uma cópia das rodas de cifra (12k PDF). Copiar e recortar as duas rodas. Coloque a roda mais pequena em cima da roda maior e rode-as para que a sua “letra chave” na roda pequena fique por baixo da “A” da roda grande. Agora, pode cifrar o seu texto em forma de placa e passá-lo ao seu amigo que conheça a letra chave apropriada.
Poderia tornar o seu texto cifrado um pouco mais difícil de descodificar se atirasse 26 pedaços de papel para um chapéu, cada um com uma letra do alfabeto escrita nele, extraísse-os um de cada vez, e os colocasse lado a lado sob um alfabeto normal. O resultado pode parecer-se com isto (usei apenas a ordem das teclas no meu teclado, pelo que se pode chamar a isto um código “Qwerty”):
Plaintext letter A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
Ciphertext letter Q W E R T Y U I O P A S D F G H J K L Z X C V B N M
Pode-se construir uma mensagem secreta a partir da tabela acima. Cada vez que vê um “I” substituiria o “O” por baixo e assim por diante pelos outros caracteres. A mensagem “Meet me after school behind the gym”, leria
Comprimento das palavras – especialmente as palavras curtas – dão grandes pistas sobre a natureza do código (ver gráficos de frequência). Para ajudar a ocultar a mensagem, ignorar os espaços e dividir a mensagem em pedaços de igual tamanho. Cinco letras são habituais no biz biz espião, por isso a sua mensagem sai assim (Note que no final é adicionado um caracter “M” extra “dummy” para que saia com um grupo de 5 letras. O seu destinatário não deve ter problemas com o carácter extra):
Um outro sistema popular chamado cifra diagramática, utilizado por muitas crianças na escola, substitui símbolos por letras em vez de outras letras. Este sistema é, na sua essência, o mesmo que o sistema de substituição de letras, mas é mais fácil de lembrar do que 26 letras escolhidas aleatoriamente. Utiliza os tabuleiros de tic-tac-toe e dois X, como se mostra abaixo.
A mesma mensagem secreta como acima, utilizando as formas de linha que rodeiam cada letra (e incluindo um ponto onde for necessário) torna-se:
Even embora pareça um texto alienígena indecifrável do espaço exterior, isto levaria apenas cerca de 10 minutos ou menos para ser descoberto por um criptologista de cadeira de braços. Porquê? Dado um texto criptográfico suficiente, certos padrões tornam-se óbvios. Repare quantas vezes aparece a caixa vazia de quatro lados: seis vezes num total de 29 caracteres ou cerca de 20% do tempo. Isto indicaria imediatamente que a caixa vazia era quase certamente o símbolo para “E”, a letra mais frequentemente utilizada em inglês. Outras letras também podem ser determinadas pela sua frequência e pela sua associação com outros caracteres próximos (ver “Frequências”). Quase todas as cifras de substituição estão abertas a este tipo de análise.
Francis Bacon criou uma das cifras de substituição mais interessantes. Utilizou duas faces de tipo diferente com peso ligeiramente diferente (ousadia). Ele dividiu o seu texto cifrado em grupos de 5 caracteres, cada um dos quais representaria um carácter no seu texto plaintexto. Dependendo de quais caracteres do grupo eram negritos, podia-se determinar o carácter em negrito usando a seguinte tabela (* representa um carácter simples e B um carácter negrito)
A=*****G=**BB*M=*BB**S=B**B*Y=BB***B=****BH=**BBBN=*BB*BT=B**BBZ=BB**BC=***B*I=*B***O=*BBB*U=B*B** D=***BBJ=*B**BP=*BBBBV=B*B*B E=**B**K=*B*B*Q=B****W=B*BB* F=**B*BL=*B*BBR=B***BX=B*BBB
A nossa mesma mensagem secreta como acima apareceria assim (os caracteres em negrito e simples de Bacon eram menos óbvios do que os abaixo):
To be or not to be that is the question.Whether 'tis nobler in the mind to suffer the slings and arrows of outrageous fortune or to take arms against a sea of troubles and by opposing end them?
Para decifrar, apenas quebramos os caracteres em grupos de 5 e usamos a chave acima para encontrar a mensagem em texto simples.
M E E T M E B E Tobeo rnott obeth atist heque stion Wheth ertis H I N D T H E G noble rinth emind tosuf ferth eslin gsand arrow Y M A F T E R S sofou trage ousfo rtune ortot akear msaga insta C H O O L seaof troub lesan dbyop posin gendt hem?
Transposição de cifras
Voltando aos seus dias de escola, oo-day oo-yay emember-ray ig-pay atin-lay? Pig-latin é uma forma de cifra de transposição onde as letras originais são mantidas intactas (embora com a adição do sufixo “ay”), mas reordenadas de alguma forma.
Voltando muito antes dos vossos dias de escola, ao século V a.C., os espartanos usaram uma interessante cifra de transposição chamada scytale. O fole utilizava um cilindro com uma fita enrolada helicoidal de uma ponta à outra. A mensagem foi escrita através das fitas, e depois desembrulhada do cilindro. Apenas alguém com um cilindro de diâmetro idêntico podia embrulhar e ler a mensagem.
O fole dependia de uma peça de hardware, o cilindro, que se fosse capturado pelo inimigo, comprometeria todo o sistema. Além disso, o receptor poderia perder ou quebrar o cilindro e, portanto, perder a capacidade de decifrar qualquer mensagem. Seria melhor se o método fosse completamente “intelectual” e pudesse ser lembrado e utilizado sem recorrer a um dispositivo físico.
Desde que tanto o emissor como o receptor de um texto cifrado transposto tenham de concordar e recordar este algoritmo ou método de decifração e decifração, algo fácil seria agradável. Uma vez que as figuras geométricas são fáceis de lembrar, servem de base para toda uma classe de cifras de transposição. Vamos colocar a nossa mensagem na forma de uma caixa. Uma vez que existem 29 caracteres, vamos adicionar um boneco (“O”) para fazer 30 e escrever a mensagem numa caixa de seis por cinco.
M E E T M EA F T E R SC H O O L BE H I N D TH E G Y M O
Agora podemos transcrever a mensagem descendo as colunas em vez de cruzar as filas. Mais uma vez vamos dividir os caracteres em grupos de cinco para não dar pistas sobre o tamanho das palavras. O resultado é o seguinte :
A verdadeira variedade começa quando nos apercebemos de que não temos de escrever o nosso texto em quadrícula linha a linha. Em vez disso, pode seguir um padrão que zigue-zagueia horizontalmente, verticalmente ou diagonalmente, ou um que entra ou sai em espiral (no sentido horário ou anti-horário), ou muitas outras variações (ver diagrama abaixo).
Após ter colocado o texto na forma escolhida usando uma rota, pode então cifrá-lo escolhendo uma rota diferente através do texto. Você e o seu parceiro apenas têm de concordar sobre a rota de leitura, a rota de transcrição (cifragem), e o ponto de partida para terem um sistema. Estes sistemas chamam-se transcrições de rota.
Aqui está novamente a nossa mensagem. A leitura da rota em espiral no sentido contrário ao dos ponteiros do relógio para dentro, começando no canto inferior direito (diagrama esquerdo). A rota de transcrição (diagrama direito) é diagonal em zigue-zague, começando no canto inferior esquerdo. O texto cifrado torna-se:
Para decifrar, preenche-se a caixa seguindo a rota em zig-zag e lê-se a mensagem usando a rota em espiral.
Um outro tipo de cifra de transposição usa uma palavra ou frase chave para misturar as colunas. A isto chama-se transposição colunar. Funciona desta forma: Primeiro, pense numa palavra-chave secreta. A nossa será a palavra SECRET. Em seguida, escreva-a acima das colunas de letras no quadrado, e numere as letras da palavra-chave como elas cairiam se as colocássemos em ordem alfabética. (Se existirem letras duplicadas, como o “E”, são numeradas da esquerda para a direita.)
5 2 1 4 3 6S E C R E TM E E T M EA F T E R SC H O O L BE H I N D TH E G Y M O
Agora escreva as colunas na ordem indicada pelos números. O texto cifrado resultante com este aspecto:
Como se pode ver, este é apenas um arranjo diferente do texto cifrado anterior, mas pelo menos não está em algum padrão regular. Poderíamos facilmente tê-lo tornado um pouco mais difícil ao preencher o quadrado seguindo um caminho mais complicado. Poderíamos também usar uma forma geométrica diferente de um rectângulo e combinar substituição e transposição. O único problema que pode ocorrer é que a decifração pode tornar-se tão complicada que permanecerá em segredo no final receptor para sempre! Pensando bem, ela nunca se encontrou comigo atrás do ginásio.
Frequências
Ordem de frequência de letras únicas:
E T O A N I R S H D L C W U M F YG P B V K X Q J Z
Ordem de frequência de digrafes (duas combinações de letras):
th er on an re he in ed nd ha at en es de or nt ea ç ã o s t r i g o s ou ar as de rt ve
Ordem de frequência dos trigrafos:
o e o tt ião tio para nde tem nce edt é de algo homens
Ordem de frequência das duplas mais comuns:
ss ee tt ff 11 mm oo
Ordem de frequência das letras iniciais:
T O A W B C D S F M R H I Y E G L N P U J K
Ordem de frequência das letras finais:
E S T D N R Y F L O G H A R M P U W
Palavras de uma letra:
a, I, 0.
P>Palavras de duas letras mais frequentes:
of, para, in, it, é, ser, como, at, so, we, he, by, or, on, do, if, me, my, up, an, go, no, us, am…
Palavras de três letras mais frequentes:
a, e, pois, são, mas não, vocês, todos, qualquer, podem, tiveram, ela, foi, um, o nosso, fora, dia, obter, tem, ele, seu, como, homem, novo, agora, velho, ver, dois, caminho, quem, rapaz, fez, seu, deixe, pôr, digamos, ela, também, usar…
Palavras mais frequentes de quatro letras:
que, com, têm, isto, a sua, de, eles, sabem, querem, foram, bons, muito, alguns, tempo, muito, quando, vem, aqui, apenas, como, longo, faz, muitos, mais, apenas, sobre, tal, levar, do que, eles, bem, foram…
Bibliografia:
Gardner, Martin. Códigos, Cifras e Escritos Secretos.
New York, NY: Dover Publications Inc., 1972.
Uma introdução maravilhosa, divertida e fácil de ler a códigos e cifras.
Smith, Laurence Dwight. Cryptography, the Science of Secret Writing.
New York, NY: Dover Publications Inc., 1943.
Um bom relato de códigos e cifras com muitos exemplos históricos.
Konheim, Alan G. Cryptography: A Primer.
New York, NY: John Wiley & Sons, 1981.
Um livro altamente técnico (e matemático) sobre métodos mais modernos de fazer e quebrar códigos.
Gaines, Helen Fouché. Criptanálise: A Study of Ciphers and their Solution.
New York, NY: Dover Publications Inc., 1956.
O título diz tudo.