阅读 162

网络协议02-Https协议

前言

我们在登录一些网站时,可能使用的是Http协议,但是如果在支付的场景中,Http协议可能存在安全风险。因为容易被拦截。

比如,发送一个Http请求时,黑客拦截请求网络包并伪装成一个你要请求的网站,然后给你回复,假设他他给你回复:输入银行卡号和密码,那么你在浏览器那边完全没有察觉到就发过去,这样你就被骗了。

为解决这个问题,使用加密方式。

加密

对称加密

  • 加密和解密使用同一个密钥。密钥需要保存好不做公开。如果被人知道密钥就容易发生被人解密的情况。

所以如果黑客拦截了你的请求,但是没有密钥就无法破解。但是你和被请求方之间怎么约定这个密钥?如果密钥也在网络上传输的话,还是可能会被黑客截获的。所以还是存在安全性。

还有另外一种加密方式:非对称加密

非对称加密

  • 加密和解密使用不同的密钥。

  • 加密的时候使用公钥,解密的时候使用私钥。私钥需要保存好不做公开。

客户端向支付网站发送请求时,使用支付网站的公钥加密,支付网站收到请求后使用自己的私钥解密,然后将结果通过客户端的公钥加密发送给客户端,客户端得到结果后使用自己的私钥解密。这个过程即便被黑客拦截,因其没有私钥而无法解密。

数字证书

像一部分网上银行,有时候我们需要安装证书。发送请求时,证书会给请求增加个签名,而这个签名是不可逆的,所以如果被截获也是无法解密获取到信息内容的。

HTTPS

  • 超文本传输安全协议 ,Hypertext Transfer Protocol Secure,是一种通过计算机网络进行安全通信的传输协议。

  • HTTPS通过HTTP进行通信,但是其利用SSL/TLS来加密数据包,使得传输过程更加的安全,也保证了传输效率。

  • 由于非对称加密性能不如对称加密。所以HTTPS协议将其结合起来,公钥私钥用于传输对称加密的密钥,而真正的数据量通信主要通过对称加密进行

工作模式:

                   客户端                         服务端

                    |---- 加密套路 和一个随机 ------->| 
                    |<------加密套路 和一个随机数-----| 
                    |<-------我的证书,审核下---------|
                    |<-------我的信息传输完了---------| 
        证书校验     |-----随机数公钥加密传输--------->|   计算出对称密钥
        计算对称密钥  |--------使用对称密钥传输-------->|
                    |------模拟对称密钥传输---------->| 
                    |<----好的使用对称密钥传输---------| 
                    |<----模拟对称密钥传输----------->|
                    |<----------加密通信--- -------->|


作者:元宇宙
链接:https://juejin.cn/post/7039143599098839077


文章分类
代码人生
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐