李志萍
摘要:針對云計算環(huán)境下圖書館隱私數(shù)字資源的安全問題,介紹數(shù)據(jù)加密的基本原理,研究了基于身份的對稱加密體制的算法實現(xiàn)、優(yōu)勢和不足,引入屬性基加密方案并研究了屬性基加密方案的復(fù)合訪問結(jié)構(gòu)、主要加密算法等。目前在密文策略屬性加密方案研究過程中,對于屬性重要性的考慮不足,該文則關(guān)于權(quán)重概念在密文策略屬性基加密方案中的引入展開探討。
關(guān)鍵詞:云計算;加密;隱私數(shù)字資源;屬性基加密;權(quán)重屬性
中圖分類號:G250 文獻標(biāo)識碼:A 文章編號:1009-3044(2016)32-0068-03
Encryption Policy for the Library Privacy Digital Resources in the Cloud Computing Environment
LI Zhi-ping
(Guangzhou University Sontan College, Guanzhou 511370, China)
Abstract: As for the safety of library privacy digital resources in the cloud computing environment, this paper outlines the data encryption, studies the algorithm implementation of the identity based symmetric encryption system and its advantages and disadvantages. Then it introduces the attribute-based encryption, probes into its composite structure access, and the main encryption algorithms. Since less attention has been paid to the current cipher text-policy attribute-based encryption (CP-ABE), it is quite necessary to use the weighed one.
Key words: cloud computing; encryption; Privacy Digital Resources; attribute-based encryption; weighted attribute
1 背景
在圖書館數(shù)字資源研究中發(fā)現(xiàn),基本包括公開數(shù)字資源以及隱私數(shù)字資源,其中前者主要為電子圖書、報刊以及書目信息等等,這些內(nèi)容均可以公開;后者則主要包括有學(xué)位論文、學(xué)生信息以及財務(wù)數(shù)據(jù)等等,這些數(shù)據(jù)均不可以公開。在云計算發(fā)展應(yīng)用下,數(shù)據(jù)提供者及其訪問者不再是傳統(tǒng)的一對一模式,數(shù)據(jù)提供者在進行數(shù)據(jù)提供的時候,需要將其存儲在第三方云計算服務(wù)提供商數(shù)據(jù)庫中,通過此才能夠為廣大數(shù)據(jù)訪問者提供相應(yīng)的服務(wù),借助服務(wù)商的多種開發(fā)接口則可以享受到數(shù)據(jù)閱讀及查詢等服務(wù)。但是在此過程中,云服務(wù)端所存儲的數(shù)據(jù)則可能會出現(xiàn)被非法竊取及篡改問題。在圖書館數(shù)字資源中的一些電子圖書等公開信息,則不必對其實施保密處理,在云存儲保存中也可以采用明文形式,只需對其進行完整性檢測。但對于隱私數(shù)字資源,一些保密學(xué)生信息及學(xué)位論文等等,為防止云服務(wù)提供商私自使用數(shù)據(jù),或第三方用戶盜取數(shù)據(jù),云計算都必須先進行加密處理。
2 基于身份的加密體制
2.1 數(shù)據(jù)加密技術(shù)原理
數(shù)據(jù)加密簡而言之也就是采用某種算法實現(xiàn)之前明文文件或者數(shù)據(jù)的處理,將其轉(zhuǎn)換成為一些不可讀的代碼,也就將其稱為是“密文”。在閱讀過程中只有應(yīng)用相應(yīng)密鑰,才可以看到具體的文本內(nèi)容,以此有效確保一些不可公開信息數(shù)據(jù)不受到非法竊取及閱讀。將此過程逆向處理也就是解密過程,也就是將“密文”形式成功轉(zhuǎn)化為之前數(shù)據(jù)形式的過程。其中圖1則為典型數(shù)據(jù)加密模型。
2.2 云計算環(huán)境下數(shù)據(jù)資源的加密技術(shù)分析
在云計算環(huán)境中,基于密鑰特點則可以將加密算法分成兩種,其中一種為對稱密碼算法,另外一種則為非對稱密碼算法。前者也被稱為傳統(tǒng)密碼算法,在其應(yīng)用中需要確保數(shù)據(jù)擁有者和數(shù)據(jù)訪問者協(xié)調(diào)確定出一組加解密密鑰,之后借助于加密密鑰實現(xiàn)相關(guān)數(shù)據(jù)的有效加密,數(shù)據(jù)訪問者在進行數(shù)據(jù)訪問的時候,則可以通過數(shù)據(jù)擁有者或者密鑰管理中心到相應(yīng)的解密密鑰。其特點是在加密與解密過程中使用相同的密鑰,并且在實際應(yīng)用中安全性比較高,加密速度較快,在實際數(shù)據(jù)加密中也比較常用,最常見的主要有DES、AES、IDEA 等。
而與之相對應(yīng)的是非對稱密碼算法,簡而言之也就是加密密鑰和解密密鑰不一致,其中加密密鑰也被稱之為公鑰,可以公開;解密密鑰則被稱之為私鑰,不可以公開。這一加密算法也被稱為公鑰密碼算法,最常見則主要有RSA、ECC等,屬于是在實際應(yīng)用中最為廣泛的公鑰算法,也是一種分組加密算法,算法原理簡單、易于使用。
但是在云計算技術(shù)不斷發(fā)展進程中,互聯(lián)網(wǎng)中的數(shù)據(jù)共享也逐漸廣泛,在新的網(wǎng)絡(luò)環(huán)境下如果依舊采用傳統(tǒng)的數(shù)據(jù)加密方式,則無法有效滿足實際網(wǎng)絡(luò)應(yīng)用需求。對于云計算數(shù)據(jù)資源安全加密技術(shù)也提出了新的要求,在云計算加密技術(shù)研究中也成為新的方向?;谏矸莸募用堋傩曰用?、引入權(quán)重的屬性基加密等各種加密算法都不斷地被提出、論證、實施及改進。
2.3 基于身份的對稱加密體制
在圖書館數(shù)據(jù)資源管理過程中,數(shù)據(jù)量非常大,在數(shù)據(jù)加密中如果還是單純采用非對稱密碼體制,無法有效提高其應(yīng)用效率,因此則可以采用對稱密碼體制實施數(shù)據(jù)加密,操作如下:
第一 步:應(yīng)用對稱密碼算法實現(xiàn)圖書館數(shù)據(jù)信息[F]的加密處理,之后即為加密文件[S]。
第二 步:將[S]分成[n]個數(shù)據(jù)塊[s1,s2,…,sn]
第 三步:對每個密文件塊[Si]簽名,假設(shè)簽名序列為[σ1,σ2,…,σn],數(shù)據(jù)塊[Si]的簽名為[σi=μH(Si)α]。[H]在密碼學(xué)中屬于是[hash]函數(shù),不同長度的0,1字符串均可以將其在群[G]上映射成為元素,在群[G]中[μ]則屬于是生成元,[α]也就是圖書館數(shù)據(jù)中的私鑰。
第四 步:在云存儲數(shù)據(jù)庫中保存圖書館密文數(shù)據(jù)庫以及相關(guān)簽名。
第 五步:檢測文件[F]過程中,圖書館則需要生成挑戰(zhàn)[chal=i,vi],并發(fā)送給云存儲然后等候應(yīng)答。其中[i,vi]為挑戰(zhàn)對,用來對第[i]個數(shù)據(jù)塊進行檢測,[vi]是為數(shù)據(jù)塊[i]選取的隨機數(shù)。
第 六步:基于挑戰(zhàn)[chal=i,vi]結(jié)果,云存儲系統(tǒng)則需要對[μ,σ]實施返回應(yīng)答。[μ]則需要實現(xiàn)圖書館挑戰(zhàn)隨機數(shù)乘以云存儲數(shù)據(jù)塊,乘出來的結(jié)果相加也就是[μ=i=1nviHSi];[σ]則是在計算過不同數(shù)據(jù)塊簽名及挑戰(zhàn)隨機數(shù)之后,進一步實施結(jié)果相乘所得,也就是[σ=i=1nσivi]。
第 七步:在進行方程[e(σ,g)=e(μμ,v)]成立判別中,也就可以分析圖書館的數(shù)據(jù)完整性。其中[e]也就是密碼學(xué)的雙線性映射結(jié)果,本身屬于是函數(shù)運算;在群[G]中[g]屬于是生成元,在進行圖書館公鑰[v]生成過程中需要用到,也就是[v=gα]。
在身份加密體制實施加密處理,公鑰也就可以應(yīng)用用戶身份信息,從而避免了任務(wù)設(shè)立CA中心的負(fù)擔(dān),但這一加密體制在應(yīng)用中依舊存在多種問題,比如說數(shù)據(jù)擁有者如果想要實現(xiàn)數(shù)據(jù)共享,同時實現(xiàn)多個授權(quán)用戶訪問,那么在進行公鑰設(shè)置過程中,則可以分別將訪問用戶身份信息作為公約實現(xiàn)機密,隨著用戶量的加大,需要實施協(xié)商的密鑰數(shù)量也會有所增長;同時如果網(wǎng)絡(luò)環(huán)境本身安全性不夠,關(guān)于密鑰的協(xié)商及分發(fā)安全渠道問題則需要進一步探索。
3 基于屬性基的加密體制設(shè)計
訪問用戶身份信息具有唯一性,然而在其屬性研究中則非??赡芫哂泄残蕴攸c,因此在研究過程中則提出了基于屬性基加密的概念。這一方式和之前應(yīng)用用戶唯一身份信息作為加密數(shù)據(jù)公鑰具有一定差異,基于屬性加密體制在設(shè)計過程中,數(shù)據(jù)加密公約則是用戶屬性集合,只有用戶屬性集合和密文屬性集合共有屬性數(shù)量,能夠和門限要求有效滿足的時候,一個訪問用戶才能夠解密一個密文。也就是將屬性劃分為普通屬性和許可屬性兩類,用戶只有在其持有的屬性,并且也能夠?qū)γ芪脑L問結(jié)果以及許可屬性條件有效滿足的時候,才能夠有效實現(xiàn)數(shù)據(jù)的成功解密。
3.1 屬性基加密體制的復(fù)合訪問結(jié)構(gòu)
假設(shè)用[TA]表示普通屬性結(jié)構(gòu)樹,[TB]表示許可屬性結(jié)構(gòu)樹,則基于屬性基加密體制的訪問結(jié)構(gòu)[T]由[TA]及[TB]用“與”門操作實現(xiàn),子樹[TA]包含的普通屬性集管理者則屬于授權(quán)中心,子樹[TB]則主要為屬性集,管理者為數(shù)據(jù)屬性。解密密文的獲得必須要確保用戶持有屬性和[TA]和[TB]同時滿足,同時也能夠“與”門根節(jié)點[T],所得到才是正確的解密密文。
3.2 主要加密方案
1)密鑰第一部分生成算法:將用戶[u]的屬性集[U]作為輸入,選擇隨機元素[ti∈Z*p]、選擇隨機數(shù)[r1∈Z*p],計算[d1=gα1-r1],再為[U]中的每個屬性[αj∈U]隨機選擇[rj∈Z*p],計算[dj=grtj-1]。最終輸出用戶私鑰第一部分為 [SK1=(d1=gα1-r1,?j∈Au:dj=grtj-1)]。
2)密鑰第二部分生成算法:將用戶身份[bk]作為輸入,選擇隨機元素[ti∈Z*p]、選擇隨機數(shù)[r2∈Z*p],計算[d2=gα2-r2],再為用戶身份[bk]隨機選擇[rk∈Z*p],計算[dk=grtn+k-1]。最終輸出用戶私鑰第二部分為[SK2=(d2=gα2-r2,dk=grtn+k-1)]。
在執(zhí)行完這兩部分算法后,用戶[u]的一個完整私鑰[SKU=(SK1,SK2)]就能夠成功生成。
3)復(fù)合訪問結(jié)構(gòu)[T]生成算法:隨機選取[s1,s2∈Zp]中的兩個隨機數(shù),并且將其一一對應(yīng)作為子樹[TA]和[TB]的根節(jié)點,采用遞歸方式將共享秘密分配在[TA]中每個非葉節(jié)點。
4)密文主體部分生成算法:
分別計算 [c1=gs1],[c2=gs2],[c*=Me(g,g)α1s1e(g,g)α2s2],
最終輸出密文為
[ct=(T,c*,c1,c2,?αj,i∈TA:cj,i,?tj,i∈TB:kj,i)]。
基于屬性基加密方案的應(yīng)用特點主要有:不管是加密還是解密方案均具有一定動態(tài)性,并且可以靈活應(yīng)用,在用戶解密能力以及保護密文中,可以顯著實現(xiàn)細(xì)粒度控制。但其不足之處是沒有考慮到每個屬性值的地位和重要性都不盡相同,屬性加密方案中對這方面的差異性未作區(qū)別對待,這不符合客觀實際應(yīng)用環(huán)境。
4 引入權(quán)重的屬性基加密體制
基于實際應(yīng)用環(huán)境的綜合考慮,關(guān)于屬性值地位則可有一定差異,在屬性基加密過程中則可以加大權(quán)重的引入及應(yīng)用。在圖書館數(shù)據(jù)系統(tǒng)中,用戶屬性不同則權(quán)值也具有差異,在解密過程中,只有確保密鑰屬性能夠?qū)γ芪脑L問結(jié)構(gòu)有效滿足的時候,才能夠?qū)崿F(xiàn)正確解密。實際應(yīng)用中為減少計算量,屬性的權(quán)重值可以分別取為不同的自然數(shù),具體算法實現(xiàn)如下:
1)屬性集轉(zhuǎn)化算法([Γ]):將系統(tǒng)全體屬性輸入其中,屬性不同權(quán)值也具有差異。對于全體屬性集[Γ=λ1,λ2,…,λr]中的每一個屬性[λi],分配屬性[λi]允許在系統(tǒng)中的最大權(quán)值為整數(shù)[θi=ω(λi)]??尚胖行囊罁?jù)屬性在系統(tǒng)中重要程度的不同,對系統(tǒng)中的每一個屬性都分配一個系統(tǒng)允許的最大權(quán)值。將屬性集[Γ]中的每一個屬性[λi],依據(jù)權(quán)重進行分割,將其分割后的最小份額設(shè)定為1,分割之后的屬性[λi]所對應(yīng)的則分別是[(λi,1),(λi,2),…,(λi,θi)],組成的集合也就被稱為是全體屬性權(quán)重的分割集[Γ?]。
2)系統(tǒng)建立[(1λ,Γ?)]算法:選擇素數(shù)階[ρ] 的群[G],記[u=iθi]。系統(tǒng)隨機選擇[h1,…,hu∈G],此外隨機地選定指數(shù)[α],[α∈Zρ],可信中心根據(jù)安全參數(shù)[1λ]與全體屬性權(quán)重分割集[Γ?] 運行系統(tǒng),也即將全體屬性權(quán)重的分割集[Γ?] 輸入到系統(tǒng)。在以上計算過程中則可以生成公鑰為[PK=g,e(g,g)α,gα,h1,…,hu],主密鑰為[QK=gα]。
3)加密算法[(PK,m,A)]:輸入?yún)?shù)則分別為公鑰參數(shù)[PK]、訪問結(jié)構(gòu)[A]以及消息[m], [A]則屬于是矩陣訪問結(jié)構(gòu)[(Q,f)],函數(shù)[f] 則能夠有效實現(xiàn)屬性權(quán)重最小份額和[Q]的有效對應(yīng)。屬性[λe]的第[θt]個權(quán)重分割位置則需要和矩陣第[i]個位置相對應(yīng),也就是確保[f(i)→(λe,θt)]。[Q] 則可以作為是[l×n]的矩陣,在計算過程中需要先在[Znp]上確定出一組隨機行向量[v=(s,y2,y3,…,yn)],則可以在加密元素[s]分享中應(yīng)用。如果[i=1,2,…,l],則可以計算得出[γi=v?Qi],[Qi]則和[Q] 的第[i]行相對應(yīng)。
加密算法公布密文則為
[CT=C=me(g,g)αs,C*=gs,C1=gαγ1h-sf(1),…,Cl=gαγlh-sf(l)]
4)密鑰生成算法[(Qk,S*)]:在密鑰算法過程中,則需要首先將主密鑰[Qk]和用戶對應(yīng)屬性分割集[S*]分別進行輸入,隨機確定[t∈Zp],將分割集[S*]生成為屬性對應(yīng)的私鑰[SK]。以上計算過程中所得私鑰為[SK=K=gαgαt,L=gt,?x∈S*:Kx=htx]。
5)解密算法[(PK,CT,SK)]:數(shù)據(jù)接受者在得到相應(yīng)密文自后,在解密算法中一一輸入公鑰參數(shù)[PK]、私鑰[SK]以及密文[CT],如果在私鑰中的屬性分割集[S*] 能夠?qū)γ芪脑L問結(jié)構(gòu)[A]有效滿足,也就能夠成功解密,并有效恢復(fù)出消息[m]。
引入權(quán)重的屬性基加密體制的優(yōu)點體現(xiàn)在該方案不但支持細(xì)粒度的訪問控制,也區(qū)別對待了不同屬性的不同重要性,更加貼近于實際應(yīng)用環(huán)境,近年來引起較多學(xué)者的重視。
5 結(jié)束語
圖書館隱私數(shù)字資源屬于是自身特有的寶貴資源,在其應(yīng)用中安全性非常重要。加密處理則是有效提高數(shù)據(jù)安全的一個重要措施。在云計算技術(shù)發(fā)展進程中,網(wǎng)絡(luò)環(huán)境下的數(shù)據(jù)機密技術(shù)要求也隨之加大,不斷有新的加密算法提出、應(yīng)用以及否定、改進等等,任何一種加密算法均具有自身的應(yīng)用優(yōu)勢,因此在未來數(shù)據(jù)加密中,將實現(xiàn)不同加密體制的共同發(fā)展。由于算法原理簡單、易于使用,同時在實際應(yīng)用中安全性高以及加密速度快,對稱加密技術(shù)的應(yīng)用最為廣泛,其中基于屬性加密算法能夠有效將傳統(tǒng)的身份控制及認(rèn)證,擴展成為用戶屬性集合認(rèn)證,能夠進一步實現(xiàn)其控制手段的豐富性?;谂c門、或門等控制單元,能夠設(shè)計出和不同情況相其和的訪問控制結(jié)構(gòu),其在理論設(shè)計上的復(fù)雜性,近年得到廣泛的關(guān)注。但是在當(dāng)前應(yīng)用過程中,基于屬性加密算法和相關(guān)方案還存在一定不足,而屬性權(quán)重的引入就是一種嘗試。
參考文獻:
[1] 楊旸, 胡予濮, 張樂友, 等. 標(biāo)準(zhǔn)模型下可證明安全的分級身份簽名方案[J]. 西安交通大學(xué)學(xué)報, 2011, 45(2): 27-33.
[2] 劉西蒙, 馬建峰, 熊金波, 等. 密文策略的權(quán)重屬性基加密方案[J]. 西安交通大學(xué)學(xué)報, 2013, 47(8): 44-48.
[3] 蘇金樹, 曹丹, 王小峰. 屬性基加密機制[J]. 軟件學(xué)報, 2011, 22(6): 1299-1315.
[4] 劉帆, 楊明. 一種用于云存儲的密文策略屬性基加密方案[J]. 計算機應(yīng)用研究, 2012, 29(4): 1452-1456.
[5] 張海玉. 云平臺下數(shù)字圖書館的安全策略研究[J]. 圖書館學(xué)研究,2013(3): 42-46.
[6] 邵志毅, 楊波, 梁啟凡. 云計算中數(shù)字圖書館外包數(shù)據(jù)的完整性檢測[J]. 圖書館論壇, 2014(12): 98-103.