Auf der Basis der Klassen zur monoalphabetischen Verschlüsselung soll eine Klasse zur Versclüsselung nach Vigenere entwickelt werden.
Theoretische Voraussetzungen
Software
|
Die polyalphabetische Verschlüsselung nach Vigenere stellt eine Verbesserung der Cäsar-Verschlüsselung dar. Über einen Schlüssel key wird festgelegt, welches von 26 Geheimtextalphabeten zur Bearbeitung der verschiedenen Klartextzeichen genutzt wird. Die Verschlüsselung / Entschlüsselung erfolgt nach dem Vorbild des Cäsar-Chiffres.
Daraus ergibt sich, dass die Objekte der Klasse Vigenere die Klasse Caesar mit nutzen. Sie müssen jedoch für jedes Klartextzeichen ein neues Geheimtextalphabet setzen.
Somit ist die Klasse Caesar um eine Methode setgta zu erweitern.
Erweitern Sie die Klasse Caesar um eine öffentliche Mutator-Methode setgta (String key)! Erweitern Sie das Klassendiagramm um eine Klasse Vigenere! Importieren Sie die Klasse Vigenere in Ihr Kryptoprojekt. |
Gegeben ist der folgende Algorithmus für die Methode encrypt:
Arbeiten Sie die Methode encrypt mit den Parametern key = "bis" und zeile="bald"
ab! Übersetzen Sie die Methode encrypt in Java und implementieren Sie diese in der Klasse Vigenere! Implementieren Sie die Methode decrypt in der Klasse Vigenere. |