一種云計算數(shù)據(jù)安全邊界保護方法
【專利摘要】本發(fā)明公開了一種云計算數(shù)據(jù)安全邊界保護方法,包括接受用戶發(fā)送的云服務(wù)請求指令,初始化系統(tǒng)數(shù)據(jù)結(jié)構(gòu)和安全參數(shù),并發(fā)送給用戶;用戶產(chǎn)生密鑰信息;用戶發(fā)起一次數(shù)據(jù)存儲請求,產(chǎn)生所述數(shù)據(jù)存儲請求的元數(shù)據(jù)的頭信息,云數(shù)據(jù)中心初始化一棵無格式數(shù)據(jù)追加樹;用戶產(chǎn)生并向云數(shù)據(jù)中心發(fā)送經(jīng)過加密處理的數(shù)據(jù)塊;云數(shù)據(jù)中心根據(jù)數(shù)據(jù)塊的序列號和版本號對無格式數(shù)據(jù)追加樹進行實時的維護;用戶利用自己的密鑰信息在無格式數(shù)據(jù)追加樹上執(zhí)行數(shù)據(jù)的安全邊界驗證及追加操作。本發(fā)明中云服務(wù)端的云計算數(shù)據(jù)中心不僅為用戶的數(shù)據(jù)提供了加密、容錯和安全邊界維持的功能,同時滿足了數(shù)據(jù)機密性、完整性和抗毀性。
【專利說明】一種云計算數(shù)據(jù)安全邊界保護方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于計算機網(wǎng)絡(luò)中數(shù)據(jù)安全領(lǐng)域,具體涉及一種云計算系統(tǒng)中采用樹形結(jié)構(gòu)目錄進行數(shù)據(jù)加密、認證,以及保證遠程數(shù)據(jù)安全邊界的方法。
【背景技術(shù)】
[0002]在現(xiàn)代企業(yè)信息化建設(shè)中,傳統(tǒng)的計算機和局域網(wǎng)已經(jīng)不能滿足對不斷增長的信息量的需求,而不斷興起的云計算技術(shù)提供了一個很好的解決方案,它能為終端用戶提供有彈性的、可定制的和成本低廉的存儲和計算服務(wù)。因此,個人和企業(yè)用戶正逐漸將他們的數(shù)據(jù)遷移到云系統(tǒng)中。與此同時,云數(shù)據(jù)的機密性、完整性和可靠性逐漸成為了人們關(guān)注的重點。雖然相比傳統(tǒng)計算模式,云計算有它的優(yōu)勢,但是一系列的安全問題如,數(shù)據(jù)泄漏、讀寫數(shù)據(jù)失效以及數(shù)據(jù)存儲狀態(tài)不確定性。另外,云計算數(shù)據(jù)的安全邊界問題成為了一個新出現(xiàn)的安全問題。在云計算中,所有用戶的數(shù)據(jù)都以委托的方式存放在云提供商的服務(wù)器中,不同安全等級、類型數(shù)據(jù)的交錯性成為云數(shù)據(jù)的安全新威脅。主流的云計算提供商,如亞馬遜的S3,谷歌在線開發(fā)引擎以及微軟的云計算平臺在運行過程中都曾因自然地或人為的原因,用戶數(shù)據(jù)突破安全邊界,造成泄漏和丟失。
[0003]為了保證云數(shù)據(jù)的安全邊界,目前主要采用普通加密和遠程數(shù)據(jù)證明兩種方式。
[0004]普通加密方式是指存儲之前對云數(shù)據(jù)利用對稱加密方法進行加密處理,然后上傳到云數(shù)據(jù)中心。這種方式是一種保證數(shù)據(jù)機密性的最直接方式,它的安全邊界是依靠不同用戶的加密密鑰,而對密文產(chǎn)生一種安全邊界。但是,當云數(shù)據(jù)中心采用了其它冗余編碼時,密文容易產(chǎn)生嚴重的交錯性,從而丟失密文的安全邊界。
[0005]遠程數(shù)據(jù)證明是最近才流行的一種保證遠程數(shù)據(jù)完整性和可用性的方法,常用的有rop (數(shù)據(jù)所有權(quán)證明)和POR (數(shù)據(jù)可恢復(fù)證明)兩類。這兩種方法可以很好的完成遠程數(shù)據(jù)的驗證,但無法和數(shù)據(jù)的冗余措施相結(jié)合,從而導(dǎo)致數(shù)據(jù)的完整性很容易被破壞,使得云數(shù)據(jù)中心無法高效運行,且數(shù)據(jù)的驗證的發(fā)起和證明占用了客戶機較大的系統(tǒng)開銷,另外,POR只支持數(shù)據(jù)的加密后驗證,不具有可定制性。
[0006]因此,云計算體系中缺少一種與數(shù)據(jù)冗余、數(shù)據(jù)加密和遠程數(shù)據(jù)驗證相結(jié)合的確定安全邊界的方法。
【發(fā)明內(nèi)容】
[0007]針對上述缺陷或不足,本發(fā)明的目的在于提出一種云計算數(shù)據(jù)安全邊界保護方法,能夠兼具數(shù)據(jù)加密、認證和保證安全邊界。
[0008]為達到以上目的,本發(fā)明的技術(shù)方案為:
[0009]包括以下步驟:
[0010]步驟一:云服務(wù)端接受用戶發(fā)送的云服務(wù)請求指令,并根據(jù)所述用戶云服務(wù)請求指令初始化系統(tǒng)數(shù)據(jù)結(jié)構(gòu)和安全參數(shù),并將安全參數(shù)發(fā)送給用戶;步驟二:用戶根據(jù)安全參數(shù)及隨機設(shè)定的密鑰參數(shù),產(chǎn)生密鑰信息,所述密鑰信息包括公私密鑰對和會話密鑰;[0011]步驟三:用戶發(fā)起一次數(shù)據(jù)存儲請求,產(chǎn)生所述數(shù)據(jù)存儲請求的元數(shù)據(jù)的頭信息,并將元數(shù)據(jù)的頭信息發(fā)送給云服務(wù)端的云數(shù)據(jù)中心,以使得云數(shù)據(jù)中心初始化一棵無格式數(shù)據(jù)追加樹;
[0012]步驟四:用戶產(chǎn)生并向云數(shù)據(jù)中心發(fā)送經(jīng)過加密處理的數(shù)據(jù)塊,所述數(shù)據(jù)塊包含序列號和版本號;
[0013]步驟五:云數(shù)據(jù)中心根據(jù)數(shù)據(jù)塊的序列號和版本號對無格式數(shù)據(jù)追加樹進行實時的維護;
[0014]步驟六:用戶利用自己的密鑰信息在無格式數(shù)據(jù)追加樹上執(zhí)行數(shù)據(jù)的安全邊界驗證及追加操作。 [0015]所述步驟二具體包括:用戶隨機選取參數(shù)x,y,k e Z*和單向哈希函數(shù)H(.): {O, I}*- {O, l}k,其中k為安全參數(shù),產(chǎn)生公私鑰對(pk,sk),并計算會話密鑰TKx=H (Encsk (X) I I IDc), TKy=H (Encpk (y) | | IDc),IDc 為當前用戶的身份標識符,Encpk (y)表示公鑰加密,Z*為非零整數(shù)。
[0016]所述步驟三具體包括以下步驟:
[0017]I)用戶初始化一個無格式數(shù)據(jù)追加樹的映射(Tree-Map)ci,計算根節(jié)點R=(Tree_Map)o=(0, O) I |H(Mq),其中(0,0)是序列號與版本號域,H(Mtl)是隨機選取的字符串Mq的哈希值;
[0018]2 )用戶計算元數(shù)據(jù)MHtl=H (TKy | | (Tree_Map) QI I R),其中,TKy是會話密鑰;
[0019]3)將包含元數(shù)據(jù)的頭信息(y,(Tree_Map) 0, MH0)發(fā)送給云數(shù)據(jù)中心,其中,y是一個正整數(shù),是由用戶在步驟一中隨機選取的安全信息;
[0020]4)云數(shù)據(jù)中心接收到包含元數(shù)據(jù)的頭信息后,建立一棵僅包含根節(jié)點的無格式數(shù)據(jù)追加樹。
[0021]所述步驟五包括以下步驟:
[0022]I)用戶根據(jù)待處理的數(shù)據(jù)M,產(chǎn)生無格式數(shù)據(jù)塊C,數(shù)據(jù)塊C包含三個域:標簽域,指針域和數(shù)據(jù)體,用戶選擇會話密鑰TKx對數(shù)據(jù)塊C進行加密;
[0023]2)如果根據(jù)待處理的數(shù)據(jù)為首次存放數(shù)據(jù),則計算:
[0024](Tree-Map)1=TagcJ R= (O, O) | |H(MD(0,0))
[0025]否貝U,計算:(Tree-Map)i=TagiII H(MD(S,V));
[0026]其中,Tagi= (s, V), s是當前的序列號,V是當前的版本號,MD(S,V)=H(MD(S+1,V) | MD(s;V+1)||H(M(S,V))),M是待處理的數(shù)據(jù);
[0027]3 )通過計算MH_ENT=H (TKy I I (Tree_Map)i| R)更新元數(shù)據(jù)的頭信息。
[0028]所述云數(shù)據(jù)中心使用樹形冗余存儲結(jié)構(gòu)存儲每個數(shù)據(jù)塊。
[0029]所述步驟六具體包括以下步驟:
[0030]I)用戶向云數(shù)據(jù)中心發(fā)送挑戰(zhàn)信息chal:
eS ?
[0031]chal = {(s,v\EnaIK (σ): ]σ e Z ),其中,(s, v)是隨機選擇的序列號
[V,V€ V
和版本號,σ為隨機選取的整數(shù)。
[0032]2)云數(shù)據(jù)中心計算證明信息P:[0033]
【權(quán)利要求】
1.一種云計算數(shù)據(jù)安全邊界保護方法,其特征在于,包括以下步驟: 步驟一:云服務(wù)端接受用戶發(fā)送的云服務(wù)請求指令,并根據(jù)所述用戶云服務(wù)請求指令初始化系統(tǒng)數(shù)據(jù)結(jié)構(gòu)和安全參數(shù),并將安全參數(shù)發(fā)送給用戶; 步驟二:用戶根據(jù)安全參數(shù)及隨機設(shè)定的密鑰參數(shù),產(chǎn)生密鑰信息,所述密鑰信息包括公私密鑰對和會話密鑰; 步驟三:用戶發(fā)起一次數(shù)據(jù)存儲請求,產(chǎn)生所述數(shù)據(jù)存儲請求的元數(shù)據(jù)的頭信息,并將元數(shù)據(jù)的頭信息發(fā)送給云服務(wù)端的云數(shù)據(jù)中心,以使得云數(shù)據(jù)中心初始化一棵無格式數(shù)據(jù)追加樹; 步驟四:用戶產(chǎn)生并向云數(shù)據(jù)中心發(fā)送經(jīng)過加密處理的數(shù)據(jù)塊,所述數(shù)據(jù)塊包含序列號和版本號; 步驟五:云數(shù)據(jù)中心根據(jù)數(shù)據(jù)塊的序列號和版本號對無格式數(shù)據(jù)追加樹進行實時的維護; 步驟六:用戶利用自己的密鑰信息在無格式數(shù)據(jù)追加樹上執(zhí)行數(shù)據(jù)的安全邊界驗證及追加操作。
2.根據(jù)權(quán)利要求1所述的云計算數(shù)據(jù)安全邊界保護方法,其特征在于,所述步驟二具體包括:用戶隨機選取參數(shù)x,y,k e 2*和單向哈希函數(shù)!1(*):{0,1}*— {0,1}k,其中k為安全參數(shù),產(chǎn)生公私鑰對(pk, sk),并計算會話密鑰TKx=H(Encsk(X) | IDc),TKy=H(Encpk(y) | IDc), ID。為所述用戶的身份標識符,Encsk(x)表示私鑰加密,Encpk(y)表示公鑰加密,Z*為非零整數(shù)。
3.根據(jù)權(quán)利要求1所述的云計算數(shù)據(jù)安全邊界保護方法,其特征在于,所述步驟三具體包括以下步驟: O用戶初始化一個無格式數(shù)據(jù)追加樹的映射(Tree-Map)ci,計算根節(jié)點R=(Tree_Map)o=(0, O) I |H(Mq),其中(0,0)是序列號與版本號域,H(Mtl)是隨機選取的字符串Mq的哈希值; 2)用戶計算元數(shù)據(jù)MHtl=H (TKy I I (Tree_Map) C11 I R),其中,TKy是會話密鑰; 3)將包含元數(shù)據(jù)的頭信息(y, (Tree_Map)0, MH0)發(fā)送給云數(shù)據(jù)中心,其中,y是一個正整數(shù),是由用戶在步驟一中隨機選取的安全信息; 4 )云數(shù)據(jù)中心接收到包含元數(shù)據(jù)的頭信息后,建立一棵僅包含根節(jié)點的無格式數(shù)據(jù)追加樹。
4.根據(jù)權(quán)利要求1所述的云計算數(shù)據(jù)安全邊界保護方法,其特征在于,所述步驟五包括以下步驟: 1)用戶根據(jù)待處理的數(shù)據(jù)M,產(chǎn)生無格式數(shù)據(jù)塊C,數(shù)據(jù)塊C包含三個域:標簽域,指針域和數(shù)據(jù)體,用戶選擇會話密鑰TKx對數(shù)據(jù)塊C進行加密; 2)如果根據(jù)待處理的數(shù)據(jù)為首次存放數(shù)據(jù),則計算:
(Tree-Map)1=Tag0I R= (O, O) | |H(MD(0,0));
否則,計算=(Tree-Map)i=TagiI |H(MDfev)); 其中,Tagi= (s, V), s是當前的序列號,V是當前的版本號,MD(s;v)=H(MD(s+1;v) | MD(s;v+1) |H(M(S,V))),M是待處理的數(shù)據(jù); 3)通過計算MH_ENT=H (TKy I I (Tree_Map)i| R)更新元數(shù)據(jù)的頭信息。
5.根據(jù)權(quán)利要求1或4所述的云計算數(shù)據(jù)安全邊界保護方法,其特征在于,所述云數(shù)據(jù)中心使用樹形冗余存儲結(jié)構(gòu)存儲每個數(shù)據(jù)塊。
6.根據(jù)權(quán)利要求1所述的云計算數(shù)據(jù)安全邊界保護方法,其特征在于,所述步驟六具體包括以下步驟: 1)用戶向云數(shù)據(jù)中心發(fā)送挑戰(zhàn)信息chal:
7.根據(jù)權(quán)利要求6所述的云計算數(shù)據(jù)安全邊界保護方法,其特征在于,所述當步驟六中當數(shù)據(jù)驗證出現(xiàn)失效時,進行數(shù)據(jù)恢復(fù),具體方法包括: 1)通過尋找前一版本的數(shù)據(jù)塊,將前一版本的數(shù)據(jù)塊復(fù)制到樹的當前位置; 2)修改當前數(shù)據(jù)塊的標簽域和指針域; 3)最后重新驗證當前數(shù)據(jù)塊的序列號和版本號,重復(fù)以上三個過程直至驗證成功。
【文檔編號】H04L29/06GK103618703SQ201310567878
【公開日】2014年3月5日 申請日期:2013年11月14日 優(yōu)先權(quán)日:2013年11月14日
【發(fā)明者】楊曉元, 朱率率, 韓益亮, 張敏情, 鐘衛(wèi)東 申請人:中國人民武裝警察部隊工程大學(xué)