Академический Документы
Профессиональный Документы
Культура Документы
CENTRO DE CIENCIAS
EXATAS E DE TECNOLOGIA
LICENCIATURA EM MATEMATICA
Sao Carlos SP
Perodo: marco a novembro de 2010
CARLOS
UNIVERSIDADE FEDERAL DE SAO
CENTRO DE CIENCIAS
EXATAS E DE TECNOLOGIA
LICENCIATURA EM MATEMATICA
Trabalho de Conclus
ao de Curso A
e Trabalho de Conclus
ao de Curso B
Criptologia: uma abordagem hist
orica e matem
atica
Diego Felipe Silveira Seabra, R.A. 282421
Dissertacao
apresentada
ao
Departamento de Matematica
da UFSCar como parte dos
requisitos para a obtencao
do ttulo de Licenciado em
Matematica.
Sao Carlos SP
marco a novembro de 2010
Resumo
A historia dos codigos e seus decifradores em suas eternas batalhas acompanha a
propria historia humana. Ao longo do tempo, codigos, cifras e mensagens secretas
estiveram presentes nas mais diversas situacoes onde desempenharam papel essencial
decidindo resultados de guerras e o destino de pessoas e civilizacoes inteiras.
Nos mais diversos setores sociais e tipos de atividades humanas, a criptografia interferiu diretamente. Em assuntos polticos e diplomaticos, atividades
civis ou militares, onde se fez necessaria a transmissao de informacoes de maneira
segura e secreta ela esteve presente e a consciencia das conseq
uencias de uma mensagem interceptada por maos erradas fez com que as nacoes criassem departamentos
especficos para a criacao e implementacao de codigos cada vez mais seguros.
Nesse contexto a ciencia da Criptologia foi colocada num patamar de grande
importancia e muita atencao lhe foi dispensada no sentido em que fosse cada vez
mais desenvolvida e implementada.
Se de um lado temos os criadores de codigos, do outro estao os decifradores
em suas arduas e incessantes batalhas por organizar o aparente caos e encontrar o
uma
verdadeiro significado por tras de seq
uencias misteriosas de letras e smbolos. E
batalha intelectual constante e contnua cujos resultados interferem diretamente no
dia-a-dia das pessoas e em todo o contexto social.
Conforme o ttulo deste trabalho, atraves de uma abordagem historica e
matematica da Criptologia farei uma viagem pela historia dos codigos e sua influencia na sociedade humana bem como um estudo mais detalhado da matematica
5
envolvida na criacao e quebra de codigos e cifras. Serao utilizados resultados da
Teoria dos N
umeros e outros que eventualmente sejam necessarios.
Neste trabalho, a enfase e dada `a parte historica e ao conte
udo matematico
que sera necessario ao estudo mais detalhado de topicos da Criptologia, particularmente o sistema RSA, foco do trabalho de graduacao B.
Palavras-chave: criptologia, criptografia, aritm
etica m
odulo m, func
ao
de Euler.
Sum
ario
I
Trabalho de Conclus
ao de Curso A
1 Um pouco de hist
oria
10
13
1.1
1.2
Ramos da criptografia . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.2.1
Transposicao . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.2.2
Substituicao . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.2.3
1.3
Os criptoanalistas arabes . . . . . . . . . . . . . . . . . . . . . . . . . 24
1.4
34
2.1
Inteiros modulo m
. . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
2.2
Inteiros modulo m
. . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3 A func
ao de Euler
44
II
51
Trabalho de Conclus
ao de Curso B
4 A criptografia de chave p
ublica
54
6
7
4.1
5 Teoria dos n
umeros para RSA
58
5.0.1
5.0.2
5.1
5.2
Implementacao de RSA . . . . . . . . . . . . . . . . . . . . . . . . . . 63
5.3
Exemplo numerico . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
6 M
etodos de fatorac
ao
70
6.1
6.2
Metodo Pollard p 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
Lista de Figuras
1.1
1.2
1.3
Tabela de freq
uencias baseada em passagens extradas de jornais e romances cuja amostragem consistia em 100.362 caracteres do alfabeto.
Tabela compilada por H. Beker e F. Piper. . . . . . . . . . . . . . . . 26
1.4
Analise de freq
uencia da mensagem cifrada. . . . . . . . . . . . . . . 28
1.5
1.6
1.7
1.8
Lista de Tabelas
1.1
1.2
1.3
1.4
1.5
5.1
Lista dos n
umeros 1 x 51 coprimos com 51. . . . . . . . . . . . . 63
5.2
Parte I
Trabalho de Conclus
ao de Curso A
10
Introduc
ao
A criptografia esta presente no cotidiano das pessoas mesmo que muitas vezes elas
nao tenham consciencia/conhecimento disso. Uma simples mensagem trocada via
e-mail, uma compra realizada atraves do cartao de credito ou mesmo o envio e recebimento de mensagens de texto por celular, em todas essas situacoes esta presente a
criptografia. E se tudo isso hoje e possvel e e feito com velocidade impressionante
e porque ao longo da historia houve quem se dedicasse `a Criptologia e em meio `as
batalhas entre criadores e decifradores de codigos tivessemos grandes avancos em
diversas areas e ciencias diretamente ligadas `a tematica. Certamente devemos `a
historia dos codigos por tamanho desenvolvimento cientfico e tecnologico nos dias
atuais.
Varios assuntos entram em pauta quando o assunto e criptografia. Manutencao da lei e seguranca nacional, direitos civis e privacidade individual, atividades
civis e militares. Em todo esse conjunto a criptografia exerce papel central e gera algumas questoes que para serem respondidas exigem que sejam considerados diversos
aspectos. Vejamos. Ha tempos os servicos policiais fazem uso de escuta telefonica
para fins de investigacao e/ou coleta de informacoes que servirao como provas contra criminosos e recentemente com o desenvolvimento de codigos ultra-resistentes o
grampo ve sua funcionalidade ameacada.
No tocante `a privacidade individual ha uma corrente que defende o uso
generalizado da criptografia de tal forma que tenhamos esse direito assegurado e
mantido. Paralelamente temos aqueles que trabalham com negocios e necessitam da
criptografia e de codigos seguros para a manutencao de suas atividades comerciais.
11
12
Ao mesmo tempo encontramos as forcas da lei na defesa de um uso mais restrito da
criptografia.
Nesse contexto, onde interesses individuais e coletivos entram em choque
temos a criptografia sendo utilizada com as mais diversas finalidades, mas desempenhando sempre um papel importante e ocupando posicao central.
A historia da Criptologia e extremamente vasta e rica em episodios interessantes e que por muitas vezes mudaram o rumo de acontecimentos importantes
da historia humana. Sao comuns as situacoes onde o destino de reis, rainhas, civilizacoes e tramas de assassinato dependeram da manutencao ou quebra de mensagens
secretas. No entanto, algumas partes ficarao de fora deste trabalho em virtude da
necessidade de escolha daquilo que esteja mais fortemente ligado ao que estamos
estudando por conta de espaco e foco.
Captulo 1
Um pouco de hist
oria
1.1
A evoluc
ao da escrita secreta
Um dos primeiros relatos acerca de escrita secreta data de Herodoto, que escreveu
As hist
orias e narrou os conflitos entre Grecia e Persia, ocorridos no seculo V a.C.
A escrita secreta desempenhou um papel essencial ao evitar que a Grecia
fosse conquistada por Xerxes, o despota lder dos persas. Xerxes comecara a construir a cidade de Persepolis que seria a nova capital de seu reino. Vindos de todas
as regioes do imperio e de estados vizinhos, tributos comecaram a chegar com a
excecao de Atenas e Esparta que nada enviaram.
Impulsionado por tal atitude, Xerxes resolve se vingar e comeca a montar
secretamente a maior forca de combate vista ate entao. Contando com o elemento
surpresa, em 480 a.C ele estava pronto para lancar seu ataque. O que o lder Persa
desconhecia, no entanto, era que seus preparativos tinham sido testemunhados por
Demarato, um exilado grego que apesar de ter sido expulso de sua terra natal ainda
nutria algum sentimento de lealdade para com a Grecia.
Demarato entao decide enviar uma mensagem secreta de advertencia aos
espartanos sobre as intencoes de Xerxes. No entanto, havia um problema a ser
solucionado. Como enviar a tal mensagem aos gregos sem que fosse interceptada
13
CAPITULO 1. UM POUCO DE HISTORIA
14
pelos guardas?
Sobre tal episodio, escreveu Herodoto: O perigo de ser descoberto era
grande; havia apenas um modo pelo qual a mensagem poderia passar: isso foi feito
raspando a cera de um par de tabuletas de madeira, e escrevendo embaixo o que
Xerxes pretendia fazer, depois a mensagem foi coberta novamente com cera. Deste
modo, as tabuletas pareceriam estar em branco e n
ao causariam problemas com os
guardas ao longo da estrada. Quando a mensagem chegou ao seu destino, ninguem
foi capaz de perceber o segredo, ate que, pelo que entendi, a filha de Cle
omenes,
Gorgo, que era casada com Leonidas, adivinhou e contou as outros que se eles raspassem a cera encontrariam alguma coisa escrita na madeira. Isto foi feito, revelando a mensagem, ent
ao transmitida para os outros gregos.
Xerxes perdia dessa forma o elemento surpresa e os gregos puderam se
preparar para o latente ataque persa. Em 23 de Setembro de 480 a.C, a frota persa
aproximando-se da baa de Salamina encontrou uma marinha grega preparada e
postada estrategicamente para a batalha. Os gregos, que apesar de estarem em
menor n
umero, atraindo os navios persas para dentro da baa puderam lutar da
forma como queriam. Instaurou-se o panico entre as forcas persas, com navios
se chocando e completa desorganizacao estrategica. O ataque coordenado grego
humilhou a numericamente maior forca persa no decorrer de um dia.
Vimos nesse episodio que a comunicacao secreta foi alcancada por Demarato
atraves da ocultacao da mensagem. Quando isso ocorre, chamamos esteganografia,
nome cuja origem esta nas palavras gregas steganos, que significa coberto, e graphein,
que significa escrever.
A ttulo de exemplo, temos formas alternativas de ocultacao de mensagens
que foram usadas nos mais diversos momentos da historia. Os antigos chineses escreviam suas mensagens em seda fina que entao era amassada para formar uma
pequena bola e coberta com cera. Tal bolinha era engolida pelo mensageiro responsavel pela entrega da mensagem.
Substancias presentes em plantas tambem foram usadas como tinta invisvel.
CAPITULO 1. UM POUCO DE HISTORIA
15
Apesar do aparente desaparecimento da escrita, por conta da transparencia, o simples aquecimento do local queima a tinta deixando a escrita com um tom de cor
proximo ao marrom que possibilita a sua leitura.
Analisando o nvel de seguranca que a esteganografia confere vemos que ela
sofre de uma fraqueza fundamental. Como a mensagem e apenas escondida e facil
concluir que se o mensageiro for revistado e a mensagem descoberta, seu conte
udo
esta prontamente revelado.
A questao principal e que quando se faz uso de esteganografia o simples fato
de a mensagem ser interceptada e suficiente para que o conte
udo da mensagem possa
ser obtido por maos erradas. Claro que existe a necessidade de que a mensagem seja
descoberta de fato, mas uma simples revista feita ja com a intencao de encontrar
objetos suspeitos de carregar mensagens, por exemplo, ja e suficiente para que em
muitos casos conte
udos secretos sejam revelados.
Como a historia da Criptologia e uma luta evolutiva, ao lado da esteganografia tivemos o desenvolvimento da criptografia, derivada da palavra grega
Kriptos, que significa oculto. Diferentemente do que ocorre na esteganografia,
a criptografia tem por objetivo esconder o significado da mensagem e nao a mensagem em si. Tal processo de ocultar o significado de mensagens e conhecido como
encriptacao e segue um protocolo especfico que e previamente combinado entre
emissor e receptor.
Veremos mais adiante diversas formas de misturar a mensagem que foram
utilizadas ao longo dos tempos e alguns episodios marcantes onde tivemos sua utilizacao. Ressalto neste ponto a vantagem da criptografia sobre a esteganografia
no sentido em que uma mensagem criptografada mesmo que seja interceptada por
maos erradas nao tera prontamente seu conte
udo revelado e sera necessario todo um
processo para eventualmente tornar a mensagem compreensvel.
A fim de atingir um nvel maior de seguranca e possvel combinar esteganografia e criptografia. Temos um exemplo desta aplicacao nos anos em que
o mundo viveu os horrores da Segunda Guerra Mundial. Uma pratica comum entre
CAPITULO 1. UM POUCO DE HISTORIA
16
os agentes alemaes era a utilizacao do microponto, que consistia em reduzir fotograficamente uma pagina de texto ate torna-la um ponto cujo diametro nao ultrapassasse
um milmetro. Em seguida esse microponto era oculto sobre o ponto final de uma
carta que nao levantasse maiores suspeitas.
O primeiro microponto so foi descoberto pelo FBI em 1941 e da pra frente
os americanos puderam ler as informacoes contidas na maioria dos micropontos interceptados, com excecao dos casos onde os alemaes combinaram esteganografia e
criptografia, ou seja, alem de esconder a mensagem tomaram o cuidado de criptografa-la. Dessa forma, mesmo que os americanos interceptassem os micropontos
havia mais uma barreira a ser vencida ate que se pudesse chegar `a informacao de
fato.
1.2
Ramos da criptografia
1.2.1
Transposic
ao
Neste caso temos o rearranjo das letras da mensagem de tal forma que tenhamos na
realidade anagramas como resultado. Analisando o nvel de seguranca percebemos
que para mensagens muito curtas este metodo e muito inseguro ja que e limitado o
n
umero de possibilidades de rearranjo para poucas letras. Vejamos o caso de uma
palavra com tres letras. Ela pode ser rearranjada de apenas seis maneiras diferentes,
o que confere um nvel muito baixo de seguranca.
` medida que o n
A
umero de letras aumenta, no entanto, o n
umero de rearranjos possveis cresce assustadoramente, fazendo com que a tarefa de chegar `a
mensagem original torne-se impossvel quando nao se conhece o processo pelo qual
as letras foram misturadas.
Considerando os n
umeros astronomicos que envolvem esse tipo de trans-
CAPITULO 1. UM POUCO DE HISTORIA
17
posicao, fica claro que sua viabilidade depende de um conhecimento previo tanto do
emissor quanto do receptor do sistema utilizado para misturar as letras. Evidentemente tal sistema nao pode chegar ao conhecimento do inimigo.
Uma forma alternativa de utilizacao da transposicao encontramos no
primeiro aparelho criptografico militar, o citale espartano, que remonta ao seculo
cinco antes de Cristo.
Consiste em um bastao de madeira onde e enrolado um pergaminho ou
mesmo uma tira de couro. O emissor entao escreve a mensagem ao longo das linhas
que se formam no citale, conforme pode ser visto na figura 1.1, pagina 17, e ao ser
desenrolada a tira, esta parece conter uma serie de letras aleatorias e sem significado
aparente. Continuando o processo, a tira e entregue ao mensageiro responsavel por
fazer chegar ao destinatario desejado a mensagem secreta.
Neste ponto, fazemos a observacao de que e possvel fazer uso combinado da
criptografia com a esteganografia que vimos ha pouco, de tal forma que o mensageiro
pode esconder a tira de diversas formas, mesmo porque seu formato permite isso. O
destinatario desejado ao receber a mensagem criptografada simplesmente enrola a
tira em um citale de mesmo diametro daquele utilizado pelo emissor. Naturalmente
e essencial que os diametros sejam os mesmos.
CAPITULO 1. UM POUCO DE HISTORIA
18
Ao tratarmos de uma cifra devemos levar em consideracao duas partes importantes que sao o algoritmo e a chave. As relacoes entre ambas estao esquematizadas na figura 1.2, pagina 18.
De maneira geral, se a mensagem e interceptada pelo inimigo ele apesar
de poder suspeitar qual foi o algoritmo utilizado para cifrar a mensagem se nao
dispuser da chave correta nao tera acesso `a mensagem. A importancia da chave e
descrita pelo ling
uista holandes Auguste Kerckhoff Von Nieuwenhof, em seu livro La
o chamado Princpio de Kerckhoff: A seguranca de um
Cryptographie Militaire. E
criptossistema n
ao deve depender da manutencao de um criptoalgoritmo em segredo.
A seguranca depende apenas de se manter em segredo a chave.
1.2.2
Substitui
c
ao
CAPITULO 1. UM POUCO DE HISTORIA
Alfabeto original
Alfabeto cifrado
F G
19
f
H I
J K
N O
Texto original
veni
vidi
vici
Texto cifrado
YHQL
YLGL
YLFL
casas `a frente no alfabeto. Observemos na tabela1 1.1, pagina 19 como fica o alfabeto
cifrado atraves da cifra de substituicao de Cesar e um exemplo de aplicacao para
uma frase curta na tabela 1.2, pagina 19.
A seguir, um estudo a respeito da cifra de substituicao de Cesar atraves de
aritmetica modular.
1.2.3
Cifras de substituic
ao atrav
es de aritm
etica modular
Foi convencionado em Criptologia que o alfabeto original deve ser escrito em letras min
usculas
e o criptografado em mai
usculas. Da mesma forma, o texto original e grafado em letras min
usculas
e a mensagem cifrada em mai
usculas.
CAPITULO 1. UM POUCO DE HISTORIA
20
Letra
Numeral equivalente
10
11
12
13
14
Letra (continuacao)
15
16
17
18
19
20
21
22
23
24
25
que produzamos o texto cifrado. Tais cifras onde cada letra e substituda individualmente por outra sao chamadas cifras monograficas. Temos no total 26! caminhos
possveis para produzir uma transformacao monografica.
Para descrever a cifra de substituicao de Cesar atraves de aritmetica modular, seja P o numeral equivalente `a letra no texto original e C o numeral equivalente,
de acordo com a correspondencia, ao texto cifrado. Entao:
C P + 3 (mod 26), 0 C 25
A correspondencia entre o texto original e o texto cifrado e dada na Tabela
1.4 abaixo.
Texto original
Texto cifrado
F G
10
11
12
13
14
10
11
12
13
14
15
16
17
G H
Texto original(continuacao)
Texto cifrado(continuacao)
15
16
17
18
19
20
21
22
23
24
25
18
19
20
21
22
23
24
25
Para cifrar uma mensagem usando esta transformacao, nos primeiro a trocamos por sua equivalente numerica e agrupamos as letras em blocos de cinco. Tal
CAPITULO 1. UM POUCO DE HISTORIA
21
11 7 14 3 4
2 14 13 2 11
20 18 0 14 3
4 2 20 17 18
14
14 10 17 6 7
5 17 16 5 14
23 21 3 17 6
7 5 23 20 21
17
HFXUV
OKRGH
FRQFO
XVDRG
criptoan
alise e a ciencia da deducao do texto original a partir do texto cifrado, sem o conhec-
imento da chave. O assunto e tratado com maior riqueza de detalhes em 1.3, pagina 24.
CAPITULO 1. UM POUCO DE HISTORIA
GHSDU
WDPHQ
WRGHP
22
DWHPD
WLFD
22 3 15 7 16
22 17 6 7 15
3 22 7 15 3
22 11 5 3
19 0 12 4 13
19 14 3 4 12
0 19 4 12 0
19 8 2 0
TAMEN
TODEM
ATEMA
TICA
DEPARTAMENTO DE MATEMATICA
A Cifra de Cesar e uma da famlia de cifras similares conhecidas por transformacoes por substituicao.
C P + K (mod 26), 0 C 25
Onde K e a chave que representa o tamanho do salto entre as letras
no alfabeto. Existem 26 transformacoes diferentes deste tipo, incluindo o caso em
que temos K 0 (mod 26), onde as letras nao sao alteradas, ja que neste caso
C P (mod 26). Mais geralmente, nos iremos considerar transformacoes do tipo
C aP + b (mod 26), 0 C 25
(1.1)
CAPITULO 1. UM POUCO DE HISTORIA
23
onde a e b sao inteiros com (a, 26) = 1. Essas sao chamadas transformacoes afins.
Dessa forma, transformacoes por substituicao sao transformacoes afins com a = 1.
Nos precisamos que (a, 26) = 1, assim P percorre um sistema completo de resto
modulo 26, incluindo C. Existem (26) = 12 opcoes para a e 26 opcoes para b dando
um total de 12 26 = 312 transformacoes desse tipo (uma delas e C P (mod 26)
obtido quando a = 1 e b = 0). Se a relacao entre texto original e texto cifrado e
descrita por (1.1), pagina 22 entao a relacao inversa e dada por
P a
(C b) (mod 26), 0 P 25
quando a
e um inverso de a (mod 26).
Como um exemplo de tal cifra, vamos tomar a = 7 e b = 10, assim C
7P + 10 (mod 26). Portanto, P 15(C 10) 15C + 6 (mod 26), desde que 15 e o
inverso de 7 modulo 26. A correspondencia entre letras e dada na tabela 1.5 abaixo:
Texto original
A B
C D
E F G
10
11
12
13
14
Texto original(continuacao)
Texto cifrado
15
16
17
18
19
20
21
22
23
24
25
10
17
24
12
19
14
21
16
23
Texto cifrado(continuacao)
11
18
25
13
20
15
22
Tabela 1.5: A correspondencia entre as letras para cifra com C 7P + 10 (mod 26).
Para ilustrar como nos obtivemos esta correspondencia, observe que a letra
original L com seu numeral equivalente 11 corresponde `a letra J do texto cifrado,
desde que 7 11 + 10 = 87 9 (mod 26) e 9 e o numeral equivalente de J.
CAPITULO 1. UM POUCO DE HISTORIA
24
MGMFQ
EXMW
ZMBMK
JNHMG
MYZMN
LTHES
ECRET
REVEA
1.3
Os criptoanalistas
arabes
Por volta do ano 661, o Isla havia se espalhado de tal forma que metade do mundo
conhecido encontrava-se sob o domnio muculmano. A civilizacao islamica alcancou
um nvel muito alto de desenvolvimento, nas mais diversas esferas; social, cultural
e das ciencias em geral. Tal desenvolvimento deu-se atraves de uma sociedade rica
e pacfica centrada na organizacao e menos interessada em conquistas.
Nesse contexto, temos dentro da historia da criptografia uma mencao honrosa aos arabes por conta da descoberta da criptoanalise, a ciencia que permite
decifrar uma mensagem desconhecendo sua chave. Veremos que os criptoanalistas
CAPITULO 1. UM POUCO DE HISTORIA
25
arabes obtiveram sucesso ao encontrar um metodo para quebrar a cifra de substituicao monoalfabetica que por seculos permanecera invulneravel.
Para que a criptoanalise pudesse se desenvolver foi necessario um nvel consideravel de desenvolvimento em areas tais como matematica, ling
ustica e estatstica
e a civilizacao muculmana serviu perfeitamente para este fim.
Em grandes escolas de teologia que foram fundadas, teologos examinavam
minuciosamente as revelacoes de Maome contidas no Corao. Havia o interesse em
estabelecer a cronologia das revelacoes e a forma encontrada para atingir tal finalidade foi estabelecer a freq
uencia com que cada palavra aparecia nas revelacoes. A
ideia por tras desse procedimento era a de que algumas palavras haviam surgido
mais recentemente e assim uma maior freq
uencia de tais palavras em determinada
revelacao implicaria que esse texto pertenceria a uma parte posterior da cronologia.
Os estudiosos analisavam tambem o Hadith, ou seja, os pronunciamentos
diarios do profeta e buscavam demonstrar que cada declaracao era de fato de Maome.
Nesse sentido, era feita uma analise etimologica das palavras e uma comparacao com
os padroes lingusticos do profeta.
Como consequencia ate natural deste tipo de trabalho, descobriram particularidades muito interessantes das letras. A ttulo de exemplo, perceberam que as
letras a e l sao mais comuns no idioma arabe, boa parte devido ao artigo definido
al-, enquanto que outras letras aparecem com frequencias varias vezes menor. Essa
observacao, `a primeira vista ingenua e sem importancia, levaria ao primeiro grande
avanco dentro da criptoanalise.
Nao se sabe ao certo quem foi o primeiro a ter a percepcao de que a
freq
uencia das letras poderia ser utilizada com a finalidade de quebrar codigos, mas
a mais antiga descricao conhecida desta tecnica remonta a um cientista do seculo IX,
Abu Yusef Yaqub ibn Is-haq ibn as-Sabbah ibn omran ibn Ismail al-Kindi. Al-Kindi
foi autor de centenas de livros das mais diversas areas do conhecimento. Seu maior
tratado, no entanto, so foi redescoberto no ano de 1987, no Arquivo Otomano Sulaimaniyyah em Istambul e leva o ttulo Um manuscrito sobre a decifracao de men-
CAPITULO 1. UM POUCO DE HISTORIA
26
CAPITULO 1. UM POUCO DE HISTORIA
27
1.4
Criptoan
alise de um texto cifrado
CAPITULO 1. UM POUCO DE HISTORIA
28
CAPITULO 1. UM POUCO DE HISTORIA
29
razoavel supor que estas tres letras representam as tres letras mais comuns
E
do alfabeto ingles, mas existe a possibilidade de que nao estejam mantendo a ordem
correta. Sendo assim, podemos ter:
O = e, t ou a,
X= e, t ou a,
P= e, t ou a.
CAPITULO 1. UM POUCO DE HISTORIA
30
O = a e X = e?
Neste ponto, uma observacao pertinente e que muito nos ajudara e a
seguinte. Na analise do texto cifrado, podemos perceber que a combinacao OO
aparece por duas vezes, enquanto que XX nao aparece nenhuma vez. Sabemos
tambem que as letras ee aparecem juntas muito mais frequentemente do que aa em
textos em ingles, e portanto, e muito provavel que tenhamos O = e e X = a.
Ate aqui conseguimos identificar com confianca duas letras do texto cifrado.
Um fato observado que apoia a conclusao de que X = a e o fato de que a e uma das
duas u
nicas palavras do ingles formadas por uma u
nica letra. Neste ponto, notamos
tambem que so uma outra letra aparece sozinha no texto cifrado e esta e o Y. Isso
supoe que ela representa a outra palavra inglesa de uma letra so, ou seja, o i.
Vale destacar que esse procedimento de focar a atencao em palavras de uma
so letra e padrao dentro da criptoanalise, mas neste caso particular, funciona porque
nosso texto cifrado manteve os espacos entre as palavras, o que frequentemente nao
ocorre, ja que os criptografos removem todos os espacos justamente para dificultar
a vida dos interceptadores inimigos.
Continuando, lancaremos mao de um truque que funciona mesmo nos casos
em que o texto cifrado esta unido numa linha contnua de caracteres.
O que se segue e um procedimento que nos permite identificar a letra h depois de termos identificado a letra e. Fundamentamos-nos na seguinte constatacao.
No idioma ingles a letra h aparece com freq
uencia antecedendo a letra e (como em
the, then, they, etc.), mas muito raramente ocorre depois do e.
A tabela abaixo, que nos fornece dados referentes `a freq
uencia com que
o O, que pensamos representar o e, aparece antes e depois de todas as letras do
texto cifrado nos sugere que o B representa o h, ja que ele aparece antes do O em
nove ocasioes, mas nunca depois dele. Observe que nenhuma outra letra na tabela
apresenta esse comportamento assimetrico com o O.
CAPITULO 1. UM POUCO DE HISTORIA
31
CAPITULO 1. UM POUCO DE HISTORIA
32
thCMKand and Cne niDhtK i haNe Zeen JeACMntinD tC UCM the IaZReK CI
FaKt aDeK and the ReDendK CI anAient EinDK. SaU i SaEe KC ZCRd aK tC
AJaNe a IaNCMJ CI UCMJ SaGeKtU?
eFiRCDMe, taReK IJCS the thCMKand and Cne niDhtK
Quando chegamos neste estagio, onde algumas letras ja foram determinadas,
o processo de criptoanalise avanca muito rapidamente.
Atentemos `a palavra que inicia a segunda frase, que e Cn. Sabemos que
toda palavra tem uma vogal, de tal forma que C deve ser uma vogal. Ate agora
so nao identificamos duas vogais, u e o; mas o u nao se encaixa, portanto C deve
estar representando o o. Tambem temos a palavra Khe, o que implica que o K
deve representar t ou s. Agora, sabemos que L = t e, portanto, K = s.
Apos a identificacao dessas duas letras e sua insercao no texto cifrado, vimos
o surgimento da frase thoMsand and one niDhts. Um palpite bastante razoavel
e de que se trata do ttulo thousand and one nights(Mil e uma noites), e parece
provavel que a u
ltima linha esteja nos dizendo que se trata de uma passagem de
Tales from the Thousand and One Nights. Isto nos leva ao seguinte: M = u, I = f,
J = r, D = g, R = I e S = m.
Neste ponto, e conveniente ao inves de continuarmos palpitando a respeito
das outras letras, observarmos o que sabemos a respeito de ambos os alfabetos;
original e cifrado. Esses dois alfabetos formam a chave e ao identificarmos a identidade de algumas letras no texto cifrado nos obtivemos detalhes do alfabeto cifrado.
Vejamos, a seguir, o que temos ate o momento.
CAPITULO 1. UM POUCO DE HISTORIA
33
Examinando o alfabeto cifrado parcial, ja e possvel completar a criptoanalise, baseando-nos na observacao da sequencia VOIDBY que sugere a utilizacao de uma frase-chave por parte do criptografo como base para o seu codigo.
Um simples trabalho de suposicao e suficiente para sugerir que a frase-chave
pode ser A VOID BY GEORGES PEREC, que e reduzida a AVOIDBYGERSPC apos a remocao dos espacos e repeticoes. Depois as letras continuam em ordem
alfabetica, omitindo-se qualquer uma que tenha aparecido na frase-chave.
Observamos ainda, neste caso particular, o cuidado por parte do criptografo
de nao comecar a frase-chave no incio do alfabeto cifrado, e sim tres letras depois do
comeco. Isto e possvel porque a frase-chave comeca com a letra A e o criptografo
quis evitar codificar a como A. Finalmente, tendo em maos o alfabeto cifrado completo, decodificamos todo o texto cifrado e chegamos ao conte
udo da mensagem.
Now during this time Shahrazad had borne King Shahriyar three sons. On the
thousand and first night, when she had ended the tale of Maaruf, she rose and
kissed the ground before him, saying:Great King, for a thousand and one nights I
have been recounting to you the fables of past ages and the legends of ancient
Kings. May I make so bold as to crave a favour of your majesty?
Epilogue, Tales from the Thousand and One Nights.
Captulo 2
Elementos da teoria dos n
umeros
Neste e no proximo captulo estaremos estudando elementos de teoria dos n
umeros
que sao pre-requisitos ao desenvolvimento futuro deste trabalho de conclusao de
curso.
2.1
Inteiros m
odulo m
34
CAPITULO 2. ELEMENTOS DA TEORIA DOS NUMEROS
35
2.2
Inteiros m
odulo m
CAPITULO 2. ELEMENTOS DA TEORIA DOS NUMEROS
36
Defini
c
ao 2.1 Dizemos que dois inteiros a e b s
ao congruentes m
odulo m se e
somente se
m | (a b), ou m | (b a).
Observe que se m | (a b), naturalmente m | (b a), pois
a b = (1)(b a).
Portanto, para verificar se dois inteiros a, b sao congruentes modulo m e
suficiente verificar uma das condicoes da definicao. Quando m | (a b), dizemos que
a e congruente com b m
odulo m e no caso m | (ba) dizemos que b e congruente
com a m
odulo m. Pela observacao acima, a e congruente com b modulo m se e
somente se b for congruente com a modulo m.
Quando a e b forem congruentes modulo m, escreveremos
a b (mod m).
Para um dado inteiro b, existem infinitos inteiros a congruentes com b
modulo m. Por exemplo, se m = 6 e b = 2, entao a pode assumir um dos muitos
n
umeros como:
CAPITULO 2. ELEMENTOS DA TEORIA DOS NUMEROS
37
CAPITULO 2. ELEMENTOS DA TEORIA DOS NUMEROS
38
como forma geral de todos os inteiros a, para os quais o resto da divisao por 6 e 2.
Por exemplo, suponhamos que estamos procurando um n
umero inteiro x para que
um n
umero dado a seja congruente com x modulo m. Para fazer isso, na pratica
aplicamos a divis
ao de Euclides.
Teorema 2.3 (Divis
ao de Euclides) Sejam a, b N dois inteiros naturais.
Entao, existem u
nicos inteiros q e r tais que
a = bq + r, 0 r < b.
(2.1)
(2.2)
CAPITULO 2. ELEMENTOS DA TEORIA DOS NUMEROS
39
(2.3)
(2.4)
CAPITULO 2. ELEMENTOS DA TEORIA DOS NUMEROS
40
(2.5)
(2.6)
dizemos que d (mod m) e a inversa de b (mod m). Quando numa classe existe a
inversa, dizemos que ela e inversvel.
CAPITULO 2. ELEMENTOS DA TEORIA DOS NUMEROS
41
CAPITULO 2. ELEMENTOS DA TEORIA DOS NUMEROS
42
CAPITULO 2. ELEMENTOS DA TEORIA DOS NUMEROS
43
Captulo 3
A func
ao de Euler
A funcao de Euler tem a propriedade que seu valor em um inteiro n e o produto dos
valores da funcao nas potencias de primos que ocorrem na fatoracao de n. Funcoes
com essa propriedade sao chamadas func
oes multiplicativas.
O objetivo neste captulo e mostrar que a funcao de Euler e multiplicativa
e a partir da chegarmos a uma formula para seus valores baseada na fatoracao em
primos.
A funcao de Euler calcula a quantidade de n
umeros inteiros positivos
relativamente primos com n e que sao menores que n. Por ora, vejamos algumas
definicoes que nos serao u
teis no decorrer deste captulo e do estudo que faremos.
Defini
c
ao 3.1 Uma funcao aritmetica e uma funcao que e definida para todos os
inteiros positivos.
Defini
c
ao 3.2 Uma funcao aritmetica f e chamada multiplicativa se f (mn) =
f (m)f (n) sempre que m e n s
ao inteiros positivos relativamente primos. Ela e
chamada completamente multiplicativa se f (mn) = f (m)f (n) para todos os inteiros
positivos m e n.
Exemplo 3.1 A funcao f (n) = 1 para todo n e completamente multiplicativa, e
portanto tambem e multiplicativa, pois f (mn) = 1, f (m) = 1 e f (n) = 1, de tal
44
DE EULER
CAPITULO 3. A FUNC
AO
45
DE EULER
CAPITULO 3. A FUNC
AO
46
1. Seja m = 5, ent
ao E(5) = {1, 2, 3, 4} e assim temos que
(5) = 4.
2. (1) = 1, (2) = 1 e estes s
ao os dois u
nicos naturais com esta propriedade.
3. Se p e primo, ent
ao (p) = p 1.
Agora vamos encontrar os valores da funcao para potencias de primos.
Teorema 3.2 Seja p um primo e a um inteiro positivo. Entao (pa ) = pa pa1 .
Demonstracao: Os inteiros positivos menores que pa que nao sao relativamente primos com pa sao aqueles inteiros nao excedendo pa que sao divisveis por
p. Estes sao os inteiros da forma kp onde 1 k pa1 . Como ha exatamente pa1
desses inteiros, ha pa pa1 inteiros menores que pa que sao relativamente primos
com pa . Portanto, (pa ) = pa pa1 .
Exemplo 3.3 Usando o teorema 3.2, n
os encontramos que (53 ) = 53 52 = 100,
Defini
c
ao 3.6 Um conjunto de inteiros {r1 , ..., rs } e chamado um sistema reduzido
de resduos modulo m se
1. (ri , m) = 1, para todo i {1, 2, ..., s}.
2. ri 6 rj (mod m) se i, j {1, 2, ..., s} e i 6= j.
3. Para todo n Z satisfazendo (m, n) = 1, existe i {1, ..., s} tal que n
ri (mod m).
Com um pequeno abuso de notacao indicaremos um sistema completo de resduos
modulo m por Z/mZ (utilizamos esta notacao para indicar o conjunto de todas as
classes de equivalencia da congruencia modulo m) e um sistema reduzido de resduos
modulo m por (Z/mZ) .
DE EULER
CAPITULO 3. A FUNC
AO
Teorema 3.3 Sejam m, n N tais que mdc(m, n) = 1.
47
Entao (m n) =
(m)(n).
Demonstra
c
ao: Sejam x1 , ..., x(n) e y1 , ..., y(m) sistemas reduzidos de
resduos modulo n e m respectivamente. Nossa intencao e mostrar que o conjunto
B das combinacoes lineares
bij = xi m + yj n
i = 1, ..., (n) e j = 1, ..., (m)
forma um sistema reduzido modulo mn, o que completaria a demonstracao. Para
isto precisamos mostrar:
1. bij 6= bkl se i 6= k ou j 6= l;
2. se mdc(a, mn) = 1 entao existe bij B tal que a bij (mod mn).
Comecemos pelo item (1), assumindo que
mxi + nyj mxk + nyl (mod mn),
entao
m(xi xk ) n(yl yj ) (mod mn).
Como m divide mn, temos que
n(yl yj ) 0 (mod m),
logo m | n(yl yj ).
Como m e n sao primos entre si, m divide yl yj e portanto
yl yj (mod m).
Isto implica que j = l pois os yi0 s formam um sistema reduzido modulo m. Similarmente vemos que i = k.
DE EULER
CAPITULO 3. A FUNC
AO
48
Vamos entao asssumir que mdc(a, mn) = 1 e provar o item(2). Observe que
como mdc(m, n) = 1 existem inteiros r, s tais que rm + sn = 1.
Logo existem x, y tais que a = xm + yn.
Como mdc(a, mn) = 1 teremos mdc(a, m) = mdc(a, n) = 1, conclumos
que mdc(m, y) = mdc(n, x) = 1. Portanto x e y sao inversveis modulo m, e assim
existem ndices i, j tais que
y yj (mod m) e x xi (mod n).
Logo
ny nyj (mod mn) e mx mxi (mod mn),
e entao temos
a = mx + ny mxi + nyj = bij (mod mn)
como queramos demonstrar.
Teorema 3.4 (Euler) Sejam a Z, m N tais que mdc(a, m) = 1. Entao
a(m) 1 (mod m)
Demonstra
c
ao:
modulo m. Vamos primeiramente verificar que o conjunto ar1 , ..., ar(m) e tambem
um sistema reduzido de resduos modulo m (Ver Definicao 3.6).
Seja A = {x Z | 1 x m 1, mdc(x, m) = 1}. Notemos que A tem
(m) elementos.
Temos entao que A = {x (mod m) | x A} e o conjunto de inteiros modulo
m, que sao inversveis na multiplicacao modulo m.
Vamos enumerar
A = {x1 , x2 , ..., x(m) }
A = {x1 (mod m), ..., x(m) (mod m)}
Tome a Z com mdc(a, m) = 1;
DE EULER
CAPITULO 3. A FUNC
AO
Demonstraremos a seguir que
B = {ax1 (mod m), ax2 (mod m), ..., ax(m) (mod m)} = A
Consideremos a funcao f : A A
definida por f (x (mod m)) = ax (mod m).
f e injetora:
Suponhamos
ax (mod m) = ay (mod m)
Como mdc(a, m) = 1, a (mod m) tem um inverso b (mod m).
Sendo ax (mod m) = ay (mod m), teremos entao
bax (mod m) = bay (mod m)
logo
ba (mod m) x (mod m) = ba (mod m) y (mod m)
e assim, como ba (mod m) = 1 (mod m),
x (mod m) = y (mod m)
49
Refer
encias Bibliogr
aficas
[1] ROSEN, KENNETH H., Elementary Number theory and its Applications. Reading(MA): Addison-Wesley Publishing Co.2003.
[2] SINGH, SIMON., O livro dos codigos; traducao de Jorge Calife. 4a ed. Rio
de Janeiro: Record, 2004.
[3] SHOKRANIAN, SALAHODDIN., Criptografia para iniciantes / Salahoddin
Shokranian. Braslia: Editora Universidade de Braslia, 2005.
[4] SHOKRANIAN, SALAHODDIN., Teoria dos n
umeros / Salahoddin Shokranian; Marcus Soares, Hemar Godinho. Braslia: Editora Universidade de
Braslia, 1994.
CARLOS., Introducao `
[5] SAMPAIO, JOAO
a teoria dos n
umeros: um curso breve
/ Joao Carlos Vieira Sampaio, Paulo Antonio Silvani Caetano. Sao Carlos:
EdUFSCar, 2008.
50
Parte II
Trabalho de Conclus
ao de Curso B
51
Resumo
Este trabalho apresenta-se como continuidade do estudo da Criptologia iniciado em
Trabalho de Conclusao de Curso A. Estudaremos aqui a chamada criptografia de
chave p
ublica, tendo como foco a criptografia RSA.
Veremos alguns resultados da Teoria dos N
umeros que possibilitaram e impulsionaram o seu desenvolvimento, bem como algumas de suas caractersticas principais e implicacoes ao mundo dos negocios e ao nosso cotidiano de maneira geral.
Considerando a importancia da questao da fatoracao de n
umeros dentro do
sistema RSA, sao apresentados ainda dois metodos, a saber, Teste de fatoracao de
Fermat e Metodo Pollard p 1.
Palavras-chave: criptologia, criptografia de chave p
ublica, aritm
etica
m
odulo m, pequeno teorema de Fermat.
52
Introduc
ao
A historia da Criptologia caracteriza-se como uma luta evolutiva, no sentido em
que ha uma constante batalha entre os criadores e os decifradores de codigos. A
consequencia desse embate intelectual e a necessidade sempre presente do desenvolvimento de novas formas de criptografia, cada vez mais seguras e de viavel implementacao. Com o passar dos anos surgem novos problemas e desafios a serem
vencidos pelos criptografos, que encontram na matematica um campo muito fertil
para novas ideias e teorias.
As primeiras formas de criptografia, conforme visto no Trabalho de Conclusao de Curso A, sao aquelas conhecidas na area como criptografias de chave
privada, onde uma mesma chave e utilizada tanto para encifrar quanto decifrar as
mensagens. Naturalmente, essa chave precisa ser mantida em segredo entre as fontes
que trocarao as mensagens ja que sua interceptacao por maos erradas comprometeria
de imediato a seguranca da comunicacao dando acesso ao seu conte
udo.
Toda essa logstica necessaria para o processo da troca de mensagens e o
nvel de seguranca que essa forma de criptografia oferece mostraram-se incompatveis
com as exigencias cada vez maiores advindas do desenvolvimento tecnologico com
o passar dos anos. Com o advento da internet e todas as suas possibilidades no
tocante `a troca de informacoes e formas de atividades comerciais, fez-se essencial o
desenvolvimento de uma criptografia segura e que pudesse otimizar os procedimentos
que garantiriam a seguranca das comunicacoes realizadas.
Nesse contexto surge a criptografia de chave p
ublica, que estudaremos neste
trabalho.
53
Captulo 4
A criptografia de chave p
ublica
Um dos problemas essenciais enfrentados por qualquer um que quisesse enviar mensagens secretas atraves de algum sistema criptografico e a questao da chave. Conforme visto no Trabalho de Conclusao de Curso A, havia sempre a necessidade do
conhecimento por ambas as fontes envolvidas no processo, ou seja, fonte A (emissor)
e fonte B (receptor), da chave utilizada para encifrar as mensagens.
A ttulo de exemplo e fazendo alusao a metodos ja vistos anteriormente,
temos o caso do citale espartano, onde era necessario o conhecimento do diametro
do citale por ambas as partes ou ainda o n
umero k na cifra de Cesar, que conforme
visto, determinava o tamanho do salto entre as letras no processo de encifracao.
Esse empecilho esteve presente durante toda a historia da criptografia desafiando os criadores de codigos e dificultando muito o processo de envio e recebimento de mensagens secretas. O problema persistiu ate chegarmos `a epoca dos
negocios via internet e neste ponto imaginemos a situacao.
A logstica necessaria para que as transacoes comerciais pudessem ser realizadas era uma barreira enorme a ser vencida, ja que numa situacao hipotetica em
que quisessemos realizar uma compra com cartao de credito, via internet, haveria
a necessidade de recebermos da empresa responsavel pela pagina virtual, cartas
confidenciais contendo as informacoes e dados sobre como codificar os dados.
54
CAPITULO 4. A CRIPTOGRAFIA DE CHAVE PUBLICA
55
CAPITULO 4. A CRIPTOGRAFIA DE CHAVE PUBLICA
56
4.1
A criptografia de chave p
ublica foi proposta inicialmente no ano de 1976, em um
artigo intitulado Novos caminhos na criptografia, escrito por dois matematicos da
Universidade de Stanford, na California. Whit Diffie e Martin Hellman publicaram o
artigo e defendiam a ideia de que a criptografia nao fosse um assunto discutido apenas atras de portas fechadas do governo, mas que suas ideias se tornassem p
ublicas.
O artigo prenunciou uma nova era da comunicacao eletronica segura e secreta.
A ideia por tras da criptografia de chave p
ublica parecia revolucionaria
e excelente, mas ainda havia uma questao essencial a ser respondida: haveria a
possibilidade de coloca-la em pratica atraves da criacao de um novo codigo que
funcionasse obedecendo seus princpios?
O desafio estava lancado e muitos anos depois, apos varias tentativas
frustradas, alguns criptografos ja comecavam a duvidar de que fosse possvel construir tal codigo. Foi quando surgiu a figura de Ron Rivest, do Instituto de Tecnologia
de Massachussetts (MIT), que nutria grande interesse por questoes complexas envolvendo matematica e ciencia da computacao. Ao ser apresentado ao artigo da
dupla de Stanford ficou fascinado imediatamente por seu conte
udo que envolvia
computacao, logica e matematica. Percebeu que era um problema com claras implicacoes praticas no mundo real, mas que tinha tambem ligacoes diretas com as
preocupacoes teoricas que tanto ocupavam seu pensamento.
Rivest notou que para que nao fosse facil quebrar um determinado codigo,
ele teria de ser baseado em algum problema matematico cuja solucao fosse difcil
de calcular e dedicou-se entao a criar um sistema de criptografia de chave p
ublica
explorando todo tipo de problema que os computadores sabidamente levariam um
longo tempo para resolver.
CAPITULO 4. A CRIPTOGRAFIA DE CHAVE PUBLICA
57
Captulo 5
Teoria dos n
umeros para RSA
Teorema 5.1 (Pequeno Teorema de Fermat) Seja p um n
umero primo. Se a
e um n
umero inteiro tal que mdc(p, a) = 1, ent
ao
ap1 1 (mod p)
Esse teorema e uma consequencia direta do seguinte teorema de Euler (a demonstracao encontra-se na monografia de Trabalho de Conclusao de Curso A).
Teorema 5.2 (Teorema de Euler) Sejam a,m inteiros com m > 0 tal que
mdc(a, m) = 1. Entao
a(m) 1 (mod m)
Para verificarmos que, de fato, o pequeno teorema de Fermat (Teorema 5.1)
e uma consequencia do teorema de Euler (Teorema 5.2) basta supor que m = p.
Nesse caso as condicoes do Teorema 5.1 estao satisfeitas. Por outro lado, temos
(p) = p 1. Portanto, o teorema de Euler nos fornece
ap1 1 (mod p)
que e exatamente a afirmacao do teorema de Fermat.
58
CAPITULO 5. TEORIA DOS NUMEROS
PARA RSA
59
CAPITULO 5. TEORIA DOS NUMEROS
PARA RSA
60
Usaremos agora o lema 5.1 para demonstrar uma propriedade muito importante dos n
umeros primos. Vejamos.
Propriedade Fundamental dos N
umeros Primos: Seja p um n
umero
primo e a e b inteiros positivos. Se p | ab, entao p | a ou p | b.
Demonstracao. Se p | a, a prova esta concluda. Supomos entao que p - a.
Como p e primo, entao mdc(a, p) = 1 e pelo lema 5.1, item (1), segue que p | b.
5.0.1
35
21
Consideramos entao o divisor 35 e o resto 21 dessa primeira divisao e efetuamos a divisao euclidiana de 35 por 21.
35
21
14
CAPITULO 5. TEORIA DOS NUMEROS
PARA RSA
61
14
5.0.2
Veremos agora como o algoritmo euclidiano, do calculo do mdc de dois inteiros, pode
ser usado para obtermos o mdc como uma combinacao linear desses inteiros.
Vimos acima que mdc(91, 35) = 7. Para expressar 7 como combinacao linear
de 91 e 35, consideramos as divisoes euclidianas usadas no calculo de mdc(91, 35),
91
35
35
21
21
14
14
21
14
Lembremo-nos de que o u
ltimo resto nao nulo, das divisoes sucessivas realizadas, e
o mdc procurado.
As tres primeiras divisoes estabelecem
91 = 35 2 + 21
35 = 21 1 + 14
21 = 14 1 + 7
CAPITULO 5. TEORIA DOS NUMEROS
PARA RSA
62
5.1
Uma aplicac
ao interessante
Os dois teoremas, Teorema 5.1 e Teorema 5.2, tem uma aplicacao interessante, ja
E
PRIMO.
que podem ser usados para verificar se um dado inteiro positivo NAO
Por exemplo, consideremos o n
umero n = 51. Veremos a seguir que esse n
umero
nao e primo. Inicialmente, facamos uma lista (Tabela 5.1) dos n
umeros 1 x 51
coprimos com 51, isto e mdc(x, 51) = 1. Isso nos mostra que (51) = 32.
CAPITULO 5. TEORIA DOS NUMEROS
PARA RSA
63
10
11
13
14
16
19
20
22
23
25
26
28
29
31
32
35
37
38
40
41
43
44
46
47
49
50
5.2
Implementa
c
ao de RSA
CAPITULO 5. TEORIA DOS NUMEROS
PARA RSA
64
CAPITULO 5. TEORIA DOS NUMEROS
PARA RSA
65
forma que mdc(e, (n)) = 1. Para encifrar a mensagem, nos primeiro traduzimos as
letras em seus equivalentes numericos e entao formamos blocos do maior tamanho
possvel. Para encifrar um bloco T da mensagem, nos formamos um bloco C de
texto cifrado por
E(T ) = C T e (mod n), 0 < C < n
O procedimento de decifracao requer o conhecimento de um inverso d de e
modulo (n), que existe ja que mdc(e, (n)) = 1. Para decifrar o bloco C de texto
cifrado, nos encontramos
D(C) C d = (T e )d = T ed = T k(n)+1 (T (n) )k T T (mod n)
onde ed = k(n) + 1 para algum inteiro k, ja que ed 1 (mod (n)), e pelo teorema
de Euler, nos temos T (n) 1 (mod n), quando mdc(T, n) = 1. O par (d, n) e a
chave de decifracao. Desse modo, produzimos aqui, ainda que informalmente, uma
demonstracao do Teorema 5.3, enunciado na pagina 59.
A seguir mostraremos como usar o teorema 5.3 e implementar o sistema
de criptografia RSA. Observe que nesse sistema a questao tambem e como escrever
cifras e decifra-las. Nas discussoes a seguir T denota o texto da mensagem, esta
escrito em n
umeros (usando por exemplo alfabeto digital) e C as cifras, usadas para
encriptar a mensagem.
Defini
c
ao 5.1 Chamaremos o n
umero n = pq de m
odulo, o n
umero e de
pot
encia de encifra
c
ao, d de pot
encia de decifra
c
ao e a tripla (n, e, d) de
a chave do sistema RSA.
Defini
c
ao 5.2 O par (n, e) e a chave p
ublica do sistema RSA e o par (n, d)
e a chave privada do sistema RSA.
A comunicacao entre as fontes A e B esta baseada no uso das chaves p
ublica
e privada. A chave p
ublica (n, e) da fonte A deve ser conhecida por B e a chave
p
ublica (n0 , e0 ) da fonte B deve ser conhecida por A. Neste caso, B e A podem trocar
CAPITULO 5. TEORIA DOS NUMEROS
PARA RSA
66
mensagens secretas no sistema RSA. Para que B consiga enviar mensagens para A
as etapas sao:
1. B deve saber da chave p
ublica (n, e) de A.
2. B traduz a mensagem x no alfabeto digital T (esse alfabeto deve ser conhecido
pelas mesmas fontes).
3. B escreve T em blocos numericos T1 , T2 , , Tr . Os n
umeros T1 , T2 , , Tr
nao devem ultrapassar o n
umero n = pq e devem ser primos com p e com q.
4. B encripta os blocos T1 , T2 , , Tr usando a condicao (4) do teorema 5.3 e
assim estabelece as cifras C1 , C2 , , Cr . Logo
C1 T1e (mod n), C2 T2e (mod n), , Cr Tre (mod n).
Relembre que os Ci devem ser escolhidos de tal forma que Ci < n para todo
i = 1, , r.
5. B transmite as cifras C1 , C2 , , Cr para A.
6. Ao receber a cifra, a fonte A decifra as cifras C1 , C2 , , Cr usando o resultado
do teorema 5.3, que diz que
Ti Cid (mod n), i = 1, 2, , r
usando a chave privada (n, d), onde na verdade somente d e privada para A e
somente A sabe esse n
umero.
7. Uma vez que T1 , T2 , , Tr sao conhecidos por A, ele/ela pode usar o alfabeto
digital e transformar esses blocos numericos na mensagem original x. E o
processo esta completo.
5.3
Exemplo num
erico
CAPITULO 5. TEORIA DOS NUMEROS
PARA RSA
67
13
446
Consideramos entao o divisor 13 e o resto 2 dessa primeira divisao e efetuamos a divisao euclidiana de 13 por 2.
13
...
01
02
03
04
05
06
...
CAPITULO 5. TEORIA DOS NUMEROS
PARA RSA
68
(5.1)
13 = 2 6 + 1
(5.2)
2=12+0
(5.3)
(5.4)
(5.5)
CAPITULO 5. TEORIA DOS NUMEROS
PARA RSA
69
Captulo 6
M
etodos de fatora
c
ao
O sucesso da criptografia RSA reside no fato de que, pelo menos no panorama da
Matematica computacional atual, nao ha algoritmos computacionais eficazes para
fatorar n
umeros inteiros que sejam produtos de fatores primos enormes. No entanto,
ao longo da historia, matematicos destacados dedicaram-se a desenvolver algoritmos
de fatoracao de inteiros. Neste captulo delineamos os elementos matematicos de dois
algoritmos famosos, sendo um deles de autoria de Fermat, e outro de autoria de John
Pollard, inventado em 1974.
A partir do teorema fundamental da aritmetica, nos sabemos que todo inteiro positivo pode ser escrito unicamente como produto de n
umeros primos. Neste
captulo, discutimos o problema da determinacao desta fatoracao. A maneira mais
direta para encontrar a fatoracao do inteiro positivo n e a seguinte.
Lembremos do teorema que nos diz que n e primo, ou entao tem um fator
70
CAPITULO 6. METODOS
DE FATORAC
AO
71
211, sabemos que 211 e primo. Nos conclumos que a fatoracao prima
6.1
Teste de fatorac
ao de Fermat
Descrevemos aqui uma tecnica de fatoracao interessante, muito embora nao seja
sempre eficiente. Esta tecnica e conhecida como fatoracao de Fermat, por ter sido
descoberta pelo matematico frances Pierre de Fermat no seculo 17. O metodo e
baseado no seguinte lema.
Lema 6.1 Se n e um inteiro positivo mpar , ent
ao ha uma correspondencia umpara-um entre fatoracoes de n em dois n
umeros inteiros positivos e a diferenca de
dois quadrados que e igual a n.
Demonstracao. Seja n um inteiro positivo mpar e n = ab uma fatoracao de n em
dois n
umeros inteiros positivos. Entao n pode ser escrito como a diferenca de dois
quadrados, pois
n = ab = s2 t2
onde s = (a + b)/2 e t = (a b)/2 sao ambos inteiros ja que a e b sao ambos mpares.
CAPITULO 6. METODOS
DE FATORAC
AO
72
n=
2
2
Exemplo 6.2 Iremos fatorar o n
umero 6077 utilizando o metodo de fatoracao de
Para fatorar n usando esta tecnica, pode ser necessario verificar (n + 1)/2 n
inteiros para determinar se eles sao quadrados perfeitos. A fatoracao de Fermat
funciona melhor quando e utilizada para fatorar inteiros que tem dois fatores de
tamanho similar. Apesar de o metodo de fatoracao de Fermat ser raramente usado
para fatorar inteiros grandes, ele e a base para muitos dos algoritmos de fatoracao
mais poderosos usados extensivamente em calculos de computador.
CAPITULO 6. METODOS
DE FATORAC
AO
6.2
73
M
etodo Pollard p 1
CAPITULO 6. METODOS
DE FATORAC
AO
74
Refer
encias Bibliogr
aficas
[1] DU SAUTOY, MARCUS, 1965- A m
usica dos n
umeros primos: a hist
oria de
um problema n
ao resolvido na matematica/Marcus du Sautoy; traducao, Diego
Alfaro. Rio de Janeiro: Jorge Zahar Ed., 2007.
[2] ROSEN, KENNETH H., Elementary Number theory and its Applications. Reading(MA): Addison-Wesley Publishing Co.2003.
[3] SINGH, SIMON., O livro dos codigos; traducao de Jorge Calife. 4a ed. Rio
de Janeiro: Record, 2004.
[4] SHOKRANIAN, SALAHODDIN., Criptografia para iniciantes / Salahoddin
Shokranian. Braslia: Editora Universidade de Braslia, 2005.
[5] SHOKRANIAN, SALAHODDIN., Teoria dos n
umeros / Salahoddin Shokranian; Marcus Soares, Hemar Godinho. Braslia: Editora Universidade de
Braslia, 1994.
CARLOS., Introducao `
[6] SAMPAIO, JOAO
a teoria dos n
umeros: um curso breve
/ Joao Carlos Vieira Sampaio, Paulo Antonio Silvani Caetano. Sao Carlos:
EdUFSCar, 2008.
75