2016-09-20 分類(lèi): 網(wǎng)站建設(shè)
ECC 橢圓加密算術(shù)相比普通的離散對(duì)數(shù)計(jì)算速度性能要強(qiáng)很多。下表是 NIST 推薦的密鑰長(zhǎng)度對(duì)照表。
對(duì)稱(chēng)密鑰大小 | RSA 和 DH 密鑰大小 | ECC 密鑰大小
----|------|---- 80|1024|160| 112|2048|224 128|3072|256 192|7680|384 256|15360|521 表格 2 NIST 推薦使用的密鑰長(zhǎng)度
對(duì)于 RSA 算法來(lái)講,目前至少使用 2048 位以上的密鑰長(zhǎng)度才能保證安全性。ECC 只需要使用 224 位長(zhǎng)度的密鑰就能實(shí)現(xiàn) RSA2048 位長(zhǎng)度的安全強(qiáng)度。在進(jìn)行相同的模指數(shù)運(yùn)算時(shí)速度顯然要快很多。
一般來(lái)講,新版的 openssl 相比老版的計(jì)算速度和安全性都會(huì)有提升。比如 openssl1.0.2 采用了 intel 最新的優(yōu)化成果,橢圓曲線 p256 的計(jì)算性能提升了 4 倍。/Openssl 2014 年就升級(jí)了 5 次,基本都是為了修復(fù)實(shí)現(xiàn)上的 BUG 或者算法上的漏洞而升級(jí)的。所以盡量使用最新版本,避免安全上的風(fēng)險(xiǎn)。
現(xiàn)在比較常用的 TLS 硬件加速方案主要有兩種:
SSL 專(zhuān)用加速卡。
GPU SSL 加速。 上述兩個(gè)方案的主流用法都是將硬件插入到服務(wù)器的 PCI 插槽中,由硬件完成最消耗性能的計(jì)算。但這樣的方案有如下缺點(diǎn):
支持算法有限。比如不支持 ECC,不支持 GCM 等。
升級(jí)成本高。
出現(xiàn)新的加密算法或者協(xié)議時(shí),硬件加速方案無(wú)法及時(shí)升級(jí)。
出現(xiàn)比較大的安全漏洞時(shí),部分硬件方案在無(wú)法在短期內(nèi)升級(jí)解決。比如 2014 年暴露的 heartbleed 漏洞。
無(wú)法充分利用硬件加速性能。硬件加速程序一般都運(yùn)行在內(nèi)核態(tài),計(jì)算結(jié)果傳遞到應(yīng)用層需要 IO 和內(nèi)存拷貝開(kāi)銷(xiāo),即使硬件計(jì)算性能非常好,上層的同步等待和 IO 開(kāi)銷(xiāo)也會(huì)導(dǎo)致整體性能達(dá)不到預(yù)期,無(wú)法充分利用硬件加速卡的計(jì)算能力。
維護(hù)性差。硬件驅(qū)動(dòng)及應(yīng)用層 API 大部分是由安全廠家提供,出現(xiàn)問(wèn)題后還需要廠家跟進(jìn)。用戶(hù)無(wú)法掌握核心代碼,比較被動(dòng)。不像開(kāi)源的 openssl,不管算法還是協(xié)議,用戶(hù)都能掌握。
也正是因?yàn)樯鲜鲈?,百度?shí)現(xiàn)了專(zhuān)用的 SSL 硬件加速集群。基本思路是:
優(yōu)化 TLS 協(xié)議棧,剝離最消耗 CPU 資源的計(jì)算,主要有如下部分:
RSA 中的加解密計(jì)算。
ECC 算法中的公私鑰生成。
ECC 算法中的共享密鑰生成。
優(yōu)化硬件計(jì)算部分。硬件計(jì)算不涉及協(xié)議及狀態(tài)交互,只需要處理大數(shù)運(yùn)算。
Web server 到 TLS 計(jì)算集群之間的任務(wù)是異步的。即 web server 將待計(jì)算內(nèi)容發(fā)送給加速集群后,依然可以繼續(xù)處理其他請(qǐng)求,整個(gè)過(guò)程是異步非阻塞的。
本文名稱(chēng):HTTPS 計(jì)算性能優(yōu)化
標(biāo)題URL:http://jinyejixie.com/news/44978.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供軟件開(kāi)發(fā)、服務(wù)器托管、云服務(wù)器、網(wǎng)站導(dǎo)航、域名注冊(cè)、品牌網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容