https进行传输中。由于攻击者没有服务器的私钥,所以无法对客户发给服务器的信息进行解密。但是服务器的公钥是可见的,攻击者应该可以劫取服务器返给用户的消息,进行解密。那https如何保证通信安全?是无法保证服务器发给用户的信息,还是有其他解决方法?比如每次连接生成公钥和私钥,并进行ca验证,这样成本应该太高了。
https进行传输中。由于攻击者没有服务器的私钥,所以无法对客户发给服务器的信息进行解密。但是服务器的公钥是可见的,攻击者应该可以劫取服务器返给用户的消息,进行解密。那https如何保证通信安全?是无法保证服务器发给用户的信息,还是有其他解决方法?比如每次连接生成公钥和私钥,并进行ca验证,这样成本应该太高了。
2 回答4.9k 阅读✓ 已解决
8 回答2.2k 阅读
5 回答667 阅读
3 回答2.1k 阅读
2 回答2.1k 阅读
2 回答938 阅读
1 回答721 阅读✓ 已解决
这个问题我前段时间也在疑惑。这里我说说我的看法。
客户端如何判断服务端是否靠谱,通过证书。怎么判断证书靠谱,必须信任颁发机构。所以说这个机构是你是真的就是真的,说你是假的就是假的。
服务端如何判断客户端是否靠谱,服务端不关心你靠谱不靠谱,只要你带的东西对,他就返回给你。所以在 web 层面这个控制不了(也有可能有我不知道的方案),但是在 app 里面可以做私有证书加密。