詳解 HTTPS 移動端對稱加密套件優

2022-02-04 10:54:15 字數 2691 閱讀 3806

近幾年,google、baidu、facebook 等網際網路巨頭大力推行 https,國內外的大型網際網路公司很多也都已啟用全站 https。 google 也推出了針對移動端優化的新型加密套件 chacha20-poly1305。

又拍雲 cdn 已經全面支援 google 推出的針對移動端優化的加密套件—— chacha20-poly1305。又拍雲平台上所有的 cdn 使用者都可以享受到該演算法加解密效能提公升,網頁載入時間減少,電池壽命延長等優勢。

在這之前又拍雲一直在對 https 效能進行持續優化,致力於 https 達到更快的資料傳輸效能。又拍雲 https 優化已支援了以下特性:session id 復用、ocsp stapling、hsts、http/2、false start,這些特性極大的提公升了 https 訪問速度。

又拍雲 cdn 現已支援的谷歌 chacha20-poly1305 加密套件,那麼相比其他加密套件,chacha20-poly1305為什麼會具有這些優勢呢?

常用的對稱加密演算法如下:

aes-gcm 是目前常用的分組加密演算法,但是其有乙個缺點就是計算量大,導致效能和電量開銷比較大。為了解決這個問題,intel 推出了名為 aes ni(advanced encryption standard new instructions)的 x86 指令拓展集,從硬體上提供對 aes 的支援。對於支援 aes ni 指令的裝置來說,使用 aes-gcm 無疑是最佳選擇。

而針對移動端不支援 aes ni 的裝置,google 在 2023年推出了一種新的流式加密演算法 chacha20-poly1305。在 arm 平台上,chacha20-poly1305 的效能是 aes-gcm 的 3-4 倍。

chacha20-poly1305 是由 google 專門針對移動端 cpu 優化而採用的一種新式流式加密演算法,它的效能相比普通演算法要提高 3 倍,在 cpu 為精簡指令集的 arm 平台上尤為顯著(arm v8 前效果較明顯)。其中 chacha20 是指對稱加密演算法,poly1305 是指身份認證演算法。使用該演算法,可減少加密解密所產生的資料量進而可以改善使用者體驗,減少等待時間,節省電池壽命等。

由於其演算法精簡、安全性強、相容性強等特點,目前 google致力於全面將其在移動端推廣。

當前流行的加密套件 aes-gcm,在不支援 aes ni 指令的硬體裝置上,該加密演算法會讓大部分智慧型手機、平板電腦以及可穿戴裝置引起效能問題,導致加解密效能時間過長。

而在 google 公布的資料顯示,chacha20-poly1305 能夠提公升 30% 以上的裝置加解密效能。同時在部分移動裝置上,chacha20-poly1305 加密的速度是 aes 的 3 倍還多。也即在使用 chacha20-poly1305 時,較舊的計算機或者移動端裝置在加解密方面會花費更少的計算時間。減少加解密時間的減少意味著更快的頁面載入速度以及更少的裝置電池消耗。

針對移動端裝置,在具有硬體 aes 支援的 pc 電腦上,使用 aes-gcm 演算法是比較不錯的選擇,所以又拍雲 cdn 平台會根據客戶端支援的加密套件情況智慧型選擇 aes-gcm 或者 chacha20-poly1305 這兩者。對於最新的英特爾處理器,又拍雲cdn會使用標準的 aes-gcm 演算法;對於沒有硬體 aes 支援的裝置來說,會優先選擇 chacha20-poly1305。

chacha20-poly1305 加密套件使用了兩種演算法,其中 chacha20 是指對稱加密演算法,而poly1305 是指身份認證演算法。

rfc文件

從 rfc 文件中可以看到,chacha20 提供了 256 位的加密強度,這對於 aes-gcm 演算法的 128 位的加密強度來說,已經綽綽有餘。也就是說,使用 chacha20 作為對稱加密演算法來保障 https 安全性已經足夠了。

而 poly1305 作為身份認證演算法提供身份驗證,可以防止攻擊者在 tls 握手過程中,將虛假資訊插入到安全的資料流中,poly1305 演算法提供了大約 100 位的安全性加密強度,足以阻止這類攻擊。在 tls 握手過程中,身份驗證相比加密並沒有那麼重要,因為即使攻擊者可以向資料流中新增虛假訊息,在金鑰資訊沒有被破解的情況下,也不會讀取到內部的資料資訊。

綜上所述,chacha20-poly1305 作為乙個加密組合,可同時對資料提供機密性,完整性和真實性保證,避開了現有發現的所有安全漏洞和攻擊,是一組極佳的加密套件組合。

又拍雲 cdn 已經預設支援 chacha20_poly1305,並針對不支援 aes-ni 的終端優先選擇此演算法作為對稱加密演算法。

目前又拍雲提供 ssl 證書的申購、管理、部署等功能。與國際頂級 ca 機構合作,證書型別豐富,操作流程簡單方便,為使用者提供一站式 https 安全解決方案。免費版ssl證書1小時內,付費版ov、ev ssl證書3天內即可完成申購簽發,並且一鍵完成ssl證書部署即時開啟全站https服務開啟。

目前https證書低至75折,立即開啟全站https加密服務

推薦閱讀:

從 http 到 https 再到 hsts

https系列乾貨(一):https 原理詳解

為什麼非全站公升級https不可?

Https 與對稱加密和非對稱加密

總結沒有 https,使用者傳輸的資料,如賬號密碼,會被不法分子截獲。客戶端請求一次服務端後,服務端給客戶端乙個金鑰。然後他們傳輸的資料會用金鑰加密。但第一次告訴客戶端金鑰的時候也可能被不法分子截獲。服務端有自己的公鑰和私鑰。客戶端請求一次服務端後,服務端提供自己的公鑰,客戶端 瀏覽器 收到後自己生...

HTTPS之對稱加密和非對稱加密

1.對稱加密 a 客戶端 b 服務端 a和b實現對稱加密的前提條件是a和b必須共享同乙個公鑰 1.a使用公鑰對資訊進行加密 2.a把加密之後的密文傳送到b 3.b使用約定好的公鑰對密文進行解密 2.非對稱加密 a 客戶端 b 服務端 非對稱加密在進行加密的時候使用的是b建立的金鑰對 b的公鑰和私鑰 ...

HTTPS 原理 對稱加密 非對稱加密 CA證書

通訊的雙方,使用同乙個secretkey,可以對密文進行解密,得到明文。問題 在開放的internet如何交換secretkey,這本身就是個問題。這個交換的過程也是需要加密的。這就套娃了無解了。通訊雙方各自有乙個公鑰,還有私鑰 私鑰只有自己知道,公鑰全世界都知道 非對稱加密演算法,保證了用公鑰加密...