美文网首页
(3)HTTP 与 HTTPS

(3)HTTP 与 HTTPS

作者: hedgehog1112 | 来源:发表于2020-12-16 08:30 被阅读0次

1、HTTP 与 HTTPS区别:安全、连接、端口号

2、HTTPS 解决:窃听风险、篡改风险、冒充风险

3、如何解决:混合加密、摘要算法、数字证书

4、建立连接:两次hello协议/算法/随机随,客户端先向服务器要公钥加密信息,服务器收到密文后,用自己私钥解密

一、HTTP 与 HTTPS 有哪些区别?

1)安全:

      HTTP 超文本传输协议,明文传输,有安全风险

      HTTPS 解决不安全,在TCP 和 HTTP 网络层间加入SSL/TLS 安全协议,使报文能加密传输

2)连接:

    HTTP :简单,TCP 三次握手,便可报文传输

    HTTPS TCP 三次握手后,需进行SSL/TLS 握手过程,才加密报文传输

ps:HTTPS协议要向 CA(证书权威机构)申请数字证书,保证服务器身份可信

3)端口号: HTTP 80 ,HTTPS 443

二、HTTPS 解决了 HTTP 的哪些问题?

窃听风险:如通信链路。https+http解:交互信息无法窃取,但号会因为「自身忘记」而没。

篡改风险,如强制入垃圾广告,解:无法篡改通信内容,篡改就不能正常显示,但百度「竞价排名」依然可搜索垃圾广告

冒充风险,如冒充淘宝网站,用户钱没。解:身份证书校验,SSL/TLS 协议保证通信安全

3、HTTPS 是如何解决上面的三个风险的?

混合加密:方式实现信息的机密性,解决窃听风险

摘要算法:为数据生成独一无二「指纹」,校验数据完整性,解决篡改

数字证书:放入服务器公钥,解决冒充风险

1. 混合加密

    1)非对称加密:只有交换「会话秘钥」时。个:公钥可任意分发。私钥保密,解决密钥交换问题但速度慢。

    2)对称加密:通信过程全部对称加密的「会话秘钥」方式加密明文数据。一个,运算速度快,必须保密,无法做到安全的密钥交换

2. 摘要算法

校验完整性:客户端发明文前,通过摘要算法算出明文「指纹」「指纹 + 明文」一同发送

服务器解密,比较「指纹」和当前算出「指纹」相同,说明数据完整

3. 数字证书

客户端先向服务器要公钥加密信息,服务器收到密文后,用自己私钥解密

保证公钥不被篡改,CA (数字证书认证机构)将服务器公钥放在数字证书(由数字证书认证机构颁发,可信)中。数字证书工作流程:

4、HTTPS  是如何建立连接的?其间交互了什么?

前两步也就是 SSL/TLS 的建立过程(握手阶段)涉及四次通信,可见下图:

1)客户端先向服务器要公钥加密信息

2)双方协商生产「会话秘钥」进行加密通信

SSL/TLS 协议建立详细流程:

1. ClientHello

客户端向服务器发起加密通信请求,发送:1)支持SSL/TLS 协议版本、2)密码套件列表(如 RSA 加密算法)3)生产「会话秘钥」的随机数

2. SeverHello

收到客户端请求后响应:1)确认协议版本(如不支持,关闭加密通信)    2)确认密码套件列表  3)生产随机数  4)服务器数字证书

3.客户端回应

通过浏览器或操作系统中CA 公钥确认数字证书真实性

从证书中取出公钥,用它加密报文,向服务器发送:1)随机数    2)加密算法变通知,用「会话秘钥」加密    3)握手结束通知,所有内容做个摘要,供服务端校验

    ps:双方同时有三个随机数算法各自生成本次通信的「会话秘钥」

4. 服务器最后回应

收到随机数算出「会话秘钥」。然后,向客户端发:1)加密算法变通知,用「会话秘钥」加密    2) 握手结束通知,所有内容做个摘要,供服务端校验

接下来,双方进入加密通信,用普通HTTP 协议,只不过用「会话秘钥」加密内容

https://mp.weixin.qq.com/s/bUy220-ect00N4gnO0697A

相关文章

  • (3)HTTP 与 HTTPS

    1、HTTP 与 HTTPS区别:安全、连接、端口号 2、HTTPS 解决:窃听风险、篡改风险、冒充风险 3、如何...

  • 2018-3 钉钉电话面试

    笔试 Http与Https 1、Http与Https的区别? 2、为什么Https更安全? 3、简述SSL认证过程...

  • http 与 https

    通常来讲,http 效率更高,https 更安全。但是更详细的你可能就不知道了,下面是我总结的一些两者之间的区别。...

  • HTTP与HTTPS

    概述 HTTP是互联网上应用最为广泛的一种网络协议,有名超文本链接协议。我们在开发中请求数据,发送数据都会用到HT...

  • http与https

    作者:forthealllightgithub.com/forthealllight/blog/issues/19...

  • http与https

    安全套接字层(SSL)超文本传输协议HTTPS,为了数据传输的安全,HTTPS在HTTP的基础上加入了SSL协议,...

  • HTTP与HTTPS

    https://www.cnblogs.com/by-3ks/articles/4113849.html http...

  • HTTP与HTTPS

    1.http 1)http:是互联网上应用最为广泛的一种网络协议,是一个客户端和服务器端请求和应答的标准(TCP)...

  • HTTP与HTTPS

    背景: http是超文本传输协议,使用与web浏览器与服务器之间的数据传输,http是由明文的形式将数据传递到服务...

  • HTTP与HTTPS

    Http协议. HTTP协议,超文本传输协议,HTTP是一个无状态的协议。无状态是指客户端(Web浏览器)和服务器...

网友评论

      本文标题:(3)HTTP 与 HTTPS

      本文链接:https://www.haomeiwen.com/subject/yhmggktx.html