CN1550995A - 根据越地区目录信息对内容产生数字权限管理(drm)许可 - Google Patents

根据越地区目录信息对内容产生数字权限管理(drm)许可 Download PDF

Info

Publication number
CN1550995A
CN1550995A CNA2004100076079A CN200410007607A CN1550995A CN 1550995 A CN1550995 A CN 1550995A CN A2004100076079 A CNA2004100076079 A CN A2004100076079A CN 200410007607 A CN200410007607 A CN 200410007607A CN 1550995 A CN1550995 A CN 1550995A
Authority
CN
China
Prior art keywords
group
user
query entity
query
entity
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.)
Granted
Application number
CNA2004100076079A
Other languages
English (en)
Other versions
CN1550995B (zh
Inventor
Pd
P·D·瓦克斯曼
̩
C·凡卡泰克
�)��ɭ�Ƕ���
Y·(E·)罗森非尔德
A·那林
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 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 Microsoft Corp filed Critical Microsoft Corp
Publication of CN1550995A publication Critical patent/CN1550995A/zh
Application granted granted Critical
Publication of CN1550995B publication Critical patent/CN1550995B/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/105Multiple levels of security
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6227Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries
    • 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)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Storage Device Security (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

一个组织维持至少包括区域A和区域B的计算机网络,其中区域A具有目录A和能够查询目录A的查询实体A,而区域B具有目录B和能够查询目录B的查询实体B。查询实体A从用户接收请求,并至少部分地根据该用户是否该组的成员决定是否准许该请求。于是,查询实体A查询目录A以返回有关该组的信息;导向区域B;接触查询实体B;请求查询实体B查询目录B该用户是否该组的成员;接收应答;并至少部分地根据该用户是否该组的成员准许从用户来的请求。

Description

根据越地区目录信息对内容产生数字权限管理(DRM)许可
相关专利的互相引用
下列美国专利申请揭示了与本专利申请的主题有关的主题,因而整体加入这里作为参考。
NO.10/185,527,2002年6月28日申请的美国专利申请代理公文(attorneydocket)号MSFT-1330,题为“Obtaining a Signed Rights Label(SRL)for DigitalContent and Obtaining a Digital License Corresponding to to Content Based on theSRL in a Digital Rights Management System”;
NO.10/185,278,2002年6月28日申请的美国专利申请,代理公文号MSFT-1333,题为“Using a Right Template to Obtain a Signed RightsLabel(SRL)for digital Content in a Digital Rights Management System”;
NO.10/185,511,2002年6月28日申请的美国专利申请,代理公文号MSFT-1343,题为“System And Methods For Issuing Usage Licenses For DigitalContent And Services”;
NO._,_申请的美国专利申请,代理公文号MSFT-1498,题为“Publishingdigital Content Within an Organization in Accordance with a Digital RightsManagement(DRM)System”;
NO._,_申请的美国专利申请,代理公文号MSFT-1569,题为“Publishingdigital Content Within an Organization in Accordance with a Digital RightsManagement(DRM)System”;和
NO._,_与本专利申请同时申请的美国专利申请,代理公文号MSFT-1674,题为“Reviewing Cashed User-Group information in Connection with Issuinga Digital Rights Management(DRM)Licenses for Content”。
技术领域
本发明涉及数字权限管理(DRM)***。本发明尤其涉及利用DRM***在如办公室或公司等的组织中发表数字内容,使得在该组织中此内容的演示或使用能按照对应的使用或许可证项受约束。更具体而言,本发明涉及根据从来自另外地区的目录获得的组的信息产生对于对应数字内容的数字许可证。
背景技术
在如数字声频节目,数字视频节目,数字文本,数字数据,数字多媒体等方面十分希望有数字权限管理和实施,在那里数字内容向一个或多个用户发布。数字内容能如文本文档那样是静态的,或它能如现场直播事件的流动声频/视频节目那样是流动的。发布的通常方式包括实物的,如磁盘(软盘),磁带,光(密致)盘(CD)等,和非实物的媒体,如电子公告栏,电子网络,因特网等。用户接收以后,借助于如个人计算上的多媒体演示器等那样的合适的演示设备,演示或“放映”此数字内容。
有一种情况,如作者,发行者,广播者那样的内容拥有者或权限拥有者希望向许多用户或接收者的每一个发布那样的数字内容以换取许可证费用或某些其它报酬。在那样情况,内容能是歌曲,歌集,电影等,而发布的目的是产生许可证费用。那样的内容拥有者希望具有选择地限止用户用那样发布的数字内容做什么。例如,内容拥有者希望限止用户拷贝此内容,并再发布给拒绝向内容拥有者付许可证费的第二用户。
此外,内容拥有者希望向用户提供以不同的许可证费用购买不用类型的使用许可的灵活性,同时让用户限止在实际购买的何类许可的范围内。例如,内容拥有者能希望允许发布的数字内容只放映有限次,只放映某个总的时间,只在某类机器上,只在某类多媒体放映器,或只由某类用户放映,等。
在另外情况,如一个组织的雇员或成员的内容开发者希望发布那样的数字内容给该组织中的一个或多个其它雇员或成员,或给该组织之外的其它个人,但拒绝其他人演示该内容。这里,内容的发布更类似于以保密或限止方式共享的基于组织的内容,而不是为换取许可证费用或其它报酬的广泛基础的发布。
然而,在那样情况,内容能是文档报告,电子报表,数据库,电子邮件等,使能在办公室范围内交换,而内容开发者希望该内容停留在组织或办公室范围内,而不会被如竞争者或广告商那样的非授权个人演示。而且那样内容开发者希望限止接收者能用那样的发布内容做什么。例如,内容拥有者希望限止用户拷贝并至少限止以将内容向被允许演示该内容的人群之外暴露的方式重新发布内容。
此外,内容的开发者能希望向不同接收者提供不同等级的演示权限。例如,内容开发者能希望所保护的内容对一类人可看但不能打印,而对另一类人可看并可打印。
然而,在上述两种情况,在发布以后,内容的拥有者/开发者具有(若有的话)很少对数字内容的控制。考虑到实际上每台个人计算机包括必要的软硬件来作出那样数字内容的精确的数字拷贝,并下载那样的精确数字拷贝到可写的磁盘或光盘,或经过如因特网那样的网络将那个精确数字拷贝发送到任何目的地,这是尤其成问题。
当然,作为内容发布交易的一部分,内容拥有者/开发者能要求数字内容的用户/接收者承诺不以不良方式再发布那样的数字内容。然而,那样的承诺是易做易打破的。内容拥有者/开发者能试图通过通常涉及加密何解密的若干已知安全装置的任一种避免那样的重新发布。然而,在防止一般性下决心的用户解密被加密的数据,以非加密的方式保存那样的数字内容,并随后重新发布它们方面,收效甚微。
因而有需要提供数字权限管理(DRM)和实施的体系结构和方法,允许任何形式的数字内容的受控的演示或放映,其中那样的控制是灵活的,并能由那样数字内容的内容拥有者/开发者尤其是需要那样的体系结构,特别在办公室或组织等的环境中允许并方便那样的受控演示,在那里文档在确定的人群或确定级别的人中共享。更尤其需要那样的体系结构,使内容在该组织的预定分部或“地区”之间被许可。
发明内容
上述需要通过本发明至少部分地满足,本发明中判断从一个组织来的用户是否为该组织中预定的组的成员,其中该组织维持至少包括地区A和地区B的计算机网络,其中地区A具有目录A和能够查询目录A的查询实体A,并其中地区B具有目录B和能够查询目录B的查询实体B。
在此方法中,查询实体A从用户接收请求,并至少部分地根据该用户是否为该组的成员而决定是否准许该请求。于是,查询实体A查询地区A的目录A,以返回关于该组的信息,并作为响应被导向地区B。然而查询实体A联系地区B的查询实体B,并请求查询实体B查询目录B,以确定用户是否为该组的成员。查询实体A从查询实体B接收用户实际上是否该组的成员的响应,并至少部分地根据该用户是否为该组织成员准许用户的请求。
附图说明
对上述概述以及下面的本发明的实施例的详述,通过结合附图将更好地理解。为说明本发明的目的,在图中示出较佳的实施例。然而可以理解,本发明不限于所示出的精确安排与工具。附图为:
图1是表示示例的非限止性计算环境的方框图,其中可以实现本发明;
图2是表示具有各种计算设备可以实现本发明发明的示例性网络环境的方框图;
图3是按本发明用于发表数字内容的***和方法的较佳实施例的功能方框图;
图4是按本发明用于发表受权限管理的数字内容的方法的较佳实施例的流程图;
图4A是示出由图4的方法产生的签署的权限标签的方框图;
图5是按本发明用于许可受权限管理的数字内容的***和方法的较佳实施例的方框图;
图6A和6B是按本发明用于许可受权限管理的数字内容的方法的较佳实施例的流程图;
图7是示出按本发明的一个实施例由请求者和发许可证者组织的目录向发许可证者发出的证明和权限标签的方框图;
图8是示出按本发明的一个实施例组织成多个分部或地区的组织的方框图,其中每个地区具有至少一个DRM服务器和一个目录;
图9是示出通过确定组成员方法联系的各种实体的方框图;
图10是对图9中示出的实体示出在图8的目录中目录项的方框图;
图11是示出基于信任的***的例子的实施的体系结构的方框图;
图12是流程图,示出在判断用户是否为DRM服务器的地区本地的组成员时由图8的DRM服务器完成的关键步骤;
图13是流程图,示出按本发明的实施例,在判断用户是否为DRM服务器的地区本地的组成员时,由图8的DRM服务器完成的关键步骤;
图14是示出按本发明的一个实施例在高速缓存取中的各项的方框图;
图15和16是方框图,示出按本发明的一个实施例使用图14的高速缓存的高速缓存体系结构的变化情况;
图17A和17B是流程图,示出按本发明的一个实施例结合图15和16的高速缓存体系结构,由图8的发许可证DRM服务器利用的算法完成的关键步骤,以确定用户是否为组中的成员。
具体实施方式
计算机环境
图1和下面的描述试图提供能实现本发明的合适的计算环境的简单的一般描述。然而须理解,手持,便携和所有类型的其它计算设备预期能结合本发明使用。虽然下面描述通用计算机,但这仅是例子,本发明只需要具有与网络服务器互操作及互动的瘦客户。因此,本发明能在连网的装备服务的环境中实现,其中只包含很少或最少的客户资源,如客户设备仅用作World WideWeb的浏览器或界面的网络环境。
虽然不必要,本发明能通过由开发者使用和/或包括在网络浏览软件中的应用程序界面(API)来实现,它将以由如工作站,服务器或其它设备那样的计算机执行的如程序模块那样的计算机可执行指令的一般情况予以描述。通常,程序模块包括例行程序,程序,对象,组件,数据结构等,它们完成特定任务或实现特定的抽象数据类型。通常在各种实施例中,程序模块的功能可以如希望那样结合或分布。而且,本专业熟练人士得知,本发明能用其它计算机***配置实施。适合于本发明使用的其它众知的计算***,环境和/或配置包括个人计算机(PC),自动取款机(ATM),服务器计算机,手持或膝上设备,多处理器***,基于微处理器的***,可编程消费者电子设备,网络PC,小型计算机,大型计算机等,但不限于这些。本发明也能在分布式计算环境中实施,其中任务由通过通讯网络或其它数据传输媒体连接的远程处理设备完成。在分布式计算环境中,程序模块能位于包括存储设备的本地和远程的计算机存储媒体中。
于是图1示出能实现本发明的合适计算***环境100的例子,虽然使得解释清楚,计算***环境100只是合适的计算环境的一个例子,不试图对本发明的使用或功能的范围提出任何限止。计算环境100不解释成对示例性操作环境100中示出的任何组件或其组合具有任何依赖或需求。
参考图1,实现本发明的示例性***包括以计算机110形式的通用计算设备。计算机110的组件包括处理单元120,***存储器130,和将包括***存储器的各种***组件连接到处理单元120的***总线121,但不限于这些。***总线121能是若干类型***总线的任一种,包括存储总线或存储控制器,***总线,和使用各种总线体系结构的任一种的局部总线。例如,那样的体系结构包括工业标准体系结构(ISA)总线,微通道体系结构(MCA)总线,增强的ISA(EISA)总线,视频电子技术标准协会(VESA)局部总线,和外设部件互连(PCI)总线(也称Mezzanine总线)。
计算机110通常包括各种计算机可读媒体。计算机可读媒体能是任何能由计算机110访问的可得到的媒体,包括易失性媒体和非易失性媒体,可移动和不可移动媒体。例如,计算机可读媒体能包括计算机存储媒体和通讯媒体,但不限于这里。计算机存储媒体包括以任何方法或技术实现的易失性和非易失性,可移动和不可移动媒体,用于存储如计算机可读指令,数据结构,程序模块或其它数据那样的信息。计算机存储媒体包括RAM,ROM,EEPROM,闪存或其它存储技术,CDROM,数字视频盘(DVD)或其它光盘存储器,盒式磁带,磁带,磁盘存储器或其它磁存储设备,或任何其它能用于存储希望的信息并能由计算机110访问的媒体,但不限于这些。通讯媒体通常体现在计算机可读指令,数据结构,程序模块或以如载波或其它传输机制的调制数据信号形式的其它数据,并包括任何信息、提交媒体。术语“调制数据信号”指的是具有一个或多个特征组成以一种方式改变以至于编码信号中的信息的信号。例如,通讯媒体包括如有线网络或直线连接那样的有线媒体,如声音,RF,红外,和其它无线媒体那样的无线媒体,但不限于这些。任何上述的组合也应包括在计算机可读媒体范围内。
***存储器130包括以易失和/或非易失存储器方式的计算机存储媒体,如只读存储器(ROM)131和随机存储器(RAM)132。包含帮助(如在起动期间)在计算机110中各单元之间传输信息的基本例行程序的基本输入/输出***133(BIOS)通常存储在ROM131。RAM132通常包含由处理单元120即时访问和/或当时运行的数据和/或程序模块。例如,图1示出操作***134,应用程序135,其它程序模块136,和程序数据137,但不限于这些。
计算机110也能包括其它可移动/不可移动,易失/非易失计算机存储媒体。图1仅例示了向不可移动,非易失性磁媒体读写的硬盘驱动器141,向可移动,非易失性磁盘152读写的磁盘驱动器,和向如CDROM或其它光媒体那样的可移动非易失性光盘156读写的光盘驱动器155。其它能在示例性操作环境中使用的可移动/不可移动,易失/非易失性计算机存储媒体包括盒式磁带,闪存卡,数字视频盘,数字视频带,固态RAM,固态ROM,等,但不限于这些。硬盘驱动器141通常通过如接口140那样的不可移动存储器接口连接到***总线,而磁盘驱动器151和光盘驱动器155通常经如接口150那样的可移动存储器接口连接到***总线121。
上面讨论并示于图1的驱动器及其相关的计算机存储媒体提供计算机可读指令,数据结构,程序模块,和用于计算机110的其它数据的存储。例如在图1中,硬盘驱动器141示作存储操作***144,应用程145,其它程序模块146,和程序数据147。注意,这些组件能与操作***134,应用程序135,其它程序模块136,和程序数据相同或不同。操作***144,应用程序145,其它程序模块146,和程序数据147这里被赋予不同的序号,说明至少它们是不同的拷贝。用户通过如键盘162,和通常称为鼠标的定位设备161,跟踪球或接触垫那样的输入设备输入命令和信息到计算机110。其它输入设备(未示出)能包括话筒。操纵杆,游戏垫,卫星碟,扫描器等。这些和其它输入设备常常通过连接到***总线121的用户输入接口160连接处理单元120,但能通过其它接口和总线结构连接,如平行口,游戏口,或通用串口总线(USB)。
监视器191或其它类型的显示设备也通过如视频接口190那样的接口连接***总线121。如Northbridge那样的图象接口182也能连接到***总线121。Northbridge是与CPU或主处理单元120通讯的芯片集,并认为负责加速图象端口(AGP)通讯。一个或多个图象处理单元(GPU)184能与图象接口182通讯。在这方面,GPU184通常包括如寄存器存储器那样的芯片上的存储器,且GPU184与视频存储器186通讯。然而GPU184仅是协处理器的一个例子,而各种协处理设备能包括在计算机110中。监视器191或其它类型的显示设备也能通过如视频接口190或其它类型的显示设备也能通过如视频接口190那样的接口连接到***总线121,视频接口转而与视频存储器186通讯。除了监视器191以外,计算机还能包括如喇叭197和打印机196那样的其它***输出设备,它们能通过输出***接口195连接。
计算机110能使用到如远程计算机180那样的一个或多个远程计算机的逻辑连接在网络环境中操作。远程计算机180能是个人计算机,服务器,路由器,网络PC,对等设备或其它公共的网络节点,并通常包括上面相对于计算机110描述的许多或所有单元,虽然在图1中只示出存储器设备181。在图1中画出的逻辑连接包括局域网(LAN)171和广域网(WAN)173,但也能包括其它网络。那样的网络环境在办公室,企业范围的计算机网络,内联网和因特网中是常见的。
当在LAN网络环境中使用时,计算机110通过网络接口或适配器170连接到LAN171。当在WAN网络环境中使用时,计算机110通常包括调制解调器172或其它用于在如因特网那样的WAN173上建立通讯的其它装置。内置或外接的调制解调器172能通过用户输入接口160或其它合适的机制连接到***总线121。在网络环境中,相对于计算机110画出的程序模块或其部分能存储在远程的存储设备中。例如,图1示出驻留在存储设备181上的远程应用程序185,但不限于此。可以理解,示出的网络连结是示例性的,可以使用在计算机之间建立通讯链路的其它装置。
本领域的普通技术人员将认识到,计算机110或其他客户设备能作出计算机网络的一部分来配置。在这方面,本发明适合于具有任何数量的存储器或存储单元,以及具有占据任何数量的存储单元或存储卷之间的任何数量的应用或处理的任何计算机***。本发明能应用于带有配置成具有远程或本地存储器的网络环境的服务器计算机和客户计算机的环境。本发明也能应用于具有编程语言功能,解释和执行能力的独立计算设备。
分布式计算通过在计算设备和***之间直接交换便于共享计算机资源和服务。这些资源和服务包括文件的信息交换,高速缓存,和盘存储。分布式计算得益于网络连接,允许客户利用他们的全部能力有利于整个企业。在这方面,各种设备能具有应用,对象和资源,它们能互动,以隐含用于信任的图象管线的本发明的认证技术。
图2提供示例性连网的或分布式计算环境的原理图。分布式计算环境包括计算对象10a,10b等和计算对象或设备110a,110b,110c,等。这些对象能包括程序,方法,数据存储,可编程逻辑等。对象能包括如PDA,电视,MP3演唱器,电视,个人计算机等的相同或不同设备的部分。每个对象能借助通讯网络14与其它对象通讯。网络本身能包括向图2的***提供服务的计算对象和计算设备。按照本发明的一个方面,每个对象10或110能包括一应用,它能请求本发明的认证技术用于信任的图象管线。
可以理解,如110c那样的对象能被包容在另外的计算设备10或110中。因此,虽然画出的物理环境能示出如计算机那样的连接的设备,那样的表示仅仅是示例性的,实际的环境能另外画出或描述,使包括如PDA,电视,MP3一演唱机等的各种数字设备,如接口,COM对象等的软件对象。
存在各种***,组件,和网络配置支持分布式计算环境。例如,计算***能通过有线或无线***,通过局域网或广泛分布的网络连结在一起。当前,许多网络连接到因特网,后者对广泛分布的计算提供底层架构,并包含许多不同的网络。
在家庭网络环境中,至少有四种根本不同的网络传输媒体,它们每个支持各自的协议,如电源线,数据(无线和有线的),语音(如电话),和娱乐媒体。大多数家庭控制设备,如点灯开关和电器,能使用电源线连接。数据服务作为宽带(如DSL或有线电视调制解调器)进入家庭,并在家中能使用无线(如Home RF或802.11b)或有线(如Home PNA,Cat5,甚至电源线)访问。语音信息能作为有线(如Cat3)或无线(如手机电话)进入家庭,并能在家中使用Cat3连线分布。娱乐媒体通过卫星或电缆进入家庭,并通常在家中使用同轴电缆分布。IEEE1394和DVI也作为对集群媒体设备的数字互连出现。所有这些网络能够互连,以形成内联网,后者借助因特网连接外部世界。简而言之,对数据的存储和传送存在各种全然不同的资源,因而接下去,计算设备需要在数据处理管线的所有部分保护内容的方法。
“因特网”通常指的是利用在计算机网络专业中众知的TCP/IP协议的套件的网络和网关的集合,TCP/IP是“Transport Control Protocol/InterfaceProgram”的缩写。因特网能描述成由执行网络协议的计算机互连的地理上分布的远程计算机网络的***,它允许用户在网上互动并共享信息。由于如此广泛散布的信息共享,因此如因特网那样的远程网络已演变成一个开放***,对它开发者能基本上不受限止地设计软件应用,用于完成专门的操作或服务。
因此,网络底层架构使能有许多网络拓扑,如客户/服务器的,对等的,或混合体系结构。“客户”是一个级别或组的成员,该级别使用与其无关的另外级别或组的服务。因此在计算上,客户是一个过程,即粗略地说是请求由另外程序提供的服务的一组指令或任务。客户过程使用所请求的服务而不必“知道”有关其它程序或服务本身的工作细节。在客户/服务器体系结构中,尤其在网络***中,客户通常是访问由如服务器那样的另外计算机提供的共享网络资源的计算机。在图2的例子中,计算机110a,110b等能看作客户,而计算机10a,10b等能看作服务器,其中服务器等保持随后复制到客户计算机110a,110b等的数据。
服务器通常是经过如因特网那样的远程网络访问的远程计算机***。客户过程能在第一计算机***中是活动的,服务器过程能在第二计算机***中是活动的,经通讯网络互相通讯,因此提供分布式的功能,并允许多个客户获得服务器信息汇集能力的好处。
客户和服务器利用由协议层提供的功能互相通讯。例如,超文本传输协议(HTTP)是结合World Wide Web(WWW)使用的共同协议。通常,如统一资源***(URL)或因特网协议(IP)地址那样的网络地址被用于服务器和客户机的互相识别。网络地址能称为统一资源***地址。例如,通讯能经过通讯媒体提供。尤其是客户和服务器能经TCP/IP连结互相连结,用于大容量通讯。
因此,图2示出服务器经网络/总线与客户机通讯的示例性网络或分布式环境,本发明能在其中实现。更详细地,按本发明一系列服务器10a,10b等通过LAN,WAN,内联网,因特网等那样的通讯网络/总线,与一系列客户或远程计算设备110a,110b,110c,110d,110e等互连,如便携计算机手持式计算机,瘦客户,连网电器或其它设备,如VCR,TV,电炉,电灯,加热器等。可以预期,本发明能应用于希望处理,存储或演示从信任来源来的保密内容的任何计算设备。
例如在通讯网络/总线14是因特网的网络环境中,服务器是Web服务器,它通过若干已知的如HTTP那样的协议的任一种与客户110a,110b,110c,110d,110e等通讯。服务器10也能用作客户110,能具有分布式计算环境的特征。通讯只要合适能是有线或无线的。客户设备110可以或不可以经通讯网络/总线14通讯,并能具有与其相关的独立的通讯。例如,在TV或VCR的情况,对控制可以是或不是连网的。每个客户计算机110和服务器计算机10能装有各种应用程序模块或对象135,装有对各种类型存储单元或对象的连接或访问功能,文件能存入这些存储单元之中,或者文件的各部分能下载或移植到那里。因此,本发明能在具有客户计算机110a,110b等的计算机网络环境中使用,客户机能访问计算机网络/总线14和服务器计算机10a,10b,并与其互动,服务器能与客户计算机110a,110b等及其它设备111和数据库20互动。
数字权限管理(DRM)概貌
众所周知并参考图11,在如数字声频节目,数字视频节目,数字文本,数字数据,数字多媒体等数字内容12向用户发布的地方,数字权限管理(DRM)和实施是非常希望与数字内容12结合。用户接收之后,用户借助于如个人计算机14等上的媒体放映器那样的合适的演示设备演示或“放映”数字内容。
通常,发布那样数字内容12的内容拥有者或开发者(这里称为“所有者”)希望限止用户用那样发布的内容能做什么。例如,内容拥有者希望限止用户拷贝并向第二用户再发布那样的内容,或希望允许发布的数字内容只放映限定的次数,或只放映某个总的时间,只在某类机器上放映,只在某类媒体放映器上放映,只由某类型用户放映等。
然后在发布发生之后,那样的内容拥有者对数字内容12只具有很少(若有的话)的控制。然而DRM***10允许控制地演示或表示任何形式的数字内容12,其中那样的控制是灵活的并能由那样的数字内容的内容拥有者确定。通常,内容12借助任何合适的发布通道以包13的形式发布给用户。发布的数字内容包13能包括用对称加密/解密密钥(KD)(即(KD(CONTENT))加密的数字内容,和识别该内容,以及如何获取那样的内容的许可证的其它信息。
基于信任的DRM***10允许数字内容12的所有者规定在数字内容12在用户的计算设备14似的航允许演示之前必须满足的许可证规则。那样的许可证规则能包括上述的时间的要求,并能体现在数字许可证或使用文档(以后称“许可证”)16之中,用户/用户的计算设备14(此后,那样的术语是可交换的,除非需要另外情况)必须从内容拥有者或代理获取许可证。那样的许可证16还包解密密钥(KD),用于解密可能按由用户的计算设备可解密的密钥加密的数字内容。
一段数字内容12的内容拥有者必须确信。用户的计算设备14将遵守由该内容拥有者在许可证16中规定的规则和要求,即在许可证16中的规则和要求被满足之前将不演示数字内容12。因此最好为用户的计算设备14提供信任的组件或机制18,使得除非遵照了体现在与该数据内容12相关并由用户获得的许可证16中的许可证规则,将不演示该数字内容12。
信息组件18通常具有许可证估算器20,它判断该许可证是否有效,审查在该有效许可证16中的许可规则及要求,并根据审查的许可证规则和要求判断,请求的用户是否有权限以找到的方式或其它方式演示所请求的数字内容。可以理解,许可证估算器20在DRM***10按照许可证16内的规则和要求实现数字内容12的所有者的希望方面是可信的,且用户应不能够为了任何不良或其它目的容易地更换那样的信任的单元。
可以理解,在许可证16中的规则和要求根据下列因素的任一个规定,用户是否有权限演示该数字内容12,包括:用户是谁,用户在哪里,用户使用什么类型的计算设备,哪个演示应用调用DRM***,日期,时间等。此外,例如许可证16的规则和要求可以将许可证16限止预定次数的放映,或预定的放映时间。
在许可证16中能按照任何合适的语言和语法规定规则和要求。例如,语言能简单地规定必须满足的属性和值(如DATE必须比X更晚),或按照执行的脚本要求实施的功能(如IF DATE大于X,THEN DO……,)。
在许可证估算器20判定,许可证16是有效,并该用户满足其中的规则和要求之后,就能演示数字内容12。尤其是为了演示内容12解密密钥(KD)从许可证16获得,并应用到来自于内容包13的(KD(CONTENT)),以得到实际的内容12,随后实际的内容12真正被演示。
发表数字内容
图3是用于发表数字内容的***及方法的功能方框图。这里使用的术语“发表”指的是一个过程,应用或服务遵循此过程以便用可信任的实体建立该实体对那个内容能发布的一组权限和条件,以及那些权限和条件向谁发布。按本发明,发表的过程包括加密数字内容,和内容的作者试图对该内容的所有可能的用户的不变的可实施的权限的表。此过程能以保密方法完成,以禁止对任何权限和对内容的访问,除非内容拥有者想做。
特别使用3个实体来发表安全的数字内容:在客户300上执行并准备拟发表的内容的内容准备应用302;也驻留在客户设备300上的数字权限管理(DRM)应用程序界面(API);通过如因特网,局域或广域网其组合的通讯网络330,在通讯上连接客户300的DRM服务器320。
内容准备应用302能是产生数字内容的任何应用。例如,应用302能是文字处理器,或产生数字文本文件,数字音乐,视频,或其它类似内容的发表者。内容有能包括流动的内容,如现场直播或录下的事件,或例子的流动的声频/视频节目。向应用302提供加密密钥以便加密数字内容,从而形成加密的数字内容文件304,而用户提供与数字内容文件304中与加密的内容紧密相关的权限数据。权限数据包括对在数字内容中具有权限的每个实体的身份,以及对每个已识别的实体的一组权限和条件。
例如,那样的实体是一个人,一类个人或一个设备。那样的权限能包括读,编辑,拷贝,打印等该数字内容的权限。条件能包括最小的***需要,日期和时间限止,放映计数等。
客户API306传送加密的数据内容和权限数据到DRM服务器320。使用下面详述的过程,DRM服务器320判定它是否实施权限数据,若是,DRM服务器签署权限数据以形成签署的权限标签(SRL)308。然而通常,任何信任的实体能签署权限数据,最好使用由DRM服务器320信任的密钥。例如客户能使用由DRM服务器320向它提供的密钥签署权限数据。
权限标签308能包括表示权限描述,加密的内容密钥,和根据权限描述和加密的内容密钥的数字签名。若DRM服务器320签署权限标签,它将签署的权限标签308通过客户API306送回给客户,API306在客户设备300上存储签署的权限标签308。内容准备应用302随后将签署的权限标签308与加密的数字内容文件相联系,使得通过链接形成经权限管理的内容文件310。虽然应注意,SRL308能存在离开内容文件304的已知位置,后者带着链接到内容文件308的对SRL308的参照以形成内容文件310。
现参考图4,示出用于发表经权限管理的数字内容的一个方法。在步骤402,应用302产生用于加密数字内容的内容密钥(CK)。虽然任何密钥能用于加密数字内容,内容密钥(CK)通常是对称密钥。众所周知,由对称密钥算法使用对称密钥既加密又解密。因而,在发送者和接收者之间共享时,(CK)应该隐藏很好的。
在步骤404,应用302用(CK)加密数字内容以形成加密的数字内容304(即(CK(内容)))。因而,或者由内容的发表者或者有另外实体产生对应于(CK(内容))的权限数据。注意,那样的权限数据能是客户权限数据或从预定的模板获得的权限数据。如上讨论,权限数据能包括授权消费该内容的实体的表,每个实体关于此内容具有的特定权限,和可能加到那些权限上的任何条件。
在步骤406,API306产生用于加密内容密钥(CK)的第二加密密钥(DES1)。(DES1)最好也是对称密钥。在步骤408,API306用(DES1)加密(CK)得出(DES1(CK)),在步骤410,API306舍弃(CK)结果是现在只能通过解密(DES1(CK))获得(CK)。为保证(CK(内容))对中央DRM服务器320是保护的,且对该内容的所有“许可证请求”按照权限数据是集中地做的,在步骤412API306接触所提供的DRM服务器320,并检索其公用密钥(PU-DRM)。在步骤414,API306用(PU-DRM)加密(DES1)得到(PU-DRM(DES1))。因此,(CK)能对(PU-DRM)被保护,以保证在需要解密(CK(内容))时,DRM服务器320是能够访问(CK)的位移实体。在步骤416,API306用(DES1)加密权限数据(即授权实体的表和与表中每个授权的实体相关的对应权限和条件),以得到(DES1(权限数据))。
在另外的实施例中,能使用(CK)直接加密权限数据,以得到(CK(权限数据)),且能使用(PU-DRM)直接加密(CK),得到(PU-DRM(CK)),从而完全放弃使用(DES1)。然而,使用(DES1)加密权限数据和(CK)允许那样的(DES1)负荷任何适合于DRM服务器的特定算法,然而(CK)能由独立于DRM服务器的实体规定,且不能适合于那里。
在步骤418,内容保护应用302提交(PU-DRM(DES1))和(DES1(权限数据))给DRM服务器,作为用于签署的权限标签。另外,客户本身能以下面列出的方式签署权限数据。若权限数据被提交给服务器用于签署,则在步骤420,DRM服务器320访问权限数据,并验证是否能实施在提交的权限标签中能够实施的权限和条件。为了验证可以实施的权限数据,DRM服务器320应用对应于(PU-DRM)的私有密钥(PR-DRM)于(PU-DRM(DES1)),得到(DES1),并随后应用(DES1)于(DES1(权限数据)),以得到明文的权限数据。服务器320随后能做任何策略校验,以验证在权限数据中规定的用户,权限和条件是在任何由服务器320实施的任何策略之中。服务器320签署原先提交包括(PU-DRM(DES1))和(DES1(权限数据))的权限标签,得到签署的权限标签(SRL)308,其中签名是根据DRM服务器的私有密钥(PR-DRM),并将SRL308返回给API306,后者随后将返回的SRL308交给客户应用302。
SRL308是使其防止窜改的数字签名的文档。此外,SRL308独立于用于加密内容的实际密钥类型和算法,但保持对所保护的内容的强的1-1的关系。现在参考图4A,在本发明的一个实施例中,SRL308能包括作为SRL308的基础的内容的信息,多半包括内容的ID;有关签署SRL308的DRM服务器的信息,包括(PU-DRM(DES1))和如用于确定DRM服务器在网络上位置的URL那样的分派信息,和若URL失败时的撤退信息;描述SRL308本身的信息;(DES1(权限数据)):(DES1(CK));和数字签名(S(PR-DRM)),及其它。
通过保证信任的实体签署权限数据以创建签署的权限标签308,DRM服务器320判定,它强按照由发表者如在权限标签308数据中所描述那样列出的项对该内容发生许可证。可以理解,用户需要获得演示内容的许可证,尤其是因为许可证包含内容密钥(CK)。当用户希望获得对加密内容的许可证时,用户能向DRM服务器320或其它许可证发行实体提出包括SRL308的对内容的许可证请求,和验证用户证书的证明。然后,许可证发行实体能解密(PU-DRM(DES1))和(DES1(权限数据))以产生权限数据,列出所有由坐着(若有的话)授予学考证请求实体的所有权限,并构成只有那些指定权限的许可证。
所上所述,在应用302接收SRL308之后,应用302链接带有对应的(CK(内容))304的签署的权限标签308以形成受权限管理的数字内容。另外,权限数据存储在已知的位置,用加密的数字内容提供该位置的参照。因此,DRM-使能的演示应用能通过演示应用试图演示的内容的片断发现签署的权限标签308。此发现触发演示应用起动对DRM发许可证服务器320的请求。例如,发表应用302能将URL存到DRM发许可证服务器302,或者在数字签名之前DRM发许可证服务器320能将其自己的URL作为元数据的片断嵌入权限标签中,使得由演示应用调用的DRM客户API306能识别正确的DRM发许可证服务器320。
获得对发表的内容的许可证
现参考图5,示出用于对受权限管理的数字内容发许可证的***和方法。这里用的术语发许可证指的是一个过程,应用或服务遵循的过程,以便请求和接收一个许可证,使在该许可证中命名的实体能按照在许可证中规定的项消费该内容。到发许可证过程的输入能包括与请求许可证的内容相关的签署的权限标签(SRL)308,和为其请求该许可证的实体的公共密钥证明。注意,请求许可证的实体不必然是为其申请许可证的实体。通常,许可证包括从SRL308来的权限描述,能解密被加密的内容的加密的密钥,和在权限描述和加密的密钥上的数字签名,以便判定合法性并防止窜改。
主要是,客户API306将受权限管理的内容310的签署的权限标签308通过通讯网络330送到DRM服务器320。如上所述,权限标签308包含按DRM服务器320的公共密钥(PU-DRM)加密的内容密钥(CK)(即(PU-DRM(CK))。然后在发行许可证的过程中,DRM服务器320将(PR-DRM)应用到(PR-DRM(CK))以获得(CK)。然后它使用在许可证请求中拒绝的,在公共密钥证明中的公共密钥(PU-ENTITY)重新加密(即(PU-ENTITY(CK)))。新加密的(PU-ENTITY(CK))随后被放在许可证中。这样,许可证能返回到调用者而没有暴露(CK)的危险,因为只有对应于(PU-ENTITY)的私有密钥(PR-ENTITY)的持有者能够从(PU-ENTITY(CK))恢复(CK)。然后客户API306使用(CK)解密被加密的内容以形成解密的数字内容312。然后客户应用302能按照在许可证中提供的权限使用解密的数字内容312。
另外如下面详述,如发表客户那样的客户例如能发行使用许可证给它自己以消费该内容。
现参考图6A和6B,示出向受权限管理的数字内容发许可证的方法。在步骤602,如DRM服务器320那样的许可证发行实体接收包括公共密钥证明或对一个或多个请求的领许可证的每一个的身份的许可证请求。估计是,若规定一身份,DRM服务器320能从目录,数据库等获得相应的公共密钥证明。若只对一个领许可证者请求许可证,只命名一个证明或身份。若对多个领许可证者请求许可证,能对每个潜在的领许可证者命令证明或身份。在步骤604,若需要,认证请求的实体(即作出许可证请求的实体)。在步骤606若需要时判断,该实体是否允许请求许可证。
在步骤608,若发行实体判定,公共密钥证明不包括在许可证请求中,则发行实体使用指定的身份实现在目录服务或数据库中对合适的公共密钥证明的查找。在步骤610中,若发行实体判定,证明在目录中,则在步骤612中检索该证明。若对给定的潜在领许可证者在请求或目录中不能找到证明,则对那个潜在的领许可证者许可证服务器不产生许可证,且在步骤614,向请求的实体返回一个错误信息。
假设DRM服务器320对至少一个潜在的领许可证者具有公共密钥证明,则在步骤616,DRM服务器320验证每个领许可证者证明的信任。若未能验证,DRM服务器判定,领许可证者的证明的发行者不在信任的发行者表中,因而对那个领许可证者请求失败,且在步骤614产生一个错误信息。因此,其证明不是由信任的发行者发行的任何潜在的领许可证者将不能接收许可证。
此外,DRM服务器320最好完成在从信任的发行者证明到单独的领许可证者的公共密钥证明的证明链中所有实体的数字签名验证。在一个链中验证数字签名的过程是众知的算法。若对给定的潜在领许可证者的公共密钥证明未被验证,或在链中的证明未验证,该潜在的领许可证者不是信任的,因而不向那个潜在领许可证者发行许可证。相反,在步骤618发行许可证。过程在步骤620重复,直到为其请求许可证的所有实体已被处理。
如图6B所示,DRM320进行验证在许可证请求中接收的签署的权限标签308。在一个实施例中,DRM服务器320具有每个在那里签署的权限标签的主拷贝。然后在许可证时间(步骤622),DRM服务器320能检索主权限标签的拷贝。主权限标签能比在许可证请求中发出的权限标签的拷贝更新,因而将是用于产生请求的许可证的权限标签。若找不到主权限标签在步骤624,DRM服务器按照预定的策略判断,是否根据请求中的权限标签发行一许可证。若策略不允许,在步骤626许可证请求失败,在步骤628向API306返回一个错误信息。
在步骤630,DRM服务器320验证SRL308,且特别是那里的数字签名。若SRL308未验证,在步骤626许可证请求失败,且在步骤628向API306返回一个错误信息。
在发生所有验证之后,DRM服务器根据SRL308对每个认可的许可证构造一许可证。在步骤632,DRM服务器320对每个领许可证者产生对要发生的许可证的相应权限描述。对每个领许可证者,DRM服务器320针对在权利标签的权限描述中命名的身份,估算在该领许可证者的公开密钥证明中命名的身份。在步骤636,DRM服务器320从SRL308获得(PU-DRM(DES1))和(DES1(CK)),并应用(PR-DRM)以获得(CK)。然后发行实体使用从领许可证者的公开密钥证明来的(PU-ENTITY),重新加密(CK)以得到(PU-ENTITY(CK))。在步骤638,DRM服务器320用(PU-ENTITY(CK)链接产生的权限描述,并使用(PR-DRM)数字签名最终的数据结构(即S(PR-DRM))。这样,签名的数据结构成为对此特定领许可证者的许可证。
在步骤640,DRM服务器320判定,对特定的请求,没有更多的许可证要产生。然后在步骤642,产生的许可证带着合适的证明链返回给请求的实体,以及证明链将许可证往回连系到信任的机构。
借助目录发许可证
当对保护的内容发行许可证时,许可证发行实体(以后称“发许可证者”)查询从内容发出的SRL308,以取定向哪个用户/组/集群/分部/平台等(以后称为“实体”)提供权限和发送的证明,以识别许可证的请求者。据此,发许可证者判定在SRL308中列出的哪些权限被发信给请求者。在概念上,发许可证者调查在SRL308中列出的实体,并将那样的实体与请求者比较。因此,若SRL308规定,特定组接收一许可证,且请求者是该组的成员,请求者被授予带有对SRL308中的组列出的权限的许可证。类似地,若SRL308规定,特定的用户接收一许可证且请求者是那样的用户,该请求者被授予带有对SRL308中的那个用户列出的权限的许可证。可以理解,特定的SRL308能列出若干实体及其权限,且特定的请求者能根据是一个或多个实体的成员授予一许可证。
在本发明的一个实施例并如图7所见,请求者在发送的证明1202中借助识别符1204识别,在那里识别符1204能是别名,在组织的目录1206中请求者通过它被识别。因而,SRL308在其中按照那个识别符1204列出每个授以权限的实体。于是作为请求许可证1208的处理一部分,通常是DRM服务器320的发许可证者从证明1202获得请求者的识别符1204,并将获得的识别符1204与在发送的SRL308中列出的所有识别符1204比较。若找到匹配,发许可证者1210为请求者发行带有在SRL308中对该请求者的识别符1204规定的权限的许可证1208。
此外,有了目录1206的可用性,发许可证者1210在假定目录1206保护反映在每个其它实体中的请求者的成员的状态的前提下述判定,请求者是否在SRL308中列出的任何其它实体的成员。通常对每个请求者,目录1206不仅列出其识别符1204,还列出该请求者作为其成员的每个组/集群/分部/平台/其它实体等的识别符1208。注意,目录1206能包括识别符1208如电子邮件地址,另外的邮件地址,ID,另外的ID,组成员,历史的识别符等。
带着从请求者接收其中的具有识别符1204的证明1202,带着从该请求者接收的SRL308中的权限数据,一般来说若除其它事情以外从目录1206判断,请求者是在SRL308中列出的任何实体的成员,则发许可证者1210发行许可证1208给请求者。若是,且假设对发许可证的所有其它条件均满足,发许可证者1210向请求者发行许可证1208,它带有对从SRL308获得的列出的实体规定的权限和条件。
在本发明的一个实施例中,在SRL308中列出的实体代表在目录1206中合适地表示的组或集群或某些个人的集合(以后称为“组”)。那样的组能包括电子邮件-使能的组,如分部表或电子邮件别名,或能结合网络操作***等确定的安全的组。
值得注意,按照组规定在SRL308中的权限并按照其组的成员向请求者发行的许可证1208实行在企业或组织机构中的数字权限管理。例如,文档或电子邮件能是DRM保护的,所以给定部门的所有成员有权阅读文档或电子邮件。假设对一个部门的组(如电子邮件的别名)存在于该组织的目录1206之中(经常是这样),文档或电子邮件的作者将根据组而不是根据个人授予权限。可以理解,那样授以组范围权限的优点包括作者在规定具有各权限的个人等级方面使用方便。此外,通过按组规定权限,当新成员加入该组或老的成员离开该组时,规定的权限不会“过时”。相反,只要该组的成员在组织的目录1206中保持最新,所有该组的当前成员能够实行使该权限。
判定请求者是否为组的成员
通常,目录1206是对组织或其一部分感兴趣的有用信息的仓库。尤其是,目录1206保存有关在组织中每个用户的若干重要信息段,包括用户为其中成员的每个组。实际上,对一个用户的成员至少部分地借助在目录1206中按用户的列出予以确定。
注意,在组织是特别大或者需要的情况,那里的计算能以某种逻辑方式划分成多个分部或“区域”。例如每个区域能是根据地域的,例如若该组织有一个办公室在Wilkes-Barre Pennsylvania,而另一个办公室在Boynton Beach,Florida,在那样情况每个办公室带有不同区域。另选地,例如每个区域能是根据功能的,例如若该组织具有会计部门和生产部门,在那样情况每个部门带有不同的区域。当然,区域能按任何其它准则定义而不背离本发明的精神和范围。
重要的是,每个区域具有其自己的目录1206或目录组1206(后面称为“目录1206”),且每个区域至少具有一个DRM服务器320。现参考图8,对一个组织示出两个区域,区域A和区域B,其中区域A具有目录A和DRM服务器A,区域B具有目录B和DRM服务器B。能够理解,每个区域的作用好象是受保护的飞地,其中配备相应的目录和DRM服务器。因此,至少从安全的观点,区域A中的DRMA应相对容易地访问目录A中的信息,而也从安全的观点,区域B中的DRM服务器B几乎也能相对容易地访问在区域A中目录A的信息。可是注意到,具有互操作需要的多个区域通常在它们之间复制信息,能可选地在它们之间建立直接的信任关系。
在区域中的组成员判断
暂时假设,组织的整体由图8的区域A表示,而图8的区域B不存在,可以理解,区域A的目录A保存有关该组织的所有目录信息,包括所有用户和那些用户所属的组。这里注意到,那样的组实际上能包括多个层次的组。因此如图9所见,能有这样的情况,组1具有组2和组3作为直接的成员,而组3具有用户1作为直接成员。在那样情况,用户1是组3的直接成员,组1的间接成员,而不是组2的成员。然后能理解,若SRL308列出对组1或组3的权限,假设所有其它条件满足用户1能获得基于那些权限的许可证1208,而若SRL308只列出对组2的成员的权限,用户1不能获得那样的许可证1208。更普遍地,作为SRL308中命名的组的直接或间接的成员的用户能获得带有授予那个组的权限和条件的许可证1208。
如图10所见,示出对组1到3和用户1的每一个在目录A中的记录对象/记录。注意,通常每个记录是以对相应的实体列出的形式,它包括所有实体的直接成员,假设实体是组,还包括该实体具有的所有直接的成员资格,而不管该实体是一用户或任何组的子组。因此,组1具有组2和组3作为直接成员,且不是任何其它组的直接成员,组2没有成员是组1的直接成员,组3具有用户1作为直接成员,且是组1的直接成员,而用户1作为用户没有成员,但是组3的直接成员。当然,在图9和10中示出的目录A是过分简单化的,因而实际上看来大得多,且带有许多用户和组。然而,示出的目录A适合于描述本发明的目的。
在用户1向DRM服务器A提交SRL308的过程中提交的SRL308列出一个和多个组以及它们的权限,然后DRM服务器A至少部分地通过参考目录A判定用户是否为SRL308中列出的任何组的直接或间接成员来决定是否向用户1发行许可证1208。可以理解,那样的判定能以两个普通方式之一完成-从列出的组到用户,或从用户到列出的组。
通常完成从组到用户的判定是更为直接的过程,但因为组能具有许多成员,看来要花费相当大量时间来审查所有找到的用户以判定是否存在匹配。通常完成从用户到组的判定是不那么直接的过程,但因为一用户一般不是太多组的成员,看来需要花费相当少量的时间来审查所有找到的组以判定是否存在匹配。在任何情况至少从经验上发现,完成从用户到组的判定是更经济且总的说来是希望的。
仍然参考图9和10,并现在还参考图12,为了作出关于用户1是否组1的成员的组成员判定,DRM服务器A如下进行。首先,DRM服务器A询问目录A是否存在组1(步骤1201)。可以理解,若对那样询问的响应示出组1不存在,因为用户1不能是不存在的组的成员,过程完成(步骤1203)。因此,尽管判断是从用户到组的完成的,询问该组是否存在的预先步骤被完成,以避免完成任何不必要的附加步骤。
当然,如图所示,组1确定存在,所以响应实际上是yes。因此,DRM服务器A询问目录A,用户1是其成员的所有组,且目录A返回用户1是组3的成员的信息(步骤1205,1207)。当然,组3不是组1,所以DRM服务器A尚未判定用户1是否组1的成员(步骤1209)。然而,若通过用户1是组3的直接成员而组3是组1的直接或间接成员,发现用户1是组1的间接成员,则DRM服务器A需继续。
于是DRM服务器A继续询问目录A组3为其成员的所有组,且目录A返回组3是组1的成员的信息(步骤1211,1213)。结果,DRM服务器A判定用户1的由于是组3的成员,实际上是组1的间接成员(步骤1215)。
现能理解,DRM服务器A必须经过很多组和很多次叠代循环查询,最终判定用户1实际上是组1的成员。相反,若情况是用户1实际上不是组1的成员,在最终判定用户1不是组1的成员之前,DRM服务器A必须对用户1经过所以可能的直接和间接的组成员资格的全体查询。下面更详细描述,因为那样的查询很花费并需连续地完成,那样调查的结果能存入一个或多个高速缓存器。
经过诸区域的组成员判定
当一个组织具有多个配置的区域,且需要可跨越区域得到用户和组成员资格的信息时,没有直接的方法关于特定组判定一个用户的组成员资格,尤其是查询DRM服务器320处于在其目录中不本地持有需要的信息的区域中的情况。取代地,DRM服务器320必须查询确实本地持有那个信息的其它区域。
尤其特别重要的是那样情况,其中请求如图8的DRM服务器A那样的DRM服务器320根据列出一个组的SRL308向一用户发行许可证,其中该组对DRM服务器A驻留的区域A不是本地的。替代地,那个组对区域B是本地的,因而在区域B的目录B中有记录。结果,必须关于区域B的目录B作出关于所讨论的用户是否所讨论的组的成员的组成员资格判定,因为那个目录B具有对所讨论的组的带有该组的组信息的记录。
然而,重要的是,区域A的DRM服务器A通常不能直接查询区域B的目录B,以获得真实的目录信息,因为越区域询问通常出于安全考虑受限止,或受保护。在本发明的一个实施例中,替代地,DRM服务器A请求区域B的DRM服务器B直接查询区域B的目录B,并用查询的结果向DRM服务器A禀报。注意,DRM服务器B对目录B的查询不是越区域询问,因而不受限止。
然而,必须理解,DRM服务器A在请求DRM服务器B进行查询之前必须确定知道,因为所讨论的组对区域B是本地的,DRM服务器B实际上是完成此查询合适的DRM服务器320。简单地说,DRM服务器A在请求DRM服务器B查询目录B之前必须知道,讨论的组对区域B是本地的。然而,DRM服务器A只能查询目录A,因而不知道所讨论的组的本地区域,除非目录A具有那样的信息。
因而在本发明的一个实施例中,如图8所见,目录A确实具有那样的信息。尤其是目录A具有所讨论组的指针对象,将任何有关所讨论的组的查询实体引向区域B。例如,那样的指针对象能包括区域B的地址,此地址在DRM服务器A请求有关所讨论的组的信息时返回给查询的DRM服务器A。预计,区域B的目录B具有对所讨论的组的记录对象。因此,DRM服务器A利用该地址寻找区域B并由此继续进行。
在本发明的一个实施例中,区域B的地址特定是区域B中目录B的地址。然后DRM服务器A据此用那个地址与目录B接触。然而,因为DRM服务器A在区域A中,目录B在区域B中,且如上提到,目录B正常地不越界向DRM服务器A提供任何实质信息。然而目录B能向DRM服务器提供DRM服务器B的地址。
因而,在本发明的一个实施例中,DRM服务器A从目录B接收DRM服务器B的地址,并据此请求DRM服务器B为DRM服务器A查询目录B。尤其是,DRM服务器A请求DRM服务器B查询目录B,所讨论的用户是否为所讨论的组的成员,并向DRM服务器A返回答案。预计那样的请求包括某种将DRM服务器A识别成DRM整体中的DRM服务器320,例如使得带证明链的识别证明回溯到由DRM服务器B识别的可信的原始机构。因而,只有当识别证明被验证时,DRM服务器B为DRM服务器A执行查询目录B。
假设DRM服务器B确实以上面参考图12列出的方式执行为DRM服务器A查询目录B,DRM服务器B最终判定所讨论的用户是否为所讨论的组的成员,并返回那样的信息到DRM服务器A,作为对那里来的请求的响应。
注意,当DRM服务器B查问目录,所讨论的用户是否为所讨论的组的成员时,所讨论的用户必须在目录B中被表示,若不通过记录对象至少要通过指针对象。而且,那样的指针对象必须包括有关用户为其成员的每个组的信息,尤其是因为当组成员资格信息是如上所述地从用户到组的方法确定时,要参考那样有关成员的信息。
现参考图13作概要重述,DRM服务器A和代表DRM服务器A的DRM服务器B完成下列步骤以确定跨越区域的组成员资格:
首先,DRM服务器A从用户接收对使用对应于一段内容的许可证1208的请求(1301)。请求包括识别该用户的证明和与该内容相关的SRL308。在响应中假设SRL308识别其中一个组并还假设未出现合适的高速缓存的信息,DRM服务器A查询目录A以返回对识别的组的任何对象(步骤1303)。出现的情况假设,该组对区域B是本地的,所以该组在目录A中实际上表示成指向区域B的指针对象,且DRM服务器A从目录A接收指向区域B的指针对象,因此表明该组对区域B是本地的(步骤1304),并从收到的指针对象检索区域B的地址(步骤1305)。
然后,DRM服务器A利用检索到的地址查询在区域B中的目录B关于DRM服务器B的地址,而作为响应目录B返回那个地址到DRM服务器A(步骤1307,1308)。得到DRM服务器B的地址的特定机制是众知的,或对有关公众是明白的,因此不必在此详细讨论。于是能利用任何适合的机制而不背离本发明的精神和范围。
然后DRM服务器A用DRM服务器B的地址请求DRM服务器B查询目录B,该用户是否为该组的成员(步骤1311)。由DRM服务器A利用将请求提交给DRM服务器B的特定机制又是众知且对有关公众是明白的,因此不必在此详细讨论。因此,能利用任何的机制而不背离本发明的精神和范围。
再次假设未出现合适的高速缓存信息,用DRM服务器A,DRM服务器B查询目录B以返回任何对识别的组的对象(步骤1313)。现在的情况假设该组对区域B是本地的,所以该组在目录B中实际中表示成记录对象,且DRM服务器B从目录B接收该记录对象,因此表明该组对区域B是本地的(步骤1315)。注意,DRM服务器B此时能审查在接收的对象中列出的组的成员,以判定该用户是否为该组的直接成员(步骤1317)。若是,判断是肯定的,DRM服务器B向DRM服务器A报告是肯定的(步骤1319)。若否,DRM服务器B查询目录B以返回对该用户的任何对象,并从而通过以类似于结合图12示出的方式,试图从用户到现在目录B中搜遍来进行判断,该用户是否为该组的成员(步骤1323)。在结束试图的搜索以后,DRM服务器B将判断在该用户和该组之间是否存在关系,并将其报告给DRM服务器A(步骤1325)。
当然,根据那样判断,DRM服务器A决定是否承诺从该用户在步骤1301接收的请求(步骤1327)。能够理解,若该用户不是该组的成员,请求被拒绝,当然除非发现该用户是在接收的SRL308中识别的另外组的成员。类似地,若用户是该组的成员,请求被承诺,前提是对那个承诺的所有其它条件被满足。
借助高速缓存信息判定用户的组的成员资格
如上描述,在根据SRL308向用户发行许可证的过程中,DRM服务器320能通过参考在DRM服务器320的区域或在其它区域中的目录判断,该用户是否为在SRL308中识别的组的成员。然而可以理解,参考目录1206每次作出判断是很大花费且很麻烦的,尤其在附加的网络通信量以及必须由目录1206完成的工作方面,以及尤其是作判断次数变得相当高时,更是如此。
因而在本发明的一个实施例中,从一个或多个目录1206导出的用户-组信息在DRM服务器320可访问的一个或多个位置上高速缓存,此外在本发明的一个实施例中,DRM服务器320在工作用户-组判断使用最低代价优先(lowest-cost-first)算法,在参考目录1206之前以最低代价到最高代价的次序审查多个高速缓存位置。因此,较高代价的操作尽可能推迟,判断速度加快,网络通讯量减少。
高速缓存用户-组信息
在如结合图12揭示的从目录1206判断用户是否为组的成员的过程中,DRN服务器320至少潜在地位于该用户成为其直接或间接成员的某些其它组。注意,因为一旦成员资格路径实际上被找到,搜索停止,看来不是找到用户的所有组。例如,若在检查对所讨论的组的记录对象时发现,用户是该组的直接成员,则不再寻找该用户是其直接或间接用户的其它组。类似度,若必须从用户到组搜索以试图寻找其间的成员资格路径,则至少找到该用户是其直接成员的组,但某些间接组可能未找到,因为成员资格路径事先被找到。然而在本发明的一个实施例中,DRM服务器320将用户及其所有直接或间接组资格的知识存入一个或多个高速缓存,用于未来必须的参考。
现参考图14,看到高速缓存1404的多个实体1402,尤其是从高速缓存1404的一个项1402看到,对用户3,发现该用户3直接或间接地是组4,6和7的成员,而组4是组6和7的成员。类似地,从高速缓存1404中的另外项1402看出,对用户4,发现用户4只是组8的成员。用户3和4以及组4是否该组的直接或间接成员认为是非本质的,因而不予描述,虽然那些信息若发现是必要或有用的能予以描述。重要的是对用户/组的所有组成员资格被高速缓存,因为任何特定的用户-组关系在晚些时候对相同或不同的用户/组建立用户-组关系时是有用的。
可以理解,高速缓存1404中从目录1206获得的信息在一段时间后会变成“过时的”。这是因为随时间推移用户能被从目录1206删除,附加的组和组成员资格能被定义等,而高速缓存1404尚未自动更新以反映那样改变的信息。因此从图14看到,高速缓存1404的每个项1402包括创建时间。然后根据此创建时间,任何查询高速缓存1404的查询实体能决定,该项1404是否太老,以至难以信赖。此外或另选地,高速缓存1404能自己删除那些根据创建时间认为太老的每个项1402。
现参考图15和16,可以看到图14的高速缓存1404能以若干配置实现。在一个配置中,在一个区域中的每个许可证发行DRM服务器320具有相当基本的轻型的存储器中的高速缓存1404,而该区域还具有带着相当扩展的重型的存储器中的高速缓存的专用高速缓存服务器1502(图15)。此外,专用的高速缓存服务器1502能利用数据库高速缓存1404,和/或在目录1206上为许可证发行DRM服务器320完成查询。
在另外的配置中,在一个区域中每个许可证发行DRM服务器320具有高速缓存1404,它是相当扩展的重型的存储器中高速缓存(图16),并完成在目录1206上的查询。不出现专用的高速缓存服务器1502,虽然数据库高速缓存能在该区域中的所有许可证发行DRM服务器320中间共享。在任何配置中,每个基本的高速缓存1404只具有用户信息,而每个扩展的高速缓存1404具有用户和组信息。
最低代价优先算法
不管高速缓存1404的配置,寻求判断用户是否为组的成员的DRM服务器320利用本发明的最低代价优先的算法,以最低代价到最高代价的次序搜索高速缓存1404和目录1206。假定,与DRM服务器320相关的高速缓存1404具有与其相关的最低代价,与专门的高速缓存服务器1502和数据库高速缓存1404相关的高速缓存1404具有与其相关的较高的代价,且目录1206具有与其相关的最高代价。当然,代价是主观上的,在任何速率特定的实体能具有任何特定的代价而不背离本发明的精神和范围。
现参考图17A和17B,可以看到,该算法的主要特征是在所有认为具有较低代价的操作用尽之前不尝试认为具有较高代价的操作。通常,按增加代价的次序,操作在发许可证的DRM服务器320的存储器中高速缓存1404中查找,在数据库高速缓存1404或专用的高速缓存服务器的高速缓存1404中查找,并在AD中查找。在实现算法时,提交一个用户以及一个或多个目标组,作出用户是否为任何目标组的直接或间接的成员的判断。本质上,算法借助从高速缓存和目录1206来的所有具备的成员资格信息,从用户到任何目标组搜索,在完成较高代价的操作之前总是完成较低代价的操作。若用户是目标组之一的成员,算法返回结果“yes”,若用户不是任何目标组的成员返回结果“No”,若用户不在目录1206中返回“user not found-用户未找到”,若在目录1206中找不到目标组,返回“notarget group are found-找不到目标组”。
如图17A中所见,过程通过定义所讨论的用户和一个或多个目标组开始(步骤1701)。现在假设DRM服务器320具有本地的高速缓存1404并具对远程高速缓存1404(可以是专用高速缓存服务器1502或数据库高速缓存1404)和目录1206的访问,由许可证发行的DRM服务器320使用的算法利用一系列的储存室(bin)和队列,包括:
·目标储存室(T),其中驻留一个或多个目标组;
·验证的目标储存室(V),其中驻留经验证的一个或多个目标组;
·搜索储存室(S),其中驻留等待被搜索的组;
·本地队列(Q1),其中驻留在本地高速混存1404中待搜索的组;
·远程队列(Q2),其中驻留在远程高速缓存1404中待搜索的组;
·目录队列(Q3),其中驻留在目录1206中待搜索的组;和
·舍弃的储存室(D),其中驻留已经处理的组。
因此,算法的进行是通过验证一个或多个(目标组或各组,通过对目标储存室中的每个目标组搜索以寻找对目标组的记录或项1402。因为基本上关于每个存储设备完成相同的过程(S1,对应于本地高速缓存1404;S2,对应于远程高速缓存1404;S3对应于目录1206),那样的过程只需要参照普通存储Sx描述。
尤其是,算法首先注视S1,本地高速缓存1404,且对目标储存室(T),中的每个目标组,若该目标组作为在本地高速缓存中的项1402被找到,则该目标组从(T)中删除,且该目标组被放在验证的目标储存(V),而它的项1402被放在任何较低层高速缓存1404,这在此范例中不存在(步骤1703)。随后算法对于S2(远程高速缓存)重复步骤1703,且对仍留在(T)中的每个目录组,若该目录组作为在远程高速缓存1404中的项被找到,则从(T)删除该目录组,且该目标组被放入(V),而它的项1402被放入任何较低层高速缓冲1404,这在此范例中是本地高速缓存1404。最后,算法对于S3,目录1206再次重复步骤1703,且对仍留在(T)中的每个目标组,若该目标组作为在目录1206中的记录被找到,则从(T)中删除该目标组,且目标组被放入(V),而它的项1402放在任何较低层高速缓存1404,这在此范例中是本地和远程高速缓存1404。
在对每个存储设备完成步骤1703之后,验证的目标储存室(V)应包含所有被发现存在于高速缓存1404或目录1206之中的目标组。留在目录储存室中的所具有目标组能认为是坏的或不再存在,因而能忽略。若(V)是空的情况,算法结束,因为不存在被验证的目标组,而算法返回“找不到目标组”的信息(步骤1705)。应该注意,通过将一个记录或项1402从目录或远程高速缓存1404拷贝到所有较低层的高速缓存1404,那些较低层高速缓存1404成为装载高速缓存信息,它们能被用于未来判定,一个用户是否为一个组的成员。
随后,假设在(V)中至少存在一个被验证的目标组,算法验证该用户。尤其是,算法首先通过考察Si,本地高速缓冲1404,然后考察S2,远程高速缓冲1404,然后考察S3,目录搜索对所讨论的用户的记录或项(步骤1709)。在步骤1709的任何叠代中找到对该用户的记录或项1402(以后称为“项”)之后,算法将该用户成为其成员的每个组放到搜索储存室(S)(步骤1711),并此外用对该用户的一个项1402填入所有较低层的高速缓冲1404(步骤1713)。注意,若从任何步骤1709的叠代未找到对该用户的项,因为不存在被验证的用户算法结束,且算法返回“用户未找到”(步骤1715)。
可以理解,步骤1709是以可以想象的次序叠代,对应于从最低代价的操作到最高代价的操作,在这里的情况,按照S1,再S2,再S3。因此,一旦用户被验证,较高代价的操作被避免。注意,用户可以在一个或多个目标组之前确认而不背离本发明的精神和范围。
假设找到一个被验证的用户,他是如由(S)中的组表示的至少一个组的成员,且至少找到一个验证的目标组,如由(V)中对应的项表示,现参考图17B,算法通过从(S)和(V)判定在(S)中的任何组是否匹配在(V)中的任何组(即验证的一个或多个目标组)而继续(步骤1723)。若确实找到(S)中的一个组匹配(V)中的一项,算法以匹配终止,算法返回“yes”(步骤1725)。否则,算法通过将(S)中的所有组传送到本地队列(Q1)而继续(步骤1727)。
随后,算法完成叠代过程以搜索从用户到任何目标组的成员资格路径。叠代过程需要在本地和远程高速缓存1404及目录1206中的多重搜索以确定组的成员资格。因为关于每个队列(Q1对应于本地高速缓存1404;Q2对应于远程高速缓存1404;Q3对应于目录1206)基本上完成相同的过程,那样的过程只需要参考一般的(Qx)和一般的Sx描述,如图17B所示,其中S1是本地高速缓存1404;S2是远程高速缓存1404;S3是目录1206。
尤其是,现在假设在图17B中的(Qx)和Sx是(Q1)和S1,本地高速缓存1404,首先作出判断,(Q1)是否空(步骤1729)。当然,(Q1)开始应该不空,但因为过程是叠代的,可能达到(Q1)开始确实是空的点。假设(Q1)开始不空,且具有一个组,选中该组并从(Q1)中删除,且判断该组是否已在舍弃储存室(D)中(步骤1731)。当然开始时,被选中并从(Q1)中删除的组不在(D)中,因为该组尚未被处理,但当过程叠代时,其它组能放入(Q1),多半包括已被处理的组,且当每个组被处理时,它确实被传送到(D)。
若选中并从(Q1)中删除的组已被处理并在(D)中,算法回到步骤(1729),在那里再次判断,(Q1)是否空。然而若选中并从(Q1)中删除的组已被处理并因而不在(D)中,算法继续,对于在对应(Q1)的高速缓存1404或目录(现在情况是本地高速缓存1404)中的选定的组搜索一个项1402(步骤1733)。
若在本地高速缓存1404对选定的组找不到那样的项1402,过程继续,将该组从(Q1)传送到远程队列(Q2)(步骤1735),然后回到步骤(1729),再次判断(Q1)是否空。然而,如果在本地高速缓存1404中找到对选定的组的那个项1402,算法将每个新发现的组(选定组是其成员)放到搜索储存室(S),并将选定的组传送到舍弃的储存室(D)(步骤1739),并此外将对应于选定组的项1402填入所有较低层的高速缓存1404(步骤1737)。当然应注意,关于(Q1)和本地高速缓存1404,不存在较低层的高速缓促1404。然后,算法返回到步骤1723,在那里判断是否在(S)中的任何组(即新发现的组)匹配在(V)中的任何组(即验证的一个或多个目标组)。当然若确实找到(S)中的一个组匹配(V)中的一个项,算法带着匹配终止,在步骤1725中算法返回“yes”。否则,算法继续,在步骤1727将所有S中的组传送到本地队列(Q1),且算法继续。
这样做,通过(Q1)算法在可能用本地高速缓存1404的范围内开辟了从用户倒任何验证的目标组所有可能的路径。现能理解,假设找不到匹配,(Q1)用过程叠代时更加新发现的组填入,且直到(Q1)中的所有组借助本地高速缓存被处理到舍弃储存室(D)或到通过远程高速缓存1404处理的(Q2),(Q1)变空,因此被认为最为花费的在远程高速缓存1404的操作在所有在本地高速缓存1404的可能操作做完以前不发生,而当在步骤1729发现(Q1)是空时才发生。
事实上当在步骤1729发现(Q1)是空时,处理才以类似于有关(Q1)发生的方式参考远程队列(Q2)。尤其是现在假设,图17B中的(Qx)和Sx是(Q2)和S2(远程高速缓存1404),首先作出判断,(Q2)是否为空(步骤1729)。这里(Q2)开始看来不空,虽然在本地队列1404能自己处理从(Q1)来的所有组的情况,那样的事件会发生。假设(Q2)开始非空,而具有一个组,该组被选中并从(Q2)中删除,且判断那样的组是否由于已被处理而已经在舍弃储存室(D)中(步骤1731)。
若选中并从(Q2)中删除的组已被处理并因而在(D)中,算法返回到步骤(1729),在那里再次判断(Q2)是否空。然而,若选中且从(Q2)中删除的组未被处理,因而不在(D)中,算法继续,在高速缓存1404或对应于在此情况为远程高速缓存1404的(Q2)的目录1206中搜索对选中的组的一个项1402(步骤1733)。
若在远程高速缓存1404中找不到对选中的组的那样项1402,过程继续,将该组从(Q2)传送到目录队列(Q3)(步骤1735),并随后回到步骤(1729),在那里再次判断(Q2)是否为空。然而,若在远程高速缓存1404中找到对选中的组的那个项1402,算法将每个新发现的组(选中的组是其成员)放到搜索储存室(S)并将选中的组传送到舍弃储存室(D)(步骤1739),并此外将对应于选中组的项1402填入所有较低层的高速缓存1404(步骤1737)。当然应注意,对于(Q2)和远程高速缓存1404,只有本地高速缓存1404需要被填入。然后算法返回到步骤1723,在那里判断,是否(S)中的任何组(即新发现的组)匹配在(V)中的任何组(即验证的一个或多个目标组)。当然若确实找到(S)中的一个组匹配(V)中的一项,算法带着匹配终止,在步骤1725算法返回“yes”。否则算法继续,在步骤1727将所有S中的组传送到本地队列(Q1),且算法继续,(Q1)被处理。
这样做,通过(Q2)算法在可能用远程高速缓存1404的范围开辟了从用户到任何验证的目标组所有可能的路径。现能理解,假设找不到匹配,(Q2)用过程叠代时更加新发现的组填入,且直到(Q2)中的所有组借助远程高速缓存1404被处理到舍弃储存室(D)或到通过目录1404处理的(Q3),(Q2)变空。因此被认为更加花费的在目录1206的操作在所有在远程高速缓存1404的可能操作做完之前不发生,而当(Q2)是空时才发生。
重要的是,借助(Q2)和远程高速缓存1404新发现的任何组首先借助(Q1)和本地高速缓存1404处理。因此在本地高速缓存1404的所有可能的操作做完之前,认为更花费的在远程高速缓存1404的操作对于新发现的组不发生,当(Q1)变空时才发生。
事实上当在步骤1729发现(Q2)是空时,处理才以类似于有关(Q1)和(Q2)发生的方式参考目录队列(Q3)。尤其是现在假设,图17B中的(Qx)和Sx是(Q3)和S3(目录1206),首先作出判断,(Q3)是否为空(步骤1729)。这里(Q3)开始看来不是空,虽然在本地和远程队列1404能自己能处理从(Q1)和(Q2)来的所有组的情况,那样的事件会发生。假设(Q3)开始非空,而具有一个组,该组被选中并从(Q3)中删除,且判断那样的组是否由于已被处理而已经在舍弃储存室(D)中(步骤1731)。
如果选中并从(Q3)删除的组已被处理并因而在(D)中,算法返回到步骤(1729),在那里再次判断(Q3)是否空。然而若选中并从(Q3)中删除的组尚未被处理,因而不在(D)中,算法继续,在高速缓存1404或对应于在此情况为目录1206的(Q3)的目录1206中搜索对选中的组的一个项1402(步骤1733)。
若在目录1206中找不到对选中的组的那样项1402,过程继续,将该组移出(Q3)到(D)(步骤1735),并随后回到步骤(1729),在那里再次判断(Q3)是否空。注意,因为在(Q3)之后没有下一个队列,选中的组不能进一步处理。然而,若在远程高速缓存1404中找到对选中的组的那个项1402,算法将每个新发现的组(选中的组是其成员)放到搜索储存室(S),并将选中的组传送到舍弃储存室(D)(步骤1739),并此外将对应于选中组的项1402填入所有较低层的高速缓存1404(步骤1737)。当然应注意,对于(Q3)和目录1206,本地和远程高速缓存1404需要如此填入。然后算法返回到步骤1723。在那里判断,是否(S)中的任何组(即新发现的组)匹配在(V)中的任何组(即验证的一个或多个目标组)。当然若确实找到(S)中的一个组匹配(V)中的一项,算法带着匹配终止,在步骤1725算法返回“yes”。否则算法继续,在步骤1727将S中的所有组传送到本地队列(Q1),且算法继续,(Q1)被处理。
这样做,通过(Q3),算法在可以用目标1206的范围开辟了从用户到任何验证的目标组所有可能的路径。现能理解,假设找不到匹配,(Q3)用过程叠代时更加新发现的组填入,且直到(Q3)在的所有组借助目录1206被处理到舍弃储存室(D),(Q3)变空。
重要的是,任何借助(Q3)和目录1206新发现的任何组首先借助(Q1)和本地高速缓存1404处理。因此在本地和远程高速缓存1404的所有可能的操作做完之前,认为更花费的在目录1206的操作对于新发现的组不发生,当(Q1)和(Q2)变空时才发生。
事实上当在步骤1729发现(Q3)是空时,过程不再进行,因为在此特定情况没有(Q4),因而过程完成。尤其是算法不带匹配地结束,且算法返回“No”(步骤1741)。
现应理解,本发明的算法设计成在完成任何较高代价操作之前首先完成最低代价的操作。可以理解,通过定义类似数目的队列,借助三层存储(即本地和远程高速缓存1404和目录1206)揭示的算法能替代地应用到任何其它数目的存储器层,包括2,4,5,6,7等。因而本发明的算法能应用到高速缓存的用户一组信息的任何多层存储器安排而不背离本发明的精神和范围。
结论
为实施结合本发明完成的过程所必须的编程是相当直接的且对有关的编程公众是明白的。因而那样的编程不附于此。然而任何特定的编程能使用来实施本发明而不背离其精神和范围。
在本发明中,数字权限管理(DRM)和实施的体系结构及方法允许任何形式的数字内容受控的演示或放映。该体系结构允许并方便了那样的受控演示,尤其在文档在确定组的人员或确定级别人员之间共享的办公室或组织的环境中。那样的体系结构允许越过区域获得内容的许可证。
应该理解,对上述实施例能作为各种改变而不背离发明的概念。例如,虽然本发明的说明描述了判断从用户到组的组的成员资格,那样的判断能另作改变成从组到用户而不背离本发明的精神和范围。然而可以理解,本发明不限于所揭示的特定的实施例,而试图复盖在由附后的权利要求所定义的本发明的精神和范围内的各种修改。

Claims (16)

1.一种用于判断来自一个组织的用户是否为在该组织中预定的组的成员的方法,该组织包含计算机网络,网络至少包括区域A和区域B,区域A具有目录A和能查询目录A的查询实体A,区域B具有目录B和能查询目录B的查询实体B,该方法包括:
查询实体A从用户接收请求,查询实体A至少部分地根据用户是该组的成员决定是否准许该请求;
查询实体A查询区域A的目录A以返回关于该组的信息并在应答中导向区域B;
查询实体A接触区域B的查询实体B并请求查询实体B询问目录B,该用户是否该组的成员;
查询实体A接收来自询问查询问实体B的答复,该用户实际上是否该组的成员;和
查询实体A至少部分地根据用户是否该组的成员准许来自该用户的请求。
2.如权利要求1所述的方法,其特征在于,包括:
查询实体A查询问区域A的目录A以返回对该组的任何对象,该组对区域B是本地的,使得区域B的目录B具有对应该组的记录对象,对目录B中该组的该记录对象包括该组的所有直接成员,区域A的目录A具有对应该组的指针对象,在目录A中对该组的指针对象包括区域B的地址;
查询实体A在应答中从目录A接收对该组的指针对象,从而表明该组对区域A不是本地的;
查询实体A从接收的指针对象检索区域B的地址;
查询实体A利用检索的地址查询区域B的目录B关于区域B的查询实体B的地址;
查询实体A在应答中从区域B接收查询问实体B的地址;和
查询实体A在那个地址接触查询实体B,并请求查询实体B查询目录B,该用户是否为该组的成员。
3.如权利要求1所述的方法,其特征在于,还包括,查询实体B查询区域B的目录B以判定该用户是否为该组的成员;
查询实体B查询区域B的目录B,以返回对该组的任何对象,该组对区域B是本地的,使得区域B的目录B具有对应于该在的记录对象,在目录B中该组的记录对象包括该组的所有直接成员;
查询实体B在应答中从目录B接收对该组的记录对象,从而表明该组对区域B是本地的;和
查询实体B审查在接收的记录对象中列出的该组的直接成员,以判定该用户是否该组的直接成员。
4.如权利要求3所述的方法,其特征在于,还包括:
若该用户是该组的直接成员,查询实体B报告查询实体A,该用户实际上是该组的成员;
若该用户不是该组的直接成员,查询实体B查询目录B以返回对该用户的任何对象,并通过试图在目录B中寻找从该用户到该组的成员资格路径进行判断该用户是否该组的间接成员,找到的从该用户到该在的成员资格路径证实了该用户实际上是该组的成员;和
根据是否有成员资格路径,查询实体B向查询实体A报告,该用户实际上是否该组的成员。
5.如权利要求3所述的方法,其特征在于,查询实体A是数字权限管理(DRM)服务器,该方法包括查询实体A从用户接收演示数字内容对应段的数字许可证,该请求包括用户的识别和组的识别。
6.如权利要求5所述的方法,其特征在于,查询实体B是DRM服务器,方法还包括查询实体A向查询实体B发出查询实体A是DRM服务器的识别,且查询实体B根据发出的识别查明查询实体A有资格得知该用户是否该组的成员。
7.如权利要求6所述的方法,其特征在于,包括查询实体A向查询实体B发出数字证明,它带有追溯到由查询实体识别的机构的可信的根的证明链,且查询实体B验证该证明。
8.如权利要求1所述的方法,其特征在于,查询实体A是数字权限管理(DRM)服务器,该方法包括查询实体A从用户接收对演示数据内容的对应段的数据许可证的请求,该请求包括该用户的识别和该组的识别。
9.具有用于实现一方法的存储的计算机可执行指令的计算机可读媒体,该方法用于判断,从一组织的一用户是否该组织中预定组的成员,该组织包含计算机网络,网络至少包括区域A和区域B,区域A具有目录A和能查询目录A的查询实体A,区域B具有目录B和能查询目录B的查询实体B,该方法包括:
查询实体A从用户接收请求,查询实体A至少部分地根据用户是该组的成员决定是否准许该请求;
查询实体A查询区域A的目录A以返回关于该组的信息,并在应答中导向区域B;
查询实体A接触区域B的查询实体B,并请求查询实体B查询目录B,用户是否为该组的成员;
查询实体A从查询实体B接收应答,该用户实际上是否该组的成员;和
查询实体A至少部分地根据用户是否该组的成员准许从该用户来的请求。
10.如权利要求9所述的媒体,其特征在于,包括:
查询问实体A查询区域A的目录A以返回对该组的任何对象,该组对区域B是本地的,使得区域B的目录B具有对应于该组的记录对象,在目录B中对应该组的记录对象包括该组的所有直接成员,区域A的目录A具有对应该组的指针对象,在目录A中对应该组的指针对象包括区域B的地址;
查询实体A在应答中从目录A接收对该组的指针对象,从而表明该组对区域A不是本地的;
查询实体A从接收的指针对象检索区域B的地址;
查询实体A利用检索的地址询问区域B的目录B关于区域B的查询实体B的地址;
查询实体A在应答中从目录B接收查询实体B的地址;和
查询实体A在该地址上接触查询实体B并请求查询实体B查询目录B,该用户是否该组的成员。
11.如权利要求9结合另外计算机可读媒体的媒体,其中存储计算机可执行指令,用于实现一方法包括查询实体B查询区域B的目录B,以判定该用户是否该组的成员,包括:
查询实体B查询区域B的目录B,以返回对该组的任何对象,该组对区域B是本地的,使得区域B的目录B具有对应该组的记录对象,目录B中对该组的记录对象包括该组的所有直接成员;
查询实体B在应答中从目录B接收对该组的记录对象,从而表明该组对区域B是本地的;和
查询实体B审查在接收的记录对象中列出的该组的直接成员,以判定该用户是否为该组的直接成员。
12.如权利要求11所述的另外的媒体,其特征在于,该方法还包括:
若该用户是该组的直接成员,查询实体B向查询实体A报告,用户实际上是该组的成员;
若该用户不是该组的直接成员,查询实体B查询目录B以返回对该用户的任何对象并通过试图在目录B中找从该用户到该组的成员资格路径进行判断,该用户是否该组的间接成员,找到的从该用户到该组的成员资格路径证实该用户实际上是该组的成员;和
根据是否有成员资格路径,查询实体B向查询实体A报告,该用户实际上是否该组的成员。
13.如权利要求11所述的媒体,其特征在于,查询实体A是数字权限权利(DRM)服务器,该媒体的方法包括查询实体A从用户接收对演示数字内容的对应段的数字许可证的请求,该请求包括该用户的识别和该组的识别。
14.如权利要求13所述的媒体和另外媒体,其特征在于,查询实体B是DRM服务器,该媒体的方法还包括查询实体A问查询实体B发送查询实体A是DRM服务器的识别,另外媒体的方法还包括查询实体B根据发出的识别查明,查询实体A有资格得到该用户是否该组的成员。
15.如权利要求14所述的媒体和另外媒体,其特征在于,该媒体的方法包括查询实体A向查询实体B发出数字证明,它带有追溯到由查询实体识别的机构的可信人的根的证明链,且另外媒体的方法包括查询实体B验证该证明。
16.如权利要求9的媒体,其特征在于,查询实体A是数字权限管理(DRM)服务器,该方法包括查询实体A从该用户接收对演示数字内容的相应段的数字许可证的请求,该请求包括该用户的识别和该组的识别。
CN2004100076079A 2003-02-26 2004-02-26 根据越地区目录信息对内容产生数字权限管理(drm)许可 Expired - Lifetime CN1550995B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/374,321 2003-02-26
US10/374,321 US7827156B2 (en) 2003-02-26 2003-02-26 Issuing a digital rights management (DRM) license for content based on cross-forest directory information

Publications (2)

Publication Number Publication Date
CN1550995A true CN1550995A (zh) 2004-12-01
CN1550995B CN1550995B (zh) 2012-06-20

Family

ID=32771442

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2004100076079A Expired - Lifetime CN1550995B (zh) 2003-02-26 2004-02-26 根据越地区目录信息对内容产生数字权限管理(drm)许可

Country Status (5)

Country Link
US (1) US7827156B2 (zh)
EP (1) EP1452942A3 (zh)
JP (1) JP4486380B2 (zh)
KR (1) KR101084768B1 (zh)
CN (1) CN1550995B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009030135A1 (fr) * 2007-08-31 2009-03-12 Huawei Technologies Co., Ltd. Procédé, dispositif et système pour attribuer une licence
CN106992999A (zh) * 2017-05-26 2017-07-28 河南职业技术学院 一种跨服务器数据通讯处理方法
CN107466400A (zh) * 2015-04-16 2017-12-12 英赛瑟库尔公司 用于在至少两个功能实体之间共享存储器的方法

Families Citing this family (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7487363B2 (en) * 2001-10-18 2009-02-03 Nokia Corporation System and method for controlled copying and moving of content between devices and domains based on conditional encryption of content key depending on usage
US7577999B2 (en) * 2003-02-11 2009-08-18 Microsoft Corporation Publishing digital content within a defined universe such as an organization in accordance with a digital rights management (DRM) system
US7370212B2 (en) 2003-02-25 2008-05-06 Microsoft Corporation Issuing a publisher use license off-line in a digital rights management (DRM) system
US7827156B2 (en) 2003-02-26 2010-11-02 Microsoft Corporation Issuing a digital rights management (DRM) license for content based on cross-forest directory information
KR100953160B1 (ko) * 2003-06-26 2010-04-20 삼성전자주식회사 네트워크 장치 및 이를 이용하는 상이한 저작권 관리방식을 갖는 네트워크 장치간의 컨텐츠 호환성 제공 방법
US7716288B2 (en) * 2003-06-27 2010-05-11 Microsoft Corporation Organization-based content rights management and systems, structures, and methods therefor
US20050102513A1 (en) * 2003-11-10 2005-05-12 Nokia Corporation Enforcing authorized domains with domain membership vouchers
JP4487607B2 (ja) * 2004-03-23 2010-06-23 ソニー株式会社 情報処理システム、情報処理装置および方法、記録媒体、並びにプログラム
US20050278258A1 (en) * 2004-06-14 2005-12-15 O'donnell Michael User software for facilitating copyright licensing and compliance
WO2006041179A1 (ja) * 2004-10-15 2006-04-20 Vodafone K.K. 連係動作方法及び通信端末装置
US8438645B2 (en) 2005-04-27 2013-05-07 Microsoft Corporation Secure clock with grace periods
US8725646B2 (en) 2005-04-15 2014-05-13 Microsoft Corporation Output protection levels
JP4537882B2 (ja) * 2005-04-18 2010-09-08 株式会社東芝 情報端末装置
US11362897B2 (en) * 2005-05-19 2022-06-14 International Business Machines Corporation Site policy administrative agent
US20060265758A1 (en) 2005-05-20 2006-11-23 Microsoft Corporation Extensible media rights
KR100746014B1 (ko) * 2005-11-09 2007-08-06 삼성전자주식회사 디지털 저작권 관리 방법 및 시스템
JP2007150846A (ja) * 2005-11-29 2007-06-14 Toshiba Corp コンテンツ再生システム
US7788181B2 (en) * 2005-12-27 2010-08-31 Microsoft Corporation Software licensing using certificate issued by authorized authority
US8429300B2 (en) * 2006-03-06 2013-04-23 Lg Electronics Inc. Data transferring method
CN101395595B (zh) * 2006-03-06 2012-11-21 Lg电子株式会社 数据传送方法和内容传送方法
US20090133129A1 (en) * 2006-03-06 2009-05-21 Lg Electronics Inc. Data transferring method
KR101346734B1 (ko) * 2006-05-12 2014-01-03 삼성전자주식회사 디지털 저작권 관리를 위한 다중 인증서 철회 목록 지원방법 및 장치
US20070269044A1 (en) * 2006-05-16 2007-11-22 Bruestle Michael A Digital library system with rights-managed access
KR20080022476A (ko) * 2006-09-06 2008-03-11 엘지전자 주식회사 논컴플라이언트 컨텐츠 처리 방법 및 디알엠 상호 호환시스템
US9922198B2 (en) * 2006-09-07 2018-03-20 Hewlett Packard Enterprise Development Lp Methods, apparatus and computer systems that enable hardware module use rights owned by one server to be claimed for use by another server in a common share group
ES2460972T3 (es) * 2007-01-05 2014-05-16 Lg Electronics Inc. Método de transmisión de recursos y método de suministro de información
US8266706B2 (en) * 2007-01-26 2012-09-11 Microsoft Corporation Cryptographically controlling access to documents
JP2010507864A (ja) * 2007-02-16 2010-03-11 エルジー エレクトロニクス インコーポレイティド ドメイン管理方法及びドメインデバイス並びにプログラム
KR100846101B1 (ko) * 2007-04-12 2008-07-14 삼성전자주식회사 실시간 drm 컨텐츠 정보 표시 방법 및 이를 이용하는휴대 단말기
CN101903889B (zh) * 2007-12-20 2014-07-09 皇家飞利浦电子股份有限公司 数字版权管理的设备和方法
US9117058B1 (en) * 2010-12-23 2015-08-25 Oracle International Corporation Monitoring services and platform for multiple outlets
US11620660B2 (en) 2009-08-19 2023-04-04 Oracle International Corporation Systems and methods for creating and inserting application media content into social media system displays
US20120011432A1 (en) 2009-08-19 2012-01-12 Vitrue, Inc. Systems and methods for associating social media systems and web pages
US10339541B2 (en) 2009-08-19 2019-07-02 Oracle International Corporation Systems and methods for creating and inserting application media content into social media system displays
US8904169B2 (en) * 2009-09-15 2014-12-02 Symantec Corporation Just in time trust establishment and propagation
US9990114B1 (en) 2010-12-23 2018-06-05 Oracle International Corporation Customizable publication via multiple outlets
US9081974B2 (en) * 2011-11-10 2015-07-14 Microsoft Technology Licensing, Llc User interface for selection of multiple accounts and connection points
US20150178059A1 (en) * 2013-12-20 2015-06-25 Amazon Technologies, Inc. Application launching
US10103890B2 (en) * 2014-08-08 2018-10-16 Haw-Minn Lu Membership query method
US10728040B1 (en) * 2014-08-08 2020-07-28 Tai Seibert Connection-based network behavioral anomaly detection system and method
US9449187B2 (en) * 2014-08-11 2016-09-20 Document Dynamics, Llc Environment-aware security tokens
US20220150241A1 (en) * 2020-11-11 2022-05-12 Hewlett Packard Enterprise Development Lp Permissions for backup-related operations

Family Cites Families (106)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0398645B1 (en) * 1989-05-15 1997-08-06 International Business Machines Corporation System for controlling access privileges
CA2046723C (en) * 1990-07-11 1998-11-24 Robert Charles Pike Distributed computing system
US5260999A (en) * 1991-06-28 1993-11-09 Digital Equipment Corporation Filters in license management system
US5204897A (en) * 1991-06-28 1993-04-20 Digital Equipment Corporation Management interface for license management system
US5438508A (en) * 1991-06-28 1995-08-01 Digital Equipment Corporation License document interchange format for license management system
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
CN100501754C (zh) * 1995-02-13 2009-06-17 英特特拉斯特技术公司 用于安全交易管理和电子权利保护的***和方法
US20020018491A1 (en) 1995-03-20 2002-02-14 Nicholas A. Balatoni Plug-in multiplexer
US5761669A (en) * 1995-06-06 1998-06-02 Microsoft Corporation Controlling access to objects on multiple operating systems
US5758069A (en) * 1996-03-15 1998-05-26 Novell, Inc. Electronic licensing system
US5864620A (en) * 1996-04-24 1999-01-26 Cybersource Corporation Method and system for controlling distribution of software in a multitiered distribution chain
US6006332A (en) * 1996-10-21 1999-12-21 Case Western Reserve University Rights management system for digital media
US6035402A (en) * 1996-12-20 2000-03-07 Gte Cybertrust Solutions Incorporated Virtual certificate authority
CA2228185C (en) * 1997-01-31 2007-11-06 Certicom Corp. Verification protocol
US5881225A (en) * 1997-04-14 1999-03-09 Araxsys, Inc. Security monitor for controlling functional access to a computer system
US6389535B1 (en) * 1997-06-30 2002-05-14 Microsoft Corporation Cryptographic protection of core data secrets
JP2001517822A (ja) * 1997-09-19 2001-10-09 パク,ヒョ,ジョーン 独立的ソフトウェア登録サーバを利用したソフトウェア使用権管理システム
US6122741A (en) * 1997-09-19 2000-09-19 Patterson; David M. Distributed method of and system for maintaining application program security
US6189146B1 (en) * 1998-03-18 2001-02-13 Microsoft Corporation System and method for software licensing
US6701433B1 (en) * 1998-03-23 2004-03-02 Novell, Inc. Method and apparatus for escrowing properties used for accessing executable modules
US6219652B1 (en) * 1998-06-01 2001-04-17 Novell, Inc. Network license authentication
US6226618B1 (en) * 1998-08-13 2001-05-01 International Business Machines Corporation Electronic content delivery system
US7228437B2 (en) * 1998-08-13 2007-06-05 International Business Machines Corporation Method and system for securing local database file of local content stored on end-user system
US6460141B1 (en) * 1998-10-28 2002-10-01 Rsa Security Inc. Security and access management system for web-enabled and non-web-enabled applications and content on a computer network
US7017188B1 (en) * 1998-11-16 2006-03-21 Softricity, Inc. Method and apparatus for secure content delivery over broadband access networks
JP2000270007A (ja) * 1999-03-12 2000-09-29 Sony Corp ネットワークシステム、ネットワークサーバ及び端末装置
US6973444B1 (en) * 1999-03-27 2005-12-06 Microsoft Corporation Method for interdependently validating a digital content package and a corresponding digital license
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
US20020019814A1 (en) * 2001-03-01 2002-02-14 Krishnamurthy Ganesan Specifying rights in a digital rights license according to events
US7103574B1 (en) 1999-03-27 2006-09-05 Microsoft Corporation Enforcement architecture and method for digital rights management
US7024393B1 (en) 1999-03-27 2006-04-04 Microsoft Corporation Structural of digital rights management (DRM) system
JP3471654B2 (ja) * 1999-04-06 2003-12-02 富士通株式会社 ライセンスサーバ、著作権者システム、利用者システム、システム、記録媒体およびコンテンツ利用制御方法
JP2000293587A (ja) * 1999-04-09 2000-10-20 Sony Corp 情報処理装置および方法、管理装置および方法、並びに提供媒体
US6557105B1 (en) * 1999-04-14 2003-04-29 Tut Systems, Inc. Apparatus and method for cryptographic-based license management
KR20010052853A (ko) * 1999-04-14 2001-06-25 마츠시타 덴끼 산교 가부시키가이샤 데이터 관리장치, 데이터 관리방법, 및 데이터 관리프로그램을 기록하는 기록매체
US7213262B1 (en) 1999-05-10 2007-05-01 Sun Microsystems, Inc. Method and system for proving membership in a nested group using chains of credentials
GB9913165D0 (en) * 1999-06-08 1999-08-04 Secr Defence Access control in a web environment
WO2001016776A1 (fr) * 1999-08-27 2001-03-08 Sony Corporation Systeme de transmission d'informations, emetteur et recepteur, procede de transmission d'informations, procede de reception d'informations
US20040178076A1 (en) * 1999-10-01 2004-09-16 Stonas Walter J. Method of manufacture of colloidal rod particles as nanobarcodes
JP2001118332A (ja) * 1999-10-20 2001-04-27 Sony Corp データ配信システムとその方法、データ処理装置、データ使用制御装置および配信用データが記録された機械読み取り可能な記録媒体
US6801998B1 (en) * 1999-11-12 2004-10-05 Sun Microsystems, Inc. Method and apparatus for presenting anonymous group names
US6792537B1 (en) * 1999-11-22 2004-09-14 Sun Microsystems, Inc. Mechanism for determining restrictions to impose on an implementation of a service
GB2357229B (en) * 1999-12-08 2004-03-17 Hewlett Packard Co Security protocol
US7213005B2 (en) * 1999-12-09 2007-05-01 International Business Machines Corporation Digital content distribution using web broadcasting services
US6996720B1 (en) 1999-12-17 2006-02-07 Microsoft Corporation System and method for accessing protected content in a rights-management architecture
JP2001175605A (ja) 1999-12-17 2001-06-29 Sony Corp データ処理装置
US7047411B1 (en) 1999-12-17 2006-05-16 Microsoft Corporation Server for an electronic distribution system and method of operating same
JP2001175606A (ja) * 1999-12-20 2001-06-29 Sony Corp データ処理装置、データ処理機器およびその方法
US6772340B1 (en) 2000-01-14 2004-08-03 Microsoft Corporation Digital rights management system operating on computing device and having black box tied to computing device
US6662228B1 (en) * 2000-02-01 2003-12-09 Sun Microsystems, Inc. Internet server authentication client
JP2001256318A (ja) * 2000-03-14 2001-09-21 Sony Corp コンテンツ取り引きシステムおよびコンテンツ取り引き方法、並びにプログラム提供媒体
US7155415B2 (en) * 2000-04-07 2006-12-26 Movielink Llc Secure digital content licensing system and method
KR20010096814A (ko) * 2000-04-14 2001-11-08 홍기융 전자서명 인증기반 파일시스템 해킹방지용 보안커널 방법
US6386894B2 (en) * 2000-04-28 2002-05-14 Texas Instruments Incorporated Versatile interconnection scheme for beverage quality and control sensors
US7020781B1 (en) * 2000-05-03 2006-03-28 Hewlett-Packard Development Company, L.P. Digital content distribution systems
JP2001326632A (ja) * 2000-05-17 2001-11-22 Fujitsu Ltd 分散グループ管理システムおよび方法
US7509421B2 (en) * 2000-06-05 2009-03-24 Sealedmedia Limited Digital rights management
US6961858B2 (en) * 2000-06-16 2005-11-01 Entriq, Inc. Method and system to secure content for distribution via a network
US7017189B1 (en) 2000-06-27 2006-03-21 Microsoft Corporation System and method for activating a rendering device in a multi-level rights-management architecture
US7036011B2 (en) * 2000-06-29 2006-04-25 Cachestream Corporation Digital rights management
US7080077B2 (en) * 2000-07-10 2006-07-18 Oracle International Corporation Localized access
JP4366845B2 (ja) * 2000-07-24 2009-11-18 ソニー株式会社 データ処理装置およびデータ処理方法、並びにプログラム提供媒体
US7743259B2 (en) * 2000-08-28 2010-06-22 Contentguard Holdings, Inc. System and method for digital rights management using a standard rendering engine
JP4581200B2 (ja) * 2000-08-31 2010-11-17 ソニー株式会社 個人認証システム、個人認証方法、および情報処理装置、並びにプログラム提供媒体
AU2001285265A1 (en) 2000-09-12 2002-03-26 Aladdin Knowledge Systems, Ltd. System for managing rights and permitting on-line playback of digital content
US7343324B2 (en) 2000-11-03 2008-03-11 Contentguard Holdings Inc. Method, system, and computer readable medium for automatically publishing content
US20040054678A1 (en) * 2000-12-08 2004-03-18 Ryuichi Okamoto Distribution device, terminal device, and program and method for use therein
US7085834B2 (en) * 2000-12-22 2006-08-01 Oracle International Corporation Determining a user's groups
KR20020064672A (ko) * 2001-02-02 2002-08-09 마쯔시다덴기산교 가부시키가이샤 콘텐츠 이용 관리 시스템 및 콘텐츠 이용 관리 방법
JP4191902B2 (ja) * 2001-02-28 2008-12-03 株式会社日立製作所 コンテンツ配信装置
KR20030007771A (ko) * 2001-03-29 2003-01-23 소니 가부시끼 가이샤 정보 처리 장치
GB2374165A (en) * 2001-04-02 2002-10-09 Global Knowledge Network Secure distribution of electronic media
EP1479016A2 (en) * 2001-05-29 2004-11-24 Matsushita Electric Industrial Co., Ltd. Rights management unit
US8099364B2 (en) * 2001-05-31 2012-01-17 Contentguard Holdings, Inc. Digital rights management of content when content is a future live event
US8275716B2 (en) * 2001-05-31 2012-09-25 Contentguard Holdings, Inc. Method and system for subscription digital rights management
US7395245B2 (en) * 2001-06-07 2008-07-01 Matsushita Electric Industrial Co., Ltd. Content usage management system and server used in the system
CA2432189A1 (en) * 2001-06-07 2002-12-19 Contentguard Holdings, Inc. Cryptographic trust zones in digital rigths management
WO2002101494A2 (en) * 2001-06-07 2002-12-19 Contentguard Holdings, Inc. Protected content distribution system
WO2003009112A1 (en) * 2001-07-17 2003-01-30 Matsushita Electric Industrial Co., Ltd. Content usage device and network system, and license information acquisition method
EP1386493A1 (en) * 2001-07-31 2004-02-04 Matsushita Electric Industrial Co., Ltd. System, apparatus, and method of contents distribution, and program and program recording medium directed to the same
DE60216940T2 (de) * 2001-08-01 2007-07-05 Matsushita Electric Industrial Co., Ltd., Kadoma Einrichtung und verfahren zur verwaltung des inhaltsbenutzungsrechts
US6807542B2 (en) * 2001-08-14 2004-10-19 International Business Machines Corporation Method and apparatus for selective and quantitative rights management
US7546359B2 (en) * 2001-10-24 2009-06-09 Groove Networks, Inc. Method and apparatus for managing a peer-to-peer collaboration system
JP4039489B2 (ja) * 2002-01-12 2008-01-30 コアトラスト インコーポレーテッド マルチメディアコンテンツの情報保護方法及びシステム
US7747531B2 (en) * 2002-02-05 2010-06-29 Pace Anti-Piracy Method and system for delivery of secure software license information
US7376624B2 (en) * 2002-02-27 2008-05-20 Imagineer Software, Inc. Secure communication and real-time watermarking using mutating identifiers
US7805371B2 (en) * 2002-03-14 2010-09-28 Contentguard Holdings, Inc. Rights expression profile system and method
US7092527B2 (en) * 2002-04-18 2006-08-15 International Business Machines Corporation Method, system and program product for managing a size of a key management block during content distribution
US20040039916A1 (en) * 2002-05-10 2004-02-26 David Aldis System and method for multi-tiered license management and distribution using networked clearinghouses
US7502945B2 (en) * 2002-06-28 2009-03-10 Microsoft Corporation Using a flexible rights template to obtain a signed rights label (SRL) for digital content in a rights management system
US7549060B2 (en) * 2002-06-28 2009-06-16 Microsoft Corporation Using a rights template to obtain a signed rights label (SRL) for digital content in a digital rights management system
US7353402B2 (en) * 2002-06-28 2008-04-01 Microsoft Corporation Obtaining a signed rights label (SRL) for digital content and obtaining a digital license corresponding to the content based on the SRL in a digital rights management system
US7891007B2 (en) * 2002-06-28 2011-02-15 Microsoft Corporation Systems and methods for issuing usage licenses for digital content and services
US7174021B2 (en) * 2002-06-28 2007-02-06 Microsoft Corporation Systems and methods for providing secure server key operations
US20040088541A1 (en) * 2002-11-01 2004-05-06 Thomas Messerges Digital-rights management system
US8364951B2 (en) * 2002-12-30 2013-01-29 General Instrument Corporation System for digital rights management using distributed provisioning and authentication
US20040128546A1 (en) * 2002-12-31 2004-07-01 International Business Machines Corporation Method and system for attribute exchange in a heterogeneous federated environment
US20040158731A1 (en) * 2003-02-11 2004-08-12 Microsoft Corporation Publishing digital content within a defined universe such as an organization in accordance with a digital rights management (DRM) system
US7577999B2 (en) * 2003-02-11 2009-08-18 Microsoft Corporation Publishing digital content within a defined universe such as an organization in accordance with a digital rights management (DRM) system
US6990502B2 (en) * 2003-02-26 2006-01-24 Microsoft Corporation Reviewing cached user-group information in connection with issuing a digital rights management (DRM) license for content
US7827156B2 (en) 2003-02-26 2010-11-02 Microsoft Corporation Issuing a digital rights management (DRM) license for content based on cross-forest directory information
DE602004005485T2 (de) * 2003-11-11 2007-11-29 Matsushita Electric Industrial Co., Ltd., Kadoma Verfahren zum beurteilen der nutzungserlaubnis für informationen und inhaltsverbreitungssystem, das dieses verfahren verwendet
US7571488B2 (en) * 2004-03-31 2009-08-04 Panasonic Corporation Rights management terminal, server apparatus and usage information collection system
KR101322515B1 (ko) * 2005-09-29 2013-10-25 콘텐트가드 홀딩즈 인코포레이티드 발행 권리를 갖는 선행복사본과 관리복사본 토큰을 이용한디지털 권리 관리 시스템 및 방법
JP2007304849A (ja) * 2006-05-11 2007-11-22 Sony Corp 管理装置、情報処理装置、管理方法および情報処理方法
US20070269044A1 (en) * 2006-05-16 2007-11-22 Bruestle Michael A Digital library system with rights-managed access

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009030135A1 (fr) * 2007-08-31 2009-03-12 Huawei Technologies Co., Ltd. Procédé, dispositif et système pour attribuer une licence
CN107466400A (zh) * 2015-04-16 2017-12-12 英赛瑟库尔公司 用于在至少两个功能实体之间共享存储器的方法
CN107466400B (zh) * 2015-04-16 2020-12-04 拉姆伯斯公司 用于在至少两个功能实体之间共享存储器的方法
CN106992999A (zh) * 2017-05-26 2017-07-28 河南职业技术学院 一种跨服务器数据通讯处理方法
CN106992999B (zh) * 2017-05-26 2020-11-20 河南职业技术学院 一种跨服务器数据通讯处理方法

Also Published As

Publication number Publication date
US20040168077A1 (en) 2004-08-26
US7827156B2 (en) 2010-11-02
JP2004259283A (ja) 2004-09-16
EP1452942A3 (en) 2008-10-15
CN1550995B (zh) 2012-06-20
JP4486380B2 (ja) 2010-06-23
KR101084768B1 (ko) 2011-11-21
KR20040076830A (ko) 2004-09-03
EP1452942A2 (en) 2004-09-01

Similar Documents

Publication Publication Date Title
CN1550995A (zh) 根据越地区目录信息对内容产生数字权限管理(drm)许可
US6990502B2 (en) Reviewing cached user-group information in connection with issuing a digital rights management (DRM) license for content
AU2004200461B2 (en) Issuing a publisher use license off-line in a digital rights management (DRM) system
RU2344469C2 (ru) Публикация цифрового содержания в определенном пространстве, таком, как организация, в соответствии с системой цифрового управления правами (цуп)
CA2457938C (en) Enrolling/sub-enrolling a digital rights management(drm) server into a drm architecture
AU2004200471B2 (en) Publishing digital content within a defined universe such as an organization in accordance with a digital rights management (DRM) system
CN1502186A (zh) 在计算机网络中有控制地分发应用程序代码和内容数据
CN1650303A (zh) 联网服务许可***和方法

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
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150507

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

Effective date of registration: 20150507

Address after: Washington State

Patentee after: Micro soft technique license Co., Ltd

Address before: Washington State

Patentee before: Microsoft Corp.