[Veranschaulichung des Public-Key-Verfahrens]

KRYPTOLOGIE

Public-Key Lösung Python

[Veranschaulichung des Public-Key-Verfahrens]

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)