Skip to content

Commit 9020f52

Browse files
author
dodo
committed
Entschlüsselung hinzugefügt
1 parent e9a3ee3 commit 9020f52

1 file changed

Lines changed: 41 additions & 0 deletions

File tree

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
#!/usr/bin/env python3
2+
u"""
3+
Dieses Programm implementiert die Cäsarchiffre, die schon Gaius Julius Cäsar
4+
benutzt haben soll, um mit seinen Generälen vertraulich zu kommunizieren.
5+
Es handelt sich dabei um eine monoalphabetische Subtitutionschiffre, das
6+
bedeutet, jeder Buchstabe im Klartext wird durch einen anderen Buchstaben aus
7+
dem Alphabet ersetzt, bei der Cäsarchiffre wird dieser zweite Buchstaben durch
8+
Verschiebung um einen festen Wert ermittelt. Dieser feste Wert bildet dabei den
9+
Schlüssel.
10+
11+
Dieses Programm kümmert sich um die Verschlüsselung mit Hilfe der
12+
Caesarchiffre, wohingegen sich caesar_encode.py um die Verschlüsselung kümmert.
13+
"""
14+
15+
secret = input("Bitte den Geheimtext eingeben: \n")
16+
key = input("Bitte die Verschiebungszahl eingaben: ")
17+
key = int(key)
18+
19+
secret = secret.upper()
20+
21+
# An dieser Stelle wird das Alphabet durch die ASCII Werte der Buchstaben
22+
# erzeugt
23+
alphabet = []
24+
for i in range(26):
25+
alphabet += chr(65 + i)
26+
27+
# Später soll in plaintext der Klartext stehen
28+
plaintext = ""
29+
30+
for char in secret:
31+
# Falls der Buchstabe nicht in dem Alphabet vorhanden ist, wird er auch
32+
# nicht entschlüsselt
33+
if char not in alphabet:
34+
plaintext += char
35+
continue
36+
37+
tmp = alphabet.index(char)
38+
new_char = alphabet[(tmp - key) % len(alphabet)]
39+
plaintext += new_char
40+
41+
print(plaintext)

0 commit comments

Comments
 (0)