Java -Konsolenprogramme zur Veranschaulichung des RSA - Verfahrens


Neben dem Skript zum Thema Kryptographie habe ich mich auch damit beschäftigt, wie die verschiedenen Verschlüsselungsarten
mit Hilfe des Computers umsetzbar sind. Im Vordergrund steht die Umsetzung des RSA-Verfahrens. Um die Möglichkeiten eines
normalen PCs nicht zu überfordern, müssen allerdings Einschränkungen in Kauf genommen werden.
Auf die Verwendung sehr großer Primzahlen muss man verzichten. Deshalb dienen die folgenden Programme lediglich der Anschauung.


Die Programme wurden mit dreistelligen Primzahlen ausgetestet. Der zweite Teil des öffentlichen Schlüssels sollte eine kleinere Primzahl sein.
Der zu verschlüsselnde Text sollte aus einem nicht allzu langen Wort bestehen.
Bei großen Primzahlen ist das Programm irgendwann überfordert ist, da die Rechenkapazität nicht ausreicht.
Wann das der Fall ist, kann ich aber nicht genau angeben.
Die Programme wurden mit dem Java-Editor von Gerhard Röhner erstellt. Dabei wurde in der vorliegenden Fassung kein Wert
auf gute Strukturierung bzw. Codeoptimierung gelegt. Vieles ist durch try and error entstanden.
Deshalb erhebe ich keinen Anspruch vorbildlichen Codeaufbau. Priorität hatte, dass die Programme funktionieren und ihren Zweck erfüllen.
Diese Einschränkung muss ich als Programmierlehrer selbstverständlich machen.
Der Quelltext der Programme kann unter den Links heruntergeladen werden.

Programme *.java Inhalt Anmerkung
RSA Das Programm berechnet den public key und verschlüsselt ein einzelnes Zeichen.
Anschließend berechnet das Programm den private key und entschlüsselt das Zeichen wieder.
Bei Eingabe einer nicht teilerfremden Zahl zu Phi erscheint nur eine Meldung.
Es erfolgt kein Abbruch.
RSA1 Wie RSA, allerdings kann hier ein Wort, dass aus mehreren Zeichen besteht, verschlüsselt und wieder entschlüsselt werden.
Ben Bietet ein Menü mit 3 Optionen:
1. Erzeugung des öffentlichen Keys
2. Entschlüsselung eines Geheimtexts
3. Suche nach Primzahlen
Bei Option 2 muss Ben noch den Wert für das Eulersche Phi (p-1)(q-1) eingeben.
Dieser wird aber bei der Berechnung des public keys mit angezeigt.
Sara Unter Eingabe der beiden Teile des public keys kann ein Wort verschlüsselt werden. Es werden die Schlüsselcodes jedes Zeichens angezeigt. Beide Teile des public keys müssen zuvor vom Programm ‚Ben' erfragt werden.
Signatur Der Absender einer Nachricht erzeugt einen public key und einen private key und verschlüsselt mit Hilfe des private key seine Signatur (Adresse oder Name). Als Beispiel wird hier ein einzelnes Zeichen als Absenderadresse verwendet.