段新東 馬建峰
西安電子科技大學(xué)計算機網(wǎng)絡(luò)與信息安全教育部重點實驗室 陜西 710071
本文基于PKI融合SAN和NASD(Network Attached Secure Disk)為一種新的多域異構(gòu)網(wǎng)絡(luò)存儲系統(tǒng),系統(tǒng)具有高帶寬、易擴展、規(guī)模大、安全性高等特點。相對于 OSD存儲系統(tǒng)具有經(jīng)濟低廉的特點,適宜于現(xiàn)階段對安全性要求較高的海量存儲系統(tǒng)。
NAS頭(NAS head)是把SAN連接到IP網(wǎng)絡(luò)的一種技術(shù),IP網(wǎng)絡(luò)用戶通過NAS 頭可以直接訪問SAN 中的存儲設(shè)備,NAS頭能使NAS 和SAN 互連在同一LAN中,突破FC的拓撲限制,允許FC設(shè)備在IP網(wǎng)絡(luò)中使用。SNS的結(jié)構(gòu)如圖1所示。
圖1 SNS的結(jié)構(gòu)圖
當用戶訪問SNS存儲系統(tǒng)時:(1)向SNS服務(wù)器發(fā)出訪問申請;(2)SNS服務(wù)器對用戶進行身份認證、用戶端平臺身份的認證和平臺完整性校驗;(3)SNS服務(wù)器與用戶確認密鑰MK;(4)如果訪問SAN,則用MK與NAS頭建立安全信道,由 NAS頭進行文件與塊之間的轉(zhuǎn)換后進行讀寫等操作,并把結(jié)果通過安全信道返回給用戶;如果訪問 NASD,則用MK分別與 NASD文件管理服務(wù)器和智能磁盤建立安全信道,從前者得到授權(quán)對象后直接與后者進行通信,由智能磁盤把結(jié)果通過安全信道返回給用戶。其中 SNS服務(wù)器與NASD文件服務(wù)器和 NAS頭之間都存在一個安全信道用以傳遞MK等信息。
存儲網(wǎng)絡(luò)安全是指在存儲網(wǎng)絡(luò)中,確保在傳輸過程中的數(shù)據(jù)和保存在存儲設(shè)備上的數(shù)據(jù)的保密性、完整性、可用性、不可抵賴性以及整個網(wǎng)絡(luò)存儲系統(tǒng)的可靠的性能。如果存儲系統(tǒng)SNS中每個域是安全的,也就是保存在存儲設(shè)備上的數(shù)據(jù)是安全的,那么要使整個系統(tǒng)是安全的,還需要數(shù)據(jù)在用戶、SNS服務(wù)器和每個域之間的交互是安全的。系統(tǒng)融合前不同域網(wǎng)絡(luò)存儲系統(tǒng)的安全模式不同,并且都有相對比較成熟的研究。雖然SNS在此只融合了NASD和SAN,但理論上可以融合更多類型的存儲系統(tǒng),在此我們假定每個域的系統(tǒng)是安全的,并且SNS服務(wù)器與每個域間的安全信道是系統(tǒng)構(gòu)建時建立的。
為了實現(xiàn)上面的功能,可以把整個存儲網(wǎng)絡(luò)部分的協(xié)議可以分為兩部分:(1)用戶與 SNS服務(wù)器間:實現(xiàn)用戶的可信認證接入,并且協(xié)商建立一定時期的長期密鑰MK。在該時期內(nèi),用戶只需在首次訪問系統(tǒng)時與 SNS服務(wù)器交互一次,然后每次訪問時直接與每個域的存儲系統(tǒng)交互而無需SNS服務(wù)器的參與。(2)用戶與每個域Dom間:利用第一步建立的長期密鑰MK,確認每次訪問時的會話密鑰并在此基礎(chǔ)上建立二者間的安全信道。
AIKpriv和AIKpub為證明身份密鑰對,SML 為存儲測量日志,cert(AIKpub)為Privacy-CA向平臺簽發(fā)的AIK 證書;sid為會話標識;F為密鑰推導(dǎo)函數(shù)(偽隨機數(shù)方程);f是能抵抗選擇消息攻擊的MAC方程;SIG是基于證書能抵抗選擇明文攻擊的簽名方程,ENC是能抵抗選擇明文攻擊的對稱加密方程。
可信認證接入認證協(xié)議 SNSTAP如圖 2所示。當用戶Cl向SNS服務(wù)器發(fā)出訪問請求時,協(xié)議詳細描述如下:
圖2 可信接入認證協(xié)議SNSTAP
(3) Sn→Cl:(S n, s id, S IGs)。Sn驗證SIGc及其參數(shù)的正確性實現(xiàn)對Cl的身份認證。計算 γ= (gy)x并安全擦除x,計算 kp=F(γ)(0)和 fkp(P latinfo)并與收到的 MACkp比較一致后,用SML和 Cert( A IKpub)對 SIGAIKpriv(P CR, rs)進行驗證,從而完成對 Cl端平臺的身份認證和完整性校驗,簽名得計算 mk=F(1)。(γ)
(4)Cl驗證SIGs通過后,計算得 mk=F(γ')(1)。
安全信道協(xié)議SNSCHL如圖3所示,其詳細描述如下:
圖3 安全信道協(xié)議SNSCHL
(4) Dom→Cl: (D om, s id, rd, vd,σ) 。計算 k0=F(mk)(rd, rc, D om, Cl),k1= firstn1(k0),k2=sec ondn2(k0),驗證vc后計算 vfi=fk2(sid, rfi)并輸出會話密鑰k1。
(5)C l→Dom :(s id, cq, tq)。驗證 vfi后輸出會話密鑰k1,計算 ke=Fk1(0), ka=Fk1(1), cq=Encke(REQ),tq= fka(s id, cq),其中REQ是用戶訪問磁盤的內(nèi)容。
(6) Dom→Cl:(s id, cre,tre)。Dom確認收到的信息具有形式(s id, cq, tq)且sid不同以往的會話標志。計算 ke=Fk1(0),ka=Fk1(1),驗證 tq=fka(sid, cq),得執(zhí)行Request中相關(guān)操作并把操作結(jié)果Rep發(fā)給Cl:m =(s id, R EP),計算 cre=Encke(REP)和tre=fka(s id, cre)。
(7)Cl收到Dom發(fā)來的消息(s id, cre,tre)后,確認具有形式(r epid, cre,tre)且sid正確后,驗證 tre=fka(s id, cre),計算得結(jié)果
整個網(wǎng)絡(luò)協(xié)議由兩部分構(gòu)成:用戶的可信接入認證協(xié)議SNSTAP和安全信道協(xié)議SNSCHL。前者實現(xiàn)對用戶身份認證和用戶端平臺的可信認證,并且在此基礎(chǔ)上協(xié)商出用戶的長期密鑰,使得持有長期密鑰的用戶在一定時間段訪問系統(tǒng)時效率直接與每個域交互,從而提高了系統(tǒng)的性能,本文將證明其具備CK模型的相關(guān)安全要求,從而保證該階段數(shù)據(jù)的保密性、完整性等存儲網(wǎng)絡(luò)的安全性質(zhì)。
安全信道協(xié)議 SNSCHL可以分為兩步:第一步是利用MK建立會話密鑰k1;第二步是在會話密鑰確認的基礎(chǔ)上建立二者間的安全信道??梢宰C明前者是SK安全的,在第一步是SK安全的前提下,可以證明整個協(xié)議是一個安全信道。由于文章篇幅所限,在此不再給出該協(xié)議的詳細證明過程,因此我們有如下結(jié)論:
定理1:如果SNSTAP是UM中一個SK安全的密鑰交換協(xié)議,f是一個能抵抗選擇消息攻擊的 MAC方程協(xié)議,ENC是能抵抗CPA攻擊的對稱加密方程,F(xiàn)是一個安全的偽隨機數(shù)方程,那么協(xié)議SNSCHL在UM中是一個安全網(wǎng)絡(luò)信道協(xié)議。
協(xié)議SNSCHL在UM中是一個安全網(wǎng)絡(luò)信道協(xié)議,確保數(shù)據(jù)在該階段滿足保密性、完整性等存儲網(wǎng)絡(luò)的安全性質(zhì)。從而使得傳輸過程中的數(shù)據(jù)具有保密性、完整性、可用性、不可抵賴性等安全屬性。下面詳細給出用戶接入認證協(xié)議的安全性分析。
引理1:若DDH假定成立,則協(xié)議SNSTAP 是AM中SK安全的(without PFS)密鑰交換協(xié)議。
證明:首先給出AM 中的協(xié)議SNSTAPAM:
(1)Sn→Cl:(Sn, Sid , gx)
(2)Cl→Sn:(Cl,Sid , gy)
(3)Sn→Cl :(Sn, Sid)
由AM定義知,當兩個未被攻陷的參與者Sn和Cl都參與完成了同一個會話(即Sid與gx,gy惟一綁定)時,各自得到了未被篡改的gxymodp,即二者建立了相同的會話密鑰。
下面采用反證法證明SNSTAPAM滿足SK安全的第二個條件。即:假設(shè)在AM中存在一個攻擊者E能夠以不可忽略的優(yōu)勢δ猜測出測試會話查詢中返回的值是隨機的還是真實的密鑰,那么通過攻擊者E 就可以構(gòu)造一個算法D 以不可忽略的優(yōu)勢區(qū)分概率分布Q0和Q1(Q0和Q1的定義同DDH假定),這與DDH假定是相悖的,所以得證。
D 的輸入是一個五元組(p,g,gx,gy,u),u以 1/2的概率等于gz或gxy,其構(gòu)造方法如下:
(1)初始化協(xié)議運行環(huán)境。把公共參數(shù)告訴攻擊者E,選擇協(xié)議參與方P1, …,Pn 和認證服務(wù)器Sn。
(2)隨機選擇 Q←{Q0,Q1}作為 D的輸入。隨機選擇r←{1,…,l},l為攻擊者所能發(fā)起的會話數(shù)量的上界。然后仿真協(xié)議的真實執(zhí)行過程:當E 激活一個參與者建立一個新的會話t(t≠r)或者參與方接收一條消息時,D 代表該參與方按照協(xié)議SNSTAPAM進行正常的交互。如果t=r,則D 讓Sn向 Cl發(fā)送消息(Sn,Sid,gx),若 Cl 收到消息(Sn,Sid,gx)時,D讓Cl向Sn發(fā)送消息(Sn,Sid,gy)。當某個會話過期時,參與者將相應(yīng)的會話密鑰從內(nèi)存中擦除。當一個參與者被攻陷或一個會話(除第r個會話)被暴露時,D把那個參與者或會話的相關(guān)信息交給E;如果第r個會話被E選中進行會話查詢,則D把u作為查詢響應(yīng)給E;如果第r個會話被暴露了,或者另外一個會話被E選中作為測試會話,或者E沒有選擇測試會話就停止,則 D隨機選擇b'←{0,1}輸出,然后停止;如果E停止且輸出b',則D停止且輸出和E相同的b'。
當E選擇的測試會話是第r個時,因為D和E的輸出是相同的b',由假設(shè)和D的構(gòu)造可知:D的輸入來自Q0或Q1的概率均是0.5的情況下,D卻能以0.5+δ(其中δ是不可忽略)的概率猜中響應(yīng)是真實會話密鑰或任一隨機數(shù);否則猜中的概率是0.5。而前者出現(xiàn)的概率是1/l,后者出現(xiàn)的概率是1-1/l,所以D猜中的概率是:0.5+δ/l,這樣D以的不可忽略的優(yōu)勢δ/l區(qū)分了其輸入來自Q0或Q1,這與DDH假設(shè)矛盾。
引理2:如果DDH假設(shè)成立,并且簽名算法可以抵抗選擇消息攻擊,經(jīng)過編譯器編譯后的協(xié)議SNSTAP在UM 中的輸出與協(xié)議SNATAPAM在AM 中的輸出與是不可區(qū)分的。
證明:在CK模型提供了一些認證器,其中“SIG-MAC”是一個非常著名的認證器。Canetti和Krawczyk在2002 年對給出了認證器的嚴格證明。這里我們使用該認證器對AM中的協(xié)議 SNSTAPAM進行編譯優(yōu)化得到了 UM下的協(xié)議SNSTAP。
由引理1和引理2可知:對于UM中的任意攻擊者E,協(xié)議SNSTAP能夠滿足下列兩條性質(zhì):(1)若Sn和Cl沒有被攻陷并且完成了匹配的會話,則二者將輸出相同的密鑰MK。(2)攻擊者進行測試會話查詢,它猜中 b 的概率不超過0.5+δ。因此可得:
定理2:如果DDH假設(shè)成立,并且簽名算法可以抵抗選擇消息攻擊,那么協(xié)議SNSTAP在UM中是SK安全的。
當用戶取得長期密鑰時,無需SNS-server參與而可直接與每個域交互,所以系統(tǒng)的性能主要取決于協(xié)議SNSCHL的效率,該部分由會話密鑰的確認和可信信道建立兩部分構(gòu)成。第二部分采用的是建立安全信道的典型方法,整體性能主要取決于會話密鑰的確認。因為存儲網(wǎng)絡(luò)中未能找到相關(guān)的接入認證協(xié)議相比較,所以下面與802.11i的EAP認證協(xié)議中性能最好的EAP-TLS做比較。其中Cl相當于移動節(jié)點MP,Dom相當于接入點A和認真服務(wù)器AS的總和,802.11i在無線Mesh網(wǎng)絡(luò)中要在兩個接入點MP之間進行四步握手來完成密鑰確認,而本文的協(xié)議SNSTAP中不需要額外的密鑰認證。同時由于前者沒有對用戶端平臺的可信驗證,所以在比較的時候也去掉協(xié)議SNSTAP中的可信部分,表1給出了一個新MP接入時需要進行的計算和通信開銷。其中發(fā)送和接收一次消息稱為一輪交互,E表示模指數(shù)運算,S表示計算簽名,M表示計算消息認證碼:
表1 協(xié)議性能對比
協(xié)議計算量:協(xié)議SNSTAP中CL和DOM(A)的計算量都要略少于 EAP-TLS,且 DOM(AS)的運算量相對于EAP-TLS來說則減少了一半。
協(xié)議通信效率:在Mesh標準草案中,一次EAP-TLS接入認證需要5輪協(xié)議交互,一次四步握手需要2輪協(xié)議交互,而一個新的MP接入Mesh WLAN時分別要以申請者和認證者執(zhí)行兩次“EAP-TLS+四步握手”,所以總共需要 14輪的協(xié)議交互;而協(xié)議SNSTAP只需要4輪的協(xié)議交互即可完成相應(yīng)的功能。
綜上所述,協(xié)議SNSTAP在計算量與通信效率方面都是比較高效的。
在現(xiàn)有的存儲網(wǎng)絡(luò)基礎(chǔ)上,融合多種網(wǎng)絡(luò)存儲系統(tǒng)是構(gòu)建海量存儲系統(tǒng)一種比較經(jīng)濟實用的方法,近年來取得了很多研究成果,但同時也帶來了一些新的安全問題需要研究。本文基于PKI融合SAN和NASD為一種適合海量存儲的多域安全網(wǎng)絡(luò)存儲系統(tǒng),并設(shè)計了存儲系統(tǒng)的網(wǎng)絡(luò)協(xié)議。用戶直接與磁盤或SAN交互使得新系統(tǒng)仍能保持高帶寬的優(yōu)點,而域的易擴展性使得系統(tǒng)具有大規(guī)模的的特點,這些都是海量存儲所需要的。協(xié)議通過兩輪交互就完成了用戶與服務(wù)器間的身份認證和長期密鑰確認,同時完成了對用戶端平臺的身份認證和完整性校驗,實現(xiàn)可信認證接入。SNS服務(wù)器負責(zé)用戶的可信接入認證和長期密鑰的管理分發(fā),而對用戶的授權(quán)和對存儲設(shè)備的管理由不同域的服務(wù)器完成,減輕了SNS服務(wù)器的負載,削弱了其瓶頸限制,使其離線服務(wù)成為可能,提高了協(xié)議執(zhí)行的效率同時降低了服務(wù)器遭受潛在攻擊而導(dǎo)致系統(tǒng)癱瘓的概率。同時也把域服務(wù)器從用戶管理認證接入中解脫出來而更專注于域內(nèi)存儲系統(tǒng)的管理,并且用戶認證接入后直接與每個域交互而無需SNS服務(wù)器的參與,使得系統(tǒng)的效率更加高效。最后,利用CK模型給出了協(xié)議的安全性分析,結(jié)果表明協(xié)議是SK安全的,所建立的信道是安全信道。因此,如果被融合的SAN和NASD系統(tǒng)是安全的,那么新的網(wǎng)絡(luò)存儲系統(tǒng)也是安全的。
[1]SNIA-Storage Networking Industry Association. OSD:Object Based Storage Devices Technical Work Group[EB]. URL: http://www.snia.org/tech activities/workgroups/osd/.
[2]M. Factor, K. Meth, D. Naor, O. Rodeh, and J. Satran. Object storage: the future building block for storage systems[C]. Local to Global Data Interoperability - Challenges and Technologies, Sardinia, Italy.