内容的安全分发的制作方法
【专利摘要】描述了用于实现将内容项从内容源安全递送到内容接收设备的方法和系统,所述内容接收设备与解密模块相关联,所述解密模块被配置用于与分裂密钥密码系统一起使用,所述分裂密钥密码系统包括加密和解密算法E和D、用于基于秘密信息S而生成加密和解密密钥e、d的密码算法以及用于分别将e和/或d分裂为i个不同的分裂加密密钥e1,e2,...,ei和/或k个不同的分裂解密密钥d1,d2,...,dk的分裂密钥算法,以使得Ddk(Ddk-1(...(Dd2(Dd1(Eei(Eei-1(...(Ee2(Ee1(X))...))=Ddk(Ddk-1(...(Dd2(Dd1(Xe1,e2,...,ei))=X,其中i,k≥1且i+k>2,其中所述方法包括:向所述解密模块提供包括至少第一分裂密钥的第一分裂密钥信息;基于所述第一分裂密钥信息、所述解密密钥d以及可选地所述秘密信息S而生成包括至少第二分裂密钥的第二分裂密钥信息;以及,向所述解密模块提供所述至少第二分裂密钥1信息,以用于基于所述解密模块中的所述第一和第二分裂密钥信息和解密算法D而对经加密的内容项Xe进行解密。
【专利说明】内容的安全分发
【技术领域】
[0001]本发明涉及内容的安全分发,特别地不过不是排他地,涉及用于内容的安全分发的方法和系统、用于在此类系统中使用的密钥生成器、解密模块、记录介质以及使用此类方法的计算机程序产品。
【背景技术】
[0002]基于文件的和流内容(例如,电影和TV节目)具有与其创作和销售关联的高成本和价值。出于这个原因,内容提供者可以使用内容保护系统(如数字版权管理(DRM)和条件访问(condit1nal access,CA)系统)以便保护内容免于被未授权分发并且其仅允许授权用户和系统访问所述内容。
[0003]在传统DRM系统中,通过内容提供者将经加密的内容(通常是以电子文件的形式)分发给购买者来实现内容分发。提供给购买者的解密密钥将允许访问所述内容,其中内容的使用可通过电子许可来限制。因此,在这种方案中,每次交易需要生成加密密钥和关联的解密密钥,由此每一个购买者获得其自己的内容的个人加密副本。解密密钥的未授权公布只引起有限的损害,因为其他副本被不同地加密。然而这样的DRM系统不太适合于真正的大规模分发系统,诸如广播、多播流系统或内容分发网络(CDN)系统。实现用在诸如CDN的大规模分发系统中的此类已知的DRM系统或方法,需要附加的处理能力以用于支持CDN边缘节点上的密集内容加密功能,和/或需要具有足够传送容量的CDN以用于允许通过分发网络传输相同内容项的多个不同的经加密的副本(以防加密是在某个中央节点执行的)。因此,这样的传统DRM解决方案将需要对现有的CDN设备进行复杂的修改,尤其是在边缘节点上,或者其在CDN中引入了大量带宽需求。
[0004]相比之下,传统的广播条件访问(CA)系统(例如DVB CA系统)被配置用于内容的大规模分发。在此类CA系统中,使用对称加密密钥(控制字)对内容进行加密(加扰),并将其传送到一大组订户。为了允许订户访问内容,所述控制字被加密,并作为所谓的授权控制消息(ECM)被发送到订户的条件访问接收器。该接收器包括安全模块(例如智能卡等),其包括秘密密钥以便解密ECM和将该经加扰的内容解扰为明文内容。在此类方案中,源自受损安全模块的秘密密钥的未经授权的公布招致损害,因为它使其他人能够访问所广播的经加密的内容。
[0005]此外,如果在此类安全模块的制造或分发期间安全模块需要用安全密钥预配置,则密钥信息需要被提供给第三方,例如安全硬件模块的制造商,其将密钥信息嵌入在此类安全硬件模块中。因此,需要在内容提供者和第三方之间的可信关系以便将密钥信息委托给第三方。提供这样大量密钥信息给第三方是不合希望的,因为如果在该过程期间密钥信息被拦截或破坏,则使得大量的硬件模块是无价值的。
[0006]当内容分发被内容提供者外包(outsource)给中间方、内容分发器时,将可能出现另外的问题。在这样的情况下,源自内容提供者的经加密的内容可能在递送给消费者之前必须被内容分发器解密以及重新加密。因此,当将内容的递送外包时,需要在内容提供者和内容分发器(诸如内容递送网络(CDN))之间的某种可信关系,以使得内容提供者可以依赖于内容分发器,使得该内容根据某些预定条件而被递送,例如安全递送,并且每次消费者向内容分发器请求特定内容项时,内容提供者被正确地付费。
[0007]如果内容分发器可以或者在某些情况下必须把经由一个或多个另外的内容分发器(例如经由互联的CDN的网络)给消费者的内容项递送外包,则内容提供者和内容分发器之间的可信关系的重要性变得更加突出。在此类情形下,去往一大组消费者的内容项的递送和记账过程可以容易地变成很复杂且非透明的过程。此外,在内容提供者和消费者之间的分发者越多,则安全可能被未授权方损坏的机会越大。内容分发器可以使用内容保护系统以用于保护内容免于未经授权的访问。然而,如果内容分发器的安全系统被损坏,那么所有存储的和处理的内容可能被潜在地损害。
[0008]因此,期望用于内容的安全递送的方法和系统,其允许经加密的内容的简单的大规模分发,而同时允许基于密钥信息来解密所述内容,所述密钥信息可以是每单独用户或用户组唯一的。此外,期望在不使得第三方(内容分发器)能够访问所述内容的情况下允许经由一个或多个第三方的内容的安全递送的方法和系统。此外,期望允许内容分发器控制或至少监视源自内容提供者经由内容分发器或内容分发器的网络而到一大群消费者的内容的安全递送并在所述内容安全递送到所述消费者期间检测安全违背的方法和系统。
【发明内容】
[0009]本发明的目的是减少或消除现有技术中已知的缺陷中的至少一个,并在本发明的第一方面提供用于实现将内容项从内容源安全递送到内容接收设备的方法。所述内容接收设备与被配置用于与分裂密钥(split-key)密码系统一起使用的解密模块相关联。所述分裂密钥密码系统包括加密和解密算法E和D、用于基于秘密信息S而生成加密和解密密钥e、d的密码算法以及使用秘密信息S以用于分别将e分裂为i个不同分裂加密密钥e1;e2,...,ei和/或用于将d分裂为k个不同的分裂解密密钥Cl1, d2,...,dk的分裂密钥算法。所述分裂密钥密码系统还被定义在于分别应用E和分裂加密密钥e1; e2,...,ei以及应用D和分裂解密密钥屯,d2,...,dk在内容项X上执行多个连续的加密和解密操作,符合Ddk(Ddk_ι (...(Dd2 ?dl (Eei (Ee^1 (...(Ee2 (Eel (X))...)) 一 Ddk(DdH (...(Dd2 (Ddl (Xel,e2,...,ei)) 一 X,其中i,k > I且i+k > 2。因此描述的上述条件定义了根据本发明的方面的分裂密钥密码系统的固有属性。在描述由始至终公开了分裂密钥密码系统和使用的算法的不同示例。根据本发明的方面的方法有利地利用此类分裂密钥密码系统的特定的属性。
[0010]根据本发明的方面的方法包括以下步骤:向所述解密模块提供包括至少第一分裂密钥的第一分裂密钥信息;基于所述第一分裂密钥信息、所述解密密钥d以及可选地所述秘密信息S而生成包括至少第二分裂密钥的第二分裂密钥信息;以及,向所述解密模块提供所述至少第二分裂密钥信息,以用于基于所述解密模块中的所述第一和第二分裂密钥信息和解密算法D而对经加密的内容项\进行解密。
[0011]在安全内容分发中使用分裂密钥密码系统提供了众多的技术优势。其允许内容源(也称为内容提供者;CP或CS)完全控制内容的分发。在本发明的方面,所述分裂密钥密码系统仅需要使用例如加密算法E和使用加密密钥e对内容项加密一次。每个安全(解密)模块可被(预)提供有不同的第一分裂密钥(例如不同的第一分裂解密密钥(I1),并且与安全(解密)模块或一组安全模块相关联的每次交易可以包括生成(并随后提供给安全(解密)模块)至少第二分裂密钥(例如不同的第二分裂解密密钥d2),其对于内容以及安全模块是唯一的。安全(解密)模块随后可以使用解密算法D和分别使用分裂解密密钥Cl1和d2来执行两个连续的解密操作。通过这种方式,内容项不需要被解密和/或对于不同的用户被分别地(重新)加密,从而允许到大量安全模块的真正的大规模递送(例如广播)。此夕卜,如果提供给安全模块的分裂密钥被损坏,它也不会影响内容项递送给与另一个安全模块相关联(包含有或可通信地连接到)的另一个内容消费单元(也被称为CCU)的安全性。它也不影响作为整体的分裂密钥密码系统的安全性。类似地,截获在交易时所生成的单个分裂密钥不影响作为整体的其他CCU或系统的安全性,因为该密钥只可被特定的CCU和内容项使用。
[0012]在一个实施例中,所述内容源可以与以下各项相关联,包括至少一个加密算法E的加密模块;以及秘密密钥生成器,所述秘密密钥生成器包括所述密码算法和分裂密钥算法,以用于分别生成用于解密内容项的加密密钥信息以及所述至少第一和第二分裂密钥信
肩、O
[0013]换句话说,加密模块可以是所述内容源的一部分,或者能够通过网络连接(有线或无线)与内容源进行通信。
[0014]在实施例中,分裂密钥可以指的是分裂解密密钥Cl1-Clk.。
[0015]在另外的实施例中,分裂密钥可以指的是分裂加密密钥ei_e1.。
[0016]在实施例中,所述方法可以包括:所述加密模块从所述秘密密钥生成器接收加密信息;所述加密模块基于所述加密密钥信息而生成至少一个经加密的内容项
[0017]在实施例中,可以使用不同的分裂密钥信息提供方法向所述解密模块提供所述第一和第二分裂密钥信息,或者其中可以分别在第一时间点和第二时间点处向所述解密模块提供所述第一和第二分裂密钥信息,优选地,所述第一时间点是其中所述解密模块被制造、销售或分发给用户或注册的时间,并且优选地,所述第二时间点是所述内容接收设备将内容请求传送到所述内容源的时间。
[0018]在实施例中,提供所述第一分裂密钥信息包括在所述解密模块的制造、分发、激活或注册期间,在所述解密模块中(优选地在所述(安全)解密模块中的安全硬件模块中)提供所述第一分裂密钥信息。
[0019]在实施例中,提供所述第一分裂密钥信息可以包括:在所述内容源和所述解密模块之间建立安全信道;以及,经由所述安全信道向所述解密模块发送所述至少第一分裂密钥信息,优选地,所述安全信道在所述内容接收设备向所述内容源的认证或注册过程期间
被建立。
[0020]在实施例中,提供所述第一分裂密钥信息可以包括:将所述至少第一分裂密钥信息嵌入到安全硬件模块中,优选地,是包括所述解密模块的智能卡;在实施例中,提供所述第一分裂密钥信息可以包括:指示所述解密模块中的第一分裂密钥生成器以用于生成第一分裂密钥信息,优选地,所述第一分裂密钥生成器被源自所述内容源的信令消息或者被所述内容源和所述解密模块共有的公共信令消息所指示,优选地,所述公共信令消息包括与在所述内容源和所述解密模块之间共享的时钟相关联的时间。
[0021]在实施例中,提供所述第二分裂密钥信息包括向所述解密模块(优选地,通过安全信道)传送所述第二分裂密钥信息,或者将所述至少第二分裂密钥信息记录到记录介质上。
[0022]在实施例中,所述内容源可以是内容传送系统或用于将经加密的内容记录到记录介质中的内容记录装置。
[0023]在实施例中,所述方法可以包括:所述解密模块接收所述经加密的内容项;基于所述至少所述第一分裂密钥信息,将所述经加密的内容项的至少部分解密成部分经解密的内容项;并且,基于所述至少第二分裂密钥信息,将所述部分经解密的内容项解密成明文内容项。在实施例中,可以响应于内容请求而接收所述经加密的内容项。
[0024]在实施例中,所述方法可以包括:向至少一个内容递送网络(CDN)或CDN的网络提供至少一个经加密的内容项;基于所述第一和第二分裂密钥信息、所述解密密钥d以及可选地所述秘密信息S而生成第三分裂密钥信息;向与所述CDN或CDN的网络关联的至少一个解密模块提供所述第三分裂密钥信息;基于所述经加密的内容项、所述CDN中的解密算法D以及所述第三分裂密钥信息而生成部分经解密的内容项;并且,将所述部分经解密的内容项传送到所述内容接收设备。因此,在本实施例中,安全性被改进,因为对于⑶N的网络中的每一个⑶N,每个内容项被唯一地加密。
[0025]在实施例中,所述至少第一分裂密钥信息可以包括多个第一分裂密钥(例如,第一分裂解密密钥)和第一分裂密钥标识符,优选地,所述多个第一分裂密钥包括:一个或多个地理特定的分裂密钥,其对特定的地理区域有效;硬件特定的分裂密钥,其对特定的硬件设备或硬件设备组有效;内容特定的分裂密钥,其对预定内容项或内容项组有效;和/或用户特定的分裂密钥,其对特定的用户或用户组有效。
[0026]在实施例中,所述方法可以包括:向所述解密模块提供用于选择一个多个分裂密钥的信息,优选地,所述信息包括一个或多个第一密钥标识符;优选地,基于所述一个或多个第一密钥标识符而从所述多个第一分裂密钥中选择一个或多个第一分裂密钥。
[0027]在实施例中,所述方法可以包括:将两个或更多所述第一分裂密钥组合成第一组合分裂密钥;以及,使用所述第一组合分裂密钥作为第一分裂密钥信息。
[0028]在实施例中,所述分裂密钥算法可以包括随机分裂密钥生成算法,用于生成第一分裂密钥信息;和另外的分裂密钥生成算法,用于基于所述第一分裂密钥信息而生成第二分裂密钥信息。
[0029]在实施例中,所述内容接收设备中的所述第一分裂密钥生成器可以包括伪随机生成器,所述方法包括:所述分裂密钥生成器接收用于生成用于所述伪随机生成器的种子的信息;生成伪随机值;检查所述伪随机值是否依从由所述分裂密钥密码系统所施加的一个或多个条件。
[0030]在实施例中,所述内容源可以与秘密密钥生成器相关联,所述秘密密钥生成器包括第二分裂密钥生成器,其与所述解密模块中的所述第一分裂密钥生成器大体上相同,其中,所述方法可以包括:提供用于生成种子的信息给所述第一和第二分裂密钥生成器;所述第一和第二分裂密钥生成器生成第二分裂密钥信息;所述秘密密钥生成器基于所述秘密信息S和所述第二分裂密钥信息而确定第一分裂密钥信息;以及,提供所述第一分裂密钥信息给与所述内容接收设备相关联的所述解密模块。
[0031]在实施例中,所述密码算法(也通常被称为密钥生成算法)是基于一次路径(one-time path)、LFSR 流密码、RSA> EIGamal 和 / 或 Damgard-Jurik 密码系统(也称为密码方案)中的至少一个。密码算法(密钥生成算法)对于所使用的(分裂密钥)密码系统是特定的。除此之外,分裂密钥算法对于所使用的密码系统也是特定的,并且与密码系统一起形成了分裂密钥密码系统。术语“特定”指示此类算法不能被随机地与任何密码系统或加密解密算法对组合使用。只有特定的组合将形成具有如在本申请中所定义的属性的分裂密钥密码系统。某些分裂密钥密码系统可能具有比其他的附加的属性(优势)。
[0032]例如,分裂密钥RSA密码系统具有附加的优势,即RSA密钥不能在没有秘密信息φ(η>.的情况下被分裂。通过这种方式,可以保证未授权方不能分裂由SKG提供的密钥。这将防止所谓的中间人攻击,其中中间人拦截由SKG提供的密钥,并将其与自己的秘密密钥相组合。此外,这也允许在不使用安全信道的情况下将第二分裂密钥信息提供给CCU。
[0033]因此,在一个实施例中,当使用根据本发明的分裂密钥RSA密码系统时,第二分裂密钥信息可以经由非安全的信道(例如广播或多播)提供给ecu。可替换地,第二分裂密钥信息可以连同经加密的内容一起被存储在光学或磁性存储介质上,其中所述分裂密钥被存储在DVD的未受保护的存储区域。
[0034]在实施例中,所述内容接收设备是以下各项中的部分:媒体播放器、机顶盒、内容记录器、用于读取存储介质(优选地,光学、磁性和/或半导体存储介质)的装置。
[0035]在另外的方面,本发明可以涉及用于实现使用分裂密钥密码系统将密钥信息从与内容源设备相关联的至少第一安全模块(优选地内容传送设备或用于将经加密的内容记录到记录介质上的内容记录设备)安全递送到内容接收设备中的至少第二安全模块的方法,所述分裂密钥密码系统包含加密和解密算法E和D、基于秘密信息S而生成加密和解密密钥e、d的密码算法以及使用秘密信息S分别用于将e分裂为i个不同分裂加密密钥e1;e2,...,ei和/或将d分裂为k个不同的分裂解密密钥Cl1, d2,...,dk的分裂密钥算法;所述分裂密钥密码系统还被定义在于分别应用E和分裂加密密钥e1; e2,..., e,以及应用D和分裂解密密钥屯,d2,...,dk在内容项X上执行多个连续的加密和解密操作,符合:Ddk(Ddk-1 (...(Dd2 (Ddi (Eei (Ee1-J (...(Ee2 (Eel (X) )...)) 一 Ddk (Dd^1 (...(Dd2 (Ddl (Xel, e2,..., ei)) — X,其中i,k > I且i+k > 2,其中,所述方法可以包括:提供至少第一分裂密钥信息给所述第二安全模块;所述第一安全模炔基于加密算法E和至少一个加密密钥e而生成经加密的密钥Ee(K),其中,K是用于对要被所述内容传送设备所传送的内容进行加密的密钥;密钥生成器包括所述密码算法和分裂密钥算法,所述分裂密钥算法基于所述第一分裂密钥信息、所述解密密钥d和所述秘密信息S而生成第二分裂密钥信息,并且将所述第二分裂密钥信息传送到所述第二安全模块;所述第二安全模炔基于所述第二分裂密钥信息和所述解密算法而在所述经加密的密钥Ddl(E6GO)上应用解密操作。
[0036]该实施例允许使用分裂密钥密码系统的内容项X的高效对称加密和对称加密密钥匕的安全非对称加密相组合的混合加密。在流媒体的情况下,所述对称加密密钥(或秘密种子)kx可以规律地在时间上改变(密钥翻转(roll-over))。
[0037]在另外的 方面,本发明可以涉及用于使用分裂密钥密码系统经由至少第一和第二内容分发网络(CDN1、CDN2)将内容项从内容源安全递送到与解密模块相关联的至少一个内容接收设备的方法,所述分裂密钥密码系统包括加密和解密算法E和D、基于秘密信息S而生成加密和解密密钥e、d的密码算法以及使用秘密信息S用于分别将e分裂为i个不同分裂加密密钥e1; e2,..., e,和/或将d分裂为k个不同的分裂解密密钥屯,d2,...,dk的分裂密钥算法;所述分裂密钥密码系统进一步被定义在于分别应用E和分裂加密密钥e1; e2,...,ei以及应用D和分裂解密密钥屯,d2,...,dk而在内容项X上执行多个连续的加密和解密操作,符合 Ddk (DdlriC..(Dd2 (Ddl (Eei (Eei^1 (...(Ee2 (Eel (X))...))=Ddk(DdlriC..(Dd2(Ddl (Xelje2,..., ei)) =X,其中 i,k ≥ I 且 i+k> 2,其中所述方法可以包括:提供至少第一分裂密钥信息给所述解密模块;提供至少一个经加密的内容项)?或者部分经解密的内容项给所述第一 CDNl ;所述第一 CDNl将所述至少一个经加密的内容项或部分经解密的内容项传送到所述第二 CDN2 ;密钥生成器包括所述密码和分裂密钥算法,其基于所述第一分裂密钥信息、所述加密密钥d和可选地所述秘密信息S来生成与所述至少一个经加密的内容项Xe或者部分经解密的内容相关联的第二和第三分裂密钥信息;将包括所述第二分裂密钥信息的第一分裂解密控制消息传送给所述第一 CDNl,并且将包括第三分裂密钥信息的第二分裂解密控制消息传送给所述加密模块;所述第一 CDNl将所述第一分裂解密控制消息中继给所述第二 CDN2 ;通过使用所述解密算法D和所述第二分裂密钥信息而在所述经加密的内容项或所述部分经解密的内容项上应用解密操作而生成部分经解密的内容项或另外的部分经解密的内容项;以及,将所述部分经解密的内容项或另外的部分经解密的内容项传送至所述解密模块,以用于基于所述解密模块中的所述第一和第三分裂密钥信息和解密算法D将所述部分经解密的内容项或另外的部分经解密的内容项解密成明文内容项。
[0038]因此,在本实施例中,⑶NI从内容源屏蔽所有下游⑶N(⑶N2)。通过这种方式,CS,并且特别是与CPS相关联的秘密密钥生成器,只需要具有与CDNl和CCU的接口。CS仅与CDNl交互并且CDNl通过将经加密的内容和包括分裂密钥信息的请求路由消息透明转发到⑶N2而将内容项的递送外包。此外,该系统允许通过⑶N网络的内容项的透明递送。在递送过程的不同阶段中,CS被告知并被要求采取某种动作,例如:生成和/或递送某些(分裂)密钥。
[0039]在另一个方面,本发明可以涉及用于实现将内容项X从内容源安全递送到内容接收设备的系统,所述系统被配置用于与分裂密钥密码系统一起使用,所述分裂密钥密码系统包括加密和解密算法E和D、用于基于秘密信息S而生成加密和解密密钥e、d的密码算法以及用于分别将e分裂为i个不同的分裂加密密钥e1; e2,...,ei和/或用于将d分裂为k个不同的分裂解密密钥屯,d2,...,dk的分裂密钥算法;所述分裂密钥密码系统进一步被定义在于分别应用E和分裂加密密钥e1; e2,...,ei以及应用D和分裂解密密钥Cl1, d2,...,dk而在内容项X上执行多个连续的加密和解密操作,符合Ddk (Ddlri (...(Dd2 (Ddl (Eei (Eei^1 (..? (Ee2 (Eel (X))...)) =DtutH (Dd2 (Ddl (Xel,e2,...,ei)) =X,其中 i,k ≥ I 且i+k>2,其中,所述系统可以包括:与内容源相关联的加密模块,所述加密模块包括用于生成经加密的内容项\的所述加密算法E ;与所述加密模块相关联的密钥生成器,其包括所述密码算法和所述分裂密钥算法;以及,与所述内容接收设备相关联的解密模块,其被配置成基于至少第一和第二分裂密钥信息和所述解密算法D而对经加密的内容项进行解密。
[0040]在又另一个方面,本发明可以涉及一种在如上所述的系统中使用的密钥生成器。所述密钥生成系统可以包括:密码生成器,用于基于秘密信息S而生成解密密钥d和加密密钥e ;分裂密钥生成器,包括用于基于所述秘密信息S分别生成至少1-ι个不同的随机分裂加密密钥e1; e2,...,ei_!和/或至少k-Ι个不同分裂解密密钥Cl1, d2,...,Clk^1的随机生成器和用于确定另外的分裂加密密钥ei或另外的分裂解密密钥dk ;的另外的分裂密钥算法,所述分裂密钥在包括加密和解密算法E和D的分裂密钥密码系统中使用;所述分裂密钥密码系统进一步被定义在于分别应用E和分裂加密密钥e1; e2,..., e,以及应用D和分裂解密密钥屯,d2,...,dk在内容项X上执行多个连续的加密和解密操作,符合Ddk(Ddlri (...(Dd2(Ee2 (Eel (X))...)) =Ddk (Ddlri (...(Dd2(Ddl(Xel,e2,...,ei))=父,其中14≥1
且 i+k > 2。
[0041]在实施例中,所述加密和解密算法E、D和所述密码算法都是基于EIGamal算法(方案),并且其中用于生成k个分裂密钥的所述分裂密钥算法可以被定义为:
[0042]-所述随机生成器被配置成选择小于P的k-Ι个随机整数Cl1...Clk^1 ;
[0043]-将最终整数计算为dk = d- ((I1+...+U (mod p).。
[0044]或者,其中所述加密和解密算法都是基于Damgard-Jurik方案E、D,并且其中用于生成k个分裂密钥的所述分裂密钥算法可以被定义为:
[0045]-确定小于η的η-1个随机整数dl,...,(Ilri,计算
[0046]dk = d- ((I1+...+U (mod η).。
[0047]或者,其中所述加密和解密算法E、D都是基于一次填充(one-time pad)方案,并且其中用于生成k个分裂密 钥的所述分裂密钥算法可以被定义为:
[0048]-确定k-Ι个随机二进制流Cl1...Clk^1
[0049]-计算dk= di ?...? dk-1 Θ β.ο
[0050]或者,其中所述加密和解密算法E、D都是基于RSA方案,并且其中用于生成k个分裂密钥的所述分裂密钥算法可以被定义为:
[0051]-确定与φ(η)互质的k-1个随机整数屯,...,C^1
[0052]-计算dk= (Cl1 * …* dk-1)-1 * d (mod φ(η))。
[0053]在又另一个方面,本发明可以涉及在内容接收设备(优选地内容消费单元)中使用的解密模块,所述解密模块被配置用于在分裂密钥密码系统中使用,所述分裂密钥密码系统包括加密和解密算法E和D、用于基于秘密信息S而生成加密和解密密钥e、d的密码算法以及使用秘密信息S用于分别将e分裂为i个不同的分裂加密密钥e1; e2,...,ei和/或将d分裂为k个不同的分裂解密密钥Cl1, d2,...,dk的分裂密钥算法;所述分裂密钥密码系统进一步被定义在于分别应用E和分裂加密密钥e1; e2,..., e,以及应用D和分裂解密密钥Cl1, d2,...,dk在内容项X上执行多个连续的加密和解密操作,符合Ddk (Ddlri (...(Dd2 (Ddl (Eei (EeH (...(Ee2 (Eel (X))...)) =Ddk (Ddlri (...(Dd2 (Ddl (Xel, e2,..., ei)) = X,其中 i,k ≥ I且i+k > 2,其中所述解密模块可以包括:用于接收经加密的内容的输入,使用至少一个加密密钥和加密算法E而加密所述内容;安全储存(storage),用于存储所提供的第一分裂密钥信息;用于被提供有第二分裂密钥信息的输入;以及至少一个处理器,用于使用所述第二分裂密钥信息和解密算法D执行至少第一解密操作,以及用于使用所提供的第一分裂密钥信息和解密算法D执行至少第二解密操作。
[0054]在一个方面,本发明可以涉及一种记录介质,其包括包含与使用加密算法E和至少加密密钥或分裂加密密钥对其进行加密的内容项相关联的数据的记录区域,以及包含与至少一个分裂解密密钥相关联的数据的记录区域,所述分裂解密密钥用于使用解密算法D部分解密所述经加密的内容项,所述加密和解密算法E、D和所述至少一个分裂密钥是分裂密钥密码系统的部分,所述分裂密钥密码系统包括加密和解密算法E和D、用于基于秘密信息S而生成加密和解密密钥e、d的密码算法以及使用秘密信息S用于分别将e分裂为i个不同的分裂加密密钥e1; e2,...,^和/或将d分裂为k个不同的分裂解密密钥Cl1, d2,...,dk的分裂密钥算法;所述分裂密钥密码系统进一步被定义在于分别应用E和分裂加密密钥e1; e2,...,ei以及应用D和分裂解密密钥屯,d2,...,dk在内容项X上执行多个连续的加密和解密操作,符合 Ddk (DdlriC..(Dd2 (Ddl (Eei (Eei^1 (...(Ee2 (Eel (X))...))=Ddk (DdlriC..(Dd2 (Ddl (Xelje2,..., ei)) = X,其中 i,k≥ I且i+k>2。取决于所使用的分裂密钥算法,包括与至少一个分裂解密密钥相关联的数据的记录区域可以是安全记录区域或不安全记录区域。
[0055]在另一个方面,本发明可以涉及一种内容复制设备,其包括如上所述的解密模块,其中,所述内容复制设备可被配置成复制内容项和记录在如上所述的记录介质上的分裂密钥的至少部分。本发明还可以涉及一种包括软件代码部分的计算机程序产品,所述软件代码部分被配置用于当在计算机的存储器中运行时其执行如上所述的方法步骤中的至少一个。
[0056]将参照附图进一步地说明本发明,其将示意性地示出根据本发明的实施例。应当理解,不以任何方式将本发明限制为这些特定实施例。
【专利附图】
【附图说明】
[0057]图1(A)和(B)示出了根据本发明的实施例的用于内容的安全分发的分裂密钥密码系统。
[0058]图2示出了根据本发明的一个实施例的秘密密钥生成器的示意图。
[0059]图3㈧和⑶示出了根据本发明的各种实施例的分裂密钥密码系统中使用的流密码。
[0060]图4示出了根据本发明的各种实施例的图示生成加密/解密对e、d和关联的分裂密钥的流程图。
[0061]图5(A)和(B)示出了根据本发明的另一个实施例的用于内容的安全分发的分裂密钥密码系统。
[0062]图6(A)和(B)示出了根据本发明的又另一个实施例的用于内容的安全分发的分裂密钥密码系统。
[0063]图7示出了根据本发明的实施例的用于将内容递送到内容消费单元的安全内容递送系统的示意图。
[0064]图8示出了根据本发明的一个实施例的使用分裂密钥密码系统的内容递送系统的协议流的示意图。
[0065]图9示出了根据本发明的另一个实施例的使用分裂密钥密码系统的内容递送系统的协议流的示意图。 [0066]图10示出了传统的多层加密方案。
[0067]图1l(A)-(C)示出了多层加密方案中分裂密钥密码系统的各种实现方式。[0068]图12示出了根据本发明的实施例的混合分裂密钥密码系统。
[0069]图13示出了根据本发明的另外的实施例的用于内容的安全分发的分裂密钥密码系统。
[0070]图14示出了根据本发明的又另一个实施例的使用分裂密钥密码系统的内容递送系统的协议流的示意图。
[0071]图15示出了根据本发明的又另一个实施例的用于内容的安全分发的分裂密钥密码系统。
[0072]图16示出了根据本发明的实施例的用于内容的安全分发的分裂密钥密码系统。
[0073]图17示出了根据本发明的另一个实施例的用于内容的安全分发的分裂密钥密码系统。
[0074]图18示出了根据本发明的实施例的与安全内容分发系统相关联的协议流。
[0075]图19示出了根据本发明的实施例的与安全内容分发系统相关联的协议流。
[0076]图20(A)和(B)示出了根据本发明的另一个实施例的安全内容分发系统的示意图。
[0077]图21示出了根据本发明的实施例的使用分裂密钥密码系统的内容递送系统的协议流的示意图。
【具体实施方式】
[0078]图1(A)示出了内容分发系统的高级示意图。该系统通常可以包括去往一个或多个内容消费单元(CCU) 104的内容源(CS) 102,例如内容提供者系统(CPS)或被配置成从内容提供者系统接收(明文)内容的内容处理系统。
[0079]所述内容提供者系统可以使用内容分发器或一系列的不同内容分发器103,其被配置成将来自内容源的内容分发到内容消费单元。内容分发平台可使用用于递送内容的电子装置。例如,在一个实施例中,一个或多个内容递送网络(CDN)。可替换地,其可以使用用于递送记录介质(例如磁性记录介质、使用如DVD和蓝光技术的光学记录介质、光磁记录介质和/或固态记录介质)上的内容的物理装置。
[0080]所述CS可被配置成向客户或其他内容分发器提供和/或递送内容项,例如视频、图片、软件、数据和/或以文件和/或流的形式的文本,包括分段文件和/或流(例如HAS类型的文件和/或流)。消费者可以使用包括用于与CDN及CPS对接的软件客户端的内容消费单元(CCU)来购买和接收内容项。
[0081]CUU通常可以涉及被配置成处理基于文件的和/或(实时)流的内容的设备。此类设备可以包括诸如电子平板、智能电话、笔记本、媒体播放器之类的(移动)内容播出设备和用于播出诸如蓝光播放器的DVD之类的记录介质的播放器。在一些实施例中,CCU可能是机顶盒或内容记录和存储设备,其被配置用于处理和临时存储内容以供另外的内容消费单元的未来消费。
[0082]在参照图1(A)描述的内容递送系统中,期望的是内容被安全递送到大量的(XU,并且帐单和支付被高效地处理。
[0083]因此,所述内容需要通过内容保护系统的保护,其可以被实施以使得当内容递送例如由消费者购买内容项而发起时,经加密的内容被递送到消费者的CCU。对经加密的内容的访问由允许在CCU处对经加密的内容进行解密的信息授权。
[0084]如将在下文更详细地描述,根据本发明的内容保护系统允许内容源(有时也被称为内容源发者)完全控制内容的安全递送,即使内容的实际递送被外包给一个或多个内容分发器。为了达到这个目的,内容保护系统使用所谓的分裂密钥密码系统。将在下文参考附图更详细地描述该密码系统的细节和优势。
[0085]图1(B)示出了根据本发明的实施例用于将源自CS102的内容分发给一个或多个内容消费单元CCU104的分裂密钥密码系统。所述CS可以与包括加密算法E的加密模块112以及用于基于秘密信息S而生成密钥的秘密密钥生成器114相关联。CCU可以包括解密模块DM105,即用于执行解密算法D的处理器。在一个实施例中,所述解密模块可以被配置成使用解密算法D和包括至少第一分裂(解密)密钥d2的第一分裂密钥信息来执行至少第一分裂解密操作108,以及使用解密算法D和包括至少第二分裂(解密)密钥Cl1的第二分裂密钥信息来执行第二分裂密钥操作110。优选地,解密模块被实现为安全模块,例如智能卡、(U) SIM或其它合适的硬件安全处理器。可以被实现为CPS的一部分或作为单独的密钥服务器的秘密密钥生成器(SKG) 114可以生成加密密钥和所谓的分裂密钥。
[0086]分裂密钥密码系统可以被配置成基于加密和解密算法E和D以及由秘密密钥生成器所生成的密钥信息而提供内容项X到CCU的安全递送。为实现此目的,加密算法E可以使用加密密钥e以将内容项X加密成经加密的内容项\ = Ee(X),其中加密密钥e是由秘密密钥生成器114生成的(这里的\是艮(幻的简化符号,即使用加密密钥e而将加密算法E应用于内容项X)。
[0087]经加密的内容可以作为经加密的文件或流被电子地发送至(XU。用于电子传输的合适协议包括流协议,例如DVB-T、DVB-H、RTP、HTTP (HAS)或通过IP多播的UDP/RTP。在实施例中,可以使用自适应流协议,诸如HTTP自适应流(HAS)、DVB自适应流、DTG自适应流、MPEG DASH、ATIS自适应流、IETF HTTP实时流和相关协议。所述内容可在特定的格式的合适传输容器中被传输,例如AVI或MPEG。
[0088]可替换地,经加密的内容可以被记录在存储介质上,例如诸如蓝光光盘之类的光存储介质、固态存储介质或磁存储介质,其可被递送到CCU的用户。
[0089]从图1(B)中可以看出,秘密密钥生成器可以生成分裂密钥信息IlS1,2,其包括分裂解密密钥Cl1和d2。在一个实施例中,可以使用不同提供过程将不同的分裂密钥提供给解密模块。此外,在另一个实施例中,不同的分裂密钥的提供可以在不同的时间点处发起。
[0090]例如,在第一实施例中,第一分裂密钥d2可被预配置在解密模块中。这里的预配置可包括在可以是解密模块的部分的安全硬件单元106中存储或嵌入分裂密钥d2。所述安全硬件单元可以被设计为无篡改(tamper-free)硬件模块,其不可或至少很难以进行反向工程。为了实施物理上安全的密钥存储模块,安全硬件单元可包括闪速存储器,其包括了OTP(—次性可编程)存储技术。
[0091]在一个实施例中,安全硬件单元可能是可信计算组指定的可信平台模块(TPM)的部分。参考如在国际标准IS0/IEC 11889中记载的TPM规范。在这种情况下,在CXU的启动或初始化时,所述安全硬件单元可被提供有至少分裂密钥。在启动期间,TPM可以与秘密密钥生成器建立安全连接,所述秘密密钥生成器被配置成发送分裂密钥信息到解密模块。
[0092]在另一个实施例中,所述解密模块可以在离线过程中被提供有分裂密钥。例如,包括解密模块的(U)SIM或智能卡的部分可以在安全硬件模块的制造期间、分发期间、激活或者注册期间被预配置有一个或多个分裂密钥。例如,在安全硬件模块的购买期间,该模块可被配置有一个或多个分裂密钥。
[0093]在又另一个实施例中,,可以使用关联于注册和/或认证过程的安全信道与网络一起向所述解密模块提供一个或多个分裂密钥。例如,分裂密钥可以在与CCU关联的认证和/或注册过程期间被获取并随后被存储在解密模块的安全存储器中。例如当使用移动CCU时,可以在执行与移动标准关联的认证和密钥协商(AKA)过程期间提供分裂密钥。
[0094]所述安全硬件模块可以进一步被提供有第二另外的分裂密钥信息。优选地,与第二分裂密钥信息相关联的提供过程不同于与第一分裂密钥信息相关联的提供过程。可替换地,在不同的时刻使用相同或类似的提供方法向安全硬件模块提供第一和第二分裂密钥信肩、O
[0095]例如,在一个实施例中,第二分裂密钥信息可以经由安全信道(例如,在购买内容项时的SSL或SHTTP连接)而被递送到CCU中的解密模块。更详细地,所述CCU可以包括客户端,其被配置成电子地经由安全信道接收至少一个经加密的内容项以及所述至少第二分裂密钥信息。在另一个实施例中,所述CPS可以将记录介质上的经加密的内容以及至少一个分裂密钥分发到CCU。例如,所述经加密的内容可以被记录到光或磁存储介质上,其中所述分裂密钥被存储在DVD的秘密存储区域。
[0096]值得注意的是,C⑶中的解密模块还可以包括分裂密钥功能,例如,可以从中选择分裂密钥的包含分裂密钥信息的(索引)表或者预定的分裂密钥生成器。在这种情况下,所述CPS可以发送分裂密钥识别信息(例如表索引、种子和/或一个或多个一些其它标识符)而不是分裂密钥给所述分裂密钥功能以便CCU选择或者在(伪随机生成器)的情况下生成对CPS也已知的一个或 多个分裂密钥。参照图13-15和图20-21更详细地描述此类分裂密钥密码系统的示例。
[0097]分裂密钥对于完全解密经加密的内容项Xe是必要的。因此,如上所述,分裂解密密钥d21182可以由密钥生成器生成并被提供给CCU。然后,如果CCU的用户请求递送内容项X,则CPS可以向CXU提供另外的分裂解密密钥Ci1Iis1给CXU中的安全模块。当递送经加密的内容项给用户(电子地或使用物理存储介质)时,第一解密模块110可以使用分裂解密密钥Cl1和解密算法D将经加密的内容项“部分”地解密成Xe,dl 116。
[0098]因此,所述“部分”经解密的内容项Xe,dl可以由第二解密模炔基于分裂解密密钥d2和解密算法D而对内容项X完全解密,使得Dd2 (Ddl (Ee (X)) = Dd2 (Ddl (Xe)) = Dd2 (Xejdl)=X.这里,Xe, dl是经加密的内容项Xe上使用解密算法D和分裂解密密钥Cl1的解密操作的简化符号。注意,本文档中的词语“部分”(或“不完全地”)指的是加密/解密的过程,而不是内容。此外,部分经解密的内容xe, dl是密文,因此对未授权访问来说与完全加密的内容)?一样安全。
[0099]如本文档中所描述的分裂密钥密码系统要求艮(幻和屯的组合的知识不泄露关于X的信息。此外,在一些实施例中,也可以要求民⑴和d2的组合的知识不泄露关于X的信息。而且,特别是在CDN的环境下,分裂密钥密码系统将被配置,使得其允许基于一个加密密钥e而生成许多不同的分裂密钥对Clpd2 (这样每个内容消费者可得到用于完全解密所述经加密的内容的不同的(个人化)密钥集),并且E6(X)和许多不同的分裂解密密钥Cl1的组合的知识不泄露关于X的信息并且(在某些实施例中)Εε(Χ)和许多不同的分裂解密密钥d2的组合的知识不泄露关于X的信息(在某些实施例中)。
[0100]因此,使用如参考图1(B)所描述的分裂密钥密码系统的安全内容分发系统提供以下技术优势:cs完全控制内容的分发。所述CS知道内容项可以仅在包含所述预配置分裂密钥d2的CCU处播放,而不在未授权的设备上播放,从而提供保护而避免经解密的内容进一步扩散到其他CCU。此外,内容项可以仅由具有提供有分裂密钥Cl1的CCU的消费者播放。这允许针对想要观看比付费的更多的内容的消费者的保护。
[0101]所述分裂密钥密码系统仅需要使用加密密钥将内容项加密一次。每一个安全模块可以被提供有不同的第一分裂密钥,并且与安全模块或安全模块组相关联的每一次交易可以包括生成至少第二分裂密钥,其对内容和所述安全模块是唯一的。通过这种方式,内容项不需要针对不同的用户分别地(重新)加密,从而允许到大量安全模块的真正的大规模递送,例如广播。此外,如果分裂密钥提供的安全模块被损坏,这不影响作为整体的其它CCU或密码系统的其他安全性。类似地,拦截在交易时所生成的单个分裂密钥,不影响作为整体的其它CCU或系统的安全性,因为这个密钥 可以仅被特定的CCU和内容项所使用。
[0102]将在下文更详细地描述,分裂密钥密码系统允许以下生成:加密密钥e和另外的分裂密钥Cl1的实际生成的可被推迟到后一阶段,例如当消费者实际请求内容项时。
[0103]在图1 (B)中所示的分裂密码系统仅仅是若干组分裂密钥密码系统的一个非限制性的示例,其中每个分裂密钥密码系统是由至少一对加密和解密算法E、D、用于基于秘密信息S而生成加密和解密密钥e、d的密码算法以及用于分别将e和/或d分裂为多个分裂加密和/或分裂解密密钥的分裂密钥算法所定义。
[0104]一组分裂密钥密码系统可以由密码算法E和D、用于基于秘密信息S而生成加密和解密密钥e、d的密码算法以及将解密密钥d多重分裂为任意数目的k个分裂解密密钥Cl1, d2,...,dk,(k ≥ 2)的分裂密钥算法所定义,使得 Ddk (Ddlri (...(Dd2 (Ddl (Ee(X))...))=Ddk(DdkJ...(Dd2(Xejdl)...)) =X.。此处人^^是分别使用分裂解密密钥屯,‘...,dk,和解密算法D在经加密的内容项Xe上的解密操作的预定序列的简化符号。
[0105]另一组分裂密钥密码系统可以由密码算法E和D、用于基于秘密信息S而生成加密和解密密钥e、d的密码算法以及用于将e多重分裂为任意数目的i个分裂加密密钥ei,e2, , ei(i ^ 2)的分裂密钥算法所定义,使得 Dd (Eei (Eei^1...(Ee2 (Eel (X))...)) = Dd (Xelje2,...,ei)) = X.。此处,Xel,e2,...,ei是分别使用分裂加密密钥e1; e2,...,ei和加密算法E在(明文)内容项X上执行的加密操作的预定序列的简化符号。又另一组分裂密钥密码系统可以由密码算法E和D、用于基于秘密信息S而生成加密和解密密钥e、d的密码算法以及用于将e和d 二者多重分裂为任意数目的i个分裂加密密钥e1; e2,...,ei和k个分裂解密密钥Cl1, d2,…,dk,(i,k≥I且i+k > 2)的分裂密钥算法所定义,使得,Ddk(Ddlri (...(Dd2 (Ddi (Eei (EeH (...(Ee2 (Eel (X) )...)) 一 Ddk (DdH (...(Dd2 (Ddl (Xelj e2,..., ei)) — X.。
[0106]在一些实施例中,E和D可以是不同的算法。在其它实施例中,加密和解密算法E和D可以是相同的,即E = D,其允许将e和d 二者多重分裂为任意数目的i个分裂加密密钥e1; e2,...,ei和k个分裂解密密钥dk,Clk^1,...,Cl1.,使得
Ddk (Ddk-1 (...(Dd2 (Ddi (Eei (Ee^1 (
?..(Ee2 (Eel 00 )...)) — Edk (Eu (...(Ed2 (Edl (Eei (Eei^ (...(Ee2 (Eel 00 )...)) — Xel,e2,..., ei,dl,d2,··· dk[0107]在此类分裂密钥加密系统中,加密密钥e和解密密钥d之间没有功能上的区别。在一些实施例中,所述加密和/或解密算法可以是通信的,即它们可以以任何次序来应用而始终给出相同的结果。当分裂密钥以与其生成不同的次序而使用时,或当它们以所述分裂密钥生成时还未知的次序使用时,此类可交换的属性可能是有用的。但是应当理解的是,无论何时所述术语“使得”被用于上述所参考的分裂密钥密码系统(组)的实施例,该术语用来定义一个或多个此类分裂密钥密码系统(组)的属性(行为或特性)。
[0108]将在下文更详细地描述上面提及的分裂密钥密码系统的示例。
[0109]图2示出了根据本发明的一个实施例的秘密密钥生成器200的示意图。所述秘密密钥生成器可包括用于生成与密码算法相关联的加密/解密密钥对e、d的密码生成器202。在一个实施例中,此类密码算法可以包括预定的(伪)随机密码算法215、预定的密码算法216和用于基于加密或解密密钥e、d中的至少一个而生成分裂密钥的分裂密钥生成器204、以及预定的随机分裂密钥算法220和另外的分裂密钥算法220。在一个实施例中,所述另外的分裂密钥算法可以是确定的分裂密钥算法。在其它实施例中,所述另外的分裂密钥算法可以包括伪随机分量。所述密码生成器和分裂密钥生成器可以被配置成生成预定的分裂密钥密码系统所需的密钥,这将在下面更详细地描述。
[0110]在图2的示例中,所述密码生成器可以包括伪随机生成器208,其被配置成基于一些配置参数212 (例如一个或多个加密密钥的长度、解密密钥的长度、将要生成的随机数的长度)而生成秘密信息S210。秘密信息S可以被用于基于伪随机密钥生成器215而生成(随机)加密密钥e214。密码算法216可使用随机加密密钥e以生成解密密钥d218。
[0111]秘密信息S可以依赖于所使用的特定密码算法。在一个实施例中,秘密信息S可以是基于密码算法计算d或e所需的信息和/或是计算分裂密钥所需的信息。例如,如下文中更详细地描述,当 使用RSA方案时,解密密钥和分裂解密密钥需要知道素数P和q以便确定Eurler的欧拉函数φ(Π)。
[0112]在其它实施例中,人们可以选择保留对于生成d、e和分裂密钥秘密所需的某些信息。例如,如下文中更详细地描述,在RSA方案中,如下文所述的EIGamal方案和/或Damgard-Jurik(DJ)方案,人们可以决定不将参数η和p视作公共的,而是作为私人(秘密)的信息。例如,人们可能决定将η或P作为经加密的信息而传送到(XU。
[0113]在又其它实施例中,例如当在RSA方案、EIGamal方案和/或Damgard-Jurik(DJ)方案中的参数η和P被用作为公共信息时,秘密密钥信息S可以是“空”的。在那种情况下,除了 d之外不需要另外的秘密信息以确定e (或反之亦然)。
[0114]秘密信息S和解密密钥d可以被分裂密钥生成器202使用以生成分裂密钥,例如,分裂加密密钥和/或分裂解密密钥。为此目的,秘密信息S可以被输入到伪随机分裂密钥生成器220以生成随机分裂解密密钥d2222。另外的分裂密钥密码算法224可以基于d和d2而生成另外的分裂解密密钥屯226。
[0115]在另一个实施例中,所述分裂密钥生成器可以被配置成基于秘密信息S和d而生成k个分裂解密密钥(k≤2)。在另外的实施例中,分裂密钥生成器可以被配置成接收秘密信息S和加密密钥e以便生成i个分裂加密密钥e1; e2,...,ei (i≤2)。在又另外的实施例中,分裂密钥生成器可以被配置成基于密钥信息S和加密/解密密钥对e、d而生成i个分裂加密密钥e1; e2,...,ei和k个分裂解密密钥Cl1, d2,...,dk,(i,k≤I且i+k ≥ 2)。
[0116]如上所述,加密/解密算法对E、D可与用于生成分裂加密和/或分裂解密密钥的分裂密钥算法相关联。下面描述了多个此类分裂密钥密码系统。
[0117]在第一实施例中,分裂密钥密码系统可基于已知为“一次填充”的对称加密算法。在本实施例中,加密密钥e可以以使用随机生成器而生成的长的随机二进制数的形式来生成。加密算法E可以是二元函数,用于通过使用e对X应用异或(XOR, ?)操作而将内容
项X加密成经加密的内容项Xe:
[0118]e = RAN_1
[0119]Xe = Ept(X)= X Θ e
[0120]第一分裂解密密钥Cl1和第二分裂解密密钥d2可基于e而形成。例如,第二分裂解密密钥d2可以是具有与e相同的长度的随机二进制数,并且第一分裂解密密钥Cl1可以通过在Cl1和e之间执行按位异或操作而生成:
[0121]d2 = RAN_2
[0122]di = d2 Θ e
[0123]第一解密操作可通过在)?和Cl1上执行按位异或操作而将所述经加密的内容项Xe “部分地”解密为xe,dl。第二解密操作可通过基于xe,dl和d2执行异或操作而将部分经解密的内容项dl完全解密为内容项X:
[0124]Xe,d1 = Dd1(Xe) = Ee(X)十 dl
[0125]Xe,d1,d2 = Dd2(Xe,d1)= Ddi(Xe) θ 02 = X
[0126]如果二进制值e、屯和七比内容项X短,则它们中的每一个可以与其本身连结数次,然后截短为内容项X的长度。但是,这样的连结会降低系统的安全性。
[0127]上述的双分裂密钥“一次填充”密码系统可以很容易地推广到具有k个分裂解密密钥和/或i个分裂加密密钥的分裂密钥密码系统。例如,在一个实施例中,代替选择长的二进制流Cl1和d2使得Cl1十d2 = e,,可以生成k-l个随机二进制流Cl1...Clk^1以及可以使用
确定的关系dk = di φ...? dk-1 ? e.来确定最终的随机二进制流。
[0128]可以以类似的方式生成具有i个分裂加密密钥和k个分裂解密密钥的分裂密钥密码系统。在该实施例中,加密和解密算法D、E是相同的,即两者都被执行为异或操作。此外,因为加密和解密算法是可交换的,所以分裂密钥可以以任何期望的次序来生成,并且所述加密和解密操作可以以任何期望的次序来执行。
[0129]在第二实施例中,分裂密钥密码系统可基于对称流密码。图3(A)和(B)示出了根据本发明的各种实施例的用于在分裂密钥密码系统中使用的流密码。
[0130]特别地,图3㈧示出了作为加密算法E的线性流密码,其提供了基于加密密钥e而将内容项X按位加密成)?。所述线性流密码可以使用一个或多个多线性反馈移位寄存器(LFSR) 302^3023,其可以通过一个或多个XOR功能304^304相组合。LFSR可包括一个或多个预配置的抽头306^306”密钥k可能形成(在本例中为三个)LFSR的起始状态{k1;k2,k3,...,kffl},并且线性流密码对于所使用的密钥k是线性。
[0131]在该分裂密钥密码系统中,加密密钥e和第一分裂解密密钥可以被分别生成为一组随机位Ie1, e2, e3,...,em}和{dn,d12, d13,...,dlm},并且分裂解iS'?钥d2可以如将e和Cl1进行按位异或来计算,即d2=e十d1.0
[0132]图3(B)示出了使用一个或多个多个线性反馈移位寄存器(LFSR) 308^3(^ (可选择地包含一个或多个预配置的抽头31(^3100的非线性流密码,它可以通过使用部分非线性“组合生成器”来组合。两个或更多的LFSR308P30&可以被配置成生成伪随机位流,其中密钥k可形成LFSR的起始状态{k1; k2,k3,...,km}.。一个或多个另外的LFSR312可以被配置作为非线性“组合生成器” 314 (选择器)。
[0133]在该特定的实施例中,另外的LFSR的输出被用来选择其他两个LFSR的哪个位被当做选择器的输出316。定义另外的LFSR的起始状态的所述位P {p1; P2, P3,...,pn}可被预配置。由于流密码在k中是线性的,因此所述解密密钥可以被计算为e和Cl1的按位X0R,SPd2= e十Cl1?。其它部分非线性函数也可以被用作组合生成器。
[0134]流密码形成了可简单实现的对称密码,当与一次路径算法相比时,其需要短得多的长度的密钥。部分非线性组合生成器的非线性部分可以使密码对某些类型的攻击更加安全。
[0135]在第三实施例中,分裂密钥密码系统可基于已知为RSA加密方案的非对称加密算法。在那种情况下,加密/解密密钥对e、d使用以下密码算法:
[0136]-随机选择类似位长度的两个不同的素数P和q;
[0137]-计算η = P * q ;
[0138]-计算φ(η)= (P - 1)*(q - 1),其中φ是Euler的所谓的欧拉函数;
[0139]-随机选择整数e,使得1< e < φ(η)并且gcd(e,cp(n)) = 1 (即,e和φ(η)互质);
[0140]-通过计算e(mod φ(η)),的乘法逆而确定山即d= e1(mod φ(η))。
[0141]参数P、q、cp(n)、e、d和η可被存储作为秘密信息以用于进一步使用。特别地,η的值需要与内容分发器(如果在CDN中执行基于分裂密钥信息的解密的话)和CCU共享,因为这些实体需要η以执行其加密和解密操作。值η可以在与内容交易关联的协议消息中被传递到内容分发器以及CCU。在一个实施例中,当多个交易使用相同的秘密信息时,η仅需
要被传送一次。
[0142]内容项X可以基于已知为填充方案的商定(agreed-upon)的可逆协议来处理,其将X变成整数X,其中O < X < η。如果所述处理确定X太长,它可以将X划分为块,每个块满足长度要求。每个块此后根据填充方案而被分别处理。
[0143]用于将X加密成\的RSA加密算法E可如下计算:
[0144]Xe = Ee(X) = X0 (mod η).[0145]用于确定分裂解密密钥对屯、d2的分裂密钥算法可包括以下步骤:
[0146]-随机选择整数Cl1,使得1<di < φ(η),并且其中di和φ<η)互质;
[0147]-确定d2 = d「1 * d (mod φ(η)).。
[0148]基于解密算法D和分裂加密密钥Cl1的第一解密操作可以通过计算dl = Ddl (Xe)=(Xedl) (mod η)(读作:\的Cl1次幂随后为模η的操作)而生成“部分”经解密的内容项。基于解密算法D和分裂加密密钥d2的第二解密操作可以生成)d2 = Dd2(Xe,dl) = (Xe,dld2)(mod η).。原始的明文内容项X可以通过相反地应用填充规则而从Xe,dl,d2导出。
[0149]由于RSA加密和解密算法E和D是相同的,因此用于确定分裂加密密钥对e1、e2的分裂密钥算法可以基于用于确定分裂解密密钥的相同的算法而确定。
[0150]上述双分裂密钥RSA密码系统可以推广到具有k个密钥的多分裂密钥密码系统。
为此,代替选择Cl1和d2使得Cl1 *d2 = d (mod φ(η)):,确定与φ(η)互质的k-1个随机(优选
不同的)整数Cl1, d2,...,Clk^1,并且最终整数分裂密钥dk是根据以下确定的关系而计算的:
dk = (di *...*dk-1)'1 *d (mod φ(η)).。因为rsa加密和解密算法E、D是可交换的,所以所
述密钥可以以任何期望的次序来生成,并且所述加密和解密操作可以以任何期望的次序执行。
[0151]所述分裂密钥RSA密码系统具有附加的优势:在没有秘密信息φ(η)的情况下所述RSA密钥不能被分裂。通过这种方式,保证了未授权方无法分裂由SKG所提供的密钥。这将防止所谓的中间人攻击,其中中间人拦截由SKG所提供的密钥并且与自己的秘密密钥相组合。此外,这也允许在不使用安全信道的情况下将第二分裂密钥信息提供给CCU(如参照图1所述)。
[0152]因此,在一个实施例中,当使用根据本发明的分裂密钥RSA密码系统时,第二分裂密钥信息可以经由非安全信道(例如广播或多播)被提供给所述ecu。可替换地,第二分裂密钥信息可以连同经加密的内容一起被存储在光或磁存储介质上,其中所述分裂密钥被存储在DVD的未受保护的存储区域中。
[0153]在第四实施例中,分裂密钥密码系统可基于已知为EIGamal (EG)加密方案的非对称加密算法而形成。所述EG方案是基于离散对数问题,而不是RSA的因式分解问题。在这种情况下,加密/解密密钥对e、d可以基于以下密码算法来确定:
[0154]-选择较大的素数P和用于生成所述多个乘法群{0,1,...,P-1lmodp的生成器g ;
[0155]-通过选择随机数而确定d:d e {1,…,p-2};
[0156]-计算h= (gd) (mod p);;
[0157]-确定公共密钥e= (p, g, h)。
[0158]需要注意的是e被称为“公共的”,是因为它可以被公布而不泄露秘密信息。在一个实施例中,e可被公开以使得第三方(例如生成并上传用户所生成的内容的用户)能够对所述系统的内容进行加密,而内容源或内容提供者(CS、CPS)保持对(部分)解密步骤的完全控制。然而,当不需要公布e时,它被保持私有。
[0159]解密密钥d和(公共)加密密钥e = (p,g,h)可以存储作为秘密信息以供将来使用,其中p、g、h都是整数。特别地,P值需要与内容分发器(如果在CDN中执行基于分裂密钥信息的解密的话)和CCU共享,因为这些实体需要P来执行其加密和解密操作。在内容提供者和CCU之间的内容交易期间所交换的协议消息中可包含P值。在一个实施例中,多个交易可能使用相同的秘密信息。在那种情况下,P仅需要被传送到内容分发器和CCU —次。
[0160]内容项X可以基于已知为填充方案的商定的可逆协议来处理,其将X变成整数X,其中O < X < P。如果所述处理确定X太长,则它可以将X划分为块,每个块满足长度要求。每个块此后根据填充方案而被分别处理。
[0161]用于将内容项X加密为X6的加密算法E6 (X)可包括以下步骤:
[0162]-选择随机数se {1,...,p-2};
[0163]-确定Xe = Ee (X, s) = (Y1, Y2) = ((gs) (mod p), (X * hs) (mod p))
[0164]类似地,用于解密经加密的内容项X6的解密操作Dd(Y1, Y2)可以如下计算:
[0165]-Dd (Y1, Y2) = (Y1^d * Y2) (mod p)(实际等于(g-ds * hs * X) (mod p) =X))
[0166]用于确定分裂解密密钥对屯、d2的分裂密钥EG算法可以包括以下步骤:
[0167]_ 确定(I1 是随机数(I1 G {I,..., p-2}:;
[0168]-计算 d2 = (Chd1) mod p.。
[0169]上述双分裂密钥EG密码系统可以推广到使用k个分裂加密密钥的多分裂密钥密码系统。为此,代替选择Cl1和d2使得ClAd2 = d mod p,可以选择小于P的k-Ι个随机整数(I1...(Ilrf,并且最终整数根据下述关系来计算:dk = (!-((I1+...+U (mod p).。
[0170]用于将所述随机加密参数s分裂为I个部分的所述分裂密钥EG算法可以被定义如下:
[0171]-所述第一方选择随 机数Se{I,..., P-2};
[0172]-所述第一方选择I个随机数Sie {I, , P-2}:,I≤i≤1,使得S =(S^S2+...+S1)mod P,并且发送 Si 给 i 方;
[0173]-令Yi= (hSl * X) mod p.;
[0174]-对i = I 至Ij 1-1,执行
[0175]i 方发送(gsmod p, Yi)给第 i+Ι 方;
[0176]i+Ι方执行其加密步骤:
[0177]Ym:= (hSi * Yj) mod P。
[0178]可以很容易地验证(gsmodp, Y1) = Ee (X, s)因为 s= (S^S2+...+S1) mod p.? 不同的加密步骤是可交换的。
[0179]通过计算Ddl (Xe) = Ddl (Y1,Y2) = (Y1,Y, * Y2 (mod p)).,基于解密算法 D 和(I1 的第一解密操作可用于将经加密的内容)? “部分”地解密为)ce,dl。部分经解密的内容)(e,dl由具有相同的第一元素Y1的对来表示。由于Y1是加密的部分,所以它可以被包括在协议消息中。
[0180]通过计算Xe,dl,d2 = Dd2 (Xejdl),基于解密算法D和d2的第二解密操作可以被用来确定完全经解密的内容,其中,所述Xe,dl,d2的第二元素等于X:xe,dl,d2 = Dd2(Xejdl) = Dd2 (Ddl (Y1,Y2)) = (Y1, Yrd2 * Yrdl * Y2) (mod P)) = (Y1, (Y1^d * Y2) (mod p)) = (Y1, X).。通过反向地应用填充方案,原始内容项X可以从所计算出的Xe,dl,d2中确定。
[0181]因为所述EG解密算法D是可交换的,所以解密密钥可以以任何期望的次序来生成,并且所述解密操作可以以任何期望的次序来执行。类似地,因为所述加密算法也是可交换的,所以加密密钥可以以任何期望的次序来生成,并且所述加密操作可以以任何特定的次序来执行。
[0182]应该注意的是,上述的RSA和EG分裂密钥密码系统是乘法同态的,表现出属性D (E(Z1).E(Z2)) = (Z1.Z2) (mod p).。在信号处理方面,加法同态方案可能具有有利的属性,例如允许添加水印至已加密的信号。加法同态密码系统表现出属性D(EG1) -E(Z2))=(ZjZ2) (mod p).。
[0183]在第五实施例中,分裂密钥密码系统可基于已知为Damgard-Jurik(DJ)密码系统的加法同态密码系统。用于所述DJ密码系统的所述加密/解密对e、d可以使用以下密码算法生成:
[0184]-选择两个大素数P'和q',使得p= 2p' +1并且q = 2q' +1也是素数,并且其中n = p*q被定义为系统的模数;
[0185]-选择生成元g,其生成乘法群{1,...,n_l}modn的所有平方。所有的平方的群将具有大小T = p’ * q’ ;
[0186]-选择d 作为随机值 de {I,..., T-1}和计算 h = gd mod η ;;
[0187]-确定所述(公共)加密密钥e= (n, g, h)。
[0188]应该注意的是e被称为“公共的”,是因为它可以被公布而不泄露秘密信息。在一个实施例中,e会被公开以使得第三方(例如生成并上传用户生成的内容的用户)能够对该系统的内容进行加密,而内容提供者(CS、CPS)保持对(部分)解密步骤的完全控制。然而,当不需要公布e时,它被保持为私有的(即秘密)。
[0189]值p、q和d可以作为秘密信息S连同e = (n,g,h) 一起被存储。η的值需要与内容分发器和CXU共享,因为这些实体需要η以执行其加密和解密操作。η的值可以被包括在内容提供者和CCU之间 的内容交易期间所交换的协议消息中。在一个实施例中,多个交易可能使用相同的秘密信息。在那种情况下,η仅需要被传送到内容分发器和CCU 一次。
[0190]内容项X可以基于已知为填充方案的商定的可逆协议来处理,其将X变成整数X,其中O < X < η。如果所述处理确定X太长,则它可以将X划分为块,每个块满足长度要求。每个块此后根据填充方案来分别处理。
[0191]用于将内容X加密为X6的所述加密算法E6 (X)可包括以下步骤:
[0192]-选择随机数re {0,...,n-1};
[0193]-计算g’ Zg1H1d η 并且 h’ = hrmod η,使得 Xe = Ee (X, r) = (Y1, Y2) = (g,,h,n* (η+1) xmod η2).。
[0194]用于解密经加密的内容项\的解密算法Dd(Y1, Y2)可以包括如下步骤:
[0195]-计算H,= (Y2 * g,(_d * n)) (mod η2);
[0196]-确定X = Xej d = (H,-1) * r^modn2。
[0197]这实际给出了所期望的结果Xe,d = Dd(YnY2) =X0因为在等式a)中H' = ((n+1)x) (mod η2) = (η * Χ+1) (mod η2)。用于确定对分裂解密密钥对(I1和d2的分裂密钥算法可以包括以下步骤:
[0198]-确定d2 为随机数 d2 e {0,...,n-1};
[0199]-计算 Cl1 = (d-d2)mod η.。
[0200]用于将随机加密参数r分裂成I个部分的分裂密钥EG算法可以被定义如下:
[0201]-第一方选择随机数r e {1,...,p-l};;
[0202]-第一方选择I个随机数e{1,…,p-Ι},,
[0203]其中I < i < 1,使得 r = (r Jr2+...+r^mod η,并且发送 T1 到 i 方;
[0204]-令丫】=(hn*r1* (n+1 )x) mod n2。[0205]-对于i= I到1-1,执行
[0206]i 方发送(grmod n, Yi)给 i+1 方;
[0207]i+1方执行其加密步骤:
[0208]Yi+1:= (hn*n*Yi) mod n2.0
[0209]可以容易地验证(g^1dn, Y1) = Ee (X, r)因为 r= (r Jr2+...+!T1) mod η。不同的加密步骤是可交换的。
[0210]通过计算Dd1(Xe)=Dd1(Y1iY2)= (YijY12) = (Υι,(ΥιΗι*η) * Y2)(mod η2)).,基于解密
算法D和Ci1的第一解密操作可以被用来将经加密的内容)? “部分” “解密”为)(e,dl。因此,“部分”经解密的内容)(e,dl由(YpY^ 2)对所表示,其中,Y1可以典型地包括在协议消息中。在一个实施例中,如果多个交易都基于相同的秘密信息和相同的随机数r,则Y1不改变,并可只需要被传送到内容分发器和C⑶一次。
[0211]通过计算H’ = (Y1 (^i2 * n) * Y,2) (mod η2)和 χ = ((H,-1) * rfOmod η2.,基于算法D和d2的第二解密操作可用于确定完全经解密的内容。事实上,H’ = (Yr(d2+dl)n * Y2)mod n2 = (Y2 * g’(_“n)) (mod n2)从而示出分裂密钥密码的正确性。
[0212]上述的分裂密钥DJ密码系统可以容易地被推广到具有k个分裂解密密钥的多分裂密钥密码系统。为此,代替选择Cl1和d2使得ClAd2 = d mod η,,选择小于η的k_l个随机整数(I1...dn,并且最终整数可以如下计算:dk = (!-((I1+...+U (mod η).。
[0213]所述DJ解密算法D是可交换的,所以所述解密密钥可以以任何期望的次序来生成,并且所述解密操作可以以任何期望的次序来执行。这同样适用于加密算法。
[0214]图4示出了根据本发明的各种实施例的图示生成加密/解密对e、d以及关联的分裂密钥的流程图。特别地,所述流程图对应于如参考图2所描述的秘密密钥生成器中所执行的过程。图4 (A)示出了秘密信息S的生成。在第一步骤402,确定参数,例如将要被生成的密钥长度或素数长度。这些参数被用作为随机过程功能404的输入。所述随机过程功能可以是伪随机生成器或基于物理过程(例如热噪声)的物理随机生成器以用于产生秘密信息S。基于种子和特定的密码系统,所述随机生成器可以生成秘密信息S406。
[0215]图4(B)示出了加密密钥e和解密密钥d的生成。所述秘密信息S408被用在与用于生成随机加密密钥e412的特定密码系统相关联的特定随机过程410中。例如,当使用RSA密码系统(如上所述)时,可以基于以下过程来确定所述加密密钥e,所述过程包括随机选择两个不同的素数P和q,并随后随机选择整数e,使得1 < e < φ(η)并且gcd(e,q>(n))=1,其中η = P女q.。
[0216]类似地,当使用EG密码系统(如上所述)时,可以基于以下过程来确定所述加密密钥e,所述过程包括选择较大的素数P和生成元g,所述生成元g生成乘法群{0,1,...,p-1}mod P,并且随后通过从该群中随机选择而确定d, d e {I,..., p-2}。
[0217]然后,基于所述随机加密密钥e以及与密码系统相关联的预定的确定性密码算法414,可以确定关联的解密密钥d416。例如,当使用RSA密码系统时,计算解密密钥为d = e'1(mod φ(η))。在一些实施例中,秘密信息S可被用在d的计算中。例如,在上述提到的RSA的情况下,通过使用φ(η):计算解密密钥,所述φ(η\是秘密信息s的部分。
[0218]在其它实施例中,基于某个随机过程可以确定解密密钥d,并且可以使用预定的密码算法(诸如EG或DJ密码系统)来计算加密密钥e。
[0219]图4(C)示出了基于秘密信息S的分裂密钥Cl1的生成。秘密信息S418可以被与特定的密码系统相关联的特定随机分裂密钥生成过程420所使用,从而生成第一分裂密钥d2422。例如,当使用RSA密码系统(如上所述)时,可以基于随机选择的整数Cl1而确定分裂密钥d2,使得1 <di < φ(η)并且gccKch.qHn))=!(即类似于e的确定)。
[0220]此后,基于d2422和d426(并且在一些实施例中,基于秘密信息S),可以使用确定性分裂密钥算法424来确定关联的分裂密钥屯428。例如,在RSA情况下,可以计算所述关联的分裂密钥为小=(d2_1 * d)(mod φ(η))。
[0221]因此,从上文中,其遵循各种对称和非对称密码系统可以与分裂密钥算法相关联,其允许解密和/或加密密钥d和e的分别地多重分裂。这些分裂密钥密码系统可以实施在如参考图1描述的内容递送系统中。表1提供了需要被分发给所述CS、CD和CCU以用于不同密码系统的信息的部分和密钥信息的全面概述。从该表中,其遵循了对于分裂密钥RSA、EG和DJ密码系统,不仅分裂密钥Cl1和d2还有n (RSA和DJ)以及p (EG)也分别发送给所述CD 和 CCU。
[0222]该信息可以在合适的“加密容器”中被发送到内容分发系统中的实体。特别地,可以使用所谓的分裂加密控制消息(SECM)来发送加密信息到被配置用于(部分)加密内容项的特定实体(例如与CS关联的加密模块),以及可以使用分裂解密控制消息(SDCM)来发送解密信息到如被配置用于(部分)解密内容项的特定实体(例如CCU解密模块的CDN)。
[0223]表1:由秘密密钥生成器(SKG)生成的并发送至内容源(CS)中的加密模块以及CCU中的解密模块的信息的概述。 [0224]
密码系统 SKG->CSSKG->CCU SKG->CCU
一次填充 e=随机位的长序列d!=随机位的长序d2=随机位的长序 ___η_列 ‘
基于LFSR ^=LFSR描述(初Ci1=LFRS描述 d2=LFRS描述
始状态、抽头、如
ASG ( Alternating
Step Generator,替
换步骤生成器)的
组合功能,.........[0225]
【权利要求】
1.用于实现将内容项从内容源安全递送到内容接收设备的方法,所述内容接收设备与解密模块相关联,所述解密模块被配置用于与分裂密钥密码系统一起使用,所述分裂密钥密码系统包括加密和解密算法E和D、用于基于秘密信息S而生成加密和解密密钥e、d的密码算法以及用于分别将e分裂为i个不同的分裂加密密钥e1; e2,...,ei和/或用于将d分裂为k个不同的分裂解密密钥Cl1, d2,...,dk的分裂密钥算法; 所述分裂密钥密码系统进一步被定义在于分别应用E和分裂加密密钥e1; e2,...,ei以及应用D和分裂解密密钥Cl1, d2,...,dk在内容项X上执行多个连续的加密和解密操作,符合 Ddk (Ddk^1 (...(Dd2 (Ddl (Eei (Eei^1 (...(Ee2 (Eel (X))...))=Ddk (Ddk-1 (...Φ?2 (Ddl (Xel, e2,..., ei))=X,其中i, k≥I且i+k > 2,所述方法包括: 向所述解密模块提供包括至少第一分裂密钥的第一分裂密钥信息; 基于所述第一分裂密钥信息、所述解密密钥d以及可选地所述秘密信息S而生成包括至少第二分裂密钥的第二分裂密钥信息;以及, 向所述解密模块提供所述至少第二分裂密钥信息,以用于基于所述解密模块中的所述第一和第二分裂密钥信息和解密算法D而对经加密的内容项\进行解密。
2.根据权利要求 1所述的方法,其中,所述内容源与以下各项相关联,包括至少一个加密算法E的加密模块;以及秘密密钥生成器,所述秘密密钥生成器包括所述密码算法和分裂密钥算法,以用于分别生成用于解密内容项的加密密钥信息以及所述至少第一和第二分裂密钥信息。
3.根据权利要求2所述的方法,包括: 所述加密模块从所述秘密密钥生成器接收加密信息; 所述加密模炔基于所述加密密钥信息而生成至少一个经加密的内容项X#
4.根据权利要求1-3中任一项所述的方法,其中,使用不同的分裂密钥信息提供方法向所述解密模块提供所述第一和第二分裂密钥信息,或者其中分别在第一时间点和第二时间点处向所述解密模块提供所述第一和第二分裂密钥信息,优选地,所述第一时间点是其中所述解密模块被制造、销售或分发给用户或注册的时间,并且优选地,所述第二时间点是所述内容接收设备将内容请求传送到所述内容源的时间。
5.根据权利要求1-4中任一项所述的方法,其中,提供所述第一分裂密钥信息包括: 在所述解密模块的制造或分发期间,在所述解密模块中提供所述第一分裂密钥信息; 或者,其中提供所述第一分裂密钥信息包括: 在所述内容源,优选地与所述内容源相关联的秘密密钥生成器,以及所述解密模块之间建立安全信道;以及, 经由所述安全信道,向所述解密模块发送所述至少第一分裂密钥信息,优选地,所述安全信道在所述内容接收设备向所述内容源的认证或注册过程期间被建立; 或者,其中提供所述第一分裂密钥信息包括: 将所述至少第一分裂密钥信息嵌入到安全硬件模块中,优选地,包括所述解密模块的智能卡; 或者,其中提供所述第一分裂密钥信息包括:指示所述解密模块中的第一分裂密钥生成器以用于生成第一分裂密钥信息,优选地,所述第一分裂密钥生成器被源自所述内容源的信令消息或者被所述内容源和所述解密模块共有的公共信令消息所指示,优选地,所述公共信令消息包括与在所述内容源和所述解密模块之间共享的时钟相关联的时间。
6.根据权利要求1-5中任一项所述的方法,其中,提供所述第二分裂密钥信息包括优选地通过安全信道,向所述解密模块传送所述第二分裂密钥信息,或者将所述至少第二分裂密钥信息记录到记录介质上。
7.根据权利要求3-6中任一项所述的方法,包括: 所述解密模块接收所述经加密的内容项Xe;以及 基于所述第一分裂密钥信息而将所述经加密的内容项的至少部分解密为部分经解密的内容项;以及, 基于所述至少第二分裂密钥信息而将所述部分经解密的内容项解密为明文内容项。
8.根据权利要求1-7中任一项所述的方法,包括: 向至少一个内容递送网络(⑶N)或⑶N的网络提供至少一个经加密的内容项; 基于所述第一和第二分裂密钥信息、所述解密密钥d以及可选地所述秘密信息S而生成第三分裂密钥信息; 向与所述CDN或CDN的网络相关联的至少一个解密模块提供所述第三分裂密钥信息;基于所述经加密的内容项、所述CDN中的解密算法D以及所述第三分裂密钥信息而生成部分经解密的内容 项;以及 将所述部分经解密的内容项传送到所述内容接收设备。
9.根据权利要求1-8中任一项所述的方法,其中,所述至少第一分裂密钥信息包括多个第一分裂密钥和相关联的第一分裂密钥标识符,优选地,所述多个第一分裂密钥包括一个或多个地理特定分裂密钥,其对特定的地理区域有效;硬件特定分裂密钥,其对特定的硬件设备或硬件设备组有效;内容特定分裂密钥,其对预定内容项或内容项组有效;和/或用户特定分裂密钥,其对特定的用户或用户组有效。
10.根据权利要求9所述的方法,包括: 向所述解密模块提供用于选择一个多个分裂密钥的信息,优选地,所述信息包括一个或多个第一密钥标识符; 优选地,基于所述一个或多个第一密钥标识符而从所述多个第一分裂密钥中选择一个或多个第一分裂密钥。
11.根据权利要求5所述的方法,其中, 在指示所述解密模块中的第一分裂密钥生成器的情况下,所述内容接收设备中的所述第一分裂密钥生成器包括伪随机生成器,所述方法包括: 所述分裂密钥生成器接收用于生成用于所述伪随机生成器的种子的信息; 生成伪随机值; 检查所述伪随机值是否依从由所述分裂密钥密码系统所施加的一个或多个条件,以用于分裂密钥信息。
12.用于实现将内容项X从内容源安全递送到内容接收设备的系统,所述系统被配置用于与分裂密钥密码系统一起使用,所述分裂密钥密码系统包括加密和解密算法E和D、用于基于秘密信息S而生成加密和解密密钥e、d的密码算法以及用于分别将e分裂为i个不同的分裂加密密钥e1; e2,...,&和/或用于将d分裂为k个不同的分裂解密密钥Cl1,d2,...,dk的分裂密钥算法; 所述分裂密钥密码系统进一步被定义在于分别应用E和分裂加密密钥e1; e2,...,ei以及应用D和分裂解密密钥Cl1, d2,...,dk而在内容项X上执行多个连续的加密和解密操作,付合 Ddk(DdH (...(Dd2 (Ddl (Eei (Ee^1 (...(Ee2 (Eel (X) )...)) 一 Ddk(Dd^1 (...(Dd2 (Ddl (Xel, e2,,J) = X,其中 i,k ≥ I 且 i+k > 2 ; 所述系统包括: 与内容源相关联的加密模块,所述加密模块包括用于生成经加密的内容项\的所述加密算法E ; 与所述加密模块相关联的密钥生成器,其包括所述密码算法和所述分裂密钥算法;以及, 包括所述解密算法D的解密模块,所述解密模块与所述内容接收设备相关联,并被配置用于基于至少第一和第二分裂密钥信息和所述解密算法D而对经加密的内容项进行解LU O
13.用在根据权利要求12所述的系统中的密钥生成器,包括: 密码生成器,用于基于秘密信息S而生成解密密钥d和/或加密密钥e ; 分裂密钥生成器,其包括用于分别生成一个或多个随机分裂加密密钥和/或一个或多个随机分裂解密密钥的伪随机生成器;和另外的分裂密钥算法,用于基于所述随机分裂加密密钥和所述加密密钥e而确定另外的分裂加密密钥,或基于所述随机分裂解密密钥和所述解密密钥d而确定另外的分裂解密密钥。
14.根据权利要求13所述的密钥生成器,其中,所述加密和解密算法E、D和所述密码算法都是基于EIGamal算法,并且其中用于生成k个分裂密钥的所述分裂密钥算法被定义为: -所述随机生成器被配置成选择小于P的k-ι个随机整数Cl1...Clk^1 ; -将最终整数计算为dk = d- ((I1+...+U (mod p).。 或者,其中所述加密和解密算法都是基于Damgard-Jurik方案E、D,并且其中用于生成k个分裂密钥的所述分裂密钥算法被定义为: -确定小于η的η-1个随机整数dl,..., (Ilri,
-计算 dk = d- ((I1+...+D (mod η).。 或者,其中所述加密和解密算法E、D都是基于一次填充方案,并且其中用于生成k个分裂密钥的所述分裂密钥算法被定义为: -确定k-Ι个随机二进制流(I1...dk_1-计算Clk = Cl1 0...十 dk-彳十 e.。 或者,其中所述加密和解密算法E、D都是基于RSA方案,并且其中用于生成k个分裂密钥的所述分裂密钥算法被定义为: -确定与φ(η)互质的k-Ι个随机整数屯,...,Cik^1 -计算dk = (Cl1 * …* d (mod φ(η))。
15.一种在内容接收设备中使用或与内容接收设备相关联的解密模块,所述解密模块被进一步配置用于与分裂密钥密码系统一起使用,所述分裂密钥密码系统包括加密算法E和解密算法D、用于基于秘密信息S而生成加密密钥和解密密钥e、d的密码算法以及用于分别将e分裂为i个不同的分裂加密密钥e1; e2,...,&和/或用于将d分裂为k个不同的分裂解密密钥屯,d2,...,dk的分裂密钥算法;所述分裂密钥密码系统进一步被定义在于分别应用E和分裂加密密钥e1; e2,...,ei以及应用D和分裂解密密钥屯,d2,...,dk在内容项X上执行多个连续的加密和解密操作,符合Ddk (Ddlri (...(Dd2 (Ddl (Eei (EeH (...(Ee2 (Eel (X))...)) =Ddk (Ddlri (...(Dd2 (Ddl (Xel,e2,...,ei)) =X,其中 i,k ≥1 且i+k>2; 所述解密模块包括: 用于接收经加密的内容的输入,使用至少一个加密密钥和加密算法E而加密所述内容; 安全储存,用于存储所提供的第一分裂密钥信息; 用于被提供有第二分裂密钥信息的输入; 至少一个处理器,用于使用所述第二分裂密钥信息和解密算法D执行至少第一解密操作,以及用于使用所述所提供的第一分裂密钥信息和解密算法D执行至少第二解密操作。
16.一种记录介质,其包括包含与使用加密算法E和至少加密密钥或分裂加密密钥对其进行加密的内容项相关联的数据的记录区域,以及包含与至少一个分裂解密密钥相关联的数据的记录区域,所述分裂解密密钥用于使用解密算法D部分解密所述经加密的内容项,所述加密和解密算法E、D是分裂密钥密码系统的部分,所述分裂密钥密码系统包括加密和解密算法E和D、用于基于秘密信息S而生成加密和解密密钥e、d的密码算法以及用于分别将e分裂为i个不同的分裂加密密钥ei,e2,...,ei和/或用于将d分裂为k个不同的分裂解密密钥屯,d2,...,dk的分裂密钥算法;所述分裂密钥密码系统进一步被定义在于分别应用E和分裂加密密钥e1; e2,...,ei以及应用D和分裂解密密钥屯,d2,...,dk在内容项X上执行多个连续的加密和解密操作,符合Ddk (Ddlri (...(Dd2 (Ddl (Eei (EeH (...(Ee2 (Eel (X))...)) =Ddk (Ddlri (...(Dd2 (Ddl (Xel,e2,...,ei)) =X,其中 i,k ≥1 且i+k>2。
17.—种包括软件代码部分的计算机程序产品,所述软件代码部分被配置用于,当在计算机的存储器上运行时,执行根据权利要求1-11中的任一项所述的方法步骤。
【文档编号】H04L9/30GK104040939SQ201280052174
【公开日】2014年9月10日 申请日期:2012年10月24日 优先权日:2011年10月24日
【发明者】P·维尤根, M·O·范德文特 申请人:皇家Kpn公司, 荷兰应用自然科学研究组织