胡前偉,李子臣,閆璽璽
1.北京印刷學院 信息工程學院,北京 102600
2.河南理工大學 計算機科學與技術學院,河南 焦作 454003
等級訪問控制下密文數據庫密鑰管理方案研究*
胡前偉1,2+,李子臣1,閆璽璽2
1.北京印刷學院 信息工程學院,北京 102600
2.河南理工大學 計算機科學與技術學院,河南 焦作 454003
HU Qianwei,LI Zichen,YAN Xixi.Research on key management scheme for hierarchical access control in database.Journal of Frontiers of Computer Science and Technology,2017,11(6):921-931.
針對等級體制下用戶權限管理和訪問密文數據庫的問題,提出了基于橢圓曲線密碼體制的密鑰管理方案。該方案中每個用戶都可以獨立選擇自己的用戶密鑰,并安全傳送給可信中心,可信中心在收集完密鑰參數之后使用橢圓曲線密碼體制計算出具有偏序關系的用戶關系參數。高級別用戶利用關系參數和用戶密鑰便可以安全有效地推導出低級別用戶的密鑰信息,然后利用密鑰信息解密低級別用戶的密文數據庫。方案中還考慮了偏序關系變化后密文數據庫的更新方法。實驗表明,安全等級的密鑰推導和訪問數據庫具有較高的效率和安全性。
密文數據庫;密鑰管理;橢圓曲線密碼體制;偏序關系;用戶分級
近年來數據庫安全技術迅速發展,數據庫加密技術就是其中眾人認可的一項安全技術。加密之后的數據足以抵擋入侵者的大部分攻擊和破壞,安全可行的密鑰管理方案可以提高整個系統的效率和安全性。合理可靠、安全穩定的數據庫加密技術是眾多學者的研究方向,并且具有一定的深度和廣度,不僅要考慮數據庫加密層次、加密算法的選擇、加密粒度的選擇和密鑰管理方案的構思等問題,還要考慮同態技術、數字水印、格、量子力學等技術是否能與之結合來滿足人們對數據庫不同方面的需求。等級體制下數據庫加密技術就是其中一種,而等級體制是將用戶按照安全等級分成不同的等級組,高級別用戶可推導出低級別用戶的密鑰信息,反之則不成立。在等級這個環境下構造和實施數據庫加密技術,可以應用在企業部門、軍事部門和政府機關等各類組織機構中提升數據的安全性和可靠性。
在等級訪問控制下,要對每個用戶分配等級屬性密鑰,也就需要管理這些密鑰,而密文數據庫中同樣需要管理密鑰,那么在等級訪問控制條件下實施數據庫加密技術就要考慮如下幾個問題:
(1)如何構造等級用戶之間安全高效的密鑰管理方案;
(2)如何實施數據庫加密技術,如何解決各類密鑰在生命周期內的生成、分配、更換和注銷等問題;
(3)等級用戶訪問密文數據庫,如何解決等級訪問控制下數據庫密鑰管理方案的安全性、高效性、完整性等問題。
考慮到上述問題,本文結合等級系統和密文數據庫,提出了基于橢圓曲線的密文數據庫密鑰管理方案。本文方案使用橢圓曲線密碼體制構造輔助參數,高級別用戶可以安全有效地推導出低級別用戶的密鑰信息,然后利用密鑰信息解密低級別用戶的密文數據庫,得到明文數據。等級密鑰管理方案與密文數據庫密鑰管理方案有機結合,可有效解決等級體制下用戶權限管理和訪問密文數據庫的問題。
(1)等級訪問控制下的密鑰管理
早在1983年,Akl等人[1]考慮到等級系統下密鑰管理問題,高級別用戶可以推導出低級別用戶的密鑰信息,反之不可行,而這種思想一直貫穿于后來眾多研究當中。Lin在文獻[2]中提出了基于動態密鑰管理的訪問控制方案,該方案中的密鑰推導基于求解離散對數問題。后來的等級密鑰管理方案有基于中國剩余定理(Chinese remainder theorem,CRT)[3]、基于單向散列函數(one-way Hash function)[4]等。如Zych等人[5]提出的強制訪問控制下密鑰管理方案,每個用戶存儲一個Key值,可以有效計算出所請求訪問數據的密鑰,方案中密鑰推導基于Diffie-Hellman。又如Zhang等人[6]提出了等級密鑰管理方案中基于大素數因式分解困難性問題,在管理秘密密鑰時使用了中國剩余定理和單向散列函數,減少了公共參數的存儲空間。近年來的研究中,針對線性等級訪問控制(linear hierarchical access control),Odelu等人[7]提出的動態密鑰管理方案中,主要使用對稱加密算法AES(advanced encryption standard)來解決動態等級訪問控制問題,方案中減少了安全等級的密鑰存儲開銷。而Basu等人[8]提出的等級訪問控制下的動態密鑰管理方案是改進了Wu等人[9]的密鑰管理方案,使用橢圓曲線(elliptic curve cryptosystem,ECC)、AES和HASH的混合加密方案,減少了Wu方案中多余的計算。在Hwang-Yang[10]方案的基礎上張建民等人[11]提出了一個新的基于等級系統的訪問控制方案,該方案不僅利用中國剩余定理解決了Hwang-Yang方案中的安全問題,而且所需的存儲空間更少,密鑰的生成和導出效率更高。在文獻[12]中,孫佳思提出了一種新的基于ECC算法的等級密鑰管理方案,該方案解決了在多項式時間內敵手利用求根算法進行攻擊的安全漏洞問題。
(2)密文數據庫下的密鑰管理
密文數據庫及密鑰管理在這些年一直是被研究的熱點,如Mahajan[13]和Shmueli等人[14]提出的數據庫安全加密技術中都使用數據庫Cache技術。前者的方案注重數據加解密效率,卻忽略了系統安全性的提高。后者兼顧了性能和安全性,在數據庫管理系統(database management software,DBMS)中的數據庫Cache里設置一個加密模塊,其選擇的加密粒度是數據項,在加密數據時連同數據項的坐標也要加密。而Zhou等人[15]提出的數據庫加密技術方案同樣兼顧安全性和效率,在加密數據的同時生成B+樹索引,并使用Kerberos協議保護索引的安全,考慮了系統的完整性。在Sarfraz等人[16]提出的針對密文數據庫細粒度的訪問控制方案中使用了屬性集訪問控制(attribute based access control,ABAC)模型,在密鑰管理上使用了AB-GKM(broadcast group key management)方案和OCBE(oblivious commitment based envelope)協議,提高了訪問數據的靈活性。針對密文數據庫中密鑰管理問題,Sun等人[17]提出的基于中國剩余定理的密鑰管理方案中使用身份認證機制提高了用戶、DBA(database administrator)和數據Creators之間的安全度和信任度。文獻[18]中戴一奇等人提出了密鑰轉換表方案,使用兩級轉換表的方式實現對數據的解密,但是該方案可靠性不理想。文獻[19]中肖飛等人提出了基于密文角色的密鑰管理方案,使用角色方便對用戶權限的管理,但是該方法忽略了一個角色對應多個數據項問題,解密時需要多次操作,不可避免地影響了效率。
無論是等級訪問控制下的密鑰管理,還是密文數據庫下的密鑰管理,都要考慮方案的統一性、全面性,要兼顧系統的性能和安全。
3.1 形式化定義
密鑰管理方案中,可以使用一些基本模型來描述密文數據庫及用戶。數據庫就是一個集合D= {d1,d2,…,dn},di表示安全性要求相同且可用同一數據密鑰加密的一類數據,它可以是表、記錄、字段、數據項的一種。對應的密鑰集KD={kd1,kd2,…,kdn},它有加解密算法(E,D),密文數據庫C={c1,c2,…,cn},其中ci=E(kdi,di),i∈[1,n]。
在密文數據庫中,各個用戶實體之間都有安全等級,假設用戶實體集合為U={u1,u2,…,un},那么用戶ui和uj之間存在等級關系,這種關系可以用偏序進行描述。
定義1設L?U×U且U≠?,如果L具有自反性、反對稱性和傳遞性,則稱L是U上的偏序關系,將這種偏序關系記為≤,若x與y存在偏序關系,則記為x≤y。
定義2在一個有序二元組
定義3在有向無環圖
根據有向無環圖的特點,假設節點代表用戶實體,有向邊代表用戶實體之間的偏序關系,那么有向邊連接的是父節點和子節點,比如ui≤uj,uj是父節點,而ui是子節點,也就意味著uj的等級權限高于ui的等級權限,那么uj可以訪問到更多的資源。在密文數據庫中,每個等級用戶都會使用自己的密鑰加密數據庫中的數據,等級高的用戶也就有權限解密或者查看等級低的用戶的數據。如果用戶ui的密鑰為ski,而用戶uj的密鑰為skj,且ui≤uj,那么密鑰skj可以推導出ski,反之一定不成立。
3.2 密鑰構造
在密文數據庫的密鑰管理方案中,首先每個用戶uj可以自主選擇用戶密鑰ukj。將ukj安全地傳送給可信中心TC(trusted center),在收集完密鑰參數之后計算出具有偏序關系的用戶的關系參數,具體步驟如下。
步驟1可信中心TC在GF(p)中選擇橢圓曲線Ep(a,b)和基點G,p是大素數,n為點G的階,并公布Ep(a,b)、G和n。
步驟2uj選取[1,n-1]之間的隨機參數rj,并計算Ψj=rj?G,H(ukj||rj)=Θj,H表示hash函數,最后公布參數Ψj和Θj。
步驟3TC為該用戶選取隨機整數dj,dj∈[1,n-1],計算Ζj=dj?G,skj=H(Zj||Θj),skj是用戶訪問數據庫時需要的密鑰,也是等級用戶之間推導的密鑰,下面使用SK表示,將skj秘密傳送給數據庫服務器。
步驟4對于所有的等級用戶ui只要滿足ui≤uj,1≤i≤n,TC就計算Cji=di?Ψj,將Cji作為關系參數,如圖1所示。TC創建三元組

Fig.1 Key management scheme圖1 密鑰管理方案
3.3 密鑰推導
等級高的用戶uj才可以有權限推導出低等級用戶ui的用戶密鑰信息,例如ui≤uj,密鑰構造過程中會產生關系參數Cji,用戶uj利用該參數計算出ui的密鑰信息ski,步驟如下所示。
步驟1uj希望獲得與ui的關系參數,向可信中心TC發送查詢請求,TC通過三元組
步驟2uj得到Cji,然后計算di?G=Zi,就可以得到ski=H(Zi||Θi),用戶uj得到ui的密鑰ski便可以訪問用戶ui的密文數據庫。
在用戶實體和等級權限構成的有向無環圖中,TC為所有的具有偏序關系的兩個等級用戶構造關系參數,高級別用戶便可以推導出低級別用戶的密鑰信息。
3.4 訪問密文數據庫
當高級別用戶獲取到低級別用戶的密鑰信息后,就可以訪問密文數據庫。目前針對密文數據庫的密鑰管理方案中以多級密鑰管理為主,本文訪問密文數據庫的過程中涉及到兩種密鑰:系統主密鑰和工作密鑰。其中,工作密鑰就是對數據庫中的數據進行加解密的密鑰,它可以是表密鑰、字段密鑰、行密鑰和數據項密鑰,本方案中是對數據項進行加密,那么工作密鑰也就是數據項密鑰;而系統主密鑰就是用來保護工作密鑰的。在密鑰構造和密鑰推導過程中,使用到的僅僅是用戶密鑰,有了用戶密鑰,就可以解密出系統主密鑰,接著解密出數據項密鑰,用數據項密鑰解密密文,便可以看到明文數據。如圖2所示。
圖2中,u1與u2表示等級用戶,它們的用戶密鑰分別是uk1和uk2,Kmaster_1、Kmaster_2表示系統主密鑰,Kwork_1、Kwork_2表示工作密鑰,D1、D2表示密文數據。TD是可信中心,C12是u1、u2的關系參數。過程(Ⅰ)表示用戶u1訪問自己的密文數據庫的過程,過程(Ⅱ)表示u1訪問u2的密文數據庫的過程。這兩個過程的具體步驟如下。

Fig.2 Accessing encrypted database圖2 訪問密文數據庫
步驟1每個等級用戶都有自己的密文數據庫,都可以加解密數據。如圖2,在密鑰構造階段會產生密鑰sk1發送DBMS,在加密完數據庫后,使用密鑰sk1加密系統主密鑰,并且加密后的系統主密鑰由單獨的硬件安全模塊(hardware security module,HSM)存儲[20]保護。

其中,Z1=d1?G,Θ1=H(uk1||r1),d1和r1分別是用戶和TC選擇的,且d1,r1∈[1,n-1]。
那么當用戶訪問密文數據庫時,需要解密出系統主密鑰。

步驟2系統主密鑰保護數據項密鑰,有了系統主密鑰就可以解密出數據項密鑰。本方案中數據項密鑰是以表的形式存放到數據庫中的,表結構比較簡單,如表1所示。

Table 1 Data item key table表1 數據項密鑰表
在數據庫當中由系統主密鑰加密上述的數據項密鑰表,考慮到加解密的效率,精簡了數據項密鑰表,提高了密文數據庫的效率。其中,d_ID是數據項標志;d_K是數據項密鑰,是在數據加密時生成的;ξ表示加密數據項的個數。數據庫中每張數據表都有表密鑰T_K,并且數據庫中每個記錄都有行參數Ri(i∈[1,n]),每個屬性都有列參數Fj(j∈[1,m])。當用戶選擇要加密的數據項dij時,可以判定數據所在的行及列,找出行參數Ri和列參數Fj,然后可計算d_ID_τ=f1(Ri,Fj),d_K_τ=f2(T_K,Ri,Fj),τ∈[1,ξ],f1和f2分別為生成數據項標志函數、生成數據項密鑰函數。將d_ID_τ和d_K_τ存入數據項密鑰表中,當用戶加密完數據后,由系統主密鑰Kmaster加密整張數據項密鑰表。解密時,需要用系統主密鑰解密數據項表,然后選擇要解密的數據項。因為數據庫的數據項是有序加密的,所以同樣可以獲取到行參數Ri和列參數Fj,計算d_ID_τ=f1(Ri,Fj),在數據項密鑰表中查詢出對應的數據項密鑰,解密該數據項。
當上級用戶要訪問下級用戶的密文數據庫時,也即要完成圖2中過程(Ⅱ),首先需要推導出下級用戶的SK密鑰,然后按照上述的步驟訪問數據庫即可。
3.5 動態管理
在實際當中,用戶實體是處于變動的,會出現用戶修改密鑰,增加等級關系,刪除等級關系和增加新的等級用戶的問題,這些用戶實體及等級的變化都會對密文數據庫產生相應的影響。下面將具體研究這4種情況下密文數據庫的密鑰管理問題。
(1)修改用戶密鑰
當用戶uj將用戶密鑰ukj修改為ukj′時,需要將新密鑰重新發送給可信中心TC,若ui是其后驅節點,則計算過程為:
步驟1uj重新選擇隨機參數rj′∈[1,n-1],計算重新發布
步驟2TD重新選取隨機整數dj′,dj′∈[1,n-1],計算將作為關系參數,并將重新發送給數據庫服務器。
由于系統主密鑰被SK密鑰skj加密保護,用戶密鑰更改后,則需要先用SK密鑰解密系統主密鑰,再將新用戶密鑰加密系統主密鑰


(2)增加等級關系
如圖1所示,如果用戶u1與用戶u5之間存在偏序關系,也即u5成為u1的后驅節點,那么可信中心TC只需要計算C15=d5?Ψ1,d5是TC為用戶u5選取的隨機整數,Ψ1是用戶u1公布的參數。此時,用戶u1和用戶u5的密文數據庫不做任何變化。如果用戶實體之間的等級關系被刪除,則可信中心TC直接刪除它們之間的關系參數即可,密文數據庫也不做任何變化。
(3)增加新的等級用戶
當要增加新的等級用戶時,則需要判斷增加的等級用戶的前驅節點和后驅節點,也即判斷新增用戶與哪些用戶有從屬關系,有了從屬關系,便要計算兩者之間的關系參數,密文數據庫不做任何變化。
(4)刪除等級用戶
如圖3所示,用戶u3被刪除后,與其關聯的所有等級關系都被刪除,且用戶u3的密文數據庫也要做相應的操作,具體處理步驟為:

Fig.3 Deleting hierarchy user圖3 刪除等級用戶
步驟1用u3的SK密鑰sk3解密其密文數據庫中的系統主密鑰,再用其上級用戶u1的SK密鑰sk3加密該系統主密鑰,此時,u3的密文數據庫完全由u1管理。
步驟2判斷被刪除等級用戶是否有后驅節點,若沒有,則結束,若有,如圖3所示的情況,則將這些等級用戶與上級用戶建立等級關系,在u1和u6及u1和u7之間分別建立等級關系,并由TC構造關系參數C16、C17。
本文提出的密鑰管理方案兼顧了等級訪問控制和密文數據庫特征,解決了密文數據庫中等級用戶之間的權限管理和動態訪問密文數據庫的問題。下面將從安全和性能兩方面來分析本文的方案。
4.1 安全性分析
(1)反向攻擊
橢圓曲線密碼體制的安全性,依賴于橢圓曲線離散問題的難解性。反向攻擊也就是低級別用戶ui想推導出高級別用戶uj的密鑰信息skj,那么也就需要解決橢圓曲線離散對數問題(elliptic curve discrete logarithm problem,ECDLP),證明過程如下:
Ep(a,b),G,n?可以計算出2p,3p,…,np,且有np=ο。橢圓曲線離散對數問題描述了給定一個橢圓曲線E,考慮本原元P和另一個元素T。則DL問題是找到整數d(1≤d≤n),滿足:

假設可以求出skj。其中skj=H(Zj||Θj),Θj是公開參數,相當于可以求解出Zj,而Zj=dj?G,G是公開參數,那么相當于可以求解出dj,這與橢圓曲線離散對數問題相矛盾,故ui推導不出skj。
(2)內部收集攻擊
假設存在一個低級別用戶ui有m個父節點uj,uj+1,…,uj+m-1,并收集了關系參數Cji,C(j+1)i,…,C(j+m-1)i,攻擊者試圖推導出其中一個父節點的用戶密鑰skε,ε∈[j,j+m-1],內部收集攻擊可以轉換為求解下列方程組的過程。求證過程如下:
①在(1)中可知Zj=di?Gdi

由①可知,在方程組②中,?ε,ε∈[j,j+m-1],Cεi=di?Ψε=di?rε?Grε。

由③和④可知用戶推導不出任何一個上級的密鑰信息,因此這種攻擊沒有效果。
(3)外部收集攻擊
類似第二種攻擊,在圖4中如果外部敵手收集到幾個關系參數C25、C36、C37。因為不知道上級用戶u2、u3的用戶密鑰及秘密參數,所以不可能計算出下級用戶u5、u6、u7的密鑰信息。分析如下:

Fig.4 Exterior collecting attacks圖4 外部收集攻擊
分析關系參數C25可知C25=d5?Ψ2,sk5=H(Z5||Θ5),攻擊者需要求解它們。
①在密鑰構造過程中TC秘密計算出Z5

由①、②、③可知用戶計算不出sk5,那么同理可知攻擊者也不可能計算出u6和u7的密鑰信息。
(4)同謀攻擊和兄弟攻擊
如圖4所示,u3有兩個低級別用戶u6、u7,現在這兩個用戶一起攻擊u3,攻擊過程會遇到橢圓曲線離散對數問題。求證過程如下:
①在(1)中可知Zj=di?Gdi

由①和②可知:

首先攻擊者不知道uk3,其次由③和④可知攻擊者計算不出sk3。如果圖4中u6攻擊同級別的u7,獲取其密鑰信息,便構成兄弟攻擊。他不僅需要反向攻擊上級用戶u3,還要竊取關系參數C37,而反向攻擊很難實施,因此兄弟攻擊無效。
(5)唯密文攻擊和密文統計攻擊
攻擊者試圖從數據庫中相同的密文以及明文統計信息來破解其中的明文。本方案中對不同數據使用不同的密鑰,那么加密后結果就不會相同,即使相同的數據在用不同密鑰加密后,密文數據仍不一樣,密文統計攻擊在密文數據庫中是不會成功的。分析過程如下:
在密文數據庫加密過程中,使用密鑰生成函數來生成工作密鑰,d_k=ET_K(Ri)⊕ET_K(Fj),E是分塊加密算法。在n行m列的數據庫表中,行和列的參數有如下規則:

4.2 性能分析
可信中心TD生成關系參數,等級用戶進行密鑰推導都需要一定的計算開銷和存儲開銷。下面主要針對等級系統中的時間開銷及存儲開銷和密文數據加解密效率進行測試,并與其他幾個方案進行對比分析,得到如下結果。
Basu方案[8]、Morteza方案[21]和孫方案[17]提出的等級系統中的密鑰管理方案都使用了橢圓曲線密碼,但是這些方案中用戶都不能自主選取用戶密鑰,需要可信第三方生成,并且Basu方案中將AES加密方法用于等級用戶之間密鑰的推導,略比Morteza方案復雜。而本方案中用戶可以自主選取用戶密鑰,也是實現動態密鑰管理。表2列舉了性能分析所需要的符號定義,并且每種操作所需要的時間可以轉換為相應TMUL時間[8,21],如表3所示。
本文方案基于橢圓曲線密碼體制,在密鑰構造階段有3次ECC乘法和2次哈希運算,故需要的時間為在密鑰推導過程中有1次求模運算、1次ECC乘法運算和1次哈希運算,所需時間為Morteza方案[21]的密鑰構造過程中有3次ECC乘法和1次哈希運算,所需時間為(2TECC_MUL+THASH)+(vi+1)TECC_MUL=[2 400.36+1 200(vi+1)]TMUL,而密鑰推導過程所需時間同本方案一樣。同樣可計算出Basu方案[8]和孫方案[17]的密鑰構造和密鑰推導過程的時間花銷。

Table 2 Symbol definition of performance comparison表2 性能比較的符號定義

Table 3 Operation time conversion表3 操作時間轉換
在這兩個過程中都需要存儲相關的數據,會占用一定的空間。在橢圓曲線密碼體制中,為保證密碼的安全性,參數的選取大小一般大于或等于163 bit。Basu方案[8]中,可信中心TC需要存儲的有私鑰dTC及公共區域中的參數,而私鑰大小是163 bit,公共區域中有公鑰Qi和公共參數mij,存儲空間為Morteza方案[21]對認證中心CA沒有要保密的參數,公共區域內,僅僅需要存儲個公共參數,因此需要2n×163的空間。而本文方案中不僅需要存儲個參數,還需要存儲128bit的哈希參數。孫方案[17]中在公共區域需要的存儲空間為(3n+4)×163,而等級用戶也僅需要163 bit的空間。
如表4、表5所示,本文方案的存儲及時間開銷都低于Basu方案[8]、孫方案[17]和Morteza方案[21],并且這兩個方案中用戶沒有自己選取用戶密鑰的權限,只能由可信第三方來生成。本文方案改進了這一缺陷,用戶不僅需要隨機選取用戶密鑰,還可以動態管理密鑰。在測試密文數據庫時,方案中使用了不同的加密算法來加密數據表中的數據項,并且不同數據項使用不同的密鑰,以保證加密后的數據不會重復,避免統計攻擊。在測試密文數據庫中,以C#為開發環境,其中的數據項標志函數為d_ID=hash512(Ri||Fj),數據項密鑰生成函數為d_K=ET_K(Ri)⊕ET_K(Fj),E是AES加密算法。

Table 4 Time cost comparison表4 時間開銷比較

Table 5 Storage overhead comparison表5 存儲開銷比較
圖5~圖8是密文數據庫中的數據項加密和解密的時間對比圖,實驗中選取了AES、3DES和IDEA加密算法。從圖5、圖6可知,在密文數據庫中,對數據項加密時,選取不同的加密算法會直接影響數據加解密效率,針對不同大小的數據項進行加解密時,IEDA使用的時間都比較少,且加解密的時間差不大。當選取不同數量的數據項進行加解密時,出現的情況如圖7、圖8所示,每種加密算法的效果基本上相差不大,IDEA和3DES的加解密效率低于AES。從這些比較中可以得知,針對單個數據項的加解密可以選擇IEDA算法,但是加解密多個數據項時這3種算法都可以使用。
4.3 實現比較
表6匯總了幾種方案的實現,比較了使用技術、方案結構、訪問類型、自定義密鑰以及是否能與密文數據庫結合。其中樹結構是有向無環圖的特定形式,但靈活性不夠。直接訪問是高級別用戶可訪問任何低級別用戶密鑰信息,而間接訪問模式中高級別用戶只能訪問其直接后繼。自定義密鑰也就是用戶是否具有自主選擇用戶密鑰的能力,它直接影響到是否能應用到密文數據庫中。在密文數據庫密鑰管理方案中,每個用戶只能保存、更換或刪除自己的密鑰,有了自定義密鑰的能力,也就可將等級訪問控制應用到密文數據庫中。

Fig.5 Encryption time comparison of different sizes of data items圖5 不同大小的數據項加密時間比較

Fig.6 Decryption time comparison of different sizes of data items圖6 不同大小的數據項解密時間比較

Fig.7 Encryption time comparison of different number of data items圖7 不同數量的數據項加密時間比較

Fig.8 Decryption time comparison of different number of data items圖8 不同數量的數據項解密時間比較

Table 6 Comparison of different schemes表6 方案實現比較
將密文數據庫應用到等級環境中,可以滿足等級用戶之間訪問密文數據庫的需求,特別是在企業部門、軍事部門和政府機關等各類組織機構中,一方面它具備等級特性,另一方面它可以對數據進行加密存儲。本文方案考慮到這種特定需求,研究出基于橢圓曲線密碼體制的密鑰管理方案,等級用戶在密鑰構造和密鑰推導后可以訪問密文數據庫中數據。方案分析顯示,它可以抵抗相應的攻擊,占用較小的空間和時間開銷,密文數據庫的測試中使用不同的加密算法對數據項進行加密。下一步將考慮在等級環境中對密文數據庫的表、屬性和記錄進行加密測試,改進密鑰構造、密鑰推導以及密文數據庫中的密鑰管理方案,進一步提高密鑰管理方案的效率和安全性,并應用到實際需求當中。
[1]Akl S G,Taylor P D.Cryptographic solution to a problem of access control in a hierarchy[J].ACM Transactions on Computer Systems,1983,1(3):239-248.
[2]Lin C H.Research:dynamic key management schemes for access control in a hierarchy[J].Computer Communications,1997,20(15):1381-1385.
[3]Xu Yanyan,Xu Zhengquan,Chen Xi.A hierarchical key management scheme using Chinese remainder theorem[J].Journal of Huazhong University of Science and Technology: Natural Science Edition,2010,38(12):65-68.
[4]Han Xinhui,Long Qin,Si Duanfeng,et al.A practical hierarchical key management scheme based on one-way Hash function[J].Acta Scientiarum Naturalium Universitatis Pekinensis,2008,44(4):527-536.
[5]Zych A,Petkovi? M,Jonker W.Efficient key management for cryptographically enforced access control[J].Computer Standards&Interfaces,2008,30(6):410-417.
[6]Zhang Jianmin,Li Jian,Liu Xiande.An efficient key management scheme for access control in a user hierarchy[C]// Proceedings of the 2009 International Conference on Information Technology and Computer Science,Kiev,Ukraine, Jul 25-26,2009.Piscataway,USA:IEEE,2009:550-553.
[7]Odelu V,Das A K,Goswami A.LHSC:an effective dynamic key management scheme for linear hierarchical access control[C]//Proceedings of the 5th International Conference on Communication Systems and Networks,Bangalore,India, Jan 7-10,2013.Piscataway,USA:IEEE,2013:1-9.
[8]Basu A,Sengupta I.Improved secure dynamic key management scheme with access control in user hierarchy[C]//Proceedings of the 2nd International Conference on Digital Information&Communication Technology&Its Applications, Bangkok,Thailand,May 16-18,2012.Piscataway,USA: IEEE,2012:220-225.
[9]Wu Shuhua,Chen Kefei.An efficient key-management scheme for hierarchical access control in E-medicine system[J].Journal of Medical Systems,2012,36(4):2325-2337.
[10]Hwang M S,Yang Weipang.Controlling access in large partially ordered hierarchies using cryptographic keys[J].The Journal of Systems and Software,2003,67(2):99-107.
[11]Zhang Jianmin,Liu Xiande,Xu Haifeng.New scheme for access control in hierarchy security systems[J].Computer Engineering andApplications,2007,43(16):156-158.
[12]Sun Jiasi.Research on key management method based on elliptic curve cryptosystem[D].Hohhot:Inner Mongolia University,2011.
[13]Mahajan S,Katti J,Walunj A,et al.Designing a databaseencryption technique for database security solution with cache[C]//Proceedings of the 2015 International Advance Computing Conference,Bangalore,India,Jun 12-13,2015. Piscataway,USA:IEEE,2015:357-360.
[14]Shmueli E,Vaisenberg R,Gudes E,et al.Implementing a database encryption solution,design and implementation issues[J].Computers&Security,2014,44(2):33-50.
[15]Zhou Xing,Liu Jun.A novel efficient database encryption scheme[C]//Proceedings of the 9th International Conference on Fuzzy Systems and Knowledge Discovery,Chongqing,China,May 29-31,2012.Piscataway,USA:IEEE, 2012:1610-1614.
[16]Sarfraz M I,Nabeel M,Cao Jianneng,et al.DBMask:finegrained access control on encrypted relational databases [C]//Proceedings of the 5th ACM Conference on Data and Application Security and Privacy,San Antonio,USA,Mar 2-4,2015.New York:ACM,2015:1-11.
[17]Sun Xiaohan.A secure scheme of key management for database encryption[M]//Advances in Technology and Management.Berlin,Heidelberg:Springer,2012:315-319.
[18]Dai Yiqi,Shang Jie,Chen Wei,et al.New key management scheme in database encryption[J].Journal of Tsinghua University:Science and Technology,1995,35(4):43-47.
[19]Xiao Fei,Huang Zhengdong,Wang Guanghua.Key management for database encryption in distributed environment [J].Computer Systems&Applications,2011,20(1):124-127.
[20]Mattsson U T.Key management for enterprise data encryption[J/OL].(2007)[2016-02-26].https://ssrn.com/abstract= 1051481.
[21]Nikooghadam M,Zakerolhosseini A,Moghaddam M E. Efficient utilization of elliptic curve cryptosystem for hierarchical access control[J].Journal of Systems&Software, 2010,83(10):1917-1929.
附中文參考文獻:
[3]徐彥彥,徐正全,陳曦.一種基于中國余數定理的等級密鑰管理方案[J].華中科技大學學報:自然科學版,2010,38 (12):65-68.
[4]韓心慧,龍勤,司端鋒,等.一個基于單向散列函數的實用等級密鑰管理方案[J].北京大學學報:自然科學版,2008, 44(4):527-536.
[11]張建民,劉賢德,徐海峰.等級安全系統中的一種新型訪問控制方案[J].計算機工程與應用,2007,43(16):156-158.
[12]孫佳思.基于橢圓曲線密碼體制的密鑰管理方法研究[D].呼和浩特:內蒙古大學,2011.
[18]戴一奇,尚杰,陳衛,等.一種新的數據庫加密密鑰管理方案[J].清華大學學報:自然科學版,1995,35(4):43-47.
[19]肖飛,黃正東,王光華.數據庫中基于密文角色的密鑰管理方案[J].計算機系統應用,2011,20(1):124-127.

HU Qianwei was born in 1991.He is an M.S.candidate at College of Computer Science and Technology,Henan Polytechnic University.His research interests include network information security and cryptography,etc.
胡前偉(1991—),男,河南信陽人,河南理工大學計算機學院碩士研究生,主要研究領域為網絡信息安全,密碼學等。

李子臣(1965—),男,河南溫縣人,北京郵電大學博士,北京印刷學院教授、博士生導師,主要研究領域為信息安全,電子商務,密碼學等。主持或參與了國家973計劃、國家自然科學基金等項目的研究工作,發表學術論文40余篇,有20多篇被SCI、EI和ISTP檢索。

YAN Xixi was born in 1985.She received the Ph.D.degree in cryptology from Beijing University of Posts and Telecommunications in 2012.Now she is a lecturer at Henan Polytechnic University.Her research interests include networks and information security,digital rights management and digital content security,etc.She published more than 10 scientific research papers,and most of the papers are included by EI and ISTP.
閆璽璽(1985—),女,河南靈寶人,2012年于北京郵電大學獲得博士學位,現為河南理工大學講師,主要研究領域為網絡與信息安全,數字版權管理,數字內容安全等。發表學術論文10多篇,多數論文被EI、ISTP收錄。
Research on Key Management Scheme for HierarchicalAccess Control in Database*
HU Qianwei1,2+,LI Zichen1,YAN Xixi2
1.College of Information Engineering,Beijing Institute of Graphic Communication,Beijing 102600,China
2.College of Computer Science and Technology,Henan Polytechnic University,Jiaozuo,Henan 454003,China
+Corresponding author:E-mail:huqianwei908@163.com
This paper presents a key management scheme based on elliptic curve cryptosystem to solve the problem of rights management among hierarchical users and access the encrypted database.In the proposed scheme,each user can independently choose own user key,and securely transfer it to trusted center.The trusted center calculates the relational parameters of the user having the partially ordered relation by using the elliptic curve cryptosystem after collecting the secret key parameters.The higher-privileged class will have the right to derive the key information created or owned by a user in a lower-privileged class,and then take advantage of it to decrypt the encrypted database which is also created by the lower-privileged class.The update method of the encrypted database is also considered after the partially ordered relation is changed.Experiments show that key generation,key derivation and access database have high efficiency and security.
was born in 1965.He
the Ph.D.degree from Beijing University of Posts and Telecommunications.Now he is a professor and Ph.D.supervisor at Beijing Institute of Graphic Communication.His research interests include information security,electronic commerce and cryptography,etc.He published more than 40 papers,and more than 20 papers are included by EI,SCI and ISTP.
A
TP393
*The National Natural Science Foundation of China under Grant Nos.61300216,61370188(國家自然科學基金);the Science and Technology Research Project of Henan Province under Grant No.132102210123(河南省科技攻關項目);the Doctoral Funds of Henan Polytechnic University under Grant No.B2013-043(河南理工大學博士基金);the Science and Technology Key Project of Beijing under Grant No.KZ20150015015(北京市自然科學基金重點項目B類);the Science and Technology Project of Beijing Municipal Education Commission under Grant Nos.KM201510015009,KM201410015006(北京市教委科技計劃項目);the Natural Science Foundation of Beijing under Grant No.4142016(北京市自然科學基金).
Received 2016-04,Accepted 2016-10.
CNKI網絡優先出版:2016-10-18,http://www.cnki.net/kcms/detail/11.5602.TP.20161018.1622.002.html
Key words:encrypted database;key management;elliptic curve cryptosystem;partially ordered relation;user hierarchy