HTTPS加密通信过程原理

目录

一、从网络层协议理解HTTPS

二、从密码学理解

三、加密

对称加密

非对称加密

1、客户端请求服务端,发送TLS版本,和加密套件,和第一个随机数

2、服务器收到请求后,向客户端发送生成的第二个随机数,TLS版本和加密套件。

3、服务器还会把自己的公钥和证书发送给客户端

4、客户端生成第三个随机数(预主密钥),

5、服务器接收到预主密钥后,会用自己的私钥进行解密

6、生成会话密钥

7、此后的对话全部用会话密钥进行对称加密回话,

过程图

密码小结

密码技术


首先使用HTTPS协议会有80端口使用443端口

SSL:安全套阶层,于1994年由网景公司设计,1995发布3.0版本

TLS:传输层安全性协议,是IETF在SSL的基础上设计的协议(也就是HTTPS后边的S)

一、从网络层协议理解HTTPS

层级基本不变,只不是在HTTP的基础上加上TLS用来保证安全

HTTP:超文本传输协议

HTTPS:超文本传输安全协议

TLS:位于HTTP和TCP之间的协议,其内部有TLS握手协议,TLS记录协议

HTTPS是由HTTP进行通信,利用TLS保证安全

二、从密码学理解

这里的安全包括两部分,一部分是出书内容加密,另一部分是服务端身份验证

三、加密

对称加密

A发送一段信息,通过密钥key加密后发送,发送到B以后B同样用密钥Key解密,这样的加密就叫做加密

非对称加密

1、客户端请求服务端,发送TLS版本,和加密套件,和第一个随机数

2、服务器收到请求后,向客户端发送生成的第二个随机数,TLS版本和加密套件。

3、服务器还会把自己的公钥和证书发送给客户端

假设一个场景:你访问baidu.com时候,有一个极其相似的网站baidv.com,你访问的网站是不对的,这就体现了证书的用处,客户端会向CA验证证书是否正确。保证访问无误。

4、客户端生成第三个随机数(预主密钥),

这时客户端不会将第三个随机数直接发送,而是用获得公钥加密后发送

5、服务器接收到预主密钥后,会用自己的私钥进行解密

这时候就保证通讯安全,因为这时候只有服务器知道预主密钥

6、生成会话密钥

客户端和服务器 同时利用利用第一随机数,第二随机数,和预主密钥生成会话密钥

7、此后的对话全部用会话密钥进行对称加密回话,

如果次次都利用非对称加密,不仅浪费时间,性能还会大大影响效率,这时候只要不暴露自己的回话密钥就是安全的。

过程图

 

密码小结

密码作用组成
消息认证码确认消息的完整、并对消息的来源认证共享秘钥+消息的散列值
数字签名对消息的散列值签名公钥+私钥+消息的散列值
公钥密码解决秘钥的配送问题公钥+私钥+消息
证书解决公钥的归属问题公钥密码中的公钥+数字签名

密码技术

  1. 伪随机数生成器:秘钥生成随机性,更难被猜测

  2. 对称密码:对称密码使用的秘钥就是由伪随机数生成,相较于非对称密码,效率更高

  3. 消息认证码:保证消息信息的完整性、以及验证消息信息的来源

  4. 公钥密码:证书技术使用的就是公钥密码

  5. 数字签名:验证证书的签名,确定由真实的某个 CA 颁发

  6. 证书:解决公钥的真实归属问题,降低中间人攻击概率

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值