CN106464485B - 用于保护在清单文件中输送的内容密钥的系统和方法 - Google Patents
用于保护在清单文件中输送的内容密钥的系统和方法 Download PDFInfo
- Publication number
- CN106464485B CN106464485B CN201580019261.0A CN201580019261A CN106464485B CN 106464485 B CN106464485 B CN 106464485B CN 201580019261 A CN201580019261 A CN 201580019261A CN 106464485 B CN106464485 B CN 106464485B
- Authority
- CN
- China
- Prior art keywords
- content
- key
- user device
- secure
- kek
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0822—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0825—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0891—Revocation or update of secret information, e.g. encryption key update or rekeying
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
- H04L9/0897—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage involving additional devices, e.g. trusted platform module [TPM], smartcard or USB
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/14—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/24—Key scheduling, i.e. generating round keys or sub-keys for block encryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/60—Digital content management, e.g. content distribution
- H04L2209/603—Digital right managament [DRM]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Storage Device Security (AREA)
Abstract
本文公开了用于保护流传送内容解密的方法和用户装置。方法包括在用户装置接收用于请求的内容的清单,清单提供使用第一公共密钥加密密钥(KEK)加密的内容加密密钥(CEK),对应的第一私有KEK存储在用户装置上的安全存储中;在用户装置上的安全处理区域内部,使用第一私有KEK将CEK解密以创建解密的内容密钥;在安全处理区域内部,使用解密的内容密钥将请求的内容解密以形成解密的内容;以及提供解密的内容到移动用户装置上的解码器。
Description
技术领域
本公开内容一般涉及网络环境中的数字权利管理。更具体地并且非限制性地说,本公开内容目的在于安全地提供用于将流传送内容加密的内容密钥的用户装置和用户装置上使用的方法。
背景技术
通过因特网和其它网络流传送数字内容为家庭、商业和移动装置带来了大量的内容,包括优质(premium)内容。数字内容的所有者急于提供此内容到客户,但必须受到保护以防止会非法访问内容的用户。
US 2006/236161公开了用于提供防篡改装置和信宿(sink)装置之间的安全通信。从在防篡改装置的源装置接收加密的内容,其中内容已经使用第一密钥加密,其使用防篡改装置的公共密钥加密。一旦使用防篡改装置的私有密钥加密第一密钥,则使用解密的第一密钥解密内容。在防篡改装置接收的来自信宿装置的第二密钥用于重新加密内容以用于到信宿装置的传送。由信宿装置使用防篡改装置的公共密钥加密第二密钥并使用防篡改装置的私有密钥解密。
US 2007/079381 公开了用于控制内容的使用的方法和装置。使用所述方法,用户装置获得内容,定义指定内容的一个或更多个使用限制和/或许可的使用权利,生成用于定义的使用权利的完整性保护信息,使用内容加密密钥加密内容,使用与接收装置关联的密钥加密密钥加密内容加密密钥,传递加密的内容、定义的使用权利、加密的内容加密密钥以及完整性保护信息到接收装置。使用该方法,接收装置基于完整性保护信息验证定义的使用权利的完整性、使用对应于密钥加密密钥的解密密钥解密加密的内容加密密钥、在安全环境中使用内容加密密钥解密加密的内容、应用定义的使用权利到内容以及根据应用的使用权利使用内容。
US 2002/169973 公开了复制保护方法和复制保护系统。方法包括接收媒体证书(包括应允的播放装置的私有密钥标识)以及搜索对应于私有密钥标识的实际私有密钥的私有密钥验证器。中间密钥解密器接收加密的中间密钥并且使用实际私有密钥解密中间密钥。媒体密钥解密器通过使用解密的中间密钥解密媒体标识来获得原始媒体密钥,以及媒体数据解密器接收加密的媒体数据集合并且使用原始媒体密钥解密媒体数据集合。
发明内容
本文提供一种在用户装置操作的用于保护流传送内容解密的方法。也提供了一种用于实现该方法的用户装置。还提供了包含用于执行该方法的指令的非暂时性计算机可读介质。本文进一步提供了有利的特征。
本文描述了一种用于保护在诸如机顶盒、智能电话、平板计算机等客户端装置中的内容解密的方法。技术采用内容的对称加密,其使用在清单(manifest)文件中从服务器安全输送到客户端装置的内容加密密钥。
在一种普通技术中,使用在从根密钥推导并且定期更新的密钥加密密钥(KEK)下的对称加密,安全输送内容加密密钥。客户端装置包括用于加密有关的存储(storage)和处理(包括根密钥的持久性存储和当前KEK的存储)的安全存储和安全处理区域两者。安全处理区域是处理器操作环境,通常包括硬件和固件级访问控制特征及使实施变得困难以防止敏感信息的意外或有意暴露的软件支持功能。
在操作中,内容输送基础设施中的服务器或代理在当前KEK之下将CEK加密,并且作为用于流传送内容输送的控制流的一部分,在输送到客户端装置的清单文件中包括它们。使用清单文件用于流传送分段内容的输送通常为人所熟知。在客户端装置,使用存储的KEK在安全处理区域内部将CEK解密,并且也在安全处理区域中使用得到的解密的CEK将内容解密。随后,解密的内容能够由媒体播放器渲染。通过包含利用根密钥加密的新KEK的更新消息,定期更新KEK。
一方面,公开了在用户装置操作的用于保护流传送内容解密的方法的实施例。方法包括在用户装置接收用于请求的内容的清单,清单提供使用第一公共密钥加密密钥(KEK)加密的内容加密密钥(CEK),对应的第一私有KEK存储在用户装置上的安全存储中;在用户装置上的安全处理区域内部,使用第一私有KEK将CEK解密以创建解密的内容密钥;在安全处理区域内部,使用解密的内容密钥将请求的内容解密以形成解密的内容;以及提供解密的内容到用户装置上的解码器。
在又一方面,公开了用户装置的实施例。用户装置包括:处理器;包括内容请求应用的非安全处理区域;以及包括安全存储器、流传送内容播放器和用于接收来自内容请求应用的请求的安全应用程序接口、解密器的安全处理区域,解密器配置成接收用于请求的内容的清单,清单提供使用公用密钥加密密钥(KEK)加密的内容加密密钥(CEK),对应的私有KEK存储在安全存储器中,并且解密器还配置成将CEK解密以创建解密的CEK,使用解密的CEK将请求的内容解密以形成解密的内容,以及提供解密的内容到安全处理区域中的解码器。各种实施例的其它特征如相关权利要求项中所述。
在还有的其它方面,公开了一种非暂时性计算机可读介质的实施例,所述介质包含指令存储在其上。当存储的指令由配置成作为网络个人录像机(NPVR)元素操作的计算机系统执行时,计算机系统可操作以执行上面陈述方法的实施例。各种实施例的其它特征如相关权利要求项中所述。
附图说明
本公开内容的实施例通过示例并且不是通过限制在附图的图形中示出,图中相同的标号表示类似的元素。应注意的是,在本公开内容中对“一”或“一个”实施例的不同引用不一定指相同的实施例,并且此类引用可意味着至少一个实施例。此外,在结合实施例描述特定特征、结构或特性时,认为结合无论是否明确描述的其它实施例来实现此类特征、结构或特性是在本领域技术人员的认知之内。
附图结合到说明书中并且形成其一部分,以示出本公开内容的一个或更多个示范实施例。从结合随附权利要求并且参照附图进行的以下具体实施方式中,将理解本公开内容的各种优点和特征,其中:
图1A描绘根据本专利公开内容的实施例的用于在用户装置保护流传送内容解密的系统的框图;
图1B描绘根据本专利公开内容的实施例的用于在用户装置保护流传送内容解密的系统的框图;
图1C描绘根据本专利公开内容的实施例的用于在用户装置保护流传送内容解密的系统的框图;
图1D描绘根据本专利公开内容的实施例的用户装置的硬件组织的框图;
图2A描绘根据本专利申请的实施例的用于在用户装置保护流传送内容解密的方法的流程图;
图2B描绘根据本专利申请的实施例的用于分发密钥加密密钥的方法的流程图;
图2C描绘根据本专利申请的实施例的用于撤销(revoking)密钥加密密钥的方法的流程图;
图2D描绘根据本专利申请的实施例的用于替换密钥加密密钥的方法的流程图;
图2E描绘根据本专利申请的实施例的用于保护根密钥的方法的流程图;
图3描绘根据本专利公开内容的实施例的在用于流传送安全内容的系统的关键元素之间建立信任关系的框图;
图4描绘根据本专利公开内容的实施例的在安全存储器内加密的视频的处理的框图;
图5更详细描绘根据本专利公开内容的实施例的在图3的信任关系的建立中前两个元素的框图;以及
图6更详细描绘根据本专利公开内容的的实施例的在图3的信任关系的建立中最后两个元素的框图。
具体实施方式
在下面的描述中,相对于本专利公开内容的一个或更多个实施例陈述了多个特定的细节。然而,应理解的是,可实践一个或更多个实施而无需此类特定细节。在其它情实例中,公知的子系统、组件结构和技术未详细显示以免模糊对示例实施例的理解。相应地,本领域的技术人员将领会,可实践本公开内容的实施例而无需此类特定细节。还应认识到的是,本领域技术人员借助于本文中陈述的具体实施方式并且参照附图,将能够形成和使用一个或更多个实施例而无需进行过度的实验。
另外,在下面的描述、权利要求或两者中可使用诸如“耦合”和“连接”等术语及其派生词。应理解的是,这些术语不一定意在做为彼此的同义词。“耦合”可用于指示可相互直接物理或电接触或不直接物理或电接触的两个或更多个元素相互协作或交互。“连接”可用于指示在相互耦合的两个或更多个元素之间通信的建立,即通信关系。此外,在本文中陈述的一个或更多个示例实施例中,普遍地说,如果元素能够执行或以其它方式在结构上布置成执行功能,则元素、组件或模块可配置成执行该功能。
本专利公开内容的一个或更多个实施例可使用软件、固件和/或硬件的不同组合来实施。因此,图(例如,流程图)中显示的一个或更多个技术可使用一个或更多个电子装置或节点(例如,网络元素、订户装置或终端站等)上存储和执行的代码和/或数据来实施。此类电子装置可使用计算机可读媒体存储和传递(在内部和/或通过网络与其它电子装置)代码和数据,如非暂时性计算机可读存储媒体(例如,磁盘、光盘、随机存取存储器、只读存储器、闪存存储器装置、相变存储器等)、暂时性计算机可读传送媒体(例如,电、光、声或其它形式传的播信号 - 如载波、红外信号、数字信号)等。另外,此类电子装置通常可包括耦合到诸如一个或更多个存储装置(非暂时性机器可读存储媒体)、用户输入/输出装置(例如,键盘、触摸屏、定点装置和/或显示器)和网络连接等一个或更多个其它组件的一个或更多个处理器的集合。因此,给定电子装置的存储装置或组件可配置成存储代码和/或数据以便为了实施本公开内容的一个或更多个技术的目的而在该电子装置的一个或更多个处理器上执行。
现在参照图形,并且更具体地说参照图1A-1D,显示用于保护流传送内容解密的系统100。用户装置101配备成接收和安全播放来自内容分发网络(CDN)的加密的流传送内容(包括高值内容)并且接收来自与CDN关联的内容控制服务器102的内容的清单。用户装置101能够是离散机顶盒(STB)、个人计算机、膝上型计算机、笔记本计算机、平板、集成TV/STB、智能电话、智能电视、视频手表、软件保护器或诸如此类。用户装置101划分成安全处理区域110和非安全处理区域108,其中加密的流传送内容的所有处理在安全处理区域110内执行。驻留在安全处理区域110内的应用受到严格控制,并且只能够使用本领域技术人员熟知的特定固件级协议更改。驻留在非安全处理区域108中的应用能够更轻松地进行更新,但可经受特定限制,即,有关从中能够下载应用到装置的源的限制。如下面将更详细解释的一样,包括非安全处理区域108和安全处理区域110两者的用户装置101的安全性(security)由安全引导和认证协议验证。在至少一个实施例中,安全处理区域110是ARM® TrustZone®。在美国专利No.8,925,055中显示了安全处理区域和安全引导的一种使用的示例,该专利由本申请的受让人拥有,并且通过引用结合于本文中。
进一步查看用户装置101,非安全处理区域108包括提供用于选择流传送内容的用户界面的应用(APP) 104。APP 104能够是浏览器或用于选择流传送内容的专用应用。安全性客户端106嵌入在APP 104中,并且如下将讨论的一样,参与用户装置101与数字权利管理(DRM)服务器的认证,以及还检查用户的访问请求的内容的权利资格(entitlement)。在至少一个实施例(未具体示出)中,安全性客户端106部署为网络服务器中的虚拟媒体控制器,而不是作为APP 104的一部分;此实施例将在下面更详细讨论。在安全处理区域110内,是流传送内容播放器112、本文中也称为解密器114的解密元素114和也称为解码器116的解码元素116。
图1A示出根据现有技术,用于保护流传送内容解密的系统的组件和在这些组件之间的信息流两者。安全性客户端106使用连接134,将对内容的请求发送到内容播放器112。内容播放器112使用连接136接收来自内容输送网络的已使用内容加密密钥(CEK)加密的内容。为了这些图形的目的,(内容)CEK表示使用密钥CEK加密的内容。用户装置将通常接收用于请求的内容的清单和与加密的内容分开发送的其它控制数据,其中CEK在清单内的字段中提供。将理解的是,CEK能够物理存在于清单中,或者能够由清单以某一其它方式提供。例如,在HTTP直播流传送(HLS)(HTTP Live Streaming)中加密内容时,清单携带指向加密的CEK的URI。在现有技术系统100中,内容控制服务器102经由安全连接130将CEK发送到解密器114,安全连接能够是安全套接层(SSL),用于建立加密的链路的标准安全性技术。在此实施例中,CEK未加密发送,而是以明文发送,其中安全连接130提供必需的保护。CEK在解密器114安全接收,并且用于将从CDN接收到的内容解密。然而,期望的是能够通过非安全连接提供清单,并且因此提供CEK,同时保持CEK的安全性。也期望的是能为诸如优质电影等高值内容提供另外的安全性。现在将参照图1B-1C和图2A,讨论用于通过未加密的连接安全发送CEK的环境的两个实施例。在这些实施例中,CEK本身使用以前已经在用户装置与DRM服务器之间共享的密钥加密密钥(KEK)加密。KEK以加密形式存储在安全存储118中,并且只能够使用固件级处理进行更新。本领域技术人员将理解,在图1B和1C显示的实施例中,如果安全连接可用,清单也能够通过此类连接发送。
图2A描绘用于保护在清单文件中提供的内容加密密钥的方法200A。方法以接收(205)用于请求的内容的清单开始,清单提供已用于将流传送媒体加密以便传送的加密的CEK。如在图1B的系统100'中所示,内容控制服务器102通过连接131A将CEK发送到安全性客户端106。在至少一个实施例中,内容控制服务器102经由第三方(未明确示出)提供加密的CEK到安全性客户端106,第三方将加密的CEK插入清单,并且提供清单到CDN以便输送到用户装置101。安全性客户端106使用连接131B接收CEK,并且将CEK发送到解密器114。不同于在内容控制服务器102与解密器114之间的连接130是SSL连接的图1A中示出的实施例,连接131无需是安全连接,虽然如果期望,它能够是安全连接。在系统100'中,内容控制服务器102提供CEK,该CEK已使用以前已存储在安全存储118中的KEK加密。KEK以加密形式存储,并且能够使用仅固件级命令分发,替换或撤销。除提供CEK外,清单能够提供用于观看请求的媒体流的多个比特率和以每个可用比特率请求内容的方式。在至少一个实施例中,使用HLS协议流传送内容,但将理解的是,流传送协议也能够是HTTP上的动态自适应流传送(DASH)或任何其它已知或当前未知协议。在至少一个实施例中,在清单中物理携带加密的CEK。在至少一个实施例中,清单携带指向加密的CEK的位置的URI。此位置能够是任何地方,例如,在诸如内容控制服务器102、CDN中的服务器等外部服务器上,或者是用户装置101上的位置。在至少一个实施例中,使用AES-128加密方法对CEK加密。
一旦CEK已获得,图2A的方法继续使用在用户装置上的安全存储中存储的KEK将CEK解密(210)。KEK及CEK始终以加密形式存储在用户装置101上。如在图1中看到的一样,由解密元素114从安全存储118检索KEK。一旦CEK已解密,方法继续使用CEK将如提供的请求的内容解密(215)。在内容解密后,方法通过提供(220)解密的内容到诸如解码器116等解码器而完成。本领域技术人员将理解,能够发生接收到内容的进一步处理,其中内容最终提供到屏幕以供用户观看。
图1C中示出用于提供加密的CEK到用户装置101的系统100"。此实施例类似于图1B的实施例,表现在应用104的安全性客户端106'通过连接135将对内容的请求发送到内容播放器112,并且内容输送网络(CDN)通过连接236将使用CEK加密的内容发送到内容播放器112。在此实施例中,内容控制服务器102未经由安全性客户端106提供CEK。相反,内容控制服务器102使用连接132,直接提供CEK到安全处理区域110中的解密元素114。在至少一个实施例中,内容控制服务器102经由第三方(未明确示出)提供加密的CEK到解密元素114,第三方将加密的CEK插入清单,并且提供清单到CDN以便输送到用户装置101。像图1B的实施例中的连接131一样,连接132无需是安全连接,这是因为CEK以加密形式提供,虽然为了另外的安全性,能够利用安全连接。解密器114从安全存储118访问KEK以将CEK解密,并且使用解密的CEK将加密的流传送内容解密。解密的内容被发送到如所示提供视频帧和音频流的解码器216。虽然此实施例将安全性客户端106显示为APP 104的一部分,但在安全性客户端106部署为在网络服务器的虚拟媒体控制器时,也能够使用直接将清单发送到解密器114。
图1D是诸如图1A、1B、1C中示出的用户装置等用户装置的硬件组织的广义框图。用户装置101包括通过一个或更多个数据总线148耦合在一起的一个或更多个处理器140、存储器142、本地存储144和输入/输出(I/O)接口电路146。如本领域通常熟知的一样,I/O接口电路146将装置耦合到一个或更多个外部网络、另外的存储装置或系统及其它输入/输出装置。如本文中所描述的装置的系统级功能性由执行计算机程序指令的硬件提供,指令通常存储在存储器142中,并且由一个或更多个处理器140检索和执行。通常(虽然不是要求的),具有安全和非安全处理区域两者的环境将具有至少两个处理器,包括安全处理器和非安全处理器。通常,非安全处理器不能访问驻留在安全处理区域内的程序或数据,而安全处理器能够访问用户装置上的任何位置。
内容加密密钥(CEK)能够根据期望进行更新。存储在安全存储118中并且用于将CEK解密的密钥加密密钥(KEK)也能够进行更新,但只使用属于分发和控制两种类型的特定固件级消息进行更新。分发消息能够用于在最初提供一个或更多个KEK或者添加另外的KEK而不移除现有KEK。控制消息用于撤销或替换一个或更多个现有KEK。用于这些消息每个的格式如下所示:
分发消息格式:
KEK-ID 1SP “dis”[“tribute”] 1SP KEYLEN 1SP KEY
撤销消息格式:
KEK-ID 1SP “rev”[“oke”] 1sp HMAC
替换消息格式:
KEK-ID 1SP “rep”[“place”] 1SP KEYLEN 1SP KEY 1SP HMAC
在这些格式的每个格式中,KEK-ID是与KEK关联的密钥标识,KEYLEN是以字节为单位的密钥的长度,并且KEY取决于消息类型:使用MASTER对替换KEK加密,使用KEK对CEK加密。KEK替换或撤销包括哈希消息认证代码(HMAC)。能够对撤销消息加密。消息中每个字段的内容和格式如下所示:
KEK-ID = *TEXT
KEY-LEN = *DIGIT
KEY = *OCTET
HMAC = *HEX
其中
OCTET = <数据的任何8比特序列>
TEXT = <任何US-ASCII可见字符(八位字节33-126)>
DIGIT = <任何US-ASCII数字“0”...“9”(八位字节48-57)>
SP = <US-ASCII SP,空间(32)>
HEX = “A” | “B” | “C” | “D” | “E” | “F”
| “a” | “b” | “c” | “d” | “e” | “f” | 数字
KEK撤销和替换能够使用或服务器推送或注册步骤执行,以确定在客户端存储的KEK以及哪些存储的KEK不再有效。当使用注册步骤时,用户装置联系中央机构并且使用密钥撤销/替换协议以便进行在客户端与中央机构之间的通信。
图2B-2D中示出用于执行密钥分发、撤销和替换的必需元素。在图2B中,用户装置如上所示接收(230)分发消息。分发消息包含密钥标识和使用根密钥加密的对应的密钥加密密钥(KEK)。根密钥的副本以前已存储在安全存储118中以用于解密接收到的KEK。在至少一个实施例中,分发消息提供多个密钥,其中每个KEK具有单独的密钥标识。安全处理器在安全存储118中存储(235)密钥标识和加密的KEK两者。
在图2C中,用户装置如上面所示接收(250)包含密钥标识的撤销消息。在至少一个实施例中,例如使用根密钥对撤销消息加密。安全处理器随后撤销(225)对应于撤销消息中密钥标识的KEK。在图2D中,用户装置根据上面所示格式接收(270)替换消息;替换消息包含密钥标识和使用根密钥加密的KEK。安全处理器定位具有相同密钥标识的KEK,并且将存储的KEK替换(275)成相同密钥标识的新接收到的KEK。图2D示出根密钥的管理。根密钥在设备制造时存储(即,烧刻)在安全存储118中的仅一次性存储中。根密钥不能进行更改或替换。
为确保用户装置101的安全性,且因此确保使用用户装置101提供的加密内容的安全性,必需在服务提供商与接收加密的流传送内容的用户装置之间建立和保持信任关系。例如,大多数演播室要求硬件信任根(root of trust)作为高清晰(HD)(即,1080p)权利资格的前提条件。下面部分讨论硬件信任根的建立和安全视频播出。下面部分中讨论的实施例目的在于能够接收诸如优质HD电影等加密的高值内容并且提供未加密的内容到经授权用户的装置。显示了安全引导和注册过程的概述,之后讨论密钥和证书、安全视/听数据路径和另外安全性措施的使用。最后,提供了引导和注册过程的更详细讨论。
安全引导:确保固件和软件完整性
安全引导的目标是确保在装置上运行的所有固件和系统软件的合法性和完整性。除代码签名外,这意味着确保仅受信任代码在装置上运行。这能够使用以下概念而得以满足:
对于每件装置固件和软件,通过使此类固件和软件元素不变地在制造时烧刻到硬件中,能够建立合法性。备选地,通过使此类固件和软件元素经密码确认成是可靠的,能够建立合法性。
当代码签名用于固件和软件密码确认时,所有此类确认是带有密钥长度2048的RSA,其中,密钥对通过等效于2048比特的熵(entropy)的充分随机性生成。
图3是描绘在装置内和装置外的关键功能元素之间建立信任关系以及出于安全引导和随后的装置以及服务认证目的这些元素之间的总体交互的框图。此图描绘数字权利管理(DRM)服务器302和作为用户装置的一部分的用户界面(UI) 304、安全性客户端306、诸如播放器应用编程接口(API) 308等中间件及片上系统(SOC) 310。安全性客户端306例如能够是用户装置101的安全性客户端106,并且SOC能够是安全处理区域110,它能够作为片上系统提供,如ARM® TrustZone®。中间件308将包括在安全性客户端306与驻留在SOC 310上的内容播放器之间的应用接口,但也能够包括其它代码。在一个实施例中,用户装置能够是混合机顶盒,其具有中间件308,中间件308包括代码以管理信息从多个多播信道到SOC310上安全处理区域的传送,并且管理家庭安全性及显示的播放器接口。DRM 302是用于用户装置的服务提供商网络的一部分,它需要与用户装置建立相互确认。在SOC 310引导时,此安全处理区域先验证(BA1)中间件308有效。一旦中间件308被验证,SOC则将验证(BA2)安全性客户端306也有效。一旦每个这些元素被验证,SOC 310则执行由安全性客户端306调解(mediated)的用户装置与DRM服务器302的相互认证(BA3,BA4)。下面将更详细讨论方法的这些元素中的每个元素。
认证和DRM - 密钥和证书的使用
为支持装置和服务认证以及支持安全密钥交换(为了数字权利管理(DRM)的目的),在制造时在用户装置上预供应了以下密码元素:
SSL客户端证书(X.509),这是装置特定的,并且由公知的证书机构(CA)签名。证书包括对应于SSL客户端私有密钥的公共密钥,并且在字段中可更新。
私有密钥Lpriv,至少为2048比特、RSA。私有密钥Lpriv由原始设备制造商(OEM)预供应,并且必须使用可一次性编程存储器安全供应到SOC中以及进行哈希锁定。对应的公共密钥Lpub由原始设备制造商保持。此字段不可更新,并且只在制造期间设置一次。
私有密钥加密密钥(KEKpriv),必须为至少2048比特、RSA。KEKpriv能够由OEM提供,并且在制造时安全供应。备选地,在由客户使用前,KEKpriv能够由服务提供商安全供应。KEKpriv在字段中是软件可更新的,并且以加密形式存储(由Lpriv加密)。对应的公共密钥KEKpub由OEM或服务提供商保持。本领域技术人员将理解,本文中对在图1B和1C中显示的用户装置上存储的KEK的引用指KEKpriv,而本文中对由KEK加密的内容加密密钥的引用指KEKpub。
下面的表1概述这些安全性元素:
密码元素 | 密码属性 | 创建属性 | 安全性 | 所有者 | 可更新性 |
SSL客户端证书 | 已签名、公知的CA | 装置特定,例如,序列号 | 安全存储* | SOC供应商 | 字段中可更新 |
SSL客户端私有密钥 | 2048比特;RSA | 装置特定 | 安全存储* | SOC供应商 | 字段中可更新 |
Lpriv | 2048比特;RSA | 供应 | OTP;哈希锁定 | OEM/SP | 否 |
KEKpriv | 2048比特;RSA | 供应 | 安全存储* | OEM/SP | 经由安全软件更新 |
表1
*在密码强度上等效于AES 128比特加密。
装置注册是由安全性客户端306为了两个目的而执行的过程:(1)使用户装置101和包含安全性客户端306的特定应用104向DRM服务器302认证;以及(2)使DRM服务器302向安全性客户端306认证。通过在安全客户端306中包括服务器签名证书,实现第二目的,而通过使用供应到硬件中的私有密钥(Lpriv)将注册消息中的信息元素加密,并且经由双向SSL连接将该消息输送到DRM服务器302,实现第一目的。Lpriv的拥有证实了硬件的可靠性,并且SSL客户端证书的拥有建立了装置的身份。通过使用在安全性客户端中包括的应用特定密钥将注册消息加密,使包含安全性客户端306的应用(app) 104向DRM服务器302认证。密钥的拥有使应用认证。注意的是,SSL证书和app 104均可更新。
安全性客户端306构建注册消息以使装置向DRM服务器认证。此注册消息使用安全SSL连接发送,SSL连接采用装置特定SSL证书和私有密钥对通信信道进行认证和保护通信信道。注册消息包括信息元素,此信息元素包含对例如用户装置101和应用104特定的信息;此信息元素通过私有密钥Lpriv加密。DRM服务器使用公共密钥Lpub将该信息元素解密,以对用户装置101和应用104,即服务进行认证。DRM服务器通过使用Lpub加密的对象对注册进行响应。安全处理器使用Lpriv将对象解密以完成认证过程。下面跟着的是相对于图6的详细示例。此过程在以下条件下运行:
用于在安全性客户端306与DRM服务器302之间的注册通信的SSL实施在受信任执行环境(TEE)中运行,并且采用上面识别的SSL证书和SSL私有密钥。
用户装置提供内部API (API-A)以便通过密钥Lpriv加密装置和应用特定信息元素。在至少一个实施例中,API-A遵循带有算法 TEE_ALG_RSAES_PKCS1_OAEP_MGF1_SHA256的GlobalPlatform TEE内部核API规范v1.1 TEE_CipherUpdate,并且模式为TEE_MODE_ENCRYPT。
用户装置提供内部API (API-B)以便使用解密的密钥Lpriv将注册响应中包含的加密对象解密。在至少一个实施例中,API-B遵循带有算法 TEE_ALG_RSAES_PKCS1_OAEP_MGF1_SHA256的GlobalPlatform TEE内部核API规范v1.1 TEE_CipherUpdate,并且模式为TEE_MODE_DECRYPT。
为支持用于安全视频播放(playback)的DRM,用户装置101在内容控制服务器102与内容播放器112之间提供双向SSL连接,使用密钥加密密钥(KEK)的内容加密密钥(CEK)的保护,以及在受信任执行环境(TEE)中解密,解码和渲染的内容。在内容控制服务器102与内容播放器112之间的双向SSL使用SSL客户端和服务器证书将清单文件发送到播放器。这产生以下元素:
用于安全性客户端106到内容播放器112通信的SSL实施在受信任执行环境(TEE)中运行,并且采用上面识别的SSL证书和私有密钥。
密钥加密密钥(KEK)用于是对称AES密钥的内容加密密钥(CEK)的保护。内容控制服务器102将产生提供加密的密钥的清单,其通过使用KEKpub加密CEK以确保其机密性而创建。在HLS用于流传送内容的示例实施例中,清单包含到加密的CEK的URL。用户装置101的安全处理器通过先使用KEKpriv将加密的CEK解密以提取CEK,随后使用解密的CEK将媒体内容解密,而提供用于内容的安全解密。以下元素提供另外的支持。
KEKpriv如下所述是软件可更新的: DRM服务器302能够安全地传输KEKpriv到在用户装置上运行的安全性客户端306,其中,KEKpriv本身使用确保其机密性的非对称公共主密钥Lpub加密。通过采用内部软件API,在装置中的安全存储中放置加密的KEKpriv。
此内部软件API遵循GlobalPlatform TEE内部API规范v1.0,TEE_SetOperationKey,其中,密钥材料(key material)是加密的KEK,算法是TEE_ALG_RSAES_PKCS1_OAEP_MGF1_SHA256,并且模式是TEE_MODE_DECRYPT。此API通过固件实施,并且由安全性客户端306调用以根据需要更新KEKpriv。
内容控制服务器102提供使用清单文件中的KEKpub加密的内容加密密钥(CEK)。在至少一个实施例中,用户装置101上携带的代理提供CEK。
内容在诸如安全处理区域110等受信任执行环境(TEE)中解密、解码和渲染。
密钥只存储在安全存储器中,并且从不在TEE外暴露。
安全A/V数据路径
安全视听数据路径用于确保内容密钥和压缩与解压缩的内容只由在诸如安全处理区域110等受信任执行环境中运行的经授权应用软件可访问。从解密点到受保护输出点,音频和视频数据受到保护。安全A/V数据路径具有这些元素:
用于视频解密、解码和渲染的缓冲器只保留在安全存储器中。这也适用于混合操作,如菜单重叠,并且支持菜单需要重叠在受保护内容上的使用情况。在混合操作期间,仅允许经授权的软件或硬件访问音频和视频样本。在一个实施例中,这通过存储器和总线加密与加扰的组合来实现。然而,仅允许未压缩的解密的内容遍历任何外部总线。
访问安全视频路径的API遵循GlobalPlatform TMPP标准,用于PCTF的全球平台系统要求V1.2。因此,通过使用算法“TEE_ALG_AES_CBC_ABR”和模式“TEE_MODE_DECRYPT”扩展GlobalPlatform TEE内部API,TEE_CipherUpdate,以使用经由清单文件传入的通过KEKpub加密的加密的CEK操作,获得解密API。此算法通过先获取使用Lpub加密的加密的KEKpriv,将它解密以获得KEKpriv,然后使用KEKpriv将CEK解密,并且最后使用CEK将媒体解密,经由到解码器和渲染器的安全内部路径,将输出发送到解码器,以在选择的传入加密的流上执行AES解密。
未加密、压缩的AV数据从未遍历任何芯片外部物理总线。
如果未加密、解压缩的AV数据遍历芯片外部物理总线,则地址空间布局随机化(ASLR)用于与使用例如在HLS中用于CEK的128比特等传输的密钥的最大长度的密钥进行加密的复杂性相当或比其更大的混淆。
图4示出安全视听路径400。通常,在此图中,图形顶部的框携带视频数据,而下部的框安全存储器140和加扰的存储器412用于由多个框使用的密钥的交换。加密的视频即使用CEK加密的视频,在解密块402接收,该框如上所述将CEK解密,并且使用CEK将接收到的内容解密。解密块402将解密的视频发送到解码块404,解码块将视频流解码并且将解码的视频继续传递到混合/图形(GFX)块406。解密块402和解码块404均能够根据需要访问安全存储器410以检索或传递密钥。混合GFX块406形成解码的视频流和任何必需的另外信息的混合,如显示菜单,并且将混合的视频传递到帧缓冲器408。安全存储器410中的密钥能够传递到加扰的存储器412以供混合/GFX块406和帧缓冲器408使用。在至少一个实施例中,此完整路径包含在用户装置101的安全处理区域110中。在至少一个实施例中,帧缓冲器408是安全处理区域110中未包含的唯一元素。在此后者实例中,将包含帧缓冲器408的位置或装置添加到在注册前执行的认证处理。
另外的保护
除上面讨论的认证方案和密钥的使用外,用户装置101提供几个另外的保护,即,在随机数生成器中高度随机性、对用户装置提供的输出的保护及调试端口安全性。关于随机数,用户装置101上的随机数生成器(RNG)能够或基于硬件或软件,但满足以下准则:
RNG算法具有等于或大于NIST CTR DRBG算法的随机性。
用户装置101的输出的保护在播放期间始终进行,并且阻止视频数据的未经授权复制。使用的保护的标准取决于输出的类型。用户装置101的输出遵循复制保护的以下标准:
对于未压缩的HDMI输出,使用高带宽数字内容保护(HDCP) 1.4+;
对于例如Miracast等压缩的HDMI输出,使用HDCP 2.2+;
对于USB/以太网输出,使用数字传送内容保护(DTCP)。
用户装置101还通过以下方式围绕常用开发和测试调试端口提供安全性:
JTAG和其它SOC特定调试端口被熔合(fused)闭合。
安全引导和注册的细节
图5是图3中标记为BA1和BA2的过程的更详细的另一视图。此图描绘用于与DRM服务器建立信任根的过程,其中,第一步牵涉到验证安全引导图像和托管的操作系统(OS)。此过程的示例将被描述;然而,本领域技术人员将理解,对于特定SOC,变化将是适当的,并且其它装置能够包含与此图中显示的那些代码二进制大对象(code blob)不同的其它代码blob。通常在SOC中找到的示例安全引导牵涉到以下元素:
KEY1是烧刻到一次性可编程(OTP)熔丝中用于不变性和作为信任根的2048比特RSA根公共密钥。KEY1用于验证签名
引导加载器根密钥是第三个2048比特RSA根密钥,它烧刻到OTP中并且用于验证在闪存存储器中存储的对称AES 128密钥KEY3的签名。KEY3随后用于验证包括OS的引导ROM的其它代码blob的签名。
Lpriv是对装置唯一的第四个2048比特RSA私有密钥。Lpriv用于对装置进行认证。
图5示出此代码blob和在密钥与代码blob之间的逻辑关系。将理解的是,芯片集501上显示的所有元素是安全处理区域的一部分,而闪存存储器504位于非安全区域中。元素S0-S3示出在安全执行环境中的快速引导验证,而S4-S8示出快速引导图像签名验证。现在将参照此图描述示例过程:
S0.引导ROM 502计算外部根RSA公共密钥(KEY2)的SHA-256哈希(H2)。
S1.引导ROM 502读取OTP 506中的根RSA公共密钥(KEY1),并且使用KEY1将在闪存中存储的KEY2的签名解密。KEY2的解密的签名被比作H2。
S2.根ROM使用KEY2检查快速引导图像的签名SF2。这通过使用KEY2将SF2解密,并且将解密的值与快速引导图像的SHA-256哈希进行比较来完成。
S3.启动快速引导510。
S4.快速引导510检查在闪存中加密存储的AES CBC密钥(KEY3)的签名。
S4a.首先,快速引导510使用在OTP中存储的BL_RootKey (KEY4)将加密的KEY3解密。
S4b.接着,使用从KEY4和KEY5推导的中间密钥,快速引导510计算KEY3的AES CBC-MAC签名
S4c.使用密钥Blob AES_CBC_key (KEY5),将KEY3的签名解密。
S4d.比较S4b和S4c的输出以检验KEY3的完整性。应注意的是,非安全处理器不能读取OTP值。相应地,快速引导510在安全处理区域110中安全处理器上运行。
S5.快速引导510也使用KEY3检查Bootargs 512的签名。
S6.快速引导510也使用KEY3检查恢复514代码blob的签名。
S7.快速引导510也使用KEY3检查内核516的签名。
S8.快速引导510也使用KEY3检查系统518的签名。
S9.在这些步骤后,控制能够传递到内核。
对于受管理的用户装置,KEY1和KEY2是2048比特长,并且由原始设备制造商供给。如果操作系统支持第三方app安装,例如,Android,则系统被修改成只允许通过已知证书机构签名且由服务提供商批准的app。对于未受管理的装置,KEY1和KEY2是2048比特长,并且由受信任的第三方实体或服务提供商供给。在至少一个实施例中,芯片集501不支持一次性可编程和安全引导;在此实施例中,KEY3能够用于对使用AES加密的操作系统认证,并且白盒AES解密器包括在快速引导图像中。
在安全引导后,固件和OS可靠性已被验证,即,图3的BA1和BA2已执行。随后用于启动的过程继续到接下来的两个元素,即,图3中的BA3和BA4,它们一起被称为装置注册。BA3从内核检索认证请求,并且在BA4中将它中继到后端服务器。相互认证是在DRM服务器302与用户装置和app 104的组合之间 – app被包括以区分其它经授权的客app。
图6中示出了注册过程。四个元素参与注册过程:安全处理器602在安全处理区域110中操作,OS内核驱动器604和安全客户端606在非安全区域108中操作,并且DRM服务器608通过由SSL保护的网络连接可用。注意的是,如果安全性客户端606在网络服务器实施,则不使用注册过程。注册过程如下所述继续:
R1.安全性客户端606通过请求将发送到DRM服务器608的认证信息,开始构建注册消息的过程。请求使用特殊内核调用(API-A),这将产生通过Lpriv加密的消息。此消息包含装置特定和机密信息,这在所示实施例中为序列号,虽然也能够使用满足准则的其它信息。虽然图中未明确示出,但如下面的示例中所示,消息也包含用于应用104的app ID、时戳和随机数,其中,“+”表示级联操作:
Serial_Number(256字节)+ App_ID(4字节)+ Host_Time_Stamp(14字节)+random_cryptographic_nonce_1(16字节)
其中,序列号是2048比特装置特定的SSL客户端私有密钥
R2-R4。请求要求只能够在安全处理区域110中执行的加密,并且OS内核驱动器604将请求转发到安全处理器602。安全处理器602将请求的加密信息返回到OS内核驱动器604,该驱动器将加密的信息返回到安全性客户端606。
R5.安全性客户端606将认证消息发送到DRM服务器608。DRM服务器608接收消息,并且确认App_ID、序列号及其它信息。
R6.DRM服务器608使用L_pub将接收到的信息加密,并且将此加密的消息作为询问文本(challenge text)发送回安全性客户端606。
R7.安全性客户端606将请求发送到内核以使用L_priv将消息解密。请求使用第二特殊内核调用(API-B)。
R8-R10.安全处理器602接收请求,将接收到的询问文本解密,并且将解密的询问文本返回到OS内核驱动器604,该驱动器将询问文本返回到安全性客户端606。
R11.安全性客户端606验证询问文本中包含的时戳、随机数等。
R12.安全性客户端606向内核请求装置注册消息。
R13-R15.OS内核驱动器604访问安全处理器602以创建注册消息。安全处理器602将注册消息返回到内核驱动器604,该驱动器将注册消息返回到安全性客户端606。注册消息使用L_priv加密,并且具有以下格式:
(Device_ID_Token + '#' + OS_Time_Stamp + '#' + random_nonce_1)
其中,Device_ID_Token是序列号的SHA-256哈希。
R16.安全性客户端606将装置注册消息发送到DRM服务器608。R17.DRM服务器608使用对应于L_priv的公共密钥L_pub将消息解密,验证时戳和随机数,使用Device_ID_Token作为用于装置注册的装置标识,并且将装置注册的结果返回到安全性客户端606。
应领会的是,本公开内容的实施例能够在加密视听程序的分发中有利地提供另外的安全性层。加密的内容加密密钥能够通过非安全连接发送到用户装置,或者甚至在安全连接可用并且使用时能够添加另外的安全性。
在上述具体实施方式中,包括标记或描述为“模块”或“过程”或“处理器”或“控制器”或“计算机”的组件/块的各种元素的功能性可通过使用专用硬件及能够执行存储或预配置的软件的硬件来提供。在通过处理器提供时,功能可通过单个专用处理器、通过单个共享处理器或通过多个单独处理器(其中的一些可以是共享的或分布式的)提供。另外,“处理器”或“控制器”或“存储器”可包括但不限于数字信号处理器(DSP)硬件、ASIC硬件、只读存储器(ROM)、随机存取存储器(RAM)和/或其它存储媒体。
虽然各种实施例已显示和详细描述,但权利要求不限于任何特定实施例或示例。上面的具体实施方式都不应理解为暗示任何特定组件、元素、步骤、动作或功能是必需的,使得其必须包括在权利要求的范围中。除非明确那样说明,对单数元素的引用并不意在意味着“一个和只有一个”,而是“一个或更多个”。本领域技术人员熟知的对上述实施例的元素的所有结构和功能等效物通过引用明确结合于本文中,并且意在由本权利要求包括。相应地,本领域的技术人员将认识到,通过在下面随附权利要求的精神和范围内的各种修改和变化,可实践本文中描述的示范实施例。
Claims (18)
1.一种在用户装置操作的用于保护流传送内容解密的方法(200A),所述方法包括:
接收(230)固件级消息,所述消息包含第一密钥标识和使用在所述用户装置的安全处理区域中安全存储中存储的根密钥加密的第一私有密钥加密密钥(KEK);
在所述安全存储中存储(235)所述第一密钥标识和所述第一私有KEK;
在所述用户装置接收(205)用于请求的内容的清单,所述清单提供使用对应于所述第一私有KEK的第一公共KEK加密的内容加密密钥(CEK);
在所述安全处理区域内部,使用所述第一私有KEK将所述CEK解密(210)以创建解密的内容密钥;
在所述安全处理区域内部,使用所述解密的内容密钥将所述请求的内容解密(215)以形成解密的内容;以及
提供(220)所述解密的内容到所述安全处理区域中的解码器。
2.如权利要求1所述的方法(200A),还包括在所述安全处理区域中的仅一次性存储中存储(280)所述根密钥。
3.如权利要求2所述的方法(200A),其中所述固件级消息包括多个私有KEK,每个私有KEK具有对应的密钥标识,并且还包括在所述安全存储中存储所述多个私有KEK和对应的密钥标识。
4.如权利要求2所述的方法(200A),还包括接收(270)包含所述第一密钥标识和使用所述根密钥加密的第二私有KEK的固件级替换消息,并且将所述第一私有KEK替换(275)成所述第二私有KEK。
5.如权利要求2所述的方法(200A),还包括接收(250)包含所述第一密钥标识的固件级撤销消息,以及撤销(255)所述第一私有KEK。
6.如权利要求2所述的方法(200A),其中所述CEK、所述第一私有KEK和所述根密钥为AES-128密钥。
7.如权利要求2所述的方法(200A),还包括使用安全连接,对所述用户装置和数字权利管理服务器进行相互认证。
8.如权利要求2所述的方法(200A),还包括使用HTTP直播流传送(HLS)和HTTP上的动态自适应流传送(DASH)协议之一,接收所述请求的内容。
9.如权利要求2所述的方法(200A),还包括接收(131,132)来自内容分发网络中内容控制服务器的所述清单文件。
10.如权利要求9所述的方法(200A),还包括经由在所述用户装置上并且在所述安全处理区域外操作的安全性客户端,接收(131A,131B)所述清单文件。
11.一种用户装置(101),包括:
处理器(140);
包括内容请求应用(104)的非安全处理区域;以及
安全处理区域(110),包括安全存储器(118,410)、流传送内容播放器(112)、解密器(114,402)、解码器(116,404)和包含根密钥的一次性可编程存储器(506)及用于接收来自所述内容请求应用的请求的安全应用程序接口(134),其中所述安全存储器可操作以处理提供使用所述根密钥加密的私有密钥加密密钥(KEK)的固件级消息,进一步其中所述解密器(114,402)配置成接收(131,132)使用对应于所述私有KEK的公共KEK加密的内容加密密钥(CEK),所述CEK在用于请求的内容的清单中接收,以及进一步其中所述解密器配置成将所述CEK解密以创建解密的CEK,使用所述解密的CEK将所述请求的内容解密以形成解密的内容,以及提供所述解密的内容到所述解码器(116)。
12.如权利要求11所述的用户装置(101),其中所述内容密钥、私有KEK和根密钥为AES-128密钥。
13.如权利要求12所述的用户装置(101),其中所述用户装置配置成使用安全连接,执行与数字权利管理服务器(302)的相互认证。
14.如权利要求13所述的用户装置(101),其中所述安全处理区域(110)是ARMTrustZone。
15.如权利要求13所述的用户装置(101),还包括嵌入在所述内容请求应用(104)中的安全性客户端(106),所述安全性客户端(106)配置成接收(131A)来自内容分发网络中内容控制服务器(102)的所述清单文件,并且提供(131B)所述清单文件到所述解密器(114)。
16.如权利要求15所述的用户装置(101),还包括在与驻留在网络服务器上的安全性客户端(106)进行通信的所述内容请求应用(104)中的指令。
17.如权利要求15所述的用户装置(101),其中所述解密器(114)接收来自作为内容分发网络的一部分的内容控制服务器(102)的所述清单文件。
18.一种非暂时性计算机可读介质,包含指令存储在其上,所述指令在由可操作以流传送内容的用户装置执行时,执行以下动作:
接收(230)固件级消息,所述消息包含第一密钥标识和使用在所述用户装置上的安全处理区域中的安全存储中存储的根密钥加密的第一私有密钥加密密钥(KEK);
在所述安全存储中存储(235)所述第一密钥标识和所述第一私有KEK;
在所述用户装置接收(205)用于请求的内容的清单,所述清单提供使用对应于所述第一私有KEK的第一公共KEK加密的内容加密密钥(CEK);
在所述用户装置上的所述安全处理区域内部,使用所述第一私有KEK将所述CEK解密(210)以创建解密的内容密钥;
在所述安全处理区域内部,使用所述解密的内容密钥将所述请求的内容解密(215)以形成解密的内容;以及
提供(220)所述解密的内容到所述安全处理区域中的解码器。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201461938425P | 2014-02-11 | 2014-02-11 | |
US61/938,425 | 2014-02-11 | ||
US14/618,598 US11228427B2 (en) | 2014-02-11 | 2015-02-10 | System and method for securing content keys delivered in manifest files |
US14/618,598 | 2015-02-10 | ||
PCT/IB2015/051028 WO2015121806A2 (en) | 2014-02-11 | 2015-02-11 | System and method for securing content keys delivered in manifest files |
Publications (3)
Publication Number | Publication Date |
---|---|
CN106464485A CN106464485A (zh) | 2017-02-22 |
CN106464485A8 CN106464485A8 (zh) | 2017-06-30 |
CN106464485B true CN106464485B (zh) | 2020-03-06 |
Family
ID=53775922
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201580019261.0A Active CN106464485B (zh) | 2014-02-11 | 2015-02-11 | 用于保护在清单文件中输送的内容密钥的系统和方法 |
Country Status (8)
Country | Link |
---|---|
US (1) | US11228427B2 (zh) |
EP (1) | EP3105882B1 (zh) |
CN (1) | CN106464485B (zh) |
BR (1) | BR112016018486A8 (zh) |
CA (1) | CA2939396A1 (zh) |
HU (1) | HUE054769T2 (zh) |
PL (1) | PL3105882T3 (zh) |
WO (1) | WO2015121806A2 (zh) |
Families Citing this family (57)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9594927B2 (en) * | 2014-09-10 | 2017-03-14 | Intel Corporation | Providing a trusted execution environment using a processor |
US10142386B2 (en) | 2014-10-29 | 2018-11-27 | DLVR, Inc. | Determining manifest file data used in adaptive streaming video delivery |
US10084838B2 (en) | 2014-10-29 | 2018-09-25 | DLVR, Inc. | Generating and using manifest files including content delivery network authentication data |
US9509742B2 (en) | 2014-10-29 | 2016-11-29 | DLVR, Inc. | Configuring manifest files referencing infrastructure service providers for adaptive streaming video |
US10205710B2 (en) * | 2015-01-08 | 2019-02-12 | Intertrust Technologies Corporation | Cryptographic systems and methods |
US10255200B2 (en) * | 2015-02-25 | 2019-04-09 | Western Digital Technologies, Inc. | Data storage device and method of operation using multiple security protocols |
US10237722B2 (en) * | 2015-03-11 | 2019-03-19 | Futurewei Technologies, Inc. | System and method for multi-SIM profiles or embedded SIM |
US10425427B2 (en) * | 2015-06-19 | 2019-09-24 | Futurewei Technologies, Inc. | Template uniform resource locator signing |
WO2017004447A1 (en) * | 2015-06-30 | 2017-01-05 | Activevideo Networks, Inc. | Remotely managed trusted execution environment for digital-rights management in a distributed network with thin clients |
US9578054B1 (en) | 2015-08-31 | 2017-02-21 | Newman H-R Computer Design, LLC | Hacking-resistant computer design |
US10893313B2 (en) | 2015-09-11 | 2021-01-12 | Active Video Networks, Inc. | Secure bridging of third-party digital rights management to local security |
US9660803B2 (en) * | 2015-09-15 | 2017-05-23 | Global Risk Advisors | Device and method for resonant cryptography |
US9917690B2 (en) * | 2015-10-01 | 2018-03-13 | Time Warner Cable Enterprises Llc | Encryption management, content recording management, and playback management in a network environment |
US10025600B2 (en) * | 2015-10-02 | 2018-07-17 | Google Llc | NAND-based verified boot |
CN106845160B (zh) * | 2015-12-03 | 2018-04-20 | 国家新闻出版广电总局广播科学研究院 | 一种用于智能操作系统的数字版权管理(drm)方法和系统 |
EP3179690A1 (en) * | 2015-12-11 | 2017-06-14 | Gemalto Sa | Mobile device having trusted execution environment |
US10127399B1 (en) * | 2015-12-29 | 2018-11-13 | EMC IP Holding Company LLC | Secrets as a service |
CN109996114B (zh) | 2016-01-04 | 2021-02-26 | 华为技术有限公司 | 控制视频输出的方法及其装置、控制电路 |
EP3229398A1 (en) * | 2016-04-08 | 2017-10-11 | Gemalto Sa | A method for updating a long-term key used to protect communications between a network and a remote device |
EP3242488A1 (en) * | 2016-05-04 | 2017-11-08 | Thomson Licensing | Method for decrypting adaptive bit rate streams and corresponding device |
US10389517B2 (en) * | 2016-06-27 | 2019-08-20 | Nxp B.V. | Using secure key storage to bind a white-box implementation to one platform |
US10740466B1 (en) * | 2016-09-29 | 2020-08-11 | Amazon Technologies, Inc. | Securing interfaces of a compute node |
US11295017B2 (en) * | 2017-01-31 | 2022-04-05 | Ford Global Technologies, Llc | Over-the-air updates security |
JP7027664B2 (ja) * | 2017-02-20 | 2022-03-02 | パスガード インコーポレイテッド | ハッキング耐性のあるコンピュータ設計 |
US10474359B1 (en) | 2017-02-28 | 2019-11-12 | Amazon Technologies, Inc. | Write minimization for de-allocated memory |
US10404674B1 (en) | 2017-02-28 | 2019-09-03 | Amazon Technologies, Inc. | Efficient memory management in multi-tenant virtualized environment |
US10901627B1 (en) | 2017-02-28 | 2021-01-26 | Amazon Technologies, Inc. | Tracking persistent memory usage |
CN106997439B (zh) * | 2017-04-01 | 2020-06-19 | 北京元心科技有限公司 | 基于TrustZone的数据加解密方法、装置及终端设备 |
CN106980794B (zh) * | 2017-04-01 | 2020-03-17 | 北京元心科技有限公司 | 基于TrustZone的文件加解密方法、装置及终端设备 |
CN106992851B (zh) * | 2017-04-01 | 2020-04-10 | 北京元心科技有限公司 | 基于TrustZone的数据库文件口令加解密方法、装置及终端设备 |
CN106980793B (zh) * | 2017-04-01 | 2020-05-15 | 北京元心科技有限公司 | 基于TrustZone的通用口令存储及读取方法、装置及终端设备 |
US10609429B2 (en) * | 2017-06-28 | 2020-03-31 | Telefonaktiebolaget Lm Ericsson (Publ) | System, devices and methods for providing stream privacy in an ABR OTT media network |
WO2019084453A1 (en) * | 2017-10-26 | 2019-05-02 | Jonathan Kendrick | APPARATUS FOR DETECTING A CURRENCY AND PRESENTING ASSOCIATED CONTENT ON A ENTERTAINMENT DEVICE |
GB2568966A (en) * | 2017-12-04 | 2019-06-05 | Wellness Tech And Media Group Ltd | An encryption process |
CN107819579B (zh) * | 2017-12-13 | 2021-08-24 | 西安Tcl软件开发有限公司 | 一种用户请求的处理方法、服务器及计算机可读存储介质 |
CN108260125B (zh) * | 2018-01-19 | 2020-09-18 | 北京工业大学 | 一种基于d2d通信的内容分发应用的密钥分发方法 |
WO2019148498A1 (en) * | 2018-02-05 | 2019-08-08 | Telefonaktiebolaget Lm Ericsson (Publ) | A method, a user equipment and a computer program product for enabling a dynamic adaptive streaming over http, dash, player to fetch media segments from a network |
US11018871B2 (en) * | 2018-03-30 | 2021-05-25 | Intel Corporation | Key protection for computing platform |
US11165758B2 (en) | 2018-04-09 | 2021-11-02 | International Business Machines Corporation | Keystream generation using media data |
US10911227B2 (en) * | 2018-04-12 | 2021-02-02 | Mastercard International Incorporated | Method and system for managing centralized encryption and data format validation for secure real time multi-party data distribution |
CN108768979B (zh) * | 2018-05-17 | 2021-04-16 | 网宿科技股份有限公司 | 企业内网访问的方法、用于企业内网访问的装置及其系统 |
US11362824B2 (en) * | 2018-05-25 | 2022-06-14 | Intertrust Technologies Corporation | Content management systems and methods using proxy reencryption |
CN108881205B (zh) * | 2018-06-08 | 2020-11-17 | 西安理工大学 | 一种hls流媒体的安全播放系统及播放方法 |
CN108880804B (zh) * | 2018-07-18 | 2020-06-30 | 北京理工大学 | 基于级联计算成像的网络密钥分发方法、装置和系统 |
US11113422B2 (en) | 2018-08-03 | 2021-09-07 | Micron Technology, Inc. | Data protection in computer processors |
US10740084B2 (en) * | 2018-08-16 | 2020-08-11 | Intel Corporation | Soc-assisted resilient boot |
US11074198B2 (en) * | 2018-09-18 | 2021-07-27 | Micron Technology, Inc. | Key management in computer processors |
US11444780B2 (en) * | 2019-05-21 | 2022-09-13 | Micron Technology, Inc. | Secure replaceable verification key architecture in a memory sub-system |
US11386187B2 (en) * | 2019-06-18 | 2022-07-12 | Comcast Cable Communications, Llc | Systems and methods for securely processing content |
US11456855B2 (en) * | 2019-10-17 | 2022-09-27 | Arm Limited | Obfuscating data at-transit |
US11436343B2 (en) * | 2019-12-31 | 2022-09-06 | Arm Limited | Device, system, and method of policy enforcement for rich execution environment |
US10715315B1 (en) * | 2020-03-19 | 2020-07-14 | BigFork Technologies, LLC | Secure management of content using a middleware layer between a client and a server |
CN111757176B (zh) | 2020-06-11 | 2021-11-30 | 青岛海信传媒网络技术有限公司 | 流媒体文件安全播放方法及显示设备 |
CN112243154B (zh) * | 2020-07-15 | 2022-08-05 | 福建新大陆通信科技股份有限公司 | 一种机顶盒安全启动方法、设备及介质 |
US11711555B1 (en) * | 2021-03-31 | 2023-07-25 | Amazon Technologies, Inc. | Protecting media content integrity across untrusted networks |
CN113612746B (zh) * | 2021-07-26 | 2023-05-09 | 中国建设银行股份有限公司 | 基于Android系统的敏感信息存储方法及系统 |
US12013970B2 (en) | 2022-05-16 | 2024-06-18 | Bank Of America Corporation | System and method for detecting and obfuscating confidential information in task logs |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1759560A (zh) * | 2003-03-14 | 2006-04-12 | 皇家飞利浦电子股份有限公司 | 来自数字权利管理加密解码器的受保护的返回路径 |
CN102571763A (zh) * | 2010-12-13 | 2012-07-11 | 微软公司 | 内容许可证存储 |
CN104283686A (zh) * | 2014-05-27 | 2015-01-14 | 深圳市天朗时代科技有限公司 | 一种数字版权保护方法及其系统 |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5850444A (en) | 1996-09-09 | 1998-12-15 | Telefonaktienbolaget L/M Ericsson (Publ) | Method and apparatus for encrypting radio traffic in a telecommunications network |
US6947556B1 (en) | 2000-08-21 | 2005-09-20 | International Business Machines Corporation | Secure data storage and retrieval with key management and user authentication |
JP4552294B2 (ja) * | 2000-08-31 | 2010-09-29 | ソニー株式会社 | コンテンツ配信システム、コンテンツ配信方法、および情報処理装置、並びにプログラム提供媒体 |
KR100493284B1 (ko) | 2001-05-11 | 2005-06-03 | 엘지전자 주식회사 | 디지털 미디어의 복제 제어 방법 및 시스템 |
US8336105B2 (en) | 2003-10-31 | 2012-12-18 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and devices for the control of the usage of content |
US20050187879A1 (en) * | 2004-02-19 | 2005-08-25 | Microsoft Corporation | Persistent license for stored content |
JP4561146B2 (ja) * | 2004-03-29 | 2010-10-13 | ソニー株式会社 | コンテンツ流通システム、暗号化装置、暗号化方法、情報処理プログラム、及び記憶媒体 |
EP1792436A1 (en) * | 2004-09-10 | 2007-06-06 | Koninklijke Philips Electronics N.V. | Method of providing conditional access |
WO2006071380A2 (en) * | 2004-11-12 | 2006-07-06 | Pufco, Inc. | Securely field configurable device |
US8050406B2 (en) * | 2005-06-07 | 2011-11-01 | Sony Corporation | Key table and authorization table management |
US20070092082A1 (en) | 2005-10-21 | 2007-04-26 | Rush Frederick A | Digital rights management security mechanism for use in a wireless communication apparatus |
US8601590B2 (en) * | 2006-04-27 | 2013-12-03 | Panasonic Corporation | Content distribution system |
GB2448151B (en) * | 2007-04-03 | 2011-05-04 | Advanced Risc Mach Ltd | Memory domain based security control within data processing systems |
US8578157B2 (en) | 2009-05-29 | 2013-11-05 | Adobe Systems Incorporated | System and method for digital rights management with authorized device groups |
WO2011140288A1 (en) * | 2010-05-04 | 2011-11-10 | Verimatrix, Inc. | Device authentication for secure key retrieval for streaming media players |
US9071421B2 (en) * | 2010-12-15 | 2015-06-30 | Microsoft Technology Licensing, Llc | Encrypted content streaming |
EP2704353B1 (en) * | 2011-04-25 | 2017-09-20 | Panasonic Corporation | Recording medium apparatus and controller |
JP2014524060A (ja) * | 2011-05-16 | 2014-09-18 | パナソニック株式会社 | 重複判定装置及び重複管理システム |
US8983076B2 (en) * | 2011-12-22 | 2015-03-17 | Adobe Systems Incorporated | Methods and apparatus for key delivery in HTTP live streaming |
US9418209B2 (en) * | 2012-10-02 | 2016-08-16 | Google Technology Holdings LLC | Systems and methods for manipulating sensitive information in a secure mobile environment |
WO2014059047A2 (en) * | 2012-10-10 | 2014-04-17 | Red.Com, Inc. | Video distribution and playback |
EP2929695A1 (en) * | 2012-12-10 | 2015-10-14 | Koninklijke KPN N.V. | Digital rights management for segmented content |
-
2015
- 2015-02-10 US US14/618,598 patent/US11228427B2/en active Active
- 2015-02-11 EP EP15712676.4A patent/EP3105882B1/en active Active
- 2015-02-11 HU HUE15712676A patent/HUE054769T2/hu unknown
- 2015-02-11 WO PCT/IB2015/051028 patent/WO2015121806A2/en active Application Filing
- 2015-02-11 PL PL15712676T patent/PL3105882T3/pl unknown
- 2015-02-11 BR BR112016018486A patent/BR112016018486A8/pt active Search and Examination
- 2015-02-11 CN CN201580019261.0A patent/CN106464485B/zh active Active
- 2015-02-11 CA CA2939396A patent/CA2939396A1/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1759560A (zh) * | 2003-03-14 | 2006-04-12 | 皇家飞利浦电子股份有限公司 | 来自数字权利管理加密解码器的受保护的返回路径 |
CN102571763A (zh) * | 2010-12-13 | 2012-07-11 | 微软公司 | 内容许可证存储 |
CN104283686A (zh) * | 2014-05-27 | 2015-01-14 | 深圳市天朗时代科技有限公司 | 一种数字版权保护方法及其系统 |
Also Published As
Publication number | Publication date |
---|---|
HUE054769T2 (hu) | 2021-09-28 |
BR112016018486A2 (pt) | 2018-07-10 |
CA2939396A1 (en) | 2015-08-20 |
BR112016018486A8 (pt) | 2019-10-01 |
US20150229471A1 (en) | 2015-08-13 |
EP3105882A2 (en) | 2016-12-21 |
CN106464485A (zh) | 2017-02-22 |
US11228427B2 (en) | 2022-01-18 |
WO2015121806A2 (en) | 2015-08-20 |
EP3105882B1 (en) | 2021-04-07 |
WO2015121806A3 (en) | 2015-12-03 |
PL3105882T3 (pl) | 2021-10-25 |
CN106464485A8 (zh) | 2017-06-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106464485B (zh) | 用于保护在清单文件中输送的内容密钥的系统和方法 | |
US10582256B2 (en) | Method and apparatus for building a hardware root of trust and providing protected content processing within an open computing platform | |
CN104094267B (zh) | 安全共享来自源装置的媒体内容的方法、装置和系统 | |
CA2948895C (en) | Provisioning drm credentials on a client device using an update server | |
US10055553B2 (en) | PC secure video path | |
US11785315B2 (en) | Secure provisioning, by a client device, cryptographic keys for exploiting services provided by an operator | |
WO2013003279A2 (en) | Method and apparatus for dynamic, real-time ad insertion based on meta-data within a hardware based root of trust | |
US20220171832A1 (en) | Scalable key management for encrypting digital rights management authorization tokens | |
US20120155647A1 (en) | Cryptographic devices & methods | |
US10521564B2 (en) | Operating a device for forwarding protected content to a client unit | |
KR20100073107A (ko) | Dcas 시스템의 sm과 tp간의 페어링 방법, 이를 이용한 셋탑박스 및 인증장치 | |
KR100947326B1 (ko) | Dcas 호스트 장치 및 이의 보안 강화 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CI01 | Correction of invention patent gazette | ||
CI01 | Correction of invention patent gazette |
Correction item: Priority Correct: 61/938,425 2014.02.11 US|14/618,598 2015.02.10 US Number: 08 Volume: 33 |
|
CI02 | Correction of invention patent application | ||
CI02 | Correction of invention patent application |
Correction item: Priority Correct: 61/938,425 2014.02.11 US|14/618,598 2015.02.10 US Number: 08 Page: The title page Volume: 33 |
|
GR01 | Patent grant | ||
GR01 | Patent grant |