CN101682501B - 用于执行认证协议的方法和便携式存储设备 - Google Patents

用于执行认证协议的方法和便携式存储设备 Download PDF

Info

Publication number
CN101682501B
CN101682501B CN200880016965.2A CN200880016965A CN101682501B CN 101682501 B CN101682501 B CN 101682501B CN 200880016965 A CN200880016965 A CN 200880016965A CN 101682501 B CN101682501 B CN 101682501B
Authority
CN
China
Prior art keywords
content
main frame
storage
license
frame
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN200880016965.2A
Other languages
English (en)
Other versions
CN101682501A (zh
Inventor
K·A·杜巴施
J·M·阿尔科夫
P·施奈尔
A·V·格里格罗维奇
V·曼加洛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN101682501A publication Critical patent/CN101682501A/zh
Application granted granted Critical
Publication of CN101682501B publication Critical patent/CN101682501B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/101Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM] by binding digital rights to specific entities
    • G06F21/1014Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM] by binding digital rights to specific entities to tokens
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • H04L9/3268Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements using certificate validation, registration, distribution or revocation, e.g. certificate revocation list [CRL]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3271Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/60Digital content management, e.g. content distribution
    • H04L2209/603Digital right managament [DRM]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Technology Law (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Storage Device Security (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

描述了用于将内容许可绑定至便携式存储设备的系统、方法、和/或技术(“工具”)。结合将内容许可绑定至便携式存储设备(“存储”),主机可执行包括生成现实值、向存储发送现实值、和从存储接收会话密钥的认证协议,其中会话密钥是通过使用现实值来生成的。该存储可执行包括从主机接收现实值、基于该现实值生成随机会话密钥、和将该会话密钥发送至该主机的认证协议。

Description

用于执行认证协议的方法和便携式存储设备
背景
各种类型的内容在可移动存储单元上变得日益可用。这些存储单元可容易地被插入到不同的设备中使设备能够访问包含在存储中的内容。
在一些情况下,该内容可服从于受数字权限管理(DRM)系统管理的许可。在这些情况下,内容可被绑定于给定的存储实例或向其许可,但该内容可从各种不同的设备访问。在这些环境中,管理对许可策略或限制的遵循给DRM系统带来了挑战。
概述
描述了用于将内容许可绑定至便携式存储设备的系统、方法、和/或技术(“工具”)。结合将内容许可绑定至便携式存储设备(“存储”),用于与内容交互或对内容执行动作的设备(“主机”)可执行包括生成现实值(nonce)、向存储发送现实值、和从存储接收会话密钥的认证协议,其中会话密钥是通过使用现实值来生成的。该存储可执行包括从主机接收现实值、基于该现实值生成随机会话密钥、和发送该会话密钥至该主机的认证协议。
提供本概述是为了以简化的形式介绍将在以下详细描述中进一步描述的一些概念。本概述不旨在标识所要求保护的主题的关键或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。例如“工具”的术语可表示上述上下文和通篇文档所准许的系统、方法、计算机可读指令、和/或技术。
附图简述
结合以下附图描述了涉及将内容许可绑定至便携式存储设备的工具。贯穿本公开和各附图,使用相同的标号来引用相同的组件和特征。参考标号的第一位指示其中引入该参考标号的附图。
图1是示出用于将内容许可绑定至便携式存储设备的操作环境的、带有相关数据流的框图;
图2是示出图1示出的许可服务器、存储和主机的其它方面的框图;
图3是示出用于将证书和公钥/私钥发放至主机和至存储的基础结构的框图;
图4是示出主机和存储可通过其互相认证的协议的流程图;
图5是示出用于在主机和存储间建立会话密钥过程的流程图;
图6是示出用于在存储上实现许可存储区域的数据结构的框图;
图7是示出当用户在主机上选择内容来访问时可被执行的协议的流程图,并且主机针对适用于所选内容的许可策略评估来自用户的请求;
图8是示出图7所示的过程流的其它方面的流程图;
图9是示出当用户在主机上选择内容来访问被执行的协议的流程图,并且存储针对应用于被选择内容的许可协议评估从用户处发来的请求;
图10是示出图9所示的过程流的其它方面的流程图;
图11是示出包括令牌授予服务的操作环境的框图;以及
图12是示出其中存储可向主机发放临时许可或证书的操作环境的框图。
详细描述
概览
下文描述了能够执行和/或支持多个技术和过程的工具。以下的讨论描述在其中工具允许将内容许可绑定至便携式存储设备的示例性方式。该讨论还描述该工具可以执行的其它技术和/或过程。
图1示出用于将内容许可绑定至便携式存储设备的操作环境100。该操作环境100可使一个或多个用户102获取内容,并将内容存储至一个或多个存储设备供稍后查阅和访问。总体上,图1在104处标示内容,并且在104A和104N处描绘内容的两个实例,为方便起见而非限制。图1还示出一个用户102,该用户可从内容或介质源106获取内容104A,并且可将内容加载至存储设备108。图1在108A和108N处示出两个存储设备108,再一次仅仅用于示例,而非限制。图1示出内容104A正被存入存储设备108A(此处为方便起见简称为“存储”),并且内容104N正被存入存储设备108N。
通常,操作环境100可使得任何数量的用户102从任何数量的内容源106获得任何数量的内容实例104。另外,操作环境可以包括任何数量的存储108。图1中提供仅用于描述方便而非限制性的所示场景。
内容104可包括诸如歌曲、音乐、书籍或杂志的录音读物等音频组件。内容104还可包括诸如电影、视频剪辑等音频和/或视频组件。在一些情况下,但并不需要在所有情况下,视频组件可与对应的音频组件组合来提供多媒体内容。内容104还可包括单独或与音频和/或视频组件组合的静态图像、游戏、铃声、无声视频、文字,或任何其它形式的数字信息。
内容源106可表示允许用户102下载内容104的、可在诸如因特网等广域通信网络上被访问的服务。在不限制以下示例可能实现的情况下,内容源106可允许用户免费下载内容(例如,以接收广告作为交换),或可允许用户付费下载内容。另外,用户可订阅来接收内容。
转向存储设备或存储108,这些设备的示例可包括但并不限于诸如闪存110、安全数字(SD)卡112、标识模块(SIM)卡114等便携式存储设备;硬盘驱动器;经由通用串行总线(USB)通信的道尔芯片等。
操作环境100还可包括在116处概括示出的一个或多个许可服务器或服务。通常,许可服务器使用户102能够获得适用于播放内容104或以其它方式与内容104进行交互或对内容104执行动作的任何许可。许可可准许在某些条件下与内容进行交互或对内容执行动作,或者可指定适于与内容交互或对内容执行动作的策略或限制。这样的策略或限制的示例可包括但不限于计数、时间限制等。
在一些情况下,许可服务器116不仅可提供内容的许可,也可提供内容本身。因此,图1把服务器116标记为许可/内容服务器。在这些情况下,一个实体可执行许可服务器116和内容源106两者的功能。在其它情况下,用户102可从用作内容源106的一个实体下载内容,并且可与分开的许可服务器交互以保护播放内容的适当许可。
一旦用户102,或代表用户执行动作的任何实体,获得了适用于播放内容的许可,操作环境即可将许可绑定至存储108。此处所用的对许可的术语“绑定”,表示将特定内容许可与特定设备(例如,存储108)以密码的方式相关联,使得设备可在该许可的条款下被准许与内容交互或对内容执行动作。如图1所示,以密码方式绑定至设备108A的内容104A的许可用箭头118A概括表示,而以密码方式绑定至设备108N的内容104N的许可用箭头118N概括表示。
操作环境100可包括用于播放、查阅或以其它方式与内容104交互或对内容104执行动作的一个或多个主机设备120(“主机”)。图1示出仅以描述为目的而非限制性的两个主机120A和120N。图1提供了一个在其中内容122A和122N被加载至存储设备108N上并且经由两个不同的主机120A和120N被访问的示例。
更详细地转向主机120,主机可包括诸如移动无线设备124等设备,该设备可表示移动电话、智能电话、无线个人数字助理(PDAs)等等。主机120还可包括便携式媒体播放器126。设备124或126中的任一个可适用于播放音频、视频或其它内容122。
如上描述,特定内容的许可以密码的方式绑定至相应的存储设备108,如箭头118所示。将许可绑定至存储和将许可绑定至特定主机102形成对比。因为内容许可以密码的方式被绑定至存储108,许可和存储108一起“行进”。只要主机具有有效的主机证书并且提供与主机功能的一致实现,这些许可就允许与许可以密码方式绑定的存储通信的任何主机播放内容。
图1示出用于许可118的几个场景。在一些场景中,许可可先流至主机,并随后流至存储。图1提供了该场景的一个示例,由虚线118A示出从框116流出,至框120A,并随后至框108A。在其它场景中,许可可先流至存储,然后再至主机。图1提供了该场景的一个示例,由虚线118N示出从框116流出,至框108N,并随后至框120N。
作为该许可场景的示例,图1示出了以密码方式绑定至存储108N的用于内容104N的许可118N,如虚线118N所示。可以是用户102或可以是不同于用户102的用户128可在该许可118N的条款下通过例如将存储108N插入主机120A并向主机120A发放合适的命令的方式来播放内容104N。图1概括地表示了在122A处播放主机120A中的内容104N。然而,如果用户128之后将存储108N从主机120A处移除,并将存储108N插入至另一主机120N,内容104N的许可将随主机108N移动至另一主机120N。首台主机120A不保留播放内容104N的剩余权力。然后,用户128可通过向该另一主机120N发放合适的命令以供在该另一主机上播放内容104N。对于任意数量的主机120,该场景可被重复任意次。
描述了如图1中示出的操作环境100,现转向讨论由图2示出的关于许可服务器116、存储108和主机120更详细的描述。
图2示出了如图1所示的许可服务器116、存储108和主机120的其它方面200。出于描述的方便而非对可能实现的限制,先前描述的一些元素带入图2中并由相似的参考标号来表示。
先转向许可服务器116,它可以是包括如202处所示出的一个或多个处理器的基于计算机的系统。这些处理器还可被分类或表征为具有给定类型或体系结构,但可以具有或不具有同一类型或体系结构。
许可处理器116还可包括机器可读的或计算机可读的存储介质的一个或多个实例,在204处概括示出。计算机可读介质204可包含一些指令,这些指令在由处理器202执行时执行此处被描述为被许可处理器来执行的工具或相关功能中的任一个。处理器可以访问和/或执行嵌入或编码在计算机可读介质上的指令,和/或可以访问存储在计算机可读介质中的数据。
更详细地转向计算机可读介质204,其可包括数字权限管理(DRM)模块206的一个或多个实例。该DRM模块206可包括例如一个或多个软件模块,当该软件模块被载入至处理器并被执行时,使得许可服务器管理适用于数字内容(例如,图1中的内容104)的许可。
在不同实现中,许可服务器可允许直接或间接的许可获取(分别称为DLA和ILA)场景。术语直接许可场景指的是设备从许可服务器直接获取许可的场景。术语间接许可场景指的是设备通过与诸如个人计算机或其它代理的一个或多个中介设备通信而从许可服务器间接获取许可的场景。
另外,DRM模块可解释并执行授予用户(例如,图1中的102)的许可中的任何权限和约束。这些限制可指定用户可播放特定内容的次数,可指定适用于播放内容的任何时间约束等。通常,DRM模块可建立适用于与内容的具体实例交互或在内容的具体实例上执行动作的策略。
现在转向存储设备或存储108,其可包括处理器208,处理器208可与处理器202是相同类型或结构体系也可以不是相同类型或结构体系。存储108还可包括与处理器208通信的计算机可读介质210。计算机可读介质210可包含一些指令,当这些指令在由处理器208执行时执行此处被描述为被存储108来执行的工具或相关功能中的任一个。处理器208可以访问和/或执行嵌入或编码在计算机可读介质210上的指令,和/或可以访问存储在计算机可读介质210中的数据。
计算机可读介质210可包括被加载到存储上的任何内容(例如,图1中的内容104)的存储区域。图2在212处概括示出这些内容存储区域。内容存储区域212可包括用于存储内容的任意数量的离散的实例的区域,其数量取决于该存储包含内容的多少。
计算机可读介质210还可包括用于与被加载到该存储上的内容相关联的许可的存储区域。图2在213处示出了这些许可存储区域。许可存储区域213可包括用来存储内容许可的任意数量的离散的实例的区域,其数量取决于存储包含的内容多少和服从于许可的内容的多少。
计算机可读介质210可包括DRM组件214,该组件可包括与由许可服务器116提供的DRM模块206协作和/或通信的一个或多个软件模块。DRM组件214和/或DRM模块206可管理适用于存储在内容存储212内的任何许可。更具体地,该DRM组件可存储适合用来跟踪对适用于内容的许可的遵循的任何信息。例如,该DRM组件可跟踪内容被访问的次数,内容何时被访问等等。
简要地回来参考内容/许可存储区域212,在一些实现中,内容/许可存储区域中那些用来存储许可的部分可被保护和/或隐藏,以便妨碍(和可能防止)对与管理许可相关的任何信息的未经授权的访问。
计算机可读介质210可包括密码模块,如图2所示的密码模块216。密码模块216可包括与处理器208通信的独立的硬件模块。然而,为便于说明,该密码模块216被示为驻留在计算机可读介质210内的软件模块。该密码模块可包括一个或多个软件模块,这些软件模块可被载入处理器208并被执行以使存储能与主机120建立、维持和断开安全会话。关于这些安全会话的进一步细节在以下提供。另外,密码模块216可作为安全会话一部分或作为任何其它密码操作的一部分维护被分配到存储的任何公钥/私钥。密码模块216还可包括用于执行密码操作的密码算法的实现。
现在转向主机120,其可包括处理器218,处理器218可与处理器202和208是相同的类型或结构体系也可以不是相同类型或结构体系。处理器218可与包括例如可由用户插入存储设备108的插槽和连接器的介质接口220通信或协作。
主机120还可包括计算机可读介质222,该计算机可读介质222又可包含DRM组件224。在一些情况下,DRM组件224可与许可服务器116上的DRM模块206通信或协作,或者可与存储108中的一个或多个上的DRM组件214通信或协作。在其他情况下,DRM组件224可与DRM模块206和DRM组件214两者通信或协作。
计算机可读介质222可包括可代表主机执行密码操作的密码模块225。例如,密码模块225可间接地于与存储上的密码模块216协作。除了操作上下文的不同,以上对密码模块216的描述可同样应用于密码模块225。例如,密码模块225可被实现为可与处理器218通信的独立硬件模块。
主机120可接收存储108已被插入至介质接口220的指示。这些指示可包括电子信号、软件和/或硬件中断、软件报告事件等等。响应于这些指示,DRM组件224可在存储108中搜索服从于许可的任何内容,可标识适用于该内容的任何许可,并可将许可绑定至存储。另外,DRM组件可使主机120能执行适用于播放该内容的任何策略,例如,播放计数、时间约束等等。
在一些情况下,主机120可在例如用户将存储插入至由主机提供的插槽时直接访问存储108。在其它情况下,主机可通过另一设备间接地访问存储。例如,图2所示的主机120可包括连向用户将存储插入其中的另一主机的无线链接。
计算机可读介质222可包括媒体播放器应用程序226。在不同的可能实现中,媒体播放器应用程序包括用于向用户128播放内容(例如,内容122)或以其它方式使得用户128能访问内容的一个或多个软件模块。例如,媒体播放器应用程序可包括电影或视频查阅应用程序、音频播放应用程序等等,这取决于包括在特定实现中的内容的性质和类型。
尽管为了清楚描述没有在图2中示出,计算机可读介质222可包括用于对可在主机上播放和访问的不同类型的内容进行解码的一个或多个内容解码器模块。计算机可读介质222还可包括便于主机和服务器116之间的通信的一个或多个传输模块。
计算机可读介质222可包括内容存储区域228,DRM组件224将内容加载到其中以便由媒体播放器应用程序226访问。例如,内容存储区域228可包括用来为媒体播放器应用程序存储内容的缓冲器或其它合适的数据结构。
计算机可读介质222还可包括DRM组件将许可信息加载至其中的许可存储区域230。例如,假定DRM组件从存储向内容存储区域228加载内容的给定实例,并且假定该内容服从于许可策略,该DRM组件可将与执行或管理这些策略相关的任何信息加载至许可存储区域230。
如下面详述,DRM组件224可执行适用于被载入内容存储区域228的任何内容的任何许可策略。当用户(例如,图1中的用户128)将存储108插入至介质接口220时,用户可浏览包含在存储中的任何内容,并且可选择用于播放或访问的内容。DRM组件随后可确定所选内容是否服从于许可策略,并可进一步确定这些许可策略是什么。DRM组件还可将表示这些策略的信息载入至许可存储区域230,并可将所选内容载入至内容存储区域228。假定遵循任何适用的许可约束或策略,DRM组件可授权媒体播放器应用程序对于用户220对所选内容执行被请求的动作。在任何不遵循的情况下,DRM组件可向用户呈现适当的错误消息,告之其不遵循,并可能提供如何通过获取合适的许可来实现遵循的建议。
为了执行上述的功能,DRM组件224可在一些情况下与存储上的DRM组件214通信。在其它的情况下,DRM组件224可与许可服务器116上的DRM模块206通信。在某些情况下,DRM组件224可与DRM模块206和DRM组件214两者进行通信。
描述了在图2中的许可服务器116、存储108和主机120的其它方面,现转向讨论被发放至主机和存储的证书和公钥/私钥的描述,现由图3示出。
图3示出用于将证书以及公钥和私钥发放至主机(例如,主机120)和存储(例如,存储108)的基础结构300。出于描述的方便而非对可能实现的限制,先前描述的一些元素带入图3中并由相似的参考标号来表示。
图3示出将证书304发放至主机的证书授权机构302,如虚线306所示。虽然为了描述的方便,图3示出一个证书授权机构302,但该证书授权机构302可以在证书授权机构群中的树或其它更大的组中。沿着相似的线,证书304可以是由证书授权机构302发放的单个证书,或着可以表示与证书授权机构树内路径相应的证书的集合。
在一些情况下,主机证书304可包括至少主机私钥308和主机公钥310。在其它情况下,主机证书可至少包括主机公钥310,同时主机私钥被分开传递。主机可访问对应于主机公钥的主机私钥。另外,证书授权机构302还可维护证书撤销列表312,该列表列出了之前由证书授权机构302或证书授权机构树中的任何证书授权机构发放的任何证书的当前状态。更具体地,证书撤销列表312可指示一个或更多给定的证书是否已被撤销或以其它方式变成无效。
图3还示出可向存储108发放证书316的证书授权机构314,如虚线318表示。在一些情况下,存储证书316可包括至少存储私钥320和存储公钥322。在其它情况下,主机证书可至少包括存储公钥322,而存储私钥被分开传递。存储可访问对应于存储公钥的存储私钥。另外,证书授权机构314还可维护证书撤销列表324,该列表列出了之前由证书授权机构314或证书授权机构树中的任何证书授权机构发放的任何证书。更具体地,证书撤销列表324可指示一个或更多给定的证书是否已被撤销或以其它方式变成无效。
任何适用于包含在存储108上的内容的证书可与发放至存储108的私钥或私钥的集合320以密码的方式绑定或与其相关联。用这种方法,图3所示的证书基础结构300可将证书绑定至存储108,而不是绑定至主机120。更具体地,证书由公钥322的用户以密码的方式被绑定至私钥320。回想到图1所示的箭头118表示该许可绑定。
图3示出分开的证书授权机构302和314,仅用于说明和描述的方便,但不限制此处描述的可能实现。注意,单个证书授权机构可将证书发放至给定存储108和给定主机120两者。另外,由许可服务器(例如,图1中的116)提供的DRM模块206可作为证书授权机构执行,并可将证书发放至主机120和/或存储108。
描述了图3中用于将证书和公钥及私钥发放至主机120和至存储108的基础结构300,现转向讨论对主机如何认证存储的描述,现在图4中示出。
图4示出主机(例如,主机120)和存储(例如,存储108)通过其可互相认证的协议400。完成协议400可使主机能播放包含在存储上的内容,并且协议在主机和存储间建立安全会话。当用户(例如,用户128)将存储插入至主机时,协议400可运行。
出于描述的方便而非对可能实现的限制,先前描述的一些元素带入图4中并由相似的参考标号来表示。另外,为了描述方便而非限制,图4用栏的格式组织各种过程,以指示主机和存储可分别执行的协议400部分。
框402表示发送对存储证书的查询。图4在406处示出对存储许可的查询。在图4中的示例中,查询404可从主机120传递至存储108。
框406表示接收对存储证书的查询404。在图4中的示例中,存储可接收查询404。
框408表示发送存储许可。在图4中的示例中,框408可包括发送存储许来响应查询。另外,框408仅在主机证书(例如304)有效时被执行,如虚线422所示。下面进一步描述用于确定主机证书是否有效的过程。
假定主机证书是有效的,存储可发送该证书的副本来响应查询。出于方便而非限制性,图4将存储证书316从图3中带入过来。被传递至主机的存储证书316可包括存储公钥(例如,图3中的322)。
在主机处,框410表示接收存储证书。在图4所示的实现中,主机120可接收存储证书316。
框412表示针对CRL检查存储证书,以确定存储证书的有效性。例如,存储证书可被撤销,或以其它方式被无效。在图4所示的实现中,主机120可针对由主机维护的CRL、由发放存储证书的证书授权机构维护的CRL或由任何其它实体维护的CRL,来检查存储证书316。
如果存储证书是有效的,主机120可参与图4所示的协议400的剩下部分,通常用虚线414示出。然而,如果存储证书由于撤销或其它理由是无效的,主机120可在框412处终止对协议400任何进一步的参与。
框416表示将主机证书(例如304)发送至存储(例如108)。此处描述的工具可执行框416,来响应用户(例如,128)将存储插入主机。主机证书的示例在图3的304处被标出,并且为了引用的方便性,主机304被带入至图4。如图3的上述描述,主机证书可包括主机公钥310。从主机被发送至存储的主机证书可包括主机公钥310,如图4所示。
框418表示接收主机证书。在图4所示的示例实现中,存储108(或在其上执行的软件),可执行框418。
框420表示针对证书撤销列表(CRL)检查收到的主机证书,以确定主机证书是否保持有效或已被撤销。在图4所示的实现示例中,存储108可执行框420。在一些情况下,框420可包括针对由发放主机证书的证书授权机构(例如,图3中的302)维护的CRL检查主机证书。在其它情况下,框420可包括针对由诸如存储108等另一实体维护的CRL检查主机证书。在这些其它情况下,由其它实体维护的CRL可以是由发放证书授权机构维护的CRL的本地副本。
如果主机证书保持有效,并还没有被撤销,则存储可继续图4所示的协议400的其它部分,通常用虚线表示。然而,如果主机证书被发现是无效的(例如,被撤销的),则存储不能进一步参与协议400。在这种情况下,由存储执行的任何处理可在框420处结束。
尽管图4示出主机向存储查询存储证书(例如,404)的示例,存储还可通过向主机查询主机证书来启动过程流400。考虑到简洁性,图4不示出这些实现,但在这些实现中,在图4中示出的角色和功能可在主机和存储两者间对换。
图5示出用来在主机和存储间建立会话密钥的过程500。出于描述的方便而非对可能实现的限制,先前描述的一些元素带入图5中并由相似的参考标号来表示。另外,为了描述方便而非限制,图5用栏的格式组织各种过程,以指示主机和存储可分别执行的协议500部分。
框502表示使用存储公钥(例如,322)加密现实值。主机可使用图4所示的协议400来获得存储公钥。如图5所示,主机可加密用于发送至存储的现实值。
框504表示发送该加密的现实值。图5在506处示出该加密的现实值,并且框504可包括主机120将加密的现实值506发送至存储108。
在存储处,框508表示接收加密的现实值506。在图5所示的示例中,存储接收加密的现实值。
框510表示解密现实值。假定使用存储的公钥加密现实值,则框510可包括使用该存储的私钥(例如,320)来解密现实值。
框512表示生成随机会话密钥。在一些实现中,框512表示基于在框508处接收到的加密的现实值生成随机会话密钥。在图5所示的例子中,存储生成随机会话密钥。在其它实现中,框512表示生成不基于现实值的会话密钥。在这些后者的实现中,存储可用其它方式将现实值发送回主机,用于向主机认证自己。
框514表示加密随机会话密钥。框514可包括使用与主机相关联的公钥来加密会话密钥。图5带入310处的主机公钥的示例。存储可使用图4所示的协议400来获取主机公钥。
框516示出发送加密的会话密钥。图5在518处示出加密的会话密钥。在图5所示的示例中,存储可将加密的会话密钥518发送至主机。
框520表示接收加密的会话密钥518。在图5所示的示例中,主机从存储108接收加密的会话密钥。
框522表示解密会话密钥518。假定存储使用主机公钥来加密会话密钥,则框522可包括使用主机私钥(例如,308)来解密会话密钥。
框524表示验证会话密钥。在存储基于现实值生成会话密钥的实现中,框524可包括验证会话密钥是基于在框504处被发送至存储的现实值的。在存储通过发回现实值而向主机认证的实现中,代替基于现实值生成会话密钥,框524可包含验证存储返回正确的现实值。
假定主机和存储成功地完成了协议400和500,主机和存储可随后保护互相之间的通信。例如,主机和存储可通过使用会话密钥加密它们之间的任何进一步的通信。另外,一旦主机和存储完成了协议400和500,主机和存储即已认证对方,并且互相交换了公钥。更具体地,在图4和图5所示的示例中,主机使用存储的公钥322来加密随后被发送至存储的现实值(框502)。同样,存储使用该现实值生成会话密钥,并使用主机的公钥加密该会话密钥(框514)。
图4和图5示出了在其中主机和存储执行在主机和存储下显示的栏中所示的各框中所表示的处理的示例。然而,注意到这些示例是没有限制的,并且主机和存储的角色在不背离此处描述的范围和精神的情况下可被逆转。图4中所示的协议400的结果是主机和存储互相认证对方。因此,图4和图5中所示的例子并不限制此处描述的可能实现。
描述了图5中的协议500,讨论现在转向对存储上的许可存储区域更详细的描述,现由图6示出。
图6示出适用于实现许可存储区域的数据结构600。出于描述的方便而非对可能实现的限制,先前描述的一些元素带入图6中并由相似的参考标号来表示。
回想图2,存储(例如,108)可包括计算机可读存储介质(例如,210),计算机可读存储介质可包括许可存储区域(例如,212)的。许可存储区域可包括数据结构600,该数据结构600又可包含与以密码的方式绑定至存储的各种许可相关的信息。在图6所示的示例中,许可存储区域可包括对应于包含在存储中的被许可内容的实例的一个或多个许可存储记录602。仅为了方便性,图6显示了一个记录602,但是数据结构600的实现可包含任意数量的记录602,其数量取决于存储包含了多少个被许可内容的实例。
更详细地转向记录602,这些记录可包含密钥标识符字段604。该密钥标识符字段604可提供便于搜索数据结构600以定位被许可内容的给定实例的许可的搜索或索引字段,其将在下面详细描述。仅为了方便性,图6示出两个密钥标识符字段604A和604N,但是数据结构600的实现可包含任意数量的密钥标识符字段604,其数量取决于存储包含了多少个被许可内容的实例。
密钥标识符字段604可与至少一个内容密钥字段606相关联。仅为了方便性,图6示出两个内容密钥字段606A和606N,但是数据结构600的实现可包含任意数量的内容密钥字段606,其数量取决于存储包含了多少个被许可内容的实例。在一些情况下,内容标识符604可与加密的内容密钥的多个实例相关联,如606A处所示。
为加强安全和保护,内容密钥可使用存储的公钥(例如,322)加密,使得该内容密钥仅能用存储的私钥解密。在另外的示例中,内容密钥可由中间对称密钥来加密。以这种方式,即使内容密钥被恶意方以某种方式盗用,内容密钥也对该恶意方无任何价值,除非该存储的私钥也受到危害。通常,与密钥管理相关的最佳做法命令公钥-私钥密钥基础结构注意保护私钥以防其通过硬件和/或软件机制受到危害。例如,这些最佳做法可建议安全硬件实现。
内容标识符字段604还可与至少一个策略字段608相关联。仅为了方便性,图6示出两个策略字段608A和608N,但是数据结构600的实现可包含任意数量的策略字段608,其数量取决于存储包含了多少个被许可内容的实例。
这些策略字段608可存储策略信息,该策略信息可使得诸如主机120等回放设备能验证所宣称的以密码的方式绑定至存储的许可。另外,策略字段可使主机能确定特定操作(例如,回放、复制、传送等等)是否在以密码的方式被绑定至存储的许可的条款下准许。
策略字段608可包括指示任何适用于回放、复制、传送、访问或对被许可内容执行任何其它操作的约束或条件。由例如许可服务器116授予的内容许可可指定如存储在字段608中的策略。约束的示例可包括限制内容可被回放多少次、有多少内容可被回放、内容是否可被复制至其它存储等等。
描述了图6中的数据结构600,现将继续讨论当用户选择主机上的内容进行访问时可被执行的过程流的描述,现由图7示出。
图7示出当用户选择主机上的内容进行访问时可被执行的协议700。出于描述的方便而非对可能实现的限制,先前描述的一些元素带入图7中并由相似的参考标号来表示。另外,为了描述方便而非限制,图7用栏的格式组织各种过程,以指示主机和存储可分别执行的协议700部分。
框702表示向用户显示可用内容的选择。例如,当用户将存储108插入至主机后,主机120可向用户以菜单形式显示该选择。当用户将存储插入至主机时,主机可检查主机的内容/许可存储区域(例如,212),用来在主机上定位任何可用内容。主机随后可提取与可用内容的不同实例相关联的标识符,以填充如向用户显示的可用内容的选择。该可用内容的选择可包括多个图形元素,分别表示存储上可用的内容的不同实例。
用户可请求主机对所选内容执行某些操作。例如,用户可请求主机回放所选的内容、复制所选内容、或执行用户可用的任何其它相似的操作。
框704表示接收到用户已选择内容的实例的指示。例如,用户可操作输入设备用来将图形元素中的一个放置到焦点中,并可随后激活某个控件来选择该处于焦点中的图形元素。框704可包括接收表示用户已经作出选择的电信号、软件事件、或其它合适的通知。
框706表示发送对用户所选内容的请求。框706可包括主机120发送请求至存储108,通常在708处示出。
在存储处,框710表示接收对用户所选内容的请求。框710可包括存储从主机处接收请求708。
框712表示标识与用户所选内容相关联的一个或多个内容密钥。注意,多个内容密钥可在如图7和下面的图8-10所示的过程流被处理。图6在606处示出内容密钥示例。如果内容密钥以加密的形式被存储,则框712可包括解密该内容密钥。更具体地,如果使用存储公钥将内容密钥加密,则框712可包括使用存储私钥(例如,320)解密内容密钥。回想存储和主机以上使用例如图4所示的协议400互相认证对方。所以,当前主机和存储之间存在着某种程度的互相信任,并且该信任可使存储能使用图7所示的技术向主机提供内容密钥。
框714表示用会话密钥加密内容密钥。图5显示了在框512处创建的会话密钥的合适示例,并在518处显示了会话密钥的加密版本。图7在518A处示出被分配至存储的会话密钥的共享。因为会话密钥仅为主机和存储所知,存储可通过用会话密钥加密内容密钥而将内容密钥安全地传送至主机。
框716表示发送加密的内容密钥,通常在718处示出。例如,存储可将该加密的内容密钥718发送至主机。
在主机处,框720表示针对适用于用户所选内容的任何内容策略评估用户请求的操作。图7带入了608处内容策略的示例。在示例实现中,可使用与发放或得到许可的任何一方相关联的密钥签署策略或整个许可。框720可包括在解密内容密钥前评估策略,以检查策略是否已被篡改。该评估可包括验证许可的签名。
在图7所示的示例实现中,主机可执行框720。该实现在当主机比存储具有更大的处理能力或容量时可以适用。然而,在一些情况下,情况是相反的,并且存储可具有比主机更大的处理能力。在这些情况下,以下图9所示的实现可能合适。
为了描述方便,图7以框的形式示出评估框720。然而,该确定的更多细节在图8中所示,并在下文讨论。
假定框720中所执行的评估是肯定的,则框722表示接收加密的内容密钥718。在图7所示的示例中,主机可接收加密的内容密钥。在存储用其会话密钥518的共享来加密内容密钥的情况下,主机可用其会话密钥的共享来解密内容密钥,如518B处所示。
使用了内容密钥,主机可访问被用来与框704处接收到的请求一致的内容。以这种方式,主机可通过验证许可签名来确认策略未被恶意更改。
一些实现可用如上所述的中间会话密钥。在这些实现中,框714可包括用中间会话密钥来加密内容密钥(例如,图6中的606或图7中的718)。而,框722可包括使用该中间密钥来解密内容密钥。中间会话密钥可使用存储私钥(例如,320)加密。
图8示出过程流800,该过程流800提供了针对适用于用户所选内容的任何策略评估用户请求的操作的其他方面。出于描述的方便而非对可能实现的限制,先前描述的一些元素带入图8中并由相似的参考标号来表示。
判定框802表示评估用户所选内容是否服从于许可中的策略。如果不,则过程流800可采取“否”分支804至框806,这表示批准来自用户的请求。
回到框802,如果所选内容服从于许可,则过程流800可采取“是”分支808至判定框810。判定框810表示评估来自用户的请求是否被适用于所选内容的任何策略(例如,608)准许。
如果请求被任何适用的策略准许,则过程流800可从框810采取“是”分支812至框806。框806表示批准该请求。
框814表示执行用户请求的操作。例如,框806可包括传输对来自用户的请求的批准816,并且过程流800可执行框814以响应批准816。框814可包括从图7所示的框722接收解密的内容密钥506。
在一些可能的实现中,框814可包括向用户播放或以其它方式向用户展示所选内容。在其它可能的实现中,框814可包括复制或传送如用户请求的所选内容。所给的这些示例仅仅为了描述的方便,并不限制可能的实现。
回到判定框810,如果请求未被任何适用的策略准许,则过程流800可采取“否”分支818至框820。框820表示由于用户提交的请求未被适用于所选内容的许可策略准许而拒绝该请求。框820可包括发送对请求的拒绝822。
框824表示向提交在框820处被拒绝的请求的用户展示错误消息或其它合适的通知。在一些情况下,框824可包括向用户指示因为请求不被适用于所选内容的策略准许,故该请求被拒绝。另外,框824可包括向用户提供一个或多个选择来获取准许所请求的操作的许可。
描述了用于针对任何适用的内容策略评估用户请求的操作的上述过程流800,有一些观察结果要注意。当主机比存储具有更大的处理能力时,图7和图8中所述的实现可能适用。在这种情况下,主机可承担针对内容策略评估请求(例如,图7和图8中的720)的角色,以使能力较弱的存储从该处理中释放出来。
然而,在其它情况下,存储可比主机具有更大的处理容力。在这些情况下,存储可承担针对内容策略评估请求的角色,从而使能力较弱的主机从运行中释放出来。图9和图10示出后面所述的场景。
图9示出当用户选择主机上的内容以供访问时可被执行的协议900。出于描述的方便而非对可能实现的限制,先前描述的一些元素带入图9中并由相似的参考标号来表示。另外,为了描述方便而非限制,图9用栏的格式组织各种过程,以指示主机(例如,120)和存储(例如,108)可分别执行的协议900部分。更具体地,与协议900相关联的某些处理框可能与在前述的图7的协议700类似。因此,为避免重复描述,这些处理框用相同的参考标号在图9和图10示出,但可被与图7和图8所示的不同的组件执行。
更详细地转向协议900,从图7带来了框702、704和706,以及708处示出的对用户所选内容的请求。如前在图7所描绘和讨论的,主机可执行框702-706,并可向存储提交请求708。而,存储可执行框710和712,如上述图7所示。然而,与图7所示的示例实现不同,图9中的实现允许存储执行评估框722。因此,图9在对应于存储的栏中显示请求评估框720,而不是在对应于主机对应的栏中(如图7所示)。
假定评估框720的结果是肯定的,存储可随后执行表示对所选内容的内容密钥解密的框712。框712可包括用存储私钥320解密。另外,图9从图7带来了框714、716、722和加密的内容密钥718。之前对框714、716、722和数据流718的描述也适用于图9,并且为了简洁性,不在此处重复。图9还带来了会话密钥的共享,在518A和518B处示出。
图10示出用来针对任何适用的内容策略来评估请求的过程流1000的各方面。出于描述的方便而非对可能实现的限制,先前描述的一些元素带入图10中并由相似的参考标号来表示。另外,为了描述方便而非限制,图10用栏的格式组织各种过程,以指示主机(例如,120)和存储(例如,108)可分别执行的过程流1000的部分。
在图10所示的实现中,存储(例如,108)可执行由请求评估框720表示的某些处理。回想图8,该处理由主机(例如,120)执行。然而,在图10中,主机和/或存储可执行与请求评估框720相关联的部分处理,将在此更详细地描述。
框1002表示评估在请求中所引用的内容是否服从于许可。如果内容服从于许可,则该许可通常可指定指示内容可如何或是否被访问或分发的一个或多个策略(例如,608)。如果内容服从于许可,过程流1000可采用“是”分支1004至评估框1006,该框表示确定请求是否被任何适用于该内容的策略准许。
如果请求被适用的策略准许,则过程流1000则从评估框1006采取“是”分支1008至从图7中带来的框712。框712表示使用存储私钥(例如,320)对所选内容的内容密钥解密。框714表示使用会话密钥(例如,518A,或中间会话密钥)加密内容密钥。框716表示将加密的内容密钥(例如,718)发送至主机。在主机处,框722表示接收和解密该内容密钥。
回到存储,框1010表示批准请求。如图10所示,存储可将批准传输至主机,如1012处所示。
回到评估框1002,如果内容不服从于许可,则过程流1000可采取“否”分支1014直接至框1010。如上所述,框1010表示批准该请求。
回到评估框1006,如果请求不被适用的策略准许,则过程流可采取“否”分支1016至框1018,该框1018表示拒绝该请求。如图10所示,存储可将该拒绝传输至主机,如1020处显示。
在主机处,框1022表示执行与内容相关的所请求的操作。框1022可包括执行所请求的操作以响应接收批准1012。为了执行所请求的操作,主机可使用在框722中被解密的内容密钥。图10带入718处的内容密钥的加密版本。
还是在主机处,框1024表示向用户展示错误消息或其它合适的通信。例如,框1024可包括向用户指示所请求的操作不被适用于内容的许可和/或策略准许。框1024还可包括向用户指示他或她可如何或在何处获得一个或多个许可来执行所请求的操作。
描述了针对适用的内容策略来评估请求的过程流1000,讨论现将继续至对包括令牌授予服务的操作环境的描述,现由图11表示。
图11示出包括在1102处概括示出的令牌授予服务的操作环境1100。此类令牌的例子可包括许可。出于描述的方便而非对可能实现的限制,先前描述的一些元素带入图11中并由相似的参考标号来表示。
在一些情况下,用户可从与例如内容/介质源106相关联的下载服务器处下载内容122。如图11所示,内容可被加载至存储108。该内容中的某部分可以是被许可的内容。任何被许可的内容可与唯一的内容密钥标识(或简称“密钥”)相关联。在例如图1所示的实现中,许可服务器(例如,116)可使用种子值来生成这些密钥。在许可服务器和下载服务器受到公共控制的情况下,许可服务器可“信任”下载服务器,并可与下载服务器共享种子。在这些情况下,以上所示和所述的实现是合适的。
然而,在其它情况下,要播放的内容可能不是从被许可服务器信任的下载服务器处下载的。例如,内容可由卡的制造商或销售存储的零售商预先加载至存储(例如108),并且这些操作可与许可服务器分开控制。在这些情况下,图11所示的操作环境1100可以是合适的,并且令牌授予服务1002提供与许可服务器有些类似的功能。令牌授予服务1102可提供某种程度的间接性,使得不信任彼此和不共享敏感信息(例如,用于生成内容密钥的种子)的实体间能够实现许可管理。
更详细地回到令牌授予服务,其可生成将被存储于卡上的令牌1004,并可将此令牌与被许可的内容的某一实例相关联。该令牌可指示存储所插入的任何主机被允许访问被许可的内容,与任何适用的许可策略一致。
令牌授予服务可将与相关内容相关联的令牌传输至存储108的制造商或至存储的零售商。而,存储的零售商或制造商可将内容和相关令牌加载到该存储上。图11示出包含代表性内容122和在1104A处示出的相关联的令牌的存储108的例子。该内容与该令牌之间的关联通常由连接框122和1104A的虚线示出。然而,该例子是非限制性的,仅仅是为了方便而被示出。存储108可包含任意数量的内容-令牌实例,或可包含不与令牌相关联的内容实例。
用户102可将存储108插入至主机(例如,120),通常由线1106表示。主机可包括分别用参考标号218和222示出的一个或多个处理器和计算机可读存储介质。为了方便性而非限制性,这些参考将被带至图2。
计算机可读存储介质222包括可当存储108被插入主机120时处理存储108的令牌确认模块1108。更具体地,该令牌确认模块1108可与令牌授予服务1102交互来确定主机可否播放位于存储上的任何内容(例如,122)。
令牌确认模块1108和令牌授予服务1102之间的交互可至少包括图11所示的某些处理。例如,框1110表示评估存储是否包含任何令牌。如果存储包含至少一个令牌(例如,1104A),则令牌确认模块可采取“是”分支至表示请求确认存储上找到的任何令牌的框1114。在1104B处,图11表示如从存储提取出并被发送以确认的令牌。
为了说明和描述的方便,图11示出在其中令牌授予服务1102还确认令牌的场景。然而,这些场景并没有限制,并且不同的实体可在不背离此处描述的精神和范围的情况下发送令牌和确认令牌。
在图11提供的示例中,框1116表示确认从令牌确认模块接收到的输入令牌。框1116得到的结果是确定该令牌是有效的或是无效的判断。例如,令牌确认模块可确定它是否发送了与特定内容相关联的令牌,或可解析该令牌来评定其有效性。
令牌授予服务可将确认响应1118返回至主机上的令牌确认模块,该确认响应1118指示所找到的令牌是有效的还是无效的。如果令牌授予服务能确认令牌,则主机可播放与该令牌相关联的内容。如果令牌授予服务不能确认该令牌,则主机可采取诸如将令牌展示给另一个确认服务、将错误消息展示给人类用户等某些辅助动作。
回到评估框1110,如果被插入至主机的存储不包含与存储上的被许可内容相关的任何令牌,则令牌确认模块可采取“否”分支1120至框1122。框1122表示从令牌授予服务1102请求一个令牌,线1124表示对令牌的请求。
在令牌授予服务处,框1126表示响应请求1124生成令牌,并将新令牌与存储上包含的内容(例如112)相关联。框1126可包括提示人类用户去获取与获取访问内容的许可相关联的任何付款。
图11描绘了作为框1126所示的处理的结果的令牌1128。框1126可包括将这些令牌转发至令牌确认模块1108。在图11的示例中,尽管注意到令牌确认模块1108内的另一个过程可接收新令牌1128,但框1122可包括接收该令牌。
描述了与图11中的令牌授予服务相关的操作环境,讨论现将继续到对存储可将临时许可或证书发放至主机的操作环境的讨论,现由图12示出。
图12示出其中存储(例如,108)可将临时许可或证书1202发放至主机(例如,120)的操作环境1200。出于描述的方便而非对可能实现的限制,先前描述的一些元素带入图12中并由相似的参考标号来表示。
存储108可包含一个或多个许可(例如,118),图12在118A和118N处显示出这些许可的两个示例。许可可与内容的相应实例(例如,104)相关联,图12在104A和104N处显示出内容的两个示例。
在图1-11所绘和所述的任何场景中,假定存储已经认证了主机的身份,则存储可将临时许可或证书1202发放至主机。该临时证书或许可1202可被认为是许可118中的任何一个的子许可。
使用了该临时证书或许可1202,主机可访问和播放对应于临时许可或证书的内容。临时证书或许可可被临时限制,如1204处所示。暂时限制的许可1204可使主机能在预先设定的时间段内访问内容,而证书或许可在该时间段后过期。
在其它的例子中,临时证书或许可1202仅可准许对内容的某些部分的访问,在1206处示出。这类临时许可可被视为一种预审许可的类型,其中主机仅可播放该内容的某些部分,直到用户或主机获得完全的许可。该场景可在例如存储被零售商或制造商预先载入内容的情况下出现。在这些预载内容的场景下,存储可仅包含预审许可,但仍然可通过主机提供完整的证书。
在另外的示例中,临时证书或许可1202可准许对内容有一预定数量的访问,如1208处所示。例如,临时许可可准许播放内容一次,而临时许可在此之后过期。然而,该临时许可可适合地在不同实现中准许的任意次数的回放。
结论
虽然已经用结构特征和/或方法动作指定的语言描述了该系统和方法,但是应该理解在所附权利要求中定义的该系统和方法不必限于所述的特定特征或动作。相反地,具体特征和动作是作为实现所要求保护的系统和方法的示例性形式来公开的。
另外,对于此处描述并示出的某些数据和过程流程图,应当注意,其中描绘的过程和子过程可以按所示顺序之外的其它顺序执行而不背离本说明书的精神和范围。同样,尽管这些数据和过程流程在此是结合特定组件来描述的,但应当注意,这些数据和过程流程可以用其它组件来执行而不背离本说明书的精神和范围。

Claims (20)

1.一种在主机上执行认证协议的方法,所述方法包括:
生成现实值(506);
将所述现实值发送(504)至存储(108),其中许可被绑定至包含在所述存储中的内容,使得当所述存储从所述主机(120)处移除并被插入至第二主机时,所述许可随所述存储移动,使得所述主机不保留呈现所述内容的剩余权力;
从所述存储接收(520)会话密钥(518),其中所述会话密钥使用与所述主机(120)相关联的公钥(310)来加密。
2.如权利要求1所述的方法,其特征在于,还包括在将所述现实值发送给所述存储之前加密(502)所述现实值。
3.如权利要求2所述的方法,其特征在于,所述加密所述现实值包括采用与该存储相关联的公钥(322)加密该现实值。
4.如权利要求1所述的方法,其特征在于,还包括从所述存储接收(410)存储证书(316),其中所述存储证书包括存储公钥(322)。
5.如权利要求4所述的方法,其特征在于,还包括针对至少一个证书撤销列表(324)检查所述存储证书的有效性(412)。
6.如权利要求4所述的方法,其特征在于,还包括采用所述存储公钥来加密(502)所述现实值。
7.如权利要求6所述的方法,其特征在于,还包括将主机证书(304)发送(416)至所述存储。
8.如权利要求1所述的方法,其特征在于,还包括在完成所述认证协议后从所述存储接收绑定至所述会话密钥的许可(118),其中所述许可允许主机(120)访问包含在所述存储中的内容(104)。
9.一种用于执行认证协议的移动介质播放设备(124,126),所述移动介质播放设备包括:
用于生成现实值(506)的装置;
用于将所述现实值发送(504)至存储(108)的装置,其中许可被绑定至与包含在所述存储中的内容,使得当所述存储从主机(120)处移除并被插入至第二主机时,所述许可随所述存储移动,使得所述主机不保留呈现所述内容的剩余权力;
用于从所述存储接收(520)会话密钥(518)的装置,其中所述会话密钥使用与所述主机(120)相关联的公钥(310)来加密。
10.一种用于在存储上执行认证协议的方法,所述方法包括:
接收(508)来自主机(120)至所述存储(108)的现实值(506),其中所述存储被绑定至与包含所述存储中的内容相关联的一个或多个许可,使得所述一个或多个许可可随所述存储移动;
向所述主机发送(516)会话密钥(518)。
11.如权利要求10所述的方法,其特征在于,还包括接收(418)主机证书(304),其中所述主机证书包括与所述主机相关联的至少一个公钥(310)。
12.如权利要求11所述的方法,其特征在于,还包括针对至少一个证书撤销列表(312)检查(420)所述主机证书。
13.如权利要求10所述的方法,其特征在于,还包括接收(406)对存储证书(316)的查询(404)。
14.如权利要求10所述的方法,其特征在于,还包括发送(408)存储证书(316),其中所述存储证书包括与所述存储相关联的至少一个公钥(322)。
15.如权利要求10所述的方法,其特征在于,所述接收(508)现实值包括从所述主机接收加密的现实值(506),其中所述现实值采用与存储(108)相关联的公钥(322)来加密。
16.如权利要求10所述的方法,其特征在于,还包括采用与所述主机相关联的公钥(310)来加密(514)所述会话密钥。
17.如权利要求10所述的方法,其特征在于,还包括在完成所述认证协议后向所述主机授予许可(118),其中所述许可允许所述主机访问包含在存储(108)上的内容(104)。
18.一种用于执行认证协议的便携式存储设备(110,112,114),所述便携式存储设备包括:
用于接收(508)来自主机(120)至存储(108)的现实值(506)的装置,其中所述存储被绑定至与包含所述存储中的内容相关联的一个或多个许可,使得所述一个或多个许可可随所述存储移动;
用于向所述主机发送(516)会话密钥(518)的装置;以及
用于将与包含在所述存储中的内容相关联的一个或多个许可绑定至所述存储、使得所述一个或多个许可可随所述存储移动的装置。
19.如权利要求18所述的便携式存储设备,其特征在于,所述便携式存储设备包括闪存、安全数字(SD)卡、或用户标识模块(SIM)卡。
20.一种在其中插入如权利要求18所述的便携式存储设备的移动介质播放设备(124,126)。
CN200880016965.2A 2007-05-24 2008-05-22 用于执行认证协议的方法和便携式存储设备 Active CN101682501B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/753,403 US8539233B2 (en) 2007-05-24 2007-05-24 Binding content licenses to portable storage devices
US11/753,403 2007-05-24
PCT/US2008/064441 WO2008147827A2 (en) 2007-05-24 2008-05-22 Binding content licenses to portable storage devices

Publications (2)

Publication Number Publication Date
CN101682501A CN101682501A (zh) 2010-03-24
CN101682501B true CN101682501B (zh) 2016-04-06

Family

ID=40073486

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200880016965.2A Active CN101682501B (zh) 2007-05-24 2008-05-22 用于执行认证协议的方法和便携式存储设备

Country Status (7)

Country Link
US (1) US8539233B2 (zh)
EP (1) EP2158716B1 (zh)
JP (1) JP5450392B2 (zh)
KR (1) KR101238490B1 (zh)
CN (1) CN101682501B (zh)
TW (1) TWI443516B (zh)
WO (1) WO2008147827A2 (zh)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8359372B2 (en) * 2008-06-29 2013-01-22 Microsoft Corporation Automatic transfer of information through physical docking of devices
US8583835B1 (en) 2008-08-06 2013-11-12 Siliconsystems, Inc. Command portal for executing non-standard storage subsystem commands
US8375151B1 (en) * 2009-02-12 2013-02-12 Siliconsystems, Inc. Command portal for securely communicating and executing non-standard storage subsystem commands
DE102008046563A1 (de) * 2008-09-10 2010-03-11 Siemens Aktiengesellschaft Verfahren zur Datenübertragung zwischen Netzwerkknoten
KR101224717B1 (ko) * 2008-12-26 2013-01-21 에스케이플래닛 주식회사 소프트웨어 라이센스 보호 방법과 그를 위한 시스템, 서버,단말기 및 컴퓨터로 읽을 수 있는 기록매체
US9432356B1 (en) 2009-05-05 2016-08-30 Amazon Technologies, Inc. Host identity bootstrapping
EP2490143A1 (en) * 2011-02-10 2012-08-22 Thomson Licensing Method and device for controlling distribution of licenses
JP5725210B2 (ja) 2012-02-03 2015-05-27 富士通株式会社 端末固有情報の送信方法およびシステム
CN102799540B (zh) * 2012-06-21 2017-07-14 南京中兴软件有限责任公司 利用用户识别卡密钥对存储卡加解密的方法、系统和终端
US10102510B2 (en) 2012-11-28 2018-10-16 Hoverkey Ltd. Method and system of conducting a cryptocurrency payment via a mobile device using a contactless token to store and protect a user's secret key
US20140149742A1 (en) * 2012-11-28 2014-05-29 Arnold Yau Method and system of providing authentication of user access to a computer resource via a mobile device using multiple separate security factors
GB201221433D0 (en) 2012-11-28 2013-01-09 Hoverkey Ltd A method and system of providing authentication of user access to a computer resource on a mobile device
US11127001B2 (en) * 2013-05-09 2021-09-21 Wayne Fueling Systems Llc Systems and methods for secure communication
WO2015005708A1 (ko) * 2013-07-10 2015-01-15 엘지전자(주) 컨텐트 재생 방법 및 장치
US10108788B2 (en) 2013-09-10 2018-10-23 Netflix, Inc. Fast-expiring licenses used to speculatively authorize access to streaming media content
CN104765999B (zh) * 2014-01-07 2020-06-30 腾讯科技(深圳)有限公司 一种对用户资源信息进行处理的方法、终端及服务器
WO2015119357A1 (ko) * 2014-02-10 2015-08-13 엘지전자(주) 컨텐츠 재생 방법 및 장치
WO2015187740A1 (en) 2014-06-02 2015-12-10 Sonic Ip, Inc. Binding content playback to a removable storage
US10735816B2 (en) * 2014-10-02 2020-08-04 Lg Electronics Inc. Content reproduction method and device
US10956583B2 (en) * 2018-06-27 2021-03-23 At&T Intellectual Property I, L.P. Multi-phase digital content protection
US11444759B2 (en) 2019-05-29 2022-09-13 Stmicroelectronics, Inc. Method and apparatus for cryptographically aligning and binding a secure element with a host device
EP4274157A3 (en) * 2019-09-26 2024-04-17 General Electric Company Communicating securely with devices in a distributed control system
US20220085983A1 (en) * 2020-09-14 2022-03-17 Hewlett Packard Enterprise Development Lp Encryption keys from storage systems
US11792644B2 (en) * 2021-06-21 2023-10-17 Motional Ad Llc Session key generation for autonomous vehicle operation
US20220408245A1 (en) * 2021-06-21 2022-12-22 Motional Ad Llc Session key generation for autonomous vehicle operation

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1722658A (zh) * 2004-03-19 2006-01-18 微软公司 计算机系统的有效的和安全的认证
WO2006126801A1 (en) * 2005-05-27 2006-11-30 Samsung Electronics Co., Ltd. Key handshaking method and system for wireless local area networks
CN101056166A (zh) * 2007-05-28 2007-10-17 北京飞天诚信科技有限公司 一种提高数据传输安全性的方法

Family Cites Families (59)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5715403A (en) * 1994-11-23 1998-02-03 Xerox Corporation System for controlling the distribution and use of digital works having attached usage rights where the usage rights are defined by a usage rights grammar
US8261319B2 (en) * 1995-10-24 2012-09-04 Corestreet, Ltd. Logging access attempts to an area
US6681017B1 (en) * 1997-09-03 2004-01-20 Lucent Technologies Inc. Simplified secure shared key establishment and data delivery protocols for electronic commerce
JPH11328033A (ja) * 1998-05-20 1999-11-30 Fujitsu Ltd ライセンス委譲装置
US7103574B1 (en) * 1999-03-27 2006-09-05 Microsoft Corporation Enforcement architecture and method for digital rights management
EP1076279A1 (en) * 1999-08-13 2001-02-14 Hewlett-Packard Company Computer platforms and their methods of operation
US7010808B1 (en) * 2000-08-25 2006-03-07 Microsoft Corporation Binding digital content to a portable storage device or the like in a digital rights management (DRM) system
JP2002175084A (ja) * 2000-12-07 2002-06-21 Sanyo Electric Co Ltd 再生装置
US7076067B2 (en) * 2001-02-21 2006-07-11 Rpk New Zealand Limited Encrypted media key management
SE0101295D0 (sv) * 2001-04-10 2001-04-10 Ericsson Telefon Ab L M A method and network for delivering streaming data
US7421411B2 (en) * 2001-07-06 2008-09-02 Nokia Corporation Digital rights management in a mobile communications environment
US7224805B2 (en) * 2001-07-06 2007-05-29 Nokia Corporation Consumption of content
US6999792B2 (en) * 2001-09-20 2006-02-14 Peter Warren Input-output device with universal phone port
JP3631186B2 (ja) * 2001-09-21 2005-03-23 三洋電機株式会社 データ再生装置およびデータ記録装置
US6996544B2 (en) * 2002-02-27 2006-02-07 Imagineer Software, Inc. Multiple party content distribution system and method with rights management features
US7272858B2 (en) * 2002-04-16 2007-09-18 Microsoft Corporation Digital rights management (DRM) encryption and data-protection for content on a relatively simple device
US7461251B2 (en) * 2002-05-09 2008-12-02 Canon Kabushiki Kaisha Public key certification issuing apparatus
US8335915B2 (en) * 2002-05-14 2012-12-18 Netapp, Inc. Encryption based security system for network storage
US7142674B2 (en) * 2002-06-18 2006-11-28 Intel Corporation Method of confirming a secure key exchange
DE10239062A1 (de) * 2002-08-26 2004-04-01 Siemens Ag Verfahren zum Übertragen von verschlüsselten Nutzdatenobjekten
US7020636B2 (en) * 2002-09-05 2006-03-28 Matsushita Electric Industrial, Co., Ltd. Storage-medium rental system
US7600118B2 (en) * 2002-09-27 2009-10-06 Intel Corporation Method and apparatus for augmenting authentication in a cryptographic system
WO2005033892A2 (en) * 2003-10-03 2005-04-14 Sony Electronics, Inc. Rendering rights delegation system and method
US7185195B2 (en) * 2003-12-14 2007-02-27 Realnetworks, Inc. Certificate based digital rights management
US8843413B2 (en) * 2004-02-13 2014-09-23 Microsoft Corporation Binding content to a domain
US7546641B2 (en) * 2004-02-13 2009-06-09 Microsoft Corporation Conditional access to digital rights management conversion
KR20050096040A (ko) * 2004-03-29 2005-10-05 삼성전자주식회사 휴대형 저장장치와 디바이스간에 디지털 저작권 관리를이용한 콘텐츠 재생방법 및 장치와, 이를 위한 휴대형저장장치
US7664966B2 (en) * 2004-05-17 2010-02-16 Microsoft Corporation Secure storage on recordable medium in a content protection system
KR101100391B1 (ko) * 2004-06-01 2012-01-02 삼성전자주식회사 휴대형 저장장치와 디바이스간에 디지털 저작권 관리를이용한 콘텐츠 재생방법 및 장치와, 이를 위한 휴대형저장장치
US20050289343A1 (en) * 2004-06-23 2005-12-29 Sun Microsystems, Inc. Systems and methods for binding a hardware component and a platform
EP1622333A1 (en) * 2004-07-29 2006-02-01 Sun Microsystems France S.A. Method and apparatus for minimally onerous and rapid authentification
US20060047976A1 (en) * 2004-08-25 2006-03-02 General Instrument Corporation Method and apparatus for generating a decrpytion content key
US7596690B2 (en) * 2004-09-09 2009-09-29 International Business Machines Corporation Peer-to-peer communications
EP1635545B1 (en) * 2004-09-14 2013-04-10 Sony Ericsson Mobile Communications AB Method and system for transferring of digital rights protected content using USB or memory cards
JP4929582B2 (ja) 2004-11-02 2012-05-09 日本精工株式会社 転がり軸受
CN100594502C (zh) * 2004-11-08 2010-03-17 艾利森电话股份有限公司 向授权中心系统注册设备的方法和系统
US8181266B2 (en) * 2005-01-13 2012-05-15 Samsung Electronics Co., Ltd. Method for moving a rights object between devices and a method and device for using a content object based on the moving method and device
JP4589758B2 (ja) * 2005-03-03 2010-12-01 フェリカネットワークス株式会社 データ通信システム,代行システムサーバ,コンピュータプログラム,およびデータ通信方法
KR100652125B1 (ko) * 2005-06-03 2006-12-01 삼성전자주식회사 서비스 제공자, 단말기 및 사용자 식별 모듈 간을총괄적으로 인증하여 관리할 수 있도록 하는 상호 인증방법 및 이를 이용한 시스템과 단말 장치
JP4764080B2 (ja) 2005-07-06 2011-08-31 アルパイン株式会社 コンテンツ転送方法及びコンテンツ転送システム
EP1752937A1 (en) * 2005-07-29 2007-02-14 Research In Motion Limited System and method for encrypted smart card PIN entry
US20090151006A1 (en) * 2005-08-31 2009-06-11 Sony Corporation Group registration device, group registration release device, group registration method, license acquisition device, license acquisition method, time setting device, and time setting method
JP4760234B2 (ja) 2005-08-31 2011-08-31 ソニー株式会社 ライセンス取得装置及びライセンス取得方法
US7809957B2 (en) * 2005-09-29 2010-10-05 Intel Corporation Trusted platform module for generating sealed data
JP4992219B2 (ja) * 2005-10-06 2012-08-08 セイコーエプソン株式会社 送信情報照合装置および送信情報照合方法、並びに、管理対象デバイス
JP2009512096A (ja) * 2005-10-18 2009-03-19 インタートラスト テクノロジーズ コーポレイション デジタル著作権管理エンジンのシステムおよび方法
US20070100893A1 (en) * 2005-10-31 2007-05-03 Sigmatel, Inc. System and method for accessing data from a memory device
JP2007128278A (ja) 2005-11-04 2007-05-24 Sharp Corp コンテンツ管理システム、コンテンツ管理方法、及びそれらに用いるプログラム及び記録媒体
US7689250B2 (en) * 2006-02-01 2010-03-30 General Instrument Corporation Method, apparatus and system for partitioning and bundling access to network services and applications
KR100703811B1 (ko) * 2006-02-28 2007-04-09 삼성전자주식회사 휴대용 저장장치 및 휴대용 저장장치의 데이터 관리 방법
JP5181094B2 (ja) * 2006-05-05 2013-04-10 インターデイジタル テクノロジー コーポレーション 信頼される処理技術を使用したデジタル権利管理
US8984652B2 (en) * 2006-07-28 2015-03-17 Sony Corporation Transfer of digital rights management information
US7743258B2 (en) * 2006-08-28 2010-06-22 Sandisk Corporation Method for interacting with a memory device in cryptographic operations
US20080109656A1 (en) * 2006-11-08 2008-05-08 General Instrument Corporation Method and Apparatus for Enabling Content to be Shared Among Multiple Devices in a Secure Environment
US8079071B2 (en) * 2006-11-14 2011-12-13 SanDisk Technologies, Inc. Methods for accessing content based on a session ticket
US8763110B2 (en) * 2006-11-14 2014-06-24 Sandisk Technologies Inc. Apparatuses for binding content to a separate memory device
US7975312B2 (en) * 2007-01-08 2011-07-05 Apple Inc. Token passing technique for media playback devices
US8296240B2 (en) * 2007-03-22 2012-10-23 Sony Corporation Digital rights management dongle
JP5293284B2 (ja) * 2009-03-09 2013-09-18 沖電気工業株式会社 通信方法、メッシュ型ネットワークシステム及び通信端末

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1722658A (zh) * 2004-03-19 2006-01-18 微软公司 计算机系统的有效的和安全的认证
WO2006126801A1 (en) * 2005-05-27 2006-11-30 Samsung Electronics Co., Ltd. Key handshaking method and system for wireless local area networks
CN101056166A (zh) * 2007-05-28 2007-10-17 北京飞天诚信科技有限公司 一种提高数据传输安全性的方法

Also Published As

Publication number Publication date
US20080294894A1 (en) 2008-11-27
JP5450392B2 (ja) 2014-03-26
WO2008147827A2 (en) 2008-12-04
KR20100022953A (ko) 2010-03-03
TW200949607A (en) 2009-12-01
US8539233B2 (en) 2013-09-17
EP2158716A2 (en) 2010-03-03
EP2158716B1 (en) 2018-07-11
CN101682501A (zh) 2010-03-24
KR101238490B1 (ko) 2013-03-08
TWI443516B (zh) 2014-07-01
WO2008147827A3 (en) 2009-02-19
EP2158716A4 (en) 2014-11-26
JP2010528537A (ja) 2010-08-19

Similar Documents

Publication Publication Date Title
CN101682501B (zh) 用于执行认证协议的方法和便携式存储设备
US7599890B2 (en) Content data storage
RU2352985C2 (ru) Способ и устройство для санкционирования операций с контентом
RU2504005C2 (ru) Устройство и способ управления цифровыми правами
JP5200204B2 (ja) 高信頼性システムを含む連合型デジタル権限管理機構
CN1675881B (zh) 通过网络监控从内容供应商提供的数字内容的方法,系统及装置
CN102057382B (zh) 用于内容共享的临时域成员资格
US8126150B2 (en) Storage medium processing method, storage medium processing device, and program
US7570762B2 (en) Content delivery service providing apparatus and content delivery service terminal unit
US20050256910A1 (en) Method and apparatus for limiting number of times contents can be accessed using hash chain
KR20050020165A (ko) 사용자간 콘텐츠에 대한 권한정보의 공유방법
CN101606161A (zh) 用于确定超分发录制品的价格的方法
KR101858562B1 (ko) 이트레이닝 컨텐츠 사용을 위한 암호화 시스템
JP2006246081A (ja) 暗号処理装置、コンテンツ再生システム、icカード、暗号処理方法、暗号処理プログラムおよび記録媒体
KR101413064B1 (ko) 휴대단말의 콘텐츠 권리객체 획득방법 및 장치
KR20050096036A (ko) 휴대형 저장장치 및 휴대형 저장장치의 파일 관리 방법
JP3788572B2 (ja) レンタルコンテンツ流通システムおよびその方法
KR20080029596A (ko) 개인 drm이 적용된 개인 멀티캐스팅 서비스 시스템 및 그 제공 방법
JP2004312717A (ja) データ保護管理装置およびデータ保護管理方法
JP2004048596A (ja) 携帯通信端末及び情報送受信方法
CN101107610A (zh) 在用于商业性和个人内容的drm系统内阻止内容的非法分发的方法
KR20080063610A (ko) 이동통신 시스템에서 컨텐츠의 미리보기를 관리하는 장치및 방법
JP2002026900A (ja) データ再生装置、それを用いた端末装置、および再生方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150729

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20150729

Address after: Washington State

Applicant after: Micro soft technique license Co., Ltd

Address before: Washington State

Applicant before: Microsoft Corp.

C14 Grant of patent or utility model
GR01 Patent grant