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.
Aber ich bekomme nur ein
Kann mir eine weiter helfen? Mache ich beim Key etwas falsch?
lg
C0dR
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