2016-06-25 6 views
0

Ich bin AES 128 Bit Schlüssel implementieren.Während der Entschlüsselung bekomme ich 4 x 4 Matrix von Hexadezimalwerten.Wie in Zeichenfolge konvertieren?Wie konvertiert man 4 mal 4 Matrix von Hexadezimalwerten in Klartext?

+2

Was meinst du mit Klartext? Zeigen Sie das gewünschte Ergebnis an. Ist es "afeaff ..."? –

+2

Was ist das gewünschte Ergebnis? –

+0

* "während der Entschlüsselung bekomme ich 4 by 4 Matrix" * Welche seltsame Art von Entschlüsselung API gibt das zurück? – Andreas

Antwort

0

Wenn Sie etwas wie das "afeaffeaeabaccaaaacbbccc0aaddaff" wollen, gibt es:

String Res[][]={{"af","ea","ff","ea"}, 
    {"ea","ba","cc","aa"}, 
    {"aa","cb","bc","cc"}, 
    {"0a","ad","da","ff"}}; 
    StringBuilder strBldr = new StringBuilder(); 
    for(String[] ar : Res) { 
     for(String str : ar) { 
      strBldr.append(str); 
     } 
    } 
    System.out.println(strBldr.toString()); 

http://ideone.com/2jfMob

Wenn Sie es Zeichen umwandeln soll, kann in Schleife ersetzen:

strBldr.append((char) Integer.parseInt(str, 16)); 

Das setzt voraus, dass Zeichen durch ein Byte dargestellt werden. Wenn nicht, siehe z. dies: http://ideone.com/kg2ZN5