国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

數(shù)字圖書館中SSL VPN系統(tǒng)的安全策略研究

2009-01-11 07:39:28
現(xiàn)代情報(bào) 2009年11期
關(guān)鍵詞:數(shù)字圖書館安全

何 玲

〔摘 要〕基于SSL協(xié)議的VPN系統(tǒng)由于其安全、易用,越來越多地被應(yīng)用于內(nèi)部網(wǎng)的遠(yuǎn)程訪問。文章分析了遠(yuǎn)程訪問數(shù)字圖書館的安全需求、分析了SSL協(xié)議的安全機(jī)制,在此基礎(chǔ)上提出了利用OpenSSL庫構(gòu)建適合于大學(xué)圖書館這一具體應(yīng)用領(lǐng)域的SSL VPN系統(tǒng),并討論了系統(tǒng)實(shí)施時(shí)應(yīng)用的安全算法。

〔關(guān)鍵詞〕數(shù)字圖書館;SSL VPN;安全;遠(yuǎn)程訪問

〔中圖分類號(hào)〕G250.76 〔文獻(xiàn)標(biāo)識(shí)碼〕A 〔文章編號(hào)〕1008-0821(2009)11-0087-02

Safety Tactics Study of SSL VPN System in Digital LibraryHe Ling

(Department of Computer Science and Information Technology,Tianjin Agriculture College,Tianjin 300384,China)

〔Abstract〕SSL VPN has been applied to remote access of internal Net,because of its security and ease of use.Security requirement of digital library remote access and security means of SSL protocol was analyzed in this paper.It was raised that SSL VPN system could be built for digital library making use of OpenSSL library.Security algorithm which was fit of digital library was discussed in this paper.

〔Keywords〕digital library;SSL VPN;safety;remote access

1 遠(yuǎn)程訪問數(shù)字圖書館的安全需求

大學(xué)圖書館提供的數(shù)字資源在教學(xué)、科研過程中發(fā)揮著重要的作用。為了解決資源訪問受IP地址限制的問題,很多學(xué)校圖書館都提供了數(shù)字資源遠(yuǎn)程訪問的功能,使教師在校外也能訪問到受限資源。在實(shí)現(xiàn)遠(yuǎn)程訪問功能時(shí),為保護(hù)著作人的權(quán)益及數(shù)據(jù)庫提供商的利益,需要從以下方面保證數(shù)據(jù)的安全性。首先,為了確保只有被授權(quán)的用戶才能訪問數(shù)字圖書館資源,需要提供身份驗(yàn)證機(jī)制;第二,為了保護(hù)數(shù)據(jù)在傳輸過程中的機(jī)密性,需要采用加密解密機(jī)制;第三,為了防止數(shù)據(jù)在傳輸過程中被損壞或被惡意篡改,需要采用完整性驗(yàn)證機(jī)制。SSL協(xié)議為實(shí)現(xiàn)這些安全需求提供了保障。

2 SSL VPN系統(tǒng)的安全機(jī)制

2.1 SSL協(xié)議

SSL(Secure Socket Layer,安全套接字層)協(xié)議指定了一種在應(yīng)用層協(xié)議和TCP/IP協(xié)議之間提供數(shù)據(jù)安全性分層的機(jī)制,它為TCP /IP連接提供數(shù)據(jù)加密、服務(wù)器認(rèn)證、消息完整性以及可選的客戶端認(rèn)證,提高了數(shù)據(jù)傳輸?shù)陌踩?。SSL協(xié)議是由SSL握手協(xié)議、SSL修改密文協(xié)議、SSL警告協(xié)議和SSL記錄協(xié)議組成的一個(gè)協(xié)議族,如圖1所示[1]。

2.2 SSL VPN系統(tǒng)的通信過程

SSL VPN系統(tǒng)中客戶端與服務(wù)器端的通信過程如下[2]:

第一步:VPN客戶端連接至VPN服務(wù)器,并要求驗(yàn)證服務(wù)器端的身份。

第二步:服務(wù)器發(fā)送數(shù)字證書證明自己的身份。通過檢查有效日期并確認(rèn)證書包含可信任證書頒發(fā)機(jī)構(gòu)(CA)的數(shù)字簽名來驗(yàn)證證書的有效性。

第三步:服務(wù)器發(fā)出一個(gè)請(qǐng)求,對(duì)客戶端的身份進(jìn)行驗(yàn)證,為節(jié)省系統(tǒng)開銷,此步驟可省。

第四步:確定身份后,雙方協(xié)商加密算法及用于完整性檢查的散列函數(shù)。

第五步:客戶端和服務(wù)器協(xié)商會(huì)話密鑰。

第六步:客戶端和服務(wù)器分別使用協(xié)商好的加密算法及密鑰,對(duì)要發(fā)送的數(shù)據(jù)進(jìn)行加密,對(duì)收到對(duì)方的數(shù)據(jù)進(jìn)行解密。

以上6步驟中,前3步實(shí)現(xiàn)了身份驗(yàn)證,第四步和第五步實(shí)現(xiàn)了密鑰交換,第六步實(shí)現(xiàn)了數(shù)據(jù)的加密/解密。這樣在客戶端和服務(wù)器間就搭建了一條加密信道。

3 應(yīng)用安全算法

不同應(yīng)用環(huán)境下的VPN系統(tǒng),對(duì)安全等級(jí)、速度快慢、部署成本高低、是否易用都有不同的側(cè)重。應(yīng)用于大學(xué)數(shù)字圖書館的SSL VPN系統(tǒng)在滿足前文所述的安全需求時(shí),還要考慮一些具體特點(diǎn):第一,客戶端身份驗(yàn)證方式應(yīng)盡量簡單;第二,需要防止合法用戶有意或無意將自己的身份證明轉(zhuǎn)告給他人,造成資源濫用,也增加了整個(gè)系統(tǒng)的不安全因素;第三,由于用戶數(shù)量有限,不希望投入過高成本,校園圖書館多數(shù)以軟件方式構(gòu)建VPN系統(tǒng),這樣,安全算法的復(fù)雜程度就直接影響著資源訪問的速度,在應(yīng)用安全策略時(shí)應(yīng)該在安全和速度之間取得平衡。

Openssl是一個(gè)基于SSL協(xié)議的開源軟件包,它實(shí)現(xiàn)了多種加密算法、信息摘要算法、密鑰和證書的管理功能,并提供了SSL協(xié)議的完整接口[3]。應(yīng)用程序利用這些現(xiàn)成的函數(shù)可以方便地實(shí)現(xiàn)安全套接字層。我們構(gòu)建VPN系統(tǒng)時(shí),可以根據(jù)具體情況,選擇適合的安全算法。本文對(duì)應(yīng)用于圖書館的SSL VPN系統(tǒng)在身份驗(yàn)證、加密傳輸、完整性校驗(yàn)環(huán)節(jié)使用的算法作了討論。

3.1 證書和密碼方式相結(jié)合進(jìn)行身份驗(yàn)證

系統(tǒng)采用PKI證書驗(yàn)證服務(wù)器端身份,采用用戶名/密碼方式驗(yàn)證客戶端身份。

證書方式驗(yàn)證SSL VPN服務(wù)器端的過程是:服務(wù)器持有由認(rèn)證中心發(fā)放的身份證書,以及認(rèn)證中心的公開密鑰。在身份識(shí)別過程中,服務(wù)器方先把自己的數(shù)字證書傳給客戶端,客戶端用認(rèn)證中心的公開密鑰來檢驗(yàn)證書的數(shù)字簽名,如果正確,且證書處于有效期內(nèi),就認(rèn)為服務(wù)器端的身份有效。服務(wù)器端發(fā)來的證書,除了包含自己的身份標(biāo)識(shí),還含有一個(gè)公開密鑰,用于接下來的密鑰交換過程。

證書方式進(jìn)行身份驗(yàn)證,安全性高,但對(duì)應(yīng)用于大學(xué)圖書館的VPN系統(tǒng)來說,這種驗(yàn)證方式不適于驗(yàn)證客戶端身份。因?yàn)?證書需要以郵件方式發(fā)送給每個(gè)客戶端,手工完成這一過程,加大了管理人員工作量。另外,服務(wù)器對(duì)客戶端進(jìn)行證書認(rèn)證的過程,也會(huì)加大系統(tǒng)開銷,影響訪問速度。若采用用戶名/密碼方式進(jìn)行客戶端身份驗(yàn)證,用戶申請(qǐng)“用戶名”和“密碼”的工作,管理員審核資格的工作都可以借助Web應(yīng)用程序自動(dòng)進(jìn)行,節(jié)省了人工。普通系統(tǒng)中的“用戶名”和“密碼”以明文方式傳送,容易被攻擊者從線路上竊聽到。在SSL協(xié)議下,完成服務(wù)器的證書認(rèn)證之后,就在客戶和服務(wù)器之間建立了一個(gè)安全的連接。在此安全連接基礎(chǔ)上,“用戶名”和“密碼”以密文方式傳送給服務(wù)器端,避免被竊聽。綜上,用戶名/密碼方式進(jìn)行客戶端身份驗(yàn)證能夠滿足本系統(tǒng)的安全需求,且方便管理。

3.2 統(tǒng)計(jì)用戶登錄次數(shù),防止密碼泄露

為了防止合法用戶將自己的用戶名和密碼大范圍轉(zhuǎn)告給其他人,或用戶密碼被破解,vpn系統(tǒng)需要在數(shù)據(jù)庫中記錄每個(gè)用戶當(dāng)天的登錄次數(shù),如果超出了管理員設(shè)定的某個(gè)閾值,就自動(dòng)關(guān)閉該用戶的使用權(quán)。

設(shè)計(jì)存放用戶信息的數(shù)據(jù)庫表,字段有userid(主鍵)、username、password、active、times。userid是用戶的登錄用戶名,username是教師的真實(shí)姓名,password是登錄密碼,active為權(quán)限標(biāo)記,times為當(dāng)天的登錄此數(shù)。

userid和username字段信息來源于圖書館讀者信息庫中保存的教師借書證號(hào)和教師姓名;password字段值是用戶在線注冊(cè)時(shí)自設(shè)定的密碼;active初始值為0,表示用戶未注冊(cè),當(dāng)用戶提交注冊(cè)申請(qǐng)后,程序核對(duì)userid和username信息均正確,自動(dòng)將active字段值變?yōu)?,表示該用戶具有VPN使用權(quán)限;程序每天零點(diǎn)對(duì)所有用戶的times字段值清零,用戶每登錄一次VPN,times字段值增加1,當(dāng)times字段值超過預(yù)設(shè)閾值時(shí),active字段值由1變?yōu)?1,表示用戶處于非正常狀態(tài),暫停VPN使用權(quán),人工干預(yù)后才能繼續(xù)使用。

3.3 用blowfish-CBC算法保護(hù)數(shù)據(jù)機(jī)密性

為防止數(shù)據(jù)內(nèi)容被非法竊聽,數(shù)據(jù)傳輸要以密文形式進(jìn)行。加解密算法分為對(duì)稱和非對(duì)稱兩種。對(duì)稱算法的加解密速度較非對(duì)稱算法高很多,所以當(dāng)對(duì)系統(tǒng)安全級(jí)別要求不是很高的時(shí)候,VPN系統(tǒng)采用對(duì)稱加密算法。blowfish-CBC是一種對(duì)稱密鑰算法。

blowfish算法是一個(gè)64位的可變密鑰長度的分組密碼算法,具有如下特點(diǎn):

(1)快速:在32bit微處理器上加密數(shù)據(jù)的速率是每個(gè)字節(jié)用18個(gè)時(shí)鐘周期;

(2)緊湊:可以在少于5k的內(nèi)存上運(yùn)行;

(3)可變的安全性:密鑰長度是可變的,最長可達(dá)448bit,這使得在更高速度和更高安全性之間進(jìn)行折中成為可能。

密碼分組鏈接(Cipher Block Chain,CBC)模式,是對(duì)稱加密算法的分組加密算法中的一種重要模式。在CBC模式中,明文被加密之前要與前面的密文進(jìn)行異或運(yùn)算[4],即前一個(gè)分組的加密結(jié)果被反饋到當(dāng)前分組的加密中。因此,每個(gè)密文分組不僅依賴于產(chǎn)生它的明文分組,而且依賴于所有前面的明文分組。

blowfish-CBC是將blowfish算法和CBC模式結(jié)合起來,即加密前對(duì)明文數(shù)據(jù)塊做CBC變換,再進(jìn)行加密。

3.4 用HMAC保護(hù)數(shù)據(jù)完整性

在SSL VPN系統(tǒng)中,需要確保數(shù)據(jù)的完整性,也就是保證接收到的數(shù)據(jù)確系發(fā)送方發(fā)送的數(shù)據(jù)。采用散列消息鑒別碼(HMAC)可以解決這個(gè)問題。

定義HMAC需一個(gè)散列函數(shù)(比如SHA1或MD5)及一個(gè)密鑰K。密鑰可取任意長,但建議不短于輸出消息驗(yàn)證碼的長度。如密鑰過短,將會(huì)降低安全強(qiáng)度[5]。

散列消息鑒別碼就是發(fā)送方基于密鑰K用散列函數(shù)計(jì)算出一個(gè)消息摘要。如果收方憑密鑰K計(jì)算的消息摘要與發(fā)方傳來的消息摘要一致,那就能證明是發(fā)送方發(fā)來的信息。

4 總 結(jié)

SSL VPN系統(tǒng)在解決遠(yuǎn)程訪問的問題時(shí)具有明顯優(yōu)勢(shì),采用適合的安全策略,能夠提升系統(tǒng)安全性能,節(jié)約部署成本,提高訪問速度。

參考文獻(xiàn)

[1]令曉靜,等.SSL協(xié)議的分析及實(shí)現(xiàn)[EB/OL].http:∥www.51testing.com/html/12/540.html,2005-11-01.

[2]Chou W.Inside SSL:the secure sockets layer protocol[J].IT Professional,2002,4(4):47-52.

[3]Eric Rescorla.SSL與TLS[M].崔凱,譯.北京:中國電力出版社,2002:20-28.

[4]宋軍,等.分組密碼工作模式發(fā)展動(dòng)態(tài)及簡評(píng)[J].計(jì)算機(jī)工程與科學(xué),2003,25(2):38-39.

[5]張誠.HMAC在IPSec和SSL中的應(yīng)用[J].中國新通信:技術(shù)版,2008,11(6):24.

猜你喜歡
數(shù)字圖書館安全
高校數(shù)字圖書館資源整合的初探
商情(2016年39期)2016-11-21 09:27:10
基于云計(jì)算的數(shù)字圖書館建設(shè)與服務(wù)模式研究
從谷歌案析數(shù)字圖書館對(duì)作品的使用行為
芻議數(shù)字圖書館計(jì)算機(jī)網(wǎng)絡(luò)的安全技術(shù)及其防護(hù)策略
花莲县| 霍林郭勒市| 邢台市| 犍为县| 香格里拉县| 沙田区| 那曲县| 南康市| 康乐县| 吉木萨尔县| 皮山县| 磐安县| 阿坝县| 阿尔山市| 古浪县| 黄冈市| 资源县| 科尔| 沧源| 喀喇| 紫阳县| 澜沧| 大埔区| 肃南| 思南县| 宁陵县| 蛟河市| 金湖县| 浑源县| 和硕县| 泾源县| 奇台县| 丹棱县| 杨浦区| 秦安县| 金川县| 莱西市| 山丹县| 陵川县| 新民市| 鄂州市|