我有一个在服务器上运行的java应用程序,其中我使用 RSA/ECB/OAEPWithSHA-256AndMGF1Padding 实现了加密/解密机制。 作为客户端,我制作了一个 Java 实现,它接受字符串输入,使用服务器应用程序生成的公钥,使用相同的算法对其进行加密。 我面临的问题是,这个客户端 Java 实现在桌面 JVM 中工作得很好,但在 Android 应用程序中加密时,它会在服务器中生成此错误 (
Exception ERROR: javax.crypto.IllegalBlockSizeException: lHash mismatch
)。
桌面 JVM 中的加密和 Android JVM 中的加密有区别吗?