標籤:targe 登陸 輕鬆 cve a20 移除 協議 瀏覽器 套件
HTTPS(全稱:Hyper Text Transfer Protocol over SecureSocket Layer),是以安全為目標的 HTTP 通道,簡單講是 HTTP 的安全版,即 HTTP 下加入 SSL 層。 HTTPS 的安全基礎是 SSL,因此加密的詳細內容就需要 SSL 。
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 即超文字傳輸通訊協定 (HTTP) 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 握手流程△ 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://zhuanlan.zhihu.com/p/42763471
不是 HTTPS 拖慢網站速度,而是最佳化做的不夠優秀