如何使用AES 256加密字符串,以便可以在Java中的Web服务器上解密?

时间:2011-09-06 12:19:51

标签: java iphone ios encryption

我需要知道如何使用带有iPhone中指定密钥的AES 256位算法加密字符串,以便加密字符串可以用Java解密

目标是将该字符串从iPhone安全地传输到网络服务器。

2 个答案:

答案 0 :(得分:0)

也许您需要编译openssl,尝试此tuto http://www.x2on.de/2010/07/13/tutorial-iphone-app-with-compiled-openssl-1-0-0a-library/或使用CCCryptor查看this post,存在大量有关此主题的信息。

我个人使用openssl做类似的工作。

干杯!

答案 1 :(得分:0)

我对iPhone的解释不太了解第一部分。

对于第二部分,如果正确指定了所有内容,则应该很容易在Java中解密。使用AES-256是一个良好的开端。明确指定CBC模式和PKCS7填充。使用随机IV,显然是一个密钥。

在Java端,请确保使用相同的:AES-256在CBC模式下使用PKCS7填充。使用相同的IV和相同的密钥。 IV可以“清楚地”发送,许多系统将它添加到密文。您需要一种方法将密钥安全地传输到目的地。

确保您知道何时处理字节以及何时处理文本。您可以使用Base64将字节转换为文本。如果您确实使用了文本,请确保双方对传输的文件使用相同的文本编码,优先使用UTF-8。