I am trying to encrypt and decrypt a message(String) using a given key string. For that, two seperate methods (one for encrypt and the other for decrypt) were called and when these methods are called from my applicaion. I am getting the below exception while decrypting. The encryption and decryption operations are working properly for the first time.Again if I call the methods with different message and key value it is throwing the below exception.
javax.crypto.BadPaddingException: Given final block not properly padded
I don't think that, there is a problem with data. Because using the same data (key and message) when I try to call the encrypt/decrypt methods it is working properly. Also if I call the methods from my application for the first time, it will work fine. Please help me to solve the issue......
Impossible to say without seeing the encryption/decryption code.
Joined: Feb 22, 2012
Tim Moores wrote:Impossible to say without seeing the encryption/decryption code.
Joined: Sep 21, 2011
Looks complicated. Any particular reason you're using the asHex and hexStringToByteArray methods instead of somethingmore standard like base-64 encoding? Lots of tested libraries are available for that, so you'd know the problem isn't with that part.
subject: javax.crypto.BadPaddingException for AES when encrypting and decrypting multiple times