聊一聊http与https~

78 阅读3分钟

1. 基本概念

http:

超文本传输协议,是互联网应用最广泛的一种网络协议;
它是一种客户端和服务器端请求和应答的标准,用于从WWW服务器传输超文本到本地浏览器的传输协议,它可以减少网络传输,使浏览器更加高效;
它是一个基于请求与响应,无状态的、应用层的协议,常基于TCP/IP协议传输数据;     

https:

它是以安全为目标的HTTP协议,简单讲是HTTP的安全版,即在HTTP下加入SSL层。它的安全基础是SSL,加密的详细内容就需要SSL协议。
它是一种通过计算机网络进行安全通信的传输协议,经由HTTP进行通信,利用SSL/TLS建立全信道,加密数据包。
HTTPS使用的主要目的是提供对网站服务器的身份认证,同时保护交换数据的隐私与完整性。      

区别:

Https协议需要ca证书,费用较高。
http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。
使用不同的链接方式,端口也不同,一般而言,http协议的端口为80,https的端口为443;
http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。

2. HTTPs协议工作原理:

1.客户使用https url访问服务器,则要求web 服务器建立ssl链接;
2.web服务器接收到客户端的请求之后,会将网站的证书(证书中包含了公钥),返回或者说传输给客户端;
3.客户端和web服务器端开始协商SSL链接的安全等级,也就是加密等级;
4.客户端浏览器通过双方协商一致的安全等级,建立会话密钥,然后通过网站的公钥来加密会话密钥,并传送给网站;
5.web服务器通过自己的私钥解密出会话密钥;
6.web服务器通过会话密钥加密与客户端之间的通信。

3. HTTPs协议优点:

1.使用https协议可以认用户和服务器,确保数据发送到正确的客户机和服务器;
2.https是由http+ssl构成的加密传输协议,可以进行加密传输,身份认证,安全性高,可以防止数据在传输过程中不被窃取、改变、保证数据的完整性;
3.https是现行架构下最安全的解决方案,尽管不能保证绝对安全,但是也大大增加了中间人攻击的成本;
4.谷歌也就https协议进行了推荐,指出采用https加密的网站在搜索结果中的排名将会更高;

4. HTTPs协议缺点:

1.https握手时间比较费时,会延长页面的加载时间约50%,同时增加10%-20%的耗电;
2.https缓存不如http高效,会加大数据开销;
3.ssl证书需要money,等级越高费用越高;
4.ssl证书需要绑定ip,不能在同一个ip上绑定多个域名,ipv4资源无法支持这类消耗;