Criptografia com Maple

Documentos relacionados
D OLJHLUD UDSRVD PDUURP VDOWRX VREUH R FDFKRUUR FDQVDGR 1

Autenticação por par de. chaves assimétricas. Bruno Follmann

Troca de chaves Diffie-Hellman Grupos finitos Grupos cíclicos

OTES07 Segurança da Informação Módulo 05c: Criptografia Assimétrica RSA e ECC

AULA 08 CRIPTOGRAFIA E SEGURANÇA DE DADOS CRIPTOGRAFIA ASSIMÉTRICA CHAVES E ALGORITMOS 03/03/2016 PROF. FABIANO TAGUCHI

, com k 1, p 1, p 2,..., p k números primos e α i, β i 0 inteiros, as factorizações de dois números inteiros a, b maiores do que 1.

MA14 - Aritmética Unidade 20 Resumo. Teoremas de Euler e de Wilson

Universidade do Minho

TOCI08 Segurança em Redes de Computadores Módulo 08: Criptografia Assimétrica RSA e ECC

Paralelização Eficiente para o Algoritmo Binário de Exponenciação Modular

Note-se que pelo Teorema de Euler. a φ(n) 1 (mod n) logo existe k nas condições da definição acima e. Raízes Primitivas. Ordem de um elemento

Criptografia. Criptografia de Chave Pública. Manuel Barbosa (mbb at dcc.fc.up.pt) 2018/2019

MATEMÁTICA DISCRETA ARITMÉTICA RACIONAL (6/6) Carlos Luz. EST Setúbal / IPS Maio 2012

Desvendando os mistérios do criptossistema RSA. Grasiele Cristiane Jorge. Pós-Doc - IMECC - UNICAMP

Complexidade de Algoritmos

PTC Aula 20. (Kurose, p ) (Peterson, p ) 14/06/ Princípios de criptografia

TESTES DE PRIMALIDADE

Números Primos e Criptografia RSA

Elementos de Matemática Finita ( ) Exercícios resolvidos

Teorema. Existe alguma raiz primitiva módulo n se, e só se, n = 2, n = 4, n = p k ou n = 2p k onde p é primo ímpar.

(Ciência de Computadores) 2005/ Diga quais dos conjuntos seguintes satisfazem o Princípio de Boa Ordenação

Folhas de exercícios

Existem infinitos números de Carmichael, mas não provaremos isso neste curso.

Lista de Exercícios 05 Álgebra Matricial

Álgebra Linear AL. Luiza Amalia Pinto Cantão. Depto. de Engenharia Ambiental Universidade Estadual Paulista UNESP

Elementos de Matemática Finita

MA14 - Aritmética Lista 1. Unidades 1 e 2

Este material é apenas um resumo de parte do conteúdo da disciplina.

Algoritmos criptográficos de chave pública

Já sabemos como determinar todas as soluções de uma equação diofantina linear, caso esta seja resolúvel. Para conguências temos:

Ordem dos Inteiros AULA. 4.1 Introdução. 4.2 Ordem Ordem dos Inteiros

Dado um inteiro positivo n, definimos U(n) como sendo o conjunto dos inteiros positivos menores que n e primos com n. Não é difícil ver que a

f(xnyn) = f(xyn) = f(xy) = f(x)f(y) = f(xn)f(yn).

MAT Álgebra I para Licenciatura 2 a Lista de exercícios

Criptografia simétrica e assimétrica

1 Potências e raízes em Aritmética Modular. Seja p primo e a um inteiro primo com p; a aplicação

S. C. COUTINHO. = 2n 2 r 2 m 1. Como 2 n 2 r = 2 r (2 n r 1) = 2 r (2 mq 1), então 2 n 2 r 2 m 1 = 2r (2 m 1)(2 mq ) Q = (2n 1) (2 r 1) 2 m 1

Fundamentos: Algoritmos, Inteiros e Matrizes. Inteiros e. Primos e. Divisor Comum. Inteiros e. Algoritmos. Teoria dos Centro de Informática UFPE

Márcio Antônio de Andrade Bortoloti

Segurança conceitos básicos. Sistemas Distribuídos

Respostas Aula 1 (POTI) = Produtos Notáveis

Análise I Solução da 1ª Lista de Exercícios

LISTA DE EXERCÍCIOS 2017

ANDRÉ VINÍCIUS SPINA NÚMEROS PRIMOS E CRIPTOGRAFIA

Representação de um conjunto de Matrizes Operações Produto de Matriz por escalar Transposição de Matrizes Simetrias Exercícios. Matrizes - Parte 1

NÚMEROS INTEIROS E CRIPTOGRAFIA UFRJ

SME Cálculo Numérico. Lista de Exercícios: Gabarito

Criptografia Quântica. Gustavo Thebit Pfeiffer Rodrigo Rodrigues Paim Vinicius Neves Motta

Inversão de Matrizes

Tópicos de Ambiente Web Segurança

MATEMÁTICA MÓDULO 11 DETERMINANTES. Professor Matheus Secco

Matemática Discreta. Introdução à Teoria de Números - Exercícios 1 o ano /2011

Álgebra Linear. Aula 02

Método dos Mínimos Quadrados Lineares

Unidade 2 - Matrizes. A. Hefez e C. S. Fernandez Resumo elaborado por Paulo Sousa. 9 de agosto de 2013

CRIVO QUADRÁTICO: UM ESTUDO DA OBTENÇÃO DE UM CONJUNTO DE NÚMEROS COMPLETAMENTE FATORADOS SOBRE UMA BASE DE FATORES

Equação e Fatoração MATEMÁTICA 8 ANO D PROF.: ISRAEL AVEIRO

Autovalores e Autovetores

O USO DA CRIPTOGRAFIA EM ÁUDIO

Lista 4. Esta lista, de entrega facultativa, tem três partes e seus exercícios versam sobre séries, funções contínuas e funções diferenciáveis em R.

Autovalores e Autovetores

1.3 Matrizes inversas ] [ 0 1] = [ ( 1) ( 1) ] = [1 0

Implementação de uma API para Criptografia Assimétrica Baseada em Curvas Elípticas

Avaliação e programa de Álgebra Linear

Polinômios de Legendre

1 Matrizes e Determinantes

Lista de Exercícios Nº 02 Tecnologia em Mecatrônica Prof.: Carlos Bezerra

Renato Martins Assunção

Aritmética dos Restos. Pequeno Teorema de Fermat. Tópicos Adicionais

Geometria anaĺıtica e álgebra linear

UNIVERSIDADE FEDERAL DO MATO GROSSO DO SUL INSTITUTO DE MATEMÁTICA MATEMÁTICA EM REDE NACIONAL MESTRADO PROFISSIONAL. Nivaldo Alves de Souza Marques

Álgebra Linear Semana 04

CIC 111 Análise e Projeto de Algoritmos II

Teste à Primalidade. (Método de Monte Carlo) Geração de Números Primos (Grandes)

São tabelas de elementos dispostos ordenadamente em linhas e colunas.

Interbits SuperPro Web

Transcrição:

Criptografia com Maple - Verão/2005 Fábio Borges & Renato Portugal Criptografia com Maple p.1/32

Simétrica versus Assimétrica Simétrica Criptografia com Maple p.2/32

Simétrica versus Assimétrica Simétrica E k (M) = C Criptografia com Maple p.2/32

Simétrica versus Assimétrica Simétrica E k (M) = C D k (C) = M Criptografia com Maple p.2/32

Simétrica versus Assimétrica Simétrica E k (M) = C D k (C) = M D k (E k (M)) = M Criptografia com Maple p.2/32

Simétrica versus Assimétrica Simétrica E k (M) = C D k (C) = M D k (E k (M)) = M D r (E k (M)) = S Criptografia com Maple p.2/32

Simétrica versus Assimétrica Simétrica E k (M) = C D k (C) = M D k (E k (M)) = M D r (E k (M)) = S Assimétrica Criptografia com Maple p.2/32

Simétrica versus Assimétrica Simétrica E k (M) = C D k (C) = M D k (E k (M)) = M D r (E k (M)) = S Assimétrica E a (M) = C Criptografia com Maple p.2/32

Simétrica versus Assimétrica Simétrica E k (M) = C D k (C) = M D k (E k (M)) = M D r (E k (M)) = S Assimétrica E a (M) = C D b (C) = M Criptografia com Maple p.2/32

Simétrica versus Assimétrica Simétrica E k (M) = C D k (C) = M D k (E k (M)) = M D r (E k (M)) = S Assimétrica E a (M) = C D b (C) = M D a (E b (M)) = M Criptografia com Maple p.2/32

Simétrica versus Assimétrica Simétrica E k (M) = C D k (C) = M D k (E k (M)) = M D r (E k (M)) = S Assimétrica E a (M) = C D b (C) = M D a (E b (M)) = M D r (E a (M)) = S Criptografia com Maple p.2/32

Simétrica Assimétrica Quantas chaves são necessárias? Criptografia com Maple p.3/32

Simétrica Assimétrica Quantas chaves são necessárias? Simétrica n(n 1) 2 Criptografia com Maple p.3/32

Simétrica Assimétrica Quantas chaves são necessárias? Simétrica n(n 1) 2 Assimétrica 2n Criptografia com Maple p.3/32

Simétrica Assimétrica Quantas chaves são necessárias? Simétrica n(n 1) 2 Assimétrica 2n Criptografia Simétrica Criptografia com Maple p.3/32

Simétrica Assimétrica Quantas chaves são necessárias? Simétrica n(n 1) 2 Assimétrica 2n Criptografia Simétrica Como distribuir e armazenar as chaves? Criptografia com Maple p.3/32

Simétrica Assimétrica Quantas chaves são necessárias? Simétrica n(n 1) 2 Assimétrica 2n Criptografia Simétrica Como distribuir e armazenar as chaves? Criptografia Assimétrica Criptografia com Maple p.3/32

Simétrica Assimétrica Quantas chaves são necessárias? Simétrica n(n 1) 2 Assimétrica 2n Criptografia Simétrica Como distribuir e armazenar as chaves? Criptografia Assimétrica Como garantir com quem se está comunicando? Criptografia com Maple p.3/32

Simétrica Ana Canal Seguro Edna Beth Criptografia com Maple p.4/32

Assimétrica Ana Edna Beth Criptografia com Maple p.5/32

Definição ϕ de Euler Seja m N e seja E(m) = {x N : x m e (x, m) = 1}. Usando #E para denotar o número de elementos. Definimos: ϕ : N N ϕ(m) = #E(m) Exemplo: ϕ(1) = 1, ϕ(2) = 1, ϕ(3) = 2,..., ϕ(27) = 18 ϕ(p) = p 1 Criptografia com Maple p.6/32

Dúvida ϕ(nm) = ϕ(n)ϕ(m)? ϕ(3) = 2 Criptografia com Maple p.7/32

Dúvida ϕ(nm) = ϕ(n)ϕ(m)? ϕ(3) = 2 ϕ(4) = 2 Criptografia com Maple p.7/32

Dúvida ϕ(nm) = ϕ(n)ϕ(m)? ϕ(3) = 2 ϕ(4) = 2 ϕ(12) = 4 Criptografia com Maple p.7/32

Dúvida ϕ(nm) = ϕ(n)ϕ(m)? ϕ(3) = 2 ϕ(4) = 2 ϕ(12) = 4 ϕ(9) = 6 Criptografia com Maple p.7/32

Dúvida ϕ(nm) = ϕ(n)ϕ(m)? ϕ(3) = 2 ϕ(4) = 2 ϕ(12) = 4 ϕ(9) = 6 ϕ(3) = 2 Criptografia com Maple p.7/32

Dúvida ϕ(nm) = ϕ(n)ϕ(m)? ϕ(3) = 2 ϕ(4) = 2 ϕ(12) = 4 ϕ(9) = 6 ϕ(3) = 2 ϕ(27) = 18 Criptografia com Maple p.7/32

RSA - Introdução ϕ = ϕ(pq) = (p 1)(q 1) (a, ϕ) = 1 ab 1 mod ϕ x ab x mod pq x Z Criptografia com Maple p.8/32

RSA - Iniciando Ana quer enviar uma mensagem para Beth Criptografia com Maple p.9/32

RSA - Iniciando Ana quer enviar uma mensagem para Beth Beth escolhe p = 71 e q = 97 calcula pq = 6887 depois escolhe a = 27 e calcula (27, ϕ) = 3 Criptografia com Maple p.9/32

RSA - Iniciando Ana quer enviar uma mensagem para Beth Beth escolhe p = 71 e q = 97 calcula pq = 6887 depois escolhe a = 27 e calcula (27, ϕ) = 3 Beth tenta a = 151 calcula (151, ϕ) = 1, depois calcula b = 6631 Criptografia com Maple p.9/32

RSA - Iniciando Ana quer enviar uma mensagem para Beth Beth escolhe p = 71 e q = 97 calcula pq = 6887 depois escolhe a = 27 e calcula (27, ϕ) = 3 Beth tenta a = 151 calcula (151, ϕ) = 1, depois calcula b = 6631 Esconde a e envia b e pq para Ana criptografar Criptografia com Maple p.9/32

RSA - Criptografando Com b = 6631 e pq = 6887 Ana calcula: Criptografia com Maple p.10/32

RSA - Criptografando Com b = 6631 e pq = 6887 Ana calcula: P 1 = 1214 "LN" Criptografia com Maple p.10/32

RSA - Criptografando Com b = 6631 e pq = 6887 Ana calcula: P 1 = 1214 "LN" P 2 = 0303 "CC" Criptografia com Maple p.10/32

RSA - Criptografando Com b = 6631 e pq = 6887 Ana calcula: P 1 = 1214 "LN" P 2 = 0303 "CC" C 1 = P b 1 mod pq = 6726 Criptografia com Maple p.10/32

RSA - Criptografando Com b = 6631 e pq = 6887 Ana calcula: P 1 = 1214 "LN" P 2 = 0303 "CC" C 1 = P b 1 mod pq = 6726 C 2 = P b 2 mod pq = 3306 Criptografia com Maple p.10/32

RSA - Criptografando Com b = 6631 e pq = 6887 Ana calcula: P 1 = 1214 "LN" P 2 = 0303 "CC" C 1 = P b 1 mod pq = 6726 C 2 = P b 2 mod pq = 3306 f : [1214, 303] [6726, 3306] Criptografia com Maple p.10/32

RSA - Decifrando Só Beth conhece a = 151 Criptografia com Maple p.11/32

RSA - Decifrando Só Beth conhece a = 151 C a 1 mod pq = 6726 a mod 6887 = 1214 Criptografia com Maple p.11/32

RSA - Decifrando Só Beth conhece a = 151 C a 1 mod pq = 6726 a mod 6887 = 1214 C a 1 mod pq = 3306 a mod 6887 = 303 Criptografia com Maple p.11/32

RSA - Decifrando Só Beth conhece a = 151 C1 a mod pq = 6726 a mod 6887 = 1214 C1 a mod pq = 3306 a mod 6887 = 303 α 1 : [12, 14, 3, 3] "" Criptografia com Maple p.11/32

RSA - Cifrando Ana quer enviar uma mensagem para Beth Criptografia com Maple p.12/32

RSA - Cifrando Ana quer enviar uma mensagem para Beth Ana tem pq = 5353 e b = 4591 Criptografia com Maple p.12/32

RSA - Cifrando Ana quer enviar uma mensagem para Beth Ana tem pq = 5353 e b = 4591 P 1 = 1214 "LN" Criptografia com Maple p.12/32

RSA - Cifrando Ana quer enviar uma mensagem para Beth Ana tem pq = 5353 e b = 4591 P 1 = 1214 "LN" P 2 = 0303 "CC" Criptografia com Maple p.12/32

RSA - Cifrando Ana quer enviar uma mensagem para Beth Ana tem pq = 5353 e b = 4591 P 1 = 1214 "LN" P 2 = 0303 "CC" C 1 = P1 b mod pq = 3665 Criptografia com Maple p.12/32

RSA - Cifrando Ana quer enviar uma mensagem para Beth Ana tem pq = 5353 e b = 4591 P 1 = 1214 "LN" P 2 = 0303 "CC" C 1 = P1 b mod pq = 3665 C 2 = P2 b mod pq = 4545 Criptografia com Maple p.12/32

RSA - Cifrando Ana quer enviar uma mensagem para Beth Ana tem pq = 5353 e b = 4591 P 1 = 1214 "LN" P 2 = 0303 "CC" C 1 = P1 b mod pq = 3665 C 2 = P2 b mod pq = 4545 f : [1214, 303] [3665, 4545] Criptografia com Maple p.12/32

RSA - Cifrando Ana quer enviar uma mensagem para Beth Ana tem pq = 5353 e b = 4591 P 1 = 1214 "LN" P 2 = 0303 "CC" C 1 = P1 b mod pq = 3665 C 2 = P2 b mod pq = 4545 f : [1214, 303] [3665, 4545] Ana envia [3665, 4545] Criptografia com Maple p.12/32

RSA - Decifrando Só Beth conhece a = 111 Criptografia com Maple p.13/32

RSA - Decifrando Só Beth conhece a = 111 C a 1 mod pq = 3665 a mod 5353 = 1214 Criptografia com Maple p.13/32

RSA - Decifrando Só Beth conhece a = 111 C a 1 mod pq = 3665 a mod 5353 = 1214 C a 1 mod pq = 4545 a mod 5353 = 0303 Criptografia com Maple p.13/32

RSA - Decifrando Só Beth conhece a = 111 C1 a mod pq = 3665 a mod 5353 = 1214 C1 a mod pq = 4545 a mod 5353 = 0303 α 1 : [12, 14, 3, 3] "" Criptografia com Maple p.13/32

Teste de Primalidade Se n é primo t n 1 1 mod n com (n, t) = 1 Criptografia com Maple p.14/32

Teste de Primalidade Se n é primo t n 1 1 mod n com (n, t) = 1 2 340 1 mod 341 é pseudoprimo na base 2 Criptografia com Maple p.14/32

Teste de Primalidade Se n é primo t n 1 1 mod n com (n, t) = 1 2 340 1 mod 341 é pseudoprimo na base 2 3 340 56 mod 341 Criptografia com Maple p.14/32

Teste de Primalidade Se n é primo t n 1 1 mod n com (n, t) = 1 2 340 1 mod 341 é pseudoprimo na base 2 3 340 56 mod 341 Existem 245 pseudoprimos na base 2 menores que um milhão Criptografia com Maple p.14/32

Teste de Primalidade Se n é primo t n 1 1 mod n com (n, t) = 1 2 340 1 mod 341 é pseudoprimo na base 2 3 340 56 mod 341 Existem 245 pseudoprimos na base 2 menores que um milhão A maioria não é pseudoprimo em outra base Criptografia com Maple p.14/32

Teste de Primalidade Se n é primo t n 1 1 mod n com (n, t) = 1 2 340 1 mod 341 é pseudoprimo na base 2 3 340 56 mod 341 Existem 245 pseudoprimos na base 2 menores que um milhão A maioria não é pseudoprimo em outra base Existe apenas 2163 Carmichael menores que 2.5 10 10 Criptografia com Maple p.14/32

Prêmios Número Prêmio($US) Situação Data http://www.rsasecurity.com/rsalabs/node.asp?id=209 RSA-576 $10,000 Fatorado 3/Dez/2003 RSA-640 $20,000 Não RSA-704 $30,000 Não RSA-768 $50,000 Não RSA-896 $75,000 Não RSA-1024 $100,000 Não RSA-1536 $150,000 Não RSA-2048 $200,000 Não Criptografia com Maple p.15/32

Escolhendo p e q Queremos determinar p e q a partir de n = pq Criptografia com Maple p.16/32

Escolhendo p e q Queremos determinar p e q a partir de n = pq Se os primos forem pertos e grandes Criptografia com Maple p.16/32

Escolhendo p e q Queremos determinar p e q a partir de n = pq Se os primos forem pertos e grandes x = p+q 2 e y = p q 2 Criptografia com Maple p.16/32

Escolhendo p e q Queremos determinar p e q a partir de n = pq Se os primos forem pertos e grandes x = p+q 2 e y = p q 2 n = pq = x 2 y 2 = (x + y)(x y) Criptografia com Maple p.16/32

Escolhendo p e q Queremos determinar p e q a partir de n = pq Se os primos forem pertos e grandes x = p+q 2 e y = p q 2 n = pq = x 2 y 2 = (x + y)(x y) para achar x e y escolhemos x = n então x 2 n deve ser um quadrado perfeito y 2 senão procuramos na vizinhança de x Criptografia com Maple p.16/32

Exemplo de Ataque Queremos determinar p e q a partir de n = 1520273 Criptografia com Maple p.17/32

Exemplo de Ataque Queremos determinar p e q a partir de n = 1520273 para achar x e y escolhemos x = 1520273 = 1233 Criptografia com Maple p.17/32

Exemplo de Ataque Queremos determinar p e q a partir de n = 1520273 para achar x e y escolhemos x = 1520273 = 1233 Então x 2 n = 16 = y 2 Criptografia com Maple p.17/32

Exemplo de Ataque Queremos determinar p e q a partir de n = 1520273 para achar x e y escolhemos x = 1520273 = 1233 Então x 2 n = 16 = y 2 Portanto p = 1233 4 e q = 1233 + 4 Criptografia com Maple p.17/32

Custo Computacional bits Máquina Memória 430 1 trivial 760 215,000 4 Gb 1020 342,000,000 170 Gb 1620 1.6 x 1015 120 Tb Máquina Pentium de 500 MHz. A coluna memória é a requerida em cada máquina. http://www.rsasecurity.com/rsalabs/node.asp?id=209 Criptografia com Maple p.18/32

Assinatura Digital a A é a chave secreta de Ana Criptografia com Maple p.19/32

Assinatura Digital a A é a chave secreta de Ana a B é a chave secreta de Beth Criptografia com Maple p.19/32

Assinatura Digital a A é a chave secreta de Ana a B é a chave secreta de Beth b x e n x = pq suas respectivas chaves públicas Criptografia com Maple p.19/32

Assinatura Digital a A é a chave secreta de Ana a B é a chave secreta de Beth b x e n x = pq suas respectivas chaves públicas E aa (M) Criptografia com Maple p.19/32

Assinatura Digital a A é a chave secreta de Ana a B é a chave secreta de Beth b x e n x = pq suas respectivas chaves públicas E aa (M) E ba (M) Criptografia com Maple p.19/32

Assinatura Digital a A é a chave secreta de Ana a B é a chave secreta de Beth b x e n x = pq suas respectivas chaves públicas E aa (M) E ba (M) E aa (E bb (M)) se n A > n B Criptografia com Maple p.19/32

Assinatura Digital a A é a chave secreta de Ana a B é a chave secreta de Beth b x e n x = pq suas respectivas chaves públicas E aa (M) E ba (M) E aa (E bb (M)) se n A > n B E bb (E aa (M)) se n A < n B Criptografia com Maple p.19/32

Assinatura Digital a A é a chave secreta de Ana a B é a chave secreta de Beth b x e n x = pq suas respectivas chaves públicas E aa (M) E ba (M) E aa (E bb (M)) se n A > n B E bb (E aa (M)) se n A < n B E ba (E ab (M)) se n A > n B Criptografia com Maple p.19/32

Assinatura Digital a A é a chave secreta de Ana a B é a chave secreta de Beth b x e n x = pq suas respectivas chaves públicas E aa (M) E ba (M) E aa (E bb (M)) se n A > n B E bb (E aa (M)) se n A < n B E ba (E ab (M)) se n A > n B E ab (E ba (M)) se n A < n B Criptografia com Maple p.19/32

Randômico x s y mod z Criptografia com Maple p.20/32

Randômico x s y mod z Dado x, s e z temos y é pseudo-randômico Criptografia com Maple p.20/32

Randômico x s y mod z Dado x, s e z temos y é pseudo-randômico Dado x, y e z temos s secreto Criptografia com Maple p.20/32

A Troca de Chaves de Diffie-Hellman Ana escolhe p, q e 0 < k R t.q. (k, pq) = 1 e envia k e pq para Beth Criptografia com Maple p.21/32

A Troca de Chaves de Diffie-Hellman Ana escolhe p, q e 0 < k R t.q. (k, pq) = 1 e envia k e pq para Beth depois escolhe 0 < r R, calcula k r e envia o resultado para Beth mantendo r em segredo Criptografia com Maple p.21/32

A Troca de Chaves de Diffie-Hellman Ana escolhe p, q e 0 < k R t.q. (k, pq) = 1 e envia k e pq para Beth depois escolhe 0 < r R, calcula k r e envia o resultado para Beth mantendo r em segredo Beth escolhe 0 < s R, calcula k s e envia o resultado para Ana mantendo s em segredo Criptografia com Maple p.21/32

A Troca de Chaves de Diffie-Hellman Ana escolhe p, q e 0 < k R t.q. (k, pq) = 1 e envia k e pq para Beth depois escolhe 0 < r R, calcula k r e envia o resultado para Beth mantendo r em segredo Beth escolhe 0 < s R, calcula k s e envia o resultado para Ana mantendo s em segredo Ambas tem b A = (k r ) s = (k s ) r, mas Ana verifica se b A é um expoente válido (b A, ϕ), se não for inicia novamente o processo Criptografia com Maple p.21/32

Exemplo de Diffie-Hellman Ana escolhe 83, 101 e k = 256 calcula (8383, 256) = 1 e envia k e pq para Beth Criptografia com Maple p.22/32

Exemplo de Diffie-Hellman Ana escolhe 83, 101 e k = 256 calcula (8383, 256) = 1 e envia k e pq para Beth depois escolhe r = 91, calcula k r = 2908 e envia o resultado para Beth mantendo r em segredo Criptografia com Maple p.22/32

Exemplo de Diffie-Hellman Ana escolhe 83, 101 e k = 256 calcula (8383, 256) = 1 e envia k e pq para Beth depois escolhe r = 91, calcula k r = 2908 e envia o resultado para Beth mantendo r em segredo Beth escolhe s = 4882, calcula k s = 1754 e envia o resultado para Ana mantendo s em segredo Criptografia com Maple p.22/32

Exemplo de Diffie-Hellman Ana escolhe 83, 101 e k = 256 calcula (8383, 256) = 1 e envia k e pq para Beth depois escolhe r = 91, calcula k r = 2908 e envia o resultado para Beth mantendo r em segredo Beth escolhe s = 4882, calcula k s = 1754 e envia o resultado para Ana mantendo s em segredo Ambas tem b A = 2908 s = 1754 r = 6584, mas Ana verifica que b A não é um expoente válido (6584, 8200) = 8 Criptografia com Maple p.22/32

Cont. Exemplo de Diffie-Hellman Suponha que Ana mantém 83, 101 e k = 256 Criptografia com Maple p.23/32

Cont. Exemplo de Diffie-Hellman Suponha que Ana mantém 83, 101 e k = 256 depois escolhe r = 17, calcula k r = 5835 e envia o resultado para Beth mantendo r em segredo Criptografia com Maple p.23/32

Cont. Exemplo de Diffie-Hellman Suponha que Ana mantém 83, 101 e k = 256 depois escolhe r = 17, calcula k r = 5835 e envia o resultado para Beth mantendo r em segredo Beth escolhe s = 109, calcula k s = 1438 e envia o resultado para Ana mantendo s em segredo Criptografia com Maple p.23/32

Cont. Exemplo de Diffie-Hellman Suponha que Ana mantém 83, 101 e k = 256 depois escolhe r = 17, calcula k r = 5835 e envia o resultado para Beth mantendo r em segredo Beth escolhe s = 109, calcula k s = 1438 e envia o resultado para Ana mantendo s em segredo Ambas tem b A = 5835 s = 1438 r = 3439, e Ana verifica que b A é um expoente válido (3439, 8200) = 1. Criptografia com Maple p.23/32

Problema do Logaritmo Discreto Com k, pq, k r e k s Criptografia com Maple p.24/32

Problema do Logaritmo Discreto Com k, pq, k r e k s Poderia calcular s ou r e depois b A Criptografia com Maple p.24/32

Intruso e o Logaritmo Discreto Com k = 256, pq = 8383, k r = 5835 e k s = 1438 Criptografia com Maple p.25/32

Intruso e o Logaritmo Discreto Com k = 256, pq = 8383, k r = 5835 e k s = 1438 o intruso calcula 256 109 = 1438 Criptografia com Maple p.25/32

Intruso e o Logaritmo Discreto Com k = 256, pq = 8383, k r = 5835 e k s = 1438 o intruso calcula 256 109 = 1438 s = 109 Criptografia com Maple p.25/32

Intruso e o Logaritmo Discreto Com k = 256, pq = 8383, k r = 5835 e k s = 1438 o intruso calcula 256 109 = 1438 s = 109 b A = (k r ) s = 5835 109 = 3439 Criptografia com Maple p.25/32

Último Slide Obrigado. Quaisquer sugestões serão bem-vindas. www.lncc.br/borges Criptografia com Maple p.26/32

Teorema ϕ(nm) = ϕ(n)ϕ(m) Sejam m, n N tais que (m, n) = 1. Então ϕ(nm) = ϕ(n)ϕ(m). Prova: Sejam x 1,..., x ϕ(n) e x 1,..., x ϕ(m) sistemas de resíduo módulo n e m resp. Mostraremos que o conjunto B da combinações lineares b ij = x i m + y j n forma um sistema resíduo módulo mn. Criptografia com Maple p.27/32

Precisamos 1. (b ij, mn) = 1 2. b ij b kl mod mn se i k ou j l 3. Se (a, mn) = 1 então existe b ij B : a b ij mod mn 1) b ij = x i m + y j n Criptografia com Maple p.28/32

Precisamos: item 2 2) Assumindo que mx i + ny j mx k + ny l mod mn então m(x i x k ) n(y l y j ) mod mn Como m mn n(y l y j ) 0 mod n como y l y j mod m Implica que j = l. Da mesma forma i = k Criptografia com Maple p.29/32

Precisamos: item 3 3) Como a = xm + yn e (a, mn) = 1 temos que (a, m) = (a, n) = 1, concluímos que (m, y) = (n, x) = 1 Portanto existe índices i e j tais que y y i mod m e x x i mod n ny ny i mod nm e mx mx i mod mn Portanto a = mx + ny mx i + ny j = b ij mod mn Criptografia com Maple p.30/32

Teorema de Euler Sejam a Z e m N, tais que (a, m) = 1. Então a ϕ(m) 1 mod m Prova: Seja {r 1,..., r ϕ(m) } um sistema reduzido de resíduos módulo m. Como (a, m) = 1 temos {ar 1,..., ar ϕ(m) }, assim para um dado i existe um j tal que ar i r j mod m ar 1..., ar ϕ(m) r 1... r ϕ(m) a ϕ(m) r 1..., r ϕ(m) r 1... r ϕ(m) mod m mod m QED Criptografia com Maple p.31/32

Teorema da Inversa do RSA Sejam p, q P : p q e ϕ = ϕ(pq). Se a, b Z t.q. ab 1 mod ϕ x ab x mod pq x Z Prova: Se ab 1 mod ϕ então ab = 1 + kϕ com k Z, logo x ab = x 1+kϕ = x(x kϕ ) = x(x p 1 ) k(q 1) Se (x, p) = 1 então x p 1 1 mod p. Portanto x ab x(1) k(q 1) x mod p. Idem para x ab x mod q. Portanto pq (x ab x) x ab x mod pq QED Criptografia com Maple p.32/32