Lösung Aufgabe Public-Key in Python:
def publicverschluesseln(satz, codewort): buchstabe = "" codebuchstabe = "" asciizahl = 0 codeasciizahl = 0 stelle = 0 codestelle = 0 zusatz = 0 verschluesselter_satz = "" while stelle < len(satz): buchstabe = satz[stelle] codebuchstabe = codewort[codestelle] asciizahl = ord(buchstabe) codeasciizahl = ord(codebuchstabe) asciizahl = \ asciizahl + codeasciizahl \ - 64 + zusatz buchstabe = chr(asciizahl) verschluesselter_satz = \ verschluesselter_satz + buchstabe stelle = stelle + 1 zusatz = zusatz + 1 if zusatz > 2: zusatz = 0 codestelle = codestelle + 1 if codestelle == len(codewort): codestelle = 0 zusatz = 0 return verschluesselter_satz def publicentschluesseln(satz, codewort): buchstabe = "" codebuchstabe = "" asciizahl = 0 codeasciizahl = 0 stelle = 0 codestelle = 0 entschluesselter_satz = "" zusatz = 0 while stelle < len(satz): buchstabe = satz[stelle] codebuchstabe = codewort[codestelle] asciizahl = \ord(buchstabe) codeasciizahl = ord(codebuchstabe) asciizahl = \ asciizahl - codeasciizahl \ + 64 - zusatz buchstabe = chr(asciizahl) entschluesselter_satz = \ entschluesselter_satz + buchstabe stelle = stelle + 1 zusatz = zusatz + 2 if zusatz > 5: zusatz = 0 codestelle = codestelle + 1 if codestelle == len(codewort): codestelle = 0 zusatz = 0 return entschluesselter_satz print("----------------------------") print("Programm zur Demonstration der") print("Public-Key-Verschlüsselung") satz = \ input("Bitte Satz eingeben: ") codewort = \ input("Öffentlichchen Schlüssel eingeben:") print("Unverschluesselt: " + satz) satz = publicverschluesseln(satz, codewort) print("Verschluesselt: " + satz) codewort = \ input("Privaten Schlüssel eingeben: ") satz = publicentschluesseln(satz, codewort) print("Entschluesselt: " + satz)
Lösung Aufgabe Public-Key in Python:
print("Programm zur Demonstration der Public-Key-Verschlüsselung") def publicverschluesseln(satz, codewort): buchstabe = ""; codebuchstabe = "" asciizahl = 0; codeasciizahl = 0 stelle = 0; codestelle = 0 zusatz = 0 verschluesselter_satz = "" while stelle < len(satz): buchstabe = satz[stelle] codebuchstabe = codewort[codestelle] asciizahl = ord(buchstabe) codeasciizahl = ord(codebuchstabe) asciizahl = asciizahl + codeasciizahl - 64 + zusatz buchstabe = chr(asciizahl) verschluesselter_satz = verschluesselter_satz + buchstabe stelle = stelle + 1 zusatz = zusatz + 1 if zusatz > 2: zusatz = 0 codestelle = codestelle + 1 if codestelle == len(codewort): codestelle = 0 zusatz = 0 return verschluesselter_satz def publicentschluesseln(satz, codewort): buchstabe = ""; codebuchstabe = "" asciizahl = 0; codeasciizahl = 0 stelle = 0; codestelle = 0 entschluesselter_satz = "" zusatz = 0 while stelle < len(satz): buchstabe = satz[stelle] codebuchstabe = codewort[codestelle] asciizahl = ord(buchstabe) codeasciizahl = ord(codebuchstabe) asciizahl = asciizahl - codeasciizahl + 64 - zusatz buchstabe = chr(asciizahl) entschluesselter_satz = entschluesselter_satz + buchstabe stelle = stelle + 1 zusatz = zusatz + 2 if zusatz > 5: zusatz = 0 codestelle = codestelle + 1 if codestelle == len(codewort): codestelle = 0 zusatz = 0 return entschluesselter_satz print("---------------------------------------------------------") print("\n\n\n\n") print("Programm zur Demonstration der Public-Key-Verschlüsselung") satz = input("Bitte Satz eingeben: ") codewort = input("Bitte öffentlichchen Schlüssel eingeben: ") print("Unverschluesselt: " + satz) satz = publicverschluesseln(satz, codewort) print("Verschluesselt: " + satz) codewort = input("Bitte privaten Schlüssel eingeben: ") satz = publicentschluesseln(satz, codewort) print("Entschluesselt: " + satz)