5分钟搞懂https原理

概念

https(超文本传输安全协议)是一种以安全为基础的HTTP传输通道。

在了解HTTPS之前,我们首先来认识一下http:

http(超文本传输协议),HTTP是tcp/ip族中的协议之一,也是互联网上应用最为广泛的协议之一,所有的WWW(万维网)文件都必须遵循这个标准。而设计http协议的最终目的是用来在互联网上传输HTML文件

http的缺陷

明文

因为http协议在文件的传输过程中是以明文的方式传输的,这就决定了http协议不能用来传输一些隐私的信息,比如密码,账号

在这里插入图片描述

信息被窃取

用户的请求是通过服务器层层转发到web服务器的,请求最先经过路由器转发到最近的服务器,再通过一系列的算法转发到最近的服务器直到目标web服务器,中间人会窃取信息,这也不安全

在这里插入图片描述

引入https

因为上面的问题,所以需要一种安全传输协议https

https(超文本传输安全协议),https是在http协议的基础上增加了安全的属性,https通过ssl/tls(安全套阶层)来加密数据包,ssl再通过数字证书来验证服务器的身份,以此来实现数据在客户端到服务器之间的传输安全。

https协议在数据的传输过程中又是怎么进行加密和身份验证的?

方案一、对称加密

在这里插入图片描述

会面临一个问题,就是秘钥A需要传递到客户手里,通过网络传输的话,中间人还是会劫持到秘钥信息,会被篡改传输的内容。如果秘钥不经过网络传输又不现实

方案二、非对称加密

非对称秘钥解密原则

私钥可以解密公钥加密的内容

公钥可以解密私钥加密的内容

在这里插入图片描述

客户端和中间人都会收到服务器端下发的公钥,那么客户端发出的消息使用公钥加密后,中间人是无法解密的;当服务器端收到消息后,返回给客户端的消息使用私钥加密的,所以,除了客户端之外,中间人仍然能解密密文,这个也是不安全的。

方案三、使用对称加密 + 非对称加密

客户端使用服务器的公钥给浏览器生成的私钥加密,然后服务器和浏览器之间用私钥加密解密传输消息,使用私钥加解密的优点是速度更快

在这里插入图片描述

问题在于,服务器返回公钥a给客户端的过程中,还是会被中间人篡改返回的公钥信息,假设中间人维护了一对公钥A私钥B,那么客户端就会把私钥c通过中间人的公钥加密并传输给中间人,所以,这种方案也不安全

最终方案:数字证书

数字证书由受信任的第三方办法,并且装机的时候就在系统中,数字证书中包含了证书持有者的信息和公钥信息,再也不用担心公钥的身份了

在这里插入图片描述

那么有一个问题,就是如何确保第三方机构公钥的身份呢,实际上数字证书CA是被操作系统信任的,内置在操作系统中 ,这样就保证了CA证书的公钥身份

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值