verschluesselung:caesar:start
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
verschluesselung:caesar:start [2023/11/24 09:53] – Martin Pabst | verschluesselung:caesar:start [2023/11/24 10:14] (aktuell) – [Aufgabe 4:] Martin Pabst | ||
---|---|---|---|
Zeile 42: | Zeile 42: | ||
</ | </ | ||
+ | |||
+ | ====== Die Vigenère-Verschlüsselung ====== | ||
+ | <WRAP center round info 80%> | ||
+ | die Vigenère-Verschüsselung ist eine Weiterentwicklung der Caesar-Verschlüsselung. Als Schlüssel wird dabei ein ganzes Wort verwendet, z.B. das Wort ATLAS. Ausgehend vom Alphabet " | ||
+ | Verschlüsselt man bspw. den Klartext " | ||
+ | * Aus S wird durch Verschiebung um 0: S | ||
+ | * Aus O wird durch Verschiebung um 19: I | ||
+ | * Aus N wird durch Verschiebung um 11: Y | ||
+ | * Aus N wird durch Verschiebung um 0: N | ||
+ | * Aus E wird durch Verschiebung um 18: W | ||
+ | Wir erhalten den Geheimtext **SEYNW**. | ||
+ | </ | ||
+ | |||
+ | |||
+ | < | ||
+ | <div class=" | ||
+ | |||
+ | <script type=" | ||
+ | String schluessel = Input.readString(" | ||
+ | String klartext = Input.readString(" | ||
+ | |||
+ | String alphabet = " | ||
+ | |||
+ | String geheimtext = ""; | ||
+ | for (int i = 0; i < klartext.length(); | ||
+ | char schlüsselbuchstabe = schluessel.charAt(i % schluessel.length()); | ||
+ | int verschiebung = alphabet.indexOf(schlüsselbuchstabe); | ||
+ | |||
+ | char klartextBuchstabe = klartext.charAt(i); | ||
+ | int index = alphabet.indexOf(klartextBuchstabe); | ||
+ | int neuerIndex = (index + verschiebung) % alphabet.length(); | ||
+ | char geheimtextBuchstabe = alphabet.charAt(neuerIndex); | ||
+ | |||
+ | | ||
+ | } | ||
+ | |||
+ | println(" | ||
+ | </ | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | ==== Aufgabe 3: ==== | ||
+ | Schreiben Sie ein entsprechendes Programm, das einen Geheimtext unter Angabe des Schlüssels entschlüsseln kann! | ||
+ | |||
+ | ==== Aufgabe 4: ==== | ||
+ | * a) Überlegen Sie sich, wie man einen mittels Vigenère-Verfahren verschlüsselten Text ohne Kenntnis des Schlüssels entschlüsseln könnte. | ||
+ | * b) Wie lang muss der Schlüssel mindestens sein, damit der Text sicher nicht entschlüsselt werden kann? |
verschluesselung/caesar/start.1700819609.txt.gz · Zuletzt geändert: 2023/11/24 09:53 von Martin Pabst