CN100533452C - 用于数字权利管理的方法和装置 - Google Patents

用于数字权利管理的方法和装置 Download PDF

Info

Publication number
CN100533452C
CN100533452C CNB2006100946998A CN200610094699A CN100533452C CN 100533452 C CN100533452 C CN 100533452C CN B2006100946998 A CNB2006100946998 A CN B2006100946998A CN 200610094699 A CN200610094699 A CN 200610094699A CN 100533452 C CN100533452 C CN 100533452C
Authority
CN
China
Prior art keywords
drm agent
user account
rights issuer
agent equipment
rights
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
CNB2006100946998A
Other languages
English (en)
Other versions
CN101097588A (zh
Inventor
党亚斌
冯博
阎蓉
邵凌
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Priority to CNB2006100946998A priority Critical patent/CN100533452C/zh
Priority to EP07730201A priority patent/EP2035993A2/en
Priority to PCT/EP2007/055970 priority patent/WO2008000639A2/en
Priority to US11/821,985 priority patent/US9858561B2/en
Publication of CN101097588A publication Critical patent/CN101097588A/zh
Application granted granted Critical
Publication of CN100533452C publication Critical patent/CN100533452C/zh
Priority to US13/611,394 priority patent/US9886687B2/en
Priority to US14/983,888 priority patent/US20160110527A1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/20Point-of-sale [POS] network systems
    • G06Q20/203Inventory monitoring
    • 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/105Arrangements for software license management or administration, e.g. for managing licenses at corporate level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/306User profiles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2101Auditing as a secondary aspect
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2117User registration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2135Metering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2137Time limited access, e.g. to a computer or data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/101Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying security measures for digital rights management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Business, Economics & Management (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Accounting & Taxation (AREA)
  • Computing Systems (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Storage Device Security (AREA)

Abstract

本发明提供了一种用于数字权利管理的方法,包括步骤:从多个DRM代理设备中的一个DRM代理设备接收注册请求,所述注册请求用于请求将多个用户账号中的一个用户账号和所述一个DRM代理设备注册到多个权利发放者中的一个权利发放者中;响应于所述注册请求,在所述一个权利发放者中完成注册过程,包括建立所述一个用户账号、所述一个DRM代理设备和所述一个权利发放者之间的对应关系;以及向所述一个DRM代理设备返回注册完成响应。本发明还提供了另外的相应的方法和装置。本发明为DRM代理设备、用户账号、权利发放者等DRM实体之间的多对多关系提供了支持,可使DRM系统适用于更多的商业模式。

Description

用于数字权利管理的方法和装置
技术领域
本发明涉及数字权利管理(DRM),更具体地,本发明涉及在DRM系统中注册/解除注册DRM代理设备的方法和装置以及DRM代理设备。
背景技术
随着互联网和数字化技术的快速发展,网上交易的电子书、电子报纸、音乐、电影、图片、游戏和软件等数字内容越来越多。然而,由于数字化内容很容易被复制和传播,网上交易的数字内容存在大量的盗版和侵权问题,使数字内容的拥有者的利益受到了损失,挫伤了他们使用互联网扩展业务的积极性。对数字内容的版权保护就显得越来越重要。
近年来,DRM技术越来越受到人们的重视,越来越多的数字内容通过DRM技术保护,从而实现了数字内容的增值服务,例如通过DRM系统,网上销售电子书,使出版社在出版纸书的同时,通过电子书的销售获得更多的收益。
图1示出了DRM系统100的一般架构。系统100包括内容分发者110、权利发放者120、消费者130以及主中心140。主中心140存储受保护的数字内容和内容的权利。内容分发者110从主中心140获得待分发的数字内容,并提供内容分发机制。权利发放者120负责管理注册消费者130、认证消费者130、接收来自消费者130的关于该数字内容的许可证(权利对象)请求、生成用于该数字内容的许可证、向消费者130发送该许可证、记录消费者130对许可证的使用情况等。消费者130通过从内容分发者110获得可下载的内容或者流媒体形式的内容,并且向权利发放者120请求对应内容的许可证,来使用受保护的内容。消费者130需要有支持DRM的数字内容表现工具(例如具有播放器、阅读器等的计算机、移动电话、个人数字助理(PDA)等等),通过使用来自权利发放者120的许可证,对来自内容分发者110的数字内容进行解密,以表现该数字内容。在内容分发过程以及认证等过程中,内容分发者110和权利发放者120需要与主中心140联系。更具体地说,主中心140向内容分发者110提供受保护的数字内容,并且向权利发放者120提供关于该数字内容的使用规则。
在传统的DRM系统中,DRM代理设备,也就是用户设备,例如计算机、移动电话、机顶盒等,与用户的账号看作是同一实体,并且该账号只可用于一个权利发放者。对于许多商业模式,例如IPTV,这不合理。一方面,用户可能通过同一账号使用多于一个的DRM代理设备,并且一个DRM代理设备可以由多于一个用户账号来使用。另一方面,在DRM系统中,一个账号应该被多于一个权利发放者所支持。
发明内容
因此,本发明的目的是满足现有技术中的上述需求,在DRM系统中支持DRM实体间的多对多关系,其中DRM实体包括DRM代理设备、用户账号、权利发放者等。
根据本发明的第一方面,提供一种用于数字权利管理的方法,包括步骤:从多个DRM代理设备中的一个DRM代理设备接收注册请求,所述注册请求用于请求将多个用户账号中的一个用户账号和所述一个DRM代理设备注册到多个权利发放者中的一个权利发放者中;响应于所述注册请求,在所述一个权利发放者中完成注册过程,包括建立所述一个用户账号、所述一个DRM代理设备和所述一个权利发放者之间的对应关系;以及向所述一个DRM代理设备返回注册完成响应。
上述方法中,所述完成注册过程的步骤包括步骤:验证所述一个DRM代理设备;以及认证所述一个用户账号。
上述方法中,当多个DRM代理设备在一个权利发放者下绑定到一个用户账号时,将所述一个用户账号作为开放移动联盟的域。
上述方法中,所述完成注册过程的步骤包括步骤:如果所述一个用户账号下的已注册的DRM代理设备的数目大于等于一个预先确定的值,则终止所述注册过程。
上述方法中,还包括步骤:更新由所述一个用户账号、所述一个DRM代理设备和所述一个权利发放者涉及的内容所限定的权利对象空间。
上述方法中,还包括步骤:从一个DRM代理设备接收用于获取内容权利对象的请求;在所述权利对象空间中搜索所述内容权利对象;以及在找到所述内容权利对象的情况下,向所述DRM代理设备返回所述内容权利对象。
根据本发明的第二方面,提供一种用于数字权利管理的方法,包括步骤:从多个DRM代理设备中的一个DRM代理设备接收解除注册请求,所述解除注册请求用于请求将多个用户账号中的一个用户账号和所述一个DRM代理设备从多个权利发放者中的一个权利发放者中解除注册;响应于所述解除注册请求,在所述一个权利发放者中完成解除注册过程,包括删除所述一个用户账号、所述一个DRM代理设备和所述一个权利发放者之间的对应关系;以及向所述一个DRM代理设备返回解除注册完成响应。
上述方法中,所述完成解除注册过程的步骤包括步骤:验证所述一个DRM代理设备;以及认证所述一个用户账号。
上述方法中,当多个DRM代理设备在一个权利发放者下绑定到一个用户账号时,将所述一个用户账号作为开放移动联盟的域。
上述方法中,所述完成解除注册过程的步骤包括步骤:如果所述一个用户账号下的所述一个DRM代理设备的解除注册次数大于等于一个预先确定的值,则终止所述解除注册过程。
上述方法中,还包括步骤:更新由所述一个用户账号、所述一个DRM代理设备和所述一个权利发放者涉及的内容所限定的权利对象空间。
根据本发明的第三方面,提供一种用于数字权利管理的装置,包括:上下文存储器,用于存储用户账号、DRM代理设备和权利发放者之间的已经建立的对应关系;接收器,用于从多个DRM代理设备中的一个DRM代理设备接收注册请求,所述注册请求用于请求将多个用户账号中的一个用户账号和所述一个DRM代理设备注册到多个权利发放者中的一个权利发放者中;注册器,用于响应于所述注册请求、在所述一个权利发放者中完成注册过程,包括建立所述一个用户账号、所述一个DRM代理设备和所述一个权利发放者之间的对应关系,并将所述对应关系存储到所述上下文存储器中;以及发送器,用于向所述一个DRM代理设备返回注册完成响应。
上述装置中,所述注册器包括:验证器,用于验证所述一个DRM代理设备;以及认证器,用于认证所述一个用户账号。
上述装置中,当多个DRM代理设备在一个权利发放者下绑定到一个用户账号时,将所述一个用户账号作为开放移动联盟的域。
上述装置中,所述注册器在所述一个用户账号下的已注册的DRM代理设备的数目大于等于一个预先确定的值时终止所述注册过程。
上述装置中,还包括:权利对象空间存储器,用于存储由所述一个用户账号、所述一个DRM代理设备和所述一个权利发放者涉及的内容所限定的权利对象空间。
上述装置中,所述接收器还用于从一个DRM代理设备接收用于获取内容权利对象的请求,以及所述发送器还用于向所述DRM代理设备返回所述内容权利对象,如果所述内容权利对象存在于所述权利对象空间存储器中的话。
上述装置中,所述接收器还用于从多个DRM代理设备中的一个DRM代理设备接收解除注册请求,所述解除注册请求用于请求将多个用户账号中的一个用户账号和所述一个DRM代理设备从多个权利发放者中的一个权利发放者中解除注册;所述注册器还用于响应于所述解除注册请求、在所述至少一个权利发放者中完成解除注册过程,包括删除所述一个用户账号、所述一个DRM代理设备和所述一个权利发放者之间的对应关系,并更新所述上下文存储器;以及所述发送器还用于向所述一个DRM代理设备返回解除注册完成响应。
上述装置中,所述验证器和所述认证器也工作在所述解除注册过程当中。
上述装置中,所述注册器在所述一个用户账号下的所述一个DRM代理设备的解除注册次数大于等于一个预先确定的值时终止所述解除注册过程。
根据本发明的第四方面,提供一种用于数字权利管理的方法,包括步骤:向多个权利发放者中的一个权利发放者发送注册请求,所述注册请求用于请求将多个用户账号中的一个用户账号和多个DRM代理设备中的一个DRM代理注册到所述一个权利发放者中;以及若从所述一个权利发放者收到注册完成响应,则在本地建立所述一个用户账号、所述一个DRM代理设备和所述一个权利发放者之间的对应关系。
上述方法中,当多个DRM代理设备在一个权利发放者下绑定到一个用户账号时,将所述一个用户账号作为开放移动联盟的域。
上述方法中,还包括步骤:向所述一个权利发放者发送用于获取内容权利对象的请求;在收到所述内容权利对象的情况下,更新本地保存的权利对象空间。
根据本发明的第五方面,提供一种用于数字权利管理的方法,包括步骤:向多个权利发放者中的一个权利发放者发送解除注册请求,所述解除注册请求用于请求将多个用户账号中的一个用户账号和多个DRM代理设备中的一个DRM代理从所述一个权利发放者中解除注册;以及若从所述一个权利发放者收到解除注册完成响应,则在本地删除所述一个用户账号、所述一个DRM代理设备和所述一个权利发放者之间的对应关系。
上述方法中,当多个DRM代理设备在一个权利发放者下绑定到一个用户账号时,将所述一个用户账号作为开放移动联盟的域。
根据本发明的第六方面,提供一种用于数字权利管理的装置,包括:发送器,用于向多个权利发放者中的一个权利发放者发送注册请求,所述注册请求用于请求将多个用户账号中的一个用户账号和多个DRM代理设备中的一个DRM代理注册到所述一个权利发放者中;以及接收器,用于在从所述一个权利发放者收到注册完成响应后在本地建立所述一个用户账号、所述一个DRM代理设备和所述一个权利发放者之间的对应关系。
上述装置中,当多个DRM代理设备在一个权利发放者下绑定到一个用户账号时,将所述一个用户账号作为开放移动联盟的域。
上述装置中,所述发送器还用于向所述一个权利发放者发送用于获取内容权利对象的请求;以及所述接收器还用于在收到所述内容权利对象时更新本地保存的权利对象空间。
上述装置中,所述发送器还用于向多个权利发放者中的一个权利发放者发送解除注册请求,所述解除注册请求用于请求将多个用户账号中的一个用户账号和多个DRM代理设备中的一个DRM代理从所述一个权利发放者中解除注册;以及所述接收器还用于在从所述一个权利发放者收到解除注册完成响应的情况下在本地删除所述一个用户账号、所述一个DRM代理设备和所述一个权利发放者之间的对应关系。
根据本发明的用于数字权利管理的方法/装置(如权利发放服务器以及DRM代理设备),为DRM代理设备、用户账号、权利发放者等DRM实体之间的多对多关系提供了支持,从而可以使得DRM系统适用于更多的商业模式,例如IPTV等。
附图说明
通过以下结合附图的说明,并且随着对本发明的更全面了解,本发明的其它目的和效果将变得更加清楚和易于理解,其中:
图1示出了DRM系统100的一般架构;
图2示出了可以在其中实现本发明的DRM系统200;
图3示出了根据本发明的一个实施方式的注册过程的信号流图;
图4示出了根据本发明的一个实施方式的3维权利对象空间;
图5示出了根据本发明的一个实施方式的获取权利对象的信号流图;
图6示出了根据本发明的一个实施方式的解除注册过程的信号流图;
图7示出了根据本发明的一个实施方式的用于数字权利管理的装置的示意结构图;
图8示出了根据本发明的一个实施方式的用于数字权利管理的装置的示意结构图;以及
图9示意性地表示了其中可以实现本发明的实施例的计算机系统。
在所有的上述附图中,相同的标号表示具有相同、相似或相应的特征或功能。
具体实施方式
以下对本发明的优选实施方式进行描述。
本发明的基本思想是在DRM系统中支持DRM实体间的多对多关系,其中DRM实体包括DRM代理设备、用户账号、权利发放者等。
在本发明中,通过注册形成用户账号、DRM代理设备和权利发放者之间的上下文。在一个用户账号经由一个DRM代理设备向一个权利发放者请求用于一个受保护的内容的权利对象之前,该一个用户账号和该一个DRM代理设备注册到多个权利发放者中的一个,从而可以在该DRM代理设备和该一个权利发放者中形成用户账号、DRM代理设备和权利发放者之间的上下文。这样,在需要获取用于一个受保护的内容的权利对象时,可以通过向该一个权利发放者请求该权利对象,而得到该权利对象。
在本发明中,通过解除注册可以删除用户账号、DRM代理设备和权利发放者之间的上下文。
图2示出了可以在其中实现本发明的DRM系统200。如图2所示,该DRM系统包括用户账号210、DRM代理设备220和权利发放者230。这里,示意性地示出了该DRM系统包括m个用户账号、n个DRM代理设备、以及p个权利发放者,其中m、n和p都是正整数。用户账号和用户之间可以是一对一关系,也可以是多对多关系。DRM代理设备的例子包括计算机、PDA、移动电话、机顶盒等等。权利发放者可以包括在互联网上的服务器,并可以具有标识,例如IP地址、域名、或者其他可以唯一识别一个权利发放者的标识。在本发明中,可以在任何一个用户账号、任何一个DRM代理设备和任何一个权利发放者之间建立关系,从而形成它们之间的上下文。
以下,描述通过扩展开放移动联盟(OMA)的DRM协议-权利对象获取协议(ROAP)-来实现的本发明的在DRM系统中支持DRM实体间的多对多关系。
本领域的技术人员将理解,这样的扩展是有效的和OMA兼容的,因为只向该ROAP协议增加了一些兼容的扩展,而并没有引入任何私有协议消息。其他OMA兼容设备可以忽略这些扩展。
当然,本领域的技术人员应该理解,也可以通过扩展其他的DRM系统,例如Microsoft DRM、Sun Open DRM、Real DRM等,来实现本发明的在DRM系统中支持DRM实体间的多对多关系。
对于本领域的技术人员来说,通过参考ROAP协议,可以理解以下将出现的一些消息。
图3示出了根据本发明的一个实施方式的注册过程的信号流图。如图3所示,该注册过程包括在任何一个DRM代理设备220和任何一个权利发放者230之间的6个步骤。在该实施方式中,使用OMA4消息(步骤S310-340)注册协议和2消息(步骤S350-360)加入域协议来实现该注册过程。
首先,一个DRM代理设备向一个目的权利发放者发送一个roap:DeviceHello消息(步骤S310)。
当一个用户希望他/她的一个用户账号和一个DRM代理设备注册到一个权利发放者时,他/她可以在该一个DRM代理设备中输入该一个用户账号和密码,并点击一个例如注册按钮,就可以触发注册过程。因此,该DRM代理设备向该一个目的权利发放者发送一个roap:DeviceHello消息。
以下的代码示出了一个roap:DeviceHello消息的例子:
<?xml version="1.0"encoding="utf-8"?>
<roap:deviceHello
  xmlns:roap="urn:oma:bac:dldrm:roap-1.0"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <version>1.0</version>
    <deviceID>
       <keyIdentifier xsi:type="roap:X509SPKIHash">
          <hash>vXENc+Um/9/NvmYKiHDLaErK0gk=</hash>
       </keyIdentifier>
    </deviceID>
    <extensions>
        <extension xsi:type="roap:CertificateCaching"/>
        <extension xsi:type=″roap:RIID″>
            <riID>
                <keyIdentifier xsi:type=″roap:X509SPKIHash″>
                <hash>aXENc+Um/9/NvmYKiHDLaErK0fk=</hash>
                </keyIdentifier>
             </riID>
         </extension>
    </extensions>
</roap:deviceHello>
其中斜体部分表示在该实施方式中所实现的扩展。从上述代码中可以看出,常规roap:DeviceHello消息包括协议版本、该DRM代理设备的设备标识以及扩展字段。其中,每个DRM代理设备一般有一个设备标识,其由该DRM代理设备的生产厂家命名并写入。在该实施方式中,roap:DeviceHello消息的扩展字段还包括目的权利发放者的标识,如加粗部分所示,指定了用户请求向其注册的权利发放者。
当然,本领域的技术人员应该理解,也可以不需要权利发放者的标识。例如,如果一个用户希望将该一个用户账号和该一个DRM代理设备注册到所有的权利发放者,就可以不需要权利发放者的标识。或者,如果该用户不知道该目的权利发放者的标识,也可以不需要该权利发放者的标识,他/她可以在以后的步骤中做出哪个是目的权利发放者的选择。
该roap:DeviceHello消息和以下将描述的其他消息可以通过广播、组播或单播或它们的组合的方式发送。
当该目的权利发放者收到该roap:DeviceHello消息后,向该DRM代理设备发送一个roap:RIHello消息(步骤S320),以报告一些信息。
以下的代码示出了一个roap:RIHello消息的例子:
<?xml version="1.0"encoding="utf-8"?>
<roap:riHello
  xmlns:roap="urn:oma:bac:dldrm:roap-1.0"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  status="Success"sessionId="433211">
     <selectedVersion>1.0</selectedVersion>
     <riID>
        <keyIdentifier xsi:type="roap:X509SPKIHash">
             <hash>aXENc+Um/9/NvmYKiHDLaErK0fk=</hash>
        </keyIdentifier>
    </riID>
    <riNonce>dsaiuiure9sdwerfqwer</riNonce>
    <trustedAuthorities>
        <keyIdentifier xsi:type="roap:X509SPKIHash">
            <hash>bew3e332oihde9dwiHDLaErK0fk=</hash>
        </keyIdentifier>
        <keyIdentifier xsi:type="roap:X509SPKIHash">
             <hash>31kpoi9fceoiuoift45epokifc0poiss</hash>
        </keyIdentifier>
    </trustedAuthorities>
    <extensions>
         <extension xsi:type="roap:CertificateCaching"/>
    </extensions>
</roap:riHello>
从上述代码中可以看出,roap:RIHello消息包括执行状态、会话标识、所选择的协议版本、权利发放者标识、权利发放者声明、信任的设备签发者、以及扩展字段。
在该实施方式中,没有对该roap:RIHello消息进行扩展。需要注意的是在该代码中出现了会话标识,在这里是433211。在注册过程的以后的步骤中,都需要该会话标识,并且该会话标识不会改变。
接下来,该DRM代理设备向该目的权利发放者发送一个roap:RegistrationRequest消息(步骤S330)。
以下的代码示出了一个roap:RegistrationRequest消息的例子:
<?xml version="1.0"encoding="utf-8"?>
<roap:registrationRequest
  xmlns:roap="urn:oma:bac:dldrm:roap-1.0"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  sessionId="433211">
    <nonce>32efd34de39sdwefqwer</nonce>
    <time>2004-03-17T14:20:00Z</time>
    <certificateChain>
        <certificate>miib123121234567</certificate>
        <certificate>miib234124312431</certificate>
    </certificateChain>
    <trustedAuthorities>
        <keyIdentifier xsi:type="roap:X509SPKIHash">
            <hash>432098mhj987fdlkj98lkj098lkjr409</hash>
        </keyIdentifier>
        <keyIdentifier xsi:type="roap:X509SPKIHash">
            <hash>432098ewew5jy6532fewfew4f43f3409</hash>
        </keyIdentifier>
   </trustedAuthorities>
   <signature>321ue3ue3ue10ue2109ue1ueoidwoijdwe309u09ueqijdwqijd
     wq09uwqwqi009</signature>
</roap:registrationRequest>
从上述代码中可以看出,roap:RegistrationRequest消息包括会话标识、设备声明、请求时间、设备证书链、信任的权利发放者签发者、扩展字段(该例中没有对roap:RegistrationRequest消息进行扩展)、以及数字签名。
需要注意的是在该消息中具有请求时间,如加粗部分所示,该时间在计算注册的有效期时有用。此外,在该消息中具有设备证书链,如不同字体部分所示,可以用于验证该DRM代理设备。另外,需要注意的是,该roap:RegistrationRequest消息具有数字签名,以保证该消息的完整性和正确性。
当该目的权利发放者收到该roap:RegistrationRequest消息后,向该DRM代理设备发送一个roap:RegistrationResponse消息(步骤S340),以报告一些信息。
以下的代码示出了一个roap:RegistrationResponse消息的例子:
<?xml version="1.0"encoding="utf-8"?>
<roap:registrationResponse
  xmlns:roap="urn:oma:bac:dldrm:roap-1.0"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  status="Success"                        sessionId="433211"
riURL="www.anyRI.com/register">
    <riURL>http://ri.example.com/roap.cgi</riURL>
    <certificateChain>
        <certificate>MIIB223121234567</certificate>
        <certificate>MIIB834124312431</certificate>
    </certificateChain>
<ocspResponse>fdow9rw0feijfdsojr3w09u3wijfdslkj4sd</ocspResponse>
   <signature>321ue3ue3ue10ue2109ue1ueoidwoijdwe309u09ueqijdwqijd
    wq09uwqwqi009</signature>
</roap:registrationResponse>
从上述代码中可以看出,roap:RegistrationResponse消息包括执行状态、会话标识、权利发放者统一资源定位符(URL)、权利发放者证书链、在线证书状态协议(OCSP)响应、扩展字段(该例中没有对roap:RegistrationResponse消息进行扩展)、以及数字签名。
需要注意的是,在该消息中具有该权利发放者的URL,如加粗部分所示。另外,需要注意的是,该roap:RegistrationResponse消息具有数字签名,以保证该消息的完整性和正确性。
接下来,该DRM代理设备向该目的权利发放者发送一个roap:JoinDomainRequest消息(步骤S350)。
以下的代码示出了一个roap:JoinDomainRequest消息的例子:
<?xml version="1.0"encoding="utf-8"?>
<roap:joinDomainRequest
  xmlns:roap="urn:oma:bac:dldrm:roap-1.0"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <deviceID>
         <keyIdentifier xsi:type="roap:X509SPKIHash">
              <hash>vXENc+Um/9/NvmYKiHDLaErK0gk=</hash>
         </keyIdentifier>
      </deviceID>
      <riID>
          <keyIdentifier xsi:type="roap:X509SPKIHash">
              <hash>aXENc+Um/9/NvmYKiHDLaErK0fk=</hash>
          </keyIdentifier>
      </riID>
      <nonce>32efd34de39sdwefqwer</nonce>
      <time>2004-03-17T14:20:00Z</time>
      <domainID>Peter001CN-001</domainID>
      <certificateChain>
          <certificate>miib123121234567</certificate>
          <certificate>miib234124312431</certificate>
      </certificateChain>
      <extensions>
          <extension xsi:type=″roap:SessionID″>
              <sessonID>433211</sessionID>
          </extension>
          <extension xsi:type=″roap:PasswordHash″>
                <hash>41ebHkfyc1KfD5KUU+k5po7en9E=</hash>
          </extension>
     </extensions>
    <signature>321ue3ue3ue10ue2109ue1ueoidwoijdwe309u09ueqijdwqijd
    wq09uwqwqi009</signature>
</roap:joinDomainRequest>
从以上代码可以看出,roap:JoinDomainRequest消息包括设备标识、权利发放者标识、设备声明、请求时间、域标识(用户账号)、设备证书链、扩展字段、以及数字签名。
应该注意,在该实施方式中,将开放移动联盟的域当作用户账号,从而如果多个DRM代理设备在一个权利发放者下分别绑定到所述一个用户账号,就如同参加入一个域。
在该实施方式中,对该roap:JoinDomainRequest消息进行了扩展,其中斜体部分表示在该实施方式中所实现的扩展。可以看出,所实现的扩展包括:会话标识,其用来识别该注册过程,并且与前面的roap:RegistrationResponse消息中的会话标识相同,这里是433211;以及用户密码散列,其用来认证用户账号。
当该权利发放者接收到该roap:JoinDomainRequest消息后,用在该消息中的用户密码散列对该用户账号进行认证。在认证成功后,在符合条件的情况下,该权利发放者将该DRM代理设备注册到该用户账号,换句话说,在其中形成该用户账号、该DRM代理设备和该权利发放者之间的上下文。应该理解,这里,用例如设备证书链的设备信息对该DRM代理设备的验证是成功的。
上述条件是指一个用户账号所拥有的注册DRM代理设备可以有最大数目阈值,只有该用户账号的已注册DRM代理设备数目小于该阈值时,新的DRM代理设备注册才被接受。不同的用户账号可以享有不同的最大可注册DRM代理设备数目。当已注册DRM代理设备数目达到最大阈值时,该用户账号若想注册新的DRM代理设备,必须先执行至少一次以下将描述的已有DRM代理设备的解除注册操作。
接下来,该权利发放者向该DRM代理设备证实该注册的完成,即向该DRM代理设备发送一个roap:JoinDomainResponse消息(步骤S360)。
以下的代码示出了一个roap:JoinDomainResponse消息的例子:
<?xml version="1.0"encoding="utf-8"?>
<roap:joinDomainResponse
  xmlns:roap="urn:oma:bac:dldrm:roap-1.0"
  xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
  xmlns:xenc="http://www.w3.org/2001/04/xmlenc#"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  status="Success">
    <deviceID>
        <keyIdentifier xsi:type="roap:X509SPKIHash">
            <hash>vXENc+Um/9/NvmYKiHDLaErK0gk=</hash>
        </keyIdentifier>
    </deviceID>
    <riID>
        <keyIdentifier xsi:type="roap:X509SPKIHash">
            <hash>aXENc+Um/9/NvmYKiHDLaErK0fk=</hash>
        </keyIdentifier>
    </riID>
    <nonce>32efd34de39sdwefqwer</nonce>
    <domainInfo>
        <notAfter>2004-12-22T03:02:00Z</notAfter>
         <domainKey>
             <encKey Id="Peter001CN-001">
                  <xenc:EncryptionMethod
         Algorithm="http://www.rsasecurity.com/rsalabs/pkcs/schema
         s/pkcs-1#rsaes-kem-kdf2-kw-aes128"/>
               <ds:Keylnfo>
                    <roap:X509SPKIHash>
                    <hash>vXENc+Um/9/NvmYKiHDLaErK0gk=
                    </hash>
                    </roap:X509SPKIHash>
               </ds:Keylnfo>
               <xenc:CipherData>
<xenc:CipherValue>231jks231dkdwkj3jk321kj321j321kj423j342h213j
321jh321jh2134jhk3211fdslfdsopfespjoefwopjsfdpojvct4w925342a
</xenc:CipherValue>
                   </xenc:CipherData>
               </encKey>
               <rilD>
                   <keyldentifier xsi:type="roap:X509SPKIHash">
                   <hash>aXENc+Um/9/NvmYKiHDLaErK0fk=
                   </hash>
                   </keyldentifier>
               </rilD>
               <mac>ewqrewoewfewohffohr3209832r3</mac>
             </domainKey>
        </domainInfo>
        <certificateChain>
             <certificate>MIIB223121234567</certificate>
        <certificate>MIIB834124312431</certificate>
    </certificateChain>
    <ocspResponse>miibewqoidpoidsa</ocspResponse>
    <extensions>
        <extension xsi:type=″roap:SessionID″>
            <sessonID>433211</sessionID>
        </extension>
        <extension xsi:type=″roap:RegistrationInfo″>
            <RegistrationNo>325746401418</RegistrationNo>
            <RegistrationTime>2004-03-17T14:20:00Z
            </RegistrationTime>
        </extension>
    </extensions>
    <signature>d93e5fue3ue10ue2109ue1ueoidwoijdwe309u09ueqijdwqijd
    wq09uwqwqi009</signature>
</roap:joinDomainResponse>
从以上代码可以看出,该roap:JoinDomainResponse消息包括执行状态、设备标识、权利发放者标识、设备声明、域信息(用户账号信息)、权利发放者证书链、OCSP响应、扩展字段、以及数字签名。
在该实施方式中,对该roap:JoinDomainResponse消息进行了扩展,其中斜体部分表示在该实施方式中所实现的扩展。可以看出,所实现的扩展包括:会话标识,其用来识别该注册过程,并且与前面的roap:JoinDomainRequest消息中的会话标识相同,这里是433211;一些关于注册的信息,包括注册序列号、注册时间等,如加粗部分所示。
另外,需要注意的是,该roap:JoinDomainResponse消息包括用于认证该用户账号的新的密码,其不同于前面所描述的旧密码,如不同字体部分所示。
当该DRM代理设备接收到该roap:JoinDomainResponse消息后,也可以在其本地形成该用户账号、该DRM代理设备和该权利发放者之间的上下文。
以下的代码示出了在DRM代理设备中的注册信息(上下文)的例子:
<ODCP20_SystemInfo>
    <CACertficate>MIICjjCCAfegAwIBAgIBADANBgkqhkiG9w0
    </CACertficate>
    <certificateChain>
        <certificate>miib123121234567</certificate>
        <certificate>miib234124312431</certificate>
    </certificateChain>
    <User ID="Peter001CN-001">
        <Password>
            <hash>41ebHkfyc1KfD5KUU+k5po7en9E=</hash>
        </Password>
        <AccessTime>2004-03-17T14:30:00Z</AccessTime>
        <RightsIssuer riID="aXENc+Um/9/NvmYKiHDLaErK0fk=">
            <RIURL>http://ri.example.com/roap.cgi</RIURL>
            <version>1.0</version>
            <USK>yR707KOCF3YkS9Kf82/iDF7Wy</USK>
            <RegistrationNo>325746401418</RegistrationNo>
            <RegistrationTime>2004-03-17T14:20:00Z
            </RegistrationTime>
            <ExpirationTime>2004-12-22T03:02:00Z</ExpirationTime>
            <certificateChain>
                <certificate>MIIB223121234567</certificate>
                <certificate>MIIB834124312431</certificate>
            </certificateChain>
        </RightsIssuer>
    </User>
</ODCP20_SystemInfo>
从上述代码不难看出,每个代理设备可以与多个用户账号注册在一起,并且每个用户账号可以与多个权利发放者注册在一起。
本领域的技术人员可以理解,在权利发放者中的注册信息与如上所描述的在DRM代理设备中的注册信息相类似。
当在该权利发放者中形成了多个用户账号、DRM代理设备、以及权利发放者之间的上下文时,该权利发放者可以创建与用户的账号、DRM代理设备、以及涉及该权利发放者的内容相关联的权利对象空间,如下文所述。
图4示出了根据本发明的一个实施方式的3维权利对象空间,其中X轴代表DRM代理设备,Y轴代表用户账号,Z轴代表内容。这形象地示出了用户账号、DRM代理设备、内容、权利对象之间的关系。只要确定用户账号、DRM代理设备、内容,就可以唯一地确定权利对象。
图5示出了根据本发明的一个实施方式的获取权利对象的信号流图。如图5所示,该过程包括在一个DRM代理设备220和一个权利发放者230之间的2个步骤。在该实施方式中,使用OMA2消息获取权利对象协议来实现该过程。
首先,一个DRM代理设备向一个权利发放者发送一个roap:RORequest消息(步骤S510)。
以下的代码示出了一个roap:RORequest消息的例子:
<?xml version="1.0"encoding="utf-8"?>
<roap:roRequest
xmlns:roap="urn:oma:bac:dldrm:roap-1.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <deviceID>
      <keyIdentifier xsi:type="roap:X509SPKIHash">
          <hash>vXENc+Um/9/NvmYKiHDLaErK0gk=</hash>
      </keyIdentifier>
  </deviceID>
  <riID>
      <keyIdentifier xsi:type="roap:X509SPKIHash">
          <hash>aXENc+Um/9/NvmYKiHDLaErK0fk=</hash>
      </keyIdentifier>
  </riID>
  <domainID>Peter001CN-001</domainID>
  <nonce>32efd34de39sdwefqwer</nonce>
  <time>2004-03-17T14:30:00Z</time>
  <roInfo>
      <roID>n8yu98hy0e2109eu09ewf09u</roID>
  </roInfo>
  <certificateChain>
      <certificate>miib123121234567</certificate>
      <certificate>miib234124312431</certificate>
  </certificateChain>
  <extensions>
      <extension xsi:type=″roap:ContentID″>
          <contentID>CN1000234</contentID>
      </extension>
      <extension xsi:type=″roap:USKHMAC″>
          <uskhmac>cajnDaqdf3/437fnACcagpu+fa W=</uskhmac>
      </extension>
     </extensions>
  <signature>321ue3ue3ue10ue2109ue1ueoidwoijdwe309u09ueqijdwqijd
  wq09uwqwqi009</signature>
</roap:roRequest>
从以上代码可以看出,该roap:RORequest消息包括设备标识、权利发放者标识、域标识(用户账号)、设备声明、权利对象请求时间、权利对象信息、设备证书链、扩展字段、以及数字签名。
在该实施方式中,对该roap:RORequest消息进行了扩展,其中斜体部分表示在该实施方式中所实现的扩展。可以看出,所实现的扩展包括:内容标识,用于识别所请求的权利对象所服务的内容,这里是CN1000234;用户账号的新密码散列消息认证码,用于认证该用户账号,如加粗部分所示。
当权利发放者接收到该roap:RORequest消息,并且用例如设备证书链的设备信息对DRM代理设备的验证以及用该新密码对用户账号的认证成功时,在符合条件的情况下,该权利发放者根据该请求消息,更具体地说,根据该请求消息中包括的设备标识、用户标识、以及内容标识,通过检查权利对象空间,得到该权利对象。
上述条件包括该注册还在有效期内、该权利对象的获取次数小于一个预先确定的阈值等等。
接下来,该权利发放者向该DRM代理设备发送该得到的权利对象,也就是说,该权利发放者向该DRM代理设备发送一个roap:ROResponse消息(步骤S520)。
以下的代码示出了一个roap:ROResponse消息的例子:
<?xml version="1.0"encoding="utf-8"?>
<roap:roResponse
  xmlns:roap="urn:oma:bac:dldrm:roap-1.0"
  xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
xmlns:xenc="http://www.w3.org/2001/04/xmlenc#"
xmlns:o-ex="http://odrl.net/1.1/ODRL-EX"
xmlns:o-dd="http://odrl.net/1.1/ODRL-DD"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
status="Success">
  <deviceID>
       <keyIdentifier xsi:type="roap:X509SPKIHash">
           <hash>vXENc+Um/9/NvmYKiHDLaErK0gk=</hash>
       </keyIdentifier>
  </deviceID>
  <riID>
    <keyIdentifier xsi:type="roap:X509SPKIHash">
        <hash>aXENc+Um/9/NvmYKiHDLaErK0fk=</hash>
    </keyIdentifier>
</riID>
<nonce>32efd34de39sdwefower</nonce>
<protectedRO>...</protectedRO>
<certificateChain>
    <certificate>MIIB223121234567</certificate>
    <certificate>MIIB834124312431</certificate>
</certificateChain>
<ocspResponse>miibewqoidpoidsa</ocspResponse>
<extensions>
    <extension xsi:type="roap:TransactionIdentifier">
          <id>09321093209-2121</id>
     </extension>
     <extension xsi:type=″roap:UserID″>
        <userID>Peter001CN-001</userID>
     </extension>
    </extensions>
    <signature>d93e5fue3susdskjhkjedkjrewh53209efoihfdse10ue2109ue1
    </signature>
</roap:roResponse>
从以上代码可以看出,该roap:ROResponse消息包括执行状态、设备标识、权利发放者标识、设备声明、权利对象、权利发放者证书链、OCSP响应、扩展字段、以及数字签名。
在该实施方式中,对该roap:ROResponse消息进行了扩展,其中斜体部分表示在该实施方式中所实现的扩展。可以看出,所实现的扩展包括:用户账号标识,用于识别该响应消息的接收者。
以下的代码示出了一个权利对象的例子:
<?xml version="1.0"encoding="UTF-8"?>
<roap:protectedRO
  xmlns:roap="urn:oma:bac:dldrm:roap-1.0"
  xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
  xmlns:xenc="http://www.w3.org/2001/04/xmlenc#"
  xmlns:o-ex="http://odrl.net/1.1/ODRL-EX"
  xmlns:o-dd="http://odrl.net/1.1/ODRL-DD"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <ro id="n8yu98hy0e2109eu09ewf09u"domainRO="true"version="1.0"
      riURL="http://www.ROs-r-us.com">
    <riID>
      <keyIdentifier xsi:type="roap:X509SPKIHash">
         <hash>aXENc+Um/9/NvmYKiHDLaErK0fk=</hash>
      </keyIdentifier>
    </riID>
    <rights o-ex:id="REL1">
<o-ex:context>
  <o-dd:version>2.0</o-dd:version>
  <o-dd:uid>n8yu98hy0e2109eu09ewf09u</o-dd:uid>
</o-ex:context>
<o-ex:agreement>
  <o-ex:asset>
    <o-ex:context>
     <o-dd:uid>CN1000234</o-dd:uid>
    </o-ex:context>
    <o-ex:digest>
     <ds:DigestMethod Algorithm="http://www.w3.org/2000/09/
        xmldsig#shal"/>
    <ds:DigestValue>bLLLc+Um/5/NvmYKiHDLaErK0fk=
    </ds:DigestValue>
    </o-ex:digest>
    <ds:KeyInfo>
    <xenc:EncryptedKey>
     <xenc:EncryptionMethod
      Algorithm="http://www.w3.org/2001/04/xmlenc#kw-aes12
      8"/>
    <xenc:CipherData>
    <xenc:CipherValue>EncryptedCEK</xenc:CipherValue>
    </xenc:CipherData>
    </xenc:EncryptedKey>
    <ds:RetrievalMethod URI="#K_MAC_and_K_REK"/>
  </ds:KeyInfo>
    </o-ex:asset>
  <o-ex:permission>
    <o-dd:play/>
       </o-ex:permission>
     </o-ex:agreement>
   </rights>
   <signature>
    <ds:SignedInfo>
     <ds:CanonicalizationMethod
       Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
     <ds:SignatureMethod
       Algorithm="http://www.rsasecurity.com/rsalabs/pkcs/schemas/
           pkcs-1#rsa-pss-default"/>
     <ds:Reference URI="#REL1">
      <ds:DigestMethodAlgorithm="http://www.w3.org/2000/09/
           xmldsig#shal"/>
      <ds:DigestValue>j61wx3rvEPO0vKtMup4NbeVu8nk=
      </ds:DigestValue>
    </ds:Reference>
  </ds:SignedInfo>
  <ds:SignatureValue>j61wx3rvEPO0vKtMup4NbeVu8nk=
        </ds:SignatureValue>
  <ds:KeyInfo>
    <roap:X509SPKIHash>
      <hash>aXENc+Um/9/NvmYKiHDLaErK0fk=</hash>
    </roap:X509SPKIHash>
  </ds:KeyInfo>
</signature>
<encKey Id="K_MAC_and_K_REK">
  <xenc:EncryptionMethod
   Algorithm="http://www.w3.org/2001/04/xmlenc#kw-aes128"/>
  <ds:KeyInfo>
        <roap:DomainIdentifier>Peter001CN-001
        </roap:DomainIdentifier>
      </ds:KeyInfo>
      <xenc:CipherData>
        <xenc:CipherValue>32fdsorew9ufdsoi09ufdskrew9urew
             0uderty5346wq</xenc:CipherValue>
      </xenc:CipherData>
    </encKey>
</ro>
<mac>
  <ds:SignedInfo>
    <ds:CanonicalizationMethod
      Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
    <ds:SignatureMethod
      Algorithm="http://www.w3.org/2000/09/xmldsig#hmac-sha1"/>
    <ds:Reference URI="#n8yu98hy0e2109eu09ewf09u">
      <ds:DigestMethod Algorithm="http://www.w3.org/2000/09/
           xmldsig#sha1"/>
      <ds:DigestValue>j61wx3rvEPO0vKtMup4NbeVu8nk=
      </ds:DigestValue>
    </ds:Reference>
  </ds:SignedInfo>
  <ds:SignatureValue>j61wx3rvEPO0vKtMup4NbeVu8nk=
  </ds:SignatureValue>
    <ds:KeyInfo>
      <ds:RetrievalMethod URI="#K_MAC_and_K_REK"/>
    </ds:KeyInfo>
  </mac>
</roap:protectedRO>
权利对象中的敏感信息,例如内容解密密钥,必须用设备密钥(包括在设备证书链中)、用户账号密钥(用户账号新密码)、或者设备和用户账号(可预先定义)密钥保护。
应该注意,在本发明的该实施方式中,在DRM代理设备中有具有用户账号、设备标识、内容标识的本地权利对象表。当一个DRM代理设备通过上述过程获得权利对象时,将该权利对象存储在该表中。当该DRM代理设备要使用内容时,首先通过查询本地权利对象表来获得用于该内容的权利对象。如果本地权利对象表中没有用于该内容的有效权利对象,DRM代理设备才发起上述的权利对象获取过程。此外,DRM代理设备可以周期性地向权利发放者查询,以同步其本地权利对象表中的权利对象。这样的好处是可以减少权利发放者的负担,并支持更多的新的商业模式。
在获得权利对象后,DRM代理设备使用该权利对象中的密钥对内容进行解密,并在该权利对象的控制下使用该内容。
图6示出了根据本发明的一个实施方式的解除注册过程的信号流图。如图6所示,该解除注册过程包括在一个DRM代理设备220和一个权利发放者230之间的2个步骤。在该实施方式中,使用OMA2消息离开域协议来实现该解除注册过程。
在注册后,可以根据需要解除注册。也就是说,可以删除在DRM代理设备和权利发放者中的一个用户账号、一个DRM代理设备、以及一个权利发放者之间的上下文。
首先,DRM代理设备向权利发放者发送一个roap:LeaveDomainRequest消息(步骤S610)。
以下的代码示出了一个roap:LeaveDomainRequest消息的例子:
<?xml version="1.0"encoding="utf-8"?>
<roap:leaveDomainRequest
  xmlns:roap="urn:oma:bac:dldrm:roap-1.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  triggerNonce="sdfknjvfda438790fdjkl4rq">
    <deviceID>
         <keyIdentifier xsi:type="roap:X509SPKIHash">
              <hash>vXENc+Um/9/NvmYKiHDLaErK0gk=</hash>
         </keyIdentifier>
    </deviceID>
    <riID>
        <keyIdentifier xsi:type="roap:X509SPKIHash">
            <hash>aXENc+Um/9/NvmYKiHDLaErK0fk=</hash>
        </keyIdentifier>
    </riID>
    <nonce>32efd34de39sdwefqwer</nonce>
    <time>2004-03-17T19:20:00Z</time>
    <domainID>Peter001CN-001</domainID>
    <certificateChain>
         <certificate>miib123121234567</certificate>
         <certificate>miib234124312431</certificate>
    </certificateChain>
    <extensions>
          <extension xsi:type=″roap:PasswordHash″>
              <hash>41ebHkfyc1KfD5KUU+k5po7en9E=</hash>
          </extension>
     </extensions>
    <signature>321ue3ue3ue10ue2109ue1ueoidwoijdwe309u09ueqijdwqijd
          wq09uwqwqi009</signature>
</roap:leaveDomainRequest>
从以上代码可以看出,该roap:LeaveDomainRequest消息包括设备标识、权利发放者标识、设备声明、解除注册请求时间、域标识(用户账号)、设备证书链、扩展字段、以及数字签名。
在该实施方式中,对该roap:LeaveDomainRequest消息进行了扩展,其中斜体部分表示在该实施方式中所实现的扩展。可以看出,所实现的扩展包括:用户账号旧密码散列,用于认证该用户账号。
当该权利发放者接收到该roap:LeaveDomainRequest消息后,用在该消息中的用户密码散列对该用户账号进行认证,并且用例如设备证书链的设备信息对该DRM代理设备进行验证。在认证和验证成功后,在符合条件的情况下,该权利发放者将该DRM代理设备和该用户账号解除注册,换句话说,在其中删除该用户账号、该DRM代理设备和该权利发放者之间的上下文。
上述条件包括在该用户账号、该DRM代理设备和该权利发放者之间的解除注册次数小于一个预先确定的阈值。
接下来,该权利发放者向该DRM代理设备证实该解除注册的完成,即向该DRM代理设备发送一个roap:LeaveDomainResponse消息(步骤S620)。
以下的代码示出了一个roap:LeaveDomainResponse消息的例子:
<?xml version="1.0"encoding="utf-8"?>
  <roap:leaveDomainResponse
xmlns:roap="urn:oma:bac:dldrm:roap-1.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
status="Success">
  <nonce>32efd34de39sdwefqwer</nonce>
  <domainID>Peter001CN-001</domainID>
  <extensions>
       <extension xsi:type=″roap:Signature″>
         <signature>cnaidhf87y873t0rekvmwov89rrRGWtw/fw+jqenfnac
         0mf8re75ninfa8hcadnf</signature>
        </extension>
        <extension xsi:type=″roap:CertificateChain″>
              <certificate>MIIB223121234567</certificate>
              <certificate>MIIB834124312431</certificate>
         </extension>
         <extension xsi:type=″roap:OCSPResponse″>
              <ocspResponse>miibewqoidpoidsa</ocspResponse>
         </extension>
    </extensions>
</roap:leaveDomainResponse>
从以上代码可以看出,该roap:LeaveDomainResponse消息包括执行状态、设备声明、域标识(用户账号)、以及扩展字段。
在该实施方式中,对该roap:LeaveDomainResponse消息进行了扩展,其中斜体部分表示在该实施方式中所实现的扩展。可以看出,所实现的扩展包括:完整性信息,用于检查该消息的完整性,包括消息的签名、权利发放者的证书链、以及证书的OCSP响应。
当该DRM代理设备接收到该roap:LeaveDomainResponse消息后,在其本地删除所有相关的信息,包括删除该用户账号、该DRM代理设备和该权利发放者之间的上下文,也包括删除上述通过注册后所发送给其的新密码。
应该注意,在本发明的该实施方式中,解除注册过程更新设备状态。另外,在解除注册过程中,如果有设备状态信息传递到权利发放者,该权利发放者应该验证这些信息并接着记录它们。
设备状态是指该DRM代理设备在DRM系统中的使用状态。它包括:设备归属、过期时间、内容使用记录等。
(1)设备归属:描述了该设备当前被注册于哪些用户账号下,以及曾经被注册于哪些用户账号下。如前所述,同一DRM代理设备可以同时属于多个用户账号,不同用户账号的设备状态被分别维护。记录曾经被注册的用户账号是为了在重新注册后恢复该设备状态。
(2)过期时间:描述了该DRM代理设备的有效期。只有在有效期内的注册DRM代理设备才可以正常使用。过期DRM代理设备必须通过更新(重新注册)才能继续使用。
(3)内容使用记录:描述了不同的内容在该DRM代理设备上的使用情况。记录信息包括使用次数、使用时间、使用时长等。这些信息可以用来监控DRM代理设备的执行情况,控制内容的使用。
图7示出了根据本发明的一个实施方式的用于数字权利管理的装置的示意结构图。图7所示装置可以是任何权利发放者服务器的组成部分。
如图7所示,该用于数字权利管理的装置包括:接收器701、注册器702、发送器703、上下文存储器704以及权利对象空间存储器705等。其中,注册器702中还包括验证器7021和认证器7022。
上下文存储器704,用于存储用户账号、DRM代理设备和权利发放者之间的已经建立的对应关系。这里的对应关系,显然是DRM实体之间的多对多对应关系。多对多对应关系的不同表达方式以及不同存储方式不构成对本发明的限制。
接收器701,用于从多个DRM代理设备中的一个DRM代理设备(图中未示出)接收注册请求,该注册请求用于请求将多个用户账号中的一个用户账号和该一个DRM代理设备注册到多个权利发放者中的一个权利发放者(可以是包括图7所示装置的权利发放者)中。
注册器702,用于响应于注册请求、在该一个权利发放者中完成注册过程,包括建立该一个用户账号、该一个DRM代理设备和该一个权利发放者之间的对应关系,并将该对应关系存储到上下文存储器704中。
发送器703,用于向发出请求的DRM代理设备返回注册完成响应。
验证器7021,用于验证DRM代理设备。
认证器7022,用于认证用户账号。
关于验证和认证的具体过程,可参见前文关于图3、图5和图6的有关描述
当多个DRM代理设备在一个权利发放者下绑定到一个用户账号时,可以将该一个用户账号作为开放移动联盟的域。
另外,注册器702在一个用户账号下的已注册的DRM代理设备的数目大于等于一个预先确定的值时终止注册过程。
权利对象空间存储器705,用于存储由多个用户账号、多个DRM代理设备和多个权利发放者涉及的内容所限定的权利对象空间,如图4所示。
另外,接收器701还用于从一个DRM代理设备接收用于获取内容权利对象的请求。
发送器703还用于向该DRM代理设备返回该内容权利对象,如果该内容权利对象存在于权利对象空间存储器705中的话。
另外,接收器701还用于从多个DRM代理设备中的一个DRM代理设备接收解除注册请求,该解除注册请求用于请求将多个用户账号中的一个用户账号和该一个DRM代理设备从多个权利发放者中的一个权利发放者中解除注册。
注册器702还用于响应于该解除注册请求、在该所述至少一个权利发放者中完成解除注册过程,包括删除该一个用户账号、该一个DRM代理设备和该一个权利发放者之间的对应关系,并更新上下文存储器704。
发送器703还用于向该一个DRM代理设备返回解除注册完成响应。
验证器7021和认证器7022也工作在解除注册过程当中。
另外,注册器702在该一个用户账号下的该一个DRM代理设备的解除注册次数大于等于一个预先确定的值时终止解除注册过程。
图8示出了根据本发明的用于数字权利管理的装置的示意结构图8所示装置可以是任何DRM代理设备的组成部分。如图8所示,该用于数字权利管理的装置包括发送器801、接收器802、本地上下文存储器803、本地权利对象空间存储器804以及这里未示出的公知部件。
发送器801,用于向多个权利发放者中的一个权利发放者发送注册请求,该注册请求用于请求将多个用户账号中的一个用户账号和多个DRM代理设备中的一个DRM代理注册到该一个权利发放者中。
接收器802,用于在从所述一个权利发放者收到注册完成响应后在本地建立所述一个用户账号、该一个DRM代理设备和该一个权利发放者之间的对应关系。这种对应关系可以存储在本地上下文存储器803中。
当多个DRM代理设备在一个权利发放者下绑定到一个用户账号时,可以将该一个用户账号作为开放移动联盟的域。
发送器801还用于向该一个权利发放者发送用于获取内容权利对象的请求。
接收器802还用于在收到该内容权利对象时更新本地保存的权利对象空间。该权利对象空间例如存储在本地权利对象空间存储器804中。
发送器801还用于向多个权利发放者中的一个权利发放者发送解除注册请求,该解除注册请求用于请求将多个用户账号中的一个用户账号和多个DRM代理设备中的一个DRM代理从该一个权利发放者中解除注册。
接收器802还用于在从该一个权利发放者收到解除注册完成响应的情况下在本地(例如在本地上下文存储器803中)删除该一个用户账号、该一个DRM代理设备和该一个权利发放者之间的对应关系。
图9示意性地表示了其中可以实现本发明的实施例的计算机系统。图9所示的体系结构可以用于实现权利发放者服务器,也可以用于实现DRM代理设备。图9中所示的计算机系统包括CPU(中央处理单元)901、RAM(随机存取存储器)902、ROM(只读存储器)903、系统总线904,HD(硬盘)控制器905、键盘控制器906、串行接口控制器907、并行接口控制器908、显示器控制器909、硬盘910、键盘911、串行外部设备912、并行外部设备913和显示器914。在这些部件中,与系统总线904相连的有CPU 901、RAM 902、ROM 903、HD控制器905、键盘控制器906,串行接口控制器907,并行接口控制器908和显示器控制器909。硬盘910与HD控制器905相连,键盘911与键盘控制器906相连,串行外部设备912与串行接口控制器907相连,并行外部设备913与并行接口控制器908相连,以及显示器914与显示器控制器909相连。
图9中每个部件的功能在本技术领域内都是众所周知的,并且图9所示的结构也是常规的。这种结构不仅用于个人计算机,而且用于手持设备,如Palm PC、PDA(个人数据助理)、移动电话等等。在不同的应用中,图9中所示的某些部件可以被省略。图9中所示的整个系统由通常作为软件存储在硬盘910中、或者存储在EPROM或者其它非易失性存储器中的计算机可读指令控制。软件也可从网络(图中未示出)下载。或者存储在硬盘910中,或者从网络下载的软件可被加载到RAM 902中,并由CPU 901执行,以便完成由软件确定的功能。
尽管图9中描述的计算机系统能够支持根据本发明的用于数字权利管理的方法和装置,但是该计算机系统只是计算机系统的一个例子。本领域的熟练技术人员可以理解,许多其它计算机系统设计也能实现本发明的实施例。
本发明还可以实现为一种例如由图9所示计算机系统所使用的计算机程序产品,其包含有用于执行根据本发明的用于数字权利管理的方法的代码。在使用之前,可以把代码存储在其它计算机系统的存储器中,例如,存储在硬盘或诸如光盘或软盘的可移动的存储器中,或者经由因特网或其它计算机网络进行下载。
本发明的构思可以借助于提供有一种计算机程序的适合地编程的权利发放者来实现。一种在DRM系统中支持实体间的多对多关系的计算机程序,所述程序包括:接收用于注册的消息的代码,所述用于注册的消息来自多个DRM代理设备中的一个DRM代理设备,以将多个用户账号中的一个用户账号和所述一个DRM代理设备注册到多个权利发放者中的一个权利发放者;成功地完成所述注册的代码,从而可以形成所述一个用户账号、所述一个DRM代理设备、以及所述一个权利发放者之间的上下文;以及发送用于证实所述注册的完成的消息的代码。
本发明的构思还可以借助于提供有一种计算机程序的适合地编程的DRM代理设备来实现。一种在DRM系统中支持实体间的多对多关系的计算机程序,所述程序包括:发送用于注册的消息的代码,所述用于注册的消息去往多个权利发放者中的一个权利发放者,以将多个用户账号中的一个用户账号和多个DRM代理设备中的一个DRM代理设备注册到所述一个权利发放者;以及接收用于证实所述注册已成功完成的消息的代码,从而可以形成所述一个用户账号、所述一个DRM代理设备、以及所述一个权利发放者之间的上下文。
这样的计算机程序产品可以存储在一个存储载体中。
应当注意,为了使本发明更容易理解,上面的描述省略了对于本领域的技术人员来说是公知的、并且对于本发明的实现可能是必须的更具体的技术细节。
提供本发明的说明书的目的是为了说明和描述,而不是用来穷举或将本发明限制为所公开的形式。对本领域的普通技术人员而言,许多修改和变更都是显而易见的。选择并描述实施方式是为了更好地解释本发明的原理及其实际应用,并使本领域普通技术人员明白,在不脱离本发明实质的前提下,所有修改和变更均落入由权利要求所限定的本发明的保护范围之内。

Claims (26)

1.一种用于数字权利管理的方法,包括步骤:
从多个DRM代理设备中的一个DRM代理设备接收注册请求,所述注册请求用于请求将多个用户账号中的一个用户账号和所述一个DRM代理设备注册到多个权利发放者中的一个权利发放者中;
响应于所述注册请求,在所述一个权利发放者中完成注册过程,包括建立所述一个用户账号、所述一个DRM代理设备和所述一个权利发放者之间的对应关系;以及
向所述一个DRM代理设备返回注册完成响应,
其中所述完成注册过程的步骤包括步骤:
验证所述一个DRM代理设备;以及
认证所述一个用户账号。
2.根据权利要求1所述的方法,其中当多个DRM代理设备在一个权利发放者下绑定到一个用户账号时,将所述一个用户账号作为开放移动联盟的域。
3.根据权利要求1所述的方法,其中所述完成注册过程的步骤包括步骤:
如果所述一个用户账号下的已注册的DRM代理设备的数目大于等于一个预先确定的值,则终止所述注册过程。
4.根据权利要求1所述的方法,还包括步骤:
更新由所述一个用户账号、所述一个DRM代理设备和所述一个权利发放者涉及的内容所限定的权利对象空间。
5.根据权利要求4所述的方法,还包括步骤:
从一个DRM代理设备接收用于获取内容权利对象的请求;
在所述权利对象空间中搜索所述内容权利对象;以及
在找到所述内容权利对象的情况下,向所述一个DRM代理设备返回所述内容权利对象。
6.一种用于数字权利管理的方法,包括步骤:
从多个DRM代理设备中的一个DRM代理设备接收解除注册请求,所述解除注册请求用于请求将多个用户账号中的一个用户账号和所述一个DRM代理设备从多个权利发放者中的一个权利发放者中解除注册;
响应于所述解除注册请求,在所述一个权利发放者中完成解除注册过程,包括删除所述一个用户账号、所述一个DRM代理设备和所述一个权利发放者之间的对应关系;以及
向所述一个DRM代理设备返回解除注册完成响应,
其中所述完成解除注册过程的步骤包括步骤:
验证所述一个DRM代理设备;以及
认证所述一个用户账号。
7.根据权利要求6所述的方法,其中当多个DRM代理设备在一个权利发放者下绑定到一个用户账号时,将所述一个用户账号作为开放移动联盟的域。
8.根据权利要求6所述的方法,其中所述完成解除注册过程的步骤包括步骤:
如果所述一个用户账号下的所述一个DRM代理设备的解除注册次数大于等于一个预先确定的值,则终止所述解除注册过程。
9.根据权利要求6所述的方法,还包括步骤:
更新由所述一个用户账号、所述一个DRM代理设备和所述一个权利发放者涉及的内容所限定的权利对象空间。
10.一种用于数字权利管理的装置,包括:
上下文存储器,用于存储用户账号、DRM代理设备和权利发放者之间的已经建立的对应关系;
接收器,用于从多个DRM代理设备中的一个DRM代理设备接收注册请求,所述注册请求用于请求将多个用户账号中的一个用户账号和所述一个DRM代理设备注册到多个权利发放者中的一个权利发放者中;
注册器,用于响应于所述注册请求、在所述一个权利发放者中完成注册过程,包括建立所述一个用户账号、所述一个DRM代理设备和所述一个权利发放者之间的对应关系,并将所述对应关系存储到所述上下文存储器中;以及
发送器,用于向所述一个DRM代理设备返回注册完成响应,
其中所述注册器包括:
验证器,用于验证所述一个DRM代理设备;以及
认证器,用于认证所述一个用户账号。
11.根据权利要求10所述的装置,其中当多个DRM代理设备在一个权利发放者下绑定到一个用户账号时,将所述一个用户账号作为开放移动联盟的域。
12.根据权利要求10所述的装置,其中所述注册器在所述一个用户账号下的已注册的DRM代理设备的数目大于等于一个预先确定的值时终止所述注册过程。
13.根据权利要求10所述的装置,还包括:
权利对象空间存储器,用于存储由所述一个用户账号、所述一个DRM代理设备和所述一个权利发放者涉及的内容所限定的权利对象空间。
14.根据权利要求13所述的装置,其中
所述接收器还用于从一个DRM代理设备接收用于获取内容权利对象的请求,以及
所述发送器还用于向所述一个DRM代理设备返回所述内容权利对象,如果所述内容权利对象存在于所述权利对象空间存储器中的话。
15.根据权利要求10所述的装置,其中
所述接收器还用于从多个DRM代理设备中的一个DRM代理设备接收解除注册请求,所述解除注册请求用于请求将多个用户账号中的一个用户账号和所述一个DRM代理设备从多个权利发放者中的一个权利发放者中解除注册;
所述注册器还用于响应于所述解除注册请求、在所述一个权利发放者中完成解除注册过程,包括删除所述一个用户账号、所述一个DRM代理设备和所述一个权利发放者之间的对应关系,并更新所述上下文存储器;以及
所述发送器还用于向所述一个DRM代理设备返回解除注册完成响应。
16.根据权利要求15所述的装置,其中所述验证器和所述认证器也工作在所述解除注册过程当中。
17.根据权利要求15所述的装置,其中所述注册器在所述一个用户账号下的所述一个DRM代理设备的解除注册次数大于等于一个预先确定的值时终止所述解除注册过程。
18.一种用于数字权利管理的方法,包括步骤:
向多个权利发放者中的一个权利发放者发送注册请求,所述注册请求用于请求将多个用户账号中的一个用户账号和多个DRM代理设备中的一个DRM代理设备注册到所述一个权利发放者中,其中所述注册请求中包括由所述一个权利发放者认证所述一个用户账号所需的用户密码;以及
若从所述一个权利发放者收到注册完成响应,则在本地建立所述一个用户账号、所述一个DRM代理设备和所述一个权利发放者之间的对应关系。
19.根据权利要求18所述的方法,其中当多个DRM代理设备在一个权利发放者下绑定到一个用户账号时,将所述一个用户账号作为开放移动联盟的域。
20.根据权利要求18所述的方法,还包括步骤:
向所述一个权利发放者发送用于获取内容权利对象的请求;
在收到所述内容权利对象的情况下,更新本地保存的权利对象空间。
21.一种用于数字权利管理的方法,包括步骤:
向多个权利发放者中的一个权利发放者发送解除注册请求,所述解除注册请求用于请求将多个用户账号中的一个用户账号和多个DRM代理设备中的一个DRM代理从所述一个权利发放者中解除注册,其中所述解除注册请求中包括由所述一个权利发放者认证所述一个用户账号所需的用户密码;以及
若从所述一个权利发放者收到解除注册完成响应,则在本地删除所述一个用户账号、所述一个DRM代理设备和所述一个权利发放者之间的对应关系。
22.根据权利要求21所述的方法,其中当多个DRM代理设备在一个权利发放者下绑定到一个用户账号时,将所述一个用户账号作为开放移动联盟的域。
23.一种用于数字权利管理的装置,包括:
发送器,用于向多个权利发放者中的一个权利发放者发送注册请求,所述注册请求用于请求将多个用户账号中的一个用户账号和多个DRM代理设备中的一个DRM代理注册到所述一个权利发放者中,其中所述注册请求中包括由所述一个权利发放者认证所述一个用户账号所需的用户密码;以及
接收器,用于在从所述一个权利发放者收到注册完成响应后在本地建立所述一个用户账号、所述一个DRM代理设备和所述一个权利发放者之间的对应关系。
24.根据权利要求23所述的装置,其中当多个DRM代理设备在一个权利发放者下绑定到一个用户账号时,将所述一个用户账号作为开放移动联盟的域。
25.根据权利要求23所述的装置,其中
所述发送器还用于向所述一个权利发放者发送用于获取内容权利对象的请求;以及
所述接收器还用于在收到所述内容权利对象时更新本地保存的权利对象空间。
26.根据权利要求23所述的装置,其中
所述发送器还用于向多个权利发放者中的一个权利发放者发送解除注册请求,所述解除注册请求用于请求将多个用户账号中的一个用户账号和多个DRM代理设备中的一个DRM代理从所述一个权利发放者中解除注册;以及
所述接收器还用于在从所述一个权利发放者收到解除注册完成响应的情况下在本地删除所述一个用户账号、所述一个DRM代理设备和所述一个权利发放者之间的对应关系。
CNB2006100946998A 2006-06-26 2006-06-26 用于数字权利管理的方法和装置 Active CN100533452C (zh)

Priority Applications (6)

Application Number Priority Date Filing Date Title
CNB2006100946998A CN100533452C (zh) 2006-06-26 2006-06-26 用于数字权利管理的方法和装置
EP07730201A EP2035993A2 (en) 2006-06-26 2007-06-15 Method and apparatus for digital rights management
PCT/EP2007/055970 WO2008000639A2 (en) 2006-06-26 2007-06-15 Method and apparatus for digital rights management
US11/821,985 US9858561B2 (en) 2006-06-26 2007-06-26 Method and apparatus for digital rights management
US13/611,394 US9886687B2 (en) 2006-06-26 2012-09-12 Method and apparatus for digital rights management
US14/983,888 US20160110527A1 (en) 2006-06-26 2015-12-30 Method and Apparatus for Digital Rights Management

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2006100946998A CN100533452C (zh) 2006-06-26 2006-06-26 用于数字权利管理的方法和装置

Publications (2)

Publication Number Publication Date
CN101097588A CN101097588A (zh) 2008-01-02
CN100533452C true CN100533452C (zh) 2009-08-26

Family

ID=38805723

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2006100946998A Active CN100533452C (zh) 2006-06-26 2006-06-26 用于数字权利管理的方法和装置

Country Status (4)

Country Link
US (3) US9858561B2 (zh)
EP (1) EP2035993A2 (zh)
CN (1) CN100533452C (zh)
WO (1) WO2008000639A2 (zh)

Families Citing this family (93)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5061242B2 (ja) * 2007-09-12 2012-10-31 ソニー株式会社 オープンマーケットコンテンツ配信
US7870273B2 (en) * 2007-09-28 2011-01-11 Disney Enterprises, Inc. Method and system for indentifying a device implementing a digital rights management protocol
US8326814B2 (en) 2007-12-05 2012-12-04 Box, Inc. Web-based file management system and service
GB0811210D0 (en) * 2008-06-18 2008-07-23 Isis Innovation Improvements related to the authentication of messages
JP5688364B2 (ja) * 2008-06-19 2015-03-25 テレフオンアクチーボラゲット エル エム エリクソン(パブル) プライベートコンテンツを保護するための方法及び装置
EP2335177A4 (en) * 2008-10-06 2012-06-20 Ericsson Telefon Ab L M DIGITAL RIGHTS MANAGEMENT IN A USER-CONTROLLED ENVIRONMENT
US9209987B2 (en) * 2010-03-02 2015-12-08 Microsoft Technology Licensing, Llc Social media playback
KR101805602B1 (ko) * 2010-04-02 2017-12-06 삼성전자주식회사 방송 서비스의 암호화 키 관리 방법 및 시스템
CA2803495A1 (en) * 2010-07-06 2012-01-12 General Instrument Corporation Method and apparatus for cross drm domain registration
US8547966B2 (en) * 2010-12-06 2013-10-01 At&T Intellectual Property I, L.P. Method and apparatus for configuring IP multimedia subsystem network elements
GB2500356A (en) 2011-01-20 2013-09-18 Box Inc Real time notification of activities that occur in a web-based collaboration environment
US9201895B2 (en) 2011-06-03 2015-12-01 Apple Inc. Management of downloads from a network-based digital data repository based on network performance
US20120311069A1 (en) * 2011-06-03 2012-12-06 Robbin Jeffrey L Regulated Access to Network-Based Digital Data Repository
US9063912B2 (en) 2011-06-22 2015-06-23 Box, Inc. Multimedia content preview rendering in a cloud content management system
US9978040B2 (en) 2011-07-08 2018-05-22 Box, Inc. Collaboration sessions in a workspace on a cloud-based content management system
WO2013009337A2 (en) 2011-07-08 2013-01-17 Arnold Goldberg Desktop application for access and interaction with workspaces in a cloud-based content management system and synchronization mechanisms thereof
US9197718B2 (en) 2011-09-23 2015-11-24 Box, Inc. Central management and control of user-contributed content in a web-based collaboration environment and management console thereof
US8515902B2 (en) 2011-10-14 2013-08-20 Box, Inc. Automatic and semi-automatic tagging features of work items in a shared workspace for metadata tracking in a cloud-based content management system with selective or optional user contribution
US11210610B2 (en) 2011-10-26 2021-12-28 Box, Inc. Enhanced multimedia content preview rendering in a cloud content management system
US9098474B2 (en) 2011-10-26 2015-08-04 Box, Inc. Preview pre-generation based on heuristics and algorithmic prediction/assessment of predicted user behavior for enhancement of user experience
US8990307B2 (en) 2011-11-16 2015-03-24 Box, Inc. Resource effective incremental updating of a remote client with events which occurred via a cloud-enabled platform
US9773051B2 (en) 2011-11-29 2017-09-26 Box, Inc. Mobile platform file and folder selection functionalities for offline access and synchronization
US9019123B2 (en) 2011-12-22 2015-04-28 Box, Inc. Health check services for web-based collaboration environments
US9904435B2 (en) 2012-01-06 2018-02-27 Box, Inc. System and method for actionable event generation for task delegation and management via a discussion forum in a web-based collaboration environment
US11232481B2 (en) 2012-01-30 2022-01-25 Box, Inc. Extended applications of multimedia content previews in the cloud-based content management system
US8630904B2 (en) 2012-02-14 2014-01-14 Boku, Inc. Transaction authentication with a variable-type user-stored account identifier
US9965745B2 (en) 2012-02-24 2018-05-08 Box, Inc. System and method for promoting enterprise adoption of a web-based collaboration environment
US9195636B2 (en) 2012-03-07 2015-11-24 Box, Inc. Universal file type preview for mobile devices
US9054919B2 (en) * 2012-04-05 2015-06-09 Box, Inc. Device pinning capability for enterprise cloud service and storage accounts
US9575981B2 (en) 2012-04-11 2017-02-21 Box, Inc. Cloud service enabled to handle a set of files depicted to a user as a single file in a native operating system
US9413587B2 (en) 2012-05-02 2016-08-09 Box, Inc. System and method for a third-party application to access content within a cloud-based platform
US9396216B2 (en) 2012-05-04 2016-07-19 Box, Inc. Repository redundancy implementation of a system which incrementally updates clients with events that occurred via a cloud-enabled platform
US20130304554A1 (en) * 2012-05-11 2013-11-14 Boku, Inc. Transaction data retrieval and targeting
US9691051B2 (en) 2012-05-21 2017-06-27 Box, Inc. Security enhancement through application access control
US8914900B2 (en) 2012-05-23 2014-12-16 Box, Inc. Methods, architectures and security mechanisms for a third-party application to access content in a cloud-based platform
US9027108B2 (en) 2012-05-23 2015-05-05 Box, Inc. Systems and methods for secure file portability between mobile applications on a mobile device
US9021099B2 (en) 2012-07-03 2015-04-28 Box, Inc. Load balancing secure FTP connections among multiple FTP servers
US9792320B2 (en) 2012-07-06 2017-10-17 Box, Inc. System and method for performing shard migration to support functions of a cloud-based service
US9712510B2 (en) 2012-07-06 2017-07-18 Box, Inc. Systems and methods for securely submitting comments among users via external messaging applications in a cloud-based platform
GB2505072A (en) 2012-07-06 2014-02-19 Box Inc Identifying users and collaborators as search results in a cloud-based system
US9237170B2 (en) 2012-07-19 2016-01-12 Box, Inc. Data loss prevention (DLP) methods and architectures by a cloud service
US9794256B2 (en) 2012-07-30 2017-10-17 Box, Inc. System and method for advanced control tools for administrators in a cloud-based service
US9369520B2 (en) 2012-08-19 2016-06-14 Box, Inc. Enhancement of upload and/or download performance based on client and/or server feedback information
US8745267B2 (en) 2012-08-19 2014-06-03 Box, Inc. Enhancement of upload and/or download performance based on client and/or server feedback information
GB2513671A (en) 2012-08-27 2014-11-05 Box Inc Server side techniques for reducing database workload in implementing selective subfolder synchronization in a cloud-based environment
US9135462B2 (en) 2012-08-29 2015-09-15 Box, Inc. Upload and download streaming encryption to/from a cloud-based platform
US9117087B2 (en) 2012-09-06 2015-08-25 Box, Inc. System and method for creating a secure channel for inter-application communication based on intents
US9195519B2 (en) 2012-09-06 2015-11-24 Box, Inc. Disabling the self-referential appearance of a mobile application in an intent via a background registration
US9311071B2 (en) 2012-09-06 2016-04-12 Box, Inc. Force upgrade of a mobile application via a server side configuration file
US9292833B2 (en) 2012-09-14 2016-03-22 Box, Inc. Batching notifications of activities that occur in a web-based collaboration environment
US10200256B2 (en) 2012-09-17 2019-02-05 Box, Inc. System and method of a manipulative handle in an interactive mobile user interface
US9553758B2 (en) 2012-09-18 2017-01-24 Box, Inc. Sandboxing individual applications to specific user folders in a cloud-based service
US10915492B2 (en) 2012-09-19 2021-02-09 Box, Inc. Cloud-based platform enabled with media content indexed for text-based searches and/or metadata extraction
US9959420B2 (en) 2012-10-02 2018-05-01 Box, Inc. System and method for enhanced security and management mechanisms for enterprise administrators in a cloud-based environment
US9705967B2 (en) 2012-10-04 2017-07-11 Box, Inc. Corporate user discovery and identification of recommended collaborators in a cloud platform
US9495364B2 (en) 2012-10-04 2016-11-15 Box, Inc. Enhanced quick search features, low-barrier commenting/interactive features in a collaboration platform
US9665349B2 (en) 2012-10-05 2017-05-30 Box, Inc. System and method for generating embeddable widgets which enable access to a cloud-based collaboration platform
US9756022B2 (en) 2014-08-29 2017-09-05 Box, Inc. Enhanced remote key management for an enterprise in a cloud-based environment
JP5982343B2 (ja) 2012-10-17 2016-08-31 ボックス インコーポレイテッドBox, Inc. クラウドベース環境におけるリモートキー管理
US9219791B2 (en) 2012-12-13 2015-12-22 Digiboo Llc Digital filling station for digital locker content
US20140172595A1 (en) * 2012-12-13 2014-06-19 Digiboo Llc System and method for binding drm licenses to a customer domain
US10235383B2 (en) 2012-12-19 2019-03-19 Box, Inc. Method and apparatus for synchronization of items with read-only permissions in a cloud-based environment
US9396245B2 (en) 2013-01-02 2016-07-19 Box, Inc. Race condition handling in a system which incrementally updates clients with events that occurred in a cloud-based collaboration platform
US9953036B2 (en) 2013-01-09 2018-04-24 Box, Inc. File system monitoring in a system which incrementally updates clients with events that occurred in a cloud-based collaboration platform
EP2755151A3 (en) 2013-01-11 2014-09-24 Box, Inc. Functionalities, features and user interface of a synchronization client to a cloud-based environment
US10599671B2 (en) 2013-01-17 2020-03-24 Box, Inc. Conflict resolution, retry condition management, and handling of problem files for the synchronization client to a cloud-based platform
US10846074B2 (en) 2013-05-10 2020-11-24 Box, Inc. Identification and handling of items to be ignored for synchronization with a cloud-based platform by a synchronization client
US10725968B2 (en) 2013-05-10 2020-07-28 Box, Inc. Top down delete or unsynchronization on delete of and depiction of item synchronization with a synchronization client to a cloud-based platform
GB2515192B (en) 2013-06-13 2016-12-14 Box Inc Systems and methods for synchronization event building and/or collapsing by a synchronization component of a cloud-based platform
US9805050B2 (en) 2013-06-21 2017-10-31 Box, Inc. Maintaining and updating file system shadows on a local device by a synchronization client of a cloud-based platform
US10229134B2 (en) 2013-06-25 2019-03-12 Box, Inc. Systems and methods for managing upgrades, migration of user data and improving performance of a cloud-based platform
US10110656B2 (en) 2013-06-25 2018-10-23 Box, Inc. Systems and methods for providing shell communication in a cloud-based platform
US9535924B2 (en) 2013-07-30 2017-01-03 Box, Inc. Scalability improvement in a system which incrementally updates clients with events that occurred in a cloud-based collaboration platform
US9213684B2 (en) 2013-09-13 2015-12-15 Box, Inc. System and method for rendering document in web browser or mobile device regardless of third-party plug-in software
US9704137B2 (en) 2013-09-13 2017-07-11 Box, Inc. Simultaneous editing/accessing of content by collaborator invitation through a web-based or mobile application to a cloud-based collaboration platform
US10509527B2 (en) 2013-09-13 2019-12-17 Box, Inc. Systems and methods for configuring event-based automation in cloud-based collaboration platforms
US8892679B1 (en) 2013-09-13 2014-11-18 Box, Inc. Mobile device, methods and user interfaces thereof in a mobile device platform featuring multifunctional access and engagement in a collaborative environment provided by a cloud-based platform
GB2518298A (en) 2013-09-13 2015-03-18 Box Inc High-availability architecture for a cloud-based concurrent-access collaboration platform
US9535909B2 (en) 2013-09-13 2017-01-03 Box, Inc. Configurable event-based automation architecture for cloud-based collaboration platforms
US10866931B2 (en) 2013-10-22 2020-12-15 Box, Inc. Desktop application for accessing a cloud collaboration platform
US20150242597A1 (en) * 2014-02-24 2015-08-27 Google Inc. Transferring authorization from an authenticated device to an unauthenticated device
US10679151B2 (en) * 2014-04-28 2020-06-09 Altair Engineering, Inc. Unit-based licensing for third party access of digital content
US10530854B2 (en) 2014-05-30 2020-01-07 Box, Inc. Synchronization of permissioned content in cloud-based environments
US9602514B2 (en) 2014-06-16 2017-03-21 Box, Inc. Enterprise mobility management and verification of a managed application by a content provider
US9894119B2 (en) 2014-08-29 2018-02-13 Box, Inc. Configurable metadata-based automation and content classification architecture for cloud-based collaboration platforms
US10038731B2 (en) 2014-08-29 2018-07-31 Box, Inc. Managing flow-based interactions with cloud-based shared content
US10574442B2 (en) 2014-08-29 2020-02-25 Box, Inc. Enhanced remote key management for an enterprise in a cloud-based environment
US10015279B2 (en) 2014-11-13 2018-07-03 Blackberry Limited Application assignment reconciliation and license management
US9600810B2 (en) * 2015-02-26 2017-03-21 Blackberry Limited License management for device management system
US10685055B2 (en) 2015-09-23 2020-06-16 Altair Engineering, Inc. Hashtag-playlist content sequence management
CN105354249B (zh) * 2015-10-16 2019-03-26 晶赞广告(上海)有限公司 多账号关联方法、装置及电子设备
EP3758524A1 (en) * 2018-02-26 2021-01-06 Nerudia Limited A smoking substitute device
US11799864B2 (en) 2019-02-07 2023-10-24 Altair Engineering, Inc. Computer systems for regulating access to electronic content using usage telemetry data

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US2004426A (en) 1930-03-28 1935-06-11 Cincinnati Grinders Inc Grinding machine
US7073063B2 (en) * 1999-03-27 2006-07-04 Microsoft Corporation Binding a digital license to a portable device or the like in a digital rights management (DRM) system and checking out/checking in the digital license to/from the portable device or the like
US20020157002A1 (en) * 2001-04-18 2002-10-24 Messerges Thomas S. System and method for secure and convenient management of digital electronic content
US7203966B2 (en) * 2001-06-27 2007-04-10 Microsoft Corporation Enforcement architecture and method for digital rights management system for roaming a license to a plurality of user devices
EP1293857A1 (en) 2001-09-17 2003-03-19 Caplin Systems Limited Server access control
EP2116915A1 (en) * 2002-09-05 2009-11-11 Panasonic Corporation Group management system, group management device, and member device
JP4371711B2 (ja) * 2003-06-11 2009-11-25 キヤノン株式会社 情報処理装置およびその制御方法、並びに、コンピュータプログラム
US7389273B2 (en) * 2003-09-25 2008-06-17 Scott Andrew Irwin System and method for federated rights management
KR100643278B1 (ko) * 2003-10-22 2006-11-10 삼성전자주식회사 휴대용 저장 장치의 디지털 저작권을 관리하는 방법 및 장치
US7882034B2 (en) * 2003-11-21 2011-02-01 Realnetworks, Inc. Digital rights management for content rendering on playback devices
US20060123484A1 (en) * 2004-03-04 2006-06-08 Miodrag Babic Method of clearing and delivering digital rights management licenses to devices connected by IP networks
KR101100385B1 (ko) * 2004-03-22 2011-12-30 삼성전자주식회사 인증서 폐지 목록을 이용한 디지털 저작권 관리 방법 및장치
US8060923B2 (en) * 2004-04-23 2011-11-15 Microsoft Corporation Trusted license removal in a content protection system or the like
US20060036554A1 (en) * 2004-08-12 2006-02-16 Microsoft Corporation Content and license delivery to shared devices
JP4380480B2 (ja) * 2004-09-16 2009-12-09 ソニー株式会社 ライセンス処理装置,プログラム,およびライセンス処理方法
US7467404B2 (en) * 2004-09-27 2008-12-16 Bally Garning, Inc. System and method for distributing software licenses
US20070061886A1 (en) * 2005-09-09 2007-03-15 Nokia Corporation Digital rights management
KR100746014B1 (ko) * 2005-11-09 2007-08-06 삼성전자주식회사 디지털 저작권 관리 방법 및 시스템

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
DRM Specificaiton Candidate Version 2.0(OMA-DRM-DRM-V2_0-20040716-C). Open Mobile Alliance Ltd,第17页至51页、Figure1至Figure6,Open Mobile Alliance. 2004
DRM Specificaiton Candidate Version 2.0(OMA-DRM-DRM-V2_0-20040716-C). Open Mobile Alliance Ltd,第17页至51页、Figure1至Figure6,Open Mobile Alliance. 2004 *

Also Published As

Publication number Publication date
US9886687B2 (en) 2018-02-06
WO2008000639A2 (en) 2008-01-03
CN101097588A (zh) 2008-01-02
US20130007894A1 (en) 2013-01-03
US20160110527A1 (en) 2016-04-21
US20080015888A1 (en) 2008-01-17
US9858561B2 (en) 2018-01-02
EP2035993A2 (en) 2009-03-18
WO2008000639A3 (en) 2008-04-10

Similar Documents

Publication Publication Date Title
CN100533452C (zh) 用于数字权利管理的方法和装置
CN101196970A (zh) 基于数字水印和移动代理的数字版权管理系统
US8353055B2 (en) Method and apparatus for processing rights object
JP4818664B2 (ja) 機器情報送信方法、機器情報送信装置、機器情報送信プログラム
CN101189633B (zh) 用于在内容分发系统中进行权利发放者授权的方法和装备
US20100017501A1 (en) Content management and method
US7995766B2 (en) Group subordinate terminal, group managing terminal, server, key updating system, and key updating method therefor
CN101373500B (zh) 一种电子文档使用权的管理方法
JP2006504176A (ja) コンテンツ操作を許可する方法及び装置
KR20020064672A (ko) 콘텐츠 이용 관리 시스템 및 콘텐츠 이용 관리 방법
KR20090003422A (ko) 휴대단말의 콘텐츠 권리객체 획득 방법 및 장치
CN105743903A (zh) 音频数字版权管理方法、智能终端、认证服务器及系统
CN104185067B (zh) 一种基于二维码的数字版权保护方法及其系统
US20100017888A1 (en) Method, device and system for transferring license
US20070112679A1 (en) Digital rights management method and system
KR20090089673A (ko) 디지털 콘텐츠의 권리객체 회수 방법 및 시스템
US20090199279A1 (en) Method for content license migration without content or license reacquisition
US20100146601A1 (en) Method for Exercising Digital Rights via a Proxy
JP5278495B2 (ja) 機器情報送信方法、機器情報送信装置、機器情報送信プログラム
JP2006127349A (ja) デジタル著作権管理装置およびプログラム
Feng et al. An efficient contents sharing method for DRM
CN103004131B (zh) 管理多媒体服务的消费权限的方法和装置
JP4516325B2 (ja) コンテンツ配信システム及びコンテンツ再生装置
KR101012054B1 (ko) 저작권자의 저작물 직접 관리 방법 및 그 시스템
JP2004030325A (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
C14 Grant of patent or utility model
GR01 Patent grant