Station - Implementierung
Aufgabe 1: Eine Implementierung nutzen
Lade die Datei chiffriersystemModulareMultiplikation.py herunter. Diese Datei enthält eine ganze Reihe von Funktionen, die Teilaufgaben beim Verfahren mit modularer Multiplikation übernehmen.
Mit diesen Funktionen kannst man jetzt interaktiv das Verfahren mit modularer Multiplikation durchspielen, z.B. so:
>>> block = 1
>>> oeffentlicherSchluessel = (7, 30)
>>> privaterSchluessel = (13, 30)
>>> quelltext = 'ASTERIX'
...
Alternativ kann man auch ein kleines Testprogramm wie das folgende erstellen:
from chiffriersystemModulareMultiplikation import *
# Vorgaben
abc = ' ABCDEFGHIJKLMNOPQRSTUVWXYZ'
block = 1
oeffentlicherSchluessel = (7, 30)
privaterSchluessel = (13, 30)
# Verarbeitung
quelltext = 'ASTERIX'
quellcode = codierung(quelltext, block, abc)
geheimcode = verschluesselung(quellcode, oeffentlicherSchluessel)
entschluesseltercode = verschluesselung(geheimcode, privaterSchluessel)
entschluesseltertext = decodierung(entschluesseltercode, block, abc)
# Ausgaben
print('Quelltext:')
print(quelltext)
print('Quellcode:')
print(quellcode)
print('Geheimcode:')
print(geheimcode)
print('entschlüsselter Code:')
print(entschluesseltercode)
print('entschlüsselter Text:')
print(entschluesseltertext)
Teste das Chiffriersystem mit selbst gewählten Beispielen. Dokumentiere die Ergebnisse.
Aufgabe 2: Implementierungen analysieren
Vergleiche die Implementierungen zum Verfahren mit modularer Addition und zum Verfahren mit modularer Multiplikation. Die Implementierungen unterscheiden sich nur an einer Stelle. Welche Stelle ist das?
Aufgabe 3: Eine Implementierung abändern
Falls Du bei der Verschlüsselung mit modularer Addition ein ASCII-basiertes Programm zur Verschlüsselung entwickelt hast, kannst Du dieses nun entsprechend abändern.