[转帖]HTTPS的简单说明
HTTPS(全称:Hyper Text Transfer Protocol over SecureSocket Layer),是以安全为目标的 HTTP 通道,简单讲是 HTTP 的安全版,即 HTTP 下加入 SSL 层。 HTTPS 的安全基础是 SSL,因此加密的详细内容就需要 SSL 。
https://tech.upyun.com/article/338/%E4%B8%8D%E6%98%AF%20HTTPS%20%E6%8B%96%E6%85%A2%E7%BD%91%E7%AB%99%E9%80%9F%E5%BA%A6%EF%BC%8C%E8%80%8C%E6%98%AF%E4%BC%98%E5%8C%96%E5%81%9A%E7%9A%84%E4%B8%8D%E5%A4%9F%E4%BC%98%E7%A7%80.html
HTTPS 存在不同于 HTTP 的默认端口及一个加密/身份验证层在( HTTP 与 TCP 之间)。这个系统提供了身份验证与加密通讯方法。现在它被广泛用于万维网上安全敏感的通讯,例如交易支付方面。传统的 HTTP 模式,存在着大量的灰色中间环节,相关信息很容易被窃取,但 HTTPS 却是通过认证用户与服务器,将数据准确地发送到客户机与服务器,并采用加密方式以防数据中途被盗取,大大降低了第三方窃取信息、篡改冒充身份的风险。
HTTPS 访问所面临的问题
通常有得必有所失,HTTPS 虽然增加了网站安全性,但也会增加用户访问网站的时间以及服务器性能的消耗。下面我们来看看 HTTPS 面临的一些问题。
- HTTPS 多次握手,会一定程度上降低用户访问速度
- 网站改用 HTTPS 以后,由 HTTP 跳转到 HTTPS 的方式增加了用户访问耗时(多数网站采用 301、302 跳转)
- HTTPS 涉及到的安全算法会消耗 CPU 资源,需要增加大量机器(HTTPS 访问过程需要加解密)
- SSL 证书费用较很高,以及其在服务器上的部署、更新维护非常繁琐
又拍云一直对 HTTPS 性能进行持续优化,致力于 HTTPS 达到更快的数据传输性能。又拍云 HTTPS 优化已支持了以下特性:HTTP/2+Server Push、TLS 1.3+最低 TLS 版本控制、HSTS、ChaCha20-Poly1305、TLS Record Size、OCSP Stapling等,这些特性极大提升了 HTTPS 传输速度和用户的访问体验。
持续优化,让 HTTPS 更快更安全
为了使 HTTPS 达到更快的数据传输性能,并且在传输过程中更加安全,又拍云不遗余力地对其进行优化。下面具体来看下这些新特性到底给 HTTPS 带来了什么。
HTTP/2+Server Push
HTTP/2 即超文本传输协议 2.0,是下一代 HTTP 协议。它由国际互联网工程任务组 (IETF)的 Hypertext Transfer Protocol Bis (httpbis) 工作小组进行开发,以 SPDY 为原型,经过两年多的讨论和完善最终确定。
HTTP/2 优势如下:
- HTTP/2 采用二进制格式传输数据,其在协议的解析和优化扩展上带来更多的优势和可能。
- HTTP/2 对消息头采用 HPACK 进行压缩传输,能够节省消息头占用的网络的流量。
- 多路复用,简单说就是所有的请求可以通过一个 TCP 连接并发完成。
- Server Push:服务端能够更快的把资源推送给客户端。
其中 Server Push 是 HTTP/2 规范中引入的一种新技术,即服务端在没有被客户端明确的询问下,抢先地 “推送” 一些网站资源给客户端(浏览器),该特性可以极大的改善页面访问效果。
又拍云 CDN 当前已全平台支持 HTTP/2,并已默认开启。又因 HTTP/2 是在 HTTPS 协议的基础上实现的,所以只要使用又拍云 HTTPS 加速服务的域名,都可免费享受 HTTP/2 服务,无需做任何特殊配置。
Server Push 开启路径:登陆 CDN 控制台,依次进入:服务管理 > 功能配置 > HTTPS > HTTP/2 ,点击【管理】按钮即可开始配置。配置中,其中【匹配路径】为必填项,【推送资源】为非必填项。
TLS 1.3+最低 TLS 版本控制
TLS 1.3 是 TLS 协议中最新、最快和最安全的版本,相比旧版的 TLS 协议增加了多项新功能。通过简化 SSL 握手,提高了建连速度,减少了延迟。并通过移除有安全隐患的加密算法,提高了用户访问的性能、效率和安全性等等。
△ TLS 1.2 握手流程
△ TLS 1.3 握手流程
如图所示,TLS1.2 协议中需要加密套件协商、密钥信息交换、ChangeCipherSpec 协议通告等过程,需要消耗 2-RTT 的握手时间,这也是造成 HTTPS 协议慢的一个重要原因之一,而在 TLS 1.3 中,客户端首先不仅发送 ClientHello 支持的密码列表,而且还猜测服务器将选择哪种密钥协商算法,并发送密钥共享,使第一次握手时只需要 1-RTT,从而提高了速度。除此之外,TLS 1.3 还有以下新特性:
- 废除不支持前向安全性的 RSA 以及具有 CVE-2016-0701 漏洞的 DH 密钥交换算法;
- MAC 只使用 AEAD 算法;
- 禁用 RC4 / SHA1 等不安全的算法;
- 加密握手消息;
- 减少往返时延 RTT,支持 0-RTT;
- 兼容中间设备 TLS 1.2;
- 加密握手消息。
另外,随着加密标准的升级,TLS 1/1.1 将逐渐被全行业禁用。目前正处于 TLS 1.2 取代 TLS 1/1.1 的过渡时期,2018 年将会有越来越多的互联网安全企业启用 TLS 1.2。又拍云 CDN 服务可灵活配置网站使用的最低 TLS 协议版本,提升网站的安全性。选择的协议级别越高,相应的也就更安全,但是可以支持的浏览器也就越少,有可能会影响终端用户访问,请谨慎选择配置。
TLS 1.3 及最低 TLS 版本开启路径:CDN → 功能配置 → HTTPS → TLS1.3/最低 TLS 版本
HSTS
又拍云采用了 HSTS(HTTP Strict Transport Security)技术,开启此功能后,将保证浏览器始终连接到网站的 HTTPS 加密版本,不需要用户手动在URL地址栏中输入 HTTPS 的地址。HSTS 的开启减少用户等待 301/302 的跳转时间, 有效地保护网站和用户的数据安全。
HSTS 开启路径:登陆 又拍云CDN 控制台,依次进入:服务 > 功能配置 > HTTPS > HSTS,点击管理即可开始配置。
ChaCha20-Poly1305——HTTPS 移动端对称加密套件
ChaCha20-Poly1305 是由 Google 专门针对移动端 CPU 优化而采用的一种新式流式加密算法,它的性能相比普通算法要提高 3 倍,在 CPU 为精简指令集的 ARM 平台上尤为显著(ARM v8 前效果较明显)。其中 ChaCha20 是指对称加密算法,Poly1305 是指身份认证算法。ChaCha20-Poly1305 算法精简,有安全性强、兼容性强等特点,可减少加密解密所产生的数据量进而可以改善用户体验,减少等待时间,节省电池寿命等。
又拍云 CDN 已经全面支持 Google 推出的针对移动端优化的加密套件——ChaCha20-Poly1305。所有用户都可以享受到该算法加解密性能提升,网页加载时间减少,电池寿命延长等优势。又拍云 CDN 已经默认支持 ChaCha20-Poly1305,并针对不支持 AES-NI 的终端优先选择此算法作为对称加密算法。
贴心福利,免费 SSL 证书+自主配置
至于前文中提到的 SSL 证书昂贵以及申购、配置麻烦的问题,又拍云也已经帮你想好了解决方法。又拍云联合 Symantec、GeoTrust、TrustAsia、Let’s Encrypt 推出付费和免费 SSL 证书申请与管理一站式服务,无需繁杂流程,一键申请,自主部署,轻松实现网站与 Web 应用的 HTTPS 加密部署。
最后,大家可以看到,又拍云在优化 HTTPS 访问时,付出了艰辛的努力,实现了各种优化功能,让用户使用的更加安心、舒心,带给用户更好的体验。如果你的网站还没有开启 HTTPS,不要犹豫,赶紧部署起来,赶上全网加密时代吧。
[转帖]HTTPS的简单说明的更多相关文章
- [转帖]PG的简单备份恢复 找时间进行测试
转帖PG的简单使用 https://blog.csdn.net/lk_db/article/details/77971634 一: 纯文件格式的脚本: 示例:1. 只导出postgres数据库的数据, ...
- Https系列之一:https的简单介绍及SSL证书的生成
Https系列会在下面几篇文章中分别作介绍: 一:https的简单介绍及SSL证书的生成二:https的SSL证书在服务器端的部署,基于tomcat,spring boot三:让服务器同时支持http ...
- Spring Boot 支持 HTTPS 如此简单,So easy!
这里讲的是 Spring Boot 内嵌式 Server 打 jar 包运行的方式,打 WAR 包部署的就不存在要 Spring Boot 支持 HTTPS 了,需要去外部对应的 Server 配置. ...
- Spring Boot 支持 HTTPS 如此简单,So easy!
这里讲的是 Spring Boot 内嵌式 Server 打 jar 包运行的方式,打 WAR 包部署的就不存在要 Spring Boot 支持 HTTPS 了,需要去外部对应的 Server 配置. ...
- windows系统 phpstudy2018 配置阿里云https最简单的流程!
一.从阿里去下载ssl文件放到C:\phpStudy\PHPTutorial\Apache\conf\cert 二.首先phpstudy开户php_openssl扩展,具体如下图 一般网上的教程,都要 ...
- HTTPS分析-简单易懂
一.简单总结 1.HTTPS概念总结 HTTPS 就是对HTTP进行了TLS或SSL加密. 应用层的HTTP协议通过传输层的TCP协议来传输,HTTPS 在 HTTP和 TCP中间加了一层TLS/SS ...
- https的简单学习
HTTPS介绍: (全称:Hyper Text Transfer Protocol over Secure Socket Layer 或 Hypertext Transfer Protocol Sec ...
- 设置Portainer管理Docker并且开启https(简单方法)
1. 序言 Portainer是一个十分好用的docker图形化管理界面,可以很方便的查看容器状态,错误log等等. 2. 安装 安装portainer是十分简单的,只需要执行docker pull ...
- http与https的简单比较
一.概念 1.HTTP:是互联网上应用最为广泛的一种网络协议,是一个客户端和服务器端请求和应答的标准(TCP),用于从WWW服务器传输超文本到本地浏览器的传输协议,它可以使浏览器更加高效,使网络传输减 ...
随机推荐
- 学习OpenCV——SVM
学习OpenCV——SVM 学习SVM,首先通过http://zh.wikipedia.org/wiki/SVM, 再通过博客http://blog.csdn.net/yang_xian521/art ...
- linux中mycat的配置,分片,以及主从复制
1.1 安装环境 1.jdk:要求jdk必须是1.7及以上版本 2.Mysql:推荐mysql是5.5以上版本 1.2 安装步骤 Mycat有windows.linux多种版本.本教程为lin ...
- 洛咕 P2494 [SDOI2011]保密
出题人没素质啊,强行拼题还把题面写得又臭又长. 简单题面就是有一张图,每条边有两个权值\(t,s\),有无限支军队,一支军队可以打一个点,代价是从n到这个点的路径的\(\frac{\sum t}{\s ...
- MySQL数据库引擎、事务隔离级别、锁
MySQL数据库引擎.事务隔离级别.锁 数据库引擎InnoDB和MyISAM有什么区别 大体区别为: MyISAM类型不支持事务处理等高级处理,而InnoDB类型支持.MyISAM类型的表强调的是性能 ...
- Python3中isdigit(), isdecimal(), isnumeric()的区别和字符串的常用方法
# 全部小写 string.lower() # 全部大写 string.upper() # 是否全部小写 string.islower() # 是否全部大写 string.isupper() # 首字 ...
- python 网页转pdf
主要使用的是wkhtmltopdf的Python封装——pdfkit centos环境 安装:Install python-pdfkit pip install pdfkit 安装:Install w ...
- TensorFlow中的卷积函数
前言 最近尝试看TensorFlow中Slim模块的代码,看的比较郁闷,所以试着写点小的代码,动手验证相关的操作,以增加直观性. 卷积函数 slim模块的conv2d函数,是二维卷积接口,顺着源代码可 ...
- plsql 不修改tnsnames.ora文件
PLSQL 不修改tnsname直接连数据库的方式在PLSQL的Database中直接输入192.168.1.6:1521/VP.其中192.168.1.6为数据库的IP:1521为数据库端口:VP为 ...
- class 3 求数组中的最大值(单元测试)
1.问题引出: int Largest(int list[], int length) { int i,max; ; i < (length – ); i ++ ) { if(list[i] & ...
- 关于httpServlet.service()步骤
关于httpServlet.service()步骤 关于()方法 1.HTTP Servlet 使用一个 HTML 表格来发送和接收数据.要创建一个 HTTP Servlet,就需要扩展 HttpSe ...