Interpreter-Fehler AES verschlüsselung mit MD5 key

C

C0dR

Gast
Hallo!
Ich habe ein Problem und zwar wollte ich mir einen Java Server schreiben, der AES verschlüsselte Daten über einen Socket bekommt und diese mit einem Key (MD5) entschlüsselt.

Java:
MessageDigest md5;
try {
	md5 = MessageDigest.getInstance("MD5");
	byte[] key = md5.digest(pw.getBytes("UTF-8"));
	//key = Arrays.copyOf(key, 16); // use only first 128 bit
	secretKeySpec = new SecretKeySpec(key, "AES");

	
	cipher = Cipher.getInstance("AES");
} catch (NoSuchAlgorithmException e1) {
	// TODO Auto-generated catch block
	e1.printStackTrace();
 catch (NoSuchPaddingException e) {
	// TODO Auto-generated catch block
	e.printStackTrace();
 catch (UnsupportedEncodingException e) {
	// TODO Auto-generated catch block
	e.printStackTrace();
}

...

String originalMessage;
try {
	cipher.init(Cipher.DECRYPT_MODE, secretKeySpec);
	originalMessage = new String(cipher.doFinal(line.getBytes()));
	System.out.println("The original message: " + originalMessage);
} catch (InvalidKeyException e) {
	// TODO Auto-generated catch block
	e.printStackTrace();
} catch (IllegalBlockSizeException e) {
	// TODO Auto-generated catch block
	e.printStackTrace();	
} catch (BadPaddingException e) {
	// TODO Auto-generated catch block
	e.printStackTrace();
}

Aber ich bekomme nur ein
Code:
javax.crypto.BadPaddingException: Given final block not properly padded
	at com.sun.crypto.provider.SunJCE_f.b(DashoA13*..)
	at com.sun.crypto.provider.SunJCE_f.b(DashoA13*..)

Kann mir eine weiter helfen? Mache ich beim Key etwas falsch?

lg
C0dR
 

ice-breaker

Top Contributor
du musst für AES noch ein Padding festlegen, da dein Array bestimmt nicht genau der Blockgröße von AES entspricht, weiß Java nicht, wie es die restlichen Stellen des Blockes auffüllen muss, dafür ist das Padding zuständig.
 
C

C0dR

Gast
Wie genau kann ich das anstellen? hab jetzt nur rechts links padding über google gefunden aber nichts zum auffüllen des Blockes...
 

ThreadPool

Bekanntes Mitglied
Java:
Cipher.getInstance("AES/CBC/PKCS7Padding");
sollte denke ich funktionieren

Bei CBC muss man IMHO dann aber noch einen "initialization vector" verwenden. Und muss der key nicht bei 128 bit genau 16 Bytes betragen? Des Weiteren müsste man wohl beim Entschlüsseln auch noch das Encoding des Byte-Feldes mit angeben.
 
Ä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
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
Lazybone Caeser Verschlüsselung Allgemeine Java-Themen 6
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


Oben