汪志勇
摘? ?要:文章基于對(duì)SSL VPN技術(shù)原理和作用路徑進(jìn)行分析,探究了該項(xiàng)技術(shù)在當(dāng)前應(yīng)用和發(fā)展中存在的不足,并在此基礎(chǔ)上探究了該項(xiàng)技術(shù)在今后的完善與優(yōu)化方式,讓該項(xiàng)技術(shù)能夠更為全面地發(fā)揮應(yīng)有的安全保障作用。
關(guān)鍵詞:SSL;VPN;安全關(guān)鍵技術(shù)
1? ? SSL VPN技術(shù)的運(yùn)行原理和流程
1.1? SSL? VPN技術(shù)的運(yùn)行原理
由Netscape公司開(kāi)發(fā)的一套Internet數(shù)據(jù)安全協(xié)議(Secure Sockets Layer,SSL)有兩層,具體內(nèi)容如下:(1)SSL記錄協(xié)議。記錄協(xié)議記錄在互聯(lián)網(wǎng)系統(tǒng)中的傳輸協(xié)議上,當(dāng)前應(yīng)用的傳輸協(xié)議主要為傳輸控制協(xié)議(Transmission Control Protocol,TCP)等,記錄協(xié)議發(fā)揮的作用為向高層協(xié)議提供服務(wù),服務(wù)內(nèi)容為對(duì)數(shù)據(jù)進(jìn)行打包、加密以及壓縮等,這些作用為整個(gè)網(wǎng)絡(luò)系統(tǒng)中的基本功能[1]。(2)SSL握手協(xié)議。該協(xié)議的位置在記錄協(xié)議之上,在正式的數(shù)據(jù)傳輸過(guò)程開(kāi)始前,需要對(duì)該協(xié)議進(jìn)行合理應(yīng)用,在正式的數(shù)據(jù)傳輸工作開(kāi)始前,該協(xié)議會(huì)開(kāi)展身份認(rèn)證、密鑰交換和加密算法協(xié)商工作。
Internet數(shù)據(jù)安全協(xié)議虛擬專(zhuān)用網(wǎng)絡(luò)(SSL Virtual Private Network,SSL VPN)本質(zhì)上為一種安全連接技術(shù),在互聯(lián)網(wǎng)技術(shù)的運(yùn)行中,應(yīng)用瀏覽器以及專(zhuān)業(yè)軟件能夠在系統(tǒng)中建立數(shù)據(jù)傳輸通道,一個(gè)完整的SSL VPN系統(tǒng)包含服務(wù)器、網(wǎng)關(guān)和客戶端,網(wǎng)關(guān)為SSL VPN系統(tǒng)的服務(wù)器,能夠提供各項(xiàng)服務(wù)。SSL VPN通過(guò)對(duì)密鑰以及加密算法的協(xié)調(diào)提供安全保護(hù)功能。
1.2? SSL? VPN技術(shù)的運(yùn)行流程
SSL VPN技術(shù)在運(yùn)行過(guò)程中,該系統(tǒng)的運(yùn)行流程如下:(1)瀏覽器請(qǐng)求等待過(guò)程。SSL VPN系統(tǒng)在運(yùn)行過(guò)程中,會(huì)同時(shí)監(jiān)聽(tīng)多個(gè)Web服務(wù)器的請(qǐng)求端口,當(dāng)發(fā)現(xiàn)某個(gè)服務(wù)器發(fā)送請(qǐng)求時(shí),則需要開(kāi)展對(duì)數(shù)據(jù)的處理工作,同時(shí),對(duì)服務(wù)器的加密算法以及密鑰進(jìn)行分析[2]。(2)安全連接建立。該過(guò)程發(fā)生在Web服務(wù)器發(fā)出申請(qǐng)后,當(dāng)SSL VPN服務(wù)器接收到連接請(qǐng)求后,會(huì)建成安全連接。(3)服務(wù)器地址轉(zhuǎn)換過(guò)程。在系統(tǒng)的運(yùn)行中,SSL VPN服務(wù)器會(huì)監(jiān)測(cè)客戶端的端口以及服務(wù)地址,在轉(zhuǎn)換完成后,會(huì)將相關(guān)數(shù)據(jù)轉(zhuǎn)換成服務(wù)器的地址,并在完成轉(zhuǎn)換過(guò)程后向?qū)?yīng)的Web服務(wù)器發(fā)送請(qǐng)求信號(hào),后續(xù)工作主要為等待Web服務(wù)器的響應(yīng)。(4)響應(yīng)數(shù)據(jù)轉(zhuǎn)換。在SSL VPN系統(tǒng)獲取了響應(yīng)數(shù)據(jù)后,會(huì)對(duì)該數(shù)據(jù)進(jìn)行進(jìn)一步處理,通過(guò)應(yīng)用建成的安全連接將處理后的數(shù)據(jù)傳輸?shù)娇蛻舳说臑g覽器上。
2? ? SSL VPN技術(shù)當(dāng)前存在的問(wèn)題和優(yōu)化方法
SSL VPN技術(shù)當(dāng)前也存在一定問(wèn)題,需要對(duì)這些問(wèn)題的引發(fā)因素進(jìn)行分析,在此基礎(chǔ)上探究?jī)?yōu)化方法。
2.1? SSL? VPN技術(shù)當(dāng)前存在的問(wèn)題
在SSL VPN技術(shù)應(yīng)用過(guò)程中,增加了服務(wù)器的負(fù)載,同時(shí),在該項(xiàng)技術(shù)當(dāng)前的應(yīng)用中,系統(tǒng)的反應(yīng)速度較低,SSL VPN技術(shù)在響應(yīng)速度上無(wú)法滿足高效運(yùn)行要求。這是因?yàn)樵赟SL VPN技術(shù)的應(yīng)用中,需要建成加密通道。在加密過(guò)程中,會(huì)產(chǎn)生大量的字符,SSL VPN3.0中,產(chǎn)生的密鑰字符至少為1 024 bit,當(dāng)密鑰長(zhǎng)度增加時(shí),密鑰的字節(jié)數(shù)也會(huì)大幅提升,SSL VPN系統(tǒng)運(yùn)行涉及解密過(guò)程,該過(guò)程需要消耗大量的解密時(shí)間[3]。另外,在密鑰產(chǎn)生和生成的過(guò)程中,產(chǎn)生的這些密鑰都會(huì)存在于系統(tǒng)中,當(dāng)產(chǎn)生的無(wú)效密鑰未能及時(shí)清除時(shí),就會(huì)占用大量的存儲(chǔ)空間,為整個(gè)服務(wù)器帶來(lái)重大運(yùn)行負(fù)擔(dān)。
2.2? SSL? VPN技術(shù)的優(yōu)化方法
在SSL VPN技術(shù)的優(yōu)化過(guò)程中,本文從兩個(gè)方向開(kāi)展針對(duì)該項(xiàng)技術(shù)的優(yōu)化工作,具體優(yōu)化思路如下。
2.2.1? 加密算法優(yōu)化
目前SSL VPN技術(shù)應(yīng)用中,應(yīng)用的加密算法為RSA算法,這種算法從原理上來(lái)看較為簡(jiǎn)單,但存在運(yùn)行效率較低以及會(huì)為服務(wù)器帶來(lái)重大負(fù)擔(dān)的問(wèn)題,需要應(yīng)用其余類(lèi)型的加密算法。本文選用的加密算法為錯(cuò)誤檢查和糾正(Error Correcting Code,ECC)算法,其原理和應(yīng)用方式如下。
首先,ECC算法原理。ECC算法的數(shù)學(xué)原理為構(gòu)建橢圓曲線上的有理點(diǎn),將這些有理點(diǎn)構(gòu)成一個(gè)集群,獲取的密碼位于橢圓曲線定義的有限域上,有限域表達(dá)的橢圓曲線定義為:
在該公式中,P的含義為奇素?cái)?shù),對(duì)于該公式中的X來(lái)說(shuō),所有的X值都不小于0且小于P,但是在該公式的應(yīng)用中存在一個(gè)限制條件,即4A3+27B2≠0 mod P,在該公式的應(yīng)用和運(yùn)行過(guò)程中,最終能夠生成針對(duì)曲線上的(X,Y)點(diǎn)集合,并且在該算法的實(shí)際應(yīng)用中,可以將這些有效點(diǎn)表示為EP(A,B),獲取的有效點(diǎn)中的X值和Y值都需要不大于P值。
其次,ECC算法應(yīng)用方式。在ECC算法的具體應(yīng)用中,系統(tǒng)中存在一個(gè)基點(diǎn),定義為G,公開(kāi)密鑰為K,私有密鑰為k,其中,k小于G的階數(shù),在滿足這兩個(gè)條件的情況下,ECC算法的應(yīng)用方式如下:(1)獲取G點(diǎn)。G點(diǎn)的獲取來(lái)源為EP(A,B)上的任意一點(diǎn),并且在瀏覽器發(fā)出請(qǐng)求的基礎(chǔ)上完成對(duì)G點(diǎn)的選擇工作。(2)私有密鑰選擇。瀏覽器在該過(guò)程中會(huì)選擇私有密鑰,由于私有密鑰要與公有密鑰建成一一聯(lián)系的關(guān)系,所以在該算法的應(yīng)用中,選擇原則可以為K=kG。(3)密鑰數(shù)據(jù)傳輸。該過(guò)程中傳輸?shù)膬?nèi)容包括EP(A,B)、基點(diǎn)G和公開(kāi)密鑰K,這些數(shù)據(jù)的傳輸流程為從服務(wù)器A傳輸?shù)椒?wù)器B。(4)SSL VPN服務(wù)器在接收到數(shù)據(jù)傳輸請(qǐng)求后,對(duì)服務(wù)器中的數(shù)據(jù)進(jìn)行編碼,并且將編碼后的數(shù)據(jù)映射到曲線有效點(diǎn)EP(A,B)上,最終獲得一個(gè)點(diǎn)陣M,從該點(diǎn)陣中獲取各類(lèi)整數(shù)。(5)數(shù)據(jù)反向傳輸過(guò)程。該過(guò)程中的數(shù)據(jù)傳輸方向?yàn)閺姆?wù)器B到服務(wù)器A,SSL VPN服務(wù)器在對(duì)數(shù)據(jù)處理后,將數(shù)據(jù)整合成C1和C2形式,其中,C1計(jì)算公式為C1=M+RK,C2=RG,傳輸?shù)臄?shù)據(jù)類(lèi)型為服務(wù)器最終獲取的C1和C2。(6)客戶端解密過(guò)程??蛻舳说慕饷苓^(guò)程為獲取經(jīng)過(guò)SSL VPN數(shù)據(jù)處理的點(diǎn)陣M,從最終的計(jì)算結(jié)果上來(lái)看,M=C1-kC2,推導(dǎo)過(guò)程如下:
所以,在ECC算法的具體應(yīng)用中,應(yīng)用M的計(jì)算公式即可以在瀏覽器上完成解密工作。
2.2.2? 加密級(jí)別優(yōu)化
SSL VPN技術(shù)在運(yùn)行過(guò)程中,會(huì)產(chǎn)生不同長(zhǎng)度的密鑰,本文應(yīng)用這一特點(diǎn)對(duì)數(shù)據(jù)的加密級(jí)別進(jìn)行處理,建成的最終加密等級(jí)為A~D級(jí),其中,A級(jí)為最高加密等級(jí),產(chǎn)生的密鑰長(zhǎng)度最長(zhǎng),D級(jí)為最低加密等級(jí),密鑰長(zhǎng)度最短。
在系統(tǒng)的運(yùn)行過(guò)程中,需要對(duì)加密等級(jí)進(jìn)行調(diào)整,在該項(xiàng)工作的開(kāi)展中,系統(tǒng)的操作步驟如下:(1)密級(jí)設(shè)定過(guò)程。該過(guò)程中會(huì)假設(shè)當(dāng)前的安全登記為D—X—B—A,其中,X的安全密級(jí)高于D小于A。而當(dāng)前信息傳輸中的數(shù)據(jù)處理密級(jí)為X,其中,X和Y不相等[4]。(2)數(shù)據(jù)傳輸過(guò)程。在本文的研究中,將X密級(jí)轉(zhuǎn)換為Y密級(jí),在數(shù)據(jù)的傳輸過(guò)程中,將服務(wù)器B應(yīng)用Y密級(jí)對(duì)數(shù)據(jù)進(jìn)行處理,服務(wù)器A應(yīng)用X密級(jí)進(jìn)行解密,在解密完成后將數(shù)據(jù)傳遞到服務(wù)器B,當(dāng)發(fā)現(xiàn)服務(wù)器B允許操作時(shí),在后續(xù)的處理中前全面應(yīng)用Y密級(jí)進(jìn)行數(shù)據(jù)處理,當(dāng)服務(wù)器B不允許操作時(shí),后續(xù)的數(shù)據(jù)加密全部應(yīng)用X密級(jí)進(jìn)行處理。(3)解密過(guò)程。解密過(guò)程需要在客戶端A上完成,解密過(guò)程的X,Y密級(jí)確定方法和數(shù)據(jù)傳輸過(guò)程完全相反。
3? ? 優(yōu)化后SSL VPN技術(shù)的安全保障能力
本文主要優(yōu)化目的為SSL VPN系統(tǒng)的響應(yīng)速度,具體的分析結(jié)果如下。
3.1? 安全性測(cè)試
在SSL VPN技術(shù)的當(dāng)前形式中,實(shí)際上已經(jīng)有很高的安全保障能力,所以本文的測(cè)試方式為對(duì)ECC算法和RSA算法在安全性方面的研究和分析。從技術(shù)原理上來(lái)看,雖然RSA算法能夠?qū)Ψ?wù)器中的所有數(shù)據(jù)進(jìn)行高強(qiáng)度加密,ECC算法為一種分級(jí)性的加密算法,但是對(duì)于整個(gè)加密系統(tǒng)來(lái)說(shuō),并不需要對(duì)所有的數(shù)據(jù)進(jìn)行高強(qiáng)度加密設(shè)計(jì)。密鑰生成過(guò)程ECC算法耗時(shí)3.76 ms,RSA算法耗時(shí)4.608 ms。兩種算法在安全性方面的性能相似,并且密鑰生成過(guò)程的耗時(shí)也較為相似,但是從簽名驗(yàn)證、認(rèn)證驗(yàn)證以及DH密鑰交換過(guò)程來(lái)看,ECC算法消耗的時(shí)間要遠(yuǎn)低于RSA算法,尤其是DH密鑰交換過(guò)程中,ECC算法的耗時(shí)為7.26 ms,而RSA算法的耗時(shí)為1 587 ms,在相同安全保證性能下,ECC算法的響應(yīng)時(shí)間要遠(yuǎn)低于RSA算法,經(jīng)過(guò)優(yōu)化后的SSL VPN技術(shù)能夠大幅提升響應(yīng)速度。
3.2? 響應(yīng)速度測(cè)試
在響應(yīng)速度的測(cè)試中,本文采用未優(yōu)化和優(yōu)化后的SSL VPN技術(shù)下載一個(gè)固定文件,共下載了20次,通過(guò)對(duì)下載時(shí)間的記錄計(jì)算文件的傳輸速度,實(shí)現(xiàn)對(duì)SSL VPN技術(shù)運(yùn)行效果的比較,最終獲取的結(jié)果如下。
(1)明文傳輸狀態(tài)。明文傳輸?shù)臄?shù)據(jù)傳輸速度為687.58 kB/s,本文在研究過(guò)程中,將明文傳輸狀態(tài)作為參考的基準(zhǔn)點(diǎn),另外兩種數(shù)據(jù)加密計(jì)算的數(shù)據(jù)傳輸速度都與明文傳輸狀態(tài)進(jìn)行比較。
(2)未優(yōu)化SSL VPN技術(shù)。數(shù)據(jù)傳輸速度為562.63 kB/s,與明文狀態(tài)的傳輸速度比值為81.8%。
(3)優(yōu)化后SSL VPN技術(shù)。該技術(shù)的數(shù)據(jù)傳輸速度為627.56 kB/s,與明文狀態(tài)下的傳輸速度比值為91.3%。從最終結(jié)果上來(lái)看,優(yōu)化后的SSL VPN技術(shù)在數(shù)據(jù)傳輸速度方面提升明顯,所以在該項(xiàng)技術(shù)今后的發(fā)展中,可以應(yīng)用分級(jí)加密技術(shù)提高數(shù)據(jù)傳輸速度。
4? ? 結(jié)語(yǔ)
當(dāng)前存在的主要問(wèn)題為安全性和運(yùn)行效率過(guò)低,導(dǎo)致SSL VPN技術(shù)在應(yīng)用中數(shù)據(jù)的傳輸速度較低。應(yīng)用ECC算法替代當(dāng)前應(yīng)用RSA算法,可以提高數(shù)據(jù)的傳輸速度,建成分級(jí)加密制度,提高整個(gè)系統(tǒng)的響應(yīng)速度。
[參考文獻(xiàn)]
[1]劉陽(yáng).基于USBkey認(rèn)證的SSL VPN網(wǎng)絡(luò)的設(shè)計(jì)與實(shí)現(xiàn)[D].長(zhǎng)春:吉林大學(xué),2014.
[2]鄭化浦,劉帥.SSL VPN網(wǎng)絡(luò)安全關(guān)鍵技術(shù)研究[J].河南城建學(xué)院學(xué)報(bào),2013(4):69-72.
[3]張宇.SSL VPN中訪問(wèn)控制的研究以及教學(xué)實(shí)驗(yàn)的實(shí)現(xiàn)[D].上海:上海交通大學(xué),2010.
[4]梁鈞.基于SSL協(xié)議的VPN關(guān)鍵技術(shù)的分析與設(shè)計(jì)[D].昆明:云南大學(xué),2010.
Abstract:Based on the analysis of the principle and action path of SSL VPN technology, this paper probes into the shortcomings of this technology in the current application and development, and on this basis, probes into the perfection and optimization mode of this technology in the future. So that the technology can play a more comprehensive role of safety and security.
Key words:SSL; VPN; security key technology