• Nenhum resultado encontrado

Teoria dos Números e suas aplicações

N/A
N/A
Protected

Academic year: 2021

Share "Teoria dos Números e suas aplicações"

Copied!
8
0
0

Texto

(1)

Teoria dos Números e suas aplicações

Luis Armando dos Santos Júnior1 e Antônio Carlos Nogueira2 Universidade Federal de Uberlândia

Abril- 2009

1:Orientando Programa de Educação tutorial do curso de Matemática. E-mail: canarexmg@yahoo.com.br

2: Orientador. E-mail: anogueira@ufu.br Resumo

Este trabalho tem como objetivo mostrar através de demonstrações, exposição de definições e exemplos algumas aplicações de Teoria dos Números, em particular aplicações na criptografia e calendários.

Considerações Preliminares

Para a aplicação de Teoria dos Números em Criptografia é necessário que se relembre algumas definições e teoremas importantes para entendimento do processo.

Definição 1: Seja n um número inteiro positivo. Dois inteiros a e b são ditos congruentes módulo n, simbolizado por

) (mod n

b

a

se n divide a diferença a− ; ou seja, b ab=kn para algum inteiro k.

Definição 2: Uma equação da forma axb(mod n), com a, b e n inteiros é chamada de

congruência linear, e como solução desta equação dizemos que é um inteirox0 para o qual

) (mod

0 b n

ax ≡ .

Função ϕ de Euler: Para n≥1, existe φ(n)que denota o número de inteiros positivos que são relativamente primos de ne que não são maiores que n.

Teorema 1: Se p é um primo e k >0, então

) 1 1 ( ) ( 1 p p p p pk = kk = k − φ −

Demonstração: Claro que, mdc(n,pk)=1se e somente se p não divide n. Existem pk−1

inteiros entre 1 e pk divisíveis por p , ou seja,

p, p2 , p3 , ...., (pk−1)p

Já que {1,2,...,pk}contêm exatamente pkpk−1 inteiros que são relativamente primos com k

p , então pela definição da função φ , φ(pk)= pkpk−1.

Teorema 2: Se o inteiro n>1 tem uma fatoração em primos kr r k k p p p n 1 2... 2 1 = , então       −       −       − = = − − − = φ − − − r k r k r k k k k p p p n p p p p p p n r r 1 1 ... 1 1 1 1 ) )...( )( ( ) ( 2 1 1 1 2 2 1 1 1 2 2 1 1

(2)

Demonstração: Pretende-se usar indução em r o número de fatores primos distintos de n. Pelo Teorema 1, o resultado é verdadeiro para r=1. Suponha que é verdadeiro para r= . Já i

que 1 ) , ... ( 1 2 1 1 2 1 = + + i i k i k i k k p p p p mdc

Da definição de função multiplicativa, temos

) ( ) ... ( ) ( ) ... ( ) ) ... (( 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 2 1 − + + + + + + + + − φ φ = = φ φ = φ i i i i i i i k i k i k i k k i k i k k i k i k k p p p p p p p p p p p

Através da indução têm-se então que

) )...( )( ( ) ... ( 11 22 = 11 11−1 22 22−1 −1 φ i i ki i k i k k k k k i k k p p p p p p p p p

Concluiu-se os passos da indução e a demonstração do teorema.

Lema 1: Seja n>1 e mdc(a,n)=1. Se a1,a2,...,aφ(n) são os inteiros positivos menores que

nque são relativamente primos com n, então

) ( 2

1,aa ,...,aa n

aa φ

são congruentes módulo ncom a1,a2,...,aφ(n) em qualquer ordem.

Demonstração: Observe que não há dois inteiros aa1,aa2,...,aaφ(n) que são congruentes módulo n. Para aaiaaj(mod n), com 1≤i< j≤φ(n), então a lei do cancelamento permite que aiaj(mod n), daí ai =aj que é um absurdo. Além disso, como

1 ) , (a n =

mdc i para todo i e mdc(a,n)=1, o fato de φ ser uma função multiplicativa garante que cada aaié relativamente primo de n.

Para um aai particular existe um único inteiro b , onde 0≤b<n, para o qual ) (mod n b aai ≡ . Como 1 ) , ( ) , (b n =mdc aa n = mdc i

b deve ser um dos inteiros a1,a2,...,aφ(n).

Teorema 3 (Teorema de Euler): Se n≥1 e mdc(a,n)=1, então aφ(n) ≡1(modn).

Demonstração: Não há problema em pegar n>1. Seja a1,a2,...,aφ(n) os inteiros positivos menores que nque são relativamente primos com n. Como mdc(a,n)=1, segue do lema que aa1,aa2,...,aaφ(n) são congruentes, não necessariamente em ordem de aparência, com

) ( 2 1,a ,...,a n a φ . Logo ) (mod ) (mod ' 2 2 ' 1 1 n a aa n a aa ≡ ≡ M M ) (mod ' ) ( ) ( a n aaφnφn

onde a1',a2',...,aφ'(n) são os inteiros a1,a2,...,aφ(n) em alguma ordem qualquer. Fazendo o produto dessas φ(n) congruências, têm-se

) (mod ... ) (mod ... ) )...( )( ( ) ( 2 1 ' ) ( ' 2 ' 1 ) ( 2 1 n a a a n a a a aa aa aa n n n φ φ φ ≡ ≡ e então

(

1 2... ( )

)

1 2... ( )(mod ) ) ( n a a a a a a aφn φnφn

(3)

Como o mdc(ai,n)=1 para cada i , então pela função φ ser multiplicativa implica que 1 ) , ... (a1a2 aφ( ) n =

mdc n . Logo, pode-se dividir os dois lados da congruência pelo fator comum

) ( 2 1,a ,...,a n a φ , deixando apenas ) (mod 1 ) ( n a n ≡ φ

Definição 3: Para um número real arbitrário x, nós denotamos por

[ ]

x o maior inteiro menor ou igual a x; ou seja,

[ ]

x é o único inteiro que satisfaz x− 1<

[ ]

xx.

Aplicação na Criptografia

Criptografia: Do grego Kryptos significando “escondido” e graphein significando “escrever”, ou seja, é a ciência de fazer as comunicações ininteligíveis para todos exceto órgãos autorizados.

Na linguagem de criptografia, os códigos são as cifras e a informação neles escondidos é chamado texto plano. Após a transformação do texto plano em sua forma secreta, este passa a ser chamado texto cifrado.

Criptografia de Júlio César: Um dos primeiros sistemas de criptografia, usado pelo grande imperador romano Júlio César por volta de 50 anos A.C. Este sistema usava uma substituição rudimentar de cifras, o qual consistia de apenas de substituir cada letra do alfabeto pela letra 3 posições abaixo no alfabeto, com as últimas 3 letras correspondentes as 3 primeiras respectivamente, ou seja, em ciclo. Representando o texto plano e o texto cifrado correspondente, têm-se:

Texto plano: ABCDEFGHIJKLMNOPQRSTUVWXYZ Texto cifrado: DEFGHIJKLMNOPQRSTUVWXYZABC Por exemplo, a mensagem

FAMAT EM REVISTA é transformada no texto cifrado

IDPDW HP UHYMVWD

O método de César pode facilmente ser descrito usando-se teoria das congruências. Expressando o texto plano numericamente transferindo os caracteres do texto em dígitos através da seguinte relação

A B C D E F G H I J K L M

00 01 02 03 04 05 06 07 08 09 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

Se P é o dígito equivalente a uma letra do texto plano e C é o dígito equivalente a letra no texto cifrado, então

) 26 (mod 3 + ≡ P C

Por exemplo, convertendo-se as letras da mensagem para seus correspondentes numéricos 05 00 12 00 19 04 12 17 04 21 08 18 19 00

Usando-se a congruência acima, obtêm-se

08 03 15 03 22 07 15 20 07 24 11 21 22 03

Para recuperar a mensagem a partir de um texto cifrado, basta usar a congruência ) 26 (mod 23 3≡ + − ≡C C P

O método de César é muito simples e extremamente inseguro. Um sistema de criptografia no qual cada letra é substituída por uma mesma cifra é conhecido como cifra monoalfabética. Este tipo de criptografia é extremamente vulnerável aos métodos estatísticos de ataque já que o método preserva a freqüência de letras individuais. Um sistema polialfabético seria aquele

(4)

que uma mesma letra do texto plano corresponde a diferentes cifras inclusive em uma mesma mensagem.

Método da palavra chave: Este método foi publicado pelo Criptográfo Blaise de Vigenère (1523-1596) em Traicté de Chiffres de 1586. O método de Blaise é um sistema polialfabético , para implementar este sistema ambas partes comunicantes combinariam o uso de uma palavra ou frase de fácil recordação. Com o alfabeto transformado em dígitos conforme a tabela anterior, os dígitos equivalentes a “palavra-chave” é repetido quantas vezes necessárias sob os dígitos correspondentes ao texto plano. A mensagem então seria codificada através da adição, módulo 26, de cada número do texto plano com o número imediatamente abaixo dele. Para ilustrar o processo usa-se a palavra-chave MAT, a qual tem versão numérica 12 00 19. Seja a mensagem

CRIPTOGRAFIA

Cujo equivalente numérico é 02 17 08 15 19 14 06 17 00 05 08 00, usando-se do método têm-se

02 17 08 15 19 14 06 17 00 05 08 00 12 00 19 12 00 19 12 00 19 12 00 19 quando as colunas são adicionadas módulo 26 têm-se

14 17 01 01 19 07 18 17 19 17 08 19 convertendo em cifras

ORBBTHSRTRIT

Note que uma mesma letra do texto plano é representada por mais de uma letra diferente no texto cifrado (observe o I), o fato de que para o A e R repetiram foram meras coincidências, tudo depende da escolha da palavra chave.

Em geral, qualquer seqüência de n letras com equivalentes numéricos b1,b2,...,bn

(

00≤bi ≤25

)

servirá como palavra-chave. O texto plano da mensagem é representado como blocos sucessivos P1P2...Pn de n inteiros de dois dígitos Pi, e então convertido para o texto cifrado cujos blocos são C1C2...Cn por meio das congruências

) 26 (mod i i i P b C ≡ + 1≤in

A decodificação é pelas relações

) 26 (mod i i i C b P ≡ − 1≤in

Por causa da distribuição das letras do texto cifrado em relação ao texto plano ser tão obscura o sistema foi pensado como “inquebrável”, porém a fraqueza no métode de Vigenère é que uma vez determinado o tamanho n da palavra-chave, uma mensagem criptografada pode ser recuperada como sendo feita de n cifras monoalfabéticas, sendo feito a análise de freqüência de cada uma.

Método de Lester Hill: Em 1929, Lester Hill, um professor de matemática assistente no Colégio Hunter criou um método de Criptografia que se baseava em dividir o texto plano em blocos de n letras (possivelmente completando o último bloco por letras determinadas, X por exemplo), e então codificar bloco por bloco usando um sistema linear de n congruências com n variáveis. Numa forma simples (n=2) o procedimento seleciona duas letras sucessivas e transforma seus equivalentes numéricos P1P2 em um bloco C1C2 de números do texto cifrado através do par de congruências

) 26 (mod ) 26 (mod 2 1 2 2 1 1 dP cP C bP aP C + ≡ + ≡

Para permitir a decodificação, os 4 coeficientes a,b,c,d devem ser selecionados de modo que mdc(ad − bc,26)=1.

(5)

) 26 (mod 8 5 ) 26 (mod 3 2 2 1 2 2 1 1 P P C P P C + ≡ + ≡

para codificar a mensagem BUY NOW. O primeiro bloco BU de duas letras é numericamente equivalente a 01 20, de acordo com o quadro anterior. Substituindo

( )

( )

) 26 (mod 09 165 ) 20 ( 8 ) 01 ( 5 ) 26 (mod 10 62 20 3 01 2 ≡ ≡ + ≡ ≡ +

Continuando duas letras por vez, encontram-se os números do texto cifrado 10 09 09 16 16 12

que pode ser expresso alfabeticamente por KJJ QQM.

Decodificação requer a resolução do sistema original de congruências para P1 e P2em termos de C1 e C2. Logo ) 26 (mod 2 5 ) 26 (mod 3 8 2 1 2 2 1 1 C C P C C P + − ≡ − ≡

Para o bloco 10 09 do código, calcula-se

) 26 (mod 20 32 ) 09 ( 2 ) 10 ( 5 ) 26 (mod 01 53 ) 09 ( 3 ) 10 ( 8 2 1 ≡ − ≡ + − ≡ ≡ ≡ − ≡ P P

Que correspondem as letras originais BU. O restante do texto plano pode ser restaurado de maneira similar.

Criptografia de chave-pública: Nos métodos anteriores o emissor e o receptor da mensagem conheciam o código secreto da codificação, a chave do método, e somente eles. No método de chave pública existem duas chaves, uma pública liberada para qualquer um que desejar enviar a mensagem ao receptor conseguir codificar e uma secreta para decodificação que apenas o receptor conhece.

Método RSA de Criptografia: Em 1977, R. Rivest, A. Shamir e L. Adleman propuseram um método de chave pública que usa somente idéias elementares de teoria dos números. A segurança do método depende da corrente tecnologia computacional, a fatoração de números compostos com grandes números primos é com certeza cansativa.

Cada usuário do sistema RSA escolhe um par de primos distintos, p e q , grandes o suficiente para que a fatoração de seu produto n= pq, chamado de módulo codificador, vai além de qualquer capacidade computacional. Por exemplo, pode-se escolher p e q com 200 dígitos cada, deste modo nterá em torno de 400 dígitos. Selecionado n, o usuário escolhe um inteiro positivo qualquer k , o expoente codificador, de modo que satisfaça

1 )) ( ,

(k φ n =

mdc . O par (n,k) é colocado em um arquivo público, análogo a uma lista telefônica, como chave de codificação para os usuários. Isto permite que qualquer um, na rede de comunicação, codifique uma mensagem e envie ao receptor. Note que apesar de nser acessível a todos, isto não significa que os fatores p e q sejam, p e q fatores primos de n. O processo de codificação se inicia com a conversão da mensagem em um inteiro M por meio do alfabético digital abaixo no qual cada letra, número ou símbolos do texto plano é substituído por um inteiro de dois dígitos.

(6)

A=00 K=10 U=20 1=30

B=01 L=11 V=21 2=31

C=02 M=12 W=22 3=32

D=03 N=13 X=23 4=33

E=04 O=14 Y=24 5=34

F=05 P=15 Z=25 6=35

G=06 Q=16 ,=26 7=36

H=07 R=17 .=27 8=37

I=08 S=18 ?=28 9=38

J=09 T=19 0=29 !=39

com 99 indicando espaço entre palavras. Neste esquema, a mensagem THE BROWN FIX IS QUICK

é transformada para o número inteiro

021027 1899162008 0514239908 1714221399 1907049901 = M

Assume-se que M <n, onde n é módulo codificador. Do contrário seria impossível distinguir M de qualquer inteiro maior que seja congruente a ele módulo n. Quando a mensagem é muito longa para ser analisada como um único número M <n, então M é quebrado em blocos de dígitos M1,M2,...,Ms de tamanho apropriado. Cada bloco é codificado separadamente.

Usando da chave pública (n,k), o emissor codifica a mensagem do número M (que representa o texto plano) e transforma em número do texto cifrado r elevando M a k -ésima potência e reduzindo o resultado módulo n, ou seja

) (mod n

r

Mk

Uma mensagem de 200 caracteres pode ser codificada em segundos em um computador de alta velocidade. Lembrando que o expoente codificador k foi originalmente selecionado pela condição mdc(k,φ n( ))=1. Apesar de existir muitas escolhas boas para k , uma sugestão óbvia é de escolher k como sendo um número primo maior que p e q .

Por outro lado, para determinação da chave de codificação, primeiro determina-se o inteiro

j, o expoente de recuperação secreto, para o qual )) ( (mod

1 n

kj≡ φ

Já que mdc(k,φ n( ))=1, esta congruência linear tem uma solução única módulo φ(n). De fato, o algoritmo euclidiano produz j como solução da equação

1 ) ( = φ + n y kx

O expoente de recuperação pode somente ser calculado por alguém que conhece p e q , fatores primos de n. Logo, j é desconhecido para todos com exceção do receptor. Logo, com a chave de decodificação determinada pode se recuperar o número M à partir de r simplesmente calculando rj módulo n. Já que kj=1+φ(n)t para algum inteiro t , segue-se que

(

M

)

M1 ( ) M

(

M ( )

)

M 1 M(modn)

rjk j ≡ +φn t ≡ φn t ≡ ⋅ t

de acordo com o Teorema 3 acima e sempre que mdc(M,n)=1. Em outras palavras, elevando-se o número do texto cifrado a j -ésima potência e reduzindo módulo n recupera-se o número original M correspondente ao texto plano.

Teve-se que assumir que mdc(M,n)=1 para poder usar o Teorema 3 (Teorema de Euler). No caso em que M e n não sejam relativamente primos, um argumento similar estabelece

(7)

que rjM(mod p) e rjM(mod q), o que nos dá a congruência desejada )

(mod n

M

rj ≡ .

A maior vantagem deste método é que a codificação de uma mensagem não requer o conhecimento dos dois primos p e q , mas somente de seu produto n, ou seja, não há necessidade de ninguém além do receptor da mensagem saber os fatores primos essenciais para a decodificação.

O método direto de ataque ao método seria a tentativa de fatoração de n, um inteiro de grande magnitude. Uma vez que seus fatores forem determinados, o expoente recuperador j pode ser calculado a partir de φ(n)=(p−1)(q−1) e k . Porém essa fatoração dependerá da capacidade computacional e do tamanho de n, quanto maior mais difícil a fatoração.

Aplicação nos Calendários

Nosso calendário, o calendário Gregoriano, vem desde a segunda metade do século XVI. O calendário anterior, introduzido por Júlio César, foi baseado em um ano de

4 1

365 de dias, com um ano bissexto de 4 em 4 anos. Esta não foi uma medida precisa porque o ano solar é de aproximadamente 365,2422 dias. Este pequeno erro fazia com que o calendário de César pulasse um dia a cada 128 anos.

Por volta do século XVI, o erro acumulado fez com que o 1º dia da primavera caísse dia 11 de março em vez do dia correto, 21 de março. O papa Gregório XIII corrigiu essa discrepância em um novo calendário, imposto nos principais países católicos da Europa. Foi decretado que 10 dias seriam omitidos no ano de 1582, fazendo com que 15 de outubro viesse logo depois de 4 de outubro daquele ano. Os anos bissextos seriam os anos divisíveis por 4, exceto aqueles que fosse anos centenários. Anos centenários só seriam bissextos se fossem divisíveis por 400.

Objetivo: Dado uma data após o ano de 1600 deve-se determinar a qual dia da semana esta data corresponde usando Teoria dos Números.

Método: Como o dia adicionado no ano bissexto é 29 de fevereiro, vamos adotar como 1º de março sendo o primeiro dia do ano e o último dia de fevereiro como sendo o último dia do ano. De acordo com isso, no ano Y março e abril são os primeiro e segundo mês do ano, respectivamente. Janeiro e fevereiro do ano Y+1 são contados como o 11º e o 12º mês do ano

Y. Outra conveniência é designar os dias da semana por:

Domingo Segunda Terça Quarta Quinta Sexta Sábado

0 1 2 3 4 5 6

O número de dias de um ano comum é 365 ≡1(mod7), em anos bissextos existem )

7 (mod 2

366 ≡ dias. Por 28 de fevereiro ser o 365º dia do ano, e 365 ≡1(mod7), 28 de fevereiro sempre cai no mesmo dia da semana que o anterior 1º de março do mesmo ano. Logo, o próximo 1º de março é um dia da semana depois do 1º de março do ano anterior. Mas se o próximo 1º de março é depois de 29 de fevereiro, o dia da semana correspondente deve ser somado 2 módulo 7.

Seja D1600, o dia da semana que representa o dia 1º de março do ano de 1600, então o 1º de março dos anos 1601, 1602, 1603 é dado por D1600 +1, D1600 +2 e D1600 +3, respectivamente.

Logo, o dia primeiro de março de um ano Y(DY) é dado por: ) 7 (mod ) 1600 ( 1600 Y L D Dy ≡ + − +

(8)

Onde L é o número de dias de anos bissextos entre 1º de março de 1600 e 1º de março do ano

Y. O número de anos n no intervalo de 1600<nY que são divisíveis por 4 é dado por:

O número de anos centenários é dado por:

Dentre esses o número de anos bissextos são:

Logo, o valor de L é dado por:

Considerando-se o fato de que D1600 (1º de março de 1600) caiu numa quarta-feira: Uma fórmula alternativa para L pode ser feita escrevendo Y como:

c: número de séculos e y denota o número de anos daquele século. Substituindo:

Logo, a congruência DY aparece como:

Que se reduz a:

Referências Bibliográficas

- Burton, M. David- Elementary Number Theory- Ed. McGraw Hill- 5ª edição-2004 400 4 400 4 4 1600 −     =     − =     −Y Y Y 16 100 16 100 100 1600 −     =     − =     −Y Y Y 4 400 4 400 400 1600 −     =     − =     −Y Y Y 388 400 100 4 4 400 16 100 400 4 −    +     −     =       −     +       −     −       −     = Y Y Y Y Y Y L ) 7 (mod ) 1600 ( 3 Y L DY ≡ + − + y c Y = 100 + 0≤ y<100 388 4 4 24 388 400 4 100 4 25 −      +       + = −       + +       + −       + = c y c y c y c y c L ) 7 (mod 388 4 4 24 ) 1600 100 ( 3+ + − + ++− ≡ c y c y c DY ) 7 (mod 4 4 2 3− + ++ ≡ c y c y DY

Referências

Documentos relacionados

No panorama internauta são vários os softwares à disposição do utilizador que servem para converter ficheiros PDF em flipbooks, que nada mais são que livros ou publicações

Este documento é cópia do original, assinado digitalmente por MILTON GOMES BAPTISTA RIBEIRO, liberado nos autos em 04/02/2021 às

DATA: 17/out PERÍODO: MATUTINO ( ) VESPERTINO ( X ) NOTURNO ( ) LOCAL: Bloco XXIB - sala 11. Horário Nº Trabalho Título do trabalho

Pela sociedade do nosso tempo: para que as pessoas não se deixem vencer pela tentação do ateísmo, do consumismo e do hedonismo, mas se esforcem por construir a vida de

- Se o estagiário, ou alguém com contacto direto, tiver sintomas sugestivos de infeção respiratória (febre, tosse, expetoração e/ou falta de ar) NÃO DEVE frequentar

Como foi visto, a primeira etapa do processo decisório de consumo é o reconhecimento da necessidade, com isso, observou-se que, nessa primeira etapa, os consumidores buscam no

Discutir os benefícios alcançados até o momento (físico, econômico, social, etc); discutir as estratégias que os usuários vêm utilizando para lidar com a

Com base nos resultados da pesquisa referente à questão sobre a internacionalização de processos de negócios habilitados pela TI com o apoio do BPM para a geração de ganhos para