專利名稱:使用基于屬性的加密的數(shù)字權(quán)利管理的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及數(shù)字權(quán)利管理。本發(fā)明進(jìn)一步涉及提供受保護的數(shù)據(jù)和訪問受保護的數(shù)據(jù)。
背景技術(shù):
現(xiàn)代健康護理通信架構(gòu)往往是開放的、互連的環(huán)境敏感的患者記錄不再存在于健康護理提供者內(nèi)部物理隔離的主機(在這里可以采取物理安全措施來保護數(shù)據(jù)和系統(tǒng))上?;颊呶募鼞?yīng)該保存在數(shù)據(jù)外包(outsource)給部分可信的服務(wù)器或者在部分可信的服務(wù)器上處理的環(huán)境中,以便使家庭醫(yī)生、醫(yī)學(xué)專家甚至是非醫(yī)學(xué)護理提供者去集中(de-centralize)地訪問。為了使記錄在不同的健康護理提供者之中共享或者與外部方共 享,可以利用促進(jìn)以數(shù)據(jù)為中心的保護的端對端的安全技術(shù)密碼保護數(shù)據(jù)并使數(shù)據(jù)外包或者甚至自由地浮(float)于網(wǎng)絡(luò)上。DRM是用于提供端對端安全的有效解決方案。在DRM系統(tǒng)中,用個人用戶的公鑰對內(nèi)容密鑰進(jìn)行加密。在接收到包括加密的內(nèi)容密鑰的DRM許可證和受保護的內(nèi)容時,通過使用個人的私鑰來解密內(nèi)容密鑰。然后,使用解密的內(nèi)容密鑰來解密所述內(nèi)容。這種解決方案目前用于諸如音樂和視頻分配等娛樂情境中。在健康護理情境中,基于諸如用戶的職責(zé)、隸屬部門、所屬團體和/或語境信息等用戶的屬性,來授權(quán)對數(shù)據(jù)的訪問。例如,策略可以是僅與直接護理提供者共享患者數(shù)據(jù),這里直接護理提供者可以包括許多不同的個人。當(dāng)不同的個人請求患者的PHR時,服務(wù)器必須確定哪些個人滿足策略(基于他們的屬性),用每個個人的公鑰加密內(nèi)容密鑰,并且存儲和管理每個個體的密鑰。Jordan C. N. Chong 等的論文 “Security Attributes Based DigitalRights Management”, Protocols and Systems for Interactive DistributedMultimedia, Lecture Notes in Computer Science, 2515/2002 卷,339-352 頁提出了通過引入負(fù)責(zé)發(fā)布不同證書(即身份證書、屬性證書和數(shù)字證書)的多個權(quán)限的數(shù)字權(quán)利管理系統(tǒng)。當(dāng)前技術(shù)水平的DRM系統(tǒng)基于身份證書運行,該身份證書將用戶的身份與他/她的公鑰綁定在一起。在請求內(nèi)容期間,用戶對適當(dāng)?shù)臋?quán)限出示此證書。在成功評估身份證書之后,對用戶發(fā)布數(shù)字許可證,他/她可以使用該數(shù)字許可證來解密內(nèi)容,并且DRM客戶端會實施許可證中概述的數(shù)字權(quán)利。在所引用的論文中,介紹了第二級控制屬性證書。在成功評估身份證書和屬性證書兩者之后,發(fā)布數(shù)字許可證。數(shù)字許可證包含用用戶的公鑰加密的內(nèi)容密鑰,該內(nèi)容密鑰能夠由DRM客戶端使用相應(yīng)的私鑰來解密。
發(fā)明內(nèi)容
具有改善的數(shù)字權(quán)利管理系統(tǒng)將是有利的。為了更好地解決此關(guān)注,本發(fā)明的第一方面提供了用于數(shù)字權(quán)利管理系統(tǒng)的數(shù)據(jù)提供器,包括-數(shù)據(jù)保護器,其用于根據(jù)多個屬性之上的訪問策略,使用基于屬性的加密來保護數(shù)據(jù);以及
-許可證發(fā)布器,其用于發(fā)布包括使用權(quán)的集合的表示的許可證,其中所述使用權(quán)的集合與所述數(shù)據(jù)有關(guān),以便對具有滿足所述訪問策略的屬性的多個實體授予關(guān)于所述數(shù)據(jù)的所述使用權(quán)。
由于使用基于屬性的加密來保護數(shù)據(jù),所以可以使用屬性的集合之上的策略來控制對數(shù)據(jù)的訪問。這樣,不必要對用戶單獨發(fā)布加密的信息。相反,基于屬性的加密允許產(chǎn)生可由多個用戶訪問的單個數(shù)據(jù)的表示。這樣,可以降低例如在密鑰管理復(fù)雜度和/或計算復(fù)雜度方面的開銷。此外,通過許可證控制使用權(quán)。因為可以構(gòu)造許可證,使其適用于所有能夠使用他們的解密密鑰來訪問受保護的數(shù)據(jù)的用戶,所以這使得可以通過單個許可證對用戶組設(shè)置使用權(quán)。數(shù)據(jù)可以包括內(nèi)容。數(shù)據(jù)保護器可以包括-密鑰加密器,其用于使用所述基于屬性的加密來加密內(nèi)容密鑰的表示,以獲得加密的內(nèi)容密鑰;以及-內(nèi)容加密器,其用于基于所述內(nèi)容密鑰來加密所述內(nèi)容。由于基于屬性的加密,能夠通過加密來實施基于屬性的訪問策略。滿足訪問策略的解密密鑰能夠用于解密加密的內(nèi)容密鑰。因此,不必要對每個具有訪問權(quán)利的用戶單獨加密內(nèi)容密鑰。相反,其(唯一的)解密密鑰滿足訪問策略的個體用戶能夠使用相同的加密的內(nèi)容密鑰。這使得密鑰管理更加簡單?;蛘?,數(shù)據(jù)保護器可以包括數(shù)據(jù)加密器,其用于使用基于屬性的加密來加密所述數(shù)據(jù)。可以用基于屬性的加密直接加密數(shù)據(jù)或內(nèi)容。可以省略對稱的內(nèi)容密鑰的加密?;趯傩缘募用芸梢园ɑ诿芪牟呗詫傩缘募用堋_@里,密文與屬性的集合之上的策略有關(guān);密鑰與一個或多個屬性有關(guān)??梢栽O(shè)置許可證發(fā)布器,以包括許可證中的訪問策略的表示。這樣,從許可證中可以清楚哪些解密密鑰可以用來訪問數(shù)據(jù)。系統(tǒng)可以包括密鑰生成器,其用于生成與多個屬性的子集有關(guān)的私鑰。這種私鑰能夠分配至屬性的子集所適用于的用戶。然后,該用戶可以使用密鑰來訪問所保護的數(shù)據(jù)。例如,這使得對用戶的不同角色或關(guān)聯(lián)提供屬性。本發(fā)明的另一方面提供了用于數(shù)字權(quán)利管理系統(tǒng)的數(shù)據(jù)接收器,包括-數(shù)據(jù)訪問子系統(tǒng),其用于根據(jù)與屬性的集合有關(guān)的解密密鑰,使用基于屬性的解密來訪問數(shù)據(jù);以及-使用約束子系統(tǒng),其用于基于包括與所述數(shù)據(jù)有關(guān)的使用權(quán)的集合的表示的許可證,來約束對所述數(shù)據(jù)的訪問。當(dāng)根據(jù)訪問策略限制解密能力時,通過許可證能夠給這種類型的數(shù)據(jù)接收器使用權(quán)。與屬性的集合有關(guān)的解密密鑰確定通過基于屬性的解密接收器能夠訪問哪些數(shù)據(jù)。因為相同的密文能夠由具有與滿足訪問策略的屬性有關(guān)的密鑰的不同的接收器解密,所以不必對相同信息加密多次并隨后將這些不同加密的拷貝傳輸至單獨的接收器。這可以降低計算開銷并且可以使數(shù)據(jù)管理更加簡單。使用約束子系統(tǒng)可以應(yīng)用許可證中所規(guī)定的使用權(quán)。這樣,可以實現(xiàn)具體的使用權(quán)。數(shù)據(jù)可以包括內(nèi)容。數(shù)據(jù)訪問子系統(tǒng)可以包括-密鑰解密器,其用于使用基于屬性的解密來解密加密的內(nèi)容密鑰的表示,以獲得解密的內(nèi)容密鑰;以及-內(nèi)容解密器,其用于基于解密的內(nèi)容密鑰的表示來解密內(nèi)容。在此系統(tǒng)中,內(nèi)容密鑰的表示僅需要加密一次,使其能夠由具有適當(dāng)?shù)摹⑾鄳?yīng)的解密密鑰的多個接收器解密。能夠使用內(nèi)容密鑰來解密內(nèi)容,這可以比基于屬性的解密更有效。由于結(jié)合了數(shù)字權(quán)利管理和基于屬性的加密的優(yōu)點,所以密鑰解密器和內(nèi)容解密器有效地實現(xiàn)了基于策略的訪問控制。數(shù)據(jù)訪問子系統(tǒng)可以包括數(shù)據(jù)解密器,其用于使用基于屬性的解密來解密數(shù)據(jù)。這是可選的方案,其可以在不使用分離加密的內(nèi)容密鑰的情況下實現(xiàn)??梢越Y(jié)合使用所闡述的數(shù)據(jù)提供器和數(shù)據(jù)接收器,其中數(shù)據(jù)提供器可以提供數(shù)據(jù)接收器可以訪問的數(shù)據(jù)。本發(fā)明的另一方面提供了用于數(shù)字權(quán)利管理系統(tǒng)的許可證,包括使用權(quán)的集合的表示,其中使用權(quán)的集合與根據(jù)屬性的集合之上的訪問策略而使用基于屬性的加密所保護 的數(shù)據(jù)有關(guān)。能夠結(jié)合基于屬性的加密使用這種類型的許可證來保護數(shù)據(jù)。許可證可以用于所有其解密密鑰能夠用于訪問數(shù)據(jù)的接收器?;蛘?,可以向不同接收器提供定義不同使用權(quán)的不同許可證。本發(fā)明的另一方面提供了包括如上所述的數(shù)據(jù)接收器的計算機系統(tǒng),其用于訪問由如上所述的數(shù)據(jù)提供器提供的個人健康記錄。本發(fā)明的另一方面提供了用于數(shù)字權(quán)利管理系統(tǒng)的提供數(shù)據(jù)的方法,包括-根據(jù)多個屬性之上的訪問策略,使用基于屬性的加密來保護數(shù)據(jù);以及-發(fā)布包括使用權(quán)的集合的表示的許可證,其中所述使用權(quán)的集合與所述數(shù)據(jù)有關(guān),以便對具有滿足所述訪問策略的屬性的多個實體授予關(guān)于所述數(shù)據(jù)的所述使用權(quán)。本發(fā)明的另一方面提供了用于數(shù)字權(quán)利管理系統(tǒng)的接收數(shù)據(jù)的方法,包括-根據(jù)與屬性的集合有關(guān)的解密密鑰,使用基于屬性的解密來訪問數(shù)據(jù);以及基于包括與所述數(shù)據(jù)有關(guān)的使用權(quán)的集合的表示的許可證,來約束對至少部分所述數(shù)據(jù)的所述訪問。本發(fā)明的另一方面提供了包括計算機可讀指令的計算機程序產(chǎn)品,所述計算機可讀指令用于使處理器系統(tǒng)執(zhí)行所闡述的方法中的任一個或兩者。本領(lǐng)域技術(shù)人員會理解可以以任何認(rèn)為有用的方式來結(jié)合上述實施例、實施方式和/或本發(fā)明的方面中的兩個或更多個。基于本描述,本領(lǐng)域技術(shù)人員能夠進(jìn)行對應(yīng)于所描述的系統(tǒng)的修改和變型的圖像采集裝置、工作站、系統(tǒng)和/或計算機程序產(chǎn)品的修改和變型。
根據(jù)以下描述的實施例,本發(fā)明的這些和其它方面會變得明顯,并且將會參照以下描述的實施例來闡明本發(fā)明的這些和其它方面。在附圖中圖I是數(shù)字權(quán)利管理系統(tǒng)的示圖;圖2是提供數(shù)據(jù)的方法的流程圖;圖3是接收數(shù)據(jù)的方法的流程圖;圖4是現(xiàn)有技術(shù)的DRM系統(tǒng)的示圖;以及
圖5至7是DRM系統(tǒng)的不同架構(gòu)的示圖。
具體實施例方式圖4示出了數(shù)字權(quán)利管理(DRM)系統(tǒng)的總體架構(gòu)的示例。由M. Petkovic和IJonker (eds.)的 “Security, Privacy and Trust in modern data management,,,PartIV ;Spinger-Verlag,2007獲知這種系統(tǒng)。所示的系統(tǒng)可以包括至少三個部件。提供數(shù)據(jù)404的數(shù)據(jù)服務(wù)器401,數(shù)據(jù)404例如為一個或多個由DRM系統(tǒng)保護的信息記錄/文件(或內(nèi)容)??梢酝ㄟ^用合適的加密密鑰(諸如內(nèi)容密鑰)加密數(shù)據(jù)404來實現(xiàn)保護。設(shè)置許可證服務(wù)器402來提供許可證405,許可證405準(zhǔn)許訪問受保護的信息404并且描述了在什么條件(使用權(quán))下允許誰/什么(目標(biāo))來訪問信息。許可證402可以包含內(nèi)容密鑰的加密版本。這種許可證(或部分許可證)可以以二進(jìn)制形式來編碼,或者作為諸如公開數(shù)字權(quán)利語言(0DRL)、或MPEG21或另一形式的計算機可編譯數(shù)據(jù)等基于xml的語言中的字符串??梢栽试SDRM客戶端403訪問受保護的數(shù)據(jù)。DRM客戶端可以包括將依照DRM系統(tǒng)以及許可證中所描述的策略和使用權(quán)所固有的策略和使用權(quán)而工作的抗干擾部件。DRM 客戶端可以在由用戶控制的設(shè)備上實現(xiàn)。數(shù)據(jù)服務(wù)器401和許可證服務(wù)器402可以在信息所有者的控制之下。這兩個部件可以在或者可以不在同一物理服務(wù)器設(shè)備上實現(xiàn)。如果用戶想要訪問信息404的某個片段,則用戶可以使用DRM客戶端403來獲取受保護的(例如,加密的)信息記錄404。由于兼容的(compliant)DRM客戶端403不會在沒有許可證405的情況下訪問信息,所以DRM客戶端也可以從許可證服務(wù)器獲取許可證405。如在許可證405中所提到的,通過對于DRM系統(tǒng)可以是特定的密鑰管理模式,DRM客戶端403能夠查找到鏈接至目標(biāo)信息記錄404的解密密鑰,從而解密內(nèi)容密鑰。這種密鑰管理模式可以包括加密的密鑰的分級,其中最后一個密鑰可以包括內(nèi)容密鑰而其它密鑰可以用來有效尋址和/或選擇目標(biāo)(即,受保護的數(shù)據(jù)所尋址到的一個或多個用戶)。內(nèi)容密鑰能夠用來解密信息記錄404。當(dāng)且僅當(dāng)滿足使用權(quán)所規(guī)定的所有條件時,DRM客戶端403可以使用內(nèi)容密鑰來解密信息記錄404。圖I示出了包括數(shù)據(jù)提供器I和數(shù)據(jù)接收器10的數(shù)字權(quán)利管理(DRM)系統(tǒng)的示圖。系統(tǒng)可以包括多個數(shù)據(jù)提供器I和/或多個數(shù)據(jù)接收器10。例如,可以實現(xiàn)包括數(shù)據(jù)提供器I的集中式數(shù)據(jù)儲存庫。這種數(shù)據(jù)可以由多個數(shù)據(jù)接收器10中的任一個來從集中式數(shù)據(jù)儲存庫獲得。數(shù)據(jù)提供器I可以通過網(wǎng)絡(luò)連接至數(shù)據(jù)接收器10。也有可能來自數(shù)據(jù)提供器I的數(shù)據(jù)存儲在分離的數(shù)據(jù)庫中,或者存儲在可由數(shù)據(jù)接收器10訪問的可移動存儲介質(zhì)上。如以下將會解釋的,數(shù)據(jù)提供器I可以包括使用基于屬性的加密來保護數(shù)據(jù)20的數(shù)據(jù)保護器2。可以根據(jù)多個屬性之上的訪問策略,執(zhí)行該基于屬性的加密。數(shù)據(jù)提供器I還可以包括用于發(fā)布許可證17的許可證發(fā)布器3,許可證發(fā)布器3包括使用權(quán)18的集合的表示。該使用權(quán)18的集合可以與數(shù)據(jù)20有關(guān)。例如,在許可證17中可以包括關(guān)聯(lián)19。例如,這種關(guān)聯(lián)可以包括數(shù)據(jù)的標(biāo)識符或數(shù)據(jù)20的統(tǒng)一資源定位符(URL)。許可證17可以用來授予關(guān)于數(shù)據(jù)20的使用權(quán)18??梢詫⑦@些使用權(quán)授予具有滿足訪問策略的屬性的多個實體10,數(shù)據(jù)保護器2使用該訪問策略來保護數(shù)據(jù)20。有可能對具有滿足數(shù)據(jù)保護器2所使用的訪問策略的屬性的實體10的子集授予使用權(quán)。
數(shù)據(jù)提供器I可以使用內(nèi)容密鑰加密模式。在此描述中,將使用這種內(nèi)容密鑰加密模式所保護的數(shù)據(jù)稱為內(nèi)容。在這種情況下,數(shù)據(jù)保護器2可以包括密鑰加密器4,該密鑰加密器4用于使用基于屬性的加密來加密內(nèi)容密鑰,以獲得加密的內(nèi)容密鑰。數(shù)據(jù)保護器2還可以包括內(nèi)容加密器5,該內(nèi)容加密器5用于基于該內(nèi)容密鑰來加密內(nèi)容。數(shù)據(jù)保護器2可以使用不同的加密密鑰和/或策略來加密內(nèi)容密鑰的多個拷貝,從而使內(nèi)容密鑰能夠由不同的用戶和/或用戶組加密。可以使用相同的內(nèi)容密鑰來加密一次數(shù)據(jù)。在此示例中,描述了兩級密鑰管理分級(加密的數(shù)據(jù)和加密的內(nèi)容密鑰)。然而,這不是限制。更深分級也是有可能的。這種分級可以是樹狀分級。部分分級可以與目標(biāo)有關(guān),部分分級可以與內(nèi)容有關(guān)。為了密鑰分配中的效率和/或訪問(部分)數(shù)據(jù)的效率,可以引入這種分級?;蛘撸瑪?shù)據(jù)提供器I可以包括數(shù)據(jù)加密器6,該數(shù)據(jù)加密器6用于使用基于屬性的加密來加密數(shù)據(jù)20。在這種情況下,不需要中間內(nèi)容密鑰。
可以設(shè)置數(shù)據(jù)保護器2 (特別是內(nèi)容密鑰加密器4和/或數(shù)據(jù)加密器6)所使用的基于屬性的加密,以便執(zhí)行基于密文策略屬性的加密。這種加密產(chǎn)生了能夠用解密密鑰來解密的密文,該解密密鑰與滿足由訪問策略定義的一些特殊約束的屬性的集合有關(guān)??梢栽O(shè)置許可證發(fā)布器3以包括許可證17中的訪問策略21的表示。這允許數(shù)據(jù)接收器10容易地確定它是否已經(jīng)通過評估許可證來訪問數(shù)據(jù)。然后,數(shù)據(jù)接收器10不需要處理數(shù)據(jù)20,以便知道它是否能夠解密數(shù)據(jù)20。數(shù)據(jù)提供器I可以包括密鑰生成器7,該密鑰生成器7用于生成與多個屬性的子集有關(guān)的私鑰。該私鑰可以是用于諸如基于密文策略屬性的加密等基于屬性的加密模式的解密密鑰。這種私鑰可以分配至系統(tǒng)中的數(shù)據(jù)接收器10。對于密鑰的分配而言,可以使用私人帶外信道,然而這不是限制。圖中示出了用于數(shù)字權(quán)利管理系統(tǒng)的數(shù)據(jù)接收器10的示例。實際上,更多這種數(shù)據(jù)接收器可以參與到數(shù)字權(quán)利管理系統(tǒng)中。數(shù)據(jù)接收器10可以包括數(shù)據(jù)訪問子系統(tǒng)11,該數(shù)據(jù)訪問子系統(tǒng)11用于使用基于屬性的解密來訪問數(shù)據(jù)20。根據(jù)與屬性的集合有關(guān)的解密密鑰16,可以執(zhí)行這種基于屬性的解密。數(shù)據(jù)接收器10還可以包括使用約束子系統(tǒng)12。這種使用約束子系統(tǒng)12可以基于許可證17來約束對數(shù)據(jù)20的訪問。許可證17可以包括使用權(quán)18的集合的表示,使用權(quán)18的集合通過關(guān)聯(lián)19與數(shù)據(jù)20有關(guān)。例如通過阻擋任何會侵犯使用權(quán)18的動作,使用約束子系統(tǒng)12可以實施這些使用權(quán)18。可以使這種使用約束子系統(tǒng)12以及數(shù)據(jù)訪問子系統(tǒng)11和/或解密密鑰16抗干擾,以避免簡單繞過使用權(quán)18。如上所述,數(shù)據(jù)20可以包括內(nèi)容和/或加密的內(nèi)容密鑰。這種數(shù)據(jù)可以由包括密鑰解密器13和內(nèi)容解密器14的數(shù)據(jù)訪問子系統(tǒng)11來訪問??梢栽O(shè)置密鑰解密器13,以便使用基于屬性的解密來解密加密的內(nèi)容密鑰。通過這種方式,獲得了解密的內(nèi)容密鑰??梢栽O(shè)置內(nèi)容解密器14,以便基于解密的內(nèi)容密鑰來解密內(nèi)容。例如,由內(nèi)容解密器14執(zhí)行的該后面的解密步驟可以基于對稱密鑰解密?;蛘?,數(shù)據(jù)訪問子系統(tǒng)11可以包括數(shù)據(jù)解密器15,該數(shù)據(jù)解密器15用于使用基于屬性的解密來直接解密數(shù)據(jù)20??梢杂糜跀?shù)字權(quán)利管理系統(tǒng)的許可證17可以包括使用權(quán)18的集合的表示、使用權(quán)的集合與數(shù)據(jù)20的關(guān)聯(lián)19,該數(shù)據(jù)20根據(jù)屬性的集合之上的訪問策略而使用基于屬性的加密來保護。許可證還可以包括訪問策略21的表示,訪問策略21用于數(shù)據(jù)20的保護中的基于屬性的加密步驟中。例如,數(shù)據(jù)可以包括一個或多個個人健康記錄??梢杂没诓煌脑L問策略的加密來保護不同的數(shù)據(jù)項。此外,不同的許可證可以與不同的數(shù)據(jù)項有關(guān)。多于一個的許可證可以與相同的數(shù)據(jù)片段有關(guān)。例如,不同的許可證可以用于不同的用戶,或者可以用于在不同的時間間隔期間使用。為此,許可證可以包括對有效期的描述。數(shù)據(jù)接收器10可以是例如PC的計算機系統(tǒng)的部分,所述計算機系統(tǒng)還包括使用戶能控制計算機系統(tǒng)的用戶界面、用于顯示數(shù)據(jù)的表示的顯示器、用于允許通過有線或無線網(wǎng)絡(luò)的通信的通信端口,和/或用于處理可移動存儲介質(zhì)的讀取器和/或?qū)懭肫鳌?shù)據(jù)和/或許可證可以通過網(wǎng)絡(luò)和/或可移動存儲介質(zhì)來傳遞。圖2示出了用于數(shù)字權(quán)利管理系統(tǒng)的提供數(shù)據(jù)的方法。該方法可以包括根據(jù)多個 屬性之上的訪問策略而使用基于屬性的加密來保護數(shù)據(jù)的步驟201。該方法還可以包括發(fā)布包括使用權(quán)的集合的表示的許可證的步驟202,其中使用權(quán)的集合與數(shù)據(jù)有關(guān),以便對具有滿足訪問策略的屬性的多個實體授予關(guān)于數(shù)據(jù)的使用權(quán)。許可證還可以包括訪問策略的表不。圖3示出了用于數(shù)字權(quán)利管理系統(tǒng)的接收數(shù)據(jù)的方法。該方法可以包括根據(jù)與屬性的集合有關(guān)的解密密鑰而使用基于屬性的解密來訪問數(shù)據(jù)的步驟301。該方法還可以包括基于包括與數(shù)據(jù)有關(guān)的使用權(quán)的集合的表示的許可證,限制對至少部分?jǐn)?shù)據(jù)的訪問的步驟302。許可證還可以包括訪問策略的表示??梢葬槍傩缘募掀ヅ湓撛L問策略的表示,以便驗證許可證是否意在結(jié)合屬性的集合使用。如果屬性的集合不符合訪問策略,則該方法可以包括拒絕訪問數(shù)據(jù)和/或拒絕使用許可證??梢酝ㄟ^計算機程序產(chǎn)品來實現(xiàn)這些方法,該計算機程序產(chǎn)品包括用于使處理器系統(tǒng)執(zhí)行相應(yīng)方法的計算機可讀指令。即使在加密了數(shù)據(jù)之后,由訪問策略和使用權(quán)所反映的用戶的特權(quán)也可以隨時間而變。這種特權(quán)的變化可以通過提供具有與不同屬性的集合有關(guān)的新解密密鑰16的接收器10來實現(xiàn)。另外,可以提供新許可證。然而,也有可能能夠使用相同的許可證,在此情況下,解密密鑰16確定特定許可證對接收器10是否有效。例如,能夠通過基于屬性的加密來加密許可證,其中基于接收器的解密密鑰16,基于屬性的加密的策略確定許可證是否適用于特定接收器10。敏感健康信息的共享和分配引起了關(guān)于訪問控制的特殊問題。基于用戶的屬性(例如,用戶的角色、與部門的隸屬關(guān)系,等等),可以支配對數(shù)據(jù)的訪問。圖5、6和7示出了 DRM系統(tǒng)架構(gòu)的示例。可以使用針對圖I所描述的數(shù)據(jù)提供器I和/或數(shù)據(jù)接收器10來實現(xiàn)這些架構(gòu)。另外,可以結(jié)合這些示例架構(gòu)中的任一個來使用針對圖2和3所解釋的方法??梢允褂糜诖岁U述的產(chǎn)品和方法來實現(xiàn)附圖中未示出的其它架構(gòu)。在附圖中,用相同的附圖標(biāo)記來標(biāo)記相似的處理步驟和對象。參照圖5,在步驟SI中,數(shù)據(jù)所有者501使用諸如高級加密標(biāo)準(zhǔn)(AES)等任何當(dāng)前技術(shù)水平的分組密碼,用內(nèi)容加密密鑰CK來加密他或她的內(nèi)容(例如個人健康記錄),并將其存儲在諸如基于網(wǎng)絡(luò)的數(shù)據(jù)儲存庫等后端服務(wù)502上。
在步驟S2中,數(shù)據(jù)所有者501用規(guī)定了數(shù)據(jù)所有者501愿意對誰共享他/她的內(nèi)容的屬性的集合之上的訪問策略P來加密內(nèi)容密鑰CK。在步驟S3中,數(shù)據(jù)所有者501發(fā)送加密的內(nèi)容密鑰CK和策略P(即Eep ABE (CK),P ),根據(jù)該策略P,對可信的第三方503加密CK。在此示例中,所使用的加密模式是基于密文策略屬性的加密CP-ABE。然而,這不是限制。在步驟S4中,用戶505通過客戶端設(shè)備或數(shù)據(jù)接收器504,從后端服務(wù)502請求內(nèi)容。在步驟S5中,后端服務(wù)502發(fā)送內(nèi)容至數(shù)據(jù)接收器504。數(shù)據(jù)以加密的形式發(fā)送。在步驟S6中,數(shù)據(jù)接收器504從可信的第三方503請求許可證。該請求可以包含用戶505的屬性并且還可以包含其它信息,諸如用戶想要在數(shù)據(jù)上執(zhí)行的動作和使用的目 的等。在用戶的屬性和其它可能的信息的驗證之后,在步驟S7中,可信的第三方503會將所請求的許可證發(fā)送至DRM客戶端。許可證可以包含使用權(quán)、加密的內(nèi)容密鑰和/或其它信息,諸如許可證的發(fā)布器等。在步驟S8中,DRM客戶端設(shè)備或數(shù)據(jù)接收器504為用戶解密內(nèi)容,并實施使用許可證中所描述的使用權(quán)。圖6示出了另一架構(gòu)。在圖6中所示的架構(gòu)中,在步驟SI中,數(shù)據(jù)所有者501使用諸如高級加密標(biāo)準(zhǔn)(AES)等任何當(dāng)前技術(shù)水平的分組密碼,用內(nèi)容加密密鑰CK來加密他或她的數(shù)據(jù)(諸如PHR或內(nèi)容)。另外,根據(jù)規(guī)定了患者愿意對誰共享他/她的數(shù)據(jù)(諸如PHR或內(nèi)容等)的屬性的集合之上的訪問策略P,數(shù)據(jù)所有者501使用基于屬性的加密來加密內(nèi)容密鑰CK。在步驟S2中,數(shù)據(jù)所有者501在后端服務(wù)502上連同加密的許可證(可以包含使用ABE加密的所加密的內(nèi)容密鑰)一起存儲加密的數(shù)據(jù)。在可信的第三方503驗證了用戶505的身份之后,可信的第三方503向數(shù)據(jù)接收器504提供與用戶505的屬性有關(guān)的私人解密密鑰。在步驟S3中,數(shù)據(jù)接收器504從后端服務(wù)502請求數(shù)據(jù)。在步驟S4中,后端服務(wù)502將加密的數(shù)據(jù)連同許可證一起發(fā)送至請求數(shù)據(jù)接收器504。在步驟S5中,數(shù)據(jù)接收器504使用用戶505的私鑰來解密內(nèi)容密鑰CK。在這里,假設(shè)DRM客戶端已經(jīng)具有與用戶的屬性有關(guān)的私鑰(或多個私鑰)。此私鑰已經(jīng)由可信的第三方503發(fā)布。然后,數(shù)據(jù)接收器504使用內(nèi)容密鑰CK來解密內(nèi)容。DRM客戶端實施許可證中所描述的使用權(quán)。圖7示出了替代的架構(gòu)。在此架構(gòu)中,直接使用ABE來加密內(nèi)容。在圖7中所示的步驟SI中,根據(jù)規(guī)定了數(shù)據(jù)所有者愿意與誰共享他/她的數(shù)據(jù)的屬性的集合之上的訪問策略P,數(shù)據(jù)所有者501直接使用ABE來加密他或她的數(shù)據(jù)(諸如個人健康記錄或其它內(nèi)容等)。在步驟S2中,數(shù)據(jù)所有者501在后端服務(wù)502上存儲加密的數(shù)據(jù)和有關(guān)的受保護的許可證。對于其它架構(gòu)而言,可以通過數(shù)字簽名或者通過加密或相反來保護許可證。許可證可以包含據(jù)以加密數(shù)據(jù)的策略、關(guān)于內(nèi)容的使用權(quán)限和/或一些其它信息,諸如關(guān)于證書的簽名人的信息。在可信的第三方503驗證了用戶505的身份和屬性之后,可信的第三方503可以向數(shù)據(jù)接收器504提供與用戶505的屬性有關(guān)的私鑰。
在步驟S3中,用戶505通過客戶端設(shè)備或數(shù)據(jù)接收器504,從后端服務(wù)502請求數(shù)據(jù)。在步驟S4中,后端服務(wù)502將加密的數(shù)據(jù)和許可證發(fā)送至請求數(shù)據(jù)接收器504。在步驟S5中,客戶端設(shè)備504使用ABE的解密算法并使用與用戶的屬性有關(guān)的私鑰來解密數(shù)據(jù)。數(shù)據(jù)接收器504實施許可證中所描述的使用許可。在下文中,通過示例的方式,描述了待與數(shù)字權(quán)利管理系統(tǒng)一起使用的許可證的可能結(jié)構(gòu)。許可證可以包括諸如許可證的發(fā)布器、版本號等總體信息。許可證還可以包括關(guān)于許可證的目標(biāo)的信息(描述許可證意在給誰使用權(quán))。這種目標(biāo)信息可以包括目標(biāo)用戶或目標(biāo)設(shè)備的標(biāo)識符。附加地或替代地,目標(biāo)信息可以包括多個屬性之上的策略。在后一情況下,目標(biāo)信息可以通過組中的各個成員的屬性之上的策略來表示數(shù)據(jù)接收器或用戶組。許可證還可以包括使用策略的表示。這種使用策略可以描述授予一個或多個目標(biāo)用戶和/或一個或多個數(shù)據(jù)接收器的使用權(quán)。取決于所使用的特定保護模式,許可證可以包括使用基于屬性的加密而加密的內(nèi)容密鑰。替代地或附加地,許可證可以包括受保護的內(nèi)容的鏈接或索引或標(biāo)識符。也可以省略這種鏈接。在后一情況下,內(nèi)容可以包括一個或多個可適用的許可證的標(biāo)識符?;诿芪牟呗詫傩缘募用芩惴梢园ㄒ韵滤姆N可以在加密模式下由不同施動者運行的主要算法。Setup(Ik):配置算法可以具有作為輸入的隱含安全參數(shù)??梢暂敵龉脜?shù)PK和主密鑰MK。此算法可以由受信任方運行。Key Generation (MK, S):密鑰生成算法可以視為輸入主密鑰MK和與待生成的密鑰有關(guān)的屬性的集合S??梢暂敵鏊借€SK。此算法可以由受信任方運行。Encrypt (PK, M, P):加密算法可以視為輸入公用參數(shù)PK、消息M和屬性總體之上的策略P。該算法可以加密M并產(chǎn)生密文C,從而僅使擁有與滿足訪問策略P的屬性的集合有關(guān)的密鑰的用戶能夠解密消息。消息M可以包括使用CP-ABE加密的內(nèi)容密鑰(CK)。此算法可以由數(shù)據(jù)所有者運行。Decrypt (C, SK):解密算法可以視為輸入與訪問策略P有關(guān)的密文C和與屬性的集合S有關(guān)的私鑰SK。如果屬性的集合S滿足訪問策略P,則該算法能夠解密密文并且可以返回解密的消息M。此算法可以由DRM客戶端或數(shù)據(jù)接收器運行。這種數(shù)據(jù)接收器可以由可以請求訪問數(shù)據(jù)的終端用戶控制。該終端用戶可以是數(shù)據(jù)所有者的醫(yī)生、護士、朋友或家庭成員。數(shù)據(jù)提供器可以包括以訪問受控的方式提供健康數(shù)據(jù)的醫(yī)學(xué)數(shù)據(jù)儲存庫或服務(wù)器。然而,諸如版權(quán)保護、使用在線媒體分配或可移動存儲媒體等其它應(yīng)用也是可能的。應(yīng)當(dāng)理解本發(fā)明也適用于適合將本發(fā)明付諸實踐的計算機程序,特別是載體上或載體中的計算機程序。該程序可以具有源代碼、目標(biāo)代碼、中間源代碼和諸如部分編譯形式的目標(biāo)代碼的形式,或者具有適合在根據(jù)本發(fā)明的方法的實施方式中使用的任何其它形式。還應(yīng)當(dāng)理解這種程序可以具有許多不同的架構(gòu)設(shè)計。例如,可以將實現(xiàn)根據(jù)本發(fā)明的方法或系統(tǒng)的功能的程序代碼劃分為一個或多個子例程。在這些子例程之中分配功能的許多不同的方法對本領(lǐng)域技術(shù)人員來說將會是明顯的。子例程可以一起存儲在一個可執(zhí)行文件中,以形成自包含的程序。這種可執(zhí)行文件可以包括計算機可執(zhí)行指令,例如,處理器指在至少一個外部庫文件中,并且例如在運行時間時,與主程序靜態(tài)或動態(tài)地鏈接。主程序包含對至少一個子例程的至少一次調(diào)用。子例程還可以包括互相的功能調(diào)用。涉及計算機程序產(chǎn)品的實施例包括對應(yīng)于于此闡述的至少一種方法的每個處理步驟的計算機可執(zhí)行指令??梢詫⑦@些指令劃分為子例程和/或存儲在一個或多個可以被靜態(tài)或動態(tài)鏈接的文件中。涉及計算機程序產(chǎn)品另一實施例包括對應(yīng)于于此闡述的至少一種系統(tǒng)和/或產(chǎn)品的每個模塊的計算機可執(zhí)行指令??梢詫⑦@些指令劃分為子例程和/或存儲在一個或多個可以被靜態(tài)或動態(tài)鏈接的文件中。計算機程序的載體可以是能承載程序的任何實體或設(shè)備。例如,該載體可以包括存儲介質(zhì),諸如ROM等,例如,CD-ROM或半導(dǎo)體R0M,或例如軟盤或硬盤的磁性記錄介質(zhì)。此夕卜,載體可以是可傳輸諸如電信號或光信號等的載體,該電信號或光信號可以通過電纜或光纜或通過無線電或其它方式來傳送。當(dāng)程序嵌入到這種信號中時,載體可以由這種線纜或其它設(shè)備或模塊構(gòu)成?;蛘?,載體可以是其中嵌入有程序的集成電路,該集成電路適合于執(zhí)行相關(guān)方法,或者適合于在相關(guān)方法的執(zhí)行中使用。應(yīng)當(dāng)注意上述實施例用于說明本發(fā)明而非限制本發(fā)明,本領(lǐng)域技術(shù)人員能夠在不 脫離所附權(quán)利要求的范圍的情況下設(shè)計許多替代實施例。在權(quán)利要求中,置于括號之間的任何附圖標(biāo)記不應(yīng)當(dāng)視為限制權(quán)利要求。動詞“包括”及其變化形式的使用不排除除權(quán)利要求中所陳述的元件或步驟以外的元件或步驟的存在。元件前的冠詞“一”不排除多個這種元件的存在。本發(fā)明可以通過包括若干獨特的元件的硬件來實現(xiàn),還可以通過合適編程的計算機來實現(xiàn)。在列舉有若干模塊的裝置權(quán)利要求中,可以由同一項硬件來體現(xiàn)這些模塊中的若干。事實是在互不相同的從屬權(quán)利要求中所記載的某些措施不表示不能有利地使用這些措施的組合。
權(quán)利要求
1.一種用于數(shù)字權(quán)利管理系統(tǒng)的數(shù)據(jù)提供器(1),包括 數(shù)據(jù)保護器(2),其用于根據(jù)多個屬性之上的訪問策略,使用基于屬性的加密來保護數(shù)據(jù)(20);以及 許可證發(fā)布器(3),其用于發(fā)布包括使用權(quán)(18)的集合的表示的許可證(17),其中所述使用權(quán)(18)的集合與所述數(shù)據(jù)(20)有關(guān)(19),以便對具有滿足所述訪問策略的屬性的多個實體(10 )授予關(guān)于所述數(shù)據(jù)(20 )的所述使用權(quán)(18 )。
2.根據(jù)權(quán)利要求I所述的數(shù)據(jù)提供器(1),其中所述數(shù)據(jù)(20)包括內(nèi)容,所述數(shù)據(jù)保護器(2)包括 密鑰加密器(4),其用于使用所述基于屬性的加密來加密內(nèi)容密鑰的表示,以獲得加密的內(nèi)容密鑰;以及 內(nèi)容加密器(5 ),其用于基于所述內(nèi)容密鑰來加密所述內(nèi)容。
3.根據(jù)權(quán)利要求I所述的數(shù)據(jù)提供器(1),其中所述數(shù)據(jù)保護器(2)包括數(shù)據(jù)加密器(6),所述數(shù)據(jù)加密器(6)用于使用所述基于屬性的加密來加密所述數(shù)據(jù)(20)。
4.根據(jù)權(quán)利要求I所述的數(shù)據(jù)提供器(1),其中所述基于屬性的加密包括基于密文策略屬性的加密。
5.根據(jù)權(quán)利要求I所述的數(shù)據(jù)提供器(1),其中設(shè)置所述許可證發(fā)布器(3),以包括所述許可證(17)中的所述訪問策略(21)的表示。
6.根據(jù)權(quán)利要求I所述的數(shù)據(jù)提供器(1),還包括密鑰生成器(7),其用于生成與所述多個屬性的子集有關(guān)的私鑰。
7.一種用于數(shù)字權(quán)利管理系統(tǒng)的數(shù)據(jù)接收器(10),包括 數(shù)據(jù)訪問子系統(tǒng),其用于根據(jù)與屬性的集合有關(guān)的解密密鑰(16),使用基于屬性的解密來訪問數(shù)據(jù);以及 使用約束子系統(tǒng)(12),其用于基于包括與所述數(shù)據(jù)有關(guān)的(19)使用權(quán)(18)的集合的表示的許可證(17 ),來約束對所述數(shù)據(jù)(20 )的所述訪問。
8.根據(jù)權(quán)利要求7所述的數(shù)據(jù)接收器(10),其中所述數(shù)據(jù)(20)包括內(nèi)容,所述數(shù)據(jù)訪問子系統(tǒng)(11)包括 密鑰解密器(13),其用于使用所述基于屬性的解密來解密加密的內(nèi)容密鑰的表示,以獲得解密的內(nèi)容密鑰;以及 內(nèi)容解密器(14 ),其用于基于解密的所述內(nèi)容密鑰的表示來解密所述內(nèi)容。
9.根據(jù)權(quán)利要求7所述的系統(tǒng),其中所述數(shù)據(jù)訪問子系統(tǒng)(11)包括數(shù)據(jù)解密器(15),其用于使用所述基于屬性的解密,來解密所述數(shù)據(jù)(20 )。
10.一種數(shù)字權(quán)利管理系統(tǒng),包括根據(jù)權(quán)利要求I所述的數(shù)據(jù)提供器(I)和根據(jù)權(quán)利要求7所述的數(shù)據(jù)接收器(10)。
11.一種用于根據(jù)權(quán)利要求10的數(shù)字權(quán)利管理系統(tǒng)的許可證(17),包括使用權(quán)(18)的集合的表示,以及所述使用權(quán)的集合與根據(jù)屬性的集合之上的訪問策略而使用基于屬性的加密所保護的數(shù)據(jù)(20)的關(guān)聯(lián)(19)。
12.—種計算機系統(tǒng),包括根據(jù)權(quán)利要求7所述的數(shù)據(jù)接收器(10),所述計算機系統(tǒng)用于訪問由根據(jù)權(quán)利要求I所述的數(shù)據(jù)提供器(I)提供的個人健康記錄。
13.一種用于數(shù)字權(quán)利管理系統(tǒng)的提供數(shù)據(jù)的方法,包括根據(jù)多個屬性之上的訪問策略,使用基于屬性的加密來保護(201)數(shù)據(jù);以及發(fā)布(202)包括使用權(quán)的集合的表示的許可證,其中所述使用權(quán)的集合與所述數(shù)據(jù)有關(guān),以便對具有滿足所述訪問策略的屬性的多個實體授予關(guān)于所述數(shù)據(jù)的所述使用權(quán)。
14.一種用于數(shù)字權(quán)利管理系統(tǒng)的接收數(shù)據(jù)的方法,包括 根據(jù)與屬性的集合有關(guān)的解密密鑰,使用基于屬性的解密來訪問(301)數(shù)據(jù);以及基于包括與所述數(shù)據(jù)有關(guān)的使用權(quán)的集合的表示的許可證,來約束(302)對至少部分所述數(shù)據(jù)的所述訪問。
15.一種計算機程序產(chǎn)品,包括計算機可讀指令,所述計算機可讀指令用于使處理器系統(tǒng)執(zhí)行根據(jù)權(quán)利要求13或14所述的方法。
全文摘要
用于數(shù)字權(quán)利管理系統(tǒng)的數(shù)據(jù)提供器(1)包括數(shù)據(jù)保護器(2),其用于根據(jù)多個屬性之上的訪問策略,使用基于屬性的加密來保護數(shù)據(jù)(20)。許可證發(fā)布器(3)發(fā)布包括使用權(quán)(18)的集合的表示的許可證(17),其中所述使用權(quán)(18)的集合與所述數(shù)據(jù)(20)有關(guān)(19),以便對具有滿足所述訪問策略的屬性的多個實體(10)授予關(guān)于所述數(shù)據(jù)(20)的所述使用權(quán)(18)。數(shù)據(jù)接收器(10)包括數(shù)據(jù)訪問子系統(tǒng),其用于根據(jù)與屬性的集合有關(guān)的解密密鑰(16),使用基于屬性的解密來訪問數(shù)據(jù)。所述數(shù)據(jù)接收器(10)還包括使用約束子系統(tǒng)(12),其用于基于包括與所述數(shù)據(jù)有關(guān)的(19)使用權(quán)(18)的集合的表示的許可證(17),來約束對所述數(shù)據(jù)(20)的所述訪問。
文檔編號G06F21/00GK102656591SQ201080057624
公開日2012年9月5日 申請日期2010年12月14日 優(yōu)先權(quán)日2009年12月18日
發(fā)明者M·佩特科維奇, M·阿希姆, P·J·勒努瓦 申請人:皇家飛利浦電子股份有限公司