Alexandre Ferreira da Silva Renato Marinho Martins

96
Universidade do Estado do Pará Centro de Ciências Sociais e Educação Departamento de Matemática, Estatística e Informática Licenciatura em Matemática Alexandre Ferreira da Silva Renato Marinho Martins Criptografia: aspectos históricos e matemáticos Belém PA 2011

Transcript of Alexandre Ferreira da Silva Renato Marinho Martins

Universidade do Estado do Pará Centro de Ciências Sociais e Educação Departamento de Matemática, Estatística e Informática Licenciatura em Matemática

Alexandre Ferreira da Silva

Renato Marinho Martins

Criptografia: aspectos históricos e matemáticos

Belém – PA 2011

Alexandre Ferreira da Silva Renato Marinho Martins

Criptografia: aspectos históricos e matemáticos

Trabalho de Conclusão de Curso apresentado como requisito parcial para a obtenção do grau de Licenciatura em Matemática, Universidade do Estado do Pará. Orientador: Prof. Dr. Pedro Franco de Sá

Belém – PA 2011

Dados Internacionais de Catalogação na publicação

Biblioteca do Centro de Ciências Sociais e Educação da UEPA

Silva, Alexandre Ferreira da

Criptografia: aspectos históricos e matemáticos. / Alexandre Ferreira da Silva, Renato

Marinho Martins. Belém, 2011.

Trabalho de Conclusão de Curso (Licenciatura em Matemática) – Universidade do Estado

do Pará, Belém, 2011.

Orientação de: Pedro Franco de Sá.

1. Teoria dos números 2. Matemática – História 3. Criptografia 4. Algoritmos I. Martins,

Renato Marinho II. Sá, Pedro Franco de (Orientador) III. Título.

CDD: 21 ed. 512.7

Alexandre Ferreira da Silva Renato Marinho Martins

Criptografia: aspectos históricos e matemáticos

Trabalho de Conclusão de Curso apresentado como requisito parcial para do grau de Licenciatura em Matemática, Universidade do Estado do Pará.

Data: _____/______/______ Banca Examinadora ____________________________________ - Orientador Prof. Pedro Franco de Sá Dr. em Educação Universidade do Estado do Pará

____________________________________ Prof. Fábio José da Costa Alves Dr. em Geofísica Universidade do Estado do Pará

____________________________________ Profª. Rosineide de Sousa Jucá Ms. Em Educação

Belém – PA

2011

AGRADECIMENTOS

Bem, se não fosse Deus, possivelmente não estaríamos aqui. Então, quero

agradecer primeiro a Ele, por nos dar essa oportunidade. É meio clichê, mas

realmente devo agradecer, por segundo, aos meus pais, Guilherme Carvalho e

Regina Ferreira, principais responsáveis pela minha educação e por muito do que eu

sou hoje em dia. Não posso deixar de agradecer também a várias pessoas que, às

vezes sem saber, contribuíram bastante na minha vida pessoal, acadêmica e

profissional: meu irmão Lucas, companheiro, inteligente e amigo; a Franci, por ser

uma espécie de segunda mãe, na minha casa; meus camaradas do Rêgo Barros,

responsáveis por alguns dos melhores anos da minha vida; meus amigos da

instituição IFPA, o antigo Cefet, que proporcionou meu primeiro emprego e a minha

linda namorada, que eu amo muito, a Nayara.

Há também alguns professores que trilharam meu caminho e me ajudaram,

de alguma forma, a ser o profissional que hoje sou, como o Luís Otávio e a Deusélia

Nogueira, quando eu ainda estudava no Rêgo Barros; o Arthur, que muito me ajudou

quando eu estagiava na EMATER, em Marituba; a professora Márcia Santos, amiga

e companheira da monitoria da UEPA; o nosso professor e orientador Pedro Sá, que

é uma grande referência e um exemplo a ser seguido, (obrigado pela paciência!);

além do professor Adenílson Camelo, professor que me acompanhou durante o

estágio, no Rêgo Barros.

Não posso terminar sem citar os amigos que fiz na UEPA, que muito me

ajudaram em vários momentos difíceis, mesmo que talvez às vezes nem tivessem

dimensão que estavam me ajudando. São muitos, entre os futuros pedagogos,

secretários trilingues, cientistas da religião, biólogos e matemáticos. Infelizmente,

esse espaço não permite falar de todos. Porém, destaco os caras que eu considero

como verdadeiros irmãos pra mim: André, Itamar, Renato, Saulo e Walmi (vulgos

Ranger, Ítalo, Nattinho, Saulão e Tico), e a nossa mascotinha, a Mayara. Por último

ao Clube do Remo, que não tem me dado muita alegria, mas faz parte da minha vida

e eu tenho fé de que tudo há de melhorar.

Sinceramente, muito obrigado a todos, de coração!

ALEXANDRE FERREIRA DA SILVA

AGRADECIMENTOS

Primeiramente a Deus por me dar ombros mais fortes sempre que precisei

carregar fardos mais pesados.

À UEPA pela qualidade de ensino que permite formar profissionais de

qualidade.

Ao meu orientador, professor Pedro Sá, pelas orientações para a conclusão

deste trabalho e por ser um exemplo de profissional e fonte pessoal de inspiração

para seguir a carreira docente.

Aos meus amigos de UEPA dos cursos de Ciências da Religião, em especial

duas baixinhas que sempre me fazem sorrir, Narah e Monique, e Pedagogia, em

especial à Ellen Cristina pelo companheirismo; e a todos que tornaram meu tempo

nesta instituição mais agradável.

Aos meus amigos de UEPA, de curso, e de vida, em especial Alexandre,

André, Itamar, Saulo, Mayara e Walmi, pelas suas prazerosas companhias durante

todo o curso e por tudo de grandioso que fizemos juntos.

Por fim, aos meus pais. À minha mãe, principal responsável por eu está aqui,

a quem dedico tudo que consegui até hoje.

RENATO MARINHO MARTINS

“Não há fatos eternos, como não há verdades absolutas.”

Nietzsche

“Queima a ponte que acabaste de atravessar.

Para quem não pode recuar só resta avançar.

Até o rato, quando encurralado, ataca o gato.”

Masaharu Taniguchi

RESUMO

No presente trabalho apresenta os resultados de uma pesquisa bibliográfica sobre o

desenvolvimento e principais conceitos da Criptologia, ciência que estuda os

acontecimentos acerca das trocas e interceptações de mensagens sigilosas através

dos tempos. O objetivo do estudo é mostrar como ocorreu o avanço desta ciência

através da história, que remonta os tempos dos antigos faraós até os dias de hoje,

no século XXI, bem como, as suas relações com a matemática, entre cifras antigas e

atuais, até o advento da criptografia de chaves assimétricas. Como principal

exemplo desta, temos a cifra RSA, responsável por garantir formas de comunicação

seguras pela internet. São apontados os elementos matemáticos básicos da cifra,

como as diferentes formas de se obter e verificar números primos, além da

aritmética modular. Também há uma breve discussão sobre as consequências da

segurança proporcionada por esta cifra, assim como a expectativa quanto ao futuro

da Criptologia. Por fim, conclui-se que a criptografia foi e continua sendo de suma

importância à confidencialidade de informações, o que se deve, em grande parte, a

inúmeros matemáticos que dedicaram suas vidas a essa ciência e, às vezes, à suas

nações, atitudes essas decisivas para importantes acontecimentos que contribuíram

para a história da humanidade.

Palavras chave: Criptografia; História da Matemática; Criptologia; criptografia RSA;

Números Primos.

ABSTRACT

The present work presents results from a bibliographic research about the

development and main ideas of Cryptology, a science which studies events about

secret messages exchange and interception through ages. The objective of this

study is to show how this science advanced through history, dating back from the

ancient pharaohs until present time, on century XXI, as well as its interactions with

mathematics, amongst past and present ciphers, until the advent of asymmetric keys

cryptography. As a prime example of asymmetric keys cryptography there is the RSA

cipher, responsible for assuring secured means of communication through Internet.

The cipher’s basic mathematic elements have been pointed out, such as its different

ways for obtaining and checking prime numbers, and also modular arithmetic. In

addition, there is a brief discussion about the consequences of security provided by

RSA cipher and the expectations for the future of Cryptology. Finally, it is possible to

conclude that Cryptology was and still is of great importance to information

confidentiality, most thankfully to innumerous mathematicians who have dedicated

their lives to this science, sometimes to their countries, taking critical decisions

toward important happenings which contributed for the human history.

Key words: Cryptography; history of mathematics; Cryptology; RSA Cryptography;

prime numbers.

LISTA DE FIGURAS

FIGURA 01: Esquema de ramificações da Criptologia ...................................................................... 20

FIGURA 02: O alfabeto hebreu e suas cifras....................................................................................... 23

FIGURA 03: Scytale Espartano ............................................................................................................. 25

FIGURA 04: Cifrante dos Templários ................................................................................................... 30

FIGURA 05: Execução de Maria Stuart, rainha da Escócia ............................................................... 32

FIGURA 06: Disco de Alberti ................................................................................................................. 33

FIGURA 07: Tabula Recta de Johannes Trithemius ........................................................................... 34

FIGURA 08: Máquina de Diferenças nº 2 de Babbage ........................................................................ 39

FIGURA 09: Máquina Enigma................................................................................................................ 42

FIGURA 10: Bomba de Turing............................................................................................................... 46

FIGURA 11: Computador Colossus ..................................................................................................... 49

FIGURA 12: Relógio Analógico............................................................................................................. 53

FIGURA 13: Esquema para obtenção de uma chave sem a necessidade de um encontro físico . 54

FIGURA 14: Gráfico da quantidade de números primos até 100 ...................................................... 67

FIGURA 15: Gráfico da quantidade de números primos até 100.000 ............................................... 68

FIGURA 16: Gráfico de comparação da quantidade real de números primos e os de Gauss ....... 68

LISTA DE TABELAS

TABELA 01: Alfabeto da Cifra de César .............................................................................................. 26

TABELA 02: 10 primeiros números da fórmula polinomial para números primos .......................... 60

TABELA 03: Seis primeiros números de Fermat ................................................................................. 62

TABELA 04: Números primos gerados pela fórmula fatorial ............................................................. 63

TABELA 05: Crescimento do número de primos, por Gauss ............................................................ 66

TABELA 06: Atribuição de números para as letras do alfabeto ........................................................ 72

TABELA 07: Tempo de operação de operações necessárias para fatorar ................................... 77

TABELA 08: Letras e números correspondentes ................................................................................ 85

TABELA 09: Usando uma chave com a Cifra de Vigenère ................................................................. 88

SUMÁRIO

1. INTRODUÇÃO .................................................................................................................................... 14

2. HISTÓRIA E DESENVOLVIMENTO DA CRIPTOGRAFIA ...................................................................... 16

2.1. CONCEITOS BÁSICOS .................................................................................................................. 16

2.2. IDADE ANTIGA ............................................................................................................................ 20

2.3. IDADE MÉDIA .............................................................................................................................. 25

2.4. IDADE MODERNA ....................................................................................................................... 30

2.5. IDADE CONTEMPORÂNEA .......................................................................................................... 36

2.5.1. Popularização da Criptografia e a quebra da Cifra de Vigenère ....................................... 36

2.5.2. O surgimento da Criptografia mecânica ............................................................................ 39

2.5.3. As contribuições de Bletchley Park e Alan Turing ............................................................. 43

2.5.4. O código Navajo.................................................................................................................. 46

2.5.5. O surgimento da Criptografia computadorizada ............................................................... 47

3. CRIPTOGRAFIA RSA ........................................................................................................................... 50

3.1. NECESSIDADES E DESAFIOS DA CRIPTOGRAFIA NA DÉCADA DE 70 ........................................... 50

3.2. NÚMEROS PRIMOS ..................................................................................................................... 58

3.2.1. Fórmula Polinomial ............................................................................................................ 59

3.2.2. Números de Mersenne ....................................................................................................... 60

3.2.3. Método de Fermat (em relação aos números de Mersenne) ........................................... 60

3.2.4. Números de Fermat ............................................................................................................ 61

3.2.5. Primos de Shophie Germain............................................................................................... 62

3.2.6. Fórmulas Fatoriais .............................................................................................................. 62

3.2.7. Crivo de Eratóstenes........................................................................................................... 63

3.2.8. A pergunta de Gauss .......................................................................................................... 64

3.3. ALGORITMO RSA ........................................................................................................................ 70

3.4. SEGURANÇA ............................................................................................................................... 75

3.4.1. Algoritmo de fatoração de Richard Schroeppel ................................................................ 75

3.4.2. Assinatura Digital ............................................................................................................... 76

3.5. CONSEQUÊNCIAS DA CIFRA RSA ................................................................................................ 77

3.5.1. Liberdade total ou controlada? ......................................................................................... 77

3.5.2. Física Quântica e a Criptologia ........................................................................................... 79

4. CONSIDERAÇÕES FINAIS ................................................................................................................... 82

REFERÊNCIAS BIBLIOGRÁFICAS ............................................................................................................ 84

APÊNDICE A ........................................................................................................................................... 88

P á g i n a | 14

1. INTRODUÇÃO

Criptografia. Muitas pessoas já ouviram falar nesse termo, porém a maioria

delas não sabe ao certo o que significa. Alguns se arriscam a dizer que se trata de

algo sigiloso, que apenas poucas pessoas têm acesso a esse tipo de informação; já

outros imaginam se tratar de um assunto exclusivamente relacionado a hackers,

daqueles que “roubam nosso dinheiro e contas de redes sociais pela internet”, como

diria um amigo próximo.

Essas opiniões, movidas pelo senso comum, de certa forma não deixam de

ser verdade. A criptografia realmente está ligada a assuntos bastante confidenciais,

assim como hoje em dia possui estreita relação com muitas utilidades e aplicações

da informática, principalmente no que diz respeito à internet. No entanto, a arte de

estabelecer comunicação de forma a conseguir certa confidencialidade não tem

origem no nosso atual mundo cibernético. Pelo contrário, remonta a tempos em que

computadores e demais máquinas não eram sequer sonhados. Também, não é

válido dizer que ela só é usada por um grupo seleto de pessoas, já que suas

utilidades atingem todos aqueles que possuem uma conta de correio eletrônico, ou

que usam o celular, por exemplo.

Este trabalho tem como objetivo apresentar como ocorreu a evolução e

consolidação desta ciência, que tem origem nos tempos dos grandes faraós, até

chegar à segunda metade do século XX, quando surge a criptografia de chaves

assimétricas, além de justificar matematicamente o porquê de a cifra RSA ser

considerada tão segura quando relacionada às telecomunicações. Portanto, essa

análise, feita através de pesquisa bibliográfica, não ocorre de forma apenas

histórica, mas privilegia principalmente a incorporação da matemática na produção

de conhecimentos científicos que visam privacidade nas telecomunicações em geral,

com o objetivo de potencializá-la e produzir, assim, maior segurança nesse ato.

Essa pesquisa torna-se importante, pois verificamos que existe pouco

material na língua portuguesa sobre a ciência, principalmente no que diz respeito a

explicar como ocorreram e as consequência dos acontecimentos ligados a ela.

Veremos também que a criptografia gerou uma ciência chamada Criptoanálise,

responsável por quebrar as cifras e códigos criados, e que as duas, são vertentes de

outra ciência, que é chamada de Criptologia.

P á g i n a | 15

Este trabalho está dividido em quatro seções, sendo a primeira delas esta

introdução. A segunda contém explicações sobre alguns termos e estrutura básica

destas ciências. Há nele um resumo histórico dividido por eras: Idade Antiga e a

Cifra de César; Idade Média e o surgimento da criptoanálise, Idade Moderna e o

desenvolvimento das cifras polialfabéticas; e Idade Contemporânea, que tem como

marco a criação da criptografia computacional a partir da Segunda Guerra Mundial,

e a invenção do tipo de cifragem que utiliza chaves assimétricas. Faz parte desse

período também a evolução da Criptografia Quântica, porém, esse será abordado no

final da seção seguinte.

Na terceira seção é a vez de analisar a fundo aquela que garante grande

parte da estabilidade e privacidade no ato de se comunicar pela internet nos dias de

hoje: a Cifra RSA. Números primos, Teoria dos números e demais tópicos

matemáticos são destacados para explicar e justificar a importância dessa inovação

tecnológica da segunda metade do século XX. Na quarta seção, apresentamos as

considerações finais.

Adentre conosco nesse fabuloso mundo onde as teorias conspiratórias

parecem ganhar lugar de destaque, em que guerras e a concorrência entre grandes

empresas são cenários, no qual fica claro que o futuro da humanidade está em

mãos não apenas de políticos, empresários ou soldados armados, mas

principalmente de matemáticos altamente qualificados em desenvolver e/ou quebrar

cifras.

P á g i n a | 16

2. HISTÓRIA E DESENVOLVIMENTO DA CRIPTOGRAFIA

Nesta seção são apresentados alguns conceitos básicos para o entendimento

do trabalho, além da evolução da Criptologia desde o surgimento até meados do

século XX.

2.1. CONCEITOS BÁSICOS

Para que possamos entender o que será discutido ao longo do trabalho,

precisamos saber o significado de alguns conceitos básicos do assunto.

Começamos então diferenciando os termos Criptologia, Criptoanálise e

Criptografia.

A Criptologia é a ciência que engloba os dois ramos: a Criptografia e a

Criptoanálise. Segundo Couto (2008, p. 18) “a Criptologia é uma disciplina científica

que estuda os conhecimentos e as técnicas necessárias para a realização da

criptoanálise (ou seja, da solução das mensagens criptografadas) e da própria

criptografia (que é a codificação da escrita)”.

Considerando que cripto vem do grego antigo kriptó (κρύπτω) e graphein que

significam “oculto” e “escrita”, respectivamente, a criptografia trata da criação de

diversas formas de se transmitir mensagens ou dados de forma secreta, confidencial

e autêntica ao receptor correto através de códigos ou cifras (SINGH, 2001). Já a

criptoanálise é responsável por analisar e quebrar os mais variados tipos de cifras

e códigos criados sob a ótica da criptografia.

A partir destes três conceitos cruciais para o entendimento deste trabalho,

podemos perceber que a criptologia é a ciência que serve de alicerce para as outras

duas ciências e, ainda, o quanto ela é utilizada e importante em alguns contextos da

sociedade.

A criptografia vem sendo utilizada desde a antiguidade basicamente em três

tipos de contexto:

Comunicação privada

Arte e religião

Uso militar e diplomático.

Só na metade do século XX que a criptografia foi utilizada em outros setores

da sociedade como comércio e computação. Toda essa evolução está intimamente

P á g i n a | 17

ligada com a evolução tecnológica. Mas antes de entrarmos na história dessa

interessante ciência, vamos introduzir mais alguns conceitos e contextos

imprescindíveis a sua familiarização.

Como vimos, a criptografia é uma ciência que desenvolve vários métodos

para cifrar ou codificar mensagens a fim de transmiti-las com segurança. Mas existe

também outra técnica que permite o estabelecimento de comunicação de forma

particular, chamada esteganografia. Ela é um ramo particular da criptografia que

consiste em camuflar alguma informação, mascarando sua presença. A princípio

criptografia e esteganografia podem parecer o mesmo tipo de ciência/técnica, porém

a grande diferença consiste que a esteganografia propriamente dita não altera a

mensagem de alguma forma, apenas a esconde em algum lugar previamente

combinado para que a pessoa que deve recebê-la a encontre sem mais problemas,

enquanto que a criptografia altera a disposição de escrita da mensagem mas não se

importa em tentar esconder o fato de que há uma troca de informações entre

pessoas ou instituições diferentes (COUTO, 2008).

Podemos entender, portanto, que a esteganografia faz parte da criptografia

como sendo um caso de um total de três. As outras duas vertentes são as Cifras e

os Códigos. Segundo Singh (2001, p. 47) “tecnicamente um código é definido como

uma substituição de palavras ou frases, enquanto a cifra é definida como uma

substituição de letras”. Tkotz (2005a) define código:

Um código é um método de se obter um criptograma tratando palavras ou conjuntos de palavras do texto claro como unidades da cifragem. Neste caso, o número de substitutos pode chegar a alguns milhares e costumam ser listados em dicionários, conhecidos como nomenclaturas.

(TKOTZ, 2005a)

Já as cifras, como já foi dito, focam seus esforços em substituir letras

individualmente. Na verdade, elas se dividem em duas categorias: as Cifras de

Substituição e as Cifras de Transposição. As de transposição são aquelas que

mantêm o mesmo texto, no entanto trocam apenas a ordem das letras. Por exemplo,

a frase “Eu gosto de Matemática” poderia ser escrita como “aMetámitac ed ogtso

uE”, ou seja, mantivemos as letras originais e trocamos a ordem delas. Veremos

mais exemplos no próximo tópico. As Cifras de Substituição se dividem em três

grupos; Monoalfabéticas, Polialfabéticas e Homofônicas.

P á g i n a | 18

As Cifras Monoalfabéticas utilizam apenas um alfabeto cifrante, como a

Cifra de César, por exemplo, que veremos mais adiante. As Cifras Polialfabéticas

usam vários alfabetos cifrantes na mensagem, tendo como exemplo a cifra de

Vigenère, que é a principal cifra polialfabética já criada, a qual abordaremos mais

tarde. Por último ainda temos as Cifras Homofônicas, cujo nome deriva de homo e

fonos, que significam “igual” e “som” em grego, respectivamente. Singh (2001)

explica como é o funcionamento dessa cifra:

Nela cada letra é substituída por uma variedade de substitutivos, seu número potencial sendo proporcional à frequência da letra. Por exemplo, a letra a corresponde a 8 por cento de todas as letras que aparecem num texto em inglês, assim criamos oito símbolos para representá-la. Cada vez que aparecer um a no texto original, ele será substituído no texto cifrado por um dos oito símbolos escolhidos ao acaso, de maneira que, ao ser concluída a cifragem, cada símbolo corresponderá a 1 por cento do texto. [...] Esse processo de usar símbolos numéricos para agirem como substitutos de cada letra continua por todo o alfabeto até chegarmos ao z, uma letra tão rara que apenas um símbolo pode agir como substitutivo.

(SINGH, 2001, p. 70 e 71)

Por sua vez, as cifras de substituição monoalfabéticas se dividem em três

subgrupos. Teoricamente, as polialfabéticas e as homofônicas também podem ter

essas subdivisões, no entanto, não existem cifras desse tipo, na prática. Vejamos

cada uma delas:

Substituição Monogrâmica: o significado da palavra deriva dos termos

“mono” e “grama” que significam “um” e “caractere”, respectivamente. Dessa

forma, esse tipo de cifra tem a característica de cada símbolo ser substituído

por apenas um outro. O comprimento do texto original e o comprimento do

texto cifrado são iguais. Além disso, o cifrante possui o mesmo número de

símbolos e caracteres que o alfabeto utilizado para escrever o texto claro,

pois para cada símbolo do texto claro existe um símbolo cifrante (TKOTZ,

2005a).

Substituição Poligrâmica: a palavra “poli” dá a ideia de “muitos”, portanto,

nesse tipo de cifra vários símbolos substituem vários outros, ou seja, cada

caractere cifrante pode cifrar vários caracteres diferentes, assim como cada

um pode ser cifrado por vários diferentes. Assim como no caso anterior, o

comprimento do texto original é o mesmo do cifrado, da mesma forma da

quantidade de símbolos.

P á g i n a | 19

Substituição Tomogrâmica: “tomo” em grego significa “cortar”. Assim, nesse

tipo de cifra os caracteres são cortados em dois ou mais, fazendo com que

cada caractere do texto original possa ser trocado por vários diferentes.

Então, dessa vez, a extensão do texto cifrado é maior do que a do texto

original.

Para simplificar todas as classificações da criptologia, vejamos o

organograma seguinte:

Figura 01 – Esquema de ramificações da Criptologia Adaptado de Tkotz (2005a)

Não podemos esquecer uma técnica chamada Supercifragem. Ela é a

mistura de diferentes técnicas de cifragem, por exemplo, cifra-se um texto com uma

cifra monoalfabética e depois cifra com a mesma técnica ou com outra. Existem,

porém, outros tipos de classificações de cifras, no que diz respeito às chaves: os de

algoritmos simétricos, que possuem chave secreta e os assimétricos, com chaves

públicas e privadas.

Vamos nos deter primeiramente nos simétricos. Nesse caso usa-se uma

única chave que serve tanto para cifrar como revelar o texto original. Podemos

P á g i n a | 20

dividir esse método de utilização de chaves em Cifras de Bloco e Cifras de Fluxo.

Couto (2008, p. 238) explica a diferença entre as duas:

A diferença destas cifras [de fluxo] para as de bloco está no modo como operam. As de bloco operam em grandes blocos de dígitos com uma transformação fixa. Já as de fluxo são executadas numa velocidade maior que as de bloco e possuem uma complexidade menor. Porém são mais suscetíveis a sérios problemas de segurança caso sejam usadas de maneira incorreta.

(Couto, 2008, p. 238)

Um exemplo de cifra de bloco é o DES (Data Encryption Standard ou Padrão

de Cifragem de Dados), e um de cifra de fluxo é o One-Time-Pad (Bloco de Uso

Único ou Bloco de Cifras de uma única vez, em tradução literal). Essas duas cifras

são exemplos modernos, que ainda podem ser usadas até hoje, sobretudo, nas

comunicações de governos e grandes corporações, via internet.

Uma das grandes revoluções da criptologia foi o advento da criptografia

assimétrica. Ela consiste na obtenção de chaves públicas e privadas através de

funções matemáticas chamadas de Mão Única, na qual, segundo Tkotz (2007a), “a

cifragem é feita através de uma chave pública e a decifração é feita através de uma

chave privada que não pode ser calculada com base na chave pública”. Como

exemplo, destacamos a Cifra RSA, principal objeto de estudo deste trabalho. Essa

cifra envolve elementos matemáticos como números primos e a aritmética modular.

Veremos mais sobre esse assunto na sessão nº IV. Por fim, quanto à criptografia, há

uma divisão entre Clássica e Moderna. A primeira vai dos primórdios da criptologia

até a metade do século XX, quando surge a chamada Teoria da Informação (ou

Teoria Matemática da Comunicação) que fornece base sólida para o

desenvolvimento de uma nova criptografia.

Dispondo desses conceitos básicos, vejamos agora como se deu o

desenvolvimento da criptologia através dos tempos.

2.2. IDADE ANTIGA

O surgimento da criptografia aconteceu de forma bastante rudimentar e até

mesmo sem propósito. Historiadores datam de 2000 a.C., o uso de hieróglifos

“criptografados”, que tinham a função de deixar a mensagem mais “pomposa”.

Algum escriba anônimo, no século XX a.C., em uma cidade chamada Menet Khufu,

P á g i n a | 21

às margens do rio Nilo, na incumbência de contar a história da vida de seu senhor,

deu início também a história registrada da criptologia (KAHN, 1967).

Obviamente o sistema utilizado por ele nem de longe se compara com os

métodos modernos ou contemporâneos. Na verdade, o sistema do escriba era mais

simples, pois ele não usou nenhum código totalmente desenvolvido de substituições

de símbolos hieroglíficos. Ele substituiu hieróglifos comumente utilizados em

mensagens ordinárias por hieróglifos incomuns e raros. Com isso, Kahn (1967, p.

65, tradução nossa) afirma: “Deste modo a inscrição não foi escrita secreta, mas

incorporou um dos principais elementos considerados essenciais da criptografia:

uma transformação deliberada da escrita. É o mais antigo texto conhecido a fazê-lo”.

Conforme o tempo foi passando essa prática ficou mais complexa e ao mesmo

tempo mais comum, no mundo egípcio.

E nesta pequena atividade, quase que de entretenimento, compondo as

idéias de sigilo e transformação de palavras que surgiu a criptografia. Obviamente a

criptologia se desenvolveu, assim como muitas ciências, de forma independente nas

mais variadas civilizações, porém consideraremos o Egito como o berço dessa

ciência.

Muitos séculos depois, manuscritos que viriam a fazer parte da Bíblia foram

escritos contendo algumas cifras simples. O trecho criptografado pode ser

encontrado em Jeremias 25:26 e 51:41. A palavra Sheshach aparece no lugar de

Babel ("Babilônia"). Outra transformação pode ser encontrada em Jeremias 51:1,

onde temos as palavras Leb Kamai ("coração do meu inimigo") no lugar de Kashdim

("caldeus") (KAHN, 1967). Essas duas modificações surgiram da utilização da cifra

Atbash, que juntamente com as cifras Albam e Atbah, são três das cifras hebraicas

mais conhecidas, tendo sido utilizadas no período compreendido entre 600 e 500 a.

C. Eram usadas principalmente em textos religiosos, e baseavam-se no sistema de

substituição monoalfabética (COUTO, 2005).

Couto (2005) ainda classifica as cifras utilizadas pelos hebreus foram em três

categorias: Atbash, Albam e Atbah.

Na cifra Atbash, a encriptação se dá através sucessivas trocas no alfabeto

hebreu, a primeira letra (Aleph) pela última (Taw), a segunda (Beth) pela penúltima

(Shin) e assim sucessivamente e vice-versa. O nome dessa cifra vem justamente

destas primeiras substituições: Aleph, Taw, Beth, Shin = ATBASH.

P á g i n a | 22

Na cifra Albam, as substituições se dão da seguinte maneira: a primeira letra

(Aleph) pela décima segunda letra (Lamed), a segunda (Beth) pela décima terceira

(Mem) e assim sucessivamente e vice-versa. Surge assim o nome da cifra: Aleph,

Lamed, Beth, Mem = ALBAM.

Na cifra Atbah, a substituições são um pouco mais complexas. A primeira

letra (Aleph) é substituída pela oitava letra (Teth), a segunda (Beth) pela sétima

(Heth). E o nome desta cifra surgiu da mesma fora que as outras: Aleph, Teth, Beth,

Heth = ATBAH. Abaixo o quadro (adaptado) com as cifras:

Figura 02 – O alfabeto hebreu e suas cifras Fonte: <http://www.quadibloc.com/crypto/ppen01.htm>. Acesso em 02/01/2012.

Em 1 temos o alfabeto hebreu original e seus símbolos de letras. Em 2 temos

este alfabeto já encriptado com a cifra Atbash. Em 3, encriptado com a cifra Atbam.

E em 4 com a cifra Atbah.

1

1

2

1

3

1

4

1

P á g i n a | 23

Por volta do ano 300 a.C., um livro chamado Artha-sastra, produzido na Índia,

recomendava o uso da criptografia. Ele refere-se a várias cifras e recomenda a

quebra de cifras para obtenção de relatórios de espionagem, indicados para

diplomatas (COUTO, 2005).

Sua escrita é atribuída à Kautilya. Já o famoso Kama-Sutra, escrito no século

4 d.C. por Vatsyayana, recomenda que suas mulheres devem estudar 64 artes,

incluindo culinária, vestiário, etc., e algumas menos óbvias como magia, xadrez,

carpintaria, etc. A arte número 45 na lista é a mlecchita-vikalpa, a arte da escrita

secreta justificada de modo a ajudar as mulheres a esconder os detalhes de seus

relacionamentos. Uma das técnicas recomendadas envolve o emparelhamento ao

acaso de letras do alfabeto, e depois substituir cada letra na mensagem original com

o seu parceiro (SINGH, 2001).

Quando o assunto é Antiguidade, não podemos deixar de falar de uma grande

civilização, a qual desenvolveu e até mesmo criou diferentes e variados ramos das

ciências: a Grécia. Como não podia deixar de ser, na Grécia também foram

desenvolvidas alguns tipos de mensagens criptografadas. Uma das primeiras

referências se encontra na Iliada de Homero, assim como alguns casos envolvendo

esteganografia.

Um método antigo foi atribuído ao general Histiaeus, o qual se baseava em

raspar a cabelo de um escravo e tatuar uma mensagem em sua cabeça. Uma vez

que o cabelo já estivesse grande o suficiente para camuflar essa mensagem, o

escravo era enviado ao destinatário para que a mensagem pudesse ser entregue

(GIL et al. 2008). Enéas, o Tático (Aeneas Tacticus), cujo nome era Éneas de

Stymphalus, foi um cientista militar que desenvolveu outros dois métodos

esteganográficos, por volta do século IV a. C. O primeiro, conhecido como Astrogal,

era basicamente uma madeira composta por vários furos, em que cada furo

representava uma letra do alfabeto. Para que uma mensagem pudesse ser enviada,

era necessário passar um barbante entre os furos, de maneira a formar a mensagem

propriamente dita. Logo, o receptor deveria acompanhar as ligações de pontos feitas

com o barbante para que a mensagem pudesse ser decodificada. (CHIRIGATI, et al

2006).

Tkotz (2005b) descreve outro método desenvolvido por Enéas, o tático:

P á g i n a | 24

[Ele] inventou um telégrafo hidro-ótico, um sistema de comunicação à distância. Dois grupos, separados por uma distância em que ainda era possível reconhecer a luz de uma tocha e que quisessem enviar mensagens deviam possuir dois vasos iguais. Os vasos tinham um abertura no fundo, fechada por uma rolha, e eram preenchidos com água. Um bastão, que tinha mensagens inscritas, era colocado em pé dentro do vaso. Ao sinal de uma tocha, as rolhas eram retiradas simultaneamente. Quando o nível da água estivesse na altura da mensagem que se queria transmitir, outro sinal luminoso era enviado para que as rolhas fossem recolocadas.

(Tkotz, 2005b)

Os gregos são responsáveis também pelo primeiro registro conhecido do uso

da criptografia para fins militares: o Scytale ou bastão de Licurgo, que foi produzido

pelos espartanos. A invenção consistia em um bastão de madeira com uma tira

estreita de couro ou pergaminho enrolada em volta, na qual era escrita a mensagem

no sentido do comprimento do bastão, e após isso, desenrolada a tira do bastão, a

mensagem ficava desconexa, só se revelando ao receptor portador da chave que

era o bastão e algoritmo que seria enrolar a tira neste bastão. Segundo Couto

(2005), ainda, complementando o registro, a primeira noticia de seu uso foi com o

General Parasius, o qual recebia as ordens codificadas com este instrumento, a

mando de Tucídides. Abaixo um scytale:

Figura 03 – Scytale Espartano

Fonte: Wikipédia, disponível em <http://en.wikipedia.org/wiki/File:Skytale.png>.

Acesso em 02/01/2012.

Por fim, em relação aos gregos, ainda temos a menção de um método de

cifragem pelo historiador grego Políbio (204 a.C. a 122 a.C.), no seu livro Histórias,

que seria um código poligrâmico e cuja autoria do mesmo foi atribuída aos seus

contemporâneos Cleoxeno e Democleto. Sua importância na história da criptografia

P á g i n a | 25

reside no fato de que serviu de base para outros métodos de cifragem como a Cifra

Playfair e a Cifra Campal Germânica (ADFGX), usada na Primeira Guerra Mundial.

A principal invenção criptográfica da Idade Antiga, porém, ainda estaria por

vir: o escritor Suetônio, registra em sua obra Vida dos Césares, que Júlio César

escrevia, em correspondências particulares, em uma cifra de substituição, a qual

substituía as letras do alfabeto comum por letras desse mesmo alfabeto em três

posições depois da substituída. Utilizando o alfabeto moderno de 26 letras teríamos

D por A, E por B, F por C, e assim sucessivamente. Até hoje, qualquer cifra baseada

em um deslocamento fixo de posições é considerada “Cifra de César”, ou seja,

mesmo que não inicie com a letra D (KAHN, 1967; COUTO, 2005). A Tabela 01

mostra como seria a Cifra de César, em vermelho, com o nosso alfabeto de 26

letras, em preto:

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

Tabela 01 – Alfabeto da Cifra de César

Para mais informações sobre a Cifra de César, ver o Apêndice A.

2.3. IDADE MÉDIA

Oficialmente esse período histórico tem o seu início no ano de 476 d.C.,

marcado pelo fim do Império Romano do Ocidente e seu término em 1453 d.C., ano

do fim do Império Romano do Oriente, simbolizado pela tomada da cidade de

Constantinopla (atual Istambul, Turquia) pelo Império Octomano. Porém, para a

criptologia essa era começa mesmo por volta do ano 800 d.C., época em que os

mulçumanos alcançaram um estágio intelectual bastante significativo para a época

(SINGH, 2001).

Vários fatores contribuíram para que o mundo islâmico pudesse ultrapassar o

europeu com relação a avanços científicos, entre eles o fato dos mulçumanos

valorizarem bastante a ciência, o que os fez criar a Bait al-Hikmah (Casa da

Sabedoria), a qual era um importante centro de produção de conhecimento, em

Bagdá. Outro aspecto interessante é que pessoas estrangeiras não eram vistas com

maus olhos e tinham suas ideias bastante toleradas. A chamada Idade de Ouro

islâmica (750 d.C. até 1258 d.C.) proporcionou avanços em várias áreas, como nas

P á g i n a | 26

Artes, na Medicina e na Matemática. Dessa última destacamos os progressos feitos

na Trigonometria e na Combinatória, além do desenvolvimento da álgebra (nome

oriundo do termo al-jabr) e dos números indo-arábicos (SINGH, 2001).

Para a criptologia, os mulçumanos ficaram marcados por serem os

responsáveis pela criação da Criptoanálise. Isso foi possível por dois fatores:

primeiro porque a criptografia era bastante utilizada no dia a dia desse povo, já que

ela era amplamente usada nas correspondências de cunho administrativo do

Estado, as quais possuíam alguns manuais que explicavam conceitos e técnicas,

como o Adab al-Kuttab; segundo porque os estudos científicos desse povo incluíam

as escrituras sagradas, como o Alcorão, em busca das revelações de Maomé, o que

possibilitou aos estudiosos perceberem que algumas letras apareciam no texto com

mais frequência que outras, no idioma árabe. Tudo isso gerou o surgimento de uma

técnica chamada Análise de Frequências, na qual verifica-se um texto cifrado e

observa-se a frequência com que as letras aparecem. Logo após substituí-se as

letras cifradas por aquelas que apresentam frequência semelhante, e assim obtém-

se o texto original ou pelo menos bem semelhante, de modo que ele possa ser

deduzido (SINGH, 2001).

Várias pessoas se destacaram na evolução criptológica entre os mulçumanos.

O filósofo, cientista e matemático al-Kindi é conhecido como o “filósofo dos árabes” e

o “bisavô da estatística”. Ele é responsável por 290 livros de diversos assuntos,

porém seu maior tratado, que foi redescoberto apenas em 1987 no Arquivo

Sulaimaniyyah Ottoman em Istambul, na Turquia, é intitulado "Um Manuscrito sobre

Decifração de Mensagens Criptográficas". Ou seja, não se sabe de fato se ele foi o

primeiro a conceber a análise de frequência, no entanto, é de autoria dele o livro

mais antigo que se tem conhecimento sobre a técnica (TKOTZ, 2005c).

Outro destaque é uma pessoa que nasceu antes de al-Kindi, o autor do Kitab

al Mu'amma (Livro das mensagens criptográficas), chamado al-Khalil. Essa obra,

que fora escrita em grego para o então imperador bizantino, solucionava um antigo

criptograma com o uso de uma técnica chamada “Método da Palavra Provável”. Ele

sabia que qualquer texto da época iniciava com a frase “Em nome de Deus”, e com

isso pôde elaborar uma “cola”, a qual lhe fornecia informações bastante úteis de

como a cifra havia sido elaborada, ajudando-o, assim, a decifrá-la. (KANH, 1996;

POMMERENING, 1985).

P á g i n a | 27

Outros estudiosos árabes contribuíram para o desenvolvimento da

criptografia. Ibn Dunainir (1187 – 1229) escreveu uma obra intitulada Maqasid al-

Fusul al-Mutarjamah an Hall at-Tarjamah (Explicações claras para a solução de

mensagens secretas). O livro contém uma inovação importante: cifras algébricas, ou

seja, a substituição de letras por números que podem ser transformados aritmetica-

mente (POMMERENING, 1985). O poeta e professor Ibn Adlan (1187 – 1268) era

bastante conhecido por sua inteligência e foi considerado uma figura de destaque na

literatura. Talvez essas características o tenham qualificado para ser perito em

charadas e criptoanálise, no qual se destacou e para o qual ele dedicou mais de um

livro, entre eles o Al-Mu'allaf lil-Malik al-Ashraf, que fora escrito para o Rei al-Ashraf,

com explicações detalhadas do assunto (MRAYATI, ALAM e TAYYAN, 2003a;

POMMERENING, 1985).

Um polímata árabe chamado Ibn Khaldun (1332 – 1406) escreveu o

Muqaddimah, um importante relato da história que cita o uso de "nomes de

perfumes, frutas, pássaros ou flores para indicar letras, ou [...] sobre formas

diferentes das formas das letras aceitas" como um código usado entre escritórios

militares e de controle de impostos. Ele também inclui uma referência à

criptoanálise, observando que "escritos conhecidos sobre o assunto estão em poder

do povo". (KAHN, 1996). Para completar a lista de estudiosos árabes temos o

professor Ibn Ad-Duraihim (1312 – 1361), famoso por sua engenhosidade em

aritmética, criptoanálise, e em resolver enigmas e caça-palavras. Ele também tinha

conhecimento em al-'awfaq (uma ciência antiga lidar com números: em especial

combinações, valores e características secretas), e nas letras do alfabeto e suas

estatísticas e propriedades fonéticas. Ad-Duraihim escreveu muitas obras nestas

áreas (MRAYATI, ALAM E TAYYAN, 2003b). Ele é o autor do livro Miftah al-Kunuz fi

Idah al-Marmuz (Chaves para a Elucidação de Mensagens Secretas) que contém

uma classificação das cifras, análises de frequência em várias línguas, uma tabela

semelhante à de Vigenère (na verdade de Trithemius, como veremos a seguir) e

grades de transposição. Al-Qalqashandi (1355-1418), um matemático egípcio,

escreveu em 1412 a Subh al-sha’, uma enciclopédia de 14 volumes em árabe, na

qual incluiu uma seção de Criptologia. Ele refere Ibn ad-Duraihim como o autor das

informações e cujos escritos sobre criptologia foram perdidos. A lista de cifras nesta

obra inclui tanto a substituição quanto a transposição e, pela primeira vez, uma cifra

com múltiplas substituições para cada letra do texto original. Também é atribuída a

P á g i n a | 28

ibn ad-Duraihim uma explicação com exemplo de criptoanálise, inclusive o uso de

tabelas de frequência de letras e conjuntos de letras que podem ocorrer juntas numa

palavra (KAHN, 1996).

Apesar de viverem em uma época em que as evoluções tecnológicas não

eram muito incentivadas, os europeus da Idade Média deram alguns importantes

passos nesse período em relação à criptografia, o que refletiu na sua enorme

contribuição para esta ciência algum tempo depois, já na Idade Moderna. Há relatos

do uso de cifragem de mensagens vindo deles, porém considerados formas

rudimentares quando comparados aos árabes. Aparentemente a maioria absoluta

dos europeus que tinha algum conhecimento em criptografia não sabia das técnicas

de criptoanálise, portanto suas cifras não tinham um nível de segurança considerado

alto. Essa situação só viria começar a mudar depois do início do período que ficaria

conhecido como “Renascimento no século XII” (COUTO, 2005).

Temos conhecimento de que inicialmente a criptografia na Europa era

utilizada por reis que não queriam que seus inimigos soubessem de seus segredos;

por alquimistas que tinham receio de que o significado de seus estudos caísse nas

mãos da Igreja Católica e fossem parar na fogueira; além de alguns próprios clérigos

desta instituição, que estudavam a bíblia e procuravam mensagens ocultas nela, na

qual a cifra Atbash foi encontrada em várias passagens (VISSIÈRE, 2009).

Uma cifra de destaque foi criada pelos membros da Ordem dos Pobres

Cavaleiros de Cristo e do Templo de Salomão, mais conhecida como a Ordem dos

Cavaleiros Templários. Essa organização, fundada em 1118, tinha como objetivo

inicial a proteção dos peregrinos que buscavam chegar à chamada Terra Santa,

Jerusalém, cuja quantidade crescia cada vez mais, visto que muitos naquela época

acreditavam que o fim dos tempos estava próximo. Os Templários ganharam

bastante respeito pelos europeus, inclusive por Papas, entre eles Balduíno II e

Inocêncio II. Com isso, passaram a ter poderes econômico, militar e religioso de

proporções imensas, e assim se espalharam por toda a Europa.

Dessa forma, passaram a ter a necessidade de cifrar suas mensagens para

esconder seu significado para seus inimigos. Encontramos em Tkotz (2005d) o

cifrante usado pelos Cavaleiros Templários. Ele foi extraído da cruz chamada "das

oito beatitudes", que constituía o emblema da ordem. Essa cifra apresenta apenas

uma substituição simples onde cada letra é substituída por um símbolo especial,

como podemos ver na figura a seguir:

P á g i n a | 29

Figura 04 – Cifrante dos Templários Fonte: Adaptada de Tkotz (2005d)

Como podemos ver, os Templários utilizavam uma cifra de substituição

monoalfabética que era eficiente na Europa, mas que poderia ser facilmente

quebrada pelos árabes.

A partir do século XIII alguns personagens entram de forma individual nessa

história. O frade franciscano inglês Roger Bacon (1214 – 1294), conhecido também

como "Doctor mirabilis" (Doutor admirável, em latim) dava, em seus estudos da

natureza, bastante ênfase ao empirismo e ao uso da matemática, além de contribuir

em áreas importantes como a Mecânica, a Filosofia, a Geografia e principalmente a

Ótica. Além de tudo isso, Bacon exercia em segredo atividades de cunho alquimista.

Os alquimistas acreditavam que, ao aprender a manipular os elementos da natureza,

seria possível transformar metais ordinários em ouro e aperfeiçoar o espírito

humano. Como essa prática era vista como bruxaria, eles poderiam ser condenados

e mortos na fogueira. Dessa forma, esses estudiosos desenvolveram sistemas de

cifragem e decifragem. No campo da codificação, eles usavam símbolos para

designar substâncias químicas, como o lobo para representar o antimônio e o leão

verde para o vitríolo verde (VISSIÈRE, 2009).

Durante o período que ficou conhecido como “Cisma de Avignon”, o antipapa

Clemente VII decidiu unificar o sistema de cifras da Itália Setentrional, tornando

Gabriele de Lavinde o responsável de coordenar a tarefa. Lavinde juntou várias

cifras num manual, do qual o Vaticano conserva uma cópia de 1379. Com isso ele

pôde unir a cifra de substituição a um código com listas de palavras, sílabas e

nomes equivalentes que foi usado por volta de 450 anos, por diplomatas e alguns

P á g i n a | 30

civis europeus e americanos (KAHN, 1996). Esse fato é importante porque

demonstra o crescente interesse dos europeus em cifras, a ponto de uma das

maiores autoridades da Igreja Católica se importar de unificar o sistema de

encriptação. Outra demonstração disso é que em 1392, Geoffrey Chaucer,

considerado o melhor poeta inglês antes de Shakespeare, no seu "The Equatorie of

the Planetis", um suplemento da sua obra "Treatise on the Astrolabe", incluiu seis

passagens escritas em cifras (TKOTZ, 2005e).

Para finalizar esse período, temos indícios de que já se concebia uma ideia

de que as cifras monoalfabéticas poderiam ser quebradas através da análise de

freqüências. Em 1401, Simeone de Crema usou uma chave na qual cada vogal do

texto original possuía vários equivalentes. Não há razão para que ele tenha feito isso

se não soubesse que os outros modos de encriptação não eram mais seguros. Mais

tarde, em 1411, Michele Steno, doge de Veneza, nos dá um dos primeiros exemplos

de cifras homofônicas: escolhia um dos muitos símbolos para cada caractere, além

de utilizar nulos e caracteres especiais para certas palavras de uso freqüente

(KAHN, 1996).

2.4. IDADE MODERNA

Não foi possível conter a evolução da criptografia na Europa por muito tempo.

Os segredos de estado dependiam cada vez mais de cifras confiáveis. Para atender

as suas necessidades os governos começaram a não mais perseguir e matar os

criptógrafos e criptoanalistas. Agora eles eram recrutados para trabalhar para o

estado (VALDEVINO, 2006).

Em Singh (2001), observa-se que não se tem certeza acerca de como se deu

esse avanço criptológico na Europa, mas é possível que ele tenha ocorrido de forma

independente ao que havia ocorrido na parte oriental do mundo. O Renascimento

possibilitou a produção do conhecimento necessário ao desenvolvimento da

Criptologia ocidental.

Um dos casos mais emblemáticos das mudanças ocorridas na concepção de

segurança na comunicação dessa época é o da condenação e morte da rainha da

Escócia, Maria Stuart, em 1587. A mandante da execução foi a também rainha

Elizabeth I, da Inglaterra, que era prima de Maria. A situação toda fora conseqüência

de disputas internas entre Católicos e Protestantes na Inglaterra. Elizabeth temia

P á g i n a | 31

que sua prima pudesse roubar-lhe o trono por ela ser considerada a herdeira

legítima, pela parte católica do país. Por isso a manteve presa por quase duas

décadas, até o seu primeiro-secretário, Francis Walsingham, contratar um espião-

duplo para contrabandear cartas de simpatizantes de Maria para ela própria e a

resposta dela para eles. As cartas, que eram cifradas, continham detalhes da

armação que estava sendo arquitetada para um suposto o assassinato de Elizabeth

e a libertação de Maria. No entanto, por ser um nomenclator, sua decifração era

bastante fácil através de uma análise de frequência, e a Inglaterra já dispunha nessa

época de criptoanalistas trabalhando para a Corte Real. Dessa forma, Walsingham

pôde comprovar que Maria compactuava com as ideias de seus simpatizantes,

fornecendo assim provas suficientes para que ela pudesse ser executada. Em 8 de

fevereiro de 1587, depois de alguns dias de julgamento e decisão, a rainha da

Escócia foi decapitada para uma platéia de 300 pessoas.

Figura 05 – Execução de Maria Stuart, rainha da Escócia, em 1587, autor desconhecido. Fonte: Galeria Nacional Escocesa, disponível em

<http://www.nationalgalleries.org/collection/artists-a-z/U/5600/artistName/Unknown/recordId/3237>. Acesso em 01/01/2012.

A Idade Moderna é bem mais rica de situações em que a criptografia era

usada, no entanto, para não nos prolongarmos, nos deteremos apenas nos detalhes

P á g i n a | 32

relacionados à maior evolução desta ciência nesse período: o surgimento das cifras

polialfabéticas. Vários estudiosos contribuíram para que uma cifra polialfabética

consistente pudesse ser criada.

Tudo começa quando Leon Battista Alberti (1404 – 1472), uma das maiores

figuras da renascença italiana (TKOTZ, 2005f), escreveu um ensaio sobre esse

assunto, apresentando o que ele acreditava ser uma nova forma de cifra. Lá, ele

propõe o uso de dois ou mais alfabetos cifrados que, quando usados

alternadamente, confundiriam os criptoanalistas (SINGH, 2001).

Seu sistema de encriptação usava dois discos concêntricos de metal, cujas

circunferências eram divididas e 24 partes iguais (COUTO, 2008). Foi também o

inventor de uma técnica chamada “sobrecodificação codificada”, que reforçava o

segredo das palavras-chave. Esses dois mecanismos, realmente novos, tornaram

inútil qualquer tentativa de decodificação baseado na análise da frequência com que

as letras e palavras eram utilizadas (VISSIÈRE, 2009).

Figura 06 – Disco de Alberti Fonte: Fincatt (2010, p. 33)

Alberti não conseguiu aperfeiçoar suas ideias, porém, elas serviram como

base para outros estudiosos. Em 1518 foi publicado o que seria o primeiro livro

impresso sobre criptologia, cujo autor era o abade e ocultista alemão Johannes

Trithemius (1462 – 1516) (COUTO, 2008). Esse, que é considerado o seu maior

tratado, foi chamado de Poligraphia, terminado em 1508 e ficando à disposição do

público em seis livros apenas depois da sua morte. Ele também escreveu, embora

não tenha publicado, um livro chamado Steganographia, onde apresenta uma cifra

intitulada Ave Maria, na qual supostamente escrevia uma oração, mas na verdade

era uma mensagem esteganográfica, já que cada letra era representada por uma

P á g i n a | 33

frase da oração (TKOTZ, 2007b). Em Couto (2008) vemos que sua maior invenção,

porém, foi outra:

A tabela de Trithemius, chamada de Tabela Reta (tabula recta), é um quadro onde cada linha substitui a anterior com um deslocamento de um caractere para a esquerda. O abade usava a tabula recta para definir uma cifra polialfabética equivalente à do Disco de Alberti.

(COUTO, 2008, p. 78)

Abaixo a tabela inventada por Trithemius:

Figura 07 – Tabula Recta de Johannes Trithemius

Fonte: Wikipédia, disponível em <http://pt.wikipedia.org/wiki/Ficheiro:Vigenere-square.png>. Acesso em 02/01/2012.

Apesar de ser de autoria de Trithemius, a Tábua Reta ficou mais conhecida

com outro nome e como sendo de outra pessoa. Logo mais voltaremos a falar desse

assunto, por ora vamos nos deter ao matemático e filósofo italiano Girolamo

Cardano (1501 – 1576). Ele inventou um método esteganográfico que é conhecido

como Grelha de Cardano, que foi adaptada e usada pelo cardeal Richelieu,

conselheiro da rainha regente da França. Sua contribuição para o sistema

P á g i n a | 34

polialfabético de cifras foi ser o inventor do primeiro método a usar uma auto-chave,

mesmo que esse sistema seja considerado imperfeito (TKOTZ, 2005g).

No ano de 1563 o polímata italiano Giambattista Della Porta, que já dava

atenção à criptografia em outra obra anterior, publica o livro De furtivis literarum notis

- vulgo de ziferis, o qual segundo Toktz (2005h):

É composto por quatro volumes que tratam, respectivamente, de cifras da antiguidade, de cifras modernas, da criptoanálise e das características linguísticas que facilitam a decifração. A obra representa a soma dos conhecimentos criptológicos da época.

(TKOTZ, 2005h)

De acordo com Vissière (2009), nesse livro há a introdução de uma cifra que

funcionava sob um sistema de substituição bigramática, para o qual Della Porta

criara “uma grade formada por um alfabeto disposto em um eixo horizontal e outro

em um eixo vertical; cada casa dessa grade correspondia a um par de letras (AA,

AB, AC etc.), simbolizado por um caractere diferente”.

Como pudemos ver, Alberti, Trithemius, Cardano e Della Porta deram suas

contribuições para o desenvolvimento da cifra polialfabética. No entanto a pessoa

que ficou conhecida como quem organizou e simplificou os avanços desses

estudiosos foi Blaise de Vigenère (1523 – 1596). Precisamos, porém, tomar cuidado

com essa afirmação. Vigenère, como falamos, ficou conhecido como o responsável

pela versão final da cifra, mas o verdadeiro autor dessa façanha foi Giovanni Battista

Bellaso (1549 - desconhecido). Fato é que Vigenère produziu uma cifra polialfabética

mais robusta que a de Bellaso, porém essa segunda é que foi a mais utilizada após

ser criada, por ser mais simples. Equivocadamente essa cifra foi atribuída à

Vigenère, sendo reconhecida até hoje como de sua autoria. A cifra que foi realmente

criada por Vigenère é a cifra de Autochave.

Independente de quem tenha criado, a grande importância do surgimento e

desenvolvimento das cifras polialfabéticas é que elas foram as primeiras a causar

um desafio realmente notável para os criptoanalistas da época. A cifra criada por

Bellaso foi considerada indecifrável por quase dois séculos. Por isso que ela é

conhecida também como “Le chiffre Indéchiffrable”. Para mais informações sobre

essa cifra, ver o Apêndice A.

Eram os criptógrafos levando a melhor novamente depois de alguns séculos

de soberania dos criptoanalistas. A dificuldade de quebra da cifra consistia no fato

P á g i n a | 35

dela, aparentemente, ser imune à análise de frequência. Como era usado mais de

um alfabeto, cada letra da mensagem original poderia ser substituída por mais de

um tipo de letra na mensagem cifrada. Além disso, a ideia do uso de chaves pré-

estabelecidas para a cifra a potencializou muito mais.

Pode parecer, portanto, que todos aqueles que queriam esconder suas

mensagens a partir daquela época passaram a usar a cifra, porém, não foi o que

aconteceu. Em Singh (2001) descobrimos que elas foram ignoradas por quase dois

séculos. Isso porque as cifras polialfabéticas eram consideradas muito complexas e

inapropriadas para serem usadas em guerras, por exemplo. Nesse tipo de situação

a agilidade e rapidez no envio de mensagens são essenciais. Além do mais, ainda

existiam casos que não era tão necessário o seu uso, como proteger o significado

de informações de funcionários, vizinhos, cônjuges ou demais pessoas que não

tinham conhecimento de como decifrá-las. Dessa forma, o uso de mensagens

monoalfabéticas ainda era justificável.

Nas guerras a solução criptográfica foi o uso de cifras de substituição

homofônicas. Uma bastante conhecida é a Grande Cifra, desenvolvida Antoine

Rossignol e seu filho Bonaventure em 1619. Essa cifra era tão forte que só foi

quebrada no fim do século XIX. Elaborada para guardar os segredos do rei Luís XIV

da França, a cifra dispunha de 587 números diferentes, e continha várias formas de

armadilhas, para eventuais criptoanalistas. A dificuldade de decifração era grande

porque Rossignol atribuiu números para sílabas, e não para letras individuais. Além

disso, quando os criadores faleceram, as regras de decifração foram rapidamente

perdidas (SINGH, 2001).

As cifras monoalfabéticas só foram definitivamente abandonadas após o início

do século XVIII, com a criação das chamadas Câmaras Escuras. Segundo Couto

(2008) elas consistiam em “grupos ligados aos governos que se dedicam ao estudo

e aplicação dos métodos criptográficos”. A mais famosa delas é Geheime

Kabinettskanzlei de Viena, que era liderada pelo barão Ignaz Von Koch. Ela recebia

diariamente centenas de cartas, às 7 da manhã, que deveriam ser entregues às

embaixadas da cidade. Até as dez da manhã todas elas eram copiadas e seladas

novamente, de forma a chegar a seus destinos finais. A partir daí começava a

decifração das mensagens pela equipe de criptoanalistas profissionais. As

informações descobertas serviam tanto para o governo austríaco como para outras

nações dispostas a pagar pelo valioso significado delas.

P á g i n a | 36

A França já dispunha de suas câmaras escuras desde 1680, os Cabinet Noir,

enquanto que a Inglaterra criou sua primeira Black Chamber em 1701. Esses grupos

foram mantidos apenas até o ano de 1850, porque os seus respectivos governos

não mais acharam que era necessário que eles fossem mantidos em forma de

plantão, o que culminou nas suas dissoluções (COUTO, 2008). Além desse, outros

fatores contribuíram para que o uso das cifras polialfabéticas passasse a ser cada

vez maior. O principal deles foram os avanços tecnológicos da Idade

Contemporânea.

2.5. IDADE CONTEMPORÂNEA

2.5.1. Popularização da Criptografia e a quebra da Cifra de Vigenère

A invenção do Telégrafo elétrico revolucionou as formas de se comunicar, no

século XIX. Ou seja, a criptografia precisava evoluir junto, já que a necessidade de

comunicação sigilosa só aumentava cada vez mais. O uso das cifras polialfabéticas

se consolidou com o surgimento dessa tecnologia porque a criptoanálise tornava-se

cada vez mais profissional e era preciso se precaver quanto à troca de mensagens,

que se tornou mais rápida e ao mesmo tempo mais suscetível a ser descoberta.

O Telégrafo ajudou ainda a popularizar a criptografia, visto que pessoas

comuns que necessitavam utilizar a tecnologia precisavam aprender formas simples

de criptografar suas mensagens, para escondê-las pelo menos dos telegrafistas.

Com isso o interesse por esse tipo de conhecimento aumentou bastante entre essas

pessoas, que tinham interesse de esconder seus segredos de pessoas próximas,

como pais, familiares ou cônjuges. É claro que um profissional da quebra de cifras

poderia desvendar a maioria absoluta das mensagens enviadas, mas o objetivo

principal era que pessoas conhecidas não as descobrissem.

Essa popularização pode ser vista claramente na Inglaterra Vitoriana, período

que vai de 1837 a 1901, onde casais (que eram proibidos de expressar o seu amor

em público) mandavam mensagens cifradas através dos jornais de grande

circulação nacional. Também compartilhavam dessa prática pessoas que queriam

criticar o governo ou organizações (SINGH, 2001). Além disso, tendo despertado o

interesse das pessoas em geral, alguns romances envolvendo essa temática foram

produzidos em meados do século XIX. Júlio Verne, com as suas obras Viagem ao

P á g i n a | 37

centro da Terra e Mathias Sandrof; Edgar Allan Poe com O Escaravelho de Ouro;

Arthur Connan Doyle, criador do detetive mais famoso do mundo, o Sherlock

Holmes, produziu O Vale do Terror e A aventura dos Homenzinhos Dançantes.

Nessa época, porém, outra grande (e talvez mais importante, para a

criptologia) revolução estava acontecendo: a quebra da cifra de Vigenère. Isso

aconteceu no ano de 1854, mas só veio à tona em 1863. O responsável por essa

façanha foi Charles Babbage (1791 – 1871), que hoje é considerado o pai do

computador moderno.

Esse cientista tem em seu currículo várias invenções, como o velocímetro; o

limpa-trilhos, estrutura que ficava localizada na parte dianteira dos trilhos para liberar

o caminho de possíveis obstáculos; o sistema que oferece um preço único por carta,

independente do destino, por ter provado que o cálculo do preço que cada uma

dessas cartas teria, caso ele variasse de acordo com o destino final, era maior que o

custo da postagem em si. Ele foi também o primeiro a perceber que a largura dos

anéis de crescimento das árvores dependia do clima em determinado ano,

deduzindo assim que se poderia determinar climas de eras passadas estudando

árvores antigas. Além disso, produziu um conjunto de tabelas de mortalidade que

são ferramentas básicas das companhias de seguro, na atualidade.

No entanto, sua contribuição mais importante para a ciência em geral foi a

idealização do precursor dos computadores modernos. Com dinheiro público tentou

construir a sua “Máquina de Diferenças” (ou “Motor de Subtração”), que consistia em

uma calculadora de 25 mil peças, que possuía rodas dentadas em eixos que uma

manivela fazia rolar. Caso essa invenção fosse concluída, ela seria capaz de

computar e imprimir extensas tabelas científicas. 17 mil Libras e 10 anos depois,

Babbage abandonou o seu projeto em busca de realizar um mais ambicioso, o que

ele chamou de “Máquina de Diferenças nº2”. Infelizmente, o governo britânico

resolveu não mais financiar os experimentos do cientista alegando que ele não

chegara a um resultado significativo depois de tanto dinheiro investido (TKOTZ,

2005h).

Singh (2001, p. 82) define esse acontecimento como “uma tragédia científica”.

Tudo isso porque a nova máquina de Babbage seria a primeira da história da

humanidade com a capacidade de ser programável. Couto (2008, p. 110) afirma que

o próprio Babbage relata que sua nova invenção serviria “não apenas para

P á g i n a | 38

solucionar um tipo de problema matemático, mas para executar uma ampla gama de

tarefas de cálculo, de acordo com instruções fornecidas por seu operador”.

Figura 08: Máquina de Diferenças nº 2 de Babbage, construída em 1991 pelo Museu de Ciência e Tecnologia de Londres.

Fonte: Livraria de Imagens da Ciência e Sociedade de Londres. Disponível em <http://www.scienceandsociety.co.uk/results.asp?image=10324907&itemw=4&itemf=0005&itemstep=

1&itemx=6>. Acesso em 02/01/2012.

Tragédias a parte, Charles Babbage foi a primeira pessoa a conseguir

quebrar a cifra de Vigenère. Ele percebeu que uma cifra polialfabética se tratava de

nada mais que um conjunto de diferentes cifras monoalfabéticas organizadas em

uma sequência, e que, dessa forma, poder-se-ia aplicar também a técnica conhecida

como análise de frequências. Portanto, Babbage tinha acabado com um paradigma

que já durava havia séculos.

Porém, o cientista parece não ter dado a devida atenção para a sua própria

descoberta. Na verdade, só no século XX, ou seja, depois da sua morte, é que

estudiosos descobriram o feito de Babbage, ao examinarem suas anotações. De

qualquer forma, nove anos após o cientista inglês, que era general do exército

prussiano, chamado Friedrich Wilhelm Kasiski encontrou, de forma independente do

P á g i n a | 39

primeiro, as falhas da cifra de Vigenère. Assim, a técnica de decifragem relacionada

a essa cifra polialfabética ficou conhecida como Teste de Kasiski.

2.5.2. O surgimento da Criptografia mecânica

O final do século XIX e início do XX ficaram marcados por muita confusão

entre os criptógrafos, que tentavam a todo custo inventar uma cifra forte o suficiente

para re-estabelecer as comunicações secretas pelo mundo. Várias cifras novas

surgiram, porém, eram quebradas pouco tempo depois, por serem variações de

antigas cifras. Algo novo precisava ser inventado (SINGH, 2001).

Enquanto isso, outra descoberta mudaria o rumo da história: a possibilidade

de comunicação via rádio. O físico italiano Guglielmo Marconi desenvolveu um

sistema no qual poderia enviar mensagens entre longas distâncias sem a

necessidade de um fio que ligasse emissor e receptor. Uma vez tendo provada a

eficiência da tecnologia, Marconi encantou os militares que viam o sistema como um

excelente aliado durante a Primeira Guerra Mundial. No entanto, a facilidade de

comunicação por rádio tinha como consequência a facilitação de interceptação das

mensagens. Portanto, era vital que uma cifra realmente segura fosse criada.

Os alemães criaram a ADFGVX, que era considerada imbatível por eles, e

que foi usada no ano de 1918. Couto (2008, p. 102) define a cifra como sendo

“baseada em substituição por meio de uma matriz com chave seguida de

fracionamento e transposição das letras fracionadas”. Para a infelicidade dos

alemães, um francês chamado Georges Painvin, após perder por volta de 15 quilos,

conseguiu quebrar a cifra (SINGH, 2001).

Nesse ponto da história, mais especificamente entre os anos 1917 a 1918,

houve vários outros acontecimentos interessantes no ponto de vista da criptologia:

Couto (2008, p. 101) aponta que em 1917 o criptologista “Willian Frederick

Friedman, que será conhecido como ‘pai da criptoanálise dos EUA’ e criador do

termo ‘criptoanálise’ começa a trabalhar nesse cargo no Riverbank Laboratories, que

também presta serviços ao governo norte-americano”; ainda em 1917, o engenheiro

Gilbert Stanford Vernam cria uma máquina cifrante que usa uma chave totalmente

randômica e que nunca se repete. Ele ainda cria uma cifra baseada na Cifra de

Vigenère que leva seu nome; também nesse ano o chamado “Telegrama de

Zimmermann”, de autoria alemã, é interceptado e lido pelos ingleses, na chamada

P á g i n a | 40

Sala 40; no ano seguinte, em 1918, o general norte-americano Joseph Oswald

Mauborgne aperfeiçoa a cifra de Vernam, que fica conhecida como One-Time Pad;

nesse ano o engenheiro elétrico Arthur Scherbius cria uma máquina de cifragem

chamada Enigma, considerada a maior máquina de códigos de todos os tempos

(SINGH, 2001; COUTO, 2008).

Todos esses acontecimentos são bastante importantes para o rumo da

história, porém vamos nos deter em dois: a criação do One-Time-Pad e da Enigma.

Singh (2001, p. 134) define a cifra como “o Santo Graal da criptografia”. De fato, em

teoria, a cifra oferece segurança absoluta. Isso porque ela consiste em usar a cifra

de Vigenère com chaves tão grandes quanto a própria mensagem a ser cifrada, o

que acabava com a possibilidade da quebra cifra através da análise de frequência.

Isso, claro, só garante realmente a segurança se cada chave puder ser usada uma

única vez. Daí deriva o nome One-Time-pad (Bloco de Uso Único ou Bloco de Cifras

de uma única vez, em tradução literal). Além disso, é indispensável que essa chave

seja formada de uma sequência de letras completamente aleatórias, para garantir

que o criptoanalista não tenha qualquer chance de decifrar a mensagem.

O grande problema dessa cifra era o uso dela na prática, pois se na teoria

tudo era perfeito, como criar chaves tão grandes quanto o texto em uma guerra, na

qual eram enviados centenas de mensagens num único dia? Talvez se todas elas

fossem previamente criadas para depois serem distribuídas em grandes blocos para

todo o exército e marinha, pudesse dar certo, porém, se uma única delas caísse em

mãos inimigas, todo sistema de comunicação estaria comprometido (SINGH, 2001).

Portanto, a cifra One-Time-Pad era perfeita para a teoria, mas não para a

prática, que envolvia lápis e papel para cifrar e decifrá-la. Era preciso algo mais

eficiente. Desse pensamento surgiu a máquina Enigma. Essa invenção, como já foi

dito, ocorreu em 1918 por Arthur Scherbius, mas somente fora utilizada pelo exército

alemão em 1926.

O funcionamento da máquina é um tanto quanto complexo, e sua descrição

aqui neste trabalho seria inviável. Precisamos apenas entender que ela dispunha de

um instrumento que era conhecido como misturador, “a parte mais importante da

máquina” (SINGH, 2001, p. 146). As três unidades dessa peça garantiam a mistura

das 26 letras do alfabeto de forma aleatória, ou seja, possibilidades.

Além disso, os misturadores poderiam mudar de ordem multiplicando esse valor

acima por seis, já que . Sem contar um painel de tomadas que fazia uma

P á g i n a | 41

simples troca das letras (em formato monoalfabético), mas que garantia mais

possibilidades. Multiplicando tudo, temos:

Como podemos ver, era virtualmente impossível descobrir uma mensagem

cifrada pela Enigma, a não ser que se soubesse a disposição dos misturadores no

início da cifragem. Tentando pelo método da força bruta, um criptoanalista levaria

quase que a totalidade de tempo da duração do universo, caso verificasse cada

chave por minuto (SINGH, 2001). Surgiram outras máquinas semelhantes na época,

mas que não obtiveram sucesso por diferentes motivos, como as criadas pelo

holandês Alexander Koch, o Sueco Arvid Damm e o Americano Edward Hebern.

Figura 09 – Máquina Enigma Fonte: Livraria de Imagens da Ciência e Sociedade de Londres. Disponível em

<http://www.scienceandsociety.co.uk/results.asp?image=10305535&itemw=4&itemf=0003&itemstep=1&itemx=32>. Acesso em 02/01/2012.

O governo alemão começou a usar a Enigma em 1926. A partir daí, o mundo

todo ficou impossibilitado de ler as mensagens trocadas pelos militares alemães.

Singh (2001, p.163) é preciso ao dizer que “a Alemanha tinha agora a rede de

P á g i n a | 42

comunicações mais segura do mundo”. Isso aconteceu também devido à falta de

empenho por meio das maiores potências em quebrar essa cifra. A maioria achou

simplesmente que era impossível quebrá-la, por se tratar de uma máquina, e não

fizeram grandes esforços pra provar o contrário.

Havia, porém, uma nação emergente que dependia da interceptação e quebra

das mensagens alemãs: a Polônia. Localizado entre a então União Soviética e a

Alemanha, esse país tinha um potencial muito grande de ser invadido e, portanto,

necessitava de todas as armas possíveis para evitar esse acontecimento. O governo

polonês dispunha de um departamento de cifras chamado Biuro Szyfrów, o qual

demonstrava bastante competência na decifragem de mensagens estrangeiras. Em

1929, o capitão Maksymilian Ciezki, o encarregado de decifrar as mensagens

alemãs, tratou de recrutar matemáticos de uma universidade de uma parte do país

que fazia parte da Alemanha antes da primeira guerra mundial, por eles falarem

alemão fluentemente (COUTO, 2008; SINGH, 2001).

A pessoa de maior destaque foi Marian Rejewski, “um homem tímido de 33

anos que usava óculos” (SINGH, 2001, p. 169). Nota-se aí uma mudança no

recrutamento de pessoas para trabalhar com cifras, que passou a dar mais

credibilidade para matemáticos, em detrimento dos peritos em linguagens. O

brilhante Rejewski aproveitou-se do fato do governo francês ter obtido documentos

sobre o funcionamento da Enigma, através de um alemão descontente com seu

país, chamado Hans-Thilo Schmidt. De posse deles, Rejewski batalhou por mais de

um ano para conseguir ler as mensagens alemãs.

Para dar o merecido mérito, esse cientista conseguiu perceber padrões

através da interceptação de mensagens e daí traçou estratégias para diminuir o

número de tentativas, até um número razoavelmente pequeno, que pudesse ser

verificado pelo seu grupo de criptoanalistas. Pode não estar muito claro para o leitor,

mas, de fato, esse foi um salto extraordinário no que diz respeito à criptoanálise.

Singh (2001, p. 176), que explicou como Rejewski quebrou o código da Enigna em

seis páginas do seu livro, escreve ao final da análise: “A Enigma é uma máquina de

cifragem muito complicada e decifrá-la exigiu um imenso poder intelectual. Minhas

simplificações não devem levá-lo a subestimar a extraordinária conquista de

Rejewski”.

Quando os alemães fizeram algumas mudanças na Enigma, Rejewski

respondeu com a criação da chamada Bomba, uma máquina de decifragem da

P á g i n a | 43

Enigma. Com isso a Polônia foi capaz de ler as mensagens alemãs por boa parte da

década de 30. No entanto, os militares germânicos foram cada vez mais

aprimorando sua máquina cifrante deixando o número de possibilidades novamente

muito alto, o suficiente para que Rejewski e seus comandados não tivessem

recursos e capacidade técnica suficientes para verificar todas elas. A Polônia, que

havia chegado ao ápice de interceptações e decifragens de mensagens em 1938, se

viu completamente atordoada em 1939 com as modificações da Enigma.

Desesperados com a invulnerabilidade da máquina cifrante e com a

estratégia de blitzkrieg (guerra relâmpago) de Hitler, o governo polonês resolveu

divulgar seus avanços intelectuais e tecnológicos para os países Aliados. Singh

(2001, p. 180 e 181) relata o acontecimento da seguinte forma:

No dia 24 de julho, importantes criptoanalistas franceses e britânicos chegaram ao quartel-general do Biuro, sem saber o que esperar. Langer (...) puxou o pano, revelando dramaticamente uma das bombas de Rejewski. A platéia ficou assombrada ao saber como Rejewski estivera decifrando a Enigma havia anos. Os poloneses estavam uma década à frente do mundo. Os franceses ficaram particularmente admirados, porque o trabalho dos poloneses se baseara em resultados da espionagem francesa. Eles tinham entregue as informações de Schmidt para os poloneses porque acreditavam que elas não tinham nenhum valor, mas os poloneses mostraram que estavam errados.

(SINGH, 2001, p. 180 e 181)

A Polônia, definitivamente, mudou o curso da história. Não fossem eles, os

Aliados não teriam obtidos métodos de quebra da Enigma tão cedo. Além disso, a

decisão de revelar suas conquistas ocorreram na hora certa: algumas semanas

depois, em 1º de setembro, Hitler invadiu o país.

2.5.3. As contribuições de Bletchley Park e Alan Turing

A partir daí, a decifração da Enigma estava nas mãos de outros países, de

maior recurso e capacidade técnica pra executar as tarefas necessárias. E isso

aconteceu, sobretudo, em Bletchley Park, a sede da Escola de Cifras e Códigos do

Governo (GC&CS) da Inglaterra. Inicialmente o local contava com duzentas

pessoas, mas em cinco anos esse número subiu para sete mil. Estudiosos de todo

tipo habitavam a grande mansão que ficava no centro da cidade, entre matemáticos,

linguistas, especialistas em xadrez, em palavras cruzadas, entre outros. Nos

primeiros meses, por terem mais recursos humanos, os habitantes de Bletchley Park

P á g i n a | 44

aplicaram as mesmas técnicas usadas por Rejewski e obtinham êxito. Além disso,

eles começaram a criar se próprios métodos de decifração da Enigma e perceberam

que algumas falhas humanas estavam deixando a segurança da cifra mais fraca, e

puderam explorar isso ao máximo (SINGH, 2001).

Muitos importantes estudiosos passaram por Bletchley Park, porém seu mais

ilustre morador chegou um mês depois: Alan Turing (1912 – 1952). Segundo Singh

(2001, p. 186) esse cientista foi “quem identificou a maior fraqueza da Enigma e a

explorou sem piedade. Graças a Turing tornou-se possível quebrar a cifra da

Enigma mesmo sob as circunstâncias mais difíceis”. Esse cientista, que fora

professor da Universidade de Cambridge anos antes, já era bastante respeitado aos

seus 26 anos, após o lançamento do seu trabalho mais influente, o “Sobre os

números computáveis”. Nele, Turing entra no debate proposto pelo lógico Kurt

Gödel, sobre a indecidibilidade, o qual propunha que nem tudo poderia ser provado

na matemática através da lógica. Turing, além de comprovar a teoria, forneceu aos

cientistas uma sólida base teórica para a construção dos primeiros computadores,

ressuscitando assim o conceito da Máquina de Diferenças nº 2 de Babbage.

Em Bletchley Park, Turing empenhou-se em achar outras fraquezas da cifra

da Enigma, pois os britânicos imaginavam que os alemães corrigiriam as que eles

estavam usufruindo, até então. Por várias semanas o cientista pensou em como

poderia realizar essa tarefa, analisando arquivos antigos de mensagens decifradas

da Enigma. Notou então que o modo de uso da máquina possuía certos padrões que

facilitavam a sua quebra, como mensagens mandadas diariamente, no mesmo

horário, com informação sobre o clima, por exemplo. Elas poderiam ser usadas

como cola, porque como eram comunicações militares, obrigatoriamente seguiam

um padrão, e certas palavras como “tempo” sempre estariam localizadas em locais

específicos. Também descobriu que os alemães nunca usavam os misturadores nas

mesmas posições do dia anterior, o que reduzia pela metade as possibilidades para

o próximo dia, além de que uma letra nunca poderia ser cifrada por ela mesma ou

pelas duas seguintes. Ou seja, a letra “d” não poderia ser cifrada por “d”, “e” ou “f”.

Os alemães acreditavam estar dificultando o trabalho dos Aliados com essas

medidas, no entanto estavam na verdade tornando suas cifras mais vulneráveis

(SINGH, 2001).

Com as suas descobertas, criou uma versão melhorada das Bombas de

Rejewski, que levaram o seu nome, dessa vez. Não tendo sucesso na primeira

P á g i n a | 45

versão da sua máquina, a segunda atendeu prontamente os ensejos de Turing e

todos de Bletchley Park. Ele, que era considerado um verdadeiro gênio por seus

colegas de trabalho, ganhara tanto prestígio que, desobedecendo a ordens de seu

superior direto, enviou, junto a outros cientistas, uma carta para o primeiro-ministro

inglês solicitando mais recursos para Bletchley Park, sendo atendido prontamente.

Figura 10: Bomba de Turing Fonte: Livraria de Imagens da Ciência e Sociedade de Londres. Disponível em

<http://www.scienceandsociety.co.uk/results.asp?image=10307387&itemw=4&itemf=0003&itemstep=1&itemx=4>. Acesso em 02/01/2012.

O último grande desafio da inteligência inglesa foi a quebra da cifra da

Enigma da marinha alemã, que usava uma versão da máquina bem mais sofisticada

e segura, além deles não cometerem os mesmos erros que os seus compatriotas em

terra estavam cometendo. As mensagens trocadas pela frota naval eram

consideradas impossíveis de serem decifradas. No entanto, os britânicos tinham

como exemplo o caso da Polônia, que apelara para a espionagem, na tentativa de

facilitar sua missão. Como os Aliados estavam visivelmente perdendo a batalha nos

mares, corriam sérios riscos de perderem também a guerra.

Como os navios alemães passavam muito tempo em mar, todos eles

possuíam livros-código a serem usados por mês, então se um fosse roubado, os

P á g i n a | 46

Aliados poderiam decifrar as suas mensagens durante igual período. E assim foi

feito: uma série de ataques a navios e submarinos alemães foi realizada e, dessa

forma, foram obtidos os livros. De posse deles, os Aliados puderam reverter a

situação da guerra marítima. Em contrapartida, os alemães começaram a suspeitar

que houvesse espiões Aliados entre eles, pois com o aumento repentino de ataques

a seus navios e submarinos só poderia ser explicado dessa forma, uma vez que “a

quebra da Enigma era considerada impossível e inconcebível” (SINGH, 2001, p.

207).

Depois de vencida a guerra, os heróis dos campos de batalha puderam contar

seus trunfos e histórias, ao contrário dos criptoanalistas que assinaram termos de

sigilo de suas funções durante a guerra. Isso acarretou em muitos dos intelectuais,

que foram tão importantes quanto os soldados que pegavam em armas, não

receberem os méritos por suas contribuições ainda em vida. Um dos casos mais

emblemáticos é o do próprio Alan Turing. Uma vez considerado gênio, cometeu

suicídio em uma cadeia, após ter sido acusado de “alta indecência”, por ser

homossexual. Lá, fora forçado a consultar um psiquiatra e a tomar hormônios que o

deixaram obeso e impotente. Em 7 de junho de 1954 comeu uma maçã que ele

havia mergulhado em uma solução de cianeto. O sigilo só acabou na década de 70,

quando a Enigma deixou de ser usada definitivamente (SINGH, 2001).

2.5.4. O código Navajo

Ainda durante a Segunda Guerra Mundial, não podemos esquecer da

contribuição dos índios Navajos para os Aliados. Como vimos, os alemães usaram a

máquina Enigma para cifrar suas mensagens, no entanto, ainda não mencionamos

que os ingleses e americanos também tinham suas máquinas de cifragem: a Typex

e SIGABA, respectivamente. Elas eram mais complexas que a Enigma, e

funcionaram perfeitamente, já que eram usadas corretamente por suas nações,

sendo assim consideradas indecifráveis durante a guerra. Porém elas não eram

práticas, como a Enigma, que poderia ser usada em campo de batalha, pois cada

mensagem que precisava ser cifrada e decifrada tinha que ser anotada no papel,

primeiramente, e depois ser passada para a máquina, além de elas serem

relativamente lentas, o que acarretava em muitos prejuízos, no calor da batalha.

P á g i n a | 47

Portanto, os Aliados precisavam de um método mais prático. Foi quando, em

1942, Philip Johnston, um engenheiro de Los Angeles, propôs o recrutamento de

nativos americanos, cuja língua própria era desconhecida para os próprios

americanos. Depois de uma pesquisa, foram escolhidos os Navajos, por ser o único

povo no qual os alemães não tiveram contato antes da guerra. Nesse mesmo ano,

29 navajos passaram por um treinamento de oito semanas, no qual foram

apresentados a alguns termos em inglês para objetos que não existiam no seu

cotidiano, como aviões, navios e submarinos. Esses termos foram substituídos para

nomes de pássaros e peixes, por exemplo (COUTO, 2008).

Dessa forma, os nativos ajudaram e muito os Aliados a vencerem a guerra,

porque uma mensagem que levaria quase uma hora pra ser cifrada e decifrada pela

SIGABA levava menos de cinco minutos pelos navajos. Esse código continuou

inquebrável por muito tempo. Infelizmente, assim como Alan Turing, os navajos só

obtiveram reconhecimento muitos anos depois de terminada a guerra, pelo sigilo em

que foram obrigados a manter. Apenas em 1982 eles foram homenageados pelo

governo americano, ao batizar o dia 14 de agosto como “Dia Nacional dos

codificadores navajos”.

2.5.5. O surgimento da Criptografia computadorizada

Como podemos perceber, as máquinas foram decisivas na Segunda Guerra

Mundial. Algumas delas que tinham como função a cifragem de mensagens, e

outras a decifragem. Apesar da Enigma ser a mais conhecida, a Alemanha dispunha

de outra máquina: a Lorenz SZ40. Ela responsável pela comunicação direta de Hitler

e seus generais, e sua cifra era mais complexa que a da Enigma.

A quebra dessa cifra não era páreo para as bombas de Turing, pois exigiam

certa flexibilidade para as sutilezas da Lorenz. Foi então que o matemático Max

Newman projetou um mecanismo de decifragem da máquina de Hitler, baseando-se

no conceito criado por Alan Turing. Tratava-se de um computador programável.

Depois de ser rejeitado, primeiramente, o projeto foi iniciado quando o engenheiro

Tommy Flowers decidiu levar as plantas para o centro de pesquisa dos correios, no

norte de Londres. Em 8 de dezembro de 1943 ele entregou em Bletchley Park a

máquina Colossus, o primeiro computador da história. Ela usava 1500 válvulas

P á g i n a | 48

eletrônicas, o que aumentava bastante sua velocidade com relação às outras

existentes, e tinha a incrível capacidade de ser programável.

Figura 11 – Computador Colossus Fonte: Livraria de Imagens da Ciência e Sociedade de Londres. Disponível em

<http://www.scienceandsociety.co.uk/results.asp?image=10307367&itemw=4&itemf=0003&itemstep=1&itemx=9>. Acesso em 02/01/2012.

A partir daí a evolução dos computadores só fez crescer, e com isso, a

criptografia e, consequentemente, a criptoanálise também. Os computadores

ampliaram e muito a concepção dessas ciências, criando muitas novas

possibilidades. Porém, nessa época ainda estavam presas aos militares, pois não

era qualquer um que tinha computadores. Situação que começou a mudar no início

da década de 50, com a invenção dos transistores, que tornaram as máquinas mais

baratas e passíveis de serem comercializadas. Porém, revolução mesmo ocorreu no

final dessa década, quando foram inventados os circuitos integrados, que

potencializava ainda mais a comercialização dos computadores.

Com muito mais empresas podendo adquirir e manter uma máquina dessas, a

cifragem de suas comunicações, como negociações comerciais ou transferência de

dinheiro também aumentou. O grande problema era que cada empresa tinha seu

próprio sistema de cifragem, o que confundia a todos. Até que na década de 70, o

P á g i n a | 49

Bureal nacional de padrões norte-americano propôs a criação de um sistema único

de cifragem, e pediu sugestões para cientistas. Primeiramente, nenhuma proposta

foi feita. Na segunda tentativa apareceu o DES (Data Encryption Standard ou

Padrão de Cifragem de Dados). Desenvolvido pela IBM em 1970, através de um

grupo liderado por Horst Feistel, o DES tornou-se o sistema de cifragem padrão dos

Estados Unidos por décadas. Antes passou por algumas modificações, como o

nome, que era chamado de sistema Lucifer, e o tamanho da chave. Com relação a

esse último item, quem fez a proposta de redução foi a NSA (Nacional Security

Agency ou Agência de Segurança Nacional). Singh (2001, p. 273) a define da

seguinte forma:

(...) a organização responsável pela manutenção da segurança das comunicações militares e do governo, que também tenta interceptar e decifrar as comunicações estrangeiras. A NSA emprega mais matemáticos, compra mais equipamentos de computação e intercepta mais mensagens do que qualquer outra organização do mundo. É a líder mundial no que se refere a escuta.

(SINGH, 2001, 273)

A NSA propôs a redução do tamanho da chave, que era de 64 bits para uma

de 56 bits, para que a segurança nas comunicações fosse mantida, mas que ela

ainda pudesse ser capaz de decifrar as mensagens, pois se fosse mantido o

tamanho original da chave, a cifra era tão segura que nem a própria agência poderia

quebrar.

O DES, que transforma as letras em números binários, é altamente eficaz

porque embaralha todos esses números em 16 rodadas de manipulação, algo que

tornava os computadores da época incapazes de verificar todas as possibilidades

existentes, tornando-a assim extremamente segura.

Com o DES, o problema da padronização foi resolvido. No entanto, havia

outro: com o crescente uso da criptografia por mais organizações, como lidar com a

distribuição de chaves, de modo a garantir a segurança de milhares de negócios,

que geralmente envolviam muito dinheiro? É o que vamos ver na próxima seção.

P á g i n a | 50

3. CRIPTOGRAFIA RSA

Nesta seção apresentamos a necessidade de resolução do problema da

distribuição de chaves, o que gerou o modelo de criptografia com chaves

assimétricas, tendo com sua principal exemplo a cifra RSA.

3.1. NECESSIDADES E DESAFIOS DA CRIPTOGRAFIA NA DÉCADA DE 70

O grande problema da criptografia ao longo da história e principalmente no

século XX era a troca de chaves de forma segura, pois para duas partes se

comunicarem entre si, era preciso uma terceira para o transporte das chaves ou

encontros periódicos para a troca delas.

Com a criação de um projeto de computadores conectados batizado de

ARPAnet, criado em 1969 que, mais tarde, em 1982, deu origem à internet,

Whitifield Diffie(1944 -), um matemático e criptógrafo norte-americano, motivado pela

sua visão de mundo conectado, se interessou pelo envio de informações de forma

confidencial, mas esbarrou no problema das trocas de chaves de forma segura

(ARAUJO e SOUZA, 2010).

Você deve estar pensando que se duas pessoas querem trocar mensagens

de forma confidencial ente si, uma solução seria eles marcarem encontros

periódicos para trocar chaves suficientes para um mês todo; mas o que aconteceria

se uma delas, por motivo de doença, por exemplo, fosse impossibilitada de ir ao

encontro? Nesse caso, seria preciso uma terceira pessoa para o envio de

mensagens.

Na década de 1970 os bancos tentaram distribuir chaves usando viajantes que estavam entre os empregados de maior confiança da empresa. Esses estafetas percorriam o mundo com valises trancadas, distribuindo pessoalmente as chaves pra todos os que receberiam mensagens do banco na semana seguinte. Mas à medida que as redes de negócios aumentavam em complexidade, mais mensagens eram enviadas e mais chaves tinham que ser entregues. Os bancos logo descobriram que esse processo de distribuição tornara-se um horrível pesadelo logístico, e os custos ficaram proibitivos.

(SINGH, 2001, p. 275)

Costuma-se usar para ilustrar os problemas de criptologia três personagens

fictícios em uma determinada situação. Os personagens são Alice, Bob e Eva onde

P á g i n a | 51

Alice e Bob querem trocar mensagem de forma confidencial em um lugar onde as

empresas de troca de mensagens não são confiáveis, e Eva tenta interceptá-la.

Diffie começou a pensar em formas de Alice e Bob trocarem chaves sem a

necessidade que se encontrassem e, ainda de forma segura, para que Eva não

conseguisse descobrir tais chaves. Uma solução para o caso seria Alice e Bob

contratarem mensageiros para entregar as mensagens, mas como os mensageiros

não são confiáveis, essa não seria uma boa idéia. Diffie pensou na seguinte

situação: Alice envia sua mensagem em um baú e tranca-o com cadeado que só ela

tem a chave; o mensageiro leva o baú até Bob que põem outro cadeado que

somente ele tem a chave; então o mensageiro volta até Alice que destranca o

cadeado que ela colocou e reenvia o baú para Bob, apenas com o cadeado dele

(SINGH, 2001).

Esse sistema garante que a mensagem tenha sido enviada com sigilo, mas

não era muito funcional na prática, pois o fato de que a mensagem passasse duas

vezes por Bob e por Alice e o uso do mensageiro aumentaria os custos. No entanto,

este modelo serviu como base para que Diffie e Martin Hellman, outro criptógrafo

nascido em 1945, procurassem um método prático para solucionar o problema de

distribuição de chaves, já que o modelo de cifragem dupla não requer a troca de

chaves.

Então Diffie e Hellman, que mais tarde receberam a ajuda de Ralph Merkle

(um intelectual que também se interessava pelo problema das trocas de chaves), se

empenharam na tarefa de encontrar funções matemáticas de mão única, pois a

maioria delas é considerada de mão dupla, ou seja, que apresentam facilidade pra

criptografar e descriptografar ao mesmo tempo. Por exemplo, uma função que

representa as letras do alfabeto como sendo número, como A , B , C ,

etc., cuja fórmula é . Se usarmos , ou seja, a letra A

passaria a ser a letra E. Esse é um método fácil de criptografar, e isso é positivo. No

entanto, para descriptografar, o processo é inverso e, portanto, apresenta certa

facilidade, já que devemos apenas subtrair e dividir por . Já os processos

considerados de mão única são aqueles irreversíveis ou então quase impossíveis de

serem revertidos, que Singh (2001, p. 286) usa como exemplo o ato de “misturar

tinta amarela com tinta azul para produzir tinta verde” pela facilidade em misturar as

tintas, mas ser quase impossível desfazer a mistura.

P á g i n a | 52

Nessa procura por funções de mão única encontraram a aritmética modular,

que é um campo rico em funções desse tipo. Para explicar melhor como funciona

uma função modular, usamos uma comparação com o relógio analógico, onde as

horas são apresentadas de maneira circular. Por exemplo, suponha que o ponteiro

pequeno marque 2 horas em ponto. Daqui a três horas o ponteiro marcará 5 horas,

porém, passadas mais dez horas, o relógio não marcará 15 horas, mas sim 3 horas.

Figura 12 – Relógio Analógico Fonte: Própria

Na aritmética modular dizemos que 15 é congruente à 3 módulo 12

. Os cálculos e os valores estão em função do valor do módulo, pois todo

número pode ser representado pelo valor do resto da divisão dele mesmo pelo valor

do módulo. Primeiro os cálculos são realizados usando a aritmética normal. Depois,

para saber a resposta em , a dividimos por , encontrando o quociente

inteiro e anotamos o resto. Por exemplo, para achar o valor de

primeiro efetuamos a operação ; depois dividimos o resultado por :

, com resto igual a

É importante ressaltar que as propriedades de funções exponenciais se

mantém quando contidas na função modular.

Em 1976, depois de passarem dois anos estudando a aritmética modular e as

funções de mão única, Hellman descobriu uma solução para o problema da troca de

chaves. A ideia dependia de uma função de mão única da forma . Nesse

esquema, Alice e Bob escolhem inicialmente os valores de e , sendo que esses

P á g i n a | 53

valores não são secretos, ou seja, eles podem trocar essas informações sem se

preocupar que Eva descubra esses valores.

Vamos ilustrar o procedimento com um exemplo:

Figura 13 – Esquema para obtenção de uma chave sem a necessidade de um encontro físico. Fonte: Adaptado de Singh (2001, p.290).

Singh (2001, p. 291) compara este processo com a seguinte situação:

Alice escolhe um número que

vamos chamar de A, digamos 7, e

o mantém em segredo.

Bob escolhe um número que

vamos chamar de B, digamos 4, e

o mantém em segredo.

Alice introduz o 7 na função de mão

única e o resultado de :

Bob introduz o 4 na função de mão

única e o resultado de :

Alice e Bob escolhem primeiramente os

valores de Y e P, que poderiam ser, por

exemplo, 5 e 13, respectivamente.

Alice chama o resultado dos

cálculos de e envia o seu

resultado para Bob.

Bob chama o resultado dos

cálculos de e envia o seu

resultado para Alice.

Normalmente este seria um momento crucial porque Alice e

Bob estão trocando informações e, portanto, esta é uma

oportunidade para Eva escutar e descobrir os detalhes da

informação transmitida.

Contudo, Eva pode ouvir sem comprometer a segurança final

do sistema. Alice e Bob podem usar a mesma linha telefônica

através da qual escolheram os valores de e , e Eva pode

interceptar esses números que estão sendo trocados, ou

seja, 5 e 4. Contudo esses números não são a chave, e por

isso não importa que Eva os conheça.

Alice pega o resultado do Bob e

calcula a solução de :

Bob pega o resultado do Alice e

calcula a solução de :

Miraculosamente Alice e Bob

terminaram com o mesmo número

1. Esta é a chave!

P á g i n a | 54

(...) vamos presumir que todos, incluindo Alice, Bob e Eva, possuam um frasco de três litros contendo um litro de tinta amarela. Se Alice e Bob desejam obter uma chave secreta, eles acrescentam um litro da cor secreta de cada um ao seu próprio frasco. Alice pode colocar um tom peculiar de púrpura, enquanto Bob pode colocar vermelho. E cada um envia seu frasco de tinta misturada para o outro. Finalmente Alice pega a mistura de Bob e acrescenta um litro de sua própria cor secreta. Ao mesmo tempo Bob pega a mistura de Alice e acrescenta um litro de sua própria cor secreta. Ambos os frascos agora devem apresentar a mesma cor, porque ambos contêm um litro de amarelo, um litro de púrpura e um litro de vermelho. E é esta cor exata dos frascos, duplamente contaminados, que será usada como chave. Alice não tem ideia de qual foi a cor colocada por Bob e Bob não tem ideia da cor acrescentada por Alice, mas ambos obtiveram o mesmo resultado. Enquanto isso, Eva está furiosa.

(SINGH, 2001, p. 291)

No entanto, mesmo que esse sistema conhecido pelo nome Diffie-Hellman-

Merkle fosse um grande salto, não era perfeito, pois para Alice cifrar sua mensagem,

ela precisa escolher uma chave juntamente a Bob. E pra que essa troca seja feita é

preferível que os dois estejam conectados ao mesmo tempo, pois o estabelecimento

da chave exige uma troca mútua de informações, e isso prejudica a espontaneidade

do envio de mensagens.

Ainda havia outro problema no sistema Diffie-Hellman-Merkle, pois além de

não resolver totalmente o problema da distribuição de chaves, como vimos, ele não

era muito prático. Imagine que Alice queira trocar mensagens cifradas com um

número muito grande de pessoas. Primeiramente ela teria que estabelecer contato

com todas as pessoas para escolher o valore e e estabelecer a chave, logo isso

poderia levar algum tempo e não poderia ser feito simultaneamente, a não ser que

todos, inclusive Alice, adotem o uso de valores padrões para a chave. Porém isso

prejudicaria muito a segurança do método, uma vez que dependeria da

responsabilidade de cada um guardar os valores da chave, pois, se de alguma

forma, Eva esteja infiltrada entre os remetentes de Bob e Alice, ela teria acesso à

chave e poderia decifrar todas as mensagens cifradas. Portanto quanto maior o

número de remetentes de Alice, menor a segurança da cifragem.

Mas o problema da troca de chaves foi finalmente superado com a ideia que

Diffie elaborara: nele incorporava-se a chave assimétrica. O grande problema do

sistema anterior era que as chaves que eram usadas para cifrar e decifrar eram as

mesmas, e sistemas assim são chamados de simétricos. Todos os sistemas de

cifragem até então era simétricos. Em um sistema assimétrico, as chaves de

P á g i n a | 55

cifragem e de decifragem são diferentes, logo, se Alice souber a chave cifrante, ela

pode cifrar a mensagem, mas não pode decifrá-la, para isso precisaria da chave de

decifragem. “Esta distinção entre a cifragem e decifragem é o que torna a cifra

assimétrica tão especial” (SINGH, 2001, p. 294).

Nesse contexto, podemos imaginar que a chave de cifragem de Alice é um

número e a chave de decifragem é outro número. Assim, Alice mantém em segredo

a sua chave que é responsável por decifrar e pode distribuir a sua chave cifrante

para todos que quiserem lhe enviar mensagem possam saber sem comprometer a

confidencialidade da mensagem. É por isso que esta chave é comumente chamada

de chave pública. Assim, se Bob deseja envia uma mensagem para Alice, basta

procurar a chave pública dela, que poderia estar em uma lista como a telefônica, por

exemplo. Bob então usa a chave pública para cifrar a mensagem e enviar para Alice,

que poderá decifrá-la com sua chave particular. Singh (2001, p. 295) afirma que “a

grande vantagem desse sistema é que não há envios e recepções de números como

no sistema de troca de chaves de Diffie-Hellman-Merkle, [...] além disso, cifra

assimétrica elimina o problema de distribuição de chaves”.

Agora Bob não precisa esperar que Alice lhe envie informações antes de

cifrar e mandar a mensagem para ela, ele só precisa obter a chave de cifragem

pública usada por ela; e Alice não precisa se preocupar em enviar a chave de

cifragem em segurança, ao contrário, ela tem interesse em divulgar a chave pública

para um número cada vez maior de pessoas para que possam lhe enviar

mensagens em segurança.

Esse método de cifragem proposto por Diffie é o inverso da cifra simétrica

tradicionalmente usada, onde a chave usada para cifragem era igual a usada para

decifragem, de modo que Alice e Bob precisariam tomar muito cuidado para que

esta chave não caia nas mão de Eva. A ideia de método de cifragem assimétrico

pode ser comparada ao ato de fechar e abrir um cadeado, onde qualquer pessoa

pode fechar (cifrar) o cadeado simplesmente apertando o fecho no lugar, mas

somente quem tem a chave do cadeado (chave particular) pode abri-lo (decifrar). É

como se Alice enviasse cadeados para todos que quisessem lhe enviar mensagem,

assim, Bob pode escrever uma mensagem, colocar dentro de um baú e enviar para

Alice, e somente Alice tem a chave para abrir o cadeado (SINGH, 2001).

É importante ressaltar que, embora Diffie tivesse elaborado a idéia de uma

cifra assimétrica, ele não tinha uma que servisse de exemplo. O sistema parece

P á g i n a | 56

simples quando explicados em analogias a chaves e cadeados, mas encontrar uma

função matemática que faça a mesma coisa é um trabalho longe de ser banal. No

verão de 1975, Diffie publicou um resumo da sua idéia, o que fez com que muitos

cientistas procurassem por uma função de mão única apropriada que se adequasse

aos critérios de uma cifra assimétrica.

Em 1976 a equipe Diffie, Hellman e Merkle revolucionaria a criptografia.

Primeiro porque criaram o sistema que solucionaria o problema da distribuição de

chaves, o sistema de troca de chaves Diffie-Hellman-Merkle, que era imperfeito, mas

que poderia ser operado; em seguida por propor o sistema de cifragem assimétrica,

que era perfeito, mas até então, não funcionava.

A descoberta de uma função de mão única que pudesse ser usada em um

sistema de criptografia assimétrico veio de outro trio, dois cientistas computacionais

e um matemático: Ronald Rivest e Adi Shamir e Leonard Adleman, respectivamente.

Após muitas tentativas e fracassos, onde os cientistas eram responsáveis por criar

um possível sistema que solucionaria o problema e o matemático se encarregava de

encontrar falhas, em um determinado dia, Adleman não encontrou uma falha sequer

no sistema proposto por Rivest. Deu-se origem então ao sistema que seria chamado

a partir das iniciais dos nomes de seus criadores, o sistema RSA (Rivest, Shamir,

Adleman), que se tornou a cifra mais influente da criptografia moderna (TKOTZ,

2005i).

O sistema RSA depende de uma função modular de mão única que pode ser

usada para cifrar a mensagem, mas que para decifrá-la esta pessoa precisaria de

uma informação especial. De forma geral, nesse sistema, precisamos de três

informações¸ dois números primos e e o número que é o resultado a

multiplicação dos dois primos. O valor de é uma informação pública, que será

aplicada a função junto com a mensagem para cifrá-la, mas para decifrá-la é preciso

conhecer e , e como é um valor flexível, cada pessoa pode ter sua própria

chave. Assim, podemos pensar em como a chave pública, informação disponível

para qualquer pessoa e necessária para cifrar as mensagens; já e são a chave

particular, informação necessária para decifrar a mensagem.

Você pode estar pensando que não deve ser tão difícil encontrar e

conhecendo uma vez que é resultado de e . Em primeiro lugar, pelo teorema

da fatoração única, enunciado primeiramente por Gauss no seu livro Disquisitiones

P á g i n a | 57

arithmetiae, este produto tem a forma única

, onde são fatores primos

e suas multiplicidades. Portanto os únicos primos que geram são e e a

única forma de obtê-los através de é a fatoração. Como os matemáticos têm tido

grande dificuldade em encontrar um método rápido e eficiente para descobrir quais

foram os números primos usados para gerar outros números, se for um número

suficientemente grande, será praticamente impossível deduzir os valores de e . É

baseada nisso que a segurança da criptografia RSA é tida como plenamente

satisfatória.

Por exemplo, digamos que Alice tenha criado a partir dos primos e

, para obter basta multiplicar, com qualquer calculadora, os valores de e

e encontrar o valor de , que é . Entretanto se em vez disso tentássemos

descobrir os valores de e a partir do valor não seria uma tarefa tão

fácil, pois os métodos de fatoração conhecidos não são tão eficientes. É isso que faz

a função ser considerada como de mão única (SINGH, 2001).

Em 1903, Frank Nelson Cole, professor de matemática da Universidade de Columbia, em Nova York, deu uma palestra curiosa em um encontro da Sociedade Norte-Americana de Matemática. Sem dizer uma palavra, escreveu um dos números de Mersenne em um quadro-negro e, no quadro ao lado, escreveu a multiplicação de dois números menores. No meio, colocou um sinal de “igual”, e então se sentou.

A platéia ficou em pé e aplaudiu — uma efusão rara em uma sala cheia de matemáticos. Mas seria tão difícil multiplicar dois números, mesmo para matemáticos da virada do século? Na verdade, Cole havia feito o oposto. Já

se sabia desde 1876 que , um número de Mersenne de 20 algarismos, não era primo, sendo o produto de dois números menores. Porém, ninguém sabia quais eram esses números. Cole precisou gastar as tardes de domingo durante três anos seguidos para “decifrar” os dois componentes primos desse número.

(SATOY, 2007 p. 240)

Para o caso de ainda não estar convencido da dificuldade de fazer a

operação inversa ou de encontrar números primos grandes, tente encontrar o

valores primos que deram origem ao número . Para deduzir os valores

de e precisamos calcular os valores que se multiplicados um pelo outro, geram

, e a única maneira é fatorar.

A fatoração é um processo trabalhoso e que exige muito tempo, pois todas

envolvem, essencialmente, verificar cada número primo para ver se ele divide . Se

P á g i n a | 58

tentarmos primo a primo, começaremos por que é primo, mas não divide sem

deixar resto, então passamos para o número que é primo mas também não divide

e assim por diante até chegarmos no número primo que é o de numero

da sequência, e um fator de . Depois de encontrar o primeiro

valor, é fácil encontrar o segundo . Se usássemos uma calculadora que

verificasse quatro números por minuto, levaríamos 500 minutos para encontrar, ou

seja, mais de oito horas. Mas para gerar o valor de multiplicando e , não

precisaríamos de mais que um minuto com uma calculadora.

O nível de segurança, nesse caso, não é muito grande, mas se escolhermos

primos maiores, que resultassem em na casa de , Singh (2001 p. 303) afirma

que “os esforços combinados de cem milhões de microcomputadores levariam mais

de mil anos para quebrar esta cifra. Com valores suficientemente grandes de e ,

a RSA é invencível”.

Antes de continuarmos, é importante analisarmos alguns dos métodos e

fórmulas que foram criados para encontrar ou estimar números primos, ao longo da

história.

3.2. NÚMEROS PRIMOS

Como sabemos, a segurança da criptografia RSA depende de sermos

capazes de escolher dois primos grandes, na casa dos 60 ou mais algarismos cada.

Os números primos sempre foram objeto de estudo dos matemáticos durante toda a

história, e existem grandes dificuldades em encontrar e traçar fórmulas para

descobrir números primos. Mostraremos, nessa sessão, algumas tentativas.

Muitos matemáticos tentaram descobrir padrões para o aparecimento de

números primos na sequência de números inteiros e assim, gerar fórmulas que

determinem números primos. Por muito tempo, nenhuma tentativa foi bem sucedida.

Todas elas acabam por classificar esses números de acordo com o seu

comportamento, ou seja, de acordo com a fórmula ou método pelo qual é possível

encontrá-lo. Dentre essas classificações e formulas podemos citar a fórmula

polinomial, o Teorema de Fermat e o método de Gauss, por exemplo. Vejamos,

então, essas e mais algumas.

P á g i n a | 59

3.2.1. Fórmula Polinomial

A fórmula polinomial é uma das mais simples para encontrar primos, pois ela

nos diz que um polinômio na forma

onde os coeficientes são números inteiros que satisfazem a

condição “ é primo, para todo o inteiro positivo ”.

Vamos calcular os valores do polinômio para os dez primeiros inteiros

positivos no polinômio de segundo grau .

Tabela 02 – 10 primeiros números da fórmula polinomial para números primos.

É possível notar que quando é impar, é par e, portanto não é primo,

exceto para , ou seja, só é possível ser primo se for par, mas que é

composto, logo este polinômio está longe de nos dar a fórmula para números

primos.

Entre essas tentativas de encontrar formulas para encontrar números

podemos destacar duas de grande importância histórica, são elas as de Mersene e

Fermat.

P á g i n a | 60

3.2.2. Números de Mersenne

Números de Mersenne são os números da forma , e determinar

quais desses números são primos é uma questão herdada da Grécia. Marin

Mersenne era um frade matemático amador do século XVII, que se correspondia

com muitos matemáticos da sua época, entre eles¸ Fermat. Ele afirmou que os

números da forma seriam primos quando

e ; e compostos para os outros valores primos menores que .

Os valores de teriam que ser primos, pois, caso contrário, será

composto. É fácil provar este fato se é composto, então

Portanto se divide então divide , mas como o enunciado indica,

nem todo primo resultará em outro primo, pois é composto, pois,

Mersenne não apresentou nenhuma justificativa para estes resultados, como

era muito comum na época. Posteriormente foram encontrados alguns erros na lista,

o primeiro foi encontrado por Persvusin e Seelhof em 1886, descobriram que

é primo, outros erros foram encontrados depois. Além de , a lista omite

e e inclui os compostos e .

De acordo com Dias (2008, p. 37), “ainda hoje existem questões abertas

sobre a infinitude dos números primos e compostos de Mersenne. O maior primo de

Mersenne conhecido até agora é: ”.

Fermat desenvolveu um método para encontrar fatores para os números de

Mersenne tais que seja primo com um número primo.

3.2.3. Método de Fermat (em relação aos números de Mersenne)

Seja um número e um fator primo de . Então para

algum inteiro positivo . Vamos usar este método para achar um fator de

. Temos que qualquer fator primo de é da forma . Vamos

P á g i n a | 61

atribuir valores a e testar em cada caso se temos fator. Sabemos que se for

composto, então tem um fator . Logo

como

então

Quando , . Logo só temos que tentar . O maior primo de

Mersene conhecido é .

3.2.4. Números de Fermat

Outra fórmula conhecida para encontrar primos é de autoria de Fermat, em

uma carta para um matemático amador, o cavalheiro Frenicle, onde Fermat

enumerou os elementos da forma , para os valores inteiros de entre

e , que apresentamos na tabela a seguir:

Tabela 03 – Seis primeiros números de Fermat.

P á g i n a | 62

Assim, conjecturou que todos os números desta forma são primos. Mas essa

conjectura foi refutada por Leonhard Euler em 1732, quando mostrou que era

composto.

3.2.5. Primos de Shophie Germain

Alguns números primos podem ser encontrados na forma , e os

chamamos de primos Shophie Germain. São exemplos destes números os primos ,

, , e . O maior número primo conhecido na forma de Shophie Germain é o

número .

3.2.6. Fórmulas Fatoriais

Coutinho (2000) diz que dado um primo positivo, construiremos uma função

semelhante ao fatorial, só que apenas os primos são multiplicados. Vamos chamar

de o produto de todos os primos menores ou iguais a . Por exemplo

, estamos interessados em números da forma , veremos o porquê abaixo:

Tabela 04 – Números primos gerados pela fórmula fatorial

Note que todos os números da terceira coluna são primos, mas se fizermos

teriamos , que é composto. Essa formula não é

uma das melhores para encontrar primos. Sua importância não está na

determinação de números primos, afinal, são conhecidos apenas 16 primos, sendo

que o maior corresponde a . Porém, essa formula é importante, pois

permite concluir o seguinte teorema: Existem infinitos números primos.

Uma das demonstrações mais importante desses teoremas é a de Euler em

1737, em que ele considera o produto

P á g i n a | 63

onde temos que para cada número primo. Se houvesse uma quantidade finita

de números primos, esse produto seria igual a um número real positivo. Assim, por

contradição, é preciso mostrar que isto não é verdade. Euler verificou primeiro que

é igual à soma

Esta soma tende a se elevar cada vez mais, então não há dificuldade para

mostrar que ela é divergente. Logo, não pode haver uma quantidade finita de

números primos.

3.2.7. Crivo de Eratóstenes

Eratóstenes foi um matemático, historiador, filósofo, astrônomo e geógrafo

grego que nasceu em Cirene por volta de 275 a.C e morreu em Alexandria em 194

a.C. Foi o criador de um dos mais antigos métodos para encontrar números primos,

o chamado “crivo de Eratóstenes”, que não envolve nenhuma fórmula matemática

explicita (COUTINHO, 2004).

O crivo funciona como uma espécie de peneira que só deixa passar os

números primos, ele determina todos os primos até certo inteiro positivo .

Começamos listando os números impares de a (ímpares porque é o único

primo par). Digamos que , então teremos os números

Depois de formada a lista, procedemos da seguinte maneira: o primeiro

número da lista é o , então riscamos os números de três em três, assim serão

riscados todos os números múltiplos de .

P á g i n a | 64

Fazemos o mesmo com o número e assim com os próximos números, até

riscarmos todos o números que são múltiplos que outros

Podemos parar na terceira passagem (de 7 em 7), pois a lista continua a

mesma se riscarmos os múltiplos de 11.

Isto garante que os números restantes não sejam múltiplos de nenhum dos

números anteriores, logo os números primos menores que 39 são os listados acima.

Como podemos notar, no crivo de Erastóstenes há números que são riscados

mais de uma vez, o 21, por exemplo, que já havia sido riscado como múltiplo de 3,

foi riscado também como múltiplo de 7. Existem formas de amenizar esse problema

de riscar um número mais de uma vez, porém não de eliminá-lo totalmente.

Coutinho (2000, p. 65) afirma que “não podemos creditar isso como um defeito;

afinal, o objetivo do algoritmo é achar todos os primos até , e isto não é razoável se

tiver algarismos”.

3.2.8. A pergunta de Gauss

Em 1792, aos 15 anos de idade, Gauss adotou uma estratégia diferente. Um

ano antes, ele havia ganhado um livro de logaritmos onde, na contracapa, havia uma

tabela de números primos. Gauss, conhecido pela facilidade em encontrar

regularidades, percebeu, após cálculos extensos, uma relação entre assuntos

aparentemente desconexos.

Os números primos fascinavam Gauss porque eram totalmente aleatórios, e

não existe nenhuma maneira de prever quando esperar o primeiro primo depois do

número 1000. Mas Gauss, tinha uma pergunta diferente sobre os números primos, e

a tentativa de responder essa pergunta foi a responsável pelo grande avanço dele.

Em vez de tentar encontrar primos, ele buscou descobrir quantos primos haveria

P á g i n a | 65

entre os 100 primeiros números, depois entre os 1000, entre os 10000 e assim por

diante. Assim, se pegarmos um número , poderíamos fazer uma estimativa que

quantos números primos existem entre e ?

Se analisarmos, veremos que existe 25 números primos entre 1 e 100, isso

significa que temos 25% de chance de encontrar um número primo se escolhermos

um número qualquer nesse intervalo. Mas o que acontece se aumentarmos essa

proporção, entre 1 e 1000000, por exemplo? Analisando-a na tentativa de responder

essa pergunta, Gauss notou um padrão à medida que a contagem se elevava,

apesar de toda a aleatoriedade. Vejamos a tabela a seguir:

Número de primos de 1 a ,

frequentemente chamado de

.

Em média quantos números

precisamos contar até atingir um

número primo.

10 4 2,5

100 25 4,0

1.000 168 6,0

10.000 1.229 8,1

100.000 9,592 10,4

1.000.000 78.498 12,7

10.000.000 664.579 15,0

100.000.000 5.761.455 17,4

1.000.000.000 50.847.534 19,7

10.000.000.000 455.052.511 22,0

Tabela 05 – Crescimento do número de primos, por Gauss. Fonte: Sautoy (2007, p. 57)

Esta tabela demonstra mais claramente a regularidade que ele descobriu. Se

observarmos a ultima coluna, na primeira linha, temos a chance de encontrar um em

cada quatro. Para maior que 10000, essa última coluna parece estar aumentando

em aproximadamente 2,3 em cada etapa. Portanto, para cada potencia de 10,

devemos acrescentar cerca de 2,3 à razão entre o números primos e a quantidade

de números no intervalo. A proporção de primos aumentava de 2,3, e não de 1,

enquanto a quantidade de números aumentada em potências, isso porque os

números primos seguem um logaritmo cuja base não é uma potencia de 10.

P á g i n a | 66

O que Gauss descobriu foi o fato de que os primos podem ser contados

usando-se logaritmos cuja base é um número chamado , que tem o valor

aproximado de O número , ocorre em toda parte no mundo

matemático, e é por isso que os logaritmos na base e são chamados “naturais”. “A

tabela que Gauss descobriu aos 15 anos de idade o levou à seguinte conjectura:

entre os números a , aproximadamente um em cada será primo (onde

denota o logaritmo de na base ). Assim, Gauss podia estimar que o

número de primos entre e era de aproximadamente

” (SAUTOY, 2007, p.

58). Mas é importante ressaltar que Gauss afirmava que essa não era a fórmula que

indicaria o número exato de primos até ¸ e sim, que era uma estimativa com um

bom grau de precisão. Enquanto os matemáticos estiveram a procura de fórmulas

para prever a localização precisa do próximo primo, Gauss tentou encontrar um

padrão entre eles, fazendo uma pergunta mais ampla: queria saber qual a

quantidade de primos entre um e um milhão em vez de localizar os primos entre

esses dois números.

Para ilustrar a força do padrão descoberto por Gauss, podemos observar um

gráfico da função , contando o número de primos de a , com . O

gráfico conta a quantidade cumulativa de primos até o número 100:

:

Figura 14: Gráfico da quantidade de números primos até 100. Fonte: Sautoy (2007, p. 29)

Agora observe a função ao analisarmos a mesma função em uma escala

maior, calculando ao longo de uma faixa muito mais ampla de números, por

exemplo, até 100.000:

P á g i n a | 67

Figura 15: Gráfico da quantidade de números primos até 100.000.

Fonte: Sautoy (2007, p. 60)

A revelação de que o gráfico parece subir tão suavemente, embora os primos

sejam tão imprevisíveis, é um dos grandes milagres da matemática, e representa um

ponto alto na história dos primos (SAUTOY, 2007 p. 60).

Mais tarde verificou-se que a curva desviava gradualmente do numero real de

primos à medida que se tornava elevado. A figura abaixo mostra a comparação:

Figura 16: Gráfico de comparação da quantidade real de números primos e os de Gauss. Fonte: Sautoy (2007, p. 63)

Por fim, encontramos “a formula que dá todos os números primos e somente

esses” (WATANABE, 1998, p. 19). A fórmula encontrada em Honsberger (1976), diz

o seguinte:

P á g i n a | 68

Sejam e números naturais com ; e . Então

é primo.

Agora atribuiremos valores para e para verificarmos os resultados. Com

e , então

Se e então e

Se e então

Se e então

P á g i n a | 69

Como vimos a escolha dos valores para e não é tão simples, pois não

basta apenas atribuir valores ao par ordenado para obtermos como resultado

números primos. Mas com a escolha de pares ordenados adequados ela nos

fornece todos os números primos, por exemplo:

Para acharmos os pares acima, devemos partir dos primos, por exemplo, para

encontramos o par ordenado que tem como resultado o número primo 13, devemos

aplicar na seguinte fórmula:

e

Assim para temos

Como podemos observar, a formula não apresenta grande praticidade e,

embora possamos encontrar todos os primos a partir de determinados pares

ordenados, para determinar esse pares, precisamos partir do primo associado a

eles.

P á g i n a | 70

3.3. ALGORITMO RSA

Para tentar expor a segurança do sistema RSA, que é chamado de sistema

de chave pública, dividimos o processo de criptografar uma mensagem pelo método

RSA nas seguintes etapas:

ETAPA 1: Escolher dois números primos grandes ( e ). Segundo Fincatti

(2010, p. 49), para aumentar a segurança da chave, basta escolher números primos

tão grandes como

ETAPA 2: Calcular o valor de

ETAPA 3: Encontrar o valor de que seja primo relativo com

, ou seja,

ETAPA 4: Separar a chave que criptografa a mensagem .

ETAPA 5: Realizar a pré-criptografia do texto e depois separar a sequência

de números em blocos.

ETAPA 6: Criptografar os blocos separadamente pela função

O primeiro passo para usar a criptografia RSA é converter a mensagem em

uma sequência de números. Para tornar mais simples, usaremos um exemplo que

não contenha números, mas somente as letras que formarão as palavras e pelos

espaços entre as palavras. Chamaremos isso de 1ª fase da codificação, pois ainda

não será o método de codificação propriamente dito.

Para substituir as letras e espaços por números, faremos correspondências

desses com números de dois algarismos. É importante que a correspondência seja

feita com números de dois algarismos para evitar ambigüidades como, por exemplo,

se fizermos correspondência da letra A com o número 1, da letra B com o número 2

e assim sucessivamente, o número 21 poderia ser tanto BA como a letra U.

P á g i n a | 71

A B C D E F G H I J K L M

10 11 12 13 14 15 16 17 18 19 20 21 22

N O P Q R S T U V W X Y Z

23 24 25 26 27 28 29 30 31 32 33 34 35

Tabela 06 – Atribuição de números para as letras do alfabeto.

Substituiremos o espaço entre as palavras por 99, dessa forma, a frase

“Belém do Pará” será convertida para o número

Agora usaremos como parâmetros dos primos distintos e tal que , e

por fim, quebramos este longo número em blocos com números menores que ,

evitando os blocos que comecem em zero. Por exemplo, se e então

e, neste caso, a conversão acima ficaria dividida da seguinte maneira

Note que os blocos não correspondem a nenhuma unidade linguística, isto

torna muito difícil a decodificação por análise de frequência. Encerramos assim a

nossa 1ª fase e passamos pra fase de codificação propriamente dita.

Para codificar a mensagem precisamos de e de um inteiro positivo tal que

.

O par é chamado de chave de decodificação, ou chave pública, do

sistema RSA que estamos usando. Vejamos como ficaria a codificação se e

, logo , nesse caso, o menor valor de nas condições

dadas é 7, o menor primo que não divide 120.

Agora codificaremos cada bloco separadamente e a mensagem passará a ser

a sequência dos blocos codificados. É importante que os blocos codificados não

sejam novamente reunidos de modo a formar um longo número, caso contrário será

impossível decodificar a mensagem.

P á g i n a | 72

Para decodificar um bloco b precisaremos da chave de codificação .

Lembre-se que b é um inteiro positivo menor que .

Denotaremos o bloco codificado por , a codificação será dada pela

fórmula:

Pela aritmética modular, obviamente que usaremos na forma reduzida.

Assim, o bloco 111 da mensagem anterior é codificado como o resto da divisão de

por . Fazendo as contas:

Como e temos que

Para os outros valores, temos:

P á g i n a | 73

Codificando toda a mensagem, obtemos a seguinte sequência de blocos:

Chamaremos cada um desses novos blocos da mensagem codificada de .

Vejamos agora como decodificar esses blocos. Para tal, precisaremos de e o

inverso de no módulo de , que chamaremos de . Logo o par

é a chave de decodificação. Seja um bloco da mensagem codificada, então

denotaremos por o resultado da decodificação, que será a seguinte fórmula.

Note que é fácil decodificar a cifra desde que e sejam

conhecidos, porém a chave pública é onde . Logo, para obtê-los é

necessário fatorar para decodificar a mensagem. Mas isto não é estritamente

verdadeiro, pois além do próprio , só precisamos conhecer o inverso de módulo

.

Em nosso exemplo estamos usando a chave de codificação. Temos que

e . Para calcular basta aplicar o algoritmo euclidiano estendido que

encontraremos . Assim, para decodificar o primeiro bloco da mensagem,

calculamos a forma reduzida de módulo 143.

P á g i n a | 74

O método RSA consiste em duas chaves, uma de codificação (pública) e

outra de decodificação (privada), então ele só será útil se, decodificando um bloco

codificado , obtemos de volta o bloco correspondente a mensagem original .

Basta observar que em um sistema RSA de parâmetros e , com

com a chave de codificação igual à e , e a de decodificação serão e . Apenas

precisamos verificar que seja um inteiro tal que então .

Ou provar apenas que , pois isto é suficiente porque tanto

quanto b estão no intervalo que vai de a , logo só podem ser congruentes

modulo se são iguais. É por isso que precisamos escolher menor que , e é,

também, por isso que temos que manter os blocos separados, mesmo depois da

codificação (COUTINHO, 2000, p. 184).

De acordo de como definimos e ,

Porém é inverso de módulo , logo

; para algum .

Disto resulta

Agora vamos a decodificação das mensagens cifradas:

P á g i n a | 75

Que nos dá de volta a mensagem original, e basta juntar e consultar a tabelas

para encontrar a mensagem.

3.4. SEGURANÇA

Como o RSA é um método de chave pública, a chave de codificação é

acessível a qualquer pessoa, logo, a segurança do RSA depende da dificuldade de

calcular o valor de quando e são conhecidos. Na prática, só podemos calcular

conhecendo , e a única forma de encontrar os valores e é,

segundo Coutinho (2000, p. 186), fatorando .

No caso de ser um número muito grande, o problema da fatoração se torna

muito complexo. Mostraremos um dos métodos para fatorar um número muito

grande.

3.4.1. Algoritmo de fatoração de Richard Schroeppel

O método permite fatorar em aproximadamente:

P á g i n a | 76

Silva (2006) nos dá a seguinte tabela que mostra o número de operações

necessárias para fatorar e o tempo requerido em cada operação supondo que se

leva um microsegundo para cada dígito decimal do numero .

Dígitos Número de Operações Tempo

50 horas

70 horas

100 anos

200 anos

300 anos

500 anos

Tabela 07 – Tempo de operação de operações necessárias para fatorar .

3.4.2. Assinatura Digital

O método RSA também é comumente usado para verificar a originalidade de

uma mensagem, ou seja, para saber se a mensagem é realmente de uma pessoa

que conheça a chave privada.

Para usar o sistema de assinaturas digitais com RSA, o usuário que possui

uma chave privada d, poderá assinar uma mensagem dada, cifrada em blocos, ,

através da seguinte expressão:

De fato, é difícil descobrir s sem o conhecimento de d. Portanto, uma

assinatura digital descrita acima é dificilmente forjada. O receptor recupera a

mensagem utilizando a chave pública e do emissor e, dessa forma:

Assim, o receptor poderá validar a assinatura do emissor calculando

(SILVA, 2006, p. 25).

Com isso é possível identificar a assinatura como sendo única.

P á g i n a | 77

3.5. CONSEQUÊNCIAS DA CIFRA RSA

3.5.1. Liberdade total ou controlada?

Um debate sobre o uso maciço da criptografia vem tomando grande destaque

nas últimas duas décadas. Um dos fatores que contribuíram para isso foi quando o

norte-americano Phil Zimmermann, um cientista da computação engajado

politicamente, resolveu criar o Prety Good Privacy (PGP; “Uma Ótima Privacidade”,

em português), na década de 90.

Zimmermam percebeu que, apesar de todo o sucesso da cifra RSA e demais

algoritmos modernos, como o DES, por exemplo, apenas uma parcela muito

pequena da sociedade desfrutava dessa segurança, por ser preciso o uso de

computadores rápidos e a dificuldade de utilização das cifras. Os usuários comuns

cifravam suas mensagens de modo bem menos seguro, isso quando ainda usavam

algum tipo de cifragem. Portanto, o principal objetivo da criação do PGP foi oferecer

a qualidade de segurança proposta pela cifra RSA e o IDEA (uma cifra de bloco

criada no início da década de 90), de forma que usuários comuns pudessem usufruí-

los (SINGH, 2001).

Phil resolveu o problema usando o algoritmo RSA para cifrar uma chave do

algoritmo IDEA, que precisava de muito menos recursos tecnológicos para ser

rodado com eficiência. Ele tinha resolvido assim o problema da velocidade. Em seu

programa, ainda, o usuário não precisaria se preocupar com nada em termos de

matemática: tudo era feito automaticamente ao simples clique e movimento do

mouse.

Dessa forma, em 1991, o cientista disponibilizou o programa na internet.

Inicialmente, nada revolucionário. No entanto, aos poucos várias pessoas e

entidades passaram a copiá-lo. Mais adiante, artigos em revistas de grande

circulação passaram estampar artigos sobre o PGP em suas páginas. O programa

virara um fenômeno. No entanto, para a infelicidade de Phil, dois grandes problemas

começaram a assolar sua vida. O primeiro se tratava de a RSA Security, a empresa

que gerenciava a cifra, não autorizou que o cientista usasse seu algoritmo em um

programa, mesmo ele não ter tido qualquer tipo de retorno financeiro, classificando

assim o PGP como um programa pirata. Segundo que, em 1993, o governo norte-

americano o acusou de contrabando de armas, já que programas de cifragem estão

P á g i n a | 78

inclusos na categoria de munições, e o mesmo deveria ter pedido uma autorização

para que o programa fosse exportado (SINGH, 2001).

A partir dá originou-se uma série de debates que tinham como tema central a

privacidade na troca de informações pela internet. De um lado, defensores da

liberdade de cifragem argumentavam que o governo não poderia limitar o uso da

criptografia para os cidadãos comuns. Do outro, agentes federais preocupados com

a utilização cada vez maior da criptografia por parte de criminosos, como terroristas,

contrabandistas, pedófilos e traficantes. A grande questão é que o PGP tinha

oferecido uma segurança muito grande para uma quantidade imensa de pessoas,

fazendo com que a NSA não pudesse ser capaz de investigar suas vidas através da

internet, caso fosse necessário. Por outro lado, grupos de defesa da liberdade de

privacidade e as grandes empresas de segurança na internet argumentavam que o

governo já havia cometido muitos abusos através escutas de telefone ilegais, por

exemplo. Antigos presidentes dos EUA haviam coletado ilegalmente informações de

seus adversários políticos para desacreditá-los ou ganhar vantagem na votação e

aprovação de alguma lei (SINGH, 2001).

Entre as propostas feitas pelo governo, está a criação da chamada chave de

depósito, que consiste em o governo permitir o uso indiscriminado da criptografia,

desde que ele tenha acesso às chaves das pessoas. Teoricamente, as pessoas

comuns teriam suas trocas de mensagem protegidas de pessoas de má-índole, mas

caso fosse necessário, o governo teria como investigar possíveis criminosos. A

utilização de uma chave não depositada que fosse usada para o estabelecimento de

comunicação seria considerada ilegal.

Obviamente a ideia não foi bem aceita pelos defensores da liberdade de

privacidade. Eles argumentam considerando como poderia ser trágico se o governo

possuísse as chaves de nossas casas. Assim, o debate continua até os dias de hoje,

não tendo por enquanto previsão de término.

Zimmermann teve seu caso arquivado, já que o caso ganhara grande

repercussão e estimulara ainda mais o download do software. Como o dano era

irreversível e possivelmente o cientista seria absolvido, o polícia americana resolveu

devolver a sua liberdade. A RSA security também entrou em acordo e cedeu

autorização para que o PGP fosse veiculado livremente, permitindo que Phil

vendesse o programa para uma empresa chamada Network Associates, tornando-se

um dos sócios majoritários.

P á g i n a | 79

Singh (2001, p. 340) termina dizendo que a decisão sobre essa questão não

precisa ser definitiva. A opinião das pessoas vai variar da situação em que se

encontram os seus países: caso a liberdade do uso da criptografia vença, e por um

acaso uma série de atrocidades venham a acontecer, rapidamente o governo terá a

oportunidade de restrição de mensagens criptografadas; depois disso, após alguns

anos de um suposto abuso do governo a partir do uso ilegal de suas escutas,

rapidamente o processo dará nova reviravolta. Ainda segundo o autor “o fator

decisivo vai ser de quem o público tem mais medo – dos criminosos ou do governo”

(SINGH, 2001, p. 340).

3.5.2. Física Quântica e a Criptologia

Como vimos, a criptografia RSA fornece atualmente uma segurança

considerada muito alta. Porém, tudo isso se baseia no atual estágio dos nossos

computadores, que levariam, literalmente, milênios para conseguir quebrara cifra.

Tudo depende da improvável descoberta de algum meio prático de fatorar números

gigantescos, ou o advento de uma nova tecnologia. É com essa segunda opção que

os atuais criptoanalistas estão trabalhando: a criação do computador quântico

(RIBEIRO, 2010).

Essa fascinante criação consiste em tudo o que há de mais moderno na

física. Não nos deteremos nos detalhes técnicos, porém para entendermos a grande

revolução que seria esse invento, vamos imaginar um computador moderno que

tenha como tarefa a realização de 64 processamentos. Nessa situação, caso o

computador precisasse de um segundo para realizar cada processo, levaria 64

segundos no total, isso porque ele processa um de cada vez. No computador

quântico, a pretensão é que ele possa fazer todos esses processamentos de uma só

vez, acabando a tarefa em apenas um segundo.

Couto (2008, p. 312) escreve:

Esse fenômeno significa em termos práticos que os computadores quânticos teriam um poder inimaginável de processamento num dispositivo ‘do tamanho de uma xícara de chá’, para usar palavras dos pesquisadores. Isso porque, enquanto os computadores normais trabalham com unidades básicas de informação (os conhecidos bits) em formas de 1 ou 0, no minúsculo universo quântico há os chamados bits quânticos ou quantum bits (do qual usa-se a sigla qubit) que podem ser tanto 0 quanto 1 ao mesmo tempo.

(COUTO, 2008, p. 312)

P á g i n a | 80

A vantagem criptoanalítica é que a cifra RSA ficaria completamente

comprometida, caso um computador tão rápido assim existisse. Porém, para a

infelicidade dos criptoanalistas, os criptógrafos estão utilizando a mesma física

quântica para a produção de um protocolo inviolável, chamado BB84.

Nele, a polarização de fótons pode ser usada como qubits. Ribeiro (2010, p.

30) especifica:

(...) o fóton é a menor quantidade de energia que se consegue extrair da luz. A polarização é a direção em que o fóton – mais especificamente o campo elétrico que o compõe – oscila à medida que ele se desloca. Essa direção pode ser, por exemplo, vertical ou horizontal. (...) Com isso, a informação pode ser codificada atribuindo o bit 1 à polarização vertical e o bit 0 à polarização horizontal, por exemplo.

(RIBEIRO, 2010, p. 30)

A grande vantagem desse sistema é que a física prova, por meio de um

teorema, que é impossível interceptar os fótons sem causar erros na comunicação.

Portanto, antes da mensagem principal ser enviada, uma mensagem-teste seria

transmitida a fim de avaliar se ela fora comprometida no caminho. Se a taxa de erros

estiver dentro do padrão, avalia-se que é seguro a troca de informações. Caso não

seja, o envio é cancelado e a mensagem não poderá ser interceptada. Dessa forma,

o protocolo BB84 é considerado inviolável.

Poderemos, num futuro próximo, acabar com qualquer chance de privacidade

na internet, assim como garantir privacidade absoluta. A grande dificuldade ainda

reside em aprimorar ainda mais os conhecimentos nessa área, como aumentar a

capacidade dessa tecnologia a funcionar com eficiência há grandes distâncias, entre

outros. Há muito a ser feito, mas o que já foi feito revela um futuro promissor. Singh

(2001, p. 378) diz que “a criptografia quântica marcaria o fim da batalha entre

criadores de códigos e os quebradores, com os criadores de códigos saindo

vitoriosos”. Essa afirmação pode ser um tanto exagerada, visto que antigos

criadores também achavam o mesmo de suas cifras. Porém, o autor se baseia nas

propriedade da física quântica que “proíbem” a interceptação de mensagens sem

que Alice e Bob saibam que estão sendo vigiados.

P á g i n a | 81

Segurança absoluta remonta ao direito de privacidade dos cidadãos a à

possível proteção de criminosos. Não é só de segurança e tecnologia que vive a

criptografia, mas, sobretudo, de ética também.

P á g i n a | 82

4. CONSIDERAÇÕES FINAIS

Ao término do trabalho, é possível perceber que alcançamos os seus

objetivos iniciais, sendo eles: apresentar os principais acontecimentos históricos

ligados à criptologia; explicar como o ocorreu o desenvolvimento desta ciência,

desde o surgimento até a metade do século XX; fazer entender a entrada da

matemática na criptografia e criptoanálise; e explicitar matematicamente a

importância do surgimento cifra RSA para as telecomunicações em termos de

praticidade e segurança.

Ao longo do trabalho podemos ver que a necessidade de esconder

informações faz parte do cotidiano do ser humano há milênios. Com o passar do

tempo, as motivações mudaram, mas o desejo de ocultar saberes e obter privilégios

por causa deles, só fez crescer. Porém, como resposta natural a esse ato, sempre

existiram aqueles que tentavam desfrutar das oportunidades que surgiriam, caso

descobrissem o que tanto as outras pessoas tentavam esconder.

A informação é peça fundamental da estratégia. Com ela, os Aliados

reverteram a situação na Segunda Guerra Mundial; Elizabeth I pôde manter seu

reinado na Inglaterra, com a decapitação da sua prima, a rainha Maria Stuart da

Escócia; a NSA evita inúmeros atentados terroristas nos Estados Unidos, todos os

anos; a Polônia pôde descobrir que a Enigma tinha falhas e assim ler as mensagens

alemãs; os árabes presumiram que era possível quebrar a cifra de César. Enfim,

através dos tempos a posse ou não de determinados fragmentos de informação, por

parte de algumas pessoas ou organizações, ajudou a fazer o mundo do jeito que

conhecemos hoje.

Através do trabalho pudemos verificar também que, em aspectos históricos, a

Criptologia é muito importante para entendermos vários acontecimentos. Ela nos

traz uma abordagem contextual, em que talentos individuais e capacidade

tecnológica sempre estão envolvidos, tanto na criação quanto na quebra de códigos

e cifras. Através dela compreendemos o porquê do surgimento de algumas

tecnologias, como o Colossus, por exemplo, além de algumas cifras como a de

Vigenère, o DES e a RSA.

É notável também que o desenvolvimento da criptografia e da criptoanálise,

bem como das tecnologias em geral, aconteceu principalmente em épocas de

grandes guerras e conflitos, onde as instituições precisavam a todo custo

P á g i n a | 83

estabelecer comunicação de forma segura e ao mesmo tempo descobrir as

estratégias inimigas. Nesse ponto, grandes mentes brilhantes ajudaram a promover

esses avanços, seja trabalhando por suas nações, ou mesmo fazendo por puro

passatempo.

A partir do século XX é possível notar que os matemáticos passaram a se

tornar os maiores responsáveis pela criação de novidades, tanto na área da

criptografia quanto da criptoanálise. A contribuição deles para a criação de máquinas

que tinham a capacidade se serem programáveis mudou a concepção de criação e

quebra de novas cifras.

Por fim, a segunda metade do século XX e o início do XXI, com a

consolidação da Globalização, comprovaram ainda mais que a informação detém

valor inestimável, muitas vezes mais que armas ou recursos financeiros. Estamos na

era da informação, onde a internet tem se mostrado muito eficaz na transmissão de

dados. Internet, a nova fronteira entre a ética, a segurança e a criptografia. Melhor

os físicos se prepararem, logo mais eles precisarão, em massa, se juntar aos

matemáticos, para assim ajudarem a escrever os próximos capítulos dessa

fascinante história.

P á g i n a | 84

REFERÊNCIAS BIBLIOGRÁFICAS

ARAUJO, Diego da Costa; SOUZA, Thiago Gomes. Criptografia: conceitos, origens,

cifras e códigos. 2010. 50 f. Trabalho de Conclusão de Curso (Graduação em

Licenciatura em Matemática) – Universidade do Estado do Pará. Belém, 2010.

CHIRIGATI, Fernando Seabra; KIKUCHI, Rafael Shinji Aoki; GOMES, Talita Lopes.

Esteganografia. Universidade Federal do Rio de Janeiro, 2006.

COUTINHO, Severino Collier. Primalidade em tempo polinomial: uma introdução

ao algoritmo AKS. 1. ed. Rio de Janeiro: Sociedade Brasileira de Matemática, 2004.

v. 01. 105 p.

COUTINHO, Severino Collier. Números inteiros e Criptografia RSA. Rio de Janeiro (RJ):

Instituto Nacional de Matemática Pura e Aplicada, 2000. (Série de Computação e

Matemática)

COUTO, Sérgio Pereira. Decifrando a Fortaleza Digital. São Paulo (SP): Universo

dos Livros, 2005.

COUTO, Sérgio Pereira. Códigos & Cifras: da antiguidade à era moderna. Rio de

Janeiro (RJ): Novaterra, 2008.

DIAS, Ricardo Alexandre da Rocha. Algumas evidências computacionais da

infinitude dos números primos de Fibonacci e generalizações destes. 2008. 157

f. Monografia (Ciências da Computação) – Universidade Federal do Rio Grande do

Norte. Natal, 2008.

GIL, Fernando de O.; MALANDRIN, Leandro José A. A.; MORIGAKI, Roberto H.;

BARRETO, Paulo S. L. M. SEA - Sistema Esteganográfico de Arquivos. Anais do

VIII Simpósio Brasileiro em Segurança da Informação e de Sistemas

Computacionais, Gramado, p. 401-410, set. 2008.

P á g i n a | 85

HONSBERGER, Ross. Mathematical Gems II. The Mathematical Association of

America, 1976.

KAHN, David. The Codebreakers: The Story of Secret Writing. New York:

The Macmillan Company, 1967.

KAHN, David. The Codebreakers: The Comprehensive History of Secret Communication from Ancient Times to the Internet. New York: Scribner, 1996.

FINCATTI, Camila Ávila. Criptografia como agente motivador na aprendizagem

da matemática em sala de aula. 2010. 82 f. Trabalho de Conclusão de Curso

(Graduação em Licenciatura em Matemática) – Universidade Presbiteriana

Mackenzie, 2010.

MRAYATI, Mohamad; ALAM, Yahya Meer; TAYYAN, Muhammad Hassan at. Ibn

‘Adlan’s Treatise. Arábia Saudita: KFCRIS & KACST, 2003a. (Arabic Origins of

Criptology, v. 2)

MRAYATI, Mohamad; ALAM, Yahya Meer; TAYYAN, Muhammad Hassan at. Ibn

Ad-Durayhim’s Treatise. Arábia Saudita: KFCRIS & KACST, 2003b. (Arabic Origins

of Criptology, v. 3)

POMMERENING, Klaus. Affinity Chromatography. [S.I.] Marcel Dekker, 1985.

RIBEIRO, Paulo Henrique Souto. Criptografia Quântica: os desafios de gerar

códigos invioláveis. Ciência Hoje, São Paulo, v.47, n.277, p.26-31, dez. 2010.

SAUTOY, Marcus Du. A música dos números primos: a história de um problema

não resolvido na matemática. Rio de Janeiro (RJ): Jorge Zahar Editora, 2007.

SILVA, Elen Viviane Pereira da. Introdução à Criptografia RSA. 2006. 32 f.

Apresentação de Trabalho/Simpósio. 3º Simpósio Nacional/Jornada de Iniciação

Científica; Inst. promotora/financiadora: Instituto Nacional de Matemática Pura e

Aplicada-IMPA. Rio de Janeiro (RJ): 2006.

P á g i n a | 86

SINGH, Simon. O Livro dos Códigos: A ciência do sigilo – do antigo Egito à

criptografia quântica. Record, 2001.

TKOTZ, Viktoria. (2005a) Classificação das cifras. Disponível em: <

http://www.numaboa.com.br/criptografia/gerais/314-classificacao>. Acesso em: 28

dez. 2011.

TKOTZ, Viktoria. (2005b) A Linha do Tempo da Criptografia na Antiguidade.

Disponível em: <http://www.numaboa.com.br/criptografia/historia/157-antiguidade>.

Acesso em: 28 dez. 2011.

TKOTZ, Viktoria. (2005c) al-Kindi. Disponível em: <

http://www.numaboa.com.br/criptografia/historia/159-alkindi>. Acesso em: 28 dez.

2011.

TKOTZ, Viktoria. (2005d) A Cifra dos Templários. Disponível em: <

http://www.numaboa.com.br/criptografia/substituicoes/monoalfabeticas/simples/327-

templarios>. Acesso em: 28 dez. 2011.

TKOTZ, Viktoria. (2005e) A Linha do Tempo da Criptografia Medieval. Disponível

em: <http://www.numaboa.com.br/criptografia/historia/316-medieval?start=1>.

Acesso em: 28 dez. 2011.

TKOTZ, Viktoria. (2005f) Leon Battista Alberti. Disponível em: <

http://www.numaboa.com.br/index.php?option=com_content&view=article&id=158&It

emid=100>. Acesso em: 28 dez. 2011.

TKOTZ, Viktoria. (2005g) Girolamo Cardano. Disponível em: <

http://www.numaboa.com.br/criptografia/historia/162-cardano>. Acesso em: 28 dez.

2011.

P á g i n a | 87

TKOTZ, Viktoria. (2005h) A máquina das Diferenças de Babbage. Disponível em:

<http://www.numaboa.com.br/informatica/museu/414-babbage>. Acesso em: 02 jan.

2012.

TKOTZ, Viktoria. (2005i) Algoritmo RSA. Disponível em: <

http://www.numaboa.com.br/criptografia/chaves/350-rsa>. Acesso em: 02 jan. 2012.

TKOTZ, Viktoria. (2007a) Comunicação usando chave pública. Disponível em:

<http://www.numaboa.com.br/criptografia/chaves/835-chave-publica>. Acesso em:

28 dez. 2011.

TKOTZ, Viktoria. (2007b) Ave Maria de Trithemius. Disponível em: <

http://www.numaboa.com.br/index.php?option=com_content&view=article&id=613&It

emid=57>. Acesso em: 28 dez. 2011.

VALDEVINO, André. Criptografia Caótica. Artigo do Trabalho de Conclusão de

Curso. Universidade Católica de Brasília, 2006. Disponível em

<http://webcache.googleusercontent.com/search?q=cache:LR75LYXj0REJ:www.ucb.

br/sites/100/103/TCC/22006/AndreValdevino.pdf+Ibn+DUNAINIR&hl=pt-BR&gl=br>.

Acesso em: 28 dez. 2011.

VISSIÈRE, Laurent. Altamente Confidencial. In Revista História Viva, Ed. Duetto,

nº 70, 2009.

WATANABE, Renate G.. Uma formula para os números primos. Revista do

Professor de Matemática. n. 37. p. 19-21, 1998.

P á g i n a | 88

APÊNDICE A

Iremos abordar nesta seção as operações matemáticas envolvidas no

processo de cifragem de uma mensagem em alguns dos diferentes métodos de

criptografia, neles encontramos o uso de matrizes e funções modulares, entre

outros.

1. CIFRA DE CÉSAR

A cifra de César faz uma correspondência biunívoca entre as letras da

mensagem e sua imagem, ou seja, a mensagem é cifrada através de uma função

bijetora.

A função citada é a onde é a chave de

codificação, e é valor ao qual cada letra corresponde na tabela abaixo, podendo

assumir valores

A B C D E F G H I J K L M

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

N O P Q R S T U V W X Y Z

13 14 15 16 17 18 19 20 21 22 23 24 25

Tabela 08 – Letras e números correspondentes

Usaremos esta tabela de correspondência para todas as próximas

criptografias que precisarmos daqui em diante.

Dessa forma, para criptografar a palavra “CRIPTOGRAFIA” usando a chave

, usaríamos a seguinte função

Criptografando a palavra acima teremos:

P á g i n a | 89

A palavra “CRIPTOGRAFIA” se transforma na palavra “NDTBFARDLQTL”.

Para decodificar, basta usar o inverso aditivo da chave utilizada para a

codificação, no caso, o inverso aditivo de é .

P á g i n a | 90

E obtemos a palavra inicial.

A desvantagem das cifras de substituição como a de César, é que elas

preservam a frequência das letras em cada língua, o que as torna relativamente fácil

de quebrar. Uma solução é criptografar o texto em grupos em vez de uma letra de

cada vez (ANTON, 2001).

2. CIFRA DE VIGENÈRE

Na cifra de Vigenère, fazemos a codificação de palavras através da

interseção das letras desta palavra com as letras da palavra que é a chave de

codificação, como vimos anteriormente. Para mostrar como esta codificação pode

ser feita algebricamente, temos que primeiramente fazer a correspondência destas

letras com os valores de acordo com a figura 07, de forma que a palavra

“CRIPTOGRAFIA” se transforme na sequência de números “2 – 17 – 8 – 15 – 19 –

14 – 6 – 17 – 0 – 5 – 8 – 0” e a chave que “BELEM” na sequência “1 – 4 – 11 – 4 -

12”.

P á g i n a | 91

A codificação vista algebricamente é feita ultilizando-se ,

onde é o valor da letra a ser cifrada e o valor da letra da chave e o número de

caracteres, assim, a decodificação ficaria:

C R I P T O G R A F I A

B E L E M B E L E M B E

Tabela 09 – Usando uma chave com a Cifra de Vigenère

E assim obtemos a mensagem codificada “DVTTGPKDERJE”

P á g i n a | 92

Para decodificar, basta fazer o processo inverso utilizando

onde é a letra da mensagem cifrada.

3. Cifra de Hill

Na Cifra de Hill separamos a mensagem que queremos criptografar em

blocos de duas letras e através de uma multiplicação de matrizs criptografamos a

mensagem. Faremos por etapas.

P á g i n a | 93

1ª etapa: escolhemos a matriz

2ª etapa: agrupamos as letras sucessivas do texto que queremos cifrar,

adicionando uam letra fictícia no ultimo par se o texto tiver um número impar de

letras, e substituímos cada letra pelos números correspondentes na tabela que

usamos na primeira cifra.

Decodificaremos as palavra “MATEMÁTICA”, para isso iremos dividi-la

MA – TE – MA – TI – CA

Fazendo a correspondência de acordo com a tabela:

12, 0 – 19, 3 – 12, 0 – 19, 8 – 2, 0

3ª etapa: convertemos cada par em um vetor coluna, multiplicamos pela

matriz dada na 1ª etapa e os resultados devem ser dados em . Codificando a

mensagem.

Codificação:

P á g i n a | 94

A palavra codificada é transformada na seguinte:

Para decodificar a mensagem precisamos apenas fazer o mesmo processo

com a mensagem codificada usando a matriz inversa da usada para decodificar, a

idéia é muito simples, para codificar, multiplicamos uma matriz (dos números que

correspondem aos blocos da mensagem) pela matriz codificadora , logo,

para decodificarmos, basta multiplicarmos pela matriz inversa , e para

facilitar os cálculos, uma vez que os resultados terão que pertencer à , usaremos

a matriz inversa em .

Calculando a inversa da matriz que usamos teríamos

Universidade do Estado do Pará Centro de Ciências Sociais e Educação Travessa Djalma Dutra, s/n – Telégrafo

66113-200 Belém-PA www.uepa.br