信息处理方法,解密处理方法,信息处理设备和计算机程序的制作方法

文档序号:6654721阅读:282来源:国知局
专利名称:信息处理方法,解密处理方法,信息处理设备和计算机程序的制作方法
技术领域
本发明涉及信息处理方法,解密处理方法,信息处理设备和计算机程序。更具体地说,本发明涉及一种信息处理方法,解密处理方法,信息处理设备和计算机程序,它们能够在对其应用分级树形结构的广播加密方案中目前已知的子集差异(SD)(Subset Difference)方案和分层子集差异(LSD)方案中,在降低接收器需要安全持有的保密信息,例如标记的数量的同时,能够实现有效并且安全的信息分发。
背景技术
近来,包括音频数据,比如音乐,图像数据,比如电影,游戏程序和各种应用程序的各种软件数据(这些下面被称为内容)已通过诸如因特网之类的网络,或者通过包括光盘(CD)、数字通用视盘(DVD)、小型磁盘(MD)在内的各种信息记录介质传播。传播的这些内容由用户所有的再现设备,比如个人计算机(PC)、播放器或游戏设备再现和使用。
许多内容,比如音乐数据和图像数据的发行权等一般由它们的创作人或发行人持有。从而,在发行这些内容时,通常采用设置某些受限访问的配置,即,只允许授权用户使用所述内容,以防止擅自复制等。
特别地,近年来,数字记录信息的记录设备和存储介质已变得日益普及。借助这样的数字记录设备和存储介质,能够重复记录和再现,而不会恶化图像和声音,从而提出了诸如通过因特网欺诈性地分发复制的内容,以及记录介质,比如可记录光盘(CD-R)的擅自复制之类的问题。
作为防止内容的这种擅自使用的一种方法,提出一种系统,其中对内容或加密内容解码的密钥被加密和分发,用于使只有特定的授权用户或授权设备才能够对分发的数据解码。例如,已知一种采用分级树形结构(它是广播加密方案的一种实施例)的配置。
下面参考附图,说明使用分级树形结构供给诸如加密密钥之类的加密数据的处理。
图1中所示的分级树形结构使用二元树。二元树的最下层被称为叶子,包括顶点,每个分枝部分和叶在内的各个部分被称为一个节点。在图1中所示的二元树分级树形结构中,叶子由8-15表示,节点由1-15表示,根由1表示。
诸如播放器(作为内容利用设备的接收器)之类的信息处理设备被逐一分配给二元分级树形结构中的叶子8-15。
此外,节点密钥被逐一分配给树形结构的节点(包括叶子)1-15。分配给叶子8-15的节点密钥有时被称为叶子密钥。
对应于每片叶子的信息处理设备被赋予节点密钥,所述节点密钥被分配给在从对应叶子到根节点的路径中的节点。在图1的配置中,存在被单独分配给叶子8-15的8个信息处理设备,一个节点密钥被分配给节点1-15中的每一个。对应于叶子8的信息处理设备被赋予分配给节点1、2、4、8的四个节点密钥。此外,对应于叶子12的信息处理设备102被赋予分配给节点1、3、6、12的四个节点密钥。每个信息处理设备安全地把这些节点密钥保存在存储器中。
现在参考图2,说明借助涉及节点密钥的分发处理的设置,发射只有选定的信息处理设备才能够获得的信息的方法。例如,假定一种配置,其中通过广播分发或者保存内容的记录介质,比如DVD,以可被任何人获取的状态传播内容,例如被加密成加密内容的特定音乐、图像数据,并且只向特定的用户,即具有使用该内容的授权的用户或信息处理设备提供对加密内容解码的密钥(内容密钥Kc)。
假定分配给图2中所示的叶子14的信息处理设备作为未授权设备被排除在外(被取消),并且其它的信息处理设备是授权的信息处理设备。这种情况下产生密文,分配给叶子14的信息处理设备不能借助所述密文获得内容密钥Kc,但是其它信息处理设备借助所述密文能够获得内容密钥Kc,并且通过网络或者借助保存密文的记录介质分发所述密文。
这种情况下,可利用尽可能多的信息处理设备共同所有的节点密钥,即在除了将被取消(排除在外)的信息处理设备所有所有的节点密钥(图2中标记为×)外的节点密钥中,位于树形结构上部的节点密钥,对内容密钥加密以便传输。
在图2中所示的例子中,位于节点2、6、15的节点密钥被用于对内容密钥Kc加密,以便产生要提供的一组密文。即,密文E(NK2,Kc)、E(NK6,Kc)和E(NK15,Kc)被产生,并在通过网络分发或者保存在记录介质的时候被提供。应注意E(A,B)表示由密钥A加密的数据B。此外,NKn表示图中所示的第n个节点密钥。从而,上述公式表示一组三个密文,包括通过用节点密钥NK2对内容密钥Kc加密产生的加密数据E(NK2,Kc),用节点密钥NK6对内容密钥Kc加密产生的加密数据E(NK6,Kc),用节点密钥NK15对内容密钥Kc加密产生的加密数据E(NK15,Kc)。
如果这三个密文被产生,并且随后通过例如广播通信路径被发射给所有信息处理设备,那么将不被取消的信息处理设备(对应于图2中所示的叶子8-13和15的信息处理设备)都能够利用它自己所有的节点密钥对任意密文解码,从而获得内容密钥Kc。但是,对应于叶子14的被取消(被排除)信息处理设备不持有应用于所述三个密文的三个节点密钥NK2、NK6、NK15中的任何一个。从而,即使该信息处理设备收到密文,该设备也不能完成密文的解码处理,从而该设备不能获得内容密钥Kc。
上面提及的广播加密方案被称为完整子树方案。如果将利用这样的树形结构分发信息,那么存在要广播的消息的数目随着与叶子对应的信息处理设备(用户设备)数目的增大而增大的缺点。另一缺点在于诸如要由每个信息处理设备(用户设备)安全保存的节点密钥之类的密钥信息也被增大。
作为解决这些缺点的技术,迄今提出了子集差异(SD)方案和作为前者的改进的分层子集差异(LSD)方案。例如在非专利文献1中公开了SD方案,在非专利文献2中公开了LSD方案。
在两种方案的任何一种中,假定广播加密系统的接收器(用户)的总数被设置为N,将被排除(取消)的接收器,即不能接收广播加密信息的接收器的数目被设置为r,广播消息的数目等于O(r),它是与在上面提及的完整子树方案等中的数字相比较小的数字,从而较优。
但是,在SD方案中,每个接收器要保存在其安全存储器中的密钥(标记)的数目等于O(log2N),在LSD方案中,每个接收器要保存在其安全存储器中的密钥(标记)的数目等于O(log1+εN),这里ε是任意整数。该密钥数目大于其它方案,比如完整子树方案中的密钥数目,从而密钥数目的减少一直是一个待解决的问题。应注意在本说明书中,除非另有说明,否则对数的底数为2。
Advances in Cryptography-Crypto2001,Lecture Notes in Computer Science2139,Springer,2001,pp.41-62(D.Naor,M.Naor and J.Lotspiech,″Revocation and Tracing Schemes for Stateless Receivers″)[非专利文献2]Advances in Cryptography-Crypto2002,Lecture Notes in Computer Science2442,Springer,2002,pp.47-60(D.Halevy and A.Schamir,″The LSDBroadcast Encryption Scheme″)。

发明内容
鉴于这样的情况,做出了本发明,本发明的一个目的是提供一种信息处理方法,解密处理方法,信息处理设备和计算机程序,它能够减少接收器需要安全地保持的保密信息,例如标记,从而当对子集差异(SD)方案和分层子集差异(LSD)方案应用后面说明的基于陷门单向置换(trap-door one-way permutation)的单向置换树时,允许高效并且安全的信息分发,子集差异(SD)方案和分层子集差异(LSD)方案被认为是采用分级树结构的信息分发构型中的相当高效的构型,所述分级树结构是广播加密方案的一个实施例。
本发明的第一方面是一种信息处理方法,用于产生应用于密文供给处理的分级树,在所述密文供给处理中,只有特定的选定设备能够利用基于分级树构型的广播加密方案进行解密,所述信息处理方法的特征在于包括产生中间标记(IL)的中间标记产生步骤,所述中间标记被定义为具有数值,允许通过运算处理,计算分别与基于应用分级树的SD(子集差异)方案的子集对应的标记(LABEL)之中,与选定部分的特殊子集对应的标记的值,并且允许通过根据至少一个中间标记的值应用陷门单向置换F,计算其它中间标记的值的数值;通过根据中间标记进行运算处理产生与特殊子集对应的标记,并且还根据产生的标记通过运算产生不对应于特殊子集的标记的标记产生步骤;和确定用于供给与分级树的端节点对应的接收器的标记的供给用标记确定步骤,所述标记包括不对应于特殊子集的特殊子集非对应标记,和通过运算处理,可根据其计算与特殊子集对应的标记的中间标记。
此外,在根据本发明的信息处理方法的一个实施例中,信息处理方法的特征在于还包括在有选择地应用从在标记产生步骤产生的与子集对应的各个标记得到的子集密钥的同时,通过执行加密处理产生密文以便提供给接收器的密文产生步骤。
此外,在根据本发明的信息处理方法的一个实施例中,标记产生步骤的特征在于包括通过对中间标记进行散列处理,计算与特殊子集对应的标记的值的步骤。
此外,在根据本发明的信息处理方法的一个实施例中,标记产生步骤的特征在于包括由对与特殊子集对应的标记的值进行的伪随机数产生处理,产生其它标记的步骤。
此外,在根据本发明的信息处理方法的一个实施例中,中间标记产生步骤的特征在于是在具有2N-1个节点的分级树中任意选择值x1∈ZM*,通过应用对其应用陷门单向置换F的逆置换F-1的下述两个等式任意之一,计算具有2N-1个节点的分级树中的节点对应值x1-x2N-1,同时在使用i作为计数器的情况下把i加1,直到i=2~2N-1,还把计算的值设置成可根据其计算特殊子集对应标记的中间标记(IL)的值的步骤[等式5] 其中 代表等于或小于i的最大整数,和[等式6] 其中 代表等于或小于i的最大整数其中M,d是作为加密参数的模数M和保密指数d。
此外,在根据本发明的信息处理方法的一个实施例中,在中间标记产生步骤中选择的特殊子集是第一特殊子集和第二特殊子集中的至少一个,第一特殊子集是子集Si,j之一,并且在节点i和节点j之间具有直接后代(descendant)的父子关系,子集Si,j被定义为通过从生根于分级树中的节点i的子树中排除生根于低于节点i的节点j的子树而获得的子集,第二特殊子集是定义为具有包括分级树的所有叶子的根作为顶部的整树集合的子集S1,。
此外,在根据本发明的信息处理方法的一个实施例中,供给用标记确定步骤的特征在于是把用于供给与分级树的端节点对应的接收器的中间标记之一指定为与构成第一特殊子集的子集Si,j中的最低一个对应的中间标记的步骤。
此外,在根据本发明的信息处理方法的一个实施例中,中间标记产生步骤的特征在于是把分别与根据基本LSD(基本分层子集差异)方案设置的子集对应的标记(LABEL)中,与选择部分的特殊子集对应的标记设为可根据与特殊子集对应的中间标记(IL)计算的值,所述基本LSD方案具有基于由分级树中设定的单个特殊层面分隔开的各层的子集管理构型。
此外,在根据本发明的信息处理方法的一个实施例中,中间标记产生步骤的特征在于是把分别与根据一般LSD(一般分层子集差异)方案设置的子集对应的标记(LABEL)中,与选择部分的特殊子集对应的标记设为可根据与特殊子集对应的中间标记(IL)计算的值,所述一般LSD方案具有基于由分级树中设定的多个特殊层面分隔开的各层的子集管理构型。
此外,本发明的第二方面是一种执行由分别与根据SD(子集差异)方案设置的子集对应的子集密钥加密的密文的解密处理的解密处理方法,所述SD(子集差异)方案是一种基于分级树构型的广播加密方案,所述解密处理方法的特征在于包括从密文中选择通过应用可由伪随机数产生处理根据其中保持的标记,或者可从其中保持的中间标记计算的标记得到的子集密钥而产生的密文的密文选择步骤;如果伪随机数产生处理不能根据保持的标记得到将应用于密文的子集密钥,那么通过对保持的中间标记执行运算处理,计算与特殊子集对应的标记的标记计算步骤;伪随机数产生处理根据保持的标记或者计算的标记,产生子集密钥的步骤;和通过应用产生的子集密钥,执行密文的解密处理的解密步骤。
此外,在根据本发明的解密处理方法的一个实施例中,标记计算步骤的特征在于包括通过对保持的中间标记执行陷门单向置换F,计算另一中间标记的步骤。
此外,在根据本发明的解密处理方法的一个实施例中,标记计算步骤的特征在于包括通过对保持的中间标记,或者通过对保持的中间标记执行陷门单向置换F而获得的另一中间标记执行散列处理,执行标记的计算的步骤。
此外,在根据本发明的解密处理方法的一个实施例中,标记计算步骤的特征在于要应用于密文的子集密钥是可由伪随机数发生处理根据与第一特殊子集或第二特殊子集对应的标记计算的子集密钥,第一特殊子集是子集Si,j之一,并且在节点i和节点j之间具有直接后代的父子关系,子集Si,j被定义为通过从生根于分级树中的节点i的子树中排除生根于低于节点i的节点j的子树而获得的子集,第二特殊子集是定义为具有包括分级树的所有叶子的根作为顶部的整树集合的子集S1,标记计算步骤的特征还在于是如果不持有与特殊子集对应的标记,那么通过对保持的中间标记进行运算处理,计算与特殊子集对应的标记的步骤。
此外,在根据本发明的解密处理方法的一个实施例中,标记计算步骤的特征在于是通过对保持的中间标记进行运算处理,计算与包括分级树中,从执行解密处理的接收器被分配给的节点到根节点的路径中的节点的特殊子集对应的标记的步骤。
此外,本发明的第三方面是一种信息处理方法,用于执行密文的产生处理,其中只有特定的选定设备能够利用基于分级树构型的广播加密方案进行解密,所述信息处理方法的特征在于包括在有选择地应用分别与根据应用分级树的SD(子集差异)方案设置的子集对应的子集密钥的时候,通过执行加密处理产生密文的密文产生步骤;其中密文产生步骤中要应用的子集密钥是可根据分别与子集对应的标记(LABEL)计算的子集密钥,并被设置成以致根据中间标记(IL),运算处理能够计算与选择部分的特殊子集对应的标记的值,并且中间标记允许通过根据至少一个中间标记的值,应用陷门单向置换F,计算其它中间标记的值。
此外,在根据本发明的信息处理方法的一个实施例中,信息处理方法的特征在于还包括产生子集密钥的子集密钥产生步骤,其中子集密钥产生步骤是根据分别与子集对应的标记(LABEL),由伪随机数发生处理产生子集密钥的处理。
此外,在根据本发明的信息处理方法的一个实施例中,信息处理方法的特征在于还包括产生子集密钥的子集密钥产生步骤,其中子集密钥产生步骤包括根据对其应用使用x1∈ZM*,及作为加密参数的模数M和保密指数d的陷门单向置换F的逆置换F-1的运算表达式,产生与特殊子集对应的中间标记的中间标记产生步骤;根据中间标记通过运算处理产生与特殊子集对应的标记,还根据产生的标记通过运算产生不对应于特殊子集的标记的标记产生步骤;和根据标记通过运算处理计算子集密钥的步骤。
此外,在根据本发明的信息处理方法的一个实施例中,在中间标记产生步骤中选择的特殊子集的特征在于是第一特殊子集和第二特殊子集中的至少之一,第一特殊子集是子集Si,j之一,并且在节点i和节点j之间具有直接后代的父子关系,子集Si,j被定义为通过从生根于分级树中的节点i的子树中排除生根于低于节点i的节点j的子树而获得的子集,第二特殊子集是定义为具有包括分级树的所有叶子的根作为顶部的整树集合的子集S1,。
此外,在根据本发明的信息处理方法的一个实施例中,中间标记产生步骤的特征在于是把分别与根据基本LSD(基本分层子集差异)方案设置的子集对应的标记(LABEL)中,与选择部分的特殊子集对应的标记的值设为可根据与特殊子集对应的中间标记(IL)计算的值的步骤,所述基本LSD方案具有基于由分级树中设定的单个特殊层面分隔开的各层的子集管理构型。
此外,在根据本发明的信息处理方法的一个实施例中,中间标记产生步骤的特征在于是把分别与根据一般LSD(一般分层子集差异)方案设置的子集对应的标记(LABEL)中,与选择部分的特殊子集对应的标记的值设为可根据与特殊子集对应的中间标记(IL)计算的值的步骤,所述一般LSD方案具有基于由分级树中设定的多个特殊层面分隔开的各层的子集管理构型。
此外,本发明的第四方面是一种信息处理设备,用于产生应用于密文供给处理的分级树,在所述密文供给处理中,只有特定的选定设备能够利用基于分级树构型的广播加密方案进行解密,所述信息处理设备的特征在于包括产生中间标记(IL)的中间标记产生装置,所述中间标记被定义为具有允许通过运算处理,计算分别与基于应用分级树的SD(子集差异)方案的子集对应的标记(LABEL)之中,与选定部分的特殊子集对应的标记的值,并且允许通过根据至少一个中间标记的值,应用陷门单向置换F,计算其它中间标记的值的数值;根据中间标记通过运算处理,产生与特殊子集对应的标记,并且还根据产生的标记,通过运算产生不对应于特殊子集的标记的标记产生装置;和确定用于供给与分级树的端节点对应的接收器的标记的供给用标记确定装置,所述标记包括不对应于特殊子集的特殊子集非对应标记,和通过运算处理,可根据其计算与特殊标记对应的标记的中间标记。
此外,在根据本发明的信息处理设备的一个实施例中,信息处理设备的特征在于还包括在有选择地供给从由标记产生装置产生的与子集对应的各个标记得到的子集密钥的同时,通过执行加密处理产生密文以便提供给接收器的密文产生装置。
此外,在根据本发明的信息处理设备的一个实施例中,标记产生装置的特征在于被配置成通过对中间标记进行散列处理,计算与特殊子集对应的标记的值。
此外,在根据本发明的信息处理设备的一个实施例中,标记产生装置的特征在于被配置成由对与特殊子集对应的标记的值进行的伪随机数产生处理,产生其它标记。
此外,在根据本发明的信息处理设备的一个实施例中,中间标记产生装置的特征在于被配置成在具有2N-1个节点的分级树中任意选择值x1∈ZM*,通过应用对其应用陷门单向置换F的逆置换F-1的下述两个等式任意之一,计算具有2N-1个节点的分级树中的节点对应值x1-x2N-1,同时在使用i作为计数器的情况下把i加1,直到i=2~2N-1,还把计算的值设置成可根据其计算特殊子集对应标记的中间标记(IL)的值[等式7] 其中 代表等于或小于i的最大整数,和[等式8] 其中 代表等于或小于i的最大整数其中M,d是作为加密参数的模数M和保密指数d。
此外,在根据本发明的信息处理设备的一个实施例中,在中间标记产生装置中选择的特殊子集是第一特殊子集和第二特殊子集中的至少一个,第一特殊子集是子集Si,之一,并且在节点i和节点j之间具有直接后代的父子关系,子集Si,j被定义为通过从生根于分级树中的节点i的子树中排除生根于低于节点i的节点j的子树而获得的子集,第二特殊子集是定义为具有包括分级树的所有叶子的根作为顶部的整树集合的子集S1,。
此外,在根据本发明的信息处理设备的一个实施例中,供给用标记确定装置的特征在于被配置成把用于供给与分级树的端节点对应的接收器的中间标记之一指定为与构成第一特殊子集的子集Si,j中的最低一个对应的中间标记。
此外,在根据本发明的信息处理设备的一个实施例中,中间标记产生装置的特征在于被配置成把分别和根据基本LSD(基本分层子集差异)方案设置的子集对应的标记(LABEL)中,与选择部分的特殊子集对应的标记设为可根据与特殊子集对应的中间标记(IL)计算的值,所述基本LSD方案具有基于由分级树中设定的单个特殊层面分隔开的各层的子集管理构型。
此外,在根据本发明的信息处理方法的一个实施例中,中间标记产生装置的特征在于被配置成把分别与根据一般LSD(一般分层子集差异)方案设置的子集对应的标记(LABEL)中,与选择部分的特殊子集对应的标记设为可根据与特殊子集对应的中间标记(IL)计算的值,所述一般LSD方案具有基于由分级树中设定的多个特殊层面分隔开的各层的子集管理构型。
此外,本发明的第五方面是一种信息处理设备,用于执行由分别与根据SD(子集差异)方案设置的子集对应的子集密钥加密的密文的解密处理,所述SD(子集差异)方案是一种基于分级树构型的广播加密方案,所述信息处理设备的特征在于包括从密文中选择通过应用可由伪随机数产生处理根据其中保持的标记,或者可从其中保持的中间标记计算的标记得到的子集密钥而产生的密文的密文选择装置;如果伪随机数产生处理不能根据保持的标记得到将应用于密文的子集密钥,那么通过对保持的中间标记执行运算处理,计算与特殊子集对应的标记的标记计算装置;伪随机数产生处理根据保持的标记或者计算的标记,产生子集密钥的装置;和通过应用产生的子集密钥,执行密文的解密处理的解密装置。
此外,在根据本发明的信息处理设备的一个实施例中,标记计算装置的特征在于被配置成通过对保持的中间标记执行陷门单向置换F,计算另一中间标记。
此外,在根据本发明的信息处理设备的一个实施例中,标记计算装置的特征在于被配置成通过对保持的中间标记,或者通过对保持的中间标记执行陷门单向置换F而获得的另一中间标记执行散列处理,执行标记的计算。
此外,在根据本发明的信息处理设备的一个实施例中,标记产生装置的特征在于要应用于密文的子集密钥是可由伪随机数发生处理根据与第一特殊子集或第二特殊子集对应的标记计算的子集密钥,第一特殊子集是子集Si,j之一,并且在节点i和节点j之间具有直接后代的父子关系,子集Si,j被定义为通过从生根于分级树中的节点i的子树中排除生根于低于节点i的节点j的子树而获得的子集,第二特殊子集是定义为具有包括分级树的所有叶子的根作为顶部的整树集合的子集S1,。标记产生装置的特征在于被配置成如果不持有与特殊子集对应的标记,那么通过对保持的中间标记进行运算处理,计算与特殊子集对应的标记。
此外,在根据本发明的信息处理设备的一个实施例中,标记计算装置的特征在于被配置成通过对保持的中间标记进行运算处理,计算与包括分级树中,从执行解密处理的接收器被分配给的节点到根节点的路径中的节点的特殊子集对应的标记。
此外,本发明的第六方面是一种信息处理设备,用于执行密文的产生处理,其中只有特定的选定设备能够利用基于分级树构型的广播加密方案进行解密,所述信息处理设备的特征在于包括在有选择地应用分别与根据应用分级树的SD(子集差异)方案设置的子集对应的子集密钥的时候,通过执行加密处理产生密文的密文产生装置;其中密文产生装置中要应用的子集密钥是可根据分别与子集对应的标记(LABEL)计算的子集密钥,并被设置成以致根据中间标记(IL),运算处理能够计算与选择部分的特殊子集对应的标记的值,并且中间标记允许通过根据至少一个中间标记的值,应用陷门单向置换F,计算其它中间标记的值。
此外,在根据本发明的信息处理设备的一个实施例中,信息处理设备的特征在于还包括产生子集密钥的子集密钥产生装置,其中子集密钥产生装置被配置成根据分别与子集对应的标记(LABEL),由伪随机数发生处理产生子集密钥。
此外,在根据本发明的信息处理设备的一个实施例中,信息处理设备的特征在于还包括产生子集密钥的子集密钥产生装置,其中子集密钥产生装置被配置成根据对其应用使用x1∈ZM*,及作为加密参数的模数M和保密指数d的陷门单向置换F的逆置换F-1的运算表达式,产生与特殊子集对应的中间标记,根据中间标记通过运算处理产生与特殊子集对应的标记,还根据产生的标记通过运算产生不对应于特殊子集的标记,和根据标记通过运算处理计算子集密钥。
此外,在根据本发明的信息处理设备的一个实施例中,特殊子集的特征在于是第一特殊子集和第二特殊子集中的至少之一,第一特殊子集是子集Si,j之一,并且在节点i和节点j之间具有直接后代的父子关系,子集Si,j被定义为通过从生根于分级树中的节点i的子树中排除生根于低于节点i的节点j的子树而获得的子集,第二特殊子集是定义为具有包括分级树的所有叶子的根作为顶部的整树集合的子集S1,。
此外,在根据本发明的信息处理设备的一个实施例中,子集的特征在于是根据基本LSD(基本分层子集差异)方案设置的子集,所述基本LSD方案具有基于由分级树中设定的单个特殊层面分隔开的各层的子集管理构型。
此外,在根据本发明的信息处理设备的一个实施例中,子集的特征在于是根据一般LSD(一般分层子集差异)方案设置的子集,所述一般LSD方案具有基于由分级树中设定的多个特殊层面分隔开的各层的子集管理构型。
此外,本发明的第七方面是一种计算机程序,用于产生应用于密文供给处理的分级树,在所述密文供给处理中,只有特定的选定设备能够利用基于分级树构型的广播加密方案进行解密,所述计算机程序的特征在于包括产生中间标记(IL)的中间标记产生步骤,所述中间标记被定义为具有允许通过运算处理,计算分别与基于应用分级树的SD(子集差异)方案的子集对应的标记(LABEL)之中,与选定部分的特殊子集对应的标记的值,并且允许通过根据至少一个中间标记的值,应用陷门单向置换F,计算其它中间标记的值的数值;根据中间标记通过运算处理,产生与特殊子集对应的标记,并且还根据产生的标记,通过运算产生不对应于特殊子集的标记的标记产生步骤;和确定用于供给与分级树的端节点对应的接收器的标记的供给用标记确定步骤,所述标记包括不对应于特殊子集的特殊子集非对应标记,和通过运算处理,可根据其计算与特殊标记对应的标记的中间标记。
本发明的第八方面是一种计算机程序,用于执行由分别与根据SD(子集差异)方案设置的子集对应的子集密钥加密的密文的解密处理,所述SD(子集差异)方案是一种基于分级树构型的广播加密方案,所述计算机程序的特征在于包括从密文中选择通过应用可由伪随机数产生处理根据其中保持的标记,或者可从其中保持的中间标记计算的标记得到的子集密钥而产生的密文的密文选择步骤;如果伪随机数产生处理不能根据保持的标记得到将应用于密文的子集密钥,那么通过对保持的中间标记执行运算处理,计算与特殊子集对应的标记的标记计算步骤;伪随机数产生处理根据保持的标记或者计算的标记,产生子集密钥的步骤;和通过应用产生的子集密钥,执行密文的解密处理的解密步骤。
此外,本发明的第九方面是一种计算机程序,用于执行密文的产生处理,其中只有特定的选定设备能够利用基于分级树构型的广播加密方案进行解密,所述计算机程序的特征在于包括在有选择地应用分别与根据应用分级树的SD(子集差异)方案设置的子集对应的子集密钥的时候,通过执行加密处理产生密文的密文产生步骤;其中密文产生步骤中要应用的子集密钥是可根据分别与子集对应的标记(LABEL)计算的子集密钥,并被设置成以致根据中间标记(IL),运算处理能够计算与选择部分的特殊子集对应的标记的值,并且中间标记允许通过根据至少一个中间标记的值,应用陷门单向置换F,计算其它中间标记的值。
应注意本发明的计算机程序是能够由存储介质,通信介质,例如诸如CD或FD、MO之类的存储介质,或者诸如网络之类的通信介质以计算机可读形式向例如能够执行各种程序代码的通用计算机系统提供的计算机程序。通过以计算机可读的形式提供这样的程序,能够在计算机系统上实现按照这种程序的处理。
根据基于本发明的下述实施例和附图的更详细说明,本发明的其它目的、特征和优点将变得明显。应注意本说明书中使用的系统意味着多个设备的逻辑集合,并不局限于其中均具有它自己的结构的设备被分入相同外壳内的一个系统。
根据本发明,对被认为是采用为广播加密方案的一个实施例的分级树结构的信息分发构型中,相当高效的构型的子集差异(SD)方案和分层子集差异(LSD)方案进一步应用基于单陷门单向置换的单向置换树,从而能够减少每个接收器应安全保持的信息的数量。
此外,在本发明的构型中,中间标记(IL)是被设置为数值的中间标记,根据所述数值通过运算处理能够计算与根据应用分级树的SD方案或LSD方案设定的子集对应的标记(LABEL)中,与选择的部分特殊子集对应的标记的值,并且这些中间标记具有通过根据至少一个中间标记的值,通过应用陷门单向置换F,能够由其计算其它中间标记的值的数值。由于除了不对应于特殊子集的标记之外,接收器还被给予一个中间标记,根据该中间标记,能够得到与特殊子集对应的标记,从而能够减少常规SD方案或LSD方案中,提供给接收器的标记的数目。至于减少的标记,通过对接收器保持的中间标记进行陷门单向置换F,能够计算其它中间标记,从而能够进行对可根据常规SD或LSD方案设定的所有子集的处理。作为应用本发明的构型的结果,能够减少每个接收器应保持的信息(标记)的数量。


图1是图解说明二元分级树形结构的视图。
图2是图解说明一种方法的视图,借助该方法,在二元分级树形结构中,发射只可由选定的信息处理设备获得的信息。
图3是图解说明在完整子树(CS)方案中应用的,并且其中每个节点分叉的分级树形结构的视图。
图4是图解说明完整子树(CS)方案中,由分配给叶子的接收器所有的节点密钥的视图。
图5是图解说明CS方案中如何有选择地只把保密信息提供给非取消接收器的视图。
图6是图解说明子集差异(SD)方案中的子集的定义的视图。
图7是图解说明子集差异(SD)方案中的标记的设置和配置的视图。
图8是图解说明子集差异(SD)方案中的子集的设置的视图。
图9是表示在SD方案中,假定接收器的总数被设为N=16的情况下,每个接收器要持有的标记的视图。
图10是图解说明SD方案中,将由每个接收器持有的标记的细节的视图。
图11是图解说明SD方案中,将由每个接收器持有的标记的细节的视图。
图12是图解说明SD方案中,特定的接收器u4所属的子集的细节的视图。
图13是图解说明单向置换树的结构的视图。
图14是图解说明用于设置与单向置换树中的节点对应的2N-1个节点对应值的算法的流程图。
图15是图解说明节点编号设置例子的视图,在该例子中,按照“宽度优先”,标识符(编号)被顺序赋予由1表示的根及其下级的节点。
图16是图解说明其中节点具有父子关系的第一特殊子集SSP(y),S(y)的配置例子的视图。
图17是表示与特殊子集对应的标记和用作参考图14图解说明的算法计算的2N-1个中间标记的值x1,x2,…,x2N-1之间的对应性的视图。
图18是图解说明中间标记和对应于图16的子集中的标记之间的对应性的视图。
图19是图解说明确定标记的处理,以便供给接收器的视图。
图20是表示设置处理的流程图。
图21是表示用于取消分级树形结构中的接收器u5、u11、u12的子集的视图,在所述分级树形结构中,接收器的总数被设为N=16。
图22是图解说明信息分发处理的程序的流程图。
图23是图解说明子集密钥导出处理的具体例子的视图。
图24是图解说明接收器执行的,关于自收到密文起的子集密钥获取和密文解密处理的程序的流程图。
图25是图解说明应用单向置换树的SD方案中,接收器的子集密钥导出处理的详细程序的流程图。
图26是图解说明执行标记确定处理,密文产生处理的信息处理设备的配置的视图。
图27是图解说明作为执行密文解密处理的接收器的信息处理设备的功能配置的视图。
图28是表示信息处理设备的硬件配置例子的方框图。
图29是图解说明基本LSD方案的视图。
图30是图解说明基本LSD方案中,将由每个接收器持有的标记的数目的视图。
图31是图解说明利用单向置换树,减少基本LSD方案中标记的数目的构型的视图。
具体实施例方式
下面参考附图,说明信息处理方法,解密处理方法,信息处理设备和计算机程序的细节。
应注意说明是按照下述项目给出的。
1.完整子树(CS)方案的概述
2.子集差异(SD)方案的概述3.使用单向置换树减少SD方案中标记的数目的构型4.配置单向置换树的方法例子5.应用单向置换树的信息分发处理例子6.基本分层子集差异(基本LSD)方案的概述7.利用单向置换树,减少基本LSD方案中标记的数目的构型8.通用分级子集差异(通用LSD)方案的概述9.利用单向置换树,减少通用LSD方案中标记的数目的构型[1.完整子树(CS)方案的概述]首先,概述完整子树(CS)方案,该方案被认为是对其应用现有的分有树形结构的广播加密方案。
应注意在下面的说明中,为了便于说明,假定设置成对应于分级树形结构的叶子的信息处理设备(接收器)的总数N等于2的N次幂。此外,在下面的说明内,在所有情况下,对数函数的底数为2。应注意分配给分级树形结构的叶子的设备可包括各种信息处理设备,例如PC、便携式终端,只要它们能够执行下面所述的保密信息的解密处理。这里,所述设备被总称为接收器。此外,本发明中的密文分发处理被解释成不仅包括借助经由通信网络的通信的密文供给处理,而且包括供给保存在记录介质中的密文的处理。
应注意下面列举的符号用在下面的说明中。
P(i)节点i的父节点,及其节点编号S(i)节点i的同胞节点(即,不同于节点i,并且和节点i具有相同父节点的节点),及其节点编号LC(i)节点i左侧的子节点,及其节点编号RC(i)节点i右侧的子节点,及其节点编号(1)完整子树(CS)方案完整子树(CS)方案基本上和在背景技术部分中的构形相同。如图3中所示,其中每个节点分叉的二元树被用作分级树形结构。图3表示其中接收器的数目N=16的例子。接收器被分别分配给该二元树的叶子(图3中的u1-u16)。此外,该二元树的任何节点被用于代表“由分配给生根于该节点顶部的子树的叶子的接收器组成的集合”。图3中的节点i201表示由接收器u5和u6组成的集合。
图3中所示的二元树的任何构成节点定义一个密钥(节点密钥)。每个接收器被赋予分配给从该接收器被分配给的叶子到二元树的根(顶点)的路径中的所有节点的节点密钥,并且该接收器把这些节点密钥保存在保密存储器中。二元树的定义,节点密钥的定义,接收器的分配,节点密钥的分发等由称为“可信中心(TC)”的可靠管理中心执行。
如图4中所示,16个接收器u1-u16被分配给该分级树,并且存在31个节点1-31。接收器u4被赋予分配给节点1、2、4、9、19的五个节点密钥。即,假定接收器的总数为N,每个接收器保持log N+1个节点密钥。
参见图5,图5描述了如何把保密信息(例如,用于对加密内容解密的内容密钥)发射给使用该设置的非取撤消收器。这里假定管理中心(TC)是保密信息的发射器。现在,假定接收器u2、u11、u12是将被废除的接收器。即,通过把接收器u2、u11、u12拒绝(废除)为未授权设备,只有除了这些接收器之外的接收器能够安全地接收信息,即能够根据密文广播进行解密。
当管理中心(TC)发射保密信息时,管理中心并不使用分别分配给在从被废除接收器u2、u11、u12所分配给的叶子到该树形结构的根部的路径中的节点的节点密钥作为加密密钥,而是产生和广播一组密文。
分别分配给在从被废除接收器u2、u11、u12所分配给的叶子到该树形结构的根部的路径中的叶子或节点的节点密钥是由这些要废除的接收器所有的密钥,从而,如果使用这些密钥,那么被废除设备能够获得保密信息。于是,发射器不使用这些密钥,而是产生和广播一组密文。
当从被废除接收器u2、u11、u12所分配给的叶子到该树形结构的根部的路径中的叶子,以及所述路径从所述树形结构中被排除时,剩余一个或多个子树,例如所述一个或多个子树是生根于节点5的子树,以及生根于节点12的子树。
保密信息的发射器一组密文,利用分配给最接近于这些子树的根部的节点,即在图5中所示例子中的节点5、7、9、12、16的节点密钥,把保密信息加密到所述一组密文中。例如,假定供传输的保密信息是将被应用于加密内容的解密的内容密钥Kc,并且分配给节点5、7、9、12、16的节点密钥是NK5、NK7、NK9、NK12、NK16,那么保密信息的发射器产生一组密文E(NK5,Kc)、E(NK7,Kc)、E(NK9,Kc)、E(NK12,Kc)、E(NK16,Kc),并通过网络分发产生的密文组,或者提供保存该密文组的记录介质。应注意E(A,B)表示用密钥A加密的数据B。
上面提及的一组密文不能被废除的接收器u2、u11、u12解密,但是可被其它接收器解密。通过产生和发射这样的密文组,能够实现保密信息的有效并且安全的传输。
通过对它能够解密的发射密文之一,即利用与在从它被分配给的叶子到根部的路径中的某一节点对应的节点密钥加密的一个密文解密,每个接收器能够获得保密信息。在上面的例子中,通过保存节点9的节点密钥,接收器u4能够对利用该密钥加密的密文E(NK9,Kc)解密。这样,在密文组中,总是存在可被非废除接收器解密的一个密文。
如上所述,在完整子树(CS)方案中,分级树的每个节点被用于代表“由分配给生根于该节点的子树的叶子的接收器组成的集合”。相反,在子集差异(SD)方案中,分级树的两个节点i,j(这里i是j的先辈节点)被用于表示“通过从(由生根于节点i的子树的叶子组成的集合)中减去(由生根于节点j的子树的叶子组成的集合)而获得的集合”。
例如,通过从一组接收器u1-u8中减去u5、u6,获得由图6的节点i 231和节点j 232定义的集合Si,j。即,Si,j={u1、u2、u3、u4、u7、u8}。关于所有各对节点i,j定义这样的集合,这里节点i是节点j的先辈(即,节点j不同于节点i,节点i存在于从节点j到根部的路径中)。
任何子集密钥SKi,j被设置成与任何子集Si,j对应的密钥。子集密钥SKi,j被设置成由通过从集合u1-u8中除去u5、u6而获得的子集Si,j={u1、u2、u3、u4、u7、u8}共享的密钥,通过发射其中利用子集密钥SKi,j作为加密密钥,对保密信息加密的信息,只有子集Si,j={u1、u2、u3、u4、u7、u8}能够实现解密,从而u5、u6中被废除(排除)。
在这样的设置下,单一接收器所属的集合的数目等于由下述表达式表示的数目O(N)。
Σk=1logN(2k-k)=O(N)]]>于是,当密钥(子集密钥)被独立分配给每个集合(子集)时,每个接收器需要安全地保存O(N)个子集密钥。但是,当接收器的总数N增大时,子集密钥的数目大大增加,从而,实际上难以使每个设备安全地保持这些数量惊人的信息。
为了克服该困难,在子集差异(SD)方案中提出了下述技术。类似于上面提及的完整子树(CS)方案,假定管理中心(TC)进行分级树的定义,子集的定义,密钥和定义和分发等。
首先,如图7(A)中所示,在注意某一内部节点(即不是叶子的节点)i的情况下,管理中心(TC)通过向节点i赋予标记LABELi随机选择一个C-比特值。
随后,如图7(B)中所示,LABELi被输入一个C-比特-输入3C-比特-输出伪随机数发生器G。从左侧开始(从最高阶比特一侧开始)输出被分成C-比特部分,它们分别由GL(S)、GM(S)、GR(S)表示。随后,在图7(A)中所示的节点i左侧的子节点k被赋予标记GL(S),在节点i右侧的子节点被赋予标记GR(S)。
现在,就为图7中的节点i左侧的子节点的节点k而论,假定节点i被设置成初始点,节点k的标记LABELi,k为LABELi,k=GL(S)。随后,此时把节点k的标记LABELi,k,即LABELi,k=GL(S)=T输入图7(B)中所示的伪随机数发生器G,从左开始,输出被划分成C比特部分,即GL(T)、GM(T)、GR(T)被如下规定GL(T)=在节点k的左侧的子节点LC(k)的标记LABELi,LC(k),假定节点i为初始点GM(T)=节点k的密钥(该密钥被假定为对应于集合Si,k的子集密钥SKi,k),假定节点i为初始点GR(T)=在节点k的右侧的子节点RC(k)的标记LABELi,RC(k),假定节点i为初始点通过重复该处理,产生与为节点i的子节点的所有节点对应的标记,假定节点i是初始点。应注意根据上面提及的定义,任何集合Si,i是空集合,当节点i被设为初始点时,不需要节点i的密钥。从而,应想起作为通过把任何LABELi,j输入伪随机数发生器G而获得的输出的中部的GM(S)不被使用。
用图7(A)的例子来表示这一点。确定为初始点的节点i的标记S。GR(S)是在节点i右侧的子节点的标记,假定节点i是初始点。此外,通过把GR(S)输入伪随机数发生器G而获得的GL(GR(S))是节点j的标记LABELi,j,假定节点i是初始点。对所有内部节点i进行产生与为节点i的子节点的所有节点对应的标记的处理,假定节点i是初始点。
这些处理步骤由管理中心(TC)在系统设置时进行。伪随机数发生器(或者伪随机数发生函数)由管理中心(TC)指定和公布。从而,通过利用这一点,赋予标记LABELi,j的接收器能够计算为节点j的子节点的所有节点的标记LABELi,n,假定节点i是初始点,并且计算节点j及其子节点n的子集密钥SKi,n,假定节点i是初始点。
作为这种设置的结果,如图8(A)中所示,就在从叶子u到树根的路径中的任何内部节点i,某一接收器u只需保持节点a、b、c的标记,节点a、b、c是直接从在接收器被分配给的叶子u到节点i的路径中的节点分出的节点,假定节点i是初始点。
能够产生这些节点a、b、c及它们的子节点的子集密钥,假定节点i是初始点。图8(A)中,通过注意节点i,存在直接从在从u到i的路径中的节点分出的三个节点a、b、c。从而,在其系统设置期间,从管理中心(TC)向接收器u给予这三个标记,并且接收器u保持这三个标记。
通过根据节点a的标记LABELi,a,利用伪随机数发生器G处理,叶子u能够获得与子集Si,a对应的子集密钥SKi,a。即,GM(LABELi,a)=SKi,a如图8(a)中所示,子集Si,a是其中生根于节点a的子树的叶子被设为废除设备的子集。从而,子集Si,a是其中排除生根于节点a的子树的叶子,只有生根于节点i的子树的叶子被设为将向其分发信息的叶子的子集。
此外,通过根据节点b的标记LABELi,b,利用伪随机数发生器G处理,叶子u能够获得与子集Si,b对应的子集密钥SKi,b。即,GM(LABELi,b)=SKi,b如图8(b)中所示,子集Si,b是其中生根于节点b的子树的叶子被设为废除设备的子集。从而,子集Si,b是其中排除生根于节点b的子树的叶子,只有生根于节点i的子树的叶子被设为将向其分发信息的叶子的子集。
此外,通过根据节点c的标记LABELi,c,利用伪随机数发生器G处理,叶子u能够获得与子集Si,c对应的子集密钥SKi,c。即,GM(LABELi,c)=SKi,c如图8(c)中所示,子集Si,c是其中节点c(叶子c)被设为废除设备的子集。从而,子集Si,c是其中排除叶子c,只有生根于节点i的子树的叶子被设为将向其分发信息的叶子的子集。
除了这三种构型之外,还可存在用于废除叶子的各种其它构型,除了其中i被设为初始点的分级树中的叶子u之外。例如,如果只有图8(a)中的叶子d 251将被废除,那么需要确定子集Si,d,并应用子集密钥SKi,d。但是,根据更高阶的标记,伪随机数发生处理能够产生与任何节点、叶子对应的密钥,即子集密钥。于是,根据叶子u持有的节点a的标记LABELi,a,叶子u能够产生子集密钥SKi,d,以便废除叶子d 251。
这类似地适用于其它子集构型。如图8(A)中所示,就在从被分配某一接收器u的叶子到树根的路径中的任何内部节点i而论,某一接收器u可能不得不只持有节点a、b、c的标记,节点a、b、c是直接从在从该叶子u到i的路径中的节点分出来的节点,假定节点i是初始点。
图9是表示如果接收器的总数被设为N=16,那么每个接收器要持有的标记的视图。现在,假定考虑接收器u4。在从节点19到根1的路径中的每个内部节点1、2、4、9是初始点(节点i),节点19是被分配所述接收器u4的叶子。如果节点1被设为初始点,那么直接从在从节点10到节点1的路径中的节点分出来的节点是四个节点3、5、8、18,从而接收器u4持有四个标记,即,LABEL1,3,LABEL1,5,LABEL1,8LABEL1,18类似地,如果节点2被设为初始点,那么接收器u4保持三个标记LABEL2,5,LABEL2,8,LABEL2,18如果节点4被设为初始点,那么接收器u4保持两个标记LABEL4,8,LABEL4,18如果节点9被设为初始点,那么接收器u4保持一个标记LABEL9,18此外,接收器u4保持一个标记LABEL1,
它对应于在没有接收器将被废除的特殊情况中使用的,从而包括所有接收器的集合(该集合被表示成子集S1,)。
即,在图9的构型中,u4保持的LABEL可被如下重新排列。
四个标记,对于i=1来说,它们是j=3、5、8、18三个标记,对于i=2来说,它们是j=5、8、18二个标记,对于i=4来说,它们是j=8、18一个标记,对于i=9来说,它们是j=18对于没有废除的情况来说的一个标记从而,总共存在11个标记。
这里,为了使说明前后一致,安排成u4具有与子集S1,对应的标记。但是,代替该标记,另一方面可安排成u4直接保持与子集S1, 对应的子集密钥。
如上所述,就叶子到根部路径中的任何内部节点而论,每个接收器需要保持和内部节点的高度一样多的标记,外加一个特殊标记。从而,在假定发射器/接收器的数目为N的情况下,每个接收器保持的标记的数目等于由利用下述表达式计算得到的数目。
1+Σk=1logNk=12log2N+12logN+1]]>每个接收器保持由上述表达式所指示数目的标记,并且通过利用公布的伪随机数发生函数G,能够产生必需的子集密钥。接收器需要安全地保持这些标记。
下面,说明利用根据本发明的单向置换树,减少子集差异(SD)方案中的标记的数目的构型。观察上面提及的子集差异(SD)方案,可理解下述内容。
即,存在下述情况(A)标记LABELi,j被管理中心(TC)直接给予接收器,和(B)利用伪随机数发生器G,由接收器从除那些标记之外的一个标记得出标记LABELi,j。
但是,就节点i和j具有父子关系(距离为1,即在层次上是连续的)的任何标记来说,上述情况(B)并不存在,只能够存在标记LABELi,j被管理中心(TC)直接给予接收器的情况(A)。
其原因如下。即,为了使某一接收器利用伪随机数发生器G产生LABELi,j,接收器需要知道利用节点k产生的标记LABELi,k,节点k是节点j的先辈。但是,由于节点i,j具有父子关系,因此不存在既为节点j的先辈,又为节点i的后辈的这种节点k,任何接收器都不会被给予LABELi,k。
下面参考图10的构型例子进行说明。LABEL2,8被管理中心(TC)直接给予接收器u4,但是未被直接给予接收器u5。接收器u5利用伪随机数发生器G,根据管理中心(TC)给出的LABEL2,4,计算GL(LABEL2,4),从而得到LABEL2,8。
相反,如图11中所示,其中节点2和节点5具有父子关系的LABEL2,5被直接给予属于子集S2,5的接收器u1、u2、u3、u4。由于除这些接收器之外的接收器并不属于该集合,因此即使通过计算,它们也不能得到LABEL2,5。即,这样的标记只能由管理中心(TS)直接给予接收器,而决不能通过利用伪随机数发生器G得到。
此外,在SD方案中,当某一节点i是两个不同节点j、k的父节点,并且节点j是不同于它们的节点n的父节点时,可以看到属于任何子集Sj,n的接收器总是属于任何子集Si,k。
例如,如图12中所示,属于子集S9,18的接收器U4还属于子集S4,8、S2,5,S1,3中的任何一个。即,S9,18={u4}S4,8={u3、u4}S2,5={u1、u2、u3、u4}S1,3={u1、u2、u3、u4、u5、u6、u7、u8}此外,与属于子集S4,8的接收器u4不同的接收器u3也属于子集S2,5,S1,3中的任何一个。
在本发明中,通过应用对其应用陷门单向置换的密钥的树形结构,即,通过对其中节点i和j具有父子关系的任何标记LABELi,j,以及对和子集S1,对应的标记LABEL1,应用单向置换树,将由接收器保持的标记的数目被减少,所述子集S1,是在没有接收器要被废除的特殊情况下使用的,从而包括所有接收器的集合。
在上面提及的子集差异(SD)方案中,每个接收器保持总共log N个标记LABELi,j,对于其中的每个标记,节点i和节点j具有父子关系,一个标记用于在从接收器被分配给的叶子到树根的路径中的一个内部节点。在本发明中,通过应用单向置换树,以致能够从单个值得到总共log N+1个标记,所述log N+1个标记是这些标记LABELi,j外加与子集S1,对应的标记LABEL1,,所述子集S1,是在没有接收器要被废除的特殊情况下使用的,从而包括所有接收器的集合,从而将由接收器保持的标记的数目被减少。
在原始的SD方案中,如前参考图9所述,接收器u4需要安全地保持总共11个标记。即,四个标记,在i=1的情况下,它们是j=3、5、8、18LABEL1,3,LABEL1,5,LABEL1,8,LABEL1,18三个标记,在i=2的情况下,它们是j=5、8、18LABEL2,5,LABEL2,8,LABEL2,18二个标记,在i=4的情况下,它们是j=8、18LABEL4,8,LABEL4,18一个标记,在i=9的情况下,它们是j=18LABEL9,18,和没有任何废除的情况下的一个标记
LABEL1,通过应用本发明的构型,接收器只需要保持下述标记,即,在其中的每一个中,节点i、j具有父子关系的标记,即LABEL1,3,LABEL2,5,LABEL4,8,LABEL9,18以及同样,没有任何废除的情况下的一个标记LABEL1,接收器需要保存原始SD方案的标记。在本发明中,通过应用单向置换树,以致能够从单个值得到总共log N+1个标记,所述log N+1个标记是这些标记和与子集S1,对应的标记LABEL1,,所述子集S1, 是在没有接收器要被废除的特殊情况下使用的,从而包括所有接收器的集合,从而将由接收器保持的标记的数目被减少。
应注意术语“陷门单向置换”意味着置换处理y=F(x),其中根据x计算y简单,但是难以进行反向计算。即,根据y计算x的处理只能由知道某一条保密信息(陷门)的人完成,但是对于不知道该保密信息(陷门)的人来说,难以(几乎不可能)完成该处理。
下面,说明信息分发构型,所述信息分发构型以使用根据本发明的单向置换树的分级树形结构为基础。应注意本说明中使用的术语“单向置换树”不是一个一般术语,而是一个用于本发明的说明的术语,从而,是定义具有某一特征的树形结构的术语。
下面说明术语“单向置换树”的定义。
具有N片叶子的完整二元树被如下定义为一个单向置换树。如图13中所示,如果为最高等级节点的根节点被设为1,对于按照“宽度优先”的较高等级的节点,从左开始顺序向根节点1之后的其它节点给予节点编号2、3、...、2N-1,那么值xi(i=1,2,...,2N-1)被设为与节点i对应的值,即节点对应值,其中关于i=1,2,...,2N-1建立下述表达式的树形结构被定义为单向置换树。
其中 表示等于或小于i的最大整数。
(公式1)在上面的表达式中,F-1是陷门单向置换F的逆置换。
应注意RSA密码术被命名为陷门单向置换的一个例子。RSA密码术是一种密码系统,在使用模数M,公开指数e,保密指数d作为参数的时候,它使用(公开)置换F=xemod M(保密)逆置换F-1=xdmod M例如在A.J.Menezes,P.C.van Oorschot和S.A.Vanstone的“Handbook of Applied Cryptography”,CRC Press,1996中介绍了RSA密码术的说明。
此外,作为另一例子,单向置换树可被定义成对其应用单向函数h,例如散列函数,而不是上述表达式(公式1)的树形结构。即,其中建立下述表达式的树形结构可以是单向置换树。
其中 表示等于或小于i的最大整数。
(公式2)函数h是产生与任何长度的输入相比,具有一定长度的输出的函数。它是函数y=H(x),其中能够根据x容易地计算y,但是反向计算困难。这样的函数被称为单向函数或散列函数,包括通常已知的一些函数,例如产生160比特输出的MD4、MD5和SHA-1。在上面提及的“Handbook of Applied Cryptography”中也介绍了这些函数。
当用图表表示时,设置成对应于单向置换树的任何构成节点i的节点对应值xi之间的设定关系,与应用于每个节点对应值的计算的置换F对应的运算(f),和与逆置换F-1对应的运算(f-1)如图13中所示。
如图中所示,根据某一节点的值,通过利用陷门单向置换的正置换F,可由运算f计算其父节点的值,相反,根据某一节点的值,通过利用逆置换F-1,可由运算f-1计算其子节点的值。这里应想起逆置换实际上只能由知道陷门(保密信息)的人进行,不知道陷门(保密信息)的人难以进行所述逆置换。
通过利用RSA密码术(它是陷门单向置换之一),参考图14说明产生单向置换树的算法,所述单向置换树是具有N片叶子的二元树。
首先,在步骤S101中,随机选择数字x1∈ZM*。应注意x1∈ZM*表示X1是循环组ZM*的发生器。
随后,在步骤S102-S105中,在利用i作为计数器,把i加1直到i=2,...,2N-1的时候,根据下面的表达式(公式3)计算节点对应值Xi。
其中 代表等于或小于i的最大整数。
(公式3)上述表达式(公式3)等同于从较高的节点顺序执行等同于图13中的逆置换的运算f-1。
在步骤S102-S105中,当在利用i作为计数器,把i加1直到i=2,...,2N-1的时候,已根据上面的表达式(公式3)计算了节点对应值Xi时,通过输出均具有|M|比特的2N-1个数字x1,x2,...,x2N-1,在步骤S106中结束该算法。每个值xi等于与单向置换树的节点i对应的值,即节点对应值。这里应想起具有N片叶子的完整二元树的节点的总数为2N-1。
应注意应用于图14中所示处理流程中的步骤S103的计算节点对应值的运算可另外地被配置成通过应用散列函数h,从而应用下述表达式(公式4)来执行。
其中 代表等于或小于i的最大整数。
(公式4)[5.对其应用单向置换树的信息分发处理例子]下面描述对其应用上述单向置换树的信息分发处理例子。下面按照下述顺序依次进行说明(5-1)设置处理(5-2)信息分发处理(5-3)接收和解密处理(5-1)设置处理只在系统启动时进行一次设置处理。之后每次产生要发射的信息时,执行信息分发,以及接收和解密处理。每次创建并向用户分发保存内容的记录介质,例如其中保存有新内容的DVD盘时,或者每次通过因特网分发加密内容时,重复后一处理。
设置处理由下述步骤1-4完成。下面说明这些步骤中的每一个。
a.步骤1首先,管理中心(TC)定义分级树,所述分级树是具有N片叶子的二元树。应注意该分级树不同于上面提及的单向置换树。与分级树中的任何节点对应的标识符被设置为k(k=1,2,...,2N-1)。但是,根被设为1,至于其下级节点,按照宽度优先顺序给予标识符(编号)。即,进行如图15中所示的节点编号(y)的设置。作为该处理的结果,对二元树中的各个节点设定节点编号y=1-2N-1。
接收器um(m=1,2,...,N)被分配给该树形结构的各个叶子。在图15的例子中,16个接收器u1-u16被分配给节点编号y=16-31。
随后,至于内部节点i(i=1,2,...,2N-1),定义与任何节点j(它是节点i的子节点)对应的任何子集Si,j。此外,在所有上面定义的子集Si,j中,其中节点i和j具有父子关系的任何子集Si,j被定义为第一特殊子集(特殊子集)SSi,j。这里应想起除根节点之外的树形结构的每个节点只具有一个父节点,从而取值n=2,3,...,2N-1的j在SSi,j中只被一次用作j。另外,还定义在没有任何接收器将被废除的情况下使用的,从而包括所有接收器的第二特殊子集SS′1,。
b.步骤2管理中心(TC)产生模数M,公开指数e,保密指数d(它们是RSA密码术的参数),并公布模数M和公开指数e。这里假定模数M的大小为|M|比特。例如,|M|比特=1024比特。另外,管理中心选择并公布伪随机数发生器G和输出C比特(例如128比特)的散列函数H。伪随机数发生器G是上面参考图7说明的伪随机数发生器G,它根据C比特输入输出3C比特的伪随机数,从而类似于在上面提及的SD方案中应用的,并在Noar等的文献中解释的伪随机数发生器。
随后,通过输入叶子的数目=N,模数M,保密指数(它们是RSA密码术的参数),管理中心(TC)根据上面参考图14的流程说明的算法,产生单向置换树,所述单向置换树是具有N片叶子的二元树,以便计算与每个节点i对应的值xi。这里注意在计算与每个节点i对应的值Xi中,应用上面提及的表达式(公式)和(公式4)中的任意一个。
管理中心(TC)把在上面提及的处理中确定的值设为中间标记IL,作为用于产生在没有任何接收器将被废除的情况下使用的,从而包括所有接收器的第二特殊子集SS′1,的数据。即,IL1,=X1第二特殊子集SS′1,的标记被设为LABEL1,,并且假定LABEL1, 是通过散列处理(H)上面提及的IL1,而获得的值。即,LABEL1,=H(IL1,)此外,至于与所有子集Si,j中,其中节点i和j具有父子关系的每个第一特殊子集SSi,j对应的标记,如下确定中间标记ILi,j作为它们的发生器数据。即,由上面提及的处理(参见图14)设为与节点1~2N-1对应的值的数值x1-x2N-1中,除对应于根节点的值x1之外的值xy(y=2,3,...,2N-1)被设为与节点y的同胞节点和父节点确定的第一特殊子集SSP(y),S(y)对应的中间标记ILP(y),S(y)。即,xy=ILP(y),S(y)其中P(y)是节点y的父节点,S(y)是节点y的同胞节点。
图16中表示了一个具体例子。在图16中,作为节点对应值的xy被分配给节点y 301。应注意包括xy在内的所有节点对应值是满足上面提及的表达式(公式1)的值,从而,xy=ILP(y),S(y)节点y 301的父节点是P(y)302,其同胞节点是S(y)303。由节点301的同胞节点S(y)303和父节点P(y)302确定的第一特殊子集SSP(y),S(y)是图16中所示的子集SSP(y),S(y)310。
此时,对应于子集SSP(y),S(y)的标记是LABELP(y),S(y),LABELP(y),S(y)被设为基于中间标记ILP(y),S(y)的散列值(这等于节点y 301的节点对应值xy)。即,LABELP(y),S(y)=H(ILP(y),S(y))上面提及的表达式等同于LABELP(y),S(y)=H(xy)当用通用表达式表示时,与所有子集Si,j中,其中节点i和j具有父子关系的任何第一特殊子集SSi,j(其中如上所述,j=2,3,...,2N-1)对应的标记LABELi,j采取基于对应中间标记ILi,j的散列值。即,它被计算为LABELi,j=H(ILi,j)应注意,如上所述,也可通过散列处理(H)对应的中间标记IL1,,计算在没有任何接收器将被废除的情况下使用的,从而包括所有接收器的第二特殊子集SS′1,的标记LABEL1,。即,LABEL1,=H(IL1,)应注意虽然在本实施例中描述了其中对基于中间标记的标记计算处理应用散列处理的例子,不过另一方面可应用除散列处理之外的其它运算处理,只要所述处理最好以单向函数为基础。
在步骤2,管理中心执行下述处理,以便把(a)在没有任何接收器将被废除的情况下使用的,从而对应于包括所有接收器的整个树形结构第二特殊子集SS′1,的标记LABEL1,,和
(b)与其中节点i和j具有父子关系的任何第一特殊子集SSi,j(其中如上所述,j=2,3,...,2N-1)对应的标记LABELi,j,即,与分别在上面的(a)、(b)中提及的特殊子集对应的标记设置为中间标记IL1,的散列值,任何中间标记ILi,j的散列值应注意每个中间标记的值是节点对应值Xi,它是根据上面参考图14描述的算法计算的值,从而是满足上述表达式(公式3或公式4)的值。即,IL1,=X1此外,对于y=1,2,...,2N-1ILy,2y=x2y+1ILy,2y+1=x2y图17中表示了用于把节点对应值xi设为中间标记(IL)的处理例子,中间标记(IL)是用于产生(a)在没有任何接收器将被废除的情况下使用的,从而对应于包括所有接收器的整个树形结构的第二特殊子集SS′1,的标记LABEL1,,和(b)与其中节点i和j具有父子关系的任何第一特殊子集SSi,j(其中如上所述,j=2,3,...,2N-1)对应的标记LABELi,j。
在图17中,[i xkj]表示xk=ILi,j其中i是j的先辈。
例如,[1 x32]表示x3=IL1,2这样,节点对应值xi被设为与中间标记对应的值,根据中间标记,能够计算上面提及的第一特殊子集SSi,j,和第二特殊子集SS′1,。
管理中心(TC)根据设置的中间标记计算散列值,从而确定(a)在没有任何接收器将被废除的情况下使用的,从而对应于包括所有接收器的整个树形结构的第二特殊子集SS′1,的标记LABEL1,,和(b)与其中节点i和j具有父子关系的任何第一特殊子集SSi,j(其中如上所述,j=2,3,...,2N-1)对应的标记LABELi,j。
图18中表示了与上述图16对应的一个具体例子。假定节点y 301被赋予节点编号8,如图中所示。节点对应值x8被分配给节点y 301。节点y 301的父节点是节点编号为4的P(y)302,其同胞节点S(y)303的节点编号为9。由节点y 301的同胞节点S(y)303和父节点P(y)302指定的第一特殊子集SSP(y),S(y)是图16中所示的子集SS4,9310。此时,作为产生与子集SS4,9310对应的标记的数据的中间标记是x8=ILP(y),S(y)=IL4,9与子集SS4,9310对应的标记是LABEL4,9,LABEL4,9被设为基于中间标记IL4,9的散列值(这等于节点y 301的节点对应值x8)。即,LABEL4,9=H(IL4,9)上述表达式等同于LABEL4,9=H(x8)如上所述,管理中心在步骤2中确定,(a)在没有任何接收器将被废除的情况下使用的,从而对应于包括所有接收器的整个树形结构的第二特殊子集SS′1,的标记LABEL1,,和(b)与其中节点i和j具有父子关系的任何第一特殊子集SSi,j(其中如上所述,j=2,3,...,2N-1)对应的标记LABELi,j。
每个标记被计算为等于其节点对应值的中间标记的散列值。
c.步骤3随后,管理中心(TC)把其中节点i和j具有父子关系的第一特殊子集SSi,j的标记LABELi,j输入为随机数发生器G,从而获得节点j的子节点的标记LABELi,LC(j)和LABELi,RC(j),假定节点i是初始点。
即,代表通过把C比特的LABELi,j输入伪随机数发生器G而获得的3C比特随机数的高阶C比特的GL(LABELi,j)被设为与节点j的左侧子节点LC(j)对应的(非特殊)子集Si,LC(j)的标记LABELi,LC(j),假定节点i为初始点。另外,代表通过把C比特的LABELi,j输入伪随机数发生器G而获得的3C比特随机数的低阶C比特的GR(LABELi,j)被设为与节点j的右侧子节点RC(j)对应的(非特殊)子集Si,RC(j)的标记LABELi,RC(j),假定节点i为初始点。即,标记被分别设为LABELi,LC(j)=GL(LABELi,j)LABELi,RC(j)=GR(LABELi,j)此外,通过反复把这些输出(标记)输入伪随机数发生器G,获得与为节点j的后辈的所有节点对应的标记,假定节点i为初始点。对所有特殊子集SSi,j的标记执行该处理,从而获得在步骤1中定义的所有子集Si,j的标记。
d.步骤4随后,管理中心(TC)确定用于供给接收器的标记,即,将由接收器um保持的标记。
首先,原始SD方案中给予接收器um的标记被选为试验性选择标记。它们是子集Si,j的标记LABELi,j,和与上面提及的第二特殊子集SS′1,对应的标记LABEL1,,每个子集Si,j始于在从接收器um被分配给的叶子到根节点的路径m(path-m)中的任何内部节点i,并且每个子集Si,j对应于直接从在从该叶子到节点i的路径中的节点分出来的节点j。
参见图19,下面说明用于供给接收器的标记的确定处理。例如,11个标记被选为与图19的节点编号19对应的接收器u4的试验性选择标记,它们是LABEL1,3,LABEL1,5,LABEL1,8,LABEL1,18,LABEL2,5,LABEL2,8,LABEL2,18,LABEL4,8,LABEL4,18,LABEL9,18,LABEL1,。
管理中心(TC)从这些试验性选择的标记中,重新选择用于供给接收器um的标记。应注意在上面提及的11个试验性选择的标记中,其中节点I和j具有父子关系的每个第一特殊子集SSi,j的标记是四个标记LABEL1,3,LABEL2,5,LABEL4,8,LABEL9,18。
在这些试验性选择的标记中,管理中心(TC)把通过排除与上面提及的第一和第二特殊子集对应的那些标记而获得的标记指定为最终选择的给接收器u4的标记,即用于供给接收器u4的标记。
此外,管理中心(TC)把特殊子集SSP(j),S(j)的中间标记ILP(j),S(j)给予接收器,特殊子集SSP(j),S(j)始于接收器被分配给的叶子j的父节点P(j),并且对应于j的同胞节点S(j)。在上面的例子中,管理中心(TC)把IL9,18给予接收器u4。该接收器安全地保持给予的标记和中间标记。
即,首先,作为接收器u4需要具有的标记,具有下述i,j对的标记LABELi,j被指定为试验性选择的标记。
j=3、5、8、18,i=1j=5、8、18,i=2j=8、18,i=4j=18,i=9用于没有任何废除的情况的一个标记。
随后,从上面提及的11个试验性选择标记中,通过排除与上面提及的第一和第二子集对应的那些标记而获得的标记,以及单个中间标记被指定为最终选择的给接收器u4的标记,即用于供给接收器u4的标记。即,具有下述i,j对的标记LABELi,j被指定为用于供给的标记。
j=5、8、18,i=1j=8、18,i=2j=18,i=4中间标记IL9,18。
上述6个标记和一个中间标记被指定为用于供给的标记。
应注意在除了上述例子中所示的接收器u4之外的任何接收器um中,在N=16设置构型中,给予6个标记和一个中间标记,不过给予的6个标记和一个中间标记的组合因接收器而异。
应注意设为用于供给接收器um的标记的一个中间标记是与分级树中,和接收器um最近的先辈定义的第一特殊子集,即其中节点i和j均具有父子关系的第一特殊子集SSi,j(如上所述,j=2,3,...,2N-1)之一对应的中间标记ILi,j。即,用于供给与分级树中的某一叶子对应的接收器的中间标记之一是与上面提及的第一特殊子集Si,j中最低的一个对应的中间标记。
图20中表示了在上述设置过程中,管理中心(TC)执行的处理的流程。首先,在步骤S201中,定义分级树(HKT)构型。在步骤S202中,设定子集,以便对应于分级树集合。子集可被任何定义。子集可被设置成以致任何叶子能够被单独废除,或者以致可根据要分发的信息,把特定的叶子分到废除单元中。
随后,在步骤S203中,设置参数,并产生单向置换树。这里,等于N的叶子数,为RSA密码术的参数的模数M和保密指数d作为参数被输入,从而根据上面参考图14的流程说明的算法,产生单向置换树,该单向置换树是具有N片叶子的二元树,以便计算与每个节点i对应的值xi。这里注意表达式(公式3)和(公式4)任意之一被应用于计算与每个节点i对应的值xi。
在步骤204中,节点对应值xi被设为中间标记的值,并根据这些中间标记(IL)计算与特殊子集对应的标记。即,IL1,=x1此外,对于y=1,2,...,2N-1ILy,2y=x2y+1ILy,2y+1=x2y这里将要获得的中间标记是对应于(a)在没有任何接收器将被废除的情况下使用的,从而包括所有接收器的第二特殊子集SS′1,,和(b)其中节点i和j具有父子关系的任何第一特殊子集SSi,j(其中如上所述,j=2,3,...,2N-1)对应的中间标记。
此外,根据这些中间标记,计算与特殊子集对应的标记。与特殊子集对应的标记被计算为中间标记的散列值。
随后,在步骤S205中,根据与特殊子集对应的标记,计算不对应于特殊子集的标记。例如,第一特殊子集SSi,j的标记LABELi,j被输入伪随机数发生器G,从而获得节点j的子节点的标记LABELi,LC(j)和LABELi,RC(j),假定节点i是初始点。通过反复执行该处理,计算与设定的子集对应的所有标记。
随后在步骤S206中,参数被公布。要公布的参数是例如RSA密码术的模数M,公开指数e。此外,在步骤S207中,公布伪随机数发生器G和散列函数H。此外,如果在步骤S204中使用(公式4),那么还公布散列函数h。
在步骤S208中,选择用于供给设置成对应于分级树的叶子的每个接收器的标记和中间标记。以两步处理的形式执行该部分的处理,所述两步处理涉及试验性所选标记的选择,以及用于供给的标记的选择,如上所述。
即,首先,作为接收器um需要具有的标记(LABEL),在原始SD方案中给予的标记,即,子集Si,j的标记LABELi,j,和与上面提及的第二特殊子集SS′1,对应的标记LABEL1,被选为试验性选择的标记,每个子集Si,j始于在从接收器um被分配给的叶子到根节点的路径m(path-m)中的任何内部节点i,并且每个子集Si,j对应于直接从在从该叶子到节点i的路径中的节点分出来的节点j。之后,通过排除与第一和第二特殊子集对应的上述标记而获得的标记LABELi,j和一个中间标记被设置成用于供给的标记。
设为用于供给的一个中间标记是与由接收器um被分配给的叶子n的父节点和同胞节点定义的第一特殊子集,即,其中节点i是叶子n的父节点,节点j是叶子n的同胞节点的第一特殊子集Si,j(其中j=N,N+1,...,2N-1,因为j是叶子)。例如,用于供给如图19中所示的对其设置节点编号19的接收器u4的中间标记是中间标记IL9,18。
在步骤S209中,在步骤S208中确定的用于供给接收器的标记被提供给接收器,之后,结束该处理。应注意或者通过在接收器的生产过程中,事先把标记保存在防止篡改的存储器中,或者通过使用不存在信息泄漏的装置,例如安全通信路径或介质,供给标记。另外注意在图20中所示的处理流程中的步骤不一定按照所示的顺序。
(5-2)信息分发处理下面,说明在上述设置处理之后执行的保密信息传输处理的细节。信息分发,即保密信息的传输由广播至少一个密文的管理中心(TC)执行。通过用子集密钥之一对保密信息加密,获得每个密文。例如,以通过分别利用不同的子集密钥,对供传输的相同保密信息加密而获得的一组多个密文的形式,形成由管理中心发射的保密信息。
例如,如果保密信息是将被应用于加密内容的解密的密钥,即内容密钥Kc,那么产生并提供通过用多个子集密钥对内容密钥Kc加密而获得的一组密文。例如,密文E(SKa,b,Kc),E(SKc,d,Kc),E(SKe,f,Kc)被产生,并通过网络分发或者保存它们的记录介质被提供。应注意E(A,B)表示用密钥A加密的数据B。上述例子代表由通过应用三个不同的子集密钥而加密的三个密文组成的密文集合。
子集密钥SKa,b,SKc,d,SKe,f是分别与管理中心(TC)选择的子集对应的子集密钥,以便把特定的设备设为被废除设备。
除了供废除的设备之外的接收器能够根据接收器保持的标记(标记和一个中间标记),产生应用于密文的加密的任何子集密钥,并且只有除被废除设备之外的经授权的选定接收器能够通过对包括在E(SKa,b,Kc),E(SKc,d,Kc),E(SKe,f,Kc)中的任何密文解密而获得内容密钥Kc。
图21中表示了用于废除其中接收器的总数被设为N=16的分级树构型中的接收器u5、u11、u12的子集。用于废除接收器u5、u11、u12的子集是两个子集,它们是S2,20和S3,13。
将不被废除的接收器包括在这两个子集S2,20和S3,13中的任何一个中,要被废除的接收器u5、u11、u12不包括在它们任何一个之中。从而,如果利用与这些子集对应的子集密钥S2,20和S3,13加密保密信息,并且随后发射所述保密信息,那么只有将不被废除的接收器能够解密密文,从而获得保密信息。
参考图22中所示的流程,说明信息分发处理的程序。下面说明科22中所示流程中的每个步骤。
首先,在步骤S301中,管理中心(TC)选择不向其提供传输用保密信息的废除接收器,即排除的设备。应注意所有接收器被设置成分别对应于分级树的各个叶子。
随后在步骤S302中,根据分级树中与确定的废除接收器对应的叶子位置,确定将被应用于保密信息的分发的子集。例如,在图21的例子中,接收器u5、u11、u12被选为废除的接收器,要应用的子集是两个子集S2,20和S3,13。
在步骤S303中,选择与确定的子集对应的子集密钥。管理中心(TC)事先持有与所述子集对应的子集密钥。例如,在图21的例子中,选择与两个子集S2,20和S3,13对应的两个子集密钥SK2,20和SK3,13。
随后在步骤S304中,通过在利用在步骤S303中选择的子集密钥的时候,对保密信息加密产生密文集合。例如,在图21的例子中,通过在利用两个子集密钥SK2,20和SK3,13的同时,对保密信息加密,产生密文集合。在图21的例子中,通过在利用两个子集密钥SK2,20和SK3,13的同时,对保密信息(例如内容密钥Kc)加密,产生下述密文集合。
E(SK2,20,Kc),E(SK3,13,Kc)在步骤305中,在步骤S304中产生的密文集合被发射(广播)给接收器。要发射的密文集合由只能被除被废除设备之外的接收器解密的密文形成。被废除设备不能对任何密文解密,从而能够实现安全的信息分发。
应注意在发射密文集合的过程中,可一起发射作为与子集对应密文的排列有关的信息而包括在每个密文中的子集指定信息。每个接收器根据该指定信息,能够容易地抽取对其应用可独立产生的子集密钥的密文。作为一个具体方案,可应用例如在日本专利申请公布No.2001-352322中公开的使用密钥指定代码的构型。
应注意和于加密的子集密钥可以是在设置阶段中产生,并由管理中心(TC)保存在存储器中的子集密钥,或者可以通过利用伪随机数发生器G,得自于在设置阶段中产生并被保存在存储器中的那些基于子集的标记。
此外,另一方面,在设置阶段中把参数x1,M,d保存在存储器中,并且每当需要必需的标记和子集密钥时,利用这些参数得到它们也是可接受的。即,作为子集密钥产生处理,根据对其应用陷门单向置换F的逆置换F-1的运算表达式,计算与特殊子集对应的中间标记。陷门单向置换F使用值x1∈ZM*,模数M和保密指数d作为加密参数,它们都已由管理中心公布。随后,通过根据中间标记进行运算处理,产生与特殊子集对应的标记。此外,根据产生的标记,通过运算产生不与特殊子集对应的标记。此外,通过基于所得到的标记的运算处理,计算子集密钥。从而可得到子集密钥。
应注意在没有任何接收器将被废除的情况下,利用上面提及的第二特殊子集SS′1,的子集密钥SK1,,对保密信息加密。
(5-3)接收和解密处理将不被废除的接收器属于上面提及的子集中的任何一个。从而,如果利用对应于该子集的子集密钥产生的密文被解密,那么能够获得保密信息。为了使接收器找到解密用密文,接收器只需要使用上面提及的子集指定信息。在指定密文之后,接收器根据它所有的标记或中间标记得到所述子集密钥,并利用该子集密钥对密文解密。下面说明得到子集密钥的方法。
首先,接收器um确定与将要获得的应用于密文解密处理的任何子集密钥SKi,j对应的子集Si,j的节点是否落入下面提及的(A)和(B)任意之一。
接收器判断节点j(A)是否是接收器直接具有标记LABELi,k的节点k的后辈(包括j=k的情况)。
(B)是否与节点k相符,节点k是节点i的子节点之一,并且是不存在于从接收器被分配给的叶子n到根节点的路径中的节点(即,节点i的该子节点的同胞节点存在于该路径中),或者是否是节点k的后辈(即,节点j是SD方案中,接收器um被给予标记的子集中的任何第一子集SSi,k的构成节点k的后辈)。
应注意如果没有任何接收器要被废除,那么认为节点j落入(B)中,从而第二特殊子集SS′1,的子集密钥SK1,被用于加密。
就(B)来说,特殊子集SSi,k的中间标记得自于给予该接收器的中间标记ILP(n),S(n),如下所述。
首先,在i=P(n),j=k=S(n)的情况下,接收器已具有该中间标记,从而不应进行任何特殊操作。否则,接收器把公布的置换函数F,即陷门单向置换F应用于中间标记ILP(n),S(n),从而顺序计算与更高阶的子集对应的中间标记。对于该接收器所有的中间标记ILP(n),S(n),依据ILP(P(n)),S(P(n))=((ILP(n),S(n))e-n)mod M(公式5)能够获得特殊子集SSP(P(n)),S(P(n))的中间标记ILP(P(n)),S(P(n)),特殊子集SSP(P(n)),S(P(n))始于接收器被分配给的叶子的父节点P(n)的父节点P(P(n)),并且对应于节点P(n)的同胞节点S(P(n))。
这是上面提及的单向置换树的性质为基础的,另外还以作为在节点对应值的计算中应用的上述表达式(公式3)的结果,关于单向置换树的任何节点对应值xi建立下述表达式的事实为基础。
其中 代表等于或小于i的最大整数。
应注意如果在产生单向置换树时,在计算节点对应值的过程中应用使用散列函数的上述表达式(公式4),那么依据ILP(P(n)),S(P(n))=((ILP(n),S(n))e-h(n))mod M(公式6)能够获得特殊子集SSP(P(n)),S(P(n))的中间标记ILP(P(n)),S(P(n))。
通过使用作为公开参数的RSA密码术中的模数M,公开指数e,以及节点编号i,反复对这些输出进行运算,接收器能够获得SD方案中,它应保持的子集中的第一特殊子集的所有中间标记,一直到子集SS1,2或SS1,3。即,在已知某一节点y及其父节点P(y)的情况下,始于节点P(y)的父节点P(P(y)),并且对应于节点P(y)的同胞节点S(P(y))的特殊子集SSP(P(y)),S(P(y))的中间标记ILP(P(y)),S(P(y))可由下式获得ILP(P(y)),S(P(y))=((ILP(y),S(y))e-y)mod M(公式7)应注意如果在产生单向置换树时,在计算节点对应值的过程中应用使用散列函数的上述表达式(公式4),那么依据ILP(P(y)),S(P(y))=((ILP(y),S(y))e-h(y))mod M(公式8)能够获得特殊子集SSP(P(y)),S(P(y))的中间标记ILP(P(y)),S(P(y))。
注意节点y包括存在于从接收器被分配给的叶子到根节点的路径中的节点。
此外,对于中间标记IL1,2和中间标记IL1,3中的任何一个,依据下述表达式IL1,=((IL1,2)e-3)mod M(公式9)IL1,=((IL1,3)e-2)mod M(公式10)能够获得与第二特殊子集SS′1,对应的中间标记IL1,=K。
类似地,这种情况下,如果在产生单向置换树时,在计算节点对应值的过程中应用使用散列函数的上述表达式(公式4),那么对于任何一个中间标记IL1,2和IL1,3,依据下述表达式IL1,=((IL1,2)e-h(3))mod M(公式11)IL1,=((IL1,3)e-h(2))mod M(公式12)能够获得与第二特殊子集SS′1,对应的中间标记IL1,=K。
参考图21说明接收器执行的具体的中间标记获取处理。分配给叶子19的接收器u4保持中间标记IL9,18。通过使用作为公布参数的RSA密码术中的模数M,公开指数e,以及节点编号i,可依据下式IL4,8=((IL9,18)e-19)mod M获得由节点9的父节点4和同胞节点8确定的子集S4,8的中间标记IL4,8。
类似地,可依据下式IL2,5=((IL4,8)e-9)mod M
获得由节点4的父节点2和同胞节点5确定的子集S2,5的中间标记IL2,5。
通过重复该处理,接收器u4能够获得IL1,3和IL1,。
按照上述方式,一旦得到了与任何子集Si,k对应的中间标记ILi,k,接收器就获得标记LABELi,k,LABELi,k=H(ILi,k)从而,如上参考图7所述,利用伪随机数发生器G获得必需的子集Si,j的标记LABELi,j,并依据SKi,j=GM(LABELi,j)获得该子集的子集密钥SKi,j,以便利用该子集密钥SKi,j对密文解密。
下面参考图23说明子集密钥导出处理的一个具体例子。如图23中所示,假定接收器u2、u11、u12被废除,并且通过广播分发利用与子集S2,17和子集S3,13对应的子集密钥加密的密文。
接收器u4持有6个标记LABEL1,5,LABEL1,8,LABEL1,18,LABEL2,8,LABEL2,18,LABEL4,18,以及一个从其可导出IL1,,IL1, 3,IL2,5,IL4,8的中间标记IL9,18。接收器u4对应于上面提及的(A)。即,对于子集S2,17,接收器u4直接持有使用为节点17的先辈的节点8的标记LABEL2,8,从而,通过根据需要对该标记多次应用伪随机数发生器,接收器u4能够获得子集密钥SK2,17。
此外,在相同的设置下,接收器u5持有6个标记LABEL1,4,LABEL1,11,LABEL1,21,LABEL2,11,LABEL2,21,LABEL5,21,以及一个从其可导出IL1,,IL1,3,IL2,4,IL5,11的中间标记IL10,21。接收器u5对应于上面提及的(B)。即,对于子集S2,17,接收器u5并不直接持有使用为节点17的先辈的节点k的任何标记LABEL2,k。为此,首先利用上面提及的技术,根据它持有的中间标记IL10,21,得到与为节点17的先辈的节点4对应的中间标记IL2,4,随后获得标记LABEL2,4,之后通过根据需要对该标记多次应用伪随机数发生器,能够获得子集密钥SK2,17。
如果根据不存在要被废除的任何接收器,从而第二特殊子集SS′1, 被用作该子集,那么接收器um利用上面提及的处理获得中间标记IL1,,并利用该中间标记,标记LABEL1,被计算成标记LABEL1,=H(IL1,)该标记随后被输入伪随机数发生器G,从而获得位于其输出中部的C比特。即,依据下式SK1,=GM(LABEL1,)得到与子集S1,对应的子集密钥SK1,,该子集密钥SK1,被用于对密文解密。
下面说明由接收器执行的,自收到密文开始的子集密钥获取和解密处理的程序。
首先,在步骤S401中,接收器从由多个密文组成的密文集合中,确定它将解密的多个密文之一。这是抽取用它能够产生的子集密钥加密的密文的处理。这里,接收器不能确定它应解密的密文的事实意味着该接收器被废除。根据和密文一起传送的子集指定信息,执行该密文选择处理。
一旦密文被确定,那么接收器在步骤S402中,利用上面提及的的技术,得到用于对密文加密的子集密钥。
下面参考图25,说明子集密钥导出处理的详细程序。首先,在步骤S501中,接收器um确定与要获得的应用于密文解密处理的任何子集密钥SKi,j对应的子集Si,j的节点(A)是否是接收器直接具有其标记LABELi,k的节点k的后辈(包括j=k的情况)或者(B)是否与节点k相符,节点k是节点i的子节点之一,并且是不存在于从接收器被分配给的叶子n到根节点的路径中的节点(即,节点i的该子节点的同胞节点存在于该路径中),或者是否是节点k的后辈(即,节点j是SD方案中,接收器um被给予标记的子集中的任何第一子集SSi,k的构成节点k的后辈)。
应注意如果没有任何接收器要被废除,从而第二特殊子集SS′1,的子集密钥SK1,被用于加密保密信息,节点j被认为为(B)。
在(A)的情况下,处理进入步骤S503,通过根据接收器所有的标记,按照需要多次应用伪随机数发生器G,获得必需的子集密钥。
在(B)的情况下,处理进入步骤S504,通过根据中间标记ILP(n),S(n),应用上面提及的表达式(公式5)或(公式6),计算与特殊子集对应的必需中间标记。此外,在步骤S505中,通过对计算的中间标记进行散列处理,计算与该子集对应的标记LABEL,并在步骤S506中,通过根据在步骤S506中计算的标记,应用伪随机数发生器G,获得必需的子集密钥。
返回图24的流程,已通过上述处理得到子集密钥的接收器在步骤S404中利用该子集密钥,对在步骤S402中从密文集合中选出的密文解密,从而获得发射的保密信息。保密信息是用于对电视广播系统的加密内容解密的内容密钥。这种情况下,接收器接收加密内容,并利用内容密钥对其密钥以便输出。
下面参见图26、27,说明执行标记设置处理,密文产生处理的信息处理设备,和作为执行密文解密处理的接收器的信息处理设备的功能结构。
首先,参见图26,说明执行标记设置处理,密文产生处理的信息处理设备的结构。信息处理设备410具有中间标记和标记产生装置411,供给用标记确定装置412,密文产生装置413,密文供给装置414。
信息处理设备410是产生应用于密文供给处理的分级树的信息处理设备,在密文供给处理中,只有除去排除(废除)的设备之外的具体选定设备能够通过应用基于分级树构型的广播加密方案完成解密。中间标记和标记产生装置411把分别与基于应用分级树的SD(子集差异)方案的子集集合对应的标记(LABEL)中,与特殊子集对应的标记的值设为基于中间标记的散列值。MD4或MD5,或者SHA-1等可用作散列函数。
中间标记和标记产生装置411选择的特殊子集至少为下述任意一种第一特殊子集,它是通过在分级树中,从生根于节点i的子树中排除生根于低于节点i的节点j的子树而定义的各个子集Si,j之一,并且其中在该分级树中,节点i和j具有直接的父子关系,和第二特殊子集,它是定义为包括分级树中的所有叶子,从而生根于根节点的整树集合的子集S1,。
中间标记和标记产生装置411产生使得能够利用散列函数H,导出分别与根据SD(子集差异)方案设置的子集对应的标记(LABEL)之中,与特殊子集对应的标记的中间标记,作为单向置换树的节点对应值。
具体地说,根据上面参考图14的流程说明的算法,确定N个值xN~x2N-1,以便把它们设为中间标记。即,在具有带N个端节点的二元树构型的分级树中,首先,任意选择数字x1∈ZM*,并在利用i作为计数器把i加1的同时,根据上面提及的表达式(公式3)或(公式4)计算节点对应值xi,以便确定所述N个值xN~x2N-1,这些节点对应值xi被设为可根据其计算上面提及的第一特殊子集SSi,j和第二特殊子集SS′1,的标记的中间标记。
此外,根据中间标记通过散列处理计算特殊子集的标记。之后,借助其中对与特殊子集对应的这些标记应用伪随机数发生器G的运算,顺序计算分别与子集对应的标记。这些处理是上面参考图20说明的处理。
供给用标记确定装置412执行确定用于供给与分级树的每个端节点对应的接收器的标记。供给用标记确定装置412确定并不对应于特殊子集的特殊子集非对应标记,和对应于特殊子集的一个中间标记,作为用于供给接收器的标记。
供给用标记确定装置412的具体处理如下所述。首先,均起始于在从接收器um被分配给的叶子到根节点的路径m(path-m)中的任何内部节点i,并且均对应于直接从该叶子到节点i的路径中的节点分出来的节点j的子集Si,j的标记LABELi,j,以及与在没有任何接收器要被废除的情况下使用的,从而对应于包括所有接收器的整个树形结构的子集SS’1,对应的标记LABEL1,被设为试验性选择的标记。随后,从这些试验性选择的标记中,并不对应于特殊子集的特殊子集非对应标记被选为供给用标记。此外,选择一个中间标记,根据该中间标记,能够计算与特殊子集对应的标记。这些标记被确定为用于供给接收器um的最终标记。
密文产生装置413通过有选择地应用可从中间标记和标记产生装置411产生的标记导出的子集密钥,进行加密处理,从而产生密文。密文供给装置414通过网络或者保存密文的介质,提供这样产生的密文。
下面,参考图27,说明作为执行密文解密处理的接收器的信息处理设备的功能结构。
作为执行密文解密处理的接收器的信息处理设备420具有密文选择装置421,标记计算装置422,子集密钥产生装置423,解密装置424,标记存储器425。
作为执行密文解密处理的接收器的信息处理设备420是执行由分别与根据SD(子集差异)方案设置的子集对应的子集密钥加密的密文的解密处理的信息处理设备420,SD(子集差异)方案是基于分级树构型的广播加密方案。密文选择装置421从供处理的密文中选择通过应用根据可从保存在其标记存储器425中的标记,或者可从它保持的中间标记计算得到的标记,伪随机数发生处理可导出的子集密钥而产生的密文。
如果应用于密文的子集密钥不是可根据持有的标记,由伪随机数发生处理导出的子集密钥,那么标记计算装置42根据给予接收器的中间标记ILP(n),S(n)进行运算处理,以便计算与特殊子集对应的必需中间标记。
具体地说,通过根据保存在标记存储器425中的中间标记ILP(n),S(n),应用上面提及的表达式(公式5)或(公式6),计算与特殊子集对应的必需中间标记。此外,通过对计算的中间标记进行散列处理,计算对应于该子集的标记LABEL。
子集密钥产生装置423通过根据保存在标记存储器425中的标记,或者由标记计算装置422根据中间标记计算的标记LABEL,应用伪随机数发生器G,获得必需的子集密钥。
解密装置424根据子集密钥计算装置423计算的子集密钥,执行密文解密处理。
图28中,表示了执行标记设置处理,密文产生处理的信息处理设备,和作为执行密文解密处理的接收器信息处理设备500的硬件结构例子。图中用虚线封闭的方框不一定必须要装备。例如,如果接收器500是光盘播放器等,那么装备介质接口507。如果接收器500与其它设备交换信息或者通过天线接收信号,那么装备输入/输出接口503。重要的是安全存储单元504,在设置阶段中,管理中心(TC)给予的标记可被安全地保存在其中。
如图28中所示,信息处理设备500包括控制器501,运算单元502,输入/输出接口503,安全存储单元504,主存储单元505,显示装置506,介质接口507。
控制器501包括例如具有根据计算机程序执行数据处理的控制单元的功能的CPU。运算单元502起专用运算单元和加密处理单元的作用,用于产生加密密钥,产生随机数和进行加密处理。单元50执行标记和中间标记计算处理,和基于标记的子集密钥计算处理。此外,如果信息处理设备500是作为接收器的信息处理设备,那么单元502执行基于子集密钥的密文解密处理。
输入/输出接口503是处理来自诸如键盘、鼠标之类输入装置的数据输入,到外部输出设备的数据输出,通过网络的数据发射/接收的接口。
如果信息处理设备500是作为接收器的信息处理设备,那么安全存储单元504保存要被安全或者保密持有的数据,例如设置阶段中由管理中心(TC)给予的标记,中间标记,各种ID。
安全存储单元504保存,例如可根据其产生与选自子集的特殊子集对应的标记(LABEL)的一个中间标记,和不对应于特殊子集的标记(LABEL)。
如果信息处理设备500是作为接收器的信息处理设备,那么根据保存在安全存储单元504中的中间标记产生的标记是与特殊标记对应的标记(LABEL),具体地说,是与下述子集对应的标记(a)第一特殊子集,它是通过在分级树中,从生根于节点i的子树中排除生根于低于节点i的节点j的子树而定义的各个子集Si,j之一,并且其中在该分级树中,节点i和j具有直接的父子关系,和(b)第二特殊子集,它是定义为包括分级树中的所有叶子,从而生根于根节点的整树集合的子集S1,。
主存储单元505是用于例如控制器501执行的数据处理程序的临时保存处理参数的存储区,用于程序执行等的工作区。安全存储单元504和主存储单元505是包括例如RAM、ROM等在内的存储器。显示装置506用于输出解密内容等。介质接口507为诸如CD、DVD、MD之类介质提供读/写功能。
下面概述基本分层子集差异(基本LSD)方案。
在上面的背景技术部分中提及的非专利文献2(Advances inCryptography-Crypto 2002,Lecture Notes in Computer Science 2442,Spinger,2002,pp.47-60(D.Halevy and A.Schamir,“The LSDBroadcast Encryption Scheme”)中,提出了通过改进SD方案而获得的分层的子集差异方案。LSD方案包括基本方案和一般方案,一般方案是基本方案的扩展。这里说明基本方案。
LSD方案是SD方案的扩展,其中向SD方案中加入了层的概念。在SD方案的树形结构中,特定的高度被定义为特殊层面(SpecialLevel)。虽然在基本LSD方案中只存在一种特殊层面,不过在一般LSD方案中使用重要性程度不断变化的多个特殊层面。
现在,为了便于说明,假定log1/2N是整数。在基本LSD方案中,如图29中所示,在从树根到树叶的各个层面中,每log1/2N出现的层面(包括树根层面和树叶层面)被确定为特殊层面。介于两个相邻的特殊层面(包括位于两端的特殊层面)之间的分级部分被称为一层。在图29的例子中,树根层面,包括节点k的层面和树叶层面是特殊层面,树根层面,包括节点i的层面和包括节点k的层面形成一层。此外,包括节点k的层面,包括节点j的层面和包括树叶的层面形成另一层。
在基本LSD方案中,在SD方案中定义的子集Si,j中,只有那些至少满足下述条件之一的子集被定义(1)节点i和节点j属于相同层,和(2)节点i在某一特殊层面。这样,在基本LSD方案中,没有定义在SD方案中使用的部分子集。但是,这样的子集可由在基本LSD方案中定义的最多两个子集的并集来表示。例如,在图29的例子中,在基本LSD方案中没有定义子集Si,j,但是通过利用在从节点i到节点j的路径中最接近于节点i的特殊层面上的节点(节点k),子集Si,i可被表示成Si,j=Si,kUSk,j即,代替在SD方案中,用与子集Si,k对应的子集密钥SKi,k加密的一个密文,在基本LSD方案中,发射利用与子集Si,k和Sk,j对应的子集密钥SKi,k和SKk,j加密的两个密文。
作为该技术的结果,要发射的密文的数目仅仅增大到SD方案中的两倍,但是与在上面提及的SD方案相比,每个接收器保持的标记的数目可被减少。
上面参考图9说明了SD方案中,每个接收器保持的标记的数目。现在,参考图30说明在相同的设置下,基本LSD方案中,每个接收器保持的标记的数目。对于i,j属于相同层或者i在特殊层面的两种情况,图30中的接收器u4只需要保持标记LABELi,j。即,接收器u4保持的标记是LABEL1,3,LABEL1,5,LABEL1,8,LABEL1,18,LABEL2,5,LABEL4,8,LABEL4,18,LABEL9,18。此外,类似于SD方案,接收器还需要保持在没有任何接收器要被废除的情况下使用的一个特殊标记。
当接收器的总数被设为N时,可如下获得每个接收器需要保持的标记的总数。首先,每层的标记的数目等于利用下面的表达式计算获得的数目,因为一旦节点i被确定,那么存在和该层内i的高度一样多的节点j。
Σi=1log1/2Ni=12(logN+log1/2N)]]>由于在分级树中存在log1/2N层,因此整个分级层的每层的标记的数目等于利用下面的表达式计算获得的数目。
12(log3/2N+logN)]]>随后,考虑节点i位于特殊层面的情况。由于存在和在整个分级树中,i的高度一样多的节点j,因此包括位于特殊层面的任何节点i的整个分级树的标记的数目等于利用下面的表达式计算获得的数目。
Σi=1log1/2N(log1/2N)i=12(log3/2N+logN)]]>现在位于特殊层面的节点i的标记和属于相同层的节点j的标记已被重复计数,这些标记需要被减除。由于每层存在log1/2N个这样的组合,因此总共存在logN个这样的组合。当把没有任何接收器要被废除的情况下的特殊标记加入它们中时,基本LSD方案中每个接收器保持的标记的总数等于由下面的表达式给出的数目。
12(log3/2N+logN)+12(log3/2N+logN)-logN+1=log3/2N+1]]>[7.利用单向置换树,减少基本LSD方案中的标记的数目的构型]下面,说明利用单向置换树,减少基本LSD方案中的标记的数目的构型。在基于上述SD方案的本发明中,每个接收器拥有的标记的数目被只具有一个特定的中间标记的接收器减少,根据该特定的中间标记,能够得到用于获得其中节点i是节点j的父节点的每个子集Si,j的标记LABELi,j的中间标记ILi,j。该技术可类似地应用地基本LSD方案。
具体的构型方法基本上与本发明的上述实施例相同。但是,当在设置过程中,管理中心(TC)利用伪随机数发生器连续产生标记LABELi,j时,如果节点i不在某一特殊层面上,那么低于紧接在i之下的特殊层面的节点为j的任何标记不被使用。从而,在该特殊层面可停止标记的产生。此外,当管理中心向每个接收器分发产生的标记时,只有满足上述条件的标记被产生,从而管理中心只能分发这样的标记。
作为和参考图30说明的类似的设置,下面参考图31说明利用单向置换树减少基本LSD方案中的标记的数目的具体构型例子。在基本LSD方案中,接收器u4保持的标记总共应为9个,它们是LABEL1,3,LABEL1,5,LABEL1,8,LABEL1,18,LABEL2,5,LABEL4,8,LABEL4,18,LABEL9,18,外加在没有任何接收器要被废除的情况下使用的一个特殊标记。相反,在本发明中,当设计成接收器持有一个中间标记IL9,18,根据所述中间标记IL9,18,可得到分别与在节点i,j具有父子关系的情况下,和在没有任何接收器要被废除的情况下使用的特殊子集对应的中间标记ILi,j和IL1,时,接收器可能总共只需要保持5个标记,它们是四个标记LABEL1,5,LABEL1,8,LABEL1,18,LABEL4,8,和一个中间标记IL9,18。
现在考虑在接收器的总数为N的情况下,可被本发明减少的标记的数目。考虑在不应用本发明的基本LSD方案中,每个接收器应保持多少个其中节点i,j具有父子关系的标记LABELi,j。
当节点i,j具有父子关系时,可考虑下述三种情况。
(A)节点i在某一特殊层面。
(B)节点j在某一特殊层面。
(C)节点i和节点j都不在某一特殊层面。
如果在上述任意情况中,节点i,j具有父子关系(即它们彼此相邻),那么i和j属于相同层。即,子集Si,j满足基本LSD方案中需要要被定义的两种条件中的任何一个。即,在基本LSD方案中定义并使用这样的子集,从而接收器需要保持与之对应的LABELi,j。
对于某一接收器,如下确定这样的节点i,j。即,在树形结的节点i的总数等于树的高度的情况下,存在多达以致覆盖树高的节点i,j(即,从接收器被分配给的树叶到树根的路径中的所有节点,除了树叶之外),并且一旦i已被确定,那么只有一个j被确定(为i的子节点,并且不存在于该路径中的节点)。从而,存在多达以致覆盖树高的节点i,j,即logN个节点i,j。
通过这样设计,以致利用本发明由一个中间标记产生这些logN个标记和一个特殊标记,接收器保持的标记的数目可被减少logN+1-1=logN如上所述,基本LSD方案中,接收器保持的标记的总数为log3/2N+1从而,通过应用本发明,它可被减少到log3/2N-logN+1[8.一般分层子集差异(一般LSD)方案的概述]下面概述一般分层子集差异(一般LSD)方案。
虽然在基本LSD中使用一种特殊层面,过在一般LSD方案中使用具有不同重要程度的多个特殊层面。
类似地提出LSD方案的文献中提出的那样,在分级层中,经过节点i从根节点到节点j的路径被看作单一图形。该树形结构的根节点和节点j是终点。树形结构的节点是该图形的节点。除终点之外的节点之一是节点i。在该图形中,每个节点由其到根节点的距离表示。该距离被表示成基数为b的d位数(其中b=(log1/dN)。例如,根节点被表示成0…00。紧接于根节点的节点(分级树结构中,根节点的子节点)被表示成0…01。
子集Si,j被认为是定义的变换(从一个节点到另一节点的变化)的组合中,从任何节点i到任何节点j的最终变化。定义的变换代表定义的子集,最终的转变所需的单个变化指示利用片段表示子集Si,j所需的定义子集。如同原始文献中公开的那样,当节点i,k1,k2,...,kd-1,j按此顺序存在于树形结构的某一路径中时,在一般LSD方案中,SD方案中的子集Si,j由下述表达式表示。
Si,j=Si,k1∪Sk1,k2∪···∪Skd-1,j]]>即,SD方案中的子集Si,j由一般LSD方案中的最多d个子集的并集表示。
在一般LSD方案中,当节点i被表示成 a 时(其中a是最右侧的非零数位, 是一系列的任意数位, 是一系列的0),定义如果j由 0 或者 a′ (其中a′>a,并且 是和 长度相同的一系列任意数位)表示,那么i到j的所有变化。即,定义由任意这样的i,j对表示的子集Si,j。
按照上述方式,在一般LSD方案中,当d=2时,用(在最右侧)结束于0的两位数表示的层面被看作基本LSD方案中的特殊层面。在一般LSD方案中,节点i的表示法中最右侧的后缀零的数目确定该层面的重要程度,节点j可以是从i+1到具有比i更高重要程度的第一节点的任何节点(包括位于两端的节点)。在这样的设置下,假定i和j为i=825917,j=864563。随后,从i到j的变化,即SD方案中的子集Si,j可被表示成在一般LSD方案中定义的四种变换,即,825917→825920→826000→830000→864563。
即,假定k1=825920,k2=826000,k3=830000,那么子集Si,j由下面的表达式表示。即,[等式20]Si,j=Si,k1∪Sk1,k2∪Sk2,k3∪Sk3,j]]>为了把保密信息传送给属于SD方案的上述子集Si,j的接收器,发射与由下述表达式指示的子集对应的子集密钥加密的四个密文。
Si,k1,Sk1,k2,Sk2,k3,Sk3,j]]>一般LSD方案中,每个接收器要保持的标记的数目随着参数d的增大而减小,从而最终获得O(log1+εN)其中ε=1/d。另外,此时,要发射的密文的数目的上限为
d(2r-1)更多细节请参考上面提及的文献。
下面,说明利用单向置换树,减少一般LSD方案中的标记的数目的构型。上面提及的在基本LSD方案中利用单向置换树,减少接收器保持的标记的数目的技术也可被应用于一般LSD方案。具体地说,基本LSD方案和一般LSD方案的区别仅仅在于它们的要由任何定义的子集满足的条件,但是只要使用单向置换树,那么它们没有区别。
另外,在一般LSD方案中,接收器um需要保持在SD方案中定义并给予该接收器的标记中,与其中节点i,j具有父子关系的任何子集Si,j对应的标记LABELi,j。原因在于即使i取任何值,到为其子节点的节点j(即i+1)的变化落入上面提及的关于定义的变换的条件中。即,类似于基本LSD方案,对于某一接收器,在接收器要保持的标记中,存在其中i,j具有父子关系的logN个标记。通过这样设计,以致这些标记和特殊标记产生自一个中间标记,能够实现多达logN个标记的减少。原始的一般LSD方案中,每个接收器要保持的标记的数目为O(1og1+εN)(其中ε是任意整数),从而,可从中减少logN个标记。
最初,一般LSD方案中,每个接收器应保持的标记的数目被设成与SD方案或者基本LSD方案相比较小的数字。从该设置中,能够进一步减去与SD方案或者基本LSD方案中的数目类似的标记数,从而,在此意义上,缩减的效果更加显著。
前面参考具体实施例极其详细地说明了本发明。但是,在不脱离本发明的范围和精神的情况下,本领域的技术人员显然能够对实施例做出各种修改或替换。即,利用例子举例说明了本发明,从而不应被理解为对本发明的限制。为了判断本发明的范围和精神,应考虑附加的权利要求。
应注意说明书中描述的一系列处理可由硬件,或者软件,或者具有组合的硬件和软件的结构来实现。在依赖于软件进行所述处理的情况下,可通过把其中记录有处理序列的程序安装到合并到专用硬件中的计算机内的存储器中,或者通过把程序安装到能够进行各种处理的通用计算机中以供执行,来完成所述处理。
例如,程序可被事先记录在作为记录介质的硬盘和ROM(只读存储器)上。另一方面,程序可被临时或永久保存(记录)在可拆卸的记录介质上,例如软盘、CD-ROM(光盘只读存储器)、MO(磁光)盘、DVD(数字通用视盘)、磁盘、半导体存储器。可以所谓的软件包的形式提供这样的可拆卸记录介质。
应注意可从可拆卸的记录介质,比如上面提及的可拆卸记录介质把程序安装到计算机上,另外,通过经由网络,比如LAN(局域网),因特网,从下载站点到计算机的无线传输,到计算机的有线传输,以允许计算机接收这样传送的程序,以便安装在包含于计算机中的存储介质,比如硬盘中。
应注意说明书中描述的各种处理不仅可按照所说明的时间顺序进行,而且可根据进行处理的设备的处理容量或者根据需要,并行或者单独地进行。此外,本说明书中使用的系统意味着多个设备的逻辑集合构型,并不局限于其中均具有它自己的结构的设备被归入相同外壳内的一个系统。
根据本发明,对被认为是采用为广播加密方案的一个实施例的分级树结构的信息分发构型中,相当高效的构型的子集差异(SD)方案和分层子集差异(LSD)方案进一步应用基于单陷门单向置换的单向置换树,从而能够减少每个接收器应安全保持的信息的数量。
此外,在本发明的构型中,中间标记(IL)是被设置为数值的中间标记,根据所述数值通过运算处理能够计算与根据应用分级树的SD方案或LSD方案设定的子集对应的标记(LABEL)中,与选择的部分特殊子集对应的标记的值,并且这些中间标记具有通过根据至少一个中间标记的值,通过应用陷门单向置换F,能够由其计算其它中间标记的值的数值。由于除了不对应于特殊子集的标记之外,接收器还被给予一个中间标记,根据该中间标记,能够得到与特殊子集对应的标记,从而能够减少常规SD方案或LSD方案中,提供给接收器的标记的数目。至于减少的标记,通过对接收器保持的中间标记进行陷门单向置换F,能够计算其它中间标记,从而能够进行对可根据常规SD或LSD方案设定的所有子集的处理。作为应用本发明的构型的结果,能够减少每个接收器应保持的信息(标记)的数量。
权利要求
1.一种信息处理方法,用于产生应用于密文供给处理的分级树,在所述密文供给处理中,只有特定的选定设备可利用基于分级树构型的广播加密方案进行解密,所述信息处理方法的特征在于包括产生中间标记(IL)的中间标记产生步骤,所述中间标记被定义为具有数值,所述数值允许通过运算处理,计算分别与基于应用分级树的SD(子集差异)方案的子集对应的标记(LABEL)之中,与选定部分的特殊子集对应的标记的值,并且允许通过根据至少一个中间标记的值应用陷门单向置换F,计算其它中间标记的值;根据中间标记通过运算处理产生与特殊子集对应的标记,并且还根据产生的标记通过运算产生不对应于特殊子集的标记的标记产生步骤;和确定用于供给与分级树的端节点对应的接收器的标记的供给用标记确定步骤,所述标记包括不对应于特殊子集的特殊子集非对应标记,和通过运算处理,可根据其计算与特殊子集对应的标记的中间标记。
2.按照权利要求1所述的信息处理方法,其特征在于还包括在有选择地应用从在标记产生步骤产生的与子集对应的各个标记得到的子集密钥的同时,通过执行加密处理产生密文以便提供给接收器的密文产生步骤。
3.按照权利要求1所述的信息处理方法,其特征在于标记产生步骤包括通过对中间标记进行散列处理,计算与特殊子集对应的标记的值的步骤。
4.按照权利要求1所述的信息处理方法,其特征在于标记产生步骤包括通过对与特殊子集对应的标记的值进行的伪随机数发生处理,产生其它标记的步骤。
5.按照权利要求1所述的信息处理方法,其特征在于中间标记产生步骤是在具有2N-1个节点的分级树中随机选择值x1∈ZM*,通过应用对其应用陷门单向置换F的逆置换F-1的下述两个等式任意之一,计算具有2N-1个节点的分级树中的节点对应值x1到x2N-1,同时在使用i作为计数器的情况下把i加1,直到i=2~2N-1,还把计算的值设置成可根据其计算特殊子集对应标记的中间标记(IL)的值的步骤[等式1] 其中 代表等于或小于i的最大整数,和[等式2] 其中 代表等于或小于i的最大整数其中M,d是作为加密参数的模数M和保密指数d。
6.按照权利要求1所述的信息处理方法,其特征在于在中间标记产生步骤中选择的特殊子集是第一特殊子集和第二特殊子集中的至少一个;第一特殊子集是子集Si,j之一,并且在节点i和节点j之间具有直接后代的父子关系,子集Si,j被定义为通过从生根于分级树中的节点i的子树中排除生根于低于节点i的节点j的子树而获得的子集;第二特殊子集是定义为具有包括分级树的所有叶子的根作为顶部的整树集合的子集S1,。
7.按照权利要求1所述的信息处理方法,其特征在于供给用标记确定步骤是把用于供给与分级树的端节点对应的接收器的中间标记之一指定为与构成第一特殊子集的子集Si,j中的最低一个对应的中间标记的步骤。
8.按照权利要求1-7任意之一所述的信息处理方法,其特征在于中间标记产生步骤是把分别与根据基本LSD(基本分层子集差异)方案设置的子集对应的标记(LABEL)中,与选择部分的特殊子集对应的标记设为可根据与特殊子集对应的中间标记(IL)计算的值,所述基本LSD方案具有基于由在分级树中设定的单个特殊层面分隔开的各层的子集管理构型。
9.按照权利要求1-7任意之一所述的信息处理方法,其特征在于中间标记产生步骤是把分别与根据一般LSD(一般分层子集差异)方案设置的子集对应的标记(LABEL)中,与选择部分的特殊子集对应的标记设为可根据与特殊子集对应的中间标记(IL)计算的值,所述一般LSD方案具有基于由在分级树中设定的多个特殊层面分隔开的各层的子集管理构型。
10.一种解密处理方法,用于执行由分别与根据SD(子集差异)方案设置的子集对应的子集密钥加密的密文的解密处理,所述SD(子集差异)方案是一种基于分级树构型的广播加密方案,所述解密处理方法的特征在于包括从密文中选择通过应用可由伪随机数产生处理根据其中保持的标记或者可从其中保持的中间标记计算的标记得到的子集密钥而产生的密文的密文选择步骤;如果伪随机数产生处理不能根据保持的标记得到将应用于密文的子集密钥,那么通过对保持的中间标记执行运算处理,计算与特殊子集对应的标记的标记计算步骤;伪随机数产生处理根据保持的标记或者计算的标记,产生子集密钥的步骤;和通过应用产生的子集密钥,执行密文的解密处理的解密步骤。
11.按照权利要求10所述的解密处理方法,其特征在于标记计算步骤包括通过对保持的中间标记执行陷门单向置换F,计算另一中间标记的步骤。
12.按照权利要求10所述的解密处理方法,其特征在于标记计算步骤包括通过对保持的中间标记,或者通过对保持的中间标记执行陷门单向置换F而获得的另一中间标记执行散列处理,执行标记的计算的步骤。
13.按照权利要求10所述的解密处理方法,其特征在于在标记计算步骤中,要应用于密文的子集密钥是可由伪随机数发生处理根据与第一特殊子集或第二特殊子集对应的标记计算的子集密钥,第一特殊子集是子集Si,j之一,并且在节点i和节点j之间具有直接后代的父子关系,子集Si,j被定义为通过从生根于分级树中的节点i的子树中排除生根于低于节点i的节点j的子树而获得的子集;第二特殊子集是定义为具有包括分级树的所有叶子的根作为顶部的整树集合的子集S1,;并且标记计算步骤是如果不持有与特殊子集对应的标记,那么通过对保持的中间标记进行运算处理,计算与特殊子集对应的标记的步骤。
14.按照权利要求10所述的解密处理方法,其特征在于标记计算步骤是通过对保持的中间标记进行运算处理,计算与包括分级树中,从执行解密处理的接收器被分配给的节点到根节点的路径中的节点的特殊子集对应的标记的步骤。
15.一种信息处理方法,用于执行密文的产生处理,其中只有特定的选定设备可利用基于分级树构型的广播加密方案进行解密,所述信息处理方法的特征在于包括在有选择地应用分别与根据应用分级树的SD(子集差异)方案设置的子集对应的子集密钥的同时,通过执行加密处理产生密文的密文产生步骤;其中密文产生步骤中要应用的子集密钥是可根据分别与子集对应的标记(LABEL)计算的子集密钥,并被设置成以致根据中间标记(IL),运算处理可计算与选择部分的特殊子集对应的标记的值,并且中间标记允许通过根据至少一个中间标记的值应用陷门单向置换F,计算其它中间标记的值。
16.按照权利要求15所述的信息处理方法,其特征在于还包括产生子集密钥的子集密钥产生步骤,其中子集密钥产生步骤是根据分别与子集对应的标记(LABEL),由伪随机数发生处理产生子集密钥的处理。
17.按照权利要求15所述的信息处理方法,其特征在于还包括产生子集密钥的子集密钥产生步骤,其中子集密钥产生步骤包括根据对其应用使用x1∈ZM*,及作为加密参数的模数M和保密指数d的陷门单向置换F的逆置换F-1的运算表达式,产生与特殊子集对应的中间标记的中间标记产生步骤;根据中间标记通过运算处理产生与特殊子集对应的标记,还根据产生的标记通过运算产生不对应于特殊子集的标记的标记产生步骤;和根据标记通过运算处理计算子集密钥的步骤。
18.按照权利要求17所述的信息处理方法,其特征在于在中间标记产生步骤中选择的特殊子集是第一特殊子集和第二特殊子集中的至少之一;第一特殊子集是子集Si,j之一,并且在节点i和节点j之间具有直接后代的父子关系,子集Si,j被定义为通过从生根于分级树中的节点i的子树中排除生根于低于节点i的节点j的子树而获得的子集;第二特殊子集是定义为具有包括分级树的所有叶子的根作为顶部的整树集合的子集S1,。
19.按照权利要求18所述的信息处理方法,其特征在于中间标记产生步骤是把分别与根据基本LSD(基本分层子集差异)方案设置的子集对应的标记(LABEL)中,与选择部分的特殊子集对应的标记的值设为可根据与特殊子集对应的中间标记(IL)计算的值的步骤,所述基本LSD方案具有基于由在分级树中设定的单个特殊层面分隔开的各层的子集管理构型。
20.按照权利要求18所述的信息处理方法,其特征在于中间标记产生步骤是把分别与根据一般LSD(一般分层子集差异)方案设置的子集对应的标记(LABEL)中,与选择部分的特殊子集对应的标记的值设为可根据与特殊子集对应的中间标记(IL)计算的值的步骤,所述一般LSD方案具有基于由在分级树中设定的多个特殊层面分隔开的各层的子集管理构型。
21.一种信息处理设备,用于产生应用于密文供给处理的分级树,在所述密文供给处理中,只有特定的选定设备可利用基于分级树构型的广播加密方案进行解密,所述信息处理设备的特征在于包括产生中间标记(IL)的中间标记产生装置,所述中间标记被定义为具有数值,所述数值允许通过运算处理,计算分别与基于应用分级树的SD(子集差异)方案的子集对应的标记(LABEL)之中,与选定部分的特殊子集对应的标记的值,并且允许通过根据至少一个中间标记的值应用陷门单向置换F,计算其它中间标记的值;根据中间标记通过运算处理产生与特殊子集对应的标记,并且还根据产生的标记通过运算产生不对应于特殊子集的标记的标记产生装置;和确定用于供给与分级树的端节点对应的接收器的标记的供给用标记确定装置,所述标记包括不对应于特殊子集的特殊子集非对应标记,和通过运算处理,可根据其计算与特殊子集对应的标记的中间标记。
22.按照权利要求21所述的信息处理设备,其特征在于还包括在有选择地应用从由标记产生装置产生的与子集对应的各个标记得到的子集密钥的同时,通过执行加密处理产生密文以便提供给接收器的密文产生装置。
23.按照权利要求21所述的信息处理设备,其特征在于标记产生装置被配置成通过对中间标记进行散列处理,计算与特殊子集对应的标记的值。
24.按照权利要求21所述的信息处理设备,其特征在于标记产生装置被配置成通过对与特殊子集对应的标记的值进行的伪随机数产生处理,产生其它标记。
25.按照权利要求21所述的信息处理设备,其特征在于中间标记产生装置被配置成在具有2N-1个节点的分级树中随机选择值x1∈ZM*,通过应用对其应用陷门单向置换F的逆置换F-1的下述两个等式任意之一,计算具有2N-1个节点的分级树中的节点对应值x1到x2N-1,同时在使用i作为计数器的情况下把i加1,直到i=2~2N-1,还把计算的值设置成可根据其计算特殊子集对应标记的中间标记(IL)的值[等式3] 其中 代表等于或小于i的最大整数,和[等式4] 其中 代表等于或小于i的最大整数其中M,d是作为加密参数的模数M和保密指数d。
26.按照权利要求15所述的信息处理设备,其特征在于中间标记产生装置选择的特殊子集是第一特殊子集和第二特殊子集中的至少一个;第一特殊子集是子集Si,j之一,并且在节点i和节点j之间具有直接后代的父子关系,子集Si,j被定义为通过从生根于分级树中的节点i的子树中排除生根于低于节点i的节点j的子树而获得的子集;和第二特殊子集是定义为具有包括分级树的所有叶子的根作为顶部的整树集合的子集S1,。
27.按照权利要求21所述的信息处理设备,其特征在于供给用标记确定装置被配置成把用于供给与分级树的端节点对应的接收器的中间标记之一指定为与构成第一特殊子集的子集Si,j中的最低一个对应的中间标记。
28.按照权利要求21-27任意之一所述的信息处理设备,其特征在于中间标记产生装置被配置成把分别和根据基本LSD(基本分层子集差异)方案设置的子集对应的标记(LABEL)中,与选择部分的特殊子集对应的标记设为可根据与特殊子集对应的中间标记(IL)计算的值,所述基本LSD方案具有基于由在分级树中设定的单个特殊层面分隔开的各层的子集管理构型。
29.按照权利要求21-27任意之一所述的信息处理设备,其特征在于中间标记产生装置被配置成把分别与根据一般LSD(一般分层子集差异)方案设置的子集对应的标记(LABEL)中,与选择部分的特殊子集对应的标记设为可根据与特殊子集对应的中间标记(IL)计算的值,所述一般LSD方案具有基于由在分级树中设定的多个特殊层面分隔开的各层的子集管理构型。
30.一种信息处理设备,用于执行由分别与根据SD(子集差异)方案设置的子集对应的子集密钥加密的密文的解密处理,所述SD(子集差异)方案是一种基于分级树构型的广播加密方案,所述信息处理设备的特征在于包括从密文中选择通过应用可由伪随机数产生处理根据其中保持的标记或者可从其中保持的中间标记计算的标记得到的子集密钥而产生的密文的密文选择装置;如果伪随机数产生处理不能根据保持的标记得到将应用于密文的子集密钥,那么通过对保持的中间标记执行运算处理,计算与特殊子集对应的标记的标记计算装置;伪随机数产生处理根据保持的标记或者计算的标记,产生子集密钥的装置;和通过应用产生的子集密钥,执行密文的解密处理的解密装置。
31.按照权利要求30所述的信息处理设备,其特征在于标记计算装置被配置成通过对保持的中间标记执行陷门单向置换F,计算另一中间标记。
32.按照权利要求30所述的信息处理设备,其特征在于标记计算装置被配置成通过对保持的中间标记,或者通过对保持的中间标记执行陷门单向置换F而获得的另一中间标记执行散列处理,执行标记的计算。
33.按照权利要求30所述的信息处理设备,其特征在于在标记产生装置中,要应用于密文的子集密钥是可由伪随机数发生处理根据与第一特殊子集或第二特殊子集对应的标记计算的子集密钥;第一特殊子集是子集Si,j之一,并且在节点i和节点j之间具有直接后代的父子关系,子集Si,j被定义为通过从生根于分级树中的节点i的子树中排除生根于低于节点i的节点j的子树而获得的子集;第二特殊子集是定义为具有包括分级树的所有叶子的根作为顶部的整树集合的子集S1,;和标记计算装置被配置成如果不持有与特殊子集对应的标记,那么通过对保持的中间标记进行运算处理,计算与特殊子集对应的标记。
34.按照权利要求30所述的信息处理设备,其特征在于标记计算装置被配置成通过对保持的中间标记进行运算处理,计算与包括分级树中,从执行解密处理的接收器被分配给的节点到根节点的路径中的节点的特殊子集对应的标记。
35.一种信息处理设备,用于执行密文的产生处理,其中只有特定的选定设备可利用基于分级树构型的广播加密方案进行解密,所述信息处理设备的特征在于包括在有选择地应用分别与根据应用分级树的SD(子集差异)方案设置的子集对应的子集密钥的同时,通过执行加密处理产生密文的密文产生装置;其中密文产生装置中要应用的子集密钥是可根据分别与子集对应的标记(LABEL)计算的子集密钥,并被设置成以致根据中间标记(IL),运算处理可计算与选择部分的特殊子集对应的标记的值,并且中间标记允许通过根据至少一个中间标记的值应用陷门单向置换F,计算其它中间标记的值。
36.按照权利要求35所述的信息处理设备,其特征在于还包括产生子集密钥的子集密钥产生装置,其中子集密钥产生装置被配置成根据分别与子集对应的标记(LABEL),由伪随机数发生处理产生子集密钥。
37.按照权利要求35所述的信息处理设备,其特征在于还包括产生子集密钥的子集密钥产生装置,其中子集密钥产生装置被配置成根据对其应用使用x1∈ZM*,及作为加密参数的模数M和保密指数d的陷门单向置换F的逆置换F-1的运算表达式,产生与特殊子集对应的中间标记,根据中间标记通过运算处理产生与特殊子集对应的标记,还根据产生的标记通过运算产生不对应于特殊子集的标记,和根据产生的标记通过运算处理计算子集密钥。
38.按照权利要求35所述的信息处理设备,其特征在于特殊子集包括第一特殊子集和第二特殊子集至少之一;第一特殊子集是子集Si,j之一,并且在节点i和节点j之间具有直接后代的父子关系,子集Si,j被定义为通过从生根于分级树中的节点i的子树中排除生根于低于节点i的节点j的子树而获得的子集;第二特殊子集是定义为具有包括分级树的所有叶子的根作为顶部的整树集合的子集S1,。
39.按照权利要求35所述的信息处理设备,其特征在于子集是根据基本LSD(基本分层子集差异)方案设置的子集,所述基本LSD方案具有基于由在分级树中设定的单个特殊层面分隔开的各层的子集管理构型。
40.按照权利要求35所述的信息处理设备,其特征在于子集是根据一般LSD(一般分层子集差异)方案设置的子集,所述一般LSD方案具有基于由在分级树中设定的多个特殊层面分隔开的各层的子集管理构型。
41.一种计算机程序,用于产生应用于密文供给处理的分级树,在所述密文供给处理中,只有特定的选定设备可利用基于分级树构型的广播加密方案进行解密,所述计算机程序的特征在于包括产生中间标记(IL)的中间标记产生步骤,所述中间标记被定义为具有数值,所述数值允许通过运算处理,计算分别与基于应用分级树的SD(子集差异)方案的子集对应的标记(LABEL)之中,与选定部分的特殊子集对应的标记的值,并且允许通过根据至少一个中间标记的值应用陷门单向置换F,计算其它中间标记的值;根据中间标记通过运算处理产生与特殊子集对应的标记,并且还根据产生的标记通过运算产生不对应于特殊子集的标记的标记产生步骤;和确定用于供给与分级树的端节点对应的接收器的标记的供给用标记确定步骤,所述标记包括不对应于特殊子集的特殊子集非对应标记,和通过运算处理,可根据其计算与特殊子集对应的标记的中间标记。
42.一种计算机程序,用于执行由分别与根据SD(子集差异)方案设置的子集对应的子集密钥加密的密文的解密处理,所述SD(子集差异)方案是一种基于分级树构型的广播加密方案,所述计算机程序的特征在于包括从密文中选择通过应用可由伪随机数产生处理根据其中保持的标记或者可从其中保持的中间标记计算的标记得到的子集密钥而产生的密文的密文选择步骤;如果伪随机数产生处理不能根据保持的标记得到将应用于密文的子集密钥,那么通过对保持的中间标记执行运算处理,计算与特殊子集对应的标记的标记计算步骤;伪随机数产生处理根据保持的标记或者计算的标记,产生子集密钥的步骤;和通过应用产生的子集密钥,执行密文的解密处理的解密步骤。
43.一种计算机程序,用于执行密文的产生处理,其中只有特定的选定设备可利用基于分级树构型的广播加密方案进行解密,所述计算机程序的特征在于包括在有选择地应用分别与根据应用分级树的SD(子集差异)方案设置的子集对应的子集密钥的时候,通过执行加密处理产生密文的密文产生步骤;其中密文产生步骤中要应用的子集密钥是可根据分别与子集对应的标记(LABEL)计算的子集密钥,并被设置成以致根据中间标记(IL),运算处理能够计算与选择部分的特殊子集对应的标记的值,并且中间标记允许通过根据至少一个中间标记的值应用陷门单向置换F,计算其它中间标记的值。
全文摘要
应用基于SD方案的树形结构的密文供给构型中,借助其能够减少将保存设备的用于解密密文的信息的数量的构型。设置根据其可计算分别与根据SD方案或LD方案设定的子集对应的标记中的特殊子集对应标记的中间标记,从而使得根据单一中间标记的值,通过应用陷门单向置换F,能够计算其它中间标记。接收器提供特殊子集非对应标记和所述单一中间标记。通过对这样保持的中间标记进行陷门单向置换F,接收器计算其它中间标记,根据所述其它中间标记,能够计算所有必需的标记。
文档编号G06F12/14GK1774886SQ20058000033
公开日2006年5月17日 申请日期2005年2月22日 优先权日2004年3月31日
发明者浅野智之 申请人:索尼株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1