授权证书中的用户身份保密性的制作方法

文档序号:6479536阅读:200来源:国知局
专利名称:授权证书中的用户身份保密性的制作方法
技术领域
本发明通常涉及数字访问控制、数字权限管理领域以及类似的技术领域。本发明具体涉及提供关于数字内容的授权证书的保密性。
众所周知,例如在互联网上提供有不同类型的数字授权和访问控制系统,其中公共密钥和秘密密钥用于授权目的。可以用于这种系统中的工具的例子是SPKI(简单公共密钥基础结构)和SDSI(简单分布式安全基础结构)。
在SPKI的框架内,已知采用将公共密钥与授权相关联的授权证书,其中可以令该授权与某些类型的信息内容相关联,并且其中公共密钥表示如用户或设备这样的某些实体。
可以使用授权证书给予用户访问系统中某些内容的权限。因此,第一用户可在利用这类系统时与内容供应商联系并购买或访问某些类型的内容。在购买的过程中,第一用户利用公共密钥和秘密密钥验明他自身,而内容供应商发布表明第一用户具有关于上述内容的特定权利的授权证书,并且授权证书用于保证第一用户能访问该内容。因此,该证书包括识别第一用户的某些信息。授权证书是一种公文,其由第一用户来使用且可由与第一用户有关系的其他用户来使用以访问该内容。这意味着基本上任何人均可通过检验该证书中的用户识别信息而获知第一用户可能感兴趣的内容或其他信息。如果用户识别信息是一种上述类型的公共密钥,那么这是一项简单任务。因此需要在这类证书中保密用户身份,而同时允许用户和所有可能的相关用户以一种简单的方式来访问其内容。
由T.Aura和C.Ellison在Helsinki University ofTechnology,Espoo,Finland 2000,ISBN951-22-5000-4,ISSN0783-5396上发表的文章“Privacy and Accountability inCertificate Systems”中,论述了处理SPKI授权证书环境中的对保密性的威胁的匿名技术。所论述的技术包括-密钥定位访问控制,即在证书中使用公共密钥而不是姓名的构思,-证书缩减,为了避免对证书链中公共密钥的追踪而隐藏证书链中的中间密钥的方法,以及-暂时和特定任务的密钥,即经常改变的用户公共密钥并为新任务创建新密钥的方法。
上述技术具有局限性,下面将对其进行论述。
-密钥定位访问控制公共密钥的使用提供了某种程度的保密性,但是这个方法局限于公共密钥是用户的唯一标识符并且将一个密钥绑定给其所有者不是一种困难的任务。
-证书缩减这对于根据证书链的等级结构来提供保密性是一种好的解决方法,但是存在着在链末端的密钥不能通过缩减来隐藏的局限。
-暂时和特定任务的密钥这个方法的局限在于密钥管理,即密钥的改变和跟踪的成本,其可能成为用户和/或证书发布者的一种负担。
由于授权证书将身份或公共密钥与用户宁愿保密的授权相关联,因此需要一种对上述问题即在可公开访问的授权证书的环境中向用户提供保密性的问题的解决办法。
因此本发明的一个目的是向至少一个获得授权的用户提供保密性,该授权可用在访问及授权系统中,同时其允许对用户关于所述授权的权利的正确和安全检查。
根据本发明的第一方面,通过一种将数据关联到用户的方法来实现这个目的,该方法包括用户识别信息和数据间的关联,其特征在于在用户识别信息中使用隐藏数据隐藏用户身份,以便有可能对给定的用户身份检验是否施加了该关联。
数据可以包含内容索引标识符、属性、内容、文本等等。
根据本发明的第二方面,也通过一种对关于用户和数据之间的关联的信息给出用户访问的方法来实现这个目的,该方法包括以下步骤从用户处接收关于所述数据的请求,该请求使用了与用户相关的用户识别信息检索包括已经利用隐藏数据隐藏了的用户识别信息的关联,检验在该关联中的隐藏的用户识别信息,以及基于该关联中所隐藏的用户识别信息与至少链接到用户的用户识别信息之间的对应而向用户提供与数据相关的信息。
根据本发明的第三方面,也通过用于在所述用户和数据之间的关联中隐藏用户身份的设备而实现这个目的,该设备用于利用隐藏数据隐藏用户识别信息以在关联中提供所隐藏的用户识别信息。
根据本发明的第四方面,也通过一种用于对关于用户和数据间的关联的信息给出用户访问的设备来实现这个目的,该设备用于从用户处接收关于所述数据的请求,该请求包括与用户相关的用户识别信息,检索包括已经利用隐藏数据而隐藏了的用户识别信息的数据和用户之间的关联,检验该关联中所隐藏的用户识别信息,以及基于该关联中所隐藏的用户识别信息与至少连接到该用户的用户识别信息间的对应而向用户提供与所述数据相关的信息。
根据本发明的第五方面,也通过一种用于获得关于用户和所述数据间的关联的信息的设备来实现这个目的,该设备用于接收已经利用隐藏数据而隐藏了的与用户有关的用户识别信息,以及发送关于所述数据的包括所隐藏的用户识别信息的请求,以便能够接收包括隐藏用户识别信息的用户和所述数据间的关联。
根据本发明的第六方面,也通过一种用于在隐藏与该用户和所述数据间关联有关的至少一个用户的身份的同时提供关于该数据的信息的设备来实现这个目的,所述设备用于接收关于所述数据的包括已经利用隐藏数据而隐藏了的用户识别信息的请求,以及提供包括所隐藏的用户识别信息的在用户和所述数据之间的关联。
根据本发明的第七方面,也通过一种用在包括一个计算机可读介质的计算机上的用于对关于用户和数据间关联的信息给出用户访问的计算机程序产品来实现这个目的,其上包括
计算机程序代码装置,当所述程序装载到计算机中时,使计算机执行一旦利用与用户相关的用户识别信息而从用户处接收到与所述数据相关的请求,检索包括已经利用隐藏数据而隐藏了的用户识别信息的用户和所述数据间的关联,检验在该关联中的所隐藏的用户识别信息,以及基于该关联中所隐藏的用户识别信息与至少链接到用户的用户识别信息之间的对应而向用户提供与该数据有关的信息。
根据本发明的第八方面,也通过一种用于在所述用户和数据之间的关联中隐藏用户身份的计算机程序产品来实现这个目的,该产品在包括计算机可读介质的计算机上使用,其上包括计算机程序代码装置,当所述程序装载到计算机中时使计算机执行利用隐藏数据来隐藏用户识别信息以便在关联中提供所隐藏的用户识别信息。
根据本发明的第九方面,也通过一种用于在隐藏与用户和所述数据间的关联有关的至少一个用户的身份的同时提供与数据有关的信息的计算机程序产品来实现这个目的,该产品在包括计算机可读介质的计算机上使用,其上包括计算机程序代码装置,当所述程序装载到计算机中时使得计算机执行提供一种包括已经利用隐藏数据而隐藏了的用户识别信息的用户和所述数据间的关联。
根据本发明的第十方面,也通过一种关于数据而使用的且包括用户和所述数据间的关联的数据信号来实现这个目的,其中该关联包括已经利用隐藏数据而隐藏了的用户识别信息。
从属权利要求均致力于本发明构思的有益改进。
因此,本发明背后的通用构思是为了提供一种包括隐藏的用户标识符和授权数据的授权证书。然后可在用户使用他被赋予的授权时使用这个授权证书。
参考在下文中描述的实施例,本发明的这些及其他方面将被阐述并变得显而易见。
现在参照附图更详细解释本发明的实施例,其中

图1显示了根据本发明的系统的示意性模块,其概述了本发明的原理,图2显示了从内容供应商获得对内容的权限的方法的流程图,图3显示了由已经获得使用内容的权限的用户访问该内容的方法的流程图,图4显示了由对第一用户所购买内容具有访问权限的组的用户来访问该内容的方法的流程图,图5显示了由对第一用户所购买内容具有访问权限的组的用户获得该内容的变异方法的流程图,图6显示了由已经获得对内容的权限的用户访问内容的方法的第一种改进的流程图,图7显示了由已经获得对内容的权限的用户访问内容的方法的第二种改进的流程图,图8示意性地显示了一种其中包括用于执行至少部分本发明的程序代码的CD ROM形式的计算机可读介质,图9示意性地显示了一种智能卡形式的计算机可读介质,该智能卡中具有类似加密密钥的某种本发明的成分,以及图10示意性地显示了一种包括使用权限证书的信号。
本发明涉及就其身份与数据之间的公开有效关联而言为至少一个用户提供保密性的领域。此时可以象SPKI授权证书环境中那样以授权的形式来提供数据,并且此时可以如在本发明第一实施例中那样,以对数据或内容的访问或所有权的形式来提供授权。在这个实施例中,该内容也可以由在公共保密域内的一组用户来访问。利用SPKI框架来定义公共保密域,以便允许几个被分组在一起的用户共享他们中每个人获得的内容。例如一个组可以是一个家族。在这个环境中,通过提供一个其包括该组中所有用户的公共密钥形式的用户识别信息的证书来将这些用户分组在一起,其中此处将证书称为域证书。
在这种系统中内容的购买者可借助于用户权限证书而访问该内容。购买用户所属于的公共域中的其他用户也可以通过检验使用权限证书的访问权限函数以及通过检验域证书而访问该内容。此处使用权限证书是一种用户与数据或内容之间的公知关联形式的特定形式授权证书。
图1示意性地显示了一个系统的模块示意图,该系统包括若干公共设备22,24和20,用户使用这些设备获取已被编码且通过授权可以访问的内容,以及检测用户是否拥有对该内容的权限。关于这一点,该设备与具有连接到域证书存储器12、使用权限证书存储器16和内容存储器18的控制单元14的公共服务器11进行通信。在图中,也显示了内容供应商26,其由用户利用设备20来访问,但是其也可直接将内容和使用权限证书提供给服务器11。它的控制单元14在存储器18中存储内容并在存储器16中存储使用权限证书。为了能够购买和访问内容,每个用户具有用于认证和加密目的的例如智能卡(未显示)。
应该了解到,该系统的实现可不同于图1中所示的那样。在图1中存在例如中央内容存储器和中央使用权限证书存储器。应该了解到,使用权限证书可以在用户设备中本地提供,或者存在保存这些证书和内容的另一个设备。此外,有可能在设备公共网络任何地方处的不同设备中提供内容和相应的使用权限证书。在这种情况下,内容供应商向在公共网络中的那些不同设备提供内容和使用权限证书。域证书也可以在不同于服务器的可能是公共设备的其它设备中提供。另外设备20、22和24可能是用户设备也可能是公共设备。
现在将参照图1和2来描述对某些类型的内容的购买,其中图2显示了购买内容的方法的流程图。在这种情况下,每个用户拥有一些通常以公共密钥形式提供的用户识别信息,该公共密钥即对整个系统已知或可得到的密钥。
让我们首先假定使用第一设备20的第一用户想从内容供应商26处购买某些例如是MP3文件这样的内容。此外第一用户想要匿名地购买该内容。为了做到这一点他采用一种预付款方案,在这个方案中他购买一种其上具有秘密安全标识符的代价券。做完这个之后,在步骤30,第一用户利用他的智能卡中或设备20中所产生的随机数RAN形式的隐藏数据而隐藏了识别他的信息,在这种情况下,该信息是他的公共密钥PK。在优选实施例中,通过利用散列(hash)而完成隐藏的行为。在用户识别信息即公共密钥PK和随机值RAN的结合上形成散列H,其可表示为
H(PK//RAN)这代表由第一用户制造的对他的公共密钥值的委托。一旦利用随机值执行了这个隐藏,它对于那个证书的重新发布保持不变。对于证书而言随机数RAN也是固定的并保持如此。对于关于购买或获得内容的该证书的其它每个可能的匿名再发布,也保持RAN的值。此后在步骤32,第一用户设立一个到内容供应商的匿名信道并且发送对某段内容的请求。该请求包括内容标识符cr_id、隐藏的公共密钥H(PK//RAN)以及秘密安全标识符和随机值RAN。在步骤34,当内容供应商26接收到该请求时它首先检验秘密安全标识符的有效性并且使那个标识符无效以避免双倍的消耗。其后在步骤36,内容供应商产生并且签署使用权限证书UR形式的用户与数据之间的关联。因此,使用权限证书UR具有以下内容UR={cr_id,H(PK//RAN),RAN}signCP,其中signCP是内容供应商的签名。
其后,步骤38,内容供应商发送使用权限证书UR以及刚才购买的内容。如果用户请求这样,那么内容供应商可直接将这个证书和内容发送给用户的设备。然而,为了拥有那些对象的中央存储器,供应商直接将使用权限证书UR和内容发送给中央存储器服务器11,稍后从中可以检索它们。此后,使用权限证书UR保存在服务器11的使用权限存储器16中,而内容保存在服务器11的内容存储器18中。使用权限证书是公开信息,但是用这种方法在购买者或第一用户的公共密钥PK与所购买内容之间不存在直接链接。由于用对于每段内容cr_id都不同的随机值对公共密钥进行了散列,因此相同公共密钥对于不同内容段的使用权限证书不能被链接,因此恶意的一方不能发现特定用户已经购买的内容。
可借助于混合串(chain of mixes)而实现第一用户和供应商之间的匿名信道,这可以提供具有匿名应答地址(以向供应商提供地址来发送使用权限证书和内容)的发送人匿名(以保持第一用户的匿名)。由D.Chaum在Communications of the ACM1981年2月第24卷第2期上发表的文章“Untraceable Electronic Mail,ReturnAddresses and Digital Pseudonyms”中进一步描述了混合的概念,此处引入该文章以作参考。
如上所述的使用权限证书包括该隐藏数据,即随机值RAN。应该了解到该隐藏数据无妨在证书之外提供。
现在将参考图1和3来描述稍后第一用户如何访问内容存储器中的内容,其可利用同一个或另一个设备来进行,其中后面的图显示了这个方法的流程图。
假定第一用户使用同一个设备20,首先在步骤40利用设备20来认证第一用户。这通过他来证明他知晓或确切地说是他的智能卡知晓相应于他的公共密钥PK的秘密密钥SK来完成。因此通过这个授权,第一用户的公共密钥PK对设备20公开。其后,步骤42,第一用户利用内容标识符cr_id向设备20发送一个对内容进行访问的请求。此后设备20联系控制单元14,控制单元14从使用权限存储器16中取得使用权限证书并且将它发送给设备20。步骤44,设备20依照使用权限证书UR中的隐藏公共密钥H(PK//RAN)而检验所接收的第一用户的公共密钥PK。由于散列函数H在系统中是可公开获得的,因此设备20可通过利用使用权限证书中的随机数RAN对接收的公共密钥运行散列函数并且用使用权限证书UR中的相应值检验这个刚才运行的散列函数的值来容易地验证它是否是第一用户。根据这个检验,即如果值相同,那么在步骤46,设备20从控制单元14(其从内容存储器18中取得它)中取得该内容并在其后给出对内容存储器18中内容的第一用户访问。
该内容通常是加密的并且设备需要在执行上述步骤后以一种已知方式用解密密钥解密该内容以便用户实际访问该内容。
通过首先例如通过利用如Diffie-Hellman协议来建立的公用秘密密钥以及此后用那个共享的秘密密钥加密那两方之间的所有后续通信而在第一用户的智能卡与设备20之间建立安全信道,以避免偷听者获悉第一用户的公共密钥。
现在描述由属于同一个域并且具有访问由第一用户所获得内容的权限的第二用户来访问该内容的情形。这个描述是参考图1和4而作出的,其中后者显示了由第二用户访问该内容的方法的流程图。
首先,应当指出的是服务器11包括其中存储了域证书DC的域证书存储器12。这个域证书可具有格式DC={PK,PK′,PK″,...}signTTP,其中PK,PK′和PK″分别表示第一用户、第二用户和第三用户的公共密钥。符号signTTP表示该证书上信任的第三方如公共管理机构的签名。域证书在整个域中也是可公开获得的。
第二用户可以例如使用设备22。步骤48,首先利用设备22认证第二用户。这通过他来证明他知晓或确切地说他的智能卡知晓相应于他的公共密钥PK′的秘密密钥SK′而完成。通过这个授权,第二用户的公共密钥PK′因而对设备22公开。其后在步骤50,第二用户利用内容标识符cr_id向设备22发送访问内容的请求。当设备22接收到这个请求时,它联系控制单元14,控制单元14从域证书存储器12中取得或检索该域证书DC并且将域证书DC发送回设备22。此后在步骤52,它将公共密钥PK′与域证书DC中的一组公共密钥进行比较。此处它比较公共密钥以便它可断定第二用户的公共密钥PK′与该域中的若干其他公共密钥分组在一起。在步骤53,设备22也通过对控制单元14的请求而从使用权限存储器16中检索使用权限证书UR,并且在步骤54依照使用权限证书UR中隐藏的公共密钥H(PK//RAN)来检验该组中的所有公共密钥。以参照图3所描述的与公共密钥PK相同的方式来执行这个对所有公共密钥的检验。依据这个检验,也就是说如果任一公共密钥符合使用权限证书UR中隐藏的公共密钥,那么其后在步骤56,设备22给出对内容存储器18中内容的第二用户访问。以这种方法在允许第一用户的保密性的同时保证了允许该域的其他用户访问该内容。
用于检验域证书的公共密钥的上述方案对于小系统即不包括太多用户的系统来说很适用。然而在系统变大的情况下在域证书中查找第一用户的公共密钥是很繁重的。为了简化搜索,在一个替换实施例中使用权限证书具有指示购买者公共密钥即第一用户的公共密钥PK的索引。在本发明的一种改进中,这个索引由购买用户的公共密钥的几个或第一数目的二进制位来组成。用这种方法,仅搜索其共同具有这些数目的二进制位的公共密钥,这使处理更快了。这个方案具有微小的缺点,即放弃了购买用户即第一用户公共密钥的某些保密性。
如上所述,域证书是公共的。当如图1所示将使用权限与这个域证书存储在一起时,恶意方或攻击者能获得所有公共密钥并且然后能找出哪个用户购买了某个内容。为了避免这个问题,可以如下的替代形式来提供域证书DCDC={H(PK),H(PK′),H(PK″),...,SKD1[PK//PK′...]}signTTP,
其中SKD1是由域成员或域的用户共享并且保存在他们的智能卡中的第一秘密域密钥。域中的用户不受任何内容供应商干扰地产生它,以便提供保密性。此处H又是一个已知散列函数,而SKD1[PK//PK′...]表示利用第一共享秘密域密钥来对域中所有公共密钥结合的加密。这允许域的每个用户检索该公共密钥。
现在参考图1和5描述第二用户访问内容的替换方法,其中后面的图显示了图4中方法的一种改进。
第二用户还是使用设备22。在步骤58,首先利用设备22认证第二用户,由此第二用户的公共密钥PK’对设备22公开。其后在步骤60,第二用户利用内容标识符cr_id向设备22发送请求以访问该内容。在步骤72,当设备22接收到这个请求时它借助于控制单元14从域证书存储器12中取得域证书DC并且将公共密钥PK’与证书DC中的一组隐藏公共密钥进行比较。此时设备22对所接收的公共密钥PK’执行已知散列函数H并且找出域证书DC中的相应散列值。其后在步骤74,设备22向第二用户更精确地说向第二用户的智能卡发送域中所有公共密钥的加密结合SKD1[PK//PK′...]。在步骤75,第二用户的智能卡解密这个信息以便获得域中用户的公共密钥。其后在步骤76,设备22从第二用户处接收域中的所有解密公共密钥。与在先的描述相似,此后在步骤77设备22检索使用权限证书UR,以及其后在步骤78和80执行检验和给出访问的步骤。
当使用权限证书与域证书存储在一起时(如上所述这使得所有公共密钥对攻击者来说是可获得的),存在有另一种方法来禁止恶意的用户或攻击者找出某个用户购买了什么内容。对这个问题的其他解决方案是在加密的使用权限证书中提供随机值。
因此,改进的使用权限证书将具有以下的结构UR={cr_id,H(PK//RAN),SKD2[RAN]}signCP,其中利用保存在用户智能卡中且由所有域成员共享的第二秘密域密钥SKD2来加密随机值RAN。如前所述值RAN是在购买内容时由第一用户所选择的随机值。在使用权限证书中不具有值RAN的情况下,这个加密当然不必包括在证书中,但是如果需要它那么可能会在证书以外提供这个加密。
当第一用户购买内容时,稍微调整图2所描述的方法以便用户不得不用智能卡中的密钥SKD2加密所选随机值RAN并且在请求中也发送这个加密的值。此后内容供应商也在所产生的使用权限证书中包括这个加密的随机值。
为了向第一用户提供对内容的访问,现在参考图1和6,其中后面的图显示了图3所示方法的第一种改进的流程图。
同样假定第一用户使用设备20,在步骤82,首先利用设备20以前面描述的方式认证第一用户,使得第一用户的公共密钥PK对设备20公开。其后在步骤84,第一用户利用内容标识符cr_id向设备20发送请求以访问该内容。在步骤85,当设备20接收到这个请求时,它借助于控制单元14从使用权限存储器16中取得或检索使用权限证书UR,以及在步骤86,向第一用户发送加密的随机值SKD2[RAN]。在步骤88,将这个值提供给用户的智能卡,其将该值解密并将当前未加密值RAN返回给设备20。按照参照图3中所描述的相同的方式,在步骤90,因为现在设备20具有已解密值RAN,因此它可以继续根据使用权限证书中的隐藏公共密钥而检验公共密钥的步骤,以及在步骤92,向第一用户提供对内容的访问。
当准许第二用户访问基于这个随机数加密的内容时,可采用图4中描述的方法代替图5中描述的较长的方法。因此,不得不稍微修改图4中描述的方法,以便在执行根据使用权限证书中隐藏的公共密钥来检验域证书中的公共密钥的步骤之前将加密的随机值发送给第二用户的智能卡以进行解密。当然也可以采用图5中的方法,但是它不会增加任何额外的安全性因而仅仅复杂化了组中其他用户的认证。
当通过增加或删除成员而改变域中的用户时,存在着不得不阐明的本发明的又一个方面,那就是保密性问题。
当改变域的成员时,不得不改变或替换域证书,向域声明公共密钥的新成员关系。如果使用权限证书包括项目SKD2[RAN]那么也可能不得不替换使用权限证书。
当新用户加入域但没有随身携带任何自己的使用权限时,在利用秘密域密钥SKD1和SKD2的情况下他必须获得秘密域密钥SKD1和SKD2。这样做是为了使他访问其它域成员拥有的内容。当然他也必须拥有公共/秘密密钥对,其中该公共密钥也必须在新域证书中提供。
当一个人离开域但没有随身带走任何使用权限时,假如适当更新域证书,那么他不能再访问属于该域其他用户的任何内容。然而他仍将至少拥有他可以用来计算RAN的第二秘密域密钥SKD2。这意味着不再保障关于这个离开用户的保密性。对这个问题的解决办法是在用户离开域之后改变第二秘密域密钥并且发布具有新密钥的新使用权限证书。然而必须保存旧密钥以便旧使用权限证书有效。最终将必须利用新的第二秘密域密钥来发布旧使用权限证书的新版本。
如果离开用户随身带走他的使用权限,那么由于与以上所述相同的原因还应当改变该离开用户的第二秘密域密钥SKD2。
如果加入用户随身带来他的使用权限,那么在采用秘密域密钥SKD1和SKD2的情况下他必须获得该秘密域密钥SKD1和SKD2。必须用秘密域密钥SKD2来重新发布该加入用户的使用权限以便域中的用户能够使用该加入用户的使用权限。
因此,在当域证书成员改变的特定情况下需要重新发布证书以便保障保密性和对内容有资格的用户访问该内容的权利。
当用新的第二秘密域密钥重新发布证书时,不得不关注域中一个用户的证书不会错误地分配给另一个用户。
使用这样一种格式的使用权限证书UR={cr_id,H(PK//RAN),SKD2[RAN]}signCP,内容供应商能够不必知晓公共密钥PK即可检验公共密钥的值没有改变。这是由于新证书中散列函数具有相同的值,因为使用其它公共密钥的其它组合不会产生相同的散列值。
以如下方式来执行重新发布证书的方法。内容拥有者通过匿名信道发送请求以重新发布包括旧证书UR={cr_id,H(PK//RAN),SKD2[RAN]}signCP和新值SK′D2[RAN]的证书。此处RAN在两种情况下是相同的随机值。内容供应商检验旧使用权限证书的正确性然后创建新证书,其中将SKD2[RAN]替换为SK′D2[RAN]。
如果用户离开域并且随身带走他自己的内容但是没有带上秘密域密钥SKD2,那么他仍然需要访问该内容。这是通过根据下述方式提供使用权限证书的改变而实现的,即UR={cr_id,H(PK//RAN),SKD2[RAN],SKp[RAN],}signCP其中SKp是购买内容的用户的秘密个人密钥并且仅在购买用户的智能卡中被提供。这个秘密个人密钥用来以与利用第二秘密域密钥加密相似的方式来加密随机值RAN。在使用权限证书中不提供值RAN的情况下,这个加密当然不必包括于证书中,但是如果需要它那么可能在证书之外提供这个加密。
通常以与参照图2所描述的相同方法来执行购买或获得内容的方法,但是增加了以下内容,即用户利用秘密个人密钥加密随机值RAN并且将它包括在请求中以及此后内容供应商将加密的随机值与其余的对象一起包括在使用权限证书中。
现在参照图7简单地描述允许最初购买内容的第一用户在离开域之后访问使用权限证书。
在步骤94,首先以前面所描述的方式利用设备认证第一用户,以便第一用户的公共密钥PK对该设备公开。其后在步骤98,第一用户利用内容标识符cr_id发送请求以访问该内容。在步骤99,当设备收到这个请求时它借助于控制单元14从使用权限存储器16中取得或检索使用权限证书UR,并且在步骤100将加密的随机值SKp[RAN]发送给第一用户。在步骤102,将这个值提供给用户的智能卡,其将该值解密并将当前未加密的值RAN返回给该设备。以与前面所述相同的方法,在步骤104,现在因为设备拥有解密值RAN,它可以继续根据使用权限证书中的隐藏公共密钥来检验公共密钥的步骤,以及在步骤108向第一用户提供对内容的访问。用这种方法,离开域的用户仍然可以访问由他购买的仍然附属于该域的内容。
可对本发明做出许多进一步的改进。当使用不同类型的隐藏函数隐藏用户身份即公共密钥时,使用权限证书可拥有一种替换形式。这个形式如下UR={cr_id,RAN[PK],SKD2[RAN]}signCP其中RAN[PK]表示使用值RAN对值PK的加密。当然其中将H(PK//RAN)用于与SKD2[RAN]进行组合的上述方法不得不替换为RAN[PK]。
另一个可能的改变是利用秘密域密钥SKD2代替随机数RAN来加密公共密钥PK。
当用户已经认证了他自己并利用cr_id请求了内容时,公共密钥的隐藏使设备很难发现正确的使用权限证书。为了解决这个问题将值SKD2[cr_id]包括在使用权限证书中。这个值基本上是一个借助于第二秘密域密钥而计算的索引,但是也可能是采用第一秘密域密钥。认证之后及请求内容时所发生的是请求访问的所有用户可计算该索引值并将它发送给相应的设备。现在设备可在cr_id字段和SKD2[cr_id]字段上执行搜索以及检索正确的使用权限证书。
另一个可能的改进是为使用权限证书提供额外字段,所谓的权限属性数据字段。因此,如参照图2-7的相关的描述中所使用的,包括这种字段的使用权限证书将具有如下结构之一UR={cr_id,r_d,H(PK//RAN),RAN}signCP,UR={cr_id,r_d,H(PK//RAN),SKD2[RAN]}signCP或者UR={cr_id,r_d,H(PK//RAN),SKD2[RAN],SKP[RAN],}signCP,其中r_d表示这个权限属性数据字段。该字段由内容供应商依据用户匿名购买的权限而包括在使用权限证书中,并且它表示用户拥有的关于内容使用的权限。它可能例如是表示仅在某个日期或时间之前允许用户查看该内容。根据由内容供应商提供的使用方案,由用户依据使用权限的购买而选择这种类型的内容使用条件。使用权限的支付显然是由用户根据所选方案来完成。应当了解也可以将这个字段用于组合到本发明所有前述实施例及变化中。
就使用权限证书而言,用户的身份在上述说明书中已经参考公共密钥而制定了。应该了解到本发明决不限于公共密钥。可采用任何类型的用户识别信息,如名字,生物统计学数据或其它类型的身份。以同样方式,已经关于所购买内容的标识符而描述了与用户关联的数据。所述数据不限于此,而可以是任何类型的数据,比如像年龄或性别或任何类型授权的这样的用户属性。本说明书涉及对内容的访问,但是与数据相关的信息也可是诸如与用户相关联的嗜好列表这样的东西。
域中的服务器和不同的设备通常是以计算机或具有处理器和用于存储程序代码的相关程序存储器的拥有计算能力的设备的形式而提供的。也以内存的形式提供服务器中的不同存储器。因此用于执行本发明的函数最好是作为这种存储器中的程序代码而提供。用户的设备的程序代码也可以是以一个或多个CD ROM盘的形式而提供,其在载入程序存储器时执行本发明的函数,图8中显示了其中的一个110。与用户相关的大量功能紧密连接到拥有智能卡的用户,智能卡提供密钥和解密函数。在这种情况中,这些智能卡还可以存储用于执行上述方法的与用户相关部分的程序代码。因此,具有载入其中的智能卡的智能卡读卡器也可看作是计算机。图9中示意性地显示了一个这种智能卡112。
也将使用权限证书从内容供应商传送给服务器11以及在服务器和设备之间传送。图10示意性地显示了一个这种数据信号114,其具有包括目标地址字段116和源地址字段118的头部以及包括使用权限证书UR={cr_id,H(PK//RAN),RAN}signCP的有效负载120。
本发明具有许多优点。它通过正确且安全地检验对内容的访问权限,在允许合法用户从设备公共网络的任何地方访问内容的同时允许更大程度的保密性。本发明也减轻了内容供应商为相同内容给相同买主一再地产生许多使用权限证书的负担,如暂时公共密钥的方法中那样。
权利要求
1.一种将数据与用户进行关联的方法,包括在用户识别信息和数据之间的关联,其特征在于采用隐藏数据以在用户识别信息中隐藏用户身份,以便能够对给定的用户身份来检验是否给它施加了所述关联。
2.根据权利要求1的方法,其中利用散列函数隐藏用户身份。
3.根据权利要求1的方法,其中利用加密隐藏用户身份。
4.根据权利要求1的方法,其中隐藏数据包括随机值。
5.根据权利要求1的方法,其中关联是可公开获得的。
6.根据权利要求1的方法,进一步包括提供关联的步骤。
7.根据权利要求1的方法,进一步包括接收对关联的请求的步骤,以及提供该关联的步骤。
8.根据权利要求6的方法,进一步包括签署所提供的所产生关联的步骤。
9.根据权利要求7的方法,其中请求包括其中利用隐藏数据隐藏了用户身份(步骤32)的用户识别信息。
10.根据权利要求1的方法,其中通过秘密用户密钥来加密隐藏数据。
11.根据权利要求1的方法,其中所述隐藏数据对于重新发布的关联保持不变。
12.根据权利要求1的方法,其中关联是数字证书。
13.根据权利要求12的方法,其中数字证书是SPKI授权证书。
14.根据权利要求12的方法,其中关联包括访问所购买数字内容的权限。
15.根据权利要求1的方法,其中关联包括内容标识符。
16.根据权利要求1的方法,其中关联包括权限属性数据字段。
17.根据权利要求1的方法,其中关联包括表示与用户相关的正确用户识别信息的索引。
18.根据权利要求1的方法,进一步包括步骤发送关于所述数据的包括隐藏的用户识别信息的请求(步骤32)。
19.根据权利要求18的方法,其中请求包括隐藏数据以便能够揭示用户识别信息。
20.根据权利要求18的方法,其中请求进一步包括秘密安全标识符。
21.根据权利要求18的方法,进一步包括步骤通过利用秘密域密钥加密隐藏数据,使得隐藏数据至少在该请求中被加密。
22.对关于用户和数据之间的关联的信息给出用户访问的方法,包括如下步骤利用与用户有关的用户识别信息而从该用户处接收关于所述数据的请求(步骤42;50;60;98;84),检索包括利用隐藏数据隐藏了的用户识别信息的关联(步骤43;53;77;85;99),检验该关联中的隐藏的用户识别信息(步骤44;54;78;90;104),以及基于该关联中的隐藏用户识别信息与至少链接到用户的用户识别信息之间的对应而向用户提供与所述数据相关的信息(步骤46;56;80;92;108)。
23.根据权利要求22的方法,其中向用户提供信息的步骤包括提供对相应于所述数据的内容的用户访问(步骤46;56;80;92;108)。
24.根据权利要求22的方法,进一步包括步骤执行用户的认证(步骤40;48;58;82;94)。
25.根据权利要求22的方法,其中从用户处接收的用户识别信息与关联中的用户识别信息相同,并且提供的步骤是基于隐藏的用户识别信息与从用户处接收的用户识别信息之间的对应的。
26.根据权利要求22的方法,其中从用户处接收的用户识别信息不同于关联中的用户识别信息,并且进一步包括步骤比较该用户的用户识别信息和包括与域中所有用户相关的用户识别信息的用户域证书(步骤52;72),其中针对域证书中的用户识别信息执行利用用户识别信息检验该关联中的隐藏用户识别信息的步骤(步骤54;78),以及基于关联中的隐藏用户识别信息与域证书中任何用户识别信息之间的对应而执行提供的步骤(步骤56;80)。
27.根据权利要求26的方法,其中域证书包括域中所有用户的隐藏用户识别信息和利用秘密域密钥对域中所有用户识别信息的结合的加密。
28.根据权利要求27的方法,进一步包括步骤向所述用户发送所有用户识别信息的加密结合(步骤74)以及从所述用户处接收关于域中所有用户的识别信息(步骤76)。
29.在所述用户和数据之间的关联中隐藏用户身份的设备(112),用于利用隐藏数据隐藏用户识别信息以在关联中提供隐藏的用户识别信息。
30.用于给出对关于用户和数据间的关联的信息的用户访问的设备(20,22,24),用于从用户处接收关于所述数据的包括与用户有关的用户识别信息的请求,检索数据和用户之间的关联,其包括已经利用隐藏数据隐藏了的用户识别信息,检验关联中所隐藏的用户识别信息,以及基于关联中所隐藏的用户识别信息与至少链接到用户的用户识别信息之间的对应而向用户提供与数据相关的信息。
31.用于获取关于用户和所述数据之间的关联的信息的设备(20,22,24),用于接收已经利用隐藏数据隐藏了的关于用户的用户识别信息,以及发送关于所述数据的包括隐藏的用户识别信息的请求,以便接收包括隐藏的用户识别信息的该用户和所述数据之间的关联。
32.用于在隐藏与该用户和所述数据之间的关联相关的至少一个用户的身份的同时提供关于数据的信息的设备(26),用于接收关于所述数据的包括已经利用隐藏数据隐藏了的用户识别信息的请求,以及提供包括隐藏用户识别信息的该用户和所述数据之间的关联。
33.用在包括计算机可读介质的计算机上的用于给出对关于用户和数据间的关联的信息的用户访问的计算机程序产品(110),其上包括计算机程序代码装置,当所述程序装载到计算机中时,使计算机执行一旦利用关于用户的用户识别信息而从用户处接收到关于所述数据的请求,检索包括已经利用隐藏数据隐藏了的用户识别信息的用户和所述数据之间的关联,检验关联中所隐藏的用户识别信息,以及基于关联中隐藏的用户识别信息和至少链接到该用户的用户识别信息之间的对应而向用户提供与数据相关的信息。
34.用在包括计算机可读介质的计算机上的用于在所述用户和数据之间的关联中隐藏用户身份的计算机程序产品(112),其上包括计算机程序代码装置,当所述程序装载到计算机中时,使计算机执行利用隐藏数据隐藏用户识别信息以在关联中提供所隐藏的用户识别信息。
35.用在包括计算机可读介质的计算机上的用于在隐藏与该用户和所述数据间的关联有关的至少一个用户的身份的同时提供与数据相关的信息的计算机程序产品(110),其上包括计算机程序代码装置,当所述程序装载到计算机中时,使计算机执行提供包括已经利用隐藏数据隐藏了的用户识别信息的用户和所述数据之间的关联。
36.一种关于数据(cr_id)而使用的数据信号(114),并且其包括用户(PK)和所述数据之间的关联,其中该关联(UR)包括已经利用隐藏数据(RAN)隐藏了的用户识别信息(PK)。
全文摘要
本发明涉及用于向用户提供关于数据的保密性的方法、设备、计算机程序产品以及信号,其中该数据可以是用于识别内容的内容标识符(cr_id)。因此,关于所述数据产生的使用权限证书(UR)包括数据(cr_id),(例如通过利用(H(PK//RAN))和随机数据(RAN))隐藏用户识别信息使得能够在用户识别信息中验证用户身份。用这种方法,向用户保障了关于诸如他已经购买的内容这样的信息的保密性。
文档编号G06F21/10GK1761926SQ200480007514
公开日2006年4月19日 申请日期2004年3月18日 优先权日2003年3月21日
发明者C·V·康拉多, F·L·A·J·坎佩曼, G·J·施里詹 申请人:皇家飞利浦电子股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1