简述http与https

http协议,超文本传输协议,用于客户端与服务端通信,http通常以明文的方式传递内容,发送的内容很容易被劫持,恶意篡改,因此http协议不能用于传输一些敏感信息,因此需要使用另一种协议:安全套接字层超文本传输协议HTTPS,为了数据传输的安全,HTTPS在HTTP的基础上加入了SSL协议,SSL依靠证书来验证服务器的身份,并为浏览器和服务器之间的通信加密。

https的实现原理

https的整体过程可以分为证书验证阶段,和数据传输阶段。https在加密过程中使用的是非对称加密,在数据传输的过程中使用的是对称加密。对称加密就是加密方式与解密方式相同。非对称加密刚好相反

证书验证阶段  

1.在浏览器中输入URL地址,浏览器向服务器发送请求;

2.服务器收到浏览器的请求,从第三方机构获得认证证书;

3 服务器返回证书,证书中包含了公钥

4.由浏览器判断证书是否合法,如果不合法,给出提示告警信息,如果合法则生成随机数 ,进入到数据传输阶段;

数据传输阶段

5.通过获得的公钥对证书生成的随机数进行加密

6.服务端收到加密的随机数,用私钥进行解密,

7.服务器用传入的随机数对传输的数据进行加密

8.浏览器根据本地存储的随机数进行解密  

其实https的加密过程大致的可以理解为,因为http传输的信息都是明文,所以客户端和服务器约定了一种密码,来对传输的信息进行加密,即,但是客户端和服务器约定的密码也有被截获的可能性,因此,这个密码通过第三方的托管,由第三方生成,再对密码进行加密,可以更大程度的保证安全,首先由服务器向第三方机构获取证书,证书可以生成随机数,即密码,然后用公钥对随机数加密,即对密码进行加密,然后用密码再对传输的内容进行加密解密,完成数据的安全传输

为什么数据传输要使用对称加密

 

首先,非对称加密的加解密效率是非常低的,而 http 的应用场景中通常端与端之间存在大量的交互,非对称加密的效率是无法接受的;

 

另外,在 HTTPS 的场景中只有服务端保存了私钥,一对公私钥只能实现单向的加解密,所以 HTTPS 中内容传输加密采取的是对称加密,而不是非对称加密。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值