用于将主机标识信息嵌入到内容中的存储器器件和方法

文档序号:6349755阅读:158来源:国知局
专利名称:用于将主机标识信息嵌入到内容中的存储器器件和方法
技术领域
背景技术
在一些内容保护系统中,媒体设备(例如,蓝光盘)给主机播放器(例如,蓝光盘播放器)提供加密的数字内容(例如,高清晰电影),用于解密和回放。该内容包含几乎彼此相等的许多组的复制视频帧,但具有一些稍微的改变。存在通过这些复制帧的许多替换导航路径,且主机播放器基于在主机播放器的媒体密钥块的密钥树结构内的其所属的该组的设备密钥来选择具体导航路径。因此,由主机播放器呈现的复制帧中的具体的一些提供用来识别主机播放器的唯一签名(或,"水印")。以此方式,如果曾盗版内容标题,可以分析盗版的复制件来确定曾使用的导航路径和因此的生成了盗版的复制件的具体主机播放器的身份。一旦识别了危及安全的主机播放器,可以撤回主机播放器的证书和密钥,以便主机播放器将不再能够解密(和可能地盗版)进一步的内容,由此包含哟与主机播放器的安全分支而导致的内容提供者的潜在收益损失。例如,可以提供进一步释放内容来分发新证书撤回列表,以便危及安全的主机播放器将当其试图播放新内容标题时被禁用。但是,由其用来精确地检测生态系统(ecosystem)中的危及安全的主机播放器的恢复的内容的数量来测量该方案的有效性。这导致在检测危及安全的主机播放器时的延迟,且还包含绝对有罪设备的似然检测。这些内容保护系统可能面对"狐狸保护鸡窝"的问题,其中负责将水印注入到内容中的实体是危及安全的主机播放器本身。因此,关心一旦主机播放器被危及安全以允许复制内容,其可以被进一步危及安全来移除水印注入功能。

发明内容
本发明的实施例由权利要求限定,且在该部分中没有任何东西应该被视为对那些权利要求的限制。通过介绍,以下描述的实施例通常涉及将主机标识(identification)信息嵌入到内容中的存储器器件和方法。在一个实施例中,提供一种存储器器件,包括可操作以存储内容的存储器和与所述存储器通信的控制器。控制器可操作以从与存储器器件通信的主机中接收包括主机标识信息的证书,使用该证书来验证该主机,从主机接收播放在存储器中存储的内容的请求,将主机标识信息嵌入到内容中,且向主机发送具有嵌入的主机标识信息的内容。提供其他实施例,且可以单独或一起组合地使用实施例的每个。现在,将参考附图来描述各种实施例。


图1是一个实施例的主机和存储器器件的方框图。图2是用于将主机标识信息嵌入到内容中的一个实施例的方法的流程图。图3A-3E图示可以与这些实施例一起使用的示例嵌入技术。
图4是一个实施例的主机和存储器器件的方框图。图5是用于使用知道文件系统的存储器器件来将主机标识信息嵌入到内容中的一个实施例的方法的流程图。图6是用于使用不知道文件系统的存储器器件来将主机标识信息嵌入到内容中的一个实施例的方法的流程图。图7是用于使用内容加载系统来更新查找表的一个实施例的方法的流程图。
具体实施例方式介绍通过介绍,以下描述的实施例通常涉及将主机标识信息嵌入到从存储器器件播放的内容中的存储器器件和方法。在这些实施例中,由主机向存储器器件提供主机标识信息作为用于向存储器器件验证主机的证书的部分。在验证处理期间使用的主机识别可以提供存储器器件安全并直接注入到内容中,以实现危及安全的主机的精确和即时检测。也就是说,嵌入的主机标识信息使得内容所有者识别产生了其内容的盗版复制件的主机,并撤回主机的证书和密钥,以便主机将不再能够解密(且可能地盗版)进一步的内容。另外,因为是存储器器件、不是主机负责将主机标识信息嵌入到内容中,因此这些实施例克服了用依赖于危及安全的主机来管理其本身的内容保护系统遭遇的"狐狸保护鸡窝"的问题。该方法不与主机驱动的方法干扰,因此两者可以同时存在。嵌入主机标识信息的概要现在转到附图,图1是一个实施例的主机50和存储器器件100的方框图。如图1 所示,存储器器件100包括控制器110和可存在以存储内容130的存储器120。“内容"可以采用任何适当的形式,诸如但不限于数字视频(具有或没有随附的音频)(例如,电影、电视剧的一集、新闻节目等)、音频(例如,歌曲、博客、一个或一系列声音、音频书等)、静止或运动图像(例如,照片、计算机生成的显示等)、文本(具有或没有图片)(例如,文章、文本文件等)、视频游戏或其他软件、和这些形式的两个或更多的混合多媒体呈现。可以以任何适当的方式来实施控制器110。例如,控制器110可以采用微处理器或处理器和存储可由例如可编程的逻辑控制器和嵌入式微处理器(微处理器、逻辑门、 开关、专用应用集成电路(ASIC)、可编程逻辑控制器和嵌入式微控制器)执行的计算机可读的编程代码(例如,软件或固件)的计算机可读的介质的形式。控制器的例子包括、 但不限于以下微控制器ARC625D,Atmel AT91SAM, Microchip PIC18M6K20,和 Silicon LabsC8051F320。在以下讨论的实施例中描述且在附图中示出可以在控制器中使用的各种组件的例子。还可以实现控制器110作为存储器120控制逻辑。存储器120可以采用任何适当的形式。在一个实施例中,存储器120采取固态(例如闪)存的形式,且可以是一次可编程、几次可编程或多次可编程。但是,可以使用存储器的其他形式、诸如光存储器和磁存储器。虽然被示出为在图1中的单个组件,但是可以与若干组件一起实现控制器110和/或存储器120。另外,存储器器件100可以包含其他组件,其在图1中示出以简化附图。在一个实施例中,存储器器件100采用手持、可移除存储卡(例如闪存卡)的形式;但是,存储器器件100可以采用其他形式、诸如但不限于固态盘和通用串行总线(USB)设备。如图1所示,存储器器件100与主机设备50通信。如在此使用的,短语"与......通信"意味着直接通信或经由在此示出或描述或未示出或未描述的一个
或多个组件间接通信。主机50可以采用任何适当的形式,诸如、但不限于专用内容播放器、 移动电话、个人计算机(PC)、游戏设备、个人数字助理(PDA)、信息亭和TV系统。优选地,存储器器件100可移除地连接到主机50,因此用户可以与各种主机一起使用存储器器件100。图2是使用存储器器件100将主机标识信息嵌入到内容中的一个实施例的方法的流程图200。如在流程图200中示出的,在存储器器件100中的控制器110从主机50接收证书(动作210)并使用该证书来验证主机50 (动作220)。(优选地,进行相互的验证和密钥交换,在该情况下,存储器器件100将向主机50提供其自己的证书用于验证。)主机50向存储器器件100提供的证书包含识别所述主机50的信息(“主机标识信息"),诸如序列号、随机数、关于何地、何时和/或如何制造主机50的唯一信息等。该证书可以是绑定公钥和主机标识信息且在验证处理期间用来验证该公钥属于主机50的公钥架构(“PKI")证书的部分。接下来,存储器器件100从主机50接收播放在其存储器120中存储的内容130 的请求(动作230)。(应该注意,在此讨论的动作可以以任何适当的顺序来进行。例如,存储器器件100可以在从主机50接收该证书之前或之后接收播放内容130的请求,或可以接收该请求以及该证书。)然后,存储器器件100将在主机验证期间从主机50接收的主机标识信息嵌入(即,"注入")到内容中(动作M0)。然后,存储器器件100向主机50发送具有嵌入的主机标识信息的内容(动作250)。在一个实施例中,存储器器件100在内容的回放期间(即,随着内容被输出到主机50)实时地〃即时地〃(“on-the-fly")将主机标识信息嵌入到所述内容中。因此,同时进行动作240和250。在一个替换实施例中,存储器器件100仅在其完成了将主机标识信息嵌入到内容中的所有期望位置中之后(即,顺序地进行动作240和250)向主机50发送内容。与该实施例相关的一个优点是,如果主机50曾盗版播放的内容,则主机标识信息将允许内容所有者识别主机50作为盗版了该内容的播放器,且可以撤回主机50的证书和密钥,以便主机50将不再能够解密(且可能地盗版)进一步的内容,由此包含由于主机50 的安全分支而导致的内容所有者的潜在的收益损失。也就是说,一旦使得危及安全的内容可用于大量分发,内容所有者可以通过比较危及安全的内容与原始的"金"复制件或通过使用专用软件工具来提取危及安全的主机的识别信息。然后,危及安全的主机的识别可以被传递到证书授权机构以撤回该具体的主机或将其拉入黑名单。另一优点是,因为在这些实施例中,是存储器器件100、不是主机负责将主机标识信息嵌入到内容中,该内容保护系统避免用依赖于危及安全的主机来管理其本身的内容保护系统遭遇的"狐狸保护鸡窝" 的问题。示例的嵌入技术如上所述,在这些实施例中,存储器器件100将主机标识信息嵌入到要提供给主机50用于回放的内容中。图3A-3E图示五个示例的嵌入技术(1)将主机标识信息嵌入到一系列图片组(GOP)中的一个图片组的最后帧中,(2)将主机标识信息嵌入到未参考 (unreferenced)的帧中,(3)将主机标识信息嵌入到不可到达的GOP中,(4)将主机标识信息嵌入到"用户数据"包中,以及(5)将主机标识信息嵌入到系统层中的未参考流。在段落顺序中将这些示例的嵌入技术。应该注意,这些技术仅是例子,且可以使用其他技术。因此,具体类型的嵌入技术不应该被理解为权利要求,除非在此明显地引用。另外,如以下将更详细描述的,可以在回放会话期间或跨越回放会话,使用一个或多于一个嵌入技术,来提供动态内容保护系统。而且,取代在给定时间使用单个嵌入技术,可以使用嵌入技术的组
I=I O在转到这些示例嵌入技术之前,应该注意,存储器器件100可以确定使用任何适当的技术在内容中嵌入主机标识信息的位置。例如,存储器器件100可以通过使用在存储器器件100中存储的视频文件分析器代码(或硬件逻辑)识别/解析存储器器件100上的文件系统来确定嵌入位置。以此方式,存储器器件100将分析内容来确定在内容中嵌入主机标识信息的位置。这种存储器器件100将在此被称为"知道文件系统"。或者,存储器器件100可以通过使用为该具体的内容而生成的且将地址与具体视频文件对象相关联的查找表来识别该地址来确定嵌入位置。这种存储器器件100将在此被称为"不知道文件系统"。可以通过内容所有者生成且与新制造的存储器器件(或在新格式化的先前使用过的存储器器件)上的内容一起存储查找表。或者,如在以下更详细讨论的,内容加载系统可以通过分析存储器器件的文件系统(例如,通过分析现有分段和FAT簇分配以便更新由内容所有者提供的查找表)来生成用于"用过的"存储器器件的查找表。在任何情况下,在使用查找表的情形中,优选地,以写保护方式来在存储器器件100中存储内容,以防止诸如解分段器的应用到处移动在内容中的数据,这将使得查找表无效。而且,以下讨论假设一次写存储器器件和可重写存储器器件可以被视为与存储器器件的固件等同的功能,即使可能存在在一次写存储器器件和可重写存储器器件处理数据中的微小变化。返回到附图,图3A图示了一种嵌入技术,其中,存储器器件100将数据嵌入到一系列图片组(GOP)中的一个图片组300的最后帧中。GOP是MPEG编码的数字视频流中的数字视频的帧序列,其中,每个帧是视频呈现设备(例如电视机)同时或近似同时显示的一组亮度值,呈现导致显示图片的帧。GOP以内部帧(或"I-帧")开始,该内部帧包含足够描述一帧中的每个亮度值的数据集。GOP还包含循序帧(或"P-帧"),该循序帧包含当与 N个先前帧的数据集组合时产生足够描述一帧中的每个亮度值的数据集。GOP另外还包含双向帧(或"B-帧"),该双向帧包含当与N个先前帧和N个随后帧的数据集组合时产生足够描述一帧中的每个亮度值的数据集。存储器器件100可以以任何适当的方式识别GOP 300的最后帧。例如,如果存储器器件100是知道文件系统的,在存储器器件100中的嵌入的固件可以通过使用在存储器器件100中存储的视频文件分析器代码来识别/解析存储器器件100上的文件系统来识别 GOP 300中的最后帧的位置。在该情况下,存储器器件100可以通过从文件系统解析信息且识别属于文件的逻辑块地址(LBA)来识别内容文件的开端和文件中的第一 G0P。即使当通过跟随链接文件与其对应的LAB的文件系统指针在非连续LBA上分裂该文件时,存储器器件100可以识别在文件中的每个GOP以及GOP的序列。另一方面,如果存储器器件100是不知道文件系统的,则存储器器件100可以通过使用查找表来确定GOP的最后帧。在该情况下,存储器器件100可以被设计以通过识别GOP的开端和GOP的各个成员的另外的能力, 从扇区解析原始数据(raw data)可以通过基于存储器器件的LBA来扫描在存储器器件100 上的单调增加的扇区中包含的数据来识别GOP边界。可以不全部被识别在原始存储器器件数据中的单调增加的LBA的范围内的任何GOP可能被绕开,而不适用于标记。应该注意,由存储器器件100嵌入的主机标识信息可以被全部包含在一个GOP 300中,或可以按可以像每个GOP —个数据位一样的低的数据率在若干GOP上分布。可以通过在指数Golomb编码的句法元素中编码这种数据来实现嵌入数据的最大混淆。而且,纠错码(ECC)、诸如多层扩展二进制Go层码或其等同物可以被用在编码主机标识信息以便通过扩展的冗余中来增加篡改阻力。返回到附图,图;3B图示了将主机标识信息嵌入到在图片组310中的未参考的帧中。未参考的帧是导航路径(即,由控制视频呈现处理的排序的数据集或数据流来指定的路径)特别从呈现中排除的作为视频流的完整部分的帧数据集。或者,未参考的帧可以是通过所有可用的导航路径不可到达的帧数据集。参考的帧是被呈现的活跃帧,而未参考的帧是由于导航局限而导致的不活跃帧,且因此可用于被用于存储主机标识信息。在一个实施例中,通过视频编码器,在将内容加载到存储器器件100中之前,来特别生成未参考的帧作为主机标识信息的占位符(placeholder)。存储器器件100的操作(无论该存储器器件 100是不知道文件系统的还是知道文件系统的)不限于上述。另外,可以如上针对先前描述的技术所述使用ECC。图3C图示将主机标识信息嵌入到在一系列GOP 320中的未参考的(或〃不可到达的")图片组(G0P)。未参考的GOP类似于未参考帧之处在于,两者都由于施加了导航局限而不可播放。也就是说,未参考的GOP是属于作为导航流特别从呈现中排除的视频流的完整部分的单个GOP的一组帧。或者,未参考的GOP可以是通过所有可用的导航路径不可到达的G0P。因此,该嵌入技术类似于将所述主机标识信息嵌入到未参考的帧中的技术。 但是,该技术可以快于未参考的帧技术,因为其与未参考的帧相比,可以需要更少的CPU周期来更简单地实现识别GOP的开端。而且,可以如上针对先前描述的技术所述使用ECC。图3D图示了一种嵌入技术,其中,在视频流330中的用户数据字段(包)中嵌入主机标识信息。术语"用户数据"描述参考解码器特别从处理中排除且因此从任何显示中排除的作为视频流330的完整部分的数据集。典型地,在解码器的参考实施方式中定义用户数据字段作为占位符用于未来的增强。通过视频编码器,在将内容加载到存储器器件100 中之前,来特定地生成用户数据字段作为主机标识信息的占位符(placeholder)。存储器器件100的操作(无论该存储器器件100是不知道文件系统的还是知道文件系统的)不限于上述。另外,可以如上针对先前描述的技术所述使用ECC。图3F图示了一种嵌入技术,其中,在系统层340中的未参考的流中嵌入主机标识信息。系统层340描述由数字视频流中的不同GOP序列的数据流和/或包的时间或空间复用的数据集。数据量描述包含特定类型的数据对象(例如,音频数据、视频数据、导航数据或辅助数据)的同类集合的数据集。这种流可以或可以不彼此相关。包描述可由被插入到由视频编码器产生的数据分段组成的部分数据集作为前缀和/或后缀的明显的数据样式 (位样式)识别的数据集。通过上述技术,通过视频编码器,在将内容加载到存储器器件100 中之前,来特定地生成未参考流作为主机标识信息的占位符(placeholder)。而且存储器器件100的操作(无论该存储器器件100是不知道文件系统的还是知道文件系统的)不限于上述,且可以如上针对先前描述的技术所述来使用ECC。再次应该注意,上述嵌入技术仅是例子,且可以使用其他嵌入技术。另外,虽然存储器器件100可以被配置以进行单嵌入技术,但是存储器器件100可以被配置以进行多嵌入技术。具体地,当前优选地,存储器器件100可以被配置以随着在回放会话期间内容被播放动态或在内容的每个回放会话时通过实现不同嵌入技术而将主机标识信息嵌入到内容
8中。改变嵌入技术可以是对比较来自多个主机的危及安全的内容来定位(然后污染或移除)嵌入的主机标识信息的攻击者的有效对策也就是说,如果试图得到对内容的未授权访问的攻击者可以可靠地识别"水印"(即,嵌入的主机标识信息),他将能够污染或移除它们。例如,如果攻击者危及多于一个平台的安全,则他可能快速地发现位流不相同;这将提醒他如下事实一些攻击者追踪信息可能存在于位流中。然后,攻击者可以修改或擦除任何不同的数据,由此将主机标识信息从盗版内容中移除。如果混淆量不够或不存在,则攻击者可能甚至可能地将主机标识信息从单个视频流中移除。但是,通过适应地更改通过回放会话和/或跨越回放会话使用的嵌入技术,在盗版内容中引入了足够的多样性,使得不能容易地从单个比较中识别主机标识信息。可以使用任何适当的适应性算法来改变用于嵌入主机标识信息的方法或方法的组合。可以用来确定嵌入方法和位置的因素的例子包括、但不限于唯一的证书主机ID(即, 主机标识信息本身)、存储器器件证书和在存储器器件100中的历史日志中的先前回放和注入会话信息。而且,任何适当的事件可以触发嵌入方法或方法的组合的更改。例如,存储器器件100可以开始与主机50的会话来在特定回放持续时间之后(例如,在十分钟时间段之后,在播放了 100MB之后或在遇到视频章节之后)修改嵌入算法。示例存储器器件 可以以任何适当的方式来实施这些实施例的存储器器件。以下段落和参考的附图描述了一个示例实施方式。应该注意,该实施方式仅是例子,且在此所示出且描述的细节不应该被理解到权利要求中,除非在此明显地引用。现在转到附图,图4是一个实施例的存储器器件400和主机450的方框图。如图 4所示,存储器器件400包括控制器410和存储器420。控制器410包括与存储器420接口的存储器接口 411和与主机450接口的主机接口 412。控制器410还包括中央处理单元 (CPU)413、可操作以提供加密和/或解密操作的密码引擎414、随机存取存储器(RAM)415、 存储存储器器件400的基本操作的固件(逻辑)的只读存储器(ROM)416和存储用于加密 /解密操作的器件专用密钥的非易失性存储器(NVM)417。应该注意,该存储器器件专用密钥可以被存储在存储器器件内的其他存储器区域中。可以以任何适当的方式来实施图4所示的组件。但是,当前优选地,存储器器件控制器410具有足够的CPU 413处理功率来执行文件系统通过智力而知道来解析视频文件格式或能够使用地址查找表来注入水印的算法, 如以下描述的。在该实施例中,存储器420包括由主机450上的文件系统管理的公共分区425和由控制器410内部管理的隐藏保护系统区域435。隐藏保护系统区域435存储内容加密密钥(CEK) 440和固件(FW)代码442(例如,证书注入代码444和视频文件分析器或查找表代码446)。公共分区425和隐藏保护系统区域435可以是相同存储器单元的部分,或可以是不同的存储器单元。隐藏保护系统区域435是"隐藏的",因为其由控制器410(而不由主机控制器460)内部地管理,且是"受保护的",因为用控制器410的非易失性存储器417 中存储的唯一密钥来加密在该区域435中存储的对象。(存储器器件硬件唯一密钥可以被存储在控制器410的非易失性存储器417中或存储器器件400中的其他区域中。)因此,为了访问在该区域435中存储的对象,控制器410将使用密码引擎414和在非易失性存储器 417中存储的密钥,来解密加密的对象。优选地,存储器器件300采用来自在SanDisk公司的信任快闪(TrustedFlash(TM))平台上建立的产品族的安全产品的形式。存储器的公共分区425存储受保护的内容文件430A,430B。在该实施例中,可以是不同版本(例如分辨率)的相同内容标题的内容文件430A,430B由内容提供者提供,且被释放到内容复制和吸收工具,其将内容文件430A,430B加载到公共分区425中。(取代将内容430A,430B预加载到存储器器件420中,内容文件430A,430B可以使用内容加载系统、诸如连接到因特网的信息亭或PC而侧加载或下载到存储器器件420。)虽然存储器420 的公共分区425由主机450上的文件系统管理,但是在公共分区425中存储的对象(诸如内容文件430A,430B)还可以由存储器器件400保护。在该实施例中,两个存储的内容文件 430A,430B由在隐藏保护系统区域435中存储的各个内容加密密钥440来保护,且那些密钥440本身由在控制器410的非易失性存储器417中存储的存储器器件唯一密钥来保护。 因此,为了解保护受保护内容文件(例如,内容文件430A)之一,密码引擎414将使用在控制器410的非易失性存储器417中存储的存储器器件唯一密钥来解密适当的内容加密密钥 440,然后使用解密的内容加密密钥440来解密受保护内容430A。现在返回到主机450,主机450包括具有与存储器器件400接口的存储器器件即可 461的控制器460。控制器460还包括中央处理单元(CPU) 463、可操作以提供加密和/或解密操作的密码引擎464、随机存取存储器(RAM)465、只读存储器(ROM)466和显示输出电路 471。应该注意,可以实现在盒子460中的每个组件作为整个主机系统中的分离的芯片。主机450还包括受保护大容量存储472。存储器器件400和主机450经由存储器器件接口 461和主机接口 412而彼此通信。对于涉及数据的安全传输的操作,优选地,在存储器器件400和主机450中的密码引擎 414,464被用于相互地验证彼此和提供密钥交换。相互验证处理要求主机450和存储器器件400交换唯一的证书ID (如在此说明的,主机的唯一证书ID是被嵌入到内容中的主机标识信息)。在相互验证完成之后,优选地,会话密钥用于建立在存储器器件450和主机400 之间通信的安全通道。或者,存储器器件400和主机450可以支持广播-加密-类型安全性来使得主机450提供存储器器件400的其证书以注入到内容中。如上所述,在该实施例中的存储器器件400可以用于将主机标识信息嵌入到内容中。图5和6是图示当存储器器件400是知道文件系统的(图5)和不知道文件系统的(图 6)该方法的动作的流程图500、600。首先转到图5,当主机450向存储器器件400发送命令时,向密码引擎414发送受保护(加密的)内容430A(动作505)。注入代码444向密码引擎414发送密码控制命令(动作510),响应于其,密码引擎414使用在非易失性存储器 417中的存储器器件唯一密钥来解密内容加密密钥440,密码引擎414用该内容加密密钥 440来解密受保护内容430A。然后,解密的"未加密"内容文件430A被发送到控制器的 RAM 415(动作515)。注入代码444分析内容格式和结构,并应用主机证书注入算法(即, 主机标识信息嵌入技术)(动作525)。具体地,因为存储器器件400是知道文件系统的,因此在存储器器件400中的视频文件分析器446分析并识别内容内的数据的实例,以根据该算法来确定嵌入主机标识信息的位置。然后,具有嵌入的主机证书的内容被发送到密码引擎414 (动作530)。注入代码444向密码引擎414发送密码控制命令,以加密具有嵌入的主机证书的内容(动作535)。然后,具有嵌入的主机证书的加密内容被发送到主机接口 412 用于传输到主机450 (动作M0)。主机450在不知道水印的情况下接收、处理和解码视频内容。在图5中,存储器器件100曾是知道文件系统的,且曾能够分析内容格式和结构来应用适当的主机证书注入算法。但是,不是所有存储器器件都具有固件模块(或硬件逻辑) 来使得智能文件系统和视频文件格式解析器能够确定注入的位置。在这些情况下,可以使用特定内容专用的索引表来确定注入的位置。图6是这种"不知道文件系统的"存储器器件的使用的流程图600。如图6所述,当主机450向存储器器件400发送命令时,向密码引擎414发送受保护(加密的)内容430A和地址查找表446(动作60 。注入代码444向密码引擎414发送密码控制命令(动作610),响应于其,密码引擎414使用在非易失性存储器417中的存储器器件唯一密钥来解密内容加密密钥440,密码引擎414用该内容加密密钥440来解密受保护内容430A。然后,解密的"未加密"内容文件430A和查找表被发送到控制器的RAM 415(动作615)。然后,注入代码444读取查找表地址索引446(动作620),并经由查找表应用主机证书注入算法(动作62 。换句话说,注入代码444使用具有地址索引446的查找表来识别在内容中的数据的实例,应用固件该算法嵌入主机标识信息。然后,向密码引擎 414发送具有嵌入的主机证书的内容(动作630),密码引擎414响应于来自注入代码414 的密码控制命令(动作635),加密具有嵌入的主机证书的内容,并向主机接口 412提供它用于传输给主机450 (动作640)。内容加载实施例可以授权内容以支持一个或多个主机标识信息嵌入技术(诸如,但不限于上述嵌入技术)。例如,内容授权工具可以在内容文件创建期间随机注入贯穿内容文件的未参考的帧、不可到达的G0P、用户数据包和未参考的系统流。对于知道文件系统(即具有文件系统和文件头解析能力)的存储器器件,不从授权工具中需要附加的信息。但是,对于不能知道文件系统的存储器器件,授权工具可以与内容一起提供每个合成数据类型的逻辑地址索引表来用于水印注入。如上所述,可以由存储器器件的固件来使用索引表来基于LBA和字节地址来嵌入主机标识信息。也如上所述,为了保持查找表的完整性,可以写保护该内容来防止诸如解分段器的应用到处移动在内容中的数据,这将使得查找表无效。如果该内容和查找表被预加载到新制造或新格式化的存储器器件中,则存储器器件是无分段和文件分配表簇分派的,因此由内容提供者生成的查找表是准确的。但是,由于为新存储器器件生成查找表,因此如果该存储器器件不是新的而是曾用来存储(或删除) 内容,而可能发生问题。在该情况下,存储器器件中的现有文件系统结构将在过期的查找表中呈现LBA条目。这可能例如发生在用户购买用预加载了内容的存储器器件、然后在存储器器件中的剩余空闲空间上写和擦除附加的内容时。如果用户稍后从内容加载系统(例如,连接到因特网的信息亭、或PC)侧加载或下载新内容和查找表,查找表将不与存储器器件中的现有文件系统结构一致。在该情况下,优选地,该内容加载系统分析存储器器件以找到用于分段和文件分配表簇分派的现有文件系统结构,然后据此更新查找表。也就是说,内容加载系统将有责任加载内容,加载索引文件(如果存在),和可能地操纵索引文件来匹配存储器器件的现有文件系统和簇分配。图7提供这种方法的流程图700。在图7中,“主机〃指的是图4中的主机450。 取代用于呈现来自存储器器件400的播放的内容,在此使用主机450作为内容加载系统/机器、诸如连接到因特网的信息亭、PC、空中下载的移动手持机、或从因特网或从广播网络获取内容的机顶盒/TV/游戏台。如图7所示,响应于来自主机450的用于读取存储器器件查找表和文件系统的请求(动作702),存储器器件400向主机的RAM 465提供文件系统信息,诸如FAT表和分段信息(动作703)。然后,存储器器件控制器410向主机密码引擎464 提供具有地址索引的加密的查找表(动作70 ,该主机密码引擎464基于来自主机450的密码控制(动作710)解密该查找表并向主机的RAM 465提供它(动作715)。然后,主机 450读取查找表地址索引和文件系统信息(动作720),并向主机的RAM 465提供具有新查找表的新内容(动作72 。然后,主机450向其密码引擎464发送具有更新的查找表的新内容(动作730),密码引擎464基于密码控制命令来加密那些项目(动作73幻。然后,主机450向存储器器件接口 461提供具有更新的查找表的加密内容(动作740)用于加载到存储器器件400中。结论意图,先前详细的描述被理解为本发明可以采用的所选形式的例示,且不是本发明的限定。其仅是以下权利要求,包括意图限定所要求保护的本发明的范围的所有等同物。 最后,应该注意,在此描述的优选实施例的任意的任何方面可以单独使用或彼此结合使用。
权利要求
1.一种存储器器件,包括存储器,可操作以存储内容;以及控制器,与所述存储器通信,其中,所示控制器被配置以从与所述存储器器件通信的主机接收证书,其中,所述证书包括主机标识信息;使用所述证书来验证该主机;从主机接收对播放在存储器中存储的内容的请求;将所述主机标识信息嵌入到所述内容中;以及向主机发送具有嵌入的主机标识信息的内容。
2.根据权利要求1的存储器器件,其中,所述控制器被配置以将主机标识信息嵌入到图片组(GOP)的最后帧中。
3.根据权利要求1的存储器器件,其中,所述控制器被配置以将主机标识信息嵌入到未参考的帧中。
4.根据权利要求1的存储器器件,其中,所述控制器被配置以将主机标识信息嵌入到不可达到的图片组(GOP)中。
5.根据权利要求1的存储器器件,其中,所述控制器被配置以将主机标识信息嵌入到用户数据字段中。
6.根据权利要求1的存储器器件,其中,所述控制器被配置以将主机标识信息嵌入到系统层中的未参考流中。
7.根据权利要求1的存储器器件,其中,所述控制器被配置以在内容的回放期间实时地将主机标识信息嵌入到所述内容中。
8.根据权利要求7的存储器器件,其中,所述控制器被配置以改变如何随着播放内容而将主机标识信息嵌入到所述内容中。
9.根据权利要求1的存储器器件,其中,所述控制器被配置以改变如何在内容的每次回放会话时将主机标识信息嵌入到所述内容中。
10.根据权利要求1的存储器器件,其中,所述控制器可操作以通过使用查找表确定在内容中嵌入主机标识信息的位置。
11.根据权利要求10的存储器器件,其中,所述内容被预先加载到存储器器件中,且所述查找表由内容所有者提供。
12.根据权利要求10的存储器器件,其中,通过内容加载系统,所述内容和所述查找表被加载到存储器器件中,且其中,所述内容加载系统更新查找表以应对在存储器器件中的已有文件系统结构。
13.根据权利要求10的存储器器件,其中,所述内容是被写保护的,以保护查找表的完整性。
14.根据权利要求1的存储器器件,其中,所述控制器可操作以分析该内容来确定在内容中嵌入主机标识信息的位置。
15.根据权利要求1的存储器器件,还包括固件或硬件逻辑模块,其可操作以分析视频编码和文件容器结构。
16.一种用于将主机标识信息嵌入到内容中的方法,该方法包括在存储器器件的控制器中,所述存储器器件包括可操作以存储内容的存储器从与所述存储器器件通信的主机接收证书,其中,所述证书包括主机标识信息;使用所述证书来验证该主机;从主机接收对播放在存储器中存储的内容的请求;将所述主机标识信息嵌入到所述内容中;以及向主机发送具有嵌入的主机标识信息的内容。
17.根据权利要求16的方法,其中,将所述主机标识信息嵌入到图片组(GOP)的最后帧中。
18.根据权利要求16的方法,其中,将所述主机标识信息嵌入到未参考的帧中。
19.根据权利要求16的方法,其中,将所述主机标识信息嵌入到不可达到的图片组 (GOP)中。
20.根据权利要求16的方法,其中,将所述主机标识信息嵌入到用户数据字段中。
21.根据权利要求16的方法,其中,将所述主机标识信息嵌入到系统层中的未参考的流中。
22.根据权利要求16的方法,其中,在内容的回放期间实时地将主机标识信息嵌入到所述内容中。
23.根据权利要求22的方法,还包括改变如何随着播放内容而将主机标识信息嵌入到所述内容中。
24.根据权利要求16的方法,包括改变如何在内容的每个回放会话时将主机标识信息嵌入到所述内容中。
25.根据权利要求16的方法,还包括通过使用查找表确定在内容中嵌入主机标识信息的位置。
26.根据权利要求25的方法,其中,所述内容被预先加载到存储器器件中,且所述查找表由内容所有者提供。
27.根据权利要求25的方法,其中,通过内容加载系统,所述内容和所述查找表被加载到存储器器件中,且其中,所述内容加载系统更新查找表以应对在存储器器件中的已有文件系统结构。
28.根据权利要求25的方法,其中,所述内容是被写保护的,以保护查找表的完整性。
29.根据权利要求16的方法,还包括分析该内容来确定在内容中嵌入主机标识信息的位置。
30.根据权利要求10的方法,其中,所述存储器器件包括固件或硬件逻辑模块,其可操作以分析视频编码和文件容器结构。
全文摘要
公开了一种用于将主机标识信息嵌入到内容中的存储器器件和方法。在一个实施例中,提供一种存储器器件,包括可操作以存储内容的存储器和与所述存储器通信的控制器。控制器可操作以从与存储器器件通信的主机中接收包括主机标识信息的证书,使用该证书来验证该主机,从主机接收播放在存储器中存储的内容的请求,将主机标识信息嵌入到内容中,且向主机发送具有嵌入的主机标识信息的内容。
文档编号G06F21/00GK102460455SQ201080028652
公开日2012年5月16日 申请日期2010年6月14日 优先权日2009年6月26日
发明者A.卡纳里斯, J.E.哈尔彭, J.T.林 申请人:桑迪士克科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1