码迷,mamicode.com
首页 > Web开发 > 详细

http/1.x,http/2,https,SSL,TLS

时间:2019-03-17 15:49:15      阅读:308      评论:0      收藏:0      [点我收藏+]

标签:生成   非对称加密   http请求   服务器端   nbsp   随机   问题   无法   网络协议   

http协议封装的数据包->tcp/ip->服务器  缺点:数据包中途被窃取或者被篡改。

http协议封装的数据包->ssl加密->tcp/ip->服务器:缺点:虽然安全,但是开销变大,传输数据变慢。

http的连接很简单,是无状态的;https协议是由ssl+http协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。

https如何保证数据的传输加密?

https在传输的过程中涉及三个密钥:

服务器端用的公钥和私钥,用来进行非对称加密。

客户端产生的随机密钥,用来进行对称加密。

分为8步:

1.客户端向服务器发起HTTPS请求,连接到服务器的443端口。

2.服务器端有一个密钥对,即公钥和私钥,是用来进行非对称加密使用的,服务器端保存着私钥,不能将其泄露,公钥可以发送给任何人。

3.服务器将自己的公钥发送给客户端。

4.客户端对服务端发来的公钥进行检查,验证其合法性,如果发现公钥有问题,https传输就无法继续。然后会生成一个随机值,这个随机值就是客户端密钥,然后用服务器公钥对客户端密钥进行非对称加密,这个客户端密钥就是密文,第一次https请求就结束了。

5.服务端接收到收到客户端的密文,然后用私钥进行非对称加密,解密之后的明文就是客户端密钥,然后用客户端密钥对数据进行加密,这样数据就变成了密文。

6.服务端数据加密后的密文发给客户端。

7.客户端收到服务器发来的密文,用客户端的密钥来进行对称解密,得到服务器端发来的数据,这样第二次http请求就结束了。

 

http/1.x,http/2,https,SSL,TLS

标签:生成   非对称加密   http请求   服务器端   nbsp   随机   问题   无法   网络协议   

原文地址:https://www.cnblogs.com/smallJunJun/p/10546975.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!