加密密钥生成装置的制作方法

文档序号:7738861阅读:444来源:国知局
专利名称:加密密钥生成装置的制作方法
技术领域
本发明涉及一种生成加密密钥的装置,被用于对具有多种阶层可扩展性的数字进行数据编码(加密)及解码(解除加密),尤其涉及一种自动生成各可扩展性中的阶层数据单位分别对应的部分密钥(以下称为部分密钥)的装置。
背景技术
近年来,随着通过网络的信息通信服务的普及,对不确定数量的对方进行数据传送的服务,例如,图像(包含动态图像的一帧数据)等数字码的配送服务也逐渐增多。伴随于此,这种网络环境(通信系统)中数字数据的保护技术也需要寻求更高的功能。一般而言,被编码的数字图像等是利用编码时所确定的质量(失真度、解析度、颜色表现等)进行解码。然而,由于通信路径的多样化、通信终端的多样化、信号配送的多样化等,需要寻求通过将编码列的一部分进行解码而能够将与编码时所确定的质量不同的质量的图像解码,即,可扩展性。对应于可扩展性的要求,例如作为图像压缩的国际标准的 JPEG 2000 (Joint Photographic Experts Group 2000)中,提供一种以解析度等尺度而阶层化的可扩展性。另外,对于这种阶层保护质量不同的数据的保护技术中,针对各个可扩展性而位于各阶层的每个数据单位,一般使用个别的部分密钥进行解码。此外,作为这种数字数据保护技术,例如已公知专利文献1-2及非专利文献1-3。非专利文献1公开了一种技术,对于具有阶层可扩展性的数字数据,通过利用单向散列(Hash)函数从一个主密钥生成对应于下位阶层的数据单位的部分密钥。另外,非专利文献2公开了一种与非专利文献1的课题的流数据的顺序无关的技术。再者,上述非专利文献3公开了一种提高非专利文献1的课题的抵抗黑客攻击的技术。此外,所谓黑客攻击,是指通过在多个用户之间共享对应于每个可扩展性不同的阶层等级的多种加密密钥,实现以比预先允许的质量高的质量再生图像的行为。现有技术文献专利文献专利文献1 日本专利特开2004-312740号公报专利文献2 日本专利特开2003-204321号公报非专利文献1 :Y. ffu, D. Ma, and R. H. Deng, "Progressive protection of JPEG 2000 condestreams. ” In Proc. IEEE ICIP,pp.3447-3450,2004非专禾Ij 文献 2 :Μ· Fuhiyoshi, S. Imaizumi, and H. Kiya, "Encryption of composite multimedia contents for access control,,,IEICE Trans. Fundamentals, Vol. E90-A, No. 3,pp. 590-596,March 2007非专利文献3 今泉祥子、藤吉正明、安部淑人、贵家仁志,「耐黑客攻击的JPEG 2000编码图像的阶层的加密方法」信学SIP研讨会,2006发明人等针对现有的数据保护技术进行详细探讨后发现以下的课题。即,在阶层性地保护质量不同的数字数据的情况下,按照每种可扩展性分别管理加密密钥(部分密钥),或是按照关于各个可扩展性而位于各阶层的每个数据单位,使用个别的部分密钥进行加密(编码)。特别是,管理以数据单位所生成的个别的部分密钥的情况下,随着阶层数增加,不仅作为管理对象的密钥数目增加,为了维持黑客抵抗性,必须确保充分的密钥长度,随着各可扩展性中的阶层增加,总密钥长度显著变多。相反,由一个主密钥生成对应于各数据单位的部分密钥的情况下,由于需要仅分割部分密钥数目的主密钥,如非专利文献3,一旦部分密钥数增加时,必须缩短分别生成的部分密钥的长度。在这种情况下,无法保证充分的黑客抵抗性。

发明内容
本发明是为了解决上述的课题而完成的,其目的在于提供一种加密密钥生成装置,针对朝向具有阶层可扩展性的数字数据的黑客攻击,生成能够确保充分抵抗性的加密密钥,并且飞跃性地减小各可扩展性阶层所分别对应的加密密钥的密钥长度。本发明的加密密钥生成装置是一种可适用于通信系统(以下,称为配送系统)的装置,提供具有多种0 阶层可扩展性的数字数据的配送服务,将符合所预先签订的服务等级的阶层之中位于最下位阶层的部分密钥作为主密钥,生成对该数字数据进行编码及解码所利用的加密密钥(在可扩展性的各个之中,位于与较主密钥的阶层为上位的各个阶层所对应的部分密钥组)。具体而言,在该加密密钥生成装置所适用的配送系统中,除了使用图像压缩的国际标准的JPEG 2000的封包编码列等多媒体的图像传送系统或电视会议系统以外,也包含提供流信号配送服务的通信系统。该加密密钥生成装置具备输入单元、存储单元、密钥分割单元、矩阵生成单元、密钥生成单元、及输出单元,作为配送用数字数据的编码及解码所利用的加密密钥是针对各个可扩展性,根据从属性而从主密钥生成位于上位的各阶层的部分密钥。因此,可对单一的编码列中的多个可扩展性同时进行存取控制。具体而言,在本发明的加密密钥生成装置中,输入单元取得预先设定的加密密钥 (部分密钥),通过此输入单元所取得的加密密钥作为主密钥而暂时存储于存储单元。此主密钥是针对各个可扩展性,符合提供数据配送服务的通信系统(配送系统)中所许可的服务等级的阶层之中,位于最下位的部分密钥。另外,密钥分割单元从存储单元所存储的主密钥生成分割密钥。接着,作为最小处理单位,该加密密钥生成装置生成与所选出的两种可扩展性各个之中的阶层数据单位对应的部分密钥。即,矩阵生成单元生成与各个通过密钥分割单元所生成的分割密钥对应的密钥要素矩阵。密钥生成单元进行由通过矩阵生成单元生成的密钥要素矩阵的成分结合从而生成各阶层对应的部分密钥。再者,输出单元将上述的最小处理单位中由密钥生成单元所生成的部分密钥输出至进行数字数据的编码与解码中至少任一种的装置,例如编码单元、解码单元等。密钥要素矩阵是按照一种可扩展性的每个阶层,基于对应于各个阶层的分割密钥而予以生成。另外,各密钥要素矩阵根据两种可扩展性各个阶层值(相当于阶层等级)而规定各成分坐标,由此,各矩阵成分与两种可扩展性中的各个阶层的数据单位与坐标相对应。此外,该加密密钥生成装置的特征在于根据从属性而从唯一所管理的主密钥生成对应于位于上位的各个阶层的部分密钥。因而,解除加密时也相同,从属地从主密钥生成对应于位于上位的各个阶层的部分密钥,例如,在多媒体配送服务等之中,仅对于所允许公开了的封包组之中的最下位封包的解码密钥配送至用户(信号配送服务的合同者)。这种情况下,所给与的解码密钥本身成为该加密密钥生成装置的存储单元所存储的主密钥,对应于此主密钥的各可扩展性阶层为各个的最下位阶层。作为被存储单元存储的主密钥是从作为编码对象的数字数据所具有的多种可扩展性所选出的第1及第2可扩展性的各个之中,符合配送系统中所许可的服务等级的阶层之中位于最下位的阶层数据单位的编码与解码所利用的加密密钥。相反的,将通过配送等得到的解码密钥设为主密钥的情况下,将与该主密钥对应的各可扩展性的阶层分别设为最下位阶层。由密钥分割单元以作为第1及第2可扩展性之中的基准可扩展性所设定的第1 可扩展性的阶层数分割该主密钥,从而生成与该第1可扩展性的各阶层对应的分割密钥。由矩阵生成单元基于分割密钥而使分别生成的密钥要素矩阵与第1及第2可扩展性中的各阶层的数据单位坐标相对应。此外,基于所得到的分割密钥之中的一个分割密钥所生成的密钥要素矩阵的生成中,对至少该一个分割密钥所对应的第1可扩展性中的阶层且从第2可扩展性中的最下位阶层至最上位阶层的各个所对应的坐标成分,分配通过重复进行利用单向散列函数的该一个分割密钥的散列运算所依次得到的运算数据。由此,第2 可扩展性的阶层性被维持。接着,密钥生成单元通过结合按每个分割密钥所生成的密钥要素矩阵之间坐标一致的密钥要素,生成对应于第1及第2可扩展性中的各阶层的数据单位的部分密钥。S卩,密钥生成单元按每个该数据单位生成用于编码或解码含有主密钥的阶层的上位阶层的数据单位的部分密钥。根据此结构,第1可扩展性的阶层性也被维持。此外,在本发明的密钥生成装置中,优选密钥分割单元选择第1及第2可扩展性之中的阶层数少的可扩展性作为上述的基准可扩展性。此情况下,变得难以受到一部分可扩展性阶层数增加的影响。另外,矩阵生成单元,作为基于分割密钥之中的一个分割密钥而生成的密钥要素矩阵的成分信息,对相当于较该一个分割密钥所对应的第1可扩展性中的阶层为位于下位的阶层且从第2可扩展性的最下位阶层至最上位阶层的各个的坐标成分,分配与针对该一个分割密钥的阶层依次所得到的运算数据相同的运算数据,另一方面,对相当于较该一个分割密钥所对应的第1可扩展性中的阶层为位于上位的阶层且从所述第2可扩展性的最下位阶层至最上位阶层的所有坐标成分分配以下运算数据,即针对该一个分割密钥所对应的阶层的密钥要素之中第2可扩展性的最上位阶层的密钥要素、利用单向散列函数进行散列运算所得到的运算数据。如上所述,本发明的加密密钥生成装置与按照渐进顺序而必须准备多个编码列与主密钥的现有的加密密钥生成技术不同,不受到编码列的渐进顺序的限制。另外,本发明的加密密钥生成装置是从属地从主密钥生成对应于各数据单位的阶层的加密密钥(部分密钥),对于单一编码列中的多个可扩展性,可同时存取控制。由此,编码列及所管理的加密密钥(主密钥)的信息量被飞跃地减低、可有效提高数字码或加密密钥的管理、信号配送中的安定性。再者,本发明的加密密钥生成装置,作为编码对象的数字数据具有三种以上的可扩展性的情况下,从该三种以上的可扩展性中选择两种可扩展性,针对所选出的两种可扩展性的所有组合,通过实行上述的最小处理单位(通过矩阵生成单元及密钥生成单元进行的密钥生成动作),针对各个可扩展性,生成含有主密钥的阶层的各上位阶层的各数据单位所对应的部分密钥(用于各部分密钥所对应的数据单位的编码及解码)。S卩,矩阵生成单元,针对两种可扩展性的所有组合,生成每个组合的部分密钥要素矩阵。此时,矩阵生成单元也生成表示多种可扩展性中的阶层值的所有组合的阶层表。该阶层表根据阶层值的组合而坐标表现出多种可扩展性中的各个阶层值的数据单位所对应的部分密钥作为成分的部分密钥矩阵。另外,该阶层表表示可扩展性的种类与阶层值的对应关系,能够特定从此关系而针对可扩展性的所有组合所生成的部分密钥矩阵的成分。于是,密钥生成单元,针对阶层表中的阶层值的所有组合,根据构成一个组合的阶层值之中的两个阶层值及可扩展性的种类而予以特定、结合针对两种可扩展性的所有组合所生成的部分密钥要素矩阵各个的成分。这样,阶层值的每个组合所结合的要素是维持此状态下的部分密钥要素矩阵的成分。因而,由密钥生成单元通过从各个部分密钥要素矩阵根据阶层表而结合各个所对应的成分,依次生成与多种可扩展性中的各阶层对应的数据单位所对应的部分密钥。此外,输出单元将所生成的部分密钥输出至进行数字数据的编码及解码中至少任一种的装置,例如,输出至编码单元或解码单元。关于对具有三种以上阶层可扩展性的数字数据的编码及解码所利用的加密密钥的生成,与通过上述加密密钥生成装置所生成的加密密钥相比,能够进一步提高对黑客攻击的抵抗性。具体而言,输入单元,用于取得加密密钥,该加密密钥是在三种以上的可扩展性的各个中,符合通信系统所许可的服务等级的阶层中位于最下位的阶层的数据单位的编码与解码所利用的加密密钥,存储单元将通过输入单元取得的加密密钥作为主密钥而存储(将通过配送所得到的解码密钥作为主密钥的情况下,将对应于该主密钥的各可扩展性的各阶层作为最下位阶层)。此时,密钥分割单元也从三种以上的可扩展性选择第1及第2基准可扩展性。第1基准可扩展性是用于从存储单元所存储的主密钥生成分割密钥的可扩展性, 密钥分割单元以该第1基准可扩展性的阶层数分割主密钥,从而生成对应于该第1基准可扩展性的各阶层的分割密钥。这里,第2基准可扩展性是用于规定利用如上述的单向散列函数的散列运算的运算方向的可扩展性。在该密钥生成装置中,矩阵生成单元针对三种以上可扩展性之中的第1及第2基准可扩展性以外的其他各个可扩展性的各阶层,每对应于该第1基准可扩展性的各阶层的一连串运算,生成以该三种以上可扩展性之中的阶层值所坐标表现的多维密钥要素矩阵。 因此,若以S表示可扩展性的数量,从较小的起而依次以Ni、N2. . . , Nh、Ni表示各可扩展性的阶层数Nk(k= l,2,3,...,i-l,i)时,对于利用以下数学式(1)所表示的总封包数,通过该矩阵生成单元所生成的多维密钥要素矩阵数由以下数学式( 表示。〔数学式1〕
SΠ ^……⑴〔数学式2〕
5-1Π ^……(2) /=1具体而言,矩阵生成单元,作为生成的多维密钥要素矩阵各个中的成分信息,对至
7少所生成的分割密钥之中的一个分割密钥所对应的第1基准可扩展性中的阶层且从第2基准可扩展性中的最下位阶层至最上位阶层的各个所对应的坐标成分,分配通过重复进行利用单向散列函数的该一个分割密钥的散列运算而依次得到的运算数据。由此,在所得到的多维密钥要素矩阵中,至少维持第2基准可扩展性的阶层性。接着,密钥生成单元,针对第1及第2基准可扩展性以外的其他可扩展性各个的各阶层,对于每对应于该第1基准可扩展性的各阶层的一连串运算所生成的多维密钥要素矩阵各个之中,通过将坐标一致的成分彼此结合,生成多种可扩展性中的各阶层的数据单位所对应的部分密钥。即,所得到的多维密钥要素矩阵,针对第1及第2基准可扩展性以外的其他可扩展性各个的各阶层,为了生成该第1基准可扩展性的每个阶层,从所得到的多维密钥要素矩阵至最终生成的部分密钥矩阵中也维持该第1基准可扩展性的阶层性。这里,针对除了第1及第2可扩展性以外的各个可扩展性的各阶层,作为每对应于第1基准可扩展性的各阶层的一连串运算所生成的多维密钥要素矩阵的各个的成分信息, 对相当于较所对应的该其他可扩展性及第1基准可扩展性各个的阶层为位于下位的阶层且从第2可扩展性的最下位阶层至最上位阶层各个的坐标成分,分配与使用分配至该所对应的第1基准可扩展性阶层的一个分割密钥而依次得到的运算数据相同的运算数据。另一方面,对相当于较所对应的其他可扩展性及第1基准可扩展性各个的阶层为位于上位的阶层且从第2基准可扩展性的最下位阶层至最上位阶层各个的所有坐标成分分配以下运算数据,即针对该一个分割密钥所对应的阶层的密钥要素之中的第2基准可扩展性的最上位阶层的密钥要素、利用单向散列函数的散列运算所得到的运算数据。输出单元,将上述的最小处理单位中通过密钥生成单元生成的部分密钥输出至进行数字数据的编码及解码中至少任一种的装置,例如编码单元、解码单元等。此外,本发明的各实施例通过下列的详细说明所附加的图示而变得能够更充分理解。该实施例是为了单纯示例所示的例子,并非限定本发明的例子。另外,本发明的进一步应用范围通过下列的详细说明变得明确。然而,详细的说明及特定的事例表示本发明的适宜的实施例,但仅用于举例。对于本领域的技术人员而言,可以从以下详细的说明得知本发明范围内的各式各样的变形与改良。如上所述,根据本发明,由于利用单向散列函数而从属地从主密钥生成位于上位阶层的部分密钥,因此由各个可扩展性的阶层等级所特定的一个数据单位所对应的部分密钥,无法从任一个可扩展性的阶层位于上位的数据单位所对应的部分密钥生成。因而可防止黑客攻击。另外,由于每两种可扩展性组合成为存取控制对象的可扩展性而生成部分密钥,可减低所生成的部分密钥的密钥长度。


图1是表示适用本发明的加密密钥生成装置的数字数据的配送系统的概略构成的图。图2是表示构成图1所示的配送系统的一部分的信息处理设备(配送服务器或 PC)中各部分构成的图。图3是用于说明具有多种阶层可扩展性的数字数据(作为图1所示的配送系统中的配送对象的数字数据)的数据结构的概念图。
图4是用于说明渐进顺序的概念图。图5是矩阵状地表现具有两种的3阶层可扩展性的数字数据的各数据单位(相当于JPEG 2000的各封包)及与该数据单位对应的部分密钥的图。图6是用于说明适用本发明的加密密钥生成装置的数字数据配送系统(图1)中的数据配送动作的逻辑框图。图7是用于说明本发明的加密密钥生成装置结构的逻辑框图。图8是用于说明本发明的加密密钥生成装置的第1实施例中所执行的加密密钥生成动作的概念图。图9是用于说明通过第1实施例的加密密钥生成装置的矩阵生成单元生成密钥要素矩阵的概念图。图10是用于说明本发明的加密密钥生成装置的第2实施例中所执行的加密密钥生成动作的概念图。图11是用于说明通过第2实施例的加密密钥生成装置的矩阵生成单元生成密钥要素矩阵的概念图。图12是用于说明本发明的加密密钥生成装置的第3实施例所执行的加密密钥生成动作的概念图。图13是用于说明通过第3实施例的加密密钥生成装置的矩阵生成单元生成密钥要素矩阵的概念图。图14是用于说明针对具有三种以上阶层可扩展性的数字数据的部分密钥的生成 (作为本发明的加密密钥生成装置的第4实施例所执行的加密密钥生成动作)的概念图。图15是表示通过第4实施例的加密密钥生成装置的矩阵生成单元所生成的阶层表、及部分密钥要素矩阵与部分密钥矩阵的坐标对应关系的图。图16是用于说明通过第4实施例的加密密钥生成装置的矩阵生成单元生成的部分密钥要素矩阵及部分密钥矩阵的要素之间的对应关系的图。图17是用于说明作为多维部分密钥矩阵及多维部分密钥要素矩阵中的各坐标成分配置的立体表示例的三维矩阵、及使第4实施例所执行的加密密钥生成动作一般化的加密密钥生成(图14)中的分割密钥的分配动作的图。图18是使第4实施例所执行的加密密钥生成动作一般化的加密密钥生成中,使用立体表示的三维矩阵对与可扩展性L、R的各阶层对应的密钥要素生成步骤作说明的图。图19是使第4实施例所执行的加密密钥生成动作一般化的加密密钥生成中,使用立体表示的三维矩阵对与可扩展性R、C的各阶层对应的密钥要素生成步骤作说明的图。图20是使第4实施例所执行的加密密钥生成动作一般化的加密密钥生成中,使用立体表示的三维矩阵对与可扩展性L、C的各阶层对应的密钥要素生成步骤作说明的图。图21是用于说明本发明的加密密钥生成装置的第5实施例所执行的加密密钥生成动作中,从主密钥生成分割密钥的密钥分割单元动作的一例的图。图22是用于说明通过第5实施例的加密密钥生成装置的矩阵生成单元进行的多维密钥要素矩阵生成步骤的图(与基准可扩展性L、R以外的其他可扩展性C的最下位阶层对应的多维密钥要素矩阵组的生成)。图23是用于说明通过第5实施例的加密密钥生成装置的矩阵生成单元进行的多
9维密钥要素矩阵生成步骤的图(与较基准可扩展性L、R以外的其他可扩展性C的最下位阶层仅上位1阶层的阶层对应的多维密钥要素矩阵组的生成)。图M是用于说明通过第5实施例的加密密钥生成装置的矩阵生成单元进行的多维密钥要素矩阵生成步骤的图(与基准可扩展性L、R以外的其他可扩展性C的最上位阶层对应的多维密钥要素矩阵组的生成)。
具体实施例方式以下参照图1-图M详细说明本发明的加密密钥生成装置的各实施例。此外,图的说明中将相同部位和相同要素标以相同标号而省略重复的说明。本发明的加密密钥生成装置生成对具有多种阶层可扩展性的数字数据进行编码及解码时所使用的加密密钥。另外,在各实施例中,为了简单,作为具有阶层可扩展性的数字数据的具体例,对于图像压缩的国际标准即JPEG 2000的各封包编码列所对应的部分密钥生成动作加以说明。此外,JPEG 2000是可针对可扩展性的种类赋与优先顺序。在编码列中该顺序表现为数据单位即封包的构成顺序(渐进顺序)。作为决定该渐进顺序的要素, 有层(L)、解析度等级(R)、分量(C)以及位置(P)这4种可扩展性。图1是表示适用本发明的加密密钥生成装置的数字数据的配送系统的概略构成的图。图1所示的配送系统是提供具有阶层可扩展性的数字数据的配送服务,并除了图像传送系统或双向电视会议系统以外,也包含提供流数据配送服务的通信系统。另外,该配送系统系具备有线或无线的网络300、分别与该网络300连接的例如个人计算机等多个信息处理终端(以下称为PC) 200、以及配送服务器100,PC 200与配送服务器100是能够通过网络300互相进行含有数字数据的多媒体双向通信的状态。配送服务器100管理存储有用于配送服务的预先准备的多种数字数据码的数据库(以下称为D/B) 110,该数据库110作为外部存储装置。在各PC 200与配送服务器110之间预先签订了关于数字数据的配送服务的合同,配送服务器110 —旦接受来自PC 200的信号配送请求时,则发送与预先签订的服务等级所对应的画质的数字数据。此外,图2表示构成上述配送系统的一部分的、配送服务器100和PC 200等信息处理设备的结构。特别是,图2中,(a)表示配送服务器100或PC 200的构成,(b)表示配送服务器100所管理的D/B 110的逻辑构成。S卩,如图2(a)所示,配送服务器100或PC 200具备通过网络300进行与其他信息处理设备的数据收发的输入输出单元(以下称为I/O) 210、执行各种运算程序231的运算部220、作为存储该运算程序或数据的存储单元的存储器230、根据运算部220的控制而生成显示数据的描绘部250、以及用于与各种外围设备进行数据处理的输入输出单元(以下称为1/0)240。此外,监视器251中显示描绘部250所生成的显示数据。另外,将配送服务器100所管理的D/B 110等外部存储装置270、作为输入单元的键盘沈0以及指示设备连接于 I/O 240。合同信息表110a、密钥管理表110b、以及配送用数字数据组IlOc被预先存储于配送服务器100所管理的外部存储装置即D/B 110中。此外,在合同信息表IlOa中,将PC 200 的操作者即用户(合同者)与反映该合同内容的服务等级建立对应。在密钥管理表IlOb 中,按每位用户(合同者),将D/B 110中所存储的数字数据(配送服务用的各种数字码)与用于将该数字码进行编码的部分密钥(主密钥)建立对应。图3是用于说明具有多种阶层可扩展性的数字数据(为图1所示的配送系统中作为配送对象的数字数据)的数据结构的概念图。另外,图3表示将例如JPEG 2000的可扩展性中作为存取控制对象的可扩展性限制为仅层(L)及解析度等级(R)时(浓淡图像的情况)的JPEG 2000的封包编码列的解码图案。具体而言,图3中,层(可扩展性L)的阶层数队为3、解析度等级(可扩展性R)的阶层数队为3。层是所谓的画质层,指对应于图像再生时的SNR(Signal/Noise Ratio:信号噪声比)的数字图像的算术编码数据。由于对画质的影响越高的信息越含于上位层中,因此通过对上位层的数据追加下位层的数据,能够阶段性地使再生图像的质量提高。该图3 中,PiJi = 0,. . .,Nl-I ; j = 0,. . .,Nr-I ;i 是可扩展性 L 的阶层编号;j 是可扩展性R的阶层编号)表示具有图像信息的JPEG 2000封包。若以Qu表示某质量的 JPEG 2000编码图像时,为了得到Qu,需要对图3的框A所包围的封包Pi,」(i = 0,. . .,L ; j = 0,...,R)全部进行解码。这里,为了正常再生图像,所解码的封包Pi,」必须全部解除加密。因而,为了在存取控制中保持阶层性,需要对封包Py进行个别加密。上述的JPEG 2000中,渐进顺序有LRCP、RLCP, RPCL, PCRL及CPRL这5种,从各个开头的要素开始依次优先。图4是一概念图,用于说明表示对图3所示的JPEG 2000封包编码列进行解码时的优先级的渐进顺序。尤其,在图4中,(a)是解码顺序为使可扩展性 L(层)为最优先的LRCP的渐进顺序,(b)是解码顺序为使可扩展性R(解析度等级)最优先的RLCP的渐进顺序。本发明的加密密钥生成装置,基于与管理与配送有关的安全性及容易生成性的观点,减少密钥长度,并且生成对黑客攻击具有抵抗性的加密密钥。当生成上述JPEG 2000封包各个的加密密钥时,该加密密钥生成装置,由于将各封包作为按可扩展性各个的阶层等级而特定的矩阵成分来操作,因此可不管JPEG 2000的渐进顺序。列举一例,图5(a)表示按可扩展性L (层)的阶层等级与可扩展性R (解析度等级)的阶层等级而矩阵化表现的封包Pu(L:0(最上位)、1、2(最下位);R:0(最上位)、1、2(最下位))。另外,图5(b)表示与图5(a)的封包Pu对应的矩阵化表现的部分密钥:0、1、2 ;R :0、1、2)。这里,所谓黑客攻击,是指由于2个以上的用户不正当共享加密密钥,因而能够以比所允许的正规画质更高的画质进行再生。具体而言,以JPEG 2000编码图像为例,考虑仅被允许最上位层(层0)公开了的用户、与仅被允许最上位解析度等级(解析度等级0)公开了的用户相联合。在这种情况下,若将封包Py所对应的加密密钥设为Ky,其中一个用户可将与3个封包PmG· = 0,1,2)对应的加密密钥Kthj (j = 0,1,2)、另一个用户可将与3 个封包PwG = 0,1,2)对应的加密密钥Ui = 0,1,2)分别以正规允许的密钥资格而获得。对黑客攻击的抵抗性不充分的情况下,这些用户能够联合从而不正当的生成两者都未被允许的加密密钥K2^K2IKu、及Ku。本发明的加密密钥生成装置所实行的加密密钥生成动作,如下述各实施例所说明的那样,对于某封包的加密密钥(部分密钥),不从至少一个可扩展性中位于比此封包更上位的阶层的封包生成,而是从任意的可扩展性中位于与此封包同位或比其下位的阶层的封包生成。因此,由本发明的加密密钥生成装置所生成的加密密钥对黑客攻击具有抵抗性。接着,使用图6说明图3所示的数字数据配送系统中的数据配送动作。此外,图6是用于说明适用本发明的加密密钥生成装置的数字数据配送系统(图1)中的信号配送动作的逻辑框图。另外,配送服务器100、PC 200具有图2(a)所示的结构。如图6所示,PC 200向配送服务器100进行了信号配送请求后,配送服务器100对 PC 200的数据配送服务开始进行。一旦接受来自PC200的配送请求,配送服务器100首先进行请求解析。该请求解析中,进行发送该配送请求的用户的认证手续、所需配送的数据的确定、以及服务等级的确定等。配送服务器100中,一旦结束请求解析,则从D/B 110读出所请求配送的数据,并且读出该数据所对应的主密钥(用于生成加密密钥的部分密钥,该加密密钥是用于对所读出的数据进行编码)。加密密钥生成装置400(本发明的加密密钥生成装置)输入主密钥, 利用主密钥生成编码用的部分密钥(位于比主密钥所对应的阶层更上位的上位阶层分别对应的部分密钥)。这样生成的部分密钥从加密密钥生成装置400输出至编码单元410。另一方面,编码单元410输入从D/B 110所读出的数据,对于构成该数据的各个封包,利用从加密密钥生成装置400输出的部分密钥中与待编码的封包所对应的部分密钥来进行编码, 由此生成编码数据(待配送的封包组的编码列)。然后,配送服务器100通过网络300将与主密钥一起生成的编码数据配送至PC 200 (配送请求源),该主密钥用于生成编码所利用的部分密钥。此外,具体的数据编码是通过配送服务器100中的控制部220(图2(a))来执行的。即,通过控制部220执行存储器230中预先存储的程序231,使该控制部220作为编码单元410而动作。PC 200通过I/O 210取得经由网络300配送来的编码数据及主密钥,并暂时存储于存储器230中。PC 200中的加密密钥生成装置400(本发明的加密密钥生成装置)输入存储器230所存储的主密钥,并利用该主密钥生成解码用的部分密钥(位于比主密钥对应的阶层更上位的上位阶层所分别对应的解码密钥)。另外,加密密钥生成装置400将所生成的解码密钥输出至解码单元420。解码单元420,输入从存储器230读出的编码数据,对于被编码的各个封包,利用从加密密钥生成装置400所输出的解码密钥中所对应的解码密钥进行解码,由此生成解码数据。此外,具体的数据解码是通过PC 200的控制部220(图2(a)) 来执行的。即,通过控制部220执行存储器230中预先存储的程序231,该控制部220作为解码单元420而动作。本发明的加密密钥生成装置适用于图1的配送系统的情况,相当于图6中的加密密钥生成装置400,具体而言,具备图7所示的结构。图7是用于说明本发明的加密密钥生成装置的结构的逻辑框图。S卩,如图7所示,加密密钥生成装置400具备用于取得主密钥的输入单元450、利用主密钥生成部分密钥的运算单元460、用于暂时存储主密钥或运算单元460的运算结果的存储单元470、以及用于将与所生成的部分密钥中与所签订的服务等级一致的阶层的部分密钥输出至编码单元410或解码单元420的输出单元480。运算单元460由密钥分割单元461、矩阵生成单元462与密钥生成单元463构成。将上述逻辑结构适用于图2(a)所示的硬件结构时,I/O 210发挥输入单元450与输出单元480的功能。存储器230发挥存储单元470的功能。控制部220发挥运算单元 460的功能。另外,通过控制部220执行存储器230中预先存储的程序231,其分别作为密钥分割单元461、矩阵生成单元462、密钥生成单元463而动作。
(第1实施例)以下,说明本发明的加密密钥生成装置的第1实施例中所执行的加密密钥生成动作。此外,第1实施例的加密密钥生成装置具有图7所示的结构,更具体而言由图2(a)所示的硬件结构实现。该第1实施例中,将作为存取控制对象的可扩展性设为可扩展性L(层) 与可扩展性R(解析度等级),并将可扩展性L的阶层数队设为3、将可扩展性R的阶层数 Nk设为3。此时,将可扩展性L、R中各阶层的封包作成3X3的矩阵成分Py (i = 0,1,2 ; j =0,1,2)来进行处理。此外,图8是概念图,用于说明本发明的加密密钥生成装置的第1 实施例所执行的加密密钥生成动作(图7所示的运算单元460的动作)。另外,图9是用于说明第1实施例的加密密钥生成装置的矩阵生成单元462进行的密钥要素矩阵的生成。主密钥是由输入单元450通过D/B110或网络300而被配送的部分密钥,且暂时被存储于存储单元470中。即,主密钥是由存储单元470所预先管理的最下位的封包所对应的部分密钥,在图8的例子中,是对可扩展性L、R而言皆位于最下位的阶层的封包I^2所对应的加密密钥K2,2。该主密钥K2,2由密钥分割单元461分割为可扩展性L的阶层数队与可扩展性R的阶层数Ne之中的最小值(=min (Nl,Ne))。该第1实施例中,由于队=Nk = 3,密钥分割单元461可以选择可扩展性L,R中的任一个,但作为一例选择可扩展性R作为基准可扩展性。此时,密钥分割单元461以最小阶层数3 (可扩展性R的阶层数)分割主密钥K2,2,由此可得到分割密钥eK2、eE1, ^。该分割密钥^akiAki是与可扩展性R的各阶层对应的根密钥(用于生成各矩阵成分的密钥), 且矩阵生成单元462按照该可扩展性R的各阶层生成密钥要素矩阵M1-M3。如图9所示,由所对应的根密钥即分割密钥eK2、eE1, eE0依次生成密钥要素矩阵 M1-M3各个中的各矩阵成分。首先,密钥要素矩阵Ml中,将分割密钥 分配至(2,2)成分以作为与可扩展性R 的阶层等级2 (最下位阶层)对应的矩阵。此外,图中,矩阵成分e的上侧附加字母R2表示与该密钥要素矩阵Ml对应的可扩展性R(基准可扩展性)的阶层等级,而下侧附加的数字表示密钥要素矩阵Ml的成分坐标。以下,在该第1实施例中,将密钥要素矩阵Ml的成分标示为 eK2(i,j) (i = 0,1,2 ;j = 0,1,2)。通过重复进行利用单向散列函数H*的分割密钥^的散列运算,将依次得到的运算数据分配至分割密钥^所对应的可扩展性R中的阶层(阶层等级=2)即可扩展性L中剩余的阶层分别对应的坐标成分eK2(l,2)、eK2(0,2)。即,将H* (eK2 0,2))的运算数据分配至#2(1,2),将!^(#\2,2))的运算数据分配至成分#(0,2)。通过这样的矩阵运算操作, 针对可扩展性R的阶层等级2,可扩展性L的阶层性被保持。此外,在本说明书中,将单向散列函数H*的η (n = 2、3、...)次运算表示为Η*η。另一方面,在密钥要素矩阵Ml中,将对成分eK2(0,2)进一步利用单向散列函数H* 进行散列运算所得到的运算数据iT(eK2(0,2)) ( = H*3(eE2(2,2)))分配至所有较可扩展性R 的阶层等级2为上位阶层的成分eK2(i,j) (i = 0,1,2 ; j = 0,1)。此时的运算数据是与可扩展性L的阶层数为-1 (实际上不存在)的封包对应的值。如上述所生成的密钥要素矩阵Ml在不变地保持可扩展性L的阶层性的状态下使对于封包Pi,2(i =0,1,2)的存取控制有效。在密钥要素矩阵M2中,将分割密钥%分配至(2,1)成分以作为与可扩展性R的
13阶层等级1对应的矩阵。以下,在该第1实施例中,将密钥要素矩阵M2的成分标示为eK1(i, j) (i = 0,1,2 ;j = 0,1,2)。^H*(eE1(2,l))的运算数据分配至分割密钥%所对应的可扩展性R的阶层(阶层等级=1)即可扩展性L中的剩余阶层分别对应的坐标成分eE1(l, 1),且将H*2(eE1(2,1)) 的运算数据分配至成分eK1 (0,l)o通过这种矩阵运算操作,对于可扩展性R的阶层等级1保持可扩展性L的阶层性。另一方面,在密钥要素矩阵M2中,将对成分eK1(0,l)进一步利用单向散列函数H* 进行散列运算所得到的运算数据iT(eK1(0,l)) ( = H*3(eE1(2,l)))分配至所有较可扩展性R 的阶层等级1为上位阶层的成分eK1(i,0) (i = 0,1,2)。此时的运算数据是与可扩展性L的阶层数为-1(实际上不存在)的封包对应的值。另一方面,在密钥要素矩阵M2中,任一个与成分eK1(i,l) (i = 0,1,2)相同的值分别被分配至较可扩展性R的阶层等级1为下位阶层的成分eK1(id) (i = 0,1,2)。此外,暂时将通过对复制成分eK1(2,l)的值的成分eK1(2,2)依次进行利用单向散列函数的散列运算所得到的值分配至成分eK1 (i,2) (i = 0,1),也是相同意思。在图9等之中,“CP”指复制。如上述所生成的密钥要素矩阵M2是在保持可扩展性L的阶层性的状态下,使对封包PiilG = 0,1,2)的存取控制有效。同样的,在密钥要素矩阵M3中,将分割密_eK(l分配至(2,0)成分以作为与可扩展性R的阶层等级0(最上位阶层)对应的矩阵。以下,在该第1实施例中,将密钥要素矩阵 M3 的成分标示为 eE0(i, j) (i = 0,1,2 ; j = 0,1,2)。将H*(eK(\2,0))的运算数据分配至分割密钥所对应的可扩展性R的阶层(阶层等级=0)即可扩展性L中的剩余阶层分别对应的坐标成分eK° (1,0),将H*2 (eE0 (2,0))的运算数据分配至成分eK°(0,0)。通过该矩阵运算操作,对于可扩展性R的阶层等级0保持可扩展性L的阶层性。另一方面,在密钥要素矩阵M3中,由于较可扩展性R的阶层等级0为上位阶层并不存在,所以不对成分eK°(0,0)进行进一步的散列运算。另一方面,在密钥要素矩阵M3中,将任一个与成分eK°(i,0) (i = 0,1,2)相同的值分别分配至较可扩展性R的阶层等级0为下位阶层的成分eK°(i,j) (i = 0,1,2 ; j = 1,2)。 此外,暂时将通过对复制成分#\2,0)的值的各成分,(2,2)、#°(2,1)依次进行利用单向散列函数的散列运算所得到的值分配至成分eK°(i,j) (i = 0,l,2 ; j = 1,2)也是相同意思。在这种情况下,所生成的密钥要素矩阵M3在不变地保持可扩展性L的阶层性的状态下,使对封包Pi,Q(i =0,1,2)的存取控制有效。接着,密钥生成单元463结合如上所述由矩阵生成单元462所生成的密钥要素矩阵M1-M3之间坐标一致的成分,生成部分密钥矩阵MP1。即,部分密钥矩阵MPl的各成分成为与各个封包PiJi = 0,1,2 ;j = 0,1,2)对应的部分密钥&,」(1 = 0,1,2 ; j = 0,1,2)。如此通过其中一个的可扩展性R(解析度等级)的各个阶层保持另一个可扩展性L(层)的阶层性而生成部分密钥,无论在解析度等级中或是在层中都保持阶层性。此外,输出单元480 将如上所述由密钥生成单元463生成的部分密钥KiijG =0,1,2 ;j = 0,1,2)输出至编码单元410。另外,编码单元410通过所对应的部分密钥Ki,」(i = 0,1,2 ; j = 0,1,2)对各个封包PiJi = 0,1,2 ;j = 0,1,2)进行编码。通过这种方式,被加密的JPEG 2000的封包编码列作为待通过网络300进行配送的编码数据而与主密钥K2,2 —起配送至PC 200。(第2实施例)接着,说明本发明的加密密钥生成装置的第2实施例所执行的加密密钥生成动作。此外,第2实施例的加密密钥生成装置也与第1实施例相同具有图7所示的结构,更具体而言由图2(a)所示的硬件结构予以实现。该第2实施例中,将作为存取控制对象的可扩展性设为可扩展性L (层)与可扩展性R (解析度等级),将可扩展性L的阶层数队设为3、 将可扩展性R的阶层数Nk设为2。此时,可扩展性L、R中的各阶层的封包是作为3X2的矩阵成分Pi,j(i = 0,1,2 ;j = 0,1)而进行处理。此外,图10是用于说明本发明的加密密钥生成装置的第2实施例中所执行的加密密钥生成动作(图7所示的运算单元460的动作)的概念图。另外,图11是用于说明通过第2实施例的加密密钥生成装置的矩阵生成单元462 生成密钥要素矩阵的概念图。主密钥是经由输入单元450通过D/B 110或网络300所配送的部分密钥,且暂时存储于存储单元470中。即,主密钥是由存储单元470所预先管理的最下位封包所对应的部分密钥,在图10的例子中是对于可扩展性L、R而言皆位于最下位的阶层的封包P2il所对应的加密密钥Ku。该主密钥Κ2>1是由密钥分割单元461分割为可扩展性L的阶层数队与可扩展性R的阶层数Nk中的最小值(= min (队,Nk))。S卩,密钥分割单元461以可扩展性R 的阶层数(最小阶层数2)分割主密钥Κ2>1,由此得到分割密钥^。该分割密钥eE0 是与可扩展性R的各阶层对应的根密钥,矩阵生成单元462按该可扩展性R的各阶层生成密钥要素矩阵Ml、M2。密钥要素矩阵Ml、M2中的各矩阵成分是如图11所示根据所对应的根密钥即分割密钥、eE0依次生成。首先,在密钥要素矩阵Ml中,将分割密钥%分配至(2,1)成分以作为可扩展性R 的阶层等级1(最下位阶层)所对应的矩阵。此外,图中的矩阵成分e的上侧附加字母Rl 表示与该密钥要素矩阵Ml对应的可扩展性R(基准可扩展性)的阶层等级,下侧附加数字是表示密钥要素矩阵Ml的成分坐标。以下,在该第2实施例中,将密钥要素矩阵Ml的成分标示为 eK1(i,j) (i = 0,1,2 ;j = 0,1)。将通过重复进行利用单向散列函数H*的分割密钥eK1的散列运算而依次得到的运算数据分配至分割密钥%所对应的可扩展性R的阶层(阶层等级=1)即可扩展性L中的剩余阶层所分别对应的坐标成分eK1(l,l)、eK2(0,l)。即,将H*(eK1 (2,1))的运算数据分配至成分eK1(l,l),将!T2(eKH2,l))的运算数据分配至成分#(0,1)。通过如此的矩阵运算操作,对于可扩展性R的阶层等级1保持可扩展性L的阶层性。另一方面,在密钥要素矩阵Ml中,将对成分eK1(0,l)进一步利用单向散列函数H* 进行散列运算所得到的运算数据H*(eE1 (0,1))( = H*3(eE1 (2,1)))分配至较可扩展性R的阶层等级1为上位阶层的所有成*eK1(i,0) (i = 0,1,2)。此时的运算数据是可扩展性L的阶层数为-1(实际上不存在)的封包所对应的值。如上述生成的密钥要素矩阵Ml在不变地保持可扩展性L的阶层性的状态下,使对封包PiJi =0,1,2)的存取控制有效。在密钥要素矩阵M2中,将分割密钥分配至(2,0)成分以作为与可扩展性R的阶层等级0(最上位阶层)对应的矩阵。以下,在该第2实施例中,将密钥要素矩阵M2的成分标示为 eK°(i,j) (i = 0,1,2 ;j = 0,1)。将Ηυ\2,0))的运算数据分配至分割密钥所对应的可扩展性R中的阶层(阶层等级=0)即可扩展性L中的剩余阶层所分别对应的坐标成分eK°(l,0),且将!T2(eK(\2, 0))的运算数据分配至成分,(0,0)。通过如此的矩阵运算操作,对于可扩展性R的阶层等级0保持可扩展性L的阶层性。另一方面,在密钥要素矩阵M2中,由于较可扩展性R的阶层等级0为上位的阶层并不存在,因此不进一步对成分eK°(0,0)进行散列运算。另一方面,在密钥要素矩阵M2中,将任一个与成分eK°(i,0) (i = 0,1,2)相同的值分别分配至较可扩展性R的阶层等级0为下位阶层的成分eK°(i,1) (i = 0,1,2)。此外,暂时将通过对复制成分eK°(2,0)的值的成分eK°(2,l)依次进行利用单向散列函数的散列运算所得到的值分配至成分eK°(i,l) (i = 0,1,2),也是相同意思。此外,在图11中,CP表示复制动作。在这种情况下,所生成的密钥要素矩阵M2在不变地保持可扩展性L的阶层性的状态下,使对封包?1力=0,1,2)的存取控制有效。此外,在图11等中,“CP”指复制。接着,密钥生成单元463结合如上所述由矩阵生成单元462生成的密钥要素矩阵 Ml、M2之间坐标一致的成分,由此生成部分密钥矩阵MP2。即,部分密钥矩阵MP2的各成分成为与各个封包Pi,」(i = 0,1,2 ;j = 0,1)对应的部分密钥&,」(1 = 0,1,2 ;j = 0,1)。这样,通过按其中一个的可扩展性R(解析度等级)的阶层保持另一个的可扩展性L(层)的阶层性而生成部分密钥,无论在解析度等级中或是在层中都保持阶层性。此外,输出单元480 将如上所述由密钥生成单元463所生成的部分密钥KiijG = 0,1,2 ;j = 0,1)输出至编码单元410。另外,编码单元410利用所对应的部分密钥KiijG = 0,1,2 ;j = 0,1)对各个封 &ΡΜ( = 0,1,2;」= 0,1)进行编码。这样,被加密的JPEG 2000的封包的编码列作为待通过网络300配送的编码数据而与主密钥K2il —起配送至PC 200。(第3实施例)以下,说明本发明的加密密钥生成装置的第3实施例所执行的加密密钥生成动作。此外,第3实施例的加密密钥生成装置也与第1实施例相同具有图7所示的结构,更具体而言,由图2(a)所示的硬件结构予以实现。该第3实施例中,将作为存取控制对象的可扩展性设为可扩展性L (层)与可扩展性R(解析度等级),将可扩展性L的阶层数队设为 4、将可扩展性R的阶层数Nk设为3。此时,可扩展性L、R中的各阶层的封包是作为4X3的矩阵成=0,1,2 ;j = 0,1,2,3)而予以处理。此外,图12是用于说明本发明的加密密钥生成装置的第3实施例中所执行的加密密钥生成动作(图7所示的运算单元460的动作)的概念图。另外,图13是用于说明由第3实施例的加密密钥生成装置的矩阵生成单元462生成密钥要素矩阵的概念图。主密钥是经由输入单元45通过D/B 110或网络300配送的部分密钥,其暂时被存储于存储单元470中。即,主密钥是由存储单元470预先管理的最下位的封包所对应的部分密钥,在图12的例子中是对于可扩展性L、R而言皆为位于最下位的阶层的封包P3,2所对应的加密密钥K3,2。该主密钥K3,2由密钥分割单元461分割为可扩展性L的阶层数队与可扩展性R的阶层数K中的最小值(= min (队,Nk))。S卩,密钥分割单元461以可扩展性R的阶层数(最小阶层数3)分割主密钥K3,2,由此得到分割密钥eK2、eE1, ^。该分割密钥eK2、eE1, eE0是与可扩展性R的各阶层对应的根密钥,矩阵生成单元462按该可扩展性R的各阶层生成密钥要素矩阵M1-M3。由所对应的根密钥即分割密钥eK2、eE1, eE0如图13所示依次生成密钥要素矩阵 M1-M3的各矩阵成分。首先,在密钥要素矩阵Ml中,将分割密钥 分配至(3,2)成分以作为对应于可扩展性R的阶层等级2 (最下位阶层)的矩阵。此外,图中的矩阵成分e的上侧附加字母R2 表示与该密钥要素矩阵Ml所对应的可扩展性R(基准可扩展性)的阶层等级,下侧附加数字表示密钥要素矩阵Ml的成分坐标。以下,该第3实施例中将密钥要素矩阵Ml的成分标示为 eE2(i, j) (i = 0,1,2,3 ;j = 0,1,2) ο将通过重复进行利用单向散列函数H*的分割密钥^的散列运算而依次得到的运算数据分配至分割密钥^所对应的可扩展性R中的阶层(阶层等级=2)即可扩展性L中的剩余阶层分别对应的坐标成分eE2 (2,2), eE2 (1,2), eE2 (0,2)。即,将H* (eE2 (3,2))的运算数据分配至成分eE2 (2,2),将H*2 (eE2 (3,2))的运算数据分配至成分eE2 (1,2),将H*3 (eE2 (3, 2))的运算数据分配至成分#(0,2)。通过这样的矩阵运算操作,对于可扩展性R的阶层等级2可保持扩充性L的阶层性。另一方面,在密钥要素矩阵Ml中,将对成分eK2(0,2)进一步利用单向散列函数H* 进行散列运算所得到的运算数据H*(eE2 (0,2))( = H*4(eE2 (3,2)))分配至较可扩展性R的阶层等级2为上位阶层的所有成分eK2(i,j) (i = 0,1,2 ; j = 0,1)。此时的运算数据是可扩展性L的阶层数为-1 (实际上不存在)的封包所对应的值。如上述生成的密钥要素矩阵Ml在不变地保持可扩展性L的阶层性的状态下,使对封包Pi,2(i = 0,1,2,3)的存取控制有效。在密钥要素矩阵M2中,将分割密钥%分配至(3,1)成分以作为与可扩展性R中的阶层等级1对应的矩阵。以下,在该第3实施例中,将密钥要素矩阵M2的成分标示为eK1(i, j) (i = 0,1,2,3 ;j = 0,1,2) ο^H*(eE1(3,l))的运算数据分配至分割密钥%所对应的可扩展性R中的阶层(阶层等级=1))即可扩展性L中的剩余阶层分别对应的坐标成分eE1(2,1),将H*2(eE1(3,1)) 的运算数据分配至成分,(1,1),将iT3(eK1(3,l))的运算数据分配至成分,(0,1)。通过这样的矩阵运算操作,对于可扩展性R的阶层等级1,保持扩充性L的阶层性。另一方面,在密钥要素矩阵M2中,将对成分eK1(0,l)进一步利用单向散列函数H* 进行散列运算所得到的运算数据H*(eE1 (0,1))( = H*4(eE1 (3,1)))分配至较可扩展性R的阶层等级1为上位阶层的所有成*eK1(i,0) (i = 0,1,2,3)。此时的运算数据是可扩展性L的阶层数为-1(实际上不存在)的封包所对应的值。 另一方面,在密钥要素矩阵M2中,将任一个与成分eK1 (i,0) (i = 0,1,2,3)相同的值分别分配至较可扩展性R的阶层等级1为下位阶层的成分eK1 (id) (i = 0,1,2,3)。此外,暂时将对复制成分^ (3,1)的值的成分eK1(3,2)依次进行利用单向散列函数的散列运算所得到的值分配至成分eK1(i,2) (1=0,1,2),也是相同意思。此外,在图13等中,“CP” 指复制。 如上述所生成的密钥要素矩阵M2在不变地保持可扩展性L的阶层性的状态下,使对封包Pia (i = 0,1,2,3)的存取控制有效。
同样的,在密钥要素矩阵M3中,将分割密_eK(l分配至(3,0)成分以作为与可扩展性R的阶层等级0(最上位阶层)对应的矩阵。以下,在该第3实施例中,将密钥要素矩阵 M3 的成分标示为 eE0(i, j) (i = 0,1,2,3 ; j = 0,1,2).将!T(eK°(3,0))的运算数据分配至分割密钥所对应的可扩展性R中的阶层(阶层等级=0)即可扩展性L中的剩余阶层分别对应的坐标成分eK° (2,0),将H*2 (eE0 (3,0))的运算数据分配至成分eK°(l,0),将!T3(eK°(3,0))的运算数据分配至成分^(0,0)。通过这样的矩阵运算操作,对于可扩展性R的阶层等级0,可保持扩充性L的阶层性。另一方面,在密钥要素矩阵Μ3中,由于较可扩展性R的阶层等级0为上位阶层并不存在,不对成分eK°(0,0)进一步进行散列运算。另一方面,在密钥要素矩阵M3中,将任一个与成分eK°(i,0) (i = 0,1,2,3)相同的值分别分配至较可扩展性R的阶层等级0为下位阶层的成分eK°(i,j) (i = 0,1,2,3 ; j = 1,2)。此外,暂时将通过对复制成分#°(3,0)的值的各个成分,(3,2)、#°(3,1)依次进行利用单向散列函数的散列运算所得到的值分配至成分eK°(i,j) (i = 0,1,2,3 ; j = 1,2)也是相同意思。此外,在图13中,CP表示复制动作。在这种情况下,由矩阵生成单元462所生成的密钥要素矩阵M3在不变地保持可扩展性L的阶层性的状态下,使对封包Pi.^i =0,1,2,;3)的存取控制有效。接着,密钥生成装置463结合如上所述由矩阵生成单元462所生成的密钥要素矩阵M1-M3之间坐标一致的成分,由此生成部分密钥矩阵MP3。即,部分密钥矩阵MP3的各成分成为与各个封包Pi,」(i = 0,1,2,3 ; j = 0,1,2)对应的部分密钥Ki,」(i = 0,1,2,3 ; j = 0,1,幻。这样,其中一个可扩展性R(解析度等级)的各阶层保持另一个可扩展性L(层) 的阶层性而生成部分密钥,由此无论在解析度等级中或是在层中,阶层性都被保持。此外, 输出单元480将如上述由密钥生成单元463生成的部分密钥Ki.」(i = 0,1,2,3 ;j = 0,1,2) 输出至编码单元410。另外,编码单元410以所对应的部分密钥Ki.」(i = 0,1,2,3 ;j = 0, 1,2)对各个封包Piij (i = 0,1,2,3 ;j = 0,1,2)进行编码。这样,被加密的JPEG 2000的封包编码列作为待通过网络300配送的编码数据而与主密钥K3.2 —起被配送至PC 200。(黑客攻击抵抗性的评价)接着,针对由上述构成的第1-第3实施例的密钥生成装置所生成的加密密钥(与各阶层的封包对应的部分密钥)的对黑客攻击的抵抗性,进行评价。首先,该评价以对具有阶层数队的可扩展性L与阶层数Nk的可扩展性R(解析度等级)的JPEG 2000数据进行编码的情况为前提。与JPEG 2000 的封包 PiijG = 0,1, ... , Nl-I ; j = 0,1,· · ·,Nr-I)对应的部分密钥Ky是将最下位的封包PiL1所对应的部分密钥IWL1作为主密钥,从属地生成单向散列函数H*。此外,阶层的上位和下位的概念与图3相同。即,部分密钥ΚΜ,对于可扩展性 L、R中任一个,都必须从与较封包Pm的阶层为下位或与其同位的所有阶层的封包Pal,bl(al =ia+Ι,...Ν^ ;bl = j,j+1,. . .Nim)所对应的部分密钥Kal,bl从属地生成。在此条件下, 为了不会由于黑客攻击而不正当的从在可扩展性L、R中任一个方面都较封包Pi,」为上位的阶层的封包Pa2,b2(a2 = 0,1,... i-1 ;b2 = 0,1,... j_l)所对应的部分密钥Ka2il32生成部分密钥Ky,因此构成该部分密钥Ky的至少一部分的要素必须为与较部分密钥Ka2, b2为下位阶层的封包所对应的要素。
例如,假设Nk <队。以可扩展性R的阶层j (0彡j彡Ne-I)的所有封包Pi,」(i = 0,1,..., Nl-I)为对象的部分密钥Ky的要素eK1u,是在密钥要素矩阵Mj的要素运算中, 从作为根密钥的要,通过利用单向散列函数H*的散列运算!Τ(Ν _Η) (eRi)而从属地生成。 此时,以可扩展性R的下位阶层bl ( < j)的所有封包Pi, bl (i = 0,1,...,Nl-I)为对象的部分密钥Ki, bl的要素^iibl中,密钥要素矩阵Mj中的上位阶层的散列运算值H-L+i) (eEJ) 将直接被反映(被复制)。另一方面,散列运算值H·(ew)被分配于以可扩展性R中的上位阶层( > j)的所有封包Pi,b2(i = 0,1,..., Nl-I)为对象的部分密钥Ki, b2的要素Jjiib2 中。因此,一方面在构成下位阶层的部分密钥的要素的至少一部分中,上位阶层的部分密钥被反映,另一方面,在构成上位阶层的部分密钥的要素中,下位阶层的部分密钥的要素未被反映。即,通过本发明的加密密钥生成装置所生成的部分密钥中,并未从上位阶层的部分密钥生成下位阶层的部分密钥,由此,可以得到对黑客攻击的抵抗性。(解除加密中的加密密钥生成)接着,对于解除加密(解码)中通过本发明的加密密钥生成装置生成加密密钥 (与所许可的各封包对应的部分密钥)加以说明。上述的加密密钥生成动作(图7所示的运算单元460的动作)中,根据从属性而从唯一管理的主密钥分别生成位于上位的阶层的部分密钥。在解除加密时,即,图7中PC 200中的解码处理,同样的,也从属地从主密钥生成位于上位的阶层的部分密钥,仅将被允许公开的封包组中的最下位的封包所对应的解码密钥(主密钥)配送至用户(PC 200)。具体而言,在队=Nk = 3的情况下,如图3所示,在请求可扩展性L (层)及可扩展性R(解析度等级)范围的浓淡图像Ql,k(0彡L彡Nl,0 ^ R ^ Ne)的PC 200侧中,将JPEG 2000的封包编码列& E作为最下位封包(位于可扩展性L、R各个中的最下位的阶层的封包)而允许图像的公开,输入单元450接收对该封包的密钥I^, K(0 < L < 2、0 < R < 2)。 此外,通过输入单元450接收的密钥Kl, κ (0 < L < 2、0 < R < 2)暂时存储于存储单元470 中。图3中,在用户被允许接收编码图像Qu的情况下,该加密密钥生成装置400利用与该编码图像Qu对应的密钥Ku作为主密钥,生成由框A((队-R+l) X (Ne-L+1))包围的各封包 P所对应的解除加密密钥(解码密钥)。另外,在这种情况下,与从密钥κ所生成的分割密钥eK2、eE\ eE0对应的密钥要素矩阵M1-M3也成为(NL_R+1) X (NK_L+1)矩阵。在以下的说明中,对于图3中用户被允许接收编码图像Qlil的情况加以说明。在这种情况下,该加密密钥生成装置400中的密钥生成相当于图9的一部分,利用与该编码图像 Qljl对应的密钥Klil,生成被框A所包围的各封包Pu、P。、P0j0所对应的解除加密密钥(解码密钥)。因此,在PC 200侧,首先将存储单元470所存储的部分密钥Klil作为主密钥,密钥分割单元461以可扩展性R的阶层数进行分割(3分割),生成3个分割密钥eK2、eE\ eK°。接着,矩阵生成单元462按可扩展性R的3个阶层生成密钥要素矩阵。这里,3个分割密钥eK2、eK1、eK°之中,所对应的可扩展性R的阶层较主密钥Klil所对应的阶层为下位的分割密钥是另一个可扩展性L的阶层等级成为-1的散列运算数据。因而,在这种情况下, 预先分配与密钥要素矩阵的所有成分所对应的部分密钥相同的值。首先,在可扩展性R的阶层2所对应的2X2的密钥要素矩阵Ml的生成中,部分密
19钥eK2是相当于可扩展性L的阶层为-1的散列运算数据。即,由于可扩展性R的分割密钥 eK2所对应的阶层(阶层等级2)位于较主密钥Klil所对应的可扩展性R的阶层(阶层等级 1)为下位,该分割密钥eK2的值是可扩展性L的阶层等级为-1时的散列运算值。这种情况下,分配与分割密钥eK2相同的值(可扩展性L的阶层等级为-1)至分割密钥eK2所对应的 2 X 2的密钥要素矩阵Ml的所有矩阵成分eE2 (0,1) > eE2 (1,1)、eE2 (0,0), eE2 (1,0)中。接着,可扩展性R的阶层1所对应的2 X 2密钥要素矩阵M2的生成中,首先将分割密钥eK1的值分配至eK1(l,l)成分。将利用单向散列函数H*的散列运算的运算数据H*(eK1(l, 1))分配至可扩展性L的阶层是位于上位的成分eK1(0,l)。另外,将可扩展性L的阶层等级为-1的运算数据1^2(#(1,1))分配至较可扩展性R的分割密钥eK1所对应的阶层(阶层等级1)为上位的阶层(阶层等级0)所对应的各成分#(1,0)、,(0,0)。相反的,由于较可扩展性R的分割密钥eK1所对应的阶层(阶层等级1)为下位的阶层(阶层等级2)并不存在,所以不进行散列运算。另一方面,可扩展性R的阶层0所对应的2 X 2密钥要素矩阵M3的生成中,较可扩展性R的分割密钥eK°所对应的阶层(阶层等级0)为上位的阶层(阶层等级-l)并不存在。因此,首先将分割密钥eK°的值分配至eK°(l,0)成分。将利用单向散列函数H*的散列运算的运算数据HU1(LO))分配至可扩展性L的阶层位于上位的成分eK°(0,0)。相反的, 在较可扩展性R的分割密钥eK°所对应的阶层(阶层等级0)为下位的阶层(阶层等级1) 中,复制成分eK°(l,0)的值至eK°(l,l)成分,并基于该复制值而依次进行散列运算。即,将利用单向散列函数H*的散列运算的运算数据!T(eK°(l,l))分配至可扩展性L的阶层是位于上位的成分eK°(0,l)。密钥生成单元463结合如上所述由矩阵生成单元462生成的可扩展性R的各阶层所对应的2X2的密钥要素矩阵M1-M3之间坐标一致的成分,由此从主密钥Klil生成与封包 Pu、Ρ0,ι> Po,ο 对应的解码密钥 &,。、Koa, K0,00如上所述,与某封包对应的部分密钥,不从至少一个可扩展性中位于该封包上位的封包生成,而是从任一个可扩展性中位于同位或下位的封包生成。因此,对黑客攻击具有抵抗性。(第4实施例)图14是一概念图,作为本发明的加密密钥生成装置的第4实施例执行的加密密钥生成动作,说明具有三种以上的阶层可扩展性的数字数据的部分密钥的生成。另外,图15 是表示图14的部分密钥生成中的阶层表11a、部分密钥要素矩阵MPa-MPc及部分密钥矩阵 MP4的坐标对应关系的图。图16是用于说明图14的部分密钥生成中的部分密钥要素矩阵 MPa-MPc及部分密钥矩阵MP4的要素间对应关系的图。该第4实施例的加密密钥生成装置也与第1实施例相同,具有图7所示的结构,更具体而言,由图2(a)所示的硬件结构予以实现。在存取控制对象的可扩展性为三种以上的情况下,考虑到首先将上述的密钥生成顺序(密钥分割单元461、矩阵生成单元462、密钥生成单元463的动作)作为最小处理单位而对两种可扩展性重复进行组合。此时,若将存取控制对象的可扩展性数设为Ns时,最小处理单位的重复次数成为NSC2 ( = (Ns (Ns-I)) /2)。图14所示的例子中,作为三种可扩展性,由该第4实施例的加密密钥生成装置400生成与具有3阶层的L (层)、2阶层的R(解析度等级)及3阶层的C (分量)的数字数据中的各封包所对应的加密密钥。在此情况下,针对可扩展性R、L的组合的部分密钥要素矩阵 MPb (成分Κκ (0,0)-成分Κκ (2,1)),针对可扩展性R、C的组合的部分密钥要素矩阵MPc (成分Κκ(0,0)_成分Kk (2,1)),与针对可扩展性L、C的组合的部分密钥要素矩阵MPa (成分 1^(0,0)-成分^2,2))是通过与上述第1-第3实施例相同的运算步骤而依次予以生成。此时,如图15所示,矩阵生成单元462也生成表示可扩展性L、R、C中的阶层值所有组合的阶层表11a。此阶层表11a,是根据各组合的阶层值群,将可扩展性L、R、C中的各阶层的数据单位所对应的部分密钥作为成分的部分密钥矩阵MP4坐标化表现。另外,此阶层表Ila表示可扩展性的种类与阶层值的关系,并可由该关系确定针对可扩展性的所有组合所生成的部分密钥要素矩阵MPa-MPc的成分。S卩,矩阵生成单元462生成与阶层表Ila 中的阶层值的所有组合所对应的部分密钥要素表lib。这样所生成的部分密钥要素表lib所列举的密钥组合,与表示部分密钥矩阵MP4 的各成分坐标的阶层表Ila的阶层值组合相对应。部分密钥要素矩阵MP4的各成分Ku,。(L =0,1,2 ;R = 0,1 ;C = 0,1,2)如图16(a)所示,通过结合构成部分密钥要素表lib中的一组合的密钥要素Κ 』、Kece, ,。而得到。因而,针对表示部分密钥要素矩阵ΜΡ4的各成分坐标的阶层表Ila的所有组合,通过结合与一组合所对应的部分密钥要素表lib中的各个密钥要素(参照图16(b)),可以得到部分密钥要素矩阵MP4。这样,通过矩阵生成单元462生成的部分密钥矩阵MP4的各成分,是作为可扩展性具有3阶层的L(层)、2阶层的R(解析度等级)及3阶层的C(分量)的数字数据中的各封包所对应的加密密钥。即,部分密钥要素矩阵MP4的各成分是利用表示其成分坐标的可扩展性的阶层值所特定的封包所对应的部分密钥。此外,即使存取控制对象的可扩展性为三种以上的情况,仍可与两种可扩展性的情况相同,具有黑客攻击的抵抗性。上述第4实施例的加密密钥生成装置所执行的加密密钥生成动作,与第1-第3实施例相同地使用二维矩阵表现来予以说明,但是以下以使用三维矩阵表现而立体化的状态说明使第4实施例一般化的加密密钥生成动作。此外,以下的说明中,针对成为存取控制对象的可扩展性L、R、C,将该可扩展性L (层)的阶层数队设为6,将可扩展性R(解离度等级)的阶层数Nk设为4,将可扩展性C(分量)的阶层数Nc设为3。此时,可扩展性L、R、C 中的各阶层的封包如图17(a)所示,作为6X4X3的矩阵成分Piij,k(i = 0,1,2,3,4,5 ; j = 0,l,2,3;k = 0,l,2)予以处理。此外,图17(a)是三维部分密钥矩阵QM中的各坐标成分配置的立体表示(三维密钥要素矩阵也相同)。如图17(a)所示,可扩展性L、R、C各个的最下位阶层所对应的坐标成分K5,3,2成为主密钥。另外,坐标成分Kc^ci是可扩展性L、R、C各个的最上位阶层所对应的坐标成分。依照上述第4实施例的加密密钥生成装置所执行的加密密钥生成动作生成如图 17(a)的6X4X3的三维部分密钥要素矩阵QM的情况下,首先将最下位部分密钥K5,3,2仅分割与两种可扩展性有关地进行最小处理单位的重复次数NSC2,生成各个的最小处理单位用的主密钥IV、KK。、!(『这里,主密钥Kkl是与可扩展性L、R相关的密钥生成用的主密钥。另外,主密钥Kk是与可扩展性R、C相关的主密钥。另外,主密钥Ku是与可扩展性L、C相关的密钥生成用的主密钥。(参照图17(b))。
图18是使第4实施例所执行的动作一般化的加密密钥生成动作中、使用立体显示的三维矩阵说明可扩展性L、R的各阶层所对应的密钥要素生成步骤的图。此外,在与可扩展性L、R相关的最小处理单位中,基准可扩展性设为R,并通过以该可扩展性R的阶层数4 分割主密钥‘可以得到4个分割密钥#\3、eELE2, eELE1, eELE0 (参照图17 (b))。首先,将分割密钥e 3分配至三维矩阵的坐标成分P5,3,2 (图18 (a)中的斜线部分) 后,从可扩展性L的最下位阶层朝向最上位阶层依次进行利用单向散列函数H的分割密钥 e 的散列运算。S卩,分配每次进行散列运算所对应的坐标成分(图18(a)中,位于以实线所包围的区域的所有成分)所得到的运算数据。此时,将运算数据Hw分配至与可扩展性L的最上位阶层对应的坐标成分中。另一方面,将通过对被分配于可扩展性L的最上位阶层所对应的坐标成分的运算数据Hw进一步进行利用单向散列函数H的散列运算所得到的运算数据H (#、)分配至被分配运算数据的坐标成分K = ^k = 3、。= 2以外的各个坐标成分(图18(a)中位于以虚线所包围的区域的所有成分)。依照以上的运算,生成三维密钥要素矩阵QMKU。接着,将分割密钥e 分配至三维矩阵的坐标成分P5,2,2 (图18 (b)中的斜线部分) 时,此分割密钥#\2被暂时复制(CP)至坐标成分P5,3,2。而且,针对可扩展性R的阶层3及阶层2,从可扩展性L的最下位阶层朝向最上位阶层依次进行利用单向散列函数H的分割密钥θ 2的散列运算。即,将所得到的运算数据分配至每次进行散列运算所对应的坐标成分(图18(b)中位于以实线所包围的所有成分)。此时,将运算数据Hw(e )分配至与可扩展性L的最上位阶层对应的坐标成分。另一方面,将通过对被分配于可扩展性L的最上位阶层所对应的坐标成分的运算数据Hw进一步进行利用单向散列函数H的散列运算所得到的运算数据H*6分配至被分配运算数据的坐标成分Ι\ =。_5、κ = 2_3、。= 2以外的各个坐标成分(图18(b)中,位于以虚线所包围的所有成分)。依照以上的运算,生成三维密钥要素矩阵QMm2。与上述同样的,通过分割密钥JLri (作为以斜线所示的坐标成分P^2而予以分配)的散列运算,也生成图18(c)所示的三维密钥要素矩阵QMm。此外,图18(C)中,H表示散列运算,CP指坐标成分之间的运算数据的复制动作。再者,如图18(d)所示,通过分割密钥βκ、(作为以斜线所示的坐标成分P5^2而予以分配)的散列运算,也生成三维密钥要素矩阵QMkm。接着,图19是使第4实施例所实行的动作一般化的加密密钥生成动作中、使用立体显示的三维矩阵说明与可扩展性R、C的各阶层对应的密钥要素生成步骤的图。此外,与可扩展性R、C有关的最小处理单位中,基准可扩展性系设为R,通过以该可扩展性R的阶层数4分割主密钥KKC,可以得到4个分割密钥e 3、eECE2, eECE1, eKKCI(参照图17 (b))。将分割密钥eKK3分配至三维矩阵的坐标成分P5,3,2 (图19 (a)中的斜线部分)后,从可扩展性C的最下位阶层朝向最上位阶层依次进行利用单向散列函数H的分割密钥e 3的散列运算。即,将所得到的运算数据分配至每次进行散列运算所对应的坐标成分(图19(a) 中,以实线所包围的所有成分)。此时,将运算数据H*2(e 3)分配至与可扩展性C的最上位阶层对应的坐标成分。另一方面,将通过对被分配于可扩展性C的最上位阶层所对应的坐标成分的运算数据HUek3)进一步进行利用单向散列函数H的散列运算所得到的运算数据H (e 3)分配至被分配运算数据的坐标成分I\ = 5、K = 3、C =。_2以外的各个坐标成分(图19(a)中,位于以虚线所包围的所有成分)。通过以上的运算生成三维密钥要素矩阵QMK1。图19(b)所示的三维密钥要素矩阵QMk2通过重复进行下列方式而生成较基准可扩展性R的阶层2为下位阶层的分割密钥e 2(作为以斜线所示的坐标成分P5,2,2而予以分配)的复制动作、以及从可扩展性C的最下位阶层朝向最上位阶层的散列运算(利用单向散列函数H的分割密钥eKK2的散列运算)。同样的,图19(c)所示的三维密钥要素矩阵 QMec3也通过重复进行下列方式而生成较基准可扩展性R的阶层1为下位阶层的分割密钥 eECE1 (作为以斜线所示的坐标成分P5,u而予以分配)的复制动作、以及从可扩展性C的最下位阶层朝向最上位阶层的散列运算(利用单向散列函数H的分割密钥e 工的散列运算)。 再者,图19(d)所示的三维密钥要素矩阵QMk4也通过重复进行下列方式而生成较基准可扩展性R的阶层0 (最上位阶层)为下位阶层的分割密钥e C1 (作为以斜线所示的坐标成分 P5,0,2而予以分配)的复制动作、以及从可扩展性C的最下位阶层朝向最上位阶层的散列运算(利用单向散列函数H的分割密钥eKeK(l的散列运算)。图20是使第4实施例所实行的加密密钥生成动作一般化的加密密钥生成动作中、 使用立体显示的三维矩阵说明与可扩展性L、C的各阶层对应的密钥要素生成步骤的图。此外,与可扩展性L、C有关的最小处理单位,基准可扩展性设为C,通过以该可扩展性C的阶层数3分割主密钥、,可以得到3个分割密钥eLCC2、eLCcl, θ (参照图17(b))。将分割密钥e 2分配至三维矩阵的坐标成分P5,3,2(图20(a)中的斜线部分)后,从可扩展性L的最下位阶层朝向最上位阶层依次进行利用单向散列函数H的分割密钥eLCC2的散列运算。即,将所得到的运算数据分配至每次进行散列运算所对应的坐标成分(图20(a) 中,位于以实线所包围的所有成分)。此时,将运算数据Hw(e 2)分配至与可扩展性L的最上位阶层对应的坐标成分。另一方面,将通过对被分配于可扩展性L的最上位阶层所对应的坐标成分的运算数据Η*5(θ 2)进一步进行利用单向散列函数H的散列运算所得到的运算数据H (e 2)分配至被分配运算数据的坐标成分K = ^k = 3Χ = 2以外的各个坐标成分 (图20(a)中,位于以虚线所包围的所有成分)。通过以上的运算,生成三维密钥要素矩阵 QMLCI。图20(b)所示的三维密钥要素矩阵QMm通过重复进行下列方式所生成较基准可扩展性C的阶层1为下位阶层的分割密钥e〖a (作为以斜线所示的坐标成分P^1而予以分配)的复制动作、及从可扩展性L的最下位阶层朝向最上位阶层的散列运算(利用单向散列函数H的分割密钥eLCcl的散列运算)。同样的,图20 (c)所示的三维密钥要素矩阵QMm 也通过重复进行下列方式所生成较基准可扩展性C的阶层0 (最上位阶层)为下位阶层的分割密钥e 。(作为以斜线所示的坐标成分P5,3,。而予以分配)的复制动作、及从可扩展性 L的最下位阶层而朝向最上位阶层的散列运算(利用单向散列函数H的分割密钥Jeai的散列运算)。针对通过重复进行以上的散列运算所生成的图18-图20所示的三维密钥要素矩阵QMKU-QMKM、QMK1-QMKe4、QMm-QMm,通过将一致的坐标成分彼此结合,可以得到根据使第4 实施例所实行的动作一般化的加密密钥生成动作的部分密钥矩阵QM。(第5实施例)由于利用上述第4实施例的加密密钥生成装置所实行的加密密钥生成动作将与至多两种的可扩展性有关的部分密钥生成顺序作为最小处理单位,所以一旦各可扩展性的阶层数逐渐增加时,所得到的部分密钥将无法防止3人以上的黑客攻击(图17(a)的如三维部分密钥矩阵QM的多维部分密钥矩阵中,存在具有相同部分密钥的多个坐标成分)。因此,第5实施例的加密密钥生成装置是生成对3人以上的黑客攻击也具有充分抵抗性的加密密钥。参照图17(a)所示的三维部分密钥矩阵QM说明第5实施例的加密密钥生成装置, 并就成为存取控制对象的可扩展性L、R、C而言,将该可扩展性L (层)的阶层数队设为6, 将该可扩展性R (解析度等级)的阶层数Nk设为4,将可扩展性C (分量)的阶层数N。设为 3。此时,可扩展性L、R、C中的各阶层的封包是作为6X4X3的矩阵成分P^kG =0,1,2, 3,4,5 ;j =0,l,2,3;k = 0,l,2)予以处理。另外,所准备的主密钥系如图17 (a)所示,可扩展性L、R、C各个的最下位阶层所对应的坐标成分K5,3,2成为主密钥(坐标成分Kaatl是与可扩展性L、R、C各个的最上位阶层对应的坐标成分)。此外,第5实施例的加密密钥生成装置也与第1实施例相同,具有图7所示的结构,更具体而言,通过图2(a)所示的硬件结构而予以实现。另外,主密钥预先通过输入单元450被存储于该存储单元470中。首先,该第5实施例的加密密钥生成装置中所实行的加密密钥生成动作中,密钥分割单元461如图21所示,将三种以上的可扩展性之中的两种可扩展性预先设定于基准可扩展性中。图21所示的例子中,可扩展性L、R已设定于基准可扩展性中。尤其,基准可扩展性R(第1基准可扩展性)是用于由主密钥Κ5,3,2生成分割密钥的可扩展性。密钥分割单元461通过以可扩展性R的阶层数4分割主密钥,生成对应于基准可扩展性R的各阶层的4 个分割密钥Λ 、β 、e 、e%)。另一方面,基准可扩展性L是用于规定利用如上述的单向散列函数的散列运算的运算方向的可扩展性。此外,图21是用于说明在本发明的加密密钥生成装置的第5实施例所实行的加密密钥生成动作中,从主密钥生成分割密钥的动作(图 7所示的密钥分割单元461动作)的一例的图。第5实施例的加密密钥生成装置的矩阵生成单元462是针对除了基准可扩展性 L、R以外的基准可扩展性C的各阶层,每与基准可扩展性R的各阶层对应的一连串散列运算生成以三种以上的可扩展性L、R、C中的阶层值而坐标化表现的三维密钥矩阵(参照图 17(a))。因此,此实施例中,针对三种可扩展性L、R、C(L的阶层数6 ;R的阶层数4 ;C的阶层数3),利用上述数学式(1)所给与的总封包数为72,并利用上述数学式( 所给与的三维密钥要素矩阵的生成数为12。此外,图22-图M是用于说明通过第5实施例的加密密钥生成装置的矩阵生成单元462进行的三维密钥要素矩阵生成步骤的图。尤其,图22表示针对基准可扩展性L、R以外的其他基准可扩展性C的最下位阶层(阶层幻,通过将从可扩展性L的最下位阶层朝向最上位阶层依次进行散列运算所得到的运算数据分配至预定的坐标成分所生成的三维密钥要素矩阵QMh、QM2_i、QMp1、QM4_lt)图23表示针对较基准可扩展性L、R以外的其他基准可扩展性C的最下位阶层仅1阶层更上位的阶层(阶层1),通过将从可扩展性L的最下位阶层朝向最上位阶层依次进行散列运算所得到的运算数据分配至预定的坐标成分所生成的三维密钥要素矩阵QMi_2、QM2_2、QM3_2、QM4_2。图M表示针对基准可扩展性L、R以外的基准可扩展性C的最上位阶层(阶层0),通过将从可扩展性L的最下位阶层朝向最上位阶层依次进行散列运算所得到的运算数据分配至预定的坐标成分所生成的三维密钥要素矩阵QM1+ QM2_3> QM3-3> QM4_3o首先,图22(a)表示针对基准可扩展性L、R以外的可扩展性C的最下位阶层2,
24利用与基准可扩展性R的最下位阶层所对应的分割密钥θ 3所生成的三维密钥要素矩阵
QMho将分割密钥e 分配至三维矩阵的坐标成分P5,3,2(图22(a)中的斜线部分)时, 从可扩展性L的最下位阶层而朝向最上位阶层依次进行利用单向散列函数H的分割密钥 eELE3的散列运算。即,将所得到的运算数据分配至每次进行散列运算所对应的坐标成分(图 22(a)中,位于以实线所包围的所有成分)。此时,将运算数据Hw(e )分配至与可扩展性 L的最上位阶层对应的坐标成分。另一方面,将通过对被分配于与可扩展性L的最上位阶层对应的坐标成分的运算数据Hw进一步进行利用单向散列函数H的散列运算所得到的运算数据Η (#、)分配于被分配运算数据的坐标成分!^^』=^^以外的各个坐标成分(图20(a)中,位于以虚线所包围的所有成分)。依照以上的运算,生成三维密钥要素矩阵 QMh。图22(b)表示针对基准可扩展性L、R以外的可扩展性C的最下位阶层2,利用与基准可扩展性R的阶层2 (较最下位阶层仅1阶层更上位的阶层)对应的分割密钥eK\2所生成的三维密钥要素矩阵QM2+该三维密钥要素矩阵QMh的生成中,将分割密钥e 2分配至三维矩阵的坐标成分 P5,2,2(图22(b)中的斜线部分)。此时,分割密钥暂时被复制至坐标成分P5,3,2。而且, 针对可扩展性R的阶层3及阶层2,从可扩展性L的最下位阶层而朝向最上位阶层依次进行利用单向散列函数H的分割密钥^lr2的散列运算。即,将所得到的运算数据分配至每次进行散列运算所对应的坐标成分(图22(b)中,位于以实线所包围的所有成分)。此时,将运算数据Hw分配至与可扩展性L的最上位阶层对应的坐标成分。另一方面,将通过对被分配与可扩展性L的最上位阶层对应的坐标成分的运算数据ITU、)进一步进行利用单向散列函数H的散列运算所得到的运算数据分配至被分配运算数据的坐标成分P 、K = 2-3、C = 2以外的各个坐标成分(图22(b)中,位于以虚线所包围的所有成分)。 依照以上的运算,生成三维密钥要素矩阵QM2+此外,图22(c)所示的三维密钥要素矩阵QMp1也与生成上述三维密钥要素矩阵 QM1YQMp1相同,通过重复进行较基准可扩展性R的阶层1为下位阶层的分割密钥JLri (作为以斜线所示的坐标成分P^2而予以分配)的复制动作、及从可扩展性L的最下位阶层而朝向最上位阶层的散列运算(利用单向散列函数H的分割密钥JLri的散列运算)而生成。 同样的,图22 (d)所示的三维密钥要素矩阵QMf1也通过重复进行较基准可扩展性C的阶层 0(最上位阶层)为下位阶层的分割密钥eK、(作为以斜线所示的坐标成分P^2而予以分配)的复制动作、及从可扩展性L的最下位阶层而朝向最上位阶层的散列运算(利用单向散列函数H的分割密钥的散列运算)而生成。接着,图23 (a)表示对基准可扩展性L、R以外的可扩展性C的阶层1 (较最下位阶层仅1阶层为上位的阶层),利用与基准可扩展性R的最下位阶层对应的分割密钥e 3所生成的三维密钥要素矩阵QMi_2。将分割密钥Λ 分配至三维矩阵的坐标成分&,3,2(图23(a)中的斜线部分)时,此分割密钥#\3被暂时复制(CP)至坐标成分Pmy而且,针对可扩展性C的各个阶层2(最下位阶层)及阶层1 (较最下位阶层仅1阶层为上位的阶层),从可扩展性L的最下位阶层而朝向最上位阶层依次进行利用单向散列函数H的分割密钥的散列运算。即,将所得到的运算数据分配至每次进行散列运算所对应的坐标成分(图23(a)中,位于以实线所包围的所有成分)。此时,将运算数据Hw& 3)分配至与可扩展性L的最上位阶层对应的坐标成分。另一方面,将通过对被分配与可扩展性L的最上位阶层对应的坐标成分的运算数 H*5(eELE3)进一步进行利用单向散列函数H的散列运算所得到的运算数据H*6(e 3)分配至被分配运算数据的坐标成分I\ =。-5、K = 3、c = 2-3以外的各个坐标成分(图23(a)中,位于以虚线所包围的所有成分)。依照以上的运算,生成三维密钥要素矩阵QMi_2。图23(b)表示针对基准可扩展性L、R以外的可扩展性C的阶层1,利用与基准可扩展性R的阶层2 (较最下位阶层仅1阶层更上位的阶层)对应的分割密钥所生成的三维密钥要素矩阵QM2_2。该三维密钥要素矩阵QM2_2的生成中,将分割密钥e 2分配至三维矩阵的坐标成分 P^1(图23(b)中的斜线部分)。此时,分割密钥暂时被复制(CP)至坐标成分P5,2 3, ^2O而且,针对为可扩展性C的阶层2及阶层1的可扩展性R的阶层3及阶层2,从可扩展性L的最下位阶层而朝向最上位阶层依次进行利用单向散列函数H的分割密钥e 2的散列运算。即,将所得到的运算数据分配至每次进行散列运算对应的坐标成分(图23(b)中, 位于以实线所包围的所有成分)。此时,将运算数据Hw& 2)分配至与可扩展性L的最上位阶层对应的坐标成分。另一方面,将通过对被分配与可扩展性L的最上位阶层对应的坐标成分的运算数据Η*5(θ 2)进一步进行利用单向散列函数H的散列运算所得到的运算数据Η (θ 2)分配至被分配运算数据的坐标成分K = ^k = 2_3X = i_2以外的各个坐标成分(图 23(b)中,位于以虚线所包围的所有成分)。依照以上的运算,生成三维密钥要素矩阵QM2_2。此外,图23 (C)所示的三维密钥要素矩阵QM3_2也相同于生成上述的三维密钥要素矩阵QMp2、QM2_2,通过重复进行较基准可扩展性C的阶层1为下位阶层且较基准可扩展性R 的阶层1为下位阶层各个的分割密钥J^1 (作为以斜线所示的坐标成分P5^而予以分配) 的复制动作、及从可扩展性L的最下位阶层而朝向最上位阶层的散列运算(利用单向散列函数H的分割密钥Jlri的散列运算)而生成。同样的,图23(d)所示的三维密钥要素矩阵 QM4_2也通过重复进行较基准可扩展性C的阶层1为下位阶层且较基准可扩展性R的阶层 0(最上位阶层)为下位阶层的分割密钥eK、(作为以斜线所示的坐标成分P^1而予以分配)的复制动作、及从可扩展性L的最下位阶层而朝向最上位阶层的散列运算(利用单向散列函数H的分割密钥的散列运算)而生成。再者,图M (a)表示针对基准可扩展性L、R以外的可扩展性C的阶层O (最上位阶层),利用与基准可扩展性R的阶层3 (最下位阶层)对应的分割密钥所生成的三维密钥要素矩阵QMp3。将分割密钥Λ 分配至三维矩阵的坐标成分P5,3,Q(图中的斜线部分)时,此分割密钥#、被暂时复制(CP)至坐标成分P^tu。而且,针对可扩展性C的阶层2(最下位阶层)-阶层O (最上位阶层)且基准可扩展性R的阶层3 (最上位阶层)的各个,从可扩展性L的最下位阶层而朝向最上位阶层依次进行利用单向散列函数H的分割密钥e 3的散列运算。即,将所得到的运算数据分配至每次进行散列运算所对应的坐标成分(图中,位于以实线所包围的所有成分)。此时,将运算数据Hw分配至与可扩展性L的最上位阶层对应的坐标成分。另一方面,将通过对被分配与可扩展性L的最上位阶层对应的坐标成分的运算数据Hw(#、)进一步进行利用单向散列函数H的散列运算所得到的运算数据H (#、)分配至被分配运算数据的坐标成分K = ^k = 3、。= M以外的各个坐标成分(图 24(a)中,位于以虚线所包围的所有成分)。依照以上的运算,生成三维密钥要素矩阵QMm。图M(b)表示针对基准可扩展性L、R以外的可扩展性C的阶层0(最上位阶层), 利用与基准可扩展性R的阶层2 (较最下位阶层仅1阶层更上位的阶层)对应的分割密钥 eELE2所生成的三维密钥要素矩阵QM2_3。该三维密钥要素矩阵QM2_3的生成中,将分割密钥e 2分配至三维矩阵的坐标成分 P5,2,。(图M(b)中的斜线部分)。此时,分割密钥^2暂时被复制(CP)至坐标成分P5,2_3,。_2。 而且,针对可扩展性C的阶层2 (最上位阶层)-阶层0 (最下位阶层)且可扩展性R的阶层 3及阶层2的各个,从可扩展性L的最下位阶层而朝向最上位阶层依次进行利用单向散列函数H的分割密钥的散列运算。即,将所得到的运算数据分配至每次进行散列运算所对应的坐标成分(图M(b)中,位于以实线所包围的所有成分)。此时,将运算数据Hw(e ) 分配至与可扩展性L的最上位阶层对应的坐标成分。另一方面,将通过对被分配与可扩展性L的最上位阶层对应的坐标成分的运算数据Hw (eELE2)进一步进行利用单向散列函数H的散列运算所得到的运算数据H (e )分配至被分配运算数据的坐标成分Ρ>ο-5、κ = 2-3、。= ο-2 以外的各个坐标成分(图24(b)中,位于以虚线所包围的所有成分)。依照以上的运算,生成三维密钥要素矩阵QM2_3。此外,图M(c)所示的三维密钥要素矩阵QM3_3也相同于上述的三维密钥要素矩阵 QM1+ QM2_3的生成,通过重复进行较基准可扩展性C的阶层0 (最上位阶层)为下位阶层且较基准可扩展性R的阶层1为下位阶层的各个的分割密钥(作为以斜线所示的坐标成分P5,u而予以分配)的复制动作、及从可扩展性L的最下位阶层而朝向最上位阶层的散列运算(利用单向散列函数H的分割密钥^ki的散列运算)而生成。同样的,图M(d)所示的三维密钥要素矩阵QM4_3也通过重复进行较基准可扩展性C的阶层0 (最上位阶层)为下位阶层且较基准可扩展性R的阶层0 (最上位阶层)为下位阶层的分割密钥J:(作为以斜线所示的坐标成分P&u而予以分配)的复制动作、及从可扩展性L的最下位阶层而朝向最上位阶层的散列运算(利用单向散列函数H的分割密钥的散列运算)而生成。如上方式,针对通过矩阵生成单元462重复进行散列运算所生成的图22-图对所示的三维密钥要素矩阵QMh-QM4^ QMi_2-QM4_2、QMi_3_QM4_3,通过密钥生成单元463将各个一致的坐标成分彼此结合,可以得到三维部分密钥要素矩阵QM。输出单元480将通过密钥生成单元463所生成的三维部分密钥输出至编码单元410。由以上本发明的说明可明确得知可将本发明进行各式各样的变形。这样的变形不脱离本发明的思想与范围,对于本领域的技术人员而言为理所当然的改良包含于权利要求的范围内。
权利要求
1.一种加密密钥生成装置,适用于提供数字数据的配送服务的通信系统,并用于生成对该数字数据进行编码与解码时所利用的加密密钥,所述数字数据具有多种的阶层可扩展性,所述加密密钥生成装置的特征在于,具备输入单元,用于取得加密密钥,该加密密钥是在从所述多种的可扩展性选出的第1与第2可扩展性的各个中,符合所述通信系统所许可的服务等级的阶层中位于最下位的阶层的数据单位的编码与解码所利用的加密密钥;存储单元,将由所述输入单元取得的加密密钥作为主密钥而存储;密钥分割单元,通过以所述第1与第2可扩展性中设定为基准可扩展性的第1可扩展性的阶层数分割从所述存储单元读出的所述主密钥,生成对应于所述第1可扩展性的各阶层的分割密钥;矩阵生成单元,对于每个所述第1可扩展性的阶层生成以所述第1与第2可扩展性的阶层值而坐标表现的密钥要素矩阵时,对于基于由所述密钥分割单元生成的所述分割密钥之中的一个分割密钥而生成的密钥要素矩阵,对至少所述一个分割密钥所对应的第1可扩展性中的阶层且在所述第2可扩展性中的从最下位阶层至最上位阶层分别对应的坐标成分,分配通过重复利用单向散列函数进行所述一个分割密钥的散列运算而依次得到的运算数据;密钥生成单元,通过结合由所述矩阵生成单元生成的所述密钥要素矩阵之间坐标一致的密钥要素,生成所述第1与第2可扩展性中的各阶层的数据单位所对应的部分密钥;以及输出单元,将通过所述密钥生成单元生成的部分密钥输出至进行所述数字数据的编码与解码中的至少任一种的装置。
2.根据权利要求1所述的加密密钥生成装置,其中,所述密钥分割单元选择所述第1与第2可扩展性中阶层数少的可扩展性作为所述基准可扩展性。
3.根据权利要求1或2所述的加密密钥生成装置,其中,所述矩阵生成单元,作为基于所述分割密钥之中的一个分割密钥而生成的密钥要素矩阵的成分信息,对相当于较该一个分割密钥所对应的第1可扩展性中的阶层为位于下位的阶层且从所述第2可扩展性的最下位阶层至最上位阶层的各个的坐标成分,分配与针对该一个分割密钥的阶层依次所得到的运算数据相同的运算数据,另一方面,对相当于较该一个分割密钥所对应的第1可扩展性中的阶层为位于上位的阶层且从所述第2可扩展性的最下位阶层至最上位阶层的所有坐标成分分配以下运算数据,即针对该一个分割密钥所对应的阶层的密钥要素之中所述第2 可扩展性的最上位阶层的密钥要素、利用单向散列函数进行散列运算所得到的运算数据。
4.根据权利要求1-3中任一项所述的加密密钥生成装置,其中,所述矩阵生成单元,针对从所述多种可扩展性能够选出的两种可扩展性的所有组合,生成以该两种可扩展性中的阶层值而坐标表现的部分密钥要素矩阵,并且生成表示所述多种可扩展性中的阶层值的所有组合的阶层表,该阶层表根据所组合的阶层值而坐标表现以所述多种可扩展性中的各阶层的数据单位所对应的部分密钥作为成分的部分密钥矩阵;所述密钥生成单元,针对所述阶层表中的阶层值的所有组合,根据构成一个组合的阶层值之中的两个阶层值及其可扩展性的种类而予以确定、通过结合针对两种可扩展性的所有组合而生成的所述部分密钥要素矩阵各个的成分,依次生成作为所述部分密钥矩阵的成分的部分密钥。
5.一种加密密钥生成装置,适用于提供数字数据的配送服务的通信系统,并用于生成对该数字数据进行编码与解码时所利用的加密密钥,所述数字数据具有多种0 的阶层可扩展性,所述加密密钥生成装置的特征在于,具备输入单元,用于取得加密密钥,该加密密钥是在所述多种的可扩展性的各个中,符合所述通信系统所许可的服务等级的阶层中位于最下位的阶层的数据单位的编码与解码所利用的加密密钥;存储单元,将由所述输入单元取得的加密密钥作为主密钥而存储;密钥分割单元,通过以从所述多种的可扩展性中选出的第1及第2基准可扩展性中第1 基准可扩展性的阶层数分割从所述存储单元读出的所述主密钥,生成对应于所述第1基准可扩展性的各阶层的分割密钥;矩阵生成单元,针对所述多种可扩展性之中的所述第1与第2基准可扩展性以外的其他各个可扩展性的各阶层,每对应于所述第1基准可扩展性的各阶层的一连串运算,生成以所述多种可扩展性中的阶层值而坐标表现的多维密钥要素矩阵,对于所得到的多维密钥要素矩阵的各个,对至少由所述密钥分割单元生成的所述分割密钥之中的一个分割密钥所对应的第1基准可扩展性中的阶层且从所述第2基准可扩展性中的最下位阶层至最上位阶层的各个所对应的坐标成分,分配通过重复利用单向散列函数进行该一个分割密钥的散列运算而依次得到的运算数据;密钥生成单元,针对所述其他各个可扩展性的各阶层,每对应于所述第1基准可扩展性的各阶层的一连串运算,彼此结合由所述矩阵生成单元生成的所述多维密钥要素矩阵各个的坐标一致的成分,由此生成所述多种可扩展性中的各阶层的数据单位所对应的部分密钥;以及输出单元,将通过所述密钥生成单元生成的部分密钥输出至进行所述数字数据的编码与解码中的至少任一种的装置。
6.根据权利要求5所述的加密密钥生成装置,其中,所述矩阵生成单元,针对所述其他各个可扩展性的各阶层,作为每对应于所述第1基准可扩展性的各阶层的一连串运算所生成的所述多维密钥要素矩阵的各个的成分信息,对相当于较所对应的所述其他可扩展性及所述第1基准可扩展性各个的各阶层为位于下位的阶层且从所述第2基准可扩展性的最下位阶层至最上位阶层各个的坐标成分,分配与使用对该对应的第1基准可扩展性的阶层所分配的一个分割密钥而依次得到的运算数据相同的运算数据,另一方面,对相当于较所对应的所述其他可扩展性及所述第1基准可扩展性各个的阶层为位于上位的阶层且从所述第2基准可扩展性的最下位阶层至最上位阶层各个的所有坐标成分分配以下运算数据,即针对该一个分割密钥所对应的阶层的密钥要素之中的所述第2基准可扩展性的最上位阶层的密钥要素、利用单向散列函数进行散列运算所得到的运算数据。
全文摘要
本发明关于一种加密密钥生成装置,对黑客攻击确保抵抗性,并且使分别对应于各可扩展性的阶层的加密密钥的密钥长度降低。该加密密钥生成装置(400)中,通过输入单元(450)取得的主密钥(K2.2)被暂时存储于存储单元(470)。矩阵生成单元(462),根据每个由密钥分割单元(461)分割主密钥(K2.2)而得到的分割密钥(eR2、eR1、eR3)来生成密钥要素矩阵(M1-M3)。对于密钥要素矩阵(M1-M3)的各坐标成分,分配通过重复进行利用单向散列函数的散列运算而依次得到的运算数据,以保持可扩展性(L)的阶层性。密钥生成单元(463)基于在密钥要素矩阵(M1-M3)生成对应于可扩展性(R,L)的各阶层的部分密钥(K1.1-K2.2)。由输出单元(480)将该部分密钥(K1.1-K2.2)输出至编码单元(410)或解码单元(420)。
文档编号H04L9/14GK102415049SQ20098015902
公开日2012年4月11日 申请日期2009年4月28日 优先权日2009年4月28日
发明者今泉祥子, 后藤由光, 柿井俊昭, 畑洋一, 藤吉正明, 藤田康仁, 西川清史, 贵家仁志 申请人:住友电气工业株式会社, 公立大学法人首都大学东京
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1