信息处理系统及方法

文档序号:6468110阅读:414来源:国知局
专利名称:信息处理系统及方法
技术领域
本发明涉及信息处理系统、信息处理方法、信息处理装置、及信息处理媒体易以及程序记录媒体,尤其是伴有将内容等各种数据提供给特定的合法用户的加密处理的传送系统及方法。特别是,涉及可以采用树形结构的分级密钥传送方式并利用按传送设备生成的密钥块保持例如作为内容的加密密钥的内容密钥的传送的安全性或其他各种安全性的信息处理系统、信息处理方法、信息处理装置、及信息处理媒体易以及程序记录媒体。
背景技术
近来,游戏程序、声音数据、图象数据等各种软件数据(以下,将这些数据称为内容(Content))通过因特网等网络或DVD、CD等可流通存储媒体的流通,越来越盛行。这些流通内容,可以由用户所备有的PC(Personal Computer个人计算机)、游戏机进行数据接收或装入存储媒体后进行再生、或者存储在PC等所附带的记录再生设备中的记录装置例如存储插卡、硬盘等内并通过从记录媒体的重新再生而使用。
在电视游戏机、PC等信息设备中,备有用于从网络接收流通数据、或用于对DVD、CD等进行访问的接口,并且还备有内容的再生所需的控制装置、程序、用作数据存储区的RAM、ROM等。
音乐数据、图象数据、或程序等各种内容,根据来自用作再生设备的游戏机、PC等信息设备本体的用户指示或通过所连接的输入装置发来的用户指示从记录媒体调出,并通过信息设备本体或所连接的显示器、扬声器等进行再生。
游戏程序、声音数据、图象数据等多种软件内容,一般由其生成者、销售者持有发行权。因此,当发送这些内容时,应有一定的使用限制、即只允许合法的用户使用软件,而且不能进行未经容许的复制等,亦即一般应采用考虑了安全性的结构。
实现对用户的使用限制的一种方法,是对发送内容的加密处理。即,构成为例如通过因特网发送加密后的声音数据、图象数据、游戏程序等各种内容并只向被确认为合法的用户提供对所发送的加密后的内容进行解密的手段、即解密密钥。
加密数据,可以通过按规定步骤进行的解密处理恢复为可使用的解密数据(明文)。迄今为止,这种在信息的加密处理中使用加密密钥而在解密处理中使用解密密钥的数据加密、解密方法,是众所周知的。
使用加密密钥和解密密钥的数据加密、解密方法,有各种各样的形态,作为其一例,例如有被称作所谓的共用密钥加密方式的一种方式。共用密钥加密方式,在数据加密处理中使用的加密密钥与在数据解密中使用的解密密钥可以共用,因而通过对合法的用户提供这些在加密处理、解密处理中使用的共用密钥即可防止未持有密钥的非法用户进行数据存取。这种方式的代表性方式中,有基于DES(数据加密标准Deta encryption standard)的方法。
上述加密处理、解密中使用的加密密钥、解密密钥,例如可以根据某种密码等应用散列函数之类的单向性函数求得。所谓单向性函数,是极难从其输出反向地求出输入的函数。例如,可以将由用户决定的密码作为输入而应用单向性函数并根据其输出生成加密密钥、解密密钥。从实质上说,不可能从按这种方式求得的加密密钥、解密密钥反过来求出其原来的数据即密码。
另外,对加密时使用的加密密钥的处理及解密时使用的解密密钥的处理采用不同算法的方式,是被称作所谓的公开密钥加密方式的一种方式。公开密钥加密方式,是采用可以由非特定用户使用的公开密钥的方法,利用由特定的个人发送的公开密钥对向该特定的个人提供的加密文档进行加密处理。由公开密钥加密后的文档,只能用与在该加密处理中使用的公开密钥对应的保密密钥进行解密处理。保密密钥,仅由发送公开密钥的个人所持有,所以只能由持有保密密钥的个人对由该公开密钥加密后的文档进行解密。公开密钥加密方式的代表性方式中,有RSA(Rivest-Shamir-Adleman里维斯特-沙米尔-阿德尔曼)加密算法。通过使用这种加密方式,即可构成只能由合法用户对加密内容进行解密的系统。
在如上所述的内容传送系统中,大多采用着将内容加密后通过网络、或存储在DVD、CD等记录媒体内提供给用户并仅向合法用户提供用于对加密内容进行解密的内容密钥的结构。为防止对内容密钥本身的非法复制等,提出了将内容密钥加密后提供给合法用户并使用仅合法用户持有的解密密钥将加密内容密钥解密从而可以使用内容密钥的结构方案。
是否是合法用户的判定,例如,一般可以在传送内容或内容密钥之前通过在内容的发送者即内容提供者与用户设备之间执行认证处理进行。在一般的认证处理中,在对对方进行确认的同时,生成仅在其通信中有效的对话密钥,并当认证成立时,用所生成的对话密钥将数据、例如内容或内容密钥加密后进行通信。在认证方式中,有使用共用密钥加密方式的相互认证、使用公开密钥方式的认证方式,但在使用共用密钥的认证中,必需在全系统范围内使用共用密钥,因而在进行更新处理等时很不方便。此外,在公开密钥方式中,计算负荷大、而且所需的存储量也大,因而在各设备中必需设置这样的处理装置,这不能说是合乎需要的结构。
发明的公开在本发明中,提出一种无需进行如上所述的数据发送者、接收者之间的相互认证处理即可只向合法用户安全地发送数据同时在层级的密钥传送树中形成作为分类单位的子树、即类别树并使用可在多个类别树内应用(进行解密处理)的加密密钥块的结构。
另一目的在于,提供一种生成只能由1个以上的选定类别树解密的加密密钥数据块即有效密钥块(EKB)并可以由属于各类别树的设备共同使用同时可以通过使用指示可由哪个类别树处理即解密的BKB类型定义表而提高EKB的生成管理处理的效率的信息处理系统、信息处理方法、信息处理装置、及信息处理媒体易以及程序记录媒体。
本发明的第1方面,是一种信息处理系统,具有如下的结构,即通过构成对将多个设备作为树叶而构成的树的从根部到树叶的路径上的根、结点、及叶对应地赋予了各自的密钥的密钥树并选择构成该密钥树的路径而将具有由选择路径上的下位密钥产生的上位密钥的加密处理数据且只能由可以使用与上述选择路径对应的结点密钥集的设备解密的有效密钥块(EKB)提供给设备,该信息处理系统的特征在于构成为,上述密钥树,具有多个按类别区分并由类别实体管理的作为子树的类别树,生成上述有效密钥块(EKB)的密钥分配中心(KDC),具有使EKB类型标识符与可处理EKB的1个以上的类别树的识别数据相互对应的EKB类型定义表,并根据EKB生成请求中所包含的EKB类型标识符从EKB类型定义表抽出类别树的识别数据而生成可以由所抽出的1以上的类别树以共用的方式解密的EKB。
另外,在本发明的信息处理系统的一实施形态中,其特征在于上述EKB类型定义表的可处理EKB的类别树的识别数据,是构成类别树的结点的标识符即结点ID。
另外,在本发明的信息处理系统的一实施形态中,其特征在于在上述EKB类型定义表中,包含着与属于类别树的设备有关的说明。
另外,在本发明的信息处理系统的一实施形态中,其特征在于构成为,上述EKB类型定义表,可以由请求上述密钥分配中心(KDC)生成EKB的EKB请求者保持或参照,EKB请求者,根据EKB类型定义表选择EKB类型标识符,并将包含所选定的EKB类型标识符的EKB生成请求输出到上述密钥分配中心(KDC)。
另外,在本发明的信息处理系统的一实施形态中,其特征在于构成为,上述类别实体,生成作为可以根据与属于自己管理的类别树的结点或树叶相对应的密钥处理的EKB的子有效密钥块(子EKB),上述密钥分配中心(KDC),根据与从上述EKB类型定义表选定的类别树的识别数据对应的1个以上的类别实体所生成的子EKB,生成并提供可以由在上述EKB类型定义表中设定的类别树以共用的方式处理的EKB。
另外,在本发明的信息处理系统的一实施形态中,其特征在于构成为,上述密钥树,在最上层构成多层的根树,并由与该根树直接连接的顶层类别树、与该顶层类别树的下层连接的子类别树构成,上述类别实体,作为上述顶层类别树的管理实体而对该顶层类别树及与该顶层类别树的下层连接的子类别树进行管理,上述类别实体,生成作为可以根据与属于自己管理的顶层类别树及与该顶层类别树的下层连接的子类别树的结点或树叶相对应的密钥处理的EKB的子有效密钥块(子EKB),上述密钥分配中心(KDC),根据与从上述EKB类型定义表选定的类别树的识别数据对应的1个以上的类别实体所生成的子EKB,生成并提供可以由在上述EKB类型定义表中设定的类别树以共用的方式处理的EKB。
另外,在本发明的信息处理系统的一实施形态中,其特征在于构成为,上述密钥分配中心(KDC),在对上述EKB类型定义表登录新的EKB类型标识符的处理中,以得到对作为可以处理预定登录的EKB类型的类别树选定的1个以上的类别树进行管理的所有类别实体的准许为条件进行登录。
另外,在本发明的信息处理系统的一实施形态中,其特征在于构成为,上述密钥分配中心(KDC),在将登录在上述EKB类型定义表内的EKB类型标识符取消的处理中,以对作为可以处理预定取消的EKB类型的类别树选定的1个以上的类别树进行管理的至少一个类别实体的取消请求为条件进行取消处理。
另外,在本发明的信息处理系统的一实施形态中,其特征在于构成为,上述密钥分配中心(KDC),响应来自请求上述密钥分配中心(KDC)生成EKB的EKB请求者或类别实体的EKB类型定义表请求,向表的请求方发送最新的EKB类型定义表。
另外,在本发明的信息处理系统的一实施形态中,其特征在于构成为,上述类别实体,将该类别实体管理下的类别树的变更信息通知上述密钥分配中心(KDC),上述密钥分配中心(KDC),根据来自类别实体的树变更通知,对上述EKB类型定义表执行必要的更新处理,同时执行将更新信息通知EKB请求者及类别实体的处理。
另外,本发明的第2方面,是一种EKB发送信息处理装置,在具有如下结构的系统中构成生成EKB的密钥分配中心,该系统,通过构成包含按类别区分的作为子树的类别树且对将多个设备作为树叶而构成的树的从根部到树叶的路径上的根、结点、及叶对应地赋予了各自的密钥的密钥树并选择构成该密钥树的路径而将具有由选择路径上的下位密钥对上位密钥的加密处理数据且只能由可以使用与上述选择路径对应的结点密钥集的设备解密的有效密钥块(EKB)提供给设备,该EKB发送发送处理装置的特征在于上述EKB发送信息处理装置构成为,在存储装置内存储使EKB类型标识符与可处理EKB的类别树的识别数据相互对应的EKB类型定义表,接收来自EKB请求者的EKB生成请求,根据该接收EKB生成请求中所包含的EKB标识符从上述EKB类型定义表抽出类别树的识别数据,并执行可由所抽出的类别树以共用的方式进行解密处理的EKB的生成处理。
另外,本发明的第3方面,是一种EKB请求信息处理装置,在具有如下结构的系统中构成发出EKB生成请求的EKB请求方,即,该系统,通过构成包含类别区分的作为子树的类别树且对将多个设备作为树叶而构成的树的从根部到树叶的路径上的根、结点、及叶对应地赋予了各自的密钥的密钥树并选择构成该密钥树的路径而将具有由选择路径上的下位密钥对上位密钥的加密处理数据且只能由可以使用与上述选择路径对应的结点密钥集的设备解密的有效密钥块(EKB)提供给设备,该EKB请求信息处理装置的特征在于上述EKB请求信息处理装置构成为,在存储装置内存储使EKB类型标识符与可处理EKB的类别树的识别数据相互对应的EKB类型定义表,并生成包含上述EKB类型定义表中的EKB类型标识符的EKB生成请求数据并输出EKB发送请求。
另外,本发明的第4方面,是一种类别树管理信息处理装置,在具有如下结构的系统中执行类别树管理,即,该系统,通过构成包含按按类别区分的作为子树的类别树且对将多个设备作为树叶而构成的树的从根部到树叶的路径上的根、结点、及叶对应地赋予了各自的密钥的密钥树并选择构成该密钥树的路径而将具有由选择路径上的位密钥对上位密钥的加密处理数据且只能由可以使用与上述选择路径对应的结点密钥集的设备解密的有效密钥块(EKB)提供给设备,该类别树管理信息处理装置的特征在于构成为,执行作为可以根据与属于所管理的类别树的结点或树叶对应设定的密钥处理的EKB的子有效密钥块(子EKB)的生成处理,并将其输出到密钥分配中心(KDC)。
另外,本发明的第5方面,是一种信息记录媒体,其特征在于记录了使对有效密钥块EKB设定的EKB类型标识符与可处理EKB的类别树的识别数据相互对应的EKB类型定义表,该有效密钥块EKB,通过构成包含按类别区分的作为子树的类别树且对将多个设备作为树叶而构成的树的从根部到树叶的路径上的根、结点、及叶对应地赋予了各自的密钥的密钥树并选择构成该密钥树的路径而生成,该有效密钥块EKB,具有由选择路径上的下位密钥对上位密钥的加密处理数据且只能由可以使用与上述选择路径对应的结点密钥集的设备解密。
另外,在本发明的信息记录媒体的一实施形态中,其特征在于上述EKB类型定义表的可处理EKB的类别树的识别数据,是类别树的结点的标识符即结点ID。
另外,在本发明的信息记录媒体的一实施形态中,其特征在于在上述EKB类型定义表中,构成为包含着与属于类别树的设备有关的说明。
本发明的第6方面,是一种信息处理方法,应用于具有如下的结构的系统,该系统,通过构成包含按类别区分并由类别实体管理的作为子树的类别树且对将多个设备作为树叶而构成的树的从根部到树叶的路径上的根、结点、及叶对应地赋予了各自的密钥的密钥树并选择构成该密钥树的路径而将具有由选择路径上的下位密钥对上位密钥的加密处理数据且只能由可以使用与上述选择路径对应的结点密钥集的设备解密的有效密钥块(EKB)提供给设备,该信息处理方法的特征在于生成上述有效密钥块(EKB)的密钥分配中心(KDC),具有使EKB类型标识符与可处理EKB的1个以上的类别树的识别数据相互对应的EKB类型定义表,并根据EKB生成请求中所包含的EKB类型标识符从EKB类型定义表抽出类别树的识别数据而生成可以由所抽出的1以上的类别树以共用的方式解密的EKB。
另外,在本发明的信息处理方法系统的一实施形态中,其特征在于上述EKB类型定义表的可处理EKB的类别树的识别数据,是构成类别树的结点的标识符即结点ID。
另外,在本发明的信息处理方法的一实施形态中,其特征在于在上述EKB类型定义表中,包含着与属于类别树的设备有关的说明。
另外,在本发明的信息处理方法的一实施形态中,其特征在于上述EKB类型定义表,可以由请求上述密钥分配中心(KDC)生成EKB的EKB请求者保持或参照,EKB请求者,根据EKB类型定义表选择EKB类型标识符,并将包含所选定的EKB类型标识符的EKB生成请求输出到上述密钥分配中心(KDC)。
另外,在本发明的信息处理方法的一实施形态中,其特征在于上述类别实体,生成作为可以根据与属于自己管理的类别树的结点或树叶相对应的密钥处理的EKB的子有效密钥块(子EKB),上述密钥分配中心(KDC),根据与从上述EKB类型定义表选定的类别树的识别数据对应的1个以上的类别实体所生成的子EKB,生成并提供可以由在上述EKB类型定义表中设定的类别树以共用的方式处理的EKB。
另外,在本发明的信息处理方法的一实施形态中,其特征在于上述密钥树,在最上层构成多层的根树,并由与该根树直接连接的顶层类别树、与该顶层类别树的下层连接的子类别树构成,上述类别实体,作为上述顶层类别树的管理实体而对该顶层类别树及与该顶层类别树的下层连接的子类别树进行管理,上述类别实体,生成作为可以根据与属于自己管理的顶层类别树及与该顶层类别树的下层连接的子类别树的结点或树叶相对应的密钥处理的EKB的子有效密钥块(子EKB),上述密钥分配中心(KDC),根据与从上述EKB类型定义表选定的类别树的识别数据对应的1个以上的类别实体所生成的子EKB,生成并提供可以由在上述EKB类型定义表中设定的类别树以共用的方式处理的EKB。
另外,在本发明的信息处理方法的一实施形态中,其特征在于上述密钥分配中心(KDC),在对上述EKB类型定义表登录新的EKB类型标识符的处理中,以得到对作为可以处理预定登录的EKB类型的类别树选定的1个以上的类别树进行管理的所有类别实体的准许为条件进行登录。
另外,在本发明的信息处理方法的一实施形态中,其特征在于上述密钥分配中心(KDC),在将登录在上述EKB类型定义表内的EKB类型标识符取消的处理中,以对作为可以处理预定取消的EKB类型的类别树选定的1个以上的类别树进行管理的至少一个类别实体的取消请求为条件进行取消处理。
另外,在本发明的信息处理方法的一实施形态中,其特征在于上述密钥分配中心(KDC),响应来自请求上述密钥分配中心(KDC)生成EKB的EKB请求者或类别实体的EKB类型定义表请求,向表的请求方发送最新的EKB类型定义表。
另外,在本发明的信息处理方法的一实施形态中,其特征在于上述类别实体,将该类别实体管理下的类别树的变更信息通知上述密钥分配中心(KDC),上述密钥分配中心(KDC),根据来自类别实体的树变更通知,对上述EKB类型定义表执行必要的更新处理,同时执行将更新信息通知EKB请求者及类别实体的处理。
本发明的第7方面,是一种程序记录媒体,记录了使具有如下的结构的系统中的信息处理在计算机系统上执行的计算机程序,即,该系统,通过构成包含按类别区分的作为子树的类别且对将多个设备作为树叶而构成的树的从根部到树叶的路径上的根、结点、及叶对应地赋予了各自的密钥的密钥树并选择构成该密钥树的路径而将具有由选择路径上的下位密钥对上位密钥的加密处理数据且只能由可以使用与上述选择路径对应的结点密钥集的设备解密的有效密钥块(EKB)提供给设备,该程序记录媒体的特征在于上述计算机程序,包括根据EKB生成请求中所包含的EKB类型标识符从使EKB类型标识符与可处理EKB的1个以上的类别树的识别数据相互对应的EKB类型定义表抽出类别树的识别数据的步骤、及生成可以由所抽出的1以上的类别树以共用的方式解密的EKB的步骤。
在本发明的结构中,采用树形结构的层级加密密钥传送结构并采用将各设备配置在n分枝树的各树叶而构成的密钥传送方法,构成为将例如内容数据的加密密钥即内容密钥或用于认证处理的认证密钥、或程序代码等通过记录媒体或通信线路与有效密钥块一起传送。
另外,由加密密钥数据部及指示加密密钥的位置的标记部构成有效密钥块,可以减少数据量,并能有准备地迅速进行设备的解密。按照本结构,可以安全地传送只能由合法设备解密的数据。
另外,生成可以由1个以上的选定类别树解密的加密密钥数据块即有效密钥块(EKB)并可以由属于各类别树的设备共同使用,同时可以通过使用指示可由哪个类别树处理即解密的EKB类型定义表而提高EKB的生成管理处理的效率。
另外,本发明的程序记录媒体,例如,是以计算机可读的形式向可以执行各种程序代码的通用计算机系统提供计算机程序的媒体。媒体,在其形态上没有特别限定,可以是CD、FD或MO等记录媒体、或网络等传输媒体等。
这种程序记录媒体,是定义了用于在计算机系统上实现规定的计算机程序功能的计算机程序与记录媒体之间在结构上或功能上的协同动作关系的媒体。换句话说,通过该记录媒体将计算机程序安装在计算机系统内,即可在计算机系统上发挥协同动作的作用,并能取得与本发明的其他方面相同的作用效果。
另外,本发明的说明中的所谓系统,是多个装置的逻辑集合结构,并不限定于将各构成装置装在同一个壳体内。
本发明的其他目的、特征及优点,可以从根据后文所述的本发明的实施例及附图进行的更为详细的说明清楚地看出。
附图的简单说明

图1是说明本发明的信息处理系统的结构例的图。
图2是表示可以应用于本发明的信息处理系统的记录再生装置的结构例的框图。
图3是说明本发明的信息处理系统中的各种密钥、数据的加密处理的树形结构图。
图4是表示本发明的信息处理系统中的用于各种密钥、数据的发送的有效密钥块(EKB)的例的图。
图5是表示本发明的信息处理系统中的内容密钥的使用有效密钥块(EKB)的发送例及解密处理例的图。
图6是表示本发明的信息处理系统中的有效密钥块(EKB)的格式例的图。
图7是说明本发明的信息处理系统中的有效密钥块(EKB)的标记的结构例的图。
图8是表示本发明的信息处理系统的将有效密钥块(EKB)与内容密钥、内容一起传送的数据结构例的图。
图9是表示本发明的信息处理系统的将有效密钥块(EKB)与内容密钥、内容一起传送时的设备中的处理例的图。
图10是说明本发明的信息处理系统中的将有效密钥块(EKB)和内容存储在记录媒体上时的对应关系的图。
图11是将本发明的信息处理系统中的发送有效密钥块(EKB)及内容密钥的处理与现有的发送处理进行比较的图。
图12是表示可以应用于本发明的信息处理系统的基于共用密加密方式的认证处理顺序的图。
图13是表示本发明的信息处理系统的将有效密钥块(EKB)与认证密钥一起传送的数据结构及设备中的处理例的图(其1)。
图14是表示本发明的信息处理系统的将有效密钥块(EKB)与认证密钥一起传送的数据结构及设备中的处理例的图(其2)。
图15是表示可以应用于本发明的信息处理系统的基于公开密加密方式的认证处理顺序的图。
图16是表示在本发明的信息处理系统中采用基于公开密加密方式的认证处理而将有效密钥块(EKB)与内容密钥一起传送的处理的图。
图17是表示在本发明的信息处理系统中将有效密钥块(EKB)与加密程序数据一起传送的处理的图。
图18是表示在可以应用于本发明的信息处理系统的内容完整性检查值(ICV)的生成中使用的MAC值生成例的图。
图19是表示本发明的信息处理系统的将有效密钥块(EKB)与ICV生成密钥一起传送的数据结构及设备中的处理例的图(其1)。
图20是表示本发明的信息处理系统的将有效密钥块(EKB)与ICV生成密钥一起传送的数据结构及设备中的处理例的图(其2)。
图21是说明将可以应用于本发明的信息处理系统的内容完整性检查值(ICV)存储在媒体内时的防止复制功能的图。
图22是说明将可以应用于本发明的信息处理系统的内容完整性检查值(ICV)与内容存储媒体分开进行管理的结构的图。
图23是说明本发明的信息处理系统中的层级树形结构的类别分类例的图。
图24是说明本发明的信息处理系统中的简化有效密钥块(EKB)的生成过程的图。
图25是说明本发明的信息处理系统中的有效密钥块(EKB)的生成过程的图。
图26是说明本发明的信息处理系统中的简化有效密钥块(EKB)(例1)的图。
图27是说明本发明的信息处理系统中的简化有效密钥块(EKB)(例2)的图。
图28是说明本发明的信息处理系统中的层级树形结构的类别树管理结构的图。
图29是详细说明本发明的信息处理系统中的层级树形结构的类别树管理结构的图。
图30是说明本发明的信息处理系统中的层级树形结构的类别树管理结构的图。
图31是说明本发明的信息处理系统中的层级树形结构的类别树管理结构中的备用结点的图。
图32是说明本发明的信息处理系统中的层级树形结构的类别树管理结构中的新类别树登录处理顺序的图。
图33是说明本发明的信息处理系统的层级树形结构的类别树管理结构中的新类别树与上位类别树的关系的图。
图34是说明本发明的信息处理系统的层级树形结构的类别树管理结构中使用的子EKB的图。
图35是说明本发明的信息处理系统的层级树形结构的类别树管理结构中的设备撤消处理的图。
图36是说明本发明的信息处理系统的层级树形结构的类别树管理结构中的设备撤消处理顺序的图。
图37是说明本发明的信息处理系统的层级树形结构的类别树管理结构中的设备撤消处理时的更新子EKB的图。
图38是说明本发明的信息处理系统的层级树形结构的类别树管理结构中的类别树撤消处理的图。
图39是说明本发明的信息处理系统的层级树形结构的类别树管理结构中的类别树撤消处理顺序的图。
图40是说明本发明的信息处理系统的层级树形结构的类别树管理结构中的撤消类别树与上位类别树的关系的图。
图41是说明本发明的信息处理系统的层级树形结构的类别树管理结构中的能力设定的图。
图42是说明本发明的信息处理系统的层级树形结构的类别树管理结构中的能力设定的图。
图43是说明由本发明的信息处理系统中的密钥分配中心(KDC)管理的能力管理表结构的图。
图44是基于由本发明的信息处理系统中的密钥分配中心(KDC)管理的能力管理表的EKB生成处理流程图。
图45是说明本发明的信息处理系统中的新类别树登录时的能力通知处理的图。
图46是说明本发明的信息处理系统中的类别树结构的图。
图47是说明本发明的信息处理系统中的EKB请求者、密钥分配中心、顶层类别实体(TLCE)的关系、处理例的图。
图48是说明本发明的信息处理系统中的EKB请求者、密钥分配中心、顶层类别实体(TLCE)的硬件结构例的图。
图49是说明本发明的信息处理系统中的设备所保持的设备结点密钥(DNK)的图。
图50是说明本发明的信息处理系统中的EKB类型定义表的数据结构的图。
图51是表示本发明的信息处理系统中的EKB类型登录处理流程的图。
图52是表示本发明的信息处理系统中的EKB类型取消处理流程的图。
图53是表示本发明的信息处理系统中的树变更通知处理流程的图。
图54是表示本发明的信息处理系统中的EKB类型表请求处理流程的图。
图55是说明本发明的信息处理系统中的子EKB的生成处理的图。
图56是说明本发明的信息处理系统中的子EKB的生成处理的图。
图57是说明本发明的信息处理系统中的生成由子EKB合成后的EKB的处理的图。
图58是说明本发明的信息处理系统中的有撤消设备时的子EKB的生成处理的图。
图59是说明本发明的信息处理系统中的有撤消设备时的生成由子EKB合成后的EKB的处理的图。
图60是说明本发明的信息处理系统中的由子EKB合成后的EKB的数据结构的图。
图61是说明本发明的信息处理系统中的由子EKB合成后的EKB的数据结构的图。
图62是说明本发明的信息处理系统中的有撤消设备时的由子EKB合成后的EKB的数据结构的图。
图63是说明本发明的信息处理系统的数据传送型系统中的撤消处理的图。
图64是说明本发明的信息处理系统中的自记录型系统中的撤消处理的图。
用于实施发明的最佳形态[系统概述]在图1中,示出本发明的信息处理系统可以适用的内容传送系统例。内容的传送侧10,向内容接收侧20所具有的各种可进行内容再生的设备发送加密后的内容或内容密钥。在接收侧20的设备中,将接收到的加密内容或加密内容密钥等解密后取得内容或内容密钥,从而进行图象数据、声音数据的再生或执行各种程序等。在内容的传送侧10和内容接收侧20之间的数据交换,通过因特网等网络或或DVD、CD等可流通的存储媒体执行。
作为内容传送侧10的数据传送装置,有因特网11、卫星广播设备12、电话线路13、DVD、CD之类的存储媒体14等,而作为内容接收侧20的设备,有个人计算机(PC)21、便携式计算机(PD)22、携带式电话机和PDA(Personal Digital Assistants个人数字助理)之类的携带式设备23、DVD、CD播放机等记录再生器24、游戏机终端之类的再生专用器25等。该内容接收侧20的各设备,从网络等通信设施或媒体30取得从内容传送侧10提供的内容。
在图2中,作为图1所示的内容接收侧20的设备的一例,示出记录再生装置100的结构框图。记录再生装置100,具有输入输出I/F(Interface接口)120、MPEG(Moving Picture Experts Group运动图象专家组标准)编码译码器130、备有A/D、D/A(模/数、数/模)转换器141的输入输出I/F(接口)140、加密处理装置150、ROM(Read Only Memory只读存储器)160、CPU(Central ProcessingUnit中央处理单元)170、存储器180、记录媒体195的驱动器190,这些部件,通过总线110相互连接。
输入输出I/F120,接收从外部供给的构成图象、声音、程序等各种内容的数字信号,并将其输出到总线110上,同时接收总线110上的数字信号,并将其向外部输出。MPEG编码译码器130,对通过总线110供给的MPEG编码数据进行MPEG译码,并将其输出到输入输出I/F140,同时对从输入输出I/F140供给的数字信号进行MPEG编码,并将其输出到总线110上。输入输出I/F140,内部装有A/D、D/A转换器141。输入输出I/F140,接收从外部供给的作为内容的模拟信号,通过由A/D、D/A转换器141进行A/D(模/数)转换而作为数字信号输出到MPEG编码译码器130,同时由A/D、D/A转换器141对来自MPEG编码译码器130的数字信号进行D/A(数/模)转换,从而作为模拟信号输出到外部。
加密处理装置150,例如,由单片的LSI(Large Scale IntegratedCircuit大规模集成电路)构成,具有对通过总线110供给的作为内容的数字信号执行加密、解密处理或认证处理并将加密数据、解密数据等输出到总线110上的结构。此外,加密处理装置150,不限于单片LSI,也可以按照将各种软件或硬件组合的结构实现。对于作为由软件构成的处理装置的结构,将在后文中说明。
ROM160,存储由记录再生装置处理的程序数据。CPU170,通过执行存储在ROM160、存储器180内的程序,对MPEG编码译码器130及加密处理装置150等进行控制。存储器180,例如为非易失性存储器,用于存储CPU170执行的程序及CPU170在动作上所需的数据,另外,还存储由设备执行的加密处理中所使用的密钥集。关于密钥集,将在后文中说明。驱动器190,通过驱动可记录再生数字数据的记录媒体195,从记录媒体195读出(再生)数字数据,并输出到总线110上,同时将通过总线110供给的数字数据供给记录媒体195以进行记录。
记录媒体195,例如,可以是DVD、CD等光盘、磁性光盘、磁盘、磁带、或RAM之类的半导体存储器等可存储数字数据的媒体,在本实施形态中,假定为可以相对于驱动器190拆装的结构。但是,记录媒体195,也可以构成为装在记录再生装置100的内部。
另外,图2中示出的加密处理装置150,例如,也可以由一个单片的LSI构成,此外,还可以按照将各种软件、硬件组合的结构实现。
以下,用图3说明图1所示的从内容传送侧10向内容接收侧20的各设备传送加密数据时的各设备中的加密处理密钥的保存结构及数据传送结构。
在图3的最底层示出的数字0~15,是内容接收侧20的各个设备。即图3所示的树形结构的各树叶(leaf)相当于各个设备。
各设备0~15,在制造时、出厂时或在其后,将由分配给图3所示的层级树形结构中的从其自身树叶到树根的结点的密钥(结点密钥)及各树叶的叶密钥构成的密钥集存储在存储器内。在图3的最下层示出的K0000~K1111,是分别分配给各设备0~15的叶密钥,假定从最上层的KR(根密钥)到自最下层起第2个树节(结点)所记入的密钥KR~K111为结点密钥。
在图3所示的树形结构中,例如,设备0,具有叶密钥K0000及结点密钥K000、K00、K0、KR。设备5,具有K0101、K010、K01、K0、KR。设备15,具有K1111、K111、K11、K1、KR。此外,在图3的树中,仅记入了0~15的16个设备,所给出的树形结构,是由4层构成的均衡的左右对称结构,但也可以在树中构成更多的设备,而且树的各部可以具有不同的层数结构。
另外,在图3的树形结构所包含的各设备中,包含着使用各种记录媒体、例如结构为设备嵌入型或可在设备上自由拆装的DVD、CD、MD、闪速存储器等各种类型的设备。进一步,各种应用服务可以共存。图3所示的作为内容或密钥分配结构的层级树形结构,适用于这种不同设备、不同应用共存的结构。
在上述各种设备、应用共存的系统中,例如将图3中用虚线围出的部分、即设备0、1、2、3设定为使用同一记录媒体的一组。例如,对用该虚线围出的组内所包含的设备,可以同时执行将共同的内容加密后从提供者发送、或发送各设备共用的内容密钥、或者将内容费用的支付数据也进行加密并从各设备向提供者或结算机构等输出之类的处理。内容提供者或结算处理机构等与各设备之间进行数据发送接收的机构,执行将图3中用虚线围出的部分、即设备0、1、2、3作为一组集中后发送数据的处理。这样的组,在图3的树中存在着多个。内容提供者或结算处理机构等与各设备之间进行数据发送接收的机构,起着报文数据传送装置的作用。
另外,结点密钥、叶密钥,可以由某一个密钥管理中心统一管理,也可以构成为由对各组进行各种数据发送接收的提供者、结算机构等报文数据传送装置按每个组进行管理。这些结点密钥、叶密钥,例如在密钥泄密等情况下执行更新处理,该更新处理,由密钥管理中心、提供者、结算机构等执行。
从图3可以看出,在该树形结构中,一个组内所包含的3个设备0、1、2、3,具有共用的密钥K00、K0、KR作为结点密钥。利用这种结点密钥共有结构,例如可以只向设备0、1、2、3提供共用的内容密钥。例如,如将共同持有的结点密钥K00本身设定为内容密钥,则可以设定只由设备0、1、2、3共用的内容密钥,而无需执行新密钥的发送。此外,如果将由结点密钥K00对新的内容密钥Kcon进行加密后的值Enc(K00、Kcon)通过网络或存储于记录媒体而发送给设备0、1、2、3,则只能由设备0、1、2、3用由各设备所持有的共用结点密钥K00将密码Enc(K00、Kcon)解密而得到内容密钥Kcon。而Enc(Ka、Kb)表示由Ka将Kb加密后的数据。
另外,当在某时刻t发觉了设备3所具有的密钥K0011、K001、K00、K0、KR被攻击者(黑客)分析而泄露的情况时,在这之后,为了保护由系统(设备0、1、2、3的组)发送接收的数据,必须将设备3从系统切离。为此,必须将结点密钥K001、K00、K0、KR分别更新为新的密钥K(t)001、K(t)00、K(t)0、K(t)R,并将该更新密钥传送到设备0、1、2。这里,K(t)aaa,表示密钥Kaaa的世代(Generation)t的更新密钥。
以下,说明更新密钥的发送处理。密钥的更新,例如,通过将由图4A所示的被称作有效密钥块(EKBEnabling Key Block)的块数据构成的表例如通过网络或存储于记录媒体后供给设备0、1、2执行。此外,有效密钥块(EKB),由用于将新的更新密钥发送给与构成如图3所示的树形结构的各树叶对应的设备的加密密钥构成。有效密钥块(EKB),也称为密钥更新块(KRBKey Renewal Block)。
对图4A所示的有效密钥块(EKB),构成为具有只能由需更新结点密钥的设备更新的数据结构的块数据。图4的例,是以将世代t的更新结点密钥发送给图3所示的树形结构中的设备0、1、2为目的而形成的块数据。从图3可以看出,设备0、设备1,必需将K(t)00、K(t)0、K(t)R作为更新结点密钥,设备2,必需将K(t)001、K(t)00、K(t)0、K(t)R作为更新结点密钥。
如图4A的EKB所示,在EKB中包含着多个加密密钥。最下一层的加密密钥,是Enc(K0010、K(t)001)。这是由设备2具有的叶密钥K0010加密后的更新结点密钥K(t)001,设备2,用本身具有的叶密钥将该加密密钥解密,即可得到K(t)001。此外,利用解密后得到的K(t)001,可以对图4A的下起第2层的加密密钥Enc(K(t)001、K(t)00)进行解密,从而得到更新结点密钥K(t)00。依此类推,可以对图4A的上起第2层的加密密钥Enc(K(t)00、K(t)0)进行解密而得到更新结点密钥K(t)0、对图4A的上起第1层的加密密钥Enc(K(t)0、K(t)R)进行解密而得到K(t)R。另一方面,设备K0000、K0001,在更新对象内不包括结点密钥K000,作为更新结点密钥,只需要K(t)00、K(t)0、K(t)R。设备K0000、K0001,对图4A的上起第3层的加密密钥Enc(K000、K(t)00)进行解密而取得K(t)00,接着,对图4A的上起第2层的加密密钥Enc(K(t)00、K(t)0)进行解密而得到更新结点密钥K(t)0、对图4A的上起第1层的加密密钥Enc(K(t)0、K(t)R)进行解密而得到K(t)R。按照这种方式,设备0、1、2,可以得到更新后的密钥K(t)R。此外,图4A的索引,表示作为解密密钥使用的结点密钥、叶密钥的绝对地址。
当图3所示的树形结构的上位层的结点密钥K(t)0、K(t)R不需要更新而只需对结点密钥K00进行更新处理时,可以用图4(B)的有效密钥块(EKB)将更新结点密钥K(t)00发送给设备0、1、2。
图4(B)所示的EKB,例如可以在发送由特定的组共有的新内容密钥时使用。作为具体例,假定图3中用虚线示出的组内的设备0、1、2、3采用某种记录媒体并需要新的共用内容密钥K(t)con。这时,将用设备0、1、2、3的共用结点密钥K00的更新后的K(t)00对新的共用更新内容密钥K(t)con进行了加密的数据Enc(K(t)、K(t)con)与图4(B)所示的EKB一起发送。按照这种发送方式,可以作为不能由设备4等其他组的设备解密的数据发送。
即,如果设备0、1、2、3用处理EKB而得到的K(t)00对上述密文进行解密,则可以得到在t时刻的内容密钥K(t)con。
在图5中,作为求得在时刻t的内容密钥K(t)con的处理例,示出通过记录媒体接收到用K(t)00将共用内容密钥K(t)con加密后的数据Enc(K(t)、K(t)con)和图4(B)所示的EKB的设备0的处理。即为使由EKB加密后的报文数据为内容密钥K(t)con的例。
如图5所示,设备0,利用存储在记录媒体内的世代;t时刻的EKB及自身预先存储着的结点密钥K(t)00进行与上述相同的EKB处理,即可生成结点密钥K(t)00。进一步,用解密后的更新结点密钥K(t)00将更新内容密钥K(t)con解密,并用仅自身具有的叶密钥K0000将其加密后存储,以备日后使用。
在图6中示出有效密钥块(EKB)的格式例。版本601,是表示有效密钥块(EKB)的版本的标识符。此外,版本,具有识别最新的EKB的功能及表示与内容的对应关系的功能。深度,表示与有效密钥块(EKB)的发送目标设备对应的层级树的层数。数据指针603,是指示有效密钥块(EKB)的数据部位置的指针,标记指针604,是指示标记部的位置的指针,签名指针605,是指示签名位置的指针。
数据部606,例如存储将更新结点密钥加密后的数据。例如,存储与图5所示的更新后的结点密钥有关的各加密密钥等。
标记部607,是表示存储在数据部内的加密后的结点密钥、叶密钥的位置关系的标记。用图7说明赋予该标记的规则。在图7中,示出将以上在图4(A)中说明过的有效密钥块(EKB)作为数据发送的例。这时的数据,如图7中的表(b)所示。将此时的加密密钥所含有的顶层结点的地址称作顶层结点地址。在这种情况下,由于包含着根密钥的更新密钥K(t)R,所以顶层结点地址为KR。这时,例如,最上层的数据Enc(K(t)0、K(t)R)位于图7(a)所出的层级树中给出的位置。这里,下一个数据是Enc(K(t)00、K(t)0),在树上位于前一个数据的左下方位置。当有数据时,将标记设定0,无数据时设定为1。标记,按{左(L)标记、右(R)标记}设定。由于最上层的数据Enc(K(t)0、K(t)R)的左边有数据,所以L标记=0,由于右边无数据,所以R标记=1。接着,对所有的数据设定标记,可以构成图7(c)所示的数据串及标记串。
标记,是为指示数据Enc(Kxxx、Kyyy)位于树形结构的什么位置而设定的。存储在数据部内的密钥数据Enc(Kxxx、Kyyy)...只不过是加密后的密钥的序列数据,所以,可以根据上述的标记判定作为数据存储的加密密钥在树上的位置。也可以不用上述的标记而是用以上在图4(A)中说明过的与加密数据对应的结点索引构成如下的数据结构,例如,0Enc(K(t)0、K(t)root)00Enc(K(t)00、K(t)0)000Enc(K(t)000、K(t)00)但假如采用了这种索引的结构,则将导致数据冗长、数据量增大,因而对通过网络进行的传送等是不利的。与此相反,通过将上述标记用作指示密钥位置的索引数据,能以很少的数据量判定数据的位置。
回到图6进一步说明EKB格式。签名(Signature),是由发送有效数据块(EKB)的例如密钥管理中心、内容提供者、结算机构等执行的电子签名。接收到EKB的设备,通过检验签名确认是否是由合法的有效密钥块(EKB)发送者发送的有效密钥块(EKB)。
在上述的例中,说明了只将内容密钥与EKB一起发送的例,但以下说明将用内容密钥加密后的内容、用内容密钥加密密钥加密后的内容密钥、由EKB加密后的内容密钥加密密钥一起发送的结构。
在图8中示出这种结构。在图8(a)所示的结构中,Enc(Kcon、Content)801,是用内容密钥Kcon将内容(Content)加密后的数据,Enc(KEK、Kcon)802,是用内容密钥加密密钥(KEKKey EncryptionKey密钥加密密钥)将内容密钥(Kcon)加密后的数据,Enc(EKB、KEK)803,是用有效密钥块(EKB)将内容密钥加密密钥KEK加密后的数据。
这里,内容密钥加密密钥KEK,可以是图3所示的结点密钥(K000、K00、...)、或根密钥(KR)本身,也可以是由结点密钥(K000、K00、...)或根密钥(KR)加密后的密钥。
图8(b)示出将多个内容记录在媒体内并都使用相同的Enc(EKB、KEK)805时的结构例,在这种结构中,不是对各数据附加相同的Enc(EKB、KEK),而是可以构成为将指示与Enc(EKB、KEK)连接的连接目的端的数据附加于各数据。
在图9中,示出将内容密钥加密密钥KEK作为图3所示的结点密钥K00的更新后的更新结点密钥K(t)00时的结构例。在这种情况下,在图3的用虚线框围出的组中,例如,当设备3因密钥泄密而被撤消时,通过对组内的其他构件、即设备0、1、2传送图9所示的(a)有效密钥块(EKB)、(b)用内容密钥加密密钥(KEK=K(t)00)将内容密钥(Kcon)加密后的数据、(c)用内容密钥Kcon将内容(Content)加密后的数据,可以使设备0、1、2获得该内容。
在图9的右侧,示出设备0的解密步骤。设备0,首先,通过用其自身保持的叶密钥进行解密处理而从接收到的有效密钥块(EKB)取得内容密钥加密密钥(KEK=K(t)00)。然后,通过用K(t)00进行解密而取得内容密钥Kcon,并进一步用内容密钥Kcon进行内容的解密。通过这些处理,设备0即可使用该内容。对设备1、2,也可以按各自不同的处理步骤通过处理EKB而取得内容密钥加密密钥(KEK=K(t)00),并同样可以使用该内容。
图3所示的其他组的设备4、5、6...,尽管接收到该同样的数据(EKB),但不能用其自身保持的叶密钥、结点密钥取得内容密钥加密密钥(KEK=K(t)00)。同样,被撤消的设备3,也不能用其自身保持的叶密钥、结点密钥取得内容密钥加密密钥(KEK=K(t)00),因此,仅具有合法权利的设备才能解密并使用内容。
如上所述,如采用使用EKB的内容密钥传送方式,则可以减少数据量并能安全地传送仅合法权利者才能解密的加密内容。
另外,有效密钥块(EKB)、内容密钥、加密内容等,可以构成为通过网络安全地传送,但也可以将有效密钥块(EKB)、内容密钥、加密内容存储在DVD、CD等记录媒体内而向用户提供。在这种情况下,如果构成为对存储在记录媒体内的加密内容的解密使用通过将存储在同一记录媒体内的有效密钥块(EKB)解密而取得的内容密钥,则能以简易的结构实现只能由合法权利者利用预先持有的叶密钥、结点密钥才可以使用的加密内容的发送处理、即限定了可使用该内容的用户设备的内容发送。
在图10中,示出将有效密钥块(EKB)与加密内容一起存储在记录媒体内的结构例。在图10所示的例中,将内容C1~C4存储在记录媒体内,另外,还存储使各存储内容与所对应的有效密钥块(EKB)相互对应的数据,进一步还存储版本M的有效密钥块(EKB_M)。例如EKB_1用于生成将内容C1加密后的内容密钥Kconl,例如EKB_2用于生成将内容C2加密后的内容密钥Kcon2。在本例中,由于在记录媒体内存储着版本M的有效密钥块(EKB_M)、且内容C3、C4与有效密钥块(EKB_M)相互对应,所以通过将有效密钥块(EKB_M)解密,即可取得内容C3、C4的内容密钥。由于没有将EKB_1、EKB_2存储在盘上,所以必须通过新的提供手段、例如网络传送、使用记录媒体的传送取得为将各自的内容密钥解密所需的EKB_1、EKB_2。
在图11中,示出使内容密钥在多个设备之间流通时的利用EKB的内容密钥传送与现有的内容密钥传送处理的比较例。上边的(a)是现有结构,下边的(b)是本发明的使用了有效密钥块(EKB)的例。此外,在图11中,Ka(Kb)表示用Ka将Kb加密后的数据。
如(a)所示,在现有技术中,在各设备之间执行认证处理及密钥交换处理(AKEAuthentication and Key Exchange),以确认数据发送接收者的合法性从而可以共用在数据发送的加密处理中使用的对话密钥Kses,并以认证成立为条件进行由对话密钥Kses将内容密钥Kcon加密后发送的处理。
例如,在图11(a)的PC中,用对话密钥对接收到的由对话密钥加密后的内容密钥Kses(Kcon)进行解密,可以取得Kcon,进一步,可以用PC本身具有的保存密钥Kstr将所取得的Kcon加密并存储在自身的存储器内。
在图11(a)中,当内容提供者想以只能由图11(a)的记录设备1101使用数据的形式进行传送时,如在其之间存在着PC、再生装置,则也必须执行如图11(a)所示的认证处理并进行用各自的对话密钥将内容密钥加密后传送的处理。此外,在介于中间的PC、再生装置中,也可以用通过认证处理生成并可共用的对话密钥将加密内容密钥解密而取得内容密钥。
另一方面,在图11(b)的下边示出的使用了有效密钥块(EKB)的例中,从内容提供者传送有效密钥块(EKB)、及用通过对有效密钥块(EKB)的处理而得到的结点密钥或用根密钥将内容密钥Kcon加密后的数据(在图示的例中为Kroot(Kcon)),从而只能由可以处理传送到的EKB的设备通过解密而取得内容密钥Kcon。
因此,例如,如生成只能由图11(b)的右端使用的有效密钥块(EKB)并将该有效密钥块(EKB)与用通过对该EKB的处理而得到的结点密钥或根密钥将内容密钥Kcon加密后的数据一并发送,则存在于中间的PC、再生装置等将不能用其自身具有的叶密钥、结点密钥执行对EKB的处理。因此。可以安全地传送只能由合法设备使用的内容密钥,而无需执行数据发送接收设备之间的认证处理、对话密钥的生成、由对话密钥对内容密钥Kcon的加密处理等处理。
当想要传送也可以由PC、记录再生器使用的内容密钥时,通过生成和传送可以由这些设备处理的有效密钥块(EKB),即可取得共用的内容密钥。
在上述的使用了有效密钥块(EKB)的数据或密钥的传送中,在设备之间传输的有效密钥块(EKB)及内容或内容密钥,总是保持着同样的加密形态,所以,存在着通过从数据传输线路盗取和记录然后再次传输的所谓重放攻击而生成非法复制件的可能性。作为防止这种非法复制的结构,在数据传输设备之间执行与现有技术相同的认证处理及密钥交换处理是有效的手段。这里,说明使用上述的有效密钥块(EKB)向设备传送执行该认证处理及密钥交换处理时使用的认证密钥KaKe从而具有作为安全的保密密钥而共用的认证密钥并按共用密钥方式执行认证处理的结构。即给出一个将由EKB加密的报文数据作为认证密钥的例。
图12中示出采用了共用密钥方式的相互认证方法(ISO/IEC9798-2)。在图12中,作为共用密钥方式采用着DES,但只要是共用密钥方式则也可以是其他形式。在图12中,首先,由B生成64位的随机数Rb,并将Rb及自身的ID即ID(b)发送到A。接收到Rb及ID(b)的A,生成新的64位的随机数Ra,并按Ra、Rb、ID(b)的顺序用密钥Kab以DES的CBS模式将数据加密,然后返送到B。另外,密钥Kab是作为由A和B共用的保密密钥存储在各自的存储元件内的密钥。采用了DES的CBS模式的基于密钥Kab的加密处理,例如,在采用了DES的处理中,对初始值和Ra进行“异或”运算,并由DES加密部用密钥Kab进行加密而生成密文E1,接着,对密文E1和Rb进行“异或”运算,并由DES加密部用密钥Kab进行加密而生成密文E2,进一步,对密文E2和ID(b)进行“异或”运算,并由DES加密部用密钥Kab进行加密而生成密文E3,由密文E1、E2和E3生成发送数据(Token-AB)。
接收到该数据的B,同样用作为共用的保密密钥存储在各自的存储元件内的密钥Kab(认证密钥)对接收数据进行解密。接收数据的解密方法,首先,用认证密钥Kab将密文E1解密而取得随机数Ra。接着,用认证密钥Kab将密文E2解密并对该结果和E1进行“异或”运算而取得Rb。最后,用认证密钥Kab将密文E3解密并对该结果和E2进行“异或”运算而取得ID(b)。在按这种方式取得的Ra、Rb、ID(b)中,检验Rb及ID(b)是否与B发送的一致。当通过了该检验时,B认证A是合法的。
接着,B生成认证后使用的对话密钥(Kses)(生成方法使用随机数)。然后,按Rb、Ra、Kses的顺序,用认证密钥Kab以DES的CBS模式加密,并返送到A。
接收到该数据的A,用认证密钥Kab对接收数据进行解密。接收数据的解密方法,与B的解密处理相同,所以这里将其详细说明省略。在按这种方式取得的Rb、Ra、Kses中,检验Rb及Ra是否与A发送的一致。当通过了该检验时,A认证B是合法的。在进行了双方的相互认证后,将对话密钥Kses作为用于认证后的保密通信的共用密钥使用。
另外,当检验接收数据时,如发现了非法、不一致的情况,则相互认证失败并中断处理。
在上述的认证处理中,A、B共有共用的认证密钥Kab。使用上述的有效密钥块(EKB)向设备传送该认证密钥Kab。
例如,在图12的例中,也可以构成为由A或B中的任何一方生成可由另一方解密的有效密钥块(EKB)并用所生成的有效密钥块(EKB)将认证密钥Kab加密后传送到另一方,或者,也可以构成为由第3方对A、B生成双方都可以使用的有效密钥块(EKB)并用对A、B生成的有效密钥块(EKB)将认证密钥Kab加密后传送。
在图13和图14中,示出用有效密钥块(EKB)向多个设备传送共用的认证密钥KaKe的结构例。图13示出向设备0、1、2、3传送可解密的认证密钥KaKe的例,图14示出将设备0、1、2、3中的设备3撤消后只向设备0、1、2传送可解密的认证密钥KaKe的例。
在图13的例中,生成可以由设备0、1、2、3用各自具有的结点密钥、叶密钥将更新后的结点密钥K(t)00解密的有效密钥块(EKB)并将其与用更新结点密钥K(t)00将认证密钥KaKe加密后的数据(b)一起传送。各设备,如图13的右侧所示,首先,通过处理(解密)EKB而取得更新后的结点密钥K(t)00,然后,可以通过对用所取得的结点密钥K(t)00加密后的认证密钥Enc(K(t)00、KaKe)进行解密而取得认证密钥KaKe。
其他设备4、5、6、7...,尽管也接收同一个有效密钥块(EKB),但不能通过用自身保持的结点密钥、叶密钥处理EBK而取得更新后的结点密钥K(t)00,所以,可以安全地只向合法的设备发送认证密钥。
另一方面,图14的例,是在图3的用虚线框围出的组中例如当设备3因密钥泄密而被撤消(排除)后只对组内的其他构件、即设备0、1、2生成和传送可解密的有效密钥块(EKB)的例。传送图14所示的(a)有效密钥块(EKB)、(b)用结点密钥(K(t)00)将认证密钥(KaKe)加密后的数据。
在图14的右侧,示出解密步骤。首先,设备0、1、2,通过用自身保持的叶密钥或结点密钥进行解密处理而从接收到的有效密钥块(EKB)取得更新结点密钥(K(t)00)。然后,通过用K(t)00进行解密而取得认证密钥KaKe。
图3所示的其他组的设备4、5、6...,尽管也接收同样的数据(EKB),但不能用自身保持的结点密钥、叶密钥取得更新结点密钥(K(t)00)。同样,被撤消的设备3,也不能用其自身保持的叶密钥、结点密钥取得取得更新结点密钥(K(t)00),因此,仅具有合法权利的设备才能将认证密钥解密后使用。
如上所述,如采用使用了EKB的认证密钥传送方式,则可以减少数据量并能安全地传送仅合法权利者才能解密的认证密钥。
以下,说明公开密钥认证和使用了有效密钥块(EKB)的内容密钥的传送处理。首先,用图15说明作为公开密钥认证方式的采用160位长椭圆曲线密码的相互认证方法。在图15中,作为公开密钥认证方式采用着ECC,但只要是公开密钥认证方式则也可以是其他形式。此外,密钥长度也可以不是160位。在图15中,首先,由B生成64位的随机数Rb并发送到A。接收到Rb的A,生成新的64位的随机数Ra及小于素数p的随机数Ak。接着,求得使基点G乘以Ak的点Av=Ak×G后,生成与Ra、Rb、Av(X坐标和Y坐标)对应的电子签名A.Sig,并将其与A的公开密钥证明书一起返送到B。这里,Ra和Rb分别为64位,Av的X坐标和Y坐标分别为160位,所以,生成与总计448位对应的电子签名。
接收到A的公开密钥证明书、Ra、Rb、Av、电子签名A.Sig的B,检验由A发送到的Rb是否与B所生成的一致。其结果是,当一致时,用认证管理机构的公开密钥检验A的公开密钥证明书内的电子签名,并取出A的公开密钥。然后,用所取出的A的公开密钥检验电子签名A.Sig。
下一步,B生成小于素数p的随机数Bk。接着,求得使基点G乘以Bk的点Bv=Bk×G后,生成与Rb、Ra、Bv(X坐标和Y坐标)对应的电子签名B.Sig,并将其与B的公开密钥证明书一起返送到A。
接收到B的公开密钥证明书、Rb、Ra、Bv、电子签名B.Sig的B,检验由B发送到的Ra是否与A所生成的一致。其结果是,当一致时,用认证结构的公开密钥检验B的公开密钥证明书内的电子签名,并取出B的公开密钥。然后,用所取出的B的公开密钥检验电子签名B.Sig。电子签名的检验成功通过后,A认证B是合法的。
当双方的认证成功通过时,B计算Bk×Av(Bk虽为随机数,但因Av是椭圆曲线上的点,所以必须进行椭圆曲线上的点的标量乘法计算),A计算Ak×Bv,并将这些点的X坐标的低位的64位作为对话密钥而用于以后的通信(对共用密钥密码采用64位密钥长度的共用密钥密码时)。当然,也可以从Y坐标生成对话密钥,也可以不是低位的64位。此外,在相互认证后的保密通信中,发送数据不仅要用对话密钥加密,而且有时还需附加电子签名。
当进行电子签名的检验和接收数据的检验时,如发现了非法、不一致的情况,则相互认证失败并中断处理。
在图16中,示出公开密钥认证和使用了有效密钥块(EKB)的内容密钥的传送处理例。首先,在内容提供者与PC之间执行图15中说明过的基于公开密钥方式的认证处理。内容提供者,生成可以由作为内容密钥传送目的端的再生装置、记录媒体所具有的结点密钥、叶密钥解密的EKB,然后用通过与PC之间的认证处理而生成的对话密钥Kses将以更新结点密钥执行了加密的内容密钥E(Kcon)及有效密钥块(EKB)加密后发送到PC。
PC用对话密钥将以对话密钥加密后的[以更新结点密钥执行了加密的内容密钥E(Kcon)及有效密钥块(EKB)]加密后,发送到再生装置、记录媒体。
再生装置、记录媒体,通过用自身保持的结点密钥或叶密钥对[以更新结点密钥执行了加密的内容密钥E(Kcon)及有效密钥块(EKB)]进行解密,即可取得内容密钥Kcon。
按照这种结构,以内容提供者与PC之间的认证为条件发送[以更新结点密钥执行了加密的内容密钥E(Kcon)及有效密钥块(EKB)],所以,例如,即使当发生了结点密钥的泄密时,也仍能可靠地向对方发送数据。
在上述的例中,说明了用有效密钥块(EKB)将内容密钥、认证密钥加密后传送的方法,但也可以构成为用有效密钥块(EKB)传送各种程序代码。即给出一个使由EKB加密的报文数据为程序代码的例。以下,对这种结构进行说明。
在图17中,示出用有效密钥块(EKB)的例如更新结点密钥将程序代码加密并在设备间发送的例。设备1701,将可以用设备1702所具有的结点密钥、叶密钥解密的有效密钥块(EKB)及用有效密钥块(EKB)所包含的更新结点密钥进行了加密处理的程序代码发送到设备1702。设备1702,通过处理接收到的EKB而取得更新结点密钥,进一步用所取得的更新结点密钥执行程序代码的解密,从而得到程序代码。
在图17所示的例中,还示出由设备1702执行程序代码的处理并将处理结果返送到设备1701而设备1701根据该结果继续进行处理的例。
如上所述,通过传送有效密钥块(EKB)及用有效密钥块(EKB)所包含的更新结点密钥进行了加密处理的程序代码,即可将只能由特定的设备解密的程序代码传送到上述图3中示出的特定的设备或组。
以下,说明为防止窜改而生成内容的完整性检查值(ICV)且将其对应地附加于内容并通过ICV的计算判断内容是否被窜改的处理结构。
内容的完整性检查值(ICV),例如用与内容对应的散列函数计算,并按ICV=hash(Kicv、c1、c2、...)进行计算。Kicv是ICV生成密钥。C1、C2是内容的信息,因而使用内容的重要信息的报文认证代码(MACMessage authentication Code)。
在图18中,示出采用了DES加密处理结构的MAC值生成例。如图18的结构所示,将作为对象的报文以8字节为单位进行划分(以下,设划分后的报文为M1、M2、...、MN),首先,对初始值(Initial Value(以下,记为IV))和M1进行“异或”运算(设其结果为I1)。然后,将I1输入到DES加密部,并用密钥(以下,假设为K1)进行加密(设输出为E1)。接着,对E1和M2进行“异或”运算,将其输出I2输入到DES加密部,并用密钥进行加密(输出E2)。以下,反复进行上述操作,直到对所有的报文进行了加密处理。最后输出的EN,用作报文认证代码(MACMessage authentication Code)。
通过将散列函数应用于上述的内容的MAC值及IVC生成密钥,生成内容的完整性检查值(ICV)。将确保不被窜改的例如在生成内容时生成的ICV与根据内容新生成的ICV进行比较,如两个ICV相同,则可以保证内容没有被窜改,如ICV不同,则判定为已被窜改。
以下,说明用上述的有效密钥块发送内容的完整性检查值(ICV)生成密钥即Kicv的结构。即给出一个使由EKB加密的报文数据为内容的完整性检查值(ICV)生成密钥的例。
在图19和图20中,示出当向多个设备发送共用的内容时用有效数据块(EKB)传送用于检验这些内容是否被窜改的完整性检查值生成密钥Kicv的结构例。图19示出向设备0、1、2、3传送可解密的检查值生成密钥Kicv的例,图20示出将设备0、1、2、3中的设备3撤消(排除)后只向设备0、1、2传送可解密的检查值生成密钥Kicv的例。
在图19的例中,生成可以由设备0、1、2、3用各自具有的结点密钥、叶密钥将更新后的结点密钥K(t)00解密的有效密钥块(EKB)并将其与用更新结点密钥K(t)00将检查值生成密钥Kicv加密后的数据(b)一起传送。各设备,如图19的右侧所示,首先,通过处理(解密)EKB而取得更新后的结点密钥K(t)00,然后,可以通过对用所取得的结点密钥K(t)00加密后的认证密钥Enc(K(t)00、Kicv)进行解密而取得检查值生成密钥Kicv。
其他设备4、5、6、7...,尽管也接收相同的有效密钥块(EKB),但不能通过用自身保持的结点密钥、叶密钥处理EBK而取得更新后的结点密钥K(t)00,所以,可以安全地只向合法的设备发送检查值生成密钥。
另一方面,图20的例,是在图3的用虚线框围出的组中例如当设备3因密钥泄密而被撤消(排除)后通过只对组内的其他构件、即设备0、1、2生成和传送可解密的有效密钥块(EKB)的例。传送图20所示的(a)有效密钥块(EKB)、(b)用结点密钥(K(t)00)将检查值生成密钥Kicv加密后的数据。
在图20的右侧,示出解密步骤。首先,设备0、1、2,通过用自身保持的叶密钥或结点密钥进行解密处理而从接收到的有效密钥块(EKB)取得更新结点密钥(K(t)00)。然后,通过用K(t)00进行解密而取得检查值生成密钥Kicv。
图3所示的其他组的设备4、5、6...,尽管也接收同样的数据(EKB),但不能用自身保持的结点密钥、叶密钥取得更新结点密钥(K(t)00)。同样,被撤消的设备3,也不能用其自身保持的叶密钥、结点密钥取得取得更新结点密钥(K(t)00),因此,仅具有合法权利的设备才能将检查值生成密钥Kicv解密后使用。
如上所述,如采用使用EKB传送检查值生成密钥的方式,则可以减少数据量并能安全地传送仅合法权利者才能解密的检查值生成密钥。
通过使用上述的内容完整性检查值(ICV),可以防止对EKB和加密内容的非法复制。例如,如图21所示,假定有一个将内容1和内容2与可取得其各自的内容密钥的有效密钥块(EKB)一起存储着的媒体1并已经将其存储数据直接复制到媒体2。由于EKB及加密内容可以复制,因而可以由可将EKB解密的设备使用。
如图21(b)的所示,构成为还存储着与以合法的方式存储在各媒体内的内容对应附加的完整性检查值(ICV(C1、C2))。(ICV(C1、C2)),表示将散列函数应用于内容1和内容2而计算出的内容的完整性检查值即ICV=hash(Kicv、c1、c2)。在图21(b)的结构中,在媒体1内合法地存储着内容1和内容2,并存储根据内容1和内容2生成的完整性检查值(ICV(C1、C2))。另外,在媒体2内合法地存储着内容1,并存储根据内容1生成的完整性检查值(ICV(C1))。在这种结构中,假如已将存储在媒体1内的{EKB、内容2}复制到媒体2,则当由媒体2生成新的完整性检查值时,所生成的ICV(C1、C2)与媒体内存储着的Kicv(C1)不同,因而可以判定内容已被窜改或通过非法复制而存储了新的内容。在对媒体进行再生的设备中,在再生步骤前执行ICV检查,以判别生成ICV与存储ICV是否一致,当不一致时,不执行再生,从而可以防止对非法复制的内容进行再生。
另外,进一步,为提高安全性,也可以构成为重写内容的完整性检查值(ICV)而根据包含着计数值的数据生成。即,采用按ICV=hash(Kicv、Counter+1、c1、c2)进行计算。其中,计数值Counter+1,设定为每当重写ICV时增1的值。此外,必须是将计数值存储在安全的存储器内的结构。
进一步,在不能将内容的完整性检查值(ICV)与内容存储在同一媒体内的结构中,也可以构成为将内容的完整性检查值(ICV)与内容存储在不同的媒体内。
例如,在将内容存储在只读媒体或通常的MO(磁光盘)等不具备防复制对策的媒体内的情况下,如将完整性检查值(ICV)存储在同一媒体内,则存在着由非法用户重写ICV的可能性,因而有不能确保ICV的安全性的危险。在这种情况下,可以构成为将ICV存储在主机上的安全媒体内并在内容复制控制(例如check-in/check-out、move写入/读取、传送)中使用ICV。从而可以使ICV得到安全的管理并能检查内容是否被窜改。
图22中示出该构成例。在图22中,示出将内容存储在只读媒体或通常的MO等不具备防复制对策的媒体2201内而将与这些内容有关的完整性检查值(ICV)存储在不容许用户自由访问的主机上的安全媒体2202内从而能够防止用户对完整性检查值(ICV)的非法重写的例。作为这种结构,当例如由装有媒体2201的设备对媒体2201执行再生时,如在结构上可以由作为主机的PC、服务器执行ICV的检查从而判定是否可以再生,则能够防止对非法复制内容或窜改内容的再生。
以上说明了将加密密钥构成为根密钥、结点密钥、叶密钥等图3的层级树形结构并将内容密钥、认证密钥、ICV生成密钥、或程序代码、数据等加密后与有效密钥块(EKB)一起传送的结构,以下,说明通过将定义着结点密钥等的层级树形结构按每个设备的类别分类而以更高的效率执行密钥更新处理、加密密钥传送、数据传送的结构。
图23中示出层级树形结构的类别分类的一例。在图23中,在层级树形结构的最上层,设定根密钥Kroot2301,在其下面的中间层,设定结点密钥2302、在最下层,设定叶密钥2303。各设备具有各自的叶密钥及从叶密钥到根密钥的一系列的结点密钥、根密钥。
这里,作为一例,将从最上层起第M层的结点设定为类别结点2304。即,将各第M层结点作为特定类别的设备设定结点。将第M层的1个结点作为顶点,并将其下面的第M+1层及以下的结点、树叶设定为与该类别所包含的设备有关的结点、树叶。
例如,在图23的第M层的1个结点2305上设定类别[存储器标签(商标)],并将连接在该结点以下的结点、树叶设定为包含使用存储器标签的各种设备的类别专用结点或树叶。即,将结点2305以下的结点和树叶定义为由存储器标签的类别定义的设备的关联结点和树叶的集合。
进一步,可以将比第M层低几层的下位层设定为子类别结点2306。例如,如图所示,在类别[存储器标签]结点2305以下2层的结点中,作为使用了存储器标签的设备类别中所包含的子类别结点,设定一个[再生专用器]结点。另外,在作为子类别结点的再生专用器结点2306以下,可以设定再生专用器的类别中所包含的具有音乐再生功能的电话结点2307,进一步,在其下位层,可以设定具有音乐再生功能的电话类别中所包含的[PHS]结点2308及[携带式电话]结点2309。
进一步,类别、子类别,不仅可以按设备的种类设定,而且还可以按例如由某制造厂商、内容提供者、结算机构等独自管理的结点、即处理单位、管辖单位、或提供服务单位等任意的单位(以下,统称为实体)进行设定。例如,如将1个类别结点设定为游戏机制造厂商销售的游戏机XYZ专用的顶点结点,则可以在制造厂商销售的游戏机XYZ中存储该顶点结点以下的下层的结点密钥、叶密钥后进行销售,在销售后,可以在加密内容的传送、或各种密钥的传送、更新处理中通过生成由该顶点结点密钥以下的结点密钥、叶密钥构成的有效密钥块(EKB)而进行传送,并只对顶点结点以下的设备传送可使用的数据。
如上所述,通过将1个结点作为顶点并构成为将其以下的结点设定为由该顶点结点定义的类别或子类别的关联结点,可以构成为使管理类别层或子类别层的1个顶点结点的制造厂商、内容提供者等独自生成将该结点作为顶点的有效密钥块(EKB)而传送到属于顶点结点及其以下的结点的设备,并可以执行密钥更新,而对不属于顶点结点的其他类别的结点所对应的设备完全没有影响。
在如上所述的例如图3的树形结构中,当向设备(树叶)地址发送密钥、例如内容密钥时,生成和提供可以用作为密钥发送目的端的设备所具有的叶密钥、结点密钥解密的有效密钥块(EKB)。例如,在图24(a)中示出的树形结构中,当向构成树叶的设备a、g、j发送密钥、例如内容密钥时,生成和传送可以由a、g、j各结点解密的有效密钥块(EKB)。
例如,考虑用更新根密钥K(t)root对内容密钥Kcon进行加密处理并将其与EKB一起传送的情况。在这种情况下,设备a、g、j,分别用图24(b)所示的叶密钥和结点密钥对EKB执行处理而取得K(t)root,并用所取得的更新根密钥K(t)root执行内容密钥Kcon的解密处理。从而取得内容。
这时提供的有效密钥块(EKB)的结构,如图25所示。图25中示出的有效密钥块(EKB),按照以上在图6中说明过的有效密钥块(EKB)的格式构成,因而具有数据(加密密钥)及与该数据对应的标记,标记,如以上参照图7所述,在左(L)、右(R)各方向上,如有数据则为0,如无数据则为1。
接收到有效密钥块(EKB)的设备,根据有效密钥块(EKB)的加密密钥和标记,依次执行加密密钥的解密处理并取得上位结点的更新密钥。如图25所示,有效密钥块(EKB),随着从根到叶的层数(深度)增加,其数据量增大。层数(深度),随设备(树叶)数而增加,因此,当作为密钥传送目的端的设备数增多时,EKB的数据量将进一步增大。
以下,说明可以减少上述有效密钥块(EKB)的数据量的结构。图26是表示根据密钥传送设备简化有效密钥块(EKB)的结构例。
与图25一样,假定向构成树叶的设备a、g、j发送密钥、例如内容密钥。如图26(a)所示,构成仅包括密钥传送设备的树。在这种情况下,根据图24(b)所示的结构,构成图26(b)的树形结构作为新的树形结构。从Kroot到Kj可以没有任何分支而只存在一个树枝,为从Kroot到Ka和Kg,只在K0构成分支点,因此构成2分支结构的图26(a)的树形结构。
如图26(a)所示,生成作为结点仅具有K0的简化了的树。用于传送更新密钥的有效密钥块(EKB),根据该简化了的树生成。图26(a)中示出的树,是选择构成以可对有效密钥块(EKB)进行解密的末端结点或树叶为最下层的2分支型树的路径而将不需要的结点省略从而重新构成的重构层级树。用于传送更新密钥的有效密钥块(EKB),根据仅与该重构层级树的结点或树叶对应的密钥构成。
以上在图25中说明过的有效密钥块(EKB),存储着将从各树叶a、g、j到Kroot的所有密钥加密后的数据,但简化EKB,存储仅与构成简化树的结点有关的加密数据。如图26(b)所示,标记具有3位结构。第2和第3位的含义与图25的例相同,如左(L)、右(R)各方向上有数据则为0,如无数据则为1。第1位,是用于指示在EKB内是否存储着加密密钥的位,当存储着数据时设定为1,当无数据时设定0。
通过数据通信网或存储于记录媒体而提供给设备(树叶)的有效密钥块(EKB),如与图25所示的结构相比,则如图26(b)所示可以大幅度地减少数据量。接收到图26(b)所示的有效密钥块(EKB)的设备,通过仅对在标记的第1位存储着1的部分的数据依次进行解密,即可实现对规定的加密密钥的解密。例如,设备a,通过用叶密钥Ka将加密数据Enc(Ka、K(t)0)解密而取得结点密钥K(t)0,并通过用结点密钥K(t)0将Enc(K(t)0、K(t)root)解密而取得K(t)root。设备j,通过用叶密钥Kj将加密数据Enc(Kj、K(t)root)解密而取得K(t)root。
如上所述,通过构成只由传送目的端的设备构成简化了的新的树并只用所构成的树中包含的树叶和结点的密钥生成有效密钥块(EKB),可以生成数据量少的有效密钥块(EKB),因而能以高的效率执行有效密钥块(EKB)的数据传送。
以下,说明可以通过进一步简化根据图26中示出的简化了的树生成的有效密钥块(EKB)而减少数据量并能进行高效率的处理的结构。
用图26说明过的结构,是选择构成以可对有效密钥块(EKB)进行解密的末端结点或树叶为最下层的2分支型树的路径而将不需要的结点省略从而重新构成的重构层级树。用于传送更新密钥的有效密钥块(EKB),只根据与该重构层级树的结点或树叶对应的密钥构成。
图26(a)所示的重构层级树,可以由树叶a、g、j取得更新根密钥K(t)root,所以,可以传送图26(b)所示的有效密钥块(EKB)。在图26(b)的有效密钥块(EKB)的处理中,树叶j,只进行一次对Enc(Kj、K(t)root)的解密即可取得根密钥K(t)root。但是,树叶a、g,则需先对Enc(Ka、K(t)0)、或Enc(Kg、K(t)0)进行解密而取得K(t)0,然后再进一步执行对Enc(K(t)0、K(t)root)的解密处理方可取得根密钥K(t)root。即,树叶a、g,需进行2次解密处理。
图26(a)的简化了的重构层级树,当使结点K0为对其下位的树叶a、g的管理结点而执行独自的管理时,例如当作为后文所述的子根结点而执行对下位树叶的管理时,在确认树叶a、g已经取得更新密钥的意义上是有效的,但当结点K0不执行对下位树叶的管理时,或虽然执行但允许从上位结点传送更新密钥时,也可以通过将结点K0的密钥省略而使图26(a)所示的重构层级树得到进一步的简化并生成和传送有效密钥块(EKB)。
在图27中,示出这种有效密钥块(EKB)的结构。与图26一样,假定向构成树叶的设备a、g、j发送密钥、例如内容密钥。如图27(a)所示,构成将各树叶a、g、j与根Kroot直接连接的树。
如图27(a)所示,生成将结点K0从图26(a)所示的重构层级树省略的简化了的树。用于传送更新密钥的有效密钥块(EKB),根据该简化了的树生成。图27(a)中示出的树,是仅由将可对有效密钥块(EKB)进行解密的树叶与根直接连接的路径重新构成的重构层级树。用于传送更新密钥的有效密钥块(EKB),仅根据与该重构层级树的树叶对应的密钥构成。
另外,图27(a)的树,是将以末端为树叶的结构例,但例如当由最上位的结点向多个中位、下位结点传送密钥时,也可以根据将最上位的结点与中位、下位结点直接连接的树生成有效密钥块(EKB)并执行密钥的传送。按照这种方式,重构层级树,具有将构成简化树的顶点结点与构成简化树的末端结点或树叶直接连接的结构。在这种简化了的树中,从顶点结点的分支并不只限于2个,也可以根据传送结点或树叶的数构成具有3个以上的多个分支的树。
以上在图25中说明过的有效密钥块(EKB),存储着将从各树叶a、g、j到Kroot的所有密钥加密后的数据,在图26中说明过的有效密钥块(EKB),是存储了各树叶a、g、j的叶密钥、作为a、g的共用结点的K0以及根密钥的结构,但基于图27(a)所示的简化层级树的有效密钥块(EKB),如图27(b)所示,由于省略了结点k0,所以是数据量进一步减少的有效密钥块(EKB)。
图27(b)的有效密钥块(EKB),与图26(b)的有效密钥块(EKB)一样,具有3位结构的标记。第2位和第3位,与图26中说明过的一样,如左(L)、右(R)各方向上有数据则为0,如无数据则为1。第1位,是用于指示在EKB内是否存储着加密密钥的位,当存储着数据时设定为1,当无数据时设定0。
在图27(b)的有效密钥块(EKB)中,各树叶a、g、j只通过进行一次对Enc(Ka、K(t)root)、或Enc(Kg、K(t)root)的解密处理,即可取得根密钥K(t)root。
根据这种具有将简化了的重构层级树的最上位结点与构成树的末端结点或树叶直接连接的结构的树生成的有效密钥块(EKB),如图27(b)所示,仅根据与重构层级树的顶点结点及末端结点或树叶对应的密钥构成。
如图26或图27中说明过的有效密钥块(EKB)所示,通过构成只包括传送目的端的设备的简化了的新的树形结构并只用所构成的树中包含的树叶或与树叶共用的结点的密钥生成有效密钥块(EKB),可以生成数据量少的有效密钥块(EKB),因而能以高的效率执行有效密钥块(EKB)的数据传送。
另外,简化后的层级树形结构,能非常有效地用于后文所述的以设定为子树的类别树为单位的EKB管理结构。类别树,是从构成作为密钥传送结构的树形结构的结点或树叶选择出的多个结点或树叶的集合块。类别树,是根据设备的种类设定的集合,或设定为设备提供厂商、内容提供者、结算机构等具有某种共同点的处理单位、管辖单位、或提供服务单位等各种形态的集合。在1个类别树中,汇集着按某种共同的类别分类的设备,例如,通过由多个类别树的顶点结点(子根)重新构成与上述同样的简化了的树并生成EKB,可以生成和传送可由属于所选定的类别树的设备解密的简化了的有效密钥块(EKB)。在后文中详细说明以类别树为单位的管理结构。
另外,这种有效密钥块(EKB),可以是存储在光盘、DVD等信息记录媒体内的结构。例如,对包含由上述加密密钥数据构成的数据部及作为加密密钥数据的层级树形结构的位置识别数据的标记部的有效密钥块(EKB),还可以构成为与由更新结点密钥加密后的内容等报文数据一起存储在上述信息记录媒体内并向各设备提供该信息记录媒体。设备,根据标记部的识别数据依次抽出有效密钥块(EKB)中所包含的加密密钥数据后进行解密,并取得为将内容解密所需的密钥,从而可以进行内容的使用。当然,也可以将有效密钥块(EKB)构成为通过因特网等网络传送。
以下,说明以作为多个结点或树叶的集合的块对构成作为密钥传送结构的树形结构的结点或树叶进行管理的结构。此外,以下将作为多个结点或树叶的集合的块称作类别树。类别树,是根据设备的种类设定的集合,或设定为设备提供厂商、内容提供者、结算机构之类的管理单位等具有某种共同点的处理单位、管辖单位、或提供服务单位等各种形态的集合。
用图28对类别树进行说明。图28(a)是说明树的以类别树为单位的管理结构的图。在图中,1个类别树,用三角形表示,例如,在1个类别树2701内,包含着多个结点。图28(b)表示1个类别树内的结点结构。1个类别树,由将1个结点作为顶点的2分支型树构成。以下,将类别树的顶点2702称作子根。
树的末端,如(c)所示,由树叶、即设备构成。设备,属于由将多个设备作为树叶并具有子根即顶点结点2702的树构成的任何一个类别树。
从图28(a)可知,类别树,具有层级结构。该层级结构,用图29进行说明。
图29(a)是用于以简化的形式说明层级结构的图,在Kroot以下几层的层上构成类别树A01~Ann,在类别树A01~Ann的下位,设定类别树B01~Bnk,进一步,在其下位设定类别树C01~Cnq。各类别树,如图29(b)、(c)所示,具有由多层结点、树叶构成的树状。
例如,类别树Bnk的结构,如(b)所示,将子根2811作为顶点结点,并具有直到末端结点2812的多个结点。该类别树,具有标识符Bnk,通过由类别树Bnk独自执行对与类别树Bnk内的结点对应的结点密钥的管理,执行对将末端结点2812设定为顶点的下位(子)类别树的管理。而从另一方面看,类别树Bnk,由将子根2811作为末端结点的上位(父)类别树Ann进行管理。
类别树Cn3的结构,如(c)所示,将子根2851作为顶点结点,并具有直到各设备即末端结点2852、此时为树叶的多个结点、树叶。该类别树,具有标识符Cn3,通过由类别树Cn3独自执行对与类别树Cn3内的结点、树叶对应的结点密钥、叶密钥的管理,对与末端结点2852对应的树叶(设备)执行管理。而从另一方面看,类别树Cn3,由将子根2851作为末端结点的上位(父)类别树Bn2进行管理。所谓各类别树的密钥管理,例如指的是密钥更新处理、撤消处理等,这些处理将在后文中详细说明。
在作为最下层类别树的树叶的设备中,存储着位于从设备所属的类别树的叶密钥到其自身所属的类别树的顶点结点即子根结点的路径上的各结点的结点密钥及叶密钥。例如,末端结点2852的设备,存储从末端结点(树叶)2852到子根结点2851的各个密钥。
用图30进一步说明类别树的结构。类别树,可以具有由各种层数构成的树形结构。层数、即深度(depth),可以根据与由类别树管理的末端结点对应的下位(子)类别树的个数、或作为树叶的设备数设定。
当具体实施如图30(a)所示的上下类别树结构时,具有(b)所示的形态。根树,是具有根密钥的最上层的树。在根树的末端结点上设定多个作为下位类别树的类别树A、B、C,进一步,设定作为类别树C的下位类别树的类别树D。类别树2901,保留其末端结点的一个以上的结点作为备用结点2950,并当自己管理的类别树增加时,通过将备用结点2950作为顶点而进一步增设具有多层树形结构的新类别树C′,可以增加管理末端结点2970并对管理末端结点2970追加增加后的下位类别树。
进一步用图31说明备用结点。类别树A、3011,具有其所管理的下位类别树B、C、D,并具有1个备用结点3021。当类别树想要进一步增加作为管理对象的下位类别树时,在备用结点3021上设定其自己管理的下位类别树A′、3012,并可以在下位类别树A′、3012的末端结点上进一步设定作为管理对象的下位类别树F、G。其自己管理的下位类别树A′、3012,也可以将其末端结点的至少一个设定为备用结点3022,从而可以进一步设定下位类别树A″3013并可以进一步增加管理类别树。在下位类别树A″3013的末端结点上也可以保留一个以上的备用结点。通过采用这种备用结点保留结构,可以无限制地增加某个类别树管理的下位类别树。此外,备用类别树,不只限于一个末端结点,也可以是构成多个的结构。
在各类别树中,以类别树为单位构成有效密钥块(EKB),并以类别树为单位执行密钥更新、撤消处理等。如图31所示,可以对多个类别树A、A′、A″设定各类别树的各自的有效密钥块(EKB),但也可以由管理各类别树A、A′、A″的例如某个设备制造厂商对其进行统一的管理。
以下,说明新类别树的登录处理。登录处理顺序示于图32。根据图32的顺序进行说明。在树形结构中新追加的新(子)类别树(N-En),向上位(父)类别树(P-En)发出新登录请求。另外,各类别树,具有基于公开密钥方式的公开密钥,当新类别树发出登录请求时将自己的公开密钥发送到上位类别树(P-En)。
接收到登录请求的上位类别树(P-En),将接收到的新(子)类别树(N-En)的公开密钥传送到证明书管理结构(CACertificationAuthority)并接收附加了CA的签名的新(子)类别树(N-En)的公开密钥。上述的步骤,按照将上位类别树(P-En)与新(子)类别树(N-En)的相互认证步骤进行。
当通过上述处理完成了新登录请求类别树的认证时,上位类别树(P-En),允许登录新(子)类别树(N-En),并将新(子)类别树(N-En)的结点密钥发送到新(子)类别树(N-En)。该结点密钥,是上位类别树(P-En)的末端结点的一个结点密钥、且与新(子)类别树(N-En)的顶点结点、即子根密钥相对应。
当该结点密钥的发送结束时,新(子)类别树(N-En),构成新(子)类别树(N-En)的树形结构,在所构成的树的顶点设定接收到的顶点结点的子根密钥,并设定各结点、树叶的密钥,从而生成类别树内的有效密钥块(EKB)。将1个类别树内的有效密钥块(EKB)称作子EKB。
另一方面,上位类别树(P-En),通过追加新(子)类别树(N-En),生成追加了变为有效状态的末端结点的上位类别树(P-En)内的子EKB。
新(子)类别树(N-En),当生成由新(子)类别树(N-En)内的结点密钥、叶密钥构成的子EKB时,将其发送到上位类别树(P-En)。
从新(子)类别树(N-En)接收到子EKB的上位类别树(P-En),将接收到的子EKB及上位类别树(P-En)的更新后的子EKB发送到密钥分配中心(KDCKey Distribute Center)。
密钥分配中心(KDC),可以根据所有类别树的子EKB生成各种形态的EKB、即只能由特定类别树或设备解密的EKB。通过将这种设定了可解密的类别树或设备的EKB例如提供给内容提供者并由内容提供者根据EKB将内容密钥加密后通过网络或以存储于记录媒体的形式提供,可以提供只能由特定的设备使用的内容。
另外,新类别树的子EKB对密钥分配中心(KDC)的登录处理,不限于将子EKB通过上位类别树依次传送的执行方法,也可以构成为不通过上位类别树而从新登录类别树直接对密钥分配中心(KDC)执行登录处理。
用图33说明上位类别树与对上位类别树新追加的下位类别树之间的对应关系。通过将上位类别树的末端结点中的一个结点3201作为新追加类别树的顶点结点而提供给下位类别树,可以将下位类别树追加为上位类别树管理下的类别树。所谓上位类别树管理下的类别树,将在后文中详细说明,其含义为在结构上可以由上位类别树执行下位类别树的撤消(排除)处理。
如图33所示,当对上位类别树设定新的类别树时,将上位类别树的树叶即末端结点的一个结点3201与新追加类别树的顶点结点3202设定为相同的结点。即,将作为上位结点的一个树叶的一个末端结点设定为新追加类别树的子根。通过按这种方式进行设定,可以使新追加类别树在整个树形结构中成为一个有效的类别树。
图34中示出当设定新追加类别树时由上位类别树生成的更新EKB的例。图34,示出当具有(a)所示的结构、即具有已有效地存在着的末端结点(结点000)3301及末端结点(结点001)3302,并将新类别树追加末端结点(结点100)3303赋予了这里新追加的类别树时由上位类别树生成的子EKB的例。
子EKB,具有如图34(b)所示的结构。即具有由各有效存在的末端结点密钥加密后的上位结点密钥、由该上位结点密钥加密后的更上一位的上位结点密钥、...进一步向上位一直进行到子根密钥的结构。按照这种结构生成子EKB。各类别树,与图34(b)所示一样,具有包含着由有效的末端结点密钥或叶密钥加密后的上位结点密钥、由该上位结点密钥进一步将上一位的结点密钥加密并依次向高位深入进行直到子根的加密数据的EKB,并对其进行管理。
以下,说明以类别树为单位对密钥传送树形结构进行管理的结构中的设备或类别树的撤消(排除)处理。在以上的图3、4中,说明了只能由从整个树形结构特定的设备解密而已被撤消的设备不能解密的有效密钥块(EKB)的传送处理。在图3、4中说明过的撤消处理,是从整个树中将作为特定树叶的设备撤消的处理,但在由树的类别树管理的结构中,可以按每个类别树执行撤消处理。
用图35及其后的图说明类别树管理下的树形结构中的撤消处理。图35是说明构成树的类别树中由管理着最下层的类别树即各个设备的类别树进行的设备撤消处理的图。
图35(a)示出由类别树管理的密钥传送树形结构。在树的最上位设定根结点,在其几层以下构成类别树A01~Ann,并在其下位层构成类别树B01~Bnk,进一步,在其下位层构成类别树C1~Cn。最下层的类别树,其末端结点(树叶)为各个设备,例如记录再生器、专用再生器等。
这里,撤消处理,由各类别树独自执行。例如,在最下层的类别树C1~Cn中,执行树叶的设备的撤消处理。在图35(b)中,示出作为最下层类别树之一的类别树Cn、3430的树形结构。类别树Cn、3430,为具有顶点结点3431且在作为末端结点的树叶上具有多个设备的结构。
假如在该作为末端结点的树叶中有作为撤消对象的设备、例如设备3432,则类别树Cn、3430,生成由独自更新后的类别树Cn内的结点密钥、叶密钥构成的有效密钥块(子EKB)。该有效密钥块,是不能由撤消设备3432解密而只能由构成其他树叶的设备解密的加密密钥所构成的密钥块。类别树Cn的管理者,生成为将其更新后的子EKB。具体地说,将构成从子根连接到撤消设备3432的路径上的各结点3431、3434、3435的结点密钥更新,并将构成为只能用撤消设备3432以外的树叶设备解密的加密密钥的块作为更新子EKB。这种处理,相当于在以上的图3、4中说明过的撤消处理结构中将根密钥置换为作为类别树的顶点密钥的子根密钥的处理。
通过上述的由类别树Cn、3430进行的撤消处理更新后的有效密钥块(子EKB),传送到上位类别树。在这种情况下,上位类别树是类别树Bnk、3420,是具有类别树Cn、3430的顶点结点3431作为末端结点的类别树。
类别树Bnk、3420,当从下位类别树Cn、3430接收到有效密钥块(子EKB)时,将与该密钥块中所包含的类别树Cn、3430的顶点结点3431对应的类别树Bnk、3420的末端结点3431设定为由下位类别树Cn、3430更新后的密钥,并执行类别树Bnk、3420自身的子EKB的更新处理。在图35(c)中示出类别树Bnk、3420的树形结构。在类别树Bnk、3420中,作为更新对象的结点密钥,是图35(c)中的从子根3421到构成含有撤消设备的类别树的末端结点3431的路径上的结点密钥。即,将构成与已发送了更新子EKB的类别树的结点3431连接的路径上的各结点3421、3424、3425的结点密钥作为更新对象。将该各结点的结点密钥更新后生成类别树Bnk、3420的新的更新子EKB。
进一步,将由类别树Bnk、3420更新后的有效密钥块(子EKB)发送到上位类别树。在这种情况下,上位类别树是类别树Ann、3410,是具有类别树Bnk、3420的顶点结点3421作为末端结点的类别树。
类别树Ann、3410,当从下位类别树Bnk、3420接收到有效密钥块(子EKB)时,将与该密钥块中所包含的类别树Bnk、3420的顶点结点3421对应的类别树Ann、3410的末端结点3421设定为由下位类别树Bnk、3420更新后的密钥,并执行类别树Ann、3410自身的子EKB的更新处理。在图35(d)中示出类别树Ann、3410的树形结构。在类别树Ann、3410中,作为更新对象的结点密钥,是图35(d)中的构成从子根3411连接到已发送了更新子EKB的类别树的结点3421的路径上的各结点3411、3414、3415的结点密钥。将该各结点的结点密钥更新后生成类别树Ann、3410的新的更新子EKB。
在上位类别树中依次执行上述的处理,并执行到图30(b)中所述的根类别树。通过该一系列的处理,即可完成设备的撤消处理。此外,由各类别树更新后的子EKB,最终发送到密钥分配中心(KDC)保存。密钥分配中心(KDC),根据所有类别树的更新子EKB生成各种EKB。更新EKB,为不能由已被撤消的设备解密的加密密钥块。
在图36中示出设备的撤消处理的顺序图。根据图36的顺序图说明处理步骤。首先,位于树形结构最下层的设备管理类别树(D-En),进行因将设备管理类别树(D-En)内的作为撤消对象的树叶排除所需的密钥更新,并生成设备管理类别树(D-En)的新的子EKB(D)。更新子EKB(D),发送到上位类别树。接收到更新子EKB(D)的上位(父)类别树(P1-En),生成将与更新子EKB(D)的更新顶点结点对应的末端结点密钥更新并将从该末端结点到子根的路径上的结点密钥更新后的更新子EKB(P1)。在上位类别树中依次执行上述的处理,最终将更新后的所有子EKB存储于密钥分配中心(KDC)管理。
在图37中示出由上位类别树在设备的撤消处理中进行更新处理而生成的有效密钥块(EKB)的例。
图37是说明在(a)所示的结构中由从包含撤消设备的下位类别树接收到更新子EKB的上位类别树生成的EKB的例的图。包含撤消设备的下位类别树的顶点结点,对应于上位类别树的末端结点(结点100)3601。
上位类别树,通过将存在于从上位类别树的子根到末端结点(结点100)3601的路径上的结点密钥更新而生成新的更新子EKB。更新子EKB,具有如图37(b)所示的结构。更新后的密钥,用下边加底线并加[′]的形式表示。如上所述,将从更新后的末端结点到子根的路径上的结点密钥更新并构成该类别树的更新子EKB。
以下,说明撤消对象为类别树时的处理、即类别树的撤消处理。
图38(a)示出由类别树管理的密钥传送树形结构。在树的最上位设定根结点,在其几层以下构成类别树A01~Ann,并在其下位层构成类别树B01~Bnk,进一步,在其下位层构成类别树C1~Cn。最下层的类别树,其末端结点(树叶)为各个设备,例如记录再生器、专用再生器等。
这里,说明对类别树Cn、3730执行撤消处理的情况。最下层的类别树Cn、3730,如图38(b)所示,为具有顶点结点3731且在作为末端结点的树叶上具有多个设备的结构。
通过撤消类别树Cn、3730,可以将属于类别树Cn、3730的所有设备从树形结构中同时撤消。类别树Cn、3730的撤消处理,由作为类别树Cn、3730的上位类别树的类别树Bnk、3720执行。类别树Bnk、3720,是具有类别树Cn、3730的顶点结点3731作为末端结点的类别树。
当类别树Bnk、3720执行下位类别树Cn、3730的撤消处理时,将与类别树Cn、3730的顶点结点3731对应的类别树Bnk、3720的末端结点3731更新,进一步,进行从该撤消类别树3730到类别树Bnk、3720的子根的路径上的结点密钥的更新并生成有效密钥块,从而生成更新子EKB。作为更新对象的结点密钥,是图38(c)中的从子根3721到构成撤消类别树的顶点结点的末端结点3731的路径上的结点密钥。即,将结点3721、3724、3725、3731的结点密钥作为更新对象。将该各结点的结点密钥更新后生成类别树Bnk、3720的新的更新子EKB。
或者,当类别树Bnk、3720执行下位类别树Cn、3730的撤消处理时,也可以不将与类别树Cn、3730的顶点结点3731对应的类别树Bnk、3720的末端结点3731更新,而是将从该撤消类别树3730到类别树Bnk、3720的子根的路径上的除末端结点3731以外的结点密钥更新并生成有效密钥块从而生成更新子EKB。
进一步,将由类别树Bnk、3720更新后的有效密钥块(子EKB)发送到上位类别树。在这种情况下,上位类别树是类别树Ann、3710,是具有类别树Bnk、3720的顶点结点3721作为末端结点的类别树。
类别树Ann、3710,当从下位类别树Bnk、3720接收到有效密钥块(子EKB)时,将与该密钥块中所包含的类别树Bnk、3720的顶点结点3721对应的类别树Ann、3710的末端结点3721设定为由下位类别树Bnk、3720更新后的密钥,并执行类别树Ann、3710自身的子EKB的更新处理。在图38(d)中示出类别树Ann、3710的树形结构。在类别树Ann、3710中,作为更新对象的结点密钥,是图38(d)中的构成从子根3711连接到已发送了更新子EKB的类别树的结点3721的路径上的各结点3711、3714、3715的结点密钥。将该各结点的结点密钥更新后生成类别树Ann、3710的新的更新子EKB。
在上位类别树中依次执行上述的处理,并执行到图30(b)中所述的根类别树。通过该一系列的处理,即可完成类别树的撤消处理。此外,由各类别树更新后的子EKB,最终发送到密钥分配中心(KDC)保存。密钥分配中心(KDC),根据所有类别树的更新子EKB生成各种EKB。更新EKB,为不能由属于已被撤消的类别树的设备解密的加密密钥块。
在图39中示出类别树的撤消处理的顺序图。根据图39的顺序图说明处理步骤。首先,想要撤消类别树的类别树管理类别树(E-En),进行为将类别树管理类别树(E-En)内的作为撤消对象的末端结点排除所需的密钥更新,并生成类别树管理类别树(E-En)的新的子EKB(E)。更新子EKB(E),发送到上位类别树。接收到更新子EKB(E)的上位(父)类别树(P1-En),生成将与更新子EKB(E)的更新顶点结点对应的末端结点密钥更新并将从该末端结点到子根的路径上的结点密钥更新后的更新子EKB(P1)。在上位类别树中依次执行上述的处理,最终将更新后的所有子EKB存储于密钥分配中心(KDC)管理。密钥分配中心(KDC),根据所有类别树的更新子EKB生成各种EKB。更新EKB,为不能由属于已被撤消的类别树的设备解密的加密密钥块。
在图40中示出被撤消的下位类别树与执行了撤消的上位类别树之间的对应关系。上位类别树的末端结点3901,通过类别树的撤消而被更新,并通过将存在于上位类别树的树中的从末端结点3901到子根的路径上的结点密钥更新而生成新的子EKB。其结果是,使被撤消的下位类别树的顶点结点3902的结点密钥与上位类别树的末端结点3901的结点密钥不一致。撤消类别树后由密钥分配中心(KDC)生成的EKB,根据由上位类别树更新后的末端结点3901的密钥生成,所以,与不具备该更新密钥的下位类别树的树叶对应的设备,就不可能将由密钥分配中心(KDC)生成的EKB解密。
另外,在上述说明中,说明了管理设备的最下层类别树的撤消处理,但位于树的各中间层的类别树管理类别树也可以由其上位类别树按照与上述相同的步骤撤消。通过撤消中间层的类别树管理类别树,可以将属于被撤消的类别树管理类别树的下位的所有的多个类别树及设备同时撤消。
如上所述,通过以类别树为单位执行撤消处理,与以一个一个的设备为单位执行的撤消处理相比,可以通过简易的步骤执行撤消处理。

以下,说明在以类别树为单位的密钥传送树形结构中对各实体允许的能力Capability)进行管理并根据能力进行类别树传送的处理结构。这里所谓的能力,用于表示设备是能够处理哪种类型的内容或程序的设备、例如可以对特定的压缩声音数据进行译码、容许特定的声音再生方式、或可以处理特定的图象处理程序等,亦即是设备的数据处理能力的定义信息。
在图41中示出定义了能力的类别树结构例。根结点位于密钥传送树形结构的顶点,在下层连接着多个类别树并将各结点配置成具有2分支的树形结构。这里,例如,类别树4001,定义为具有允许声音再生方式A、B、C的任何一种方式的能力的类别树。具体地说,例如当传送由声音压缩程序A、B、C的方式压缩后的音乐数据时,属于在类别树4001以下构成的类别树的设备都可以对压缩数据进行解压缩处理。
同样,类别树4002,定义为具有可以处理声音再生方式B或C的能力的类别树、类别树4004,定义为具有可以处理声音再生方式B的能力的类别树、类别树4005,定义为具有可以处理声音再生方式C的能力的类别树。
另一方面,类别树4021,定义为具有允许图象再生方式p、q、r的能力的类别树,类别树4022,定义为具有方式p、q的图象再生方式的能力的类别树,类别树4023,定义为具有可进行方式p的图象再生的能力的类别树。
上述各类别树的能力信息,由密钥分配中心(KDC)管理。密钥分配中心(KDC),例如当某个内容提供者想要将以特定的压缩程序压缩后的音乐数据传送到各种设备时,可以根据各类别树的能力信息生成只能由可以再生该特定的压缩程序的设备解密的有效密钥块(EKB)。提供内容的内容提供者,传送由根据各类别树的能力信息生成有效密钥块(EKB)加密后的内容密钥,并将用该内容密钥加密后的压缩声音数据提供给各设备。按照这种结构,能可靠地只向可以处理数据的设备提供特定的处理程序。
另外,在图41中示出对所有类别树定义了能力信息的结构,但也不一定如图41的结构所示必需对所有类别树定义能力信息,例如,如图42所示,也可以构成为,只对设备所属的最下层的类别树定义能力信息,由密钥分配中心(KDC)管理属于最下层类别树的设备的能力,并根据对最下层类别树定义的能力信息生成只能由可以进行内容提供着所要求的处理的设备解密的有效密钥块(EKB)。在图42中,构成为对在末端结点设定了设备的类别树4101~4105定义了能力并由密钥分配中心(KDC)管理这些类别树的能力。例如,在声音再生上可以进行方式B的处理、在图象再生上可以进行方式r的处理的设备,属于类别树4101。在声音再生上可以进行方式A的处理、在图象再生上可以进行方式q的处理的设备属于类别树4102等。
在图43中示出由密钥分配中心(KDC)管理的能力管理表的结构例。能力管理表,具有如图43(a)所示的数据结构。即,包括作为识别各类别树的标识符的类别树ID、指示对该类别树定义的能力的能力表,该能力表,如图43(b)所示,构成为对能否进行各种形态的数据处理设定各为1位的[1]或
,例如,如能处理声音数据再生处理方式(A)则为[1]、如不能处理则为
、如能处理声音数据再生处理方式(B)则为[1]、如不能处理则为
...等。此外,该能力信息的设定方法不限于这种方式,只要能够识别类别树所管理的设备的能力,也可以采用其他结构。
当在能力管理表中还包含各类别树的子EKB或将子EKB存储在另外的数据库内时,应存储子EKB的识别信息,进一步,还应存储各类别树的子根结点识别数据。
密钥分配中心(KDC),根据能力管理表生成例如只能由可以再生特定内容的设备解密的有效密钥块(EKB)。用图44说明根据能力信息生成有效密钥块的处理。
首先,在步骤S4301中,密钥分配中心(KDC),从能力管理表选择具有所指定的能力的类别树。具体地说,例如,当内容提供者想要传送可以根据声音数据再生处理方式A进行再生的数据时,从图43(a)的能力表选择例如声音数据再生处理(方式A)的项目设定为[1]的类别树。
接着,在步骤S4302中,生成由所选定的类别树构成的选择类别树ID的表。然后,在步骤S4303中,在由选择类别树ID构成的树中选择所需的路径(密钥传送树形结构的路径)。在步骤S4304中,判断选择类别树ID的表中所包含的所有路经的选择是否已经完成,如尚未完成则在步骤S4303中继续选择路径。当选择了多个类别树时,这意味着需进行依次选择各个路径的处理。
当选择类别树ID的表中所包含的所有路经的选择已完成时,进入步骤S4305,构成仅包括所选定的路径和选择类别树的密钥传送树形结构。
接着,在步骤S4306中,对在步骤S4305中生成的树形结构的结点密钥进行更新处理,从而生成更新结点密钥。进一步,从能力管理表取出构成树的选择类别树的子EKB,并根据子EKB和在步骤S4306中生成的更新结点密钥生成只能由选择类别树的设备解密的有效密钥块(EKB)。按这种方式生成的有效密钥块(EKB),是只能由具有特定能力的设备使用、即解密的有效密钥块(EKB)。如果由该有效密钥块(EKB)例如将内容密钥加密并由该内容密钥将根据特定程序压缩的内容加密后提供给设备,则只能由所选定的可进行特定处理的设备使用该内容。
如上所述,密钥分配中心(KDC),根据能力管理管理表生成只能由例如可以再生特定内容的设备解密的有效密钥块(EKB)。因此,当登录新的类别树时,必须预先取得该新登录的类别树的能力。以下,用图45说明新类别树登录过程中的能力通知处理。
图45是示出将新类别树加入到密钥传送树形结构内时的能力通知处理顺序的图。
在树形结构中新追加的新(子)类别树(N-En),向上位(父)类别树(P-En)发出新登录请求。另外,各类别树,具有基于公开密钥方式的公开密钥,当新类别树发出登录请求时将自己的公开密钥发送到上位类别树(P-En)。
接收到登录请求的上位类别树(P-En),将接收到的新(子)类别树(N-En)的公开密钥传送到证明书管理结构(CACertificationAuthority)并接收附加了CA的签名的新(子)类别树(N-En)的公开密钥。上述的步骤,按照将上位类别树(P-En)与新(子)类别树(N-En)的相互认证步骤进行。
当通过上述处理完成了新登录请求类别树的认证时,上位类别树(P-En),允许登录新(子)类别树(N-En),并将新(子)类别树(N-En)的结点密钥发送到新(子)类别树(N-En)。该结点密钥,是上位类别树(P-En)的末端结点的一个结点密钥、且与新(子)类别树(N-En)的顶点结点、即子根密钥相对应。
当该结点密钥的发送结束时,新(子)类别树(N-En),构成新(子)类别树(N-En)的树形结构,在所构成的树的顶点设定接收到的顶点结点的子根密钥,并设定各结点、树叶的密钥,从而生成类别树内的有效密钥块(EKB)。另一方面,上位类别树(P-En),通过追加新(子)类别树(N-En),也生成追加了变为有效状态的末端结点的上位类别树(P-En)内的子EKB。
新(子)类别树(N-En),生成由新(子)类别树(N-En)内的结点密钥、叶密钥构成的子EKB后,将其发送到上位类别树(P-En),进一步,将与由自己的类别树管理的设备有关的能力信息通知上位类别树。
从新(子)类别树(N-En)接收到子EKB的上位类别树(P-En),将接收到的子EKB、能力信息、及上位类别树(P-En)的更新后的子EKB发送到密钥分配中心(KDCKey Distribute Center)。
密钥分配中心(KDC),将接收到的类别树的子EKB及能力信息登录在图43中所述的能力管理表内,并将能力管理表更新。密钥分配中心(KDC),可以根据更新后的能力管理表生成各种形态的EKB、即只能由具有特定能力的类别树或设备解密的EKB。
以下,说明在生成只能由一个以上的选定的类别树解密的EKB并提供可以由属于各类别树的设备共同使用的EKB的结构中使用了指示可以由哪个类别树处理即解密的EKB类型定义表的结构。
在本结构中,密钥分配中心(KDC),从内容提供者等请求EKB的使用、发送处理的EKB请求者接收EKB发送请求。在EKB发送请求中包含着指示由EKB类型定义表定义的EKB类型的EKB类型识别号码,密钥分配中心(KDC),根据EKB类型识别号码生成可以由一个或多个类别树处理(解密)的EKB。
当生成EKB时,密钥分配中心(KDC),根据与EKB类型定义表的EKB类型识别号码对应设定的各类别树的顶点结点标识符,请求作为类别树管理者的顶层类别实体(TLCETop Level Category Entity)生成子EKB。并在接收到各TLCE生成的子EKB后执行多个子EKB的合成处理,从而生成可以由多个类别树处理的EKB。
在本结构中,内容提供者(CP)等EKB的发送请求者,可以根据EKB类型定义表选择特定的类别树。内容提供者(CP)等EKB的发送请求者,参照EKB类型定义表后请求密钥分配中心(KDC)发送可以由特定类别树处理的EKB。密钥分配中心(KDC),根据EKB发送请求,向所选定的类别树的管理实体发出子EKB发送请求,各选定的类别树的管理实体,生成只能由管理实体的没有被撤消的合法设备处理的子EKB并将其发送到密钥分配中心(KDC)。密钥分配中心(KDC),将一个以上的子EKB组合后生成EKB的发送请求者所请求的只能由选择类别树处理的EKB并将其提供给EKB发送请求者。EKB发送请求者,从密钥分配中心(KDC)接收EKB并执行只能由通过处理EKB取得的密钥解密的加密密钥、或加密内容的传送。
首先,对下文所述的构成实体进行简要的说明。
密钥分配中心(KDCKey Distribute Center)发送有效密钥块(EKB),并管理与所发送的EKB有关的EKB类型定义表。
顶层类别实体(TLCETop Level Category Entity)是管理某个类别树的实体。例如,记录设备的格式保持器。对类别树进行管理,生成可以由所管理的类别树内的设备处理(解密)的EKB即子EKB,并提供给密钥分配中心(KDC)。
EKB请求者(EKB requester)例如,执行电子内容传送(ECDElectronic ContentDistribution)服务的内容提供者(CP)等向用户设备提供图象、声音、程序等各种内容的实体,或者是记录媒体的格式保持器,用可以通过EKB处理取得的密钥对提供内容的加密密钥等进行设定从而提供内容、媒体。向密钥分配中心(KDC)发出此时使用的EKB的发送请求。
例如,内容提供者(CP),用密钥分配中心(KDC)生成的EKB的根密钥(Root Key)将自己的内容加密后传送。记录媒体的格式保持器,在制造记录媒体时将EKB写入后发送,并用该EKB的根密钥(RootKey)将所记录的内容加密。
(TLCE和基于类别的树形管理)
以上说明了基于类别的树形管理,这里用图46说明顶层类别实体(TLCETop Level Category Entity)与类别树的关系。
首先,如上所述,类别,是具有相同性质的设备的集合,具体地说,是由同一厂商制造的设备或使用同一编码格式的设备等。在图46中,A、B、C、D表示各类别树。
在图46中,最上层的根树,例如为8层结构(结点层数),在根树的最下层设定类别树的顶点结点。多个类别树,可以具有上位、下位的关系。在图46中,类别树C,对应于类别树D的上位。
将与最上层的根树直接连接的类别树称作顶层类别树。并将管理顶层类别树的实体称作顶层类别实体(TLCE)。在图46中,A、B、C是顶层类别树,而管理这些树的实体则为顶层类别实体(TLCE)。顶层类别实体(TLCE),其基本的责任是管理自身的树以下的所有类别树。就是说,图46中的管理树C的TLCE,也与树C一样执行对树D的管理。如在D以下还有下层的类别树,则也对该下层类别树进行管理。但是,也可以设置例如管理下层的类别树D的类别实体(Sub Category Entity子类别实体),并将其责任和权利委托给该实体。
使用内容的记录再生装置等各设备,由顶层类别实体(TLCE)分配给某个树的树叶,并具有从该树叶到根的路径上的若干个结点的密钥。将一个设备具有的一组结点密钥称作设备结点密钥(DNKDeviceNode Key)。各设备具有几个密钥(DNK中包含几个密钥),由顶层类别实体(TLCE)决定。
在图47中示出简要说明密钥分配中心(KDC)、顶层类别实体(TLCE)、EKB请求者等各实体之间的对应处理的图。
密钥分配中心(KDC)4511,处于采用树形结构的EKB传送系统的管理实体4510的位置。在管理实体4510内,还设有对EKB执行签名处理的认证机构(CA)4512。
密钥分配中心(KDC)4511,执行顶层类别树等子树的密钥管理,并执行后文所述的EKB类型定义表的管理及EKB的生成。认证机构(CA)4512,对密钥分配中心(KDC)4511生成的EKB执行签名,并发送与签名后的保密密钥对应的公开密钥,作为用于检验签名的密钥。
对密钥分配中心(KDC)4511发出EKB的发送请求的是EKB请求者4520。EKB请求者,例如可以是提供存储了内容的CD、DVD等记录媒体的与内容存储媒体有关的内容提供者(CP)、执行电子内容传送的内容提供者(CP)、提供与闪速存储器之类的存储系统的格式有关的许可证的存储系统许可证发放者等。
这些EKB请求者4520,以与内容、媒体、许可证格式相对应的方式提供作为密钥设定的EKB,当使用其分别提供的媒体、内容、许可证时可以通过EKB处理而取得所需的密钥。EKB由密钥分配中心(KDC)4511根据从EKB请求者4520向密钥分配中心(KDC)4511发出的EKB发送请求生成。
EKB请求者4520,将向密钥分配中心(KDC)4511发出发送请求后作为结果接收到的EKB提供给媒体制造者4540、设备制造者4550,并可以进行将存储了EKB的媒体或设备供给用户的处理。这些EKB,按照可以由例如一个或多个类别树处理的EKB形式生成。
在本系统中,生成和使用可以由多个、例如2个或3个以上的类别树共同处理的EKB、或只能由唯一的类别树处理的EKB等各种类型的EKB。如将上述各种类型的EKB列成表格,则可以得到EKB类型定义表。EKB类型定义表,由密钥分配中心(KDC)管理。关于EKB类型定义表,将在后文中详细说明。EKB请求者4520,通过向密钥分配中心(KDC)4511发出EKB类型定义表的请求,即可得到该表,此外,当表中的数据变更时,由密钥分配中心(KDC)4511通知EKB请求者4520。
如上所述,顶层类别实体(TLCE)4530,是与根树连接的类别树的管理实体,对子树的密钥、及管理设备ID与存储在各设备内的用于EKB处理的结点密钥集即设备结点密钥(DNK)之间的对应表进行管理。进一步,还对制造与在其管理下的设备对应的设备的设备制造者4550执行用于设备存储的设备结点密钥(DNK)的生成处理和提供处理。
当密钥分配中心(KDC)4511从EKB请求者4520接收EKB发送请求时,密钥分配中心(KDC)4511,根据发送请求生成EKB。当所生成的EKB例如是可以由2个顶层类别树处理的EKB时,对该2个顶层类别实体(TLCE)4530发出子EKB发送请求,接收到子EKB发送请求的顶层类别实体(TLCE)4530,生成可以由各类别树内的合法设备取得根密钥的子EKB,并将其发送到密钥分配中心(KDC)4511。密钥分配中心(KDC)4511,根据从TLCE接收到的一个或多个子EKB生成EKB。根据子EKB生成EKB的处理,将进一步在后文中说明。
顶层类别实体(TLCE)4530,与EKB请求者4520一样,通过向密钥分配中心(KDC)4511发出EKB类型定义表的请求,即可得到该表。
顶层类别实体(TLCE)4530,还可以向密钥分配中心(KDC)4511发出从EKB类型定义表删除与自身的树有关的定义类型的请求。例如,请求将作为与其他的类别树共用的EKB定义的EKB类型从表中删除。顶层类别实体(TLCE)4530,进一步,当自身管理的树有变更时,将其通知密钥分配中心(KDC)4511。在后文中将用流程图说明这些处理。
设备制造者4550,分成两种类型的设备制造者。一种是制造将设备结点密钥(DNK)及EKB两个数据存储在所制造的设备内的DNKE设备制造者4551,另一种是制造只将设备结点密钥(DNK)存储在设备内的DNK设备制造者4552。
在图48中以框图的形式示出图47所示的密钥分配中心(KDC)、EKB请求者、顶层类别实体(TLCE)的各构成例。密钥分配中心(KDC)构成为EKB发送信息处理装置、EKB请求者构成为EKB请求信息处理装置、顶层类别实体(TLCE)构成为类别树管理信息处理装置,基本上,构成为可进行加密通信的数据处理装置。
构成各实体的信息处理装置,具有分别与其他实体进行相互认证并当进行数据通信时执行所有的加密处理的加密处理部。加密处理部内的控制部,是执行与认证处理、加密/解密处理等所有加密处理有关的控制的控制部。内部存储器,存储相互认证处理、加密、解密处理等各种处理中所需的密钥数据、识别数据等。识别数据,例如用于与其他实体的相互认证处理等。
加密/解密部,当使用存储在内部存储器内的密钥数据等进行数据传输通信时执行认证处理、加密处理、解密处理、数据的检验、随机数的产生等处理。
但是,在作为EKB请求者的信息处理装置中,也可以是不在自身装置内执行密钥的生成处理的结构。在这种情况下,可以将生成密钥所需的构成要素、例如随机数生成装置省去。具体地说,由自身生成包含在EKB内的根密钥并请求密钥分配中心生成包含所生成的根密钥的EKB的作为EKB请求者的信息处理装置,必需设有用于生成根密钥的装置,但是,本身并不生成包含在EKB内的根密钥而是向密钥分配中心请求生成包含由密钥分配中心(KDC)生成的根密钥的EKB的作为EKB请求者的信息处理装置,可以将随机数生成装置等用于密钥生成处理的构成要素省去。
加密处理部的内部存储器,由于保持着加密密钥等重要信息,所以必须是很难从外部进行非法读出的结构。因此,加密处理部,构成为具有很难从外部访问的结构的例如由半导体芯片构成的防窜改存储器。
各实体,除上述加密处理功能外,还备有中央运算处理装置(CPU)Central Processing Unit)、RAM(Random Access Memory随机存取存储器)、ROM(Read Only Memory只读存储器)、输入部、显示部、数据库I/F、数据库。
中央运算处理装置(CPU)Central Processing Unit)、RAM(RandomAccess Memory随机存取存储器)、ROM(Read Only Memory只读存储器),是具有作为各实体本体的控制系统的功能的构成部。RAM,作为CPU的各种处理用的主存储器使用,并由CPU将其用作处理用工作区。ROM,存储CPU中的起动程序等。
在构成各实体的信息处理装置的数据库或其他存储装置内,存储由各实体分别管理的数据,例如,如果是密钥分配中心(KDC),则存储与所发送的EKB有关的管理数据、进一步还存储EKB类型定义表等,此外,在顶层类别实体(TLCE)的数据库内,存储管理设备与设备结点密钥(DNK)的对应关系等属于类别树的设备的管理数据,在EKB请求者的数据库内,存储使提供内容与用于内容的EKB之间建立对应关系的管理数据、及对内容的提供目的端设备的管理数据等。此外,EKB类型定义表,最好是在构成EKB请求者、顶层类别实体(TLCE)的信息处理装置内都以可参照的形式存储的结构。或者,也可以是存放在由密钥分配中心(KDC)管理的Web(万维网)站点的可由EKB请求者、顶层类别实体(TLCE)访问的结构。
如上所述,设备,为进行EKB处理(解密)而使用设备结点密钥(DNKDevice Node Key)。用图49说明一个设备所具有的设备结点密钥(DNK)。图49所示的树,表示一个类别树,最下层为与设备对应的树叶,例如,相当于由顶层类别实体(TLCE)管理的树。在上层还连接着根树(例如为8层结构)。这里,如图49所示,设备具有从设备到上层的路径上的结点密钥。将这些密钥集以设备结点密钥(DNK)的形式保存,并用设备结点密钥(DNK)进行EKB的解密。
基本上,一个设备,以不重叠的方式分配给树叶。作为例外,例如在将PC软件等软件对应地附加于树叶时,有时也将一种版本的软件版本分配给所有的每个树叶。这也由TLCE决定。就是说,将设备分配给哪个树叶并具有哪个结点密钥,由TLCE决定。
顶层类别实体(TLCE),有时也是设备本身的提供者(制造厂商),可以对所制造的设备预先存储设备结点密钥(DNK)并提供(销售)给用户。即,对记录再生装置等设备,可以预先将某特定类别树的结点密钥的集合作为设备结点密钥(DNK)存储在存储器内并提供(销售)给用户。
(EKB类型定义表)关于以类别为单位的EKB传送,已如上所述,但当生成和发送由多个类别树共用的EKB、即可以由属于不同类别树的设备处理的EKB时,有时存在着若干问题。
例如,在作为某种可重写的媒体(记录媒体)、例如携带式闪速存储器的格式的许可证领有者存在着两个不同的公司A和B而作为媒体(携带式闪速存储器)的许可证发放者的制造厂商为顶层类别实体、且A公司管理的类别树和B公司管理的类别树位于其下层的结构中,由于A公司和B公司的设备相互间具有互换性并能共同使用各种发送内容,所以由密钥分配中心(KDC)生成和发送可以由属于A公司的类别树和B公司的类别树这两种类别树的设备处理(解密)的EKB。
在这种情况下,如属于A公司管理的类别树的一个设备的设备结点密钥(DNK)发生了泄密,则可以由A公司、B公司的相互间的设备通过利用该设备结点密钥(DNK)而使用的所有发送内容将有可能被非法使用。为防止这种非法使用,必须进行作为撤消处理的EKB更新处理,但在这种情况下,由于存在着可以由A公司和B公司两个公司共用的EKB,所以必须对A公司和B公司两个公司的2个类别树都进行EKB更新处理,而不是只对A公司的类别树进行撤消处理。
如上所述,当生成和提供由多个类别树共用的EKB时,不仅要进行一个类别树内的撤消处理、EKB更新处理,而且必须在使用共用的EKB的所有其他类别树中进行因撤消而引起的EKB更新处理。对B公司来说,这将使其受到与自己管理的设备不同的其他管理类别树的影响,因而将使其处理负荷增加。
为解决上述问题,应构成为使管理各个类别的类别实体具有发送可由多个类别共同使用的EKB的许可权限。就是说,由于存在着互换性,所以仅当可以容许因属于其他类别的设备的异常而对自己的类别内的设备造成的危险时,才允许发送具有互换性的EKB,而当不能容许所造成的危险时,不允许发送和使用可以共同使用的EKB。
如果按这种方式进行处理,则可以生成和使用可以由多个、例如2个或3个以上的类别树共同处理的EKB、或只能由唯一的类别树处理的EKB等各种类型的EKB。如将上述各种类型的EKB列成表格,则可以得到EKB类型定义表。在图50中示出EKB类型定义表的例。EKB类型定义表,由密钥分配中心(KDC)存储在记录媒体内并加以管理。此外,对EKB请求者、TLCE,也可以根据需要提供或使其为可访问的状态。
如图50所示,EKB类型定义表,具有「EKB类型识别号码」、「结点」、「说明」各栏目,「EKB类型识别号码」,是识别EKB类型定义表中所列出的各种形态的EKB的编号,如识别号码不同,则可处理该EKB的类别树或其组合具有不同的结构。
「结点」一栏,是记录可以应用EKB的类别树的顶点结点ID的栏目。例如,EKB类型识别号码为1的EKB,记录MS(MemoryStick存储器标签)的类别树的顶点结点ID。而EKB类型识别号码为3的EKB,记录MS(MemoryStick存储器标签)的类别树的顶点结点ID及PHS的类别树的顶点结点ID。
「说明」一栏,是记录EKB类型定义表中所列出的各种形态的EKB的说明的栏目,例如,EKB类型识别号码为1的EKB,指示该EKB用于MS(MemoryStick存储器标签)。而EKB类型识别号码为3的EKB,指示该EKB可以由MS(MemoryStick存储器标签)及PHS的类别树的设备共同使用。
图50所示的EKB类型定义表,由密钥分配中心(KDC)管理。传送用可通过EKB处理取得的密钥加密后的加密泥钥或加密内容等加密数据的实体、例如内容提供者,参照图50所示的EKB类型定义表,选择可以由包含着作为内容提供对象的设备的类别树处理的EKB类型,并通过指定其EKB类型识别号码而请求密钥分配中心(KDC)进行EKB生成处理。
但是,在各种类型的EKB对EKB类型定义表的登录处理中,必需得到作为登录对象的类别树的顶层类别实体(TLCE)的准许。例如,如果类别树A的顶层类别实体TLCE-A拒绝发送与其他类别共用的EKB,则不能将类别树A与其他类别树共用的EKB类型登录在EKB类型定义表内。
例如,如类别树A的TLCE-A、类别树B的TLCE-B、类别树C的TLCE-A都准许发送共用的EKB,则可以将可由这3个类别树处理的共用的EKB类型登录在EKB类型定义表内,然后,例如内容提供者可以通过指定指示该登录类型的EKB类型识别号码而请求密钥分配中心(KDC)进行EKB生成处理。
就是说,为将新的EKB类型登录在EKB类型定义表内并定义与该EKB类型对应的EKB类型识别号码,必须进行下述的处理。
(1)由对与想要定义的EKB类型识别号码对应的作为EKB应用对象的类别进行管理的所有TLCE向密钥分配中心(KDC)发送EKB类型登录请求。
(2)密钥分配中心(KDC),在确认已由可以处理作为所请求的登录对象的EKB的一个以上的类别树的所有顶层类别实体(TLCE)发送了EKB类型登录请求后,定义新的EKB类型识别号码,并将其加入到EKB类型定义表内。
(3)密钥分配中心(KDC),由于已知EKB类型定义表内进行了变更,所以向所有TLCE及EKB请求者发送EKB类型定义表变更通知。
另外,通过将EKB类型定义表发送到所有TLCE及EKB请求者或存放在Web(万维网)站点等而向所有TLCE及EKB请求者公开。因此,TLCE及EKB请求者,总是可以取得登录在最新的EKB类型定义表内的EKB类型信息。
(EKB类型登录处理)在图51中示出用于说明将新的EKB类型登录在EKB类型定义表内时由密钥分配中心(KDC)执行的处理的处理流程。首先,密钥分配中心(KDC),接收从请求登录新的EKB类型的TLCE发来的EKB类型登录请求(S101)。在来自TLCE发来的EKB类型登录请求中,包含着可以共同使用请求登录的EKB的类型数。密钥分配中心(KDC),判定是否从与数量和请求内的类别数一致的类别对应的TLCE接收到同样的EKB类型登录请求(S102),并以从与数量和请求内的类别数一致的类别对应的TLCE接收到请求为条件而根据请求将新的EKB类型登录在EKB类型定义表内,并进行表的更新处理、表的更新通知处理(S103)。更新通知处理,对TLCE及EKB请求者进行。
如上所述,密钥分配中心(KDC),在将新的EKB类型标识符登录到EKB类型定义表的处理中,以得到对作为可以处理预定登录的EKB的类别树选定的一个以上的类别树进行管理的所有类别实体的准许为条件进行登录。
另外,在上述处理中,在密钥分配中心(KDC)与TLCE、EKB请求者之间的通信中根据需要进行相互认证处理、发送数据的加密处理。此外,也可以构成为还进行其他的报文加密处理、数字签名生成、检验处理等。另外,当根据公开密钥加密方式执行认证或加密通信时,应在各实体之间预先进行相互保持公开密钥的步骤。
(EKB类型取消处理)例如,当必须撤消属于某个类别的所有设备时,顶层类别实体(TLCE),必须向密钥分配中心(KDC)发出将以该类别为要素的EKB类型取消的请求。此外,顶层类别实体(TLCE),还可以为停止某项服务等而向KDC发出使当前登录着的EKB类型取消的请求。
根据图52的处理流程图说明该EKB类型取消处理的流程。密钥分配中心(KDC),从请求将EKB类型取消的顶层类别实体(TLCE)接收EKB类别取消请求(S201)。当从TLCE接收到EKB类别取消请求时,密钥分配中心(KDC),确认对作为该请求取消的EKB类型的要素的类别进行管理的TLCE为该请求的发送者,然后,将EKB类型定义表内的与由取消请求指定的类型对应的EKB类型识别号码取消并更新EKB类型定义表,接着进行表的更新通知处理(S202)。更新通知处理,对TLCE及EKB请求者进行。
如上所述,密钥分配中心(KDC),在将登录在EKB类型定义表内的EKB类型标识符取消的处理中,以对作为可以处理预定取消的EKB类型的类别树选定的一个以上的类别树进行管理的至少一个类别实体的取消请求为条件进行取消处理。在这种情况下,无需得到其他类别实体的准许。
另外,在上述处理中,在密钥分配中心(KDC)与TLCE、EKB请求者之间的通信中根据需要进行相互认证处理、发送数据的加密处理。此外,也可以构成为还进行其他的报文加密处理、数字签名生成、检验处理等。另外,当根据公开密钥加密方式执行认证或加密通信时,应在各实体之间预先进行相互保持公开密钥的步骤。
(EKB类型定义表变更通知处理)例如,当在某类别树内由管理该类别树的TLCE进行设备撤消(设备排除)或进行将某设备存储的DNK更换为新的DNK的设备结点密钥(DNK)更新等改变树内的状态的处理时,必须将进行了这些处理的情况通知使用着以这些设备为对象的EKB的EKB请求者或相关的TLCE。
其原因是,如进行了设备撤消而不发送通知从而使内容提供者还继续使用老的EKB将内容加密后传送,则被撤消的设备也可以用老的EKB进行EKB处理(解密),因而有可能使内容继续被非法利用。此外,当进行了设备结点密钥(DNK)的更新时,通常是将被更换了的老的DNK舍弃,并使设备具有新的DNK,但如内容提供者不使用与该新的DNK对应的EKB,则具有新的DNK的设备就不能对EKB进行处理(解密),因而将不能对内容进行访问。
为避免上述弊病,当发生了以下的变更时,即*作为设备撤消等的结果,使EKB的标记部分发生了变更时,*作为设备结点密钥(DNK)的更新等的结果,使至少一个设备具有的DNK值发生了变更时,TLCE必须向密钥分配中心(KDC)发送树变更通知(Tree ChangeNotification)。在树变更通知(Tree Change Notification)中,包含着指示要求变更的已登录在EKB类型定义表内的EKB类型识别号码的信息、指示变更发生在与EKB类型识别号码对应登录着的哪个类别内的信息、指示进行了撤消、DNK更新的哪种变更的信息。
根据图53的处理流程图说明EKB类型定义表变更通知处理的流程。密钥分配中心(KDC),从TLCE接收树变更通知(S301)。当接收到来自TLCE的树变更通知时,密钥分配中心(KDC),从EKB类型定义表抽出在要素中具有该类别的EKB类型识别号码,并将包含着在哪个EKB类型识别号码中发生了怎样的变化(例如,撤消、或DNK更新(更换))的信息的EKB类型定义表变更通知发送到所有的TLCE及EKB请求者。在与EKB请求者之间的通信中根据需要进行相互认证处理、发送数据的加密处理。此外,也可以构成为还进行其他的报文加密处理、数字签名生成、检验处理等。另外,当根据公开密钥加密方式执行认证或加密通信时,应在各实体之间预先进行相互保持公开密钥的步骤。
(EKB类型定义表请求)顶层类别实体(TLCE)及TLCE以外的子类别实体(SCE)、或内容提供者等EKB请求者,为了得到最新版的EKB类型定义表,可以请求密钥分配中心(KDC)发送EKB类型定义表。密钥分配中心(KDC),响应该请求而将最新版的EKB类型定义表返送给请求者。
根据图54的处理流程图说明EKB类型定义表请求处理的流程。密钥分配中心(KDC),从TLCE、子类别实体或EKB请求者中的任何一方接收EKB类型定义表请求(S401)。当接收到EKB类型定义表请求时,密钥分配中心(KDC),抽出最新版的EKB类型定义表,并将最新版的EKB类型定义表发送到进行了请求处理的实体(S402)。另外,在上述处理中,在密钥分配中心(KDC)与TLCE、子类别实体、EKB请求者之间的通信中根据需要进行相互认证处理、发送数据的加密处理。此外,也可以构成为还进行其他的报文加密处理、数字签名生成、检验处理等。另外,当根据公开密钥加密方式执行认证或加密通信时,应在各实体之间预先进行相互保持公开密钥的步骤。
(EKB发送处理)EKB的发送处理,根据EKB请求者的EKB发送请求进行。EKB请求者,可以是[a]提供CD、DVD等内容存储媒体的内容提供者(CP)、 提供电子信息传送(ECDElectronic Content Distribution)服务的内容提供者、[c]记录系统的格式保持器、等提供可用通过对EKB的解密取得的密钥使用其内容、格式的服务、媒体、设备的实体。
在上述[c]记录系统的格式保持器中,有如下的两种格式保持器,[c1]例如以在制造时将EKB存储于记录媒体的格式将所取得的EKB提供给记录媒体的制造厂商的格式保持器。
例如以在制造时将EKB存储于记录设备的格式将所取得的EKB提供给记录设备的制造厂商的格式保持器。
以下,说明EKB发送处理的步骤。
(1)内容密钥的生成首先,内容提供者等EKB请求者,生成由自己提供的内容、设备、媒体对应使用的内容密钥。
例如,当EKB请求者是[a]提供CD、DVD等内容存储媒体的内容提供者(CP)、[b]提供电子信息传送(ECDElectronic Content Distribution)服务的内容提供者时,将所生成的内容密钥在媒体上或在电子信息传送(ECD)服务中作为对内容进行保护(加密)的密钥使用。
另外,当EKB请求者是[c1]以在制造时将EKB存储于记录媒体的格式将所取得的EKB提供给记录媒体的制造厂商的格式保持器时,将内容密钥作为对记录在该记录媒体上的内容进行保护(加密)的密钥。
进一步,当EKB请求者是[c2]以在制造时将EKB存储于记录设备的格式将所取得的EKB提供给记录设备的制造厂商的格式保持器时,将内容密钥作为对用该记录设备记录的内容进行保护(加密)的密钥使用。
(2)根密钥的生成EKB请求者,生成可以通过EKB的解密处理取得的根密钥。此外,EKB请求者,也可以自己不生成根密钥,而是请求密钥分配中心(KDC)生成。根密钥用于对内容密钥进行保护(加密)。用根密钥保护内容密钥所采用的加密算法等的机理,可以按每种格式任意决定。
(3)EKB发送请求EKB请求者,向密钥分配中心(KDC)发送EKB的发送请求。
在该请求中包含着上述根密钥、及指示用EKB将根密钥传送到哪个设备的登录在EKB类型定义表内的EKB类型识别号码中的一个。EKB请求者,根据存储在自己的设备上的存储装置内的EKB类型定义表或从网络上的可浏览站点取得的EKB类型定义表选择由包含着作为内容提供等服务的服务提供对象的设备的类别构成的EKB类型,并将指示所选定的EKB类型的EKB类型识别号码包括在EKB发送请求内而发送到密钥分配中心(KDC)。
(4)EKB发送处理密钥分配中心(KDC),根据从EKB请求者发来的EKB发送请求,当EKB发送请求中包含着根密钥时生成包含该根密钥的BKB。当在EKB发送请求中没有包含根密钥但请求进行根密钥生成处理时,KDC生成根密钥,进一步,生成包含所生成的根密钥的EKB并将其发送到EKB请求者。
密钥分配中心生成的EKB,有时是可由单一的类别树处理的EKB,有时是可以由多个类别树共同处理的EKB。密钥分配中心(KDC),根据EKB发送请求中所包含的EKB类型识别号码,抽出作为该EKB类型识别号码的构成要素的类别、即抽EKB类型定义表中记录在所指定的EKB类型识别号码的结点栏目内的结点。在结点栏目内记录着类别树的顶点结点ID。该结点ID即为与该类别树的管理实体对应的结点ID。根据该结点ID,向作为类别树的管理实体的顶层类别实体(TLCE)发出子EKB发送请求。
从密钥分配中心(KDC)接收到子EKB发送请求的顶层类别实体(TLCE),生成具有可以由所指定的一个以上的类别内的(未被撤消的)各设备最终取得根密钥的结构的子EKB,并将其发送到密钥分配中心(KDC)。
顶层类别实体(TLCE)所生成子EKB,除了不包含版本号及其检验用的信息(Vertion check value版本检验值)以外,是具有与通常的EKB(参照图6)相同的结构的信息组。这里,用子EKB中的叶密钥或结点密钥将上位的结点密钥或根密钥加密的算法、密钥长度、或模式,可以按每个生成子EKB的各TLCE(格式保持器)任意决定。因此,可以采用与其他格式不同的特有的保密方式。此外,作为默认算法,例如可以将加密算法确定为FIPS46-2的三重DES(Triple-DES),对此不存异议的TLCE,也可以是采用这种三重DES算法的结构。当由TLCE任意决定加密算法或密钥长度时,也可以用规定长度、例如16字节(16Byte)的数据表示所决定的各个(加密后)密钥,以便可以由在其他TLCE管理下的设备处理与由不同的TLCE生成的子EKB合成后的EKB。因此,当生成由多个类别树共用的EKB时,通过按预定的规则设定数据,可以使不同类别树的各设备通过检索EKB的标记而判断自己需要的是第几个密钥数据。即,如EKB内所包含的各密钥数据为16字节,则可以依次抽出可由设备本身处理的根密钥。
即,根据子EKB生成的合成EKB,具有将多个密钥数据分别存储在固定长度的数据区域内的结构。因此,根据各自的具有特定算法、特定密钥数据的子有效密钥块(子EKB)生成的合成EKB,即使是根据密钥树中的结点或树叶的位置将子EKB内的多个加密密钥数据重新排列而生成,也仍可以通过检索EKB的标记依次取得所需的密钥数据。这种合成EKB,可以通过网络或存储在各种记录媒体内而传送或提供给用户(设备)。
密钥分配中心(KDC),根据需要对从TLCE发送来的子EKB进行重新排列、合成并附加版本号及其检验用信息而完成合成后的合成EKB,将其发送给EKB请求者。但是,采用公开密钥加密技术的数字签名,有时也可以请求与密钥分配中心(KDC)不同的认证机构(CA)进行。
参照图55说明子EKB的生成及由子EKB生成合成EKB的方法。图55是说明在生成由类别树A、5100和类别树B、5200共用的合成EKB的处理中由类别树A、5100的TLCE生成的子EKB-(A)的结构的图。子EKB-(A),是作为可以由类别树A、5100的各设备取得根密钥的EKB生成的。此外,图中的根树区域5300在以上的说明中具有8层结构,但这里为简化说明而假定为2层结构。
在图55中,树形结构内所标出的下边加底线的3位数值[XXX],表示EKB内的标记(e、l、r),如上(参照图26、图27)所述,e=1表示有数据,e=0表示无数据,1=1表示左边无分支,1=0表示左边有分支,r=1表示右左边无分支,r=0表示左边有分支。
为使图55的类别树A、5100的各设备(树叶)取得根密钥,只需生成存储了由各树叶共同存储着的结点密钥将根密钥加密后的数据的EKB即可。由于各设备保持着图55的类别树A、5100的设备结点密钥(DNK)区域5120内的树的各路径的结点密钥,所以只需生成用DNK区域5120的最上层的结点密钥加密后的EKB即可。
因此,由类别树A、5100的TLCE生成的子EKB-(A),是具有标记部分101、010、000、111、111、密钥部分Enc(K010、Kroot)、Enc(K011、Kroot)的子EKB-(A)。类别树A、5100的TLCE,将该子EKB-(A)发送到密钥分配中心(KDC)。
以下,用图56说明由类别树B、5200生成的子EKB-(B)。为使类别树B、5200的各设备(树叶)取得根密钥,只需生成存储了由各树叶共同存储着的结点密钥将根密钥加密后的数据的EKB即可。由于各设备保持着图56的类别树B、5200的设备结点密钥(DNK)区域5220内的树的各路径的结点密钥,所以只需生成用DNK区域5220的最上层的结点密钥加密后的EKB即可。
因此,由类别树B、5200的TLCE生成的子EKB-(B),是具有标记部分110、010、000、111、111、密钥部分Enc(K110、Kroot)、Enc(K111、Kroot)的子EKB-(B)。类别树B、5200的TLCE,将该子EKB-(B)发送到密钥分配中心(KDC)。
密钥分配中心,根据各TLCE生成的子EKB-(A)和子EKB-(B)生成合成EKB。用图57说明合成EKB的生成。合成EKB,是作为可以由属于类别树A、5100及类别树B、5200的各设备取得根密钥的EKB生成的。基本上,通过将接收到的多个子EKB的密钥数据序列混合并从树的上层合并为一个序列的作业生成合成EKB。此外,在同一层先从左侧开始进行数据排列。
其结果是,合成EKB,生成为具有标记部分100、010、010、000、000、111、111、111、111、密钥部分Enc(K010、Kroot)、Enc(K011、Kroot)、Enc(K110、Kroot)、Enc(K111、Kroot)的EKB。如上所述,各密钥部分的密钥数据,例如分别设定为16字节,则各类别树内的设备可以检测可由设备本身处理的密钥数据位置,所以能够从合成EKB取得根密钥。
以上,是在任何类别树中都没有被撤消的设备时的子EKB的生成及合成EKB的生成处理结构,以下,说明当有撤消设备时的子EKB的生成及合成EKB的生成。
图58是说明在类别树A、5100中存在着撤消设备(01101)5150时的子EKB的生成的图。这时的子EKB,生成为仅撤消设备(01101)5150不能处理的子EKB-(A′)。
在这种情况下,可以生成具有连接了用图中的粗线示出的路径的密钥数据结构的子EKB。因此,由类别树A、5100的TLCE生成的子EKB-(A′),是具有标记部分101、010、000、111、000、001、111、111、密钥部分Enc(K010、Kroot)、Enc(K0111、Kroot)、Enc(K01100、Kroot)的子EKB-(A′)。类别树A、5100的TLCE,将该子EKB-(A′)发送到密钥分配中心(KDC)。
密钥分配中心,从各TLCE生成的子EKB-(A′)及从无撤消设备的类别树B、5200的TLCE接收到的子EKB-(B)(参照图56)生成合成EKB。用图59说明合成EKB的生成。合成EKB,构成为可以由类别树A、5100的除撤消设备(01101)5150以外的设备及属于类别树B、5200的树的设备取得根密钥的EKB。基本上,通过将接收到的多个子EKB的密钥数据序列混合并从树的上层合并为一个序列的作业生成合成EKB。此外,在同一层先从左侧开始进行数据排列。
其结果是,合成EKB,生成为具有标记部分100、010、010、000、000、111、000、111、111、001、111、111、密钥部分Enc(K010、Kroot)、Enc(K110、Kroot)、Enc(K111、Kroot)、Enc(K0111、Kroot)、Enc(K01100、Kroot)的EKB。该合成EKB,为可以由类别树A、5100的除撤消设备(01101)5150以外的设备及属于类别树B、5200的树的设备取得根密钥的EKB。
(5)EKB的使用由密钥分配中心(KDC)通过如上所述的处理生成的EKB,发送给EKB请求者。
例如,当EKB请求者是 提供CD、DVD等内容存储媒体的内容提供者(CP)、[b]提供电子信息传送(ECDElectronic Content Distribution)服务的内容提供者时,用可以从EKB取得的根密钥将内容密钥加密,并用内容密钥将提供给用户设备的内容加密后使内容流通。按照这种结构,将只能由属于可以处理EKB的特定类别树的设备使用该内容。
另外,当EKB请求者是[c1]以在制造时将EKB存储于记录媒体的格式将所取得的EKB提供给记录媒体的制造厂商的格式保持器时,将所生成的EKB、及用根密钥加密后的内容密钥提供给记录媒体的制造厂商,使制造厂商制造存储了EKB及用根密钥加密后的内容密钥的记录媒体、或者说制造其自己的记录媒体并使其流通。按照这种结构,将只能由属于可以处理EKB的特定类别树的设备在对内容进行记录再生时使用记录媒体的EKB进行加密处理、解密处理。
进一步,当EKB请求者是[c2]以在制造时将EKB存储于记录设备的格式将所取得的EKB提供给记录设备的制造厂商的格式保持器时,将所生成的EKB、及用根密钥加密后的内容密钥提供给记录设备的制造厂商,使制造厂商制造存储了EKB及用根密钥加密后的内容密钥的记录、或者说制造其自己的记录设备并使其流通。按照这种结构,将只能由属于可以处理EKB的特定类别树的设备在对内容进行记录再生时使用EKB进行加密处理、解密处理。
通过如上所述的处理进行EKB的发送。在EKB发送处理过程中,在各实体、EKB请求者、密钥分配中心(KDC)、TLCE之间的通信中根据需要进行相互认证处理、发送数据的加密处理。此外,也可以构成为还进行其他的报文加密处理、数字签名生成、检验处理等。另外,当根据公开密钥加密方式执行认证或加密通信时,应在各实体之间预先进行相互保持公开密钥的步骤。
(将子EKB的简单集合作为合成EKB的构成例)在上述的从子EKB生成合成EKB的处理中,将各子EKB中所包含的加密密钥数据序列从整个树的上层到下层进行了重新排列的处理。以下,说明不进行这种重新排列处理而是通过将各类别树的TLCE生成的子EKB直接依次存储在合成EKB内而生成合成EKB的结构。
图60是示出以其原有的形式存储了多个由多个类别树的TLCE生成的子EKB的合成EKB6000的例。
在EKB的发送处理中,密钥分配中心(KDC),向作为与由EKB请求者指定的EKB类型识别号码对应地记录在EKB类型定义表内的类别树的管理实体的TLCE发送子EKB的生成请求,并将从各TLCE接收到的子EKB6110、6120…简单地集中在一起而存储在合成EKB内。但是,为了使属于各类别的设备可以从该合成EKB中选择该设备可以处理的与设备本身所属的类别对应的子EKB,附加各子EKB部分的大小(例如,数据长度)6111、及表示该子EKB用于哪个类别的数据(例如,结点ID)6112。
即,对选定作为存储对象的各子EKB,在存储时对应地附加指示子EKB存储区域的数据长度的记录长度、及作为子EKB识别数据的与各子EKB对应的类别树的结点标识符即结点ID。此外,还要附加指示合成EKB中所包含的子EKB数的首部信息6200。根据合成EKB的所有数据生成和附加签名(例如,认证结构(CA)的签名)6300。
当按照本方式生成与参照上述图57进行的说明对应的合成EKB时,可以生成如图61所示的合成EKB。子EKB6110的存储EKB,就是原来在图55中说明过的由类别树A的TLCE生成的子EKB-(A),具有标记部分101、010、000、111、111、密钥部Enc(K010、Kroot)、Enc(K011、Kroot)。而子EKB6120的存储EKB,就是原来在图56中说明过的由类别树B的TLCE生成的子EKB-(B),具有标记部分110、010、000、111、111、密钥部分Enc(K110、Kroot)、Enc(K111、Kroot)。
另外,用上述图58、图59说明过的有撤消设备时的合成EKB,具有图62所示的结构。子EKB6110的存储EKB,就是原来在图58中说明过的由类别树A的TLCE生成的子EKB-(A′),具有标记部分101、010、000、111、000、001、111、111、密钥部分Enc(K010、Kroot)、Enc(K0111、Kroot)、Enc(K01100、Kroot)。而没有发生撤消设备的子EKB6120的存储EKB,就是原来在图56中说明过的由类别树B的TLCE生成的子EKB-(B),具有标记部分110、010、000、111、111、密钥部分Enc(K110、Kroot)、Enc(K111、Kroot)。
通过采用上述结构,就可以使属于各类别的设备选择与设备本身所属的类别对应的子EKB并进行处理(解密)。因此,可以使每个类别(TLCE)用完全任意的加密算法和密钥长度生成子EKB。即,TLCE可以决定加密算法和密钥长度,而不受其他类别的影响。
对密钥分配中心(KDC)来说,可以无需对从各TLCE汇集的子EKB的标记及密钥数据部分进行分解和重新排列,因而使负荷减轻。
取得按本方式生成的EKB的设备,通过检索自身所属的类别的子EKB并以由对设备本身进行管理的TLCE决定的特定方法进行处理,即可得到根密钥。由于不需要知道由其他类别的TLCE决定的用于处理其他子EKB的方法、也不需要设法用固定长度表示子EKB中的各密钥等,所以从理论上说用多大的密钥都可以。
(撤消处理-(1))以下,说明在采用了可由多个类别共用的EKB的处理中发生撤消时执行的撤消处理。首先说明通过网络或媒体从外部接收到加密内容并用从EKB得到的密钥取得内容密钥从而将内容解密后使用时的撤消处理。
边参照图63边进行说明。假定使用由类别树A、7100和类别树B、7200共用的EKB7000。另外,还假定由类别树A、7100和类别树B、7200共用的EKB7000,在EKB类型定义表中,定义为EKB类型识别号码#1。
在这种状态下,内容提供者,通过网络或媒体提供用内容密钥加密后的内容,属于类别树A、7100和类别树B、7200的设备,用EKB7000取得根密钥,用根密钥进行解密处理而取得内容密钥,并用内容密钥从加密内容取得可供使用的内容。
假定在这种状态下发现了属于类别树A、7100的设备A1、7120的密钥数据泄密等可能发生非法处理的情况,因而应将设备A1、7120撤消。
在这种情况下,类别树A、7100的TLCE,向密钥分配中心(KDC)发出树变更通知(参照图53),密钥分配中心(KDC),根据接收到的树变更通知,向其管理下的各TLCE、EKB请求者发出通知。此时的通知,只是通知接收到树变更通知的情况,因而不执行EKB类型定义表的更新处理。
另外,因发生撤消而发出的树变更通知,也可以构成为只对作为使用着可由发生了撤消的类别树处理的EKB的实体的EKB请求者发送、或进一步只对管理使用着与发生了撤消的类别树共有的EKB的其他类别树的类别实体发送。为执行这种处理,密钥分配中心(KDC),应保持一个已发送的EKB的使用者表,在表中列出EKB类型识别号码与使用着该EKB类型的EKB请求者的对应关系。
以执行了撤消处理的类别树的设备为对象执行着内容传送的EKB请求者即内容提供者,向密钥分配中心(KDC)发出EKB发送请求,请求其生成只能由撤消处理对象以外的设备处理的更新后的EKB。在这种情况下,作为EKB请求者的内容提供者,应指定按照由类别树A、7100和类别树B、7200共用的EKB类型定义的EKB类型识别号码#1。此外,还要由EKB请求者自己生成新的根密钥并发送给KDC,或请求KDC生成新的根密钥。
密钥分配中心(KDC),根据所指定的EKB类型识别号码#1参照EKB类型定义表,并根据对应的类别树的结点请求类别树A、7100和类别树B、7200的TLCE生成只能由合法设备取得新的根密钥的子EKB。
类别树A、7100和类别树B、7200的各TLCE,根据请求生成子EKB。在这种情况下,在类别树A、7100中生成只能由将被撤消设备A1、7120排除后的其他设备取得新的根密钥的子EKB-(A)。在类别树B、7200中,如果不存在被撤消的设备,则生成可以由属于该类别树的所有设备取得新的根密钥的子EKB-(B)并发送到密钥分配中心(KDC)。
密钥分配中心(KDC),根据从各TLCE接收到的EKB按上述方法生成合成EKB,并将所生成的EKB发送到EKB请求者(例如,内容提供者)。
EKB请求者(例如,内容提供者),使用从密钥分配中心(KDC)接收到的新的EKB进行内容传送。具体地说,提供用内容密钥加密后的内容,并提供用通过对EKB的解密而取得的根密钥加密后的内容密钥。属于类别树A、7100和类别树B、7200的设备,用EKB取得根密钥,再通过用根密钥解密而取得内容密钥,并用内容密钥从加密内容取得可供使用的内容。但是,类别树A、7100中的撤消设备A1、7120,则不能处理更新后的EKB,因而不能使用该内容。
另外,在以上的说明中,说明了当密钥分配中心(KDC)从TLCE接收到树变更通知时在该时刻不对EKB类型定义表执行更新处理的例,但也可以构成为在KDC接收到树变更通知的时刻由密钥分配中心(KDC)根据树变更信息执行EKB类型定义表更新处理、EKB更新处理并将更新后的EKB类型定义表发送给各EKB请求者、TLCE。
(撤消处理(2))以下,说明所谓自记录型形态的撤消处理过程中的处理,在这种处理中,在例如已将EKB存储在记录设备或记录媒体内的结构中,由用户将各种内容加密后记录在记录媒体内,并采用了从存储在记录设备或记录媒体内的EKB取得加密处理、解密处理所需密钥的根密钥。
边参照图6 4边进行说明。假定一种使用着由类别树A、8100和类别树B、8200共用着的EKB8000的情况。即在由类别树A、8100和类别树B、8200共同使用的记录设备或记录媒体内存储共用的EKB,由用户利用EKB对内容执行加密、解密处理从而对内容进行记录再生。由类别树A、8100和类别树B、8200共用的EKB8000,在EKB类型定义表中,定义为EKB类型识别号码#1。
假定在这种状态下发现了属于类别树A、8100的设备A1、8120的密钥数据泄密等可能发生非法处理的情况,因而应将设备A1、8120撤消。
在这种情况下,类别树A、8100的TLCE,向密钥分配中心(KDC)发出树变更通知(参照图53),密钥分配中心(KDC),根据接收到的树变更通知,向其管理下的各TLCE、相关的EKB请求者发出通知。此时的通知,只是通知接收到树变更通知的情况,因而不执行EKB类型定义表的更新处理。
执行了撤消处理的类别树的TLCE,为了禁止撤消设备A1、8120在此后仍利用EKB执行新的内容处理,本身作为EKB请求者向密钥分配中心(KDC)发出EKB发送请求,请求其生成只能由撤消处理对象以外的设备处理的更新后的EKB。在这种情况下,作为EKB请求者的TLCE,应指定按照由类别树A、8100和类别树B、8200共用的EKB类型定义的EKB类型识别号码#1。此外,还要由EKB请求者自己生成新的根密钥并发送给KDC,或请求KDC生成新的根密钥。
密钥分配中心(KDC),根据所指定的EKB类型识别号码#1参照EKB类型定义表,并根据对应的类别树的结点请求类别树A、8100和类别树B、8200的TLCE生成只能由合法设备取得新的根密钥的子EKB。
类别树A、8100和类别树B、8200的各TLCE,根据请求生成子EKB。在这种情况下,在类别树A、8100中生成只能由将被撤消设备A1、8120排除后的其他设备取得新的根密钥的子EKB-(A)。在类别树B、7200中,如果不存在被撤消的设备,则生成可以由属于该类别树的所有设备取得新的根密钥的子EKB-(B)并发送到密钥分配中心(KDC)。
密钥分配中心(KDC),根据从各TLCE接收到的EKB按上述方法生成合成EKB,并将所生成的EKB发送到各TLCE(例如,内容提供者)。
各TLCE(例如,内容提供者),将从密钥分配中心(KDC)接收到的新的EKB传送到各设备,并执行EKB的更新。属于类别树A、8100和类别树B、8200的设备,使用从更新后的EKB取得的根密钥对新内容在记录设备上的记录执行加密处理。由于用新的EKB加密记录的内容只能在使用了对应的EKB时才能解密,所以被撤消了的设备不能使用该内容。
以上,边参照特定的实施例,边对本发明进行详细的说明。但是,本技术领域的从业者在不脱离本发明的要点的范围内当然可以对该实施例进行修改或代用即,虽以例示的形态公开了本发明,但不应解释为有任何限定。为判断本发明的要点,可以参照开头部分所述的权利要求的范围。
产业上的可应用性如上所述,按照本发明的信息处理系统及方法,在通过构成具有多个按类别进行区分并由类别实体管理的子树的密钥树并选择构成密钥树的路径而生成由选择路径上的下位密钥对上位密钥的加密处理数据构成的EKB后提供给设备的结构中,根据使EKB类型标识符与可处理EKB的1个以上的类别树的识别数据相互对应的EKB类型定义表,执行EKB的发送管理,所以,作为EKB生成请求者的EKB请求者,可以很容易地选择作为应用对象的类别。
另外,按照本发明的信息处理系统及方法,构成为在密钥分配中心(KDC)的管理下对由EKB类型定义表定义的EKB类型标识符执行登录和取消处理并根据类别树的管理实体的准许、请求等一定的条件进行登录和取消,所以可以保持EKB类型定义表的登录信息的可靠性。
另外,按照本发明的信息处理系统及方法,构成为根据来自EKB请求者、及类别树的管理实体的请求提供EKB类型定义表,所以,EKB请求者、类别树的管理实体总是可以取得最新的EKB类型定义表信息。
另外,按照本发明的信息处理系统及方法,构成为将EKB类型定义表的变更通知EKB请求者、及类别树的管理实体,所以,总是可以根据最新的EKB类型定义表信息进行相关的处理。
权利要求
1.一种信息处理系统,具有如下的结构,即通过构成对将多个设备作为树叶而构成的树的从根部到树叶的路径上的根、结点、及叶对应地赋予了各自的密钥的密钥树并选择构成该密钥树的路径而将具有由选择路径上的下位密钥产生的上位密钥的加密处理数据且只能由可以使用与上述选择路径对应的结点密钥集的设备解密的有效密钥块(EKB)提供给设备,该信息处理系统的特征在于构成为,上述密钥树,具有多个按类别进行区分并由类别实体管理的作为子树的类别树,生成上述有效密钥块(EKB)的密钥分配中心(KDC),具有使EKB类型标识符与可处理EKB的1个以上的类别树的识别数据相互对应的EKB类型定义表,并根据EKB生成请求中所包含的EKB类型标识符从EKB类型定义表抽出类别树的识别数据而生成可以由所抽出的1以上的类别树以共用的方式解密的EKB。
2.根据权利要求1所述的信息处理系统,其特征在于上述EKB类型定义表的可处理EKB的类别树的识别数据,是构成类别树的结点的标识符即结点ID。
3.根据权利要求1所述的信息处理系统,其特征在于在上述EKB类型定义表中,包含着与属于类别树的设备有关的说明。
4.根据权利要求1所述的信息处理系统,其特征在于构成为,上述EKB类型定义表,可以由请求上述密钥分配中心(KDC)生成EKB的EKB请求者保持或参照,EKB请求者,根据EKB类型定义表选择EKB类型标识符,并将包含所选定的EKB类型标识符的EKB生成请求输出到上述密钥分配中心(KDC)。
5.根据权利要求1所述的信息处理系统,其特征在于构成为,上述类别实体,生成作为可以根据与属于自己管理的类别树的结点或树叶相对应的密钥处理的EKB的子有效密钥块(子EKB),上述密钥分配中心(KDC),根据与从上述EKB类型定义表选定的类别树的识别数据对应的1个以上的类别实体所生成的子EKB,生成并提供可以由在上述EKB类型定义表中设定的类别树以共用的方式处理的EKB。
6.根据权利要求1所述的信息处理系统,其特征在于构成为,上述密钥树,在最上层构成多层的根树,并由与该根树直接连接的顶层类别树、与该顶层类别树的下层连接的子类别树构成,上述类别实体,作为上述顶层类别树的管理实体而对该顶层类别树及与该顶层类别树的下层连接的子类别树进行管理,上述类别实体,生成作为可以根据与属于自己管理的顶层类别树及与该顶层类别树的下层连接的子类别树的结点或树叶相对应的密钥处理的EKB的子有效密钥块(子EKB),上述密钥分配中心(KDC),根据与从上述EKB类型定义表选定的类别树的识别数据对应的1个以上的类别实体所生成的子EKB,生成并提供可以由在上述EKB类型定义表中设定的类别树以共用的方式处理的EKB。
7.根据权利要求1所述的信息处理系统,其特征在于构成为,上述密钥分配中心(KDC),在对上述EKB类型定义表登录新的EKB类型标识符的处理中,以得到对作为可以处理预定登录的EKB类型的类别树选定的1个以上的类别树进行管理的所有类别实体的准许为条件进行登录。
8.根据权利要求1所述的信息处理系统,其特征在于构成为,上述密钥分配中心(KDC),在将登录在上述EKB类型定义表内的EKB类型标识符取消的处理中,以对作为可以处理预定取消的EKB类型的类别树选定的1个以上的类别树进行管理的至少一个类别实体的取消请求为条件进行取消处理。
9.根据权利要求1所述的信息处理系统,其特征在于构成为,上述密钥分配中心(KDC),响应来自请求上述密钥分配中心(KDC)生成EKB的EKB请求者或类别实体的EKB类型定义表请求,向表的请求方发送最新的EKB类型定义表。
10.根据权利要求1所述的信息处理系统,其特征在于构成为,上述类别实体,将该类别实体管理下的类别树的变更信息通知上述密钥分配中心(KDC),上述密钥分配中心(KDC),根据来自类别实体的树变更通知,对上述EKB类型定义表执行必要的更新处理,同时执行将更新信息通知EKB请求者及类别实体的处理。
11.一种EKB发行信息处理装置,在具有如下结构的系统中构成生成EKB的密钥分配中心,即,该系统,通过构成包含按类别区分的作为子树的类别树且对将多个设备作为树叶而构成的树的从根部到树叶的路径上的根、结点、及叶对应地赋予了各自的密钥的密钥树并选择构成该密钥树的路径而将具有由选择路径上的下位密钥对上位密钥的加密处理数据且只能由可以使用与上述选择路径对应的结点密钥集的设备解密的有效密钥块(EKB)提供给设备,该EBK发送信息处理装置的特征在于上述EBK发送信息处理装置构成为,在存储装置内存储使EKB类型标识符与可处理EKB的类别树的识别数据相互对应的EKB类型定义表,接收来自EKB请求者的EKB生成请求,根据该接收EKB生成请求中所包含的EKB标识符从上述EKB类型定义表抽出类别树的识别数据,并执行可由所抽出的类别树以共用的方式解密的EKB的生成处理。
12.一种EKB请求信息处理装置,在具有如下结构的系统中构成发出EKB生成请求的EKB请求方,即,该系统,通过构成包含按类别区分的作为子树的类别树且对将多个设备作为树叶而构成的树的从根部到树叶的路径上的根、结点、及叶对应地赋予了各自的密钥的密钥树并选择构成该密钥树的路径而将具有由选择路径上的下位密钥对上位密钥的加密处理数据且只能由可以使用与上述选择路径对应的结点密钥集的设备解密的有效密钥块(EKB)提供给设备,该EKB请求信息处理装置的特征在于上述EKB请求信息处理装置构成为,在存储装置内存储使EKB类型标识符与可处理EKB的类别树的识别数据相互对应的EKB类型定义表,生成包含上述EKB类型定义表中的EKB类型标识符的EKB生成请求数据并输出发送请求。
13.一种类别树管理信息处理装置,在具有如下结构的系统中执行类别树管理,即,该系统,通过构成包含按类别区分的作为子树的类别树且对将多个设备作为树叶而构成的树的从根部到树叶的路径上的根、结点、及叶对应地赋予了各自的密钥的密钥树并选择构成该密钥树的路径而将具有由选择路径上的下位密钥对上位密钥的加密处理数据且只能由可以使用与上述选择路径对应的结点密钥集的设备解密的有效密钥块(EKB)提供给设备,该类别树管理信息处理装置的特征在于构成为,执行作为可以根据与属于所管理的类别树的结点或树叶对应设定的密钥处理的EKB的子有效密钥块(子EKB)的生成处理,并将其输出到密钥分配中心(KDC)。
14.一种信息记录媒体,其特征在于记录了使对有效密钥块EKB设定的EKB类型标识符与可处理EKB的类别树的识别数据相互对应的EKB类型定义表,该有效密钥块EKB,通过构成包含按类别区分的作为子树的类别树且对将多个设备作为树叶而构成的树的从根部到树叶的路径上的根、结点、及叶对应地赋予了各自的密钥的密钥树并选择构成该密钥树的路径而生成,该有效密钥块EKB,具有由选择路径上的下位密钥对上位密钥的加密处理数据且只能由可以使用与上述选择路径对应的结点密钥集的设备解密。
15.根据权利要求14所述的信息记录媒体,其特征在于上述EKB类型定义表的可处理EKB的类别树的识别数据,为类别树的结点的标识符即结点ID。
16.根据权利要求14所述的信息记录媒体,其特征在于构成为,在上述EKB类型定义表中,包含着与属于类别树的设备有关的说明。
17.一种信息处理方法,应用于具有如下结构的系统,该系统,通过构成包含按类别区分并由类别实体管理的作为子树的类别树且对将多个设备作为树叶而构成的树的从根部到树叶的路径上的根、结点、及叶对应地赋予了各自的密钥的密钥树并选择构成该密钥树的路径而将具有由选择路径上的下位密钥对上位密钥的加密处理数据且只能由可以使用与上述选择路径对应的结点密钥集的设备解密的有效密钥块(EKB)提供给设备,该信息处理方法的特征在于生成上述有效密钥块(EKB)的密钥分配中心(KDC),具有使EKB类型标识符与可处理EKB的1个以上的类别树的识别数据相互对应的EKB类型定义表,并根据EKB生成请求中所包含的EKB类型标识符从EKB类型定义表抽出类别树的识别数据而生成可以由所抽出的1以上的类别树以共用的方式解密的EKB。
18.根据权利要求17所述的信息处理方法,其特征在于上述EKB类型定义表的可处理EKB的类别树的识别数据,为构成类别树的结点的标识符即结点ID。
19.根据权利要求17所述的信息处理方法,其特征在于在上述EKB类型定义表中,包含着与属于类别树的设备有关的说明。
20.根据权利要求17所述的信息处理方法,其特征在于上述EKB类型定义表,可以由请求上述密钥分配中心(KDC)生成EKB的EKB请求者保持或参照,EKB请求者,根据EKB类型定义表选择EKB类型标识符,并将包含所选定的EKB类型标识符的EKB生成请求输出到上述密钥分配中心(KDC)。
21.根据权利要求17所述的信息处理方法,其特征在于上述类别实体,生成作为可以根据与属于自己管理的类别树的结点或树叶相对应的密钥处理的EKB的子有效密钥块(子EKB),上述密钥分配中心(KDC),根据与从上述EKB类型定义表选定的类别树的识别数据对应的1个以上的类别实体所生成的子EKB,生成并提供可以由在上述EKB类型定义表中设定的类别树以共用的方式处理的EKB。
22.根据权利要求17所述的信息处理方法,其特征在于上述密钥树,在最上层构成多层的根树,并由与该根树直接连接的顶层类别树、与该顶层类别树的下层连接的子类别树构成,上述类别实体,作为上述顶层类别树的管理实体而对该顶层类别树及与该顶层类别树的下层连接的子类别树进行管理,上述类别实体,生成作为可以根据与属于自己管理的顶层类别树及与该顶层类别树的下层连接的子类别树的结点或树叶相对应的密钥处理的EKB的子有效密钥块(子EKB),上述密钥分配中心(KDC),根据与从上述EKB类型定义表选定的类别树的识别数据对应的1个以上的类别实体所生成的子EKB,生成并提供可以由在上述EKB类型定义表中设定的类别树以共用的方式处理的EKB。
23.根据权利要求17所述的信息处理方法,其特征在于上述密钥分配中心(KDC),在对上述EKB类型定义表登录新的EKB类型标识符的处理中,以得到对作为可以处理预定登录的EKB类型的类别树选定的1个以上的类别树进行管理的所有类别实体的准许为条件进行登录。
24.根据权利要求17所述的信息处理方法,其特征在于上述密钥分配中心(KDC),在将登录在上述EKB类型定义表内的EKB类型标识符取消的处理中,以对作为可以处理预定取消的EKB类型的类别树选定的1个以上的类别树进行管理的至少一个类别实体的取消请求为条件进行取消处理。
25.根据权利要求17所述的信息处理方法,其特征在于上述密钥分配中心(KDC),响应来自请求上述密钥分配中心(KDC)生成EKB的EKB请求者或类别实体的EKB类型定义表请求,向表的请求方发送最新的EKB类型定义表。
26.根据权利要求17所述的信息处理方法,其特征在于上述类别实体,将该类别实体管理下的类别树的变更信息通知上述密钥分配中心(KDC),上述密钥分配中心(KDC),根据来自类别实体的树变更通知,对上述EKB类型定义表执行必要的更新处理,同时执行将更新信息通知EKB请求者及类别实体的处理。
27.一种程序记录媒体,记录了使具有如下结构的系统中的信息处理在计算机系统上执行的计算机程序,即,该系统,通过构成包含按类别区分的作为子树的类别树且对将多个设备作为树叶而构成的树的从根部到树叶的路径上的根、结点、及叶对应地赋予了各自的密钥的密钥树并选择构成该密钥树的路径而将具有由选择路径上的下位密钥对上位密钥的加密处理数据且只能由可以使用与上述选择路径对应的结点密钥集的设备解密的有效密钥块(EKB)提供给设备,该程序记录媒体的特征在于上述计算机程序,包括根据EKB生成请求中所包含的EKB类型标识符从使EKB类型标识符与可处理EKB的1个以上的类别树的识别数据相互对应的EKB类型定义表抽出类别树的识别数据的步骤、及生成可以由所抽出的1以上的类别树以共用的方式解密的EKB的步骤。
全文摘要
实现一种在使用了具有按类别区分的树形结构的有效数据块(EKB)的处理中执行高效率处理的信息处理系统及方法。在具有多个按类别区分并由类别实体管理的子树的密钥树内通过选择构成树的路径而生成具有由下位密钥对上位密钥的加密处理数据的EKB并提供给设备的结构中,根据使EKB类型标识符与可处理EKB的1个以上的类别树的识别数据相互对应的EKB类型定义表执行EKB的发送管理。
文档编号G06F12/14GK1426643SQ01808659
公开日2003年6月25日 申请日期2001年12月21日 优先权日2000年12月26日
发明者浅野智之, 大泽义知, 大石丈于, 石黑隆二, 泷隆太 申请人:索尼公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1