-
http是以明文传输的,所以要保证安全就要给明文加密,所以就有了HTTPS
-
https的加密步骤解析:
- 首先要有一个秘钥去加密传输的内容,把它命名为秘钥X;
- 所以,客户端在传输加密的明文之前要把秘钥X也传给服务器
- 那么问题来了,X也需要加密,不然,黑客也能获取到秘钥X,难道继续给X加密的秘钥继续加密吗,这开始套娃了;
- 所以,解决办法是,在客户端想服务器发出HTTPS请求的时候,服务器发给客户端一个公钥,然后客户端拿到这个公钥,给X加密,然后传给服务器,服务器拿到这个之后,通过本地的私钥解开加密,获取秘钥X,到这里,秘钥X就在客户端和服务器都存在了
- 走到这里,有出现了新的问题,中间人攻击(在第一步,服务器发给客户端公钥的时候,中间人获取到了这个公钥,然后中间人伪造了一个公钥继续发给客户端,然后,客户端也不知道,就认为是OK的,然后把用假公钥加密的秘钥X发了出去,然后中间人就获得了秘钥X,所以不是不安全的);
- 怎么解决呢:这个时候就有了一个机构CA,服务器可以向CA申请CA证书
- 服务器在给客户端传输公钥的过程中,会把公钥以及服务器的个人信息通过Hash算法生成信息摘要
为了防止信息摘要被人调换
HTTPS与DNS劫持
最新推荐文章于 2024-08-09 11:59:04 发布
HTTPS通过加密确保安全,涉及公钥、私钥、数字证书和CA机构的角色。DNS劫持则威胁网络安全,解释了其工作原理及防范方法。
摘要由CSDN通过智能技术生成