数据保管装置、数据更新系统和数据处理方法转让专利

申请号 : CN201580076398.X

文献号 : CN107251480B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 森拓海川合丰松田规

申请人 : 三菱电机株式会社

摘要 :

数据保管部(202)在被加密的状态下保管加密数据,保管定义了解密许可用户的用户属性的解密条件,该解密许可用户被许可对加密数据进行解密。失效信息去除部(206)在更新时机到来时,在解密条件中追加了记述有已不是解密许可用户的失效用户的用户属性的失效信息的情况下,在加密数据被加密的状态下,从解密条件中去除失效信息。进而,失效信息去除部(206)向进行代理重加密方式的重加密的重加密装置发送加密数据和去除失效信息后的解密条件,从重加密装置接收使用去除失效信息后的解密条件通过代理重加密方式重加密后的加密数据。刷新处理部(205)对重加密后的加密数据和去除失效信息后的解密条件进行更新。

权利要求 :

1.一种数据保管装置,其中,所述数据保管装置具有:

数据保管部,其在被加密的状态下保管加密后的加密数据,保管定义了解密许可用户的用户属性的解密条件,该解密许可用户被许可对所述加密数据进行解密;

失效信息去除部,其在对所述加密数据和所述解密条件进行更新的更新时机到来时,在所述解密条件中追加了记述有已不是所述解密许可用户的失效用户的用户属性的失效信息的情况下,在所述加密数据被加密的状态下,从所述解密条件中去除所述失效信息,向进行代理重加密方式的重加密的重加密装置发送所述加密数据和去除所述失效信息后的所述解密条件,从所述重加密装置接收使用去除所述失效信息后的所述解密条件通过所述代理重加密方式重加密后的所述加密数据;以及刷新处理部,其对主公开密钥和主秘密密钥进行更新,对解密密钥进行更新,对由所述失效信息去除部接收到的重加密后的所述加密数据和去除所述失效信息后的所述解密条件进行更新,其中,所述主公开密钥是在针对所述加密数据的加密中使用的加密密钥的主密钥,所述主秘密密钥是在所述加密数据的解密中使用的解密密钥的主密钥。

2.根据权利要求1所述的数据保管装置,其中,

所述刷新处理部使用在主公开密钥和主秘密密钥的更新以及所述解密密钥的更新中使用的更新信息,对由所述失效信息去除部接收到的重加密后的所述加密数据和去除所述失效信息后的所述解密条件进行更新,其中,所述主公开密钥是在针对所述加密数据的加密中使用的加密密钥的主密钥,所述主秘密密钥是在所述加密数据的解密中使用的解密密钥的主密钥。

3.根据权利要求2所述的数据保管装置,其中,

所述刷新处理部使用对所述主公开密钥和所述主秘密密钥进行更新的密钥生成装置为了对所述主公开密钥和所述主秘密密钥进行更新而生成的更新信息,对由所述失效信息去除部接收到的重加密后的所述加密数据和去除所述失效信息后的所述解密条件进行更新。

4.一种数据更新系统,其中,所述数据更新系统具有数据保管装置和密钥更新装置,所述数据保管装置具有:数据保管部,其在被加密的状态下保管加密后的加密数据,保管定义了解密许可用户的用户属性的解密条件,该解密许可用户被许可对所述加密数据进行解密;

失效信息去除部,其在对所述加密数据和所述解密条件进行更新的更新时机到来时,判断是否在所述解密条件中追加了记述有已不是所述解密许可用户的失效用户的用户属性的失效信息,在所述解密条件中追加了所述失效信息的情况下,在所述加密数据被加密的状态下,从所述解密条件中去除所述失效信息,向进行代理重加密方式的重加密的重加密装置发送所述加密数据和去除所述失效信息后的所述解密条件,从所述重加密装置接收使用去除所述失效信息后的所述解密条件通过所述代理重加密方式重加密后的所述加密数据;以及刷新处理部,其对主公开密钥和主秘密密钥进行更新,对解密密钥进行更新,对由所述失效信息去除部接收到的重加密后的所述加密数据和去除所述失效信息后的所述解密条件进行更新,其中,所述主公开密钥是在针对所述加密数据的加密中使用的加密密钥的主密钥,所述主秘密密钥是在所述加密数据的解密中使用的解密密钥的主密钥,所述密钥更新装置具有解密密钥更新部,该解密密钥更新部在所述更新时机到来时,对在所述加密数据的解密中使用的解密密钥进行更新。

5.根据权利要求4所述的数据更新系统,其中,

在所述数据保管装置中,

所述刷新处理部使用在主公开密钥和主秘密密钥的更新中使用的更新信息,对由所述失效信息去除部接收到的重加密后的所述加密数据和去除所述失效信息后的所述解密条件进行更新,其中,所述主公开密钥是在针对所述加密数据的加密中使用的加密密钥的主密钥,所述主秘密密钥是所述解密密钥的主密钥,在所述密钥更新装置中,

所述解密密钥更新部使用所述更新信息对所述解密密钥进行更新。

6.根据权利要求5所述的数据更新系统,其中,

所述密钥更新装置还具有:

更新信息取得部,其从生成所述更新信息并使用所述更新信息对所述主公开密钥和所述主秘密密钥进行更新的密钥生成装置接收所述更新信息;以及更新受理部,其向所述数据保管装置发送由所述更新信息取得部接收到的所述更新信息,所述解密密钥更新部使用由所述更新信息取得部接收到的所述更新信息对所述解密密钥进行更新,在所述数据保管装置中,

所述刷新处理部从所述密钥更新装置的所述更新受理部接收所述更新信息,使用接收到的所述更新信息,对由所述失效信息去除部接收到的重加密后的所述加密数据和去除所述失效信息后的所述解密条件进行更新。

7.根据权利要求4所述的数据更新系统,其中,

所述密钥更新装置还具有更新对象判定部,该更新对象判定部判定是否将解密密钥作为所述解密密钥更新部的更新对象,所述解密密钥更新部仅对由所述更新对象判定部判定为更新对象的解密密钥进行更新。

8.根据权利要求5所述的数据更新系统,其中,

在所述密钥更新装置中,

所述解密密钥更新部根据最后更新解密密钥的日期时间,选择在所述解密密钥的更新中使用的更新信息,使用选择出的更新信息对所述解密密钥进行更新。

9.一种数据处理方法,其中,

计算机在被加密的状态下保管加密后的加密数据,保管定义了解密许可用户的用户属性的解密条件,该解密许可用户被许可对所述加密数据进行解密,该计算机在对所述加密数据和所述解密条件进行更新的更新时机到来时,在所述解密条件中追加了记述有已不是所述解密许可用户的失效用户的用户属性的失效信息的情况下,在所述加密数据被加密的状态下,从所述解密条件中去除所述失效信息,向进行代理重加密方式的重加密的重加密装置发送所述加密数据和去除所述失效信息后的所述解密条件,从所述重加密装置接收使用去除所述失效信息后的所述解密条件通过所述代理重加密方式重加密后的所述加密数据,该计算机对主公开密钥和主秘密密钥进行更新,对解密密钥进行更新,对接收到的重加密后的所述加密数据和去除所述失效信息后的所述解密条件进行更新,其中,所述主公开密钥是在针对所述加密数据的加密中使用的加密密钥的主密钥,所述主秘密密钥是在所述加密数据的解密中使用的解密密钥的主密钥。

说明书 :

数据保管装置、数据更新系统和数据处理方法

技术领域

[0001] 本发明涉及对加密数据进行管理的技术。

背景技术

[0002] 近年来,在互联网上的文件服务器中保管电子数据(以下简称作数据),各种设备(例如笔记本PC(Personal Computer:个人计算机)、平板终端、智能手机)访问文件服务器来利用数据的利用方法已经普及。
[0003] 这种数据的利用方法的便利性较高,另一方面,存在被非意图的互联网上的第三者阅览数据的风险。
[0004] 因此,关于机密数据,必须运用加密或访问控制这样的信息安全技术。
[0005] 在长期运用文件加密系统的情况下,存在持续使用相同的加密密钥(在公开密钥加密的情况下为公开密钥/秘密密钥对)而使加密强度降低(危险化)的问题。
[0006] 针对该危险化的问题,定期地再次生成加密密钥而对加密数据进行重加密来应对的例子较多。
[0007] 例如,在PKI(Public Key Infrastructure:公钥基础设施)的情况下,对公开密钥证书设置有效期限,在有效期限到达之前再次生成密钥,对公开密钥证书进行更新。
[0008] 在文件加密系统中,同样,为了防止由于长期使用相同的加密密钥而使加密强度降低,需要进行定期更新加密密钥的作业(将定期的加密密钥的更新称作主密钥更新)。
[0009] 主密钥更新的方法存在若干种,例如在RSA(注册商标)加密的情况下,重新生成全部密钥对,对全部加密数据进行重加密。
[0010] 在该方法中,暂时对加密数据进行解密,因此,安全性存在问题,并且,保管着的全部加密数据的解密和重加密处理需要非常多的时间,并且,处理成本非常大。
[0011] 在基于ID(Identifier)的加密的情况下,重新生成主密钥,对全部加密数据进行重加密。
[0012] 在基于ID的加密的情况下,为了防止加密数据的内容泄露,需要在加密数据被加密的状态下实施重加密。
[0013] 作为同时实现复杂的访问控制和加密双方的加密技术,存在专利文献1记载的被称作函数型加密方式的加密技术。
[0014] 函数型加密方式是公开密钥加密方式的一种。
[0015] 函数型加密方式是如下的加密方式:与当前主流使用的RSA(注册商标)加密不同,当规定的关系在数据的加密时设定的参数(以后称作解密条件)和解密密钥中设定的参数(以后称作属性信息)之间成立的情况下,能够利用解密密钥对加密后的数据进行解密而对数据进行复原。
[0016] 例如,在数据的加密时设定“部=总务部AND课=人事课”这样的逻辑式作为解密条件,在解密密钥中设定“部=总务部,课=经理课”作为表示解密密钥的所有者的属性信息。
[0017] 然后,仅在加密时设定的解密条件和解密密钥中设定的属性信息的关系为“真”的情况下,能够对加密数据进行解密。
[0018] 另外,下面,将加密数据和解密条件一起称作加密文件。
[0019] 作为在利用函数型加密方式加密后的加密文件被加密的状态下对解密条件进行变更的方法,存在非专利文献1记载的方法。
[0020] 非专利文献1记载的方式被称作代理重加密方式。
[0021] 在代理重加密方式中,通过使用被称作重加密密钥的重加密用的密钥,不用对加密文件进行解密,就能够进行解密条件的变更。
[0022] 但是,非专利文献1记载的方式的效率较差,现实中只能进行一次~数次程度的重加密。
[0023] 因此,在非专利文献2的方式中,与非专利文献1的方式相比实现了高效化,消除了实用上的重加密次数的限制。
[0024] 现有技术文献
[0025] 专利文献
[0026] 专利文献1:国际公开WO2011/135895号
[0027] 非专利文献
[0028] 非专利文献1:Y.Kawai、K.Takashima著、“Fully-Anonymous Functional Proxy-Re-Encryption”、ePrint 2013
[0029] 非专利文献2:川合豊、高島克幸、「複数回再暗号化が可能な効率的関数型代理人再暗号化の構成に向けて」、SCIS2014

发明内容

[0030] 发明要解决的课题
[0031] 作为企业组织中的文件加密系统抱有的课题,存在长期使用引起的加密密钥的强度降低(危险化)和密钥的泄漏这样的课题。
[0032] 在单纯的应对方法中,存在如下方法:再次生成加密密钥,暂时对加密文件进行解密,利用再次生成的加密密钥对加密文件进行重加密。
[0033] 但是,在对加密文件进行解密时,产生信息漏洩的风险,因此,需要在对加密文件加密后的状态下进行重加密。
[0034] 并且,在使用函数型加密加密后的加密文件中,有时对解密条件赋予失效信息“AND NOT[ID信息]”。
[0035] 在再次生成加密密钥的情况下,不会再次生成失效的用户的加密密钥,因此,不需要失效信息。
[0036] 因此,当在赋予了失效信息的状态下针对对解密条件赋予了失效信息的加密文件进行重加密时,对解密时不需要的解密条件实施运算,因此,加密性能降低。
[0037] 本发明鉴于这种情况,主要目的在于,得到避免对加密数据进行重加密时的加密性能降低的结构。
[0038] 用于解决课题的手段
[0039] 本发明的数据保管装置具有:数据保管部,其在被加密的状态下保管加密后的加密数据,保管定义了解密许可用户的用户属性的解密条件,该解密许可用户被许可对所述加密数据进行解密;失效信息去除部,其在对所述加密数据和所述解密条件进行更新的更新时机到来时,在所述解密条件中追加了记述有已不是所述解密许可用户的失效用户的用户属性的失效信息的情况下,在所述加密数据被加密的状态下,从所述解密条件中去除所述失效信息,向进行代理重加密方式的重加密的重加密装置发送所述加密数据和去除所述失效信息后的所述解密条件,从所述重加密装置接收使用去除所述失效信息后的所述解密条件通过所述代理重加密方式重加密后的所述加密数据;以及刷新处理部,其对由所述失效信息去除部接收到的重加密后的所述加密数据和去除所述失效信息后的所述解密条件进行更新。
[0040] 发明效果
[0041] 在本发明中,在加密数据被加密的状态下从解密条件中去除失效信息,使用去除失效信息后的解密条件对加密数据进行重加密。
[0042] 因此,根据本发明,能够避免加密性能降低。

附图说明

[0043] 图1是示出实施方式1的文件加密系统的结构例的图。
[0044] 图2是示出实施方式1的用户终端装置的功能模块的结构例的图。
[0045] 图3是示出实施方式1的加密文件的头部和数据部的图。
[0046] 图4是示出实施方式1的数据保管装置的功能模块的结构例的图。
[0047] 图5是示出实施方式1的密钥生成装置的功能模块的结构例的图。
[0048] 图6是示出实施方式1的密钥生成装置的功能模块的结构例和用户信息管理装置的功能模块的结构例的图。
[0049] 图7是示出实施方式1的密钥生成装置的功能模块的结构例的图。
[0050] 图8是示出实施方式1的密钥生成装置的功能模块的结构例的图。
[0051] 图9是示出实施方式1的更新信息的例子的图。
[0052] 图10是示出实施方式1的更新信息取得请求的例子的图。
[0053] 图11是示出实施方式1的重加密装置的功能模块的结构例的图。
[0054] 图12是示出实施方式1的重加密请求的例子的图。
[0055] 图13是示出实施方式1的密钥更新装置的功能模块的结构例的图。
[0056] 图14是示出实施方式1的用户属性的属性类型和属性值的例子的图。
[0057] 图15是示出实施方式1的用户的一览的例子的图。
[0058] 图16是示出实施方式1的公开参数的发布处理的例子的流程图。
[0059] 图17是示出实施方式1的解密密钥的发布处理的例子的流程图。
[0060] 图18是示出实施方式1的用户信息终端装置中保管的信息的例子的图。
[0061] 图19是示出实施方式1的加密处理的例子的流程图。
[0062] 图20是示出实施方式1的解密处理的例子的流程图。
[0063] 图21是示出实施方式1的刷新设定处理的例子的流程图。
[0064] 图22是示出实施方式1的刷新处理的例子的流程图。
[0065] 图23是示出实施方式2的密钥更新装置的功能模块的结构例的图。
[0066] 图24是示出实施方式2的解密密钥的更新处理的例子的流程图。
[0067] 图25是示出实施方式3的密钥更新装置的功能模块的结构例的图。
[0068] 图26是示出实施方式3的解密密钥的例子的图。
[0069] 图27是示出实施方式3的解密密钥的延迟更新处理的例子的流程图。
[0070] 图28是示出实施方式1~3的数据保管装置的硬件结构例的图。

具体实施方式

[0071] 实施方式1
[0072] 在本实施方式和以后的实施方式中,对利用函数型加密方式的文件加密系统进行说明。
[0073] 在本实施方式和以后的实施方式的文件加密系统中,活用函数型加密方式的特性,在将加密数据加密后的状态下从解密条件中去除NOT条件(失效信息),对加密数据和去除失效信息后的解密条件进行重加密,进行主密钥更新。
[0074] 这里,在对本实施方式进行详细说明之前,对失效信息的追加和失效信息的去除进行概略说明。
[0075] 在专利文献1的基于冈本-高岛加密的函数型加密的情况下,在对偶配对向量空间上,利用多个基向量表现主密钥。
[0076] 利用该性质,通过针对基向量运算随机矩阵,能够实施与生成新的主密钥相同的转换。
[0077] 并且,基向量的转换还能够应用于用户秘密密钥和密文,能够在加密的状态下实现主密钥、用户秘密密钥、密文的更新。
[0078] 在函数型加密中,如上所述,在解密条件中定义了被许可对加密数据进行解密的用户(解密许可用户)的用户属性。
[0079] 在由于人事调动等而使某个用户已不是解密许可用户的情况下,在解密信息中追加记述有已不是解密许可用户的用户(失效用户)的用户属性的失效信息,将失效用户从解密条件中排外。
[0080] 具体而言,对解密条件赋予失效信息“AND NOT[ID信息]”,将由[ID信息]确定的失效用户从解密条件中排外。
[0081] 例如,在属于“总务部,总务课”的小A调动到“经理部,经理课”的情况下,在“总务部AND总务课”这样的解密条件中追加“AND NOT A”这样的失效信息,成为“总务部AND总务课AND NOT A”这样的解密条件。
[0082] 该处理假设小A在调动后仍具有“总务部,总务课”的解密密钥的情况。
[0083] 在解密条件中追加将小A排外的失效信息,因此,即使小A使用自身具有的“总务部,总务课”的解密密钥,也无法对加密数据进行解密。
[0084] 进行主密钥更新后,“总务部,总务课”的小A的旧的解密密钥被无效化,因此,解密条件不是“总务部AND总务课AND NOT A”,而是“总务部AND总务课”即可。
[0085] 因此,在本实施方式中,暂时从“总务部AND总务课AND NOT A”的解密条件中去除失效信息“AND NOT A”而成为“总务部AND总务课”后,通过代理重加密方式对加密数据进行重加密,进行主密钥更新。
[0086] 这样,在本实施方式中,通过从解密条件中去除不需要的失效信息,防止加密性能降低。
[0087] 另外,将在解密条件中追加失效信息的处理称作失效处理,将从解密条件中去除失效信息的处理称作失效信息去除处理。
[0088] 下面,对本实施方式进行详细说明。
[0089] 在本实施方式中,说明在客户端服务器模型中客户端(用户终端装置)对数据进行加密的方法。
[0090] 并且,在本实施方式中,说明在数据保管装置中保存加密数据和解密条件的方法。
[0091] 并且,说明对所保存的加密数据进行解密的方法。
[0092] 进而,说明用于应对长期使用引起的加密密钥的危险化的主密钥的更新方法。
[0093] ***结构的说明***
[0094] <文件加密系统1的结构和功能>
[0095] 图1示出本实施方式的文件加密系统1的结构例。
[0096] 如图1所示,在文件加密系统1中,一个以上的用户终端装置10经由网络30而与数据保管装置20连接。
[0097] 并且,密钥生成装置40和用户信息管理装置50连接。
[0098] 进而,重加密装置60与数据保管装置20和密钥生成装置40连接。
[0099] 密钥生成装置40仅在发布密钥时等必要情况下与用户终端装置10连接。
[0100] 用户终端装置10是具有通信功能的客户端装置。
[0101] 用户终端装置10例如是台式PC、笔记本PC、智能手机、平板终端等。
[0102] 数据保管装置20例如是文件服务器装置。
[0103] 数据保管装置20可以由多台计算机构成。
[0104] 另外,数据保管装置20也可以是所谓的互联网上的云存储器。
[0105] 但是,数据保管装置20需要具有能够实现作为文件存储器的功能和以下说明的功能的可靠性。
[0106] 网络30例如是由互联网、专用线路构筑的网络。
[0107] 密钥生成装置40是对加密密钥进行管理的服务器装置。
[0108] 密钥生成装置40可以由控制访问的多台计算机构成。
[0109] 密钥生成装置40的内部保管的加密密钥类通过加密或访问控制,全部秘密地进行管理。
[0110] 用户信息管理装置50例如是LDAP(LIGHTWEIGHT Directory Access Protocol)或Microsoft(注册商标)公司的AD(Active Directory(注册商标))那样对组织信息进行管理的目录服务器即可。
[0111] 重加密装置60是使用从密钥生成装置40发行的重加密密钥对数据保管装置20中保管的加密数据进行重加密的服务器装置。
[0112] 重加密装置60可以由多台计算机构成。
[0113] 密钥更新装置70对向用户终端装置10发布的后述解密密钥进行更新。
[0114] 另外,将数据保管装置20和密钥更新装置70一起称作数据更新系统80。
[0115] 图2示出用户终端装置10的功能模块的结构例。
[0116] 数据1001是作为使用文件加密系统1进行加密并保管的对象的电子数据(明文数据)。
[0117] 数据1001例如是文本数据、音频数据、动态图像数据。
[0118] 解密条件1002是表示哪个用户终端装置10的用户能够阅览数据1001的信息。
[0119] 即,解密条件1002是定义了被许可对加密数据进行解密的解密许可用户的用户属性的信息。
[0120] 解密条件1002利用逻辑式的形式来表现。
[0121] 解密条件1002例如如“部=经理部AND课=预算课”那样,利用[属性类型]=[属性值]、连接它们的操作符、表示逻辑式的评价优先级的“()”的组合来表现。
[0122] 在操作符中,例如存在表示逻辑与的“AND”、表示逻辑或的“OR”、表示否定的“NOT”等。
[0123] 公开参数1003是在文件加密系统1内仅存在一个的公开密钥加密的公开密钥(加密密钥)。
[0124] 在本实施方式中,作为公开密钥加密,使用能够通过逻辑式(也称作谓语)来指定可解密者的加密(例如函数型加密)。
[0125] 公开参数1003不是应该隐匿的信息,因此,可以保存在任意场所(例如可以是构成文件加密系统1的PC内、外部存储器、互联网上的服务器等)。
[0126] 加密文件1004由使用公开参数1003和解密条件1002以函数型加密的方式加密后的数据1001以及解密条件1002构成。
[0127] 如图3所示,加密文件1004由头部1004a和数据部1004b构成。
[0128] 在头部1004a中存储有加密时指定的解密条件1002。在数据部1004b中存储有加密后的数据1001即加密数据1021。
[0129] 解密密钥1005是用于对加密文件1004进行解密的解密密钥。
[0130] 解密密钥1005与解密许可用户相对应。
[0131] 在解密密钥1005中嵌入有解密许可用户的属性信息(例如如“ID=1001,部=经理部,课=预算课”那样以列举[属性类型]=[属性值]的形式来表现)。
[0132] 而且,如果是具有符合在加密文件1004的加密时指定的解密条件1002的属性信息的解密密钥1005,则能够进行加密文件1004的解密。
[0133] 文件输入部101接收数据1001和解密条件1002。
[0134] 文件输入部101将接收到的数据1001和解密条件1002转送到加密部102。
[0135] 加密部102将数据1001、解密条件1002、公开参数1003作为输入,将解密条件1002作为参数,通过公开参数1003,以函数型加密的方式对数据1001进行加密。
[0136] 密钥保管部103保管与用户终端装置10相对应的解密密钥1005和公开参数1003。
[0137] 加密数据发送部104向数据保管装置20发送加密文件1004。
[0138] 加密数据接收部105从数据保管装置20接收加密文件1004,将接收到的加密文件1004转送到解密部106。
[0139] 解密部106从密钥保管部103取出解密密钥1005,使用所取出的解密密钥1005对加密文件1004进行解密,由此,将加密数据1021返回到数据1001。
[0140] 图4示出数据保管装置20的功能模块的结构例。
[0141] 加密数据接收部201从用户终端装置10接收加密文件1004(加密数据1021和解密条件1002),将其保管在数据保管部202中。
[0142] 数据保管部202保管一个以上的加密文件1004。
[0143] 数据保管部202在被加密的状态下保管由加密数据接收部201接收到的加密数据1021。
[0144] 加密数据发送部203将数据保管部202中保管的加密文件1004转送到用户终端装置10。
[0145] 刷新设定信息2002是指定由刷新处理部205实施的刷新处理的间隔的信息。
[0146] 另外,刷新处理容后再述。
[0147] 刷新设定输入部204接收用户输入的刷新设定信息2002,将其转送到刷新处理部205。
[0148] 刷新处理部205以由刷新设定信息2002指定的间隔定期执行刷新处理。
[0149] 作为刷新处理,刷新处理部205取出数据保管部202中保管的全部加密文件1004,通过后述失效信息去除部206从解密条件中删除失效信息,在使用非专利文献2公开的代理重加密方式对加密文件1004重加密后,进行重加密后的加密文件1004的更新处理。
[0150] 失效信息去除部206去除通过失效处理对加密文件1004的解密条件赋予的失效信息“AND NOT[ID信息]”。
[0151] 即,失效信息去除部206在加密文件1004的解密条件1002中追加了失效信息的情况下,在加密数据1021被加密的状态下,从解密条件1002中去除失效信息。
[0152] 进而,失效信息去除部206向重加密装置60发送加密数据1021和去除失效信息后的解密条件1002。
[0153] 重加密装置60使用去除失效信息后的解密条件1002,通过代理重加密方式进行加密数据1021的重加密。
[0154] 失效信息去除部206从重加密装置60接收通过代理重加密方式重加密后的加密数据1021。
[0155] 图5~图8示出密钥生成装置40和用户信息管理装置50的功能模块的结构例。
[0156] 另外,在图5~图8中,按照每个处理划分图示密钥生成装置40的功能模块结构。
[0157] 如图5~图8所示,密钥生成装置40由主密钥生成部401、主密钥保管部402、公开参数发行部403、用户认证部404、用户属性取得部405、解密密钥生成部406和重加密密钥生成部407、更新信息生成部408、更新信息保管部409、更新信息取得部410、主密钥更新处理部411构成。
[0158] (图5的说明):主密钥生成相关功能
[0159] 在密钥生成装置40中预先生成并保持主公开密钥4001和主秘密密钥4002。
[0160] 主公开密钥4001是在从数据1001到加密数据1021的加密中使用的公开参数1003(加密密钥)的主密钥。
[0161] 主秘密密钥4002是在加密数据1021的解密中使用的解密密钥1005的主密钥。
[0162] 通常,针对文件加密系统1仅生成一组主公开密钥4001和主秘密密钥4002。
[0163] 主公开密钥4001是公开信息,但是,主秘密密钥4002能够生成全部解密密钥1005,因此,需要在密钥生成装置40内以某种方法秘密地进行保管。
[0164] 公开参数取得请求4003是为了取得公开参数1003而发行的请求数据。
[0165] 例如,在用户终端装置10取得公开参数1003的情况下,如果在用户终端装置10与密钥生成装置40之间的通信中使用HTTP(Hypertext Transfer Protocol),则公开参数取得请求4003成为公开参数取得URL(Uniform Resource Locator)。
[0166] 主密钥生成部401生成主公开密钥4001和主秘密密钥4002的对(以后称作主密钥对)。
[0167] 主密钥保管部402保管主密钥生成部401生成的主密钥对。
[0168] 公开参数发行部403通过对主公开密钥4001实施密钥生成装置40的电子签名,生成公开参数1003。
[0169] 公开参数1003是公开信息,因此,能够使用WEB公开、邮件发送、数据记录介质发送等手段进行配送。
[0170] (图6的说明):解密密钥生成相关功能
[0171] 用户ID4004是能够唯一识别用户的信息(例如员工编号、邮件地址)。
[0172] 用户认证部404认证从用户终端装置10接收到的用户ID4004。
[0173] 用户认证部404例如可以进行使用电子证书的认证,也可以进行使用密码的认证。
[0174] 用户属性4005是表现与解密密钥1005相对应的用户的属性的信息。
[0175] 例如如果是企业,则利用部、课、姓名、员工ID等来表现。
[0176] 表现形式与解密条件1002同样是列举[属性类型]=[属性值]的形式,例如是“部=总务部,课=人事课,职务=部长”。
[0177] 用户属性取得部405将用户ID4004作为关键字,从用户信息管理装置50取得用户属性4005。
[0178] 解密密钥生成部406使用主秘密密钥4002和用户属性4005生成解密密钥1005。
[0179] (图7的说明):重加密密钥生成相关功能
[0180] 重加密条件4006是对加密文件1004进行重加密时指定的新的解密条件。
[0181] 重加密密钥4007是对加密文件1004进行重加密时使用的密钥。
[0182] 重加密密钥生成部407将用户属性4005和重加密条件4006作为输入,生成重加密密钥4007,向重加密装置60发送重加密密钥4007。
[0183] (图8的说明):更新信息生成相关功能
[0184] 更新信息4008是在主公开密钥4001、主秘密密钥4002、解密密钥1005、加密文件1004的更新中使用的信息。
[0185] 如图9所示,更新信息4008包含更新日期时间4008a和更新信息数据4008b。
[0186] 更新信息数据4008b是如下的转换信息:对构成函数型加密的加密密钥和加密数据的结构要素进行转换,得到与再次生成加密密钥和加密数据相同的效果。
[0187] 如图10所示,更新信息取得请求4009包含命令信息4009a和日期时间信息4009b。
[0188] 命令信息4009a包含是“新生成”更新信息4008还是从更新信息保管部409中“检索”更新信息4008的信息。
[0189] 在“新生成”的情况下,日期时间信息4009b是新生成的更新信息4008的更新日期时间4008a中设定的日期的信息。
[0190] 在“检索”的情况下,日期时间信息4009b是作为用于从更新信息保管部409中检索过去的更新信息4008的关键字的信息。
[0191] 主密钥标识符4010是密钥生成装置40中保管的主密钥对(主公开密钥4001、主秘密密钥4002)的标识符。
[0192] 主密钥标识符4010例如是ID、哈希值、电子证书等。
[0193] 更新信息生成部408生成更新信息4008。
[0194] 更新信息保管部409保管更新信息生成部408生成的更新信息4008。
[0195] 更新信息取得部410根据来自密钥更新装置70的更新信息取得请求4009的命令信息4009a,在“新生成”的情况下,使用更新信息生成部408新生成更新信息4008。
[0196] 并且,在“检索”的情况下,更新信息取得部410从更新信息保管部409中检索/取得由更新信息取得请求4009的日期时间信息4009b指定的日期时间以前的更新信息4008。
[0197] 并且,更新信息取得部410将生成的更新信息4008或取得的更新信息4008返还到密钥更新装置70。
[0198] 主密钥更新处理部411从密钥更新装置70接收更新信息4008和主密钥标识符4010。
[0199] 并且,主密钥更新处理部411从主密钥保管部402取出由主密钥标识符4010确定的主密钥对,使用更新信息4008对取出的主密钥对进行更新。
[0200] 并且,主密钥更新处理部411将更新后的主密钥对再次存储在主密钥保管部402中。
[0201] 用户信息管理装置50例如是如目录服务器那样用于对组织信息进行管理的装置(图6)。
[0202] 属性信息保管部501保管组织和属于组织的人的属性信息(例如姓名、年龄、性别、部、课、职务等)。
[0203] 组织的属性信息由组织进行管理,预先保管全部用户的用户属性4005。
[0204] 用户属性检索部502将用户ID4004作为关键字,从属性信息保管部501取得用户属性4005。
[0205] 图11示出重加密装置60的功能模块的结构例。
[0206] 如图12所示,在重加密请求6001中存储有用户属性4005、重加密条件4006、加密文件1004。
[0207] 重加密密钥取得部601对密钥生成装置40发送用户属性4005和重加密条件4006,从密钥生成装置40取得重加密密钥4007。
[0208] 重加密部602从数据保管装置20接收重加密请求6001,使用重加密密钥取得部601取得重加密密钥4007。
[0209] 并且,重加密部602对重加密请求6001中包含的加密文件1004进行重加密,将其返还到数据保管装置20。
[0210] 图13示出密钥更新装置70的功能模块的结构例。
[0211] 更新信息取得部701对密钥生成装置40发送更新信息取得请求4009,从密钥生成装置40取得更新信息4008。
[0212] 主密钥更新部702向密钥生成装置40发送从更新信息取得部701取得的更新信息4008和主密钥标识符4010,使密钥生成装置40更新主公开密钥4001和主秘密密钥4002。
[0213] 解密密钥更新部703从用户终端装置10接收解密密钥1005,使用更新信息4008对解密密钥1005进行更新。
[0214] 日期时间信息7001是表示日期时间的信息,是用于确定更新信息4008的信息。
[0215] 更新受理部704根据从数据保管装置20接收到的日期时间信息7001,将相应的最新的更新信息4008返还到数据保管装置20。
[0216] 另外,关于使用更新信息4008更新加密文件1004,与由数据保管装置20实施相比,在密钥更新装置70内实施的安全性更高。
[0217] 这是因为,更新信息4008与更新前的主秘密密钥4002一起时,具有与更新后的新的主秘密密钥4002相同的作用。
[0218] 因此,优选更新信息4008不会在密钥更新装置70的外部。
[0219] 另一方面,主秘密密钥秘密地留在密钥生成装置40内,因此,即使向数据保管装置20发送更新信息4008,更新信息4008和主秘密密钥4002在一起的可能性也极小。
[0220] 因此,在本实施方式中,认为能够利用数据保管装置20单体对加密文件1004进行更新的优点(数据保管装置20能够决定加密文件的更新时机的优点)较大,向数据保管装置20发送更新信息4008,在数据保管装置20中更新加密文件1004。
[0221] ***动作的说明***
[0222] 接着,对本实施方式的文件加密系统1的动作进行说明。
[0223] 图14是在本实施方式中假设的用户属性4005的表现中使用的属性类型和属性值的一览。
[0224] 用户属性4005利用[属性类型]=[属性值]的形式来表现,例如如“部=经理部,课=预算课”那样能够具有多个属性。
[0225] 图15是在本实施方式中假设的用户的一览。
[0226] 分别对各用户分配用户属性。
[0227] 在不存在相应属性的情况下,NULL符号成为属性值。
[0228] 图15中例示的信息预先保管在用户信息管理装置50中。
[0229] <公开参数、解密密钥的发布>
[0230] 示出向用户终端装置发布公开参数1003和解密密钥1005的方法的一例。
[0231] 可以在导入文件加密系统1时的初始设定时进行公开参数1003和解密密钥1005的生成和发布。
[0232] 并且,也可以在加密处理、解密处理中,在需要公开参数1003、解密密钥1005时进行公开参数1003和解密密钥1005的生成和发布。
[0233] 在文件加密系统1中,利用函数型加密方式。
[0234] 在函数型加密方式中,首先,主密钥生成部401(图5)生成主密钥对。
[0235] 主密钥对按照每个文件加密系统1准备一对即可,但是,主密钥生成部401也可以生成多个文件加密系统1的主密钥对。
[0236] 此时,将哪个文件加密系统1对应于哪个主密钥对关联起来。
[0237] 接着,解密密钥生成部406(图6)根据用户属性4005和主秘密密钥4002生成解密密钥1005(在函数型加密中将其称作用户秘密密钥)。
[0238] 图16是说明公开参数1003的发布处理的流程图。
[0239] 图16所示的步骤对应于图5。
[0240] 首先,在步骤S101中,用户终端装置10对密钥生成装置40的公开参数发行部403发送公开参数取得请求4003。
[0241] 接着,在步骤S102中,密钥生成装置40的公开参数发行部403接收公开参数取得请求4003。
[0242] 进而,公开参数发行部403从主密钥保管部402取出与从用户终端装置10接收到的公开参数取得请求4003对应的主公开密钥4001。
[0243] 并且,在步骤S103中,公开参数发行部403对主公开密钥4001实施电子签名,生成公开参数1003,将公开参数1003返还到用户终端装置10。
[0244] 例如,在使用HTTP的情况下,这一连串动作成为如下动作:从用户终端装置10访问公开参数取得URL时,公开参数1003被下载到用户终端装置10。
[0245] 图17是说明解密密钥1005的发布处理的流程图。
[0246] 图17所示的步骤对应于图6。
[0247] 首先,在步骤S201中,密钥生成装置40的用户认证部404进行用户的认证。
[0248] 具体而言,最初,用户终端装置10对密钥生成装置40发送用户ID4004。
[0249] 接着,密钥生成装置40的用户认证部404接收用户ID4004。
[0250] 接着,用户认证部404确认发送来用户ID4004的用户是否是本人。
[0251] 关于确认的方法,例如可以使用电子证书,也可以使用密码。
[0252] 用户认证部404在用户ID4004的认证成功后,将用户ID4004转送到用户属性取得部405。
[0253] 接着,在步骤S202中,密钥生成装置40的用户属性取得部405取得用户属性。
[0254] 具体而言,密钥生成装置40的用户属性取得部405向用户信息管理装置50的用户属性检索部502发送用户ID4004。
[0255] 接着,用户属性检索部502将接收到的用户ID4004作为关键字,从属性信息保管部501中检索与用户ID4004对应的用户属性4005。
[0256] 然后,用户属性检索部502将得到的用户属性4005返还到密钥生成装置40的用户属性取得部405。
[0257] 例如,设在用户信息管理装置50中保管有图18所示的信息。
[0258] 在用户信息管理装置50从密钥生成装置40接收到“1003”作为用户ID4004的情况下,用户信息管理装置50的用户属性检索部502将“用户ID=1003、姓名=铃木健一、部=经理部、课=NULL、职务=部长”这样的用户属性4005返还到密钥生成装置40的用户属性取得部405。
[0259] 用户属性取得部405将从用户信息管理装置50取得的用户属性4005转送到解密密钥生成部406。
[0260] 接着,在步骤S203中,密钥生成装置40的解密密钥生成部406根据从用户信息管理装置50取得的用户属性4005和主密钥保管部402中保管的主秘密密钥4002,生成解密密钥1005。
[0261] 最后,在步骤S204中,密钥生成装置40的解密密钥生成部406将生成的解密密钥1005返还到用户终端装置10。
[0262] 另外,这里,示出用户终端装置10从密钥生成装置40取得解密密钥1005的例子,但是,文件加密系统1的管理者也可以使用密钥生成装置40统一生成全部用户的解密密钥1005,发布全部用户的解密密钥1005。
[0263] <加密处理>
[0264] 接着,对本实施方式的数据的加密处理进行说明。
[0265] 图19是说明数据的加密处理的流程图。
[0266] 图19所示的步骤对应于图2。
[0267] 首先,在步骤S301中,用户使用用户终端装置10的文件输入部101指定作为加密对象的数据1001和解密条件1002。
[0268] 关于解密条件1002,例如用户可以利用文本形式进行指定,也可以预先指定。
[0269] 文件输入部101向加密部102转送由用户输入的数据1001和解密条件1002。
[0270] 接着,在步骤S302中,加密部102利用用户指定的解密条件1002对数据1001进行加密。
[0271] 具体而言,加密部102取出密钥保管部103中保管的公开参数1003。
[0272] 并且,加密部102使用解密条件1002和从密钥保管部103取出的公开参数1003进行加密,使得符合解密条件1002的用户能够对数据1001进行解密。
[0273] 进而,加密部102根据对数据1001加密而成的加密数据1021和解密条件1002,生成加密文件1004。
[0274] 然后,加密部102将生成的加密文件1004转送到加密数据发送部104。
[0275] 接着,在步骤S303中,加密数据发送部104向数据保管装置20发送加密文件1004。
[0276] 数据保管装置20利用加密数据接收部201接收加密文件1004。
[0277] 加密数据接收部201将接收到的加密文件1004转送到数据保管部202。
[0278] 数据保管部202保管加密文件1004。
[0279] <解密处理>
[0280] 接着,对本实施方式的文件的解密处理进行说明。
[0281] 图20是说明文件的解密处理的流程图。
[0282] 图20所示的步骤对应于图2。
[0283] 首先,在步骤S401中,用户终端装置10的加密数据接收部105从数据保管装置20取得加密文件1004。
[0284] 具体而言,首先,用户从数据保管装置20下载希望解密的加密文件1004。
[0285] 作为下载加密文件1004的方法,例如可以使用Server Message Block(SMB)或Common Internet File System(CIFS)这样的文件共享协议,也可以使用如Web-based Distributed Authoring and Versioning(WebDAV)那样对HTTP进行扩展的协议。
[0286] 在数据保管装置20中,根据来自用户的请求,加密数据发送部203从数据保管部202取出加密文件1004。
[0287] 然后,加密数据发送部203向用户终端装置10发送加密文件1004。
[0288] 在用户终端装置10中,加密数据接收部105接收加密文件1004,向解密部106转送加密文件1004。
[0289] 接着,在步骤S402中,用户终端装置10的解密部106使用用户的解密密钥对加密文件1004进行解密。
[0290] 具体而言,解密部106取出密钥保管部103中保管的解密密钥1005。
[0291] 然后,解密部106使用取出的解密密钥1005,对从加密数据接收部105接收到的加密文件1004进行解密。
[0292] 在解密密钥1005的用户属性4005符合加密文件1004中设定的解密条件1002的情况下,得到数据1001作为解密结果。
[0293] 在不符合的情况下,解密失败,用户无法得到与数据1001有关的任何信息。
[0294] <刷新处理>
[0295] 接着,对用于应对文件加密系统1的长期使用引起的加密强度降低的刷新处理进行说明。
[0296] 以设定的间隔定期地执行刷新处理。
[0297] 即,每当定期到来的更新时机到来时,进行加密文件的更新。
[0298] (1)刷新设定处理
[0299] 图21是说明用于设定刷新间隔的步骤的流程图。
[0300] 图21所示的步骤对应于图4。
[0301] 首先,在步骤S501中,数据保管装置20的刷新设定输入部204接收刷新设定信息2002。
[0302] 刷新设定输入部204向刷新处理部205转送刷新设定信息2002。
[0303] 刷新设定信息2002由“刷新开始日期时间”、“刷新间隔”构成。
[0304] 例如,在设“刷新开始日期时间”为“2014年1月1日”,“刷新间隔”为“1年”的情况下,从2014年1月1日起每隔1年实施刷新处理。
[0305] 接着,在步骤S502中,刷新处理部205记录刷新设定信息2002的内容。
[0306] 最后,在步骤S503中,刷新处理部205使与接收到的刷新设定信息2002对应的计时器(刷新计时器)开始工作。
[0307] 按照刷新处理部205中保管的每个刷新设定信息准备刷新计时器。
[0308] (2)刷新处理
[0309] 图22是说明刷新处理的步骤的流程图。
[0310] 由在刷新设定处理中设定的刷新计时器定期实施刷新处理。
[0311] 另外,在图22中反映出本申请的数据处理方法和数据处理程序的处理步骤。
[0312] 首先,在步骤S601中,数据保管装置20的刷新处理部205删除加密文件1004的解密条件的失效信息,进行重加密(图4)。
[0313] 具体而言,刷新处理部205取出数据保管部202中保管的加密文件1004中的、在解密条件中追加了失效信息“AND NOT ID=[失效用户的ID]”的部分。
[0314] 然后,刷新处理部205将取出的加密文件1004转送到失效信息去除部206。
[0315] 失效信息去除部206在加密文件1004被加密的状态下,从解密条件1002中去除失效信息(失效信息去除处理)。
[0316] 即,失效信息去除部206从加密文件1004的头部1004a取出解密条件1002,从解密条件1002中去除失效信息“AND NOT ID=[失效用户的ID]”。
[0317] 去除失效信息后的解密条件1002成为重加密条件4006。
[0318] 例如,在解密条件“部=总务部AND课=总务课AND NOT ID=1001”的情况下,“部=总务部AND课=总务课”成为重加密条件4006。
[0319] 接着,失效信息去除部206根据重加密条件4006、加密文件1004、用户属性4005,生成重加密请求6001(图12)。
[0320] 用户属性4005只要是能够对重加密对象的加密文件1004进行解密的属性即可,可以是任意的属性。
[0321] 例如,在解密条件“部=总务部AND课=总务课AND NOT ID=1001”的情况下,设“部=总务部,课=总务课”为用户属性4005。
[0322] 在重加密装置60侧实施该用户属性4005的生成处理的情况下,也可以使重加密请求6001的用户属性4005为空。
[0323] 然后,失效信息去除部206向重加密装置60发送重加密请求6001(图11)。
[0324] 并且,失效信息去除部206从重加密装置60接收通过代理重加密方式(例如非专利文献2)重加密后的加密文件1004(图11)。
[0325] 在失效信息去除部206从重加密装置60接收的重加密后的加密文件1004中,头部1004a包含重加密条件4006,数据部1004b包含重加密后的加密数据1021。
[0326] 例如,在重加密条件4006为“部=总务部AND课=总务课”的情况下,失效信息去除部206接收头部1004a包含“部=总务部AND课=总务课”这样的解密条件1002,数据部1004b包含利用解密条件“部=总务部AND课=总务课”重加密后的加密数据1021的加密文件1004。
[0327] 接收到重加密请求6001时的重加密装置60的动作例如下所述。
[0328] 在重加密装置60中,重加密部602接收重加密请求6001(图11)。
[0329] 然后,重加密部602将重加密请求6001转送到重加密密钥取得部601。
[0330] 重加密密钥取得部601从重加密请求6001中取出重加密条件4006,将重加密条件4006转送到密钥生成装置40(图7)。
[0331] 在密钥生成装置40中,重加密密钥生成部407接收重加密条件4006,生成重加密密钥4007(图7)。
[0332] 然后,重加密密钥生成部407向重加密装置60的重加密密钥取得部601发送重加密密钥4007(图7)。
[0333] 重加密密钥取得部601接收重加密密钥4007,向重加密部602转送重加密密钥4007(图11)。
[0334] 重加密部602使用重加密密钥4007,通过非专利文献2的方式对重加密请求6001中包含的加密文件1004的数据部1004b中包含的加密数据1021进行重加密(图11)。
[0335] 进而,重加密部602将重加密条件4006存储在头部1004a中,将重加密后的加密数据1021存储在数据部1004b中,新生成重加密的加密文件1004(图11)。
[0336] 然后,重加密部602向数据保管装置20发送重加密的加密文件1004(图11)。
[0337] 返回到图22的流程,刷新处理部205在步骤S602~S605中,使用密钥更新装置70对主密钥、解密密钥、全部加密文件进行更新。
[0338] 首先,在步骤S602中,密钥更新装置70和密钥生成装置40生成更新信息。
[0339] 具体而言,刷新处理部205向密钥更新装置70发送开始刷新的日期时间信息7001(图4、图13)。
[0340] 在密钥更新装置70中,更新受理部704接收日期时间信息7001(图13)。
[0341] 接收到日期时间信息7001的更新受理部704检索当前日期时间的更新信息4008是否保管在密钥生成装置40的更新信息保管部409中。
[0342] 具体而言,更新受理部704生成在更新信息取得请求4009的命令信息4009a中设定有“检索”,在日期时间信息4009b中设定有当前日期时间的更新信息取得请求4009。
[0343] 然后,更新受理部704经由更新信息取得部701向更新信息取得部410发送更新信息取得请求4009(图13、图8)。
[0344] 更新信息取得部410从更新信息保管部409中检索更新日期时间4008a符合日期时间信息4009b的更新信息4008,如果存在相应的更新信息4008,则将其返还到密钥更新装置70(图8)。
[0345] 密钥更新装置70的更新受理部704在未发现更新信息4008的情况下,生成在更新信息取得请求4009的命令信息4009a中设定有“新生成”,在日期时间信息4009b中设定有当前日期时间的更新信息取得请求4009。
[0346] 然后,更新受理部704经由更新信息取得部701向更新信息取得部410发送更新信息取得请求4009(图13、图8)。
[0347] 更新信息取得部410使用更新信息生成部408生成更新信息4008,将生成的更新信息4008保管在更新信息保管部409中,将生成的更新信息4008返还到密钥更新装置70的更新信息取得部701(图8)。
[0348] 进而,更新信息取得部701向更新受理部704转送更新信息4008,更新受理部704向数据保管装置20返还更新信息4008(图13)。
[0349] 接着,在步骤S603中,密钥更新装置70对主密钥进行更新。
[0350] 具体而言,密钥更新装置70的主密钥更新部702向密钥生成装置40的主密钥更新处理部411发送在步骤S602中生成的更新信息4008以及确定文件加密系统1当前正在使用的主密钥的信息的主密钥标识符4010(图13、图8)。
[0351] 密钥生成装置40的主密钥更新处理部411接收更新信息4008和主密钥标识符4010。
[0352] 然后,主密钥更新处理部411从主密钥保管部402取出由主密钥标识符4010指定的主密钥对(主公开密钥4001、主秘密密钥4002)(图8)。
[0353] 并且,主密钥更新处理部411使用接收到的更新信息4008的更新信息数据4008b对主密钥对进行更新(图8)。
[0354] 另外,这里,示出密钥更新装置70向密钥生成装置40发送更新信息4008的例子,但是,主密钥更新处理部411也可以从更新信息保管部409取出更新信息4008并对主密钥对进行更新。
[0355] 接着,在步骤S604中,密钥更新装置70的解密密钥更新部703使用在步骤S602中取得的更新信息4008对解密密钥1005进行更新(图13)。
[0356] 另外,解密密钥更新部703也可以预先从用户终端装置10收集作为更新对象的解密密钥1005,还可以在每个用户终端装置10的更新时机按照每个用户终端装置10单独取得解密密钥1005。
[0357] 接着,在步骤S605中,数据保管装置20的刷新处理部205使用在步骤S602中取得的更新信息4008,对数据保管部202中保管的全部加密文件1004进行更新。
[0358] 在步骤S605中更新后的加密文件1004中,还包含在步骤S601中从解密条件1002中去除失效信息并重加密后的加密文件1004。
[0359] 另外,也可以颠倒图22的各步骤的执行顺序。
[0360] 例如,也可以按照S602→S603→S604→S601→S605的顺序来执行。
[0361] 并且,也可以按照S602→S604→S603→S601→S605的顺序来执行。
[0362] 并且,也可以按照S602→S601→S605→S603→S604的顺序来执行。
[0363] 进而,也可以按照S601→S602→S604→S603→S605的顺序来执行。
[0364] 另外,S603的主密钥更新是指通过对当前的主密钥进行使用更新信息4008的数据转换而对主密钥的内容进行变更,与主密钥的再次生成不同。
[0365] 具体而言,主密钥的更新是如下处理:使用更新信息4008b对构成主密钥的结构要素进行转换,设为新的结构要素。
[0366] 通过这样进行更新,能够得到与再次生成主密钥相同的效果。
[0367] 并且,S604的解密密钥的更新是指通过对当前的解密密钥进行使用更新信息4008的数据转换而对解密密钥的内容进行变更,与解密密钥的再次生成不同。
[0368] 同样,S605的加密文件的更新是指通过对当前的加密文件进行使用更新信息4008的数据转换而对加密文件的内容进行变更,与加密文件的再次生成和加密文件的重加密不同。
[0369] 以上是实施方式1的说明。
[0370] ***效果的说明***
[0371] 根据以上步骤,对主密钥和解密密钥进行更新而不用再次生成,进而,实施转换处理使得能够在对加密文件加密后的状态下利用更新后的解密密钥进行解密,由此,具有能够防止加密强度的危险化,安全地长期运用加密文件系统这样的效果。
[0372] 并且,在加密文件被加密的状态下从解密条件中去除失效信息,对包含去除失效信息后的解密条件的加密文件进行重加密,因此,能够避免加密性能降低。
[0373] 实施方式2
[0374] 在实施方式1中,在刷新处理时对全部解密密钥1005进行更新。
[0375] 在本实施方式中,说明在刷新处理时选择要更新的解密密钥1005,仅对选择出的解密密钥1005进行更新的例子。
[0376] 根据本实施方式,在刷新处理后,无法利用未更新的解密密钥1005对一切加密文件1004进行解密。
[0377] 因此,通过有意地不更新解密密钥1005,能够统一实现多个解密密钥1005的失效。
[0378] ***结构的说明***
[0379] 本实施方式的文件加密系统1的结构与实施方式1所示的结构相同。
[0380] 并且,用户终端装置10、数据保管装置20、密钥生成装置40、用户信息管理装置50、重加密装置60的功能模块的结构例与实施方式1所示的结构例相同。
[0381] 在本实施方式中,仅密钥更新装置70的功能模块结构与实施方式1不同。
[0382] 图23示出本实施方式的密钥更新装置70的功能模块的结构例。
[0383] 以后,仅对与实施方式1不同的部分进行说明。
[0384] 更新对象判定部705判定是否将解密密钥1005设为解密密钥更新部703的更新对象。
[0385] 更新对象判定部705从解密密钥更新部703接收解密密钥1005,判定是否许可对接收到的解密密钥1005进行更新,将表示判定结果的信息返还到解密密钥更新部703。
[0386] 解密密钥更新部703仅对由更新对象判定部705判定为更新对象的解密密钥1005进行更新。
[0387] 更新对象判定部705保持判断是否针对全部解密密钥1005许可更新的信息(以后称作更新可否信息)。
[0388] 更新可否信息例如由对解密密钥1005进行管理的管理者(密钥管理者或系统管理者)输入到更新对象判定部705。
[0389] 解密密钥更新部703参照更新可否信息,能够判别泄露到外部的解密密钥或暂时发行的解密密钥等应该无法使用的解密密钥。
[0390] 另外,更新对象判定部705也可以代替更新可否信息而保持记载有不许可更新的解密密钥1005的信息。
[0391] ***动作的说明***
[0392] 接着,对刷新处理时的密钥更新装置70中的解密密钥1005的更新处理的例子进行说明。
[0393] 另外,本实施方式中未说明的处理与实施方式1相同。
[0394] 图24是说明本实施方式的解密密钥1005的更新步骤的流程图。
[0395] 首先,在步骤S701中,解密密钥更新部703接收到解密密钥1005后,将接收到的解密密钥1005转送到更新对象判定部705,询问是否许可对该解密密钥1005进行更新。
[0396] 接着,在步骤S702中,更新对象判定部705参照更新可否信息判定是否许可对询问的解密密钥1005进行更新,将判定结果返还到解密密钥更新部703。
[0397] 在许可对解密密钥1005进行更新的情况下,在步骤S703中,解密密钥更新部703使用更新信息4008对解密密钥1005进行更新。
[0398] 在不许可更新的情况下,结束而不进行任何处理。
[0399] ***效果的说明***
[0400] 根据以上步骤,在刷新处理时判定是否需要更新解密密钥,具有能够使不应该更新的解密密钥统一失效这样的效果。
[0401] 实施方式3
[0402] 在实施方式1中,假设在刷新处理时统一更新解密密钥。
[0403] 但是,在实际的运用环境中,由于用户的调职、长期出差等,在刷新处理时不一定能够更新全部用户的解密密钥。
[0404] 在本实施方式中,说明针对刷新处理时无法更新的解密密钥,此后在解密密钥中应用更新处理的方法。
[0405] ***结构的说明***
[0406] 本实施方式的文件加密系统1的结构与实施方式1所示的结构相同。
[0407] 并且,用户终端装置10、数据保管装置20、密钥生成装置40、用户信息管理装置50、重加密装置60的功能模块的结构例与实施方式1所示的结构例相同。
[0408] 在本实施方式中,仅密钥更新装置70的功能模块结构与实施方式1不同。
[0409] 图25示出本实施方式的密钥更新装置70的功能模块的结构例。
[0410] 以后,仅对与实施方式1不同的功能进行说明。
[0411] 如图26所示,解密密钥1005由更新日期时间1005a和解密密钥数据1005b构成。
[0412] 更新日期时间1005a是最后更新解密密钥1005的日期时间。
[0413] 解密密钥数据1005b是与实施方式1中的解密密钥1005相当的数据。
[0414] 在更新信息保管部706中保管有表示由解密密钥更新部703进行的刷新处理的历史的历史信息。
[0415] 历史信息例如是刷新处理时从数据保管装置20接收到的日期时间信息7001。
[0416] 在本实施方式中,解密密钥更新部703在接收到解密密钥1005时,根据最后更新该解密密钥1005的日期时间,选择在解密密钥1005的更新中使用的更新信息4008,使用选择出的更新信息4008对解密密钥进行更新。
[0417] 更具体而言,解密密钥更新部703根据解密密钥1005的更新日期时间1005a,调查是否存在过去的刷新处理时使用的更新信息4008中的未应用于解密密钥1005的更新信息4008。
[0418] 在不存在未应用于解密密钥1005的更新信息4008的情况下,解密密钥更新部703仅选择最新的更新信息4008,使用最新的更新信息4008对解密密钥1005进行更新。
[0419] 另一方面,在存在未应用于解密密钥1005的过去的更新信息4008的情况下,解密密钥更新部703选择未应用于解密密钥1005的过去的更新信息4008和最新的更新信息4008,使用这些更新信息4008对解密密钥1005进行更新。
[0420] ***动作的说明***
[0421] 接着,对本实施方式的解密密钥1005的更新动作进行说明。
[0422] 另外,本实施方式中未说明的处理与实施方式1相同。
[0423] 图27是说明本实施方式的解密密钥1005的更新步骤的流程图。
[0424] 首先,在步骤S801中,解密密钥更新部703接收解密密钥1005。
[0425] 接着,在步骤S802中,解密密钥更新部703向更新信息保管部706询问是否存在未应用于解密密钥1005的更新信息4008。
[0426] 具体而言,解密密钥更新部703从接收到的解密密钥1005中取出更新日期时间1005a。
[0427] 然后,解密密钥更新部703将取出的更新日期时间1005a转送到更新信息保管部706,向更新信息保管部706询问是否存在未应用于解密密钥1005的更新信息4008。
[0428] 更新信息保管部706在历史信息中记录有更新日期时间1005a以后存在刷新处理(更新处理)的情况下,将更新日期时间(日期时间信息7001)的列表返还到解密密钥更新部703。
[0429] 解密密钥更新部703从更新信息保管部706接收更新日期时间的列表,在更新日期时间的列表不是空的情况下(S802:是),使用更新信息取得部701,按照更新日期时间从老到新的顺序取得与列表内的更新日期时间对应的更新信息4008。
[0430] 然后,解密密钥更新部703按照更新日期时间从老到新的顺序应用取得的更新信息4008,依次更新解密密钥1005(S803)。
[0431] 然后,在不存在未应用于解密密钥1005的更新信息4008的情况下(S802:否),解密密钥更新部703利用最新的更新信息4008对解密密钥1005进行更新(步骤S804)。
[0432] 步骤S802为“否”是解密密钥1005在上次的刷新处理时被更新因此不存在未应用于解密密钥1005的更新信息4008的情况;或者在存在未应用于解密密钥1005的更新信息4008的情况下,与列表内的全部更新日期时间对应的更新信息4008对解密密钥1005的应用完成的情况。
[0433] 例如,假设一年一次,在1月1日进行刷新处理的情况。
[0434] 并且,设现在是2015年1月1日。
[0435] 如果解密密钥更新部703接收到的解密密钥1005的更新日期时间1005a例如是2012年1月1日,则不对解密密钥1005进行基于2013年1月1日的刷新处理和2014年1月1日的刷新处理的更新。
[0436] 因此,在步骤S803中,解密密钥更新部703使用2013年1月1日时点的更新信息4008和2014年1月1日时点的更新信息4008对解密密钥1005进行更新。
[0437] 进而,在步骤S804中,解密密钥更新部703使用2015年1月1日时点的更新信息4008对解密密钥1005进行更新。
[0438] ***效果的说明***
[0439] 根据以上步骤,针对过去的刷新处理时未更新的解密密钥,也能够应用最新的更新处理,具有在调职者或长期出差者等长期无法更新解密密钥的情况下也能够应对这样的效果。
[0440] 以上说明了本发明的实施方式,但是,也可以组合实施这些实施方式中的2个以上的实施方式。
[0441] 或者,也可以部分地实施这些实施方式中的一个实施方式。
[0442] 或者,也可以部分地组合实施这些实施方式中的2个以上的实施方式。
[0443] 另外,本发明不限于这些实施方式,能够根据需要进行各种变更。
[0444] 最后,参照图28对数据保管装置20的硬件结构例进行说明。
[0445] 数据保管装置20是计算机。
[0446] 数据保管装置20具有处理器901、辅助存储装置902、存储器903、通信装置904、输入接口905、显示器接口906这样的硬件。
[0447] 处理器901经由信号线910而与其它硬件连接,对这些其他硬件进行控制。
[0448] 输入接口905与输入装置907连接。
[0449] 显示器接口906与显示器908连接。
[0450] 处理器901是进行处理的IC(Integrated Circuit:集成电路)。
[0451] 处理器901例如是CPU(Central Processing Unit:中央处理单元)、DSP(Digital Signal Processor:数字信号处理器)、GPU(Graphics Processing Unit:图形处理单元)。
[0452] 辅助存储装置902例如是ROM(Read Only Memory:只读存储器)、闪存、HDD(Hard Disk Drive:硬盘驱动器)。
[0453] 存储器903例如是RAM(Random Access Memory:随机存取存储器)。
[0454] 通信装置904包含接收数据的接收机9041和发送数据的发送机9042。
[0455] 通信装置904例如是通信芯片或NIC(Network Interface Card:网络接口卡)。
[0456] 输入接口905是连接输入装置907的缆线911的端口。
[0457] 输入接口905例如是USB(Universal Serial Bus:通用串行总线)端子。
[0458] 显示器接口906是连接显示器908的缆线912的端口。
[0459] 显示器接口906例如是USB端子或HDMI(注册商标)(High Definition Multimedia Interface:高分辨率多媒体接口)端子。
[0460] 输入装置907例如是鼠标、键盘或触摸面板。
[0461] 显示器908例如是LCD(Liquid Crystal Display:液晶显示器)。
[0462] 在辅助存储装置902中存储有实现图4所示的加密数据接收部201、加密数据发送部203、刷新设定输入部204、刷新处理部205、失效信息去除部206(下面将加密数据接收部201、加密数据发送部203、刷新设定输入部204、刷新处理部205、失效信息去除部206统一记作“部”)的功能的程序。
[0463] 该程序载入到存储器903,读入到处理器901,由处理器901来执行。
[0464] 进而,在辅助存储装置902中还存储有OS(Operating System:操作系统)。
[0465] 而且,OS的至少一部分载入到存储器903,处理器901执行OS,并且执行实现“部”的功能的程序。
[0466] 在图28中,图示出一个处理器901,但是,数据保管装置20也可以具有多个处理器901。
[0467] 而且,多个处理器901也可以协作执行实现“部”的功能的程序。
[0468] 并且,表示“部”的处理结果的信息、数据、信号值和变量值存储在存储器903、辅助存储装置902或处理器901内的寄存器或缓存中。
[0469] 也可以利用“电路系统(circuitry)”来提供“部”。
[0470] 并且,也可以将“部”改写成“电路”或“工序”或“步骤”或“处理”。
[0471] “电路”和“电路系统”是不仅包含处理器901,而且包含逻辑IC或GA(Gate Array:门阵列)或ASIC(Application Specific Integrated Circuit:面向特定用途的集成电路)或FPGA(Field-Programmable Gate Array:现场可编程门阵列)这样的其他种类的处理电路的概念。
[0472] 标号说明
[0473] 1:文件加密系统;10:用户终端装置;20:数据保管装置;30:网络;40:密钥生成装置;50:用户信息管理装置;60:重加密装置;70:密钥更新装置;80:数据更新系统;101:文件输入部;102:加密部;103:密钥保管部;104:加密数据发送部;105:加密数据接收部;106:解密部;201:加密数据接收部;202:数据保管部;203:加密数据发送部;204:刷新设定输入部;205:刷新处理部;206:失效信息去除部;401:主密钥生成部;402:主密钥保管部;403:公开参数发行部;404:用户认证部;405:用户属性取得部;406:解密密钥生成部;407:重加密密钥生成部;408:更新信息生成部;409:更新信息保管部;410:更新信息取得部;411:主密钥更新处理部;501:属性信息保管部;502:用户属性检索部;601:重加密密钥取得部;602:重加密部;701:更新信息取得部;702:主密钥更新部;703:解密密钥更新部;704:更新受理部;
705:更新对象判定部;706:更新信息保管部;1001:数据;1002:解密条件;1003:公开参数;
1004:加密文件;1005:解密密钥;1021:加密数据;2002:刷新设定信息;4001:主公开密钥;
4002:主秘密密钥;4003:公开参数取得请求;4004:用户ID;4005:用户属性;4006:重加密条件;4007:重加密密钥;4008:更新信息;4009:更新信息取得请求;4010:主密钥标识符;
6001:重加密请求;7001:日期时间信息。