首页> 中国专利> 信息处理设备和方法、信息提供设备和方法、使用权利管理设备和方法、记录介质和程序

信息处理设备和方法、信息提供设备和方法、使用权利管理设备和方法、记录介质和程序

摘要

一种能够防止未经授权使用内容的信息处理设备和方法、信息提供设备和方法、使用权利管理设备和方法、记录介质和程序。从由内容服务器(3)提供的内容的EKB中来获得根密钥Kroot。再者,通过获得的根密钥Kroot来对数据E(Kroot,Kekb)进行解码并且获得EKB密钥Kekb。另一方面,从许可服务器(4)提供的使用权利包含通过私有密钥Kpri解码的数据(Kpub,Ksub)并且子密钥Ksub被获得。通过EKB密钥Kekb和子密钥Ksub,产生内容密钥Kc并且通过该产生的内容密钥Kc来对内容进行解码。本发明能被应用到使用经由诸如英特网的网络提供的内容的个人计算机上。

著录项

  • 公开/公告号CN1533646A

    专利类型发明专利

  • 公开/公告日2004-09-29

    原文格式PDF

  • 申请/专利权人 索尼株式会社;

    申请/专利号CN03800650.2

  • 发明设计人 石黑隆二;

    申请日2003-04-10

  • 分类号H04L9/08;

  • 代理机构11105 北京市柳沈律师事务所;

  • 代理人邵亚丽;马莹

  • 地址 日本东京都

  • 入库时间 2023-12-17 15:30:37

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2016-06-01

    未缴年费专利权终止 IPC(主分类):H04L9/08 授权公告日:20070725 终止日期:20150410 申请日:20030410

    专利权的终止

  • 2007-07-25

    授权

    授权

  • 2004-12-15

    实质审查的生效

    实质审查的生效

  • 2004-09-29

    公开

    公开

说明书

技术领域

本发明涉及一种信息处理设备和方法、信息提供设备和方法、使用权利管理设备和方法、记录介质和程序。更特别地,本发明涉及一种用于可靠地防止未经授权使用内容的信息处理设备和方法、信息提供设备和方法、使用权利管理设备和方法、记录介质和程序。

背景技术

最近已经开发了各种宽带环境。已经开始大规模地提供用于分发各种类型的内容,例如音乐数据和移动图像数据,的服务。

例如,已经提供了预订音乐传送服务,诸如“PressPlay”(商标)音乐传送服务的用户付预定的月租费来在预定的范围之内使用音乐内容(例如,在流式播放的情况中能够播放多达1000首歌曲;在将音频下载到个人计算机的硬盘上的情况中能够存储多达100首歌曲;以及在将音频写(复制)到CD(光盘)-R的情况中能够复制多达20首歌曲)。

例如,在日本未经审查的专利申请出版号:No.2001-352321中公开了一种用于管理由如此传送服务提供的用户接收内容的权利信息。在这个系统中,以树状结构来布置与多个服务相关联的节点。在从与预定的服务相关联的节点到与属于这个服务的每一个叶相关联的节点(设备)的路径上,存在已经为其设置了密钥信息(DNK(设备节点密钥))的节点。使用了一种包括如此密钥信息的允许密钥块(EKB)。

在该系统中,将EKB增加到分布在特定服务中的内容中。通过使用给出到各个设备的DNK来让这些设备获得包括在EKB中的已更新密钥信息,来管理能使用这个服务的设备。在这种情况中,不能通过使用DNK来从EKB中获得已更新的信息的设备不被允许接收从先前这个点提供的服务。

相应地,每当向设备提供内容时,在没有执行在设备和将内容提供给设备的服务器之间的认证的情况下,来管理经由每一个设备的内容的使用。

在使用EKB的系统中,如果读取在EKB中描述的信息,这个读取的信息使使用在特定服务(具有相同的EKB的所有片段的内容)中分布的所有片段的内容成为可能。

例如,当服务A提供如图1中所示的格式化的数据1和数据2时,已经获得在数据1的EKB中描述的信息的设备A通过使用获得的密钥信息不仅能使用在数据1中包括的内容1,而且能使用在数据2中包括的内容2。

具体地说,正如在图1中所示,数据1包括EKB、由在EKB中包括的根密钥(Kroot)(与系统的根节点相关联的密钥)加密的内容密钥1(Kc1)、和由内容密钥1加密的内容1。当设备A从EKB获得根密钥时,设备A通过使用该根密钥对内容密钥1进行解密,并且然后通过使用所获得的内容密钥1来对内容1进行解密。

设备A能通过使用从数据1的EKB获得的根密钥来获得以与数据1的格式相似的格式包括在数据2中的内容密钥2(Kc2)。通过使用所获得的内容密钥2,设备A能对内容2进行解密。

已经从数据1获得根密钥的设备即使未经授权获得数据2也能使用数据2,诸如通过将其记录在记录介质上而从另一个设备提供的数据。如此未经授权使用数据阻碍了已授权内容分发。结果,内容提供商能获得的利润受到损失。

发明内容

考虑到上述的环境,本发明的目的是可靠地阻止未经授权的内容使用。

本发明的信息处理装置包括:内容获得装置,用于获得包括第一密钥信息和由第三密钥信息加密的内容数据的内容;使用权利获得装置,用于获得用来起关于内容的使用的信息作用的使用权利,该使用权利包括第二密钥信息;密钥信息产生装置,用于基于包括在由内容获得装置获得的内容中的第一密钥信息和从由使用权利获得装置获得的使用权利中提取的第二密钥信息,来产生第三密钥信息;和解密装置,用于通过由密钥信息产生装置所产生的第三密钥信息来对内容数据进行解密。

信息处理装置还包括请求装置,用于为了获得私有密钥信息和与信息处理装置相关联的设备节点密钥,而向管理使用权利的提供的使用权利管理装置作出请求,所述设备节点密钥是在用于管理使用权利的系统上;和获得装置,用于响应于来自请求装置的请求,获得由使用权利管理装置所提供的私有密钥信息和设备节点密钥。

密钥信息产生装置可以基于由获得装置获得的设备节点密钥来从内容中提取第一密钥信息。密钥信息产生装置可以基于获得装置所获得的私有密钥信息来从使用权利中提取第二密钥信息。

密钥信息产生装置可以将第一密钥信息和第二密钥信息的异或的结果认作为第三密钥信息。

一种用于本发明的信息处理装置的信息处理方法包括:内容获得步骤,用于获得包括第一密钥信息和由第三密钥信息加密的内容数据的内容;使用权利获得步骤,用于获得用来起关于内容使用的信息作用的使用权利,该使用权利包括第二密钥信息;密钥信息产生步骤,用于基于包括在由在内容获得步骤中获得的内容中的第一密钥信息和从由在使用权利获得步骤中获得的使用权利中提取的第二密钥信息,来产生第三密钥信息;和解密步骤,用于通过由在密钥信息产生步骤中所产生的第三密钥信息来对内容数据进行解密。

一种其上记录有程序的用于本发明的信息处理装置的记录介质,所述程序使计算机执行的处理包括:内容获得控制步骤,用于控制包括第一密钥信息和由第三密钥信息加密的内容数据的内容的获得;使用权利获得控制步骤,用于控制用来起关于内容使用的信息作用的使用权利的获得,该使用权利包括第二密钥信息;密钥信息产生控制步骤,用于控制基于包括在由在内容获得控制步骤中获得的内容中的第一密钥信息和从由在使用权利获得控制步骤中获得的使用权利中提取的第二密钥信息的第三密钥信息的产生;和解密控制步骤,用于控制通过由在密钥信息产生控制步骤中所产生的第三密钥信息来对内容数据进行的解密。

一种本发明的程序使计算机执行处理,该处理包括:内容获得控制步骤,用于控制包括第一密钥信息和由第三密钥信息加密的内容数据的内容的获得;使用权利获得控制步骤,用于控制用来起关于内容使用的信息作用的使用权利的获得,该使用权利包括第二密钥信息;密钥信息产生控制步骤,用于控制基于包括在由在内容获得控制步骤中获得的内容中的第一密钥信息和从由在使用权利获得控制步骤中获得的使用权利中提取的第二密钥信息的第三密钥信息的产生;和解密控制步骤,用于控制通过由在密钥信息产生控制步骤中所产生的第三密钥信息来对内容数据进行的解密。

一种本发明的信息提供装置包括:密钥信息产生装置,用于产生第一密钥信息和第二密钥信息并且用于基于第一密钥信息和第二密钥信息来产生由信息处理装置可获得的第三密钥信息;加密装置,用于通过由密钥信息产生装置所产生的第三密钥信息来对内容数据进行加密;内容产生装置,用于通过使用由信息处理装置所保存的私有密钥信息来产生包括可获得的第一密钥信息的内容;和提供装置,用于向使用权利管理装置提供第二密钥信息,所述使用权利管理装置管理向信息处理装置提供使用权利,所述使用权利起关于内容使用的信息的作用。

一种用于本发明的信息提供装置的信息提供方法包括:密钥信息产生步骤,用于产生第一密钥信息和第二密钥信息并且用于基于第一密钥信息和第二密钥信息来产生由信息处理装置可获得的第三密钥信息;加密步骤,用于通过在密钥信息产生步骤中所产生的第三密钥信息来对内容数据进行加密;内容产生步骤,用于通过使用由信息处理装置所保存的私有密钥信息来产生包括可获得的第一密钥信息的内容;和提供步骤,用于向使用权利管理装置提供第二密钥信息,所述使用权利管理装置管理向信息处理装置提供使用权利,所述使用权利起关于内容使用的信息的作用。

一种其上记录有程序的用于信息提供装置的记录介质,所述程序使计算机执行的处理包括:密钥信息产生控制步骤,用于控制第一密钥信息和第二密钥信息的产生并且用于基于第一密钥信息和第二密钥信息来控制由信息处理装置可获得的第三密钥信息的产生;加密控制步骤,用于通过在密钥信息产生控制步骤中所产生的第三密钥信息来控制对内容数据进行的加密;内容产生控制步骤,用于通过使用由信息处理装置所保存的私有密钥信息来控制包括可获得的第一密钥信息的内容的产生;和提供控制步骤,用于控制向使用权利管理装置提供第二密钥信息,所述使用权利管理装置管理向信息处理装置提供使用权利,所述使用权利起关于内容使用的信息的作用。

一种本发明的程序使计算机执行处理,该处理包括:密钥信息产生控制步骤,用于控制第一密钥信息和第二密钥信息的产生并且用于基于第一密钥信息和第二密钥信息来控制由信息处理装置可获得的第三密钥信息的产生;加密控制步骤,用于通过在密钥信息产生控制步骤中所产生的第三密钥信息来控制对内容数据进行的加密;内容产生控制步骤,用于通过使用由信息处理装置所保存的私有密钥信息来控制包括可获得的第一密钥信息的内容的产生;和提供控制步骤,用于控制向使用权利管理装置提供第二密钥信息,所述使用权利管理装置管理向信息处理装置提供使用权利,所述使用权利起关于内容使用的信息的作用。

一种本发明的使用权利管理装置,包括:获得装置,用于从用来将内容提供到信息处理装置的信息提供装置中获得第二密钥信息;产生装置,用于响应于来自信息处理装置的请求,产生与由信息处理装置所使用的内容相关联的使用权利;和使用权利提供装置,用于将产生装置产生的使用权利提供到信息处理装置。产生装置产生包括通过对第二密钥信息进行加密所产生的信息的使用权利,所述第二密钥信息是由获得装置通过使用与由信息处理装置所保存的私有密钥信息相关联的公共密钥信息来获得的。

使用权利管理装置还包括提供装置,用于响应于来自信息处理装置的请求,向信息处理装置提供与信息处理装置相关联的设备节点密钥,所述设备节点密钥是在用于管理私有密钥信息和使用权利的系统上的。

一种用于本发明的使用权利管理装置的使用权利管理方法包括:获得步骤,用于从用来将内容提供到信息处理装置的信息提供装置中获得第二密钥信息;产生步骤,用于响应于来自信息处理装置的请求,产生与由信息处理装置所使用的内容相关联的使用权利;和使用权利提供步骤,用于将在产生步骤中产生的使用权利提供到信息处理装置。在产生步骤中,产生使用权利,该使用权利包括通过使用与由信息处理装置所保存的私有密钥信息相关联的公共密钥信息来对第二密钥信息进行加密所产生的信息。

一种其上记录有程序的用于本发明的使用权利管理装置的记录介质,所述程序使计算机执行的处理包括:获得控制步骤,用于对从用来将内容提供到信息处理装置的信息提供装置中获得第二密钥信息进行控制;产生控制步骤,用于响应于来自信息处理装置的请求,控制与由信息处理装置所使用的内容相关联的使用权利的产生;和使用权利提供控制步骤,用于对将在产生控制步骤中产生的使用权利提供到信息处理装置进行控制。在产生控制步骤中,产生使用权利,该使用权利包括通过使用与由信息处理装置所保存的私有密钥信息相关联的公共密钥信息来对第二密钥信息进行加密所产生的信息。

本发明的程序使计算机执行处理,该处理包括:获得控制步骤,用于对从用来将内容提供到信息处理装置的信息提供装置中获得第二密钥信息进行控制;产生控制步骤,用于响应于来自信息处理装置的请求,控制与由信息处理装置所使用的内容相关联的使用权利的产生;和使用权利提供控制步骤,用于对将在产生控制步骤中产生的使用权利提供到信息处理装置进行控制。在产生控制步骤中,产生使用权利,该使用权利包括通过使用与由信息处理装置所保存的私有密钥信息相关联的公共密钥信息来对第二密钥信息进行加密所产生的信息。

根据本发明的信息处理装置和方法及其程序,获得由第三密钥信息加密的内容数据和包括第一密钥信息的内容。获得起关于内容使用的信息的作用的使用权利,该使用权利包括第二密钥信息。基于在内容中包括的第一密钥信息和从使用权利中提取的第二密钥信息,来产生第三密钥信息。通过使用所产生的第三密钥信息,对内容数据进行解密。

根据本发明的信息提供装置和方法及其程序,产生第一密钥信息和第二密钥信息。产生由信息处理装置基于第一密钥信息和第二密钥信息可获得的第三密钥信息。通过使用该第三密钥信息,对内容数据进行加密,因此产生包括通过使用由信息处理装置所保存的私有密钥信息可获得的第一密钥信息的内容。将第二密钥信息提供给用来管理将使用权利提供到信息处理装置的使用权利管理装置,所述使用权利起关于内容使用的信息的作用。

根据本发明的使用权利管理装置和方法及其程序,从用来将内容提供到信息处理装置的信息提供装置中获得第二密钥信息。响应于来自信息处理装置的请求,产生与由信息处理装置所使用的内容相关联的使用权利。将所产生的使用权利提供到信息处理装置。所产生的使用权利包括通过用公共密钥信息对第二密钥信息进行加密所产生的信息,所述公共密钥信息与由信息处理装置所保存的私有密钥信息相关联。

附图说明

图1是显示已知的内容解密的示意性图。

图2是显示根据本发明的内容提供系统的配置的例子的图。

图3是显示图2中所示的每一个客户机的配置的例子的方框图。

图4是显示密钥的布置的图。

图5是显示目录节点的图。

图6是显示在节点和设备之间的关联性的例子的图。

图7是显示允许密钥块的结构的另一个例子的说明图。

图8是显示允许密钥块的结构的另一个例子的说明图。

图9是显示允许密钥块的使用的示意性图。

图10是显示允许密钥块的格式的例子的说明图。

图11是描述在允许密钥块中的每一个标签的结构的图。

图12是根据本发明的密钥信息的区分(division)的示意性图。

图13是描述通过图2中所示的客户机进行的服务数据获得处理的流程图。

图14是服务数据的例子的说明图。

图15是描述通过图2中所示的许可服务器进行的服务数据提供处理的流程图。

图16是描述通过图2中所示的内容服务器进行的内容产生处理的流程图。

图17是内容的格式的例子的说明图。

图18是描述通过图2中所示的许可服务器进行的子密钥获得处理的流程图。

图19是描述通过图2中所示的客户机进行的下载处理的流程图。

图20是描述通过图2中所示的内容服务器进行的内容提供处理的流程图。

图21是描述通过图2中所示的客户机进行的播放(playing)处理的流程图。

图22是描述图21的步骤S73中的使用权利获得处理的细节的流程图。

图23是描述通过图2中所示的许可服务器进行的使用权利提供处理的流程图。

图24是使用权利的例子的说明图。

图25是描述图21的步骤S77中的解密处理的细节的流程图。

图26是显示图25的处理的示意性图。

具体实施方式

图2显示根据本发明的内容提供系统的配置。客户机1-1和客户机1-2(以后当没有必要区分单个的客户机时,就简单地称为客户机1)连接到英特网2。虽然在这个例子中仅仅显示两个客户机,但是任意数目的客户机可以连接到英特网2。

此外,将内容服务器3、许可服务器4和计费服务器5连接到英特网2,其中内容服务器3向客户机1提供内容,许可服务器4将用于使用由内容服务器3提供的内容的必要使用权利授予客户机1,计费服务器5当客户机1接收到使用权利时对客户机1进行计费。

任意数量的内容服务器3、许可服务器4和计费服务器5中的每一个都连接到英特网2。

图3显示客户机1的配置。

参照图3,CPU(中央处理单元)21根据存储在ROM(只读存储器)22中的程序或从存储单元28下载到RAM(随机访问存储器)23中的程序来执行各种处理。定时器20保存(keep)时间和将时间信息提供给CPU 21。RAM 23适当地存储用于由CPU 21执行各种处理的必要的数据。

加密/解密单元24对内容进行加密和对已加密的内容进行解密。编解码器25以,例如,ATRAC(自适应变换声编码)3来对内容进行编码,并且通过输入/输出接口32将已编码的内容提供和记录到连接到驱动器30的半导体存储器44上。同样,编解码器25通过驱动器30对从半导体存储器44中读出的已编码数据进行解码。半导体存储器44包括,例如,记忆棒(商标)。

通过总线31将CPU 21、ROM 22、RAM 23、加密/解密单元24、和编解码器25相互连接在一起。同样,输入/输出接口32连接到总线31。

将输入单元26、输出单元27、存储单元28和通信单元29连接到输入/输出接口32,其中输入单元26包括键盘、鼠标等,输出单元27包括诸如CRT(阴极射线管)或LCD(液晶显示器)的显示器、扬声器等,存储单元28包括硬盘等,通信单元29包括调制解调器、终端适配器等。通信单元29经由英特网2进行通信。通信单元29和另一个客户机进行模拟信号或数字信号的通信。

在所需要的地方,驱动器30连接到输入/输出接口32。将磁盘41、光盘42、磁光盘43或半导体存储器44适当地放置在驱动器30上。在所需要的地方,将从所放置的介质中读出的计算机程序安装在存储单元28上。

虽然在图中未示出,内容服务器3、许可服务器4和计费服务器5基本上每一个都具有与图3中所示的客户机1的配置相似的配置。在下列的描述中,也可以引用图3中所示的配置,来作为内容服务器3、许可服务器4、计费服务器5等的配置。

在本发明中,如图4中所示,基于广播加密的原理来管理设备和密钥。密钥被安置在分层树形结构中,该分层树形结构具有在底部等级的、与对单独设备唯一的密钥相关联的叶(leaf)。关于本发明的系统中使用的分层树形结构密钥管理,参见日本未经审查的专利申请出版号No.2001-352321。在图4中所示的例子中,产生与16个设备0至15相关联的密钥。

与树形结构的节点相关联地定义每一个密钥,该树形结构的节点用说明图中的圆圈所表示。在本例子中,与在顶部等级处的根节点相关联地定义根密钥KR(在所需要的地方,也称为Kroot)。与在第二等级处的节点相关联地定义密钥K0和K1。与在第三等级处的节点相关联地定义密钥K00和K11。与在第四等级处的节点相关联地定义密钥K000和K111。与用作在底部等级处的节点的叶(leaf)(设备节点)相关联地定义密钥K0000和K1111。

由于密钥被安置在分层结构中,例如,在密钥K0010和密钥K0011的顶部上的密钥是K001,和在密钥K000和密钥K001的顶部上的密钥是K00。相似地,在密钥K00和密钥K01的顶部上的密钥是K0,和在K0和密钥K1的顶部上的密钥是KR。

通过与在从底部等级处的每一个设备节点(叶)到顶部等级处的根节点的路径上的节点相关联的密钥来用来使用内容的密钥。例如,与叶3相关联的设备管理用于由在对应的路径上的密钥K0011、K001、K00、K0和KR来使用内容的密钥。

在本发明的系统中,如图5中所示,由基于图4中所示的原理的密钥系统来管理设备密钥和内容密钥。在图5中所示的例子中,将在8+24+32处的节点安置在树形结构中,并且从根节点到根节点以下的第八等级处的节点的节点与类目相关联。术语“类目”指的是,例如,使用诸如记忆棒的半导体存储器的设备的类目,或者接收数字广播程序的设备的类目。这些类目节点之一是与用作管理使用权利的系统的当前系统相关联(在所需要的地方,称为T系统)。

具体地说,与在与T系统相关联的节点下面的24等级处的节点相关联的密钥是与服务提供者或由服务提供者所提供的服务相关联的。在图5中所示的例子中,能够定义224(大约16M)个服务提供者或服务。使用底部32等级,能够定义232(大约4G)个用户(客户机1)。与节点相关联的密钥组成DNK(设备节点密钥),其中所述节点是在从底部等级处或第32等级处的每一个节点到与T系统相关联的节点的路径上的节点。与底部等级处的每一个叶相关联的ID是叶ID。

通过更新的根密钥KR′来对已经对内容进行加密的内容密钥进行加密。通过使用在较低等级处的已更新节点密钥来对在较高等级处的已更新节点密钥进行加密,其中所述在较低等级处的已更新节点密钥是最临近于所述在较高等级处的已更新节点密钥的。将这个已加密节点密钥安置在EKB中(允许密钥模块)(以后将参照图7来描述)。

在该EKB中,通过在EKB末端的节点密钥或叶密钥来对在EKB末端上面的等级处的已更新节点密钥进行加密,并且将该已加密节点密钥安置在EKB中。通过使用在服务数据中所描述的DNK中包括的任何密钥,客户机1对在比所使用的密钥高的等级处的已更新节点密钥进行解密,其中所述已更新节点密钥是最临近所使用的密钥并且在与内容一起分发的EKB中被描述。通过使用已解密的节点密钥,客户机1对在比EKB中描述的这个节点密钥高等级处的已更新节点密钥进行解密。客户机1接连地进行相似的处理,以便获得已更新根密钥KR′。当注册关于客户机1的时间信息时,通过许可服务器4提供服务数据。这个服务数据和使用权利的集合被称为许可,所述集合是用于特定内容的使用的信息,稍后将对其进行描述。

图6显示在分层树形结构中的类目的分类的例子。

参照图6,将根密钥KR2301设置在分层树形结构的顶部等级处;将节点密钥2302设置在顶部等级下面的中间等级处;和将叶密钥2303设置在底部等级处。每一个设备都拥有由对应的叶密钥、从叶密钥到根密钥的一系列节点密钥、和根密钥组成的设备节点密钥(DNK)。

将从顶部开始的第M等级处(在图5中所示的例子中M=8)的预定节点设置为类目节点2304。具体地说,将在第M等级处的节点设置为属于规定类目(specific category)的设备设置节点。让在第M等级处的一个节点成为顶点。在第M+1等级处以及下面的节点和叶被认为关于包括在那个类目中的设备的节点和叶。

例如,将图6中的第M等级处的节点2305设置到类目[记忆棒(商标)]。将在节点2305下面的一系列节点和叶设置为专用到包括使用记忆棒的各种设备的这个类目上的节点和叶。具体地说,将在节点2305下面的节点和叶设置为与定义为属于类目“记忆棒”的设备相关联的节点和叶的集合。

将在比第M等级低几个等级的等级处的节点设置为子类目节点2306。在图6的例子中,将[只重放单元]节点2306设置在比类目[记忆棒]节点2305低两个等级的等级处。[只重放单元]节点2306是包括在使用记忆棒的设备的类目中的子类目节点。在用作子类目节点的只重放单元节点2306的下面,与具有音乐重放功能的电话相关联地来设置节点2307,其中所述电话被包括在只重放单元的类目中。在节点2307的下面,设置[PHS]节点2308和[蜂窝电话]节点2309,所述[PHS]节点2308和[蜂窝电话]节点2309被包括在具有音乐重放功能的电话的类目中。

不仅可以与设备的类型相关联地来设置类目和子类目,而且可以与,例如,由特定的制造商、内容提供者、付款协会等,也就是说,以,例如,处理、管辖(jurisdiction)部分、或提供的服务(以后将这些集中地称为实体)独立地管理的节点相关联地来设置类目和子类目。

例如,让一个类目节点成为专用于游戏机制造商所出售的游戏机XYZ的顶点节点。由制造商所出售的游戏机XYZ的每一个都可以在该顶点节点下面的等级处存储节点密钥和叶密钥。随后,包括在该顶点节点密钥下面的这些节点密钥和叶密钥的EKB的产生和分发允许将已加密的内容和各种密钥仅仅分发到在该顶点节点下面的那些设备(游戏机XYZ)上,以及允许仅仅对在该顶点节点下面的那些设备(游戏机XYZ)进行各种密钥的更新。

具体地说,在没有影响不属于该顶点节点的以及属于另一个类目的节点的设备的情况下,可以对密钥进行更新。

当黑客(hacker)分析由设备3所保存的密钥K0011、K001、K00、K0、KR以及由设备3所保存的密钥K0011、K001、K00、K0、KR被暴露到外部的情形在特定的时间t变得显而易见时,需要将设备3从系统(设备0、1、2、3的组合)中分离开,以便保护在该系统内随后传送的数据。到此为止,需要将节点密钥K001、K00、K0、和KR分别更新到新密钥K(t)001、K(t)00、K(t)0、和K(t)R,并且需要将这些已更新的密钥发送到设备0、1、2。在这个例子中,K(t)aaa指示在产生t中的已更新的密钥Kaaa。

现在将描述分发已更新密钥的方法。通过经由网络或预定的记录介质将,例如,包括EKB的表提供到设备0、1、2来对密钥进行更新,其中所述表存储在所述预定的记录介质中。EKB包括用于将新的已更新密钥分发到与在图4中所示的树形结构中包括的叶(在底部等级处的节点)相关联的设备上的加密密钥。

图7中所示的EKB包括具有数据结构的块数据,其中所述数据结构仅仅能够由将需要更新节点密钥的设备来进行更新。在图7的例子中,产生块数据,以便将在产生t中的已更新的节点密钥分发到图4中所示的树形结构中的设备0、1、2。

正如从图4中清楚可见的,需要将已更新的节点密钥K(t)00、K(t)0和K(t)R提供到设备0和1,反之需要将已更新的节点密钥K(t)001、K(t)00、K(t)0、和K(t)R提供到设备2。

如图7中的EKB所示的,该EKB包括多个加密按键。例如,在图7的底部等级处的加密按键是Enc(K0010,K(t)001),该Enc(K0010,K(t)001)是由设备2所保存的叶密钥K0010进行加密的已更新的节点密钥K(t)001。设备2通过使用由它自己保存的叶密钥K0010来对这个加密密钥进行解密。

使用通过解密所获得的已更新的节点密钥K(t)001,设备2对从图7的底部起的第二等级处的加密密钥Enc(K(t)001,K(t)00)进行解密,以便获得已更新的节点密钥K(t)00。

相似地,设备2对从图7的顶部起的第二等级处的加密密钥Enc(K(t)00,K(t)0)进行解密,以便获得已更新的节点密钥K(t)0。通过利用该已更新的节点密钥K(t)0,设备2对从图7的顶部起的第一等级处的加密密钥Enc(K(t)0,K(t)R)进行解密,以便获得已更新的根密钥K(t)R。

相反,在要更新的密钥中没有包括节点密钥K000。节点0和1具有下列的要更新的节点密钥:K(t)00、K(t)0和K(t)R。

节点0和1每一个都使用设备密钥K0000和K0001来对从图7的顶部起的第三等级处的加密密钥Enc(K000,K(t)00)进行解密,以便获得已更新的节点密钥K(t)00。相似地,节点0和1每一个都对从图7的顶部起的第二等级处的加密密钥Enc(K(t)00,K(t)0)进行解密,以便获得已更新的节点密钥K(t)0。而且,节点0和1每一个都对从图7的顶部起的第一等级处的加密密钥Enc(K(t)0,K(t)R)进行解密,以便获得已更新的根密钥K(t)R。用这种方式,设备0、1和2每一个都获得已更新的密钥K(t)R。

图7中的索引表示节点密钥和用作对图7的右上所示的加密密钥进行解密的解密密钥的叶密钥的绝对地址。

当不需要更新在图4中所示的树形结构的较上等级处的节点密钥K(t)0和K(t)R时并且当仅仅需要更新节点密钥K00时,使用图8中的EKB来将已更新的节点密钥K(t)00分发到设备0、1和2中。

能够使用图8中所示的EKB来分发,例如,要由特定的组所共享的新的内容密钥。

例如,假设包括在由图4的虚线所表示的组中的设备0、1、2和3每一个都使用特殊的记录介质并且假设必须将新的公共内容密钥K(t)con设置到这些设备。在这种情况中,将已加密的数据Enc(K(t)00,K(t)con)和图8中所示的EKB一起分发。通过使用K(t)00对新的公共已更新的内容密钥K(t)con进行加密来生成已加密的数据Enc(K(t)00,K(t)con),其中K(t)00已经将由设备0、1、2和3所共享的节点密钥K00进行了更新。通过这种分发,来分发不能由属于另一个组的诸如设备4的设备所解密的数据。

具体地说,设备0、1和2每一个都使用通过对EKB进行处理所获得的密钥K(t)00来对已加密的数据进行解密,从而获得在时间t处的内容密钥K(t)。

图9是显示获得在时间t处的内容密钥K(t)con的处理的例子的示意图,所述处理是由设备0对其的已加密数据Enc(K(t)00,K(t)con)所执行的处理,所述已加密数据Enc(K(t)00,K(t)con)是通过使用K(t)00对新的公共内容密钥K(t)con进行加密所生成的,并且通过预定的记录介质提供了在图8中所示的EKB。具体地说,在图9的例子中,由EKB所加密的消息数据是内容密钥K(t)con。

如图9中所示,设备0使用存储在记录介质中的、在产生t中的EKB和在设备0中所准备的节点密钥K000,以便通过上述的EKB处理(一个接一个地对密钥进行解密)产生节点密钥K(t)00。通过使用已解密的已更新节点密钥K(t)00,设备0对已更新的内容密钥K(t)con进行解密。然后使用已解密的已更新内容密钥K(t)con,设备0通过使用仅仅由设备0所保存的叶密钥K0000来对已更新的内容密钥K(t)con进行加密,并且存储该已加密的内容密钥K(t)con。

图10显示EKB的格式的例子。在内容数据的头部中包括着包含各种类型的信息的EKB。

版本61是指示EKB的版本的识别符。版本61具有识别最新的EKB的功能和指示在EKB和内容之间的关联关系的功能。深度62指示与设备相关联的分层树的等级的数量,其中将EKB分发到所述设备上。数据指针63是指示EKB的数据部分66的位置的指针。标签指针64和签名指针65分别是指示标签部分67和签名68的位置的指针。

数据部分66存储,例如,通过对要更新的节点密钥进行加密所产生的数据。例如,数据部分66存储关于已更新的节点密钥的加密密钥,如图9中所示。

标签部分67包括指示在已加密的节点密钥和在数据部分66中存储的叶密钥之间的位置关系的标签。将参照图11来描述附加(attaching)标签的规则。

在图11的例子中,要发送的数据包括,如图11B中所示的,图7中的加密密钥。包括在该加密密钥中的顶部节点的地址被称为顶部节点地址。

因为在这个例子中数据包括已更新的根密钥K(t)R,所以顶部节点地址是KR。例如,在顶部等级Enc(K(t)0,K(t)R)处的数据是与在图11A中所示的分层树中所示的位置P0相关联的。在随后的等级处的数据是与在树中所示的先前的数据Enc(K(t)0,K(t)R)的较低的左边(left)中的位置P00相关联的Enc(K(t)00,K(t)0)。

具体地说,当存在位于树形结构中的预定位置之下的数据时,将标签设置为0。或者,将标签设置为1。标签被设置为(左(L)标签,右(R)标签)。

由于在与在图11B中的顶部等级Enc(K(t)0,K(t)R)处的数据相关联的位置P0的较低的左边中的位置P00处存在数据,所以L标签=0。由于在位置P0的较低的右边中不存在数据,所以R标签=1。在这种方式中,对所有片的数据都打上标签,因此形成图11C中所示的数据序列和标签序列。

附加用于指示树形结构中的对应的数据Enc(Kxxx,Kyyy)的位置的标签。存储在数据部分66中的各片密钥数据Enc(Kxxx,Kyyy)...是简单的一系列的已加密密钥数据片。当如上所述对密钥数据打上标签时,在每一个加密密钥作为数据存储的树中的位置变成可检测的。替代对数据打上标签,如图7或8中所示,可以通过,例如,与已加密数据相关联的下列的节点索引来定义数据结构:

0:Enc(K(t)0,K(t)R)

00:Enc(K(t)00,K(t)0)

000:Enc(K(t)000,K(t)0)

.....

当使用如此索引来定义结构时,数据的量会增加,这在通过网络或类似的分布中是不希望的。相反,当使用上述的标签来作为指示密钥的位置的索引数据时,该密钥的位置变成用少量的数据是可检测的。

回头再参照图10的描述,签名68是由,例如,密钥管理中心(许可服务器4)、内容提供者(内容服务器3)、付费协会(计费服务器5)等所产生的数字签名,其已经发布了EKB。已经接收EKB的设备验证包括在EKB中的签名,以便确定所获得的EKB是否是由认证发布者所发布的。

图12是显示直到由客户机1获得用于对在上述的密钥管理系统中的内容进行解密的内容密钥Kc为止的处理的示意性图。

将在图12的左端中所示的DNK包括在当注册时所产生的服务数据中,并且将其从许可服务器4提供到客户机1。正如稍后将说明的,服务数据包括对客户机1特有的私有密钥Kpri,并且也提供了这个密钥信息(图12的右端)。

客户机1获得特定片的内容和用于使用该片内容的使用权利。在这个使用权利中,描述了用于使用内容的规则。当客户机1响应于用户指令而开始使用内容时,客户机1使用从服务数据中获得的DNK来获得内容的EKB密钥Kekb。同样,客户机1通过使用从服务数据中获得的私有密钥Kpri来获得与EKB密钥Kekb相关联的、包括在使用权利中的子密钥Ksub。参照图12,EKB(Kekb)指示由包括在EKB中的根密钥Kroot进行加密的EKB密钥Kekb。

如果已经获得了EKB密钥Kekb和子密钥Ksub,则客户机1通过计算这些片的密钥信息的“异或”来产生用于解密内容的内容密钥Kc。如果使用了所产生的内容密钥Kc,则客户机1对内容(内容数据)进行解密。

利用基于包括在EKB中的EKB密钥Kekb和包括使用权利中的子密钥Ksub所产生的内容密钥Kc,内容变成为使用有效的(划分密钥信息并且将其提供到客户机1)。即使当读取包括在EKB中的信息时,不能仅仅利用在EKB中描述的密钥信息来使用内容。换句话说,需要EKB(内容)、用于使用内容的使用权利、和服务数据来使用内容。

参照流程图,现在将描述由客户机1、内容服务器3以及许可服务器4进行的直到基于所划分的和所提供的密钥信息来使用内容为止的处理。

参照图13的流程图,现在将描述由客户机1进行的服务数据获得处理。

当由用户操作输入单元26来指令客户机1对许可服务器4进行访问时,在步骤S1中,客户机1的CPU 21控制通信单元29通过英特网2访问许可服务器4。在步骤S2中,当由用户操作输入单元26来指定要提供的服务时,CPU 21接收指定信息和从许可服务器4请求用于使用所指定的服务的服务数据。

正如下面将参照图15的流程图所描述的,已经接收了所述请求的许可服务器4发送服务数据。在步骤S3中,CPU 21接收从许可服务器4发送的服务数据。在步骤S4中,CPU 21将服务数据存储在包括硬盘或类似的存储单元28中。

图14是说明提供到客户机1的服务数据的例子的说明图。

如图14中所示,服务数据包括用于识别客户机1的叶ID、用于对在EKB中描述的密钥信息进行解密的DNK、单独给到客户机1的私有密钥Kpri、以及与私有密钥Kpri相关联的公共密钥Kpub。服务数据也包括与由许可服务器4所保存的私有密钥相关联的许可服务器4的公共密钥和服务数据的证书。

参照图15的流程图,现在将描述由许可服务器4所执行的服务数据提供处理,该服务数据提供处理是与图13中所示的处理相关联地进行的。

在步骤S11中,许可服务器4的CPU 21确定是否已经由客户机1访问了许可服务器4。在步骤S11中对许可服务器4排队,直到确定已经由客户机1访问了许可服务器4为止。当许可服务器4的CPU 21在步骤S11中确定已经由客户机1访问了许可服务器4时,在步骤S12中,许可服务器4产生用于使用由客户机1所请求的服务的服务数据。在该服务数据中,描述了在图14中所示的各种类型的信息。

在步骤S13中,许可服务器4的CPU 21控制通信单元29,以便将在步骤S12中所产生的服务数据和指示用于使用服务的缺省使用规则的信息一起发送到客户机1。

利用上述的处理,客户机1获得服务数据。或者,替代通过上述的处理要提供到客户机1的服务数据,可以通过将服务数据预先存储在客户机1中(当制造客户机1时嵌入进去)来将服务数据提供到客户机1的用户。

参照图16的流程图,现在将描述由内容服务器3进行的产生内容的处理,所述内容将被提供到客户机1。在内容持有者(未示出)中提供了内容数据,诸如包括在由内容服务器3所提供的内容中的音乐数据或者视频数据。

在步骤S21中,内容服务器3的CPU 21产生用于对要提供到客户机1的内容(内容数据)进行加密的内容密钥Kc。在步骤S22中,CPU 21产生由客户机1产生内容密钥Kc所需要的子密钥Ksub。如上所述,子密钥Ksub被包括在使用权利中并且由许可服务器4将其提供到客户机1。

在步骤S23中,CPU 21产生EKB密钥Kekb,该EKB密钥Kekb允许客户机1基于子密钥Ksub和EKB密钥Kekb来产生内容密钥Kc。具体地说,CPU 21计算在步骤S21中所产生的内容密钥Kc和在步骤S22中所产生的子密钥Ksub的“异或”值,并且将所计算的“异或”值认作为EKB密钥Kekb。

在步骤S24中,CPU 21通过使用包括在EKB中的根密钥Kroot来对在步骤S23中产生的EKB密钥Kekb进行加密,以便获得E(Kroot,Kekb)。在步骤S25中,CPU 21通过使用在步骤S21中产生的内容密钥Kc来对要提供到客户机1的内容进行加密,以便获得E(Kc,Cont)。

在步骤S26中,CPU 21产生其格式包括在步骤S24中获得的E(Kroot,Kekb)和在步骤S25中获得的E(Kc,Cont)的内容,并且将所产生的内容存储在存储单元28中。

图17是由内容服务器3所产生的内容的格式的例子的说明图。

如图17中所示,基本上内容包括头部和数据(内容数据)。

头部包括内容信息、URL(统一资源定位符)、许可ID、包括由提供到客户机1的DNK加密的Kroot的EKB、通过利用从EKB所获得的Kroot对EKB密钥Kekb加密所产生的E(Kroot,Kekb)、指示内容的属性的属性信息、以及头部的签名。

内容信息包括用于识别存储为数据的内容的内容ID(CID)和指示内容的编解码格式的信息。

URL指示为了获得使用内容所需要的使用权利而要访问的许可服务器4的地址。内容的属性包括内容ID、用作识别内容的提供者的识别信息的记录公司ID、用作识别艺术家的识别信息的艺术家ID、和唯一ID。在这个实施例中,属性被用来指定通过使用权利要使用的内容。

数据包括任意数量的加密块。每一个加密块都包括初始化矢量(IV)、种子、以及通过使用密钥K′c对内容进行加密所产生的数据EK′c(数据)。

密钥K′c是,如下列等式所示的,通过将内容密钥Kc和随机数目的种子应用到离散函数所计算的值:

K′c=Hash(Kc,Seed)

在每一个加密块中将初始化矢量IV和种子设置到不同的值。

例如,以8个字节为单位来加密内容。用CBC(密码块链接)模式来加密内容,在该CBC模式中,通过使用先前8个字节的加密的结果来加密随后的8个字节。

在CBC模式中,当要对内容的第一8个字节进行加密时,不存在在这些第一8个字节之前的8个字节加密的结果。因此通过使用用作初始值的初始矢量IV来对内容的第一8个字节进行加密。

利用CBC模式中的加密,即使当解密一个加密块时,它的影响没有扩展到其它的加密块。或者,可以以另一种加密模式来加密内容。

当按上述来格式化内容时,已经获得内容的客户机1通过使用从服务数据中预先获得的DNK来解密根密钥Kroot,然后通过使用所获得的根密钥Kroot来解密EKB密钥Kekb。基于该EKB密钥Kekb和包括在使用权利中的子密钥Ksub,客户机1产生内容密钥Kc,并且使用该内容密钥Kc来解密内容。

回头再参照图16的描述,在步骤S27中,内容服务器3的CPU 21通过英特网2或预定的记录介质将在步骤S22中产生的子密钥Ksub提供给许可服务器4。

响应于由内容服务器3所提供的子密钥Ksub,许可服务器4执行在图18的流程图中所显示的处理。

在步骤S41中,许可服务器4的CPU 21确定是否已经从内容服务器3获得了子密钥Ksub。对CPU 21进行排队,直到确定已经获得子密钥Ksub为止。例如,当确定已经通过英特网2发送了指示子密钥Ksub的信息时,在步骤S42中,CPU 21获得这个信息。将所获得的子密钥Ksub存储在存储单元28中。当客户机1请求使用权利时,将包括子密钥Ksub的使用权利提供到客户机1。

参照图19的流程图,现在将描述由客户机1接收由内容服务器3所提供的内容的处理。

当用户指令客户机1来访问内容服务器3时,在步骤S51中,客户机1的CPU 21访问内容服务器3。在步骤S52中,当用户操作输入单元26来指定要提供的内容时,CPU 21接收这个指定信息,并且将所指定的内容的内容ID通知给内容服务器3。

如下面将参照图20的流程图所描述的,已经被通知内容ID的内容服务器3发送该内容。在步骤S53中,CPU 21接收所发送的内容。在步骤S54中,CPU 21将内容存储在存储单元28中。

参照图20的流程图,现在将描述由内容服务器3进行的内容提供处理,该内容提供处理是与图19中所示的由客户机1进行的处理相关联地执行的。

在步骤S61中,将内容服务器3的CPU 21排队,直到由客户机1访问该内容服务器3为止。当确定由客户机1已经访问了内容服务器3时,在步骤S62中,内容服务器3装载由客户机1发送的内容ID。这个内容ID是在图19的步骤S52中由客户机1所通知的信息。

在步骤S63中,内容服务器3的CPU 21从存储在存储单元28中的内容数据中读取由内容ID所指定的内容数据,该内容ID是通过步骤S62中的处理所装载的。在步骤S64中,CPU 21控制通信单元29来将包括所读取的内容数据的内容发送到已经请求该内容的客户机1上。

参照图21的流程图,现在将描述由客户机1进行的内容播放处理。

在步骤S71中,客户机1的CPU 21获得由用户通过操作输入单元26所指定的内容识别信息(CID)。

CID包括,例如,内容的标题、附加到每一片的所存储的内容的数目、或类似。当指定内容时,CPU 21读取内容的属性。在内容的头部中描述了属性,如图17中所示。

在步骤S72中,CPU 21确定客户机1是否已经获得了使用权利并且已经将这个使用权利存储在存储单元28中,其中在所述使用权利中包括的该使用权利的使用规则是由在步骤S71中读取的属性所满足的。当还没有获得如此的使用权利时,在步骤S73中,CPU 21执行使用权利获得处理。下面将参照图22的流程图来描述使用权利获得处理的细节。

当在步骤S72中确定已经获得使用权利时,或者当在步骤S73中执行使用权利获得处理并且获得使用权利时,则在步骤S74中,CPU 21确定所获得的使用权利是否在它的有效期之内。通过将在使用权利中所描述的有效期(参见图24)和由定时器20所保存的当前的日期和时间进行比较来确定使用权利是否在有效期之内。

当确定使用权利的有效期已经合格时,在步骤S75中,CPU 21执行使用权利更新处理。在步骤S75中所执行的使用权利更新处理基本上与在步骤S73中执行的使用权利获得处理相似。

当在步骤S74中确定使用权利是在有效期之内时,或者当在步骤S75中更新了使用权利时,则在步骤S76中,CPU 21读取包括在使用权利中的使用规则和使用状态,其中所述使用权利和使用状态被存储在存储单元28中,并且确定使用规则和使用状态是否满足重放规则。

当在步骤S76中基于包括在使用权利中的使用规则和使用状态确定内容被允许播放时,则在步骤S77中,CPU 21从存储单元28中读取内容,并且将内容存储在RAM 23中。在步骤S78中,CPU 21执行对存储在RAM 23中的内容进行解密的处理。下面将参照图25的流程图来描述在步骤S78中执行的这个内容解密处理。

在步骤S79中,CPU 21将由加密/解密单元24所解密的内容供给到编解码器25中,以便将其解码。CPU 21通过输入/输出接口32将由编解码器25解码的数据提供到输出单元27,将该数据(数字数据)转换成模拟数据,并且经由扬声器输出该模拟数据。

参照图22的流程图,将详细描述图21的步骤S73中执行的使用权利获得处理。

在步骤S81中,客户机1的CPU 21获得在内容的头部中描述的URL。如上所述,URL指示为了获得使用内容所需要的使用权利而要访问的许可服务器4的地址。在步骤S82中,CPU 21控制通信单元29来访问在步骤S81中获得的URL,即,许可服务器4。

响应于访问,许可服务器4请求客户机1输入用于指定要购买的使用权利的使用权利指定信息(使用内容所需要的使用权利)、用户ID、以及口令(下面描述的图23的步骤S102)。CPU 21将请求显示在输出单元27的显示单元上。基于所显示的请求,用户操作输入单元26来输入使用权利指定信息、用户ID、以及口令。由客户机1的用户通过经由英特网2访问许可服务器4来预先获得用户ID和口令。

在步骤S83中,CPU 21装载由输入单元26输入的使用权利指定信息。在步骤S84中,CPU 21装载用户ID和口令。在步骤S85中,CPU 21控制通信单元29来将输入的用户ID、口令、和使用权利指定信息、以及包括叶ID的使用权利请求发送到许可服务器4,其中叶ID被包括在服务数据中。

如下面将参照图23所描述的,许可服务器4发送已经基于用户ID、口令、和使用权利指定信息所产生的使用权利(步骤S111)。或者,如果没有满足规则,则许可服务器4不发送使用权利(步骤S114)。

在步骤S86中,CPU 21确定是否已经从许可服务器4中发送了使用权利。当确定已经发送了使用权利时,在步骤S87中,CPU 21将所接收的使用权利存储在存储单元28中。

当在步骤S86中确定没有发送使用权利时,在步骤S88中,CPU 21执行出错处理,诸如禁止内容播放处理。

或者,每一个用户可以在获得内容之前之前执行图22中所示的使用权利获得处理。

参照图23的流程图,现在将描述由许可服务器4进行的使用权利提供处理,该使用权利提供处理是与图22中所示的由客户机1进行的使用权利获得处理相关联地被执行的。

在步骤S101中,将许可服务器4的CPU 21排队,直到由客户机1访问该许可服务器4为止。当由客户机1访问该许可服务器4时,在步骤S102中,CPU 21将包括关于每一个使用权利的信息的使用权利的目录发送到已经访问了许可服务器4的客户机1中。同样,许可服务器4的CPU 21请求客户机1来发送用户ID、口令、以及使用权利指定信息。当客户机1发送用户ID、口令、叶ID以及使用权利指定信息(可以是使用权利ID)时(在图22的步骤S85中的处理),许可服务器4的CPU 21通过通信单元29装载这些片的信息。

在步骤S103中,许可服务器4的CPU 21通过通信单元29访问计费服务器5,并且请求计费服务器5来执行与用户ID和口令相关联的用户的信用(credit)处理。响应于经由英特网2的、来自许可服务器4的信用(credit)处理请求,计费服务器5调查与用户ID和口令相关联的用户的过去的付费记录,并且确定该用户是否已经不能支付用于使用权利的费用。如果不存在如此的记录,则CPU 21发送允许授予使用权利的信用结果。如果存在不能支付的记录,则CPU 21发送禁止授予使用权利的信用结果。客户机1的用户已经预先将用户的用户ID、口令、以及指示要支付费用的银行的信息注册在计费服务器5中。

在步骤S104中,许可服务器4的CPU 21确定来自计费服务器5的信用结果是否允许授予使用权利。当允许授予使用权利时,在步骤S105中,CPU 21从存储在存储单元28中的使用权利中获得与通过在步骤S102中的处理所装载的使用权利指定信息相关联的使用权利。存储在存储单元28中的每一个使用权利包括诸如使用权利ID、版本、产生日期和有效期的信息。

在步骤S106中,CPU 21将由客户机1所通知的叶ID添加到使用权利中。在步骤S107中,CPU 21选择与在步骤S105中所选择的使用权利相关联的使用规则。当用户在步骤S102中已经指定了使用规则时,将所指定的使用规则添加到所准备的使用规则上。CPU 21将所选择的使用规则添加到使用权利上。或者,可以预先将使用规则添加到使用权利上。

在步骤S108中,CPU 21通过使用许可服务器4的私有密钥来给使用权利打上标记。

在步骤S109中,CPU 21通过使用许可服务器4的公共密钥Kpub来加密由内容服务器3通知的子密钥Ksub,因此获得E(Kpub,Ksub),其中所述许可服务器4的公共密钥Kpub是与客户机1的私有密钥Kpri相关联的。在步骤S110中,CPU 21将在步骤S109中获得的E(Kpub,Ksub)添加到在步骤S105中所选择的使用权利上。

图24是通过上述的处理所产生的使用权利的例子的说明图。

版本是通过用。(dot)分离主版本和次要(minor)版本来描述使用权利的版本的信息。概述(profile)是用于定义描述使用权利的方法的限制的信息,所述概述(profile)是通过利用十进制整数来描述的。使用权利ID是用于识别使用权利的识别信息,所述使用权利ID是通过使用十六进制常量来描述的。产生日期指示产生使用权利的日期。有效期指示使用权利的有效日期。9999年23:59:59的有效期指示不存在关于有效期的限制。使用规则包括信息,该信息指示:用于基于使用权利来使用内容的有效期;用于基于使用权利来播放内容的有效期;最大播放次数;基于使用权利能够复制内容的次数(允许复制的数量);能够取出(check out)内容的最大次数;基于使用权利是否能将内容记录在CD-R上;内容能复制到PD(便携式设备)的次数;以及是否必须保存使用日记。使用规则的数字签名是与使用规则相关联的。

由使用规则或使用状态来引用常量。叶ID是用于识别客户机的识别信息。数字签名是与整个使用权利相关联的。证书包括许可服务器4的公共密钥。

客户机1的存储单元28不仅存储使用权利的使用规则,而且存储起指示内容的状态和使用权利的信息作用的使用状态(内容规则)。使用状态包括信息,该信息指示:基于相关联的使用权利来播放内容的次数;复制内容的次数;取出(check out)内容的次数;第一次播放内容的日期;将内容记录在CD-R上的次数;以及关于内容或使用权利的记录信息。基于包括在使用权利中的使用规则和与使用权利一起存储在存储单元28中的使用状态来确定是否满足播放内容的规则。例如,当播放内容的次数是小于内容能被播放的最大次数时,则确定满足了播放规则,其中播放内容的次数被存储在使用状态中,内容能被播放的最大次数被包括在使用规则中。

使用权利包括由在步骤S109中的处理所产生的E(Kpub,Ksub)。

回头再参照图23的描述,在步骤S111中,CPU 21控制通信单元29来将上述已经产生的使用权利发送到客户机1。

在步骤S112中,许可服务器4的CPU 21将包括在使用权利中的信息与通过在步骤S102中的处理所装载的用户ID和口令相关联地存储在存储单元28中,其中所述使用权利已经在步骤S111中被发送。在步骤S113中,CPU 21执行计费处理。

具体地说,CPU 21通过使用通信单元29请求计费服务器5来对与用户ID和口令相关联的用户进行计费。响应于计费请求,计费服务器5对用户进行计费。如上所述,当已经被计费的用户没有支付费用时,从这点向前,即使当用户请求授予使用权利时也不允许用户接收使用权利。

具体地说,在这种情况中,计费服务器5发送禁止授予使用权利的信用结果。处理从步骤S104进行到步骤S114。CPU 21执行出错处理,诸如将指示禁止授予使用权利的消息输出到客户机1。

参照图25的流程图,将详细描述由客户机1进行的内容播放处理,所述内容播放处理是在图21的步骤S78中被执行的。

在步骤S121中,客户机1的CPU 21通过使用从服务数据中预先提供的DNK来对包括在内容的EKB(图17)中的密钥信息进行解密,以便获得根密钥Kroot。

在步骤S122中,CPU 21通过使用在步骤S121中所获得的根密钥Kroot来对E(Kroot,Kekb)进行解密,以便获得EKB密钥Kekb。

在步骤S123中,CPU 21通过使用与许可服务器4的公共密钥Kpub相关联的私有密钥Kpri(从服务数据中预先获得的私有密钥)来对包括在使用权利中的E(Kpub,Ksub)进行解密,以便获得子密钥Ksub。

在步骤S124中,CPU 21基于在步骤S122中获得的EKB密钥Kekb和在步骤S123中获得的子密钥Ksub来产生内容密钥Kc。具体地说,CPU 21计算EKB密钥Kekb和子密钥Ksub的“异或”值,并且获得“异或”值,来作为内容密钥Kc。

在步骤S125中,CPU 21通过使用在步骤S124中获得的内容密钥Kc来对E(Kc,Cont)进行解密,以便获得内容。随后,在CPU 21的控制下,在图21的步骤S79中,播放所获得的内容并且由输出单元27将其输出。

图26是显示由客户机1以上述的方式所执行的内容播放处理的示意性图。参照图26,S121至S125分别对应于图25的步骤S121至S125中的处理。参照图26,仅仅显示了包括在内容中的主信息。

如在图26中所示的,客户机1通过使用预先给到客户机1中的DNK来处理安置在从内容服务器3中获得的内容中的EKB,因此获得根密钥Kroot(步骤S121)。

同样,利用根密钥Kroot来对位于EKB的中间靠右上的E(Kroot,Kekb)进行解密,因此获得EKB密钥Kekb(步骤S122)。

相反,利用预先从服务数据中提供到客户机的私有密钥Kpri来对包括在由许可服务器4提供的使用权利中的E(Kpub,Ksub)进行解密,由此获得子密钥Ksub(步骤S123)。

子密钥Ksub和EKB密钥Kekb的“异或”值,并且产生起内容密钥Kc作用的“异或”值(步骤S124)。通过使用所产生的内容密钥Kc,来对位于内容的右端上的E(Kc,Cont)进行解密,因此获得内容(S125)。

如上所述,首先,由于,即使当没有授权的情况下读取包括在EKB中的信息时,也需要私有密钥Kpri来使用内容,所以其中基于DNK从EKB获得根密钥Kroot的离线认证和通过使用私有密钥Kpri来对通过公共密钥Ksub加密的子密钥Ksub进行解密的离线认证的组合使得防止内容的未经授权的使用成为可能。

第二,即使当客户机1的用户在预定的时间周期之内没有访问许可服务器4时,通过改变EKB信息和将所改变的EKB信息分发到属于服务的其它客户机来禁止(disable)进行未授权活动的客户机1(阻止获得根密钥Kroot)。

第三,在内容是音乐内容的情况中,仅仅通过DNK来加密用于试验所提供的演示内容,然而通过由子密钥Ksub和EKB密钥Kekb所产生的内容密钥Kc来加密用于购买的内容。当用户想去使用演示内容,用户仅仅下载该内容。相反,当用户确实想去购买用于购买的内容时,用户获得使用权利。因此,服务变得更为多样化。

在上述的实施例中,使用内容的属性和使用权利的内容规则,来指定用于使用内容所需要的使用权利。但是,所需要的信息不限于到这些片的信息上。例如,内容可以包括用于使用内容所需要的使用权利的使用权利ID。在这种情况中,通过指定内容来唯一地确定用于使用内容所需要的使用权利。因此没有必要确定在内容和使用权利之间的匹配。

工业适用性

根据本发明,提供了内容。根据本发明,防止了未经授权的内容使用。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号