Skip to content

Instantly share code, notes, and snippets.

@thraizz
Created January 8, 2018 15:52
Show Gist options
  • Save thraizz/e207f7f58ee153e27173c6eff0d64fd6 to your computer and use it in GitHub Desktop.
Save thraizz/e207f7f58ee153e27173c6eff0d64fd6 to your computer and use it in GitHub Desktop.
Symetrische Verschluesselung
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class symetrischeVerschlüsselung {
public static void main(String[] args)throws IOException{
String[] ergebnis_array = new String[12];
String eingabe, schluessel;
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
int[] schluessel_array = new int[12];
for(int z=0; z<12; z++){
do{
System.out.println("Bitte geben Sie einen Schlüssel mit 12 Stellen ein.");
schluessel = in.readLine();
if(schluessel.length()<1 || schluessel.length()>12) {
System.out.println("Keine gültige Eingabe. Versuchen Sie es erneut.");
}
}while(schluessel.length()<1 || schluessel.length()>12);
System.out.println("Der Schluessel "+schluessel+" wurde gewählt.");
for(z=0; z<schluessel.length(); z++) {
schluessel_array[z] = Integer.parseInt(String.valueOf(schluessel.charAt(z)));
}
System.out.println("Bitte geben Sie nun das zu behandelnde Wort ein.");
eingabe = in.readLine();
StringBuffer strbuf = new StringBuffer(eingabe);
int verschluesselt = 0, aktSchluessel;
String ergebnis = "";
for(int i = 0; i < eingabe.length(); i++) {
aktSchluessel = schluessel_array[i];
final int b;
verschluesselt = (int) strbuf.charAt(i);
if(Character.isLowerCase(eingabe.charAt(i))){
b = 97;
}
else{
b = 65;
}
verschluesselt = (int) (((verschluesselt-b)+aktSchluessel)%26)+b;
ergebnis += (char) verschluesselt;
ergebnis_array[z-1] = ergebnis;
}
System.out.println("Das Ergebnis ist "+ergebnis);
}
for(int j = 0;j<ergebnis_array.length;j++) {
System.out.print(ergebnis_array[j]);
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment