Eu procurei na internet pela calculadora RSA Online e também pelo exemplo do algoritmo RSA e encontrei esta ferramenta on-line de calculadora RSA e esta site que menciona o algoritmo como abaixo:
RSA Algorithm Example
Choose p = 3 and q = 11 Compute n = p * q = 3 * 11 = 33 Compute φ(n) = (p - 1) * (q - 1) = 2 * 10 = 20 Choose e such that 1 < e < φ(n) and e and n are coprime.
Let e = 7 Compute a value for d such that (d * e) % φ(n) = 1. One solution is d = 3 [(3 * 7) % 20 = 1]
Public key is (e,n) => (7, 33)
Private key is (d, n) => (3, 33)
The encryption of m = 2 is c = 2^7 % 33 = 29
The decryption of c = 29 is m = 29^3 % 33 = 2
Como quero testar outro exemplo sozinho, seleciono outro par para p e q e executei as etapas acima:
p=4259 and q=6053 ==> n=p*q=25779727
φ(n)=(p-1)*(q-1)=25769416
And as GCD(23421481,25779727)=1, I select e=23421481
Now if I want to encrypt '1', its encryption is (1^23421481)%25779727
É óbvio que (1^23421481)%25779727=1
Mas quando eu uso a ferramenta de calculadora on-line, esta é a saída:
Como você vê, ele retorna 10098474
como o valor de criptografia de 1
!
Q1: Por quê? O que há de errado com as etapas que fiz manualmente para calcular o valor de criptografia?
Q2: Como este site calcula essa expressão para outro número (exceto 1)? Eu acho que 2^23421481
é um número muito grande para esse tipo de ferramenta on-line para calcular em uma parte do segundo !! (Eu tentei calcular 2 ^ 23421481 usando o wolfram-alpha. Mesmo este grande site retorna tempo!): D
Tags encryption rsa