HTTPS

作者: zlrs | 来源:发表于2020-03-06 13:08 被阅读0次

不加密的HTTP面临的风险

HTTP信息明文传播,带来了三大风险。

  1. 窃听风险(eavesdropping):第三方可以获知通信内容。
  2. 篡改风险(tampering):第三方可以修改通信内容。
  3. 冒充风险(pretending):第三方可以冒充他人身份参与通信。

HTTPS通信的基本过程

  1. 客户端向服务器端索要并验证公钥。
  2. 双方协商生成 session密钥
  3. 双方采用session密钥进行加密通信,就是普通HTTP协议之上的加密通信,通信内容通过session密钥加密。
    第1、2步称为TLS握手。

TLS 握手过程

  1. 客户端请求 ClientHello
    在这一步,客户端主要向服务器提供以下信息。
    (1) 支持的协议版本,比如TLS 1.0版。
    (2) 一个客户端生成的随机数,稍后用于生成session密钥
    (3) 支持的加密方法,比如RSA公钥加密。
    (4) 支持的压缩方法。

  2. 服务器回应 SeverHello
    服务器的回应包含以下内容。
    (1) 确认使用的加密通信协议版本,比如TLS 1.0版本。如果浏览器与服务器支持的版本不一致,服务器关闭加密通信。
    (2) 一个服务器生成的随机数,稍后用于生成session密钥
    (3) 确认使用的加密方法,比如RSA公钥加密。
    (4) 服务器证书。
    除了上面这些信息,如果服务器需要确认客户端的身份,就会再包含一项请求,要求客户端提供"客户端证书"。比如,金融机构往往只允许认证客户连入自己的网络,就会向正式客户提供USB密钥,里面就包含了一张客户端证书。

TLS handshake
  1. 客户端响应
    (1) 一个随机数。该随机数用服务器公钥加密,防止被窃听。
    (2) 编码改变通知,表示随后的信息都将用双方商定的加密方法和密钥发送。
    (3) 客户端握手结束通知,表示客户端的握手阶段已经结束。这一项同时也是前面发送的所有内容的hash值,用来供服务器校验。

非对称加密的缺点 / 为什么要使用对称秘钥

公钥加密计算量太大。造成CPU占用高、耗电、解密时间长的问题。

如何保证公钥不被篡改?

使用数字证书机制。将公钥放在数字证书中。只要证书是可信的,公钥就是可信的。

相关文章

  • https VS https

    HTTPS=SSL+HTTPHTTP协议传输的数据是未加密的 ,也就是明文,因此使用HTTP协议传输隐私信息非常不...

  • HTTPS

    什么是HTTPS HTTPS(全称:Hypertext Transfer Protocol over Secure...

  • HTTPS

    HTTP 有以下安全性问题: 使用明文进行通信,内容可能会被窃听;(请求时,需加密) 不验证通信方的身份,通信方的...

  • HTTPS

    站点证书的有效性 SSL 自身不要求用户检查Web服务器证书,但大部分现代浏览器都会对证书进行简单的完整性检查,并...

  • Https

    我们都知道HTTPS能够加密信息,以免敏感信息被第三方获取。所以很多银行网站或电子邮箱等等安全级别较高的服务都会采...

  • HTTPS

    1.为什么要有HTTPS2.HTTPS的工作原理3.密码学4.HTTPS的优缺点5.在iOS中使用HTTPS 为什...

  • HTTPS

    精悍小文:https是如何工作的? - 简书 急速开发系列——打造完善的https使用方案 - 简书

  • https

    摘自[白话Https]https://www.cnblogs.com/xinzhao/p/4949344.html...

  • HTTPS

    一、背景 对于大规模的购物、银行事务或访问机密数据来说,这些重要的事务需要将 HTTP和数字加密技术结合起来使用,...

  • HTTPS

    在 HTTP 协议中有可能存在信息窃听或身份伪装等安全问题。使用 HTTPS 通信机制可以有效地防止这些问题。本篇...

网友评论

      本文标题:HTTPS

      本文链接:https://www.haomeiwen.com/subject/mypbrhtx.html