基本概念
http
超文本传输协议,是互联网上应用最广泛的一种网络协议,是一个客户端和服务端请求和应答的标准(TCP),用于从www服务器传输超文本到本地浏览器的传输协议,使浏览器更高效,使网络传输减少。
https
是以安全为目标的HTTP通道,简单讲是HTTP安全版,即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密详细内容就需要SSL。主要作用是建立一个信息安全通道,来确保数组的传输,确保网站的真实性。
http和https区别
http 传输的数据都是未加密的,也就是明文的,网景公司设置了SSL 协议来对http 协议
传输的数据进行加密处理,简单来说https 协议是由http 和ssl 协议构建的可进行加密传
输和身份认证的网络协议,比http 协议的安全性更高。
- HTTPS 协议需要ca 证书,费用较高。
- HTTP 是超文本传输协议,信息是明文传输,HTTPS 则是具有安全性的SSL 加密传输协议。使用不同的链接方式,端口也不同,一般而言,HTTP 协议的端口为80,HTTPS 的端口为443。
- HTTP 的连接很简单,是无状态的;HTTPS 协议是由SSL+HTTP 协议构建的可进行加密传输、身份认证的网络协议,比HTTP 协议安全。
https 协议的工作原理
- 客户使用https url 访问服务器,则要求web 服务器建立ssl 链接。
- web 服务器接收到客户端的请求之后,会将网站的证书(证书中包含了公钥),返回或者说传输给客户端。
- 客户端和web 服务器端开始协商SSL 链接的安全等级,也就是加密等级。
- 客户端浏览器通过双方协商一致的安全等级,建立会话密钥,然后通过网站的公钥来加。
- 密会话密钥,并传送给网站。
- web 服务器通过自己的私钥解密出会话密钥。
- web 服务器通过会话密钥加密与客户端之间的通信。
通俗点理解:
使用https时,服务器和客户端会建立一个安全通道,服务端传输给客户端一个未上锁的盒子,这个盒子的钥匙在服务器手里,客户端将要传输的东西放入盒子里,然后将盒子传输给服务器,服务器再使用钥匙打开。
HTTPS协议的优缺点
优点
- 使用HTTPS 协议可认证用户和服务器,确保数据发送到正确的客户机和服务器
- HTTPS 协议是由SSL+HTTP 协议构建的可进行加密传输、身份认证的网络协议,要比HTTP 协议安全,可防止数据在传输过程中不被窃取、改变,确保数据的完整性。
- HTTPS 是现行架构下最安全的解决方案,虽然不是绝对安全,但它大幅增加了中间人攻击的成本。
- 谷歌曾在2014 年8 月份调整搜索引擎算法,并称“比起同等HTTP 网站,采用HTTPS加密的网站在搜索结果中的排名将会更高”。
缺点
- https 握手阶段比较费时,会使页面加载时间延长50%,增加10%~20%的耗电。
- https 缓存不如http 高效,会增加数据开销。
- SSL 证书也需要钱,功能越强大的证书费用越高。
- SSL 证书需要绑定IP,不能再同一个ip 上绑定多个域名,ipv4 资源支持不了这种消耗。