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)