Escolar Documentos
Profissional Documentos
Cultura Documentos
Dedicatória
Agradecimentos
Resumo.....................................................................................................................................v
Abstract....................................................................................................................................vi
Introdução.................................................................................................................................7
História.....................................................................................................................................9
1 TEORIA DOS NÚMEROS.................................................................................................11
1. 1. Critérios de Divisibilidade..........................................................................................11
1. 1. 1. Números Primos..................................................................................................12
Teorema Fundamental da Aritmética..............................................................................13
1. 1. 2. Algoritmo da Divisão de Euclides......................................................................15
1. 1. 3. Números Primos entre Si.....................................................................................16
Teorema de Euclides.......................................................................................................16
1. 1. 4. Teto e Piso de um Número Real..........................................................................16
1. 1. 5. Fracções Contínuas.............................................................................................17
1. 1. 6. Fracções Contínuas como Boas Aproximações..................................................20
Teorema Dirichlet...........................................................................................................25
1. 2. Aritmética Modular.....................................................................................................26
1. 2. 1. Congruência........................................................................................................26
1. 2. 2. Propriedades de Congruência..............................................................................27
1. 2. 3. Sistema completo de resíduos.............................................................................30
1. 2. 3. Função de Euler...................................................................................................31
1. 2. 4. Propriedades da Função de Euler........................................................................32
Teorema de Euler............................................................................................................34
Pequeno Teorema de Fermat...........................................................................................34
Teorema Chinês dos Restos............................................................................................35
2 FUNDAMENTOS DA CRIPTOGRAFIA E CRIPTOANÁLISE......................................38
2. 1. Criptografia.................................................................................................................38
2. 1. 1. Objectivos............................................................................................................38
2. 1. 2. Terminologias e Conceitos..................................................................................39
2. 1. 3. Classificação dos Sistemas Criptográficos..........................................................40
Esquema de Criptografia Simétrica.................................................................................41
Esquema da Ideia inicial de Criptografia Assimétrica....................................................41
Esquema de Criptografia Assimétrica.............................................................................42
2. 1. 4. Comparação da Criptografia Simétrica e Assimétrica........................................44
2. 1. 5. Algoritmo RSA...................................................................................................45
Funcionalidade de Algoritmo RSA.................................................................................45
Aplicação de RSA...........................................................................................................45
Geração de Chaves..........................................................................................................46
Algoritmo de encriptação e desencriptação....................................................................46
2. 1. 6. Segurança de Algoritmo RSA.............................................................................51
2. 2. Criptoanálise...............................................................................................................52
2. 2. 1. Ataques Criptográficos........................................................................................52
2. 2. 2. Classes de Ataques..............................................................................................53
2. 2. 3. Tipos de Ataques.................................................................................................53
Ataque ao RSA................................................................................................................54
Algoritmo de Factorização de Euclides..........................................................................55
Algoritmo de Factozição de Fermat................................................................................57
Algoritmo de Factorização de Módulo Comum..............................................................59
3 ATAQUE AO EXPOENTE PRIVADO PEQUENO..........................................................62
3. 1. Ataque De Wiener.......................................................................................................62
Teorema de Wiener.........................................................................................................62
3. 1. 1. Cálculo da chave Privada....................................................................................66
3. 1. 2. Factorização de N................................................................................................67
3. 1. 3. Contramedidas ao Ataque de Wiener..................................................................69
3. 2. Extensão do ataque de Wiener....................................................................................73
3. 2. 1. Ataque de Boneh e Durfee..................................................................................73
Conclusão...............................................................................................................................75
Recomendações......................................................................................................................76
Anexos....................................................................................................................................77
Tabela 1 – Tabela de Números primos de 2 à 1000........................................................77
Tabela 2 – Tabela de equivalência de letras de alfabeto em números............................77
Tabela 3 – ASCII completa.............................................................................................78
Referências bibliográfica........................................................................................................80
Dedicatória
Agradecemos:
A Deus por sempre cuidar do nosso caminho e por proporcionar condições para que
pudéssemos chegar até aqui.
Aos amigos, colegas pelo companheirismo, pela paciência e por ter nos dado força
nos momentos mais difíceis.
Ao orientador, Professor Iván Ponomarev por ter aceite nos orientar neste tema
depois de temas como Funções Quase Periódica e Problema de Lehmer.
Ao professor Walter Tomé por ser o primeiro a corrigir o nosso trabalho e nos ter
fornecidos alguns materiais.
Resumo
O algoritmo RSA, como qualquer um outro algoritmo criptográfico também é uma aplicação
de teoria dos números, e, é resultado de dois cálculos matemáticos, uma para encriptar
(baralhar) a mensagem e outra para desencriptar (tornar legível) a mensagem. E para ler esta
mensagem temos de factorizar o número conhecida publicamente.
O algoritmo RSA, baseia-se no fato de que, embora seja fácil encontrar dois números primos
de grandes dimensões, conseguir factorizar o produto de tais números, é considerado
computacionalmente complexo se os números forem bem escolhidos. A criptografia é a
técnica que passou silenciosamente a integrar o cotidiano, sem que se perceba, como
exemplo os sistemas de caixas eletrônicos vulgo multicaixas, terminais de pagamentos
automáticos, páginas na internet, sistemas que pedem senha de acesso, etc. todos utilizam a
criptografia como meio de conferir segurança às suas operações.
The cryptography is the branch of mathematics that studies the principles and techniques to
transform information from its normal form to another illegible, is aiso considered as the art
of shuffling messages not to be read when it is not intended. The processes by which
information is shuffled and circulated securely between the sender and recipient are crucially
dependent on the use of mathematics. Keeping the transmission of information secure is an
indispensable task in today's world, hence the need to make more secure encryption using
the RSA algorithm as the main cryptosysrem, as aims to provide the secure exchange of
information between stakeholders. For that, keys and rules are needed to turn the original
text into the clutter. We have against cryptoanalysis, whose ai mis to find ways to break and
read the information without authorization.
The RSA algorithm, like any other cryptographic algorithm, is also a number theory
application, and is the result of two mathematical calculations, one for encrypting the
message and the other for decrypting the message. And to read this message we have to
factorize the number known publicly.
The RSA algorithm is based on the fact that although it is easy to find two prime numbers,
to be able to factorize the product of such numbers, it is considered computationally
complex if the numbers are well chosen.
The cryptography is the technique that silently passes into the everyday, without being
noticed, such as ATM systems “multi-dial ATM”, automatic payment terminals, Internet
pages, systems request password, etc. all use encryption as a means of providing security for
their operations.
The choice of the small decryption exponent serves to reduce the time required in decrypt a
message, one may choose to use a small d instead of a large number. In doing so, it also met
the objectives of cryptography, but Wiener showed that choosing a small value for d will
result in an insecure system in which the intruder can break completely.
A teoria das fracções contínuas é um dos mais belos assuntos da Matemática elementar,
sendo ainda hoje tema de pesquisa, e, atualmente são de grandes interesses em várias áreas
da ciência tais como: em teoria dos números, na ciência da computação, na criptografia, etc.
O algoritmo RSA, baseia-se no facto de que, embora seja fácil encontrar dois números
primos de grandes dimensões, conseguir factorizar o produto de tais dois números, é
considerado computacionalmente complexo.
Parece, portanto, que quaisquer que sejam os métodos de segurança da informação que se
pode prever, é difícil precaver-se de forma total de ataques criptográficos, tudo porque, a
criptoanálise tem acompanhado a evolução da criptografia. Sendo assim é possível
comprometer as informações através de propriedades e relações matemática, mesmo não
sendo o destinatário, desde que na criação das chaves não se escolha números primos muito
grande e distantes entre si.
Com a evolução das ciências, pode-se quebrar a chave privada, aplicando princípios
matemáticos, isto é, factorização de em seus factores primos e , logo, o objectivo do
presente trabalho é mostrar que o fracasso do criptossistema RSA está na forma crucial da
escolha dos primos, demonstramos isto a partir de alguns algoritmos de factorização e por
meio do ataque de Wiener.
Desde a antiguidade clássica, e talvez até mesmo antes, o homem sempre teve a necessidade
de comunicar-se de forma segura, fazendo com que a troca de mensagens fossem feitas
somente com pessoas autorizadas, que informações importantes não parassem em mãos de
pessoas mal intencionadas e fazerem mau uso, daí houve a necessidade de se criar formas de
protegerem suas informações, oculta-las e tornando-as impercebíveis a terceiros, de modo
que só pessoas autorizadas possam ter acesso da mesma, dando assim o surgimento da
criptografia. A evolução da criptografia tem como seu maior aliado a guerra, pois ao longo
do seu desenvolvimento ela sempre esteve muitas vezes associada nas práticas militares.
Mas ela nem sempre foi tão robusta “segura” quanto é nos dias de hoje, o surgimento de
ameaças na intercepção de mensagens por parte de espiões motivou bastante o seu
desenvolvimento.
Por volta de 600 anos a.c, os hebreus criaram alguns sistemas criptográficos aquando da
escrita do livro de Jeremias, nomeadamente o Atbash, que consistia numa troca simples
entre as letras do hebraico, por ordem inversa. Em 475 a.C., o general espartano Pasanius,
utilizou o Scytale ou Bastião de Licurgo, aquele que é tido como sendo o primeiro sistema
criptográfico de uso militar. Por volta de 300 anos a.C., surgiu na índia um livro intitulado
Arthasastra, sua autoria atribuída a Kautilya, onde são referidos os primeiros métodos de
criptoanálise. No século I a.C. o imperador Júlio César para se comunicar com os seus
generais, fazia o uso de uma cifra de deslocamento, que consistia na substituição de cada
letra da mensagem original, por outra letra que se encontra três posições depois no alfabeto.
Originalmente descrita no ano de 1553, em seu livro com o título La cifra del. Sig., Giovan
Batista Belaso descreve a cifra de Vigenère, uma cifra de substituição poli-alfabética que usa
uma série de diferentes cifras de César baseadas em letras de uma senha. Nos meados do
século XIX, propriamente no ano de 1863, o criptógrafo prússio Friedrich Wilhelm Kasiski,
publicou um livro de 95 páginas em alemão com o título Die Geheimschriften und die
Dichiffrer-Kunst (Escrita secreta e arte de decifrar, em português), esse foi o primeiro
relato publicado de um procedimento para decifrar cifras de substituição polialfabética,
especialmente a cifra de Vigenère, essa cifra que por mais de 300 anos foi tida como
inquebrável.
Em 1918, a máquina Enigma foi patenteada por Arthur Scherbius, mas os primeiros modelos
(Enigma modelo A) foram exibidos nos congressos da União Postal Universal de 1923 e
1924, um modelo semelhante a máquina de escrever. Três outras versões comerciais lhe
sucederam, e a Enigma-D torna-se o modelo mais divulgado, após suscitar o interesse da
marinha alemã em 1926, que comprou alguns exemplares e adaptou-as ao seu uso, e nesse
mesmo ano essas primeiras máquinas de uso militar passaram a chamar-se Funkschlüssel C.
Em 1928, o exército alemão elaborou a sua própria versão, o famoso Enigma-G, a partir
desse momento o seu uso estende-se a toda a organização militar alemã, e uma parte do
grupo político eleito, os nazistas.
A era da criptografia moderna surge com matemático norte americano Claude Shannom,
conhecido como o pai da teoria da informação, pelos trabalhos que ele fez durante a segunda
guerra mundial sobre segurança das comunicações.
Capítulo I
1. 1. Critérios de Divisibilidade
Teorema 1. 1. 1 ([18], pag. 8). Qualquer número inteiro ímpar maior do que 1 pode ser
escrito como diferença de dois quadrados.
Demonstração
Demonstração
então .
1. 1. 1. Números Primos
Demonstração.
Suponhamos que não seja um divisor de , logo também não será um divisor de .
Como os divisores de são apenas e , então os divisores comuns de e são
Demonstração
∤
logo , mas como , onde , pois,
Demonstração
1) Existência da Factorização
Seja um número inteiro, se for primo, então temos um produto com um só factor.
Agora vamos supor que seja composto, por definição tem divisores entre e . Se
é o menor dos divisores de então é primo, pois se não for, existirá divisores de que
2) Unicidade da Factorização
Suponhamos por absurdo, que pode ser escrito de duas maneiras distintas, como produto
(1.
1)
como é primo e seu único divisor primo positivo é ele mesmo, então , portanto, na
i)
, tais que
, onde
, onde
, onde
, onde
, onde
, onde
Procedendo-se da mesma forma, obtemos sempre novos quocientes e novos restos, isto é
, onde
Teorema 1. 1. 5 ([17], pag. 34). Sejam , não ambos nulos, a partir do algoritmo da
Definição 1. 1. 4. Sejam , ambos não nulos, diz-se e são primos entre si, se o
Demonstração
Se , com
. Portanto, , então .
Demonstração
Se , existem , tal que , dividindo ambos os lados por
, temos , então
Denota-se por .
a . Denota-se por .
(1.
2)
(1.
3)
(1.
4)
, é o primeiro convergente
, é o segundo convergente
, é o terceiro convergente
, é o n-ésimo convergente (1.
5)
Teorema 1. 1. 8. ([8], pag. 93). Todo número racional pode ser escrito como uma fracção
contínua simples finita.
Demonstração
, onde , logo .
Repete-se este processo até encontrar o último quociente não divisível por , onde
, logo .
Nota-se que os , onde formam uma sucessão decrescente de inteiros positivos,
Como existe um número finito de inteiros positivos que satisfazem as equações, logo
substituindo as igualdade dos processos anteriores, temos
(1.
6)
Uma das razões pelas quais as fracções contínuas são importantes é facto delas serem usadas
para obterem aproximações numéricas de números racionais, cada convergente da fracção
e , por
então
e além disso, , .
Demonstração
Para , temos
Para , temos
Para , temos
Para , temos
termos, .
Para , temos
Para , temos
Para , temos
Corolário 1. 1. 2. Temos
Demonstração
Demonstração
Seja , onde
Logo,
Exemplo
podemos observar que cada convergente desta fracção é uma melhor aproximação de .
Isto é:
Corolário 1. 1. 3. Para todo , temos
, então
Demonstração
de .
Portanto,
Corolário 1. 1. 4. Pelo menos uma entre cada duas aproximações consecutivas, tem erro
menor que a metade do inverso do quadrado do denominador, isto é:
ou ,
1. 2. Aritmética Modular
1. 2. 1. Congruência
denotado por ou , se
Teorema 1. 2. 1 ([4], pag. 117). Dois inteiros e são congruentes módulo se, e
somente se e deixam o mesmo resto quando divididos por .
Demonstração
, então .
1. 2. 2. Propriedades de Congruência
Teorema 1. 2. 2 ([4], pag. 118). Seja um inteiro positivo fixo ( ) e sejam .
Valem as propriedades:
i) Reflexividade
Demonstração
logo é reflexiva
logo é simétrica
logo é transitiva
i)
ii)
Demonstração
i) Sejam ,e
como e , então e
, logo
ii) Sejam ,e
, logo
i) se , então
ii) se , então
Demonstração
Se , logo
i) se , então .
Demonstração
temos
então, existem tal que
logo,
Demonstração
O conjunto tem elementos e, além disso, qualquer que seja o inteiro temos, pelo
Demonstração
Se é um inteiro qualquer, então:
, com
Demonstração
Se
se .
Assim, os restos das divisões de por , onde são todos distintos daí
1. 2. 3. Função de Euler
i)
ii)
iii) , onde
Demonstração
i) Seja um número natural primo, como cada um dos inteiros positivos menores
.
iii) Sejam e
completo de resíduos no anel , então existe uma quantidade de restos que são
quantidade .
iv) Se então
Teorema 1. 2. 6 ([10], pag. 50). (Euler) sejam e dois inteiros com e
, então
.
Demonstração
, .
Teorema 1. 2. 7 ([10], pag. 50). (Pequeno Teorema de Fermat) sejam um inteiro positivo
e um primo, então
Demonstração
Aplicando a definição de congruência, temos
(1. 10)
Pelo teorema 1. 1. 2, , se e
Teorema 1. 2. 8 ([6], pag. 59) (Chinês dos Restos). Sejam números inteiros
Demonstração
As características do sistema sugerem que um número que possa ser escrito como
, em que , com ;
, então .
então , , , e, portanto,
, , , .
Analogamente, se é solução de , então e
, , , . E assim por
diante.
Onde e , com .
divisores de . Mas, como são primos entre si, dois a dois, então
2. 1. Criptografia
A criptografia como é o ramo da matemática que estuda os princípios e técnicas pelas quais
a informação pode ser transformada da sua forma original para outra ilegível, de forma que
possa ser conhecida apenas pelo seu destinatário, o que a torna difícil de ser lida por alguém
não autorizado “intruso.” Assim sendo, só o destinatário da mensagem pode ler a
informação com facilidade.
2. 1. 1. Objectivos
2. 1. 2. Terminologias e Conceitos
Chave: É um valor secreto (números ou string) que interage com o algoritmo de encriptação
ou desencriptação.
Nota: Nem todos os sistemas ou algoritmos criptográficos são utilizados para atingir todos
os objetivos listados acima. Normalmente, existem algoritmos específicos para cada uma
destas funções. Mesmo em sistemas criptográficos bem concebidos, bem implementados e
usados adequadamente, alguns dos objetivos acima não são práticos (ou mesmo desejáveis)
em algumas circunstâncias.
Os sistemas criptográficos simétricos usam uma mesma chave “chamada chave secreta”,
para encriptar e desencriptar mensagens enquanto, que os sistemas criptográficos
assimétricos usam um par de chaves: “uma é chave pública” que é conhecida por todos e
serve para encriptar a mensagem e a outra “chave privada” onde só o receptor da mensagem
conhece e, serve para desencriptar. Por isso, os sistemas criptográficos simétricos também se
chamam sistemas criptográficos de chave secreta “ou única”, e os assimétricos sistemas de
chave pública.
Nos algoritmos simétricos uma chave é usada tanto para criptografar quanto para
descriptografar (podemos ter mais que uma se a segunda for facilmente derivada da
primeira), enquanto que nos algoritmos assimétricos temos mais que uma chave e ambas são
completamente independentes uma das outras.
Esquema de Criptografia Simétrica
Bob Alice
Texto Cifrado
XDAK3OS XDAK3OS
2RJ 2RJ
Fig. 1 (Esquema de Criptografia Simétrica)
Bob Alice
O Bob coloca sua mensagem em uma caixa, tranca com cadeado, e envia para a Alice.
A Alice recebe a caixa, e volta a tranca com outro cadeado e reenvia para o Bob.
o Bob recebe a caixa e, abre seu cadeado e envia novamente para a Alice.
A Alice recebe a caixa, abre seu cadeado e pode ser a mensagem do Bob.
A vantagem desta ideia é que não foi necessário que o Bob enviasse a sua chave para a
Alice. Mas, o problema é que foram necessárias três viagens, e que não ciframos a
mensagem em si, mas o “repositório” da mensagem.
Com base nesta ideia, e de forma a tornar este processo mais rápido, sem voltas, ouve a
necessidade de se criar a criptografia assimétrica, onde a ideia principal era criação da chave
de cifração seja diferente da chave de decifração. E, uma não pode ser facilmente gerada a
partir da outra. Para solucionar este problema, começou-se a pensar em uma criptografia
com duas ou mais chaves, onde recorreu-se a princípios matemáticos para cifrar e decifrar
mensagens.
Com estes estudos melhorou-se o problema. Agora, imagina que o Bob queira enviar uma
mensagem para a Alice. Neste caso, o Bob deve cifrar a mensagem com a chave pública da
Alice. Ao receber a mensagem cifrada, a Alice decifra a mensagem com a sua própria chave
privada.
Bob Alice
Podemos notar que a confidencialidade está garantida, pois, somente a chave privada da
Alice pode decifrar a mensagem criptografada e, só ele possui essa chave, não a distribui
para ninguém. Outra forma de utilizar a criptografia assimétrica é que garante a
autenticidade, integridade, e a irretratabilidade ou não repúdio.
Basicamente na criptografia assimétrica temos que a chave pública pode ser conhecida por
todos e é utilizada para cifrar o texto claro. Por sua vez, a chave privada deve permanecer
secreta e é utilizada para decifrar o texto cifrado. Esse processo nos garante a
confidencialidade da informação. Porém, também é possível utilizar a chave privada para
cifrar o texto claro e a respectiva chave pública para decifrar a mensagem criptografada.
Neste caso, busca-se garantir a autenticidade, é o caso típico de assinaturas digitais.
Cifradores por Transposição: Consiste em mudar a posição das letras de uma mensagem,
reordena-las de acordo com um esquema de permutação previamente combinado entre o
remetente e o destinatário.
Cifradores por Substituição: Consiste substituir uma letra do texto claro por outra do
alfabeto, dependendo do tipo de substituição que pode ser Monoalfabetica ou Polialfabetica.
Substituição Monoalfabetica: cada letra do texto claro é substituída sempre pela mesma
letra, independentemente da sua posição no texto.
Substituição Polialfabetica: letras iguais do texto claro podem ser substituídas por letras
diferentes, dependendo da sua posição no texto. Esta substituição é feita de acordo com uma
tabela previamente combinado entre o remetente e o destinatário, que estabelece uma
correspondência 1 à 1 entre letras e números dando origem ao alfabeto cifrado.
3ª Em relação ao modo de Processamento:
Cifradores de bloco: são aqueles que operam sobre 8 bits ou 16 bits e funcionam com
complementos para que todos blocos tenham o mesmo tamanho.
Cifradores de fluxo: são aqueles em que a cifragem ocorre bit a bit continuo.
Com base nesses aspectos pode-se afirmar que os Cifradores Simétricos garantem apenas
Confidencialidade e a Integridade, enquanto que os Cifradores Assimétricos garantem
Confidencialidade, Integridade, Autenticidade e a Irretratabilidade ou não repúdio.
A chave deve ser mantida em Apenas1 das duas chaves deve ser
segredo. mantida em segredo.
Nesse modelo, é usado duas chaves, uma para encriptar e outra para desencriptar, sendo que
a chave para encriptar poderia ser de domínio público, enquanto a chave de desencriptar
apenas o destinatário conheceria, garantindo que, ter o conhecimento de uma chave não
implicaria em conhecer a outra.
Este conceito é bastante inteligente e atrativo, e traz consigo muitas vantagens do que nos
sistemas simétrico, tais como a Simplificação na distribuição de chaves e Assinatura Digital.
O RSA foi construído sobre uma das áreas mais clássicas da matemática, a Teoria dos
números. Ele se baseia na dificuldade em factorizar um número em seus factores primos.
A criptografia em RSA envolve um par de chaves, uma é a chave pública que é conhecida
por todos e outra é a chave privada que deve ser mantida em sigilo. O emissor da mensagem
usa a chave pública do receptor para encriptar uma mensagem para ele, e esta mensagem
encriptada usando a chave pública do receptor só pode ser desencriptada usando a respectiva
chave privada.
Aplicação de RSA
Geração de Chaves
iii. Calcular
O detentor da chave pública , após receber o criptograma , utiliza a sua chave privada
Demonstração
Vamos supor que e sejam primos entre si, temos que provar que ,
isto é, .
Na prática, o sistema criptográfico RSA faz o uso da tabela ASCII “American Standard
Code for Information Interchange, do português, Código Padrão Americano para o
Intercâmbio de Informação” (Ver anexo Tabela 3), um código binário que codifica um
conjunto de caracteres, por exemplo: Sinais gráficos (letras do alfabeto latino, sinais de
pontuação e sinais matemáticos), sinais de controle, etc. O ASCII, é usado para representar
textos em computador, equipamentos de comunicação, entre outros dispositivos que
trabalham com texto.
Para este trabalho usar-se-á a tabela (Ver anexo Tabela 2), ou simplesmente o alfabeto com
letras convertidas em números. Para todos os efeitos de encriptação e desencriptação usar-
se-á como intervenientes deste processo as entidades Bob e Alice (emissor e receptor
respectivamente), e Lizst como intruso que procurará a todo custo apoderar-se do teor das
mensagens a que não é destinatário.
Exemplo 1
2) Calcula
3) Calcula
4) Escolhe , porque, e
5) Calcula que .
Exemplo 2
Bob deseja enviar para Alice que possui chave pública a seguinte mensagem:
“Para uma comunicação segura use criptografia”
Alice, após receber esta mensagem, fazendo uso da sua chave privada ,
, corresponde a letra P
, corresponde a letra A
Seguindo este processo para os restantes números, obterá o texto claro seguinte:
“Para uma comunicação segura use criptografia”, do qual ele é o destinatário.
2. 1. 6. Segurança de Algoritmo RSA
A criptografia RSA apesar do seu algoritmo simples, ele é bastante seguro, assim como
outros sistemas assimétricos pelo facto da sua concepção também estar relacionado a um
Este problema é uma das grandes garantias de segurança, mas apesar disto, algumas chaves
do RSA já foram quebradas, e por estas razões ele foi sofrendo algumas alterações no seu
algoritmo, não só para torna-lo mais seguro, como tornar mais rápido os processos de
encriptação e desencriptação, dando origem a outras variantes tais como:
- Batch RSA
2. 2. Criptoanálise
Cifra formalmente quebrada: quando o intruso deseja obter a chave privada de uma dada
entidade.
2. 2. 2. Classes de Ataques
Ataque Passivo: é aquele em que o intruso só monitoriza o canal de comunicação. Este tipo
de ataque só ameaça a confidencialidade da informação.
Ataque Activo: é aquele em que o intruso tenta apagar, acrescentar ou de alguma forma
modificar a informação. Este tipo de ataque só ameaça à integridade da informação assim
com a confidencialidade.
2. 2. 3. Tipos de Ataques
Existem cinco tipos de ataques mais comuns, e todos eles supõem que o intruso detém o
conhecimento total sobre os métodos de encriptação e desencriptação utilizados, mas
desconhece as chaves. São eles:
Ataque de texto encriptado (cryptotext only): O criptoanalista tem a sua disposição uma
grande quantidade de mensagens encriptadas, mas desconhece os textos claros e as chaves
utilizadas. Sua tarefa é recuperar as mensagens claras e deduzir as chaves.
Ataque de texto claro (known plaintext): O criptoanalista tem a sua disposição uma grande
quantidade de mensagens encriptadas e também as mensagens claras equivalentes. Sua
tarefa é deduzir as chaves utilizadas ou um método para recuperar mensagens encriptadas
com a mesma chave.
Ataque do texto claro escolhido (choosen cryptotext): O criptoanalista não só tem uma
grande quantidade de mensagens e seus equivalentes encriptados, mas pode produzir uma
mensagem encriptada especifica para ser desencriptada e obter o resultado produzido. É
utilizada quando se tem uma caixa preta que faz desencriptação automática. Sua tarefa é
deduzir chaves utilizadas.
Ataque de chave escolhida (choosen key): O criptoanalista pode testar o sistema com
chaves diferentes ou pode convencer diversos usuários legítimos do sistema a utilizarem
determinadas chaves. Neste último caso, a finalidade imediata seria de desencriptar as
mensagens encriptadas.
Ataque ao RSA
Uma primeira abordagem de ataque ao RSA teria como objetivo a factorização do módulo
por meio da chave pública, ou seja, conseguir factorizar em produto de números
Este algoritmo é eficiente, muito simples e pode ajudar-nos a obter um dos factores primos
Esta aproximação apresenta dois problemas: Primeiro a necessidade de gerar a lista de todos
os primos até um dado limite, como já dissemos essa tarefa é pesada tanto temporalmente
como espacialmente o outro problema advém da representação computacional do número
que se obtém da multiplicação dos números primos, rapidamente o número obtido da
multiplicação ultrapassa a capacidade de representação da maioria das linguagens de
programação existentes.
Para contornar a este último problema pode-se dividir a multiplicação em várias
multiplicações parcelares, para tal procede-se do seguinte modo:
2) Para cada par e , multiplicam-se todos os números primos entre estes dois
limites
Exemplo 3
e
Como , e, é diferente de , então é um dos factores primos de . Agora
dividindo por obtém-se , temos então os dois factores primos e ,
portanto foi factorizado.
1) Dado um ímpar, começa-se por tomar o primeiro quadrado perfeito maior que ,
ou .
Este método torna-se trabalhoso quando for um número grande, e produto de primos
muito afastados. Se por exemplo usarmos este método para factorizar ter-se-á
incrementações para se obter os factores primos e .
Algoritmo de Factorização de Módulo Comum
e novamente teremos:
Exemplo 5
Se, Bob for o intruso interno, com auxílio do seu expoente de desencriptação pode calcular a
chave privada da Alice factorizando o módulo que é comum do seguinte modo:
Sabendo que , e .
Fazendo,
Alice é .
Suponhamos agora que, uma entidade qualquer tenha enviado respectivamente para Bob e
como, então
Para fornecer uma rápida geração de assinatura RSA, um criptografo tentou usar um
pequeno expoente privado , mas Michael WIENER mostrou que, se alguém usasse
resultará num sistema RSA inseguro no qual o intruso pode quebrar completamente.
3. 1. Ataque De Wiener
(3.1)
Demonstração
que modulo onde . Além disso suponha que o intruso saiba que temos
(3.2)
(3.3)
(*)
(**)
(II)
Sabendo que
(III)
(IV)
(3.4)
(3.5)
Como e ,temos
(V)
(VI)
(VII)
(VIII)
(3.6)
Como , temos
(IX)
com , logo
Logo, a fração contínua finita simples que representa o número racional , escreve-se
3. 1. 2. Factorização de N
(X)
Aplicar o ataque de Wiener, o intruso deve calcular a expansão das fracções contínuas, isto é
Michael Wiener apresentou a escolha de uma chave pública grande ou uso do teorema
chinês dos restos como contramedidas do seu ataque.
Exemplo 2
e , então .
Logo, a nova chave pública segura é , e mesmo que o intruso saiba que
Esta medida consiste em utilizar uma chave privada grande . Apesar desta medida
garantir segurança contra o ataque de Wiener, ela traz consigo um pequeno problema, que é a
desaceleração do sistema devido ao elevado expoente de desencriptação.
Como solução para contornar este problema de desencriptação, Wiener propôs a criação de
duas sub chaves privadas
1) Calcular , onde e
2) Usar o teorema chinês dos restos, para calcular o valor exclusivo de do qual
satisfaz, e .
Então, o sistema
Exemplo 3
Sejam , , , e .
Sabemos que, e .
com, , , e
temos,
e
e
Como, , então
Boneh e Durfee afirmaram que podemos, na maior parte do tempo (liberaram a heurística e
não um teorema) factorar com sucesso o , se o expoente privado é muito pequeno a
partir podemos quebrar o sistema da seguinte maneira:
(3.7)
(3.8)
, temos
Conclusão
Na maioria das vezes, sobre tudo em Angola a formação em matemática está ou tem sido
associada simplesmente para ensino, sem, no entanto, servir para alguma aplicação prática
na vida, aqui vem alguma verdade a muito ocultada.
A matemática é uma das áreas de formação mais influente, para além de servir de base a
outras ciências, ela está e sempre esteve presente no nosso dia-a-dia, há quem diz até que “O
abandono da matemática traz a todo o conhecimento. Pois, aquele que a ignora não pode
conhecer as outras ciências ou as coisas deste mundo” Roger Bacon.
A Teoria dos Números, durante séculos, esteve à espera de alguma aplicabilidade, até que
num belo dia da segunda metade do século vinte (desde 1976), encontrou a sua grande
vitrine a criptologia e passou de rainha das matemáticas à criada para todo o serviço, tanto
para garantir credibilidade, sigilo e segurança da informação, quanto o comprometimento da
mesma, enfim, ajudou, e continua a ajudar, a revolucionar o nosso modo de vida nos últimos
anos.
Por fim, foi um prazer explorar este assunto. Abriram-se as portas de um mundo que nos era
completamente desconhecido e no qual gostámos de desenvolver este tema.
Recomendações
2 3 5 7 11 13 17 19 23 29 31 37 41 4 47
3
53 59 61 67 71 73 79 83 89 97
101 103 107 109 113 127 131 139 14
9
151 157 163 167 173 179 181 191 19 197 199
3
211 223 227 229 233 239 241
251 257 263 269 271 277 281 283 29
3
307 311 313 317 331 337 347 349
353 359 367 373 379 383 389 397
401 409 419 421 431 433 439 443 44
9
457 461 463 467 479 487 491 499
503 509 521 523 541 547
557 563 569 571 577 587 593 599
601 607 613 617 619 631 641 643 64
7
653 659 661 673 677 683 691
701 709 719 727 733 739 743
751 757 761 769 773 787 797
809 811 821 823 827 829 839
853 857 859 863 877 881 883 887
907 911 919 929 937 941 947
953 967 971 977 983 991 997
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
Dec Binário He Referên Dec. Binário He Referên Dec. Binário Hex Referên
x x
112 01110000 70 P 161 10100001 A1 ù 210 11010010 D2 Ê
113 01110001 71 q 162 10100010 A2 ó 211 11010011 D3 Ë
114 01110010 72 r 163 10100011 A3 ú 212 11010100 D4 È
115 01110011 73 s 164 10100100 A4 ñ 213 11010101 D5 ı
116 01110100 74 t 165 10100101 A5 Ñ 214 11010110 D6 Í
117 01110101 75 u 166 10100110 A6 ª 215 11010111 D7 Î
118 01110110 76 v 167 10100111 A7 º 216 11011000 D8 Ï
119 01110111 77 w 168 10101000 A8 ¿ 217 11011001 D9 ┘
120 01111000 78 x 169 10101001 A9 ® 218 11011010 DA ┌
121 01111001 79 y 170 10101010 AA ¬ 219 11011011 DB █
122 01111010 7A z 171 10101011 AB ½ 220 11011100 DC ▄
123 01111011 7B { 172 10101100 AC ¼ 221 11011101 DD ¦
124 01111100 7C | 173 10101101 AD ¡ 222 11011110 DE Ì
125 01111101 7D } 174 10101110 AE « 223 11011111 DF ▀
126 01111110 7E ~ 175 10101111 AF » 224 11100000 E0 Ó
127 01111111 7F Delete 176 10110000 B0 ░ 225 11100001 E1 ß
128 10000000 80 Ç 177 10110001 B1 ▒ 226 11100010 E2 Ô
129 10000001 81 ü 178 10110010 B2 ▓ 227 11100011 E3 Ò
130 10000010 82 é 179 10110011 B3 │ 228 11100100 E4 õ
131 10000011 83 â 180 10110100 B4 ┤ 229 11100101 E5 Õ
132 10000100 84 ä 181 10110101 B5 Á 230 11100110 E6 μ
133 10000101 85 à 182 10110110 B6 Â 231 11100111 E7 þ
134 10000110 86 å 183 10110111 B7 À 232 11101000 E8 Þ
135 10000111 87 ç 184 10111000 B8 © 233 11101001 E9 Ú
136 10001000 88 ê 185 10111001 B9 ╣ 234 11101010 EA Û
137 10001001 89 ë 186 10111010 BA ║ 235 11101011 EB Ù
138 10001010 8A è 187 10111011 BB ╗ 236 11101100 EC ý
139 10001011 8B ï 188 10111100 BC ╝ 237 11101101 ED Ý
140 10001100 8C î 189 10111101 BD ¢ 238 11101110 EE ¯
141 10001101 8D ì 190 10111110 BE ¥ 239 11101111 EF ´
142 10001110 8E Ä 191 10111111 BF ┐ 240 11110000 F0
143 10001111 8F Å 192 11000000 C0 └ 241 11110001 F1 ±
144 10010000 90 É 193 11000001 C1 ┴ 242 11110010 F2 ‗
145 10010001 91 æ 194 11000010 C2 ┬ 243 11110011 F3 ¾
146 10010010 92 Æ 195 11000011 C3 ├ 244 11110100 F4 ¶
147 10010011 93 ô 196 11000100 C4 ─ 245 11110101 F5 §
148 10010100 94 Ö 197 11000101 C5 ┼ 246 11110110 F6 ÷
149 10010101 95 Ò 198 11000110 C6 ã 247 11110111 F7 ¸
150 10010110 96 Û 199 11000111 C7 Ã 248 11111000 F8 °
151 10010111 97 Ù 200 11001000 C8 ╚ 249 11111001 F9 ¨
152 10011000 98 Ÿ 201 11001001 C9 ╔ 250 11111010 FA ·
153 10011001 99 Ö 202 11001010 CA ╩ 251 11111011 FB ¹
154 10011010 9A Ü 203 11001011 CB ╦ 252 11111100 FC ³
155 10011011 9B Ø 204 11001100 CC ╠ 253 11111101 FD ²
156 10011100 9C £ 205 11001101 CD ═ 254 11111110 FE ■
157 10011101 9D Ø 206 11001110 CE ╬ 255 11111111 FF
158 10011110 9E × 207 11001111 CF ¤
159 10011111 9F Ƒ 208 11010000 D0 ð
160 10100000 A0 Á 209 11010001 D1 Ð
Referências bibliográfica
[1] ALMEIDA, J. Paulo. Criptografia e Segurança. Universidade de Aveiro-Departamento
de Matemática. Dissertação (Mestrado). 2012.
[5] HARDY, Godfrey Harod; WRIGHT, Edward Maitland. An Introduction to the Theory
of numbers. 5th edition. Clarendon Press. Oxford. 1979.
[6] HYGINO, H. Domingues; Gelson, Iezzi. Álgebra Moderna. 4ª Edição Reformada. São
Paulo. Editora Atual. 2003.
[14] MOREIRA, Carlos G. T. de Aráujo. Teoria dos Números (Fracções Contínuas parte
2) – Nível 3. Polos Olímpicos de Treinamento Intensivo. Brasil. 17 de abril 2013.
Disponível em: <http://m.youtube.com/watch?v=96PMF7bThSo>. Acesso 15 de agosto de
2018.
[15] MOREIRA, Carlos G. T. de Aráujo. Teoria dos Números (Teorema de Euler et al) –
Nível 3. Polos Olímpicos de Treinamento Intensivo. Brasil. 16 de abril 2013. Disponível em:
<http://m.youtube.com/watch?v=JJN4VoKq1qU>. Acesso 23 de Julho de 2018.