Hier werden alle Tools für die RSA-Rechenoperationen bereitgestellt.
Hinweis: Damit das in Javascript ordentlich funktioniert,
dürfen für p, q und M maximal 4-stellige Zahlen gewählt werden.
e kann wie üblich mit e=65537 belegt werden.
Eine Liste aller Primzahlen bis 100.000 findet man auf
Wikibooks: Tabelle der Primzahlen
Die Benennung der Variablen und der Beispiel-Werte richtet sich nach dem Buch "Geheime Botschaften" von Simon Singh (und dort der Anhang "Die Mathematik von RSA", S. 282-283.)
Geheime Botschaften von Simon Singh auf Wikipedia
Hinweis: φ ist der griechische Buchstabe "phi".
berechnet N = p*q
und φ = (p-1)*(q-1)
Beispiel:
p=17 und q=11
Dann ist das Ergebnis:
N = 17*11 = 187 φ = (17-1)*(11-1) = 160
p = q =
Ergebnis:
N =
φ =
berechnet C = M^e mod N
Dafür wird effizient potenziert und Modulo gerechnet.
Beispiel:
M=88 und e=7
Dann ist das Ergebnis:
C = 88^7 mod 187 = 11
Hinweis: üblicherweise nimmt man e = 65537
M = e = N =
Ergebnis:
C =
Mit Modular Inverse kann man d berechnen.
Für d gilt:
e*d mod φ = 1
Beispiel:
7*d mod 160 = 1
Dann ist das Ergebnis:
d = 23
Hinweis: üblicherweise nimmt man e = 65537
e = φ =
Ergebnis:
d =
"Me" steht hier für die entschlüsselte Nachricht.
berechnet Me = C^d mod N
Beispiel:
C = 11; d = 23; N = 187
Dann ist das Ergebnis:
Me = 11^23 mod 187 = 88
C = d = N =
Ergebnis:
Me =