动态可检索的云计算数据加密方法
【专利摘要】本发明公开了一种动态可检索的云计算数据加密方法,包括以下步骤:用户将数据存储在云服务器上,数据被看作是一串的n个文件f=(f1,...,fn);假设用户获取一个索引程序,把文件f作为输入,然后输出一个反向索引;根据辅助搜索协议给定一个搜索项,设关键词为w,用fw表示文件f中包含单词w的文件集合;上述中,如果c=(c1,...,cn)是一个文件f中的文件加密的集合,那么cw表示所有fw中的文件的密文集合。通过上述方式,本发明实现了对加密数据的检索,能够保障保密性、完整性、可验证性,用户不光可以通过一个搜索接口去高效地检索数据,而且还能安全地添加以及删除数据。
【专利说明】动态可检索的云计算数据加密方法
【技术领域】
[0001]本发明涉及加密方法的领域,特别是涉及动态可检索的云计算数据加密方法。
【背景技术】
[0002]随着磁盘上存储的内容大小高速增长,文件索引正日益变得重要。云存储服务为那些不能购买以及维持自己存储设施的客户提供了一个高可获取性、高易用性和便宜的远端数据源。尽管很多云存储应用要求提供面向云供应商的安全性(例如存储高强度的商业数据或者医疗记录),大多数服务不能够完全保证供应商既不能看见也不能修改数据。在很大程度上,这是因为现在的安全手段(如加密或者签名)削弱了云存储的可用性以及效倉泛。
[0003]公司很多时候会把自己的数据外包给数据中心,通过将数据存储在第三方的远程服务器上,云存储应用保证了数据的高可获取性、高易用性,同时减低了设施成本。但是光有高可获取性远远不够的,因为客户需要对数据提供保密性、完整性,然而这些特性不在高昂的运算和带宽的代价上是无法保证的。保密性和完整性在高强度的商业或企业的数据、机密的政府文件以及医疗记录的存储过程中是必不可少的。
[0004]另外一种情况,该数据是可以被加密存储的,但是现有加密算法输出的内容是无法被检索的。
【发明内容】
[0005]本发明主要解决的技术问题是提供一种动态可检索的云计算数据加密方法,实现了对加密数据的检索,能够保障保密性、完整性、可验证性,用户不光可以通过一个搜索接口去高效地检索数据,而且还能安全地添加以及删除数据。
[0006]为解决上述技术问题,本发明采用的一个技术方案是:提供一种动态可检索的云计算数据加密方法,包括以下步骤:用户将数据存储在云服务器上,数据被看作是一串的η个文件f = (fl,. · .,fn );假设用户获取一个索引程序,把文件f作为输入,然后输出一个反向索引;根据辅助搜索协议给定一个搜索项,设关键词为《,用fV表示文件f中包含单词w的文件集合;
上述中,如果c = (cl,. . .,cn )是一个文件f中的文件加密的集合,那么cw表示所有fw中的文件的密文集合。
[0007]在本发明一个较佳实施例中,所述的辅助搜索协议包括SETUP、STORE、SEARCH、CHECK、ADD 和 DELETE 协议。
[0008]在本发明一个较佳实施例中,所述的数据信息为动态的。
[0009]在本发明一个较佳实施例中,所述的每个文件f有唯一的标识符,称为id(fi )。
[0010]在本发明一个较佳实施例中,所述的检索索引时间为占总的搜索时间的O. 001%。
[0011]本发明的有益效果是:本发明的动态可检索的云计算数据加密方法,实现了对加密数据的检索,能够保障保密性、完整性、可验证性,用户不光可以通过一个搜索接口去高效地检索数据,而且还能安全地添加以及删除数据。
【专利附图】
【附图说明】
[0012]为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图,其中:
图1是本发明的动态可检索的云计算数据加密方法一较佳实施例的结构框图。
【具体实施方式】
[0013]下面将对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
[0014]请参阅图1,本发明实施例包括:
一种动态可检索的云计算数据加密方法,包括以下步骤:用户将数据存储在云服务器上,数据被看作是一串的η个文件f = (fl,...,fn );假设用户获取一个索引程序,把文件f作为输入,然后输出一个反向索引;根据辅助搜索协议给定一个搜索项,设关键词为W,用fw表示文件f中包含单词w的文件集合;
上述中,如果c = (cl,...,cn )是一个文件f中的文件加密的集合,那么cw表示所有fw中的文件的密文集`合。
[0015]其中,所述的数据信息为动态的,可以在任何时候添加或删除文件;所述的每个文件f有唯一的标识符,称为id(fi );所述的检索索引时间为占总的搜索时间的0.001%。
[0016]进一步的,所述的辅助搜索协议包括SETUP、STORE、SEARCH、CHECK、ADD和DELETE协议。
[0017]SETUP:被客户端用来初始化密钥K,它由底层密码学原语所需要的密钥组成。
[0018]STORE:被客户端用来存储一个文件集合f = (fl,...,fn)到服务器。客户端先对文件f运行索引程序,产生索引S,该索引与f通过SSE方案一起被加密。这一步产生加密索引Y和一个加密文件集C。然后它继续使用PDP对c进行加密;用DSA认证δ以及一串头文件 h = (hi,..., hn )。这里,hi = (id(fi ), si , H(ci )),
Si是文件f i的摘要经过私钥加密过,H是无碰撞散列函数。这两步产生一列标签t (与每个密文c对应),一个认证α以及一个状态st。最后,客户向服务器发送加密索引Y、加笛'文件C、一列标签t、头h和认证α。
[0019]SEARCH:是用来搜索所有有关键词w的文件。客户先为关键词w生成SSE搜索令牌τ。令牌被发送到服务器,被用来恢复包含w的加密文件标识符Iw。服务器然后发回{hi e h:1 e Iwl和一个DSA证明π a。客户认证DSA证明,如果正确,则用密钥解密文件的摘要并呈现给用户,用户然后返回这些文件的子集合IO e Iw,让客户端发给服务器。后者发回密文IciO e c: 1£10}。对于1 e 10,客户验证H(ciO)与h中对应的hash相同,如果任何一个验证失败,输出丄,否则解密密文输出文件。[0020]CHECK :用来验证服务器是否篡改客户端的文件。客户发送一个PDP挑战给服务器,后者回答一个使用密文c和标签t计算出来的PDP证明πρ。这个证明而后被客户用来验证,如果成功返回true否则返回false。
[0021]ADD :被用来添加一个文件。首先客户发送一个文件、它的PDP标签、SSE和DSA添加令牌给服务器。服务器返回DSA回执,客户用来更行DSA状态。
[0022]DELETE :工作原理与ADD相同。
[0023]综上所述,从较高层面上看,保密性通过SSE来达到,这保证了客户的数据和搜索项始终相对服务器隐藏。完整性通过使用PDP来实现,可验证性通过搜索认证实现。
[0024]本发明具有如下优点:
I.(保密性)服务器不能从客户的存储的文件中习得任何信息。
[0025]2.(完整性)任何服务器对客户文件的篡改都会被发现。
[0026]3.(可验证性)服务器不能添加或者省略SEARCH操作返回的文件而不被发现。
[0027]本发明的揭示动态可检索的云计算数据加密方法,实现了对加密数据的检索,能够保障保密性、完整性、可验证性,用户不光可以通过一个搜索接口去高效地检索数据,而且还能安全地添加以及删除数据。
[0028]以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书内容所作的等效结构或等效流程变换,或直接或间接运用在其它相关的【技术领域】,均同理包括在本发明的专利保护范围内。
【权利要求】
1.一种动态可检索的云计算数据加密方法,其特征在于,包括以下步骤: 用户将数据存储在云服务器上,数据被看作是一串的η个文件f = (fl,...,fn );假设用户获取一个索引程序,把文件f作为输入,然后输出一个反向索引;根据辅助搜索协议给定一个搜索项,设关键词为《,用fV表示文件f中包含单词w的文件集合; 上述中,如果c = (cl,...,cn )是一个文件f中的文件加密的集合,那么cw表示所有fw中的文件的密文集合。
2.根据权利要求1所述的用于动态可检索的云计算数据加密方法,其特征在于,所述的辅助搜索协议包括SETUP、STORE、SEARCH、CHECK、ADD和DELETE协议。
3.根据权利要求1所述的用于动态可检索的云计算数据加密方法,其特征在于,所述的数据信息为动态的。
4.根据权利要求1所述的用于动态可检索的云计算数据加密方法,其特征在于,所述的每个文件f有唯一的标识符,称为id(fi )。
5.根据权利要求1所述的用于动态可检索的云计算数据加密方法的操作方法,所述的检索索引时间为占总的搜索时间的0.001%。
【文档编号】H04L29/08GK103532934SQ201310449668
【公开日】2014年1月22日 申请日期:2013年9月29日 优先权日:2013年9月29日
【发明者】罗喜召 申请人:苏州大学