CN104471581B - 利用媒体安全控制器保护媒体项目 - Google Patents
利用媒体安全控制器保护媒体项目 Download PDFInfo
- Publication number
- CN104471581B CN104471581B CN201380037869.7A CN201380037869A CN104471581B CN 104471581 B CN104471581 B CN 104471581B CN 201380037869 A CN201380037869 A CN 201380037869A CN 104471581 B CN104471581 B CN 104471581B
- Authority
- CN
- China
- Prior art keywords
- media
- data
- display device
- safety controller
- storage device
- 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
- 238000003860 storage Methods 0.000 claims abstract description 166
- 230000015654 memory Effects 0.000 claims abstract description 97
- 230000004044 response Effects 0.000 claims abstract description 11
- 238000006243 chemical reaction Methods 0.000 claims abstract description 7
- 238000013475 authorization Methods 0.000 claims description 80
- 238000000034 method Methods 0.000 claims description 71
- 238000012545 processing Methods 0.000 claims description 63
- 238000013507 mapping Methods 0.000 claims description 32
- 230000001360 synchronised effect Effects 0.000 claims description 14
- 230000001052 transient effect Effects 0.000 claims description 14
- 230000006835 compression Effects 0.000 claims description 10
- 238000007906 compression Methods 0.000 claims description 10
- 238000004458 analytical method Methods 0.000 claims description 5
- 230000008569 process Effects 0.000 description 23
- 230000008859 change Effects 0.000 description 15
- 238000010586 diagram Methods 0.000 description 14
- 230000006399 behavior Effects 0.000 description 12
- 238000004891 communication Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 8
- 238000013500 data storage Methods 0.000 description 7
- 238000009826 distribution Methods 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 6
- 238000007726 management method Methods 0.000 description 6
- 238000004519 manufacturing process Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 4
- 230000003068 static effect Effects 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 238000010276 construction Methods 0.000 description 3
- 230000014759 maintenance of location Effects 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 235000013399 edible fruits Nutrition 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000004744 fabric Substances 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 101000934888 Homo sapiens Succinate dehydrogenase cytochrome b560 subunit, mitochondrial Proteins 0.000 description 1
- 102100025393 Succinate dehydrogenase cytochrome b560 subunit, mitochondrial Human genes 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 229910002056 binary alloy Inorganic materials 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 230000007717 exclusion Effects 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 210000004209 hair Anatomy 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 208000011580 syndromic disease Diseases 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/106—Enforcing content protection by specific content processing
- G06F21/1062—Editing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
Abstract
一种媒体存储设备,包括媒体安全控制器和用于存储与呈现设备要呈现的媒体项目相关的数据的存储器。响应于呈现设备读取授权文件,媒体安全控制器发送消息。所述消息使呈现设备从存储器读取一部分数据并将所述一部分数据发送到媒体安全控制器。媒体安全控制器从呈现设备接收一部分数据、变换一部分数据和将经变换的一部分数据发送到呈现设备。
Description
相关申请的交叉引用
本申请要求2012年7月18日提出的美国临时申请号61/673,023和2012年8月15日提出的美国临时申请号61/683,679要求的权益,其公开内容在此通过引用以其整体并入。
技术领域
本公开涉及保护媒体项目,更特别地,涉及利用媒体安全控制器(MSC)保护媒体项目的技术。
背景技术
随着以数字格式下载内容(即,电影、音乐、图书、图像、文档等)作为内容分发方法逐渐变得普遍,保护内容以预防和/或识别盗版的问题已经成为内容生产商(即,电影制片厂、唱片公司、出版商等)十分关注的问题。传统的媒体存储设备可以包括用于保证主设备(即,媒体播放器)可以访问媒体存储设备上的公共分区中的媒体文件的媒体安全控制器。一般地,媒体安全控制器缺乏实施安全特征用于限制媒体项目的呈现(rendering)的能力。传统地,授权密钥和安全性是由主设备管理的。主设备通常存储授权密钥,从而能够解密和回放媒体文件。传统的解决方案提供有限的安全性,因为如果主设备被破坏(即,被黑客入侵),授权密钥可能被其他设备使用,这样的攻击不受媒体限制和阻挡。
附图说明
根据以下提供的详细说明书和本申请的各种实施的附图将更全面地理解本申请。
图1示出根据一个或多个实施方式的实例系统架构。
图2示出根据一个或多个实施方式的实例媒体存储设备。
图3示出根据各种实施方式的利用媒体安全控制器保护媒体项目的授权文件中的实例指令。
图4是根据各种实施方式的用于保护媒体项目的在媒体存储设备和呈现设备之间的通信实例的图解。
图5是根据各种实施方式的用于保护媒体项目的在媒体存储设备和呈现设备之间的通信实例的图解。
图6示出根据各种实施方式的利用媒体安全控制器保护媒体项目的实例密钥管理指令。
图7是根据各种实施方式的可以执行本文中所描述的媒体安全控制器的一个或多个操作的实例计算机系统的方框图。
图8是根据各种实施方式的可以执行本文中所描述的安全模块的一个或多个操作的实例计算机系统的方框图。
具体实施方式
描述根据各种实施方式的用于保护媒体项目的涉及媒体安全控制器(MSC)的系统和方法。呈现设备可以从媒体存储设备获取媒体数据,但是不能独立地解释媒体数据。为了理解媒体数据,呈现设备可以将媒体数据转发到MSC,MSC可以变换(即,解密、加密、压缩等)媒体数据,从而允许呈现设备解释媒体数据。用这种方式,呈现设备呈现媒体文件的能力取决于其与MSC的交互。不像传统的媒体控制器那样,MSC实施方式增加安全智能到媒体设备,MSC作为在呈现设备和要呈现的媒体文件之间的媒介。还与传统的媒体控制器不同,MSC实施方式可以内部存储和管理包括那些存储在媒体本身上的媒体项目的授权密钥。例如,MSC可以提供信息(即,通过在安全操作中利用授权密钥获得的信息)到呈现设备,呈现设备应当使用该信息呈现媒体文件。在另一个实例中,MSC可以为呈现设备解密一部分媒体文件,并可以将解密部分提供给呈现设备(即,直接播放、结合其他数据、进一步解密等)。利用MSC的系统允许内容供应商(即,媒体出版商、分销商)保证MSC卷入到呈现过程中。例如,分销商可以配置媒体项目的许可,使得一部分媒体项目或一个媒体数据解密密钥由MSC解密。
媒体项目的实例可以包括但不限于,数字电影、数字视频、数字照片、数字音乐、网站内容、社交媒体更新、电子书(电子书籍)、电子杂志、数字报纸、数字音频书籍、电子期刊、网络博客、简单信息聚合订阅、电子漫画书、软件应用等。
可以通过互联网或其他网络(诸如通过使媒体项目从媒体设备流动到远程设备)和/或通过应用或本地连接的设备更直接地使用媒体项目。为了简洁易懂起见,数字电影(在下文中还被称为电影)用作贯穿该文档的媒体项目的实例。本文中所使用的“数字内容”、“媒体”、“媒体项目”、“在线媒体项目”、和“数字媒体项目”可以包括可以利用被配置为将媒体项目呈现给用户的软件、固件和/或硬件播放、执行或加载的电子文件。
图1示出根据各种实施方式的系统架构100。系统架构100可以包括与一个或多个内容提供商(即,媒体项目出版商)相关联的一个或多个服务器110、115、一个或多个密钥发布服务器120、一个或多个媒体存储设备130、131和通过一个或多个网络150耦合的一个或多个呈现设备160。
一个或多个网络150可以包括一个或多个公共网络(即,互联网)、一个或多个专用网络(即,局域网(LAN)或者一个或多个广域网(WAN))、一个或多个有线网络(即,以太网)、一个或多个无线网络(即,802.11网络或Wi-Fi网络)、一个或多个蜂窝网络(即,长期演进(LTE)网络)、路由器、集线器、交换机、服务器计算机和/或其组合。
呈现设备160可以包括用于呈现媒体项目的设备,其可以是(但不限于)便携式媒体播放器、网络、便携式计算机、电子书阅读器、平板电脑、台式计算机、机顶盒、游戏机、电视、蜂窝电话、个人数字助理(PDA)等。呈现设备160功能可以在硬件或软件或硬件和软件的组合中实施。呈现设备160还可以在组件中实施,诸如显卡/加速器、媒体接口或条件访问设备。呈现设备160可以由远程控制器、触摸屏、键盘、鼠标、手势输入或任意其他输入设备控制。呈现设备160可以具有互联网(或其他网络)连通性,该连通性可以是零星的。(例如,网络连通性需要下载内容或授权内容在设备之间传递,但是在回放期间不需要,为的是允许在脱机或低宽带环境中回放)。呈现设备160可以内部地包含加密密钥和安全逻辑,以及界面连接媒体和将视频输出到用户的能力。呈现设备160可以包括视频解压缩支持(即,MPEG2、H.264和/或HEVC编码解码器)和让用户选择和管理各种视频流的能力(即,修复系统,可以是基本的,诸如DVD格式中使用的系统的,或是更复杂和/或可编程性能,诸如蓝光光碟上使用的BD-J)。
单独的呈现设备160可以包括媒体浏览器163。在一个实施中,媒体浏览器163是允许用户浏览媒体项目的应用,诸如电影等。例如,媒体浏览器163可以包括视频解码性能(即,适用于MPEG-2、MPEG-4/H.264/VC-1或其他压缩标准的编码解码器)和音频解码性能。在一些实施中媒体浏览器163可以包括用户界面元件,因此用户可以选择或与要播放的内容交互,以及可以包括网页浏览器,所述网页浏览器可访问、取回、展示和/或导航包含在媒体存储设备131上或来自其他源(即,网页服务器)的内容(即,诸如超文本链接标记语言(HTML)页面的网页、数字媒体项目等)。
媒体浏览器163可以呈现、显示和/或展示内容(即,网页、媒体浏览器)给用户。媒体浏览器163可以是嵌入文档(即,网页)的嵌入式媒体播放器(即,Adobe Flash播放器或HTML5播放器)。媒体浏览器163还可以包括专用硬件元件,诸如在硅中实施的专用解码器,即,作为更大的片上系统(芯片上的系统)和/或独立式芯片的零件。在另一个实例中,媒体浏览器163可以是独立式应用程序或具有允许用户浏览数字媒体项目(即,电影)的独立式应用程序的能力(即,移动应用、桌面应用、游戏机应用、电视应用等)。媒体浏览器163可以由服务器和/或内容分发平台提供给呈现设备160。例如,在一些实施例中,媒体浏览器163可以是嵌入文档中的嵌入式媒体播放器(即,网页)或由内容分发平台提供的电影文件。在另一个实例中,媒体浏览器163可以是从服务器上下载的单独应用。在另一个实例中,媒体浏览器163可以是预先安装在呈现设备160上的独立式应用程序。媒体浏览器可以存储在媒体存储设备130、131上或可以存储在其他位置。
服务器110、115、120可以包括一个或多个计算设备(诸如机架式服务器、路由器计算机、服务器计算机、个人计算机、大型计算机、便携式计算机、平板电脑、桌面计算机等)、数据存储(即,硬盘、SSD、网络附接存储设备、内存、数据库)、网络、软件组件(操作系统、中间软件、应用软件、数据库等)、硬件安全模块(即,PC卡、智能卡、USB安全外围设备)和/或可以用于向用户提供对媒体项目的访问和/或提供媒体项目给用户的其他组件。
媒体存储设备130可以包括至少一个(诸如具有内部ROM、密钥、密钥存储器等的MSC135的安全CPU(中央处理单元))和存储器140(诸如闪存或硬盘驱动器)。CPU是处理设备的实例。MSC135可以是单独的芯片,或可以集成其他功能(诸如USB、闪存或硬盘控制器)。大容量存储器140可以在来自MSC135的媒体内的独立硬件上实施,或可以是集成的(即,作为单个芯片)。媒体存储设备的实体形式因素的实例包括但不限于闪存卡、USB盘、硬盘、SSD、网络附接存储设备等。应当注意,取决于这个实施例,MSC可以了解或不了解数据在存储器140上如何组织。如果MSC135缺乏这样的认识(如果媒体存储设备130是利用MSC135未知的文件系统的块存储设备,就是这种情况),那么MSC135涉及的用于获取包含在存储器140上的数据的过程可以包括使MSC135提供消息给播放器(或主机或呈现设备),从大容量存储器读取数据、可能解密该数据和将数据发送回媒体设备。存储器140可以存储媒体项目和与媒体项目有关的数据。存储器140可以包括可以是内存(即,随机存取存储器)、高速缓冲存储器、驱动器(即,硬盘)、闪存驱动器、一次性可编程存储器或能够存储数据的另一种类型的组件或设备的一个或多个数据存储器。存储在存储器140上的数据不限于利用MSC135的安全性能的媒体文件(例如,存储器140可以作为具有标准文件系统的普通硬盘驱动器或闪存驱动器工作,并且可以保持既包括旧有文件也包括利用MSC135回放的文件的任意种类的数据)。
MSC135可以是耦合到(或以其他方式直接或间接连接)呈现设备160的零件。MSC135可以增加安全特征,以保护存储在存储器140上的媒体项目。MSC135可以作为呈现设备160和要呈现的存储器140中的电影之间的中间组件,可以包括有助于保护或启用这样的呈现的功能。例如,在没有MSC135处理呈现媒体浏览器163中的Action-Movie-XYZ所需的一些数据的情况下,呈现设备160不能呈现媒体浏览器163中的Action-Movie-XYZ。例如,MSC135可以解密应当用于呈现媒体项目的一个或多个密钥,并将密钥提供给呈现设备160,和/或将前驱解密成实际解密密钥,和/或解密一部分媒体项目和将解密部分提供给呈现设备160。MSC135和呈现设备160之间的交互可以是迭代的。迭代数量可以基于与媒体项目相关(可以和其一起存储)的指令。
呈现设备160可以访问存储器140中的数据(即,媒体项目、与媒体项目有关的数据)。存储器中的数据可以是安全的(即,加密的),在不利用所需的安全过程的情况下防止呈现设备160呈现(无论是通过媒体浏览器163中的存储数据或是通过未授权的设备呈现)。如先前所述,呈现设备160可以包括安全模块165,其可以与MSC135直接或间接交换数据,能够处理和交换数据从而允许在媒体浏览器163中呈现。
在一个实施方式中,MSC 135不具有直接从包含在存储器140上的文件读取的能力。例如,MSC135可能不理解呈现设备160所使用的文件系统。如果MSC135需要来自存储器140的数据,MSC135可以将消息发送到具体指定期望数据的呈现设备160,然后呈现设备160可以从存储器140获取数据,并且将数据提供回MSC135。然后MSC135可以例如利用数据(例如,作为其自己的操作的一部分)或可以处理该数据,并且可以将经处理的数据发送到安全模块165(例如,直接或通过呈现设备160)。安全模块165可以使用来自MSC135的数据来呈现媒体浏览器163中的媒体项目(例如,电影)。
呈现设备160可以耦合到媒体存储设备130,以访问存储器140中的媒体项目(例如,电影),从而在媒体浏览器163中呈现媒体项目。呈现设备160可以包括安全模块165,其可以与MSC135通信(直接或间接)。安全模块165可以是例如,并且不限于固件、应用、片上系统上的安全内核、独立芯片、和/或呈现设备160中的其他硬件。当用户102选取电影在媒体浏览器163中呈现时,安全模块165可以加载授权文件用于来自存储器140的电影。授权文件可以包括安全模块165和MSC135执行从而在媒体浏览器163上呈现电影的一组或多组指令。安全模块165可以接收和解释来自MSC135和/或授权文件的指令。同样地,MSC135可以接收和解释来自安全模块165和/或授权文件的指令。
密钥发布服务器120可以分配和管理用于呈现设备160和媒体存储设备130、131的密钥。密钥发布服务器120可以发布用于媒体存储设备130、131的一个或多个基媒体存储设备密钥。例如,当制造媒体存储设备130、131时,密钥发布服务器120可以在媒体存储设备130、131的MSC135的安全存储部分(例如,在芯片上一次性可编程内存)提供(143)一个或多个基媒体存储设备密钥。基媒体设备密钥对每个媒体存储设备130、131而言可以是独一无二的。基媒体设备密钥的实例可以包括但不限于,非对称密钥对(例如,RSA/ECC)、对称密钥(AES密钥)等。基媒体存储设备密钥可以用于创建与授权服务器110、呈现设备160等的安全会话。提供密钥的过程可以,例如,包括使密钥发布服务器120在安全设施中直接发送密钥,或密钥可以传递到安全设施中的密钥编程设备,密钥编程设备然后提供密钥给单独的设备,和/或密钥可以在诸如互联网的不可信赖的信道上以安全(例如,加密的)形式发送。
密钥发布服务器120可以发布呈现设备160的一个或多个呈现设备密钥。例如,当制造呈现设备160时,密钥发布服务器120可以提供(149)一个或多个呈现设备密钥给呈现设备160。提供密钥的过程可以,例如,包括用户密钥发布服务器120在安全设施中直接发送密钥,或密钥可以传递到安全设施中的密钥编程设备,密钥编程设备然后提供密钥给单独的设备,和/或密钥可以在诸如互联网的不可信赖的信道上以安全(例如,加密的)形式发送。
内容提供商105可以包括用于提供媒体项目的一个或多个媒体服务器115,例如,让呈现设备160呈现给用户102。内容提供商105可以包括一个或多个授权服务器110,为媒体项目提供授权文件以允许呈现媒体项目。
授权服务器110可以提供授权密钥到MSC135中。例如,当购买电影时(例如,通过用户102),媒体服务器115可以为购买的电影提供(145)将被存储在媒体存储设备上(例如,Media-Storage-Device-n131)的数据文件,授权服务器110可以发送(147)授权文件和授权密钥,让电影存储在媒体存储设备上。例如,当购买电影时,电影的数据文件、授权文件和授权密钥可以从授权服务器110和媒体服务器140下载到Media-Storage-Device-w 131上的存储器140。授权密钥可以存储在MSC135上(或利用存储在MSC135中和存储在存储器140的其他位置的密钥加密),数据文件和授权文件可以存储在存储器140中。以下将结合附图2更详细地描述用于授权密钥存储在MSC135中的一个实施方式。
密钥发布服务器120可以提供数据给授权服务器110,用于准备和/或加密授权密钥。在一个实施中,密钥发布服务器120提供(141)导出密钥的列表给授权服务器(110),所述导出密钥是基于其提供给媒体存储设备(131)的基媒体存储设备密钥。授权服务器110可以使用导出密钥供安全地传递信息(诸如授权密钥)以供MSC135使用。以下结合附图6更详细地描述使用密钥树产生导出密钥的一个实施。
授权文件可以包括供呈现设备160上的安全模块165和媒体存储设备上的MSC135执行的指令和数据集。例如,示例性的授权文件的指令可以指示安全模块165取回来自存储器140的加密电影数据和提供加密数据给MSC135。示例性的授权文件还可以包括使MSC135利用MSC135存储的授权密钥来解密加密数据、利用MSC135和安全模块165之间共享的会话密钥再加密数据,以及将加密数据发送到呈现设备160上的安全模块165的指令。示例性的授权文件的指令可以指定MSC135应当使用哪个密钥来解密数据和加密数据。
图2示出根据一个或多个实施方式的实例媒体存储设备200。媒体存储设备200可以与图1中的媒体存储设备131相同。媒体存储设备200可以包括安全私人部件201和公共部件203。
公共部件203可以包括可用于存储一个或多个媒体项目的媒体数据267的存储器260。例如,媒体数据267可以包括Media-Titile-1到Media-Titile-n的数据。对于每个媒体项目,媒体数据267可以包括媒体标识符(例如,Media-Titile-1261)、授权文件265,和包括要呈现的主数据(例如,加密的视频和音频)的数据文件263。以下结合附图3更详细地描述授权文件的一个实施方式。媒体数据267可以从内容提供商(例如,图1中的内容提供商103、105)的一个或多个服务器(例如,图1中的授权服务器110、图1中的媒体服务器115)接收。如果公共部件203组织在文件系统中,其上的前述数据可以存储在文件中和不相关的文件中。
公用部分203可以存储证书修订数据269。证书修订数据269可以从密钥发布服务器(例如,图1的密钥发布服务器160)和/或授权服务器(例如,图1中的授权服务器110)接收。证书修订数据269(例如,证书修订列表)可以包括描述与相对应的证书中描述的MSC和/或呈现设备相关联的权限的任意修订的信息。呈现设备的证书包括信息,所述信息描述例如但不限于呈现设备可以呈现的媒体项目的质量水平。例如,Rendering-Device-B可以具有允许Rendering-Device-B高清地呈现媒体项目的证书。如果Rendering-Device-B被破坏(例如,被黑客入侵、攻击等),证书修订列表可以包括下述信息,所述信息指示修订Rendering-Device-B的证书使得授权Rendering-Device-B低清和非高清地呈现媒体项目。
无论何时有更加新的有效版本可用,都可以更新证书修订数据269。例如,当媒体项目下载到媒体存储设备200时,可以更新证书修订数据269。在另一个实例中,当MSC205确定证书修订数据269过时时,可以更新证书修订数据269。例如,当MSC205创建与呈现设备的安全会话时,MSC205和呈现设备可以比较彼此的证书修订列表的版本,以确定证书修订列表是当前的还是过时的。证书修订列表上的数字签名可以同时认证底层数据的有效性和新鲜度(例如,包含在证书修订列表中的发布日期或计数器能够使设备识别新版本是否有效和比当前存储的版本更新)。
私人部件201可以存储基媒体存储设备密钥252。例如,当制造媒体存储设备200时,基媒体设备存储密钥252可以从密钥发布服务器(例如,图1中的密钥发布服务器160)接收并存储在MSC205的私人数据区域250中。基媒体设备存储密钥252可以包括例如,但不限于,非对称密钥对(例如,RSA/ECC)和一个或多个AES密钥。基媒体存储设备密钥可以用于创建与呈现设备和/或授权服务器的安全会话。
私人部件201可以是安全部件并可以包括MSC205。MSC205可以存储数据250,用于保护媒体数据261和与媒体数据261相关的媒体项目(例如,电影)。数据250可以包括授权数据251,其用作呈现存储器260中相对应的媒体项目的过程的一部分。授权数据251可以包括,例如,但不限于用于存储授权密钥、授权密钥插槽数量以及每个插槽的信息(例如,出版商标识符、授权标识符、授权密钥等)的授权密钥插槽列表。媒体存储设备200可以使用授权数据251中的授权密钥,以例如解密数据文件263或数据文件263的部分或已经用于解密媒体数据267中的数据文件263的部分的密钥。私人存储器中的数据250还可以包括,例如,签名、认证、内部密钥(例如,在芯片上的闪存/保险丝/OTP)、最新验证的证书修订列表的时间戳或序列号等。
私人部件201中的数据250可以包括在MSC205和呈现设备(例如,图1中的呈现设备160)中的安全模块(例如,图1中的安全模块165)之间创建的会话密钥253,用于特定的安全通信会话。MSC205可以使用会话密钥253与呈现设备中的安全模块(例如,图1中的安全模块165)进行安全通信。例如,MSC205可以接收由安全模块加密和/或认证的数据,并使用会话密钥253解密和/或验证该数据。在另一个实例中,MSC205利用会话密钥253加密和/或认证该数据,并将经加密的数据发送到安全模块,进行解密和/或验证。
如先前所述,在一些实施例中,MSC205不能直接访问或解释媒体存储设备200上的公共部分203中的媒体数据267。例如,MSC205可能不能理解用于组织存储器260上的数据的文件系统。为了获得所需数据(诸如媒体数据267的部分),MSC205可以将消息发送到呈现设备,从存储器260取回所需的媒体数据267和将媒体数据267提供给MSC205。为了确保需要正确数据,MSC205可以数字地哈希(hash)返回的数据并确认结果哈希与数字签名和/或消息验证码相匹配。
例如,在一个实施例中,当选择呈现电影(例如,Media-Title-1261)时,呈现设备可以从媒体存储设备200上的公共部件230取回电影(例如,Media-Title-1261)的授权文件265,并将授权文件265(或其部分)发送到MSC205。授权文件部分可以包括让MSC205来执行的一个或多个数字签名的指令集。例如,Media-Title-1261的示例性授权文件265可以包括MSC205的指令集,以从基媒体存储设备密钥271导出临时密钥、使用该临时密钥利用指令中的具体指定密钥来解密加密密钥(还可以来自授权文件265)、然后利用授权密钥匹配指令中指定ID的结果来进一步解密。然后示例性的指令可以指定MSC205应当使用会话密钥253再加密结果以及将再加密的结果发送到呈现设备上的安全模块。示例性的授权文件265包含用于呈现设备上的安全模块的指令,指导其利用会话密钥而解密所述再加密结果并且该使用结果作为呈现Media-Title-1261媒体项目的数据文件263的部分的密钥。
图3示出根据一个示例性实施的用于利用媒体安全控制器保护媒体项目的实例授权文件301中的实例指令。授权文件301可以与图2中的授权文件261相同。
授权文件301可以包括适用于安全模块和MSC结合呈现媒体项目执行的一个或多个指令集。例如,MSC可以接收指令以解密Data-XYZ、再加密Data-XYZ和将再加密的Data-XYZ发送到呈现设备。在另一个实例中,呈现设备可以接收指令以等待从MSC接收一些数据(例如,加密Data-XYZ)并且当接收到加密Data-XYZ时解密所述加密Data-XYZ。
呈现设备可以包括用于说明和执行指令的固件。例如,当选择媒体项目进行呈现时,呈现设备中的固件可以指示呈现设备自动取回所选媒体项目的授权文件301和将授权文件301或其部分转发到MSC。MSC可以从呈现设备接收授权文件301或其部分,并可以认证和解释所述授权文件301或其部分。
每个媒体项目或媒体项目集可以存在授权文件301。授权文件301可以被预先编码成包括媒体标识符(例如,标题标识符),授权标识符和用于呈现相对应的媒体项目的一组或多组操作305。指令可以是可配置的,即,对于相对应的媒体项目。例如,内容提供商(例如,出版商)可以限定指令和相关联的加密数据值。每当发布新的授权文件(例如,当用户下载一些内容和支付以具有提供给顾客的媒体存储设备的许可证)时,内容提供商可以提供不同指令。操作集305可以包括条件或者其他分支/逻辑能力。例如,操作集305可以包括条件语句:如果位17=1,则使用具体指定的授权密钥插槽中的密钥来解密一些数据。
在一个实施方式中,在执行单独的操作集305之前通过设备哈希所述操作集305。操作集的哈希(哈希307)本身被哈希,使得各种单独的操作集305连接到反映所有操作的哈希中(通过哈希的各个阶段)。在一个实施例中,这是利用哈希树进行的。在另一个实施例中,操作集包括随后的操作集的哈希。例如,OperationSet-1(具有Hash-Value-1)引用OperationSet-2中的操作,OperationSet-1中的引用包括OperationSet-2的哈希。OperationSet-2可以分别同时引用OperationSet-3和OperationSet-4,那些引用还将分别包括OperationSet-3和OperationSet-4的哈希。用这种方式,Hash-Value-1上的数字签名直接认证OperationSet-1的内容,进而OperationSet-1的内容认证其他OperationSets。下一个指令集可以包括Hash-Value-2,其确认要执行的下一个指令集的完整性和其链路。在两个前述实施例中,在授权文件301中执行的指令的总计空间可以明显大于MSC和/或安全模块中可用的RAM,因为每个MSC和安全模块(呈现设备中的)接收其自己部分的指令集并且执行其自己部分的命令。
以下示出可以包含在指令集内的命令的实例:
样本指令类型的实例:
-加密(谁、密钥选择、偏置)
-压缩(谁、密钥选择、偏置)
-拷贝(谁、src、dest、len)
-解密(谁、密钥选择、偏置)
-比较(谁、src、dest、len、转移位置、在转移位置指令集的哈希)
-填充(谁、dest、len、数据)
-完成(谁、状态)
-间接步骤(谁、ptr、哈希)
-传递(谁、src、dest、len)
-AES(密钥选择、偏置【源】、偏置【目的】)
-AddToPlaybackMap(谁【必须是安全模块】、密钥选择、偏置【附上回放映射数据】)
○存储器上主要加密内容文件的偏置
○密钥包括要应用的音频和视频的独立密钥
○加密的内容文件中的数据长度
○虚拟内容文件中的目的地
-ReceiveData(ptr,长度)
-DeriveKey(密钥选择[入],退到参数,密钥选择[出])
注意到:在输入参数中,“谁”指定哪个实体应当执行指令(例如,MSC或安全模块),如果每个操作被孤立成独立集合,可以省略“谁”。“密钥选择”识别应当用于处理的实体中的密钥。“偏置”指定工作区域的偏置(例如,插槽位置或字节偏置)。
图4是根据各种实施方式的与呈现设备405交互从而能够呈现媒体项目的媒体安全控制器403的实例的图解。例如,媒体安全控制器403和呈现设备405可以创建安全会话、建立会话密钥和使用会话密钥和其他密钥建立回放映射465,呈现设备405可以使用回放映射465来呈现媒体项目。媒体存储设备401可以与图1中的媒体存储设备130和图2中的媒体存储设备200相同。呈现设备405可以与图1中的呈现设备160相同。
呈现设备405可以接收(402)请求,以呈现存储在媒体存储设备401上的存储器450中的数据451的媒体项目。可以通过图形用户界面接收该请求作为用户选择的媒体项目的输入。例如,该请求可以适用于Comedy-Movie-ABC。响应该请求或在该请求之前,呈现设备启动在呈现设备405和媒体存储设备401之间的安全会话。
在一些实施例中,期望的是,可用的最新证书修订列表(CRL)可以同时供媒体存储设备401上的媒体安全控制器403和呈现设备405上的安全模块407使用。为了能够同步CRL版本,MSC403和安全模块407被配置为接收CRL报头,然后检查报头是否同时:(i)具有由受信任的实体(例如,密钥发布中心)签名的数字签名,(ii)具有指示该CRL比先前看到的最新CRL更新的发布计数器(或时间戳)。如果两个语句都为真,那么更加新的CRL报头保留在安全区域,实体CRL存储在目的设备上。如果更加新的CRL被提供至媒体,那么可以由呈现设备记为公共文件系统中的文件。如果更加新的CRL被提供至呈现设备,那么可以从媒体文件系统读取,并存储在较小闪存、硬盘或呈现设备中的非易失性存储区域。因此,同步(421)证书修订列表和报头的过程可以包括首先检查设备看到的最新CRL版本是否相同,如果不相同,将更加新的CRL发送到设备取代旧的CRL。此外,如果需要,还可以在互联网上从存储器451上的数据或其他位置寻找更加新的CRL(如果发现CRL比任一个设备最近看到的CRL更新,那么新的CRL应当如上所述地被提供至上述两个设备)。一旦完成CRL同步421,两个设备就将具有相同CRL版本。
在步骤422,媒体安全控制器403和安全模块407交换分别指定呈现设备/媒体存储设备身份、类型/制造商、属性和公钥的证书。设备验证证书都被合适签名,即通过验证以密钥发布中心开始的证书链。
每个设备验证和处理(423)对应于其他身份的证书修订列表部分。所接收的CRL部分可以与先前同步(421)的CRL版本进行比较。允许CRL在部分内使得支持超过约束环境,诸如MSC403上可用的RAM量的CRL大小变得更简单。在一个实施例中,呈现设备405提供来自证书修订文件的必要部分给媒体安全控制器403,让媒体安全控制器403验证安全那模块407身份。如果所接收的部分没有被由密钥发布中心发布的签名正确地认证,如果版本不匹配先前接收的版本,如果该部分不对应于安全模块的证书,或如果该部分撤销安全模块407(或者以其他方式使得安全模块407与内容需求不相符),则MSC403可以终止协议。
MSC403存储(424)来自呈现设备405的证书的信息。例如,媒体存储设备401可以分配固定内存量(例如,16千比特)作为缓存453,并可以利用呈现设备信息(例如,制造商、型号、序列号、要求的类、来自证书修订列表(CRL)的撤销状态、来自CRL的修订状态等)填入固定大小的缓存。尽管附图中未示出,但是安全模块407同样可以利用来自媒体存储设备的证书和/或相对应的CRL部分的信息形成缓存。
MSC403和安全模块407利用与一组公钥的握手和与一组对称密钥的握手来创建(425)共享会话密钥。该会话密钥可以对应图2中的会话密钥253。MSC403和安全模块407可以在本地导出和存储会话密钥。例如,每个可以用来自另一个的证书的公钥来对随机值进行加密。MSC405和安全模块407可以交换这些加密的值,然后每个解密另一个的值。然后会话密钥可以通过哈希所述加密结果(例如,哈希(由媒体加密的值||媒体证书||由呈现设备加密的值||呈现设备证书),其中“||”表示级联)来产生。“哈希”可以是加密哈希函数,诸如SHA-256。
呈现设备405然后加载(427)授权文件,并且将相关授权文件部分发送(429)到MSC403。
MSC403识别授权文件中的第一指令集和开始处理(例如,读取、执行等)(430)指令。取决于指令集,MSC403可以具有用呈现设备405上的安全模块407交换和处理数据的一些迭代。例如,MSC403可以执行第一指令集,其指示MSC403解密包括在指令集中的数据。例如,指令集可以包括加密密钥,并且可以指定MSC403中的应当用于解密所述加密密钥的授权密钥。
图4中的MSC的示例性的指令集包括使MSC403从呈现设备405接收额外数据的指令。为了处理该指令,MSC403将消息发送到(431)安全模块407,使安全模块407获得来自安全模块407的额外数据。安全模块407取回数据(例如,如图所示来自存储器450、或诸如呈现设备的内存的其他源、来自互联网等)并且将数据发送到(435)MSC403(或以误差回答)。MSC403处理437(例如,利用之前产生的密钥解密和/或加密,诸如在步骤430期间那样)数据并将经处理的数据发送到(439)安全模块407(例如,通过提供数据给呈现设备,然后传递到安全模块)。安全模块407处理(441)所接收的数据。例如,安全模块407还可以从授权文件接收描述安全模块407应当如何处理数据的进一步的指令集。例如,安全模块407可以使用会话密钥660解密所接收的数据,然后利用从来自密钥发布中心的密钥导出的密钥应用进一步的解密步骤(参考图中的密钥分配149),并且可以存储结果作为数据467的一部分。
在另一个实例中,安全模块407可以使用会话密钥467解密数据并可以存储经解密的数据作为回放映射465的一部分。例如,授权文件可以包括指令,使安全模块407将数据(例如,解密密钥、偏置值、长度等)写入存储回放映射465的缓存中。放置在回放映射465中的数据可以但不限于利用从MSC403接收的数据、来自存储器450的数据、来自媒体设备证书的数据、来自呈现设备证书的数据、来自CRL的数据、来自指令的数据、从网络(诸如互联网)取回的数据和可用的任意其他数据而导出。例如,来自任意这些源的信息可以用于选择回放映射条目,所述条目在内容的不同可选部分之间进行选择(例如,为了实现取证标示)。与标题相关联的指令集允许在如何解码给定标题方面具有灵活性,通过该过程安全模块407可以使用来自许多源的数据,可以递增和/或迭代地从MSC403接收数据,以构造回放映射465。
例如,授权文件可以包括使安全模块407增加操作到回放映射465的指令。该操作可以由安全模块407执行。回放映射条目还可以要求额外的处理。例如,条目可以指示呈现设备405和/或其安全模块407在呈现媒体项目期间的某个时间点与MSC403交互,从而接收来自MSC403的协助,例如将前驱值转化成然后可以用于呈现一部分媒体项目的密钥。
例如,在通信439,授权文件可以指示安全模块407增加操作到回放映射465,当在媒体项目中从偏置范围X到Y呈现媒体项目时所述操作需要与MSC403通信。该操作可以包括参数,例如但不限于触发安全模块407与MSC403通信的指示符、偏置、长度等。协助可以是,例如,MSC403应当解密在偏置X到Y的媒体文件数据。
回放映射465可以利用来自MSC465的多个通信构造。例如,通信431、433可以包括使安全模块407写入回放映射465的指令。例如,指令可以指示安全模块407将包含长度、存储器的偏置和密钥值的条目写入回放映射465。例如,指令可以让安全模块407将【应当读取起始于存储器上的媒体文件中的偏置[偏置]和应当利用密钥[密钥值]解密的媒体的下一个[长度]字节】写入回放映射465。在替代实施例中,可以利用指定和在媒体项目上的不同密钥中选择的其他方法或编码,或整个媒体项目可以存在单个密钥。
呈现设备405可以使用回放映射465呈现媒体项目。回放映射465可以包括关于如何定位和解密构成该项目的密文的信息,安全模块407使用该信息形成、解密和呈现媒体项目。回放映射465可以包括(但不限于)供呈现设备405用于解密媒体项目的一个或多个密钥。当呈现设备405读取来自存储器450的媒体项目的数据文件并实现解密一部分数据文件,呈现设备405可以使用回放映射465中的相对应密钥来解密这部分数据。在另一个实例中,当呈现设备405实现解密一部分数据文件时,呈现设备405可以读取回放映射465中的指令,以联络MSC403从而帮助解密这部分数据。数据解密可以使用传统的加密方法,诸如反向模式中的AES。
在一个实施方式中,安全模块407可以开始利用部分构造的回放映射465来呈现媒体项目,并可以继续基于来自MSC403的进一步通信来构造回放映射465。例如,MSC403和安全模块407可以创建安全会话和可以部分地构造回放映射465。呈现设备405可以开始基于部分构造的回放映射465来呈现媒体项目(例如,电影)。在当呈现设备405正在播放电影的各个点处,呈现设备405可以检测呈现设备405无法解密的一部分数据,可以与媒体安全模块403接口连接以解密这部分数据。呈现还可以在完全下载媒体项目之前开始,只要存在所需数据。
内容提供商(例如,出版商)期望识别哪个MSC和/或呈现设备呈现媒体项目。例如,出版商可能获悉未授权的媒体项目和/或设备的拷贝(例如,媒体存储设备、呈现设备),并且期望追踪出哪个MSC和/或呈现设备与未授权的拷贝相关联。内容提供商可以使用授权文件中的指令和MSC和/或呈现设备执行的指令进行取证分析,从而识别哪个MSC和/或呈现设备呈现特定的媒体项目。
例如,内容提供商可以选择适用于特定的媒体安全控制器和/或呈现设备进行解密的密钥。当呈现设备和/或媒体安全控制器解密媒体项目时,取决于是否使用授权密钥,结果不同。例如,内容提供商可以利用指令这样限定和预编码授权文件,使得当播放一部分电影时,不同的呈现设备具有不同的回放映射条目(例如,一个播放器可以在回放映射中产生密钥K1和使用该密钥解密该部分的变量A,而另一个播放器可以在回放映射中产生密钥K2和使用该密钥解密该部分的变量B)。如果恢复盗版,那么文件中的变量传送有关盗版的信息(例如,如果存在变量A那么盗版能够解密变量A,如果存在变量B那么盗版能够解密变量B)。假如有足够的变量,可以传送任意信息。变量大小可以同压缩视频中的几个字节一样小,或变量可以长得多(诸如视频或音频数据的相当多部分)。
图5是根据各种实施方式的利用回放映射565和媒体安全控制器(MSC)503呈现媒体项目的呈现设备505的实例的图解。例如,回放映射565中的条目可以指示呈现设备505寻找来自MSC503的协助,以呈现媒体项目的相对应部分(例如,电影)。用这种方式,通过解密一部分媒体项目或通过利用可以用于解密至少一部分媒体项目的密钥提供给呈现设备,MSC503可以在呈现媒体项目期间主动参与。媒体存储设备501可以与图1中的媒体存储设备130和图2中的媒体存储设备200相同。呈现设备505可以与图1中的呈现设备160相同。
呈现设备505上的安全模块507读取存储在呈现设备505中的回放映射565中的条目。在图5中所示的实例中,条目指定数据需要由MSC503处理。通过发布(521)请求(例如,文件读取)然后接收(522)所需数据,呈现设备505读取来自公共存储区域的数据。然后与指定所需处理的请求(例如,MSC503应当如何解密数据)一起,一部分或所有数据被发送到(523)MSC503。MSC503执行(524)所请求的处理和将结果返回(525)到呈现设备505。呈现设备505可以执行其自己的进一步处理,诸如利用MSC503应用额外的解密通行在数据上。最后,准备好数据用于呈现。呈现设备解码(527)视频/音频,例如通过将一部分数据发送到音频或视频编解码器进行解压缩和输出。
图6示出根据各种实施方式的用于保护媒体安全控制器中的授权密钥的实例密钥管理命令600。这样的密钥可以用于保护授权的移除和传递,即如果授权从一个媒体设备传递到另一个媒体设备,过程可以包括:(1)禁用源设备上的授权密钥,(2)确定密钥被禁用的授权服务器,(3)授权服务器发布新的授权文件和新的授权密钥用于目的地媒体设备。授权密钥还可以帮助验证该内容是合适授权的,即有助于防止重复授权(由于只有授权的媒体设备应当具有正确的授权密钥)。密钥管理命令600可以供,例如,服务器、呈现设备等使用。例如,授权服务器(例如,图1中的授权服务器)可以使用一个或多个密钥管理命令提供授权密钥给MSC并且管理MSC存储的授权密钥。
例如,当购买媒体项目时,授权服务器可以将媒体项目的授权文件、媒体项目的数据文件和与媒体项目相对应的授权密钥发送到媒体存储设备。授权服务器还可以将“管理KAuthorization”命令发送603到媒体存储设备上的MSC。该命令603可以指示MSC接收、验证和存储具体指定的授权密钥。例如,管理命令603可以将要存储的授权密钥、要存储的授权标识符和用于存储授权密钥的插槽数量以及其他授权相关信息指定给MSC。
在该实例中,呈现设备可以使用一个或多个密钥管理命令600作为回放过程的一部分。例如,呈现设备(例如,图1中的呈现设备160)可以使用“读取插槽”命令602验证MSC中已经存在用于特定媒体项目的授权密钥。在回放过程期间,由MSC执行的指令(例如,诸如图4中的430的一部分中的,或结合诸如图5中的524的回放条目的处理)可以利用授权密钥,以便例如确保回放不能在未授权的媒体或已经移除授权的媒体上执行。
授权服务器可以创建与MSC的安全通信。密钥发布服务器可以发布基媒体存储设备密钥给MSC。在一个实施中密钥发布服务器使用密钥树建立从发布给MSC的基媒体存储设备密钥导出的导出密钥列表。密钥发布服务器可以将导出密钥列表提供给授权服务器。授权服务器可以利用导出密钥列表与MSC进行安全通信。使用导出密钥允许授权服务器与MSC安全地通信,而不必实际知道指派给MSC的基媒体存储设备密钥(以便例如,防止一个授权服务器受损会影响由媒体和其他授权服务器执行的操作)。
在一个实施方式中,密钥发布服务器利用密钥树功能建立导出密钥,其中密钥树用指派给MSC的基媒体存储设备密钥和与授权服务器相关联的出版商标识符作为输入。例如,导出密钥可以利用(基媒体存储设备密钥、出版商ID)的输入参数计算。导出密钥可以在相对应的MSC和授权服务器之间共享。单独的内容提供商(例如,出版商)可以接收导出密钥列表,所述列表允许在内容提供商的授权服务器和MSC之间通信。
以下图7更详细地描述根据各种实施方式的被配置为执行本文中所述的媒体安全控制器的一个或多个操作的实例计算机系统的方框图。以下图8更详细地描述根据各种实施方式的被配置为执行本文中所述的安全模块的一个或多个操作的实例计算机系统的方框图。在一些实施例中,图7和图8的计算机系统在被配置为执行媒体安全控制器和安全模块两者的操作的单个系统中实现。
图7示出在内部可执行一组指令的计算机系统700的实例形式中的机器的图解,可以执行这组指令以使机器执行本文中讨论的媒体安全控制器的一个或多个方法。在可选的实施中,机器可以连接(例如,网络连接)到局域网、内联网、外联网或互联网中的其他机器。机器可以在客户端-服务器网络环境中的服务器或客户端机器容量中操作,或作为对等机在对等(或分布式)网络环境中执行。机器可以是个人计算机(PC)、平板电脑、机顶盒(STB)、个人数字助理(PDA)、移动电话、网络计算机、服务器、网络路由器、交换机或网桥或能够执行指定机器要采取的行为的一组指令(顺序地或以其他方式)的任意机器。进一步,尽管只示出单个机器,但是术语“机器”还应当包括机器、芯片和/或单独地或共同地执行一组(或多组)指令从而执行任意一个或多个本文中所讨论的方法的微处理器的任意集合。
实例计算机系统700包括处理设备(处理器)702、主存储器704(例如,只读存储器(ROM)、闪存、诸如同步DRAM(SDRAM)、双数据速率(DDR SDRAM)或DRAM(RDRAM)等的动态随机存取存储器(DRAM))、静态存储器706(例如,闪存、静态随机存取存储器(SRAM)等)以及数据存储设备614,它们互相通过总线730通信。
处理器702代表诸如微处理器、中央处理单元等的一个或多个通用处理设备。更特别地,处理器702可以是复杂指令集计算(CISC)微处理器、精简指令集计算(RISC)微处理器(包括但不限于运行ARM或MIPS指令集的嵌入式CPU内核)、超长指令字(VLIW)微处理器、或实施其他指令集的处理器或实施指令集的组合的处理器。处理器702还可以是诸如专用集成电路(ASIC)、场可编程门阵列(FPGA)、数字信号处理器(DSP)、网络处理器等的一个或多个专用处理设备。处理器702被配置为执行用于执行本文中所讨论的操作和步骤的指令722。在计算机系统700执行指令期间指令722还可以完全或至少部分地驻存在主存储器704和/或驻存在处理器702内,主存储器704和处理器702还构成计算机可读存储介质。指令722可以进一步通过网络接口设备708在网络720上发送或接收。指令722(或与本发明相关联的其他指令)可以在执行(例如,由处理器702)之前数字化地签名(或以其他方式加密认证)和验证。
计算机系统700可以进一步包括网络接口设备708。计算机系统700还可以包括视频播放单元710(例如,液晶显示器(LCD)或阴极射线管(CRT))、输入设备712(例如,小键盘、触摸屏、字母数字键盘、运动感测输入设备等)、光标控制设备714(例如,鼠标)和/或信号生成设备716(例如,扬声器)。
数据存储设备718可以包括计算机可读存储介质728,其上存储实现本文中所述的媒体安全控制器的任意一个或多个方法或功能的一个或多个指令集723(例如,软件)。在一个实施中,数据存储设备718可以包括计算机可读存储介质728,其上存储实现本文中所述的媒体安全控制器模块的任意一个或多个方法或功能的一个或多个指令集723。尽管在示例性的实施中所示计算机可读存储介质728(机器可读介质)是单个介质,但是术语“机器可读存储介质”应当被理解为包括存储一个或多个指令集的单个介质或多个介质(例如,RAID阵列、网络附接存储设备、闪存、集中或分布式数据库、和/或相关联的高速缓冲存储器和服务器等)。术语“计算机可读存储介质”还应当被理解为包括能够存储、编码或传送供机器执行的指令集和使机器执行本公开的任意一个或多个方法的任意介质。术语“计算机可读存储介质”应当包括但不限于固态存储器、光学介质和磁性介质。
图8示出其中可以执行指令集的计算机系统800的实例形式的机器的图解,执行指令集可以使机器执行本文中讨论的安全模块的任意一个或多个方法。在替代实施方式中,机器可以连接(或网络连接)到局域网、内联网、外联网或互联网中的其他机器。机器可以在客户端-服务器环境中的服务器或客户端机器中操作,或作为对等机在对等(或分布式)网络环境中操作。机器可以是个人计算机(PC)、平板电脑、机顶盒(STB)、个人数字代理(PDA)、移动电话、网络设备、服务器、网络路由器、交换机或网桥或能够执行指定机器要采取的行为的一组指令(顺序地或以其他方式)的任意机器。进一步,尽管只示出单个机器,但是术语“机器”还应当包括机器、芯片和/或单独地或共同地执行一组(或多组)指令从而执行任意一个或多个本文中所讨论的方法的微处理器的任意集合。
实例计算机系统800包括处理设备(处理器)802、主存储器804(例如,只读存储器(ROM)、闪存、诸如同步DRAM(SDRAM)、双数据速率(DDR SDRAM)或DRAM(RDRAM)等的动态随机存取存储器(DRAM))、静态存储器806(例如,闪存、静态随机存取存储器(SRAM)等)以及数据存储设备818,它们互相通过总线830通信。
处理器802代表诸如微处理器、中央处理单元等的一个或多个通用处理设备。更特别地,处理器702可以是复杂指令集计算(CISC)微处理器、精简指令集计算(RISC)微处理器(包括但不限于运行ARM或MIPS指令集的嵌入式CPU内核)、超长指令字(VLIW)微处理器、或实施其他指令集的处理器或实施指令集的组合的处理器。处理器802还可以是诸如专用集成电路(ASIC)、场可编程门阵列(FPGA)、数字信号处理器(DSP)、网络处理器等的一个或多个专用处理设备。处理器802被配置为执行用于执行本文中所讨论的操作和步骤的指令822。处理器802或系统中的其他硬件和/或软件实施安全模块165的性能。
计算机系统800可以进一步包括网络接口设备808。计算机系统800还可以包括视频播放单元810(例如,液晶显示器(LCD)或阴极射线管(CRT))、输入设备812(例如,小键盘、触摸屏、字母数字键盘、运动传感输入设备等)、鼠标控制设备814(例如,鼠标)、和/或信号生成设备816(例如,扬声器)。
在一个实施中,数据存储设备818可以包括计算机可读存储介质828,其上存储实现本文中所述的安全模块的任意一个或多个方法或功能的一个或多个指令集822(例如,软件)。在计算机系统800执行指令期间指令822可以完全或至少部分地驻存在主存储器804内和/或驻存在处理器802内,主存储器804和处理器802还构成计算机可读存储介质。指令822可以进一步通过网络接口设备808在网络802上发送或接收。
在一个实施中,指令822包括用于安全模块(例如,图1中的安全模块165)的指令和/或包含调用安全模块的方法的软件库。尽管在示例性的实施中所示计算机可读存储介质828(机器可读介质)是单个介质,但是术语“机器可读存储介质”应当包括存储一个或多个指令集的单个介质或多个介质(例如,RAID阵列、网络附接存储设备、闪存、集中或分布式数据库、和/或相关联的高速缓冲存储器和服务器等)。术语“计算机可读存储介质”还应当包括能够存储、编码或传送供机器执行的指令集和使机器执行本公开的任意一个或多个方法的任意介质。术语“计算机可读存储介质”应当包括但不限于固态存储器、光学介质和磁性介质。
在各种实施中,媒体通过例如但不限于USB、SD/SDHC/SDXC等、SCSI、SATA和以太网协议连接到呈现设备。连接可以是有线的或无线的。任意文件系统可以在存储设备上使用,包括FAZT32、NFS、NZTFS、RiserFS等。包括“专用”担保交易的通信可以通过频带外控制操作处理或与是传统文件系统操作的一部分的批量数据传递操作相集成。实施该系统的媒体设备可以是完全向后兼容的,例如普通用户硬盘驱动器、闪存卡、USB驱动器。同样地,实施该系统的呈现设备可以支持其他回放方法,诸如互联网流媒体,从光学驱动器回放等。
在前述的描述中,阐述许多细节。然而,具有本发明的权益的本领域的普通技术人员将理解,可以在没有这些具体细节的情况下实践本发明。在一些情况中,以方框图的形式而不是详细地示出众所周知的结构和设备,从而避免模糊本发明。
已经按照计算机存储器内的数据位上的操作的算法和符号表示呈现详细说明书的一些部分。这些算法和表示都是供本数据处理领域的普通技术人员使用的方法,从而将其工作的实质最有效地传递给本领域的普通技术人员。这里算法一般地设想为通向期望结果的自身一致的步骤顺序。步骤是需要物理控制物理量的那些。通常,尽管不必要,但是这些量采用能够存储、传递、组合、比较和以其他方式操控的电信号或磁信号的形式。已经证明,为了常见使用,是指那些作为二进制、值、元素、符号、字符、术语、数量等的信号。
然而,应当牢记,所有这些和相似术语都与合适的物理量相关联,仅仅是应用于这些物理量的方便标签。除非另有特别说明,根据下列讨论,理解的是,贯穿说明书,利用诸如“发送”、“接收”、“变换”、“解密”、“加密”、“压缩”、“执行”、“创建”、“建立”、“呈现”、“处理”等的讨论是指将表示为计算机系统的寄存器和存储器内的物理(例如,电子的)量的数据操纵和变换为相似地表示为计算机系统存储器或寄存器或其他这样的信息存储、传递或显示设备内的物理量的其他数据的计算机系统或相似电子计算设备的行为和过程。
为了简单说明起见,方法在本文中描绘和描述为一系列行为。然而,根据本发明的行为可以按照各种顺序和/或同时执行,本文中未呈现和描述其他行为。而且,实施根据公开的主题的方法不需要所有所示行为。此外,本领域的普通技术人员将理解,方法可以通过状态图或事件替代地表示为一系列相关状态。此外,应当理解,说明书中公开的方法能够存储在制品上,以便于将这样的方法传递或转移到计算设备。本文中使用的术语制品是为了涵盖可从任意计算机可读设备或存储介质上获取的计算机程序。
本公开的某些实施方式还与用于执行本文中的操作的装置相关。该装置可以为了预期目的构造,或可以包括通过存储在计算机中的计算机程序选择性地启动或重新配置的专用计算机。这样的计算机程序可以存储在计算机可读存储介质中,例如但不限于任意类型的磁盘,包括软盘、光盘、CD-ROM和磁光盘、只读存储器(ROM)随机存取存储器(RAM)、EPROM、EEPROM、磁卡或光卡、或适用于存储电子指令的任意类型的媒体。
贯穿本说明书的引用“一个实施方式”或“某个实施方式”是指结合实施描述的特定特征、结构或特性包括在至少一个实施方式中。因此,在本说明书中各种位置出现的术语“在一个实施方式中”或“在某个实施中”不一定都指同一个实施。此外,术语“或”是指包含的“或”而不是排除的“或”。而且,本文中使用词语“实例”或“示例性的”是指作为实例、例子或图解。作为“示例性的”本文中所述的任意方面或设计不一定解释为在其他方面或设计上优选的或有利的。相反,使用词语“实例”或“示例性的”是为了以具体方式提出概念。
理解的是,以上描述仅仅是说明性的而非限制性的。一旦阅读和理解以上描述,本领域的普通技术人员将理解许多其他实施。因此,本发明的保护范围应当参考相关权利要求和这样的权利要求赋予的等价物的全部保护范围确定。
以下实例涉及进一步的实施例。
实例1是用于利用媒体安全控制器保护媒体项目的装置,该装置包括:1)用于存储媒体项目和与呈现设备呈现媒体项目相关的数据的存储器;和2)媒体安全控制器,其包括耦合到存储器的处理设备,以响应于呈现设备读取授权文件而将使呈现设备从存储器读取一部分数据和提供该部分数据给媒体安全控制器的消息发送到呈现设备、从呈现设备接收这部分数据、变换这部分数据以及将经变换的这部分数据发送到呈现设备。
在实例2中,实例1的主题中经变换的一部分数据可以可选地包括使呈现设备呈现媒体项目的数据。
在实例3中,实例1的主题中的媒体安全控制器可以通过解密这部分数据、加密这部分数据或压缩这部分数据中的至少一个可选地变换这部分数据。
在实例4中,实例1的主题中的媒体安全控制器可以可选地进一步包括用于存储对应于经变换的一部分数据的授权密钥的第二存储器。
在实例5中,实例4的主题中的处理设备可以可选地进一步利用授权密钥来解密这部分数据。
在实例6中,实例1的主题中的媒体安全控制器可以可选地基于公钥基础设施加密执行与呈现设备的第一次握手和基于对称密钥加密执行与呈现设备的第二次握手,和基于第一次握手和第二次握手创建与呈现设备的安全会话。
在实例7中,实例1的主题中的媒体安全控制器可以通过接收指定用于变换一部分数据的授权密钥的指令集而可选地变换一部分数据,其中指令集能够启动取证分析,从而识别媒体安全控制器到第三方,和利用授权密钥建立经变换的一部分数据,其中经变换的一部分数据识别媒体安全控制器到第三方。
在实例8中,实例1的主题中的媒体安全控制器可以可选地同步媒体安全控制器的第一证书修订列表和呈现设备的第二证书修订列表,其中第一证书修订列表和第二证书修订列表描述权限集的一个或多个变化。
各种实施例可以具有以上所述的操作特征的不同组合。例如,以上所述的装置的所有可选特征还可以关于本文中描述的方法或过程实施,实例中的详情可以在一个或多个实施例中的任意位置使用。
实例9是用于利用媒体安全控制器保护媒体项目的方法,该方法包括1)媒体安全控制器响应于呈现设备读取授权文件将使呈现设备从媒体存储设备的存储器读取一部分数据和将这部分数据提供给媒体安全控制器的消息发送到呈现设备,其中媒体存储设备的存储器中的数据与呈现设备呈现的媒体项目相关;2)由媒体安全控制器从呈现设备接收这部分数据;3)由媒体安全控制器变换这部分数据;和4)由媒体安全控制器将经变换的一部分数据发送到呈现设备。
在实例10中,实例9的主题中经变换的一部分数据可以可选地包括使呈现设备呈现媒体项目的数据。
在实例11中,实例9的主题中的变换一部分数据可以可选地包括解密这部分数据、加密这部分数据或压缩这部分数据中的至少一个。
在实例12中,实例9的主题中的媒体安全控制器可以可选地包括用于存储对应于经变换的一部分数据的授权密钥的第二存储器。
在实例13中,实例12的主题中一部分数据的变换可以可选地包括媒体安全控制器利用授权密钥来解密这部分数据。
在实例14中,实例9的主题可以可选地包括基于公钥基础设施加密在媒体安全控制器和呈现设备之间执行第一次握手、基于对称密钥加密在媒体安全控制器和呈现设备之间执行第二次握手、以及基于第一次握手和第二次握手创建与呈现设备的安全会话。
在实例15中,变换实例9的主题中一部分数据的变换可以可选地包括媒体安全控制器接收具体指定用于变换一部分数据的授权密钥的指令集,其中指令集能够取证分析从而识别第三方的媒体安全控制器,媒体安全控制器利用授权密钥建立经变换的一部分数据,其中经变换的一部分数据识别第三方的媒体安全控制器。
在实例16中,实例9的主题可以可选地进一步包括同步媒体安全控制器的第一证书修订列表和呈现设备的第二证书修订列表,其中第一证书修订列表和第二证书修订列表描述权限集的一个或多个变化。
各种实施例可以具有以上所述的操作特征的不同组合。例如,以上所述的方法的所有可选特征还可以关于非瞬态计算机可读存储介质实施。实例中的详情可以在一个或多个实施例的任意位置使用。
实例17-24是包括指令的非瞬态计算机可读存储介质,当计算系统执行指令时引起计算系统执行实例9-16的操作。
各种实施例可以具有以上所述的操作特征的不同组合。例如,以上所述的方法的所有可选特征还可以关于装置实施。实例中的详情可以在一个或多个实施例中的任意位置使用。
实例25-32是用于利用媒体安全控制器保护媒体项目的系统,其包括用于执行实例9-16的操作的装置。
实例33是用于利用媒体安全控制器来保护媒体项目的装置,该装置包括1)用于存储数据从而呈现媒体项目的存储器;和2)耦合到存储器的处理设备,其响应于处理设备读取授权文件从媒体安全控制器接收消息,以从存储器读取一部分数据和将这部分数据提供给媒体安全控制器、将这部分数据发送到媒体安全控制器、以及接收来自媒体安全控制器的经变换的一部分数据。
在实例34中,实例33的主题中的处理设备可以可选地进一步基于从媒体安全控制器接收的经变换的一部分数据而建立回放映射,其中回放映射包括用于呈现媒体项目的数据。
在实例35中,实例33的主题中的处理设备可以可选地进一步基于从媒体安全控制器接收的经变换的一部分数据来呈现媒体项目。
在实例36中,实例33的主题中的处理设备可以可选地进一步利用与媒体存储设备共享的会话密钥来处理经变化的一部分数据。
在实例37中,实例36的主题中的处理设备可以可选地通过解密经变换的一部分数据、加密经变换的一部分数据或压缩经变换的一部分数据中的至少一个处理经变换的一部分数据。在实例38中,实例33的主题中的处理设备可以可选地进一步基于公钥基础设施加密执行与媒体安全控制器的第一次握手;基于对称密钥加密执行与媒体安全控制器的第二次握手;以及基于第一次握手和第二次握手建立与媒体安全控制器的安全会话。
在实例39中,实例33的主题中的处理设备可以可选地进一步同步第一证书修订列表和媒体安全控制器第二证书修订列表,其中第一证书修订列表和第二证书修订列表描述权限集的一个或多个变化。
各种实施例可以具有以上所述的操作特征的不同组合。例如,以上所述的装置的所有可选特征还可以关于本文中描述的方法或过程实施,实例中的详情可以在一个或多个实施例中的任意位置使用。
实例40是用于利用媒体安全控制器保护媒体项目的方法,该方法包括1)响应于呈现设备读取授权文件,呈现设备从媒体安全控制器接收消息,该消息指示呈现设备从媒体存储设备的存储器读取一部分数据和提供这部分数据给媒体安全控制器,其中媒体存储设备的存储器中的数据涉及呈现设备要呈现的媒体项目;2)呈现设备将一部分数据发送到媒体安全控制器;和3)呈现设备从媒体安全控制器接收经变换的一部分数据。
在实例41中,实例40的主题可以可选地进一步包括基于从媒体安全控制器接收的经变换的一部分数据而建立回放映射,其中回放映射可以包括用于呈现媒体项目的数据。
在实例42中,实例40的主题可以可选地进一步包括基于从媒体安全控制器接收的经变换的一部分数据来呈现媒体项目。
在实例43中,实例40的主题可以可选地进一步包括利用与媒体存储设备共享的会话密钥来处理经变换的一部分数据。
在实例44中,实例43的主题中经变换的一部分数据的处理可以可选地包括解密经变化的一部分数据、加密经变换的一部分数据或压缩经变换的一部分数据中的至少一个。
在实例45中,实例40的主题可以可选地进一步包括基于公钥基础设施加密执行与媒体安全控制器的第一次握手、基于对称密钥加密执行与媒体安全控制器的第二次握手、以及基于第一次握手和第二次握手建立与媒体安全控制器的安全会话。
在实例46中,实例40的主题可以可选地进一步包括同步呈现设备的第一证书修订列表和媒体安全控制器的第二证书修订列表,其中第一证书修订列表和第二证书修订列表描述权限集的一个或多个变化。
各种实施例可以具有以上所述的操作特征的不同组合。例如,以上所述的方法的所有可选特征还可以关于非瞬态计算机可读存储介质实施。实例中的详情可以在一个或多个实施例中的任意位置实施。
实例47-53都是包括指令的非瞬态计算机可读存储介质,当计算系统执行指令时引起计算系统执行实例40-46的操作。
各种实施例可以具有以上所述的操作特征的不同组合。例如,以上所述的方法的所有可选特征还可以关于装置实施。实例中的详情可以在一个或多个实施例中的任意位置使用。
实例54-60都是用于利用媒体安全控制器来保护媒体项目的系统,其包括用于执行实例40-46的操作的方式。
实例61是用于修订证书中限定的权限的装置,该装置包括1)用于存储证书的存储器;和2)耦合到存储器的处理设备,用于识别证书中的权限集、识别权限集的变化、建立描述权限集的变化的证书修订列表以及分配证书修订列表。
在实例62中,实例61的主题中的变化可以可选地与用于呈现媒体项目的质量水平相关。
在实例63中,实例61的主题中的权限集可以可选地描述被指派给媒体安全控制器或呈现设备中的至少一个的一个或多个权限集。
在实例64中,实例61的主题中的证书修订列表可以可选地包括版本标识符。
各种实施例可以具有以上所述的操作特征的不同组合。例如,以上所述的装置的所有可选特征还可以关于本文中描述的方法或过程实施,实例中的详情可以在一个或多个实施例中的任意位置使用。
实例65是用于修订证书中限定的权限的方法,该方法包括1)识别证书中的权限集;2)识别权限集的变化;3)由计算机系统建立描述权限集的变化的证书修订列表;和4)分配证书修订列表。
在实例66中,实例65的主题中的变化可以可选地与用于呈现媒体项目的质量水平相关。
在实例67中,实例65的主题中的权限集可以可选地描述被指派给媒体安全控制器或呈现设备中的至少一个的一个或多个权限。
在实例68中,实例65的主题中的证书修订列表可以可选地包括版本标识符。
各种实施例可以具有以上所述的操作特征的不同组合。例如,以上所述的方法的所有可选特征还可以关于非瞬态计算机可读存储介质实施。实例中的详情可以在一个或多个实施例中的任意位置使用。
实例69-72都是包括指令的非瞬态计算机可读存储介质,当计算系统执行指令时引起计算系统执行实例65-68的操作。
各种实施例可以具有以上所述的操作特征的不同组合。例如,以上所述的方法的所有可选特征还可以关于装置实施。详情可以在一个或多个实施例中的任意位置使用。
实例73-76都是用于修订证书中限定的权限的系统,该系统包括用于执行实例65-68的操作的装置。
实例77是用于利用证书修订列表来修订设备的权限的装置,该装置包括1)用于存储证书的存储器;和2)耦合到存储器的处理设备,用于识别所述设备以执行与呈现媒体项目相关的行为、识别描述指派给设备的权限集的证书、识别证书修订列表中的权限集的变化、以及允许设备基于证书修订列表中的变化而执行用于呈现媒体项目的行为。
在实例78中,实例77的主题中的处理设备可以可选地进一步确定证书修订列表是否过期,并基于确定证书修订列表过期而接收当前证书修订列表。
在实例79中,实例77的主题中的变化可以可选地与用于呈现媒体项目的质量水平相关。
在实例80中,实例77的主题中的权限集可以可选地描述被指派给媒体安全控制器或呈现设备中的至少一个的一个或多个权限。
在实例81中,实例77的主题中的证书修订列表可以可选地包括版本标识符。
各种实施例可以具有以上所述的操作特征的不同组合。例如,以上所述的装置的所有可选特征还可以关于本文中所述的方法或过程实施,实例中的详情可以在一个或多个实施例中的任意位置使用。
实例82是用于利用证书修订列表来修订设备权限的方法,该方法包括1)识别用于执行与呈现媒体项目相关的行为的设备;2)识别描述被指派给设备的权限集的证书;3)识别证书修订列表中的权限集的变化;和4)允许设备基于证书修订列表中的变化来执行用于呈现媒体项目的行为。
在实例83中,实例82的主题可以可选地进一步包括确定证书修订列表是否过期,和确定基于证书修订列表过期而接收当前证书修订列表。
在实例84中,实例82的主题中的变化可以可选地与用于呈现媒体项目的质量水平相关。
在实例85中,实例82的主题中的权限集可以可选地描述被指派给媒体安全控制器或呈现设备中的至少一个的一个或多个权限。
在实例86中,实例82的主题中的证书修订列表可以可选地包括版本标识符。
各种实施例可以具有以上所述的操作特征的不同组合。例如,以上所述的方法的所有可选特征还可以关于非瞬态计算机可读存储介质实施。实例中的详情可以在一个或多个实施例中的任意位置使用。
实例87-91是包括指令的非瞬态计算机可读存储介质,当计算系统执行指令时引起计算系统执行实例82-86的操作。
各种实施例可以具有以上所述的操作特征的不同组合。例如,以上所述的方法的所有可选特征还可以关于非瞬态计算机可读存储介质实施。实例中的详情可以在一个或多个实施例中的任意位置使用。
实例92-96都是用于利用证书修订列表来修订设备的权限的系统,其包括用于执行实例82-86的操作的装置。
在以上描述中,阐述许多细节。然而,本领域的普通技术人员将理解,可以再没有这些具体细节的情况下实践实施例。在一些情况中,众所周知的结构和设备以方框图的形式而非详细地示出,从而避免模糊说明书。
Claims (35)
1.一种用于利用媒体安全控制器保护媒体项目的方法,包括:
响应于呈现设备读取授权文件,由集成在媒体存储设备内的媒体安全控制器将消息发送到所述呈现设备,所述消息使所述呈现设备从所述媒体存储设备的存储器读取一部分数据并将所述一部分数据提供给所述媒体存储设备的所述媒体安全控制器,其中所述媒体存储设备的所述存储器中的所述数据与所述呈现设备要呈现的媒体项目相关;
由所述媒体存储设备的所述媒体安全控制器从所述呈现设备接收所述一部分数据;
由所述媒体存储设备的所述媒体安全控制器变换所述一部分数据;和
由所述媒体存储设备的所述媒体安全控制器将经变换的一部分数据发送到所述呈现设备。
2.根据权利要求1所述的方法,其中所述经变换的一部分数据包括使所述呈现设备呈现所述媒体项目的数据。
3.根据权利要求1所述的方法,其中变换所述一部分数据包括下述动作的至少一个:解密所述一部分数据、加密所述一部分数据或压缩所述一部分数据。
4.根据权利要求1所述的方法,其中所述媒体安全控制器包括用于存储对应于所述经变换的一部分数据的授权密钥的第二存储器。
5.根据权利要求4所述的方法,其中变换所述一部分数据包括:由所述媒体安全控制器利用所述授权密钥来解密所述一部分数据。
6.根据权利要求1所述的方法,进一步包括:
基于公钥基础设施加密,执行在所述媒体安全控制器和所述呈现设备之间的第一次握手;
基于对称密钥加密,执行所述媒体安全控制器和所述呈现设备之间的第二次握手;和
基于所述第一次握手和所述第二次握手,建立与所述呈现设备的安全会话。
7.根据权利要求1所述的方法,其中变换所述一部分数据包括:
由所述媒体安全控制器接收指定用于变换所述一部分数据的授权密钥的指令集,其中所述指令集能够启动取证分析,从而将所述媒体安全控制器标识到第三方;和
由所述媒体安全控制器利用所述授权密钥建立所述经变换的一部分数据,其中所述经变换的一部分数据将所述媒体安全控制器标识到所述第三方。
8.根据权利要求1所述的方法,进一步包括:
同步所述媒体安全控制器的第一证书修订列表和所述呈现设备的第二证书修订列表,其中所述第一证书修订列表和所述第二证书修订列表描述权限集的一个或多个变化。
9.一种用于利用媒体安全控制器保护媒体项目的方法,包括:
响应于呈现设备读取授权文件,由所述呈现设备从集成在媒体存储设备内的媒体安全控制器接收消息,所述消息指示所述呈现设备从所述媒体存储设备的存储器读取一部分数据并将所述一部分数据提供给所述媒体存储设备的所述媒体安全控制器,其中所述媒体存储设备的所述存储器中的所述数据与所述呈现设备要呈现的媒体项目相关;
由所述呈现设备将所述一部分数据发送到所述媒体存储设备的所述媒体安全控制器;和
由所述呈现设备从所述媒体存储设备的所述媒体安全控制器接收经变换的一部分数据。
10.根据权利要求9所述的方法,进一步包括:
基于从所述媒体安全控制器接收的所述经变换的一部分数据而建立回放映射,其中所述回放映射包括用于呈现所述媒体项目的数据。
11.根据权利要求9所述的方法,进一步包括:
基于从所述媒体安全控制器接收的所述经变换的一部分数据而呈现所述媒体项目。
12.根据权利要求9所述的方法,进一步包括:
利用与所述媒体存储设备共享的会话密钥来处理所述经变换的一部分数据。
13.根据权利要求12所述的方法,其中处理包括下述动作的至少一个:解密所述经变换的一部分数据、加密经变换的一部分数据或压缩经变换的一部分数据。
14.根据权利要求9所述的方法,进一步包括:
基于公钥基础设施加密,执行在所述媒体存储设备和所述呈现设备之间的第一次握手;
基于对称密钥加密,执行在所述媒体存储设备和所述呈现设备之间的第二次握手;和
基于所述第一次握手和所述第二次握手,建立与所述媒体安全控制器的安全会话。
15.根据权利要求9所述的方法,进一步包括:
同步所述呈现设备的第一证书修订列表和所述媒体安全控制器的第二证书修订列表,其中所述第一证书修订列表和所述第二证书修订列表描述权限集的一个或多个变化。
16.一种用于利用媒体安全控制器保护媒体项目的装置,包括:
用于存储媒体项目的存储器;和
耦合到所述存储器并且集成在媒体存储设备内的媒体安全控制器,所述媒体安全控制器包括处理设备用于执行以下步骤:
响应于呈现设备读取授权文件,将消息发送到所述呈现设备,所述消息使所述呈现设备从所述媒体存储设备的存储器读取一部分数据并将所述一部分数据提供给所述媒体存储设备的所述媒体安全控制器,其中所述媒体存储设备的所述存储器中的所述数据与所述呈现设备要呈现的媒体项目相关;
从所述呈现设备接收所述一部分数据;
变换所述一部分数据;和
将经变换的一部分数据发送到所述呈现设备。
17.根据权利要求16所述的装置,其中所述经变换的一部分数据包括使所述呈现设备呈现所述媒体项目的数据。
18.根据权利要求16所述的装置,其中所述媒体安全控制器通过解密所述一部分数据、加密所述一部分数据或压缩所述一部分数据中的至少一个来变换所述一部分数据。
19.根据权利要求16所述的装置,其中所述媒体安全控制器进一步包括用于存储对应于所述经变换的一部分数据的授权密钥的第二存储器。
20.根据权利要求19所述的装置,其中所述媒体安全控制器进一步:
利用所述授权密钥来解密所述一部分数据。
21.根据权利要求16所述的装置,其中所述媒体安全控制器进一步:
基于公钥基础设施加密,在所述媒体安全控制器和所述呈现设备之间执行第一次握手;
基于对称密钥加密,在所述媒体安全控制器和所述呈现设备之间执行第二次握手;和
基于所述第一次握手和所述第二次握手,建立与所述呈现设备的安全会话。
22.根据权利要求16所述的装置,其中所述媒体安全控制器通过以下步骤变换所述一部分数据:
接收指定用于变换所述一部分数据的授权密钥的指令集,其中所述指令集能够启动取证分析,从而将所述媒体安全控制器标识到第三方;和
利用所述授权密钥建立所述经变换的一部分数据,其中所述经变换的一部分数据将所述媒体安全控制器标识到所述第三方。
23.根据权利要求16所述的装置,其中所述媒体安全控制器进一步:
同步所述媒体安全控制器的第一证书修订列表和所述呈现设备的第二证书修订列表,其中所述第一证书修订列表和所述第二证书修订列表描述权限集的一个或多个变化。
24.一种用于利用媒体安全控制器保护媒体项目的装置,包括:
用于存储用于呈现媒体项目的数据的存储器;和
处理设备,其耦合到所述存储器以:
响应于所述处理设备读取授权文件,从集成在媒体存储设备内的媒体安全控制器接收消息,以从所述媒体存储设备的存储器读取一部分数据并将所述一部分数据提供给所述媒体安全控制器,其中所述媒体存储设备的所述存储器中的所述数据与所述处理设备要呈现的所述媒体项目相关;
将所述一部分数据发送到所述媒体存储设备的所述媒体安全控制器;和
从所述媒体存储设备的所述媒体安全控制器接收经变换的一部分数据。
25.根据权利要求24所述的装置,其中所述处理设备进一步:
基于从所述媒体安全控制器接收的所述经变换的一部分数据而建立回放映射,其中所述回放映射包括用于呈现所述媒体项目的数据。
26.根据权利要求24所述的装置,其中所述处理设备进一步:
基于从所述媒体安全控制器接收的所述经变换的一部分数据而呈现所述媒体项目。
27.根据权利要求24所述的装置,其中所述处理设备进一步:
利用与所述媒体存储设备共享的会话密钥来处理所述经变换的一部分数据。
28.根据权利要求27所述的装置,其中处理所述经变换的一部分数据包括使所述处理设备执行下述动作的至少一个:解密所述经变换的一部分数据、加密经变换的一部分数据或压缩经变换的一部分数据。
29.根据权利要求24所述的装置,其中所述处理设备进一步:
基于公钥基础设施加密,执行与所述媒体安全控制器的第一次握手;
基于对称密钥加密,执行与所述媒体安全控制器的第二次握手;和
基于所述第一次握手和所述第二次握手,建立与所述媒体安全控制器的安全会话。
30.根据权利要求24所述的装置,其中所述处理设备进一步:
同步第一证书修订列表和所述媒体安全控制器的第二证书修订列表,其中所述第一证书修订列表和所述第二证书修订列表描述权限集的一个或多个变化。
31.一种包括指令的非瞬态计算机可读存储介质,当由集成在媒体存储设备内的处理设备执行时所述指令引起所述处理设备执行包括以下步骤的操作:
响应于呈现设备读取授权文件,由所述媒体存储设备的所述处理设备将消息发送到所述呈现设备,所述消息使所述呈现设备从所述媒体存储设备的存储器读取一部分数据并将所述一部分数据提供给所述媒体存储设备的所述处理设备,其中所述媒体存储设备的所述存储器中的所述数据与所述呈现设备要呈现的媒体项目相关;
由所述媒体存储设备的所述处理设备从所述呈现设备接收所述一部分数据;
由所述媒体存储设备的所述处理设备变换所述一部分数据;和
由所述媒体存储设备的所述处理设备将经变换的一部分数据发送到所述呈现设备。
32.根据权利要求31所述的非瞬态计算机可读存储介质,其中变换所述一部分数据包括:利用存储在媒体安全存储器的存储器中的授权密钥来解密所述一部分数据。
33.根据权利要求31所述的非瞬态计算机可读存储介质,其中所述操作进一步包括:
同步所述媒体存储设备的第一证书修订列表和所述呈现设备的第二证书修订列表,其中所述第一证书修订列表和所述第二证书修订列表描述权限集的一个或多个变化。
34.一种包括指令的非瞬态计算机可读存储介质,当由呈现设备中的处理设备执行时所述指令引起所述处理设备执行包括以下步骤的操作:
响应于所述处理设备读取授权文件,由所述处理设备从集成在媒体存储设备内的媒体安全控制器接收消息,所述消息指示所述处理设备从所述媒体存储设备的存储器读取一部分数据并将所述一部分数据提供给所述媒体存储设备的所述媒体安全控制器,其中所述媒体存储设备的所述存储器中的所述数据与所述处理设备要呈现的媒体项目相关;
由所述处理设备将一部分数据发送到所述媒体存储设备的所述媒体安全控制器;和
由所述处理设备从所述媒体存储设备的所述媒体安全控制器接收经变换的一部分数据。
35.根据权利要求34所述的非瞬态计算机可读存储介质,所述操作进一步包括:
基于从所述媒体安全控制器接收的所述经变换的一部分数据而建立回放映射,其中所述回放映射包括用于呈现所述媒体项目的数据。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201261673023P | 2012-07-18 | 2012-07-18 | |
US61/673,023 | 2012-07-18 | ||
US201261683679P | 2012-08-15 | 2012-08-15 | |
US61/683,679 | 2012-08-15 | ||
PCT/US2013/050947 WO2014015073A1 (en) | 2012-07-18 | 2013-07-17 | Protecting media items using a media security controller |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104471581A CN104471581A (zh) | 2015-03-25 |
CN104471581B true CN104471581B (zh) | 2018-04-20 |
Family
ID=49949235
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380037869.7A Active CN104471581B (zh) | 2012-07-18 | 2013-07-17 | 利用媒体安全控制器保护媒体项目 |
Country Status (6)
Country | Link |
---|---|
US (3) | US10120985B2 (zh) |
EP (1) | EP2875462A4 (zh) |
JP (1) | JP6189438B2 (zh) |
KR (1) | KR102151284B1 (zh) |
CN (1) | CN104471581B (zh) |
WO (1) | WO2014015073A1 (zh) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9342695B2 (en) | 2012-10-02 | 2016-05-17 | Mordecai Barkan | Secured automated or semi-automated systems |
US11188652B2 (en) * | 2012-10-02 | 2021-11-30 | Mordecai Barkan | Access management and credential protection |
KR20140129683A (ko) * | 2013-04-30 | 2014-11-07 | (주)잉카엔트웍스 | Drm 방식으로 암호화된 멀티미디어 컨텐츠를 재생하는 단말 장치 및 방법 |
US9887837B2 (en) * | 2013-10-31 | 2018-02-06 | Verimatrix, Inc. | System and method for synchronized key derivation across multiple conditional access servers |
KR102407066B1 (ko) * | 2014-09-17 | 2022-06-08 | 크라이프토그라피 리서치, 인코포레이티드 | 집적 회로를 위한 상이한 엔티티들의 특권들의 관리 |
US10735816B2 (en) | 2014-10-02 | 2020-08-04 | Lg Electronics Inc. | Content reproduction method and device |
US10642962B2 (en) | 2015-07-28 | 2020-05-05 | Western Digital Technologies, Inc. | Licensable function for securing stored data |
US10417393B2 (en) | 2015-11-04 | 2019-09-17 | Screening Room Media, Inc. | Detecting digital content misuse based on digital content usage clusters |
CN108351930B (zh) * | 2015-11-19 | 2021-10-01 | 罗伯特·博世有限公司 | 通过联网计算机对嵌入式设备进行的安全访问控制方法 |
CN105491409B (zh) * | 2015-12-24 | 2019-01-08 | 北京腾锐视讯科技有限公司 | 一种数字电视系统中增强ca系统 |
US10452819B2 (en) | 2017-03-20 | 2019-10-22 | Screening Room Media, Inc. | Digital credential system |
CN107563171B (zh) * | 2017-09-11 | 2020-08-28 | 英业达科技有限公司 | 具有生物特征辨识模块的储存装置 |
US20200205155A1 (en) * | 2018-12-20 | 2020-06-25 | Arris Enterprises Llc | Downloading and storing video content offline to manage video playback |
JP2020119298A (ja) * | 2019-01-24 | 2020-08-06 | キオクシア株式会社 | メモリシステム |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100576904C (zh) * | 2004-12-07 | 2009-12-30 | 数码基石有限公司 | 用于辅助条件访问服务器的方法和设备 |
CN101951360A (zh) * | 2009-07-10 | 2011-01-19 | 迪斯尼实业公司 | 可互操作的密钥箱 |
CN102158734A (zh) * | 2003-10-27 | 2011-08-17 | 松下电器产业株式会社 | 内容再现控制方法及内容再现控制终端 |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5504892A (en) * | 1994-09-08 | 1996-04-02 | Taligent, Inc. | Extensible object-oriented file system |
EP1169856B1 (en) | 1999-03-15 | 2004-09-22 | Thomson Licensing S.A. | A global copy protection system for digital home networks |
US6185666B1 (en) * | 1999-09-11 | 2001-02-06 | Powerquest Corporation | Merging computer partitions |
JP2001358708A (ja) * | 1999-10-29 | 2001-12-26 | Matsushita Electric Ind Co Ltd | コンテンツ情報変換装置、コンテンツ情報変換方法、及びプログラム記憶媒体 |
US6772340B1 (en) * | 2000-01-14 | 2004-08-03 | Microsoft Corporation | Digital rights management system operating on computing device and having black box tied to computing device |
US6615365B1 (en) * | 2000-03-11 | 2003-09-02 | Powerquest Corporation | Storing a computer disk image within an imaged partition |
US8055899B2 (en) | 2000-12-18 | 2011-11-08 | Digimarc Corporation | Systems and methods using digital watermarking and identifier extraction to provide promotional opportunities |
JP2002290945A (ja) * | 2001-03-23 | 2002-10-04 | Matsushita Electric Ind Co Ltd | ディジタル放送受信装置及びメモリカード接続アダプター |
EP1470497A1 (en) * | 2002-01-12 | 2004-10-27 | Coretrust, Inc. | Method and system for the information protection of digital content |
JP2004151195A (ja) * | 2002-10-29 | 2004-05-27 | Sony Corp | 通信装置、通信方法、プログラム、記憶媒体、端末装置 |
US20060277607A1 (en) * | 2003-05-01 | 2006-12-07 | Chung Hyun-Kwon | Authenticating method and apparatus |
WO2005106681A1 (ja) * | 2004-04-30 | 2005-11-10 | Matsushita Electric Industrial Co., Ltd. | セキュアデバイスを利用したデジタル著作権管理 |
JP2006195586A (ja) * | 2005-01-11 | 2006-07-27 | Ntt Docomo Inc | コンテンツ配信ノード、ネットワーク機器および販売システム |
JP5171619B2 (ja) * | 2005-06-23 | 2013-03-27 | トムソン ライセンシング | デジタル著作権管理(drm)に対応した携帯再生装置、方法及びシステム |
KR100656402B1 (ko) * | 2005-11-26 | 2006-12-11 | 한국전자통신연구원 | 디지털 콘텐츠를 안전하게 배포하는 방법 및 그 장치 |
US20100310076A1 (en) * | 2009-06-04 | 2010-12-09 | Ron Barzilai | Method for Performing Double Domain Encryption in a Memory Device |
WO2011001239A1 (en) | 2009-06-30 | 2011-01-06 | Nokia Corporation | Method, apparatus and computer program product for providing protected content to one or more devices by reacquiring the content from a service |
US8755526B2 (en) | 2009-07-10 | 2014-06-17 | Disney Enterprises, Inc. | Universal file packager for use with an interoperable keychest |
-
2013
- 2013-07-17 WO PCT/US2013/050947 patent/WO2014015073A1/en active Application Filing
- 2013-07-17 CN CN201380037869.7A patent/CN104471581B/zh active Active
- 2013-07-17 US US14/415,568 patent/US10120985B2/en active Active
- 2013-07-17 KR KR1020157001235A patent/KR102151284B1/ko active IP Right Grant
- 2013-07-17 JP JP2015523235A patent/JP6189438B2/ja active Active
- 2013-07-17 EP EP13820051.4A patent/EP2875462A4/en not_active Withdrawn
-
2018
- 2018-09-05 US US16/122,362 patent/US10460084B2/en active Active
-
2019
- 2019-10-28 US US16/665,113 patent/US10902096B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102158734A (zh) * | 2003-10-27 | 2011-08-17 | 松下电器产业株式会社 | 内容再现控制方法及内容再现控制终端 |
CN100576904C (zh) * | 2004-12-07 | 2009-12-30 | 数码基石有限公司 | 用于辅助条件访问服务器的方法和设备 |
CN101951360A (zh) * | 2009-07-10 | 2011-01-19 | 迪斯尼实业公司 | 可互操作的密钥箱 |
Also Published As
Publication number | Publication date |
---|---|
EP2875462A1 (en) | 2015-05-27 |
US10902096B2 (en) | 2021-01-26 |
JP2015529892A (ja) | 2015-10-08 |
US20150178478A1 (en) | 2015-06-25 |
KR102151284B1 (ko) | 2020-09-02 |
EP2875462A4 (en) | 2016-03-16 |
CN104471581A (zh) | 2015-03-25 |
US10120985B2 (en) | 2018-11-06 |
US20190018934A1 (en) | 2019-01-17 |
US10460084B2 (en) | 2019-10-29 |
US20200125697A1 (en) | 2020-04-23 |
KR20150037840A (ko) | 2015-04-08 |
JP6189438B2 (ja) | 2017-08-30 |
WO2014015073A1 (en) | 2014-01-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104471581B (zh) | 利用媒体安全控制器保护媒体项目 | |
US11580570B2 (en) | Method and apparatus for dynamic, real-time ad insertion based on meta-data within a hardware based root of trust | |
US10582256B2 (en) | Method and apparatus for building a hardware root of trust and providing protected content processing within an open computing platform | |
US11234033B2 (en) | Decentralized content distribution | |
US8682750B2 (en) | Method and apparatus for enabling purchase of or information requests for objects in digital content | |
TWI827867B (zh) | 基於區塊鏈之檔案儲存裝置與檔案存取授權系統及其方法 | |
AU2012275667A1 (en) | Method and apparatus for dynamic, real-time ad insertion based on meta-data within a hardware based root of trust | |
CN109344566A (zh) | 一种基于区块链的版权管理方法、装置及设备 | |
WO2020048290A1 (zh) | 用于发行证书的系统和方法 | |
KR102321204B1 (ko) | 스마트 재산화를 이용한 디지털 콘텐츠의 지적재산권 보호 방법 및 그 시스템 | |
KR20010095907A (ko) | 새로운 보안 기술을 이용한 컨텐츠 제공 시스템 및 그제공 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |