曹伯強(qiáng),趙鄭營
(河南大學(xué)計(jì)算機(jī)與信息工程學(xué)院,開封475004)
云計(jì)算的存儲(chǔ)模式包括非授權(quán)訪問模式,人們?cè)谖词跈?quán)的情況下獲取用戶數(shù)據(jù),導(dǎo)致用戶或者企業(yè)儲(chǔ)存在云計(jì)算中的信息泄露[1]。傳統(tǒng)的公匙加密方式缺乏靈活性,同時(shí),傳統(tǒng)公匙加密必須對(duì)用戶信息分別加密,實(shí)施起來工程量大,可操作性差。研究人員提出了以屬性作為公匙的加密方式來保障用戶的安全。現(xiàn)有的屬性基加密方案存在較少考慮屬性權(quán)重的現(xiàn)狀,同時(shí)考慮到用戶安全性問題。研究人員提出了新的方案,即將屬性權(quán)重引入加密方案中,通過不同層次的授權(quán)中心授權(quán)不同的權(quán)重,來保障云計(jì)算儲(chǔ)存數(shù)據(jù)的安全性和實(shí)現(xiàn)更加細(xì)粒度的訪問控制。在實(shí)際應(yīng)用中,密文策略的權(quán)重屬性基加密方案更適合現(xiàn)在的云計(jì)算儲(chǔ)存。
隨著科學(xué)技術(shù)的快速發(fā)展,普通用戶可以將數(shù)據(jù)存儲(chǔ)在網(wǎng)絡(luò)中,防止數(shù)據(jù)丟失。云計(jì)算的出現(xiàn),技術(shù)研究人員開始在網(wǎng)絡(luò)中對(duì)數(shù)據(jù)進(jìn)行處理和保護(hù)。但由于云計(jì)算自身加密的局限性和黑客等的攻擊,客戶數(shù)據(jù)的安全性和機(jī)密性存在挑戰(zhàn)[1]。傳統(tǒng)的公匙加密方式已經(jīng)無法滿足新的需要,隨后研究人員提出了基于屬性的加密機(jī)制。
屬性基加密方案經(jīng)過曲折的發(fā)展過程,當(dāng)公匙加密方式不適應(yīng)時(shí)代發(fā)展要求時(shí),人們想到了其他的信息代替用戶身份。Sahai 和Waters[2]在IBE 的基礎(chǔ)上提出了基于屬性加密這一概念A(yù)BE。不僅僅解決了通信中的難題,實(shí)現(xiàn)了一對(duì)多的通信手段,更增強(qiáng)了信息的保密性。屬性加密機(jī)制,按照訪問策略是跟密文或密鑰相結(jié)合,可以分為密鑰策略屬性基加密(Key-Policy ABE,KP-ABE)和密文策略屬性基加密(Ciphertext-Policy ABE,CP-ABE)[3],這種加密機(jī)制能夠最大程度上保證接收方與發(fā)送方信息的安全。
屬性基加密,尤其是密文屬性加密技術(shù)發(fā)展時(shí)間短暫,屬于技術(shù)發(fā)展階段,技術(shù)方面不盡完善,密匙濫用、安全性及保密性、密文長度等方面仍存在一定的缺陷。而隨著互聯(lián)網(wǎng)的發(fā)展,對(duì)數(shù)據(jù)處理技術(shù)及數(shù)據(jù)保密技術(shù)的要求越來越高,要求我們推動(dòng)密文策略的權(quán)重屬性基加密方案的研究,在保障通信過程中信息安全的同時(shí),也要確保其靈活性和適用性,以滿足客戶不斷增長的需求。
密文策略的權(quán)重屬性基加密方案的研究需要我們掌握相關(guān)的基礎(chǔ)知識(shí),如:數(shù)學(xué)運(yùn)算中的基礎(chǔ)雙線性映射的相關(guān)知識(shí)、訪問結(jié)構(gòu)理論、權(quán)重門限訪問結(jié)構(gòu)和可證明安全理論等。經(jīng)分析得知,在云計(jì)算環(huán)境下,CPABE 方案比現(xiàn)有的其他ABE 方案更合適[4]。在基于密文策略屬性加密方案中,可信授權(quán)中心(T_CA)作為參與生成用戶屬性私鑰的重要機(jī)構(gòu),對(duì)其安全性要求較高。傳統(tǒng)方案中,單個(gè)CA 被攻擊,系統(tǒng)的安全性無法得到有效的保證。為了解決該問題,文章采用多授權(quán)中心。方案中各個(gè)CA 同時(shí)計(jì)算用戶的解密密鑰;由各個(gè)屬性授權(quán)中心(AA)管理相應(yīng)的屬性合,并根據(jù)屬性集合進(jìn)行屬性權(quán)重分割,實(shí)現(xiàn)屬性加權(quán)[7]。通過理論分析,該方案在保證系統(tǒng)安全性的同時(shí),更具有實(shí)際意義。
圖1 權(quán)重門限訪問結(jié)構(gòu)
數(shù)學(xué)運(yùn)算是近現(xiàn)代密碼學(xué)的基礎(chǔ),要想更好地掌握和了解各種密碼技術(shù),就需要掌握相關(guān)的數(shù)學(xué)知識(shí)?;跈?quán)重屬性的CP-ABE 加密方案主要包含以下五個(gè)算法:屬性集按權(quán)重劃分、Setup、Encrypt、Keygen和Decrypt。屬性的有效分割對(duì)于密文策略的權(quán)重屬性基加密方案的有效性來說是很重要的,如何確定適合的權(quán)重設(shè)計(jì)方案和權(quán)重訪問結(jié)構(gòu)也是很重要的。
主要由六步操作形成:初始化;新文件加密上傳;新用戶加入;文件訪問;用戶撤銷;文件刪除。簡單的描述如下:
(1)初始化:數(shù)據(jù)屬主以一個(gè)安全參數(shù)γ為輸入,并使用Setup 算法,輸出系統(tǒng)用的公共參數(shù)PKs 和系統(tǒng)主密鑰MKs。數(shù)據(jù)屬主首先對(duì)每個(gè)元素簽名,然后把PKs 和MKs 連同簽名傳送給T_CA。如果T_CA 通過了簽名的驗(yàn)證,那么系統(tǒng)利用PKs 和MKs 為新用戶分發(fā)密鑰。
(2)新文件加密上傳:數(shù)據(jù)屬主根據(jù)自己想要擁有什么樣屬性的數(shù)據(jù)消費(fèi)者才能訪問文件,從而定義一個(gè)訪問結(jié)構(gòu),通過Encrypt 算法對(duì)用戶的新文件進(jìn)行加密操作,然后把密文上傳到云端的存儲(chǔ)服務(wù)器。
(3)新用戶加入:每當(dāng)一個(gè)新用戶想進(jìn)入系統(tǒng),那么用戶將對(duì)其所擁有的屬性集合進(jìn)行簽名,然后提交給T_CA。如果T_CA 通過了改用戶的簽名,那么T_CA 就利用屬性集按權(quán)重分割算法,并將輸出該用戶屬性集的權(quán)重分割集,然后使用Keygen 算法輸出新用戶的密鑰,并把這個(gè)密鑰傳送給新用戶。
(4)文件訪問:數(shù)據(jù)消費(fèi)者將存儲(chǔ)在云端服務(wù)器的密文數(shù)據(jù)文件下載到本地計(jì)算機(jī),使用Decrypt 算法對(duì)密文進(jìn)行解密。如果用戶所擁有的密鑰中的屬性分割集滿足數(shù)據(jù)屬主所上傳密文的權(quán)重門限訪問策略,那么數(shù)據(jù)消費(fèi)者就可以解密該密文。
(5)用戶撤銷:在系統(tǒng)中,如果用戶被撤銷,那么系統(tǒng)要保證被撤銷的用戶沒有權(quán)限再去訪問云端存儲(chǔ)服務(wù)器的數(shù)據(jù)文件,同時(shí)還要保證未被撤銷的用戶能正常訪問云端存儲(chǔ)服務(wù)器上的文件。對(duì)于用戶的撤銷,根據(jù)執(zhí)行者的不同可劃分為直接撤銷和間接撤銷,廣播撤銷技術(shù)是比較常用的直接撤銷技術(shù),但是其實(shí)現(xiàn)數(shù)據(jù)訪問的粒度較粗,一般不建議直接使用。我們使用間接撤銷方案,我們采用時(shí)間標(biāo)記的方法來進(jìn)行用戶屬性撤銷,通過給每個(gè)用戶的屬性設(shè)置一個(gè)截止日期。只有用戶的屬性滿足密文的訪問策略,且截止日期在屬性生效時(shí)間之前才能夠解密密文。
(6)文件刪除:文件刪除操作只能由數(shù)據(jù)屬主進(jìn)行。
在密文策略的權(quán)重屬性基加密方案的設(shè)計(jì)中,對(duì)于安全性證明是很重要的。對(duì)于安全性理論的描述是這樣的:在權(quán)重屬性集模型下,如果敵手能夠打破該文章提出的方案,那么模擬器就能夠以不可忽略的概率構(gòu)造來攻破改進(jìn)的DBDH 假設(shè),對(duì)于安全性的保障還是很高的。而且可以有效解決公匙加密方式缺乏靈活性的相關(guān)問題。
在基于屬性加密的方案中引入權(quán)重,在不同的環(huán)境中,每個(gè)屬性的地位和級(jí)別可能不太一樣,所以我們可以使用上述權(quán)重門限訪問結(jié)構(gòu)。在系統(tǒng)中給用戶的屬性配上相應(yīng)的權(quán)值,權(quán)值的確定可以由用戶根據(jù)自身的需要來設(shè)定,也可以運(yùn)用相關(guān)的權(quán)重計(jì)算模型來確定權(quán)重。當(dāng)且僅當(dāng)用戶的私鑰中所包含的屬性滿足用戶在密文中設(shè)定的訪問結(jié)構(gòu)且權(quán)重大于所設(shè)定的值時(shí),數(shù)據(jù)消費(fèi)者才可以進(jìn)行解密操作。這樣的訪問控制可以保障密文的安全性。在文獻(xiàn)[4]中證明了任何的權(quán)重門限訪問結(jié)構(gòu)都可以定義權(quán)重為自然數(shù)的門限訪問結(jié)構(gòu),因此我們只認(rèn)定屬性的權(quán)重值為正整數(shù)。
對(duì)于多機(jī)構(gòu)層次化的權(quán)重屬性基加密方案進(jìn)行了探究。文獻(xiàn)[6]中的方案通過使用多CA 多AA 來減輕系統(tǒng)管理和分發(fā)密鑰的計(jì)算量,我們發(fā)現(xiàn)在改方案中,屬性是沒有差別的,沒有進(jìn)行區(qū)分,不同的屬性集管理機(jī)構(gòu)所管理的屬性集也是沒有差別。然而在云計(jì)算環(huán)境下,會(huì)有各種各樣的屬性,他們的重要性因不同的應(yīng)用環(huán)境而不同。因此,筆者認(rèn)為在方案中不能實(shí)現(xiàn)更細(xì)粒度的訪問控制策略。文獻(xiàn)[7]中的作者雖然對(duì)多個(gè)授權(quán)機(jī)構(gòu)劃分了明顯的層次關(guān)系,但是沒有把這樣的層次關(guān)系與屬性的權(quán)重做對(duì)應(yīng),這樣的話層與層之間的制約關(guān)系也就不能體現(xiàn)出來。
本文提出了基于權(quán)重屬性的CP-ABE 加密方案,由數(shù)據(jù)屬主來確定數(shù)據(jù)的訪問策略,本方案可以滿足以上要求。在云計(jì)算的環(huán)境中,把屬性權(quán)重也考慮進(jìn)去,以便更能加符合實(shí)際情況,能夠有效證明在標(biāo)準(zhǔn)情況下其安全屬性。而且在該方案中加入多機(jī)構(gòu)層次化的機(jī)制和屬性權(quán)重,能夠使系統(tǒng)更加靈活安全的運(yùn)行。