Suche auf lima-city
-
in: Verschlüsseln mit java
geschrieben von divingtiger
Hallo,
wenn es bei dir um einfache Substitutionschiffren geht, sieh dir folgenden Code an.
Wichtig bei Substitutionschiffren ist jedoch, dass ein Zeichen in genau ein anderes Zeichen umgewandelt wird, z.B: A -> 1, aber nicht M -> 13, da sonst die Umkehrung nicht möglich ist.
/** * * @param wert - umzuwandelnde Zeichen * @param quelle - Ausgangszeichen * @param ziel - Zielzeichen * @return - Codierte Zeichen */ private String codieren(String wert, String[] quelle, String[] ziel) { String back=new String(); //Gehe durch alle Zeichen der Variable wert for (int i=0;i<wert.length();i++) { String zeichen=wert.substring(i,i+1); //Suche das Zeichen in den Ausgangszeichen for (int j=0;j<quelle.length;j++) { if (zeichen.equals(quelle[j])) { //Zielzeichen zum Rückgabewert hinzufügen back=back+ziel[j]; } } } return back; }
Aufrufen kann man die Methode (codieren) mit
codieren("BCADEF",new String[]{"A","B","C","D","E","F"},new String[]{"1","2","3","4","5","6"});
Decodieren kann man eine Zeichenkette mit
codieren("231456",new String[]{"1","2","3","4","5","6"},new String[]{"A","B","C","D","E","F"})
Ich hoffe, dass dir das hilft
DT