[Veranschaulichung des Public-Key-Verfahrens]

KRYPTOLOGIE

Einstiegsaufgabe Lösung Aufgabe 3

[Veranschaulichung des Public-Key-Verfahrens]

Lösung Aufgabe 3:

 public class caesar {

 public static String
    verschluesseln(String satz,
                   int codewort) {

  char buchstabe;
  int asciizahl = 0;
  int stelle = 0;
  int versatz = codewort;
  String verschluesselter_satz = "";

  while (stelle < satz.length()) {
    buchstabe = satz.charAt(stelle);
    asciizahl = (int) buchstabe;
    asciizahl = asciizahl + versatz;
    buchstabe = (char) asciizahl;
    verschluesselter_satz =
     verschluesselter_satz +  buchstabe;
    stelle = stelle + 1;
    }

  return verschluesselter_satz;
  }


// ==== Caesar-Verschluesseln ====");

 public static void main(String[] args) {
 System.out.println
   ("Caesar-Verschlüsselung");
 System.out.println();
 System.out.println
   ("========================");
 System.out.println("Satz eingeben:");
 String satz =
   System.console().readLine();
 String verschluesselterSatz =
   verschluesseln(satz, 2);
 System.out.println
   ("Der verschüsselte Satz lautet: "
    + verschluesselterSatz);
 System.out.println
   ("========================");
 }

}

Lösung Aufgabe 3:

	
public class caesar {

 public static String verschluesseln(String satz, int codewort) {

  char buchstabe;
  int asciizahl = 0;
  int stelle = 0;
  int versatz = codewort;
  String verschluesselter_satz = "";

  while (stelle < satz.length()) {
    buchstabe = satz.charAt(stelle);
    asciizahl = (int) buchstabe;
    asciizahl = asciizahl + versatz;
    buchstabe = (char) asciizahl;
    verschluesselter_satz = verschluesselter_satz +  buchstabe;
    stelle = stelle + 1;
    }

  return verschluesselter_satz;
  }


 public static String entschluesseln(String satz, int codewort) {

  char buchstabe;
  int asciizahl = 0;
  int stelle = 0;
  int versatz = codewort;
  String entschluesselter_satz = "";
  while (stelle < satz.length()) {
    buchstabe = satz.charAt(stelle);
    asciizahl = (int) buchstabe;
    asciizahl = asciizahl - versatz;
    buchstabe = (char) asciizahl;
    entschluesselter_satz =
     entschluesselter_satz + buchstabe;
    stelle = stelle + 1;
    }

  return entschluesselter_satz;
  }

// ==== Caesar-Ver-/Entschluesseln ====");

public static void main(String[] args) {

 System.out.println("Caesar-Verschlüsselung");
 System.out.println();
 System.out.println("========================");
 System.out.println("Satz eingeben:");
 String satz = System.console().readLine();
 String verschluesselterSatz = verschluesseln(satz, 2);
 System.out.println("Der verschlüsselte Satz lautet: "
                    + verschluesselterSatz);
 satz = verschluesselterSatz;
 String entschluesselterSatz = entschluesseln(satz, 2);
 System.out.println("Der entschlüsselte Satz lautet: "
                    + entschluesselterSatz);
 System.out.println("========================");
 }
}