基于分層屬性的加密與解密的制作方法
【專利摘要】一種域權(quán)限13,其用于分層加密系統(tǒng)中域權(quán)限的層級(jí)結(jié)構(gòu)。所述域權(quán)限13包括用戶密鑰生成器21,其用于基于域密鑰和一個(gè)或多個(gè)屬性表示生成用戶密鑰,以獲得與對(duì)應(yīng)于所述屬性表示的一屬性集相關(guān)聯(lián)的用戶密鑰,并且其中所述域密鑰基于父域權(quán)限的域密鑰或域權(quán)限的所述層級(jí)結(jié)構(gòu)的根權(quán)限的根密鑰,并且其中所述屬性表示獨(dú)立于所述層級(jí)結(jié)構(gòu)。一種解密器,其利用所述用戶密鑰。一種加密器,其生成可由所述解密器解密的密文。
【專利說明】基于分層屬性的加密與解密
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及基于分層屬性的加密系統(tǒng)。
【背景技術(shù)】
[0002]對(duì)于在護(hù)理周期(其范圍從經(jīng)由家庭醫(yī)療保健的傳統(tǒng)醫(yī)療保健到保健服務(wù))中所涉及的不同實(shí)體之間的數(shù)據(jù)交換的逐漸增長(zhǎng)需求已使得對(duì)數(shù)字化存儲(chǔ)的健康數(shù)據(jù)的安全管理成為重要的問題。現(xiàn)今的方法是基于以物理和行政程序?yàn)檩o助的傳統(tǒng)安全機(jī)制,這限制了健康信息的可用性,并且使健康記錄的交換較為繁瑣。數(shù)字策略管理與強(qiáng)制技術(shù)可以通過提供以下內(nèi)容而勝過這些途徑:(I)異構(gòu)網(wǎng)絡(luò)中的端到端隱私及安全,其獨(dú)立于數(shù)據(jù)在其上傳輸?shù)幕A(chǔ)設(shè)施或體制界限來保護(hù)數(shù)據(jù);(2)在基于屬性的訪問控制機(jī)制之上使用控制,這在醫(yī)療保健應(yīng)用中是非常重要的;以及(3)允許以無關(guān)網(wǎng)絡(luò)的方式開發(fā)系統(tǒng)的簡(jiǎn)單的可互操作的安全架構(gòu),其消除對(duì)網(wǎng)絡(luò)特異性安全條款的需要,并因此降低了實(shí)施和維護(hù)成本。
[0003]這種安全系統(tǒng)的重要部分是基于屬性的加密方案(ABE),尤其是密文策略ABE方案(CP-ABE),如從 J.Bethencourt、A.Sahai 和 B.Waters 在 2007 年 IEEE 安全與隱私研討會(huì)的會(huì)議記錄“Ciphertext-Policy Attribute-Based Encryption”, 321-334 頁 2007 中所已知的。在該方案中,根據(jù)訪問結(jié)構(gòu)(還稱訪問控制策略)來對(duì)數(shù)據(jù)進(jìn)行加密,使得僅具有適當(dāng)?shù)膶傩约挠脩裟軌蚪饷茉摂?shù)據(jù)。為了能夠解密該數(shù)據(jù),用戶從可信的權(quán)限獲得與他/她具有的屬性集相對(duì)應(yīng)的特定私密鑰。
[0004]已知的基于屬性的加密方案利用單個(gè)根權(quán)限。這意味著系統(tǒng)中的所有用戶均從中央權(quán)限獲得與其屬性有關(guān)的密鑰。然而,在大型的分布式組織中,該方式可能是不實(shí)際的。
[0005]分層加密方案使得能夠建立組織的層級(jí),其中任務(wù)中的一些通常被委托給該組織的更下級(jí)的層級(jí)中的人員。中央權(quán)限僅將密鑰發(fā)布給域權(quán)限。這將導(dǎo)致中央權(quán)限的負(fù)擔(dān)的減輕和用戶便利。代替聯(lián)系中央權(quán)限,用戶將聯(lián)系其各自的域(或部門)權(quán)限,以獲得其密鑰?;谏矸莸姆謱蛹用芊桨傅姆独蒫.Gentry等人在“Hierarchical ID-BasedCryptography”,ASIACRYPT2002, LNCS2501,548-566 頁,Springer-Verlag BerlinHeidelberg, 2002 中被公開。
[0006]US2010/0246827A1公開了一種涉及用戶控制的加密的方法。在該系統(tǒng)中,根密鑰是從患者的機(jī)密(例如,生物識(shí)別、密碼)中獲得的。然后使用該根密鑰來導(dǎo)出一組解密密鑰和加密密鑰。這些密鑰符合一個(gè)層級(jí)結(jié)構(gòu)。該層級(jí)結(jié)構(gòu)暗含地指定加密密鑰和解密密鑰的能力。例如,在該層級(jí)結(jié)構(gòu)中的特定等級(jí)處的解密密鑰僅可以解密使用相對(duì)應(yīng)的加密密鑰加密的文件。
[0007]Guojun Wang、Qin Liu和 Jie Wu 的“Hierarchical Attribute-Based Encryptionfor Fine-Grained Access Control in Cloud Storage Services,,,第 17 屆 ACM計(jì)算機(jī)與通信安全會(huì)議,2010 年 10 月 4-8 日,Hyatt Regency Chicago, Chicago, IL, USA 公開了基于分層屬性的加密(HABE)模型,其組合了基于分層身份的加密(HIBE)系統(tǒng)和基于密文策略屬性的加密(CP-ABE)系統(tǒng),以提供訪問控制與委托。公開了一種HABE方案,其進(jìn)行性能與表現(xiàn)性的權(quán)衡以實(shí)現(xiàn)高性能??梢詥⒂糜蛑鳈C(jī)(DM)來管理域的用戶或不相交的屬性集。與屬性相對(duì)應(yīng)的密鑰是由管理該屬性的域主機(jī)發(fā)布的。該方法具有以下缺陷:1)密文的大小和解密成本取決于層級(jí)結(jié)構(gòu)的深度,并且直接隨層級(jí)結(jié)構(gòu)的深度增加而增加。2)在加密期間,加密器必須指定各自的域和層級(jí)結(jié)構(gòu),這意味著如果新的域(例如,醫(yī)院)加入網(wǎng)絡(luò),則來自新加入成員的用戶無法訪問已加密的數(shù)據(jù),即使其滿足訪問控制策略。
[0008]Dan Boneh> Xavier Boyen、Eu-Jin Goh 在“Hierarchical Identity BasedEncryption with Constant Size Ciphertext,,,Cryptology ePrint Archive:Report2005/015 (http://eprint.1acr.0rg/2005/015.pdf)公開了基于分層身份的加密(HIBE)系統(tǒng),其中使用兩次雙線性映射計(jì)算執(zhí)行解密,而無論層級(jí)深度。
【發(fā)明內(nèi)容】
[0009]具有改進(jìn)的基于分層屬性的加密系統(tǒng)將是有利的。
[0010]為了更好地解決該問題,本發(fā)明的第一方面提供一種加密系統(tǒng),該加密系統(tǒng)包括域權(quán)限的層級(jí)結(jié)構(gòu)以及可分配給用戶的多個(gè)屬性,其中所述層級(jí)結(jié)構(gòu)中的域權(quán)限包括用戶密鑰生成器,所述用戶密鑰生成器用于基于域密鑰以及一個(gè)或多個(gè)屬性表示來生成用戶密鑰,以獲得基于針對(duì)分配給所述密鑰的未來擁有者的所述屬性的集合的屬性表示的用戶密鑰,所述域密鑰基于父域權(quán)限的域密鑰或所述域權(quán)限的層級(jí)結(jié)構(gòu)的根權(quán)限的根密鑰,并且其中,所述屬性表示獨(dú)立于所述層級(jí)結(jié)構(gòu)。
[0011]使用獨(dú)立于所述層級(jí)結(jié)構(gòu)的屬性使得針對(duì)本地域權(quán)限而言,能夠根據(jù)可以針對(duì)其用戶所需求的任意屬性集合,發(fā)布針對(duì)該用戶的密鑰。不需要聯(lián)系任何其它域主機(jī),所述其它域主機(jī)可以負(fù)責(zé)需要分配給該用戶的某些屬性,但所述某些屬性對(duì)發(fā)布所述用戶密鑰的域權(quán)限而言是不可訪問的。因此,所提出的系統(tǒng)允許在基于屬性的分層加密系統(tǒng)中對(duì)密鑰生成的真實(shí)委托。
[0012]在下文可以將所述域密鑰稱作原始域密鑰,并且可以將域權(quán)限稱作原始域權(quán)限,尤其當(dāng)討論由原始域權(quán)限生成另外的域密鑰時(shí)。這僅是術(shù)語的問題,形容詞“原始”并不指代域密鑰或域權(quán)限的任何具體性質(zhì)。
[0013]原始域權(quán)限可以包括域密鑰生成器,其用于針對(duì)域權(quán)限的所述層級(jí)結(jié)構(gòu)中的子域權(quán)限,生成另外的域密鑰。該另外的域密鑰是基于所述原始域密鑰生成的。以此方式,域密鑰的發(fā)布可以委托給個(gè)體域權(quán)限,并且不必在根等級(jí)處進(jìn)行。以此方式,創(chuàng)建了域權(quán)限的分層系統(tǒng),在這個(gè)意義上,根權(quán)限可以生成針對(duì)第一代域權(quán)限(即,等級(jí)I的域權(quán)限)的域密鑰,并且一代域權(quán)限中的每個(gè)域權(quán)限可以生成針對(duì)下一代的域權(quán)限的域密鑰。因此,等級(jí)I的域權(quán)限可以生成針對(duì)等級(jí)2的域權(quán)限的域密鑰,以此類推。
[0014]所述系統(tǒng)可以包括公共信息,該公共信息包括與域權(quán)限的所述層級(jí)結(jié)構(gòu)有關(guān)的公鑰,并且針對(duì)所述子域權(quán)限(即,下一代域權(quán)限中的域權(quán)限)的所述另外的域密鑰是基于該公鑰的一部分。優(yōu)選地,所述公鑰的所述部分未被用于生成所述原始域密鑰。由于所述公鑰涉及所述層級(jí)結(jié)構(gòu),因此所述公鑰的所述部分同樣也獨(dú)立于所述屬性。
[0015]以此方式,相繼代的域權(quán)限可以基于所述公鑰的相繼更大的部分。這允許加密器通過應(yīng)用所述公鑰的適當(dāng)部分,來具體地針對(duì)該代的子集進(jìn)行加密。[0016]根據(jù)本發(fā)明的一方面,針對(duì)所述子域權(quán)限的域密鑰不允許對(duì)與所述層級(jí)結(jié)構(gòu)中的前輩相關(guān)聯(lián)的密文的解密。也就是說,如果密文與所述層級(jí)結(jié)構(gòu)中高于該用戶等級(jí)的等級(jí)相關(guān)聯(lián),則所述密文無法被解密并被該用戶讀取。
[0017]通過將所述公鑰的新的部分與所述原始域密鑰的已有密鑰信息進(jìn)行組合,能夠創(chuàng)建新的域密鑰,該新的域密鑰無法解密僅使用所述公鑰中與所述層級(jí)結(jié)構(gòu)中的前輩代相關(guān)聯(lián)的部分生成的密文。這樣,使得除了基于屬性的區(qū)分以外,還可得到額外的區(qū)分性選擇。這意味著,除了具有適當(dāng)?shù)牡膶傩约?,用戶還需要在所述層級(jí)結(jié)構(gòu)中有足夠高的等級(jí),以便能夠解密密文。同時(shí),仍能夠生成可以被系統(tǒng)中的所有代解密的密文,只要滿足與該密文相關(guān)聯(lián)的策略。
[0018]用于生成與一屬性集合相關(guān)聯(lián)的用戶密鑰的屬性表示可以對(duì)所述層級(jí)結(jié)構(gòu)中的所有域權(quán)限是公開可用的。這允許任意域權(quán)限生成與所述屬性中的任意屬性相關(guān)聯(lián)的用戶密鑰。此外,該表示可以對(duì)整個(gè)系統(tǒng)或者對(duì)全世界公開。這允許相同的表示被加密器用于消息的加密。
[0019]用戶密鑰可以包括:表示在所述層級(jí)結(jié)構(gòu)中的位置的第一分量和表示分配給所述密鑰的所述用戶(即,所述密鑰的未來擁有者)的屬性集合的第二分量。所述用戶密鑰生成器可以被安排用于借助于隨機(jī)值,將所述第一分量與所述第二分量進(jìn)行綁定。以此方式,可以防止由惡意用戶對(duì)所述用戶密鑰的修改。換言之,使用兩部分中的隨機(jī)化因子,將所述第一分量綁定到所述第二分量。這具有再次隨機(jī)化或修改所述用戶密鑰使所述用戶密鑰失效的效果。因此,不鼓勵(lì)通過與其它用戶共享所述密鑰的濫用,因?yàn)閷?duì)所述密鑰的共享僅在通過共享未修改的用戶密鑰時(shí)是可能的,這使得用戶可追蹤。
[0020]根據(jù)本發(fā)明的另一方面,所述基于分層屬性的加密系統(tǒng)被提供有解密器。所述解密器被安排用于:
[0021]基于由域權(quán)限的所述層級(jí)結(jié)構(gòu)中的所述至少一部分中的域權(quán)限發(fā)布的用戶密鑰來解密所述密文;以及
[0022]基于由域權(quán)限的所述層級(jí)結(jié)構(gòu)的所述至少一部分的域權(quán)限發(fā)布的用戶密鑰,解密所述密文,
[0023]其中,如果與所述用戶密鑰相關(guān)聯(lián)的所述屬性集合滿足所述密文的所述策略,則所述用戶密鑰能夠進(jìn)行對(duì)所述密文的解密。
[0024]這允許所述解密器直接從域權(quán)限獲得其用戶密鑰。不需要聯(lián)系中央權(quán)限,因?yàn)樗鲇驒?quán)限可以被提供具有完全委托權(quán)力來生成具有期望的屬性集合的用戶密鑰,因?yàn)樗鰧傩允仟?dú)立于所述層級(jí)結(jié)構(gòu)的。
[0025]根據(jù)本發(fā)明的一方面,所述用戶密鑰不允許對(duì)與所述域權(quán)限的所述層級(jí)結(jié)構(gòu)中發(fā)布所述用戶密鑰的前輩相關(guān)聯(lián)的密文的解密。這允許設(shè)置可以基于用戶在所述層級(jí)結(jié)構(gòu)中的等級(jí)來解密密文的用戶組。
[0026]根據(jù)本發(fā)明的另一方面,所述用戶密鑰與所述域權(quán)限的所述層級(jí)中發(fā)布所述用戶密鑰的的所述等級(jí)相關(guān)聯(lián),所述等級(jí)表示所述層級(jí)結(jié)構(gòu)中的前輩的數(shù)目,其中,域權(quán)限的所述層級(jí)結(jié)構(gòu)中的所述至少一部分由直到預(yù)定等級(jí)的所述域權(quán)限組成,并且其中,僅在發(fā)布所述用戶密鑰的所述域權(quán)限的所述等級(jí)低于或等于所述預(yù)定等級(jí)時(shí),所述用戶密鑰允許對(duì)密文的解密。[0027]根據(jù)本發(fā)明的另一方面,所述基于分層屬性的加密系統(tǒng)被提供有加密器;所述加密器可以被安排用于基于與域權(quán)限的層級(jí)結(jié)構(gòu)中的至少一部分有關(guān)的公鑰信息,以及基于多個(gè)屬性上的策略來加密消息,以獲得與所述策略以及域權(quán)限的層級(jí)結(jié)構(gòu)中的所述至少一部分相關(guān)聯(lián)的密文。
[0028]所述加密器因此可以以以下方式來加密數(shù)據(jù):僅已向其分配了滿足所述策略的屬性集合的用戶能夠解密所述數(shù)據(jù)。所述密文不需要被綁定到特定的域。此外,能夠?qū)⑺雒芪呐c域權(quán)限的所述層級(jí)結(jié)構(gòu)中的僅一部分相關(guān)聯(lián),從而使得僅在所述層級(jí)結(jié)構(gòu)的該部分內(nèi)的合格用戶能夠解密所述數(shù)據(jù)。
[0029]根據(jù)本發(fā)明的一方面,所述層級(jí)結(jié)構(gòu)中與所述密文相關(guān)聯(lián)的所述至少一部分包括根權(quán)限以及所述根權(quán)限的預(yù)定數(shù)目的后代。所述后代是域權(quán)限的所述層級(jí)結(jié)構(gòu)中,從所述層級(jí)結(jié)構(gòu)中的其父代獲得其域密鑰的域權(quán)限。通常,一代是所述層級(jí)結(jié)構(gòu)中在相同等級(jí)的域的集合。
[0030]因此,選擇所述層級(jí)結(jié)構(gòu)的所述部分允許加密針對(duì)在所述層級(jí)結(jié)構(gòu)中低于特定等級(jí)的用戶的密文。這在例如如果域權(quán)限的所述層級(jí)結(jié)構(gòu)對(duì)應(yīng)于在較低的等級(jí)具有越來越高的權(quán)限的用戶的組織層級(jí)時(shí)是有用的。隨著用戶在所述層級(jí)結(jié)構(gòu)中的等級(jí)下降,該用戶可以具有允許該用戶解密并讀取更大量的消息的更高的權(quán)限等級(jí)。
[0031]在另一方面中,本發(fā)明提供一種生成用戶密鑰以便在基于分層屬性的加密系統(tǒng)中的域權(quán)限的層級(jí)結(jié)構(gòu)中使用的方法,所述方法包括:
[0032]基于父域權(quán)限的域密鑰或者域權(quán)限的所述層級(jí)結(jié)構(gòu)的根權(quán)限的根密鑰,來生成域密鑰;以及基于域密鑰和獨(dú)立于域權(quán)限的所述層級(jí)結(jié)構(gòu)的一個(gè)或多個(gè)屬性表示來生成用戶密鑰,從而獲得基于針對(duì)分配給所述密鑰的未來擁有者的所述屬性的集合的屬性表示的用戶密鑰。
[0033]在另一方面中,本發(fā)明提供一種解密密文的方法,包括:
[0034]接收與多個(gè)屬性上的策略相關(guān)聯(lián)的密文,其中,所述密文還與域權(quán)限的層級(jí)結(jié)構(gòu)中的至少一部分相關(guān)聯(lián);以及
[0035]基于由域權(quán)限的所述層級(jí)結(jié)構(gòu)中的所述至少一部分中的域權(quán)限發(fā)布的用戶密鑰來解密所述密文,其中,所述用戶密鑰與所述屬性的集合相關(guān)聯(lián),
[0036]其中,僅在與所述用戶密鑰相關(guān)聯(lián)的所述屬性集合滿足所述密文的所述策略時(shí),能夠進(jìn)行對(duì)所述用戶密鑰的所述解密。
[0037]在另一方面中,本發(fā)明提供一種加密消息的方法,其包括:基于與域權(quán)限的層級(jí)結(jié)構(gòu)中的至少一部分有關(guān)的公鑰信息以及基于一個(gè)或多個(gè)屬性表示來加密消息,從而獲得與所述屬性上的策略以及域權(quán)限的層級(jí)結(jié)構(gòu)中的所述至少一部分相關(guān)聯(lián)的密文。
[0038]本發(fā)明的另一方面提供一種計(jì)算機(jī)程序產(chǎn)品,其包括用于使得計(jì)算機(jī)系統(tǒng)執(zhí)行所闡述的方法中的一個(gè)或多個(gè)方法的指令。
[0039]本領(lǐng)域技術(shù)人員將認(rèn)識(shí)到,可以以任何被視為有用的方式,組合上文提及的實(shí)施例、實(shí)施方式,和/或本發(fā)明的各方面中的兩個(gè)或多個(gè)。
[0040]本領(lǐng)域技術(shù)人員在本描述的基礎(chǔ)上,可以進(jìn)行對(duì)所述圖像采集裝置、所述工作站、所述系統(tǒng)、所述方法和/或所述計(jì)算機(jī)程序產(chǎn)品的修改和變動(dòng),其對(duì)應(yīng)于對(duì)所述系統(tǒng)所描述的修改和變動(dòng)。【專利附圖】
【附圖說明】
[0041]根據(jù)后文描述的實(shí)施例,本發(fā)明的這些以及其它方面將是明顯的,并將參考后文描述的實(shí)施例得以闡明。所有附圖中,由相同的附圖標(biāo)記指示相似的項(xiàng)目。在附圖中:
[0042]圖1是基于分層屬性的加密系統(tǒng)的圖。
[0043]圖2是域權(quán)限的圖。
[0044]圖3是基于分層屬性的加密的方法的流程。
[0045]圖4是在基于分層屬性的加密系統(tǒng)中所涉及的實(shí)體的圖。
[0046]圖5是在基于分層屬性的加密系統(tǒng)中的公共信息的圖。
[0047]圖6是域密鑰的圖。
[0048]圖7是用戶密鑰的圖。
【具體實(shí)施方式】
[0049]針對(duì)所提出的方案在醫(yī)療保健領(lǐng)域中的用例場(chǎng)景之一可以是當(dāng)不同的醫(yī)院和醫(yī)療保健機(jī)構(gòu)加入,以形成國(guó)家或區(qū)域連接的醫(yī)療保健網(wǎng)絡(luò)時(shí)。過去已形成的這種醫(yī)療保健網(wǎng)絡(luò)的范例包括荷蘭的NICTIZ、英國(guó)的NHS、加拿大的Info Way。例如,NICTIZ是荷蘭的國(guó)家電子健康記錄(HER)基礎(chǔ)設(shè)施,其允許醫(yī)療保健提供者、患者、醫(yī)療保健保險(xiǎn)公司以及政府共享醫(yī)療保健相關(guān)數(shù)據(jù)。NICTIZ可以充當(dāng)所提出的方案中的中央權(quán)限,同時(shí),已加入NICTIZ的不同機(jī)構(gòu)/組織可以充當(dāng)具有他們各自的域/密鑰權(quán)限的域。每個(gè)成員組織的密鑰權(quán)限將然后為由NICTIZ的中央權(quán)限發(fā)布的一個(gè)或多個(gè)密鑰。所述域權(quán)限可以然后使用這些密鑰,以根據(jù)在它們各自的域/組織中的那些用戶的屬性,將密鑰發(fā)布給它們的用戶。在醫(yī)療保健中,用戶的角色(醫(yī)生、護(hù)士等)以及其它屬性被用作授予對(duì)患者的敏感數(shù)據(jù)的訪問權(quán)限的基礎(chǔ)。
[0050]所述基于屬性的加密方案可以允許加密器根據(jù)一列表的屬性上的訪問控制策略,加密敏感數(shù)據(jù)。在現(xiàn)有的基于屬性的密碼方案中,用戶必須聯(lián)系中央權(quán)限,以得到有關(guān)他們的屬性的密鑰,如果他們滿足相關(guān)訪問控制策略,則他們可以使用所述密鑰以解密所述數(shù)據(jù)。然而,這種方案給中央權(quán)限增加了額外的負(fù)擔(dān),因?yàn)槊總€(gè)用戶都必須聯(lián)系所述中央權(quán)限,以獲取有關(guān)他們的屬性的密鑰(在上文描述的范例中,所有成員組織中的醫(yī)療保健工作者都需要從NICTIZ獲取他們的角色及其它屬性)。此外,這對(duì)于用戶而言也是冗長(zhǎng)乏味的。換言之,當(dāng)前的屬性加密方案不支持所述組織的層級(jí)結(jié)構(gòu)/工作流,在層級(jí)結(jié)構(gòu)/工作流中用戶通常連接中間權(quán)限,而非根(或頂層)權(quán)限。
[0051]在所提出的方案中,通過允許(子)域權(quán)限向用戶發(fā)布與其屬性有關(guān)的密鑰,減輕了設(shè)置或根權(quán)限上的負(fù)擔(dān)。所述域權(quán)限也可以跨所述層級(jí)結(jié)構(gòu)進(jìn)一步向下給其它用戶發(fā)布密鑰,如果允許它們這么做的話。在加密期間,可以不需要指定相關(guān)的域。加密器僅需要根據(jù)一屬性集上的訪問控制策略,加密數(shù)據(jù)。因此,如果新的域(例如,額外的醫(yī)療保健組織)加入所述系統(tǒng),則不需要重新加密所述數(shù)據(jù),因?yàn)樗鰯?shù)據(jù)沒有被綁定到特定的域。本文公開的方案也可以有其它優(yōu)點(diǎn),例如與所述層級(jí)結(jié)構(gòu)的大小相當(dāng)?shù)墓潭芪拇笮『徒饷艹杀尽?br>
[0052]下文中描述若干示范性實(shí)施例。這些實(shí)施例僅是作為范例實(shí)施方式而提出的,并且不意圖限制本發(fā)明。
[0053]圖1示出基于分層屬性的加密系統(tǒng)的圖,亦即,包括一層級(jí)結(jié)構(gòu)的域以及可分配到用戶的多個(gè)屬性的加密系統(tǒng)。
[0054]該圖示意性地示出設(shè)置權(quán)限10,根權(quán)限11,域權(quán)限12、13、15、16,解密器14、17、
19,加密器18,以及傳輸信道20。這些實(shí)體可以由單獨(dú)的設(shè)備實(shí)施。然而,也有可能將這些實(shí)體中的一個(gè)或多個(gè)實(shí)施為可以在任意計(jì)算機(jī)系統(tǒng)上運(yùn)行的軟件模塊。也有可能將幾個(gè)模塊的功能合并在單件裝置中。也有可能使用單個(gè)服務(wù)器計(jì)算機(jī)實(shí)施全部模塊。然后可以為不同的用戶提供對(duì)所述模塊的訪問權(quán)限以及他們可以對(duì)其擁有權(quán)限的密鑰。所述系統(tǒng)也可以被實(shí)施在分布式計(jì)算機(jī)系統(tǒng)上。
[0055]設(shè)置權(quán)限10可以被布置用于提供若干常用系統(tǒng)參數(shù)。典型地,設(shè)置權(quán)限10確定在所述系統(tǒng)的壽命期間保持不變的若干參數(shù)。在這些參數(shù)已被固定之后,可以不再需要設(shè)置權(quán)限10。根權(quán)限11可以提供與域權(quán)限12、13、15、16相同的功能。然而,由于根權(quán)限11不具有父域權(quán)限,所用的算法可以略有不同。在圖2中更詳細(xì)地示出域權(quán)限13。
[0056]在這里更詳細(xì)地將域權(quán)限13描述為其它域權(quán)限12、15、16的代表。同樣,可以在根權(quán)限11中找到類似的特征。
[0057]域權(quán)限13被布置用于從其父權(quán)限接收域密鑰。在該范例中,第一等級(jí)域權(quán)限13的父權(quán)限為根權(quán)限11。第二等級(jí)域權(quán)限15、16的父權(quán)限為第一等級(jí)域權(quán)限13。
[0058]可以由所述父權(quán)限基于所述父域權(quán)限的域密鑰,或者基于域權(quán)限的所述層級(jí)結(jié)構(gòu)的根權(quán)限的根密鑰,生成域密鑰。在該范例中,第一等級(jí)域權(quán)限13的域密鑰是由根權(quán)限11生成的,并且域權(quán)限15、16的第二等級(jí)域密鑰是由第一等級(jí)域權(quán)限13生成的。
[0059]域權(quán)限的所述層級(jí)結(jié)構(gòu)可以被視為樹形結(jié)構(gòu),其中所述根權(quán)限在所述樹的頂端。所述樹的節(jié)點(diǎn)為所述域權(quán)限,其從它們?cè)谒鰳渲械那拜吔邮账鼈兊挠蛎荑€。解密器19可以被視作所述樹的葉子。
[0060]域權(quán)限13可以負(fù)責(zé)生成域密鑰。額外地或可選地,域權(quán)限13可以負(fù)責(zé)生成用戶密鑰。為此,域權(quán)限13可以包括域密鑰生成器22和/或用戶密鑰生成器21。
[0061]如圖2中所示,域權(quán)限13包括用戶密鑰生成器21。用戶密鑰生成器21被布置用于接收所述域密鑰以及一個(gè)或多個(gè)屬性表示。這些屬性表示代表被分配給所述用戶密鑰的未來擁有者的一屬性集。
[0062]大體上,每個(gè)可被分配給用戶的屬性均具有對(duì)應(yīng)的屬性表示,其包括對(duì)該屬性獨(dú)有的數(shù)據(jù)。這些屬性表示獨(dú)立于域權(quán)限的所述層級(jí)結(jié)構(gòu)。
[0063]例如,所述屬性表示是由設(shè)置權(quán)限10或根權(quán)限11生成的。相同的表示可以被全部所述域權(quán)限使用。這不排除以下可能性,即表示僅被所述域權(quán)限的子集使用。用戶密鑰生成器21被布置用于生成用戶密鑰。該用戶密鑰是基于域權(quán)限13的域密鑰,以及對(duì)應(yīng)于用戶的所述屬性集的所述屬性表示,尤其是被分配給這樣的用戶的所述屬性,而被生成的,所述用戶為正被生成的所述用戶密鑰將被分配給他們的用戶,即所述密鑰的未來擁有者。獲得的所述用戶密鑰因此與對(duì)應(yīng)于所述屬性表示的一屬性集相關(guān)聯(lián)。此外,所述域權(quán)限的層級(jí)等級(jí)和/或位置也被表示在所述用戶密鑰中。
[0064]如從以上將理解的,域權(quán)限能基于其自己的域密鑰生成另外的域密鑰。可以在后文中將其自己的域密鑰稱為原始域密鑰??梢栽诤笪闹袑⑸尚碌挠蛎荑€的所述域權(quán)限稱為原始域權(quán)限。能夠生成另外的域密鑰的所述域權(quán)限包括域密鑰生成器22。域密鑰生成器22包括用于針對(duì)域權(quán)限的所述層級(jí)結(jié)構(gòu)中的子域權(quán)限生成域密鑰的算法的實(shí)現(xiàn)方式。
[0065]參考圖1,例如,原始域權(quán)限13生成針對(duì)子域權(quán)限16的另外的域密鑰。子域權(quán)限16的所述另外的域密鑰是基于原始域權(quán)限13的所述原始域密鑰而被生成的。因此,所生成的域密鑰針對(duì)代表所述層級(jí)樹中的相鄰子節(jié)點(diǎn)的域權(quán)限。
[0066]域密鑰生成器22可以被安排為使得針對(duì)子域權(quán)限16的所述另外的域密鑰是基于域權(quán)限的所述層級(jí)結(jié)構(gòu)的公鑰的一部分,而被生成的。為此,所述公鑰可以被分成若干分量,并且所述原始域密鑰僅基于這些公鑰分量的子集。
[0067]為了生成子域密鑰,使用一個(gè)或多個(gè)額外的公鑰分量。所用的這種公鑰分量的數(shù)目可以有關(guān)所述域權(quán)限在所述層級(jí)結(jié)構(gòu)內(nèi)的等級(jí)。優(yōu)選地,用于生成所述另外的域密鑰的所述額外的公鑰分量(一個(gè)或多個(gè))沒有被用于生成所述原始域密鑰。
[0068]此外,所述公鑰中被用于生成所述域密鑰的所述部分獨(dú)立于所述屬性,并且尤其是上文提及的所述屬性表示。以此方式,在域權(quán)限生成用戶密鑰時(shí),所述域密鑰不限于一個(gè)或多個(gè)特定屬性。
[0069]針對(duì)子域權(quán)限16的所述另外的域密鑰不允許對(duì)與所述層級(jí)結(jié)構(gòu)中的所述前輩(亦即根權(quán)限11和原始域權(quán)限13)相關(guān)聯(lián)的密文的解密。在加密時(shí),所述加密器可以僅使用所述公鑰中上文所提及部分的子集。這意味著,具有基于更多分量的密鑰的所述解密器,可能不能解密所述密文。這樣的效果是可以實(shí)現(xiàn)的,因?yàn)樵谏伤鲎佑蛎荑€時(shí)使用的所述額外的分量被以這樣的方式與所述原始域密鑰合并,從而對(duì)應(yīng)的公鑰分量需要被用于所述密文,以使所述解密器能夠解密所述數(shù)據(jù)。這將在后文的具體實(shí)施例中詳細(xì)說明。
[0070]所述域權(quán)限可以被布置用于以相同的順序增加所述公鑰的所述分量。這樣,每一“代”的域權(quán)限都有用基于所述公鑰的相同分量的域密鑰。這允許加密數(shù)據(jù),使得其僅能被如下的用戶密鑰解密,所述用戶密鑰即為由預(yù)定數(shù)目代(也被稱作等級(jí))的域權(quán)限發(fā)布的用戶密鑰。
[0071]有可能所述屬性表示中的至少一些對(duì)所述系統(tǒng)中的所述域權(quán)限公開可用。這允許這些域權(quán)限通過基于適當(dāng)公開可用的屬性表示生成密鑰分量,而生成與任意選擇的屬性相關(guān)聯(lián)的用戶密鑰。
[0072]所述用戶密鑰可以包括第一分量,其表示在所述層級(jí)中的位置;以及第二分量,其表示與所述用戶密鑰相關(guān)聯(lián)的所述屬性集。然而,所述用戶密鑰生成器可以被布置用于借助于隨機(jī)值,結(jié)合所述第一分量與所述第二分量。以此方式,可以放置惡意用戶對(duì)所述用戶密鑰的修改。在下面的第二具體實(shí)施例中描述該機(jī)制的范例實(shí)施方式。
[0073]圖5示出在根據(jù)本發(fā)明的所述加密系統(tǒng)的實(shí)施例中,公共信息75的圖。
[0074]公共信息75包括所述系統(tǒng)的公共參數(shù)70。這些公共參數(shù)70可以包括格式信息,以及例如,用于所述算法中的組的字段或組描述符。例如,可以將組的順序指定為參數(shù)。公共信息75還包括有關(guān)域權(quán)限的所述層級(jí)結(jié)構(gòu)的公鑰71。該公鑰71被分成多個(gè)公鑰分量73。公共信息75還包括有關(guān)屬性的部分72。該部分75包括多個(gè)屬性表示74。這些屬性表示可以包括,例如,表示每個(gè)屬性的公鑰和/或表示屬性的子集的公鑰。
[0075]圖6示出域密鑰80的圖。
[0076]圖7示出用戶密鑰84的圖。用戶密鑰84包括有關(guān)域權(quán)限的所述層級(jí)結(jié)構(gòu)的第一分量81。公鑰71的公鑰分量73中有關(guān)層級(jí)結(jié)構(gòu)的子集(或全部)可以被用于生成用戶密鑰84的該第一分量81。
[0077]用戶密鑰84還包括第二分量82,其有關(guān)與將為其分配用戶密鑰84的用戶相關(guān)聯(lián)的所述屬性。第二分量82包括多個(gè)子分量83。每個(gè)子分量83均可以基于公共屬性表示74中的一個(gè)。
[0078]所述用戶密鑰可以包括任意另外的分量85。這些另外的分量85優(yōu)選地獨(dú)立于層級(jí)結(jié)構(gòu)和屬性兩者。用戶密鑰內(nèi)容的更詳細(xì)范例將在后文描述。關(guān)于如何在所述用戶密鑰中表示需要的信息可能有許多變型。
[0079]解密器19可以,例如被所述系統(tǒng)的終端用戶采用。這也應(yīng)用于位于所述層級(jí)結(jié)構(gòu)中的其它地方的示范性解密器14和17。解密器19可以包括接收器,用于經(jīng)由傳輸信道20從加密器18接收密文。這樣的傳輸信道可以包括數(shù)字通信手段,例如電子郵件、互聯(lián)網(wǎng),或者可移動(dòng)存儲(chǔ)介質(zhì),例如光盤。此外,解密器19可以包括接收器,用于從域權(quán)限16接收用戶密鑰。例如,可以使用該段中涉及所述密文提及的所述傳輸手段,從所述域結(jié)構(gòu)傳達(dá)所述用戶密鑰。所述密文可以與在所述系統(tǒng)中可用的所述屬性上的策略相關(guān)聯(lián)。此外,所述密文可以還與域權(quán)限11、12、13、15、16的所述層級(jí)結(jié)構(gòu)中的至少一部分相關(guān)聯(lián)。所述解密器可以被布置用于基于由域權(quán)限16發(fā)布的用戶密鑰,解密所述密文。如上所示,所述用戶密鑰可以與在所述系統(tǒng)中可用的所述屬性的集合相關(guān)聯(lián)。
[0080]所述用戶密鑰僅在與所述用戶密鑰相關(guān)聯(lián)的所述屬性集滿足所述密文的訪問控制策略時(shí),使能對(duì)所述密文的解密。如上所述,所述屬性獨(dú)立于所述層級(jí)結(jié)構(gòu)。以此方式,任意域權(quán)限16均可以能夠?qū)⑦@些屬性授予其終端用戶。這不排除以下可能性,即一些其它屬性可以被限制在一些特定的域權(quán)限或權(quán)限。
[0081]如上所示,所述用戶密鑰可以也與發(fā)布所述用戶密鑰的域權(quán)限16在所述層級(jí)結(jié)構(gòu)中的位置相關(guān)聯(lián)。該位置可以被視為具有指示在所述層級(jí)中的若干前輩的等級(jí)??梢酝ㄟ^在所述層級(jí)結(jié)構(gòu)樹中計(jì)算從所述域權(quán)限到所述根權(quán)限的最短路徑,計(jì)數(shù)該數(shù)目的前輩。然而,這種計(jì)數(shù)典型地不是在運(yùn)行中的系統(tǒng)中執(zhí)行的,因?yàn)樗鲇脩裘荑€的內(nèi)容暗含地或明示地表示了所述等級(jí)。
[0082]如前面所提及的,所述密文可以與域權(quán)限的所述層級(jí)結(jié)構(gòu)中的至少一部分相關(guān)聯(lián)。該部分可以由直到如上所述的預(yù)定等級(jí)的域權(quán)限組成,即所述根權(quán)限,以及直到所述預(yù)定等級(jí)的幾代域權(quán)限。這可以由所述加密器,通過使用所述公鑰中用于加密的相應(yīng)分量,而得以實(shí)現(xiàn)。
[0083]所述用戶密鑰可以僅在發(fā)布所述用戶密鑰的所述域權(quán)限屬于直到所述預(yù)定等級(jí)的所述域權(quán)限時(shí),允許對(duì)所述密文的解密。這可以通過適當(dāng)設(shè)計(jì)所述用戶密鑰和所述密文,而得以實(shí)現(xiàn)。然而,以此方式相應(yīng)地適配解密算法,使得其允許使用所述用戶密鑰解密所述密文。后文給出合適的解密算法的詳細(xì)范例。
[0084]加密器18,在所示的范例中,不是所述層級(jí)結(jié)構(gòu)的部分。所述加密器可以包括用于接收要被加密的消息的接收器。該消息可以源自任意源,例如鍵盤、醫(yī)學(xué)成像設(shè)備、用戶應(yīng)用程序,或經(jīng)由任意種類的傳輸信道。加密器18還可以包括用于從,例如設(shè)置實(shí)體10和/或根權(quán)限11接收公共信息的接收器。該公共信息可以包括所述公鑰中有關(guān)所述層級(jí)結(jié)構(gòu)和/或所述公共屬性表示的分量。所有該信息均可以被所述加密器接收,或者例如可以在其制造期間預(yù)先配置。
[0085]加密器18可以被布置用于基于有關(guān)域權(quán)限的層級(jí)結(jié)構(gòu)中的至少一部分的公鑰信息,以及多個(gè)屬性上的策略,加密消息,以獲得與所述策略以及域權(quán)限的層級(jí)結(jié)構(gòu)中的所述至少一部分相關(guān)聯(lián)的密文。如上文所討論的,所述屬性獨(dú)立于所述層級(jí)。為此,在所述訪問策略中所涉及的所述屬性的所述公共屬性表示被用于加密所述數(shù)據(jù)。此外,所述公鑰中有關(guān)所述層級(jí)的分量被用于將所述密文與域權(quán)限的所述層級(jí)結(jié)構(gòu)中的所述至少一部分相關(guān)聯(lián)。
[0086]如上所示,所述層級(jí)中的所述至少一部分可以包括所述根權(quán)限以及所述根權(quán)限的預(yù)定數(shù)目的后代,其中所述后代為在域權(quán)限的所述層級(jí)結(jié)構(gòu)中從它們?cè)谒鰧蛹?jí)結(jié)構(gòu)中的父輩獲得它們的域密鑰的域權(quán)限。
[0087]圖3中示出一種基于分層屬性的加密方法。在步驟51中,運(yùn)行設(shè)置算法,以建立所述加密系統(tǒng)的若干常規(guī)參數(shù)。這些常規(guī)參數(shù)可以涉及密文及明文的格式和大小,用于所述加密的字段的順序和類型,等等。所述常規(guī)參數(shù)也可以包括在所述系統(tǒng)中使用的屬性的表示,以及具有可以被用于委托向域權(quán)限發(fā)布用戶密鑰的分量的公鑰。
[0088]在步驟52中,所述根權(quán)限生成針對(duì)域權(quán)限的域密鑰。這基于所述公鑰,使用所述公鑰的所述分量中的至少一個(gè),以生成所述域密鑰。在步驟55中,確定是否有任意更多的域權(quán)限需要來自所述根權(quán)限的域密鑰。如果是,則重復(fù)步驟52。原則上,所述公鑰的相同分量被用于由所述根權(quán)限生成的每個(gè)域密鑰。然而,這并非限制。
[0089]在步驟53中,域權(quán)限的所述層級(jí)結(jié)構(gòu)中的域權(quán)限生成針對(duì)其在所述層級(jí)結(jié)構(gòu)中的子域權(quán)限之一的域密鑰。這是基于原始域權(quán)限的原始域密鑰,以及所述公鑰中有關(guān)所述層級(jí)結(jié)構(gòu)的未使用部分(亦即,在生成所述原始域密鑰中未使用的一個(gè)或多個(gè)公鑰分量),而得以完成的。
[0090]在步驟56中,確定是否有另一域權(quán)限需要域密鑰。如果是,則重復(fù)步驟53,以這樣的方式,使得每個(gè)原始域權(quán)限針對(duì)受所述原始域權(quán)限下轄的所述域權(quán)限,生成域密鑰。
[0091]在步驟54中,域權(quán)限的所述層級(jí)結(jié)構(gòu)中的域權(quán)限基于其域密鑰以及一個(gè)或多個(gè)屬性表示,生成用戶密鑰。這樣,將用戶密鑰與對(duì)應(yīng)于所述屬性表示的一屬性集(尤其是所述用戶密鑰將被分配給其的用戶的屬性)相關(guān)聯(lián)地發(fā)布。所述用戶密鑰還與所述域權(quán)限在所述層級(jí)中的位置相關(guān)聯(lián)。
[0092]在步驟57中,確定是否有另一用戶需要用戶密鑰。如果是,則重復(fù)步驟54,以這樣的方式,使得每個(gè)域權(quán)限針對(duì)由該域權(quán)限下轄的所述用戶,生成所述用戶密鑰。
[0093]在步驟58中,基于有關(guān)域權(quán)限的層級(jí)結(jié)構(gòu)中的至少一部分以及在多個(gè)屬性上的策略的公鑰信息(例如公鑰分量),加密消息,以獲得與所述策略和域權(quán)限的層級(jí)結(jié)構(gòu)中的所述至少一部分相關(guān)聯(lián)的密文,其中使用獨(dú)立于所述層級(jí)的屬性表示。
[0094]在步驟59中,通過所述用戶端解密器,基于他或她的用戶密鑰,解密所述密文,其中所述用戶密鑰與滿足一套所述策略的所述屬性的集合相關(guān)聯(lián),并且其中所述用戶密鑰在與所述用戶密鑰相關(guān)聯(lián)的所述屬性集滿足所述密文的所述策略時(shí),使能對(duì)所述密文的解密,并且所述用戶密鑰是由域權(quán)限的所述層級(jí)結(jié)構(gòu)的所述至少一部分中與所述密文相關(guān)聯(lián)的域權(quán)限發(fā)布的。
[0095]在步驟60中,確定是否有另一消息需要被通/[目。如果是,則重復(fù)步驟58和步驟59。在需要更多密鑰時(shí),所述過程可以執(zhí)行相關(guān)步驟。例如,當(dāng)增加新的域權(quán)限到所述系統(tǒng)時(shí),所述過程執(zhí)行步驟52或步驟53,以針對(duì)該域權(quán)限生成域密鑰。當(dāng)增加新的用戶時(shí)或所述用戶的屬性改變時(shí),所述過程可以執(zhí)行步驟54,以生成新的用戶密鑰。當(dāng)不需要更多行為時(shí),所述過程結(jié)束。
[0096]將理解,可以例如由不同實(shí)體的裝置或由平行處理器,平行地執(zhí)行這些步驟中的一個(gè)或多個(gè)。也將理解,這里描述的步驟的順序僅為范例;實(shí)踐中,步驟的運(yùn)行順序?qū)⒏鶕?jù)所述用戶的通信需要而變化。所述方法適于被實(shí)施在軟件中,如包括指令的計(jì)算機(jī)程序產(chǎn)品,所述指令用于引起計(jì)算機(jī)系統(tǒng)執(zhí)行所述方法。尤其地,計(jì)算機(jī)程序產(chǎn)品可以被設(shè)計(jì)為執(zhí)行對(duì)特定實(shí)體需要實(shí)施的步驟,所述特定實(shí)體例如設(shè)置實(shí)體、根權(quán)限、域權(quán)限、解密器、加密器。所述軟件在模塊中的其它分派也是可能的。
[0097]基于層級(jí)屬性的加密方案可以包括以下算法的實(shí)施。相應(yīng)的算法見于現(xiàn)有的基于密文-策略屬性的加密(CP-ABE)系統(tǒng)中。該現(xiàn)有的CP-ABE方法可以如下擴(kuò)展:
[0098]-設(shè)置:設(shè)置算法在初始化階段期間配置系統(tǒng)參數(shù),并輸出公共參數(shù)PK和主密鑰MK。該算法由根權(quán)限運(yùn)行。
[0099]-密鑰生成根授權(quán)(MK、PK):該算法由所述根權(quán)限運(yùn)行,以生成針對(duì)所述域權(quán)限的密鑰。其將MK和PK作為輸入,并輸入針對(duì)在等級(jí)k=l的所述域權(quán)限的密鑰dID I k=l。所述域權(quán)限可以使用這些密鑰,以發(fā)布另外的密鑰給在它們的域中的用戶。
[0100]-密鑰生成域授權(quán)(dIDIk=I):該算法由所述域權(quán)限運(yùn)行。其將所述密鑰dID|k=l作為輸入,并輸出用戶密鑰dID|k+l。所述用戶密鑰包括兩個(gè)部分,一部分有關(guān)所述層級(jí)結(jié)構(gòu),并且另一部分有關(guān)所述用戶所具有的屬性。域權(quán)限可以使用所述層級(jí)結(jié)構(gòu)部分,以發(fā)布另外的密鑰,只要討論中的所 述密鑰允許(?)。
[0101]-加密(ΡΚ、Μ、A):加密算法將所述公鑰PKHiM以及在全部屬性上的訪問策略A作為輸入。所述算法返回所述密文CT。該密文被構(gòu)建為使得僅擁有與滿足所述訪問策略A的屬性集ω相關(guān)聯(lián)的密鑰的用戶能解密所述密文CT。所述密文CT暗含地包含對(duì)所述訪問策略A的描述。
[0102]-解密(?1(、(:1\(110|1^1):解密算法經(jīng)公共參數(shù)ΡΚ、密文CT、密鑰dID|k+l作為輸入。如果dID I k+Ι滿足由所述密文A暗含地表示的所述訪問策略“A”,則其輸出解密的消息M。否則,其返回錯(cuò)誤符號(hào)I。
[0103]在所提出的方案之一中,中央權(quán)限(例如中央醫(yī)療保健聯(lián)盟)發(fā)布密鑰給在所述中央權(quán)限之下的所述域權(quán)限(特定的醫(yī)院或機(jī)構(gòu))。所述域權(quán)限可以然后使用這些密鑰,以發(fā)布密鑰給對(duì)應(yīng)于所述用戶的屬性的用戶。從概念上講,所述用戶密鑰可以被可視化為包括兩個(gè)部分。一部分涉及層級(jí)結(jié)構(gòu),而另一部分涉及所述用戶所具有的屬性。所述加密器根據(jù)一屬性集上的訪問控制策略加密所述數(shù)據(jù),并且不需要將所述密文綁定到特定的域/層級(jí)結(jié)構(gòu)。CP-ABE方案與分層加密方案(例如基于分層身份的加密方案)兩者的功能可以被組合。所述加密器不需要指定所述域。所述密文的大小,以及解密成本可以獨(dú)立于層級(jí)深度“I,,
[0104]圖4示出一實(shí)施例的概念圖。在該系統(tǒng)中,根權(quán)限I發(fā)布個(gè)性化密鑰給域權(quán)限2、3和4。域權(quán)限2可以使用其密鑰(c^m),以發(fā)布密鑰(dID|k+1)給在其域以內(nèi)的用戶。所述用戶密鑰(dID|k+1)由兩個(gè)部分組成。一部分有關(guān)所述層級(jí)結(jié)構(gòu),而另一部分有關(guān)所述用戶所具有的屬性。所述用戶可以使用所述層級(jí)結(jié)構(gòu)部分,以通過發(fā)布密鑰給另外的用戶,而充當(dāng)域權(quán)限,如果允許(?)他這么做的話。
[0105]下文中,更詳細(xì)地描述本發(fā)明的第一具體實(shí)施例。設(shè)Gtl為素?cái)?shù)階P的雙線性群,并且設(shè)g為G0的生成器。此外,設(shè)e: G0 XG0^Gi指代雙線性映射。安全參數(shù)λ確定
所述群的大小。拉格朗日系數(shù)Ai, ω,其中f e Hp,其中Bp = {O,…,p-l},并且其中
?中的元素的集,并且如下定義:
【權(quán)利要求】
1.一種加密系統(tǒng),包括: 域權(quán)限(11、12、13、15、16)的層級(jí)結(jié)構(gòu),以及 可分配給用戶的多個(gè)屬性, 其中,所述層級(jí)結(jié)構(gòu)中的域權(quán)限(13)包括: 用戶密鑰生成器(21),其用于基于域密鑰(80)以及一個(gè)或多個(gè)屬性表示(74)生成用戶密鑰(84),以獲得基于針對(duì)分配給所述密鑰的未來擁有者的所述屬性的集合的屬性表示(74)的用戶密鑰(84), 所述域密鑰(80)是基于: a)父域權(quán)限的域密鑰,或者 b)域權(quán)限的所述層級(jí)結(jié)構(gòu)的根權(quán)限(11)的根密鑰, 并且其中,所述屬性表示(74)獨(dú)立于所述層級(jí)結(jié)構(gòu)。
2.如權(quán)利要求1所述的加密系統(tǒng),其中,所述域權(quán)限是具有原始域密鑰(80)的原始域權(quán)限(13),所述加密系統(tǒng)還包括: 域密鑰生成器(22),其用于生成針對(duì)域權(quán)限的所述層級(jí)結(jié)構(gòu)中的子域權(quán)限(16)的另外的域密鑰,所述另外的域密鑰是基于所述原始域密鑰(80)。
3.如權(quán)利要求2所述的加密系統(tǒng),其中,所述系統(tǒng)包括公共信息(75),所述公共信息(75)包括與域權(quán)限的所述層級(jí)結(jié)構(gòu)有關(guān)的公鑰(71),并且其中,針對(duì)所述子域權(quán)限(16)的所述另外的域密鑰是基于所述公鑰(71)的一部分(73),所述部分(73)未被用于生成所述原始域密鑰(80)并且獨(dú)立于所述屬性。
4.如權(quán)利要求2所述的加密系統(tǒng),其中,對(duì)針對(duì)所述子域權(quán)限(16)的所述另外的域密鑰進(jìn)行安排,以便不允許對(duì)與域權(quán)限的所述層級(jí)結(jié)構(gòu)中的前輩(13、11)相關(guān)聯(lián)的密文的解LU O
5.如權(quán)利要求1所述的加密系統(tǒng),其中,所述屬性表示(74)中的至少一些對(duì)于所述層級(jí)結(jié)構(gòu)中的所述域權(quán)限(11、12、13、15、16)中的一個(gè)或多個(gè)是公開可用的。
6.如權(quán)利要求1所述的加密系統(tǒng),其中,所述用戶密鑰(84)包括: 第一分量(81),其表示域權(quán)限的所述層級(jí)結(jié)構(gòu)中的位置,以及 第二分量(82),其表示分配給所述用戶的所述屬性集合, 其中,所述用戶密鑰生成器(21)被安排用于借助于隨機(jī)值對(duì)所述第一分量(81)與所述第二分量(82)進(jìn)行綁定。
7.如權(quán)利要求1所述的加密系統(tǒng),還包括解密器(19),其被安排用于: 接收與多個(gè)所述屬性上的策略相關(guān)聯(lián)的密文,其中,所述密文還與域權(quán)限的所述層級(jí)結(jié)構(gòu)(11、12、13、15、16)中的至少一部分相關(guān)聯(lián);以及 基于由域權(quán)限的所述層級(jí)結(jié)構(gòu)的所述至少一部分中的域權(quán)限(13)發(fā)布的用戶密鑰(84),來解密所述密文; 其中,如果對(duì)應(yīng)于所述用戶密鑰(84)的所述屬性集合滿足所述密文的所述策略,則所述用戶密鑰(84)能夠進(jìn)行對(duì)所述密文的解密。
8.如權(quán)利要求7所述的加密系統(tǒng),其中,所述用戶密鑰(84)與所述域權(quán)限(16)的所述層級(jí)結(jié)構(gòu)中生成所述用戶密鑰(84)的等級(jí)相關(guān)聯(lián),所述等級(jí)表示所述層級(jí)結(jié)構(gòu)中的前輩(11、13)的數(shù)目,其中,域權(quán)限的所述層級(jí)結(jié)構(gòu)中的所述至少一部分由直到所述層級(jí)結(jié)構(gòu)中的預(yù)定等級(jí)的所述域權(quán)限組成,并且其中,僅在生成所述用戶密鑰的所述域權(quán)限(16)的所述等級(jí)低于或等于所述預(yù)定等級(jí)時(shí),所述用戶密鑰(84)允許對(duì)密文的解密。
9.如權(quán)利要求1所述的加密系統(tǒng),還包括加密器(18),其被安排用于: 基于與域權(quán)限的所述層級(jí)結(jié)構(gòu)中的至少一部分有關(guān)的公鑰信息(71),以及基于一個(gè)或多個(gè)屬性表示(74)來加密消息,以獲得與所述屬性上的策略以及域權(quán)限的層級(jí)結(jié)構(gòu)中的所述至少一部分相關(guān)聯(lián)的密文。
10.如權(quán)利要求7或9所述的加密系統(tǒng),其中,所述層級(jí)結(jié)構(gòu)的所述至少一部分包括根權(quán)限(11)以及所述根權(quán)限的預(yù)定數(shù)目的后代。
11.一種生成用戶密鑰以便在基于分層屬性的加密系統(tǒng)中使用的方法,所述方法包括: 基于a)父域權(quán)限的域密鑰或者b)域權(quán)限的所述層級(jí)結(jié)構(gòu)的根權(quán)限的根密鑰,來生成域密鑰(80), 基于域密鑰(80)和獨(dú)立于域權(quán)限的所述層級(jí)結(jié)構(gòu)的一個(gè)或多個(gè)屬性表示(74),來生成用戶密鑰(84),從而獲得基于針對(duì)分配給所述密鑰的未來擁有者的所述屬性的集合的屬性表示(74)的用戶密鑰(84)。
12.—種對(duì)密文進(jìn)行解密以便在基于分層屬性的加密系統(tǒng)中使用的方法,所述方法包括: 接收與多個(gè)屬性上的策略相關(guān)聯(lián)的密文,其中,所述密文還與域權(quán)限的層級(jí)結(jié)構(gòu)中的至少一部分相關(guān)聯(lián);以及` 基于由域權(quán)限的所述層級(jí)結(jié)構(gòu)中的所述至少一部分中的域權(quán)限發(fā)布的用戶密鑰(84)來解密所述密文,其中,所述用戶密鑰(84)與所述屬性的集合(83)相關(guān)聯(lián), 其中,僅在對(duì)應(yīng)于所述用戶密鑰(84)的所述屬性集合滿足所述密文的所述策略時(shí),能夠進(jìn)行對(duì)所述密文的所述解密。
13.—種對(duì)消息進(jìn)行加密以便在基于分層屬性的加密系統(tǒng)中使用的方法,所述方法包括: 基于與域權(quán)限的層級(jí)結(jié)構(gòu)中的至少一部分有關(guān)的公鑰信息(71)以及基于一個(gè)或多個(gè)屬性表示(74)來加密消息,從而獲得與所述屬性上的策略以及域權(quán)限的層級(jí)結(jié)構(gòu)中的所述至少一部分相關(guān)聯(lián)的密文。
14.一種計(jì)算機(jī)程序產(chǎn)品,包括用于使得計(jì)算機(jī)系統(tǒng)執(zhí)行權(quán)利要求11至13的所述方法中任一方法的指令。
【文檔編號(hào)】H04L9/08GK103891195SQ201280048688
【公開日】2014年6月25日 申請(qǐng)日期:2012年9月21日 優(yōu)先權(quán)日:2011年9月28日
【發(fā)明者】M·阿希姆, T·伊格納堅(jiān)科, M·彼特科維克 申請(qǐng)人:皇家飛利浦有限公司