专利名称:保密信息分配系统中的许可证管理的制作方法
技术领域:
本发明涉及用户可以请求数字信息的信息分配系统,并尤其涉及保护用户信息的信息分配系统。
目前,个人在参加大范围活动时需要显示他的身份。通常,当他使用信用卡、打电话、交税、订阅杂志或通过互联网使用信用卡或借记卡购物时,在某处的计算机数据库创建并记录每个交易的可识别的记录。为了使用除现金以外的别的东西来获取服务或进行购买,组织机构要求他标识他自己。
消费者民意调查已经再三表明个人重视他们的私密,并非常关心将个人信息通常存储在他们控制不了的计算机数据库。保护一个人的身份与允许保持匿名——秘密的关键部分——密切联系。虽然信息和通信技术的发展已经提高了组织机构存储海量个人数据的能力,但是已经越来越危害到其信息正被收集的那些人的私密。在日益注重私密的世界里,个人信息的公开和追踪用户的可能性,可以引起用户方的许多私密担忧,终归、或许、甚至增大了那些部分用户对侵入私密的新技术的憎恨。
这与服务供应商或信息分配商的兴趣形成鲜明的对比,而服务供应商或信息分配商为了能够尽可能地实施直接营销的活动,防止他们自己受骗等,想要尽可能多地了解他们的用户。作为预防措施,将来必须从系统中排除滥用系统的用户。
在许多信息分配系统中,相对容易获悉不同用户的习惯,例如通过在系统内分接通信。此信息随后可以被滥用,例如用于兜售信息(spamming)。今天这些问题被部分地解决,例如通过催促用户密切注意他们如何存储例如他们在系统中所用的密码,或通过高保密程度来保护有价值的信息。US 2003/0200468 A描述了如何在在线交易中保存顾客的身份,通过在信任的网站上存储用户的身份。
然而,使用安全网站的上述系统是易受攻击的。成功攻击信任网站的某人具有哪些密钥对应于哪个用户身份的知识。黑客能因此使用此信息在防护很弱的信息分配系统中测绘出某个用户的习惯。
保密信息分配系统的用户可能想要分配他拥有的许可证,而该许可证描述了与某些所请求信息相关联的权限。在本文中,术语“distribute(分配)”涉及两部分行为。一个行为是向另一用户赠送或出售许可证,这意味着初始所有人不再持有该许可证,改为将许可证转给另一用户。另一个行为是与所有属于某个团体或域的一个或若干其他用户共享这些权限。当用户与另一用户共享他的权限时,两个用户每人都持有一个他们能够自由使用的许可证。与各自许可证相关联的权限未必是必须相等的。例如,与转移的权限相关联的权限可以比初始的权限有更多的限制。
与在系统内分配权限相关的问题在于,提供一种可以从一个用户向另一个用户或若干其他用户分配许可证的系统,同时保护用户的私密。
本发明的目的在于消除或者至少减轻所描述的有关问题,即在信息分配系统中从至少一个用户向至少一个其他用户分配权限或许可证,同时为所述用户提供保密。
此目的通过根据所附权利要求1和15的方法和系统来实现。在从属权利要求中定义了优选实施例。
如于此使用的,术语“用户的真实身份”指的是用户的物理身份或可以与物理用户相联系的数据,例如电话号码、地址、社会保障或保险号、银行帐号、信用卡号、组织机构编号等。而且,如于此使用的,“假名”或辅助身份是足以防止其与人的真实身份相联系的任何数据即匿名。在用户的真实身份与所述用户所请求的信息之间不存在联系,意味着没有明显的途径来重构实际用户已经请求的信息,例如因为没有存储应能够进行这种重构的信息的数据库。
根据本发明的第一方面,本发明涉及一种在信息分配系统中管理属于至少一个用户的许可证和证书、同时使所述用户的身份保密的方法。在所述系统中,每个用户由至少一个用户身份设备代表,而所述至少一个用户身份设备包括至少第一固定假名。所述方法包括以下步骤-在许可证管理设备接收代表所请求信息的数据和对应的权限;
-在许可证管理设备创建所述所请求信息的第一许可证;-在第一用户身份设备接收所述第一许可证;-在所述许可证管理设备接收包括至少一个固定假名的一组固定假名、基于所述第一许可证的第二许可证和将所述第二许可证分配给一组用户身份设备的请求,而这组用户身份设备包括至少一个用户身份设备,每个用户身份设备与所述这组固定假名中包含的各自的固定假名相关联;-在所述许可证管理设备创建一组所述所请求信息的许可证,其中,这组许可证包括这组用户身份设备的每个用户身份的第三许可证,并且其中,每个许可证包括能够标识所述各自第三许可证的身份数据;-在身份管理设备从第二用户身份设备接收对证书的请求和第二固定假名,其中,所述第二固定假名被包含在所述这组固定假名中,第二用户身份设备对应于所述第二固定假名且被包含在所述这组用户身份设备中;-在所述身份管理设备创建证书;-在所述第二用户身份设备从所述身份管理设备接收所述证书;-将所述这组许可证中的每个所述创建的许可证分配给所述这组用户身份设备中所包含的它的对应用户身份设备;以及-在访问所述所请求信息时验证所述这组许可证所包含的许可证和所述证书。
根据本发明的第二方面,本发明涉及用于分配信息、同时使用户身份保密的信息系统,所述信息系统包括-第一用户身份设备,其包括固定假名;-一组用户身份设备,其包括至少一个用户身份设备;-许可证管理设备,其被安排成从所述第一用户身份设备接收代表所请求信息和对应权限的数据,创建第一许可证,向所述第一用户身份设备发送所述第一许可证,基于所述第一许可证接收第二许可证和包括至少一个固定假名的一组固定假名,创建一组许可证,其中所述这组许可证包括每个用户身份设备的第三许可证,而每个用户身份设备与所述第二组固定假名中所包含的各自的固定假名相关联,并将所述这组许可证中所包含的每个所述许可证分配给它对应的用户身份设备;-身份管理设备,其被安排成接收固定假名,创建证书开向所述这组用户设备中所包含的所述身份设备发送证书。
上述方面的一个优点在于,可以从一个用户向一个或若干不同的其他用户分配这些许可证,而不向系统暴露任何用户的真实身份。因此,保护了用户的私密,因为所述用户的真实身份未与系统中的标识符相关联。因此,防止了用户在信息分配系统中的行为受到监控。
下面,列出了与本发明不同实施例有关的许多优点。全部这些优点的共同之处在于所述方法使用户身份对系统保密。
如权利要求2所定义的方法,其中,在将许可证分配给域时使用主许可证,有利地为域结构提供保密,因为没人(或许除了负责创建域等的人之外)能够用域标识符链接域成员(或他们的标识符)。而且,第二许可证管理设备或域管理器的引入,提供了对可数权限的保密增强管理,因为防止内容供应商在出现消耗可数权限时,知道涉及哪个标识符、使用什么内容和哪个设备。通过引入若干域管理器,例如每个域一个域管理器,则设备不能完全知道设备使用的信息。而且,此方法在管理可数权限并同时为用户保密时是有利的。通过此方法,实现了面向第一许可证管理设备的行为保密。即,第一许可证管理设备不会得知涉及改变可数权限的每个用户操作的时间、所请求信息、用户身份设备和固定假名。
如权利要求3定义的方法,有利地提供一种安全的许可证结构。
如权利要求4定义的方法,有利地提供高安全级,因为它要求提供在访问所请求的内容之前,都验证用户身份设备许可证和主许可证。在此验证处理中,所述用户身份设备许可证中所包含的权限可以与所述主许可证中所包含的权限相比,以便确定所述主许可证中所包含的权限没有比所述用户身份设备许可证中所包含的权限受到更多的限制。
如权利要求5定义的方法,有利地便于许可证有效性的验证,通过在对应的证书中提供哪些许可证是有效的指示。很清楚,“指示哪些许可证是有效的”的动作都可以以正向和反向的方式来施行。后者的示例一个示例是使用失效列表、或黑名单,其包括所有不再有效的许可证。前者的示例是使用白名单,其包括所有的有效许可证。
如权利要求6定义的方法,有利地便于旧许可证的注销,例如在这些许可证已被转移给另一用户或由于其他原因如有害行为被作废时。
如权利要求5和6所定义的方法,具有提供了一种注销那些已经作废了的许可证的安全方法的优点。该方法保证了不能同时使用旧许可证和新许可证。而且,它防止提供信息的设备知道许可证的老用户和新用户之间的联系。
如权利要求7定义的方法,提供了标识许可证的有利途径。一般地,每组信息用不同的密钥进行编码,而此密钥可以被包含在所述许可证中,并被用来解密所述内容。由于每个许可证包括不同的密钥,所以密钥可用于标识许可证。而且,此许可证识别数据便于对权限的消耗、共享或转移进行管理。
如权利要求8定义的方法,是提供完整性的有利途径。依据此方法,在指示证书包含的有效许可证的许可证列表中的每个许可证识别数据通过散列函数用常数进行编码。这允许证书和许可证的验证器确定许可证是否有效,通过比较所述许可证识别数据与编码的许可证识别数据列表,而其他实体不会得知任何许可证识别数据。
如权利要求9定义的方法,提供一种有利的许可证格式,其为信息提供者提供保密,不会向系统显示用户的身份。
如权利要求10定义的方法是有利的,因为它简化了确定所提供的许可证是有效的(不是作废的)的方法。
如权利要求11定义的方法是有利的,因为用户不必管理任何其他用户的密钥。
如权利要求12定义的方法是有利的,因为它防止所述系统得知所述第一和第二固定假名之间的关联。此知识也许是用户不需要的,因为它可以被滥用,例如兜售信息。
如权利要求14定义的方法是有利的,因为它简化了为所述转移的许可证提供比初始许可证更多受限的权限的方法。因此,此方法能被用来区分域内成员之间的权限。
上面已经描述了通过所述方法的实施例获得的一些优点。类似的优点还可以通过对应的所述信息分配系统的实施例来实现,如涉及系统的从属权利要求所定义的。
本发明的这些及其他方面、特征和优点,将参照以下所述的实施例进行阐述,并且从所述实施例中显现出来。
图1示意性地示出了本发明的第一实施例,其中,从第一用户身份设备向至少第二用户身份设备分配许可证。
图2示意性地示出了本发明的第二实施例,其中,转移的许可证被注销。
图3示意性地示出了本发明的第三实施例,其中,在从第一用户向第二用户转移许可证时使用匿名许可证。
图4示意性地示出了本发明的第四实施例,其中,在从第一用户向第二用户转移权限时使用匿名许可证,而不用前述的许可证。
图5示意性地示出了本发明的第三实施例,其中,从一个用户身份设备向一组用户身份设备分配一个许可证。
图1示意性地示出了本发明的一实施例。想要访问诸如连接互联网的数据库之类的属于内容供应商或许可证管理设备LMD 120的信息的用户,不用向信息系统显示他的真实身份,可以通过使用用户身份设备或智能卡SC 110来完成这一切。当用户想要购买访问某些内容的权限时,他借助于匿名信道请求权限113和某一内容112来联系内容供应商或许可证管理设备120。在匿名支付方案实施之后,用户向许可证管理设备110发送1他的公开密钥PK1 111,然后许可证管理设备110创建2此内容的权限和/或许可证121。在不同的实施例中,内容供应商和许可证管理设备可以是一个公共单元或两个独立单位。如果他们是两个独立单元,则内容供应商向用户发送所请求的内容,而许可证管理器设备为该内容创建许可证。如果他们是一个公共单元,则许可证管理器设备向用户提供了所请求的内容和许可证。
内容通过内容供应商用对称密钥SYM进行加密,并连同许可证121一起被发送给用户。优选地,许可证的格式是{PK1[SYM//Rights//contentID]}signCP,其中PK1加密串联的值[SYM//Rights//contentID]。在本文中,Rights描述了用户获取的权限,例如他是否被授权收听整首歌曲或仅仅有权收听歌曲的简介,或者他被授权收听这首歌曲的次数。而且,contentID标识与所述权限相关联的内容,并且signCP是内容供应商在许可证121上的签名。提供额外安全性的替换格式是{PK1[SYM//Rights//contentID],H(SYM//Rights//contentID)}signCP,其中,加密的总值可以由存取设备逐一地检查。注意,存取设备不能检查用PK1加密的总值,因为它无法得知PK1。许可证121在被检查时既不显示公钥PK1 111,也不显示内容标识符或权限,所以它保护了用户在内容和权限所有权方面的私密。因此,如果在用户的存储设备中发现许可证121,则不会危及用户私密的安全。在如上简要所述的此购买过程期间,许可证管理器设备120得知公钥PK1 111和contentID 112、权限113和对称密钥之间的关联,但是它不会由于匿名信道而得知真实的用户身份。
当第一用户身份设备110的用户想要将他的一个许可证分配给第二用户设备130的持有人时,需要创建所述第二用户设备的对应许可证。这可以实现,例如通过下列步骤来实现。许可证的持有人即第一用户,使用他的用户身份设备110向许可证管理设备120发送4他想要连同用户身份设备130的至少固定假名PK2 131一起分配的许可证121,而用户身份设备130将接收该许可证。许可证121可以具有格式{PK1[SYM//Rights//contentID]}signCP,如上所述。如果接收的许可证是有效的,则创建5新的、第二许可证114,具有格式{PK2[SYM′//Rights′/contentID]}signCP,其中,PK2 131加密串联的值[SYM′//Rights′/contentID]。Rights′描述了第二用户获取的权限,其可以等效于Rights,或比Rights更加受限。contentID标识了与所述权限相关联的内容,并且signCP是内容供应商在许可证122上的签名。创建的许可证114被发送9给第二用户设备130,并且此刻连同所述第二用户设备的有效认证证书(compliance certificate)一起准备用于访问所述内容。
一般地,为了所述第二用户安全地访问存取设备上的所述所请求的内容,必须向存取设备出示他的智能卡130的认证证书141。此认证证书优选在所述第二许可证被发送给所述第二用户身份设备之前颁发。而且,优选证书141不包含公钥PK1 111,但是用可变的SC假名或临时假名颁发。为了获取SC 130的认证证书141,用户/SC匿名联系身份管理设备140或智能卡的认证证书颁发机构(CA-SC),发送6它的公钥PK2 131并申请证书。CA-SC 140验证私钥PK2 131是否有效。如果有效,则CA-SC 140生成7智能卡131的临时假名,例如随机数RAN,并颁发下列认证证书141{H(RAN),PK1[RAN]}signCA-SC,其被发送8给智能卡131。H( )在此实施例是单向散列函数,PK2 131加密RAN,而signCA-SC是CA-SC在证书上的签名。
证书141在被检查时既不显示公钥PK2 131,也不显示智能卡130的临时假名RAN。而且,可以从证书131中获取RAN的唯一实体是智能卡130。完成这借助于用与SC 130相关联的私钥SK2 133进行加密。值RAN然后可以由验证方借助于证书中的散列值进行核对。假名RAN的使用允许验证器检查智能卡130的认证,而不用得知它的公钥PK2131。而且,因为假名RAN可以每逢需要时经常进行改变(每次智能卡SC 130获取新认证证书131),所以验证器链接认证证书与指定智能卡110的可能性可以被最小化。在上述的此步骤期间,智能卡(CA-SC)140的认证证书颁发机构由匿名信道得知公钥131与RAN之间而不是与真实的用户身份之间的关联。
此刻,用户可以访问他具有许可证的内容,优选在存取设备AD上执行该访问。一般存取设备根据DRM规则进行工作。为了访问该内容,用户必须随身携带内容和许可证(例如,光盘中的内容和许可证),或已经将它们存储在网络上的某个地方。但不论哪种情况,内容加上许可证必须首先被转移给存取设备AD。而且,因为用户此刻物理上出现在存取设备AD的前面,所以可能向AD“暴露”他的真实身份。因此,为了防止向用户之外的任何其他人暴露用户真实身份与公钥PK2之间的关联,公钥PK2 131不应在内容访问时向存取设备AD显示。这就是为什么SC 130的认证证书141用可变的假名RAN来颁发。一旦核对了证书,存取设备就获悉RAN,但不会得知公钥PK1 131。内容访问过程的一个示例描述如下。
内容访问过程在智能卡130和存取设备彼此相互作用之前,它们进行相互认证检查存取设备AD的认证借助于存取设备的认证证书来证明,而存取设备的认证证书由存取设备的认证证书颁发机构(CA-AD)颁发,并向智能卡130出示。为了能够验证存取设备的认证证书,智能卡130装备有CA-AD的公钥。如果此密钥定期改变,则责成AD定期更新它的认证证书。这也意味者智能卡SC 130必须定期更新公钥,这可以在SC 130从CA-SC获取它自己的认证证书时进行。
智能卡130的认证借助于向存取设备出示的认证证书来提供。如上所述,智能卡130通过用私钥PK2解密证书141,从证书141中获取值RAN,并将此值发送给存取设备。存取设备借助于证书中的项H(RAN)检查此值。因为存取设备可以装备有时钟,所以智能卡的认证证书141可以具有其上添加的它的颁发时间,这强制智能卡130在证书过时时更新证书。这也是为了智能卡经常更新它的认证证书,以便最小化如上所述的可链接性(linkability)。
在上述的此相互认证检查之后,存取设备向智能卡130发送来自许可证的项PP[SYM//Rights/contentID],智能卡130解密项PP[SYM//Rights/contentID]后将值SYM、Rights和contentID发回到存取设备。存取设备能因此使用SYM解密内容,并让用户根据Rights访问它。
许可证注销图2示意性地描述了本发明的不同实施例。此实施例除了本实施例包括使用指示哪些有关许可证有效的证书之外,与参照图1描述的实施例相同。颁发第一许可证121,并将其发送给第一用户身份设备110,如上所述,参照图1的参考数字1-3。此后用户将他的许可证分配11给持有第二用户身份设备130的第二用户,然后第一许可证根据下述处理被注销。
第一用户身份设备110经由匿名信道联系4许可证管理设备120,通过他的固定假名PK1 111证明他自己,并提供4将被转移的许可证121以及第二用户身份设备131的固定假名131。许可证管理设备通过比较该许可证与第一组数据224,验证许可证是有效的。在此实施例中,此第一组数据是黑名单,或则换言之,是失效列表,包括不再有效的所有许可证的身份。
如果所述第一许可证是有效的,则许可证管理器设备120通过用所述第一许可证121已被转移给第二用户的信息来更新10信息系统,开始进行后续的工作。这可以通过这样更新10所述第一组数据224来完成,即所述第一组数据224指示所述第一许可证不再有效。
然后鼓励第一用户向所述身份管理设备140提供11他的固定假名111和更新其证书的请求。在身份管理设备140已经接收固定假名111之后,假名连同对第二组数据的请求一起被转发给所述许可证管理设备,而第二组数据指示对应于所述假名PK1的所有注销的许可证。因为加密内容的对称密钥SYM对于每个许可证是唯一的,所以许可证管理设备可以使用此值来标识每个与PK1 111相关联的许可证。许可证管理设备然后创建13此第二组数据225,包括下述值H(Sym_1//Time),H(Sym_2//Time),…,H(Sym_n//Time),其中,每个值是已注销许可证的密钥Sym_i的散列值,对应于所述PK1 111,与当前时间串联。单向散列函数H()被用于降低所述第二组数据225中失效列表各项的大小,以及用于对不需要得知Sym_i各值的任一方隐藏那些值。而且,当前时间与每个Sym_i串联,以便防止在不同的场合经由为PK1 111颁发的认证证书失效列表的可链接性。
一旦PK1所有的已注销许可证的值被归入第二组数据225,则这些数据连同值Time即与许可证身份串联的常数一起,由许可证管理设备120向身份管理设备140发送14。身份管理设备140此刻将此第二组数据以及所述值Time归入15所述第一用户身份设备的认证证书242。证书242具有下面的格式{H(RAN),PK1[RAN],Time,H(Sym_1//Time),H(Sym_2//Time),...,H(SYM_n//Time)}signCA-SC。
证书242然后被发送给第一SC 110,第一SC 110可以将242存储在SC本身。一般的SC可以存储其失效列表具有高达500个左右的注销许可证的认证证书。当/如果失效列表变得太大以至于不再可能存储在SC时,则证书例如可以存储在网络中的服务器上或存储在光存储介质上。
如上所述,当用户请求访问存取设备上或认证的设备CD上的内容时,内容加上许可证必须被转移给存取设备。因为用户身份设备必须向存取设备证明它的认证,所以一旦用户请求内容,用户身份设备就必须提供如上所述的认证证书。所以,在相互认证检查之后,存取设备向用户身份设备发送来自许可证的项PK2[SYM′//Rights′/contentID],用户身份设备解密项PK2[SYM′//Rights′/contentID]后将值SYM′、Rights′和contentID发回到存取设备。在存取设备使用SYM′解密内容和让用户(根据Rights′)访问内容之前,它计算H(Sym′//Time),并检查此值是否处于失效列表内。如果不处于失效列表中,CD则继续进行访问请求的处理。
如果认证证书被用户身份设备110经常更新,则这是一优点。这样做有利于用户和DRM系统,至少出于下列理由-为了最小化经由用户内容访问不同内容的请求的假名RAN的可链接性,和-作为存取设备的必要条件,如果证书(因此失效列表)太旧,则其借助于值Time进行验证。
倘若用户对频繁更新他的证书不感兴趣,则更新可以被强制作为存取设备的必要条件。由于认证证书的频繁更新,存取设备也经常可以得到PK1的注销许可证的更新值。
在证书242已被所述第一用户设备110接收16,并向许可证管理设备出示之后,所述第二许可证122被发送给所述第二用户身份设备131。
优选方法应该是第二许可证被发送给第二用户身份设备,第一用户设备向许可证管理设备证明他的旧证书(在获取证书242之前使用的,因此不包括注销的许可证)已经到期。
此处理的一个优点在于新许可证不被分配给第二用户,直到第一用户已经接收他的新证书。用这种方法,防止第一和第二用户同时使用他们各自的许可证。
使第一和第二用户之间的关联保密当许可证从第一用户向第二用户转移时,例如本发明的所述第二实施例,许可证管理器设备获悉那两个用户之间的关联,即公钥PK1和PK2之间的关联。也许用户不需要知道此关联。因此使用普通许可证可能是有利的,在此文件中,普通许可证称为“匿名许可证”,其中未规定用户身份。
匿名许可证在此文件中是具有规定权限的规定内容的许可证(如先前描述的许可证122),但该许可证不与用户身份设备相关联(即不与固定假名相关联)。这种许可证可以由购买或相反获取具有指定权限的指定内容的任何匿名用户的许可证管理设备颁发。它还可以为请求撤销他的许可证的第一用户颁发,以便它被转移给第二用户。既然许可证不与给定的人相关联,所以它可以转移(赠与、出售等)。给任何其他人。此人以后可以向相同的许可证管理设备提供该许可证,以便被交换用于个人化许可证(例如许可证121),其然后可以用于内容访问。
然而出于安全的原因,在许可证管理设备颁发匿名许可证之前,优选必须向许可证管理设备分配唯一标识符。这样做为了防止一旦匿名许可证已被赎回,则它的任何副本(该副本也许是用户制作的)也可以被赎回。然而,如果此标识符被许可证管理设备选择,则它将能链接两个用户的固定假名,因为它可以识别该标识符。为了防止这个情况,如下所述,可以使用盲签名。
图3例示了本发明的第三实施例,其中,处理对应于某些内容和权限的第一用户,向第二用户转移此许可证,不用向系统显示所述第一和第二用户设备之间的链接。除了如下所述的差异以外,此第三实施例与参照图2描述的第二实施例相同。
颁发第一许可证121,并将其发送给第一用户身份设备110,如上所述,参照图1的参考数字1-3。此后,第一用户经由匿名信道联系18CP或许可证管理设备120,并连同撤销第一许可证121和颁发匿名许可证的请求一起,发送第一许可证121和他的PK1 111。此撤销或注销前面已经描述过,参照图2的参考数字11-16,但在下一段中还要进行描述。
CP 120发送用户证明他自己的请求,这可以经由标准协议来实现(CP向用户发送用PK1 111加密的随机质询;如果用户是可信的,则他可以使用PK/SK对中他的SK解密质询,并将质询发回到CP)。在鉴别用户之后,CP注销PK1 111的第一许可证121。而且,在匿名许可证被发送给所述第一用户身份设备110之前,从CA-SC向第一用户身份设备发送新认证证书241。此证书241包括所述第一许可证121,因为所述第一组数据在创建所述证书之前被修改。
第一用户身份设备创建秘密随机标识符,并遮蔽17此值,这生成遮蔽的标识符Blind[ID]314。在第一用户身份设备以及接收所述新证书241之后,用户和CP之间的协议可以继续。优选地,开始新协议,其中,用户向CP发送18他的PK1 111即第一许可证121,并证明他自己,并还发送他的新认证证书241以及旧的到期证书,并且用户希望转移给第二用户的所述遮蔽的ID Blind[ID] 314与NewRights313。用来自第一用户的所有这些值,CP可以首先验证第一用户的新认证证书241包括注销的许可证121,(经由项H(Sym//time)进行参考)。第二,验证NewRights 313是否少于或等效于第一许可证121中出现的Rights 113。第三,从提供的第一许可证121获取contentID112。如果验证符合要求,则内容供应商CP 120可以创建19所述所请求内容和对应权限的匿名许可证。
为了做到这一点,许可证管理设备具有不同权限与不同内容的每个可能组合的唯一一对公钥/私钥。如果这组所有的权限被预先规定包括R个权利,并且这组所有的内容具有C项。这意味着许可证管理设备优选必须具有R*C个不同的公钥/私钥对。假定是这种设置,一旦许可证管理设备从第一用户接收数据{Blind[ID],NewRights},则它可以用{NewRights,contentID}的这一组合的私钥签名盲标识符即Blind[ID]314,并向用户返回20值{{Blind[ID]}signed-NewRights-contentID325。用户然后去遮蔽21签名的标识符,以获取{ID}signed-NewRights-contentID315,并向第二用户转移11此值和许可证规范{NewRights,contentID}。新权限NewRights的规定仅需提供允许少于初始权限的规定权限,NewRights即将与匿名许可证相关联(倘若匿名许可证正在用户之间转移的话)。发送NewRights的可能性允许用户向另一用户供给他的一个许可证,但具有比他具有的初始权限更受限制的权限,如果他希望这样的话。
为了获取个人化许可证,第二用户身份设备匿名联系许可证管理设备,用他的公共假名PK2 131证明他自己并向许可证管理设备发送签过名的、去遮蔽的标识符{ID}signed-NewRights-contentID315和{NewRights313,contentID 316}。
CP 120首先验证去遮蔽的ID 315未被使用(在他保留的ID列表中未被使用),并且如果未使用过,他在使用的ID列表中输入该ID。CP还验证他在ID 315中的签名(如果签名确实用{NewRights,contentID}的密钥制成),并且如果全都正确,则许可证管理设备最终可以向第二用户颁发5个人化许可证122(个人化许可证122连同用个人化密钥SYM2加密的内容一起被发送9给他的用户身份设备130){PK2[SYM2//NewRights//contentID]}signCP122。
在上述许可证122颁发之后,值ID由许可证管理设备输入到如上所述的一组数据中,每当许可证管理器设备接收来自匿名许可证的个人化许可证的请求(具有签过名的标识符)时,它检查值ID。这防止响应于已经赎回的匿名许可证的个人化许可证请求而颁发许可证。
匿名许可证除了可以在用户向另一用户出售或卖出信息时使用之外,可以简化,例如当机构想要鼓励人通过“买一赠一”模式用许可证时。第二许可证可以作为匿名许可证被颁发,其可以被转移给任何人。参照图4描述了根据本发明的第四实施例。在此实施例中,第一用户请求某一内容和对应的某些权限的匿名许可证,而不相想转移现有的许可证。用户接收这种匿名许可证,并向属于第二用户的第二用户身份设备转移此许可证。除了下述的差异以外,此第三实施例等效于参照图3描述的第三实施例。
如图4所示,第一用户经由匿名信道联系1 CP,请求Rights 113和contentID 112的指定组合的匿名许可证。可能他还发送匿名支付的凭据(例如对应于一定量的货币的令牌)。如果用户的支付额是为Rights 113和contentID 112的指定组合支付的,则许可证管理设备120或CP可以仅为第一用户颁发2匿名许可证421,其例如是CP用指定组合的密钥签名的随机ID。在此第四实施例中,CP 120他自己可以直接生成ID 325,因为用户匿名联系CP且不需显示他的PK,原因在于许可证未颁发给他。他只需匿名地证明他被授权请求了具有那些权限的内容。此后,匿名许可证421被发送3给所述第一用户身份设备110,第一用户身份设备110向第二用户身份设备130转发11匿名许可证421,尽可能地连同所述contentID 112和所述Rights 113一起转发。第二用户身份设备然后向所述许可证管理设备120提供4所述匿名许可证421和对个人化许可证的请求,尽可能地连同所述contentID 112和所述Rights 113一起提供。此刻,如参照所述第三实施例描述的许可证管理设备,为所述第二用户身份设备130创建5个人化许可证122,所述许可证122被发送给所述设备130。
在上述的解决方案中,许可证管理设备120必须保留巨大的列表,该列表具有R*C个不同的公钥/私钥对和对应的权限与contentID值。此解决方案可以用基于Identity的密码术进行简化。应用于本发明,代替使用人或不同方的身份来生成密钥,可以使用将内容标识符、权限和许可证管理设备的姓名串联在一起来生成密钥。用这种方法,公钥可以简单地被定义为字符串[ContentID//Rights//LMDname],而相应的私钥基于该字符串和许可证管理设备生成的主密钥生成。
使用基于Identity的密码术生成签名密钥对具有下列优点-极大地简化了许可证管理设备的密钥管理,许可证管理设备不再需要存储所有R*C个密钥对(私钥可以每逢需要时再生成)。即使优选存储通过计算,只需要存储私钥。
该解决方案允许任何人检查许可证管理设备在许可证上的签名,如果他们知道内容标识符、权限和许可证管理设备姓名的话(因为这些值组成公钥)。
如果第二用户从第一用户购买许可证,则管理设备签名的验证可以是必需的。第二用户非常想知道他从第一用户接收的匿名许可证的确提到具有指定权限的指定内容,并且该许可证用指定CP来赎回。
在域内分配权限当信息分配系统的用户购买信息时,他熟悉的其他用户可能想要共享该信息。这通过形成域来完成,而该域与共享域密钥PKD相关联。域必须通过域管理机构(authority)进行注册,域管理机构可以验证成员的确来自一个组群,例如一个家庭。相同的域管理机构可以向用户群分配PKD,并将SKD添加到智能卡上。完成这以后,用户可以购买内容用于他的私用(使用他的个人密钥PK1),或使用域密钥PKD购买内容用于整个域。在购买内容用于整个域的情况下,具有与域公钥PKD516相关联的第一用户身份设备110的第一用户向许可证管理设备120提供1此域公钥PKD,连同提供对某一内容的contentID 112和Rights113的请求。许可证管理设备创建2主许可证521,主许可证521被发送(3)给第一用户身份设备。主许可证优选具有格式{{PKD[SYM//Rights//contentID],1}signCP,MR}signCP(1)主许可证由域许可证和主权限的标记(MR),一起由CP进行签名组成,域许可证具有格式{PKD[SYM//Rights//contentID],1}signCP(2)域许可证由对称密钥SYM、主权限Rights 113和域密钥PKD加密的contentID 112以及授权标记(设成1)组成,它们一起由CP 120进行签名。在从CP 120获取此主许可证121的处理结束,用户可以将主许可证加密成下列格式PK1[{{PKD[SYM//Rights//contentID],1}signCP,MR}signCP] (3)以便对共享PKD的域成员保护他的私密。所以,该域中没有用户将能看见已经购买内容的用户的许可证和权限。
创建(具体域成员的)个人用户权限由域Domain Manager(域管理器)设备(DM)150完成。购买内容的用户准备了用于具体域成员的一组固定假名132和对应的权限,连同主许可证521一起发送4给DM。这种一组固定假名或数据结构,可以具有下列格式[PK1,Rights1;PK2,Rights2;PK3,Rights3;...PKn,Rightsn]。其中,PKi是域成员的公钥(尽可能地包括所述第一用户),而Rightsi示权限,描述与不同PK相关联的Rights。这便于区分域内的权限。在与DM的相互作用中,用户解密加密的证书(3),继而解密项PKD[Sym//Rights//contentid]。用户可能还必须向DM出示证书,证明这组数据(用户想要为其准备许可证的)中提到的所有PKi确实属于他的域。然后,DM创建5每个PKi的成员许可证,具有格式{PKi[Sym//Rightsi//contentIDi],PKDM}signDM(4)最后,许可证管理设备将这些权限分配9给域成员,优选借助于第一用户身份设备。
域成员在访问内容时,可能必须向设备提供域许可证和个人化许可证以及DM的认证证书。提供两个许可证的原因在于允许存取设备验证用户属于域(如果他都知道PKi和PKD),以及验证权限Rightsi<=Rights。
上述步骤确保只有购买内容且具有主许可证的用户才能创建域成员的域许可证。将DM作为用户权限的看管方引入域内还利于可数权限的管理。此刻,DM可以颁发新许可证并在发生消费可数权限时撤销旧许可证。用这种方法,用户对CP的私密受到保护,因为每逢用户消费权限时不用联系CP。因此,CP不能创建链接用户PK、内容标识符、设备标识符和发生消费可数权限的时间的日志。然而,此解决方案还对CP有利,因为旧许可证的撤销受DM管理,因此是紧迫的。
因此,如上所述,本发明便于权限在信息分配系统内的分配。注意,对于本申请的用途而言,尤其对于所附权利要求的意图而言,单词“包括”不排除其他的元件或步骤,单词“一”或“一个”不排除多个,单个处理器或单元可以执行若干装置的功能,并且至少一些装置可以用硬件或软件来实现,本质上对本领域技术人员将是显而易见的。
权利要求
1.一种用于在分配所请求的信息的系统中管理属于至少一个用户的许可证和证书、同时使所述用户身份保密的方法,其中,每个用户由至少一个用户身份设备代表,所述用户身份设备包括固定假名,所述方法包括以下步骤在许可证管理设备接收(1)代表所请求信息的数据和对应的权限;在所述许可证管理设备创建(2)所述所请求信息的第一许可证;在第一用户身份设备接收(3)所述第一许可证;在所述许可证管理设备接收(4)包括至少一个固定假名的一组固定假名、基于所述第一许可证的第二许可证和将所述第二许可证分配给一组用户身份设备的请求,而这组用户身份设备包括至少一个用户身份设备,每个用户身份设备与所述固定假名组中所包含的各自的固定假名相关联;在所述许可证管理设备创建(5)一组所述所请求信息的许可证,其中,所述许可证组包括所述用户身份设备组的每个用户身份的第三许可证,并且其中,每个许可证包括能够标识所述各自第三许可证的身份数据;在身份管理设备从第二用户身份设备接收(6)对证书的请求和第二固定假名,其中,所述第二固定假名被包含在所述固定假名组中,第二用户身份设备对应于所述第二固定假名且被包含在所述用户身份设备组中;在所述身份管理设备创建(7)证书;在所述第二用户身份设备从所述身份管理设备接收(8)所述证书;将所述许可证组中的每个所述创建的许可证分配(9)给所述用户身份设备组中所包含的它的对应用户身份设备;以及在访问所述所请求信息时,验证所述许可证组所包含的许可证和所述证书。
2.根据权利要求1的方法,其中,所述第一用户身份设备属于第一域的用户身份设备,所述用户身份设备组中所包含的每个用户身份设备属于所述第一域,并且其中,所述第一许可证是主许可证,所述第二许可证等效于所述第一许可证,所述许可证管理设备包括第一许可证管理设备和第二许可证管理设备,并且所述固定假名组包括所有都属于所述第一域的固定假名,并且其中所述创建(2)第一许可证的步骤,包括在所述第一许可证管理设备创建对应于所述所请求信息和所述权限的主许可证,该许可证可在所述第一域内进行分配;所述接收(4)一组固定假名、许可证和将所述许可证分配给所述一组用户身份设备的请求的步骤,还包括从所述第一身份设备接收这些;所述创建(5)一组许可证的步骤,包括在所述第二许可证管理设备创建所述许可证组,其中,每个许可证可由对应的用户身份设备在访问所述所请求信息时使用。
3.根据权利要求2的方法,其中所述接收(1)代表所请求信息的数据和对应权限的步骤,还包括接收与所述第一域相关联的第一固定域假名;所述创建(2)主许可证的步骤还包括通过所述第一固定域假名加密第一对称密钥、所述权限和代表所述信息的所述数据,并将此加密包括在所述主许可证中。
4.根据权利要求2或3的方法,其中,所述验证认证证书和所述许可证组中所包含的其中一个所述许可证的步骤,还包括通过将其与所述主许可证进行比较来进行验证。
5.根据任一前述权利要求的方法,还包括以下步骤创建第一组数据,所述数据以这样一种方法指示哪些许可证是有效的,即代表不再有效的和已经与至少一个固定假名相关联的所有许可证的数据是可通过所述假名追踪的,并且其中创建(7,15)与固定假名相关联的证书的步骤还包括以下步骤在所述许可证管理设备从所述身份管理设备接收(12)所述固定假名和对指示与所述固定假名相关联的哪些许可证是有效的数据的请求;在所述许可证管理设备创建(13)第二组数据,所述数据指示与所述固定假名相关联的哪些许可证是有效的;在所述身份管理设备从所述许可证管理设备接收(14)所述第二组数据;以及在所述身份管理设备将所述第二组数据包括在所述请求的证书中。
6.根据权利要求5的方法,其中所述接收(4)一组固定假名、许可证和向所述一组用户身份设备分配所述许可证的请求的步骤,还包括从所述第一身份设备连同所述第一固定假名一起接收这些;以及所述创建(5)第二许可证的步骤还包括修改(10)所述第一组数据使得它指示所述第二许可证不再是有效的,在所述身份管理设备创建(15)所述第一固定假名的证书,并将所述创建的证书分配给所述第一身份设备。
7.根据权利要求6的方法,其中,每个许可证包括不同的密钥,并且所述创建(13)所述第二组数据的步骤包括创建与所述第一固定假名相关联的许可证中所包含的所有密钥的列表。
8.根据权利要求7的方法,其中,所述创建(13)所述第二组数据的步骤包括通过散列函数将所述密钥的每一个与常数编码在一起,该常数也被包括在所述第二组数据中。
9.根据前述任一权利要求的方法,其中,固定假名和对所请求信息的许可证的请求被接收(1,4),所述方法还包括以下步骤在加密代表对称密钥、所述所请求信息的标识符和与用户身份设备以及与所述所请求信息相关联的权限的值时,使用所述接收的与所述用户身份设备相关联的固定假名;以及创建(2,5)许可证,其中,将所述加密被包括在所述创建的许可证中。
10.根据前述任一权利要求的方法,其中,所述在访问所请求的内容时验证许可证的步骤包括通过比较所述许可证中所包含的所述许可证识别数据与所述证书中所包含的所述第二组数据,确定所述许可证中所包含的所述许可证识别数据是有效的。
11.根据权利要求1、5-10的方法,其中,所述第二许可证等效于所述第一许可证,并且其中在第一用户身份设备接收(3)所述第一许可证的步骤,包括将所述第一许可证分配(11)给所述第二用户身份设备;以及接收(4)一组固定假名和第二许可证的步骤,还包括从所述第二身份设备接收所述这组组和所述许可证。
12.根据权利要求1的方法,并且其中,所述第一许可证是匿名许可证,所述第二许可证等效于所述第一许可证,并且许可证管理设备与指示哪些匿名许可证是有效的第三组数据相关联,并且其中所述在许可证管理设备接收(1)代表所请求信息的数据和对应权限的步骤,还包括通过匿名信道接收这些;所述创建(2)所述第一许可证的步骤,还包括创建匿名标识,并且用对应于所述接收信息和所述权限的密钥加密所述标识;所述在所述第一许可证管理设备接收(3)所述第一许可证的步骤,还包括将所述第一许可证分配(11)给所述第二用户身份设备;以及所述在所述许可证管理设备接收(4)至少一个固定假名和第二许可证的步骤,还包括从所述第二用户身份设备接收这些,修改(10)所述第三组数据使得它指示所述第二许可证不再是有效的。
13.根据权利要求5的方法,其中,所述第二许可证在使其去遮蔽时对应于所述第一许可证,并且其中所述在所述第一用户身份设备接收(3)所述第一许可证的步骤,还包括在所述第一身份设备生成并遮蔽(17)秘密标识符,在所述许可证管理设备接收(18)所述第一许可证、所述固定假名、对注销所述第一许可证的请求、对所请求信息的匿名许可证的请求和所述遮蔽的秘密标识符,创建(15)与所述第一固定假名相关联的证书,向所述许可证管理设备发送所述证书,在所述许可证管理设备基于所述遮蔽的标识符生成(19)所述所请求信息的所述匿名许可证,在所述第一用户身份设备接收(20)所述匿名许可证,在所述第一用户身份设备使所述匿名许可证去遮蔽(21),并在所述第二用户设备接收(11)所述去遮蔽的匿名许可证;以及所述在所述许可证管理设备接收(4)一组固定假名和所述去遮蔽的匿名许可证的步骤,还包括从所述第二用户身份设备接收这些。
14.根据任一前述权利要求的方法,其中,所述第一许可证指示可分配给所述所请求信息的权限,并且其中所述接收(4)一组固定假名的步骤还包括接收指示哪些权限与所述许可证组中的每个许可证相关联的数据;所述创建(5)一组许可证的步骤还包括使所述这些许可证中的至少一个与比所述可分配权限更受限制的权限相关联。
15.一种用于信息分配同时使用户身份保密的信息系统,包括第一用户身份设备(110),其包括固定假名(111);一组用户身份设备(132),其包括至少一个用户身份设备(130);许可证管理设备(120),其被安排成从所述第一用户身份设备接收代表所请求信息(112)的数据和对应权限(113),创建第一许可证(121),向所述第一用户身份设备发送所述第一许可证,接收基于所述第一许可证的第二许可证(115)和包括至少一个固定假名(131)的一组固定假名(134),创建一组许可证(123),其中所述组(123)包括每个用户身份设备(130)的第三许可证(122),而每个用户身份设备(130)与所述第二组固定假名中所包含的各自的固定假名(131)相关联,并将所述许可证组(123)中所包含的每个所述许可证分配给它对应的用户身份设备;身份管理设备(140),其被安排成接收固定假名(131),创建证书(141)和向所述用户设备组中所包含的所述用户身份设备(130)发送证书(141)。
16.根据权利要求15的信息系统,其中所述第一用户身份设备(110)属于第一域的用户身份设备,并且所述用户身份设备组中所包含的每个用户身份设备属于所述第一域;所述第二许可证(122)等效于所述第一许可证(521);所述许可证管理设备包括第一许可证管理设备(520)和第二许可证管理设备(550);所述固定假名组(132)包括所有属于所述第一域的固定假名;所述第一许可证管理设备(520)被安排成从所述第一用户身份设备接收所述代表所请求信息(112)的数据和对应的权限(113),创建所述第一许可证,并向所述第一用户身份设备发送所述第一许可证;所述第二许可证管理设备(550)被安排成接收所述固定假名组和等效于所述第一许可证(521)的所述第二许可证,创建所述许可证组(123),然后将所述许可证组(123)中所包含的每个所述许可证分配给它对应的用户身份设备。
17.根据权利要求17的系统,其中,所述第一许可证管理设备(520)还被安排成接收所述第一固定假名;以及所述主许可证(521)是具有所述第一固定假名加密的加密,该加密包括第一对称密钥、所述权限和所述代表所述所请求信息的数据。
18.根据权利要求15-17的系统,还包括指示哪些许可证是有效的第一组数据224;其中所述许可证管理设备120还被安排成接收许可证标识和对注销对应的许可证的请求,修改所述第一组数据使得它指示对应于所述许可证标识的所述许可证被注销,从所述身份管理设备(140)接收固定假名,创建指示与所述第一固定假名相关联的哪些许可证是有效的第二组数据225,并向所述身份管理设备发送所述第二组数据;所述身份管理设备被安排成从所述第一用户身份设备接收第一固定假名,向所述许可证管理设备发送所述第一固定假名,从所述许可证管理设备接收所述第二组数据,创建包括在所述第二组数据中的证书242,并向所述第一用户身份设备发送所述创建的证书。
19.根据权利要求15的系统,其中所述第一许可证(421)是匿名许可证;所述第二许可证(421)等效于所述第一许可证;所述许可证管理设备(120)与指示哪些匿名许可证是有效的第三组数据(424)相关联;并且其中所述许可证管理设备还被安排成通过匿名信道接收代表所请求信息(112)的数据和对应的权限(113),创建匿名标识,并通过用对应于所述接收的信息和权限的密钥加密所述匿名标识来创建匿名许可证(421),向所述第一用户设备发送所述匿名许可证,从所述第二用户身份设备接收所述匿名许可证,并修改第三组数据(424)使得它指示所述匿名许可证被注销。
20.根据权利要求15的系统,其中,所述第二许可证在匿名许可证已被去遮蔽之后对应于所述生成的匿名许可证;所述第一用户身份设备(110)被安排成生成和遮蔽秘密标识符(314),向所述许可证管理设备(120)发送所述遮蔽的秘密标识符,从所述许可证管理设备接收匿名许可证(325),遮蔽所述匿名许可证,并向所述第二用户设备发送所述去遮蔽许可证(315);所述许可证管理设备还被安排成接收所述遮蔽的秘密标识符(314)和所述第一许可证,注销所述第一许可证,生成对应于所述遮蔽的秘密标识符的匿名许可证(325),向所述第一身份设备发送所述匿名许可证,从所述第二用户身份设备接收所述去遮蔽的许可证(315),注销所述去遮蔽的许可证,生成所述第三许可证(122),并将所述第三许可证分配给所述第二用户身份设备。
全文摘要
一种用于在信息分配系统中从第一用户向一个或若干个其他用户转移许可证、同时为所述这些用户提供保密的系统和方法。通过许可证的格式和使用主许可证、匿名许可证,以及通过将失效列表包括在对应于许可证的证书中,来增强保密等级。
文档编号G06F21/10GK1961270SQ200580017270
公开日2007年5月9日 申请日期2005年5月24日 优先权日2004年5月28日
发明者C·V·康拉多, M·佩特科维克, W·永克 申请人:皇家飞利浦电子股份有限公司