HTTPS

作者: 痴人会说梦 | 来源:发表于2018-05-23 15:21 被阅读33次

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

为什么要有HTTPS

HTTP 是一种超文本传输协议,它是无状态的、简单快速的、基于 TCP 的可靠传输协议。

  • 明文通信,内容可以直接被窃听
  • 无法验证报文的完整性,可能被篡改
  • 通信方身份不验证,可能遇到假的客户端或服务器

HTTPS协议基于TLS协议,HTTPS能够有效保障数据机密性与完整性,并且能够完成用户端与客户端的双重验证。
https://juejin.im/entry/571d870a8ac24700646ee43b
https://juejin.im/entry/575ab9b36be3ff0069492bc6

HTTPS的工作原理

1.ClientHello

客户端发起请求,以明文传输请求信息,包含版本信息,加密套件候选列表,压缩算法候选列表,随机数random_C,扩展字段等信息

2.ServerHello - ServerHelloDone

4个过程(单条发送,有的是合并发送)服务器返回协商的信息结果,选择使用的协议版本,选择的加密套件,选择的压缩的算法,随机数random_S等(随机数用于后续的协商密钥). 服务器也会配置并返回对应的证书链Certificate,用于身份验证与密钥交换,然后会发送ServerHelloDone信息用于通知服务器信息发送结束.

3.证书校验

客户端对服务器返回的证书进行校验,只有证书验证通过后,才能进行后续的通信

4.ClientKeyExchange-Finished

服务器证书验证合法后,客户端计算产生随机数Pre-master,并用server证书中的公钥加密,发送给服务器,同时客户端会根据已有的三个随机数生成协商密钥.客户端会通知服务器后续的通信都采用协商的通信密钥和加密算法进行加密通信,然后发送Finished消息用于通知服务器信息发送结束.

5.服务器端生成协商密钥

服务器也会根据已有的三个随机数使用相应的算法生成协商密钥,会通知客户端后续的通信都采用协商的通信密钥和加密算法进行通信,然后发送Finished消息用于通知服务器信息发送结束.

6.握手结束

在握手阶段结束后,客户端和服务器数据传输开始使用协商密钥进行加密通信.

相关文章

  • 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/lvvrjftx.html