CN104246784B - 用于保护和安全地传输媒体内容的方法、设备和系统 - Google Patents

用于保护和安全地传输媒体内容的方法、设备和系统 Download PDF

Info

Publication number
CN104246784B
CN104246784B CN201180076311.0A CN201180076311A CN104246784B CN 104246784 B CN104246784 B CN 104246784B CN 201180076311 A CN201180076311 A CN 201180076311A CN 104246784 B CN104246784 B CN 104246784B
Authority
CN
China
Prior art keywords
firmware
chip system
security engine
media content
protected storage
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.)
Expired - Fee Related
Application number
CN201180076311.0A
Other languages
English (en)
Other versions
CN104246784A (zh
Inventor
H·M·科斯拉维
S·莫吉拉帕盖瑞
P·库西瓦哈
S·切卢弗
D·斯考尔梅耶
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of CN104246784A publication Critical patent/CN104246784A/zh
Application granted granted Critical
Publication of CN104246784B publication Critical patent/CN104246784B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1458Protection against unauthorised use of memory or access to memory by checking the subject access rights
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/109Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM] by using specially-adapted hardware at the client
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • G06F21/79Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in semiconductor storage media, e.g. directly-addressable memories
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3234Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving additional secure or trusted devices, e.g. TPM, smartcard, USB or software token
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/12Details relating to cryptographic hardware or logic circuitry
    • H04L2209/127Trusted platform modules [TPM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/60Digital content management, e.g. content distribution
    • H04L2209/603Digital right managament [DRM]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Storage Device Security (AREA)

Abstract

用于保护和安全地传输媒体内容的方法、设备和系统包括配置片上系统(SOC)的存储器控制器以便建立受保护存储器区域,使用SOC的安全引擎认证硬件外围设备的固件,并且把经认证的固件存储在受保护存储器区域。安全引擎可以通过认证用来加密固件的外围加密密钥来认证来固件。只有经认证的硬件外围设备才可以访问受保护存储器区域。

Description

用于保护和安全地传输媒体内容的方法、设备和系统
背景
内容用户访问媒体内容的方式正在从传统的机会性访问改变成按需访问。按需媒体内容以及某种标准媒体内容常常通过流传播内容来传输给多媒体平台,例如机顶盒、智能电话、平板计算机、膝上型计算机等等。如果多媒体内容是资金内容,则在传送给多媒体平台期间多媒体内容常常以某种方式受到保护。例如,各种数字版权管理(DRM)和条件访问(CA)技术可以用来给从媒体源到多媒体平台的媒体内容提供保护。这样的技术通常涉及内容媒体的加密。
片上系统(SOC)设备是一种集成电路,其在单个管芯上集成了电子系统的各种组件,包括处理核心。例如,SOC可以在单个芯片上包括处理器核心、存储器控制器、视频组件、音频组件和/或通信组件。由于它们相对小的尺寸,SOC被用于多种多媒体平台。
附图简述
作为示例而非限制在附图中示出本文中所描述的本发明。为说明的简单和清楚起见,在附图中示出的元素不一定按比例绘制。例如,为清楚起见,某些元素的尺寸可能相对于其它元素被放大。此外,在认为合适的地方,在附图中重复附图标记以指示相应或相似的元件。
图1是包括片上系统(SOC)的多媒体平台的至少一种实施例的简化框图;
图2是图1的多媒体平台的存储器控制器和存储器的至少一种实施例的简化框图;
图3是图1的SOC的受保护的媒体内容流的至少一种实施例的简化框图;
图4是用于在图1的SOC中建立受保护存储器区域的方法的至少一种实施例的简化流程图;
图5是用于认证图1的SOC的硬件外围设备的方法的至少一种实施例的简化流程图;以及
图6是用于从图1的SOC传输内容媒体的方法的至少一种实施例的简化流程图。
附图的详细描述
虽然本公开的概念容许多种修改和替代形式,但其特定示例性实施例在附图中以示例方式示出,且将在本文中具体描述。然而应理解,不存在把本公开内容的概念限制在所公开的具体形式的意向,相反,预期覆盖与本公开内容和所附权利要求一致的所有修改、等效物和备选方案。
在以下描述中,陈述了诸如逻辑实现、操作码、指定操作数的手段、资源划分/共享/复制实现、系统组件的类型和相互关系、以及逻辑划分/整合选择之类的多个具体细节,以提供对本发明的更透彻理解。然而,本领域技术人员应当领会,没有这些具体细节也可实践本公开的诸实施例。在其它实例中,未详细示出控制结构、门级电路以及完整软件指令序列,以免模糊本发明。借助于所包括的描述,本领域技术人员将能在无需过度实验的情况下实现适当的功能。
在本说明书中对“一个实施例”、“一种实施例”、“示例实施例”等的引用指示所描述的实施例可以包括特定特征、结构或特性,但并不一定每个实施例都需要包括该特定特征、结构或特性。此外,这样的短语不一定是指同一个实施例。此外,无论是否明确描述,当参考一个实施例描述特定特征、结构或特性时,认为在本领域技术人员学识范围内,可以与其他实施例一起实施这样的特征、结构或特性。
本发明的实施例可以以硬件、固件、软件或它们的任意组合实现。在计算机系统中实现的本发明的各实施例可包括组件之间的一个或多个基于总线的互连或链路和/或组件之间的一个或多个点对点互连。本发明的各实施例也可以被实现为由暂态或非暂态机器可读媒体携带或存储在暂态或非暂态机器可读媒体上的指令,这些指令可由一个或多个处理器读取或执行。机器可读媒体可以被实现为任何设备、机制或物理结构用于存储或传送以可由机器(例如,计算设备)读取的形式的信息。例如,机器可读媒体可以被实现为只读存储器(ROM);随机存取存储器(RAM);磁盘存储媒体;光存储媒体;闪速存储器设备;mini-SD或micro-SD卡、存储棒、电信号和其他。
附图中,为便于描述,可以示出示意性元素(表示设备、模块、指令框和数据元素的那些)的特定的排列或排序。然而,本领域中的技术人员应理解,附图中的示意性元素的特定的排序或排列不预期暗示要求处理的具体的次序或序列或各过程的间隔。进一步,附图中包含示意性元素不预期暗示在所有实施例中要求这样的元素,或者在一些实施例中由这样的元素表示的特征可以不被包括在其他元素中或者与其他元素组合。
通常,可以使用任何合适形式的机器可读指令实现用来表示指令框的示意性元素,机器可读指令例如软件或固件应用、程序、函数、模块、例程、进程、过程、插件、小应用程序、小工具、代码片段和/或其他,且可以使用任何合适的编程语言、库、应用编程接口(API)和/或其他软件开发工具实现每一种这样的指令。例如,可以使用Java、C++和/或其他编程语言实现一些实施例。类似地,可以使用任何合适的电子排列或结构实现用来表示数据或信息的示意性元素,电子排列或结构例如寄存器、数据存储、表、记录、数组、索引、散列、地图、树、列表、图、文件(可以是任何文件类型)、文件夹、目录、数据库和/或其他。
进一步,附图中,当诸如实线或虚线或箭头等的连接元素被用来阐释在两个或更多个其他示意性元素之间或在它们当中的连接、关系或关联时,缺乏任何这样的连接元素不预期暗示不存在连接、关系或关联。换句话说,附图中可以不示出在各元素之间一些连接、关系或关联,以免模糊本公开内容。另外,为便于阐释,单个连接元素可以被用来表示在各元素之间的多个连接、关系或关联。例如,当连接元素表示信号、数据或指令的通信时,本领域中的技术人员应理解,根据需要,这样的元素可以表示实现通信的一个或多个信号路径(例如,总线)。
现在参见图1,在一种实施例中,多媒体平台100被配置为把媒体内容传输给平台100的用户。多媒体平台100可以被实现为被配置为传输媒体内容的任何类型的设备。例如,多媒体平台可以被实施为机顶盒、智能手机、平板计算机、膝上型计算机、移动因特网设备(MID)、台式计算机或能够传递媒体内容的其他设备。多媒体平台100可以被配置为把任何类型的媒体内容传输给用户,例如包括电影、图片、图像、歌曲、音频和/或视频记录、和/或任何其他类型的音频、视频和/或音频和视频内容。
多媒体平台100包括片上系统(SOC)102和平台存储器104。如下面更详细地讨论的,SOC 102被配置为同时在SOC 102和存储器104内保护和安全地传输媒体内容。为此,SOC102的安全引擎110在存储器104中建立受保护存储器112,受保护存储器112是SOC 102的存储器控制器114加强的硬件。存储器控制器114确保只有SOC 102的经授权硬件外围设备才可以访问受保护存储器112。SOC 102的安全引擎110通过在加载受保护存储器112中的固件之前认证每一外围设备的固件来认证每一硬件外围设备。经解密媒体内容也被存储在受保护存储器112中,且仅可供经授权硬件外围设备访问。以这种方式,在SOC 102中建立可信数据路径,其中,经解密媒体内容仅可供SOC 102的经认证组件访问。
SOC 102可以被实施为可以包括各种组件和结构的任何类型的片上系统。在图1的说明性实施例中,SOC 102包括如以上所描述的安全引擎110和存储器控制器114、处理器核心116以及多个硬件外围设备120,它们经由链路118通信上相互耦合。链路118可以被实施为任何类型的互连,例如能够促进在SOC 102的各种组件之间的通信的总线、点对点或其他互连。取决于SOC 102的预期功能性,硬件外围设备120可以包括任何类型的硬件外围设备组件。例如,在说明性实施例中,硬件外围设备120包括解多路复用器122、视频预解析器124、视频解码器126、显示处理引擎(DPE)128、音频数字信号处理器(DSP)130、视频图形132和音频/视频I/O 134。硬件外围设备120中的每一个包括关联的固件140和密钥142。如下面更详细地讨论的,每一硬件外围设备120的密钥142先前由安全引擎110利用该安全引擎110的安全密钥150来签署。
安全引擎110可以被实施为与处理器核心116分离的安全协处理器或处理电路。安全引擎110包括安全引擎固件152和安全存储器154,它们仅可由安全引擎110访问。在说明性实施例中,安全存储器154形成安全引擎110的物理部分,但在其他实施例中可以形成存储器104的一部分(即,受保护存储器112的一部分)。安全引擎110把安全密钥150以及下面讨论的其他加密密钥存储在安全存储器154中。可以在制造SOC 102期间提供安全密钥150,或者可以在操作期间由SOC 102生成安全密钥150。例如,在一些实施例中,安全密钥150基于在安全引擎110内的熔断熔丝(blown fuse)。另外或替代地,安全引擎110可以包括密钥生成模块,例如可信平台模块(TPM),以便生成安全密钥150。在使用期间,安全引擎110可以使用任何数量的安全密钥150,它们可以彼此相同或不同。
如以上所描述的,存储器104包括受保护存储器112和不受保护的存储器160。在多媒体平台100的操作期间,各种数据可以以经解密或经加密的形式存储在不受保护的存储器160中。例如,如下面更详细地讨论,经加密的应用密钥162可以连同供传递给用户的任何经加密的媒体内容一起被存储在存储器104的不受保护的存储器160中。
在一些实施例中,多媒体平台100可以包括不同于SOC 102和存储器104的附加的组件和结构。例如,在说明性实施例中,多媒体平台100包括诸如硬盘驱动器或固态驱动器等的长期数据存储170、通信输出172、显示器174和诸如扬声器等的音频设备176,其中的每一个都可以与SOC 102通信或以另外方式与SOC 102交互。
现在参见图2,如以上所描述的,由存储器控制器114加强存储器104的受保护存储器112。为此,存储器控制器114被配置为建立硬件加强保护的存储器区域200,其与存储器102的受保护存储器112相关并界定存储器102的受保护存储器112。硬件加强保护的存储器区域可以包括任何数量的受保护存储器区域或子区域。例如,在图2的说明性实施例中,硬件加强保护的存储器区域包括其中存储经认证的固件的固件保护存储器区域202、其中存储经解密视频的帧缓冲器保护存储器区域204、其中存储经解密音频的音频保护存储器区域206、经压缩视频保护存储器区域208、安全引擎-传输流解多路复用器(TSD)保护存储器区域210和/或一个或多个其他受保护存储器区域212。当然,例如取决于SOC 102的预期功能性,在其他实施例中,硬件加强保护的存储器区域200可以包括更少或更多数量的受保护存储器区域。
取决于各自的用途,受保护存储器区域202、204、206、208、210、212中的每一个可以包括相似的或不同的安全属性。存储器控制器114把这样的属性保护到相应的寄存器,以使得随后不能变更这些属性。另外,存储器控制器114可以确保受保护存储器区域202、204、206、208、210、212被恰当地配置(例如,相应的内存地址不重叠),并且,在一些实施例中,可以对受保护存储器112执行其他安全和错误检查。
在使用期间,存储器控制器114为受保护存储器112提供硬件加强保护的保护。例如,硬件外围设备120可以与存储器控制器114的存储器接口220通信以便从存储器102检索数据。存储器控制器114判断硬件外围设备120是否正在从受保护存储器112(例如,从受保护存储器区域200中的一个)请求数据。如果是这样,则如下面所讨论的,仅当请求硬件外围设备120先前已经得到安全引擎110认证时,存储器控制器114允许访问(箭头230)受保护存储器112的相应的硬件加强保护的存储器区域200。如果不是,则存储器控制器114拒绝所请求的访问。替代地,硬件外围设备120可以请求访问(箭头232)不受保护的存储器160,这得到了存储器控制器114的允许。
如以上所描述的,硬件加强保护的受保护存储器区域200的建立和硬件外围设备120的认证在SOC 102内配置了可信数据路径,在该路径中,媒体内容贯穿其整个传输都受到保护。例如,图3中示出可信数据路径300的说明性实施例。在图3中,可信数据路径300被示出为实心箭头,而空心箭头指示不受保护的数据路径。另外,用双括号示出SOC 102的每一经认证的硬件组件,以便指示该组件先前已经得到安全引擎110认证。
如图3中所示出,可以在多媒体平台100上执行主控软件302。主控软件302可以请求经加密的媒体内容304的传输(例如,回放)。例如,经加密的媒体内容304可以被存储在不受保护的存储器104中。响应于传递请求,安全引擎110从存储器160检索经加密的媒体内容304。安全引擎110使用经加密的应用密钥162把媒体内容解密成A/V流306。在这样做时,如下面更详细地讨论,安全引擎110确保应用密钥162在处于经解密的状态时决不会不受保护(例如,安全引擎110把经解密的应用密钥存储在安全存储器154中)。类似地,通过把经解密的媒体流存储在仅可由经认证的硬件外围设备120访问的受保护存储器区域200中,安全引擎110确保经解密的媒体内容的保护。
解多路复用器122访问A/V流306,解多路复用器122从A/V流306分离出音频和视频。另外,解多路复用器122可以把媒体内容的部分数据320提供给主控软件。部分数据320的传递不受保护,如图3中的空心箭头所指示的。音频DSP 130访问A/V流306的音频308,音频DSP 130生成去往A/V输出134的经处理音频310。另外,视频预解析器124访问A/V流306的经压缩视频312。视频预解析器124可以生成元数据322,在不受保护的传递中把元数据322提供给主控软件302。视频解码器136访问经预解析的经压缩视频314,视频解码器136生成视频像素316。DPE 128访问视频像素316以便生成视频像素318,视频图形132随后访问视频像素318以便在A/V输出134处生成未经压缩的视频流。以这种方式,在SOC102中通过可信数据路径300执行媒体内容的解密和解压缩,以使得在媒体内容的传递的始终,保护对媒体内容的访问。
现在参见图4,在使用时,SOC 102可以执行方法400以便建立受保护存储器区域200。方法400从框402开始,框402中,可以加载多媒体平台100的操作系统。在引导过程期间,在框404中加载安全引擎110的驱动程序。在框406中,SOC 102判断SOC 102是否被配置为使用可信数据路径来传输媒体内容。如果不是,则方法400退出,且多媒体平台100正常引导。然而,如果SOC 102被配置为用于可信数据路径传递,则方法400进行到框408,框408中,安全引擎驱动程序获得涉及硬件加强保护的受保护存储器区域200的信息。这样的信息可以包括,例如,每一受保护存储器区域200的地址范围、每一受保护存储器区域200的区域类型和与每一受保护存储器区域200相关联的任何附加属性。这样的信息可以从安全数据表等等获得。在框410中,安全引擎驱动程序把受保护存储器区域信息发送给安全引擎固件152以供确认。在框414中,安全引擎固件152确认受保护存储器区域信息。安全引擎固件152可以对受保护存储器区域执行任何类型的确认,例如包括确保受保护存储器区域200的各个受保护存储器范围的地址范围不相互重叠、正确地对应类型和属性等等。
在框416中,SOC 102判断受保护存储器区域200的配置是否被安全引擎110确定为有效。如果受保护存储器区域200的配置不是有效的,则方法400进行到框418,生成安全引擎驱动程序错误。作为响应,SOC 102可以执行一个或多个安全动作,例如包括重新引导、重配置存储器控制器114和/或其他矫正动作。然而,如果确定受保护存储器区域200的配置是有效的,则方法400进行到框420,框420中,安全引擎固件152把还没有通过认证的所有硬件外围设备120保持在复位模式。
在存储器控制器114已经被配置为用于受保护存储器区域200之后,SOC 102的安全引擎110可以认证SOC 102的硬件外围设备120。为了这样做,SOC 102可以执行用于认证硬件外围设备120的方法500。方法500从框502开始,框502中,安全引擎110判断是否已经接收到加载硬件外围设备120d固件140的请求。如果是,则在框504中,安全引擎驱动程序检索请求硬件外围设备120的加密密钥142和关联的经加密的固件140。安全引擎驱动程序生成固件加载包,包括外围加密密钥142、经加密的外围固件140和关联的固件受保护存储器区域202的存储器地址。
在框508中,安全引擎驱动程序把固件加载包发送给安全引擎固件152。作为响应,在框510中,安全引擎固件152认证外围加密密钥142。为了这样做,安全引擎固件152可以使用安全引擎110的安全密钥150来验证先前由安全引擎110签署外围加密密钥142。
在框512中,SOC 102判断安全引擎110是否成功地认证外围加密密钥142。如果不是,则方法500进行到框514,框514中,生成外围驱动程序加载错误,且把该硬件外围设备保持在复位模式。另外,SOC 102可以采取对这样的加载错误的附加安全响应。
如果外围加密密钥142得到安全引擎110认证,则方法500进行到框516,框516中,安全引擎固件152使用现在认证的外围密钥142来认证外围固件140。例如,在其中固件140经过加密的实施例中,安全引擎110可以解密固件140。另外或替代地,例如基于固件140的散列函数等等,安全引擎110可以确保先前已经使用外围加密密钥142来签署固件140。
在框518中,SOC 102判断安全引擎110是否成功地认证外围固件140。如果不是,则方法500进行到框514,框514中,生成外围驱动程序加载错误,且把硬件外围设备保持在复位模式中。然而,如果外围固件140经过认证,则方法500进行到框520,到框520中,安全引擎固件152把经认证(且经解密)的硬件外围设备固件140加载到关联的固件受保护存储器区域202并从复位模式释放硬件外围设备120。以这种方式,SOC 102仅加载并执行硬件外围设备的经认证的固件。另外,仅经认证的硬件外围设备具有对受保护存储器区域200和其中包含的经解密的媒体内容的访问权。
现在参见图6,在已经认证了硬件外围设备120之后,SOC 102可以把内容传输给多媒体平台100的用户。为了这样做,SOC 102可以执行用于在可信数据路径中传输内容媒体的方法600。方法600从框602开始,框602中,SOC加载任何数字版权管理(DRM)固件。DRM固件可以支持要在多媒体平台602上传输的媒体内容的解密操作。在DRM固件的加载期间,用于解密媒体内容的应用加密密钥162被存储在存储器104中。在说明性实施例中,以经加密的形式把应用加密密钥162存储在存储器104的不受保护的存储器160中。另外,要传输给用户的经加密的媒体内容可以被存储在不受保护的存储器160中。
在框606中,SOC 102判断用户是否已经请求传递媒体内容。如果是这样,则方法600进行到框608,框608中,安全引擎110从存储器104的不受保护的存储器160检索经加密的应用密钥162。在框610中,安全引擎110解密应用密钥162,并且,在框612中把经解密的应用密钥存储在安全引擎110的安全存储器154中。随后,在框614中,安全引擎110使用经解密的应用密钥162来解密经加密的媒体内容,经加密的媒体内容可以被存储在不受保护的存储器160中。经解密的媒体内容被存储在流传播帧缓冲器受保护的存储器区域204中。
在框618中,经认证的硬件外围设备120访问受保护存储器区域200中的经解密的媒体内容,且由各种经认证的硬件外围设备120处理媒体内容,并且媒体内容被传输给SOC102的A/V输出134,以供向多媒体平台100的用户回放。这样做时,应明白,经解密的应用密钥162和经解密的媒体内容决不处于不受保护状态。
应明白,以上所描述的系统以安全的和受保护的方式传输媒体内容。例如,当处于经解密的状态时,经解密的媒体内容和经解密的应用密钥162被存储在受保护的和安全的存储器位置。另外,只有经认证的硬件外围设备120才拥有对受保护存储器区域200的访问权,在处理用于传递的内容期间,经解密的媒体内容被存储在受保护存储器区域200中。以这种方式,在传递过程期间,在SOC 102本身内保证了媒体内容的安全。
尽管已经在附图和前述描述中详细阐释和描述了本公开内容,但这样的阐释和描述应被看作是示例性的而非限制性的,应理解,仅示出和描述了说明性的实施例,且预期保护所有与本公开内容和所叙述的权利要求一致的变化和修改。

Claims (26)

1.一种片上系统装置,包括:
存储器,其具有至少一个受保护区域,以便至少在其中存储经解密的媒体内容;以及
片上系统,与所述存储器分开,其中,所述片上系统包括在单个管芯上的集成电路,所述片上系统包括:
所述片上系统的多个硬件外围设备;
存储器控制器,其耦合到所述存储器,以便加强受保护存储器区域的保护,以使得对所述受保护存储器区域的访问权仅被授权给所述片上系统的经认证的硬件外围设备;以及
安全引擎,其耦合到所述存储器控制器,所述安全引擎用于:(i)认证所述片上系统的每一个硬件外围设备的固件;以及(ii)响应于由所述安全引擎对经认证的硬件外围设备的固件的认证而将所述经认证的硬件外围设备的所述固件存储在所述受保护区域中,以便允许所述经授权的硬件外围设备访问所述存储器的所述受保护存储器区域。
2.如权利要求1所述的片上系统装置,其特征在于,响应于所述固件经过所述安全引擎认证,所述安全引擎把所述硬件外围设备的所述固件存储在所述受保护存储器区域中,且允许从所述受保护存储器区域执行所述固件以便激活所述硬件外围设备。
3.如权利要求1所述的片上系统装置,其特征在于,所述固件包括所述硬件外围设备的经加密的固件;且其中,所述安全引擎:
获得所述硬件外围设备的外围加密密钥并使用所述安全引擎的安全加密密钥认证所述外围加密密钥;
响应于使用所述安全加密密钥认证所述外围加密密钥,使用所述外围加密密钥认证所述经加密的固件;以及
使用所述外围加密密钥解密所述经加密的固件。
4.如权利要求1所述的片上系统装置,其特征在于,响应于接收到传输媒体内容的请求,所述安全引擎从存储器检索经加密的应用密钥。
5.如权利要求4所述的片上系统装置,其特征在于,所述安全引擎借助于所述安全引擎的安全加密密钥解密所述经加密的应用密钥,并把所述经解密的应用密钥存储在所述受保护存储器区域中。
6.如权利要求5所述的片上系统装置,其特征在于,所述安全引擎使用所述经解密的应用密钥来访问经加密的媒体内容并解密所述媒体内容。
7.如权利要求6所述的片上系统装置,其特征在于,所述安全引擎把所述经解密的媒体内容存储在所述受保护存储器区域中。
8.如权利要求7所述的片上系统装置,其特征在于,经认证的硬件外围设备访问所述受保护存储器区域以便检索所述经解密的媒体内容。
9.如权利要求7所述的片上系统装置,进一步包括多个经认证的硬件外围设备,以便把所述经解密的媒体传输给所述片上系统的输出,以使得未经认证的硬件外围设备不能访问所述经解密的媒体内容。
10.一种计算设备,包括:
用于配置片上系统的存储器控制器以便在于所述片上系统分开的存储器中建立受保护存储器区域的装置,所述受保护存储器区域仅可由所述片上系统的经认证的硬件外围设备访问;
用于使用所述片上系统的安全引擎认证所述片上系统的每一个硬件外围设备的固件的装置,其中,所述存储器控制器、所述硬件外围设备和所述安全引擎位于所述片上系统的单个管芯上;
用于响应于所述固件经过所述安全引擎认证把所述固件存储在所述受保护存储器区域中的装置;以及
用于从所述受保护存储器区域执行所述固件以便激活所述硬件外围设备的装置。
11.如权利要求10所述的计算设备,其特征在于,所述用于配置所述存储器控制器的装置包括用于获得受保护存储器区域信息并使用所标识的信息配置所述存储器控制器的装置。
12.如权利要求11所述的计算设备,其特征在于,所述用于获得受保护存储器区域信息的装置包括用于获得所述受保护存储器区域的地址范围的装置。
13.如权利要求11所述的计算设备,其特征在于,所述用于获得受保护存储器区域信息的装置包括用于获得所述受保护存储器区域的地址范围、所述受保护存储器区域的类型和所述受保护存储器区域的至少一种属性的装置。
14.如权利要求11所述的计算设备,进一步包括用于使用所述片上系统的所述安全引擎确认所述受保护存储器区域信息的装置。
15.如权利要求10所述的计算设备,其特征在于,所述用于认证所述硬件外围设备的所述固件的装置包括:
用于获得所述硬件外围设备的外围加密密钥和所述硬件外围设备的经加密的固件的装置;
用于使用所述安全引擎的安全加密密钥认证所述外围加密密钥的装置;
用于响应于使用所述安全加密密钥认证所述外围加密密钥使用所述外围加密密钥认证所述经加密的固件的装置;以及
用于认证所述经加密的固件的装置包括用于使用所述外围加密密钥解密所述经加密的固件的装置。
16.如权利要求10所述的计算设备,进一步包括用于响应于接收到传输媒体内容的请求使用所述安全引擎从存储器检索经加密的应用密钥的装置。
17.如权利要求16所述的计算设备,进一步包括用于借助于所述安全引擎的安全加密密钥解密所述经加密的应用密钥并把经解密的应用密钥存储在所述受保护存储器区域中的装置。
18.如权利要求17所述的计算设备,进一步包括用于使用所述经解密的应用密钥访问经加密的媒体内容和解密所述媒体内容的装置。
19.如权利要求18所述的计算设备,进一步包括用于把所述经解密的媒体内容存储在所述受保护存储器区域中的装置。
20.如权利要求19所述的计算设备,进一步包括用于借助于经认证的硬件外围设备访问所述受保护存储器区域以便检索所述经解密的媒体内容的装置。
21.如权利要求19所述的计算设备,进一步包括用于把所述经解密的媒体传输给所述片上系统的输出以使得未经认证的硬件外围设备不能访问所述经解密的媒体内容的装置。
22.一种用于媒体内容的方法,包括:
配置片上系统的存储器控制器,以便在于所述片上系统分开的存储器中建立受保护存储器区域,所述受保护存储器区域仅可由所述片上系统的经认证的硬件外围设备访问;
使用片上系统的安全引擎,认证所述片上系统的硬件外围设备的固件,其中所述存储器控制器、所述硬件外围和所述安全引擎位于所述片上系统的单个管芯上;
响应于所述固件经过所述安全引擎认证把所述固件存储在所述受保护存储器区域中;以及
从所述受保护存储器区域执行所述固件,以便激活所述硬件外围设备。
23.如权利要求22所述的方法,其特征在于,配置所述存储器控制器包括获得受保护存储器区域信息,使用所述片上系统的所述安全引擎确认所述受保护存储器区域信息,并使用所述受保护存储器区域信息配置所述存储器控制器。
24.如权利要求22所述的方法,其特征在于,认证所述硬件外围设备的所述固件包括:
获得所述硬件外围设备的外围加密密钥和所述硬件外围设备的经加密的固件,以及
使用所述安全引擎的安全加密密钥认证所述外围加密密钥。
25.如权利要求22所述的方法,进一步包括:
响应于接收到传输媒体内容的请求使用所述安全引擎从存储器检索经加密的应用密钥;
借助于所述安全引擎的所述安全加密密钥解密所述经加密的应用密钥并把经解密的应用密钥存储在所述受保护存储器区域中;
使用所述经解密的应用密钥访问经加密的媒体内容和解密所述媒体内容;
把所述经解密的媒体内容存储在所述受保护存储器区域中;以及
或者(i)借助于经认证的硬件外围设备访问所述受保护存储器区域以便检索所述经解密的媒体内容,或者(ii)把所述经解密的媒体内容传输给所述片上系统的输出,以使得未经认证的硬件外围设备不能访问所述经解密的媒体内容。
26.一种机器可读介质,包括存储在所述机器可读介质上的多条指令,响应于所述多条指令被执行而使计算设备执行如权利要求22-25中任一项所述的方法。
CN201180076311.0A 2011-12-15 2011-12-15 用于保护和安全地传输媒体内容的方法、设备和系统 Expired - Fee Related CN104246784B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2011/065072 WO2013089726A1 (en) 2011-12-15 2011-12-15 Method, device, and system for protecting and securely delivering media content

Publications (2)

Publication Number Publication Date
CN104246784A CN104246784A (zh) 2014-12-24
CN104246784B true CN104246784B (zh) 2017-11-17

Family

ID=48613010

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201180076311.0A Expired - Fee Related CN104246784B (zh) 2011-12-15 2011-12-15 用于保护和安全地传输媒体内容的方法、设备和系统

Country Status (5)

Country Link
US (1) US20130275769A1 (zh)
EP (1) EP2791849A4 (zh)
CN (1) CN104246784B (zh)
TW (1) TWI662838B (zh)
WO (1) WO2013089726A1 (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013089725A1 (en) 2011-12-15 2013-06-20 Intel Corporation Method and device for secure communications over a network using a hardware security engine
WO2013089728A1 (en) 2011-12-15 2013-06-20 Intel Corporation Method, device, and system for securely sharing media content from a source device
US8856515B2 (en) 2012-11-08 2014-10-07 Intel Corporation Implementation of robust and secure content protection in a system-on-a-chip apparatus
KR20150070890A (ko) * 2013-12-17 2015-06-25 삼성전자주식회사 파일 처리 방법 및 이를 지원하는 전자 장치
US10726162B2 (en) 2014-12-19 2020-07-28 Intel Corporation Security plugin for a system-on-a-chip platform
US9852301B2 (en) * 2014-12-24 2017-12-26 Intel Corporation Creating secure channels between a protected execution environment and fixed-function endpoints
US10346071B2 (en) 2016-12-29 2019-07-09 Western Digital Technologies, Inc. Validating firmware for data storage devices
US20180196956A1 (en) * 2017-01-10 2018-07-12 Renesas Electronics America Inc. Security architecture and method
US10839080B2 (en) 2017-09-01 2020-11-17 Microsoft Technology Licensing, Llc Hardware-enforced firmware security
US10666430B2 (en) * 2017-09-29 2020-05-26 Intel Corporation System and techniques for encrypting chip-to-chip communication links
GB201810533D0 (en) 2018-06-27 2018-08-15 Nordic Semiconductor Asa Hardware protection of files in an intergrated-circuit device

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101031068A (zh) * 2006-02-27 2007-09-05 美国博通公司 用于多媒体数据处理的安全片上系统结构的方法和系统
CN101454783A (zh) * 2006-06-27 2009-06-10 英特尔公司 用于芯片上系统器件中数据通路安全的系统和技术

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6401208B2 (en) * 1998-07-17 2002-06-04 Intel Corporation Method for BIOS authentication prior to BIOS execution
US6948065B2 (en) * 2000-12-27 2005-09-20 Intel Corporation Platform and method for securely transmitting an authorization secret
US7350083B2 (en) * 2000-12-29 2008-03-25 Intel Corporation Integrated circuit chip having firmware and hardware security primitive device(s)
US20020112161A1 (en) * 2001-02-13 2002-08-15 Thomas Fred C. Method and system for software authentication in a computer system
US7243347B2 (en) * 2002-06-21 2007-07-10 International Business Machines Corporation Method and system for maintaining firmware versions in a data processing system
US7444668B2 (en) * 2003-05-29 2008-10-28 Freescale Semiconductor, Inc. Method and apparatus for determining access permission
US20050114687A1 (en) * 2003-11-21 2005-05-26 Zimmer Vincent J. Methods and apparatus to provide protection for firmware resources
US7600132B1 (en) * 2003-12-19 2009-10-06 Adaptec, Inc. System and method for authentication of embedded RAID on a motherboard
TWI240531B (en) * 2003-12-24 2005-09-21 Inst Information Industry Multitasking system level system for Hw/Sw co-verification
US7802085B2 (en) * 2004-02-18 2010-09-21 Intel Corporation Apparatus and method for distributing private keys to an entity with minimal secret, unique information
JP4420201B2 (ja) * 2004-02-27 2010-02-24 インターナショナル・ビジネス・マシーンズ・コーポレーション ハードウェアトークンを用いた認証方法、ハードウェアトークン、コンピュータ装置、およびプログラム
US7747862B2 (en) * 2004-06-28 2010-06-29 Intel Corporation Method and apparatus to authenticate base and subscriber stations and secure sessions for broadband wireless networks
US7503504B2 (en) * 2005-12-15 2009-03-17 Intel Corporation Transaction card supporting multiple transaction types
US8719526B2 (en) * 2006-01-05 2014-05-06 Broadcom Corporation System and method for partitioning multiple logical memory regions with access control by a central control agent
US8429418B2 (en) * 2006-02-15 2013-04-23 Intel Corporation Technique for providing secure firmware
US8014530B2 (en) * 2006-03-22 2011-09-06 Intel Corporation Method and apparatus for authenticated, recoverable key distribution with no database secrets
KR100809295B1 (ko) * 2006-04-06 2008-03-04 삼성전자주식회사 소프트웨어 설치를 위한 장치 및 방법
US20080022395A1 (en) * 2006-07-07 2008-01-24 Michael Holtzman System for Controlling Information Supplied From Memory Device
US20080244267A1 (en) * 2007-03-30 2008-10-02 Intel Corporation Local and remote access control of a resource
US9053323B2 (en) * 2007-04-13 2015-06-09 Hewlett-Packard Development Company, L.P. Trusted component update system and method
US20090319804A1 (en) * 2007-07-05 2009-12-24 Broadcom Corporation Scalable and Extensible Architecture for Asymmetrical Cryptographic Acceleration
US20110154023A1 (en) * 2009-12-21 2011-06-23 Smith Ned M Protected device management
WO2011119985A2 (en) * 2010-03-26 2011-09-29 Maxlinear, Inc. Firmware authentication and deciphering for secure tv receiver

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101031068A (zh) * 2006-02-27 2007-09-05 美国博通公司 用于多媒体数据处理的安全片上系统结构的方法和系统
CN101454783A (zh) * 2006-06-27 2009-06-10 英特尔公司 用于芯片上系统器件中数据通路安全的系统和技术

Also Published As

Publication number Publication date
US20130275769A1 (en) 2013-10-17
EP2791849A1 (en) 2014-10-22
WO2013089726A1 (en) 2013-06-20
TW201340692A (zh) 2013-10-01
CN104246784A (zh) 2014-12-24
EP2791849A4 (en) 2015-08-19
TWI662838B (zh) 2019-06-11

Similar Documents

Publication Publication Date Title
CN104246784B (zh) 用于保护和安全地传输媒体内容的方法、设备和系统
US11816230B2 (en) Secure processing systems and methods
EP2474933B1 (en) Digital rights management provision server and method
CN105408912B (zh) 处理认证和资源许可
US8751795B2 (en) Secure transfer and tracking of data using removable non-volatile memory devices
CN101484903B (zh) 用于控制从存储器装置供应的信息的系统和方法
CN103250163B (zh) 用于加密和解密虚拟盘的计算机可读存储介质
US8214630B2 (en) Method and apparatus for controlling enablement of JTAG interface
US11687664B2 (en) Blockchain-based file storage device and file access authorization system and method
US20140317394A1 (en) Provisioning of operating systems to user terminals
US20100138671A1 (en) Methods and apparatuses for providing drm interoperability
US8032941B2 (en) Method and apparatus for searching for rights objects stored in portable storage device object identifier
JP2002229861A (ja) 著作権保護機能つき記録装置
CN103400060A (zh) 内容的嵌入许可证
US20050138400A1 (en) Digital content protection method
JP2004282361A (ja) データ処理装置、その方法およびそのプログラム
CN107920060A (zh) 基于账号的数据访问方法和装置
US20190012437A1 (en) Unified digital rights management for heterogenous computing platforms
CN109728912A (zh) 播放内容安全传输方法、系统以及终端
US20110078800A1 (en) Digital content management methods and systems
CN107004071A (zh) 软件处理设备、服务器系统及其方法
JP2012084950A (ja) サーバへのアクセス方法及びアクセスプログラム
Lyle et al. The Workshop on Web Applications and Secure Hardware

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20171117

Termination date: 20191215