首页 / 专利库 / 杂项知识产权事务 / 数字版权管理 / 平台硬化数字版权管理密钥供应

平台硬化数字版权管理密钥供应

阅读:1027发布:2020-05-19

专利汇可以提供平台硬化数字版权管理密钥供应专利检索,专利查询,专利分析的服务。并且公开了用于平台硬化数字 版权 管理密钥供应的 发明 的各 实施例 。在一种实施例中,一种处理器封装包括执行单元,其执行一个或多个指令以便创建安全飞地,在该安全飞地中运行应用,以便响应于验证 服务器 认证该应用而从供应服务器接收数字 版权管理 信息。,下面是平台硬化数字版权管理密钥供应专利的具体信息内容。

1.一种处理器,包括:
执行单元,用于执行一个或多个指令以便创建安全飞地,在所述安全飞地中运行应用以便响应于验证服务器认证所述应用而从供应服务器接收数字版权管理信息。
2.如权利要求1所述的处理器,其特征在于,所述数字版权管理信息包括数字传输内容保护密钥。
3.如权利要求1所述的处理器,其特征在于,所述认证涉及增强保护ID算法
4.一种方法,包括:
在安全飞地中启动客户机;
由所述客户机从供应服务器请求数字版权管理(DBM)供应信息;
由所述客户机请求由验证服务器认证;
由所述客户机把认证的证明提供给所述供应服务器;以及
由所述客户机接收所述DRM供应信息。
5.如权利要求4所述的方法,其特征在于,所述数字版权管理信息包括数字传输内容保护密钥。
6.如权利要求4所述的方法,其特征在于,所述认证涉及增强保护ID算法。
7.如权利要求4所述的方法,其特征在于,进一步包括把所述DRM供应信息密封到所述安全飞地。
8.如权利要求7所述的方法,其特征在于,进一步包括把所述已密封DRM供应信息存储在非易失性存储器中。
9.如权利要求4所述的方法,其特征在于,进一步包括由所述客户机产生身份报告。
10.如权利要求9所述的方法,其特征在于,进一步包括由所述客户机使用增强保护ID(EPID)私钥签署所述身份报告。
11.如权利要求10所述的方法,其特征在于,请求认证包括把所述已签署身份报告发送给所述验证服务器。
12.如权利要求11所述的方法,其特征在于,进一步包括由所述客户机从所述验证服务器接收认证的证明,其中所述认证涉及验证所述已签署身份报告。
13.如权利要求12所述的方法,其特征在于,验证所述已签署身份报告使用对应于所述EPID私钥的EPID公钥。
14.如权利要求4所述的方法,其特征在于,进一步包括由所述客户机从所述供应服务器接收第一密钥分量。
15.如权利要求14所述的方法,其特征在于,进一步包括由所述客户机产生第二密钥分量。
16.如权利要求15所述的方法,其特征在于,进一步包括由所述客户机向所述供应服务器发送所述第二密钥分量。
17.如权利要求16所述的方法,其特征在于,进一步包括由所述客户机产生共享密钥。
18.如权利要求17所述的方法,其特征在于,进一步包括由所述客户机使用所述共享密钥解密所述DRM供应信息。
19.一种系统,包括:
处理器,其具有执行单元,所述执行单元用于执行一个或多个指令以便创建安全飞地,在所述安全飞抵中运行应用以便响应于验证服务器认证所述应用而从供应服务器接收数字版权管理信息;以及
非易失性存储器,在其中存储所述数字版权管理信息。
20.如权利要求19所述的系统,其特征在于,所述数字版权管理信息包括数字传输内容保护密钥。

说明书全文

平台硬化数字版权管理密钥供应

[0001] 背景
[0002] 1.领域
[0003] 本公开内容涉及信息处理的领域,且尤其涉及信息处理系统中的安全的领域。
[0004] 2.相关领域的描述
[0005] 信息处理系统的许多应用要求把密钥或多个密钥供应(provisioning)给内容消费者,以便发起与内容服务器进行的安全通信。例如,数字版权管理的一些方法要求使用一个或多个密钥来保护音频和视频内容的传输。安全供应这些密钥对确保这种方法的安全来说很重要。
[0006] 附图简述
[0007] 作为示例而非限制在附图中阐释本发明
[0008] 图1阐释一种系统,它可以根据本发明的一种实施例包括、允许或参与数字版权管理密钥供应。
[0009] 图2阐释根据本发明的一种实施例用于数字版权管理密钥供应的一种架构。
[0010] 图3阐释根据本发明的一种实施例用于预先供应的方法。
[0011] 图4阐释根据本发明的一种实施例用于供应的方法。
[0012] 详细描述
[0013] 描述用于平台硬化数字版权管理(platform-hardened digital rights management:DRM)密钥供应的发明的各实施例。在本描述中,可以陈述诸如组件和系统配置之类的众多特定细节,以便提供对本发明的更透彻的理解。然而,本领域中的技术人员应明白,无需这样的特定细节就可以实践本发明。另外,没有详细示出一些众所周知的结构、电路和其他特征,以免不必要地模糊本发明。
[0014] 在下列描述中,对“一个实施例”、“实施例”、“示例实施例”、“各种实施例”等等的引用表示这样描述的本发明的(多个)实施例可以包括具体的特征、结构或特性,但是多于一种实施例可以包括且并非每一实施例必定包括这些具体的特征、结构或特性。进一步,一些实施例可以拥有针对其他实施例所描述的特征中的一些、全部,或者没有这些特征。
[0015] 如权利要求中所使用的,除非另外指出,否则,使用顺序形容词“第一”、“第二”、“第三”等等来描述元素仅仅表示提及元素的具体实例或类似元素的不同实例,且不旨在暗示这样描述的元素必须遵守具体的序列,无论是时间上、空间上、排名上还是以任何其他方式。
[0016] 如背景部分中所描述的,诸如数字传输内容保护(DTCP)之类的一些DRM方法要求使用一对密钥来保护音频和视频内容从服务器到客户机的传输。本发明的各实施例允许使用处理器的安全特征来确保可以把该组密钥和相关信息安全提供给客户机,并且然后被客户机安全地存储以便不需要重复供应。本发明的一种实施例提供的平台硬化方法可以比诸如使用防篡改软件或另一混乱技术(obfuscation technique)之类的备选方法更优选。
[0017] 图1阐释系统100,系统100是本发明的一种实施例可以在其中出现和/或操作的信息处理系统,或者可以是本发明的一种实施例的一部分。系统100可以表示任何类型的信息处理系统,例如服务器、台式计算机、便携式计算机、机顶盒、手持式设备或嵌入式控制系统。系统100包括处理器110、系统存储器130和信息存储设备140。实施本发明的系统可以包括任何数量的这些组件和任何其他组件或其他元素中的每一种,例如信息存储设备、外围设备和输入/输出设备。除非另外指出,这一系统实施例或任何系统实施例中的组件或其他元素中的任何或全部可以通过任何数量的总线、点对点或其他有线或无线接口或连接来连接、耦合或以另外方式相互通信。
[0018] 系统存储器130可以是动态随机存取存储器或处理器110可读的任何其他类型的介质。信息存储设备140可以包括任何类型的永久性或非易失性存储器或存储,例如闪速存储器和/或固态盘驱动器、磁盘驱动器或光盘驱动器。
[0019] 处理器110可以表示集成在单个衬底上或封装在单个封装内的一个或多个处理器,其中的每一个都可以包括以任何组合的多个线程和/或多个执行核。被表示为处理器110的每一处理器可以是任何类型的处理器,包括通用微处理器,例如 处
理器系列、 处理器系列、或来自 公司的其他处理器系列中的处
理器,或者是来自另一公司的另一处理器、或专用处理器或微控制器。处理器110可以包括指令单元111、执行单元112、处理存储113、接口单元114、处理器控制单元115、高速缓冲存储器116、随机数产生器(RNG)117和安全飞地(enclave)单元120。处理器110也可以包括图1中未示出的任何其他电路、结构或逻辑和/或在图1中其他地方示出或描述的任何电路、结构或逻辑。
[0020] 指令单元111可以表示用于提取、接收、解码和/或调度指令的诸如指令解码器之类的任何电路、结构或其他硬件。可以在本发明的范围内使用任何指令格式;例如,指令可以包括操作码和一个或多个操作数,其中操作码可以被解码成一个或多个微指令或微操作以供由执行单元112执行。
[0021] 执行单元112可以包括用于处理数据和执行指令、微指令和/或微操作的诸如运算单元、逻辑单元、浮点单元、移位器等等的任何电路、结构或其他硬件。
[0022] 处理存储113可以表示在处理器110内的可用于任何目的的任何类型的存储;例如,它可以包括任何数量的数据寄存器、指令寄存器、状态寄存器、配置寄存器、控制寄存器、其他可编程或硬编码寄存器或寄存器堆、或任何其他存储结构。
[0023] 接口单元114可以表示任何电路、结构或其他硬件,例如总线单元、消息收发单元或任何其他单元、端口或接口,以便允许处理器110与系统100中的其他组件通过任何类型的总线、点对点或其他连接直接地或通过诸如存储器控制器或总线桥之类的任何其他组件来通信。
[0024] 处理器控制单元115可以包括任何逻辑、微代码、电路或其他硬件,以便控制处理器110的各单元和其他元素的操作以及在处理器110内、进入处理器110和离开处理器110的数据传输。例如,通过引起处理器110执行由指令单元111接收到的指令和从由指令单元111接收到的指令导出的微指令或微操作,处理器控制单元115可以引起处理器110执行本发明方法的各实施例或参与本发明方法的各实施例的执行,例如下面描述的方法实施例。
[0025] 高速缓冲存储器116可以表示信息处理系统100的存储器分层结构中以静态随机存取存储器或任何其他存储器技术实现的任何一级或多级高速缓冲存储器。高速缓冲存储器116可以包括根据在信息处理系统中缓存的任何已知方法的、专用于在处理器110内的任何一个或多个执行核心或处理器或者在它们当中共享的高速缓冲存储器的任何组合。
[0026] RNG 117可以包括根据任何已知的技术产生随机数或伪随机数的任何电路、结构或其他硬件。在这一实施例中,RNG 117是在处理器110内的数字RNG;然而,在其他实施例中,RNG 117可以是独立于处理器110的任何类型的RNG。
[0027] 安全飞地单元120可以表示用于创建和维护安全的、受保护的或隔离的环境的任何逻辑、电路、硬件或其他结构,例如在此描述的安全飞地,其中在诸如系统100之类的信息处理系统内应用或其他软件可以在安全飞地中运行、执行、加载或存在。对于本描述的目的,这样的环境的每一实例都可以被称为安全飞地,但本发明的各实施例不限于把安全飞地用作安全的、受保护的或隔离的环境的那些。在一种实施例中,可以使用处理器系列或来自 公司的其他处理器系列中的处理器的指令集中的指令来创建和维护安全飞地。尽管存在本发明的多个方面的多个实施例,但是于2012年6月19日提交的、标题为“提供安全应用执行的方法和装置(Method and Apparatus to Provide Secure Application Execution)”的共同待决的美国专利申请第13/527,547号作为安全飞地的至少一种实施例的示例通过引用合并于此。然而,所合并的参考文献不旨在以任何方式限制本发明的各实施例的范围,且在保持落在本发明的精神和范围之内的同时可以使用其他实施例。
[0028] 安全飞地单元120的全部或部分可以被包括在处理器110的任何一个或多个其他单元中,例如指令单元111、执行单元112、处理器存储113和处理器控制单元115。安全飞地单元120可以包括加密单元122,加密单元112可以包括执行一种或多种加密算法和相应的解密算法的任何逻辑、电路或其他硬件,且可以包括与处理器110中的另一加密单元共享的逻辑、电路或其他硬件。
[0029] 可以在系统存储器130支持的系统存储器空间内给在系统100内创建的每一安全飞地分配安全的或受保护的空间。安全存储器132表示一个或多个这样的安全的或受保护的存储器空间。可以使用已知的虚拟存储器、安全飞地或其他系统存储器编址技术来创建、分配和维护每一个这样的存储器空间,以使得可以在各个时刻把在每一个这样的存储器空间内的信息存储在信息存储设备140、系统存储器130、高速缓冲存储器116、处理存储113和/或在信息处理系统100内的任何其他存储器或存储区域的任何组合内。
[0030] 安全存储器132可以包括被称为处理器保留存储器(PRM)的一个或多个物理上邻近的存储器范围。在一种实施例中,PRM自然对齐,且具有2的整数幂的大小。诸如基本输入/输出系统之类的系统固件可以保留PRM,例如通过设置一对型号专用寄存器(MSR),两者一起被称为PRM范围寄存器(PRMRR)。在图1的实施例中,安全飞地逻辑120可以包括PRMRR 124,PRMRR 124可以被用来把用于处理器110的PRM 134保留在安全存储器132中。
[0031] 安全飞地单元120也可以包括访问控制单元126,访问控制单元126可以包括使用PRMRR 124来强加加载和访问限制的任何逻辑、电路、硬件或其他结构,以使得在安全飞地的存储器空间内信息仅可由在该安全飞地中运行的应用访问。例如,在存储到系统存储器130、信息存储设备140或外置于处理器110的任何其他存储器或存储中之前,可以由加密单元122加密分配给安全飞地的存储器页面上的信息。尽管被存储在处理器110之外,但该信息受到加密和完整性检查技术的保护。在存储器页面由应用或进程(该应用或进程在处理器110上、在该页面被分配到其中的安全飞地内运行)加载到高速缓冲存储器116时,由加密单元122解密它,然后,未加密信息仅可由在安全飞地内运行的应用或进程访问。
[0032] 图2阐释根据本发明的一种实施例用于DRM密钥供应的架构200。架构200包括客户机平台210、密钥发布器220、验证器230、供应服务器240和内容服务器250。
[0033] 客户机平台210表示用于运行应用以便使用内容服务器250提供的内容的系统或平台。该内容可以是例如任何类型的音频、视频或其他媒体内容。客户机平台210可以被实现为信息处理系统100的实施例。因此,可以在客户机平台210上创建和维护安全飞地212和应用,客户机214可以是例如可以在安全飞地212内运行的DTCP媒体播放器。
[0034] 密钥发布器220表示用于发布公钥/私钥对的应用、系统、平台或其他实体,该公钥/私钥对可以供第三方验证器远程地验证诸如客户机平台210之类的硬件平台的真实性。在一种实施例中,例如根据 增强隐私鉴定(EPID)方案,无需透露正在认证的硬件平台的身份就可以执行这种验证。
[0035] 验证器230表示根据密钥发布器220支持的方法验证硬件平台的真实性的应用、系统、平台或其他实体。
[0036] 供应服务器240表示把一个或多个密钥和/或其他信息提供给作为内容的安全传输的消费者的客户机的应用、系统、平台或其他实体。例如,服务器240可以是根据数字传输授权管理的DTCP供应服务器。
[0037] 内容服务器250表示通过安全传输提供内容和/或其他信息的应用、系统、平台或其他实体。例如,内容服务器250可以是DTCP内容服务器。
[0038] 图3阐释根据本发明的一种实施例用于预先供应的方法300,且图4阐释根据本发明的一种实施例用于供应的方法400。可以执行方法300以便启用根据本发明的一种实施例在方法400或另一方法中用于供应的平台安全特征。尽管本发明的各方法实施例不限于这一方面,但可以对图1和图2的元素进行引用以便帮助描述图3和图4的各方法实施例。
[0039] 在框310,把供应信息提供给供应服务器240。在一种实施例中,供应信息可以是DTLA指定要由DTCP客户机用来从DTCP内容提供商获得内容的供应信息。这种DTCP供应信息是唯一设备标识符、公钥/私钥对(DTCP密钥对)、设备证书和撤销机制。这些信息中的前三种将一起被称为DTCP供应信息242。DTCP供应信息242可以由DTLA在诸如DVD-ROM之类的介质上以明文(plaintext)提供。
[0040] 在框312,把验证器230的公钥证书提供给供应服务器240。这些可以由第三方认证机构提供。
[0041] 在框320,在客户机平台210上创建安全飞地212。在框322,在安全飞地212内启动客户机214。
[0042] 在框330,密钥发布器220产生EPID公钥222,EPID公钥222要与EPID私钥联用来作为用于认证硬件的密钥对的一部分。这种密钥对可以被称为EPID密钥对,但在本发明的范围内可以使用其他认证方案。在框332,密钥发布器220产生用于EPID密钥对的唯一EPID私钥224。注意,也可以产生其他唯一私钥并将其与EPID公钥222一起用于认证其他硬件。
[0043] 在框340,密钥发布器220把EPID私钥224提供给客户机214。
[0044] 在框350,密钥发布器220把EPID公钥222提供给验证器230。
[0045] 在框360,独立软件销售商(ISV)产生客户机214的未修改的软件的报告或测量。在框362,ISV把未修改的软件的测量发送给验证器230,供验证器230在供应期间用于验证客户机214的真实性。
[0046] 在图4的框410,在安全飞地212中运行的客户机214向供应服务器240发送供应请求
[0047] 在框420,供应服务器240从客户机214接收供应请求。在框422,供应服务器240产生第一密钥分量(‘B’),第一密钥分量可以用来例如通过Diffie-Hellman(迪菲-赫尔b b曼:DH)密钥交换产生共享密钥。因此,可以通过操作‘B=g mod p’(‘B=g模p’)来执行框422,其中‘b’是供应服务器240私有的且‘g’和‘p’是公共的。Diffie-Hellman密钥交换可以使用SIGMA协议来避免中间人攻击(man-in-the-middle attack)。然而,在本发明的范围内可以使用任何密钥交换协议。
[0048] 在框424,供应服务器24向客户机214发送客户机214证明其真实性的质询。发送质询可以包括发送验证器的身份以便用于提供真实性的证明(例如,验证器230)。在框426,供应服务器240向客户机214发送第一密钥分量。
[0049] 在框430,客户机214从供应服务器240接收验证器230的身份。在框432,客户机214从供应服务器240接收第一密钥分量。
[0050] 在框440,客户机214产生其身份的报告或测量,这可以例如在安全飞地212内通过使用EREPORT指令来执行该报告或测量,EREPORT指令是ENCLU指令的叶子(leaf)。在框442,客户机214使用EPID私钥224签署该报告。在框444,客户机214使用由供应服务器240提供的身份信息来标识验证器230。在框446,客户机214启动对验证器230的验证请求。在框448,客户机214把其已签署身份报告发送给验证器230,且也可以发送其他信息,例如ISV证书和安全版本号。
[0051] 在框450,验证器230从客户机214接收已签署身份报告。在框452,验证器230尝试使用未修改的软件测量216和EPID公钥222来验证已签署身份报告。如果验证成功,那么,在框454,验证器230向客户机214发送认证证书,且方法400在框460继续。如果验证不成功,则方法400不继续。
[0052] 在框460,客户机214从验证器230接收认证证书。在框462,客户机214产生第二密钥分量(‘A’),第二密钥分量可以用来例如通过Diffie-Hellman(DH)密钥交换产生a共享密钥。因此,可以通过操作‘A=g mod p’来执行框462,其中‘a’是客户机214私有的。在框464,客户机214把其认证证书发送给供应服务器240。在框466,客户机214把第二密钥分量发送给供应服务器240。在框468,客户机214使用第一密钥分量和第二密钥分量产生共享密钥。
[0053] 在框470,供应服务器240从客户机214接收认证证书。在框472,供应服务器240从客户机214接收第二密钥分量。在框474,供应服务器240判断认证证书是否有效。如果是,那么,方法400在框480继续。如果不是,那么,方法400不继续。
[0054] 在框480,供应服务器240使用第一密钥分量和第二密钥分量产生共享密钥。在框482,供应服务器240使用共享密钥来加密供应信息(例如,DTCP供应信息242)。在框484,供应服务器240把经加密的供应信息发送给客户机214。
[0055] 在框490,客户机214从供应服务器240接收经加密的供应信息。在框492,客户机214使用共享密钥来解密供应信息。在框494,客户机214把供应信息密封到安全飞地212,例如使用ESEAL指令,以便允许存储具有机密性和完整性的供应信息。密封指令使用安全飞地的唯一密钥来加密数据,以使得UNSEAL特征可以使用相同的安全飞地的唯一密钥来解密数据并检测对数据的任何改变,从而确保数据的机密性和完整性。
[0056] 在框496,已密封供应信息可以被存储在存储设备140中。因此,供应信息现在已准备好可供客户机214使用UNSEAL特征来在安全飞地212中使用,以使得客户机214可以使用来自内容服务器250的内容而无需重复对供应服务器240的供应请求。
[0057] 在本发明的各种实施例中,可以以不同的次序执行图3和图4中所阐释的方法,且可以组合或省略所阐释的框,且可以添加额外的框,或者带有重新排序的、组合的、省略的或附加的框的组合。此外,在本发明的范围内,多种其他方法实施例也是可能的。
[0058] 如上所述,本发明的各实施例或各实施例的部分可以被存储在任何形式的机器可读介质上。例如,可以以被存储在处理器110可读的介质上的软件或固件指令实现方法300或400的全部或部分,在由处理器110执行时,这些软件或固件指令引起处理器110执行本发明的一种实施例。而且,可以以被存储在机器可读介质上的数据实现本发明的各方面,其中该数据表示可用于制造处理器110的全部或部分的设计或其他信息。
[0059] 因而,已经描述了用于平台硬化DRM密钥供应的发明的各实施例。尽管已经描述且在附图中示出了某些实施例,但应理解,这样的实施例仅仅是说明而非限制广泛的发明,且本发明不限于所示出和描述的特定的构造和布置,这是由于本领域中的普通技术人员在研读本公开内容后可以看出各种其他修改。在快速发展且不容易预测进一步的进展的诸如本领域的技术领域中,可以容易地在布置和细节方面修改所公开的各实施例,通过允许不偏离本公开内容的原理或所附权利要求的范围的技术进步,可以促进这一点。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈