Caeser Verschlüsselung

Status
Nicht offen für weitere Antworten.

Lazybone

Aktives Mitglied
Hallo

ich habe im Internet folgendes Script gefunden
Code:
  public static String caesar( String s )
  {
    StringBuffer ergebnis = new StringBuffer();

    for( int i = 0; i < s.length(); i++ )
    {
      int c = s.charAt( i );

      if ( (c >= 'A') && (c <= 'z') ) {
        c += key;
        if( c > 'z' )
          c = 'a' + c % 'z' -1;
        if( (c > 'Z') && (c < 'a') ) 
          c = 'A' + c % 'Z' - 1;
      }
      ergebnis.append( (char) c );
    }
    
    return ergebnis.toString();
  }
  
  public static String decaesar( String s )
  {
    StringBuffer ergebnis = new StringBuffer();
    
    for( int i = 0; i < s.length(); i++ )
    {
      int c = s.charAt( i );

      if ( (c >= 'A') && (c <= 'z') ) {
        c -= key;
        if( (c < 'a') && (c > 'Z') )
          c = 'a' + ('z' - c % 'a') - 1;
        if( c < 'A' )
          c = 'A' + ('Z' - c % 'A') - 1;
      }
      ergebnis.append( (char) c );
    }

    return ergebnis.toString();
  }

Die Methode caesar funktioniert einwandfrei nur bei der decaesar ist der wurm drin. Ich finde da leider auch keine passende lösung wie ich das umsetzen bzw korregieren kann könnte mir da vielleicht einer helfen?

Gruß
Lazybone
 
S

SlaterB

Gast
verstehst du denn das Prinzip/ wie man das per Hand entschlüsseln würde?

dann fange doch mal mit einen Buchstaben 'A' an,
verschlüssle ihn, was kommt raus?
entschlüssle ihn, was kommt raus?
bei Fehlern Zwischenschritte anschauen bis du bei genau einem Schritt angekommen bist der falsch ist oder eine bestimmte Situation nicht berücksichtigt,

System.out.println() hilft dir, alle Arbeitsschritte auszugeben..
 

Lazybone

Aktives Mitglied
hab ich auch schon probiert alles nur habe ich keine lösung gefunden wie das richtige entschlüsseln funktioniert. Ab dem Buchstaben V kann er es nicht mehr dann kommt nur schrott raus. Das eigentliche Prinzip von Caeser hab ich verstanden.
 
S

SlaterB

Gast
aha, du weißt zu 100% was das Programm tut
(oder könntest es herausfinden wenn du dir die Mühe machen würdest),
und du weißt wie das Programm richtig rechnen soll,

warum korrigierst du es dann nicht?
beschreibe, was dir zu eigener Gehirnleistung fehlt...

ich hab dir jetzt mal eine riesige Hilfe geschrieben,
die du genausogut selber hättest machen können,
ganz ohne Eigenleistung von dir habe ich aber keine Lust, dass nun noch weiter zu machen..

Code:
public class Test
{

    public static void main(String[] args)
        throws Exception

    {

        String st = "y";
        String info = st;
        st = caesar(st);
        info += " ---> " + st;
        st = decaesar(st);
        info += " ---> " + st;
        System.out.println(info);

    }

    static int key = 2;

    public static String caesar(String s)
    {
        StringBuffer ergebnis = new StringBuffer();

        for (int i = 0; i < s.length(); i++)
        {
            int c = s.charAt(i);

            if ((c >= 'A') && (c <= 'z'))
            {
                c += key;
                if (c > 'z') c = 'a' + c % 'z' - 1;
                if ((c > 'Z') && (c < 'a')) c = 'A' + c % 'Z' - 1;
            }
            ergebnis.append((char)c);
        }

        return ergebnis.toString();
    }

    public static String decaesar(String s)
    {
        StringBuffer ergebnis = new StringBuffer();

        for (int i = 0; i < s.length(); i++)
        {
            int c = s.charAt(i);

            if ((c >= 'A') && (c <= 'z'))
            {
                c -= key;
                System.out.println("c1: " + c + ", " + ((char)c));
                if ((c < 'a') && (c > 'Z'))
                {

                    int aZahl = (int)'a';
                    int zZahl = (int)'z';
                    int cModA = (int)(c % 'a');
                    int zMinusCModA = zZahl - cModA;
                    System.out.println("a = " + aZahl + ", z = " + zZahl + ", cModA = " + cModA + 
                        ", zMinusCModA = " + zMinusCModA);

                    c = 'a' + ('z' - c % 'a') - 1;
                    System.out.println("c2: " + aZahl + " + " + zMinusCModA + " - 1 = " + c 
                        + " = " + ((char)c));
                }
                if (c < 'A')
                {
                    c = 'A' + ('Z' - c % 'A') - 1;
                }
            }
            ergebnis.append((char)c);
        }

        return ergebnis.toString();
    }

}
 
S

SlaterB

Gast
schön, dass du dies NICHT gepostet hast und mir diese 20 Min. Arbeit überlassen hast,
und schön dass du nochmal das gleich postest und meine nun 30 Min. Arbeit, dir zur Selbsthilfe zu helfen, als sinnlos offenbarst,

na jemand anders wirds dir schon sagen, ich bin bedient ;)
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
M pfx-Zertifikat in Tomcat für SSL-Verschlüsselung nutzen Allgemeine Java-Themen 14
X Verschlüsselung Allgemeine Java-Themen 18
P String-Verschlüsselung - Frage zur Sicherheit Allgemeine Java-Themen 21
R Verschlüsselung falsch Allgemeine Java-Themen 3
R Verschlüsselung funktioniert nicht Allgemeine Java-Themen 5
J Passwort Verschlüsselung hash Allgemeine Java-Themen 2
D AES Verschlüsselung / Wirklich AES 128-Bit? Allgemeine Java-Themen 4
I Best Practice Verschlüsselung mit SALT Allgemeine Java-Themen 4
A Mehrfache XOR Verschlüsselung Allgemeine Java-Themen 11
Thallius Moderne sichere synchrone Verschlüsselung mit Java? Allgemeine Java-Themen 3
Ananaskirsche Verschlüsselung mit AES Allgemeine Java-Themen 4
E Verschlüsselung Allgemeine Java-Themen 4
F Schlüsselworte RSA Verschlüsselung implementieren Allgemeine Java-Themen 5
S Key (für AES-Verschlüsselung) aus String Allgemeine Java-Themen 4
M Serialisierung & Verschlüsselung Allgemeine Java-Themen 2
K Problem mit Salted - Verschlüsselung Allgemeine Java-Themen 4
Z Java E-Mail Client mit End-to-End-Verschlüsselung Allgemeine Java-Themen 4
J Verschlüsselung von Text? Allgemeine Java-Themen 2
K Vigenere- Verschlüsselung Allgemeine Java-Themen 13
M Verschlüsselung von Text und Files durch RSA (Encoding Problem) Allgemeine Java-Themen 7
T AES-Verschlüsselung mit eigenem 256 Bit Schlüssel Allgemeine Java-Themen 12
DStrohma Verschlüsselung: SALT aus Passwort generieren? Allgemeine Java-Themen 3
G AES Verschlüsselung nur bis 63 Zeichen Länge Allgemeine Java-Themen 2
M Verschlüsselung mit Cipher Allgemeine Java-Themen 5
B XOR Verschlüsselung Allgemeine Java-Themen 7
S Framework für symetrische und asymetrische Verschlüsselung Allgemeine Java-Themen 3
lumo Verschlüsselung Allgemeine Java-Themen 2
H Verschlüsselung mit Blowfish Allgemeine Java-Themen 14
C Interpreter-Fehler AES verschlüsselung mit MD5 key Allgemeine Java-Themen 6
S AES Verschlüsselung - File Headers korrupt Allgemeine Java-Themen 10
A Datei, UTF-8, NTRU-Verschlüsselung Allgemeine Java-Themen 3
B "Verschlüsselung" mit Passwort (XOR bzw. Modulo) Allgemeine Java-Themen 7
B String Verschlüsselung Allgemeine Java-Themen 6
M Verschlüsselung anwenden Allgemeine Java-Themen 6
J Verschlüsselung Allgemeine Java-Themen 22
T MD5 Verschlüsselung Nullen fehlen? Allgemeine Java-Themen 2
L [Exception] RSA Verschlüsselung. Allgemeine Java-Themen 16
C javamail signatur und verschlüsselung Allgemeine Java-Themen 2
R 128 Bit Verschlüsselung/Entschlüsselung in Java? Allgemeine Java-Themen 6
F RSA-Verschlüsselung Allgemeine Java-Themen 4
S Verschlüsselung in Java Allgemeine Java-Themen 2
G Interessant! Verschlüsselung in Java, Charset in der JVM? Allgemeine Java-Themen 14
D Eigener Key bei AES Verschlüsselung Allgemeine Java-Themen 4
T Verschlüsselung von Dateien Allgemeine Java-Themen 8
S Verschlüsselung - IllegalBlockSizeException Allgemeine Java-Themen 3
G Problem mit RSA Verschlüsselung bei .net und Java Allgemeine Java-Themen 1
D Caesar und Vigenère Verschlüsselung Allgemeine Java-Themen 2
alexpetri Verschlüsselung Allgemeine Java-Themen 13
@ [Sicherheit] Speicherung von Keys für Verschlüsselung Allgemeine Java-Themen 4
P Verschlüsselung in PHP -> Entschlüsselung in Java Allgemeine Java-Themen 2
S Verschlüsselung mit Cipher Allgemeine Java-Themen 8
S Verschlüsselung Allgemeine Java-Themen 15
J Problem mit Dateien/XOR-Verschlüsselung Allgemeine Java-Themen 5
G RSA-Verschlüsselung Allgemeine Java-Themen 1
P HMACMD5- Verschlüsselung entschlüsseln Allgemeine Java-Themen 2
I Verschlüsselung mit Pwd. - User soll Algorithmus wählen Allgemeine Java-Themen 4
J Probleme bei XOR verschlüsselung ! Allgemeine Java-Themen 5
G Verschlüsselung in Java Allgemeine Java-Themen 9
M RSA Verschlüsselung Allgemeine Java-Themen 7
J Verschlüsselung von Daten Allgemeine Java-Themen 21

Ähnliche Java Themen

Neue Themen


Oben