我正在尝试使用 AES 加密/解密我的文件。我关注了this tutorial加密我的数据,但我稍微修改了代码,以便我可以使用相同的 key 来加密许多文件。
除了加密我的文件外,我的 AES key 还使用 RSA(this page,saveKey() 方法)保存。
我在 PC 上加密了文件,并尝试在 Android 上解密它们。但是,我总是遇到 BadPaddingException: pad block corrupted。我打印出 AES key ,发现使用相同的私钥,解密的 AES key 在 PC 和 Android 上不同。
如果我在 PC 上解密相同的文件,它工作正常。
为什么?!
Android的密码有问题吗?!需要帮助。
最佳答案
您的 RSA 填充密码可能采用了错误的填充方案
试试这个?
pkCipher = Cipher.getInstance("RSA/NONE/PKCS1Padding");
关于java - 安卓AES问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7299385/