本發(fā)明涉及移動(dòng)云的信息安全、移動(dòng)云信息加密技術(shù)領(lǐng)域。
背景技術(shù):
云計(jì)算已經(jīng)成為了目前信息化發(fā)展的主要趨勢(shì)。隨著各類云服務(wù)的涌現(xiàn),云計(jì)算技術(shù)正在改變著人們的生產(chǎn)和生活方式。
移動(dòng)通信的飛速發(fā)展和移動(dòng)終端的智能化、多元化,使越來越多的用戶選擇使用智能移動(dòng)終端。移動(dòng)終端的設(shè)計(jì)研發(fā)也開始面向云計(jì)算這一廣闊的領(lǐng)域。因?yàn)橐苿?dòng)終端設(shè)備便攜式、可移動(dòng)的特點(diǎn),所以使用戶在訪問時(shí)所處的環(huán)境、時(shí)態(tài)不可控;移動(dòng)終端的智能化和普及化導(dǎo)致用戶群體龐大、管理困難;因此,在移動(dòng)云計(jì)算環(huán)境下,數(shù)據(jù)安全管理需要考慮多級(jí)化、細(xì)粒度化,以及訪問控制多要素化、動(dòng)態(tài)化等一系列問題。
移動(dòng)云計(jì)算環(huán)境面臨著用戶分類模糊、資源數(shù)量巨大、訪問管理復(fù)雜等問題。首先,移動(dòng)云計(jì)算應(yīng)用范圍廣泛,用戶可通過移動(dòng)終端實(shí)現(xiàn)對(duì)云端數(shù)據(jù)的使用。其次,移動(dòng)云中的資源由創(chuàng)建者打包、封裝并上傳,其后將管理權(quán)交由云平臺(tái),數(shù)據(jù)的所有者不再對(duì)數(shù)據(jù)進(jìn)行管理和控制。再者,在數(shù)據(jù)運(yùn)維管理過程中,存在由于容災(zāi)備份或者用戶使用引起的數(shù)據(jù)跨云遷移和流通,通常數(shù)據(jù)以完全加密或部分加密的形式進(jìn)行傳輸。最后,云端數(shù)據(jù)由用戶或CSP創(chuàng)建后,托管到云平臺(tái),依據(jù)用途不同,被部署到不同行業(yè)的私有云或公有云中,由不同的云平臺(tái)負(fù)責(zé)數(shù)據(jù)使用、維護(hù)、訪問控制和銷毀等管理。用戶則通過移動(dòng)終端經(jīng)由隨機(jī)的網(wǎng)絡(luò),在任意時(shí)間向云平臺(tái)提出對(duì)數(shù)據(jù)的訪問請(qǐng)求。
技術(shù)實(shí)現(xiàn)要素:
針對(duì)上述問題,本發(fā)明提出了一種移動(dòng)云中多要素訪問控制的代理重加密算法。
為解決上述問題,本發(fā)明提出了以下技術(shù)方案:
內(nèi)容管理服務(wù)器負(fù)責(zé)對(duì)處理用戶請(qǐng)求;數(shù)據(jù)管理服務(wù)器負(fù)責(zé)存儲(chǔ)加密后的數(shù)據(jù);代理加密服務(wù)器負(fù)責(zé)對(duì)數(shù)據(jù)的代理重加密;重加密密鑰管理服務(wù)器基于用戶的客觀訪問控制條件進(jìn)行策略的匹配并生成重加密密鑰,同時(shí)負(fù)責(zé)對(duì)整個(gè)系統(tǒng)重加密密鑰的管理。用戶可使用相關(guān)的移動(dòng)終端進(jìn)行對(duì)數(shù)據(jù)的訪問和使用,訪問形式可以多樣化。資源所有者負(fù)責(zé)數(shù)據(jù)的產(chǎn)生、初始數(shù)據(jù)的加密,其產(chǎn)生的數(shù)據(jù)包含數(shù)據(jù)內(nèi)容密文、策略描述及重加密密鑰生成所需信息,上述數(shù)據(jù)分別發(fā)送至內(nèi)容服務(wù)器和重加密密鑰管理服務(wù)器。具體步驟如下:
步驟1:系統(tǒng)初始化,建立參數(shù)。
步驟2:初始密鑰生成。
步驟3:數(shù)據(jù)加密及加密算法。
步驟4:代理重加密密鑰生成。
步驟5:代理重加密對(duì)數(shù)據(jù)進(jìn)行加密。
步驟6:用戶i解密滋生公鑰加密的密文獲取明文。
步驟7:用戶j解密條件加密后的密文獲取明文m。
本發(fā)明的有益效果是:
1、實(shí)現(xiàn)了在移動(dòng)云計(jì)算環(huán)境下數(shù)據(jù)多要素訪問控制與數(shù)據(jù)加解密管理的有機(jī)結(jié)合,為移動(dòng)云計(jì)算環(huán)境下數(shù)據(jù)的安全、可信保障奠定基礎(chǔ)。
具體實(shí)施方式
移動(dòng)云中多要素訪問控制的代理重加密算法,其主要特征是:以i表示為數(shù)據(jù)創(chuàng)建者,其數(shù)據(jù)在云服務(wù)器上發(fā)布,j為數(shù)據(jù)訪問者,向服務(wù)器請(qǐng)求訪問數(shù)據(jù)創(chuàng)建者i所創(chuàng)建的數(shù)據(jù),算法包括以下七個(gè)步驟:
步驟1:系統(tǒng)初始化,建立參數(shù)
選取長度的K的素?cái)?shù)p,群G1,G2為乘法循環(huán)群,定義雙線性映射e:G1×G1→G2,g為G1的生成元,四個(gè)散列函數(shù):
H1:{0,1}*→G1
H2:
H3:G3→{0,1}l
H4:{0,1}*→G1
公鑰PK={p,G1,G2,g,Hi(i=1,L,4),{0,1}*是訪問條件。
步驟2:初始密鑰生成
選取xi,則可以定義:
同理:
步驟3:數(shù)據(jù)加密及加密算法
數(shù)據(jù)創(chuàng)建者i使用公鑰pki加密明文信息m,選取k∈G2,計(jì)算:
r=H2(m||k)
則有密文Ci=(c1,c2,c3,c4,c5),其中:
c1=gr
c2=ke(pki,H1(pki))r
c4=H1(pki)
c5=H4(c1||c2||c3||c4)r
步驟4:代理重加密密鑰生成
代理重加密的密鑰時(shí)多要素訪問控制條件,將其分為主體條件和客體條件,其中主體條件包括角色、時(shí)態(tài)、環(huán)境、多級(jí)安全屬性,客體條件是名稱、有效期、生命周期、安全屬性,將他們用數(shù)據(jù)描述語言(XML)進(jìn)行結(jié)構(gòu)描述,解析產(chǎn)生主體訪問控制條件和客體訪問控制條件,其后分別生成數(shù)據(jù)摘要,生成指定長度的主體條件摘要Hsc和客體條件摘要Hoc,對(duì)生成的摘要進(jìn)行數(shù)據(jù)的連接和散列等運(yùn)算,產(chǎn)生指定長度的重加密密鑰生成算法參數(shù)condition,完成多要素訪問控制條件在重加密密鑰生成中的構(gòu)造和描述。
代理重加密密鑰用來表示,是由i到j(luò)基于條件condition的代理重加密密鑰,是關(guān)于sk、pkj、condition的函數(shù),所以將其定義為:
步驟5:代理重加密對(duì)數(shù)據(jù)進(jìn)行加密
對(duì)密文Ci重新加密,生成可以被skj所解密的密文Cj,當(dāng)e(c1,H4(c1||c2||c3||c4))=e(g,c5)時(shí),進(jìn)行加密運(yùn)算:
若e(c1,H4(c1||c2||c3||c4))≠e(g,c5),則反饋錯(cuò)誤。
步驟6:用戶i解密滋生公鑰加密的密文獲取明文
若e(c1,H4(c1||c2||c3||c4))=e(g,c5),則可以進(jìn)行解密計(jì)算,然后輸出明m;算法如下:
計(jì)算計(jì)算明文計(jì)算r=H2(m||k),若c1=gr且則輸出明文。
步驟7:用戶j解密條件加密后的密文獲取明文m
若則進(jìn)行解密計(jì)算:
計(jì)算:
計(jì)算:r=H2(m||k),若且則輸出條件解密結(jié)果,若則返回錯(cuò)誤。
在本發(fā)明算法中,由于若云計(jì)算平臺(tái)上的服務(wù)器與訪問者合謀計(jì)算出授權(quán)方的私鑰則等同于離散對(duì)數(shù)問題的求解。因此加密代理與解密方很難共謀實(shí)現(xiàn)密鑰的竊取,該方案具有主密鑰安全性。