加密芯片為SSL握手提速保證Web事務(wù)安全
安全套接層(SSL)是保證Web事務(wù)處理安全的標(biāo)準(zhǔn)方法。SSL密碼系統(tǒng)所需的數(shù)學(xué)計(jì)算涉及到大數(shù)和大多數(shù)商用處理器指令集中所沒(méi)有的數(shù)學(xué)函數(shù)。
這類計(jì)算一般利用軟件完成,因而給服務(wù)器造成沉重負(fù)擔(dān),一般服務(wù)器性因此會(huì)下降兩個(gè)數(shù)量級(jí)。當(dāng)事務(wù)處理全部采用SSL保護(hù)時(shí),每秒能夠處理1000次事務(wù)的服務(wù)器,每秒只能完成10次事務(wù)處理。
解決這種性能問(wèn)題的傳統(tǒng)解決辦法是采用多CPU服務(wù)器來(lái)處理安全傳輸流,并且將安全網(wǎng)頁(yè)限量應(yīng)用在盡可能小的關(guān)鍵事務(wù)處理集合中,如信用卡數(shù)字交換。
另一種辦法是利用協(xié)處理器提高SSL密碼系統(tǒng)的速度。這類產(chǎn)品執(zhí)行RSA加密或分組加密,或同時(shí)執(zhí)行這兩種加密。所有這些加密仍依靠主機(jī)處理器向加密芯片發(fā)送和從加密芯片接收SSL記錄。這些處理器每秒處理成千上萬(wàn)個(gè)新SSL握手請(qǐng)求。但是,它們的實(shí)現(xiàn)方法要求重要的“粘接件”支持加密硬件與主機(jī)處理器之間的協(xié)作處理,并且大多數(shù)方法仍依靠PCI總線在加密芯片與主機(jī)之間傳送數(shù)據(jù)。這種架構(gòu)增加了復(fù)雜性,而且由于處理一次SSL會(huì)話握手就需要加密處理器與主機(jī)CPU之間進(jìn)行多次交換,從而形成了性能瓶頸。
單芯片系統(tǒng)
解決性能瓶頸的一種方法是將整個(gè)系統(tǒng)放在一個(gè)芯片上來(lái)執(zhí)行傳輸流分類、全部SSL協(xié)議和所有的分組加密。單芯片系統(tǒng)不需要與主機(jī)CPU打交道,從而減少了復(fù)雜性,并大大改進(jìn)了性能。單芯片安全處理器為客戶機(jī)端和服務(wù)器端提供了工業(yè)標(biāo)準(zhǔn)的千兆以太網(wǎng)接口。妨礙消滅海量SSL會(huì)話的最有威脅的障礙之一是處理封裝SSL記錄的TCP/IP包。即使沒(méi)有建立SSL會(huì)話,僅一條千兆TCP/IP傳輸流就夠讓一個(gè)傳統(tǒng)CPU忙個(gè)不停。新型芯片集成了高性能TCP/IP處理器,這個(gè)處理器可以為SSL傳輸流處理TCP分割、包重新排序和其他可能使主處理器陷于停頓的協(xié)議功能??蛻魴C(jī)端接口是千兆媒體獨(dú)立接口(GMII)端口,該端口直接安裝在網(wǎng)絡(luò)接口卡(NIC)或?qū)S迷O(shè)備的物理接口的后面。
客戶機(jī)HTTP傳輸流直接通過(guò)芯片被傳送到服務(wù)器端口。服務(wù)器端口也是GMII接口。輸入的SSL傳輸流被傳送到芯片的加密部分。芯片執(zhí)行所有的SSL協(xié)議功能和分組加密,并在對(duì)解密后的明文信息進(jìn)行梳理并提交給服務(wù)器端口。
梳理是關(guān)鍵
接收解密明文的目標(biāo)服務(wù)器不會(huì)出現(xiàn)SSL與非SSL傳輸流之間的性能損失,相反,目標(biāo)服務(wù)器接收SSL傳輸流時(shí)可能會(huì)出現(xiàn)更好的性能,這是由于提交給它的TCP/IP傳輸流經(jīng)過(guò)梳理的原故。嵌入式SSL解決方案除非以每秒1G的線速度、全雙工執(zhí)行其所有的網(wǎng)絡(luò)和加密功能,否則毫無(wú)價(jià)值。配置、加載SSL密鑰和證書文件以及管理信息檢索功能,是通過(guò)作為管理端口的GMII接口執(zhí)行的。所有的管理功能和通信都可以采用SSL加密。
加密更多網(wǎng)絡(luò)傳輸流并取得線速度性能需要采用一種全新的加密方法。嵌入式方法帶來(lái)了一種高可管理性的SSL解決方案,這種解決方案實(shí)現(xiàn)了高性能并且易于與Web服務(wù)器NIC、SSL專用設(shè)備以及其他4至7層設(shè)備集成。
本文來(lái)源:中國(guó)IT實(shí)驗(yàn)室 作者: