*
The moose likes Security and the fly likes AES decryption problem Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Engineering » Security
Bookmark "AES decryption problem" Watch "AES decryption problem" New topic
Author

AES decryption problem

Rajkumar Sathiyamurthy
Greenhorn

Joined: May 21, 2010
Posts: 1
We have provided an API to our clinet, which they use to encrypt the string and they will send the encrypted string as request parameter to our end.
On receiving the string we will decrypt the string before processing further.
But while decrypting we receive the below error.

Client use JDK 1.6 to encrypt and we use JDK 1.5 at our end to decrypt



javax.crypto.BadPaddingException: Given final block not properly padded
at com.sun.crypto.provider.SunJCE_h.b(DashoA12275)
at com.sun.crypto.provider.SunJCE_h.b(DashoA12275)
at com.sun.crypto.provider.AESCipher.engineDoFinal(DashoA12275)
at javax.crypto.Cipher.doFinal(DashoA12275)
at com.sbi.crypto.aes.EncryptAES.decrypt(EncryptAES.java:84)



Line 84 is byte [] ciphertext=cipher.doFinal(results);

Below is the code to encrypt


Below is the code to decrypt




Kindly help us.
Thanks in advance.
James Sabre
Ranch Hand

Joined: Sep 07, 2004
Posts: 781

Either the base64 encoded ciphertext is getting corrupted in some way or more likely the wrong key is being used for decryption. For test purposes you should dump the bytes of the key after reading them.

P.S. Using the bytes of the key as the IV is not considered good practice.
P.P.S. your code
can be replaced by the single line

P.P.P.S. That exception handling is poor. If you fail to read the key then it is fatal and you cannot continue!


Retired horse trader.
 Note: double-underline links may be advertisements automatically added by this site and are probably not endorsed by me.
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: AES decryption problem
 
Similar Threads
AES_DECRYPT function return null
AES Encryption Service
Encrypting Strings
encoding in java and decoding in perl
Exception in thread "main" java.security.InvalidKeyException: