HTTP和HTTPS的区别小结

相比https,大家对http了解的可能会更多一些,他们之间虽然只差一个s,但是区别却又很大

1.HTTP和HTTPS基本概念

HTTP(Hyper Text Transfer Protocol)超文本传输协议,协议是基于TCP的应用层协议,是在互联网应用最广泛的一种网络协议,是一个客户端和服务端请求和应答的标准(TCP)。用于超文本(www)服务器传输到本地浏览器的传输协议,它可以使浏览器更加高效,使网络传输减少。但是他不关心数据传输的细节,主要是用来规定客户端和服务端的数据传输格式,最初是用来想客户端传输HTML页面内容的。比如现在我们搭建的web项目,用tomcat服务器启动后会url前也会自动加上一个http

HTTPS(Hyper Text Transfer Protocol over Secure Layer)即超文本传输安全协议,https就是以安全为目标的HTTP通道,即HTTP的安全版,在HTTP下加入SSL层,HTTPS的安全基础是SSL,加密的详细内容就需要url,它是一个URI scheme(抽象标识符体系),句法类同http:体系。用于安全的HTTP数据传输。https:URL表明它使用了HTTP,但HTTPS存在不同于HTTP的默认端口及一个加密/身份验证层(在HTTP与TCP之间)。

2.HTTPS产生的目的

HTTPS诞生的目的,超文本传输协议是以明文方式发送内容的,并不提供任何方式的数据加密,当web浏览器和网站服务之间的传输保温被攻击者截取,就可以轻易地读懂传输的信息,因此http协议并不适合传输一些敏感的信息,比如银行卡号,密码等等。因此为了保障用户信息的安全性,就有了HTTPS协议的产生,HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,要比http协议安全。HTTPS协议的主要作用可以分为两种:一种是建立一个信息安全通道,来保证数据传输的安全;另一种就是确认网站的真实性。

HTTP协议的网站容易被篡改和劫持,如一些不良的运营商会通过代理服务器在你的页面中植入广告等。
因此很多网站选择使用HTTPS协议。HTTPS协议通过TLS层和证书机制提供了内容加密,身份认证,数据完整性三大功能

3.HTTPS传输过程

简单来说https传输过程:

首先,客户端向服务器发出加密请求,然后服务器用自己的私钥加密网页以后,连同本身的数字证书一起发送给客户端,这个数字证书里边包含了网站的网址,加密的公钥,以及证书的颁发机构等信息,获得证书以后浏览器会去验证证书的合法性,在我们平时打开的https网站中,如果网站合法安全收信人,浏览器的url前端会出现一个小锁头的标志,如果数字证书与你正在浏览的网址不一致,就会给出警告,提示证书不受信任

 4.HTTP的传输过程

Client与Server建立连接,HTTP开始工作

建立连接后,Client发送一个请求给Server,请求方式格式为

统一资源标识符(URL)、协议版本号,后边是MIME信息包括请求修饰符,Client信息和可能的内容。

Server接到请求后,给予相应的响应信息,其格式为一个状态行,包括信息的协议版本号、一个成功或错误的代码,后边是MIME信息包括Server信息、实体信息和可能的内容。

Client接收Server返回的信息通过浏览器显示在用户的显示屏上,然后Client和Server断开连接。

6.HTTP协议特点

1.支持客户/服务器模式。
2.简单快速:客户向服务器请求服务时,只需传送请求方法和路径。请求方法常用的有GET、HEAD、POST。每种方法规定了客户与服务器联系的类型不同。
由于HTTP协议简单,使得HTTP服务器的程序规模小,因而通信速度很快。
3.灵活:HTTP允许传输任意类型的数据对象。正在传输的类型由Content-Type加以标记。
4.无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。
5.无状态:HTTP协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。另一方面,在服务器不需要先前信息时它的应答就较快。

7.HTTPS一般使用的加密与HASH算法

非对称加密算法:RSA,DSA/DSS 这些是在握手过程中加密使用的

对称加密算法:AES,RC4,3DES 这些是在传输数据中加密使用的

HASH算法:MD5,SHA1,SHA256 这些是用于验证数据的完整性

非对称加密算法会生成公钥和私钥,公钥只能用于加密数据,因此可以随意传输,而网站的私钥用于对数据进行解密,所以网站都会非常小心的保管自己的私钥,防止泄漏。

8.HTTP和HTTPS区别

https协议需要到ca申请证书,一般免费证书较少,因而需要一定费用。

http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。

http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。

http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值