趣谈网络10讲 | HTTPS 协议

上一讲学习了 HTTP 协议,HTTPS 相比于 HTTP 协议多了一个 S,那么这个 S 代表了什么?在没有涉及到个人财产和隐私的网站,使用 HTTP 协议是没有问题的,但是在一些支付场景还使用 HTTP 协议的话,就会被黑客给盯上,给网站使用人员带来财产损失。所以这个 S 代表的是 安全(Security),下面看看是怎么保证安全的。

一般的思路就是加密。加密的方式有两种,一种是对称加密,另一种就是非对称加密。

对称加密

在对称加密算法中,加密和解密使用的是同一个密钥。因此对称加密要保证安全性,密钥就要做好保护。但是在实际应用中,密钥往往是通过网络发送的,通过网络发送,就有被黑客盗取的机会。所以,通过对称加密算法发送关键信息是存在安全隐患的。

非对称加密

对称加密的特性导致对称加密算法存在安全隐患,为了避免密钥在网络中中传输,非对称算法使用私钥以及其对应的公钥来发送数据。具体操作流程如下:
拿定外卖这个例子来说,首先外卖网站将私钥存在本地,将公钥发布在网络里面,也就是用户可以拿到公钥,公钥加密的数据只能由其对应的私钥解密。用户将数据通过公钥加密传输给外卖网站,然后外卖网站通过私钥解密收到的数据。同理,外卖网站想要给用户发送数据,可以使用用户的公钥加密,用户收到数据以后使用自己的私钥进行解密。通过这个过程可以保证数据传输的安全性。

数字证书

非对称加密算法存在一个问题,怎么能保证发给对方的公钥是安全的呢?目前有两种方式解决:第一种是让对方在一个公网上进行下载;另外一种是建立连接,传输给对方。
在公网上下载,怎么保证安全性,这个时候需要一个权威机构去保证。在公网上需要下载证书,证书由权威机构颁发。这个权威机构称为CA(Certificate Authority)。
证书怎么安全生成呢?生成证书的请求发送给权威机构,权威机构通过签名算法。签名算法其实就是就是用权威机构的私钥做一个信用背书。

此时,用户会从外卖网站得到不是一个公钥,而是一个证书,且这个证书有发布机构 CA,只要得到这个 CA 的公钥,就可以去验证外卖网站公钥是不是正确的。

HTTPS的工作模式

由于非对称加密是比较消耗性能,所以 HTTPS 的工作模式是首先通过非对称加密传输对称加密的密钥,后面使用对称加密进行数据传输。流程图如下:

总结

  • 加密分对称加密和非对称加密,对称加密传输效率高,但是解决不了密钥传输安全性问题;非对称可以解决,但是效率不高
  • 非对称加密算法需要证书和权威机构来验证公钥的合法性
  • HTTPS 综合了对称加密和非对称加密算法的HTTP协议。既保证传输效率又保证传输安全。

说点什么

avatar
  Subscribe  
提醒

相关文章

开始在上面输入您的搜索词,然后按回车进行搜索。按ESC取消。

返回顶部