180 likes | 342 Views
RSA. Dornélio Mori Ney Bermudes. Agenda. Origem e Definição Fundamentação Matemática O algoritmo Complexidade Conclusão e trabalhos futuros Referências. Origem e Definição. Inventado por Ron Rivest, Adi Chamir e Len Adleman e publicado em 1977
E N D
RSA Dornélio Mori Ney Bermudes
Agenda • Origem e Definição • Fundamentação Matemática • O algoritmo • Complexidade • Conclusão e trabalhos futuros • Referências
Origem e Definição • Inventado por Ron Rivest, Adi Chamir e Len Adleman e publicado em 1977 • Usado para prover privacidade e garantir a autenticidade dos dados digitais • Baseia na diferença drástica entre, a facilidade de encontrar números primos grandes e a dificuldade de fatorar o produto de dois números primos grandes.
Fundamentação Matemática • O Algoritmo RSA utiliza Exponenciação e Aritmética Modular para codificar e decodificar a informação. • Antes de abordar o Algoritmo RSA vamos considerar, como exemplo, um processo semelhante de Encriptação que utiliza a equação: (1). C = Me mod N • M representa a informação que se deseja criptografar • C é o texto cifrado através desse processo.
Fundamentação Matemática • O processo de Decriptação é obtido através de um método semelhante ao de encriptação, cuja função é realizar uma operação inversa à que foi utilizada na codificação. Neste caso: (2). M = Cd mod N • Tendo em vista que as equações (1) e (2) devem realizar funções inversas, é preciso que haja uma escolha apropriada de d e e para que estas operações se processem.
Fundamentação Matemática • Neste campo algébrico, temos que as operações de soma e multiplicação usando a função módulo 11 são bem definidas. • Deve-se notar que o resultado das operações é sempre um número pertencente ao conjunto {0, 1, ... N-1}, comprovando a propriedade de fechamento das operações módulo N sobre este conjunto finito.
Fundamentação Matemática • Além das operações de soma e multiplicação módulo N, é também possível definir a operação de Exponenciação.
Fundamentação Matemática • Como podemos observar, a periodicidade de repetição, é de N - 1. Isto acontece sempre que N for um número primo, também conhecido como "Pequeno Teorema de Fermat".
Fundamentação Matemática • Para que seja permitida a decriptografia de mensagens, é necessário que sejam atendidas as condições das equações (1) e (2). Substituindo a segunda equação na primeira, temos: M = [Me mod N]d mod N ou M = Mde mod N
O algoritmo • Selecione ao acaso dois números primos grandes p e q, tais que p ≠ q. os primos p e q podem ter, por exemplo 512 bits cada um. • Calcule n pela equação n = pq. • Selecione um inteiro ímpar pequeno e tal que ele seja primo em relação a φ(n) que é representado por (p – 1)(q – 1). • Calcule d como o inverso multiplicativo de e, módulo φ(n). • Publique o par P = (e, n) como sua chave pública RSA. • Guarde em segredo o par S = (d, n) como sua chave secreta RSA.
O algoritmo (2) 13 2 3 7 8 12 7 8 12 13 2 3 P(M) = Me (mod n) S(C) = Cd (mod n)
Complexidade • Codificar e decodificar:2 · log2(e) para cada uma dessas operações (sendo que na decodificação o e será substituído pelo d). • Encontrando grandes números primos: (ln10n)/2, onde n é o número de dígitos. • Definir e a partir de d e ø(n): o custo é menor que log2(n).
Complexidade (2) • para a quebra da segurança desse algoritmo o método de fatoração seria uma solução, porém o custo desses algoritmos é muito alto. • Na época em que o artigo foi escrito, para se fatorar uma chave com n=500, levaria 4.2 x 1025 anos para se terminar a tarefa.
Conclusão e trabalhos futuros • Nota-se a importância da contribuição feita pelos desenvolvedores do RSA, através de uma proposta sólida e com um bom nível de segurança • Estudo sobre as tentativas já catalogadas de quebra de segurança deste algoritmo • Novas variações de RSA que atualmente existem no mercado • Um estudo mais aprofundado sobre os fundamento matemáticos que nortearam o desenvolvimento deste algoritmo
Referências D. Boneh, “Twenty years of attacks on the RSA cryptosystem,” Notices of the American Mathematical Society (AMS), Vol. 46, No. 2, pp. 203-213, 1999. Rivest, R. L., Shamir, A., and Adleman, L., “A Method for Obtaining digital Signatures and Public-key Cryptosystems,” communications of the ACM 21 (1978), pp.120-126. Cormen, Thomas H, Leiserson , Charles L.,Rivest, Ronald L., and Stein, Clifford, “Algoritmos: Teoris e Prática.” Campus, 2002.