做app后台对接,用RSA加解密。后台返回数据用私钥加密,然后IOS端会用公钥解密。但是IOS的哥们说他用公钥解密有问题,要用私钥来解密。可我认为,RSA在服务端存私钥,如果在客户端也存私钥,那不就不符合RSA做法的初衷了吗?所以,这里问下,在IOS存私钥用来解密是不是不好,不安全?如果我认为的是正确的,应该怎么说服他?
一般是 公钥加密 私钥解密
我觉得题主说使用的场景就有问题 你服务端返回的信息 这种场景你私钥放哪都用处不大了 因为你用私钥在服务端加密 客户端拿公钥可以随意解密 如果你公钥加密私钥放到客户端 有心人通过逆向客户端代码私钥就泄漏了 不知道你们这是在干什么
通常的情况都在客户端请求服务端的时候对用公钥对请求参数进行加密 而服务端用私钥解密 想窃取服务端的私钥 有点难吧 这才是合理的应用场景吧 你服务端返回的信息真心没必要加密 而客户端的请求一定要加密!!!
1、用公钥加密,用私钥解密。
2、给别人发信息,就从服务器上拉下来别人的公钥,加密后发给他。
3、对方拿到信息后用自己的私钥解密。
4、这样,公钥加密后除了私钥持有人,别人都看不到信息。
5、若是用私钥加密,那么公钥都能解密,还有何安全性可言?
6、私钥加密的场合只有一个,那就是数字签名,用来表明这个信息来源于你。
你们这种每次rsa加解密也是蛋疼的很(rsa是很消耗性能的啊),http://ju.outofmemory.cn/entry/203583 这篇文章自己看看,这也只是讲了一个大概,更好的自行google
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。