背景 1.领域 本发明总地涉及内容保护,并且更具体地,涉及向授权的接收器分 发密钥。 2.描述 密码技术可被用来保护分发的内容。在一种用于保护数字多用途盘 (DVD)上的内容的系统中,单个的对称密钥被指配给各个DVD播放器 制造商。DVD播放器使用嵌入在设备内部的共享对称密钥来解密DVD上 的内容并且为用户播放它。这种方案促进了匿名,因为共享的密钥不能 被用来识别个体用户的设备。然而,如果制造商的设备中的某一个被攻 击并且共享对称密钥被泄露,那么该密钥可能被传送给其它人来盗印该 内容。为了尝试阻止这种行为,该制造商可能希望撤销对该密钥的授 权,由此防止对该共享密钥的进一步使用。然而,撤销单个的共享密钥 将使得该制造商的所有设备都不能工作。因此,尽管支持匿名,但这种 方案实际上不支持被泄露密钥的撤销。 另一种系统为每一个设备使用个体的对称密钥。当密钥被泄露时, 泄露的密钥可以被添加到撤销列表中。撤销列表可以被传送给回放设备 以便于该设备可以知道它的密钥已经被撤销了,并且因此可以防止对内 容的回放。然而,随着时间的流逝,当很多密钥被撤销时,要发送给回 放设备的关于泄露密钥的撤销列表可能变大而且无法管理。此外,在管 理撤销列表的实体和每个回放设备之间必须存在通信路径。如果回放设 备的数目变大(以千计或者以百万计),则更新的撤销列表的分发变得 难以解决。另外,具有用于唯一设备的个体密钥可能带来保密方面的问 题,因为用户的设备不被认作是匿名的。 需要一种克服现有系统不足的、用来向回放设备分发密钥的技术。 这样的技术应当允许有效地撤销泄露的密钥,并且还促进用户及其设备 的匿名。而且,这样的技术应当适用于“离线”的非交互的场景,其中 到所述回放设备没有可用的直接通信链路。 附图概述 从以下对本发明的详细描述中,本发明的特性和优点将变得显而易 见,其中: 图1是根据本发明的实施例的、利用公用密钥媒体密钥块来分发内 容的系统的图; 图2是图示根据本发明的实施例来生成并分发密钥组给回放设备的 流程图; 图3是图示根据本发明的实施例来生成并分发公用密钥媒体密钥块 连同内容的流程图;以及 图4是图示根据本发明的实施例来接收并处理公用密钥媒体密钥块 和加密内容的流程图。 详细描述 本发明的实施例包括一种方法和装置,用于从内容制作器向回放设 备分发公用密钥媒体密钥块和加密内容、以便于可以撤销用来获取对加 密内容的访问的密码密钥,但是支持回放设备的匿名。本发明的实施例 对于存储媒体(诸如DVD)上内容的分发的非交互、离线信道,以及诸 如无线电和电视(TV)的单路信道可能是有用的。 在本说明书中提及本发明的“一个实施例”或者“实施例”意味着 结合该实施例所描述的特定的特性、结构或者特征被包括在本发明的至 少一个实施例中。因此,在本说明书全文中不同地方呈现的短语“在一 个实施例中”的出现不必是都指同一个实施例。 在一个场景中,内容制作器期望以受保护的格式来分发有价值的内 容给很多的内容消费者。内容制作器希望被分发的内容是采用只对授权 的回放设备可读的格式。利用对称和非对称技术的组合,内容制作器可 以在分发之前使用密码方法来加密内容。可以利用对称的内容密钥来加 密内容,因为回放设备利用对称的内容密钥来连续地解密大量的内容数 据在计算上可以比利用非对称方法更有效。在内容消费地点解密内容所 需要的对称内容密钥必须以某种方式被传送给在该地点的授权的回放 设备。非常期望在传输到回放设备期间对称的内容密钥受到保护,并且 在接收时也受到保护。在一个实施例中,每个内容标题可以由内容制作 器用不同的对称内容密钥来加密(如这里使用的,内容标题指单个的可 消费的产品,例如电影、电视节目、唱片集等等)。也就是说,特定内 容标题的所有拷贝可以用相同的对称内容密钥来加密。如果这个对称内 容密钥被泄露,该内容标题的其它拷贝都处于危险中,但是其它的内容 标题则不这样。在另一个实施例中,内容标题的拷贝组可以用不同的对 称内容密钥来加密。如果特定的对称内容密钥被泄露,则只有跟这个密 钥相关联的拷贝组中的那些拷贝处于危险中,但是其它的拷贝和标题则 不这样。 在一个实施例中,通过在把对称内容密钥分发给回放设备之前利用 非对称密钥对的公开密钥和适当的公开密钥加密算法来加密对称内容 密钥,从而可以保护对称内容密钥。相应的私有密钥由设备制造商在制 造回放设备时存储在回放设备中,以用于在内容回放期间解密被加密的 对称内容密钥。当内容被分发到诸如DVD的存储媒体上时,被称作媒体 密钥块的DVD上的数据结构可被用来存储加密的对称内容密钥。当内容 通过单路广播网络(例如无线电或者电视(空中、电缆或者卫星))被 分发时,媒体密钥块可以包括内容数据的一个或多个第一分组。 为了促进更好的安全性,可以使用多个用于保护对称内容密钥的非 对称密钥对。私有密钥组可以由设备制造商在制造回放设备时以安全的 方式存储在回放设备上。私有密钥中所选定的一个可被用来解密用于内 容标题拷贝的被加密的对称内容密钥。当回放设备接收到内容时,回放 设备读取媒体密钥块并且使用私有密钥中所选定的一个来解密对称内 容密钥。解密的对称内容密钥然后在回放期间被用来解密内容。 当内容制作器知道私有密钥组中的某一个已经暴露时,这典型地是 通过“黑客”未授权的活动所致,则期望撤销对被泄露的私有密钥的授 权并且转而使用存储在回放设备内的密钥组中的另一个密钥以用于以 后所有内容的分发。在现有的技术方法中,关于撤销的私有密钥的信息 将被传送给回放设备,以帮助防止更多的未授权的内容回放。然而,这 需要在内容制作器/分配器和回放设备之间的“在线的”、交互的并且 双向的通信路径,以便于回放设备中的私有密钥组可以被更新。当内容 被分发到诸如DVD的存储媒体上时、并且/或者当在内容制作器和回放 设备之间不存在双向通信路径时,很难完成有效的撤销。然而,本发明 的实施例实现了有效的撤销方案、同时仍然为回放设备提供匿名。 图1是根据本发明的实施例的、利用公开密钥媒体密钥块系统来分 发内容的系统的图。内容制作器10期望向回放设备14分发受保护的内 容12。内容制作器10可以是产生和/或分发内容的任何实体。例如,如 这里所使用的,内容制作器可以是电影工作室、电视(TV)节目制作公 司、电影或TV发行人、作家、画家、唱片艺术家、唱片公司、出版者、 TV广播网络、或者创建和/或分发内容的任何个人或实体。受保护的内 容12包括采用如这里描述的保护格式的内容16。内容16可以是以现在 已知的或者今后开发出的任何内容格式表示出来的任何数据。在一个实 施例中,内容可以被存储并分发到现在已知的或者今后开发出的任何适 当的存储媒体上。在一个实施例中,存储媒体包括数字多用途盘(DVD)。 在另一个实施例中,受保护的内容通过单路广播传输机制被分发给回放 设备。回放设备14包括用于接收受保护的内容并且再现该内容以便用 户理解的任何设备。在各种实施例中,回放设备可包括个人计算机 (PC)、TV、个人录像机(PVR)、DVD播放器、手持计算机、个人数字 助理(PDA)、机顶盒、蜂窝式手机、Internet tablet(因特网输入板)、 电子书设备、或者能够接收和再现内容的任何其它消费电子设备。 在一个实施例中,可以有很多回放设备,它们在这里被记作M。回 放设备的数目可以非常大,例如数亿台设备(例如,在108量级上)。 密钥生成实体定义了一组N个公开/私有密钥对(K1,K2,K3,...KN)18。 该密钥对可以跟现在已知的或者今后开发出的任何公开密钥加密/解密 算法一起使用。在一个实施例中,该实体可以是内容制作器10。在其它 实施例中,该实体可以是内容分发器、出版者、广播网络、制造商等等。 在一个实施例中,N个密钥对可以由中央管理机构实体生成,公开密钥 可以被公布,并且私有密钥可以被分发给设备制造商。在一个实施例 中,中央管理机构可以是促进内容分发安全的组织。在一个实施例中, 密钥对的数目N可以是106量级的(例如,以百万计)。密钥生成实体 创建20出J组私有密钥对(S1,S2,S3,...SJ)22。J组私有密钥22中 的每一组可包括从N个密钥对的组中选择的L个私有密钥。在一个实施 例中,L可以是16,然而,在其它实施例中,可以使用其它大小的L。 组的数目J可以介于1到N!/(L!*(N-L)!)之间。可以根据所选择的分 配方案来分配每个组。例如,组Si中的私有密钥可以由制造商随机地从 N中分配并划分成小组,或者通过使用随机的、树、或者矩阵密钥分配 方案根据布局(geography)来进行分配。其它密钥分配方法在本发明 的范围之内。 唯一的私有密钥组S可以由实体分发24给回放设备。当制造回放 设备时,制造商把来自组J中的唯一的私有密钥组Si26存储在回放设备 中。在一个实施例中,组Si26可被存储在回放设备内的可信平台模块 (TPM)中。TPM可以提供防止篡改的安全性。每个回放设备包括唯一的 私有密钥组Si26,它来自可能来自N个密钥对的J组私有密钥。在制造 完之后,回放设备通过正常的商业渠道被分发给用户。 图2是图示根据本发明的实施例来生成并分发密钥组给回放设备的 流程图。在块100处,诸如内容制作器的密钥生成实体生成一组N个密 钥对。在块102处,该实体通过从N中为每个组选择多个私有密钥来创 建J个私有密钥组(S1,S2,...,SJ)。应当指出的是,N中特定的私有 密钥可以是S中多个组的成员。在块104处,该实体分发J个密钥组中 的一个或多个。在一个实施例中,该实体可以将所选择的唯一的组Si 分发给单独的回放设备。以这种方式,设备制造商所制造的每个回放设 备可以包括唯一的私有密钥组。 返回来参考图1,当内容制作器10期望分发内容16时,内容制作 器利用对称内容密钥30来加密28该内容以产生加密的内容32。加密的 内容32可被存储为要分发给回放设备的受保护的内容12的一部分。内 容制作器还生成34公开密钥媒体密钥块36、并且将该公开密钥媒体密 钥块作为分发给回放设备的受保护的内容的一部分而包括在其内。公开 密钥媒体块包括存储N个项的数据结构(例如,诸如表格)。数据结构 中的每个项包括对称内容密钥CK30,该对称内容密钥被来自N的公开/ 私有密钥对中的公开密钥之一加密,以便于所有的公开密钥都被使用并 且每个公开密钥只被使用一次。因此,数据结构包括 (E(CK,K1),E(CK,K2),...,E(CK,KN))。在一个实施例中,也可以计算对 称内容密钥的散列值并且将其插入到公开密钥媒体密钥块中。 图3是图示根据本发明的实施例来生成并分发公开密钥媒体密钥块 的流程图。在块110处,内容制作器通过用来自N个密钥对中的每个公 开密钥来加密对称内容密钥从而为内容标题生成公开密钥媒体密钥 块。这导致数据结构具有N个条目,每个条目存储由N个公开密钥之一 加密的对称内容密钥。可选地,内容制作器也可以计算对称内容密钥的 散列值并且把该散列值包括在公开密钥媒体密钥块中。在一个实施例 中,内容制作器可以自主地核对被撤销的对称内容密钥并且用虚密钥 (dummy key)(例如,零)取代公开密钥媒体密钥块中被撤销的条目。 在一个实施例中,内容制作器可以预订一个尝试识别被泄露的设备和密 钥的业务。在块112处,内容制作器利用对称内容密钥和公开密钥加密 算法来加密内容。然后在块114处,加密的内容和公开密钥媒体密钥块 可以一起被分发。 返回来参考图1,当回放设备14(制造的M个回放设备中的一个) 接收到受保护的内容时,该回放设备使用从它的私有密钥组Si中所选择 的私有密钥(KA,KB,...,KL)之一来访问公开密钥媒体密钥块36中相应于 所选择的私有密钥的条目。可以利用所选择的私有密钥以及相应的解密 算法对该条目处被加密的对称内容密钥进行解密。一旦被解密,回放设 备就可以利用被解密的对称内容密钥来解密被加密的内容32并且回放 38内容16。 图4是图示根据本发明的实施例来接收并处理公开密钥媒体密钥块 和加密内容的流程图。在块120处,回放设备接收受保护的内容。在一 个实施例中,受保护的内容被存储在诸如DVD的存储媒体上。在另一个 实施例中,受保护的内容通过广播媒体被接收。在块122处,公开密钥 媒体密钥块可以从受保护的内容中被读取。在块124处,利用从存储在 回放设备的TPM内的私有密钥组Si中选择的私有密钥,回放设备解密相 关的被加密的对称内容密钥。如上面指出的,在一个实施例中,内容制 作器可以把对称内容密钥的散列值包括在公开密钥媒体密钥块中。在块 126处,回放设备确定被解密的对称内容密钥是不是有效的。在一个实 施例中,这可以包括(利用跟内容制作器相同的散列算法)计算被解密 的对称内容密钥的散列值并且比较这个散列和来自公开密钥媒体密钥 块中的散列值。如果两个散列值相匹配,则该私有密钥被认为是有效的 (即,没有被撤销),并且在块128处继续进行处理。也可以使用其它 确定被解密的对称密钥的有效性的方法。在这个块中,回放设备利用被 解密的对称内容密钥来解密被加密的内容。在块130处,回放设备播放 该内容以便用户理解,并且回放处理在块132处结束。如果在块126处, 被解密的对称内容密钥被确定是无效的,则在块134处进行核对以确定 在回放设备内的组Si中是否有更多的私有密钥可供使用。如果在私有密 钥组Si中有更多的私有密钥可用,则在块136处可以从组Si中选择另一 个尚未被选择过的私有密钥,并且处理继续尝试利用新选择的私有密钥 来解密被加密的对称内容密钥。这个过程可以继续进行直到对称内容密 钥已经被成功地解密或者直到Si中所有的私有密钥都被试过为止。如果 在这个回放设备上没有更多的私有密钥可供使用(例如,有效地解密被 加密的对称内容密钥),则处理在块132处结束。在这种情形下,回放 设备不能播放所述内容。 当内容制作器变得意识到来自N个密钥对的组中的特定的私有密钥 被泄露时,内容制作器可以撤销对该私有密钥的授权。在一个实施例 中,这可以通过用新的密钥对来替换N个密钥对中相应于被撤销的私有 密钥的密钥对而实现。对于在这个替换动作之后分发的所有新的内容, 可以用新的公开密钥来加密分发的对称内容密钥。将不使用相应于被撤 销的私有密钥的公开密钥来使得存储在现有回放设备上的撤销的私有 密钥将能够被用来成功地解密被加密的对称内容密钥。此外,通过用新 的密钥对替换被撤销的密钥对,可供使用的密钥对的总数目没有下降。 甚至是在被撤销的设备上,现有的内容将仍然播放。然而,撤销的设备 将不能够播放新的内容。改变对称密钥对广播内容并不真正有助,因为 它是被泄露的。 列入黑名单的密钥的数目取决于检测泄露的机制。如果冒牌制造商 利用来自一个或多个泄露的设备的密钥来生产设备,则在冒牌设备中的 所有密钥可被列入黑名单。在一个公开密钥变得太普及并且因此假设其 被泄露并被广为分发的在线情况下,可以只有一个密钥被列入黑名单。 在另一个实施例中,对被泄露的私有密钥的撤销可以通过如下方式 来实现:在以后分发的所有受保护内容中用已知的标记值(例如零)取 代公开密钥媒体密钥块的条目中相应于撤销的密钥对的加密对称密 钥。当回放设备尝试解密公开密钥媒体密钥块条目中与泄露的私有密钥 相关联的标记值时,将检测到无效的解密并且不会发生回放。这样,尽 管私有密钥被泄露,但以后分发的所有受保护的内容仍可以是安全的。 然而,该实施例具有这样的缺点:随着时间的流逝,由于响应于对系统 的攻击而撤销密钥,结果降低了有效的密钥对的数目。 在另一个实施例中,由于密钥被撤销,当少数的“合法”回放设备 的组Si只包括都已经被撤销的私有密钥时,有可能将致使它们无法操作 来用于解密新分发的内容。这些设备将仍然能够播放现有的内容。根据 本发明的实施例,通过适当地选择密钥对的数目N和每个组Si中的私有 密钥的数目(在这里被称为L),撤销合法设备的可能性可被最小化。 假设回放设备的数目M不能被严格地控制(也就是说,制造商将期望制 造并销售跟消费者需求量所要求的一样多的回放设备)。令R代表被撤 销的私有密钥的预期数目。令Ev代表被撤销的合法回放设备的可容许的 预期数目。在一个实施例中,期望Ev<1.0(这意味着不会出现致使合法 回放设备无法操作来用于解密现有的内容)。 下面的表达式可用来选择被存储在回放设备内的组Si中的私有密 钥的数目L: L>(1n(Ev)-1n(M))/(1n(R)-1n(N))。 匿名对于本发明的实施例的好处包括:在线定制的内容不暴露消费 者的身份(提供单个公开密钥的人)。密钥可以属于许多设备。同样在 订户列表的情况下也是这样的,其中每个订户提供一个公开密钥,并且 内容只对那些属于一个或者多个用户的密钥加密。对于一个所有密钥都 被使用的广播场景,不存在匿名问题一每个人都可能得到内容、并且对 内容的访问由某些其它机制(例如CD销售,有线预订等)保护。 通过使用本发明的实施例,回放设备制造商可以生成它自己的嵌入 到其回放设备中的私有密钥组并且(通过例如张贴在因特网上)公布相 应的公开密钥。本发明消除了对集中式安全密钥生成工具的需要,并且 避免了与这样的方案相关的安全漏洞。一旦公开密钥被公布,任何人都 能够使用这些公开密钥来变成受保护的内容制作器。这些新的内容制作 器能够制作内容、如这里描述地加密该内容,并且制造商的回放设备将 能够解密并回放受保护的内容。因此,使用本发明的内容制作器的数目 可以是无限制的。 这里所描述的技术不受限于任何特定的硬件或者软件配置;它们可 以在任何计算或者处理环境中找到适用性。所述技术可以以硬件、软 件、或者二者的组合来实现。这些技术可以以在可编程机器上执行的程 序来实现,其中可编程机器诸如:移动或者固定计算机、个人数字助理、 机顶盒、蜂窝式手机和寻呼机、以及其它电子设备(包括诸如DVD播放 器和CD播放器的消费电子设备),所述的每一种机器包括:处理器、 处理器可读取的存储媒体(包括易失性的和非易失性的存储器和/或存 储元件)、至少一个输入设备、以及一个或多个输出设备。程序代码被 应用到利用输入设备引入的数据以履行所描述的功能并且生成输出信 息。该输出信息可被应用到一个或多个输出设备。本领域的技术人员可 认识到,本发明可以利用多种计算机系统配置来实行,包括多处理器系 统、小型计算机、大型计算机等等。本发明也可以在分布式计算环境中 实行,其中任务由通过通信网络链接的远程处理设备来履行。 每个程序可以以高级程序或者面向对象的编程语言来实现,以与处 理系统进行通信。然而,如果期望的话,程序可以以汇编或者机器语言 来实现。在任何情形下,所述语言都可被编译或者解译。 程序指令可被用来促成多用途的或者专用的处理系统,其中利用这 些指令对该系统进行编程以履行这里所描述的操作。替代地,所述操作 可以由包含用于履行所述操作的硬连线逻辑的特定硬件部件来履行,或 者由被编程的计算机部件和定制的硬件部件的任意组合来履行。这里所 描述的方法可以被提供为计算机程序产品,该产品可以包括具有存储于 其上的指令的机器可读媒体,其中所述指令可被用来编程处理系统或其 它电子设备以履行所述的方法。这里使用的术语“机器可读媒体”应当 包括能够存储或编码供机器执行的指令序列、并且导致机器履行这里所 描述的任一方法的任何媒体。术语“机器可读媒体”因此应当包括,但 不限于:固态存储器、光盘和磁盘、以及编码数据信号的载波。此外, 在本领域中通常把一种形式或者另一种形式的(例如程序、进程、过程、 应用、模块、逻辑等等)软件说成是采取行动或者导致结果。这样的表 达只是陈述处理系统执行软件导致处理器履行产生结果的动作的一种 简略方式。 尽管已参考示范性实施例对本发明进行了描述,但并不打算让该描 述被看作是具有限制意义。本发明的示范性实施例以及其它实施例的多 种修改,对于本发明所属领域的技术人员来说是显而易见的,这些修改 被认为是位于本发明的精神和范围之内。