• Nenhum resultado encontrado

Criptografia Classica e Moderna

N/A
N/A
Protected

Academic year: 2021

Share "Criptografia Classica e Moderna"

Copied!
348
0
0

Texto

(1)

LUIZ GONZAGA DE ALVARENGA

2ª. Edição

(2)

Título da obra:

Criptografia Clássica e Moderna 2ª. Edição, revisada e aumentada.

Copyright © 2010/2011 Luiz Gonzaga de Alvarenga. Todos os direitos reservados.

Proibida a reprodução sob qualquer forma.

A reprodução e/ou uso comercial não-autorizado desta obra, no todo ou em parte, constituem infração da lei de direitos autorais.

(Lei 9610/98) Capa e lay-out: do autor

(3)

PLANO DA OBRA

PARTE I

CAPÍTULO I – CRIPTOGRAFIA CLÁSSICA, 7

CAPÍTULO II – HISTÓRIA CONCISA DA CRIPTOLOGIA, 47

CAPÍTULO III – FUNDAMENTOS DA CRIPTOANÁLISE CLÁSSICA, 65 CAPÍTULO IV – CRIPTOANÁLISES CLÁSSICAS, 87

PARTE II

CAPÍTULO V – CRIPTOGRAFIA COMPUTACIONAL, 101 CAPÍTULO VI – SISTEMAS DE CRIPTOGRAFIA, 115 CAPÍTULO VII – CRIPTOGRAFIA E SEGURANÇA – I, 181 CAPÍTULO VIII – CRIPTOGRAFIA E SEGURANÇA – II, 195 CAPÍTULO IX – CRIPTOGRAFIA E SEGURANÇA – III, 205 CAPÍTULO X – CRIPTOGRAFIA MATEMÁTICA, 213

CAPÍTULO XI – FUNDAMENTOS DA CRIPTOANÁLISE MODERNA, 231 CAPÍTULO XII – SEGURANÇA EM REDES DE DADOS, 277

CAPÍTULO XIII – CRIPTOGRAFIA QUÂNTICA, 299

ANEXOS,

305 FUNÇÕES RANDOM E RANDOMIZE, 307

ALGORITMOS E SISTEMAS CRIPTOGRÁFICOS, 309 TABELA DE CÓDIGOS ASCII, 313

APÊNDICES,

319

GRADES DE TRANSPOSIÇÃO REGULARES E IRREGULARES, 321 GERADOR DE NÚMEROS PSEUDO-RANDÔMICOS, 327

CODIFICAÇÃO POR TRANSFORMAÇÃO EM CAMADAS – MCTC, 331 FATORAÇÃO USANDO A FUNÇÃO QUADRÁTICA, 341

REFERÊNCIAS BIBLIOGRÁFICAS,

345 LIVROS IMPRESSOS, 345

LISTA CONCISA DE TEXTOS EM FORMATO PDF, 347 SITES DE INTERESSE, 347

(4)
(5)
(6)
(7)

CAPÍTULO I

CRIPTOGRAFIA CLÁSSICA

1.0 – Mensagem Oculta ou Mensagem Secreta?

Desde a antiguidade que se procura um meio seguro e eficaz de enviar ou receber mensagens secretas, de modo que o seu conteúdo não possa ser conhecido por estranhos, caso a mensagem seja descoberta e/ou interceptada.

Uma forma de fazer isso era simplesmente ocultando a mensagem, disfarçando de algum modo o seu portador/recipiente. Por exemplo, o historiador Heródoto narra um incidente de ocultação no qual a mensagem foi escrita no couro cabeludo de um escravo, cujos cabelos tinham sido previamente raspados. Quando os cabelos voltaram a crescer, o escravo foi enviado a outra cidade, passando despercebido pelos guardas, que nada encontraram em suas vestes que o incriminassem. Chegando ao seu destino, bastou raspar novamente os cabelos e exibir a mensagem.

Neste caso, em que uma mensagem não codificada é escondida, diz-se que a comunicação secreta se dá por steganografia.1 Se a mensagem não é oculta, mas simplesmente disfarçada, o processo é denominado encriptação da mensagem. Como a mensagem normalmente é uma mensagem escrita, a arte de ocultar ou disfarçar uma mensagem é também chamado de escrita secreta.

Se a mensagem não era ocultada, mas simplesmente disfarçada, este disfarce costumava ser realizado de duas maneiras diferentes: pela substituição das letras por outras, do mesmo alfabeto, ou pela sua transposição (deslocamento de posição).

1.1 – Cifras, Códigos, Encriptação, Codificação

A cifra é um (ou mais de um) algoritmo que cifra e/ou decifra um texto. A operação do algoritmo costuma ter como parâmetro uma chave criptográfica. Tal parâmetro costuma ser secreto (conhecido somente pelos comunicantes). A cifra pode ser conhecida, mas não a chave; assim como se entende o mecanismo de uma fechadura comum, mas não se pode abrir a porta sem uma chave real.

De um modo geral, um código é o mesmo que uma cifra. Especificamente, no jargão da criptografia, os dois conceitos são distintos. Um código funciona manipulando o significado, normalmente pela substituição simples de palavras ou frases. Uma cifra, ao contrário, trabalha na representação da mensagem (letras, grupos de letras ou, atualmente, bits). Por exemplo, um código seria substituir a frase atacar a cidade por Salão de Festas. Uma cifra seria substituir essa frase por jdiefjkfuewlrfszmdke.

Os códigos não envolvem chave criptográfica, somente tabelas de substituição ou mecanismos semelhantes. Os códigos podem ser, então, encarados como cifras cuja a chave é o próprio conhecimento do mecanismo de funcionamento da cifra.

O termo encriptação evita as ambigüidades que possam surgir do uso das palavras codificação (encriptação por código) e cifragem ou ciframento (encriptação por

1 Palavra originada das palavras gregas steganos, que significa “coberto”, e graphein, que significa

“escrever”. Os processos de ocultar uma mensagem (a esteganografia) ou de disfarçá-la criaram a arte da escrita secreta (a escrita secreta é também conhecida como cifrário ou código secreto).

(8)

cifras).2 O texto não codificado é chamado de texto original, texto corrido ou texto claro (plaintext, em inglês). O texto codificado é chamado de texto cifrado, mensagem cifrada ou criptograma. O processo de converter o texto original em texto cifrado é chamado composição de cifra, e o inverso, como já dito, é chamado de decifração.

Atualmente, o processo de ocultar ou disfarçar uma mensagem é conhecido como criptografia. A arte do deciframento é chamada criptoanálise (ou criptanálise),3 e

o conjunto criptografia/criptoanálise é chamado Criptologia.

1.2 – Encriptação por Sustituição de Letras 1.2.1 – Encriptação Monoalfabética

Este sistema de encriptação é também chamado de Ciframento. Nele é usado apenas um alfabeto, e nele, as mesmas letras claras serão substituídas pelas mesmas letras cifradas, no sistema por substituição de letras.

1.2.2 – A Cifra de César

Várias formas de comunicação secreta foram extensamente usadas, como, por exemplo, a utilizada pelo imperador romano Júlio César4 para se comunicar com os seus generais. César usava um sistema simples de substituição de letras, em que cada letra do alfabeto (que podia ser usado tanto o alfabeto romano quanto o grego) era trocada por uma outra letra do mesmo alfabeto, deslocada. O exemplo a seguir ilustra sua utilização, usando o alfabeto português.

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 D E F G H I J K L M N O P Q R S T U V W X Y Z A B C

Neste exemplo, cada letra da mensagem original é trocada pela letra deslocada de três posições para a direita. Outros deslocamentos também podem ser usados.

O Cifrário de César é extremamente vulnerável, porque basta fazer 25 deslocamentos para se encontrar a chave.

O método de encriptação por cifras (vide nota 2) possui um algoritmo e uma chave. O algoritmo é o processo de codificação por substituição, e a chave define o alfabeto a ser utilizado tanto na encriptação quanto na desencriptação.

1.2.3 – O Atbash

Entre os hebreus, costumava-se usar o processo chamado atbash. Neste caso, as 22 letras do alfabeto eram escritas onze a onze, e cada letra seria substituída pela correspondente superior ou inferior.5

2 Doravante, serão utilizadas, indistintamente, as expressões encriptação, codificação ou ciframento, para

indicar o processo de encriptação, e desencriptação, decodificação, decifração ou deciframento, para indicar o processo de desencriptação (geralmente chama-se ciframento à substituição por letras, e codificação, à substituição por símbolos).

3 Análise do texto codificado em busca de padrões que identifiquem mensagens camufladas por códigos,

e permita realizar o processo de sua decifração.

4 E por isso conhecida como Cifra de César. Este sistema, que utiliza a substituição simples de letras, é

também conhecido como sistema por deslocamento de letras.

(9)

O processo de cifragem/decifragem ficava mais fácil, se o alfabeto fosse colocado por extenso:

A cifragem se faz de cima para baixo, e a decifragem, de baixo para cima. Mas a atbash é extremamente vulnerável, devido à propriedade de simetria que apresenta:

O conjunto de livros judeus conhecido como Torah (Pentateuco; Gênesis; Êxodo; Levítico; Números), escritos em hebraico, é o cerne de um misterioso código descoberto no século XVIII pelo Rabino Elijah Solomon. É atribuída a ele a seguinte afirmação: “Tudo o que existiu, existe e existirá até o fim dos tempos está incluído na Torah, os cinco primeiros Livros da Bíblia”. Esta fantástica afirmação, entretanto, já tinha sido enunciada por outros notáveis Rabinos do passado, tais como Moisés ben Maimon, Moisés ben Nachman e Rabenu Bachya (circa séc. XII-XIII).

No século XX, o Rabino Michael Ber Weissmandl fez uma pesquisa em busca de supostos códigos contidos na Torah. Mas foi preciso que surgissem os computadores, e uma nova geração de pesquisadores (entre os mais conhecidos, Doron Witztum e Eliyahu Rips, especialistas em matemática estatística) para que se tornasse possível uma pesquisa em profundidade da Torah. O resultado estarreceu os pesquisadores.

Através de uma pesquisa do texto6 em que se buscavam palavras formadas por letras eqüidistantes (p. ex., formar palavras com cada 50ª. letra do texto – mas qualquer outro intervalo pode ser utilizado), encontravam-se referências a personagens e lugares históricos do passado, mas igualmente, do presente. Havia, inequivocamente, um código oculto no texto da Torah!7

1.2.4 – O Código Maçônico

O Cifrário maçônico, ou escrita maçônica8: é um tipo de escrita oculta antigamente usada para comunicação entre maçons. Usa o sistema de susbstituição de cifras, em que cada letra é substituída por outra.

6 Denominada SAE – Seqüências alfabéticas eqüidistantes, ou codificação por salto de letras. 7 Ver: SATINOVER, 1998.

(10)

A escrita é bem simples: basta substituir cada letra do texto claro pela porção da grade que lhe corresponde. Por exemplo:

A = H = T = W = etc.

A palavra maçom fica assim, após ser cifrada conforme o código:

A rigor, a cifra maçônica não é uma codificação, mesmo porque ela é extremamente fácil de ser decifrada.

1.2.5 – Encriptação por Substituição de Símbolos

Neste processo, ao invés de se substituir as letras por outra letras, a substituição é feita utilizando símbolos. Este sistema é chamado de Codificação.

Seja, por exemplo, usando a tabela de códigos, enviar a seguinte mensagem:

Príncipe viaja para o castelo esta noite. Deve ser assassinado. Tabela (parcial) de Códigos:

09 Viajar 04 Castelo 01 Príncipe 02 Assassinato 12 Esta noite

A mensagem secreta codificada é: 01 09 04 12 02

A fraqueza deste código está no fato de que cifras iguais indicam conteúdo idêntico (por exemplo, castelo é sempre indicado pelo número 04).

(11)

1.2.5.1 – Nomencladores

Se o processo de codificação envolvesse letras e símbolos, ou apenas símbolos, era chamado de nomenclador.9 Neste, os símbolos substituiriam não apenas letras, mas também nomes de figuras importantes, cuja identidade não poderia ser conhecida.

A figura mostrada a seguir ilustra o nomenclador utilizado pelo embaixador da Rainha Elisabeth I da Inglaterra na França, Sir Francis Walsingham.

Nomenclador de Walsingham

1.2.6 – O Cifrário por Rotação

Nos códigos mais antigos, a codificação por substituição era feita usando um único alfabeto. Por esta razão, era denominada codificação monoalfabética.10

Durante séculos, a encriptação monoalfabética foi considerada segura, nos dois processos, transposição e substituição. Para dar maior segurança, muitas vezes os dois processos eram utilizados conjuntamente.11 Além disso, podiam ser usados dois ou mais processos sucessivos de encriptação.12

O processo utilizado por Júlio César foi aperfeiçoado no século XV pelo arquiteto italiano Leon Alberti. Ele inventou o Cifrário por Rotação, o qual utiliza um Disco de Cifras, que chegou mesmo a ser usado na Guerra Civil Americana.13

9 A decifração do nomenclador utilizado nas comunicações secretas da rainha Maria, da Escócia,

envolvida em um complô contra a rainha Elisabeth I, da Inglaterra, levou a que a primeira fosse levada ao cadafalso e sofresse a morte por decapitação.

10 Neste caso, o alfabeto permanece fixo durante toda a cifragem. Ou seja, a substituição de cada letra não

muda; cada letra será sempre substituída pela mesma letra cifrada.

11 Às vezes eram combinados processos de transposição-substituição-transposição. 12 Este processo é chamado superciframento, ou supercifragem.

13 Leon Battista Alberti (1402-1472), escreveu o tratado Modus Scribendi in Ziferas. Atribui-se a Alberti

(12)

Disco de Cifras

Este consiste de dois discos com diâmetros diferentes, montados concentricamente e em que estão gravados os alfabetos, de forma que ao movê-los em torno do eixo comum, os mesmas se relacionam entre si. Deste modo, o disco de cifras permite de uma forma prática e fácil mudar as cifras.

Cada letra pode ser representada de 26 maneiras diferentes, dependendo da sua posição em relação ao alfabeto central. Para usa-lo, é necessário primeiro que a chave ou cifra seja designada. Por exemplo, a letra A no alfabeto convencional pode ser relacionada como L no alfabeto codificado. Por exemplo, a codificação abaixo é feita “rotando” cinco caracteres para a frente:14

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 W X Y Z A B C D E F G H I J K L M N O P Q R S T U V

O Cifrário por Rotação, monoalfabético, introduziu uma dificuldade a mais pelo fato de que agora podiam ser realizadas 25 (26-1) trocas (ou permutações) circulares para cada letra.

O Disco de Cifras não era invulnerável, apesar da quantidade imensa de chaves possíveis (na realidade, muitas das permutações podiam ser descartadas, por inúteis).15

1.2.7 – Encriptação por Sustituição Polialfabética de Letras

O sistema monoalfabético serviu por séculos para codificar com segurança as mensagens que possuíam valor estratégico ou militar de qualquer tipo, e que não podiam se tornar conhecidas.

Aos poucos, entretanto, novas técnicas de deciframento16 foram sendo inventadas, e o sistema monoalfabético foi ficando cada vez mais vulnerável.

Um dos aperfeiçoamentos foi o uso da encriptação polialfabética (este processo é também chamado Ciframento) em que vários alfabetos embaralhados são utilizados, para dificultar o deciframento da mensagem pela análise de frequência de letras.17

14 Como cada letra do alfabeto de cima pode ser combinada com 26 letras do alfabeto inferior, isto sugere

a possibilidade de se poderem criar 25! (15511210043330985984000000) combinações diferentes.

15 Muitas delas, se utilizadas, irão deixar várias letras iguais.

16 Uma das técnicas mais sofisticadas foi descoberta pelos árabes abássidas, e consistia em analisar

estatisticamente a frequência com que as letras apareciam em um texto cifrado, comparando-as com as letras mais comuns do alfabeto utilizado (ver Capítulo II). Atualmente, esta técnica é conhecida pelo nome de Princípio de Máxima Verossimilhança.

(13)

No exemplo abaixo é usado a convenção atualmente aceita: alfabeto original em minúsculas; alfabeto cifrado em maiúsculas.

Alfabeto original: 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 Alfabeto cifrado 1: S Y K J M F P Z R B Q U E I C V T X O W L D A H G N Alfabeto cifrado 2: D C N E U G Y J M K O Q F V P S R I T L W Z X H B A

Na encriptação ou codificação, usa-se alternadamente um ou outro alfabeto cifrado, de modo a dificultar o deciframento.

1.2.7.1 – A Cifra de Substituição Homofônica

Um processo que foi desenvolvido, chamado Cifra de Substituição Homofônica, usa um sistema mais simples de substituição polialfabética. Nele, são introduzidos símbolos diferentes para as letras mais frequentes. Por exemplo:

A A B C D E E F G H I I J K L M N O O P Q R S T U V W X Y Z V G ♦ X C ♠ P F W A K B N E ♣ M L S Z T Q ♥ I D Y O J U H R

Para cifrar, usa-se, na primeira ocorrência da letra A, ela é substituída pela letra V; na segunda ocorrência, pela letra G, e alternando.

Em outra variante usam-se números com dois algarismos para substituir as letras mais freqüentes de todo o alfabeto, ao invés de restringir-se às vogais. As letras menos freqüentes devem ser substituídas por apenas um número.

1.2.7.2 – Cifrário Homofônico de Crema

Este cifrário foi criado por Simeone de Crema em 1401. Nele, utilizava-se uma substituição múltipla das vogais do texto original (a cada vez, a vogal era substituída por símbolos diferentes entre si).

Cifrário de Simeone de Crema

1.2.7.3 – Cifrário Homofônico de Michele Steno

Michele Steno foi Doge de Veneza de 1400 a 1413. Ele usava uma cifra homofônica na qual havia muitos símbolos que podiam ser escolhidos para cada caracter. A cifra usava também nulas18 e caracteres especiais para certas palavras de uso frequente.

17 Outro processo usa letras aleatórias chamadas nulas, que não fazem parte da mensagem, para dificultar

a análise de freqüência.

18 Nula ou cifra nula é uma forma de cifragem em que o texto claro é misturado com uma quantidade de

(14)

Cifrário de Michele Steno

1.2.7.4 – Cifrário Homofônico do Duque de Montmorency

Em 1552 o Duque de Montmorency usava um cifrário homofônico em sua correspondência com a Inglaterra. Nele, caracteres especiais substituíam nomes ou cargos de pessoas. Para aumentar a segurança da cifra, Montmorency também fazia uso de nulas.

Cifrário do Duque de Montmorency

1.2.7.5 – Cifrário Homofônico de Philibert Babou

Em 1558, Philibert Babou, criptoanalista oficial do rei François I da França, utilizava um cifrário homofônico no qual as letras, ou conjuntos de duas letras (dígrafos), de três letras (trígrafos) e quatro letras (quadrígrafos) mais comuns do idioma francês eram substituídos por símbolos.

(15)

A cifra homofônica de Babou

1.2.7.6 – Cifrário Homofônico do Rei Henrique IV

Em 1595, Henrique IV, rei da Inglaterra, utilizava uma cifra homofônica para tratar de assuntos sigilosos. Além das vogais, as consoantes tinham mais de um caracter para substituí-los.

A cifra de Henrique IV

1.2.7.7 – Cifrário Homofônico do Rei Luis XIII

Em 1628, o rei Luis XIII da França usava uma cifra homofônica para tratar da correspondência diplomática entre a França e Constantinopla. Para assuntos particulares, ele utilizava uma outra cifra homofônica.

(16)

Cifra particular do Rei Luis XIII

Cifra para a correspondência Paris-Constantinopla

O sistema homofônico, apesar de constituir um progresso na cifragem, não é um sistema indecifrável.

(17)

1.2.7.8 – O Cifrário de Trithemius

O abade beneditino Johannes Trithemius19 (1462-1516) propôs que o alfabeto simples de César fosse ampliado em uma matriz com 26 linhas, com um deslocamento por linha (a matriz proposta por ele normalmente é atribuída ao francês Blaise de Vigenère, cuja cifra será vista em seguida).

Quadro de Trithemius

Neste sistema, a codificação de cada letra é realizada usando fileiras escolhidas do alfabeto deslocado, descendo ao longo do Quadro. Ao chegar à letra Z, o processo é reiniciado. Para codificar uma letra, escolhe-se uma linha e usa-se a primeira linha como guia. Para codificar um texto claro qualquer, a codificação teria início buscando a primeira letra do texto claro na primeira linha, e descendo até encontrar a linha escolhida e a a letra codificada, e assim sucessivamente. Por exemplo, usando a 10ª linha, a letra de texto claro “A” seria codificada como "J".

O quadro de Trithemius é um bom exemplo de cifra polialfabética.

1.2.7.9 – A Cifra de Vigenère

Em 1562 o francês Blaise de Vigenère aperfeiçoou o sistema polialfabético de Trithemius. Seu sistema é chamado Cifra de Vigenère.20 Nele, a codificação é feita usando-se uma chave constituída por uma palavra ou frase de fácil memorização.21

Quando o texto original é maior que a chave, esta é repetida tantas vezes quantas forem necessárias.

O exemplo a seguir mostra a codificação de um texto (assaltem o forte) realizada com a palavra-chave (SEGREDO), e usando o Quadro de Trithemius.

19 Ele escreveu o tratado Polygraphiae Libri Sex.

20 Vigenère tornou-se famoso pela publicação de sua obra (1586), Traicté des Chiffres (Tratado das

Cifras).

(18)

Palavra-chave: S E G R E D O S E G R E D O Texto original: a s s a l t e m o f o r t e Texto cifrado: S W Y R P W S E S L F V W S

Este é um exemplo de substituição polialfabética periódica. No caso da substituição polialfabética aperiódica, a chave não se repete regularmente.

Pode-se, por exemplo, eliminar as duas últimas letras da palavra-chave, palavra sim palavra não:

Palavra-chave: S E G R E D O S E G R E S E Texto original: a s s a l t e m o f o r t e Texto cifrado: S W Y R P L I S F J R F L W

Pode-se também usar uma sentença qualquer de um texto (escolhida previamente de comum acordo) para servir de chave (por exemplo, a montanha tem mi(l metros)):

Chave: A M O N T A N H A T E M M I Texto original: a s s a l t e m o f o r t e Texto cifrado: A E G N E T R T O Y S D F M

Pode-se também fazer recomeçar a chave, assim que uma letra do texto claro é encontrada. Esta técnica, conhecida como Sistema Interruptor do Texto Corrido, é mostrada a seguir (no exemplo, a chave – montanha - recomeça quando encontra a letra A). O texto original é: destruir canhão.

Chave: M O N T A N H A M M O N M O Texto original: d e s t r u i r c a n h a o Texto cifrado: P S F M R I P R O M B U A C

1.2.7.10 – O Cifrário Gronsfeld

Uma variante mais fraca do que o Cifrário de Vigenère, mas mais forte do que o de Trithemius, é o chamado Cifrário de Gronsfeld.

Cifrário de Gronsfeld

Neste cifrário, as palavras-chaves devem usar apenas as dez primeiras letras do alfabeto. Entretanto, ele é baseado em um número-chave, e não em uma palavra-chave.

(19)

Pois do céu é revelada a ira de Deus contra toda impiedade22, ou seja: A ira de Deus

O número-chave é 1027 (que, coincidentemente, significa BACH). A i r a d e D e u s

B ACH BA CH BA

B I T H EE FL VS (BITHEEFLVS)

Além do número reduzido de chaves que proporciona, este cifrário ainda impede que certas letras sejam originadas de outras: por exemplo, o S não pode surgir das letras de A até I, ou das letras T até Z.23

Todas estas características tornam extremamente fraco este cifrário.24 1.2.7.11 – Os Cifrários de Beaufort

O Cifrário de Vigenère pode ser usado de duas maneiras, com duas regras de codificação/decodificação.

Em uma, a letra da mensagem encontra a letra da chave abaixo, e a letra codificada é encontrada na primeira coluna à esquerda. Pela outra regra, corre-se para baixo a partir da letra da chave (na primeira linha) até encontrar a letra da mensagem, e a letra codificada é encontrada na primeira coluna à esquerda.

Estas características são exploradas nos chamados Cifrários de Beaufort.25

Por exemplo (cf. SGARRO), a mensagem This is the same old stuff, codificada pela palavra-chave WIND.

T HI S I S T H E SAME OLD S TUF F

WIND WI NDW I NDW I ND WINDW

DBFL OQ UWS QNRS UCA E PTYR

XZVP MK G E I KNJ I GYA WLHCJ

Na tabela de Vigenère mostrada a seguir, está indicada a primeira codificação (que leva à letra D – pela primeira regra – e à letra X – pela segunda regra).

22 A sentença completa é: “Pois do céu é revelada a ira de Deus contra toda a impiedade e injustiça dos

homens que detêm a verdade em injustiça” (ou, em outra tradução: “A ira de Deus Se revela do céu contra toda impiedade e perversão dos homens que detém a verdade em injustiça.” (Romanos 1:18).

23 Olhando embaixo, a letra S somente surge após o intervalo A até I, visto em 0, em cima. Olhando as

colunas de letras encimadas por T até Z, não surge nenhuma letra S nelas.

24 Este cifrário foi quebrado pelo criptoanalista francês Étienne Bazeries, que, incidentalmente, quebrou o

nomenclador usado por Napoleão Bonaparte, entre outros.

25 O primeiro método é conhecido como Cifrário Verdadeiro de Beaufort (usa o sistema criptograma =

chave – mensagem. O segundo método, conhecido como Cifrário Variante, ou The Same Old Stuff, usa o sistema criptograma = mensagem – chave). Este cifrário já tinha sido descrito por Giovanni Sestri em 1710.

(20)

1.2.7.12 – O Cifrário de Porta

Outra variante do Cifrário de Vigenère é denominada Cifrário de Porta. Neste cifrário, cada metade se mantém fixa, enquanto que a outra metade é girada uma letra por vez.

Por exemplo, se a palavra-chave é vingança, e a mensagem é castelo, a primeira letra fica assim codificada: a primeira letra, C, é codificada inicialmente com a letra P; procurando o alfabeto com o cabeçalho P, a letra C é finalmente codificada com a letra V.

Apesar de aparentemente complexo, este cifrário possui várias ciladas. Por exemplo, se a letra de chave é U ou V, a letra clara A é cifrada como Q, e a letra clara Q é cifrada como A. Outra característica desagradável deste cifrário é que várias

(21)

palavras-chave são intercambiáveis: CASA ou DATA, por exemplo (isto surge em razão dos cabeçalhos duplos). E assim como no Cifrário de Gronsfeld, várias linhas são perdidas (13 neste cifrário, contra 16 no anterior). Dessa maneira, ao invés de 26 substituições, são disponíveis apenas 13.

1.2.7.13 – A Cifragem por Substituição de Grupos de Letras

Um dos próximos aperfeiçoamentos a serem feitos surgiu quando foram propostos códigos de substituição não de letras isoladas da mensagem clara, mas de grupos de letras.

Este sistema, curiosamente, surgiu de um sistema de sinalização descrito pelo historiador grego Políbio, que viveu no século II a.C.

O sistema era formado por um bloco quadrado de letras; sendo 26 o número de letras normal da maioria dos alfabetos, uma das letras deveria ser desprezada. Para os exemplos que serão descritos, será desprezada a letra Q, que costuma ser útil para os criptoanalistas, por não vir sozinha e ser sempre acompanhada da letra U. A letra Q pode ser substituída, sem problemas, pela letra K.

Políbio descreveu o que foi chamado de Xadrez de Políbio, o qual é mostrado a seguir.

Deste modo, A é representada por “1 1”, B por “1 2”, até chegar a Z, que é representada por “5 5”. Uma mensagem seria então codificada por dois números. Por exemplo, a palavra Grécia:

G R E C I A 2 2 4 2 1 5 1 3 2 4 1 1

Na verdade, este sistema pretendia ser apenas um método de comunicação à distância, o que se fazia através do uso de tochas acesas.

______________________________________________________________________ Um método moderno de comunicação (pelo telégrafo) foi idealizado pelo inventor norte-americano, Samuel Morse. Para conseguir uma comunicação rápida, ele usou símbolos constituídos por traços e pontos para as letras. Ao visitar uma tipografia, Morse percebeu que os tipos (letras) que enchiam as caixas, e que eram usadas para compor um texto, eram tanto menos quanto menos fosse usada aquela letra. Ou seja, ele fez uma análise de freqüências intuitiva, para o idioma inglês. Desse modo, ele abreviou os símbolos correspondentes às letras mais usadas (a letra e, a mais usada, é formada

(22)

por um único ponto), deixando os símbolos mais complexos para as letras menos usadas.

______________________________________________________________________

1.2.7.14 – A Cifra Playfair

O Xadrez de Políbio serviu de base para criar algumas Cifras, tais como a Cifra Playfair e a Cifra Delastelle (que se verá adiante).

Charles Wheatstone foi um cientista inglês conhecido por muitas invenções e por ter sido um dos pioneiros do telégrafo elétrico. Ele criou um tipo de codificação que se tornou popularmente conhecido como Código Playfair, o nome do seu vizinho, Lord Playfair, que não a inventou, mas a popularizou.26

A Cifra Playfair introduziu o processo de codificação por blocos. A cifragem (que usa uma palavra-chave) se dá substituindo cada par de letras no texto original por outro par de letras. O bloco de letras é um quadrado 5x5, com 25 letras do alfabeto (i e j são consideradas uma única letra). A palavra-chave, que pode ter qualquer tamanho (não pode ter letras repetidas) é escrita, e em seguida preenche-se o quadrado com o restante das letras não constantes da palavra-chave.

Usando, por exemplo, a palavra-chave felizardo constrói-se o seguinte quadrado:27

26 Lyon Playfair, Barão de St. Andrews. A Cifra Playfair foi muito usada, inclusive durante a Primeira

Guerra Mundial.

27 A palavra não deve ter caracteres repetidos, e o resto do alfabeto segue a seqüência, pulando as letras

(23)

F E L I/J Z A R D O B C G H K M N P Q S T U V W X Y

A mensagem a ser cifrada é quebrada em pares de letras (dígrafos); duas letras iguais, juntas, devem ser intercaladas pela letra x. Uma letra final isolada é acrescida da letra x.

Por exemplo, seja codificar o seguinte texto:

Encontre-me na rua atrás da Assembléia

Por quebra e por inserção, torna-se:

en co nt re me na ru ax at ra sd ax as xs em bl ei ax A cifragem será feita assim:

• Se as letras estão dentro da mesma fileira, são substituídas pelas letras à direita de cada uma (ei torna-se LZ).

• Se as letras estão dentro da mesma coluna, são substituídas pelas letras abaixo de cada uma (na torna-se UC).

• Se uma das letras está no fim da fileira, é substituída pela letra no começo. • Se uma das letras está no fundo da coluna, é substituída pela letra do topo. • Letras em fileiras e colunas diferentes são substituídas pelas respectivas letras

das interseções.

en co nt re me na ru ax at ra sd ax as se mb le ia FP AK NP GR GZ UC AV UO NB DR QO UO NO PJ TM IL OF28 A Cifra Playfair também não se mostrou invencível.

A análise de freqüência de letras simples, que permitia decifrar os códigos monoalfabéticos tinha sido aperfeiçoada; ao invés de buscar apenas letras simples, a análise passou a incluir a distribuição de dígrafos e trígrafos no idioma.29

Aliada à busca de outras peculiaridades do idioma, esta análise múltipla permitia encontrar a maioria dos segredos dos códigos. No caso da Cifra Playfair, bastava procurar os dígrafos mais comuns do idioma inglês: th, he, an, in, er, re, es.

28 Note-se que no caso do dígrafo NT, T (última letra) é substituída pela primeira (N), que por pertencer

ao dígrafo e estar na mesma fileira, é substituida pela letra à direita (P).

(24)

1.2.7.15 – A Cifra Delastelle

Um contemporâneo de Playfair foi Felix-Marie Delastelle (1840-1902). Ele criou um cifrário em blocos 5x5, uma espécie de xadrez de 25 casas. Por exemplo, usando a chave ABAT-JOUR (cf. Sgarro):

1 2 3 4 5 1 A B T J O 2 U R C D E 3 F G H I K 4 L M N P S 5 V W X Y Z

O ciframento é feito em três etapas. Seja cifrar a mensagem: Atacar cidade.30 Na primeira, a a mensagem é cortada em blocos de cinco letras cada um; embaixo de cada letra, escreve-se o número da coluna e, mais abaixo, o número da linha indicativa da posição da letra no bloco 5x5.

A T A C A 1 3 1 3 1 1 1 1 2 1 R C I D A 2 3 4 4 1 2 2 3 2 1 D E X X X 4 5 3 3 3 2 2 3 3 3

Na segunda etapa, trancrevem-se as cifras horizontais duas a duas, sequencialmente:

13 13 11 11 21 23 44 12 23 21 45 33 32 23 23

Em seguida, recodificam-se as letras, seguindo a ordem numérica (em blocos de cinco letras):

FFAAB GPUGB YHCGG Este é o criptograma final.

O cifrário de Delastelle é conhecido como Cifrário Bifendido. Ele criou também o Cifrário Trifendido, formado em um cubo 3x3x3.

Apesar de complexos, tais cifrários apresentam padrões detectáveis, os quais são utilizados pelos criptoanalistas para decifrá-los.

(25)

1.2.7.16 – Encriptação por Sistemas de Cifras

O sistema de cifras, que é também um sistema por substituição, utiliza o mesmo método utilizado pelos antigos nomencladores. Ou seja, a substituição não é de letras, mas sim, de palavras.

Neste sistema, o criptógrafo compila uma espécie de dicionário, o qual contém uma relação de palavras claras traduzidas em um tipo de código numérico em seqüência. Por este motivo, este sistema é conhecido pelo nome de Cifrário por Dicionário, ou Repertório, ou simplesmente Código.

Um exemplo de palavras dicionarizadas neste cifrário são dadas a seguir:

BOMBA 21299 BOMBARDEIO 21300 BONAPARTE 21301 ... CANHÕES 21305 ... CAVALARIA 21310

Quando a ordenação por palavras é alfabética e a numérica é seqüencial, diz-se que o código é por lista simples (como no exemplo dado). Este tipo de codificação, entretanto, é pouco seguro, exatamente pela seqüencialidade, que dá pistas preciosas para o criptoanalista. Por exemplo, se uma palavra é decodificada, a seguinte (em ordem alfabética quase que se torna evidente.

Se a ordenação é feita alfabeticamente, mas a numeração não é seqüencial, diz que o código é por lista dupla. Utilizando o exemplo anterior, a lista poderia sair assim:

BOMBA 43501

BOMBARDEIO 71123 BONAPARTE 30301

CANHÕES 81505

CAVALARIA 91314

Neste caso, uma segunda lista deve ser compilada, em ordem numérica acompanhada das palavras (desordenadas), para facilitar a decodificação.

Além de ser uma codificação fraca, a codificação por sistema de cifras é muito incômoda, por exigir extensos dicionários de palavras.

Freqüentemente, para aumentar a segurança, costumava-se realizar a sobrecifração ou supercifragem, em que o criptograma era cifrado uma segunda vez. Mesmo este expediente, no entanto, não dava completa segurança à mensagem cifrada.31

31 Um dos mais famosos casos de deciframento de mensagens deste tipo ocorreu em 1917, durante a

Primeira Guerra Mundial. Um telegrama alemão expedido pelo Ministro do Exterior, Arthur Zimmermann, foi quebrado pela contra-espionagem inglesa, e seu conteúdo foi repassado para os EUA, o que determinou a entrada deste país na guerra.

(26)

1.3 – Encriptação por Transposição

Além do método de codificação por substituição mono ou polialfabética, existe um outro método no qual faz-se simplesmente o deslocamento das letras, trocando-as de posição. É o chamado método de transposição. Nele, cada letra da mensagem original é tirada de sua ordem normal; ou seja, a mensagem é misturada, de forma a destruir as junções dígrafas e trígrafas que normalmente compõem as palavras.

O ciframento por transposição cria o que se denomina anagrama. Na transposição, as letras não são substituídas, e sim permutadas entre si. Por exemplo, a mensagem atacar o quartel (atacaroquartel).

Uma das transposições possíveis transforma assim a mensagem: RAQTORCEALUAAT

1.3.1 – A Cítala Espartana

O processo de codificação por transposição torna-se mais invulnerável, à medida que mais letras do texto são utilizadas.32

No século V a.C., em Esparta, utilizava-se um instrumento para esta finalidade, a cítala ou citale.33 Era um cilindro ou bastão de madeira chanfrada, no qual era enrolada uma tira de couro ou pergaminho, ao longo da qual se escrevia a mensagem. Desenrolada a tira, a mensagem somente poderia se lida se fosse enrolada em outro bastão de mesmo diâmetro.

Cítala espartana

1.3.2 – Sistemas de Transposição Monofásicos

O sistema chamado Monofásico é aquele que usa somente uma transposição. Os vários tipos de sistemas monofásicos serão vistos a seguir.

1.3.2.1 – Sistema de Código de Cancela

Estes códigos foram usados durante a Guerra Civil norte-americana para codificar mensagens transportadas por mensageiros. São bastante simples de serem implementados, e possuem duas versões.

32 Entretanto, como se verá, ele pode sofrer ataques capazes de realizar o deciframento. 33 Usado principalmente pelos governantes (éforos).

(27)

Na primeira versão, a metade do texto corrido é escrita em uma linha, e a outra metade, na linha debaixo. Seja por exemplo a mensagem cancelar o ataque.

C A N C E L A R O A T A Q U E

O texto cifrado resulta da seleção das colunas da esquerda para a direita, e do registro do texto cifrado em grupos de cinco caracteres, como mostrado a seguir:

COAAN ACAEQ LUAER

Na segunda versão o texto claro é escrito em colunas da esquerda para a direita, como mostrado:

C N E A O T Q E A C L R A A U

O texto é desenvolvido em seguida, pela seleção de duas filas e do registro dos caracteres em grupos de cinco:

CNEAO TQEAC LRAAU

Esta é uma forma bastante fraca de criptografia, e que, quando usada, deve ser complementada por outras técnicas de sobrecifração.

1.3.2.2 – Sistemas de Código de Roteiro

Neste sistema, inscrevem-se os caracteres da mensagem em uma matriz, começando em um ponto inicial prefixado e seguindo um roteiro prescrito, a seguir gerando o texto cifrado através de outro roteiro prefixado.

Seja, por exemplo, a mensagem o porto foi minado deve ser evitado. A mensagem é escrita em um bloco 6x5, como abaixo:34

Em seguida, as colunas são lidas de cinco em cinco caracteres, de cima para baixo, para formar o texto cifrado:

OFAEI PODST OIOEA RMDRD TIEEO ONVVX

Se fosse realizada uma codificação por transposição diagonal, resultaria: OFPAO OEDIR ISOMT TEDIO AREND EVOVX

34 Algumas vezes a matriz não é preenchida, como no exemplo. Neste caso, são inseridas nulas até

(28)

Ou, seguindo uma espiral no sentido horário, voltada para dentro e começando pela coluna seis, resultaria:

ONVVX ODATI EAFOP ORTIE ERESD OIMDO

A mensagem pode ser escrita de várias formas, em um bloco 6x5. A seguir, são mostradas duas versões possíveis de escrita (de cima para baixo, e em escrita bustofrédica, ou seja, em vai-vém).

O F A E I P O D S T O I O E A R M D R D T I E E O O N V V X O P O R T O N I M I O F A D O D E V V E R E S E I T A D O X

Se a mensagem é mais longa do que o número de células da matriz, os caracteres restantes podem ser inscritos em matrizes adicionais, que contenham toda a mensagem.

Assim como os métodos anteriores, este sistema é igualmente bastante fraco.

1.3.2.3 – Sistema de Coluna-Senha

Este é um dos métodos de transposição mais utilizados. Neste método, a mensagem clara é inscrita em filas, em uma matriz na qual o número de colunas é determinado por uma palavra-chave. Veja-se o exemplo (chave numérica: 24631857).

O criptograma surge quando são selecionadas as colunas na ordem numérica determinada, em grupos de cinco letras.

TASDO IDVRN EAPME IFORX OIVTO DEXXX35 1.3.3 – Sistemas de Transposição Polifásicos

Estes são os sistemas de transposição nos quais se empregam múltiplas transposições.

35 A inserção de caracteres nulos, tanto na matriz quanto no criptograma. nem sempre aumenta a

(29)

1.3.3.1 – Cifrários por Transposição de Colunas

Neste cifrário, que usa grades NxN, é usada uma das possíveis permutações de de ordem 1 a N. Por exemplo, em um bloco 6x6, de ordem 123456 (em que cada algarismo indica a ordem da coluna), suponha-se que resulte uma permutação assim indicada: 326415.36

Inicialmente, a mensagem clara (exército em manobras atacar ao amanhecer) é escrita em um bloco 6x6: 1 2 3 4 5 6 e x e r c i t o e m m a n o b r a s a t a c a r a o a m a n h e c e r x Permutando as colunas, resulta:

3 2 6 4 1 5 e x i r e c e o a m t m b o s r n a a t r c a a a o n m a a c e x e h r

O criptograma resulta da leitura das colunas (de cima para baixo), na ordem permutada:

E E B A A C X O O T O E I A S R N X R M R C M E E T N A A H C M A A A R

1.3.3.2 – O Cifrário Nihilista

Este é uma variante do cifrário anterior, em que as linhas são igualmente permutadas . 3 2 6 4 1 5 e x i r e c e o a m t m b o s r n a a t r c a a a o n m a a c e x e h r

36 Pode ser usada uma palavra-chave, na qual as letras possuam exatamente esta ordem alfabética

(326415). Por exemplo, a palavra-chave DIRECTOR, cuja primeira letra é C=1, a segunda letra é D=2 (pela ordem alfabética), etc., tem a seguinte ordem numérica permutada: 24631857.

(30)

A permutação das linhas pode obedecer ao mesmo critério anterior, ou pode ser utilizada uma outra chave numérica. Supondo a permancência do critério, resultará:

3 2 6 4 1 5 1 e x i r e c 2 e o a m t m 3 b o s r n a 4 a t r c a a 5 a o n m a a 6 c e x e h r 3 2 6 4 1 5 3 b o s r n a 2 e o a m t m 6 c e x e h r 4 a t r c a a 1 e x i r e c 5 a o n m a a O criptograma resultante é: B E C A E A O O E T X O S A X R I N R M E C R M N T H A E A A M R A C A Apesar da complexidade da anagramação, este cifrário contém todos os elementos que permitem a sua decifração por análise de freqüência.

1.3.3.3 – Transposição de Dupla Coluna

O método de transposição por coluna dupla utiliza diferentes chaves numéricas (que podem ser memorizadas através de palavras-chaves). Eis um exemplo (chaves numéricas: 24631857 e 364512): 2 4 6 3 1 8 5 7 3 6 4 5 1 2 P O R T O F O I O D R P P M M I N A D O D E V T T A E O V E S E R E V I O I E A O D T A D O P O R T V R R N S D I E I T P O

A matriz da esquerda é preenchida seguindo a seqüência numérica da matriz à direita.37 Em seguida, o criptograma é formado fazendo a leitura seqüencial numérica da matriz esquerda:

PEOSP MODDO OVOVI RTERI PAANT DTIRE

(31)

1.3.3.3.1 – A Cifra ÜBCHI

Durante a Primeira Guerra Mundial, e esporadicamente durante a Segunda, os alemãe usaram um sistema de cifragem por transposição dupla de colunas com chave38 chamado Cifra Übchi.39

Este método usa uma grade de N colunas (12 no exemplo). Uma palavra-chave é usada na primeira fileira, com as letras em ordem alfabética.

Seja codificar a seguinte mensagem: atacar aviões na base naval em Sincity. A palavra-chave fica na fileira superior; mas, para o entendimento da cifra, não será necessário o seu uso. A segunda fileira contém (desordenadamente) os números de um a doze.40

O texto da mensagem clara é inserido abaixo da fileira numérica, linha por linha, da esquerda para a direita.

10 2 8 6 3 1 12 5 11 9 4 7

A T A C A R A V I O E S N A B A S E N A V A L E M S I N C I T Y

A seguir, as colunas de 1 a 12 são transcritas em sequência linear por fileiras, de cima para baixo: coluna 1 (REI) seguido de coluna 2 (TAS) até a coluna 12 (ANT).

10 2 8 6 3 1 12 5 11 9 4 7

R E I T A S A S C E L V A Y C A N S E A B I O A A N M I V A N T

Podem ser introduzidas nulas em quantidade qualquer (por exemplo: DTEPOQW). 10 2 8 6 3 1 12 5 11 9 4 7 R E I T A S A S C E L V A Y C A N S E A B I O A A N M I V A N T D T E P O Q W

Faz-se uma última transposição, nos mesmos moldes da primeira, ou seja, transcrevendo as colunas em seqüência linear, de cima para baixo.

38 Este é um exemplo de sistema de supercifragem.

39 Este sistema já havia sido descrito por John Falconer em 1685, em sua obra Cryptomenysices

Patefacta.

(32)

10 2 8 6 3 1 12 5 11 9 4 7 S S A E Y N Q A N V L O E S A T T A I V A P I C M W E I T R A A O C B D A E N O criptograma final é:

SSAEY NQANV LOESA TTAIV APICM WEITR AAOCB DAENR

Uma última nula foi acrescentada (R) ao criptograma, para distribuir os grupos por cinco letras.

O destinatário decifra a mensagem realizando a ordem inversa de ciframento. As letras são colocadas em uma grade de 12 colunas, com a palavra-chave e a numeração das colunas (que são conhecidos por ele).

Insere-se em seguida o criptograma por colunas, na ordem numérica. Retiram-se as nulas, e repete-se a operação de transferência das linhas para as colunas numeradas.41

Este método por transposição dupla de colunas foi quebrado pelos franceses ainda durante a Primeira Guerra Mundial, o que não impediu que ele voltasse a ser usado pela Wermacht em 1941 e 1942 (com as conseqüências óbvias).

1.3.4 – Sistemas Mistos de Transposição

Se os caracteres da mensagem clara forem transpostos como caracteres simples, diz-se que realizou-se a transposição monográfica. Entretanto, a mensagem clara pode ser inscrita na matriz de transposição em grupos de dois caracteres (dígrafos), em grupos de três caracteres (trígrafos), ou em grupos de n caracteres. Esta forma de transposição é chamada de transposição poligráfica.

1.3.5 – Transposição em Grade Giratória

Neste tipo de cifragem é utilizada uma grade NxN42 (6x6, no exemplo), na qual existem quadrados recortados (os quadrados em cor branca). Para cifrar, escreve-se um texto qualquer,43 escolhido de forma a que várias letras distribuídas possam surgir através de uma grade convenientemente recortada.

Para decifrar, uma grade semelhante é aplicada sobre o mesmo texto, sendo lidas apenas as letras que aparecem nos quadrados claros. São realizadas três rotações sucessivas (normalmente, para a direita). As letras que surgem nos quadrados claros após as rotações, juntas, formarão a mensagem decodificada.44

41 Para fazer uma encriptação UBCHI, veja-se: http://rumkin.com/tools/cipher/ubchi.php. 42 Podem ser, por exemplo, 4x4, 5x5, 6x6, etc.

43 O qual pode, em si mesmo, ser um texto claro ou um texto já cifrado por outra forma (neste caso, o

criptograma foi sobrecifrado), devendo sofrer algum outro tipo de decodificação.

44 Os Cifrários por Grade Giratória foram estudados por Eduard von Fleissner von Wostrowitz

(1825-1888). Ele criou o sistema denominado Patronen-Geheimschrift. Cifrários por grade indefinida foram introduzidos pelo italiano Luigi Sacco, durante a Primeira Guerra Mundial.

(33)

Observe-se que serão obtidas nove letras, em cada leitura, correspondentes aos quadrados claros da grade. Obviamente, outros padrões podem ser realizados, conforme o número de quadrados claros.

Um exemplo do uso deste método é dado na obra de Jules Verne, Matias Sandorf. Uma mensagem cifrada é interceptada, com o seguinte conteúdo:

ihnalz zaemen ruiopn

arnuro trvree mtqssl

odxhnp estlev eeuart

aeeeil ennios noupvg

spesdr erssur ouitse

eedgnc toeedt artuee

Após várias peripécias o herói da história percebe que o criptograma pode ser lido por uma grade giratória 6x6 (as mesmas anteriores, usadas como exemplo). Sobre a mensagem interceptada, foram lidas as seguintes letras (sobre a primeira coluna):

A leitura por grade forma um outro criptograma (a mensagem fora sobre-cifrada), que após ser decifrado, revela a mensagem final.

Em uma variante deste método, uma mensagem clara é enviada, sobre a qual o destinatário aplica a grade de leitura. A leitura através dos quadrados pode produzir uma mensagem que estava oculta (esteganografia) e que pode corresponder a um texto claro

(34)

(inteligível), ou corresponder a um texto ainda cifrado, que exige uma chave para ser lido.

A encriptação por grade giratória, apesar de parecer segura, pode ser quebrada através do método de análise de freqüências de letras (freqüências simples, duplas e triplas).

1.4 – Encriptação por Esteganografia45 (Clássica)

Quanto à esteganografia, foi também usada extensamente, tanto no Ocidente quanto no Oriente.

Uma forma bastante astuciosa de esteganografia foi utilizada pelo abade beneditino Johannes Trithemius. Seu sistema era conhecido como as Ave Marias. Ele era composto por 14 alfabetos, nos quais, a cada letra, corresponde uma palavra ou grupo de palavras. O texto cifrado final, quando lido normalmente, apresenta ser um texto coerente, como se fosse uma oração ou glorificação religiosa, em latim.

O quadro mostrado a seguir apresenta um dos alfabetos de Ave Maria:

no céu N no paraíso

B para todo o sempre O hoje

C um mundo sem fim P na sua divindade D numa infinidade Q em Deus

E perpetuamente R na sua felicidade F por toda a eternidade S no seu reino

G durável T na sua majestade

H incessantemente U-V-W na sua beatitude I-J irrevogavelmente X na sua magnificência

K eternamente Y ao trono L na sua glória M na sua luz

Se se fosse codificar a palavra Pedro, por exemplo, resultaria:

Na sua divindade perpetuamente numa infinidade na sua felicidade hoje.46

Algumas palavras "nulas" podem ser adicionadas, para disfarçar ou para dar sentido ao texto. Por se constituir em um conjunto normal de palavras, o deciframento da mensagem cifrada exigiria o cotejo entre uma grande quantidade de mensagens interceptadas, até encontrar as relações apropriadas.

Por outro lado, era um sistema que exigia um tempo considerável para a codificação, sendo inviável para mensagens longas, porque o texto encriptado se tornava muito grande.

O inconveniente do sistema é o tempo necessário para a transposição do texto, e o grande aumento do texto esteganografado resultante. Por outro lado, como a mensagem cifrada se apresentava como um conjunto normal de palavras, os eventuais decifradores, devido às numerosas equivalências, teriam que acumular uma massa enorme de material antes de encontrar as semelhanças necessárias para obter a chave.

45 Para uma introdução leve ao assunto.ver: http://www.gta.ufrj.br/grad/07_2/thiago_castello/index.html. 46 Obviamente, seria uma ingenuidade separar cada parte por vírgulas, ou colocar cada parte em

(35)

1.4.1 - A Grelha de Cardano

A chamada Grelha de Cardano, ou Grelha de Richelieu (como é também conhecida), é um sistema de codificação por esteganografia. Consiste em uma folha de material rígido (conhecida como Cardano Grille) na qual existem aberturas retangulares colocadas em intervalos irregulares, da altura de uma linha de texto e de comprimento variável.

Seu uso é bastante simples: coloca-se a matriz sobre uma folha de papel e escreve-se a mensagem nas aberturas. Depois retira-se a grelha, sendo que o espaço entre as letras é preenchido com letras quaisquer. Para decodificar, coloca-se uma grelha idêntica sobre o texto recebido, para fazer aparecer a mensagem recebida.

Apesar de apresentar uma similitude com o processo de cifragem por grade, este método é um pouco mais seguro e mais eficiente de esconder mensagens do aquele. Mas, no todo, possui uma segurança muito baixa.

Uma variante desse processo consiste em escolher letras ao longo de um texto (um livro raro ou conhecido, por exemplo, escolhido de comum acordo47), de forma que formem uma mensagem. Em seguida, as letras (cuja ordem no texto segue uma seqüência numérica) são indicadas, no texto cifrado, por um número (com vários algarismos, em quantidade variável, mas não em ordem numerada – por exemplo: 116; 3; 19; 607; 61; etc) que identifica a posição de cada uma no texto, página por página.

No parágrafo anterior, por exemplo, os números: 20; 3; 6; 12; 5; 9; 19 (não são contados os espaços) indicam a palavra Cardano.48 Por este método, o texto-chave não necessita ser muito extenso.

De modo diverso, podem ser escolhidas as letras iniciais das palavras, que são então numeradas (nesse caso, o texto-chave deve ser bem extenso; uma obra literária qualquer pode ser utilizada). Cada letra inicial entra na composição da mensagem.

A mesma palavra anterior, Cardano, seria assim formada, de acordo com esse processo: 9; 13; 20; 3; 28; 41; 21.49

Este método é bastante eficiente para cifrar mensagens. Para mostrar como ele pode ser seguro, basta citar o caso da Cifra Beale. Este é um texto cifrado famoso, conhecido desde o final do século XIX nos Estados Unidos (a cifragem foi feita usando as letras iniciais das palavras do texto-chave).

Existem três páginas de cifras50, cada uma contendo uma série de números de até três algarismos. Supostamente, as cifras mencionam um tesouro enterrado, com a sua localização.

Após décadas de esforços, apenas a segunda cifra foi decodificada.51 A primeira e a terceira, que presumidamente descrevem a localização do tesouro, permanecem indecifráveis.

Uma variante deste método de cifra (denominado esteganograma) é o uso do primeiro caracter de cada capítulo de um livro qualquer, para ocultar uma mensagem.

47 Este processo é conhecido como Cifra de Livro, e utiliza um livro qualquer como chave.

48 Observe-se que letras iguais não devem ser indicadas em posições sempre iguais no texto, e sim,

escolhidas em outras posições. A letra a, que surge em Cardano duas vezes, foi escolhida segundo a sua 3ª. e 5ª. posição, no texto-chave.

49 O único problema desse método é que, se o livro-chave for descoberto, todas as mensagens passadas,

atuais e futuras serão decodificadas.

50 As cifras podem ser vistas nas páginas 105 a 107, em Singh.

(36)

Por exemplo, a obra de Aldus Manutius (1499), Tentativa de Amor em Sonho, contém um famoso esteganograma: Monge Francisco Colonna Ama Polia Apaixonadamente, sentença esta que resulta da justaposição da primeira letra do texto de cada um dos 38 capítulos da obra (que forma uma sentença com 38 letras no idioma original).

1.4.2 – A Cifra de Bacon

O sistema de código criado por Sir Francis Bacon, também conhecido como Sistema de Encobrimento, foi divulgado no capítulo 1, livro 6, de sua obra De Augmentis Scientiarum52. Ele consiste em um arranjo de cinco elementos a partir de duas categorias, designadas a e b, em um alfabeto de 24 letras (onde I=J; e U=V).

A aaaaa N abbaa B aaaab O abbab C aaaba P abbba D aaabb Q abbbb E aabaa R baaaa F aabab S baaab G aabba T baaba H aabbb U/V baabb I/J abaaa W babaa K abaab X babab L ababa Y babba M ababb Z babbb

Bacon realizou o encobrimento de dois elementos de duas categorias usando dois conjuntos de letras semelhantes porém distintas. Para cada uma das letras do alfabeto é atribuído um grupo de 5 caracteres compostos pelas letras a e b. Na encriptação, são usados os primeiros caracteres de cada letra. Por exemplo, na mensagem atacar pela manhã:

(37)

A T A C A R P E L A M A N H A a b a a a b a a a a a a a a a I R A

O criptograma resultante é a palavra IRA.

Apesar de sua sofisticação, este código mostrou-se bastante vulnerável, sendo facilmente decifrado.

1.4.3 – A Tinta Invisível

Uma forma muito comum de esteganografia utiliza tinta invisível para ocultar o texto. Esta tinta é uma substância especial usada para escrever, a qual se torna invisível após secar. Ela deve se tornar visível por algum meio, como a aplicação de calor, produto químico ou um tipo especial de iluminação (luz ultravioleta ou luz negra).

O escritor norte-americano Edgar Alan Poe, em seu extraordinário conto O Escaravelho Dourado, usou o tema da tinta invisível para construir a sua trama. Em sua história, a tinta invisível foi usada pelo pirata Capitão Kid para escrever uma carta onde ele revelava o local onde seu o seu tesouro, acumulado ao longo de anos por saques e roubos em navios, estava enterrado.

A carta foi parar nas mãos de um morador de uma ilha, e a mensagem invisível, por um acaso, acaba se lhe tornando visível, quando ele aproxima o papel do calor de uma lareira. No final, após várias peripécias, ele consegue ler e decifrar o texto, e obviamente, recuperar o tesouro.53

O uso da tinta invisível é um processo pouco seguro,54 e por esta razão, é muito pouco utilizado atualmente. Outros processos de esteganografia foram desenvolvidos, os quais serão estudados oportunamente.

1.5 – Encriptação Mista ou Híbrida

A encriptação mista ou híbrida é a que usa processos simultâneos de substituição (de acordo com um diagrama de Políbio) e transposição, como técnicas que dificultem a decifração do criptograma.

1.5.1 – A Cifra ADFGX

O advento do telégrafo obrigou a que se criasse um código que pudesse proteger os textos de telegramas. Com este objetivo, a Alemanha criou uma nova cifra com base na combinação do tabuleiro de Polybius e de palavras-chave.

Esta cifra era conhecida como Cifra ADFGX, porque essas eram as únicas letras usadas como cifra. Essas letras foram escolhidas porque seus equivalentes no código Morse eram difíceis de confundir, o que reduzia a chance de erros.

53 Na trama elaborada por Edgar Alan Poe, ele utiliza sucessivamente os processos de esteganografia e de

cifragem por substituição monoalfabética. E de uma maneira magistral, Poe introduz o leitor à questão da decifração pela análise de freqüência de letras, em um sistema monoalfabético.

54 Para ser completamente segura, a tinta deveria ser insolúvel em água, ser não-volátil, invisível à luz

ultra-violeta, não ser ativada pelo calor, não reagir com a maioria dos reagentes químicos, não decompor ou depositar cristais, não mudar de cor na presença de ácidos ou bases

(38)

O primeiro passo foi criar uma matriz semelhante ao tabuleiro de Polybius: A D F G X A A B C D E D F G H I/J K F L M N O P G Q R S T U X V W X Y Z

As letras de texto claro seriam representadas por pares de letras, por fileira/coluna. No exemplo, a letra cifrada "B" torna-se "AD", e a letra "O" torna-se "FG" (nem todas as matrizes ADFGX tinham o alfabeto organizado em ordem alfabética).

Usando a matriz, e sendo a mensagem clara attack harbour,55 para codificá-la seria feito o seguinte.

Primeiro, encontravam-se os pares de letras correspondentes a cada letra do texto claro. Neste caso, encontra-se:

AA GG GG AA AF DX DF AA GD AD FG GX GD

O próximo passo seria determinar uma palavra-chave, a qual poderia ter qualquer comprimento, mas não poderia ter letras repetidas.

Para este exemplo, foi usada a palavra CANDOUR56. Cria-se a seguir uma grade com a palavra-chave soletrada no topo. A mensagem cifrada é então escrita na grade, separando os pares em letras individuais e passando de uma linha para a outra.

C A N D O U R A A G G G G A A A F D X D F A A G D A D F G G X G D

A grade é então reorganizada de forma que as letras da palavra-chave fiquem em ordem alfabética, e alterando as colunas correspondentes às letras de forma apropriada.

A C D N O R U A A G G G A G A A D F X F D A A D G A F D G G G X D

O criptograma era realizado lendo as letras pelas colunas sucessivas:

55 Atacar o porto. 56 Franqueza.

(39)

AAAG AAAG GDDG GFGX GXAD AFF GDD

1.5.2 – A Cifra ADFGVX

A Cifra ADFGVX foi desenvolvida pelo coronel Fritz Nebel, do exército alemão57, no final da Primeira Guerra Mundial, a partir da cifra ADFGX, considerada

menos segura.

Para cifrar a ADFGVX,58 toma-se uma grade 6x6, onde são colocadas, em cima e lateralmente essas letras, e dentro da grade, aleatoriamente, 26 letras e 10 dígitos.

A mensagem a ser cifrada é: attack at 10 pm.

Inicialmente, pega-se cada letra da mensagem, que é substituída pelas duas letras que determinam sua posição. Assim, a letra a, por exemplo, é substituída por DV; a letra t é substituída por DD; a letra c é substituída por FG; e assim sucessivamente. Obtem-se a série:

a t t a c k a t 1 0 p m DV DD DD DV FG FD DV DD AV XG AD GX

Na segunda fase da codificação (a transposição), utiliza-se uma palavra-chave (MARK), que é escrita em uma nova grade:

M A R K D V D D D D D V F G F D D V D D A V X G A D G X

57 Este código foi usado pelos alemães durante as últimas ofensivas da guerra. 58 O exemplo foi retirado de SINGH.

(40)

A K M R V D D D D V D D G D F F V D D D V G A X D X A G

O primeiro criptograma é transcrito em ordem, dentro da grade. Esta, em seguida, é reposicionada em ordem alfabética (AKMR), e o texto cifrado final é lido de cima para baixo, resultando o criptograma seguinte:

V D G V V D D V D D G X D D F D A A D D F D X G

O destinatário precisa conhecer a posição das letras na primeira grade, e a palavra-chave.

Como o texto cifrado é formado por apenas seis letras (que formam os rótulos das fileiras e colunas), o criptograma resultante acaba sendo formado por uma combinação duas a duas, dessas mesmas seis letras.59

Esta cifra, que os alemães consideravam indecifrável, foi quebrada parcialmente pelo criptoanalista francês Georges Painvain, em 1918. Isto não significa, entretanto, que seja uma cifra fraca. A criptoanálise feita por Painvain teve por base a análise de freqüências e o uso altamente estilizado das mensagens interceptadas, que seguiam rígidos protocolos militares (ela ajudou a conter a última investida alemãe contra a França). A solução geral para a sua decodificação só foi encontrada em 1933.60

1.5.3 – Sistemas de Código de Fracionamento

Seja, por exemplo, a matriz de substituição biliteral dada a seguir:

A codificação inicial é feita colocando as díadas numéricas sob a mensagem clara. Por exemplo, a codificação da mensagem atacar a cidade.

59 A escolha dessas letras foi determinada pelos pontos e traços que as formam, no Código Morse, que

minimizam erros de transmissão. (Cf. Singh).

60 Ver: General Solution of the ADFGVX Cipher System, por J. Rives Childs. Um software para a

decodificação do ADFGVX pode ser encontrado em: http://www.richkni.co.uk/php/crypta/adfgvx.php. Veja-se no Capítulo III a sua criptoanálise.

(41)

A T A C A R A C I D A D E 2 4 2 3 2 2 2 3 1 3 2 3 2 5 5 5 1 5 4 5 1 5 2 5 2 3

Em seguida, os dígitos são combinados em grupos de dois e convertidos novamente em caracteres, através da matriz de substituição, obtendo-se o criptograma:

2 4 2 3 2 2 2 3 1 3 2 3 2 5 5 5 1 5 4 5 1 5 2 5 2 3 R E H E B E A Z J T I A E

Uma variante dessa técnica utiliza a divisão do texto claro em grupos de cinco caracteres, sendo que o código de fracionamento é aplicado a estes grupos. Por exemplo, seja cifrar a mensagem atacar pela retaguarda.

A T A C A R P E L A R E T A G U A R D A 2 4 2 3 2 2 1 2 1 2 2 2 4 2 3 1 2 2 3 2

5 5 5 1 5 4 1 3 4 5 4 3 5 5 4 5 5 4 1 5 A codificação é feita por blocos, como mostrado a seguir.

2 4 2 3 2 5 5 5 1 5 2 1 2 1 2 4 1 3 4 5 1 2 2 3 2 5 5 4 1 5 R E A Z I S S R B T U E A Y J

Ainda uma outra variante combina a substituição monoalfabética biliteral com a transposição por colunas. Usa-se a matriz de substituição biliteral.

Tomando-se a mesma mensagem clara anterior, tem-se:

A T A C A R P E L A R E T A G U A R D A BE DE BE CA BE BD AA BC AD BE BD BC DE BE CD AB BE BD CB BE

Em seguida, o texto cifrado é inscrito em uma matriz de transposição de colunas (364512):

(42)

É transcrito novamente pela seleção de colunas em uma ordem numérica a partir dos números mistos, gerando o seguinte texto cifrado:

BB AB CB ED DC DD BC AB DA CD BB BB BB EE CD EE EE AA EE BB Agrupados dois a dois, os caracteres são convertidos em um texto codificado de um só caracter com a matriz de substituição, resultando o seguinte criptograma:

H U D Y O | Q E U M G | H H H Z G | Z Z P Z H

1.5.4 – O Sistema Chase

Este sistema foi introduzido pelo professor Pliny Earle Chase em 1859. É a primeira descrição que foi publicada, de um sistema de fracionamento.

Ele usa uma matriz de substituição biliteral com índices numéricos. Além dos 26 caracteres do alfabeto, são usados os símbolos “.” , “,” , “–“ , “+”.

O exemplo abaixo usa a palavra-semente LEXICOGRAPH, à qual se seguem as letras restantes do alfabeto.

O texto claro é escrito em díadas verticais numéricas colocadas sob ele, conforme as posições na tabela. Por exemplo, com a mensagem computer, ficaria:

C O M P U T E R 1 2 2 1 3 3 1 1 5 6 8 0 3 2 2 8

Em seguida, o número inferior é multiplicado por 9: 1 2 2 1 3 3 1 1

5 1 1 2 2 9 0 5 2

Acrescenta-se o algarismo 1 ao início da fileira superior, sobre o 5 da fileira de baixo: 61

Referências

Documentos relacionados

[r]

Aprova as (IR 60 – 10) Instruções Reguladoras para a Organização e o Funcionamento do Programa de Atualização dos Diplomados pela Escola de Comando e Estado-Maior do

Sob a denominação de Controle Bibliográfico Universal, em colaboração com a Federação Internacional de Associações de Bibliotecários (FIAB), a Organização Educacional,

[r]

Usando a aproximação log2 = 0,3, determine quantos anos demorará para que esse elemento se decomponha até atingir um oitavo da

1 - Origem Geográfica das Escolas Lisboa Beja Faro Bragança Santarém Castelo Branco Coimbra Évora Leiria Portalegre Setúbal Viseu Estrangeiro... 55 e 56 – Memórias Terrenas de um

b) original de um dos seguintes documentos de identificação: Cédula de Identidade (RG), Carteira de Órgão ou Conselho de Classe, Carteira de Trabalho e Previdência Social

[r]