劉 磊, 劉義紅
(淮南師范學(xué)院 計(jì)算機(jī)學(xué)院,安徽 淮南 232038)
隨著信息技術(shù)的飛速發(fā)展,人們?cè)絹?lái)越重視數(shù)據(jù)安全,尤其在一些特殊的應(yīng)用場(chǎng)景,需要更加開放的網(wǎng)絡(luò)環(huán)境,此時(shí)離散存儲(chǔ)在終端節(jié)點(diǎn)上的數(shù)據(jù)對(duì)傳統(tǒng)的集中式數(shù)據(jù)安全防護(hù)方案提出了更高的要求。電子文件作為一種數(shù)據(jù)載體,在數(shù)據(jù)結(jié)構(gòu)、完整性、存儲(chǔ)形式多樣性等方面與非結(jié)構(gòu)化數(shù)據(jù)有所不同,但傳統(tǒng)的數(shù)據(jù)安全防護(hù)方案依然具有一定的參考意義。
目前,主流數(shù)據(jù)安全保護(hù)技術(shù)主要以密碼學(xué)為主,以數(shù)據(jù)加密算法和數(shù)據(jù)訪問(wèn)控制策略為代表。這些技術(shù)側(cè)重于數(shù)據(jù)存儲(chǔ)、分發(fā)和授權(quán)的安全問(wèn)題。其中,經(jīng)典的數(shù)據(jù)加密算法分為對(duì)稱加密算法和非對(duì)稱加密算法。為了解決開放網(wǎng)絡(luò)環(huán)境下的數(shù)據(jù)共享問(wèn)題,研究者提出了多種數(shù)據(jù)加密方案,例如代理重加密算法和基于身份的加密算法。近年來(lái),越來(lái)越多的研究人員關(guān)注基于屬性基的數(shù)據(jù)加密算法,這種算法可以靈活控制用戶的解密能力,為實(shí)現(xiàn)對(duì)數(shù)據(jù)的細(xì)粒度訪問(wèn)控制奠定了基礎(chǔ)。這種算法可以滿足電子文件在存儲(chǔ)和分發(fā)方面的安全防護(hù)需求。而在數(shù)據(jù)訪問(wèn)控制方面,傳統(tǒng)的訪問(wèn)控制模型分為三種:自由訪問(wèn)控制、強(qiáng)制訪問(wèn)控制和基于角色的訪問(wèn)控制。近年來(lái),基于屬性基加密的訪問(wèn)控制策略不僅可以滿足數(shù)據(jù)安全管理系統(tǒng)的細(xì)粒度訪問(wèn)控制需求,而且支持用戶的大規(guī)模動(dòng)態(tài)擴(kuò)展,因此是一種理想的數(shù)據(jù)訪問(wèn)控制方案。
這些研究成果能夠滿足電子文件在存儲(chǔ)、分發(fā)和訪問(wèn)控制過(guò)程中的安全防護(hù)需求。但是,如圖1所示,傳統(tǒng)方案主要采用集中式數(shù)據(jù)管理模式,方案依托服務(wù)器端解決數(shù)據(jù)和密鑰在存儲(chǔ)階段,以及數(shù)據(jù)在訪問(wèn)控制階段的安全問(wèn)題,終端節(jié)點(diǎn)(即客戶端)僅對(duì)用戶的訪問(wèn)行為控制承擔(dān)較少的業(yè)務(wù)負(fù)載。但在一些特定的應(yīng)用場(chǎng)景中,一些系統(tǒng)配置文件和數(shù)據(jù)庫(kù)文件等電子文件需要離散存儲(chǔ)在終端節(jié)點(diǎn)上,這使得僅通過(guò)提升服務(wù)器端的安全性已無(wú)法滿足對(duì)電子文件的安全防護(hù)需求,系統(tǒng)主要的安全防護(hù)業(yè)務(wù)進(jìn)而轉(zhuǎn)移至客戶端處理。針對(duì)此類問(wèn)題,研究關(guān)注的重點(diǎn)已不再是數(shù)據(jù)的集中式安全存儲(chǔ)和分發(fā),而是在客戶端承擔(dān)主要業(yè)務(wù)負(fù)載的情況下,如何解決數(shù)據(jù)在客戶端上的安全存儲(chǔ)、密鑰安全管理及安全訪問(wèn)控制等問(wèn)題。
圖1 傳統(tǒng)方案與本研究所提方案對(duì)比圖
對(duì)此,本研究以基于屬性基加密的訪問(wèn)控制策略為基礎(chǔ),提出了一種面向離散存儲(chǔ)電子文件的訪問(wèn)控制策略,該方案以客戶端為業(yè)務(wù)負(fù)載核心,通過(guò)引入密鑰分離管理算法和混合對(duì)稱加密算法改進(jìn)了基于屬性基加密的訪問(wèn)控制策略的數(shù)據(jù)加密流程,使其能夠滿足離散存儲(chǔ)電子文件場(chǎng)景下的數(shù)據(jù)安全防護(hù)需求。因此,本研究所提方案不僅繼承了基于屬性基加密的訪問(wèn)控制策略所具備的細(xì)粒度訪問(wèn)控制特點(diǎn),并設(shè)計(jì)了基于客戶端的輕量化數(shù)據(jù)及密鑰安全防護(hù)算法,以“化整為零”的方式降低了服務(wù)器端的業(yè)務(wù)負(fù)載,并有效提升了系統(tǒng)的整體運(yùn)行效率。
本研究所提方案的安全框架主要包括3個(gè)實(shí)體:主服務(wù)器(服務(wù)器端)、授權(quán)服務(wù)器(服務(wù)器端)和客戶機(jī)(客戶端),三者關(guān)系如圖2所示。該框架在傳統(tǒng)數(shù)據(jù)安全防護(hù)技術(shù)基礎(chǔ)上,通過(guò)將系統(tǒng)的加/解密、電子文件分發(fā)等核心業(yè)務(wù)遷移至客戶機(jī),不僅能夠滿足離散存儲(chǔ)的電子文件的安全訪問(wèn)需求,而且允許主服務(wù)器僅處理授權(quán)驗(yàn)證及信息更新等輕量化業(yè)務(wù),從而有效地降低其業(yè)務(wù)負(fù)載壓力。
圖2 訪問(wèn)控制策略框架圖
1.1.1 主服務(wù)器 主服務(wù)器主要負(fù)責(zé):驗(yàn)證用戶身份信息;管理客戶機(jī)信息及電子文件信息;維護(hù)電子文件加密密鑰的隨機(jī)部分。其主要維護(hù)兩張信息表:客戶機(jī)信息列表Listc和電子文件信息列表Listf。
Listc:{客戶機(jī)編號(hào),客戶機(jī)基本信息}。其中,客戶機(jī)編號(hào)是客戶機(jī)在初始注冊(cè)時(shí)由主服務(wù)器分配,是客戶機(jī)唯一性標(biāo)識(shí);客戶機(jī)基本信息包括客戶機(jī)注冊(cè)時(shí)間,客戶機(jī)型號(hào),客戶機(jī)操作系統(tǒng)及客戶機(jī)用途等。
Listf:{文件編號(hào),文件基本信息,文件屬性集合,文件敏感等級(jí)}。其中,文件基本信息包括文件用途,文件創(chuàng)建時(shí)間,文件大小等;文件屬性集合是一組描述文件特性的屬性集合,主要用于與用戶屬性進(jìn)行門限比對(duì),從而實(shí)現(xiàn)文件的細(xì)粒度訪問(wèn)控制。主服務(wù)器保存的Listfa為所有客戶機(jī)上的電子文件信息總列表,客戶機(jī)分別保存自有的Listfs是各自客戶機(jī)上電子文件信息子列表。電子文件等級(jí)分為L(zhǎng)evel1、Level2、Level3。Level1指最高敏感級(jí)別電子文件,Level2指中級(jí)敏感級(jí)別電子文件,Level3指一般敏感級(jí)別電子文件,根據(jù)文件敏感等級(jí)不同,對(duì)應(yīng)的用戶操作控制權(quán)限也不同。
1.1.2 授權(quán)服務(wù)器 授權(quán)負(fù)責(zé)器主要負(fù)責(zé):對(duì)用戶進(jìn)行注冊(cè)授權(quán),生成用戶屬性證書;對(duì)客戶機(jī)進(jìn)行注冊(cè)授權(quán),管理客戶機(jī)的公/私鑰;管理電子文件的操作權(quán)限,生成用戶操作控制策略。
1.1.3 客戶機(jī) 客戶機(jī)主要負(fù)責(zé):維護(hù)電子文件加密密鑰的固定部分;加密和解密電子文件;用戶訪問(wèn)控制。其中,Sm、Sr、Client、Vser和File分別表示主服務(wù)器、授權(quán)服務(wù)器、客戶機(jī)、用戶和文檔表1為所涉及的相關(guān)參數(shù)的定義信息。
表1 邏輯對(duì)象定義參照表
既有方案中,密鑰主要由授權(quán)服務(wù)器集中進(jìn)行管理,其中用戶的密鑰對(duì)(包括公鑰和私鑰)是在申請(qǐng)階段生成,后期采用靜態(tài)管理方法,一般不會(huì)更改。而如前文所述,由于將業(yè)務(wù)負(fù)載轉(zhuǎn)移至客戶端,客戶端也將承擔(dān)對(duì)密鑰的管理業(yè)務(wù)。加之本研究將使用輕量化的對(duì)稱加密算法對(duì)電子文件進(jìn)行加/解密,這種方案能夠有效提高數(shù)據(jù)的加/解密效率,但對(duì)稱加密算法在密鑰安全保護(hù)方面較弱,因此本研究設(shè)計(jì)了一種基于服務(wù)器端和客戶端協(xié)同管理的密鑰管理機(jī)制——密鑰分離管理算法。該算法的核心思想是將文件加密密鑰分為兩部分(Kc1和Kc2)進(jìn)行管理,分別由主服務(wù)器和客戶機(jī)在加密或解密文件時(shí)動(dòng)態(tài)生成。其中,Kc1是密鑰的固定部分,由客戶機(jī)根據(jù)本地設(shè)備的硬件信息生成;Kc2是密鑰的隨機(jī)部分,由主服務(wù)器根據(jù)特定算法生成并定期更新。該算法通過(guò)在主服務(wù)器和客戶機(jī)上,以密鑰分離式的管理方式分別管理文件密鑰的不同組成部分,使客戶機(jī)每次在進(jìn)行文件的加/解密操作時(shí),均需從主服務(wù)器獲取Kc2部分,而Kc2由主服務(wù)器隨機(jī)生成并定期更新,使得非法用戶很難同時(shí)獲取Kc1和Kc2,從而能夠有效地提高密鑰安全性。算法流程如圖3所示。
圖3 密鑰分離算法流程圖Fig.3 Key separation management algorithm flowchart圖4 混合對(duì)稱加密算法流程圖Fig.4 Hybrid symmetric encryption algorithm flowchart
一方面,由于離散存儲(chǔ)的電子文件主要存儲(chǔ)于客戶機(jī)上,其數(shù)據(jù)加/解密業(yè)務(wù)只能由客戶機(jī)獨(dú)立完成。而基于屬性基的數(shù)據(jù)加密算法屬于非對(duì)稱數(shù)據(jù)加密算法,此類算法加/解密過(guò)程相對(duì)復(fù)雜,對(duì)于數(shù)據(jù)量較大的文件加/解密速率相對(duì)較慢,而客戶機(jī)往往系統(tǒng)資源有限。另一方面,面向電子文件的加密算法區(qū)別于傳統(tǒng)文本密算法,需要在文件系統(tǒng)層面考慮對(duì)數(shù)據(jù)的加密操作,加密內(nèi)容不是電子文件中的明文內(nèi)容,而是將文件作為一個(gè)獨(dú)立對(duì)象進(jìn)行加密,需要綜合考慮文件結(jié)構(gòu)和數(shù)據(jù)量等因素。綜上兩方面原因,本研究對(duì)密鑰這種數(shù)據(jù)量較小的文件依然采用非對(duì)稱加密算法進(jìn)行加密,而對(duì)于存儲(chǔ)與客戶機(jī)上的電子文件設(shè)計(jì)了一種混合對(duì)稱加密算法。該算法在綜合考慮了電子文件在分塊、分組及數(shù)據(jù)流方面的特殊數(shù)據(jù)結(jié)構(gòu),以1MB大小的分塊數(shù)據(jù)對(duì)文件進(jìn)行規(guī)格化處理,并采用RC4和AES兩種對(duì)稱加密算法相結(jié)合的方式對(duì)分塊后的數(shù)據(jù)依次進(jìn)行流加密和分組加密。兩種加密算法加密秘鑰長(zhǎng)度均為128位,且密鑰文件分別對(duì)應(yīng)Kc1和Kc2兩個(gè)部分。算法流程如圖4所示。
近些年針對(duì)基于屬性基加密的訪問(wèn)控制策略的研究較多,由于其靈活的屬性匹配模式能夠?qū)τ脩魧?shí)現(xiàn)細(xì)粒度訪問(wèn)控制。然而如前文所述,基于屬性基的數(shù)據(jù)加密算法已經(jīng)不適合本研究中電子文件離散存儲(chǔ)于客戶機(jī)的應(yīng)用場(chǎng)景,但本研究依然保留了方案中用于訪問(wèn)控制的Ac和Au等內(nèi)容,并繼承了方案通過(guò)屬性門限對(duì)比方式實(shí)現(xiàn)對(duì)數(shù)據(jù)的訪問(wèn)控制。同時(shí),結(jié)合密鑰分離管理算法和混合對(duì)稱加密算法,本研究提出了一種改進(jìn)的基于屬性基加密的訪問(wèn)控制策略。
1.4.1.1 系統(tǒng)初始化
(a)系統(tǒng)在初始化階段,主服務(wù)器會(huì)監(jiān)聽(tīng)與授權(quán)服務(wù)器及各個(gè)客戶機(jī)之間的連接狀態(tài),并將最新的Listfa和Listc發(fā)送給授權(quán)服務(wù)器進(jìn)行更新,操作如下:
Sm
→Sr
:List
_f
_a
||List
_c
(1)
(b)如果有新的客戶機(jī)納入系統(tǒng)進(jìn)行安全監(jiān)控,需要完成客戶機(jī)的注冊(cè)申請(qǐng)。首先,由客戶機(jī)向主服務(wù)器發(fā)送IDc進(jìn)行身份驗(yàn)證并提出注冊(cè)申請(qǐng)。
Client
→sm
:IDc
||req
(authorization
)(2)
(c)如果驗(yàn)證成功,主服務(wù)器向授權(quán)服務(wù)器發(fā)送IDc,授權(quán)服務(wù)器生成客戶機(jī)的SKc和PKc,并將SKc給主服務(wù)器,PKc發(fā)給客戶機(jī)。
(3)
(d)主服務(wù)器根據(jù)業(yè)務(wù)所需生成客戶機(jī)上的List
f
s
和Kc
2,并用PKc
加密后發(fā)送給客戶機(jī)。Sm
→CLient
:E
_PKc
(List
_f
_s
∥Kc
2)(4)
(e)客戶機(jī)根據(jù)Kc
1和Kc
2對(duì)List
f
s
中的電子文件進(jìn)行加密。其中,Kc
1是利用客戶機(jī)CPU
編號(hào)、硬盤編號(hào)、網(wǎng)卡MAC地址等信息通過(guò)特定算法處理后得到的MD5值。加密算法采用了一種綜合了RC4和AES兩種對(duì)稱加密算法的混合對(duì)稱加密算法,這種加密算法能夠滿足基于電子文件的數(shù)據(jù)安全加密需求,詳細(xì)內(nèi)容見(jiàn)2.3節(jié)。Cf
=Client
:E
1+2(File
,{File
∈List
_f
_s
}(5)
1.4.1.2 用戶注冊(cè)
(a)用戶向主服務(wù)器提出注冊(cè)申請(qǐng),發(fā)送的信息包括IDc和IDu。
User
→Sm
:req
(register
)∥IDu
∥IDc
(6)
(b)主服務(wù)器收到注冊(cè)申請(qǐng)后首先驗(yàn)證IDc,即必須在已注冊(cè)的客戶機(jī)上才能進(jìn)行用戶注冊(cè)。若驗(yàn)證通過(guò),則主服務(wù)器將IDu發(fā)送給授權(quán)服務(wù)器,否則拒絕申請(qǐng)。
(7)
(c)授權(quán)服務(wù)器根據(jù)用戶基本信息,為用戶頒發(fā)用戶屬性證書,用戶屬性證書內(nèi)容除常規(guī)證書外還包括Au,Au由多個(gè)能夠描述用戶角色的屬性值組成。
Sr
→User
:Au
(8)
1.4.1.3 用戶申請(qǐng)?jiān)L問(wèn)文件
(a)用戶在申請(qǐng)?jiān)L問(wèn)文件前,主服務(wù)器需要對(duì)用戶是否在被授權(quán)的客戶機(jī)登陸情況進(jìn)行驗(yàn)證。若通過(guò),則繼續(xù)進(jìn)行用戶屬性證書合法性驗(yàn)證,否則,拒絕訪問(wèn)。
(9)
(b)授權(quán)服務(wù)器負(fù)責(zé)驗(yàn)證用戶屬性證書Au的合法性。若通過(guò),則系統(tǒng)繼續(xù)等待文件訪問(wèn)申請(qǐng),否則,拒絕訪問(wèn)。
(10)
(c)用戶提出文件訪問(wèn)申請(qǐng),由用戶登錄所在客戶機(jī)向主服務(wù)器發(fā)送包含IDc、IDf及Kc2請(qǐng)求。
User
→Client
:req
(IDf
)(11)
Client
→Sm
:req
(IDc
∥IDf
∥Kc
2)(12)
(d)主服務(wù)器首先根據(jù)Listfa驗(yàn)證客戶機(jī)和文件的對(duì)應(yīng)關(guān)系,即請(qǐng)求文件是否在客戶機(jī)上。若通過(guò),則主服務(wù)器向授權(quán)服務(wù)發(fā)送文件解密密鑰Kc2。
(13)
(e)授權(quán)服務(wù)器根據(jù)Listfa中待訪問(wèn)文件的文件敏感等級(jí)Level設(shè)置Ru。授權(quán)服務(wù)器對(duì)Ru、Ac及Kc2使用客戶機(jī)公鑰加密后,發(fā)回給客戶機(jī)。
Sr
:Ru
=(IDc
∥IDf
∥User
_op
∥User
_t
∥User
_c
)(14)
Sr
→Client
:D
=E
_PKc
(Ru
∥Ac
∥Kc
2)(15)
1.4.1.4 文件訪問(wèn)控制 數(shù)據(jù)分組D在發(fā)回客戶機(jī)后,由客戶機(jī)對(duì)用戶訪問(wèn)行為進(jìn)行實(shí)時(shí)監(jiān)控,一方面通過(guò)文件解密控制和文件使用控制實(shí)現(xiàn)對(duì)電子文件的訪問(wèn)控制;另一方面,客戶機(jī)將用戶操作狀態(tài)實(shí)時(shí)發(fā)動(dòng)給主服務(wù)器進(jìn)行遠(yuǎn)端監(jiān)測(cè)。
(a)客戶機(jī)首先對(duì)接收到的數(shù)據(jù)進(jìn)行解密,首先從數(shù)據(jù)分組D中解析并驗(yàn)證IDc和IDf,若通過(guò)則繼續(xù),否則拒絕訪問(wèn)。
Sr
→Client
:D
=E
_PKc
(Ru
∥Ac
∥Kc
2)(16)
(17)
(b)客戶機(jī)從D中解析Ac,根據(jù)Au,檢驗(yàn)用戶屬性集合和文件屬性集合相交的屬性值數(shù)量是否滿足系統(tǒng)規(guī)定的訪問(wèn)控制門限值d,若滿足,則允許用戶訪問(wèn)并進(jìn)行文件使用控制,否則關(guān)閉文件。
(18)
(c)客戶端計(jì)算Kc1,并根據(jù)解析到的Kc2采用混合對(duì)稱加密算法對(duì)加密文件解密,得到明文。
File
=D
_(Kc
1+Kc
2) (Cf
)(19)
1.4.1.5 文件訪問(wèn)結(jié)束 用戶在完成電子文件訪問(wèn)后,客戶機(jī)會(huì)再次向主服務(wù)器提出加密申請(qǐng),主服務(wù)器會(huì)更新文件對(duì)應(yīng)的隨機(jī)密鑰Kc2為Kc2’,并由授權(quán)服務(wù)器發(fā)回給客戶機(jī),客戶機(jī)結(jié)合固定密鑰Kc1完成對(duì)文件的加密操作,具體過(guò)程如下。
Client
→Sm
:req
(IDc
∥IDf
∥State
(over
) )(20)
Sm
→Sr
:Kc
2^'=Sm
:Generate
(IDc
∥IDf
)(21)
Sr
→Client
:E
_PKc
(Kc
2^' )(22)
Client
:E
_(Kc
1+Kc
2^' ) (File
)(23)
本研究設(shè)計(jì)并研發(fā)了原型系統(tǒng)來(lái)檢驗(yàn)策略的可用性。測(cè)試方案模擬某公司系統(tǒng)運(yùn)維部的服務(wù)器運(yùn)維管理場(chǎng)景,運(yùn)維管理人員分為合法用戶和非法用戶兩類,其中,合法用戶須同時(shí)擁有用戶身份認(rèn)證的賬戶信息,以及授權(quán)服務(wù)器頒發(fā)的用戶屬性證書,其他情況為均為非法用戶。在此場(chǎng)景中規(guī)定,所有用戶均需通過(guò)原型系統(tǒng)管理服務(wù)器上的電子文件。
如表2所示,測(cè)試方案中設(shè)計(jì)了6名用戶,用戶的屬性證書中屬性集合Au包括了科室編號(hào)、職稱級(jí)別和工作年限3個(gè)屬性值。其中,前4名用戶(UserA~UserD)為系統(tǒng)運(yùn)維部的合法用戶,其訪問(wèn)行為均發(fā)生在公司局域網(wǎng)內(nèi)部;另外2名(UserE~UserF)為非法用戶,通過(guò)非法途徑獲取用戶UserA的身份信息。其中,UserE為本公司其他部門人員,僅獲取到UserA的賬戶信息;UserF為非公司人員,不僅獲取到UserA的賬戶信息并偽造了UserA的屬性證書UserAAu’。這里假設(shè)授權(quán)服務(wù)器具有可靠的安全性,其生成的用戶屬性證書無(wú)法在內(nèi)容級(jí)層面被破解,因此UserAAu和UserAAu’是不同的。
表2 用戶基本信息表
用戶待訪問(wèn)的電子文件信息如表3所示。其中,屬性集合Ac也是電子文件的訪問(wèn)控制策略,內(nèi)容包括文件的屬性值集合與訪問(wèn)控制門限值d,屬性值集合中的3個(gè)屬性值需要滿足的條件分別是=“科室編號(hào)”、≥“職稱級(jí)別”、≥“工作年限”;敏感等級(jí)是系統(tǒng)根據(jù)電子文件重要性進(jìn)行設(shè)定的,用以確定用戶操作控制策略Ru{文件操作權(quán)限,允許訪問(wèn)時(shí)限,授權(quán)客戶機(jī)IP范圍}。本例中FileA的敏感等級(jí)為L(zhǎng)evel2,其Ru為{讀取,8:00-18:00,10.19.185.*};FileB的敏感等級(jí)為L(zhǎng)evel3,其Ru為{讀取/修改,8:00-18:00,10.19.185.*}。
表3 電子文件信息表
表4 用戶訪問(wèn)文件操作信息表
為了驗(yàn)證本研究設(shè)計(jì)的原型系統(tǒng)是否能夠在用戶身份驗(yàn)證、文件訪問(wèn)控制及用戶操作控制3個(gè)階段實(shí)現(xiàn)對(duì)電子文件的數(shù)據(jù)安全防護(hù)。在測(cè)試方案中,用戶對(duì)文件的詳細(xì)訪問(wèn)行為如表4所示。其中,UserA~UserF每位用戶均對(duì)FileA與FileB兩個(gè)文件發(fā)起了訪問(wèn)請(qǐng)求,而對(duì)于操作集合中的useop、uset和usec,其對(duì)用戶的操作控制是等價(jià)的,其中任意一項(xiàng)不滿足條件均會(huì)觸發(fā)中斷訪問(wèn)的機(jī)制。因此,為了減少重復(fù)試驗(yàn)次數(shù),本測(cè)試方案中僅對(duì)useop取不同值。
用戶訪問(wèn)文件的結(jié)果如表5所示。結(jié)合表3~5可以得出結(jié)論,系統(tǒng)會(huì)在用戶訪問(wèn)過(guò)程的不同階段對(duì)其進(jìn)行全流程監(jiān)控,一旦發(fā)現(xiàn)用戶存在越權(quán)訪問(wèn)行為,系統(tǒng)會(huì)立刻阻斷相關(guān)文件的訪問(wèn)操作。因此,通過(guò)本研究設(shè)計(jì)的原型系統(tǒng),能夠?qū)崿F(xiàn)對(duì)用戶的電子文件訪問(wèn)及操作行為進(jìn)行訪問(wèn)前及訪問(wèn)過(guò)程中的實(shí)時(shí)監(jiān)測(cè)和控制。通過(guò)實(shí)驗(yàn)測(cè)試結(jié)果可以證明,本研究設(shè)計(jì)的面向離散存儲(chǔ)的電子文件的訪問(wèn)控制策略在可用性方面是可行的。
表5 用戶訪問(wèn)結(jié)果信息表
功能方面:本研究對(duì)所提方案在數(shù)據(jù)加密、數(shù)據(jù)解密、密鑰管理和數(shù)據(jù)傳輸各環(huán)節(jié)中,主服務(wù)器、授權(quán)服務(wù)器及客戶端在業(yè)務(wù)負(fù)載方面進(jìn)行了分析。與傳統(tǒng)公鑰密碼體制(PKI)相比,一方面,本研究所提方案主要涉及主服務(wù)器和客戶端,因此在服務(wù)器端的授權(quán)服務(wù)器節(jié)點(diǎn)上業(yè)務(wù)負(fù)載二者幾乎無(wú)差別;另一方面,由于方案將數(shù)據(jù)加解密業(yè)務(wù)由服務(wù)器端的主服務(wù)器節(jié)點(diǎn)轉(zhuǎn)移至客戶端節(jié)點(diǎn),因此在主服務(wù)器節(jié)點(diǎn)業(yè)務(wù)負(fù)載會(huì)有明顯降低,而客戶端節(jié)點(diǎn)的業(yè)務(wù)負(fù)載會(huì)有一定的增加。這種結(jié)果正符合本研究所提方案的初衷,即將系統(tǒng)的業(yè)務(wù)負(fù)載以“化整為零”的方式進(jìn)行分散轉(zhuǎn)移,從而提升系統(tǒng)的整體性能。
性能方面:在本研究所提方案中,客戶端僅需承擔(dān)用戶的訪問(wèn)控制業(yè)務(wù)和一定的數(shù)據(jù)加解密業(yè)務(wù),因此系統(tǒng)資源消耗較少;而在服務(wù)器端,由于主服務(wù)器負(fù)責(zé)管理各客戶端的業(yè)務(wù)請(qǐng)求,并承擔(dān)數(shù)據(jù)系統(tǒng)協(xié)調(diào)控制任務(wù),是整個(gè)系統(tǒng)的業(yè)務(wù)負(fù)載核心所在,因此用戶數(shù)量直接影響主服務(wù)器的系統(tǒng)資源消耗。對(duì)此,本研究針對(duì)主服務(wù)器在不同客戶端數(shù)量下的系統(tǒng)資源占用情況進(jìn)行了實(shí)驗(yàn)分析。可以看到,本實(shí)驗(yàn)中隨著用戶數(shù)量的增加,主服務(wù)器的CPU和內(nèi)存的資源占用比均提升較快,尤其在用戶數(shù)量達(dá)到35時(shí),內(nèi)存資源幾乎消耗殆盡。當(dāng)前,本方案對(duì)大量客戶端的使用場(chǎng)景支持較差,主要是因?yàn)楸緦?shí)驗(yàn)中主服務(wù)器使用的是一般的個(gè)人電腦,系統(tǒng)資源有限。因此,可以通過(guò)采用專業(yè)的硬件服務(wù)器以及優(yōu)化客戶端接入管理等方式提升系統(tǒng)整體性能,以滿足多用戶使用需求。
2.3.1 文件機(jī)密性 本研究針對(duì)電子文件的數(shù)據(jù)結(jié)構(gòu)特征引入了混合對(duì)稱加密算法,通過(guò)兩種通用對(duì)稱加密算法實(shí)現(xiàn)對(duì)文件的流加密和分組加密,這種方式不僅有效地提升數(shù)據(jù)了內(nèi)容的安全性,而且具備輕量化特性。同時(shí),本研究采用密鑰分離管理管理機(jī)制,通過(guò)主服務(wù)器和客戶機(jī)分別管理密鑰的隨機(jī)和固定部分的方式實(shí)現(xiàn)對(duì)密鑰的分離管理。由于密鑰的固定部分是由客戶機(jī)硬件參數(shù)通過(guò)特殊算法所得,且僅在執(zhí)行文件加/解密操作時(shí)生成,非法用戶很難獲取。而密鑰的隨機(jī)部分由主服務(wù)器隨機(jī)生成并定期更新,客戶機(jī)也不會(huì)存儲(chǔ)。因此,非法用戶無(wú)法獲取完整的文件密鑰解密客戶機(jī)上的電子文件。
2.3.2 文件訪問(wèn)控制 本研究借鑒了基于屬性基加密的訪問(wèn)控制策略的優(yōu)點(diǎn),通過(guò)對(duì)文件及用戶對(duì)象設(shè)定合理的屬性值集合,并制定訪問(wèn)控制門限值、設(shè)定門限條件約束用戶對(duì)文件的訪問(wèn)權(quán)限,能夠?qū)崿F(xiàn)對(duì)文件的細(xì)粒度訪問(wèn)控制。這種技術(shù)有別于傳統(tǒng)基于角色權(quán)限的訪問(wèn)控制方法,此系統(tǒng)無(wú)需設(shè)計(jì)繁雜的基于角色授權(quán)機(jī)制,僅在客戶機(jī)端驗(yàn)證用戶屬性集合是否滿足門限條件,通過(guò)分別對(duì)用戶和文件對(duì)象設(shè)定屬性值集合,并由用戶屬性證書和主服務(wù)器分別存儲(chǔ)管理,非法用戶即使破解了用戶屬性證書,獲取到用戶的屬性值集合,但在沒(méi)有確定文件屬性集合及訪問(wèn)控制門限值的情況下非法用戶不能夠進(jìn)行文件破解操作。
針對(duì)離散存儲(chǔ)的電子文件數(shù)據(jù)安全防護(hù)需求,本研究通過(guò)引入密鑰分離管理算法及混合對(duì)稱數(shù)據(jù)加密算法,提出一種基于屬性基加密的數(shù)據(jù)訪問(wèn)控制策略,該方案具有以下優(yōu)點(diǎn):本研究設(shè)計(jì)了密鑰分離管理算法,通過(guò)將密鑰分別在服務(wù)端和客戶端進(jìn)行獨(dú)立管理,并采用密鑰定期更新及動(dòng)態(tài)生成方法,有效提升了密鑰的安全性;本研究設(shè)計(jì)了混合對(duì)稱加密算法,通過(guò)數(shù)據(jù)流加密及數(shù)據(jù)分組加密相結(jié)合的方法,實(shí)現(xiàn)了一種面向電子文件的輕量化且高安全性的數(shù)據(jù)安全加密方案;通過(guò)設(shè)計(jì)功能完備的客戶機(jī)程序,將主要安全防護(hù)業(yè)務(wù)轉(zhuǎn)移至客戶端,大大地降低了主服務(wù)器的工作負(fù)載,提高系統(tǒng)整體效率。因此,該解決方案具有一定的應(yīng)用推廣價(jià)值。