A RSA é um criptosistema para encriptação de chaves públicas, e é amplamente utilizado para garantir dados sensíveis, especialmente quando é enviado através de uma rede insegura como a Internet.
---------------------------------------- Popularidade da RSA: ----------------------------------------
A RSA obtém a sua segurança da dificuldade de factoring de grandes números inteiros que são o produto de dois grandes números primos. Multiplicar estes dois números é fácil, mas determinar os números primos originais do total- factoring - é considerado inviável devido ao tempo que levaria mesmo usando os super computadores de hoje.
O algoritmo de geração de chaves pública e privada é a parte mais complexa da criptografia RSA. Dois grandes números primos, p e q, são gerados usando o algoritmo de teste de primalidade Rabin-Miller. Um módulo n é calculado multiplicando p e q. Este número é utilizado tanto pelas chaves públicas como privadas e fornece a ligação entre elas. O seu comprimento, geralmente expresso em pedaços, é chamado de comprimento chave. A chave pública consiste no modulus n, e um expoente público, e, que normalmente é definido em 65537, uma vez que é um número primo que não é muito grande. A figura e não tem de ser um número primo secretamente selecionado, uma vez que a chave pública é partilhada com todos. A chave privada consiste no módulo n e no expoente privado d, que é calculado usando o algoritmo euclidano estendido para encontrar o inverso multiplicativo em relação ao totient de n.
---------------------------------------- Exemplo ----------------------------------------
Alice gera as suas teclas RSA selecionando dois primos: p=11 e q=13. O módulo n=p×q=143. O totient de n ϕ(n)=(p&menos;1)x (q&menos;1)=120. Ela escolhe 7 para a sua chave pública RSA e calcula a sua chave privada RSA usando o Algoritmo Euclidano Estendido que lhe dá 103.
Bob quer enviar a Alice uma mensagem encriptada M para que obtenha a sua chave pública RSA (n, e) que neste exemplo é (143, 7). A sua mensagem de texto simples é apenas o número 9 e é encriptada no texto C da seguinte forma:
C = M^e mod n = 97 mod 143 = 48
Então, a cifra a ser enviada é 48.
Quando Alice recebe a mensagem de Bob, ela a desencripta usando a sua chave privada RSA (d, n) da seguinte forma:
M = C^d mod n = 48103 mod 143 = 9
Portanto, a mensagem recebida é 9.
história da versão
- Versão 1.0 postado em 2016-09-13
Detalhes do programa
- Categoria: Educação > Ferramentas de Ensino e Formação
- Editor: Unreal
- Licença: Grátis
- Preço: N/A
- Versão: 1.0
- Plataforma: android