HTTPS为啥子安全?

前言

HTTPS其实不是什么新鲜协议,很早之前google等大公司已经陆续开始使用了。那既然巨头们早已开始使用HTTPS了,想必一定有过人之处,接下来看看HTTPS是如何保证我们的数据安全的。

先来看看与https有啥区别

HTTPS为啥子安全?_第1张图片

 如上图所示 HTTPS 相比 HTTP 多了一层 SSL/TLS,正式这层保证了我们数据通信安全

由于http没有进行身份验证所以容易被黑客劫持,伪造http请求下发给客户端

HTTPS为啥子安全?_第2张图片

 由于http没有对身份进行验证也没有任何加密措施所以极度容易被劫持数据,所以https引入了加密和证书机制来保证数据安全和验证服务器身份

HTTPS为啥子安全?_第3张图片

如上所示,在进行第 2 步时服务器发送了一个SSL证书给客户端,SSL 证书中包含的具体内容有:

1.证书的发布机构CA

2.证书的有效期时间

3.服务器的公钥

4.证书所有者

5.hash签名

当客户端在接受到服务端发来的SSL证书时,会对证书的真伪进行校验,以浏览器作为例子:

1.首先浏览器读取证书中的证书所有者、有效期等信息进行一一校验

2.浏览器开始查找操作系统中已内置的受信任的证书发布机构CA,与服务器发来的证书中的颁发者CA比对,用于校验证书是否为合法机构颁发

3.如果找不到,浏览器就会报错,说明服务器发来的证书是不可信任的。

4.如果找到,那么浏览器就会从操作系统中取出 颁发者CA 的公钥,然后对服务器发来的证书里面的签名进行解密

5.浏览器使用相同的hash算法计算出服务器发来的证书的hash值,将这个计算的hash值与证书中签名做对比

6.对比结果一致,则证明服务器发来的证书合法,没有被冒充

7.此时浏览器就可以读取证书中的公钥,用于后续加密了

所以通过发送SSL证书的形式,既解决了公钥获取问题,又解决了服务器身份验证的问题,HTTPS加密过程也就此形成。

所以相比HTTP,HTTPS 传输更加安全

(1) 所有信息都是加密传播,黑客无法窃听。

(2) 具有校验机制,一旦被篡改,通信双方会立刻发现。

(3) 配备身份证书,防止身份被冒充。
 

 

你可能感兴趣的:(安全,flutter,android,https)