matemática criptológico

Сomentários

Transcrição

matemática criptológico
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:
1
1
2
1
3
1
4
1
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.
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émse 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 alFusul 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 aritmeticamente (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ãoduplo 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
etc., cuja fórmula é
. Se usarmos
,B
,C
,
, 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
esquema, Alice e Bob escolhem inicialmente os valores de
. Nesse
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:
Alice e Bob escolhem primeiramente os
valores de Y e P, que poderiam ser, por
exemplo, 5 e 13, respectivamente.
Alice escolhe um número que
vamos chamar de A, digamos 7, e
o mantém em segredo.
Alice introduz o 7 na função de mão
única e o resultado de
:
Bob escolhe um número que
vamos chamar de B, digamos 4, e
o mantém em segredo.
Bob introduz o 4 na função de mão
única e o resultado de
:
Alice chama o resultado dos
Bob chama o resultado dos
cálculos de e envia o seu
resultado para Bob.
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!
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:
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-HellmanMerkle 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
multiplicação dos dois primos. O valor de
e o número
que é o resultado a
é 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
conhecendo
uma vez que
é resultado de
e
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
e
, onde
suas multiplicidades. Portanto os únicos primos que geram
única forma de obtê-los através de
são fatores primos
são
e
e a
é 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
, para obter
a partir dos primos
basta multiplicar, com qualquer calculadora, os valores de
e encontrar o valor de
descobrir os valores de
, que é
e
e
e
. Entretanto se em vez disso tentássemos
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
de
e
. Para deduzir os valores
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
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
da sequência, e um fator de
valor, é fácil encontrar o segundo
sem
que é o de numero
. Depois de encontrar o primeiro
. 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
condição “
são números inteiros que satisfazem a
é 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
exceto para
é impar,
, ou seja, só é possível ser primo se
é par e, portanto não é primo,
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
e
seriam primos quando
; e compostos para os outros valores primos menores que
Os valores de
teriam que ser primos, pois, caso contrário,
composto. É fácil provar este fato se
Portanto se
divide
.
será
é composto, então
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
e
e inclui os compostos
e
, a lista omite
.
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
composto, então tem um fator
for
. Logo
como
então
Quando
,
. Logo só temos que tentar
Mersene conhecido é
. O maior primo de
.
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
e , que apresentamos na tabela a seguir:
Tabela 03 – Seis primeiros números de Fermat.
entre
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
primo par). Digamos que
a
(ímpares porque
.
é o único
, 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
quantos números primos existem entre
, poderíamos fazer uma estimativa que
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
aproximado de
O número
, que tem o valor
, 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
denota o logaritmo de
número de primos entre
e
na base
será primo (onde
). Assim, Gauss podia estimar que o
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
, então
Se
e
então
Se
e
então
Se
e
então
e
e
para verificarmos os resultados. Com
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
, logo
, nesse caso, o menor valor de
e
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
Para os outros valores, temos:
temos que
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
inverso de
no módulo de
, que chamaremos de
é a chave de decodificação. Seja
denotaremos por
e o
. Logo o par
um bloco da mensagem codificada, então
o resultado da decodificação, que será a seguinte fórmula.
Note que é fácil decodificar a cifra desde que
conhecidos, porém a chave pública é
necessário fatorar
.
onde
e
sejam
. Logo, para obtê-los é
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
encontraremos
. Para calcular
basta aplicar o algoritmo euclidiano estendido que
. 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
com a chave de codificação igual à
precisamos verificar que seja
e , e a de decodificação serão
um inteiro tal que
Ou provar apenas que
e . Apenas
então
.
, pois isto é suficiente porque tanto
quanto b estão no intervalo que vai de
modulo
e , com
a
, logo só podem ser congruentes
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
Porém
é inverso de
e ,
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
conhecendo
são conhecidos. Na prática, só podemos calcular
, 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 norteamericano 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
Computacionais, Gramado, p. 401-410, set. 2008.
Informação
e
de
Sistemas
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/327templarios>. 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
codificação, e
assumir
onde
é a chave de
é valor ao qual cada letra corresponde na tabela abaixo, podendo
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
mensagem.
Codificação:
. Codificando a
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
para decodificarmos, basta multiplicarmos pela matriz inversa
facilitar os cálculos, uma vez que os resultados terão que pertencer à
a matriz inversa em
.
Calculando a inversa da matriz que usamos teríamos
, logo,
, e para
, usaremos
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

Documentos relacionados