美文网首页程序员
一文带你了解http和https的区别和联系

一文带你了解http和https的区别和联系

作者: 技术猿小黄 | 来源:发表于2020-07-13 00:52 被阅读0次

    http和https最主要的差别就是http是明文传输数据,而https传输的数据经过加密。


    什么是http

    HTTP,英文全称 Hyper Text Transfer Protocol,中文全称“超文本传输协议”,按照OSI参考模型,它属于第七层应用层的协议。HTTP的作用是提供了一组规则和标准,用于控制如何在万维网上传输任何信息,提供了Web浏览器和服务器进行通信的标准规则。目前主要使用的是HTTP/1.0 和 HTTP/1.1 两个版本,主流使用的是 HTTP/1.1。

    http使用场景

    当在浏览器输入网址按回车之后,默认自动会在网址前面加上http://。它表示浏览器与web服务器通过http协议进行连接和传输数据。当浏览器获得http响应之后,会进行渲染,变成我们可以看到的网页。

    http工作原理

    http是基于C/S结构的协议,浏览器在向服务器发送请求之前,首先需要建立TCP连接,然后才能发送HTTP请求报文,并接收HTTP响应报文。

    http请求响应过程大概可以分为四步:

    (1)客户端请求服务器建立连接;

    (2)连接建立后,客户端向服务器发送http请求;

    (3)服务器接收到http请求后,并根据请求做相应的响应;

    (4)完成请求之后,客户端与服务端断开连接。

    什么是https

    https,英文全称 Hyper Text Transfer Protocol over SecureSocket Layer,中文全称 超文本传输安全协议。是在http的基础上加上TLS/SSL协议,通过加密传输和身份验证保证传输的安全性。https最初是基于ssl,后来ssl协议升级并命名为tls协议,目前tls协议最新版本是tls1.3,主流使用的是tls1.2版本。

    有了http了,为什么需要https?

    http能完成网站浏览服务,但是也有很明显的安全缺陷,主要是明文传输数据和缺乏信息完整性校验,通俗理解就是,双方传输的数据可以被第三方窃取,知道你传输的是什么内容,甚至还可以对数据进行修改,双方却无法察觉到。特别是在网站登录和网络支付的时候,使用http更致命。

    http的风险总结为:

    (1)窃听风险,第三方可以获取通信内容

    (2)篡改风险,第三方可以修改通信内容

    (3)冒充风险,第三方可以冒充他人参与通信

    https的作用

    https就是为了解决http的风险而设计的

    (1)数据加密,通信的数据都是加密的,无法被窃听

    (2)完整性校验,加密的通信数据,经过消息完整性校验MAC,防止被篡改

    (3)身份验证,TLS握手过程使用的证书是经过权威CA签名的,进行身份验证,防止身份假冒

    https工作原理

    http和https的区别

    安全性不一样。http没有用于数据加密和数据完整性校验的安全机制,而https通过数字证书来保障双方的通信

    监听端口不一样。http监听80端口,而https监听443端口

    传输内容不一样。http以纯文本格式明文传输,而https以密文格式传输

    协议头不一样。http的URL以"http://"开头,而https的URL以"https://"开头


    总结

    综上所述,http和https最主要的差别就是http是明文传输数据,而https传输的数据经过加密。

    文|技术猿小黄

    ​图|来源于网络

    创作不易,看完点个赞关注一下再走呗。

    本文由技术猿小黄原创,欢迎关注,带你一起长知识!

    相关文章

      网友评论

        本文标题:一文带你了解http和https的区别和联系

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