回答
我不太了解iOS,但Certificate, Key, and Trust Services Reference似乎是你所需要的。看起来SecKeyEncrypt将在某个时候被你使用。
是的,要使用此API,我需要RSA public ey的SecKeyRef,我有NSSTring。我无法得到它的SecKeyRef。我正在使用iOS 4.2 – macdev30
@ macdev30,我正在努力解决同样的问题:使用NSString RSA公钥进行加密。你有没有设法解决这个问题? – juanignaciosl
iOS没有针对RSA的特殊API,但有一些关于证书的API。您可以使用这些API通过RSA加密您的数据。
首先,您必须使用openssl来生成您的RSA私钥和公钥。最重要的是公钥必须签名。这是一个生成密钥的指令。
openssl req -x509 -out public_key.der -outform der -new -newkey rsa:1024 -keyout private_key.pem -days 3650
不过,如果你已经有了一个私钥(.PEM文件),您可以按照指示:
openssl req -new -out cert.csr -key private_key.pem
openssl x509 -req -in cert.csr -out public_key.der -outform der -signkey private_key.pem -days 3650
您可以通过在Xcode中打开它检查public_key.der。
当您得到正确的public_key.der文件时,您可以查看RSA.h和RSA.m here。对不起,我没有时间再次用英语重写这篇文章。
这波德封装加密:https://github.com/xjunior/XRSA
- 1. RSA加密公钥?
- 2. 使用RSA公钥加密DSA私钥
- 3. 使用RSA公钥加密字符串
- 4. RSA加密基于公钥
- 5. 使用Java中的RSA公钥文件加密AES密钥
- 6. Python:Pycrypto RSA公共密钥加密错误
- 7. 用公钥解密RSA
- 8. c#的RSA公共密钥的公钥#
- 9. RSA:在.NET中使用公钥解密?
- 10. 用RSA公钥和私钥加密和解密一个SecretKey
- 11. 如何使用rsa c仅公钥进行加密和解密#
- 12. RSA加密 - 用私钥
- 13. 加载公钥为公共加密创建rsa对象
- 14. 在Android中使用base64编码的公钥加密RSA
- 15. Android使用RSA加密字符串公钥
- 16. 使用BlackBerry上的公钥对RSA进行加密
- 17. 使用来自SQL Server的公钥的.Net中的RSA加密?
- 18. 如何在php中使用rsa公钥加密数据
- 19. 使用.NET生成的公钥的iPhone中的RSA加密?
- 20. 在java中使用RSA公钥设置密钥
- 21. 在JAVA中使用公共和私有RSA密钥进行加密和解密
- 22. 使用RSA公开密钥解密数据
- 23. RSA iphone公钥
- 24. Python加密,RSA公钥/私钥,大文件
- 25. 在生成公钥/私钥之前关闭RSA加密force
- 26. 雨云JOSE JWT加密与RSA,私钥和公钥
- 27. 从公开密钥加密rsa android.pem格式
- 28. 公钥加密
- 29. .NET私钥Rsa加密
- 30. C#RSA加密与私钥
只看如何使用RSA加密此问题:http://stackoverflow.com/questions/4211484/send-rsa-public-key-to-iphone-and -use-it-to-encrypt –
看到这个问题和答案:http://stackoverflow.com/questions/28291609/encryption-with-rsa-public-key-on-ios/28291683#28291683 – ideawu