基于云的可移动组件绑定 背景
用户以许多不同的方式享受媒体内容。 用户能够以诸如电台或电影院等传统内容 分发者所指示的方式, 通过在收音机上收听歌曲或在电影院观看电影, 来享受内容。 用户也 使用通常从另一种类型的内容分发者购买的物理介质, 例如通过从商店购买 CD 上的歌曲 或 DVD 上的电影来享受内容。
最近, 用户已能能够通过根据订阅、 购买、 租赁或其他商业模型来提供内容的服 务, 通过记录内容或访问内容来数字地访问受保护的媒体内容。许多用户, 例如, 希望下载 受保护的媒体内容, 并在诸如蜂窝电话等移动计算设备中使用受保护的媒体内容。此内容 可以包括例如, 歌曲、 音乐视频、 铃声、 电影, 以及计算机游戏。
然而, 对于向移动计算设备分发内容的分发服务存在重大挑战。某些分发服务遵 循易遭到试图盗取受保护的媒体内容的恶意攻击的分发内容的过程。 其他分发服务花费大 量时间。 某些针对例如移动计算设备的内容分发服务依靠相对较慢的组件来执行复杂密码 功能, 这可能导致在移动计算设备请求使用受保护的媒体内容和接收到该使用的许可之间 有几秒或者甚至几分钟的延迟。
此外, 用户常常希望购买诸如新蜂窝电话或个人数字助理 (PDA) 等新移动计算设 备。在这样做时, 当前分发服务常常花费大量带宽和 / 或损害内容的安全性以将该内容提 供给新设备。 用户进而也会花费额外的时间和金钱来在他们的新设备上重新获得他们的内 容。 这会使用户恼怒, 并且在某些情况下使用户更换移动服务提供商, 这会对希望留住客户 的服务提供商造成负面影响。
概述
提供本概述是为了介绍基于云的可移动组件绑定的简化概念。 这些简化概念在以 下详细描述中进一步描述。本概述并不旨在标识所要求保护的主题的必要特征, 也不旨在 用于帮助确定所要求保护的主题的范围。术语 “工具” 例如可以在适于上下文时指系统、 方 法、 计算机可读介质、 和 / 或技术。
本文描述了能够允许进行基于云的可移动组件绑定的工具。在某些实施例中, 这 些工具以密码安全的方式将受保护的媒体内容绑定到移动计算设备中的可移动组件, 而无 需可移动组件执行复杂密码功能。通过这样做, 移动计算设备可以请求访问内容并且快速 且以密码稳健的方式接收使用内容的许可。
附图简述
参考以下附图描述基于云的可移动组件绑定的各实施例。在各附图中, 使用相同 的标号来指示相同的特征和组件 :
图 1 示出了其中可以实现基于云的可移动组件绑定的各实施例的示例数字权限 管理 (DRM) 系统。
图 2 示出了其中可以实现基于云的可移动组件绑定的各实施例的另一个示例 DRM 系统。
图 3 示出了用于基于云的可移动组件绑定的实施例的示例方法。
图 4 示出了可以在 DRM 系统中实现的示例设备的各个组件。
图 5 示出了用于通过移动计算设备操作的基于云的可移动组件绑定的实施例的 示例方法。
图 6 示出了用于通过经由移动设备通信网络访问的远程计算设备来操作的基于 云的可移动组件绑定的实施例的示例方法。
详细描述
概览
基于云的可移动组件绑定的各实施例提供管理与受保护的和 / 或得到许可的媒 体内容的数字权限管理 (DRM) 许可证相关联的权限和限制的技术。如此处所描述的, 受保 护的媒体内容可以包括购买、 下载, 或以其他方式获取的任何类型的媒体内容, 诸如音乐、 电影、 应用程序、 游戏, 及其他媒体内容, 它们接受 DRM 许可证的管理以保护它免遭未经授 权的共享、 复制, 和 / 或分发。
在示例 DRM 系统中, 各种设备可被实现为对受保护的媒体内容执行如 DRM 许可证 所准许的动作。设备可以包括可以对受保护的媒体内容执行诸如呈现、 回放、 复制、 打印、 执行、 消费和 / 或其他动作等动作的任何类型的便携式通信设备、 音乐设备、 电视客户机设 备、 游戏系统等等。DRM 许可证提供对受保护的媒体内容执行的动作的权限和限制。
在 DRM 系统中, 第一设备可以包括可移动组件, 该可移动组件是与系统的 DRM 许可 证相关联的令牌。例如, 该设备的可移动组件可以包括作为与该设备的 DRM 许可证相关联 的硬件令牌的用户标识模块 (SIM) 卡或类似组件。第一设备还可以包括存储该第一设备可 对其执行 DRM 许可证所准许的动作的受保护的媒体内容的可移动存储器卡。可移动组件 ( 例如, 与 DRM 许可证相关联的令牌 ) 和可移动存储器卡可以从第一设备移除并安装在第 二设备中以使得第二设备可以对受保护的媒体内容执行如 DRM 许可证所准许的操作。在一 个实施例中, 可移动组件和可移动存储器卡是组合的组件, 以使得可移动存储器卡是与 DRM 许可证相关联的令牌。
在另一个示例 DRM 系统中, 域可以包括各自具有对该域是共用的私钥的多个设 备。域还可以包括与该域的多个设备中的每一个的 DRM 许可证相关联的唯一证书。另外, 受保护的媒体内容还可以绑定到域, 以使得作为具有域私钥和唯一证书的域成员的设备可 以对绑定到该域的受保护的媒体内容执行动作。例如, 域的第一设备中的存储受保护的媒 体内容的可移动存储器卡可以被移至该域的第二设备, 并且如果该第二设备也具有与该域 的 DRM 许可证相关联的可移动组件, 则该第二设备可以对受保护的媒体内容执行动作。
在另一个实施例中, DRM 系统中的域的第一设备可以包括对应于与该系统的 DRM 许可证相关联的第一唯一证书的可移动组件。 例如, 可移动组件可以是可移动组件、 SIM 卡, 或其他设备令牌。该域的第二设备还可以包括对应于与该系统的 DRM 许可证相关联的第二 唯一证书的可移动组件。该域的第一设备还可以包括存储该设备可以对其执行如 DRM 许可 证所准许的动作的受保护的媒体内容的可移动存储器卡。然后, 可移动存储器卡可以被从 第一设备移除并安装在第二设备中, 以使得该第二设备可以对受保护的媒体内容执行如与 该第二设备中的可移动组件相关联的 DRM 许可证所准许的动作。在一实施例中, 多个设备 的每一个唯一证书都包括对应于作为与多个设备的 DRM 许可证相关联的令牌的可移动组 件的标识符。无论是否移动可移动组件, 它都能够移动并可用来绑定设备上的受保护的媒体内 容。 可移动组件例如可以是不能快速执行诸如非对称密钥运算等密码复杂功能的可移动组 件。诸如例如 SIM 等当前可移动组件可能花费几秒或甚至几分钟来执行这些和类似的复杂 密码功能。这样做可能会延迟移动计算设备获得使用受保护的媒体内容的许可, 这可能会 使移动计算设备的用户恼怒。
在一个实施例中, 这些工具请求绑定到可移动组件的密码安全标识符, 接收这样 的标识符, 并且使用该标识符来通过移动设备通信网络并向计算上快速的设备 ( 例如, 服 务器 ) 请求使用内容的许可。在这样做时, 这些工具在某种意义上以可移动组件的较慢的 计算能力换取通过移动设备通信网络与计算上快速的设备的快速通信速度。 这些工具的该 实施例假设计算上快速的设备能够以可移动组件执行复杂密码功能所花费的时间的小部 分来执行这些复杂密码功能。在某些情况下, 这些工具允许在仍将对内容的使用绑定到可 移动组件的同时通过向基于云的实体 ( 例如, 远程服务器 ) 请求许可来比向可移动组件请 求许可更快速地接收许可。
虽然用于基于云的可移动组件绑定的工具特征和概念能够在任何数量的不同环 境、 系统和 / 或各种配置中实现, 但基于云的可移动组件绑定的各实施例在以下各示例系 统和环境的上下文中描述。 示例环境和实施例
图 1 示出了其中可以实现基于云的可移动组件绑定的各实施例的示例数字权限 管理 (DRM) 系统 100。在此示例中, 系统 100 包括设备 102 和设备 104, 它们各自被实现为 经由移动设备通信网络 108 与域控制器 106 进行通信。示例系统 100 还包括受保护的媒体 内容的内容分发器 110, 并包括许可证服务器 112。
移动设备通信网络 108 可被实现为使用任何类型的网络拓扑结构和 / 或通信协议 的媒体内容分发系统和 / 或 DRM 系统的一部分, 并可被表示或以其他方式实现为两个或更 多网络的组合。例如, 通信网络 108 可以包括允许设备 102 和 / 或设备 104 与各种实体进 行通信以便于媒体内容的分发和 / 或保护的任何合适的有线和 / 或无线网络。设备 102 和 设备 104 可以经由通信网络 108 来彼此以及与域控制器 106、 内容分发器 110 和许可证服务 器 112 进行通信。
诸如 DRM 系统 100 中的设备 102 等任一个设备都可被实现为诸如移动电视设备、 移动音乐设备、 游戏系统、 蜂窝电话、 便携式计算机, 以及电器设备等具有通信能力的移动 计算设备中的任一个或组合。在各实施例中, 设备可以被实现为具有诸如 DRM 平台等任何 数量的不同组件及其组合, 如参考图 4 所示的示例设备进一步描述的。设备 102 或 104 还 可以与操作该设备的用户 ( 即, 一个人或一组人 ) 和 / 或实体相关联, 以使得 “设备” 描述 可以包括用户、 软件, 和 / 或其他组件的逻辑设备。
在此示例中, DRM 系统 100 中的设备 102 包括一个或多个处理器 114( 例如, 微处 理器、 控制器等中的任一个 ), 这些处理器处理各种计算机可执行指令, 以便控制设备的操 作, 与其他电子和计算设备进行通信, 以及实现基于云的可移动组件绑定的各实施例。 设备 102 可以可任选地包括存储受保护的媒体内容 118( 例如, 受 DRM 保护的媒体内容 ) 的内部 存储器 116, 并具有主存存储受保护的媒体内容 122 的可移动存储器卡 120 的能力。受保 护的媒体内容 118 和 / 或 122 可以包括购买、 下载, 或以其他方式获取的任何类型的媒体内
容, 诸如音乐、 电影、 应用程序、 游戏, 图片、 视频剪辑等等。内容分发器 110 可以经由通信网 络 108 向设备 102 提供受保护的媒体内容 118 和 122。
设备 102 还包括与 DRM 许可证 126 相关联的可移动组件 124( 例如, DRM 许可证密 码地绑定到可移动组件 124)。在一实施例中, 可移动组件 124 是设备 102 的令牌, 并且 DRM 许可证 126 密码地绑定到该设备的令牌。可移动组件 124 可被实现为与 DRM 许可证 126 相 关联的闪存卡、 用户标识模块 (SIM) 卡、 智能卡, 和 / 或设备 102 的任何其他类型的令牌。 可 移动组件 124 可以包括 USIM( 用户订户标识模块 ), 该 USIM 是卡上的用于存储用户和 / 或 认证信息的逻辑实体。例如, DRM 许可证 126 可以具有诸如顾客标识符、 服务标识符和 / 或 域标识符等以任何组合向 DRM 系统 100 的域控制器 106 和 / 或许可证服务器 112 认证设备 的各种相关联的许可证标识符 128。各种相关联的许可证标识符 128 提供用于确定设备是 否可对受保护的媒体内容执行如 DRM 许可证 126 所准许的动作的多个回放准则。
在一个实施例中, 可移动组件 124 存储唯一秘密密钥和现时值 ( 例如, 随机数或 “一次性数字 (number once)” 值 ), 递增现时值, 并执行对称密钥运算。可移动组件 124 能 够执行诸如非对称密钥运算等其他操作通过这样做可能比执行对称密钥运算花费长得多 的时间。 域控制器 106 管理域中的设备成员资格, 并且直接或通过许可证服务器 112 间接 作为向该域的成员的设备发放域证书和私钥。许可证服务器 112 发放提供对受保护的媒 体内容 118 和 / 或 122 执行的动作的权限和限制的 DRM 许可证 126。在一实现中, 域控制 器 106 和许可证服务器 112 可由单独的实体来管理, 或者可以在域中一起实现。虽然域控 制器 106、 内容分发器 110, 以及许可证服务器 112 被描述为 DRM 系统 100 的分布式, 独立组 件, 但控制器、 分发器, 以及服务器中的任一个或多个可被一起实现为该系统的多功能组件 或实体。在各实现中, 域成员资格还可以由网络运营商、 第三方实体, 或由用户来管理。
当设备 102 包括受保护的媒体内容, 如受保护的媒体内容 118 和 / 或 122, 并安装 了可移动组件 124 时, 一旦从诸如许可证服务器 112 等基于云的实体接收到许可, 设备 102 就可以对受保护的媒体内容执行如 DRM 许可证 126 所准许的动作, 以及以其他方式使用该 受保护的媒体内容。 DRM 许可证 126 提供对受保护的媒体内容执行的动作的权限和限制, 诸 如呈现、 回放、 复制、 打印、 执行、 消费, 和 / 或对受保护的媒体内容的其他动作。在一替换实 施例中, 如参考图 2 所示的 DRM 系统所描述的, 域可以包括一组可移动组件, 这些可移动组 件与域证书相关联以使得任一个可移动组件都可可被实现为对受保护的媒体内容执行动 作的基础, 而无需改变 DRM 许可证 126。另外, 域控制器 106 可以更新域证书, 以向可以与 DRM 许可证 126 一起使用的一组组件添加和 / 或从其中删除可移动组件的子集。
在示例系统 100 中, DRM 许可证 126 可以与可移动组件 124 一起从一个设备移到 另一个设备。例如, 用户可以从设备 102 中移除可移动组件 124 和可移动存储器卡 120, 并 将它们安装 ( 在 130 处 ) 在设备 104 中。当可移动组件 124 和具有受保护的媒体内容 122 的可移动存储器卡 120 被安装在设备 104 中时, 该设备然后可以同样在从基于云的实体接 收到许可后对受保护的媒体内容 122 执行如 DRM 许可证 126 所准许的动作。
在设备 102 的替换实施例中, 可移动组件 124 和可移动存储器卡 120 可以是组合 的组件 132, 以使得可移动存储器卡 120 是与设备 102 的 DRM 许可证 126 相关联的令牌 ( 例 如, 该 DRM 许可证密码地绑定到可移动存储器卡 120)。然后, DRM 许可证 126 可以与组合的
组件 132 一起从设备 102 中移除并安装在设备 104 中。
用户例如可以获得新电话 ( 例如, 设备 104), 从旧电话 ( 例如, 设备 102) 中移除 SIM( 例如, 可移动组件 124) 和闪存卡 ( 例如, 可移动存储器卡 120), 并将该 SIM 和闪存卡 插入到新电话中。当新电话被打开时, 它可以根据图 3 和 / 或 5 和 6 中所示出的方法来获 得使用受保护的媒体内容 122 的许可。
在一个实施例中, 新设备可以被设置成利用域协议并且在没有用户交互的情况下 加入域。作为加入域的结果, 该设备接收域证书和绑定到该设备相关联的私钥。一旦使用 绑定到可移动组件的密码安全标识符来从基于云的设备接收到许可, 新设备就将能够使用 域私钥来播放任何先前获得的内容, 该域私钥允许设备从域绑定许可证提取内容密钥并对 内容进行解密。
可移动组件 124 可以包括秘密。此秘密密码地绑定到可移动组件 124( 例如, 用硬 件或软件 )。 在一个实施例中, 秘密通过安全信道并使用远程实体 ( 例如, 许可证服务器 112 或 212) 来被提供到可移动组件 (124 或 232) 中。可移动组件 124 也可以生成随机数, 例如 现时值, 并在后续通信时递增该现时值。 可移动组件还能够提供密码安全标识符, 该操作在 此是使用秘密来对现时值执行的强对称密钥运算。这在数学上可被表示为 : { 现时值 }SK
其中, SK 是秘密密钥, 现时值是一个随机数或该数字的增量, 并且该函数是强对称 密钥运算。
图 2 示出了其中可以实现基于云的可移动组件绑定的各实施例的另一示例数字 权限管理 (DRM) 系统 200。在此示例中, 系统 200 包括域 202, 该域 202 包括向该域注册并 被实现为经由移动设备通信网络 208 与域控制器 206 进行通信的多个设备 204。示例系统 200 还包括受保护的媒体内容的内容分发器 210, 以及许可证服务器 212, 多个设备 204 被实 现为经由通信网络 208 与该许可证服务器 212 进行通信。域 202 中的多个设备 204 可以对 应于一个用户或若干不同的用户。通信网络 208 的示例在上文中参考图 1 所示的通信网络 108 来描述。
向域 202 注册的多个设备 204 可被实现为便携式通信设备 214( 例如, 蜂窝电话 )、 电视客户机设备 216、 音乐设备 218、 游戏系统 220 中的任一个或组合, 或被实现为诸如台式 计算机、 便携式计算机或电器设备等任何其他基于计算的设备 222。
在各实施例中, 设备可被实现为具有诸如 DRM 平台等任何数量的不同组件及其组 合, 如参考图 4 所示出的示例设备进一步描述的。多个设备中的任一个设备还可以与操作 该设备的用户 ( 即, 一个或多个人 ) 和 / 或实体相关联, 以使得 “设备” 描述可以包括用户、 软件, 和 / 或其他组件的逻辑设备。
示例设备 224 表示向域 202 注册的多个设备 204 中的任一个。示例设备 224 包括 一个或多个处理器 226( 例如, 微处理器、 控制器等中的任一个 ), 这些处理器处理各种计算 机可执行指令, 以便控制设备的操作, 与其他电子和计算设备进行通信, 以及实现基于云的 可移动组件绑定的各实施例。示例设备 224 还包括存储受保护的媒体内容 230 的可移动存 储器卡 228。 如上所述, 受保护的媒体内容可以包括购买、 下载, 或以其他方式获取的任何类 型的媒体内容, 如音乐、 电影、 应用程序、 游戏, 图片、 视频剪辑等等。内容分发器 210 可以通 过通信网络 208 向域 202 中的多个设备 204 提供受保护的媒体内容 230。
示例设备 224 还包括可移动组件 232, 该可移动组件 232 是设备 224 的令牌并与 DRM 许可证 234 相关联 ( 例如, DRM 许可证密码地绑定到可移动组件 232)。可移动组件 232 可被实现为与 DRM 许可证相关联的可移动组件、 闪存卡、 用户标识模块 (SIM) 卡、 被实现为 智能卡, 和 / 或被实现为示例设备 224 的任何其他类型的令牌。
此示例中的可移动组件能够提供组件的密码安全标识符, 该标识符可由 DRM 系统 200 的域控制器 206 或许可证服务器 212 用来认证可移动组件 232, 并相应地认证其是否具 有使用设备 224 上的受保护的媒体内容 230 的权限。
在一实施例中, 域 202 包括对该域共用的域私钥, 并包括与向域 202 注册的多个设 备 204 中的每一个的 DRM 许可证相关联的唯一证书。例如, 设备 224 的 DRM 许可证 234 具 有对域 202 共用的相关联的域私钥 236, 并具有唯一证书 238。另外, 域 202 中的多个设备 的唯一证书中的每一个都包括对应于作为与多个设备的 DRM 证书相关联的令牌的可移动 组件的标识符。
在系统 200 中, 用户可以从域 202 中的一个设备 214 移除可移动存储器卡 228 和 可移动组件 232, 并将可移动存储器卡 228 和可移动组件 232 安装在该域中的另一个设备 218 中。当安装了这些之后, 设备 218 然后可以根据方法 300、 500, 以及 600 中的一个或多 个来对受保护的媒体内容 230 执行如特定设备的 DRM 许可证所准许的动作。
一般而言, 这些工具包括在此描述的任何功能、 方法、 和模块中的任一个并且可使 用硬件、 软件、 固件 ( 例如, 固定逻辑电路 )、 手动处理或其任何组合来实现。功能、 方法、 或 模块的软件实现表示当在基于计算的处理器上执行时执行指定任务的程序代码。参考图 3 所描述的示例方法 300 可在计算机可执行指令的一般上下文中描述。一般而言, 计算机可 执行指令可包括执行特定功能或实现特定抽象数据类型的应用程序、 例程、 程序、 对象、 组 件、 数据结构、 过程、 模块、 功能等。
这些方法还能在其中功能由通过通信网络链接的远程处理设备完成的分布式计 算环境中实现。在分布式计算环境中, 计算机可执行指令可以位于包括存储器存储设备在 内的本地和远程计算机存储介质中。 此外, 此处所描述的特征是平台无关的, 以便这些技术 可在具有各种处理器的各种计算平台上实现。
图 3、 5 和 6 示出了基于云的可移动组件绑定的示例方法。描述方法的次序并不旨 在解释为限制, 并且任何数量的所述方法框都可以按任何次序组合以实现本方法或实现替 换方法。
示例方法
图 3 示出了由通过移动设备通信网络 ( 例如, 图 1 的移动设备通信网络 108) 进行 通信的移动计算设备 ( 例如, 图 1 的设备 102) 和远程计算设备 ( 例如, 图 1 的许可证服务 器 112) 执行的方法 300, 通信是作为图 3 中的虚线上的箭头示出的。图 5 和 6 示出了在某 些情况下提供附加细节并涉及移动计算设备 ( 图 5) 或通过移动设备通信网络进行通信的 实体 ( 图 6) 的动作的其他方法。
框 302 向可移动组件请求绑定到该可移动组件的密码安全标识符, 该可移动组件 物理地连接到移动计算设备但可以从该移动计算设备移除, 该标识符标识该可移动组件, 并且不可由该移动计算设备解密, 但可由能够使用移动设备通信网络来与该移动计算设备 进行通信的远程计算设备解密。在一个实施例中, 设备 102 向可移动组件 124 请求这一标识符。 框 304 从该可移动组件接收密码安全标识符。 继续当前实施例, 设备 102 从可移动 组件 124 接收标识符。在某些情况下, 密码安全标识符可由可移动组件通过使用绑定到该 可移动组件并为远程计算设备所知的秘密来进行对称密钥运算来计算。如上文所指出的, 可移动组件能够使用秘密对一随机数或该数字的增量执行强对称密钥运算。 该秘密可以用 硬件或软件来绑定到该可移动组件。也如所指出的, 该密钥可以由许可证服务器 112 或可 通过移动设备通信网络进行访问的某一其他设备通过移动设备通信网络 108 来提供。
框 306 通过移动设备通信网络将密码安全标识符传送到远程计算设备以请求使 用受保护的媒体内容的许可, 该密码安全标识符可由远程计算设备用来确定可移动组件是 真实的, 并且与该可移动组件相关联的用户具有对受保护的媒体内容进行所请求的使用的 权限。继续当前实施例, 移动计算设备经由移动设备通信网络并利用密码安全标识符来向 能够相对于可移动组件 124 快速执行复杂密码功能的远程设备请求使用受保护的媒体内 容的许可。
在某些实施例中, 框 306 也可以传输可移动组件的非加密标识符, 该标识符有效 地使远程计算设备能够使用密码安全标识符和非加密标识符来认证可移动组件。 在此情况 下, 非加密标识符可以使远程计算设备省去猜测密码安全标识符与哪一个可移动组件相关 联, 该非加密标识符还可以使远程计算设备省去试图用与该远程设备已知的某一其他可移 动组件相关联的秘密来对密码安全标识符进行解密。
框 308 经由移动设备通信网络并从移动计算设备接收使用受保护的媒体内容的 请求和密码安全标识符。继续当前实施例, 许可证服务器 112 接收使用受保护的媒体内容 的请求以及设备 124 的标识符、 许可证 126 或所涉及的受保护的媒体内容 ( 例如, 受保护的 媒体内容 122) 的标识符和可移动组件 124 的密码安全标识符。
框 310 基于密码安全标识符来确定可移动组件是真实的并且与该可移动组件相 关联的实体具有对受保护的媒体内容进行请求的使用的权限。 这些工具确定可移动组件是 否是与具有如所请求的使用受保护的媒体内容的权限的实体 ( 例如, 用户、 用户组、 设备或 设备组 ) 相关联的可移动组件。由此, 在该实施例中, 许可证服务器 112 可以通过移动设备 通信网络 108 并从设备 102 接收密码安全标识符, 以及许可证服务器 112 可以用来确定设 备 102 是否已经被撤消 ( 例如, 是不被信任使用内容的设备 ) 的其他标识符, 以及涉及所述 内容的许可证。
注意, 此时, 可移动组件 124 可能已经使用与许可证服务器 112 共享并具有现时值 的秘密来执行强对称密钥运算。许可证服务器 112 可以接收该标识符, 用秘密来对标识符 进行解密以找出现时值, 并由此确定可移动组件是否可信。 如果可信, 则许可证服务器然后 可以确定设备是否可信, 并且如果两者都是可信的, 则确定许可证是否允许所请求的使用。
还应注意, 可移动组件执行了相对较快的功能以提供该密码安全标识符。可移动 组件不需要执行如非对称密钥运算等复杂和 / 或较费时的功能。因为可移动组件不执行这 种操作, 所以移动计算设备要求服务器执行复杂功能。 在某种意义上, 这用可移动组件的较 慢计算速度换取通过移动设备通信网络进行通信的速度和许可证服务器 112 的速度。许可 证服务器 112 能够相对于可移动组件快速执行计算, 以便对标识符进行解密并向设备提供 设备可以用来对所述受保护的媒体内容进行解密的信息。同样, 移动设备通信网络 108 能
够也相对于可移动组件 124 的计算速度快速传递请求和响应。
请求和响应的传递时间可被称为 : tc。许可证服务器 112 接收请求, 适当地验证, 并作出响应所花费的时间可被称为 : tls。可移动组件接收对标识符的请求, 计算标识符, 并 将其返回所花费的时间可被称为 : tID。 如下面所示出的, 这些时间可以全都比改为由可移动 设备接收需要非对称密钥运算的计算的请求, 执行该操作, 并将结果提供到移动计算设备 所花费的时间 ( 总共 : T 加密 ) 要短。由此, 此示例中的该特定协议可以被表示为 :
tID+tc+tls < T 加密
该时间优点并非这些工具所必需的, 因为这些工具可能具有该时间增益之外的价 值, 诸如当可移动组件不能够执行或不期望执行复杂密码功能时。
然而, 该时间优点可以改善用户的体验。 例如, 用户可以在该用户要求他们的设备 播放音乐视频时等待例如比用户设备的可移动组件必须执行复杂密码功能的情况少的时 间。
框 310 还可以在执行框 312 之前确定移动计算设备是否可信。在一个实施例中, 这些工具可通过以下操作来这样做 : 接收标识移动计算设备的设备标识符 ( 例如, 在来自 移动计算设备的请求中 ), 将该设备标识符与撤消列表进行比较, 并且如果该设备标识符不 在该列表中, 则确定移动计算设备是可信的。 框 312 经由移动设备通信网络将信息传送到移动计算设备, 该信息足以使得移动 计算设备能够使用受保护的媒体内容。许可证服务器 112 例如可以提供使移动计算设备 102 能够对受保护的媒体内容 122 进行解密的密码信息。
此信息可以包括可由移动计算设备用来对受保护的媒体内容进行解密的密钥, 该 密钥的示例在方法 500 和 / 或 600 中更详细地描述。
框 314 响应于传送密码安全标识符的动作并通过移动计算设备通信网络从远程 计算设备接收使用受保护的媒体内容的许可。框 314 也可以如所请求的那样使用内容。
在当前实施例中, 移动计算设备 102 通过移动设备通信网络 108 从许可证服务器 112 接收许可, 对受保护的内容 122 进行解密, 并且然后使用内容。 例如, 假设用户请求在蜂 窝电话上播放音乐视频。 蜂窝电话通常快速地并且在具有极少或不具有用户可以注意到的 中断的情况下播放音乐视频。 已经由云上的实体基于可移动组件得到验证并确定与该可移 动组件相关联的实体具有所请求的权限来给予蜂窝电话这样做的许可。
本讨论现在转向示例设备和可移动组件, 此后在该示例设备和可移动组件的上下 文中描述两个示例方法。
示例移动计算设备和可移动组件
图 4 示出了示例设备 400 的各种组件和 SIM 类型的可移动组件 402。在各实施例 中, 设备 400 可被实现为计算、 电子、 便携式、 游戏、 电器、 客户机设备中的一个或其组合, 或 者用于实现基于云的可移动组件绑定的各实施例的任何其他类型的设备。例如, 设备 400 可被实现为图 1 所示的设备 102, 或被实现为图 2 所示的各种设备 204 中的任一个。在这些 实施例中, 也可以实现 SIM
402, 在一个示例中是可插入蜂窝电话类型的移动计算设备并可以从其中移除的 可移动硬件卡类型的 SIM。
设备 400 包括一个或多个媒体内容输入 404, 通过这些媒体内容输入 404 经由通
信网络接收媒体内容 ( 例如, 有许可证的媒体内容、 受保护的媒体内容、 DRM 媒体内容等 )。 设备 400 还包括通信接口 406, 其可被实现为串行和 / 或并行接口、 无线接口、 任何类型的网 络接口、 调制解调器、 和任何其它类型的通信接口中的任一个或多个。网络接口在设备 400 和通信网络之间提供连接, 其它电子和计算设备可以通过该连接与设备 400 传递数据。
类似地, 串行和 / 或并行接口允许在设备 400 和其它电子或计算设备之间直接进 行数据通信。调制解调器还方便经由常规电话线、 DSL 连接、 电缆、 和 / 或其它类型的连接 与其它电子和计算设备通信。无线接口使设备 400 能够从无线通信网络和 / 或输入设备接 收数据和内容。
设备 400 还包括一个或多个处理器 408( 例如, 微处理器、 控制器等中的任一个 ), 其处理各种计算机可执行指令来控制设备 400 的操作、 与其它电子和计算设备进行通信、 以及实现基于云的可移动组件绑定的各实施例。设备 400 可用诸如一个或多个存储器存储 组件等计算机可读介质 410 来实现, 存储器存储组件的示例包括可移动卡、 随机存取存储 器 (RAM)、 非易失性存储器 ( 例如, 只读存储器 (ROM)、 闪存、 EPROM、 EEPROM 等中的任一个或 多个 )、 以及盘存储设备。盘存储设备可以包括任何类型的磁性或光学存储设备, 如硬盘驱 动器、 可记录和 / 或可重写压缩盘 (CD)、 DVD、 DVD+RW 等。 计算机可读介质 410 提供存储受保护的媒体内容 412 以及诸如软件应用程序和涉 及设备 400 的操作方面的任何其它类型的信息和数据等其它信息和 / 或数据的数据存储机 制。例如, 操作系统 414、 访问模块 416、 以及 DRM 平台 418 可以作为软件应用程序来用计算 机可读介质 410 维护, 并在处理器 408 上执行以实现基于云的可移动组件绑定的各实施例。 访问模块 416 可被实现为能够通过移动设备通信网络与 SIM 402 和远程计算设备进行通信 以允许进行基于云的可移动组件绑定。
DRM 平台 418 可被实现为设备的组件并被配置成实现此处所描述的 DRM 技术。
客户机设备 400 还包括向音频呈现和 / 或显示系统 422 提供音频和 / 或视频数据 的音频和 / 或视频输出 420。音频呈现和 / 或显示系统 422 可包括处理、 显示、 和 / 或以其 它方式呈现音频、 视频、 和图像数据的任何设备。音频呈现和 / 或显示系统 422 可被实现为 示例设备 400 的集成组件或被实现为单独的组件。
设备 400 与 SIM 402 进行通信, SIM 402 在此是由诸如小的可插入智能卡等 SIM 卡构成的可移动组件。SIM 402 包括提供可在缓慢的处理器 426 上执行的指令的加密模块 424。缓慢的处理器 426 相对于图 1 的许可证服务器 112 及其他能力很强的计算设备较慢。 然而, 加密模块 424 和缓慢的处理器 426 能够生成现时值 428, 并使用秘密 430 来对现时值 428 执行对称密钥运算以提供密码安全标识符, 此处被表示为 “{ 现时值 }SK” 432。SIM 402 还能够保留秘密 430。
示例设备和可移动组件的示例方法
转向图 5, 方法 500 示出了结合其他设备的动作来允许进行基于云的可移动组件 绑定的移动计算设备的示例动作。 此示例方法只是提供了这些工具可允许进行基于云的可 移动组件绑定的方式的一个示例 ; 这些工具和本文还构想其他方式。方法 500 的框中的一 个或多个例如可以是框 302、 304、 306 或 314 中的一个或多个的实现。图 5 将使用图 4 的设 备 400 和 SIM 类型的可移动组件 (SIM 402) 来描述, 但也可以使用其他设备和可移动组件, 诸如设备 102 和 224 和可移动组件 124 和 232。
框 502 请求用秘密加密的现时值, 该秘密被绑定到 SIM。图 4 的设备 400 的访问模 块 416 向 SIM 402 请求使用 SIM 402 已知但设备 400 未知的秘密来对随机数进行密码安全 加密。此处, SIM 402 可以通过对称密钥运算用秘密 430 来加密现时值 428 以提供 { 现时 值 }SK 432, 来提供该密码安全加密。SIM 402 使用生成在缓慢的处理器 426 上执行的指令 的加密模块 424 来执行该对称密钥运算。注意, 现时值 428 可以诸如当这不是由 SIM 402 所生成的第一个现时值时递增。
框 504 从 SIM 402 接收用秘密加密的现时值, 此处被表示为图 4 的 { 现时值 }SK 432。设备 400 还可以从其他源或先前的与 SIM 402 的通信接收或保留 SIM 402 的标识符。
框 506 经由移动设备通信网络向远程计算设备发送 SIM 标识符、 { 现时值 }SK 428, 以及设备自己的设备证书和设备标识符。此处, 设备 400 将该信息作为播放受保护的 媒体内容 ( 如受保护的媒体内容 412) 的请求的一部分来通过移动设备通信网络 208 发送 到许可证服务器 212( 两者都在图 2 中示出 )。设备 400 使用访问模块 416 以及设备 400 的 其他组件来在框 506 处作出该请求, 以及分别在框 502 和 504 处进行请求和接收。
框 508 接收域证书和用域密钥加密的域私钥。如将在图 6 中讨论的, 并且如在图 3 中的框 308、 310, 以及 312 处所讨论的, 此证书和加密的域私钥足以使设备能够解密并使 用所涉及的受保护的媒体内容。此处, 该信息是通过移动设备通信网络 208 从许可证服务 器 212 接收到的 ( 两者都在图 2 中示出 )。
框 510 使用接收到的域证书来对 { 域私钥 }DK 进行解密, 这产生未加密的域私钥。 框 512 使用域私钥来对所请求的受保护的媒体内容进行解密。这两个解密都可以由访问模 块 416 来执行。
远程计算设备的示例方法
转向图 6, 方法 600 示出了远离移动计算设备并且结合移动计算设备的动作来允 许进行基于云的可移动组件绑定的的远程计算设备的示例动作。 此示例方法只是提供了这 些工具可以允许进行基于云的可移动组件绑定的方式的一个示例 ; 这些工具和本文还构想 其他方式。方法 600 的框中的一个或多个例如可以是框 308、 310 或 312 中的一个或多个的 实现。图 6 将使用示例远程计算设备 ( 此处是图 2 的许可证服务器 212) 来描述, 但也可以 使用其他设备, 诸如图 1 的许可证服务器 112。
框 602 经由移动设备通信网络接收 SIM 标识符、 { 现时值 }SK、 设备证书, 以及设备 标识符。在此示例实施例中, 许可证服务器 212 接收此信息, 并且然后在框 604 处使用 SIM 标识符来查找 SIM 秘密密钥和存储的现时值。
使用由许可证服务器 212 保留的 SIM 秘密密钥, 这些工具在框 606 处对 { 现时值 } SK 428 进行解密以确定一数字 ( 经解密的现时值 ), 并且如果该数字匹配存储在许可证服 务器 212 处的现时值, 或者是大于该现时值的增量, 则许可证服务器 212 确定假设已经通过 移动计算设备间接地从其发送 { 现时值 }SK 428 的 SIM 卡是合法的。如果 SIM 402 基于找 到的现时值而是可信的 ( 并且与 SIM402 相关联的许可证允许所请求的使用 ), 则许可证服 务器 212 可以取决于执行框 608 到 612 的的结果来准许该使用。
框 608 验证设备不在撤消列表上或以其他方式可信。许可证服务器 212 可以使用 接收到的设备标识符和设备证书来这样做。
框 610 基于 SIM 标识符来查找与设备相关联的域证书。这些工具然后可以在框612 处使用设备证书来加密域私钥 (“域私钥” )。在框 614, 这些工具将此域证书和 { 域私 钥 }DK 发送到请求使用受保护的媒体内容的设备。由此, 许可证服务器 212 基于可移动组 件并且在无需可移动组件执行诸如非对称密钥运算等复杂计算的情况下执行各种密码功 能以确定用户是否具有所请求的权限。这些运算改为由快速远程计算设备 ( 此处是许可证 服务器 212) 来执行。
方法 500 和 600 可以一起工作以允许进行基于云的可移动组件绑定, 在此示例中, 允许安全地使用绑定到 SIM 402 的受保护的媒体内容, 而无需 SIM 402 执行通常缓慢和 / 或要求 SIM 402 具有高于执行对称密钥运算的计算能力的计算。
结论
尽管已经用结构特征和 / 或方法专用的语言描述了基于云的可移动组件绑定的 各实施例, 但是应该理解所附权利要求的主题不必限于所述的具体特征或方法。 相反, 这些 具体特征和方法是作为基于云的可移动组件绑定的示例实现来公开的。