RSA
Mit diesem Tool lässt sich die RSA Verschlüsselung Schritt-für-Schritt durchführen.
Schlüssel generieren
Schritt 1
Als erstes müssen die zwei unterschiedlichen Primzahlen p und q ausgewählt werden.
Primzahlgenerator
Schritt 2
Als nächstes berechnen wir die Zahl n
, indem wir die Zahlen p
und q
multiplizieren. p * q = n
N berechnen
Schritt 3
Nun wird die Zahl e bestimmt. Dies geht, indem man ggT(e, (p-1)*(q-1)) = 1
ausrechnet.
e berechnen
Schritt 4
Dann wird die Zahl d
berechnet. e*d mod ((p-1)*(q-1)) = 1
Das Ergebnis aus (p-1)*(q-1)
wird in diesem Beispiel a
genannt.
Die Zahl d
wird dein privater Schlüssel sein.
a berechnen
d berechnen
function calcD(e, a, d) {
while ((e*d % a) != 1) {
d++;
}
return d;
}
Zusammenfassung
Fast fertig!
Dein privater Schlüssel besteht aus der Zahl d
. Dein öffentlicher Schlüssel setzt sich aus den Zahlen e
und N
zusammen.
Ver- und entschlüsseln
Nun, wo du dein RSA Schlüsselpaar erzeugt hast, kannst du den öffentlichen Schlüssel verteilen und deinen Freunden geben. Der private Schlüssel bleibt geheim! Mit den Schlüsseln Texte verschlüsseln und wieder entschlüsseln kannst du im nächsten Teil machen.
Klartext mit öffentlichem Schlüssel verschlüsseln
Um Texte zu verschlüsseln, musst du sie erst in Zahlen umwandeln. Dies kann man zum Beispiel bewerkstelligen, indem man als Zahl den ASCII Wert des entsprechenden Buchstaben nimmt. In der Realität ist dieser Vorgang natürlich etwas komplexer.
Um den Klartext zu verschlüsseln, wird er zunächst mit e
potenziert, dann wird das Ergebnis mod N
gerechnet.
Also Geheimtext = Klartexte mod N
Verschlüsseln
Geheimtext mit privatem Schlüssel entschlüsseln
Um Texte zu entschlüsseln, die vorher mit deinem öffentlichen Schlüssel verschlüsselt wurden, zu entschlüsseln, musst du zuerst den Geheimtext mit d
potenzieren und dann mod N
nehmen.
Also Klartext = Geheimtextd mod N
Entschlüsseln
Feedback
Falls du Feedback, Verbesserungsvorschläge oder Korrekturen hast, kannst du mir gerne eine Mail an schreiben.