SGB/Informatik/Krypotologie/Vigenere

Aus ProgrammingWiki

Wiki-Quelltext dieser Seite.

<language>Python</language>
<run id="6790edb6976d7"># Funktionsdefinition
def verschiebung(zeichen, schluessel):
    verschiebezahl = ord(schluessel) - ord('A')
    zahl = ord(zeichen)
    neueZahl = zahl + verschiebezahl
    if neueZahl > ord('Z'):
        neueZahl = neueZahl - 26
    neuesZeichen = chr(neueZahl)
    return neuesZeichen

# Funktionsaufrufe
schluessel = 'HUND'
klartext = 'GEHEIMNIS'
geheimtext = ''
neuesZeichen = verschiebung('G', schluessel[0])
geheimtext = geheimtext + neuesZeichen
neuesZeichen = verschiebung('E', schluessel[1])
geheimtext = geheimtext + neuesZeichen
neuesZeichen = verschiebung('H', schluessel[2])
geheimtext = geheimtext + neuesZeichen
neuesZeichen = verschiebung('E', schluessel[3])
geheimtext = geheimtext + neuesZeichen
neuesZeichen = verschiebung('I', schluessel[0])
geheimtext = geheimtext + neuesZeichen
# ...
print(geheimtext)
</run>