队
我想使用Objective C对iPhone应用程序使用AES算法进行非对称加密。 我已经广泛地看到使用AES的对称加密,所以我不确定是否支持使用AES进行非对称加密。请建议我这个。
答案 0 :(得分:3)
AES是一种对称密码。它不能简单地用于非对称(即公钥)容量。
我猜你问题的原因是密钥交换的问题 - 这样你就可以建立一个AES加密的连接,而不必依赖预共享密钥。
存在许多有效的方法,但我只会遇到两个:
看看还是Diffie-Hellman。您可以让连接的两端同意密钥,而无需实际交换密钥。 http://en.wikipedia.org/wiki/Diffie - Hellman_key_exchange
RSA。我是Botan的粉丝。它是免费的。有用。您可以生成双方的公钥/私钥对,交换公钥,然后安全地交换私钥,然后启动AES。 http://botan.randombit.net/pubkey.html
与往常一样,这个建议需要伴随一个警告:很容易做到这一点,并且很大程度上(或完全)阻碍了您的安全工作。小心翼翼。