具有可更新内容保护的内容分布的制作方法

文档序号:6770539阅读:135来源:国知局
专利名称:具有可更新内容保护的内容分布的制作方法
具有可更新内容保护的内容分布相关申请本申请是于2009年2月25日提交的美国临时专利申请61/155,489和于2009年 3月10日提交的美国临时专利申请61/159,034的接续案,并且要求上述申请的优先权。本申请与于2004年9月20日提交的共同未决的美国专利申请No. 10/945,623相关,并且要求该申请的优先权,其以引用的方式并入本文。
背景技术
将诸如视频或音频内容的媒体内容打包到数字媒体文件已使内容的交换对于用户而言非常容易且便捷。然而,用户自由交换内容可能侵犯内容所有人的所有权。确保仅已授权用户交换已授权内容的一个领域是提供验证平台、用户以及内容的机制。在一个示例中,对用于接收和重放内容的硬件进行验证,并且该硬件可被称为“可信任的”。然而,在可信任的硬件的验证中仍然存在漏洞,从而允许盗版者及其他非法用户接收并且复制内容文件,侵犯版权并且犯下公开盗窃。内容所有人也想要限制版权受保护内容的复制。存在许多使得版权受保护内容的传输非常困难的技术示例。当物理媒体被用于永久地或临时地将内容存储在例如电子购买、租用以及订阅电影服务行业模型中时,内容所有人或其获许可人使用各种加密绑定方法。这些方法典型地使用加密函数(function)中的唯一媒体或装置标识符或类似的播放器属性来保护内容免受复制或传输,从而使该内容据说是被绑定于装置。通常,这种内容的绑定基于特定的重放装置,这对于用户而言是不受欢迎的。用户可能想要在与已接收内容的装置的不同的装置上播放其内容或者用户可能想要在若干个个人装置之间传输内容。作为当前技术的示例,通过被称为高级访问内容系统(Advanced Access Content System, AACS)的系统来保护蓝光电影光盘。对于该系统中所需的加密函数中的某些加密函数(例如,“AES-H”和“AES-G3”)而言,AACS定义了任意常数。AACS已公开它们所选的常数。这结果成了攻击者进行逆向工程播放器的裨益,因为它们仅寻找已公开常数并且查看这些常数参考何处以找到敏感的加密代码,作为找到密钥的第一步。显然,可以将加密常数保存为机密信息。这由4C实体及其所谓可记录媒体的内容保护(Content Protection for Recordable Media,CPRM)的系统来实现。然而,数以百计的制造商和数以千计的工程师需要学习常数,因此他们不会长久地保密。本领域的任何技术人员将承认,加密计算的精确细节通常是任意的并且可以进行变更而无需改变操作的基本安全性。例如,总是可以由加法操作来代替异或操作。同样,可以通过常数操作来变换密值而不会影响其安全性。诸如此类的变更如果它们保持机密,将对试图逆向工程的攻击者施以明显的障碍。在现有技术中,于2007年10月31日提交的美国申请公开No. 2008/0133938、序列号为No. 11/981,977的美国专利“自行保护数字内容”公开了提供可更新性的另一种方式的示例。较之固件而言其方法在系统中以更高的级别进行操作,并且不允许低级别加密操作的改变。这没有提供针对逆向工程来找到密钥的保护。这也不防护不诚实雇员泄露机密fn息ο一种方法涉及内容的对等操作,其中用户在他们自身之间传输数据。为了保护版权并且为了避免内容的盗版,可采用“非自治”对等系统。该系统为“非自治的”在于其包括这些机制仅允许通过集中权限访问内容,同时允许用户在他们之间传输媒体内容。可以在发明名称均为“经由对等操作的请求的媒体”的美国专利No. 7,165,050和美国专利公开No. 20060064386中找到非自治对等系统的示例。可以在于2/11/09提交的发明名称为“简单的非自治环境、水印以及认证”的美国专利申请No. 12/369,708中找到可用在非自治对等系统中的组件的制造和绑定的方法的示例。


图1示出了内容分布(distribution)系统的示例。图2示出了内容保护方案的更新过程的实施例。图3示出了使用可更新函数访问媒体装置上的安全内容的实施例。
具体实施例方式以下讨论使用可能变得混淆的若干术语。该讨论使用术语“媒体”和“媒体装置”来指代包含“内容”的非易失性存储装置。“内容”包括任何类型的经验内容,并且包括但不限于电影、电视节目、已记录的表演、视频文件、音频文件以及游戏。媒体可包括可移动媒体, 诸如闪存驱动器、所谓的“拇指”驱动器、存储卡、嵌入式闪存以及记忆棒,但没有限制性,也不应受这些示例的任何暗示。媒体装置可与“重放装置”接口连接,其中重放装置是具有也被称为处理器或片上系统(SoC)的控制器、存储器以及与不论是嵌入式媒体还是可移动媒体的媒体接口连接的能力的任何装置。示例包括但不限于电视、视频投影仪、数字录像机、机顶盒、自助服务机、 个人计算机以及包括智能电话、媒体播放器、上网本以及平板电脑在内的移动计算装置。尽管以下讨论可包括通常与本发明和以上申请中所陈述的简单非自治对等 (Simple Non-Autonomous Peering, SNAP)系统相关联的示例和原理,但那些示例仅仅帮助理解此处的实施例并且提供此处实施例的可能实施方式的示例。此处所描述的实施例允许快速且容易地改变对常数及其他加密计算的机密变化, 即便是基于逐个电影。这些实施例甚至对制造商隐瞒这些细节,直到其在现场实际被使用为止。应当注意到,在背景技术中所讨论的SPDC方法和此处所讨论的方法可用于相同的系统中。SPDC的组件以远高于固件的级别操作,并且此处的实施例允许低级别加密函数的改变。图1示出了具有可更新内容保护的内容分布系统10。在广泛分布系统中的可下载内容中出现的问题在于刷新或更新用于确保内容不被泄露的内容保护的能力。通过提供可更新保护方案,内容分布系统允许周期地和/或在当前内容保护方案被泄露时更新保护方案。在图1中,内容准备和递送模块20准备跨域网络22而被递送到消费者装置的内容。内容准备和递送可包括与SNAP相关的特征,诸如在本发明及上述申请中所讨论的SNAP 条带化(striping)和绑定方案或意在防止内容的盗版的任何其他类型的加密、编码或保护方案。内容准备和递送系统还可提供诸如内容的购买、租赁和订阅、对内容提供者的许可证计费和支出、更新内容库的服务。如上所提及,重放装置30可以是任何类型的重放或内容访问装置。重放装置,作为此处所用的术语,包括可为可移动的或嵌入式的播放器31和媒体40。播放器30具有执行将进一步讨论主题的过程中的多个过程的处理器或片上系统(SoC)32。播放器30具有稍后将更加详细讨论的用于存储加密函数的变化的变量储存器36。播放器31还接口连接至媒体装置40,该媒体装置40可由诸如记忆棒、SD卡或拇指驱动器的可移动媒体组成或者可以是嵌入式装置。媒体装置或媒体40具有在如将进一步更加详细讨论的可更新保护方案中所采用的变量选择器44和变量储存器42。在SNAP环境示例中,播放器31通常将是具有SoC的已验证SNAP服从(compliant) 装置,其中由装置制造商60安装的唯一密钥来识别SoC。同样,媒体装置40具有由媒体制造商50安装的唯一密钥。这些密钥的目的在于允许播放器31与媒体装置40之间的加密认证以形成重放装置30。此外,其允许内容准备和递送20与媒体装置40之间的认证。在一个实施例中,加密认证基于诸如用于AACS和CPRM中的媒体密钥块。然而,诸如公钥/私钥的其他加密协议在本发明的范围之内。变量储存器36和42存储预定数量的变量。作为此处所用的术语“变量”是用于得出访问内容的必要密钥和/或函数的微码的特定版本。此处所用的“微码函数”是指由播放器用于执行加密和其他媒体相关函数的一组固件指令、算法以及常数。在制造时,重放装置30可在其中存储有某些预定数量的这些变量。这些变量被加密地存储在播放器装置 30和媒体装置40中。另外,可存在若干不同类型的变量。在SNAP系统中,例如,可存在不同类型的变量。第一变量可用于得出与媒体装置相关的唯一代码,并且第二变量可结合用于媒体的另一唯一标识符来验证媒体。第三变量可用于得出对被下载到媒体的内容解锁或解密的密钥。根据内容的保护需要,可使用其他类型的变量,或者可在任何特定系统中不使用给出的示例变量。由于预定数量的变量随着时间会被用尽,因此可更新保护方案提供根据需要更新变量的手段。该系统一般通过利用下载的内容发送新变量来将此实现。图1的媒体装置40 存储用于重放装置重放的下载内容。媒体具有在其中存储有更多变量的变量储存器42。另外,媒体持久地存储某种变量选择器44。这允许重放装置的SoC来确定何种变量用于得出各种微码函数变量。下面详细讨论该变量选择器的特定示例。变量选择器可被存储在变量储存器42中或可在媒体上的任何位置。例如,设想最初对所有内容配置变量#1的系统。由于某些预定义时段的经过或由于担心变量#1已被泄露,变量#2变为激活。下载有新内容的变量选择器识别变量#2。如果重放装置不具有变量#2,其最初仅提供有变量#1,则重放装置可以访问媒体的持久储存器来访问变量#2。在上述SNAP-特定的实施例中,变量选择器44由选择文件组成。该选择文件指定要被用于访问内容文件的变量文件和被用于解密变量文件的密钥。变量文件包含要被用于访问内容文件的微码函数变量。
由于选择文件包含加密密钥,因此其必须仅在播放器装置30与媒体装置40之间成功的加密认证之后才被递送。例如,在CPRM中,这可通过将选择文件存储在CPRM媒体装置的受保护区域中来得以实现。然而,在认证之后递送秘密信息的其他方法是公知的并且在本发明的范围之内。注意到,由于变量对于SOC 32的指令组是唯一的,因此如果存在由系统支持的多于一种类型的S0C,则每个变量必须具有若干风格(flavor),其中每种类型的SOC—个风格。如果变量正在被递送在媒体装置40上在变量储存器42中,则其必须以系统支持的SOC 的所有风格来递送。在变量储存器42中将变量配置在现有的媒体上,并且在系统中定义新的SOC类型是可能的。在这种情况下,被配置在媒体装置上的变量将不包含适于新的SOC类型的风格。 为了使具有新型SOC 32的重放装置30播放旧媒体装置40上的内容,这种重放装置30必须在其自身的变量储存器36具有先前被递送到媒体装置变量储存器42中的所有变量。图2示出了该过程的实施例的流程图。在70,在下载内容或插入内容先前诸如在自助服务机已被下载至其的媒体装置时,重放装置访问媒体的持久储存器以确定所指定的变量。注意到,该过程可针对任何给定保护方案中所需的每种变量进行重复,并且选择器可被提供有每个内容文件,诸如对应于每个电影的内容文件,其中特定电影使用与存储在同一媒体上的其他电影不同的变量。在72,一旦确定指定变量的版本或数量,就访问重放装置上的已存储的变量。过程的该部分可变得可选,由于装置可变得“意识到”所指定的变量版本将不存在于已存储的变量中并且其可能直接到媒体以取回正确的变量。可替换地,播放器可能不被提供有任何变量。在74,重放装置,意指重放装置上的处理器或SoC,确定重放装置是否具有指定变量。如先前所提及的那样,该部分可能变得可选,因为时间前行并且已存储变量变得作废, 或者如果重放装置未具有在制造时提供的任何变量。如果重放装置具有匹配的变量,则在 84该变量被用于访问内容或执行其他加密或媒体相关的操作。如先前所讨论的那样,这可根据需要进行重复以访问不同类型的变量。返回到74,如果重放装置未找到匹配的变量,则在80重放装置访问媒体上的持久储存器。这表明了该内容保护方案的可更新性,其中可周期性地或在发生已配置变量的怀疑泄露之后在媒体上配置新变量和新选择器。然后在84该新变量被用于访问内容。将配置多于预定数量的变量并且之后授权新的平台或重放装置是可能的。稍后添加的新播放器将被提供至此所释放的所有变量。在SNAP系统的特定示例中,可以看出变量将如何被用于访问内容,如在图2中的 84所示的那样。图3示出了 SNAP-特定的实施例的示例。在100,变量被用于解密媒体验证微码。在此示例中,媒体验证是两步过程。第一类型的变量被用于解密媒体的缺陷映射 (map)。如先前所提及的那样,媒体的制造商可提供用于媒体某种唯一 ID代码。缺陷映射经历一种形式的“混乱”,然后经历加密,该加密可被适当的变量解密和解码并且与媒体的实际缺陷映射相比较以确保它们相匹配。在102得出该函数。媒体验证过程中的第二步骤是使用媒体的硬件缺陷映射及某些其他特性,诸如其序列号等,以便在104得出硬件认证代码(HAC)。然后在106将此与现有的HAC相比较以进一步确保媒体是有效的。
另一类型的变量提供将密钥恢复以解密实际内容的函数。在SNAP示例中,在内容文件的每个实例中内容已被分段、加密并且条带化。所提供的密钥特定于具有对存储在媒体上的内容的特定加密和分段的特定实例。一旦使用适当的变量,就在108获得密钥并且在110解密条带化。然而,如以上所提及的那样,所使用的不同类型和数量的变量以及不同数量的变量的版本取决于内容分布系统和该内容的保护需求。对于以上给出的具体示例而言没有任何限制,也不应有任何暗示。按照这种方式,对于内容分布系统可以无限地更新内容保护方案。这允许系统是可升级的、牢靠的并且不大可能为盗版者所害。尽管以上讨论聚焦于可更新微码函数,但本领域的技术人员将理解其适用于其他加密概念,诸如媒体密钥束(MKB)和公钥/密钥对。尽管已经关于这一点描述了在SNAP环境中用于可更新安全事务的方法和设备的特定实施例,但目的不在于这些具体参考被认为是对本发明范围的限制,除非在以下权利要求中所陈述的范围内。
权利要求
1.一种应用于重放装置中的内容文件的更新加密的受处理器控制的方法,所述重放装置具有被配置为执行指令的处理器,所述方法使得所述处理器进行确定将要在重放所述内容文件时使用的至少一个微码函数的指定变量;确定在所述重放装置上的内部存储器中是否存储有变量以确定所述指定变量是否被包括在所存储的变量中;如果所述指定变量未包括在所存储的变量中,则从位于与所述重放装置通信的媒体装置中的存储器中的变量储存器取回所述指定变量;以及使用所述指定变量访问所述内容文件。
2.根据权利要求1所述的方法,其中,确定所述指定变量包括访问在其中中识别所述指定变量的选择文件。
3.根据权利要求2所述的方法,其中,访问所述选择文件包括访问位于所述媒体装置中的所述存储器中的变量储存器中的选择文件。
4.根据权利要求1所述的方法,其中,访问存储在所述重放装置上的变量包括访问在制造时就被加载在所述重放装置上的预定数量的变量。
5.根据权利要求1所述的方法,其中,从所述媒体装置上的所述存储器的变量储存器中取回所述指定变量包括取回在下载所述内容文件时就被载入到所述存储器中的指定变量。
6.根据权利要求1所述的方法,其中,确定在内部存储器中是否存储有变量包括确定在内部存储器中未存储变量。
7.根据权利要求1所述的方法,还包括对至少一种其他类型的变量重复所述确定、访问、取回以及使用。
8.根据权利要求1所述的方法,其中,使用所述指定变量访问所述内容文件包括在重放所述内容文件之前使用所述指定变量验证所述媒体装置。
9.根据权利要求1所述的方法,其中,使用所述指定变量访问所述内容文件包括使用所述指定变量解密所述内容文件的段以允许所述内容文件的重放。
10.根据权利要求1所述的方法,还包括在所述重放装置上存储所述指定变量。
11.根据权利要求1所述的方法,还包括允许所述重放装置访问并且使用所述指定变量,但阻止所述重放装置存储所述指定变量。
12.—种重放装置,所述装置包括至少一个存储器,其具有变量储存器,所述变量储存器包括微码函数的至少一个变量;以及处理器,其被配置为执行指示以便确定至少一个指定变量;访问至少一个存储器的所述变量储存器以获取所述指定变量;以及使用所述指定变量来解密被下载到与所述重放装置通信的媒体装置的内容文件。
13.根据权利要求12所述的重放装置,其中,所述至少一个存储器包括所述重放装置中的内部存储器和与所述处理器通信的媒体装置中之一。
14.根据权利要求13所述的重放装置,其中,所述内部存储器包括预定数量的变量。
15.根据权利要求12所述的重放装置,其中,所述媒体装置包括与所述内容文件一起下载的变量。
16.根据权利要求12所述的重放装置,其中,所述处理器通过访问所述变量储存器中的选择文件来确定至少一个指定变量,所述变量储存器位于所述媒体装置上。
17.根据权利要求16所述的重放装置,其中,所述处理器进一步被配置为执行指令以从所述选择文件获取密钥并且使用该密钥解密所述变量。
18.根据权利要求12所述的重放装置,其中,所述处理器被配置为确定被用于验证所述媒体装置的变量和被用于解密所述内容文件的变量。
19.根据权利要求12所述的重放装置,其中,所述重放装置包括播放器和媒体装置。
全文摘要
一种应用于重放装置中的内容文件的更新加密的方法,所述方法包括确定将要在重放所述内容文件时使用的至少一个微码函数的指定变量;确定在所述重放装置上的内部存储器中是否存储有变量以确定所述指定变量是否被包括在所存储的变量中;如果所述指定变量未包括在所存储的变量中,则从位于与所述重放装置通信的媒体装置中的存储器中的变量储存器取回所述指定变量;以及使用所述指定变量访问所述内容文件。
文档编号G11B20/00GK102414751SQ201080018992
公开日2012年4月11日 申请日期2010年2月25日 优先权日2009年2月25日
发明者杰弗里·布鲁斯·洛茨皮奇, 肯尼思·戈勒, 艾伦·马金 申请人:杰弗里·布鲁斯·洛茨皮奇, 肯尼思·戈勒, 艾伦·马金
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1