專利名稱:一種基于報(bào)文模擬的非公開密碼算法ssl vpn設(shè)備性能測(cè)試方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種基于SSL (Secure Sockets Layer,安全套接層)協(xié)議的VPN(virtual private network,虛擬專用網(wǎng)絡(luò))接入系統(tǒng),主要針對(duì)基于報(bào)文模擬的非公開密碼算法SSL VPN設(shè)備性能測(cè)試,屬于信息安全測(cè)試領(lǐng)域。
背景技術(shù):
SSL (Secure Sockets Layer,安全套接層)協(xié)議是一種在兩臺(tái)設(shè)備之間提供安全通道的網(wǎng)絡(luò)安全通信協(xié)議,它采用數(shù)據(jù)加密、身份認(rèn)證、隧道傳輸和密鑰管理等關(guān)鍵技術(shù)保障數(shù)據(jù)傳輸?shù)陌踩?。SSLVPN即指采用SSL協(xié)議來(lái)實(shí)現(xiàn)遠(yuǎn)程接入的一種新型VPN技術(shù)。它在公共IP網(wǎng) 絡(luò)設(shè)施上,通過數(shù)據(jù)包封裝的隧道技術(shù),并采用加密技術(shù)、認(rèn)證技術(shù)和訪問控制等綜合安全機(jī)制,構(gòu)建的安全虛擬專用網(wǎng)絡(luò)。隨著信息安全從只關(guān)注網(wǎng)絡(luò)安全轉(zhuǎn)變?yōu)橹攸c(diǎn)關(guān)注以業(yè)務(wù)為核心的應(yīng)用安全,SSLVPN已經(jīng)逐漸成為遠(yuǎn)程接入解決方案的標(biāo)準(zhǔn)。它具有高細(xì)粒度的訪問控制、簡(jiǎn)單易用的使用風(fēng)格受到越來(lái)越多遠(yuǎn)程訪問用戶的青睞,在網(wǎng)絡(luò)中得到越來(lái)越多的應(yīng)用。用戶新需求的日益增加促使SSL VPN系統(tǒng)也變得越來(lái)越復(fù)雜,比如支持不同的客戶端接入模式,支持不同的客戶端操作系統(tǒng),支持客戶端不同的認(rèn)證方式等,SSLVPN復(fù)雜的部署環(huán)境使得對(duì)SSL VPN性能測(cè)試變得困難。在國(guó)外,ICSA實(shí)驗(yàn)室是第一個(gè)開始針對(duì)SSL VPN產(chǎn)品進(jìn)行認(rèn)證的,也是目前業(yè)內(nèi)唯一針對(duì)SSL VPN系統(tǒng)的認(rèn)證測(cè)試項(xiàng)目。ICSA實(shí)驗(yàn)室曾為全球數(shù)百家頂級(jí)的安全廠商的產(chǎn)品進(jìn)行測(cè)試和認(rèn)證。然而,國(guó)內(nèi)對(duì)于SSL VPN產(chǎn)品的認(rèn)證和測(cè)試工作才剛剛開始,還沒有統(tǒng)一和公認(rèn)的測(cè)試標(biāo)準(zhǔn)和認(rèn)證方法。而國(guó)外ICSA實(shí)驗(yàn)室SSL VPN認(rèn)證及測(cè)試方法又是非公開的。為此,我國(guó)必須擁有自主知識(shí)產(chǎn)權(quán)的SSL VPN認(rèn)證及測(cè)試方法,在模擬真實(shí)世界的環(huán)境中對(duì)SSL VPN產(chǎn)品進(jìn)行嚴(yán)格的測(cè)試、評(píng)估和驗(yàn)證。目前商業(yè)或開源自動(dòng)化測(cè)試工具,采用基于錄制回放的機(jī)制,通過錄制構(gòu)成單次流程,然后再通過多進(jìn)程/線程回放流程的方法對(duì)一般設(shè)備進(jìn)行性能測(cè)試。然而,國(guó)內(nèi)部分基于SSL協(xié)議的VPN接入設(shè)備使用了國(guó)家密碼管理局指定的密碼算法,這是一種非公開的密碼算法,只有硬件實(shí)現(xiàn),并且終端軟件必須通過專用密碼芯片進(jìn)行加解密運(yùn)算。由于加密協(xié)議自身的安全性設(shè)計(jì),特別是服務(wù)器和客戶端均采用硬件加密卡加解密時(shí),加密數(shù)據(jù)包具有不可復(fù)制的特性,不能直接使用錄制回放的機(jī)制進(jìn)行性能測(cè)試。因此,商業(yè)或開源的自動(dòng)化測(cè)試工具直接使用錄制回放的機(jī)制來(lái)對(duì)SSL VPN設(shè)備進(jìn)行性能測(cè)試是行不通的。
發(fā)明內(nèi)容
為了解決上述的問題,本發(fā)明提出了一種基于報(bào)文模擬的非公開密碼算法SSLVPN設(shè)備性能測(cè)試方法?;赟SL協(xié)議的VPN接入設(shè)備使用了國(guó)家密碼管理局指定的密碼算法,這是一種非公開的密碼算法,只有硬件實(shí)現(xiàn)。終端軟件必須通過專用密碼芯片進(jìn)行加解密運(yùn)算。由于加密協(xié)議自身的安全性設(shè)計(jì),加密數(shù)據(jù)包具有不可復(fù)制的特性,不能使用商業(yè)或開源的自動(dòng)化測(cè)試工具通過錄制回放機(jī)制來(lái)對(duì)SSL VPN設(shè)備進(jìn)行性能測(cè)試,這就需要對(duì)加密傳輸SSL協(xié)議進(jìn)行相應(yīng)改造和加密報(bào)文進(jìn)行模擬工作。本發(fā)明首先對(duì)加密傳輸SSL協(xié)議進(jìn)行改造,固定客戶端Hello和服務(wù)端Hello報(bào)文在進(jìn)行基于RSA、ECC或IBC的密碼算法協(xié)商時(shí)的密碼套件、證書信息、以及用來(lái)產(chǎn)生隨機(jī)數(shù)的random字段,使得客戶端與服務(wù)端每次協(xié)商出來(lái)的會(huì)話密鑰固定。去除加密SSL記錄層協(xié)議中對(duì)seq num的遞增操作,使得相同的應(yīng)用數(shù)據(jù)產(chǎn)生相同的加密報(bào)文,從而得到專門的協(xié)議客戶端模擬與服務(wù)端完整的交互過程。通過加密報(bào)文捕獲與解析、應(yīng)用層加密報(bào)文模擬、加密報(bào)文發(fā)送與回放,實(shí)現(xiàn)使用商業(yè)或開源的自動(dòng)化測(cè)試工具對(duì)SSL VPN設(shè)備性能測(cè)試。解決了基于硬件加密的SSLVPN設(shè)備無(wú)法使用商業(yè)或開源自動(dòng)化測(cè)試工具進(jìn)行性能測(cè)試的難題。本發(fā)明采用如下技術(shù)方案一種基于報(bào)文模擬的非公開密碼算法測(cè)試基于安全套接層(SSL)協(xié)議的虛擬專用網(wǎng)絡(luò)(VPN)設(shè)備性能的方法,包括如下步驟 第一步,對(duì)加密傳輸SSL協(xié)議進(jìn)行改造;第二步,對(duì)加密數(shù)據(jù)報(bào)文進(jìn)行捕獲與解析;第三步,對(duì)加密數(shù)據(jù)報(bào)文進(jìn)行模擬;第四步,對(duì)加密數(shù)據(jù)報(bào)文進(jìn)行發(fā)送;第五步,對(duì)加密數(shù)據(jù)報(bào)文進(jìn)行回放;最后,實(shí)現(xiàn)對(duì)非公開密碼算法SSL VPN設(shè)備性能測(cè)試。根據(jù)本發(fā)明的一個(gè)方面,在第一步,對(duì)加密傳輸SSL協(xié)議進(jìn)行改造中,采用客戶端Hello信令和服務(wù)端Hello信令在客戶端和服務(wù)端之間進(jìn)行基于RSA、ECC或IBC的密碼算法協(xié)商,確定密碼套件。根據(jù)本發(fā)明的一個(gè)方面,在第一步,對(duì)加密傳輸SSL協(xié)議進(jìn)行改造中,固定客戶端和服務(wù)端身份驗(yàn)證及密鑰交換過程中的證書信息。根據(jù)本發(fā)明的一個(gè)方面,在第一步,固定客戶端Hello信令和服務(wù)端Hello信令中用來(lái)產(chǎn)生隨機(jī)數(shù)的random字段,使得客戶端與服務(wù)端每次協(xié)商出來(lái)的會(huì)話密鑰固定。根據(jù)本發(fā)明的一個(gè)方面,在第一步,對(duì)加密傳輸SSL協(xié)議進(jìn)行改造中,去除加密SSL記錄層協(xié)議中對(duì)Seq_num的遞增操作,使得相同的應(yīng)用數(shù)據(jù)產(chǎn)生相同的加密數(shù)據(jù)報(bào)文,以模擬SSL VPN連接中的大流量通信。根據(jù)本發(fā)明的一個(gè)方面,在第二步,對(duì)加密數(shù)據(jù)報(bào)文進(jìn)行捕獲與解析中,捕獲客戶端與SSL VPN服務(wù)器之間底層安全通訊加密數(shù)據(jù)包。根據(jù)本發(fā)明的一個(gè)方面,在第二步,對(duì)加密數(shù)據(jù)報(bào)文進(jìn)行捕獲與解析中,解析客戶端與SSL VPN服務(wù)器之間底層安全通訊加密數(shù)據(jù)包。根據(jù)本發(fā)明的一個(gè)方面,在第三步,對(duì)加密數(shù)據(jù)報(bào)文進(jìn)行模擬中,在應(yīng)用層數(shù)據(jù)部分采用IP報(bào)文模擬的方法,在該IP報(bào)文中,上層協(xié)議采用ICMP協(xié)議中的ECHO Request報(bào)文進(jìn)行生成,實(shí)現(xiàn)了測(cè)試過程的簡(jiǎn)便性、可控性、與真實(shí)環(huán)境的一致性。根據(jù)本發(fā)明的一個(gè)方面,在第四步,對(duì)加密數(shù)據(jù)報(bào)文進(jìn)行發(fā)送中,加密報(bào)文模擬完成后,在客戶端和服務(wù)端分別向?qū)Χ税l(fā)送加密報(bào)文,客戶端和服務(wù)端分別接收處理對(duì)端發(fā)送的加密數(shù)據(jù)報(bào)文。根據(jù)本發(fā)明的一個(gè)方面,在第五步,對(duì)加密數(shù)據(jù)報(bào)文進(jìn)行回放中,在建立加密傳輸SSL連接時(shí),每條SSL連接只發(fā)送一次該階段的報(bào)文,以實(shí)現(xiàn)對(duì)SSLVPN服務(wù)器最大并發(fā)SSL連接數(shù)的測(cè)試。根據(jù)本發(fā)明的一個(gè)方面,在第五步,對(duì)加密數(shù)據(jù)報(bào)文進(jìn)行回放中,建立加密傳輸SSL隧道后,在應(yīng)用層通信中,循環(huán)回放該階段中的交互加密報(bào)文以模擬大流量通信,以實(shí)現(xiàn)對(duì)SSL VPN服務(wù)器的吞吐量測(cè)試。
下面結(jié)合附圖及具體實(shí)施例對(duì)本發(fā)明再作進(jìn)一步詳細(xì)的說(shuō)明。圖I是根據(jù)本發(fā)明一個(gè)實(shí)施例的SSL握手流程;
圖2是根據(jù)本發(fā)明一個(gè)實(shí)施例的random字段固定;圖3是根據(jù)本發(fā)明一個(gè)實(shí)施例的序列號(hào)seq_num修改;圖4是根據(jù)本發(fā)明一個(gè)實(shí)施例的應(yīng)用層數(shù)據(jù)報(bào)文模擬;圖5是根據(jù)本發(fā)明一個(gè)實(shí)施例的加密數(shù)據(jù)報(bào)文傳輸流程圖。
具體實(shí)施例方式為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。本發(fā)明針對(duì)SSL VPN設(shè)備性能測(cè)試的應(yīng)用需求,解決問題的主要技術(shù)方案是通過對(duì)加密傳輸SSL協(xié)議改造,得到專門用來(lái)進(jìn)行的協(xié)議客戶端,模擬客戶端與服務(wù)端的完整交互過程,通過對(duì)加密報(bào)文捕獲與解析、應(yīng)用層加密報(bào)文模擬、加密報(bào)文發(fā)送與回放等完成對(duì)SSL VPN設(shè)備性能測(cè)試。結(jié)合附圖及實(shí)施例詳細(xì)說(shuō)明如下。I.加密傳輸SSL協(xié)議改造為了能夠使用商業(yè)或開源自動(dòng)化測(cè)試工具通過錄制回放的機(jī)制來(lái)對(duì)SSL VPN設(shè)備進(jìn)行性能測(cè)試,需要對(duì)SSL VPN協(xié)議實(shí)現(xiàn)進(jìn)行相應(yīng)改造,步驟如下I)如附圖I中,采用客戶端Hello信令和服務(wù)端Hello信令在客戶端和服務(wù)端之間進(jìn)行基于RSA、ECC或IBC的密碼算法協(xié)商,確定密碼套件。在客戶端Hello和服務(wù)端Hello消息之后是身份驗(yàn)證和密鑰交換過程,包括服務(wù)端證書、服務(wù)端密鑰交換,客戶端證書、客戶端密鑰交換。為了使用錄制回放腳本的方法對(duì)SSL VPN設(shè)備性能測(cè)試,需要固定加密套件和證書信息等。從而可以通過對(duì)SSL VPN配置信息修改,實(shí)現(xiàn)多種組合的加密套件的加解密性能測(cè)試,如加密套件可以選擇RSA-SM1-SHA1或SM1-SM2-SM3等。2)如附圖2中所示客戶端Hello和服務(wù)端Hello中random字段用來(lái)產(chǎn)生隨機(jī)數(shù),客戶端和服務(wù)器端使用Hello消息交換隨機(jī)數(shù),再使用交換的隨機(jī)數(shù)、預(yù)主密鑰生成會(huì)話密鑰。在錄制回放腳本中,為了使得客戶端與服務(wù)端每次協(xié)商出來(lái)的會(huì)話密鑰固定,需要將客戶端與服務(wù)端生成的隨機(jī)數(shù)全部設(shè)置為O。3)如附圖3所示,Seq_num序列號(hào),每一個(gè)讀寫狀態(tài)都分別維持一個(gè)單調(diào)遞增序列號(hào)。為了使用錄制回放方式對(duì)SSL VPN設(shè)備測(cè)試,必須使得相同的應(yīng)用數(shù)據(jù)產(chǎn)生相同的加密報(bào)文,以模擬SSL VPN連接中的大流量通信。需要去掉SSL VPN記錄層協(xié)議中對(duì)seq_num的遞增操作。2.加密數(shù)據(jù)報(bào)文捕獲與解析捕獲客戶端與SSL VPN服務(wù)器之間底層安全通訊加密握手?jǐn)?shù)據(jù)包,然后再捕獲通過SSL VPN服務(wù)器訪問應(yīng)用或下載文件時(shí)底層通訊加密數(shù)據(jù)包,并解析該加密數(shù)據(jù)包。從而完成“終端用戶啟動(dòng)客戶端一完成與SSL VPN服務(wù)器握手一訪問應(yīng)用/下載文件一關(guān)閉安全客戶端”整個(gè)通訊過程的加密報(bào)文捕獲與解析。3.加密數(shù)據(jù)報(bào)文模擬為了測(cè)試過程的簡(jiǎn)便性、可控性,在應(yīng)用層數(shù)據(jù)部分采用IP報(bào)文模擬的方法,如 附圖4所示,客戶端與服務(wù)端交互完整IP報(bào)文的基本格式,在應(yīng)用層數(shù)據(jù)部分也為完整的IP報(bào)文,在該IP報(bào)文中,上層協(xié)議采用ICMP協(xié)議中的ECHO Request報(bào)文進(jìn)行生成。生成時(shí),首先根據(jù)需要的報(bào)文大小申請(qǐng)相應(yīng)的內(nèi)存空間作為緩沖區(qū),并以該緩沖區(qū)開頭的28個(gè)字節(jié)作為IP協(xié)議與ICMP協(xié)議的報(bào)文頭(IP協(xié)議20字節(jié),ICMP協(xié)議8字節(jié))進(jìn)行填充,最后在緩沖區(qū)中的其他空間中填充隨機(jī)內(nèi)容。在分別填充IP與ICMP報(bào)文頭時(shí),注意根據(jù)圖中所示的字節(jié)格式與順序,目的地址要選擇服務(wù)端可訪問的內(nèi)網(wǎng)地址,兩個(gè)校驗(yàn)和字段先留空,待其他字段填充完之后,再根據(jù)校驗(yàn)和計(jì)算方法進(jìn)行計(jì)算與填充。4.加密數(shù)據(jù)報(bào)文發(fā)送如附圖5所示,加密報(bào)文模擬完成后,在客戶端和服務(wù)端分別向?qū)Χ税l(fā)送該報(bào)文,客戶端和SSL VPN服務(wù)器分別接收處理對(duì)端發(fā)送的加密報(bào)文。5.加密數(shù)據(jù)報(bào)文回放如附圖5所示,在進(jìn)行并發(fā)測(cè)試時(shí),將通信報(bào)文劃分為兩個(gè)階段第一階段,在建立加密SSL連接時(shí),每條SSL連接只發(fā)送一次該階段的報(bào)文,實(shí)現(xiàn)對(duì)SSL VPN服務(wù)器最大并發(fā)SSL連接數(shù)的測(cè)試。第二階段,建立加密傳輸SSL隧道后,在應(yīng)用層通信中,循環(huán)回放該階段中的交互加密報(bào)文以模擬大流量通信,實(shí)現(xiàn)對(duì)SSL VPN服務(wù)器的吞吐量測(cè)試。本發(fā)明提出了一種基于報(bào)文模擬的非公開密碼算法SSL VPN設(shè)備性能測(cè)試方法,優(yōu)點(diǎn)在于I)本發(fā)明通過修改SSL VPN的握手協(xié)議、即固定加密套件與證書、固定產(chǎn)生隨機(jī)數(shù)的random字段、去除加密SSL記錄層協(xié)議中對(duì)seq_num的遞增操作,在不改變加密傳輸SSL協(xié)議性能的基礎(chǔ)上,完整的模擬了客戶端與服務(wù)端的SSL握手過程。2)本發(fā)明通過加密數(shù)據(jù)報(bào)文捕獲與解析、加密數(shù)據(jù)報(bào)文模擬、加密報(bào)文發(fā)送,完整的模擬了客戶端與服務(wù)器端通訊的過程,在客戶端使用預(yù)先生成的加解密報(bào)文,在SSL VPN服務(wù)器端仍然采用硬件PCI加密卡,保證了測(cè)試環(huán)境與真實(shí)環(huán)境一致性。3)如附圖5所示,在加密數(shù)據(jù)報(bào)文回放階段,在建立加密傳輸SSL連接時(shí),每條SSL連接只發(fā)送一次該階段的報(bào)文,實(shí)現(xiàn)了對(duì)SSL VPN服務(wù)器最大并發(fā)SSL連接數(shù)的測(cè)試。建立加密傳輸SSL隧道后,在應(yīng)用層通信中,循環(huán)回放該階段中的交互加密報(bào)文以模擬大流量通信,實(shí)現(xiàn)了對(duì)SSL VPN服務(wù)器的吞吐量測(cè)試。該測(cè)試過程與真實(shí)環(huán)境中基本一致,能夠完成在模擬真實(shí)的環(huán)境中對(duì)SSL VPN產(chǎn)品進(jìn)行嚴(yán)格的測(cè)試、評(píng)估和驗(yàn)證。根據(jù)本發(fā)明的一個(gè)方面,基于報(bào)文模擬的非公開密碼算法SSL VPN設(shè)備性能測(cè)試方法采用如下的技術(shù)方案一種基于報(bào)文模擬的非公開密碼算法SSL VPN設(shè)備性能測(cè)試方法,對(duì)加密傳輸SSL協(xié)議進(jìn)行改造,得到專門的協(xié)議客戶端模擬與服務(wù)端完整的交互過程。從而使用商業(yè)或開源的自動(dòng)化測(cè)試工具,通過加密數(shù)據(jù)報(bào)文捕獲、解析、模擬、發(fā)送、回放等實(shí)現(xiàn)對(duì)非公開密碼算法SSL VPN設(shè)備性能測(cè)試。根據(jù)本發(fā)明的一個(gè)方面,固定客戶端Hello和服務(wù)端Hello在進(jìn)行基于RSA、ECC或IBC的密碼算法協(xié)商時(shí)的密碼套件。根據(jù)本發(fā)明的一個(gè)方面,固定客戶端和服務(wù)端身份驗(yàn)證及密鑰交換過程中的證書信息。根據(jù)本發(fā)明的一個(gè)方面,固定客戶端Hello和服務(wù)端Hello中用來(lái)產(chǎn)生隨機(jī)數(shù)的random字段,使得客戶端與服務(wù)端每次協(xié)商出來(lái)的會(huì)話密鑰固定。根據(jù)本發(fā)明的一個(gè)方面,去除加密SSL記錄層協(xié)議中對(duì)Seq_num的遞增操作,使得 相同的應(yīng)用數(shù)據(jù)產(chǎn)生相同的加密數(shù)據(jù)報(bào)文,以模擬SSL VPN連接中的大流量通信。根據(jù)本發(fā)明的一個(gè)方面,捕獲客戶端與SSL VPN服務(wù)器之間底層安全通訊加密數(shù)據(jù)包。根據(jù)本發(fā)明的一個(gè)方面,解析客戶端與SSL VPN服務(wù)器之間底層安全通訊加密數(shù)據(jù)包。根據(jù)本發(fā)明的一個(gè)方面,在應(yīng)用層數(shù)據(jù)部分采用IP報(bào)文模擬的方法,在該IP報(bào)文中,上層協(xié)議采用ICMP協(xié)議中的ECHO Request報(bào)文進(jìn)行生成,實(shí)現(xiàn)了測(cè)試過程的簡(jiǎn)便性、可控性、與真實(shí)環(huán)境的一致性。根據(jù)本發(fā)明的一個(gè)方面,加密報(bào)文模擬完成后,在客戶端和服務(wù)端分別向?qū)Χ税l(fā)送加密報(bào)文,客戶端和服務(wù)端分別接收處理對(duì)端發(fā)送的加密數(shù)據(jù)報(bào)文。 根據(jù)本發(fā)明的一個(gè)方面,在建立加密傳輸SSL連接時(shí),每條SSL連接只發(fā)送一次該階段的報(bào)文,以實(shí)現(xiàn)對(duì)SSL VPN服務(wù)器最大并發(fā)SSL連接數(shù)的測(cè)試。根據(jù)本發(fā)明的一個(gè)方面,建立加密傳輸SSL隧道后,在應(yīng)用層通信中,循環(huán)回放該階段中的交互加密報(bào)文以模擬大流量通信,以實(shí)現(xiàn)對(duì)SSL VPN服務(wù)器的吞吐量測(cè)試。雖然已在具體實(shí)施方案中描述了本發(fā)明的實(shí)施方案及其各種功能組件,但是應(yīng)當(dāng)理解,可以用硬件、軟件、固件、中間件或它們的組合來(lái)實(shí)現(xiàn)本發(fā)明的實(shí)施方案,并且本發(fā)明的實(shí)施方案可以用在多種系統(tǒng)、子系統(tǒng)、組件或其子組件中。當(dāng)用軟件或固件來(lái)實(shí)現(xiàn)時(shí),本發(fā)明的單元是用于執(zhí)行必要任務(wù)的指令/代碼段。程序或代碼段可被存儲(chǔ)在機(jī)器可讀介質(zhì)(例如,處理器可讀介質(zhì)或計(jì)算機(jī)程序產(chǎn)品)中,或者在傳輸介質(zhì)或通信鏈路中,通過包含在載波或由載波調(diào)制的信號(hào)中的計(jì)算機(jī)數(shù)據(jù)信號(hào)來(lái)傳輸。機(jī)器可讀介質(zhì)可以包括可存儲(chǔ)或傳輸機(jī)器(例如,處理器、計(jì)算機(jī)等)可讀并可執(zhí)行形式的信息的任何介質(zhì)。機(jī)器可讀介質(zhì)的例子包括電子線路、半導(dǎo)體存儲(chǔ)器件、ROM、閃存、可擦除可編程ROM(EPROM)、軟盤、壓縮盤(⑶-ROM)、光盤、硬盤、光纖介質(zhì)、射頻(RF)鏈路等。計(jì)算機(jī)數(shù)據(jù)信號(hào)可以包括可在傳輸介質(zhì)上傳播的任何信號(hào),所述傳輸介質(zhì)例如是電子網(wǎng)絡(luò)信道、光纖、空氣、電磁介質(zhì)、射頻(RF)鏈路、條形碼等。代碼段可以經(jīng)由因特網(wǎng)、企業(yè)內(nèi)部網(wǎng)等網(wǎng)絡(luò)來(lái)下載。雖然本發(fā)明已經(jīng)詳細(xì)的示出并描述了一個(gè)相關(guān)且特定的實(shí)施范例參考,但本領(lǐng)域的技術(shù)人員應(yīng)該能夠理解,在不背離本發(fā)明的精神和范圍內(nèi)可以在形式上和細(xì)節(jié)上作出各種改變。這些改變都將落入本發(fā)明的權(quán)利要求所要求保護(hù)的范圍。
權(quán)利要求
1.一種基于報(bào)文模擬的非公開密碼算法測(cè)試基于安全套接層(SSL)協(xié)議的虛擬專用網(wǎng)絡(luò)(VPN)設(shè)備性能的方法,其特征在于 第一步,對(duì)加密傳輸SSL協(xié)議進(jìn)行改造; 第二步,對(duì)加密數(shù)據(jù)報(bào)文進(jìn)行捕獲與解析; 第三步,對(duì)加密數(shù)據(jù)報(bào)文進(jìn)行模擬; 第四步,對(duì)加密數(shù)據(jù)報(bào)文進(jìn)行發(fā)送; 第五步,對(duì)加密數(shù)據(jù)報(bào)文進(jìn)行回放; 最后,實(shí)現(xiàn)對(duì)非公開密碼算法SSL VPN設(shè)備性能測(cè)試。
2.根據(jù)權(quán)利要求I所述的測(cè)試基于SSL協(xié)議的VPN設(shè)備性能的方法,其特征在于 在第一步,對(duì)加密傳輸SSL協(xié)議進(jìn)行改造中,采用客戶端Hello信令和服務(wù)端Hello信令在客戶端和服務(wù)端之間進(jìn)行基于RSA、ECC或IBC的密碼算法協(xié)商,確定密碼套件。
3.根據(jù)權(quán)利要求I所述的測(cè)試基于SSL協(xié)議的VPN設(shè)備性能的方法,其特征在于 在第一步,對(duì)加密傳輸SSL協(xié)議進(jìn)行改造中,固定客戶端和服務(wù)端身份驗(yàn)證及密鑰交換過程中的證書信息。
4.根據(jù)權(quán)利要求2所述的測(cè)試基于SSL協(xié)議的VPN設(shè)備性能的方法,其特征在于 固定客戶端Hello信令和服務(wù)端Hello信令中用來(lái)產(chǎn)生隨機(jī)數(shù)的random字段,使得客戶端與服務(wù)端每次協(xié)商出來(lái)的會(huì)話密鑰固定。
5.根據(jù)權(quán)利要求I所述的測(cè)試基于SSL協(xié)議的VPN設(shè)備性能的方法,其特征在于 在第一步,對(duì)加密傳輸SSL協(xié)議進(jìn)行改造中,去除加密SSL記錄層協(xié)議中對(duì)seq_num的遞增操作,使得相同的應(yīng)用數(shù)據(jù)產(chǎn)生相同的加密數(shù)據(jù)報(bào)文,以模擬SSL VPN連接中的大流量通信。
6.根據(jù)權(quán)利要求I所述的測(cè)試基于SSL協(xié)議的VPN設(shè)備性能的方法,其特征在于 在第二步,對(duì)加密數(shù)據(jù)報(bào)文進(jìn)行捕獲與解析中,捕獲客戶端與SSL VPN服務(wù)器之間底層安全通訊加密數(shù)據(jù)包。
7.根據(jù)權(quán)利要求6所述的測(cè)試基于SSL協(xié)議的VPN設(shè)備性能的方法,其特征在于 在第二步,對(duì)加密數(shù)據(jù)報(bào)文進(jìn)行捕獲與解析中,解析客戶端與SSL VPN服務(wù)器之間底層安全通訊加密數(shù)據(jù)包。
8.根據(jù)權(quán)利要求I所述的測(cè)試基于SSL協(xié)議的VPN設(shè)備性能的方法,其特征在于 在第三步,對(duì)加密數(shù)據(jù)報(bào)文進(jìn)行模擬中,在應(yīng)用層數(shù)據(jù)部分采用IP報(bào)文模擬的方法,在該IP報(bào)文中,上層協(xié)議采用ICMP協(xié)議中的ECHO Request報(bào)文進(jìn)行生成,實(shí)現(xiàn)了測(cè)試過程的簡(jiǎn)便性、可控性、與真實(shí)環(huán)境的一致性。
9.根據(jù)權(quán)利要求I所述的測(cè)試基于SSL協(xié)議的VPN設(shè)備性能的方法,其特征在于 在第四步,對(duì)加密數(shù)據(jù)報(bào)文進(jìn)行發(fā)送中,加密報(bào)文模擬完成后,在客戶端和服務(wù)端分別向?qū)Χ税l(fā)送加密報(bào)文,客戶端和服務(wù)端分別接收處理對(duì)端發(fā)送的加密數(shù)據(jù)報(bào)文。
10.根據(jù)權(quán)利要求I所述的測(cè)試基于SSL協(xié)議的VPN設(shè)備性能的方法,其特征在于 在第五步,對(duì)加密數(shù)據(jù)報(bào)文進(jìn)行回放中,在建立加密傳輸SSL連接時(shí),每條SSL連接只發(fā)送一次該階段的報(bào)文,以實(shí)現(xiàn)對(duì)SSL VPN服務(wù)器最大并發(fā)SSL連接數(shù)的測(cè)試。
11.根據(jù)權(quán)利要求I所述的測(cè)試基于SSL協(xié)議的VPN設(shè)備性能的方法,其特征在于 在第五步,對(duì)加密數(shù)據(jù)報(bào)文進(jìn)行回放中,建立加密傳輸SSL隧道后,在應(yīng)用層通信中,循環(huán)回放該階段中的交互加密報(bào)文以模擬大流量通信 ,以實(shí)現(xiàn)對(duì)SSL VPN服務(wù)器的呑吐量測(cè)試。
全文摘要
本發(fā)明提出了一種基于報(bào)文模擬的非公開密碼算法SSL VPN設(shè)備性能測(cè)試方法。對(duì)加密傳輸SSL協(xié)議進(jìn)行改造,得到專門的協(xié)議客戶端模擬與服務(wù)端完整的交互過程。從而使用商業(yè)或開源的自動(dòng)化測(cè)試工具,通過加密數(shù)據(jù)報(bào)文捕獲、解析、模擬、發(fā)送、回放等實(shí)現(xiàn)對(duì)非公開密碼算法SSL VPN設(shè)備性能測(cè)試。該測(cè)試過程與真實(shí)環(huán)境中基本一致,能夠完成在模擬真實(shí)的環(huán)境中對(duì)SSL VPN產(chǎn)品進(jìn)行嚴(yán)格的測(cè)試、評(píng)估和驗(yàn)證。
文檔編號(hào)H04L12/46GK102857393SQ20121033541
公開日2013年1月2日 申請(qǐng)日期2012年9月11日 優(yōu)先權(quán)日2012年9月11日
發(fā)明者邵志鵬, 楚杰, 戴造建, 侯戰(zhàn)勝, 林為民, 張濤, 吳軍民, 胡斌, 徐敏, 陳牧 申請(qǐng)人:中國(guó)電力科學(xué)研究院, 國(guó)家電網(wǎng)公司