Android中RSA与JAVA中RSA加解密算法不同-导致加解密失败问题

2018-08-23 / 15 阅读 / Android

今天在Android中使用私钥解密结果时遇到一个坑,一直无法解密。错误就不截图了。

因为后台和客户端中使用的工具不相同,甚至以为是Base64工具不同导致的,一步一步排除,才发现是RSA工具解密后的字节不一致以至失败。哪怕时候后台一样的RSA工具类也无效。

后来百度才发现其他人也是有这么个问题。

android RSA和Java RSA加密不一致的坑

Android和Java中RSA标准不一致解决方法

给出解决问题的关键部分代码,其他部分用法一致:

            // java端
            Cipher rsa = Cipher.getInstance("RSA");
            rsa.init(Cipher.DECRYPT_MODE, aPrivate);
            // android端
            Cipher rsa = Cipher.getInstance("RSA/ECB/PKCS1Padding");
            rsa.init(Cipher.DECRYPT_MODE, aPrivate);

记录一下,如果其他平台之前加解密不一致,解决办法可能相似。

相关推荐