CN1846396A - 密钥信息处理方法及其设备和程序 - Google Patents
密钥信息处理方法及其设备和程序 Download PDFInfo
- Publication number
- CN1846396A CN1846396A CNA2004800248340A CN200480024834A CN1846396A CN 1846396 A CN1846396 A CN 1846396A CN A2004800248340 A CNA2004800248340 A CN A2004800248340A CN 200480024834 A CN200480024834 A CN 200480024834A CN 1846396 A CN1846396 A CN 1846396A
- Authority
- CN
- China
- Prior art keywords
- key
- mentioned
- node
- information processing
- processing method
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/083—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
- H04L9/0833—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key
- H04L9/0836—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key using tree structure or hierarchical structure
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/60—Digital content management, e.g. content distribution
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Power Engineering (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Storage Device Security (AREA)
Abstract
本发明提供密钥信息处理方法及其设备和程序。以少的计算量安全地构成与分层的密钥管理方式具有相同的访问结构的密钥管理方式。包括:对横列i的各元素,设定单向性函数的施行次数的集(,)的设定步骤;对上述各元素,按照已对该元素设定的上述施行次数的集的对应的施行次数对2个原始密钥的每一个施行上述单向性函数,作为由此得到的值生成关于该元素的2个独立密钥的密钥生成步骤;对上述各元素,分发关于该元素的2个独立密钥的密钥分发步骤。另外,当根据以不具备循环结构的有向图表示的层次关系从父节点生成各节点上的密钥进行密钥分发时,还包括:在位于最高位的根节点上计算N个密钥的初始密钥生成步骤;在各节点上将根据施行规定对上述N个初始密钥中的M个施行了规定次数的单向性函数后的值,生成为关于该节点的M个节点密钥的节点密钥生成步骤,其中,M≤N。
Description
技术领域
本发明涉及密钥信息处理方法及其设备和程序,详细地说,涉及适于在需要管理用于解密的多个密钥的内容分发系统或可拆卸(removable)介质控制方式中,减轻密钥生成所需的运算量和涉及密钥的分发数的负荷的密钥信息处理方法及其设备和程序。
背景技术
近年来,使文档或图像数据等数字内容通过通信线路或DVD等大容量记录介质流通的机会日益增加。数字内容分发服务,是对特定的用户传送内容的服务,要求具有不使内容向其他用户泄露的结构。另外,在大容量介质的内容分发方面,也正在研究同样的由用户进行的访问控制的机构。在这种情况下,提供了一种能够对内容数据进行加密或加扰(scramble)处理等,只由具有合法的密钥信息或知道解扰处理的合法用户进行解密处理,从而享有正规的文档或图像数据等内容的结构。
在这种内容分发服务中,存在分发内容的内容提供商。内容提供商,必需对多个内容的每一个进行不同的访问控制信息的设定,对每个内容、每个用户、进而对用户的每种操作(例如,阅读、复制等)都要进行不同的密钥的加密处理。在这种处理中,密钥生成、密钥保存、密钥分发等对于密钥信息的管理对内容提供商来说经常是负荷非常大的工作。因此,对于密钥管理,正在进行对于不降低保密等级且更有效的管理方法的研究。以下对现有的几种管理方法进行说明。
[树结构管理方式]
树结构管理方式,在DVD播放机等脱机式的内容再现设备中使用,适于进行用户的无效化,在这种方式中,将用于加密的密钥信息和加密内容同时分发或存储在介质内,以便只能由合法的用户对加密数据进行解密。必须事先将密钥信息以适当的组合分发给各用户,但能够通过使用树结构来有效地管理庞大的用户密钥信息。
在这种管理方式中,当决定方式的优劣时存在着如下的指标,1)与内容同时分发的密钥信息的数据量、2)用户保存的事先分发的密钥信息的数据量、3)需要由内容提供商管理的密钥信息的数据量。以上3个指标属于这样的指标。在联机式分发服务的情况下,应重视左右网络流通量的指标1),但如从内容提供商的角度考虑则最重视的是指标3)的管理成本。因此,必须根据情况留意指标权重的变化。
作为树结构管理方式的代表,有内容分发模型(例如,参照非专利文献1)。在该模型中,利用如图44的密钥分发用的树结构,在各节点上配置不同的密钥。用户密钥(在论文中假定DVD等播放机保存的密钥)看作与末端节点(叶节点)相同,并假定保存从根节点到末端节点的所有的密钥数据。在本模型中设想到将频繁地产生更新,通过这种配置来不断改进密钥无效化的效率。
[分层的密钥管理方式]
另一方面,分层的密钥管理方式中所设想的密钥管理,在将密钥配置在各节点上是相同的,但最大的不同点在于对用户分发不仅位于末端节点还位于包含根的所有节点的密钥(例如,参照非专利文献2、3)。
另外,还设想如图45或图46的访问结构,而不是如图44的n分枝结构,当从局部上观察时,可以看到具有如图47的关系的部位。在这种情况下,必须提供可以从配置于节点n1的密钥和配置于节点n2的密钥这两者生成节点n3要具有的密钥的结构。根据Birget等的论文(非专利文献3),作为提供该结构的方式提出了以下2种方法。
[(1)用户多重密钥(User multiple keying)]
是各节点保存多个密钥的方式,构成为使父节点保存子节点的所有密钥。图48是其一例,记载着分发给各节点的密钥数据的集合。例如,可得知在被分配了{k5}的节点的父节点上包含有密钥数据k5。同样,对其他节点也可得知,在父节点上包含有子节点的所有密钥数据。
[(2)基于单向性函数的密钥模式(One-way function based keyingschemes)]
是将Lin等提出的方法(非专利文献2)扩展后的方式,通过使用单向性散列函数,可以减少各节点保存的密钥信息。如图47所示,当根据多个父节点的密钥数据生成子节点的密钥数据时,需要进行如下的操作。用图49说明该操作。
在图49中,为从密钥数据k1或k2生成k3,进行下列运算:
k3:=F(k1,n3)XORr13
k3:=F(k2,n3)XORr23
式中,XOR为每个位的“异或”运算。函数F()是单向性散列函数,将在后文中详细说明。n3是密钥数据k3所关联的节点的标识符,r13、r23分别为通过节点n1(密钥数据k1)和节点n3而相关联的随机数据、通过节点n2(密钥数据k2)和节点n3而相关联的随机数据,这些都是公开的数据。
函数F()由F(k_i,n_j)=g^{k_i+n_j}mod p(其中,p为质数,g为本原元素)构成。生成上述r13、r23以满足F(k1,n3)XORr13=F(k2,n3)XORr23。
非专利文献1:“数字内容保护用管理方式”SCIS2001,pp.213-218
非专利文献2:C.H.Lin,“Dynamic key management Schemes foraccess control in a hierarchy”Computer Communications,20:1381-1385,1997
非专利文献3:J.-C.Birget,X.Zou,G.Noubir,B.Ramamurthy,“Hierarchy-Based Access Control in Distributed Environments”in theProceedings of IEEE ICC,June 2001
发明内容
如上所述,在分层的密钥管理方式中,当在局部存在2个或多于2个的父节点时(图47是存在2个父节点的例子),已提出了用于从不同的父节点生成同一密钥数据的方式,但是,在(1)用户多重密钥中,各节点必须具有多个密钥,因此存在着随层次的加深,要与全部节点数成比例地保存的密钥数据增加的问题,在(2)基于单向性函数的密钥模式中,通过使用单向性散列函数使各节点保存的密钥数据量减少,但必须另外保存r13、r23等公开的数据,因此存在与(1)相同的随着层次的加深要保存的数据增加的问题。
进一步,在(2)中,对单向性散列函数使用了幂乘方运算。尽管也考虑了基于带有陷门的散列函数的结构,但无论如何都要包含幂乘方运算所需的运算,因而计算成本庞大。特别是,在PDA等运算资源少的设备中,在密钥计算上就花费很多时间,因此有可能当数据解密时不能进行交织(interactive)处理。
因此,本发明是鉴于上述的问题而开发的,其目的在于提供一种能以少的计算量安全地构成具有与分层的密钥管理方式相同的访问结构的密钥管理方式的密钥信息处理方法及其设备和程序。
为解决上述课题,本发明的密钥信息处理方法,其特征在于,包括:设定步骤,对具有层次关系的多个元素的各元素,设定单向性函数的施行规定的集;密钥生成步骤,对上述各元素,按照已对该元素设定的上述施行规定的集的对应的施行规定对大于等于2个的原始密钥的每一个施行上述单向性函数,作为由此得到的值生成关于该元素的大于等于2个的独立密钥;以及密钥分发步骤,对上述各元素,分发用于该元素的2个独立密钥。此处,上述施行规定,是上述单向性函数的施行次数。
另外,在根据以不具备循环结构的有向图表示的层次关系从父节点生成各节点上的密钥进行密钥分发的密钥信息处理方法中,包括:初始密钥生成步骤,在位于最高位的根节点上计算N个密钥;节点密钥生成步骤,在各节点上将成根据施行规定对上述N个初始密钥中的M个施行了规定次数的单向性函数后的值,生成为与该节点对应的M个节点密钥,其中,M≤N。此处,包括从上述各节点分发与子节点或子孙节点对应的节点密钥的密钥分发步骤。另外,当上述有向图存在着多个不同节点相互间由有向图连接着的部位时,将这些节点汇总以作为一个节点处理。另外,还包括从上述有向图的结构计算初始密钥的个数N的初始密钥数计算步骤。
另外,本发明的密钥信息处理设备,其特征在于,包括:设定装置,对具有层次关系的多个元素的各元素,设定单向性函数的施行规定的集;密钥生成装置,对上述各元素,按照已对该元素设定的上述施行规定的集的对应的施行规定对大于等于2个的原始密钥的每一个施行上述单向性函数,作为由此得到的值生成关于该元素的大于等于2个的独立密钥;以及密钥分发装置,对上述各元素,分发用于该元素的2个独立密钥。
另外,在可以根据以不具备循环结构的有向图表示的层次关系从父节点生成各节点上的密钥的密钥信息处理设备中,其特征在于:包括:初始密钥生成装置,在位于最高位的根节点上计算N个密钥;节点密钥生成装置,在各节点上将根据施行规定对上述N个初始密钥中的M个施行了规定次数的单向性函数后的值,生成为与该节点对应的M个节点密钥,其中,M≤N。
另外,本发明的可由计算机读取的程序,其特征在于:使计算机执行密钥信息处理方法,该密钥信息处理方法包括设定步骤,对具有层次关系的多个元素的各元素,设定单向性函数的施行规定的集;密钥生成步骤,按照已对该元素设定的上述施行规定的集的对应的施行规定对大于等于2个的原始密钥的每一个施行上述单向性函数,作为由此得到的值生成关于该元素的大于等于2个的独立密钥;以及密钥分发步骤,对上述各元素,分发用于该元素的2个独立密钥。
另外,本发明的另一种可由计算机读取的程序,其特征在于:使计算机执行可以根据以不具备循环结构的有向图表示的层次关系,从父节点生成各节点上的密钥的密钥信息处理方法,该密钥信息处理方法包括:初始密钥生成步骤,在位于最高位的根节点上计算N个密钥;节点密钥生成步骤,在各节点上将根据施行规定对上述N个初始密钥中的M个施行了规定次数的单向性函数后的值,生成为与该节点对应的M个节点密钥,其中,M≤N。
本发明的其他特征和优点,从参照附图的以下的说明可以看得更清楚。此外,在附图中,对相同或同样的结构标以相同的序号。
附图说明
图1是表示本发明的实施方式的处理设备的结构的框图。
图2是表示第1实施方式的密钥生成用图的第1例的图。
图3是表示第1实施方式的密钥生成用图的第2例的图。
图4是表示第1实施方式的生成类型A的密钥的步骤的流程图。
图5是表示第1实施方式的密钥生成用图的第3例的图。
图6是表示第1实施方式的密钥生成用图的第4例的图。
图7是说明第1实施方式的生成类型B的密钥的流程图的概念图。
图8是表示第1实施方式的每个层次轴的层次数不同的密钥生成用图的例的图。
图9是表示第1实施方式的密钥生成用图的第5例的图。
图10是表示第1实施方式的密钥生成用图的第6例的图。
图11是表示第1实施方式的密钥生成用图的第7例的图。
图12是说明第2实施方式的树结构和矩阵的对应关系的图。
图13是表示第2实施方式的密钥生成用图的第1例的图。
图14是表示第2实施方式的密钥生成用图的第2例的图。
图15是说明第2实施方式的融合密钥的图。
图16是第2实施方式的生成融合密钥的流程图。
图17是第2实施方式的生成尺寸为Nx*Ny的融合密钥的流程图。
图18是表示第2实施方式的生成类型A的密钥的步骤的流程图。
图19是表示第2实施方式的生成类型B的密钥的步骤的流程图。
图20是表示第2实施方式的每个层次轴的层次数不同的密钥生成用图的另一例的图。
图21是表示第2实施方式的密钥生成用图的第3例的图。
图22是说明第3实施方式的有向图的第1例的图。
图23是表示第3实施方式的密钥生成用图的第1例的图。
图24是表示第3实施方式的密钥分发矩阵的第1例的图。
图25是说明第3实施方式的图22所记载的有向图中的节点分割的第1例的图。
图26是表示第3实施方式的构成密钥分发矩阵的中间阶段的状态的密钥分发矩阵。
图27是表示第3实施方式的构成密钥分发矩阵的中间阶段的状态的密钥分发矩阵。
图28是表示第3实施方式的构成密钥分发矩阵的中间阶段的状态的密钥分发矩阵。
图29是说明第3实施方式的图22所记载的有向图中的节点分割的第2例的图。
图30是表示第3实施方式的密钥分发矩阵的第2例的图。
图31是表示第3实施方式的节点密钥生成步骤的流程图。
图32是表示第3实施方式的有向图的第2例的图。
图33是说明第3实施方式的图32所记载的有向图中的节点分割的第3例的图。
图34是表示第3实施方式的密钥生成用图的第2例的图。
图35是表示第3实施方式的构成密钥分发矩阵的中间阶段的状态的密钥分发矩阵。
图36是表示第3实施方式的构成密钥分发矩阵的中间阶段的状态的密钥分发矩阵。
图37是表示第3实施方式的构成密钥分发矩阵的中间阶段的状态的密钥分发矩阵。
图38是表示第3实施方式的构成钥分发矩阵的中间阶段的状态的密钥分发矩阵。
图39是表示第3实施方式的密钥生成用图的第3例的图。
图40是表示第3实施方式的存在着具有双向连接关系的节点的有向图的例的图。
图41是表示第3实施方式的将图40所记载的有向图变更为不存在具有双向连接关系的节点的有向图的例子的图。
图42是说明本实施方式的层次型访问结构的概念图。
图43是本实施方式的表示各节点要加密的图像一览的表。
图44是说明树结构管理方式中的2分枝访问结构的概念图。
图45是说明分层的访问控制方式中的访问结构的概念图。
图46是说明分层的访问控制方式中的访问结构的概念图。
图47是说明分层的访问控制方式中的局部结构的概念图。
图48是说明用户多重密钥的例子的图。
图49是说明基于单向性函数的密钥模式的图。
具体实施方式
以下,参照附图说明本发明的最佳实施方式。
<本实施方式的密钥信息处理设备的结构例>
图1是概略地示出本发明的实施方式的密钥信息处理设备的结构的框图。
此外,在实现本发明时,并非必须使用图1中示出的全部功能。
在图1中,密钥信息处理设备100,包括公用线路等的调制解调器118、作为显示部的监视器102、CPU103、ROM104、RAM105、HD(硬盘)106、网络的网络连接部107、CD108、FD(软盘)109、DVD(数字视盘或Digital Versatile Disk)110、打印机115的接口(I/F)117、以及作为操作部的鼠标112、键盘113等的接口(I/F)111,上述各单元通过总线116相互间可通信地进行连接。
鼠标112和键盘113,是用户用于输入对密钥信息处理设备100的各种指示等的操作部。通过该操作部输入的信息(操作信息),通过接口111,输入到密钥信息处理设备100内。
密钥信息处理设备100中的各种信息(字符信息或图像信息等),可由打印机打印输出。
监视器102,进行对用户的各种指示信息、字符信息或图像信息等的各种信息的显示。
CPU103,执行密钥信息处理设备100的总体的动作控制,通过从HD(硬盘)106等读出并执行处理程序(软件程序),控制整个密钥信息处理设备100。特别是,在本实施方式中,CPU103,通过从HD(硬盘)106等读出并执行实现密钥生成的处理程序,实施后述的信息处理。
ROM104,存储用于密钥生成的处理程序、或在程序中使用的各种数据(密钥生成用图等)等。
RAM105,为进行CPU103中的各种处理,作为用于暂时存储处理程序和处理对象的信息的作业用区域等使用。
HD106,是作为大容量存储装置的一例的构成元件,保存各种数据、或执行各种处理时向RAM105等传送的用于信息变换处理等的处理程序等。
CD(CD驱动器)108,具有读入存储在作为外部存储介质的一例的CD(CD-R)内的数据、或将数据写到该CD内的功能。
FD(软盘驱动器)109,与CD108一样,读出存储在作为外部存储介质的一例的FD109内的数据。而且,具有将各种数据写入上述FD109的功能。
DVD(数字视盘机)110,与CD108或FD109一样,读出存储在作为外部存储介质的一例的DVD110内的数据,而且,具有将数据写入上述DVD110的功能。
此外,当对CD108、FD109、DVD110等外部存储介质存储例如编辑用的程序或打印机驱动程序时,也可以构成为将这些程序预先安装于HD106并根据需要传送到RAM105。
接口(I/F)111,用于接受来自使用鼠标112和键盘113的用户的输入。
调制解调器118,是通信调制解调器,通过接口(I/F)119,例如经由公用线路等与外部的网络连接。
网络连接部107,通过接口(I/F)114,与外部的网络连接。
<本设备的密钥生成、管理的第1实施方式>
以下,说明上述设备的密钥生成、管理的第1实施方式。
首先,对于分层的密钥管理方式中各节点的独立密钥的生成进行说明。密钥生成,根据图2和图3中示出的密钥生成用图来进行。
[密钥生成概要]
每个节点的独立密钥,分为2个类型,即从所有节点共用的2个原始密钥实施散列函数而得到的类型A密钥、仅当存在于相同层次的节点为3个或3个以上时得到的类型B密钥。另外,为方便起见,将存在于相同层次的节点的集合定义为称作“横列(rank)”的群。将根节点作为横列1,横列序号设定为每经过1个层次就增加1。
[类型A密钥]
作为类型A密钥的例子用图2的2A和图3的3A说明。假定用作生成所有的类型A密钥的源的2个原始密钥分别为x、y。在图2的2A和图3的3A中,附加于各节点的2个数字表示对x、y实施散列函数的次数。例如,在记为(2,4)的节点上,设定作为类型A密钥保存H(H(x))和H(H(H(H(y))))。今后,当实施n次散列函数时,简略地表示为H^n()。按照该表示法,记为(2,4)的节点就具有H^2(x)和H^4(y)这2个类型A密钥。
[类型B密钥]
作为类型B密钥的例子用图2的2B和图3的3B说明。应注意到,图2的2B和图3的3B具有分别与图2的2A和图3的3A相同的层次结构。在横列1和横列2上这些密钥不存在。在横列3上,从类型A中(2,2)的密钥,将其连结起来并实施了散列后的H(H^2(x)||H^2(y))设为R30。在图2的2B的横列3上表示对R30实施散列函数的次数。这意味着横列3的3个节点自左起分别保存称作H(R30)、R30、H(R30)的类型B密钥。
在横列4上记载着2个数字,这表示对R40、R41实施散列函数的次数。R40、R41从可由横列3的所有节点共有的数据生成,例如,当从类型B密钥生成时,设从公开数据RND1和RND2得到的H(H(R30)||RND1)和H(H(R30)||RND2)分别为R40、R41即可。当生成R40和R41时,应注意使其不能从R40计算R41或从R41计算R40。除此而外,也可以考虑使用HMAC等方法。
在图2的2B和图3的3B中,这意味着横列4的4个节点自左起分别保存称作H(R40)和H(R41)、R40和H(R41)、H(R40)和R41、H(R40)和H(R41)这样的类型B密钥。至于以下的横列,也用同样的方法生成。设定在同横列的节点为2个或2个以下的时刻不生成类型B密钥。即,图2的2B中的横列6、7和图3的3B中的横列8、9不存在类型B密钥。
[密钥生成用图的生成方法]
图2和图3中所记载的图按如下的规则生成。首先用图4的流程图说明类型A的图的生成方法。
(1)横列1的密钥设定为{(0,0)}(步骤S401)。
(2)横列2的密钥设定为{(1,3),(3,1)}(步骤S402)。
(3)设变量i为3。就是说,设i:=3(步骤S403)。
(4)对横列i(i≥3),设横列(i-1)中的最大的元素分量为Q(步骤S404)。
设横列i中的节点数为#R(i),
则当#R(i)>#R(i-1)时,使密钥为{(Q-2*#R(i)+5,Q+3),(Q-2*#R(i)+7,Q+1),…,(Q+3,Q-2*#R(i)+5)},
当#R(i)<#R(i-1)时,使密钥为{(Q-2*#R(i)+3,Q+1)、(Q-2*#R(i)+5,Q-1),…,(Q+1,Q-2*#R(i)+3)}(步骤S405)。
(5)若#R(i+1)=0,则结束(步骤S406)。否则使i:=i+1,并返回(4)的处理(步骤S407)。
进一步,通过在处理(4)之前选择子例程(routine),可以减少散列函数的运算处理量。
(4-1)对于横列i,当#R(i)<#R(i-1)且#R(i)=3时,使密钥为{(Q-3,Q),(Q-1,Q+2),(Q,Q+3)},并使处理进入(5)。
(4-2)对于横列i,当#R(i)<#R(i-1)且#R(i)=2时,使密钥为{(Q-1,Q),(Q,Q-1)},并使处理进入(5)。
(4-3)对于横列i,当#R(i)<#R(i-1)且#R(i)=1时,使密钥为{(Q,Q)},并使处理进入(5)。
当选择该子例程时,对图2的2A得到如图5所示的密钥生成用图,对图3的3A得到如图6所示的密钥生成用图。
以下,用图7的流程图说明类型B的图的生成方法。其中的表示法#R(i)如上述那样设定。
(1)设变量i为0。就是说,设i:=0(步骤S701)。
(2)使i:=i+1(步骤S702)。
(3)如#R(i+1)=0,则结束(步骤S703)。
(4)如#R(i)<3,则设定横列i无密钥,并返回(2)(步骤S704、S706)。
(5)横列i的各密钥的分量数为#R(i)-2,使密钥为{(1,…,1),(0,1,…,1),(1,0,…,1),…,(1,…,1,0),(1,…,1)},并返回(2)(步骤S705)。
处理(5),意味着两端全部由1构成、除此之外仅在1个部位出现0(但不出现在同一位置)。当#R(i)=6时,为{(1,1,1,1),(0,1,1,1),(1,0,1,1),(1,1,0,1),(1,1,1,0),(1,1,1,1)}。
[密钥的合法性]
上述的图生成方式,生成时满足如下的条件。
·父节点可以生成子节点的密钥
·不能从子节点的密钥信息生成父节点的密钥(除非单向性函数变弱)
·即使多个实体进行合谋,也不能生成位于高位的节点的密钥
根据这些条件,可以实现能够安全地进行密钥生成和密钥分发的分层的密钥管理方式。
[密钥分发]
分别说明由根密钥分发者(根节点的实体)向各节点分发密钥的方法和由根密钥分发者以外的保存独立密钥的实体向低位节点分发密钥的方法。首先,根密钥分发者随机且安全地生成密钥x、y,并将其作为自身的独立密钥。进一步,按照上述密钥生成步骤将多个密钥配置在各节点。根密钥分发者,对位于各节点的实体安全地分发各节点的密钥。而且,将如图2和图3所示的密钥分发图公开,并对各实体分发能够识别所分发的密钥是图中的哪个位置的密钥的数据。该数据例如设定为由横列序号和表示同一横列内的第几个的横列内识别序号所构成。
接着,说明根密钥分发者以外的保存独立密钥的实体的密钥分发方法。从独立密钥和表示密钥分发图中的密钥的位置的识别数据,生成与子节点或孙节点对应的密钥数据。例如,在图2的2A中,作为类型A密钥具有x′、y′,若其在图上的位置为横列3的第1个,则与(2,6)相对应。该实体,由于是H^5(x)=H^3(H^2(x))=H^3(x′)和H^7(y)=H(H^6(y))=H(y′),作为子节点(5,7)的密钥,可以对位于横列4的第2个的节点(对应于(5,7))分发H^3(x′)和H(y′)。显然,也可以同样地生成与其他子节点或孙节点对应的密钥。
另外,对于类型B密钥,按照上述生成步骤,可以依次地从其上位横列的密钥生成各横列的密钥,因与根密钥分发者的操作完全相同,将其说明省略。
[信息处理设备的密钥生成、分发处理]
说明在上述信息处理设备100中进行以上的密钥生成、分发处理的步骤。通过CD108或网络的网络连接部107取得图像等管理对象数据并存储在HD106内,或从HD106内已存储着的数据中选择。此处,用户使用鼠标112和键盘113等从显示在监视器102上的一览表选择。
当用户用同样的方法对管理对象数据选择具有几个层次的层次轴等的访问控制结构时,用CPU103计算与该结构对应的密钥生成用图,并存储在RAM105或HD106等内。
从ROM104、RAM105、HD106或鼠标112的动作等数据生成随机数据,用该随机数据生成多个原始密钥,并存储在RAM105或HD106等内。进一步,从原始密钥计算密钥生成用图中的各节点的独立密钥,并存储在RAM105或HD106等内。
对其他的信息处理设备,读出存储在RAM105或HD106等内的独立密钥,并通过网络连接部107经由网络进行分发。
[每个层次轴的层次数不同的分层的访问结构]
在图2和图3中,只举出各具有相同层次的层次轴的例子(在图2中层次轴的层次都是3,在图3中层次轴的层次都是4),在图8中示出也可以用同样的方法生成不同层次的例子。在图8的8A和8B中,左下方向的层次为3,右下方向的层次为4,但可以得知能够根据图4和图7所记载的流程图正常地进行处理。
<第1实施方式的变形例>
在第1实施方式中,是类型B密钥从中间横列的密钥数据生成的方式,这里说明根密钥分发者以与类型A密钥相同结构生成和分发初始数据的融合方式。
图9的9A和9B,是各层次轴的层次为3时的实施方式1的结构例。图10记载着在初始阶段生成与x、y不同的称作z的原始密钥的方法,而不是图9中的从中间横列生成类型B密钥的方式。表示方法与图2相同,第3分量表示对原始密钥z实施散列函数的次数。具体地说,在类型B密钥不存在的横列1和横列2上将原始密钥z直接作为子节点的密钥信息分发。在横列3上按照图9的9B所记载的方法将z作为初始密钥R30处理。在横列4以下分发h(z)。
在这种融合方式的情况下,不是将避免同层的多个节点的合谋攻击的功能集中在第3原始密钥,而是可以分散到第1或第2原始密钥。图11中所记载的密钥生成用图是其一例。这样,还可以构成减少了总的散列运算量的图。
<本设备的密钥生成、管理的第2实施方式>
以下,说明上述设备的密钥生成、管理的第2实施方式。
[密钥生成概要]
首先,说明对于分层的密钥管理方式中的各节点的独立密钥的生成。
另外,在下文中,为方便起见,如图12所示,将分层的密钥管理方式中的树结构置换为矩阵进行说明。图12的12A,示出由7个层次构成并具有16个节点的树结构的例子。而图12的12B示出将图12的12A所示的树结构置换为矩阵后的例子。图12的12A的各节点上所标记出的数字和图12的12B的各单元上所标记出的数字,表示具有相同的对应关系。
首先,在如图12的12A所示的树结构中,使根节点(图中,由“0”表示的节点)与矩阵中的最右上方的单元相对应。而且,使树结构中的各节点的子节点中位于左边的节点和位于右边的节点分别与矩阵的单元的左边的单元和下边的单元相对应。通过对所有的节点和单元按顺序建立这种对应关系,可以将图12的12A中示出的树结构置换为图12的12B中示出的矩阵。
接着,说明本实施方式的密钥生成。密钥生成,根据图13和图14所示的密钥生成用矩阵和图来进行。
每个元素和节点的独立密钥,在树结构中,分为从所有节点共用的2个原始密钥实施散列函数得到的类型A密钥和仅从叶节点(无子节点的节点)以外的节点得到的类型B密钥这2种类型。
另外,在树结构中,为方便起见,定义称作“横列”的群,作为存在于相同层次的节点的集合。将根节点作为横列1,横列序号设定为每经过1个层次就增加1(参照图12的12A)。
进一步,在矩阵中,为表示各单元的坐标,将最右上方的元素定义为原点(0,0),并定义了x坐标在水平左方向上增加、y坐标在垂直下方向上增加的坐标轴。按照这种定义,例如,图12的12B的记为“4”的元素的坐标表示为(1,1),而记为“14”的元素的坐标表示为(2,3)(参照图12的12B)。
另外,在以下的说明中,设定矩阵的水平方向的单元数为Nx、垂直方向的单元数为Ny。
[类型A密钥]
作为类型A密钥的例子,用图13的13A和图14的14A说明。图13的13A示出Nx=4、Ny=4的类型A密钥的矩阵的例、图14的14A示出Nx=5、Ny=5的类型A密钥的矩阵的例。设定用作生成所有的类型A密钥的源的2个原始密钥分别为x、y。在图13的13A和图14的14A中,在各单元上所记载的2个数字表示对x、y实施散列函数的次数。例如,在记为[1,4]的单元上,设定作为类型A密钥保存H(x)和H(H(H(y))))。今后,当实施n次散列函数时,简略地表示为H^n()。按照该表示法,记为[1,4]的单元就具有H(x)和H^4(y)这2个类型A密钥。
[类型B密钥]
作为类型B密钥的例,用图13的13B和图14的14B说明。应注意到,图13的13B和图14的14B具有与图13的13A和图14的14A尺寸相同的矩阵。矩阵的最下行和最左列中这些密钥不存在。为表示密钥不存在,在下文中设定使用符号“N”。另外,在最左列、最右列、最下行和最上行以外的单元上,直接采用尺寸为Nx-2、Ny-2的类型A密钥的值。进一步,在这些单元以外的最上行的单元上直接采用其下一行的单元的值、而在最右行的单元上直接采用其左边一列的单元的值。
设定用作生成所有的类型B密钥的源的2个原始密钥分别为u、v。与类型A密钥同样地,在图13的13A和图14的14A中,附加于各单元的2个数字表示对u、v实施散列函数的次数。
进一步,如图14的14C所示,当类型B密钥的矩阵的尺寸中大的尺寸为大于等于5时,如图14的14C所示,采用尺寸为Nx-2和Ny-2的融合密钥。对于融合密钥将在下文中详细说明。
[融合密钥]
在本实施方式中,将如上所述的类型A密钥和类型B密钥融合使用。在下文中,将融合了类型A密钥和类型B密钥的密钥称为融合密钥。在图15中,示出如图13所示的Nx=4、Ny=4时的融合密钥的矩阵(图15的15A)。如图15所示,将位于相同单元的类型A密钥和类型B密钥融合,生成对应的融合密钥。例如,在图15的15A中,单元(1,2)意味着保存H^5(x)、H^4(y)、H^2(u)及H(v)这样的融合密钥。
另外,如上所述,以上说明过的本实施方式中的密钥矩阵,也可以表示为树结构。图15的15B中,示出用树结构表示图15的15A所示的矩阵时的例子。
[密钥生成用图的生成方法]
以下,用图16说明本实施方式的生成融合密钥的处理方法。
如图16所示,首先,在步骤S601中,将表示融合密钥矩阵的水平方向和垂直方向的单元数的变量Nx和Ny初始化。这只需根据进行访问控制的对象数设定适当的值即可。例如,当对具有6个析像度和5个画质的图像数据进行与析像度和画质对应的访问控制时,设定为Nx=6和Ny=5。但是,本发明并不限定于此,可以适应于各种访问控制。进一步,将表示处理层次的变量PL初始化为0。
接着,步骤S602,将融合密钥矩阵的各单元中所存储的元素数初始化。在本实施方式中,将通过后述的融合密钥生成处理所生成的要存储在一个单元内的融合密钥的数设定为元素数。在本实施方式的融合密钥生成处理中,对一个单元生成Min(Nx,Ny)个融合密钥,因此将元素数设定为Min(Nx,Ny)。而且,Min(a,b)为在a和b中选择小的值的运算。例如,如上所述,当使Nx=6、Ny=5时,将存储在一个单元内的元素数初始化为5。
步骤S603,生成处理层次PL中的尺寸Nx*Ny的融合密钥矩阵。对于本实施方式的融合密钥生成处理,将在后文中详细说明。
然后,步骤S604,将所生成的各处理层次PL中的融合密钥融合为一个融合密钥矩阵。在本实施方式中,将处理层次PL=0的类型A密钥和处理层次PL=0的类型B密钥融合,并进一步将所生成的其以后的(处理层次PL1以上的)所有的类型B密钥融合。
以上,说明了本实施方式中的生成融合密钥的处理方法。
接着,用图17对本实施方式的融合密钥生成处理进行说明。图17是说明本实施方式的融合密钥生成处理的流程图。
如图17所示,首先,步骤S501判断Max(Nx,Ny)是否小于等于2。而且,Max(a,b)是在a和b中选择大的值的算符。当其值小于等于2时,使处理进入步骤S502。否则使处理进入步骤S503。
步骤S502,生成处理层次PL中的尺寸Nx*Ny的类型A密钥矩阵。在生成了类型A密钥矩阵后,结束融合密钥生成处理。
另一方面,步骤S503,生成处理层次PL+1中的尺寸(Nx-2)*(Ny-2)的融合密钥矩阵。进一步,在生成了融合密钥矩阵后,步骤S504,生成处理层次PL中的尺寸Nx*Ny的类型B密钥矩阵,并结束融合密钥生成处理。
如上所述,在本实施方式中,为生成处理层次PL中的尺寸Nx*Ny的融合密钥矩阵,递归地生成处理层次PL中的尺寸(Nx-2)*(Ny-2)的融合密钥矩阵。即,按顺序用尺寸较小的融合密钥矩阵生成尺寸较大的融合密钥矩阵。
以下,用图18的流程图说明类型A密钥的矩阵的生成方法。
首先,步骤S801,将变量i和j设定为0。变量i和j分别为表示矩阵的水平方向和垂直方向的坐标的索引。
然后,步骤S802评价变量Ny的值。如Ny为1则使处理进入步骤S814。否则使处理进入步骤S803。
步骤S803评价变量j的值。如j为0则使处理进入步骤S804。否则使处理进入步骤S805。然后,步骤S804,将值i代入单元(i,j)的x密钥x(i,j)。另一方面,步骤S805,将值Nx+j-1代入单元(i,j)的x密钥x(i,j)。之后,使处理进入步骤S814。
步骤S814评价变量Nx的值。如Nx为1则使处理进入步骤S809。否则使处理进入步骤S806。
步骤S806评价变量i的值。如i为0则使处理进入步骤S807。否则使处理进入步骤S808。然后,步骤S807,将值j代入单元(i,j)的y密钥y_(i,j)。另一方面,步骤S808,将值Ny+i-1代入单元(i,j)的y密钥y_(i,j)。之后,使处理进入步骤S809。
步骤S809使变量i增加1,并使处理进入步骤S810。然后,在步骤S810中评价变量i的值。当i小于Nx时使处理进入步骤S803。否则使处理进入步骤S813,将变量i初始化为0后,使处理进入步骤S811。
步骤S811使变量j增加1,并使处理进入步骤S812。然后,在步骤S812中评价变量j的值。当j小于Ny时使处理进入步骤S803。否则结束类型A密钥生成处理。
以上,说明了本实施方式的类型A密钥的矩阵的生成方法。按照如上所述的方法,当Nx=4、Ny=4时,可以生成图13的13A中记载的类型A密钥的矩阵。而当Nx=5、Ny=5时,同样可以生成图14的14A中记载的类型A密钥的矩阵。
以下,用图19的流程图说明类型B密钥的矩阵的生成方法。首先,步骤S902,将变量i和j设定为0。变量i和j分别为表示矩阵的水平方向和垂直方向的坐标的索引。
然后,步骤S903评价变量i和j的值。如i和j都为0时,使处理进入步骤S904。否则使处理进入步骤S905。在步骤S904中,对单元(i,j)的u密钥u_(i,j)和单元(i,j)的v密钥v_(i,j)都代入0。之后,使处理进入步骤S911。另外,当Nx=3时,不生成u密钥u_(i,j),当Ny=3时,不生成v密钥v_(i,j)。
步骤S905评价变量i和j的值。如i等于Nx-1、或j等于Ny-1,使处理进入步骤S906。否则使处理进入步骤S907。步骤S906,对单元(i,j)的u密钥u_(i,j)和单元(i,j)的v密钥v_(i,j)都代入“N”。如上所述,“N”是表示不设定密钥的符号。之后,使处理进入步骤S911。另外,当Nx=3时,不生成u密钥u_(i,j),当Ny=3时,不生成v密钥v_(i,j)。
步骤S907评价变量i的值。如i为0则使处理进入步骤S908。否则使处理进入步骤S909。步骤S908,将u′_(0,j-1)代入单元(i,j)的u密钥u_(i,j)、将v′_(0,j-1)代入单元(i,j)的v密钥v_(i,j)。此处,u′和v′表示处理层次为PL+1、即矩阵的尺寸为(Nx-2)*(Ny-2)的类型A密钥。处理层次为PL+1的类型A密钥,在类型B密钥生成处理(图17的步骤S504)的前一步骤,在融合密钥生成处理(图17的步骤S503)中预先生成。之后,使处理进入步骤S911。另外,当Nx=3时,不生成u密钥u_(i,j),当Ny=3时,不生成v密钥v_(i,j)。
步骤S909评价变量j的值。如j为0则使处理进入步骤S910。否则使处理进入步骤S915。步骤S910,将u′_(i-1,0)代入单元(i,j)的u密钥u_(i,j)、将v′_(i-1,0)代入单元(i,j)的v密钥v_(i,j)。另一方面,步骤S915,将u′_(i-1,j-1)代入单元(i,j)的u密钥u_(i,j)、将v_(i-1,j-1)代入单元(i、j)的v密钥v_(i,j)。之后,使处理进入步骤S911。另外,当Nx=3时,不生成u密钥u_(i,j),当Ny=3时,不生成v密钥v_(i,j)。
步骤S911使变量i增加1,并使处理进入步骤S912。然后,在步骤S912中评价变量i的值。当i小于Nx时使处理进入步骤S903。否则使处理进入步骤S915,将变量i初始化为0后,使处理进入S913。
步骤S913使变量j增加1,并使处理进入步骤S914。然后,在步骤S914中评价变量j的值。当j小于Ny时使处理进入步骤S903。否则结束类型B密钥生成处理。
以上,说明了本实施方式的类型B密钥的矩阵的生成方法。按照如上所述的方式,当Nx=4、Ny=4时,可以生成图13的13B中记载的类型B密钥的矩阵。而当Nx=5、Ny=5时,同样可以生成图14的14B中记载的类型B密钥的矩阵。
[密钥生成的合法性]
上述的图的生成方式,生成时满足如下的条件。
·节点只可以生成其孙节点的密钥
·不能从子节点的密钥信息生成父节点的密钥(除非单向性函数变弱)
·即使任意的两个以上的实体进行合谋,也不能生成位于比各实体更高位的节点的密钥
根据这些条件,可以实现能够安全地进行密钥生成和密钥分发的分层的密钥管理方式。
[密钥分发]
分别说明根密钥分发者(根节点的实体)的向各节点的密钥分发方法和根密钥分发者以外的保存独立密钥的实体的向下位节点的密钥分发方法。首先,根密钥分发者,随机且安全地生成密钥x、y、u、v,并将其作为自身的独立密钥。进一步,按照上述的密钥生成步骤将多个密钥配置于各节点。根密钥分发者,安全地对位于各节点的实体分发各节点的密钥。另外,将如图13和14所示的密钥分发图公开,并对各实体分发能够识别所分发的密钥是图的哪个位置的密钥的数据。该数据,例如由树结构的序号和表示同一横列内的第几个的横列内识别序号构成或由矩阵中的坐标构成即可。
以下,说明根密钥分发者以外的保存独立密钥的实体的密钥分发方法。从表示独立密钥和密钥分发图中的密钥的位置的识别数据,生成与子节点或孙节点对应的密钥数据。例如在图15的15A中,作为融合密钥保存x′、y′、u′、v′,若在矩阵中此为单元(1,1)、即在图中的位置上是横列3的第2个,则对应于[4,4,0,0]。该实体,由于是H^4(x)=H^0(H^4(x))=x′、H^5(y)=H^1(H^4(y))=H^1(y′)、H(u)=H^1(H^0(u))=H^1(u′)以及H^2(v)=H^2(H^0(v))=H^2(v′),作为单元(2,1)的密钥,可以对单元(2,1)、即作为横列4的第2个的子节点分发H^4(x′)、H(y′)、H^1(u′)和H^2(v′)。显然同样也可以生成与其他的子节点或孙节点对应的密钥。
[信息处理设备的密钥生成、分发处理]
说明在上述信息处理设备100中进行以上的密钥生成、分发处理的步骤。通过CD108或网络的网络连接部107取得图像等管理对象数据并存储在HD106内,或从HD106内已存储着的数据中进行选择。此处,用户使用鼠标112和键盘113等从显示在监视器102上的一览表选择。
当用户用同样的方法对管理对象数据选择具有几个层次的层次轴等的访问控制结构时,用CPU103计算与该结构对应的密钥生成用图,并存储在RAM105或HD106等内。
从ROM104、RAM105、HD106或鼠标112的动作等的数据生成随机数据,用该随机数据生成多个原始密钥,并存储在RAM105或HD106等内。进一步,从原始密钥计算密钥生成用图中的各节点的独立密钥,并存储在RAM105或HD106等内。
对其他的信息处理设备,读出存储在RAM105或HD106等中的独立密钥,并通过网络连接部107经由网络进行分发。
[每个层次轴的层次数不同的分层的访问结构]
在图13和图14中,只举出Nx和Ny相等时的例子(图13中为Nx=Ny=4,图14中为Nx=Ny=5),但即使Nx和Ny不同的情况下在图20的20A中示出对于类型A密钥、在图20的20B中示出对于类型B密钥也可以用同样的方法生成。在图20中,为Nx=3、Ny=4,但显然可以根据图18和图19中记载的流程图正常地进行处理。
<本设备的密钥生成、管理的第3实施方式>
以下,说明上述设备的密钥生成、管理的第3实施方式。
[密钥生成概要]
首先,说明对于分层的密钥管理方式中的各节点的节点密钥的生成。
在本发明中,以如图22和图32所示的不具备环路和循环结构的有向图表示层次关系为前提。当存在着像图40的节点n1和n2那样的多个节点相互间以有向图连接着的部位时,通过将这些节点汇总而作为一个节点处理,可以归结为不存在具有这种双向连接关系的节点的情况。图41是将n1和n2视为同一个节点n1′的有向图。以下,设定为不存在具有这种双向连接关系的节点。
为便于说明,在本实施方式中,使用如图22所示的2个层次的点阵图。在图23和图24中,在各单元上记载着的3个数字表示对3个初始密钥x、y、z实施散列函数的次数。例如,在记为[2,2,N]的单元上,设定作为节点密钥保存H(H(x))和H(H(y))。N意味着“无”,表示根本不具备关于初始密钥的信息。今后,当实施n次散列函数时,简略地表示为H^n()。根据该表示法,记为[2,2,N]的单元保存着H^2(x)和H^2(y)两个节点密钥。也可以将分层的密钥管理方式中的树结构置换为矩阵后进行说明。图23是具有9个节点的树结构的例子,图23的各节点上所标记出的数字和图24的各单元上所标记出的数字,表示具有相同的对应关系。
首先,在如图23所示的树结构中,使根节点(图中以[0,0,0]表示的节点)与矩阵中的最右上方的单元相对应。而且,使树结构中的各节点的子节点中位于左边的节点和位于右边的节点分别与矩阵的左边的单元和下边的单元相对应。通过对所有的节点和单元按顺序建立这种对应关系,可以将图23中示出的树结构置换为图24中示出的矩阵。
接着,说明图23或图24中示出的密钥生成用数据的生成方法。
[节点的分割]
为生成密钥生成用数据,在所提供的密钥分发图G中进行节点的分割,使其满足以下的条件。此处,设定使用将节点总体的集合称作Node(G)、将部分集合的集的大小称作N、将分割后的部分集合称作SubG_1、SubG_2、…、SubG_N的表示方法。
·SubG_1U SubG_2U…U SubG_N=Node(G),就是说,部分集合的总体包括所有的节点。
·SubG_i中所包含的任意的2个节点n_a、n_b,n_a<n_b或n_a>n_b成立。就是说,n_a、n_b存在子孙关系,一方必定是另一方的子孙节点。
将该分割后的部分集合的数N表示为称作密钥分发图G的密钥分发序列(order)的Ord(G)。
[节点密钥的分配]
对部分集合SubG_i逐一地计算初始密钥K_i,并作为根节点的节点密钥进行分配。对根节点下属的子孙节点,按如下的法则分配节点密钥。
a)对各节点分配与N个初始密钥K_i(1≤i≤N)相关联的序号。该序号是对初始密钥K_i施行单向性函数的次数,有时也分配意味着“无”的“N”。当初始密钥K_i的该序号为“N”时,意味着没有保存与初始密钥K_i相关的密钥。
b)将SubG_i中所包含的节点在各集合内根据有向图上的子孙关系以降序分类,并分配从0起逐一地增加的序号。该序号是与初始密钥K_i相关联的序号。
c)当SubG_i中所包含的节点的与初始密钥K_i(i≠j)相关联的序号不是(作为与初始密钥K_i对应的部分集合的)SubG_j中所包含的节点的祖先节点时,使该序号为N(无),并设定作为祖先节点的节点的该序号为在SubG_j所包含的节点中作为子孙节点而被分配了的序号的最小值。
图31是按流程图进行了上述的节点密钥分配处理的图。以下,进行图31的说明。此处,已经将全部节点集合分割为互质的、且不是空集的部分集合SubG_i(1≤i≤N),并计算与各部分集合对应的初始密钥K_i。而且,将部分集合SubG_i中所包含的节点数记述为#N(i),部分集合SubG_i中所包含的节点,记述为根据有向图上的子孙关系按降序分类的SubG_i={n(i,1),n(i,2),…,n(i,#N(i))}。进一步,与节点n(i、j)对应的节点密钥,是对初始密钥K_k(1≤k≤N)实施了规定次数的单向性散列函数后的密钥,并将该规定次数表示为h(i,j,k)。
步骤S1101是从1到N变化的变量i的循环、步骤S1102是从1到N变化的变量j的循环、步骤S1103是从1到#N(i)变化的变量k的循环。步骤S1104评价变量i和变量k是否一致,当一致时使处理进入步骤S1105,不一致时使处理进入步骤S1106。步骤S1105将j-1代入h(i,j,k),并返回循环处理。步骤S1106评价是否存在满足n(k,m)<n(i,j)、即n(i,j)是n(k,m)的祖先节点的m,不存在时使处理进入步骤S1107,存在时使处理进入步骤S1108。步骤S1107将“N”代入h(i,j,k),并返回循环处理。
步骤S1108,将min{h(k,m,k)|n(k、m)<n(i,j)}、即n(i,j)是作为n(k,m)的祖先节点的节点中h(k,m,k)的最小值代入h(i,j,k),并返回循环处理。
以下,用图25~图28、图29和图30、图32~图38说明具体例。
图25是图22中示出的密钥生成用图中的节点分割的例子,分割为3个部分集合SubG_1~SubG_3。即,SubG_1={n0,n2,n5}、SubG_2={n1,n4,n7}、SubG_3={n3,n6,n8}。此时,仅表示出h(i,j,i)的是图26。例如{h(1,1,1),h(1,2,1),h(1,3,1)}={0,1,2},这与步骤S1104和步骤S1105相对应。进一步,记载了从节点的子孙关系变为“N”的部位的是图27。例如h(1,1,3)=“N”,这是由于使n(3,m)<n(1,1)=n3的m不存在而引起的。实际上,可以确认n(3,1)=n0、n(3,2)=n2、n(3,3)=n5,这与步骤S1106和步骤S1107相对应。进一步在满足n(3,m)<n(i,j)的所有i、j中进行检查后反映出的结果是图28。例如h(2,1,1)=0,在使n(1,m)<n(2,1)=n1的m中有可能为1、2、3,在h(1,1,1)=0、h(1,2,1)=1、h(1,3,1)=2中选择作为最小值的0。进一步在满足n(2,m)<n(i,j)的所有i、j中进行检查,最终得到图24。
另外,与图25不同的图29中记载的基于节点分割的构成方法,可以根据图31的流程图与图24同样地构成,得到图30。在图24和图30中,总的散列运算量以图30的情况为多。
接着,说明图32所示的密钥生成用图中的节点密钥的构成方法。图33是图32中示出的密钥生成用图中的节点分割的例,分割为3个部分集合SubG_1~SubG_3。即,SubG_1={n0,n1,n4,n7}、SubG_2={n3,n6}、SubG_3={n2,n5}。此时,根据图31中记载的流程图构成的节点密钥如图34所示。以下,说明直到图34的结构。首先,仅表示出h(i,j,i)的是图35。例如{h(1,1,1),h(1,2,1),h(1,3,1),h(1,4,1)}={0,1,2,3},这与步骤S1104和步骤S1105相对应。进一步,记载了从节点的子孙关系变为“N”的部位的是图36。例如h(1,2,3)=“N”,这是由于使n(3,m)<n(1,2)=n1的m不存在而引起的。实际上,可以确认n(3,1)=n3、n(3,2)=n6,这与步骤S1106和步骤S1107相对应。进一步,在满足n(1,m)<n(i,j)的所有i、j中进行检查后反映出的结果是图37。例如h(2,1,1)=2,在使n(1,m)<n(2,1)=n3的m中有可能为3、4,在h(1,3,1)=2、h(1,4,1)=3中选择作为最小值的2。同样地在满足n(2,m)<n(i,j)的所有i、j中进行检查,最终得到图34。
进一步,考虑不对终端节点分发密钥的情况。这可以构成能够无限制地访问图像数据中的缩略图等数据的状态。图39是其一例,意味着终端节点不存在节点密钥,记载为[N,N,N]。这可以通过以下方式得到,即:只将终端节点从节点分割时无论在节点n的哪个部分集合中都不包含的状态应用于图31的流程图。此处给出了只是对一个终端节点不分发节点密钥的例子,但显然即使是在对多个节点的情况下也可以按同样的方法构成。
[所生成的密钥应满足的条件]
上述的密钥生成方式,构成为满足以下的条件。
·a.生成可能性:对象节点可以生成其孙节点的密钥
·b.合谋攻击回避性:(除非单向性函数变弱)即使位于任意的大于等于两个的节点的实体合谋,也不能生成位于比各节点更高位的祖先节点的密钥
根据这些条件,可以实现能够安全地进行密钥生成和密钥分发的分层的密钥管理方式。
[密钥分发]
分别说明由根密钥分发者(根节点的实体)向各节点分发密钥的方法和由根密钥分发者以外的保存独立密钥的实体向低位节点分发密钥的方法。首先,根密钥分发者,随机且安全地生成根据密钥分发图G决定的个数为密钥分发序列Ord(G)个参数{x_i}((1≤i≤Ord(G))),并将其作为自身的独立密钥。进一步,按照上述密钥生成步骤将多个密钥配置在各节点。根密钥分发者,对位于各节点的实体安全地分发各节点的密钥。而且,将密钥分发图公开,并对各实体分发能够识别所分发的密钥是图中的哪个位置的密钥的数据。该数据,例如在将点阵图作为密钥分发图时,由以矩阵表示时的坐标构成即可。
[信息处理设备的密钥生成、分发处理]
说明在上述信息处理设备100中进行以上的密钥生成、分发处理的步骤。通过CD108或网络的网络连接部107取得图像等管理对象数据并存储在HD106内,或从HD106内已存储着的数据中选择。此处,用户使用鼠标112和键盘113等从显示在监视器102上的一览表选择。
当用户用同样的方法对管理对象数据选择具有几个层次的层次轴等的访问控制结构时,用CPU103计算与该结构对应的密钥生成用图,并存储在RAM105或HD106等内。
从ROM104、RAM105、HD106或鼠标112的动作等数据生成随机数据,用该随机数据生成多个原始密钥,并存储在RAM105或HD106等内。进一步,从原始密钥计算密钥生成用图中的各节点的独立密钥,并存储在RAM105或HD106等内。
对其他的信息处理设备,读出存储在RAM105或HD106等内的独立密钥,并通过网络连接部107经由网络进行分发。
<本实施方式的层次型访问结构的具体例>
说明采用了按照第1和第3实施方式的密钥分发方式生成的具有层次型结构的密钥数据的访问控制的最佳例。
在图2、图3和图15中示出的密钥生成用图,具有2个层次轴。在图42中示出将其中1个(左下方向)作为析像度、将另一个(右下方向)作为图像区域时的例子。在析像度中具有高、中、低3个层次,表示可取得的图像的析像度。在图像区域也具有3个层次,设定赋予全部区域、子区域A、(比子区域A窄的)子区域B的阅览权限。此时,对位于根的权限最大的节点进行分配(析像度=高、图像区域=全部),对最低位的节点进行分配(析像度=低、图像区域=区域B)。
[第1实施方式的具体适用例]
以进行依据了图10的密钥分发的情况为例说明密钥分发方法和图像加密方法。对于对象图像数据IMG,设区域B的图像数据为IMG_1、区域A差分数据为IMG_2、用于得到所有的图像数据的差分数据为IMG_3。就是说,IMG=IMG_1+IMG_2+IMG_3。另外,对各IMG_i,设低析像度数据为IMG_i(L)、中析像度差分数据为IMG_i(M)、高析像度数据为IMG_i(H)。就是说,IMG_i=IMG_i(L)+IMG_i(M)+IMG_i(H)。
首先,根密钥分发者,随机地生成原始密钥x、y、z。设加密使用的密钥Key(<High,All>):=H(x‖y‖z),用该密钥将IMG_3(H)加密。其中,‖为数据的联结。将在各子节点上取得的3个数据按同样的方式与根节点联结而生成加密密钥,并将图43中记载的数据加密。
例如,在<Mid,All>节点上,提供H(x)、H^2(y)、z作为密钥数据,设加密密钥Key(<Mid,All>):=H(H(x)‖H^2(y)‖z),用该密钥将IMG_3(M)加密。当对加密后的数据进行解密时,进行同样的处理,计算加密密钥并进行解密处理,从而取得适当的图像数据。
[第2实施方式的具体适用例]
以进行依据了图21的密钥分发的情况为例子,说明密钥分发方法和图像加密方法。图21是Nx=3、Ny=3时的类型A密钥(图21的21A)和类型B密钥(图21的21B)的例子。对于对象图像数据IMG,设区域B的图像数据为IMG_1、区域A差分数据为IMG_2、用于得到所有的图像数据的差分数据为IMG_3。就是说,IMG=IMG_1+IMG_2+IMG_3。另外,对各IMG_i,设低析像度数据为IMG_i(L)、中析像度差分数据为IMG_i(M)、高析像度数据为IMG_i(H)。就是说,IMG_i=IMG_i(L)+IMG_i(M)+IMG_i(H)。
首先,根密钥分发者,随机地生成原始密钥x、y、u。设加密使用的密钥Key(<High,All>):=H(x‖y‖u),用该密钥将IMG_3(H)加密。其中,‖为数据的联结。将在各子节点上取得的3个数据按同样的方式与根节点联结而生成加密密钥,并将图43中记载的数据加密。
例如,在<Mid,All>节点上,提供H(x)、H^3(y)、u作为密钥数据,设加密密钥Key(<Mid、All>):=H(H(x)‖H^3(y)‖u),用该密钥将IMG_3(M)加密。当对加密后的数据进行解密时,进行同样的处理,计算加密密钥并进行解密处理,从而取得适当的图像数据。
[第3实施方式的具体适用例]
以进行依据了图23或图24的密钥分发的情况为例,说明密钥分发方法和图像加密方法。对于对象图像数据IMG,设区域B的图像数据为IMG_1、区域A差分数据为IMG_2、用于得到所有的图像数据的差分数据为IMG_3。就是说,IMG=IMG_1+IMG_2+IMG_3。另外,对各IMG_i,设低析像度数据为IMG_i(L)、中析像度差分数据为IMG_i(M)、高析像度数据为IMG_i(H)。就是说,IMG_i=IMG_i(L)+IMG_i(M)+IMG_i(H)。
首先,根密钥分发者随机地生成原始密钥x、y、u。设加密使用的密钥Key(<High,All>):=H(x‖y‖u),用该密钥将IMG_3(H)加密。其中,‖为数据的联结。将在各子节点上取得的3个数据按同样的方式与根节点联结而生成加密密钥,并将图43中记载的数据加密。
例如,在<Mid,All>节点上,提供H(x)、H^3(y)、u作为密钥数据,设加密密钥Key(<Mid,All>):=H(H(x)‖H^3(y)‖u),用该密钥将IMG_3(M)加密。当对加密后的数据进行解密时,进行同样的处理,计算加密密钥并进行解密处理,从而取得适当的图像数据。
在本实施方式中,作为加密密钥的生成方式,采用了将密钥联结并进行散列的方式,但也可以按照其他的密钥联结方式(从多个密钥数据计算1个密钥的方式)。
另外,在本实施方式中,举出析像度和图像区域作为层次轴,但本发明并不限定于此,也可以从画质、时间轴或利用控制信息等可作为访问控制对象的层次中任选两个以上的层次作为轴进行使用。
<基于软件等的其他实施方式>
本发明,可以作为由多个设备(例如主计算机、接口设备、阅读器、打印机等)构成的系统的一部分使用,也可以应用于由一个设备(例如复印机、传真装置)构成的系统的一部分。
另外,本发明,并不只限定于用于实现上述实施方式的设备和方法,以及将实施方式中所述的方法组合进行的方法,将用于实现上述实施方式的软件的程序代码供给上述系统或设备内的计算机(CPU或MPU),并由上述系统或设备的计算机根据该程序代码使上述各种设备动作从而实现实施方式的情况,也包括在本发明的范畴内。
另外,在这种情况下,上述软件的程序代码本身可以实现上述实施方式的功能,因而该程序代码本身、及用于将该程序代码供给计算机的装置、具体地说就是存储了上述程序代码的存储介质,也包括在本发明的范畴内。
作为这种存储程序代码的存储介质,例如,可使用软盘、硬盘、光盘、磁性光盘、CD-ROM、磁带、非易失性存储卡、ROM等。
另外,不仅在由上述计算机只根据所供给的程序代码控制各种设备从而实现上述实施方式的功能的情况,而且在使上述程序代码与在计算机上工作着的OS(操作系统)或其他应用程序等共同地实现上述实施方式的情况的程序代码,也包括在本发明的范畴内。
进一步,将该所供给的程序代码存储在计算机的功能扩展卡或与计算机连接的功能扩展单元所备有的存储器内后,由该功能扩展卡或功能扩展单元所备有的CPU等根据该程序代码的指示执行实际处理的全部或一部分,并通过该处理实现上述实施方式的情况,也包括在本发明的范畴内。
如上所述,按照本发明,具有以下的效果:提供一种在需要管理用于解密的多个密钥的内容分发系统或可拆装介质控制方式中,通过减少密钥生成的计算量来使密钥管理负荷减轻的方式。
本发明并不限制于上述实施方式,只要不脱离本发明的精神和范围,可以进行各种变更和变形。因此,为了公开本发明的范围,附加以下的权利要求。
Claims (45)
1.一种密钥信息处理方法,其特征在于,包括:
设定步骤,对具有层次关系的多个元素的各元素,设定单向性函数的施行规定的集;
密钥生成步骤,对上述各元素,按照已对该元素设定的上述施行规定的集的对应的施行规定对大于等于2个的原始密钥的每一个施行上述单向性函数,作为由此得到的值生成关于该元素的大于等于2个的独立密钥;以及
密钥分发步骤,对上述各元素,分发关于该元素的2个独立密钥。
2.根据权利要求1所述的信息处理方法,其特征在于:
上述施行规定,是上述单向性函数的施行次数。
3.根据权利要求1或2所述的密钥信息处理方法,其特征在于:
在上述密钥生成步骤中,关于最高位的元素的独立密钥取为上述大于等于2个的原始密钥。
4.根据权利要求1或2所述的信息处理方法,其特征在于:
在上述密钥生成步骤中,最高位的元素从上述大于等于2个的原始密钥生成关于上述各元素的大于等于2个的独立密钥;
在上述密钥分发步骤中,该最高位的元素对上述各元素分发关于该元素的大于等于2个的独立密钥。
5.根据权利要求1或2所述的信息处理方法,其特征在于:
在上述密钥生成步骤中,最高位以外的元素从关于该元素的大于等于2个的独立密钥生成关于低位元素的大于等于2个的独立密钥;
在上述密钥分发步骤中,该最高位以外的元素对该低位元素分发关于该低位元素的大于等于2个的独立密钥。
6.根据权利要求2所述的信息处理方法,其特征在于:
在上述密钥生成步骤中,使上述单向性函数施行在最高位以外的元素的大于等于2个的独立密钥的每一个中、已对该最高位以外的元素设定的施行次数的集与已对上述低位元素设定的施行次数的集之差中的对应的次数,由此生成关于该低位元素的大于等于2个的独立密钥。
7.根据权利要求6所述的信息处理方法,其特征在于,包括:
公开步骤,对上述各元素公开表示上述设定步骤的设定内容的图;
识别数据分发步骤,对上述各元素分发表示该元素在上述图中的位置的识别数据。
8.根据权利要求1或2所述的密钥信息处理方法,其特征在于:
在上述设定步骤中,最高位层的横列序号取为1,并使以下层次的横列序号为依次增加1的值;
作为关于横列序号1的元素的上述施行次数的集,设定{(0,0)};
作为关于横列序号2的各元素的上述施行次数的集,分别设定{(1,3),(3,1)};
横列序号(i-1)中的最大的元素分量取为Q、横列i中的节点数取为#R(i),作为关于横列序号i(i≥3)的各元素的施行次数的集,当#R(i)>#R(i-1)时,设定{(Q-2*#R(i)+5,Q+3),(Q-2*#R(i)+7,Q+1),…,(Q+3,Q-2*#R(i)+5)},当#R(i)<#R(i-1)时,设定{(Q-2*#R(i)+3,Q+1),(Q-2*#R(i)+5,Q-1),…,(Q+1,Q-2*#R(i)+3)}。
9.根据权利要求7所述的密钥信息处理方法,其特征在于:
对横列序号i(i≥3)的各元素,当满足#R(i)<#R(i-1)时,不设定{(Q-2*#R(i)+3,Q+1),(Q-2*#R(i)+5,Q-1),…,(Q+1,Q-2*#R(i)+3)},而是
当#R(i)=3时,设定{(Q-3,Q),(Q-1,Q+2),(Q,Q+3)},
当#R(i)=2时,设定{(Q-1,Q),(Q,Q-1)},
当#R(i)=1时,设定{(Q,Q)}。
10.根据权利要求1或2所述的密钥信息处理方法,其特征在于:
在上述设定步骤中,将矩阵中最右上方的单元定义为原点(0,0),并定义了x坐标在水平左方向上逐一地增加、y坐标在垂直下方向上逐一地增加的坐标轴,
作为关于尺寸为Nx*Ny的矩阵的坐标(i,j)的单元的上述施行次数的集(x_ij,y_ij),
当j=0时,设定为x_ij=i、
当j≠0时,设定为x_ij=Nx+j-1、且
当i=0时,设定为y_ij=j、
当j≠0时,设定为y_ij=Ny+i-1。
11.根据权利要求1或2所述的密钥信息处理方法,其特征在于:
上述多个元素处于具有2个层次轴的点阵状的层次关系;
包括:
第2密钥生成步骤,对上述层次中具有多个父元素的元素生成第3独立密钥;
第2密钥分发步骤,对上述具有多个父元素的元素分发第3独立密钥。
12.根据权利要求11所述的密钥信息处理方法,其特征在于:
在上述第2密钥生成步骤中,通过对由上述多个父元素的层次共有的数据施行预定次数的单向性函数,生成上述第3独立密钥。
13.根据权利要求11所述的密钥信息处理方法,其特征在于:
包括第2设定步骤,对与上述具有多个父元素的元素同层次的各元素设定施行上述单向性函数的次数的集;
在上述第2密钥生成步骤中,将对由上述多个父元素共有的数据施行了该次数的集的各次数的上述单向性函数后的结果生成为关于该同层次的各元素的上述第3独立密钥。
14.根据权利要求13所述的密钥信息处理方法,其特征在于:
在上述第2设定步骤中,最高位层的横列序号取为1,并使以下层次的横列序号为依次增加1的值,横列i中的节点数取为#R(i);
对满足#R(i)<3的横列序号i的层次的各元素,不设定上述次数;
对满足#R(i)3的横列序号i的层次的各元素,作为上述次数,设定(1,…,1),(0,1,…,1),(1,0,…,1),…,(1,…,1,0),(1,…,1)。
15.根据权利要求13所述的密钥信息处理方法,其特征在于:
在上述第2设定步骤中,将矩阵中最右上方的单元定义为原点(0、0),并定义了x坐标在水平左方向上逐一地增加、y坐标在垂直下方向上逐一地增加的坐标轴,在将关于尺寸为(Nx-2)*(Ny-2)的矩阵中的坐标(i′,j′)的单元的上述施行次数的集设定为(u′_i′j′,v′_i′j′)时,作为关于尺寸为Nx*Ny的矩阵中的坐标(i,j)的单元的上述施行次数的集(u_ij,v_ij),
当i=0、且j=0时,设定为u_ij=0、v_ij=0、
当i=Nx-1、或j=Ny-1时,作为u_ij和v_ij,设定为表示上述独立密钥不存在的信息,
当i=0、且j≠0时,设定为u_ij=u′_i(j-1)和v_ij=v′_i(j-1),
当j=0、且i≠0时,设定为u_ij=u′_(i-1)j和v_ij=v′_(i-1)j,
在上述以外的情况下,设定为u_ij=u′_(i-1)(j-1)和v_ij=v′_(i-1)(j-1);
用权利要求10所述的方法生成上述大小为(Nx-2)*(Ny-2)的矩阵中的各单元的施行次数的集。
16.根据权利要求11所述的密钥信息处理方法,其特征在于:
由上述多个父元素共有的数据,是用上述大于等于2个的原始密钥生成的数据。
17.根据权利要求11所述的密钥信息处理方法,其特征在于:
由上述多个父元素共有的数据,是从与上述大于等于2个的原始密钥独立的第3原始密钥生成的数据。
18.根据权利要求11所述的密钥信息处理方法,其特征在于:
上述2个层次轴分别与图像的2个参数的分层层次相对应,各元素的独立密钥,可以对于该2个参数访问与该元素所属的分层层次对应的图像。
19.根据权利要求18所述的密钥信息处理方法,其特征在于:
上述2个参数,是图像的区域和析像度。
20.根据权利要求18所述的密钥信息处理方法,其特征在于:
上述2个参数,是图像的画质和析像度。
21.根据权利要求18所述的密钥信息处理方法,其特征在于:
上述图像是动图像,
上述2个参数,是动图像的时间区域和画质。
22.一种密钥信息处理设备,其特征在于,包括:
设定装置,对具有层次关系的多个元素的各元素,设定单向性函数的施行规定的集;
密钥生成装置,按照已对该元素设定的上述施行规定的集的对应的施行规定对大于等于2个的原始密钥的每一个施行上述单向性函数,作为由此得到的值生成关于该元素的大于等于2个的独立密钥;以及
密钥分发装置,对上述各元素,分发关于该元素的2个独立密钥。
23.一种可由计算机读取的程序,其特征在于:
使计算机执行密钥信息处理方法,
该密钥信息处理方法包括
设定步骤,对具有层次关系的多个元素的各元素,设定单向性函数的施行规定的集;
密钥生成步骤,按照已对该元素设定的上述施行规定的集的对应的施行规定对大于等于2个的原始密钥的每一个施行上述单向性函数,作为由此得到的值生成关于该元素的大于等于2个的独立密钥;以及
密钥分发步骤,对上述各元素,分发关于该元素的2个独立密钥。
24.一种密钥信息处理方法,根据以不具备循环结构的有向图表示的层次关系,从父节点生成各节点上的密钥进行密钥分发,
该密钥信息处理方法的特征在于,包括:
初始密钥生成步骤,在位于最高位的根节点上计算N个密钥;
节点密钥生成步骤,在各节点上将根据施行规定对上述N个初始密钥中的M个施行了规定次数的单向性函数后的值,生成为关于该节点的M个节点密钥,其中,M≤N。
25.根据权利要求24所述的密钥信息处理方法,其特征在于:
包括从上述各节点分发关于子节点的节点密钥的密钥分发步骤。
26.根据权利要求24所述的密钥信息处理方法,其特征在于:
包括从上述各节点分发关于子孙节点的节点密钥的密钥分发步骤。
27.根据权利要求24~26的任一项所述的密钥信息处理方法,其特征在于:
当上述有向图存在着多个不同节点相互间由有向图连接着的部位时,将这些节点汇总以作为一个节点处理。
28.根据权利要求24~26的任一项所述的密钥信息处理方法,其特征在于:
包括从上述有向图的结构计算初始密钥的个数N的初始密钥数计算步骤。
29.根据权利要求24~26的任一项所述的密钥信息处理方法,其特征在于,包括:
节点分割步骤,在上述初始密钥数计算步骤中,生成节点的部分集合的集以使其包括全部节点;
检查步骤,检查上述部分集合是否满足同一部分集合中所包含的任意的节点必定处于子孙关系的情况;以及
初始密钥数计算步骤,将上述部分集合的集的大小作为上述初始密钥的个数N。
30.根据权利要求29所述的密钥信息处理方法,其特征在于:
在上述节点分割步骤中,将全部节点分割为互质的部分集合。
31.根据权利要求24~26的任一项所述的密钥信息处理方法,其特征在于,包括:
初始密钥相关联步骤,上述施行规定,对由上述节点分割步骤得到的部分集合的每个集,使不同的初始密钥相关联;
编号步骤,将上述部分集合在各集合内根据有向图上的子孙关系按降序分类,并分配从0开始逐一地增加的序号;
该编号后的数值,是对上述初始密钥施行单向性函数的次数。
32.根据权利要求31所述的密钥信息处理方法,其特征在于:
在上述初始密钥相关联步骤中,当对不与初始密钥K相关联的其他的部分集合中所包含的节点分配该序号时,将与上述初始密钥K相关联的部分集合G中所包含的节点的祖先节点取为N,作为祖先节点的节点的该序号取为在上述部分集合G所包含的节点中作为子孙节点而被分配了的序号的最小值,其中,该序号表示施行单向性函数的次数,N表示无。
33.根据权利要求24~26的任一项所述的密钥信息处理方法,其特征在于:
在上述节点密钥生成步骤中,对最低位节点不分发节点密钥。
34.根据权利要求33所述的密钥信息处理方法,其特征在于:
在上述节点密钥生成步骤中,对多个指定节点的子孙节点不分发节点密钥。
35.根据权利要求33或34所述的密钥信息处理方法,其特征在于:
在上述节点分割步骤中,在上述部分集合内不包含不分发节点密钥的节点。
36.根据权利要求24~26的任一项所述的密钥信息处理方法,其特征在于:
上述有向图是表示具有2个层次轴的点阵状的层次关系的点阵节点。
37.根据权利要求24~26的任一项所述的密钥信息处理方法,其特征在于,包括:
公开步骤,对上述各节点公开表示上述节点密钥设定步骤的设定内容的节点密钥设定数据;
识别数据分发步骤,对上述各节点分发表示该节点在上述节点密钥设定数据上的位置的识别数据。
38.根据权利要求37所述的密钥信息处理方法,其特征在于:
上述2个层次轴分别与图像的2个参数的分层层次相对应,各元素的独立密钥,可以对于该2个参数访问与该元素所属的分层层次对应的图像。
39.根据权利要求38所述的密钥信息处理方法,其特征在于:
上述2个参数,是图像的区域和析像度。
40.根据权利要求38所述的密钥信息处理方法,其特征在于:
上述2个参数,是图像的画质和析像度。
41.根据权利要求38所述的密钥信息处理方法,其特征在于:
上述图像是动图像,
上述2个参数,是动图像的时间区域和画质。
42.根据权利要求24所述的密钥信息处理方法,其特征在于:
在上述初始密钥生成步骤中,上述N个初始密钥从1个原始密钥生成。
43.根据权利要求42所述的密钥信息处理方法,其特征在于:
在上述初始密钥生成步骤中,上述N个初始密钥用单向性函数从上述原始密钥计算。
44.一种密钥信息处理设备,可以根据以不具备循环结构的有向图表示的层次关系从父节点生成各节点上的密钥,
该密钥信息处理设备的特征在于,包括:
初始密钥生成装置,位于最高位的根节点计算N个密钥;
节点密钥生成装置,各节点将根据施行规定对上述N个初始密钥中的M个施行了规定次数的单向性函数后的值,生成为关于该节点的M个节点密钥,其中,M≤N。
45.一种可由计算机读取的程序,其特征在于:
使计算机执行可以根据以不具备循环结构的有向图表示的层次关系、从父节点生成各节点上的密钥的密钥信息处理方法,
该密钥信息处理方法,包括
初始密钥生成步骤,位于最高位的根节点计算N个密钥;和
节点密钥生成步骤,各节点将根据施行规定对上述N个初始密钥中的M个施行了规定次数的单向性函数后的值,生成为关于该节点的M个节点密钥,其中,M≤N。
Applications Claiming Priority (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP195729/2003 | 2003-07-11 | ||
JP2003195729 | 2003-07-11 | ||
JP321420/2003 | 2003-09-12 | ||
JP2003321420A JP4208678B2 (ja) | 2003-07-11 | 2003-09-12 | 鍵情報処理方法及びその装置、プログラム |
JP2003338679A JP2005109753A (ja) | 2003-09-29 | 2003-09-29 | 鍵情報処理方法及びその装置、並びにプログラム |
JP338679/2003 | 2003-09-29 | ||
PCT/JP2004/009946 WO2005018136A1 (ja) | 2003-07-11 | 2004-07-12 | 鍵情報処理方法及びその装置、並びにプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1846396A true CN1846396A (zh) | 2006-10-11 |
CN1846396B CN1846396B (zh) | 2011-09-28 |
Family
ID=34198741
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2004800248340A Expired - Fee Related CN1846396B (zh) | 2003-07-11 | 2004-07-12 | 密钥信息处理方法及其设备 |
Country Status (4)
Country | Link |
---|---|
US (1) | US7706530B2 (zh) |
EP (1) | EP1650893A4 (zh) |
CN (1) | CN1846396B (zh) |
WO (1) | WO2005018136A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101542966B (zh) * | 2006-11-16 | 2013-03-27 | 索尼株式会社 | 信息处理装置 |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100924773B1 (ko) * | 2002-09-16 | 2009-11-03 | 삼성전자주식회사 | 메타데이터 암호화 및 복호화 방법과 암호화된 메타데이터관리 방법 및 그 시스템 |
JP4632413B2 (ja) * | 2004-09-01 | 2011-02-16 | キヤノン株式会社 | 情報暗号化装置及び情報配信装置並びにそれらの制御方法、並びに、コンピュータプログラム及びコンピュータ可読記憶媒体 |
JP2006080623A (ja) * | 2004-09-07 | 2006-03-23 | Canon Inc | 情報処理方法及び装置、並びにコンピュータプログラム及びコンピュータ可読記憶媒体 |
JP4310285B2 (ja) | 2005-02-09 | 2009-08-05 | キヤノン株式会社 | 情報処理方法及び装置、並びにコンピュータプログラム及びコンピュータ可読記憶媒体 |
JP2007081482A (ja) * | 2005-09-09 | 2007-03-29 | Canon Inc | 端末認証方法及びその装置、プログラム |
JP4993674B2 (ja) * | 2005-09-09 | 2012-08-08 | キヤノン株式会社 | 情報処理装置、検証処理装置及びそれらの制御方法、コンピュータプログラム及び記憶媒体 |
JP5043421B2 (ja) | 2005-12-28 | 2012-10-10 | キヤノン株式会社 | 情報処理装置およびその方法 |
JP2008059561A (ja) * | 2006-08-04 | 2008-03-13 | Canon Inc | 情報処理装置、データ処理装置、および、それらの方法 |
KR101213154B1 (ko) * | 2006-11-16 | 2012-12-17 | 삼성전자주식회사 | 키 업데이트 방법 및 이를 이용한 키 업데이트 장치 |
KR100938262B1 (ko) * | 2007-07-18 | 2010-01-22 | 한국전자통신연구원 | 비밀키 사전분배 방법 |
JP5270894B2 (ja) * | 2007-10-01 | 2013-08-21 | キヤノン株式会社 | 情報処理装置及びその制御方法、情報処理システム、プログラム |
US8634553B2 (en) * | 2007-11-05 | 2014-01-21 | Sumitomo Electric Industries, Ltd. | Encryption key generation device |
JP2009135871A (ja) * | 2007-11-05 | 2009-06-18 | Sumitomo Electric Ind Ltd | 暗号鍵生成方法 |
US8150850B2 (en) * | 2008-01-07 | 2012-04-03 | Akiban Technologies, Inc. | Multiple dimensioned database architecture |
EP2172896A1 (fr) * | 2008-10-02 | 2010-04-07 | Nagravision S.A. | Méthode de gestion d'une valeur dans un dispositif à prépaiement |
JP5921120B2 (ja) | 2011-09-07 | 2016-05-24 | キヤノン株式会社 | 情報処理装置、情報処理方法 |
US9020954B2 (en) * | 2012-09-28 | 2015-04-28 | International Business Machines Corporation | Ranking supervised hashing |
CN108063756B (zh) | 2017-11-21 | 2020-07-03 | 阿里巴巴集团控股有限公司 | 一种密钥管理方法、装置及设备 |
TWI707246B (zh) * | 2018-11-05 | 2020-10-11 | 開曼群島商現代財富控股有限公司 | 分散式多層遞迴的密鑰保管系統及其方法 |
CN115086730B (zh) * | 2022-06-16 | 2024-04-02 | 平安国际融资租赁有限公司 | 签约视频生成方法、系统、计算机设备及介质 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5796839A (en) * | 1995-10-16 | 1998-08-18 | Sony Corporation | Encryption method, encryption apparatus, recording method, decoding method, decoding apparatus and recording medium |
US5754659A (en) * | 1995-12-22 | 1998-05-19 | General Instrument Corporation Of Delaware | Generation of cryptographic signatures using hash keys |
JPH09182050A (ja) | 1995-12-26 | 1997-07-11 | Matsushita Electric Ind Co Ltd | スクランブル伝送装置およびスクランブル装置およびデスクランブル装置 |
JPH1198487A (ja) * | 1997-09-24 | 1999-04-09 | Mitsubishi Electric Corp | 画像符号化装置及び画像復号化装置 |
CN1099780C (zh) * | 1999-12-10 | 2003-01-22 | 北京深思洛克数据保护中心 | 一种密钥传递及数字签名的方法 |
US6891951B2 (en) * | 2000-01-21 | 2005-05-10 | Victor Company Of Japan, Ltd. | Cryptosystem-related method and apparatus |
EP1189432A3 (en) * | 2000-08-14 | 2004-10-20 | Matsushita Electric Industrial Co., Ltd. | A hierarchical encryption scheme for secure distribution of predetermined content |
JP2004140668A (ja) * | 2002-10-18 | 2004-05-13 | Canon Inc | 情報処理方法 |
JP2004297778A (ja) | 2003-03-07 | 2004-10-21 | Canon Inc | 画像データ暗号化方法及び装置、並びにコンピュータプログラム及びコンピュータ可読記憶媒体 |
-
2004
- 2004-07-12 WO PCT/JP2004/009946 patent/WO2005018136A1/ja active Application Filing
- 2004-07-12 CN CN2004800248340A patent/CN1846396B/zh not_active Expired - Fee Related
- 2004-07-12 EP EP04747412A patent/EP1650893A4/en not_active Withdrawn
-
2006
- 2006-01-11 US US11/329,037 patent/US7706530B2/en not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101542966B (zh) * | 2006-11-16 | 2013-03-27 | 索尼株式会社 | 信息处理装置 |
Also Published As
Publication number | Publication date |
---|---|
EP1650893A1 (en) | 2006-04-26 |
WO2005018136A1 (ja) | 2005-02-24 |
US20060149762A1 (en) | 2006-07-06 |
CN1846396B (zh) | 2011-09-28 |
EP1650893A4 (en) | 2011-07-06 |
US7706530B2 (en) | 2010-04-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1846396A (zh) | 密钥信息处理方法及其设备和程序 | |
CN1211975C (zh) | 信息管理系统和方法 | |
CN100336039C (zh) | 文件管理装置 | |
CN1207894C (zh) | 数据隐藏和抽取方法、系统和电路 | |
CN1203431C (zh) | 公用密钥加密装置 | |
CN1276364C (zh) | 数据管理设备,数据管理方法以及计算机程序 | |
CN1296846C (zh) | 信息发送系统、发送装置和发送方法与信息接收系统、接收装置和接收方法 | |
CN1879138A (zh) | 密码处理装置、密码处理方法及其计算机程序 | |
CN1274107C (zh) | 加密数据分发系统 | |
CN1571959A (zh) | 信息处理设备、信息处理方法和计算机程序 | |
CN1977250A (zh) | 进行加密或解密的计算机系统和计算机程序 | |
CN1471005A (zh) | 信息内容管理系统 | |
CN1901446A (zh) | 使用了加密密钥组的信息处理系统及方法 | |
CN1993975A (zh) | 信息处理系统及其使用的信息处理方法、信息处理装置及其使用的信息处理方法、以及程序 | |
CN1389042A (zh) | 使用了加密密钥组的信息处理系统及方法 | |
CN1426642A (zh) | 信息处理系统及方法 | |
CN1608361A (zh) | 数字作品保护系统、密钥管理设备和用户设备 | |
CN1426643A (zh) | 信息处理系统及方法 | |
CN101053200A (zh) | 信息处理设备、信息存储媒体、内容管理系统、数据处理方法、以及计算机程序 | |
CN1808526A (zh) | 数据变换装置和数据变换方法 | |
CN1855112A (zh) | 内容信息提供服务器、系统和方法及内容再现设备和方法 | |
CN1286457A (zh) | 加密方法,加密装置,解密方法和解密装置 | |
CN1241351C (zh) | 信息记录/再生装置和方法 | |
CN1216198A (zh) | 编码方法,解码方法,编码装置以及解码装置 | |
CN1620780A (zh) | 密钥管理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20110928 Termination date: 20160712 |
|
CF01 | Termination of patent right due to non-payment of annual fee |