19
Números primos, Teoremas de Fermat e Euler, Função Totiente IA012 A Segurança em Comunicação de Dados Andre Felipe N. Dainese Campinas, 20 de Abril de 2012

Números primos, Teoremas de Fermat e Euler, Função Totientemarco/cursos/ia012_14_1/slides/primos_e… · Números Primos Relembrando: łNúmeros primos só são divisíveis por

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Números primos, Teoremas de Fermat e Euler, Função Totientemarco/cursos/ia012_14_1/slides/primos_e… · Números Primos Relembrando: łNúmeros primos só são divisíveis por

Números primos, Teoremas de

Fermat e Euler, Função Totiente

IA012 A

Segurança em Comunicação de Dados

Andre Felipe N. Dainese

Campinas, 20 de Abril de 2012

Page 2: Números primos, Teoremas de Fermat e Euler, Função Totientemarco/cursos/ia012_14_1/slides/primos_e… · Números Primos Relembrando: łNúmeros primos só são divisíveis por

Sumário

�Números primos

�Teorema de Fermat

�Função Totiente

�Teorema de Euler

�Exercícios

�Referências Bibliográficas

IA012A – Segurança em comunicação de dados

Page 3: Números primos, Teoremas de Fermat e Euler, Função Totientemarco/cursos/ia012_14_1/slides/primos_e… · Números Primos Relembrando: łNúmeros primos só são divisíveis por

Números Primos

Relembrando:

� Números primos só são divisíveis por ele mesmo e por 1.

� Dois números são considerados relativamente primos se eles não possuírem divisores comuns além do 1. Isto é, o máximo divisor comum é 1.

IA012A – Segurança em comunicação de dados

Page 4: Números primos, Teoremas de Fermat e Euler, Função Totientemarco/cursos/ia012_14_1/slides/primos_e… · Números Primos Relembrando: łNúmeros primos só são divisíveis por

IA012A – Segurança em comunicação de dados

Page 5: Números primos, Teoremas de Fermat e Euler, Função Totientemarco/cursos/ia012_14_1/slides/primos_e… · Números Primos Relembrando: łNúmeros primos só são divisíveis por

Quão grande são os números primos no RSA?

� 1999: Chave RSA 512 bits (i.e, dois primos de 256 bits) foi fatorada em 7 meses;

RSA Laboratories atualmente recomenda:

1. Chave 768bits para informações menos

valiosas;

2. Chave 1024bits para uso corporativo;

3. Chave 2048bits para informações

extremamente valiosas, como chaves

utilizadas por entidades certificadoras.

IA012A – Segurança em comunicação de dados

Page 6: Números primos, Teoremas de Fermat e Euler, Função Totientemarco/cursos/ia012_14_1/slides/primos_e… · Números Primos Relembrando: łNúmeros primos só são divisíveis por

Qual o impacto em dobrar o tamanho de chave RSA?

Na média, dobrar o tamanho da chave RSA resulta no seguinte fator de aumento de tempo ou processamento:

1. Operações com chave pública: 4 vezes;

2. Operações com chave privada: 8 vezes;

3. Geração de chave: 16 vezes.

IA012A – Segurança em comunicação de dados

Page 7: Números primos, Teoremas de Fermat e Euler, Função Totientemarco/cursos/ia012_14_1/slides/primos_e… · Números Primos Relembrando: łNúmeros primos só são divisíveis por

Pequeno Teorema de Fermat

� Base para diversos testes de primalidade

modernos;

� Determinação de restos de divisões;

� Auxílio na resolução de outros problemas.

IA012A – Segurança em comunicação de dados

Page 8: Números primos, Teoremas de Fermat e Euler, Função Totientemarco/cursos/ia012_14_1/slides/primos_e… · Números Primos Relembrando: łNúmeros primos só são divisíveis por

Pequeno Teorema de Fermat

� Dado um número primo p e um inteiro

positivo a, temos que, se a não for divisível

por p:

� Dado um número primo p e um inteiro

positivo a, temos que:

IA012A – Segurança em comunicação de dados

Page 9: Números primos, Teoremas de Fermat e Euler, Função Totientemarco/cursos/ia012_14_1/slides/primos_e… · Números Primos Relembrando: łNúmeros primos só são divisíveis por

Exemplo

� Prove que 23 é primo.

Tomando a = 2; p = 23; temos que achar que:

Temos que:

Dividindo 2048 por 23, resulta em 89 com resto um.

Logo,

Finalmente, se ,

Assim, 23 é primo!

IA012A – Segurança em comunicação de dados

Page 10: Números primos, Teoremas de Fermat e Euler, Função Totientemarco/cursos/ia012_14_1/slides/primos_e… · Números Primos Relembrando: łNúmeros primos só são divisíveis por

Pseudoprimos

� Alguns números, apesar de não serem primos, satisfazem o pequeno Teorema de Fermat.

� Alguns satisfazem para alguns valores de a, enquanto outros o fazem para quaisquer valores de a que são relativamente primos à este p.

� Estes números são chamados de pseudoprimos e são uma falha do algoritmo de Fermat.

IA012A – Segurança em comunicação de dados

Page 11: Números primos, Teoremas de Fermat e Euler, Função Totientemarco/cursos/ia012_14_1/slides/primos_e… · Números Primos Relembrando: łNúmeros primos só são divisíveis por

Exemplo

Testando o número 91 para primalidade..

� Usando a = 3, p = 91, temos:

� Dividindo 729 por 91, resulta em 8, resto 1. Assim,

� Logo,

� Mas..

IA012A – Segurança em comunicação de dados

Page 12: Números primos, Teoremas de Fermat e Euler, Função Totientemarco/cursos/ia012_14_1/slides/primos_e… · Números Primos Relembrando: łNúmeros primos só são divisíveis por

Pseudoprimos

� Ao lado, os menores

pseudoprimos para as

100 primeiras bases a.

IA012A – Segurança em comunicação de dados

Page 13: Números primos, Teoremas de Fermat e Euler, Função Totientemarco/cursos/ia012_14_1/slides/primos_e… · Números Primos Relembrando: łNúmeros primos só são divisíveis por

Função Totiente de Euler

� Função importante para o Teorema de

Euler;

� Utilizada na montagem de chaves do

algoritmo RSA.

IA012A – Segurança em comunicação de dados

Page 14: Números primos, Teoremas de Fermat e Euler, Função Totientemarco/cursos/ia012_14_1/slides/primos_e… · Números Primos Relembrando: łNúmeros primos só são divisíveis por

Função Totiente de Euler

� A função Totiente, escrita como , é definida

como sendo o número de positivos inteiros

menores que n que são relativamente primos à n.

� Exemplos:

IA012A – Segurança em comunicação de dados

Page 15: Números primos, Teoremas de Fermat e Euler, Função Totientemarco/cursos/ia012_14_1/slides/primos_e… · Números Primos Relembrando: łNúmeros primos só são divisíveis por

Função Totiente de Euler

IA012A – Segurança em comunicação de dados

Propriedades:

� Se n é primo,

� Tendo p e q,

Page 16: Números primos, Teoremas de Fermat e Euler, Função Totientemarco/cursos/ia012_14_1/slides/primos_e… · Números Primos Relembrando: łNúmeros primos só são divisíveis por

Função Totiente de Euler

IA012A – Segurança em comunicação de dados

Page 17: Números primos, Teoremas de Fermat e Euler, Função Totientemarco/cursos/ia012_14_1/slides/primos_e… · Números Primos Relembrando: łNúmeros primos só são divisíveis por

Teorema de Euler

IA012A – Segurança em comunicação de dados

� Generalização do Teorema de Fermat;

� Importante base matemática do

algoritmo RSA;

� Auxílio na resolução de outros problemas.

Page 18: Números primos, Teoremas de Fermat e Euler, Função Totientemarco/cursos/ia012_14_1/slides/primos_e… · Números Primos Relembrando: łNúmeros primos só são divisíveis por

Teorema de Euler

� O Teorema de Euler afirma que , dado a e n inteiros positivos, se eles forem relativamente primos entre si:

� Forma alternativa: Dado a e n inteiros positivos:

IA012A – Segurança em comunicação de dados

Page 19: Números primos, Teoremas de Fermat e Euler, Função Totientemarco/cursos/ia012_14_1/slides/primos_e… · Números Primos Relembrando: łNúmeros primos só são divisíveis por

Exemplo

� Seja

� Temos que

� De fato, dividindo 81 por 10, o resultado é

8, com resto 1.

IA012A – Segurança em comunicação de dados