我可以在J2ME或J2SE中进行RSA加密,并在PHP中解密吗?
我认为RSA是一种规范,与语言无关。
答案 0 :(得分:4)
答案 1 :(得分:3)
一句话,是的。
你可能遇到的唯一问题是字符编码或行结尾,但你可能会没事。
答案 2 :(得分:1)
如果要加密大于密钥的任何内容,您可能需要考虑使用对称密码加密数据,然后使用RSA加密对称密钥。执行此操作的标准机制(在S / MIME等中使用)是CMS(IETF对PKCS#7的更新)。我不确定在PHP中对CMS / PKCS#7有什么支持,但在java方面你可以使用优秀的bouncy castle crypto library。您将没有互操作性问题,因为所有数据结构都在ASN.1中定义。如果听起来有点复杂,请不要担心,因为这些细节是由加密库抽象出来的。
答案 3 :(得分:0)
是。我这样做。在Java中,任何JCE都应该这样做。在PHP中,请使用OpenSSL扩展。
正如其他人提到的,你最多只能加密key_length --11个字节。例如,对于1024位密钥,您只能加密117个字节。如果您的数据可能超过该数据,请使用OpenSSL扩展支持的PKCS#7。