传输流处理器和解码器之间的编码数字视频内容保护的制作方法

文档序号:7938683阅读:509来源:国知局
专利名称:传输流处理器和解码器之间的编码数字视频内容保护的制作方法
技术领域
本披露内容涉及数字视频编码,并且更具体地,涉及传输流处理器和解码器之间的编码数字视频内容保护。
背景技术
为了防止未授权用户获得对数据的访问,典型地对数据(比如音频视频内容)进行加密。例如,经常对数字视频碟(DVD)进行加密以防止未授权用户能够复制并且分发该音频视频内容。然而,依然有可能在已经对数据解密之后对数据进行访问,比如通过提供对系统总线或者存储设备的外部访问的现有系统接口 ,在已经对数据进行解密之后可以对系统总线或者存储设备上的数据进行访问。

发明内容
本发明的披露的示例性实施例执行对系统组件之间的数据的加密和解密,以防止由外部访问来修改该数据,以防止对数据进行未授权访问。
在本发明的一个示例性实施例中,提供了一种用于对数据进行加密和解密的系统。该系统包括客户端,用于接收数据分组,设置密码比特的值,以及在系统总线上传送该数据分组。密码模块接收来自系统总线的数据分组,并基于密码比特的第一值,在该数据分组上执行密码学功能。存储器控制器接收来自系统总线的数据分组,并以基于密码比特的第二值,在该数据分组上执行非密码学功能。
通过阅读下面详细的描述以及附图,本领域技术人员还将理解本发明的优点以及优势特征以及本发明的其它重要方面。


图1示出了依照于本发明的示例性实施例的密码代理模块的系统
的图2示出了依照于本发明的示例性实施例的用于保护内容的方法的流程图;以及
图3示出了依照于本发明的示例性实施例的使用密码代理模块的系统的图。
具体实施例方式
在下面的描述中,用相同的参考数字分别在整个说明书和附图中标记相似的部件。附图可能不符合比例,并且可以以概括或者示意形式来示出特定组件,并且为了清楚和简洁由商业名称(commercialdesignation)来标识该特定部件。
图l示出了依照于本发明的示例性实施例的密码代理模块的系统100的图。系统100可以用于协助数字消费者设备(CE)中的内容保护或者用于其它适合的目的。内容可以是数字媒体,比如广播电视节目、付费(PPV)电影、数字视频盘(DVD)内容、因特网流视频、或者其他适合的内容。
内容保护用于防止对内容的未授权访问,比如在没有授权的情况下观看内容、对授权内容的未授权复制、或者其它未授权访问。
可以在硬件或者硬件和软件的适合组合上实现系统100,并且系
々i: i rvA7TT l、l曰H士m士贫佳cft cb P々"廿I~l -处,,nr、 ■^加ZkP,L1Whj ^A/tV乂乂V》;ii'l天宋A(Xj力iPtr 'Li、门丄不刁L 、JUL乂H'J 口P乂J o >H
本文所使用的,"硬件"可以包括分立组件的组合、集成电路、特定应用集成电路、现场可编程门阵列、或者其他适合的硬件。如本文所使用的,"软件"可以包括一个或者更多对象、代理、线程、代码行、子程序、分离的软件应用、两行或者更多行代码、或者在两个或者更多软件应用中或者在两个或者更多处理器上运行的其他适合的软件结构、或者其他适合的软件结构。在一个示例性实施例中,软件可以包括在通用用途软件应用中(比如操作系统)运行的一行或者更多行代码或者其他适合的软件结构、以及在特定用途软件应用中运行的一行或者更多行代码或者其他适合的软件结构。
可以提供内容保护作为整体系统安全性的一部分,该整体系统安全性可以包括防止未授权篡改以及对恶意代码的引入的系统安全性、防止消费者设备对于其它应用的未授权使用的系统安全性(当内容提供方补贴设备时,这点会是重要的考虑因素)、观看内容所需的密钥的安全传输和保护、保护用户的私有信息的数据保护、或者其它适合的
功能。可以由系统中的其它组件来执行这些功能中的一些。系统ioo
不需要这些其他安全组件中的任意一个,并且可以在其它区域中的内容保护受到破坏的地方提供内容保护。在一个示例性实施例中,可以
用未授权尝试中的未授权代码来破坏运行消费者应用程序的主机CPU以访问内容,并且系统100甚至可以在某人可以具有对主机CPU的完全
控制的"破解"的系统中,保护免受未授权的访问。
系统100使用数据加密来防止对授权内容的未授权观看和复制。通常对内容进行加密以便于分发(例如DVD)或者在物理暴露的网络上进行传送(数字有线TV),并且在没有正确的密钥的情况下不能在这些环境中进行解密和观看,从而除非用户被授权,否则该密钥不可用。然而, 一旦为了授权观看对内容进行解密,则其容易受到未授权复制的攻击。即使在离开消费者设备之前对解密的内容进行再加密或者保护,比如通过使用用于模拟TV输出的MacrovisionTM或者用于数字输出的高带宽数字内容保护(HDCP),依然存在对消费者设备进行篡改并且访问内部解密内容的可能性。系统100可以用于让解密数据对于(例如通过未授权子系统,比如主机CPU进行的)内部访问或者(例如通过探测进行的)外部访问保持不可用。在将数据存储在外部存储器(DDR)之前,系统100使用硬件限制和数据再加密的组合。
系统100使用在其输出处强制进行的反复制技术,并且如果禁用这些保护方案中的一个或者更多时提供对防止被破坏的保护。可以在多节目解码器(比如用于画中画(PIP)或者多房间TV支持)中使用系统IOO,并且系统100可以在第一次对MPEG中或者其它适合的传输流中的基本数据进行去多路复用和解密的时间一直到视频信号的最终输出之间维护正确的关联。在一个示例性实施例中,如果一个节目是受到MacrovisionTM保护的高价值PPV电影并且另一个节目是未保护的免费预览频道,则系统100防止受到破坏的主机CPU在流水线中的某个方便的点处交换这两个节目,使得PPV电影变得未受保护。由于难以通过复杂和高度可编程系统来安全地强制这些类型的关联,因此不在流水线的每一步骤处进行强制,而在流水线的开始点和结束点处使用强制。为了防止在中途对流水线的未授权的重映射,系统100在每一个流水线阶段对于每一个节目使用利用了不同的内容ID的存储器加密。由于加密是依赖于ID的,任意对使用非正确数据、或交换或者修改ID的尝试将导致从存储器控制器返回无用的数据。
此外,为了防止恶意代码通过对多个节目重使用相同内容的ID来破坏系统,并且随后在流水线的某个阶段进行交换,可以将内容ID强制为在起始点(传输流处理器)处是独一无二的。
由于编码内容是压縮的并且因此易于用容易可用的技术来捕捉和存储,因此认为编码内容具有比解码内容更高的价值。例如,可以直接将系统存储器中的压缩的音频/视频流直接写入硬盘用于后续的分发或者播放。尽管如此,解码/解压縮的数据具有不可忽视的更高数据率,并且在不首先对数据进行重压缩/重编码的情况下写入非易失性存储器是不实际的,其要求系统中没有的高级技术(特别在高清视频的情况中),并且其不可避免地导致质量的显著下降。系统100可以用于执行对基本(比如MPEG压縮音频和视频)数据 的存储器加密,使得永远不在外部双数据速率系统存储器(DDR)中 明文存储基本数据。系统存储器控制器(MC)进行的轻型加密(或 者"模糊化(obfuscation)")不足以强大到抵御确定的攻击。可以使 用称作128比特高级加密标准(AES)的标准加密算法来实现对内容的 现有技术加密,由于引入的高延迟,因此在典型的高性能MC中AES 通常不实用。
由于系统100代表存储器控制器客户端来执行存储器交易,可以 将系统100的特征归纳为"代理"模块。这样,由于系统100拦截客户 端至存储器控制器交易,缓冲该数据并针对该数据执行加密/解密操 作,然后向存储器控制器发起新的交易,这消除了由客户端看到的延 迟,因此不一定将AES引擎嵌入存储器控制器。
系统100可以同时包括HSX总线126上的高速转移(HSX)主控 (master)和从控(slave)。 HSX总线126是用于到达外部DDR和来自 外部DDR、以及在高带宽芯片上模块之间的高速数据转移(transfer) 的系统总线。
为了执行加密,传输流处理器(TSP)通过使用附加的HSX属性 比特请求由系统100而不是存储器控制器来处理存储器交易。系统IOO 可以对设置该比特的请求进行响应,而存储器控制器将不会进行响应。 然后系统100可以对数据进行加密然后使用HSX主控118向存储器控制 器发起新的HSX交易。
为了执行解密,音频和视频解码器还可以请求由系统100而不是 存储器控制器来处理存储器交易,其类似于加密的情况,除了直到系 统100到存储器控制器的读取已经开始、并且系统100已经对数据的第 一块进行了解密,系统100才开始解码器的读取交易。
HSX主控118是支持下列交易的附加属性(与内容不相关的其它 总线主控模块可以具有与零硬连线的属性)的总线主控。除了与交易 相关联的标准总线信号(比如地址、数据、读/写、以及其它合适的信 号)之外,这些属性是
HSX ATTR BITS PROTECTED CONTENT ID 41:34HSX—ATTRBITS—PROTECTED ENCODED—CONTENT 3 3 HSX—ATTR—BITS—PROTECTED—DECODED CONTENT 32 当经过ID和剩余比特时,系统100使用 HSX—ATTR—BITS—PROTECTED—CONTENT—ID 以 及
HSX—ATTR—BITS—PROTECTED—ENCODED—CONTENT比特。系统 100不使用HSX—ATTR—BITS—PROTECTED—DECODED—CONTENT比 特,但是该HSX—ATTR—BITS—PROTECTED—DECODED—CONTENT比 特用于继续经过系统的剩余部分直到音频和视频输出的内容保护方 案。
仅 允 许 特 许 的 设 备 设 置 HSX—ATTR—BITS—PROTECTED—ENCODED—CONTENT属性比特。特
许的设备就是固有被信任可恰当使用属性比特并且不暴露内容的那些 模块。将这些特许的设备被限制为传输流处理器和音频/视频解码器。 具体地,由于主机CPU最容易是攻击的目标,因此主机CPU将不被特
许。此外,源设备(比如传输流处理器)可以强制属性比特为恰当的,
而主机CPU可以可选地打开解码器中的属性。因此,当写入数据时, 主机CPU不能强制关掉加密,但是可以在需要打开加密以便能够读取
数据时通知解码器。
AES加密110应用适合的加密算法,比如在16字节块上操作的具有 128比特密钥的标准AES。在电子码本(ECB)模式中执行加密,比如 在加密块之间不存在依赖性以允许由系统100的客户端进行随机访问。 AES加密110可以处理大约600Mbps或者其它适合的数据速率的总吞
具有随机种子的密钥生成器112在启动时根据来自随机数生成器 的随机数生成密钥,并且相比于生成的任意其它密钥来说是独一无二 的。在让系统中其它任意部分不可见的情况下,直接将该密钥传输至 系统IOO。在将密钥应用于数据之前,还通过数据块的地址和内容ID 使用哈希算法来修改该密钥。
系统100支持由内容ID定义的多个加密写上下文(encryption write context)以允许在系统中区分多个节目。每一个内容ID对于相同的地址产生不同的密钥。
在一个示例性实施例中,算法可以包括下述步骤将地址和8比 特内容ID连接,重复预确定次数并且与随机数生成器进行异或。
加密块同步是基于地址的,比如通过使用与16字节地址边界对齐 的16字节加密块,或者其他适合的功能。
源设备(比如传输流处理器)可以独立于系统ioo加密块边界并
且可以发出部分的并且相对于这些边界未对齐的写交易,并且在不考 虑这些边界的情况下切换至其它"上下文"(其它基本流)。因此,由
于直到块完整时AES才能对该块进行操作,所以上下文必须维持部分 加密块的状态。
系统100可以保持适合数量的写上下文。在一个示例性实施例中, 可以同时对十六个基本流进行解码。每一个系统100写上下文可以保持 来自前一个交易的部分字节。在一个示例性实施例中,对于32比特客 户端来说,系统100可以保持最多12字节,并且对于64比特客户端来说, 系统100可以保持8字节。如果后续写在紧接该上下文的结束地址之后 的地址处开始,则可以发生上下文匹配。在该示例性实施例中,无法 支持(未设置启用所有字节的)部分字。例如,在传输流处理器可以 内部地处理部分字并且不将它们暴露给系统100的情况下,通过仅写入
完整字并且在内部保持部分字直到更多字节到达以完成该字,来执行 该功能。
如果出现写上下文丢失,则可以使用新的上下文。如果没有可用 的空余上下文,则可以使用LRU ("最近很少使用")算法或者以其它 适合的方式来确定新的上下文槽(context slot)。可以丢弃覆盖 (overwritten)的上下文(出于密码的原因,不希望在不使用更复杂 的残余块处理算法的情况下将部分数据简单地填满(pad)并且加密)。 上下文覆盖可以向主机CPU可选地生成例外中断。
如果交易在用于处理缓冲区交换条件的适合的边界(比如16字节 边界)上结束,则认为上下文关闭。在该示例性实施例中,可以将对 循环缓冲区(circular buffer)中的最后16字节的写入进行对齐以关闭 该上下文。在没有该过程的情况下,系统100将在每一个循环缓冲区的
ii结束处累积悬挂(dangling)的上下文。
如果写交易不在16字节边界上结束,则写交易不会在不确定的时 间长度上完成。如果不能容忍该情况,则客户端(比如传输流处理器) 可以通过填充至16字节边界或者其它适合大小的边界来显式地将写交 易对齐(注意到这么做的密码风险)。尽管如此,如果客户端这么做, 则稍后在不从该16字节块的开始处重写正确的数据的情况下,不能恢
复该交易(因为己经关闭了相关联的上下文)。
如果没有可用于写交易的上下文并且该写交易不在16字节边界 或者其它适合大小的边界上开始,则系统100可以丢弃该数据,并且可 选地向主机CPU生成例外中断。
在一个示例性实施例中,系统100不支持读上下文并且因此不能 处理未对齐的读访问。在该示例性实施例中,读可以是16字节对齐的 并且在长度上是16字节的倍数。可以在解码器上布置这些读限制,但 是由于不同于传输流处理器,解码器已经进行了适合的交易,因此不 太可能是负担。
如果存在读/写冲突,系统100可以可选地向主机CPU生成例外中 断,其中当从开放的写上下文中包含的地址发生读取时(这是例外, 由于写入还没有发生从而不可能读取数据),该读/写冲突可能发生。 可以通过不允许存储器缓冲区被完全清空(即,如果缓冲区级别低于 特定阈值时解码器需要等待)来防止该条件。
至少依赖于交易的长度和加密引擎的吞吐量,系统100对读和写 交易添加了延迟。在一个示例性实施例中,可以将系统100处理的最大 交易大小限制在256字节。
系统100包括"高级"HSX协议,该协议允许系统100支持最多两 个未完成(outstanding)的写请求和两个未完成的读请求。通过系统 100的读和写流水线可以是独立的,并且每一个流水线可以保持至少两 个请求,使得系统100可以从客户端接收最多两个写请求并且可以向存 储器控制器发起最多两个写请求,同时接收来自客户端的最多两个读 请求并且向存储器控制器发起最多两个读请求。
依赖于使用的有条件访问的类型,传输流处理器强制对音频和视频基本流进行加密。
系统100包括两个通常独立的数据路径, 一个用于读操作并且一 个用于写操作。如下面讨论的,两个数据路径之间共享一些子模块。
HSX从控模块102是系统总线的总线接口 ,并且由客户端发起的读和写 操作共享。类似地,HSX主控模块118是系统总线的总线接口,并且由 系统100发起的读和写操作共享。
当接收到来自客户端的写请求时,可以生成内部写命令并且将其 放入二列横队(two-deep)命令先入先出(FIFO)缓冲区106中。还可 以将相关联的数据放入输入数据FIFO缓冲区106中,该缓冲区106足够 大以保持两个完整的写交易(在一个实施例中最大512字节)。然后将 上下文与写数据上下文阵列108中保持的现有上下文进行匹配。为了与 新的上下文匹配,将该数据传输至AES加密引擎110用于以16字节块或 者其他适合大小的块进行加密。在输出写数据FIFO缓冲区114中将加 密数据与相关联的内部生成的写命令一起存储。当已经将不包括写上 下文数据阵列108中剩余的任意部分块的原始写数据全部进行加密,并 且存储在输出写数据FIFO缓冲区114 (其可以是512字节或者其它合适 的大小)中时,由读/写判定器116向HSX主控模块118请求新的总线交 易,由于共享HSX主控模块118,因此在读和写请求之间判定该新的总 线交易。 一旦获准,在HSX总线126上布置新的写交易。
当接收来自客户端的读请求时,生成两个内部读命令,在用于 HSX主控模块118的二列横队读命令FIFO缓冲区104中放置一个并且 在用于HSX从控模块102的二列横队读命令FIFO缓冲区120中放置一 个。读命令FIFO缓冲区104向HSX主模块118发起请求,由于共享HSX 主控模块118,因此由读/写判定器116来判定读和写请求之间的请求。 --旦获准,在HSX总线126上布置新的读交易。将从HSX总线126上读 回的数据放在输入读数据FIFO缓冲区120中。 一旦在输入读数据FIFO 缓冲区120中存在足够的读数据(比如完整块),则AES解密开始。由 于对数据进行解密,将其与已经出现的相关联的读命令放在输出读数 据FIFO缓冲区124中。 一旦已经对所有的读数据进行解密,将读数据 放在HSX总线126上以完成原始读请求。在两种情况中(加密和解密),由具有随机种子112的密钥生成器 得到128比特AES密钥,该随机种子使用来自随机数生成器的随机数、 内容ID以及地址。
除了标准时钟、重置、制造测试、外围总线(ASX)以及HSX总 线126连接之外,系统100可以使用其它适合的信号,比如随机数请求
以及确认信号、操作模式指示器、中断或者其他适合的信号。
系统100可以使用主机的寄存器接口来执行配置和对例外进行响 应。可以在外围(ASX)总线上实现该寄存器接口。可以生成单个中
断并且将其路由至主中断控制器。
可以使用专用寄存器来提供系统100控制。可以将受保护的系统 配置为直到设置启用比特(enable bit)才可以运行。如果禁用,则丢 弃任意写入的数据,并且任意数据读取将返回零。如果声明(assert) 保护模式输入信号并且强制启用,则可以忽略该比特。重置比特可以 用于引起所有上下文被重置和丢弃,并且可以是自清除的。加密比特 可以用于启用存储器交易拦截和加密。如果禁用,则可以明文发生该 交易。如果声明保护模式输入信号并且强制加密,则可以忽略该比特。
系统100还可以包括用于针对读或写错误,或者针对其它适合的 数据,确定系统100状态(比如写上下文己经丢失、读/写冲突已经发
生)的状态寄存器。
系统100还可以包括用于确定中断状态的中断启用寄存器,以及 用于监视系统100上下文状态的上下文状态寄存器,比如显示引起错误 的最近的上下文,用于调试目的或者其它适合的目的。
系统100与传输流处理器进行交互,该传输流处理器支持系统IOO 的扩展HSX属性。由传输流处理器来强制这些属性以确保适当地保护 该内容。传输流处理器为每一个基本流生成独一无二的内容ID。从用 于对输入数据进行解密的密钥索引(即,当通过网络传送内容时,用 于对用于保护内容的外部广播加密进行解密的密钥)中得到该内容 ID。对于每一个基本流来说这些密钥一般地是独一无二的,并且因此
用于在传输流处理器中存储这些密钥的密钥索引是独一无二的,从而 该内容ID是独一无二的。
14修改音频和视频解码器以支持系统100以允许编码的比特流接口
与系统100进行通信。主机CPU可以通过请求解码器硬件声明HSX属性 比特保护编码内容比特,来配置解码器使用系统IOO。同时主机CPU 将提供适合的内容ID。
如果设置了HSX属性比特保护编码内容比特,则解码器硬件确保 写出至外部存储器的所有解码数据具有声明的HSX属性比特保护解码 内容比特,并且可以确认使用相同的内容ID。
使用存储器控制器中的轻型加密("模糊化")技术,HSX属性比 特保护解码内容可以用于保护外部存储器中的解码内容,该存储器控 制器允许在整个系统中维护内容ID关联。
比特流接口支持下述模式,在该模式中比特流获取仅发生在16字 节边界上并且在长度上是16字节的倍数。
存储器控制器不对设置了HSX属性比特保护编码内容属性的交 易进行响应。这允许由系统100来拦截这些交易。存储器控制器可以对 HSX属性比特保护解码内容比特进行响应,该比特用于使用存储器控 制器中的轻型加密("模糊化")技术来保护外部存储器中的解码内容。
图2示出了依照于本发明的示例性实施例的用于保护内容的方法 200的流程图。方法200在202开始,并且由传输流处理器或者其他适合 的系统来设置数据分组的加密或者解密比特。然后该方法进行至204, 在系统总线上传送该数据分组。在206,比如通过检测该数据分组加密 或者解密比特是否具有预确定值,确定是否使用用于提供安全加密和 解密的专用代理模块来处理该数据分组。可以在代理模块、存储器控 制器、或者其它适合的系统处执行检测,比如在代理模块和存储器控 制器都接收但不处理具有不正确比特设置的数据分组的情况下。如果 确定代理模块不应当处理该数据分组,方法进行至208并且在存储器控 制器处处理该数据分组,比如确定数据分组的目的地。否则方法进行 至210。
在210,在代理模块处比如通过读取地址和分组标识数据,确定 是否应当对该数据分组进行加密或者解密或者其他适合的方式,来处 理该数据分组。然后方法进行至212,使用数据分组地址和内容ID以及哈希算法来修改加密/解密密钥。然后方法进行至214,对数据分组
应用修改的密钥以对数据进行加密或者解密。然后方法进行至216,向 目的地,比如数据存储设备、音频或者视频解码器、存储器控制器、 或者其它适合的目的地,来传送该分组。
图3示出了依照于本发明的示例性实施例的使用密码代理模块的 系统300的图。系统300包括高速(HSX)总线302,用于在系统300的 组件之间传输数据。传输流处理器(TSP) 304使用HSX主控306向高 速总线302传送数据,比如向密码代理模块(CPM) 308的HSX从控310 传送明文或者未加密的数据。然后密码代理模块308对数据进行加密, 并且从HSX主控312向存储器控制器(MC) 314的HSX从控316传送加 密的数据,该存储器控制器314在双数据速率(DDR)系统存储器326
中存储该加密的数据。当要对存储的数据进行解码时(比如用于回放), 存储器控制器314从双数据速率系统存储器326中提取数据并且从HSX
从控316向HSX从控310传送数据,然后HSX从控310向密码代理模块 308提供该数据用于解密。然后密码代理模块308通过HSX主控312向 HSX主控320传送明文或者解密的数据,以提供给视频解码器318,或 者向HSX主控324传送明文或者解密的数据,以提供给音频解码器322。 这样,可以通过由安全组件(比如传输流处理器304和密码代理模块 308)控制的加密过程来保护数据,而无需向外部攻击暴露数据的存储 器控制器314的资源。
将上面披露的主题认为是说明性而非限制性的,并且附加权利要 求预期涵盖落入本披露内容的真实精神和范围中的所有类似修改、增 强、以及其它实施例。因此,在法律允许的最大范围内,由下面的权 利要求及其等价物的最宽的可允许的解释来确定所要求的主题的范 围,并且不应由前面详细的描述来限制该范围。
权利要求
1、一种用于对数据进行加密和解密的系统,包括客户端,用于接收数据分组,设置密码比特的值,以及在系统总线上传送所述数据分组;密码模块,用于接收来自所述系统总线的所述数据分组,并基于所述密码比特的第一值,针对所述数据分组执行密码学功能;以及存储器控制器,用于接收来自所述系统总线的所述数据分组,并基于所述密码比特的第二值,针对所述数据分组执行非密码学功能。
2、 根据权利要求l所述的系统,其中所述密码模块还包括密钥生成器,用于接收随机数密钥,并基于所述数据分组的预确定字段修改所述随机数密钥。
3、 根据权利要求l所述的系统,其中所述密码模块还包括总线从控模块,用于响应于客户端数据,控制所述系统总线和所述密码模块之间的读和写操作。
4、 根据权利要求l所述的系统,其中所述密码模块还包括总线主控模块,用于响应于所述密码模块生成的数据,控制所述系统总线和所述密码模块之间的读和写操作。
5、 根据权利要求l所述的系统,其中所述密码模块还包括读/写判定器,用于确定所述密码模块的读操作和写操作之间的优先级。
6、 根据权利要求l所述的系统,其中所述客户端包括传输流处理器、音频解码器以及视频解码器中的一个或者更多。
7、 根据权利要求2所述的系统,还包括传输流处理器,用于为所述数据分组分配内容ID,其中所述密钥生成器基于数据分组的内容ID,修改所述随机数密钥。
8、 一种用于对数据进行加密和解密的方法,包括设置数据分组的密码比特,以控制所述数据分组的加密和解密;在系统总线上传送所述数据分组;基于所述密码比特的第一值,用专用密码模块来处理所述数据分组;以及基于所述密码比特的第二值,用存储器控制器来处理所述数据分组。
9、 根据权利要求8所述的方法,其中基于所述密码比特的所述第一值,用所述专用密码模块来处理所述数据分组的步骤包括基于从客户端接收的数据,使用总线接口从控模块,从所述系统总线读取所述数据分组或者向所述系统总线写入所述数据分组。
10、 根据权利要求8所述的方法,其中基于所述密码比特的所述第一值,用所述专用密码模块来处理所述数据分组的步骤包括基于所述密码模块生成的数据,使用总线接口主控模块,从所述系统总线读取所述数据分组或者向所述系统总线写入所述数据分组。
11、 根据权利要求8所述的方法,其中基于所述密码比特的所述第一值,用所述专用密码模块来处理所述数据分组的步骤包括利用使用所述数据分组的预定数据属性进行修改的密钥,对所述数据分组进行加密。
12、 根据权利要求8所述的方法,其中基于所述密码比特的所述第一值,用所述专用密码模块来处理所述数据分组的步骤包括利用使用所述数据分组的预定数据属性进行修改的密钥,对所述数据分组进行解密。
13、 一种用于对数据进行加密和解密的系统,包括客户端,用于接收数据分组,设置密码比特的值,以及在系统总线上传送所述数据分组;用于接收来自所述系统总线的所述数据分组,并基于所述密码比特的第一值,针对所述数据分组执行密码学功能的装置;以及存储器控制器,用于接收来自所述系统总线的所述数据分组,并基于所述密码比特的第二值,针对所述数据分组执行非密码学功能。
14、 根据权利要求13所述的系统,其中用于接收来自所述系统总线的所述数据分组的所述装置还包括用于接收随机数密钥,并基于所述数据分组的预定数据属性来修改所述随机数密钥的装置。
15、 根据权利要求13所述的系统,其中用于接收来自所述系统总线的所述数据分组的所述装置还包括用于响应于客户端数据来控制所述系统总线和所述密码模块之间的读和写操作的装置。
16、 根据权利要求13所述的系统,其中用于接收来自所述系统总线的所述数据分组的所述装置还包括用于响应于所述密码模块生成的数据来控制所述系统总线和所述密码模块之间的读和写操作的装置。
17、 根据权利要求13所述的系统,其中用于接收来自所述系统总线的所述数据分组的所述装置还包括用于确定所述密码模块的读操作和写操作之间的优先级的装置。
18、 根据权利要求13所述的系统,其中所述客户端包括传输流处理器、音频解码器以及视频解码器中的一个或者更多。
19、 根据权利要求14所述的系统,还包括传输流处理器,用于为所述数据分组分配内容ID,其中,用于接收所述随机数密钥并基于所述数据分组的预定数据属性来修改所述随机数密钥的装置基于所述数据分组的所述内容ID,来修改所述随机数密钥。
20、 根据权利要求13所述的系统,其中用于接收来自所述系统总线的所述数据分组的所述装置还包括用于生成随机数密钥,并基于所述数据分组的预定数据属性来修改所述随机数密钥的装置。
全文摘要
本发明提供一种用于对数据进行加密和解密的系统。所述系统包括客户端,用于接收数据分组,设置密码比特的值,以及在系统总线上传送所述数据分组。密码模块接收来自所述系统总线的所述数据分组,并基于所述密码比特的第一值,针对所述数据分组执行密码学功能。存储器控制器接收来自所述系统总线的所述数据分组,并基于所述密码比特的第二值,针对在所述数据分组执行非密码学功能。
文档编号H04K1/00GK101689957SQ200880021714
公开日2010年3月31日 申请日期2008年6月23日 优先权日2007年6月25日
发明者兰斯·G·黑亨贝尔格, 马修·D·贝茨 申请人:Nxp股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1