CN106682069A - 用户可控的数据检索方法及数据存储方法、终端、系统 - Google Patents
用户可控的数据检索方法及数据存储方法、终端、系统 Download PDFInfo
- Publication number
- CN106682069A CN106682069A CN201611000828.2A CN201611000828A CN106682069A CN 106682069 A CN106682069 A CN 106682069A CN 201611000828 A CN201611000828 A CN 201611000828A CN 106682069 A CN106682069 A CN 106682069A
- Authority
- CN
- China
- Prior art keywords
- data
- key
- user
- encryption
- server
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6209—Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2107—File encryption
Abstract
本发明公开了一种用户可控的数据检索方法及数据存储方法、终端、系统,其中数据存储方法包括:为待存储数据创建索引文件;根据与认证服务器预先设定的加密策略,从认证服务器获取第一密钥,通过第一密钥对索引文件进行对称加密,得到加密索引;根据用户提供的第二私钥对待存储数据进行对称加密,得到加密数据;根据预先设置的用户访问策略为待存储数据创建对应的访问结构,并采用CP‑ABE算法以访问结构对第二私钥进行加密,得到加密密钥;将加密数据、加密索引和加密密钥作为密文数据上传到系统服务器,以供系统服务器在通过认证服务器对密文数据的完整性检验后,将其上传至云存储服务器。本发明实施例实现了云存储环境下数据高效、安全的共享。
Description
技术领域
本发明涉及计算机网络技术领域,尤其涉及一种基于云存储环境的用户可控的数据检索方法以及用户可控的数据存储方法、终端、系统。
背景技术
在开放的网络环境下,人们在学习、工作和生活中通过网络进行存储共享资料越来越多,而云存储服务作为一种新兴的网络应用模式,它通过集群应用、网格技术和分布式文件系统等功能,将网络中大量不同类型的存储设备通过应用软件集合起来协同工作,共同对外提供数据存储和业务访问服务。用户可将自己的数据远程存储在云存储中心,按需访问,便于用户存取,为企业节约开销,提高可用性和可靠性。但是,用户和企业对其存储于云端的数据失去了根本的物理控制,对其数据的机密性与完整性就会心存疑虑,不可避免的引起了其对数据安全性与隐私性方面的担忧。究其原因有两个:一是云服务提供商会面临广泛的内外攻击,有恶意的敌人就会删除或破坏用户数据;二是云服务提供商可能不诚实,他们或许会为了保全自己信誉或谋取利益而试图隐藏存储在上面的数据被盗或破坏信息。
因此,基于云存储环境的动态复杂性和开放性等特征,用户无法完全依赖不可信的云存储提供商进行数据的存储和管理等因素,如何进行开放式云存储环境下的数据存储是云存储应用亟需解决的问题。
发明内容
鉴于上述问题,本发明提出了一种用户可控的数据检索方法以及用户可控的数据存储方法、终端、系统,通过对数据进行三重加密和完整性校验,并由用户控制密文数据的访问权限,实现了云存储环境下数据高效、安全的共享。
本发明的一个方面,提供了一种用户可控的数据存储方法,
为待存储数据创建索引文件;
根据与认证服务器预先设定的加密策略,从所述认证服务器获取第一密钥,并通过获取的第一密钥对所述索引文件进行对称加密,得到加密索引;
根据用户提供的第二私钥对所述待存储数据进行对称加密,得到加密数据;
根据预先设置的用户访问策略,为所述待存储数据创建对应的访问结构,并采用CP-ABE算法以所述访问结构对所述第二私钥进行加密,得到加密密钥;所述访问结构与所述待存储数据对应的授权用户的用户属性信息相匹配;
将所述加密数据、加密索引以及加密密钥作为密文数据上传到系统服务器,以供所述系统服务器在通过所述认证服务器对所述密文数据的完整性检验后,将所述密文数据上传至云存储服务器。
可选地,所述并采用CP-ABE算法以所述访问结构对所述第二私钥进行加密,进一步包括:
根据预设的用户属性信息采用Setup算法生成主密钥MK和公钥PK;
采用Encypt算法以所述公钥PK和所述访问结构对所述第二私钥进行加密,得到加密密钥;
采用keygen算法根据所述预设的用户属性信息以及所述主密钥MK生成所述用户解密所需的私钥SK,以供在数据下载时,采用decrypt解密算法根据所述私钥SK对相应的加密密钥进行解密。
可选地,所述通过获取的第一密钥对所述索引文件进行对称加密,进一步包括:
通过获取的第一密钥对所述索引文件的索引关键词进行对称加密。
可选地,所述方法还包括:
获取所述加密数据的MD5值,并将所述MD5值上传至所述认证服务器,以供所述认证服务器对系统服务器上传的加密数据的MD5值进行一致性比较,若一致,则系统服务器中的密文数据通过数据完整性验证。
本发明的另一个方面,提供了一种用户可控的数据检索方法,包括:
接收用户的检索请求以及所述检索请求中携带的索引关键词和用户属性信息;
根据与认证服务器预先设定的加密策略,从所述认证服务器获取第一密钥,并通过获取的第一密钥对所述索引关键词进行加密;
根据所述加密后的索引关键词采用Lucene全文检索引擎对所述系统服务器中的索引文件进行全文检索,以供所述系统服务器根据检索结果,获取检索结果中包括的至少一个待下载数据对应的访问结构,所述访问结构与所述数据对应的授权用户的用户属性信息相匹配;
将当前用户的用户属性信息于每一待下载数据对应的访问结构进行匹配,下载匹配成功的待下载数据。
可选地,所述方法还包括:
根据访问用户的访问数据生成访问操作日志,并对访问用户进行统计分析,返回分析结果至待下载数据的所属用户。
本发明的再一个方面,提供了一种用户可控的数据存储终端,包括:
索引创建模块,用于为待存储数据创建索引文件;
第一加密模块,用于根据与认证服务器预先设定的加密策略,从所述认证服务器获取第一密钥,并通过获取的第一密钥对所述索引文件进行对称加密,得到加密索引;
第二加密模块,用于根据用户提供的第二私钥对所述待存储数据进行对称加密,得到加密数据;
第三加密模块,用于根据预先设置的用户访问策略,为所述待存储数据创建对应的访问结构,并采用CP-ABE算法以所述访问结构对所述第二私钥进行加密,得到加密密钥;所述访问结构与所述待存储数据对应的授权用户的用户属性信息相匹配;
上传模块,用于将所述加密数据、加密索引以及加密密钥作为密文数据上传到系统服务器,以供所述系统服务器在通过所述认证服务器对所述密文数据的完整性检验后,将所述密文数据上传至云存储服务器。
可选地,所述终端还包括:
数据处理模块,用于计算所述加密数据的MD5值,并将所述MD5值上传至所述认证服务器,以供所述认证服务器对系统服务器上传的加密数据的MD5值进行一致性比较,若一致,则系统服务器中的密文数据通过数据完整性验证。
可选地,所述终端还包括:
接收模块,用于接收用户的检索请求以及所述检索请求中携带的索引关键词和用户属性信息;
第四加密模块,用于根据与认证服务器预先设定的加密策略,从所述认证服务器获取第一密钥,并通过获取的第一密钥对所述索引关键词进行加密;
检索模块,用于根据所述加密后的索引关键词采用Lucene全文检索引擎对所述系统服务器中的索引文件进行全文检索,以供所述系统服务器根据检索结果,获取检索结果中包括的至少一个待下载数据对应的访问结构,所述访问结构与所述数据对应的授权用户的用户属性信息相匹配,
下载模块,用于将当前用户的用户属性信息于每一待下载数据对应的访问结构进行匹配,下载匹配成功的待下载数据。
本发明的又一个方面,提供了一种用户可控的数据存储系统,包括认证服务器、系统服务器、云存储服务器以及如上所述的用户可控的数据存储终端;
所述认证服务器与所述终端预先约定加密策略,并根据预先约定加密策略将第一密钥发送至所述终端,以供所述终端通过所述第一密钥对待存储数据的索引文件进行对称加密;
所述系统服务器接收所述终端发送的密文数据,所述密文数据包括加密数据、加密索引以及加密密钥,计算该加密数据的MD5值,并将得到的MD5值上传至所述认证服务器;
所述认证服务器将所述终端上传的MD5值于系统服务器上传的加密数据的MD5值进行一致性比较,若一致,则确认系统服务器中的密文数据通过数据完整性验证;
所述系统服务器在通过所述认证服务器的数据完整性验证后,根据所述加密索引对服务器本地索引信息进行更新,并将所述密文数据上传至云存储服务器。
本发明实施例提供的用户可控的数据检索方法以及用户可控的数据存储方法、终端、系统,通过对数据进行三重加密和完整性校验,并由用户控制密文数据的访问权限,实现用户对云存储数据的安全可控和高效存取,进而保证了云存储环境下数据高效、安全的共享。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了本发明实施例的一种用户可控的数据存储方法的流程图;
图2示出了本发明实施例的一种用户可控的数据存储方法中待存储数据对应的访问结构的示例图;
图3示出了本发明实施例中一种用户可控的数据检索方法的流程图;
图4示出了本发明实施例的一种用户可控的数据存储终端的框图;
图5示出了本发明实施例的一种用户可控的数据存储系统的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非被特定定义,否则不会用理想化或过于正式的含义来解释。
图1示意性示出了本发明一个实施例的用户可控的数据存储方法的流程图。参照图1,本发明实施例的用户可控的数据存储方法具体包括以下步骤:
S11、为待存储数据创建索引文件;
S12、根据与认证服务器预先设定的加密策略,从所述认证服务器获取第一密钥,并通过获取的第一密钥对所述索引文件进行对称加密,得到加密索引;
S13、根据用户提供的第二私钥对所述待存储数据进行对称加密,得到加密数据;
S14、根据预先设置的用户访问策略,为所述待存储数据创建对应的访问结构,并采用CP-ABE算法以所述访问结构对所述第二私钥进行加密,得到加密密钥;所述访问结构与所述待存储数据对应的授权用户的用户属性信息相匹配;
S15、将所述加密数据、加密索引以及加密密钥作为密文数据上传到系统服务器,以供所述系统服务器在通过所述认证服务器对所述密文数据的完整性检验后,将所述密文数据上传至云存储服务器。
在本发明的一个可选实施例中,所述并采用CP-ABE算法以所述访问结构对所述第二私钥进行加密,进一步包括一下步骤:
根据预设的用户属性信息采用Setup算法生成主密钥MK和公钥PK;
采用Encypt算法以所述公钥PK和所述访问结构对所述第二私钥进行加密,得到加密密钥;
采用keygen算法根据所述预设的用户属性信息以及所述主密钥MK生成所述用户解密所需的私钥SK,以供在数据下载时,采用decrypt解密算法根据所述私钥SK对相应的加密密钥进行解密。
在本发明的一个可选实施例中,所述通过获取的第一密钥对所述索引文件进行对称加密,进一步包括一下步骤:
通过获取的第一密钥对所述索引文件的索引关键词进行对称加密。
在本发明的一个可选实施例中,所述方法还包括:
获取所述加密数据的MD5值,并将所述MD5值上传至所述认证服务器,以供所述认证服务器对系统服务器上传的加密数据的MD5值进行一致性比较,若一致,则系统服务器中的密文数据通过数据完整性验证。
本发明实施例中提供的数据存储方法中,客户端用户上传文档:上传文件,对明文进行索引创建,设置文件加密密钥和CP-ABE用户访问策略。加密:三重加密:对文件设置加密密钥,然后再通过CP-ABE对密钥进行加密,再是对新建的索引关键词进行加密。索引更新:将客户端生成的加密的新索引进行合并更新。密文上传:将密文上传至云服务器中。
该密文存储算法伪代码描述如下:
输入:文档
输出:DEK(File,SK),并对密文进行MD5
创建索引,并加密索引
对密钥进行cp-abe
上传加密索引和密文
更新索引,并上传密文到云服务器
记录数据存储情况。
下面通过一个具体实施例对本发明技术方案进行解释说明。
需要说明的是,本发明实施例提出的用户可控的数据存储方法,是基于非结构化文档在云端进行网络存储和共享的方法,该方法所涉及的系统中由三层存储架构组成:云用户层、系统服务层、云存储层。分别包括云客户终端、认证服务器(AuthenticationServers,AS)、系统服务器(System Servers,SS)和云存储服务器提供商(Cloud ServersProvider,CSP)。
本实施例中,假设:SS和CSP均是允许购买的服务,也可以属于同一个服务提供商,假定它们诚实。
本发明实施例中是应用在基于云存储的网络文档共享应用系统中,某公司的一个员工上传了一份机密文档,规定这份文档需要获取用户符合访问策略如图2所示。
参见图2,图2示出了本发明实施例的一种用户可控的数据存储方法中待存储数据对应的访问结构的示例图。
下面对一些符号进行描述说明:
本实施例中,的安全加密主要包括两方面:用户主动设置和系统主动监控。
1)用户主动:这个阶段主要采用基于对称加密和CP-ABE的三重加密方案,通过三重加密,可以更好地让用户放心提交数据到云存储服务。
(1)索引加密
//DEK(I,SK’):通过对用户上传的文档进行索引创建时涉及到的索引关键词,由AS统一提供的密钥进行对称加密。
①GenerateStrategy()->SKi:用户在云客户端创建完索引以后,接着对索引进行加密,而密钥通过AS来获取,AS根据密钥生成策略生成统一的密钥返回给客户端,索引密钥生成策略使用UUID的方式。
②AES(I,SKi)->I’:客户端获取到索引加密密钥之后对索引进行对称加密。
(2)文件加密
AES(File,SKf)->File’:用户设置密钥SKf,对其上传的文档进行对称加密。
(3)将对称密钥SKf进行CP-ABE加密;
①Setup->(MK,PK):生成主密钥MK和公共参数PK;
②Encrypt(PK,SKf,T)->CT:使用公钥PK及访问结构T加密明文数据SKf,生成相应的密文CT;
③KeyGen(MK,S)->SKc:使用MK及用户属性值S,生成对应用户的私钥SKc;
④Decrypt(CT,SKc)->M:使用私钥SKc解密CT,得到明文SKf。
2)系统主动:这个阶段主要是AS对SS进行审核和检测,验证密文数据完整性和通过对日志分析获取数据访问情况。
(1)MD5对密文进行完整性验证
①客户端和SS分别对密文进行MD5生成摘要值
a.MD5(File’)->DV:客户端通过MD5对密文加密生成摘要值DV,传给AS存储;
b.MD5(File”)->DV’:SS通过MD5对密文加密生成摘要值DV’,传给AS;
②AS进行数据完整性验证
If DV=DV’
return true//如果DV=DV’,返回真,数据完整
Else
return false//否则,返回假,数据被篡改
End If
(2)用户访问操作日志分析
Analytics(Id,Unit,Username,IP,Action,Date)->Flog:分析用户访问操作日志,并返回数据访问情况给文档拥有者。
本发明实施例提供的用户可控的数据检索方法,通过对数据进行三重加密和完整性校验,并由用户控制密文数据的访问权限,实现用户对云存储数据的安全可控和高效存取,进而保证了云存储环境下数据高效、安全的共享。
图3示意性示出了本发明一个实施例的用户可控的数据检索方法的流程图。参照图3,本发明实施例的用户可控的数据检索方法具体包括以下步骤:
S21、接收用户的检索请求以及所述检索请求中携带的索引关键词和用户属性信息;
S22、根据与认证服务器预先设定的加密策略,从所述认证服务器获取第一密钥,并通过获取的第一密钥对所述索引关键词进行加密;
S23、根据所述加密后的索引关键词采用Lucene全文检索引擎对所述系统服务器中的索引文件进行全文检索,以供所述系统服务器根据检索结果,获取检索结果中包括的至少一个待下载数据对应的访问结构,所述访问结构与所述数据对应的授权用户的用户属性信息相匹配;
S24、将当前用户的用户属性信息于每一待下载数据对应的访问结构进行匹配,下载匹配成功的待下载数据。
在本发明的一个可选实施例中,所述方法还包括以下步骤:
根据访问用户的访问数据生成访问操作日志,并对访问用户进行统计分析,返回分析结果至待下载数据的所属用户。
本发明实施例提供的数据检索方法,对关键词进行了加密,然后与加密的索引文件进行匹配,所以索引文件的安全级别是较高的,同时也提高了检索效率。用户下载解密:只有符合用户访问策略的用户才能够搜索和获取相应文档并进行解密,如果不能够满足密文文件的解密策略,是无法搜索和获取到密文。因此,验证了数据机密性及细粒度访问控制的安全,并减少了流量消耗。用户数据访问情况:通过监测,检查用户数据的访问情况,验证系统进行主动推送安全信息。
该密文检索算法伪代码描述如下:
输入:关键词、用户
输出:S(U,T),根据用户的策略树进行筛选,获取相关密文集
加密关键词,并对该密文集的密文进行Lucene检索,获取最终密文集
获取密文并进行MD5
验证数据完整性
解密
记录数据访问情况
将数据访问情况返回给数据拥有者。
本发明实施例的检索方法主要包括两方面:用户主动检索和系统主动筛选。
1)用户主动:这个阶段主要采用Lucene技术进行全文搜索,获取用户按关键词搜索的密文集。
用户在上传文档时同时也将文档的索引上传到SS上去;随后SS将上传的索引进行合并;完成合并后用户就可以通过关键词来搜索到该文档。下面逐步介绍每个过程:
表1.上传和存储过程
表2.搜索和下载过程
2)系统主动:这个阶段主要是将用户与CP-ABE的访问结构结合,系统提供主动推荐服务,进行一次细粒度筛选,这样有利于使撤销用户不再获取相关数据。
首先判断用户是否是授权用户,如果是已经撤销用户,就不会再出现原角色授权的相关数据,如果是授权用户,那就根据访问结构T获取密文集。
Authorize(U):认证用户权限
If Authorize(U)=true
getT(U);
getDocs(T);
Else View(Public)
End If
为了验证本发明技术方案的可行性,基于4台PC机的CentOS6.5搭建了Hadoop集群环境,应用于基于云存储的网络文档共享应用系统,用来测试具体的应用实例。
一共使用4台普通PC机来搭建网络文档共享应用系统集群,包括系统服务层服务器和Hadoop集群。其中1台部署为系统服务层的SS和AS服务器,另外三台部署为Hadoop集群。我们在PC机上安装的操作系统为CentOS6.0,Java运行环境为jdk1.7.0_21,Hadoop为hadoop-2.6版本,Mahout为Mahout 0.9版本;程序开发平台为IntelliJ IDEA 13.1.2版本,数据库使用MySQL5.5。
表3为用户获取包含“销售经费预算”的加密文件,只有符合密文解密策略和用户角色权限,才可以得到明文文件,因此,验证了数据机密性及访问控制的安全和高效检索。
表3用户可访问文件列表
属性 | 可获取文件序号 |
销售部主管财务经理 | 1、2、3 |
销售部经理 | 1、2 |
销售部员工 | 1 |
人事部员工 | 4 |
安全性分析
数据的机密性和完整性是实现安全云存储的基础。UESMCS采用CP-ABE和对称加密算法对用户数据进行加密以保证数据的机密性,采用MD5算法来保证数据的完整性。
性能分析
实验中采用信息检索系统中的查准率P、搜索时间T和文件有效性E作为搜索结果评价指标,其中查准率定义如下:
P=(搜索出用户感兴趣的文档数/搜索出的文档总数)×100%
根据Lucene的搜索缓冲策略:在大规模文档的系统中,Lucene面向全文检索的优化在于首次索引检索后,不会将所有的记录读取出来,而是加载一部分(本文设置加载100篇),在用户还需要加载大于100篇的文档时,Lucene再去加载下100篇。(1)准确性方面:在UESMCS中,基于策略树细粒度访问控制使得文档的命中率更高,从而减少了Lucene的加载次数,因此在lucene同等加载次数的情况下UESMCS的命中率更高;(2)搜索时间方面:因为UESMCS是先通过策略树进行一次筛选缩小了文档集规模,然后再进行Lucene检索,所以在搜索时间T方面会用时较短;(3)获取文档有效性方面:通过UESMCS搜索到的文件用户均可以用有效解密,而仅仅通过lucene搜索出的文档大部分因不能够满足CP-ABE解密策略而无效,耗费流量。其性能测试结果如下表4。
表4性能测试结果
P | Rank | T | E | |
Lucene | 72% | 100 | 186ms | 48% |
UESMCS | 83% | 100 | 163ms | 100% |
综上,本发明实施例通过在Hadoop搭建的集群环境下,利用对称加密、CP-ABE和MD5等加密技术,结合Lucene分布式框架和基于策略树细粒度访问控制,实现了一种云存储环境下用户可控密文高效共享原型系统。实验证明,本发明实施例提出的用户可控的数据存储方法,实现了网络文档资源的高效、安全共享。
对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
图4示意性示出了本发明一个实施例的用户可控的数据存储终端的框图。参照图4,本发明实施例的用户可控的数据存储终端具体包括索引创建模块401、第一加密模块402、第二加密模块403、第三加密模块404以及上传模块405,其中:
索引创建模块401,用于为待存储数据创建索引文件;
第一加密模块402,用于根据与认证服务器预先设定的加密策略,从所述认证服务器获取第一密钥,并通过获取的第一密钥对所述索引文件进行对称加密,得到加密索引;
第二加密模块403,用于根据用户提供的第二私钥对所述待存储数据进行对称加密,得到加密数据;
第三加密模块404,用于根据预先设置的用户访问策略,为所述待存储数据创建对应的访问结构,并采用CP-ABE算法以所述访问结构对所述第二私钥进行加密,得到加密密钥;所述访问结构与所述待存储数据对应的授权用户的用户属性信息相匹配;
上传模块405,用于将所述加密数据、加密索引以及加密密钥作为密文数据上传到系统服务器,以供所述系统服务器在通过所述认证服务器对所述密文数据的完整性检验后,将所述密文数据上传至云存储服务器。
在本发明的一个可选实施例中,所述终端还包括附图中未示出的数据处理模块,所述数据处理模块,用于计算所述加密数据的MD5值,并将所述MD5值上传至所述认证服务器,以供所述认证服务器对系统服务器上传的加密数据的MD5值进行一致性比较,若一致,则系统服务器中的密文数据通过数据完整性验证。
为了实现终端对数据的检索,在本发明的一个可选实施例中,所述终端还包括一下模块:
接收模块,用于接收用户的检索请求以及所述检索请求中携带的索引关键词和用户属性信息;
第四加密模块,用于根据与认证服务器预先设定的加密策略,从所述认证服务器获取第一密钥,并通过获取的第一密钥对所述索引关键词进行加密;
检索模块,用于根据所述加密后的索引关键词采用Lucene全文检索引擎对所述系统服务器中的索引文件进行全文检索,以供所述系统服务器根据检索结果,获取检索结果中包括的至少一个待下载数据对应的访问结构,所述访问结构与所述数据对应的授权用户的用户属性信息相匹配,
下载模块,用于将当前用户的用户属性信息于每一待下载数据对应的访问结构进行匹配,下载匹配成功的待下载数据。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
此外,本发明还提供了一种用户可控的数据存储系统。图5示出了本发明实施例的一种用户可控的数据存储系统的结构示意图。
参照图5,本发明实施例的用户可控的数据存储系统,包括认证服务器、系统服务器、云存储服务器以及如上所述的用户可控的数据存储终端;
所述认证服务器与所述终端预先约定加密策略,并根据预先约定加密策略将第一密钥发送至所述终端,以供所述终端通过所述第一密钥对待存储数据的索引文件进行对称加密;
所述系统服务器接收所述终端发送的密文数据,所述密文数据包括加密数据、加密索引以及加密密钥,计算该加密数据的MD5值,并将得到的MD5值上传至所述认证服务器;
所述认证服务器将所述终端上传的MD5值于系统服务器上传的加密数据的MD5值进行一致性比较,若一致,则确认系统服务器中的密文数据通过数据完整性验证;
所述系统服务器在通过所述认证服务器的数据完整性验证后,根据所述加密索引对服务器本地索引信息进行更新,并将所述密文数据上传至云存储服务器。
本发明实施例提出的用户可控的数据存储系统,是基于非结构化文档在云端进行网络存储和共享场景,在该模型中由三层存储架构组成:云用户层、系统服务层、云存储层。分别包括云客户终端、认证服务器(Authentication Servers,AS)、系统服务器(SystemServers,SS)和云存储服务器提供商(Cloud Servers Provider,CSP),具体实现流程如下:
1)由文档拥有者(Owner)和使用者(User)组成的云客户终端,用户直接使用应用,进行文档的上传、检索等资源共享服务。它与AS和SS交互。云客户端主要有如下功能:①将用户上传明文进行索引创建,并对索引的关键词进行加密;②根据用户设置的加密密钥和用户访问策略,对明文和密钥分别进行加密;③将密文和创建好的加密索引文件打包上传给SS;④从SS获取密文并解密以及密文数据的检测和审核情况。
2)认证服务器AS作为可信第三方,与云客户端交互,存储用户信息和加密策略,并提供密钥服务,帮助用户完成加解密;对数据访问进行审核和监测,从SS获取相关数据;从云用户层获取文档的MD5摘要值和SS生成的文档MD5摘要值做校验。
3)系统服务器SS支持云客户端和云服务器提供商的交互,提供解压更新索引和全文检索功能,将密文上传给云服务器提供商或者下载密文并返回给用户。
4)云服务器提供商CSP作为云存储层,主要与SS交互,提供存储服务。
实际应用中,云存储服务以其低成本、高扩展等优势为海量数据的存储和共享提供方便的同时也带来了安全隐患。为保证数据安全,用户将自己的隐私数据加密后存储在开放的云存储环境中,如何建立云存储环境下的密文访问控制机制是急需解决的问题。本发明实施例提供的用户可控的数据存储系统。UESMCS通过基于CP-ABE的密文访问控制和完整性验证三重加密方案对用户数据进行预处理来保证数据的机密性与完整性;使用Lucene分布式技术与细粒度决策树二次筛选方案实现密文高效检索;引入可信第三方存储密钥信息,以实现安全、可靠的数据共享;采用用户主动和系统主动两方面的结合,提供数据安全保护和高效检索。基于安全的多方计算理论,证明了UESMCS的安全性。仿真实验表明,UESMCS在不降低云存储服务平台数据操作性能的基础上,保证了数据的安全性。该安全共享机制在保障云存储环境下数据安全共享的同时,适用于实际的云存储环境。
本发明实施例提供的用户可控的数据检索方法以及用户可控的数据存储方法、终端、系统,通过对数据进行三重加密和完整性校验,并由用户控制密文数据的访问权限,实现用户对云存储数据的安全可控和高效存取,进而保证了云存储环境下数据高效、安全的共享。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
此外,本领域的技术人员能够理解,尽管在此的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种用户可控的数据存储方法,其特征在于,包括:
为待存储数据创建索引文件;
根据与认证服务器预先设定的加密策略,从所述认证服务器获取第一密钥,并通过获取的第一密钥对所述索引文件进行对称加密,得到加密索引;
根据用户提供的第二私钥对所述待存储数据进行对称加密,得到加密数据;
根据预先设置的用户访问策略,为所述待存储数据创建对应的访问结构,并采用CP-ABE算法以所述访问结构对所述第二私钥进行加密,得到加密密钥;所述访问结构与所述待存储数据对应的授权用户的用户属性信息相匹配;
将所述加密数据、加密索引以及加密密钥作为密文数据上传到系统服务器,以供所述系统服务器在通过所述认证服务器对所述密文数据的完整性检验后,将所述密文数据上传至云存储服务器。
2.根据权利要求1所述的方法,其特征在于,所述并采用CP-ABE算法以所述访问结构对所述第二私钥进行加密,进一步包括:
根据预设的用户属性信息采用Setup算法生成主密钥MK和公钥PK;
采用Encypt算法以所述公钥PK和所述访问结构对所述第二私钥进行加密,得到加密密钥;
采用keygen算法根据所述预设的用户属性信息以及所述主密钥MK生成所述用户解密所需的私钥SK,以供在数据下载时,采用decrypt解密算法根据所述私钥SK对相应的加密密钥进行解密。
3.根据权利要求1所述的方法,其特征在于,所述通过获取的第一密钥对所述索引文件进行对称加密,进一步包括:
通过获取的第一密钥对所述索引文件的索引关键词进行对称加密。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述方法还包括:
获取所述加密数据的MD5值,并将所述MD5值上传至所述认证服务器,以供所述认证服务器对系统服务器上传的加密数据的MD5值进行一致性比较,若一致,则系统服务器中的密文数据通过数据完整性验证。
5.一种用户可控的数据检索方法,其特征在于,包括:
接收用户的检索请求以及所述检索请求中携带的索引关键词和用户属性信息;
根据与认证服务器预先设定的加密策略,从所述认证服务器获取第一密钥,并通过获取的第一密钥对所述索引关键词进行加密;
根据所述加密后的索引关键词采用Lucene全文检索引擎对所述系统服务器中的索引文件进行全文检索,以供所述系统服务器根据检索结果,获取检索结果中包括的至少一个待下载数据对应的访问结构,所述访问结构与所述数据对应的授权用户的用户属性信息相匹配;
将当前用户的用户属性信息于每一待下载数据对应的访问结构进行匹配,下载匹配成功的待下载数据。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
根据访问用户的访问数据生成访问操作日志,并对访问用户进行统计分析,返回分析结果至待下载数据的所属用户。
7.一种用户可控的数据存储终端,其特征在于,包括:
索引创建模块,用于为待存储数据创建索引文件;
第一加密模块,用于根据与认证服务器预先设定的加密策略,从所述认证服务器获取第一密钥,并通过获取的第一密钥对所述索引文件进行对称加密,得到加密索引;
第二加密模块,用于根据用户提供的第二私钥对所述待存储数据进行对称加密,得到加密数据;
第三加密模块,用于根据预先设置的用户访问策略,为所述待存储数据创建对应的访问结构,并采用CP-ABE算法以所述访问结构对所述第二私钥进行加密,得到加密密钥;所述访问结构与所述待存储数据对应的授权用户的用户属性信息相匹配;
上传模块,用于将所述加密数据、加密索引以及加密密钥作为密文数据上传到系统服务器,以供所述系统服务器在通过所述认证服务器对所述密文数据的完整性检验后,将所述密文数据上传至云存储服务器。
8.根据权利要求7所述的终端,其特征在于,还包括:
数据处理模块,用于计算所述加密数据的MD5值,并将所述MD5值上传至所述认证服务器,以供所述认证服务器对系统服务器上传的加密数据的MD5值进行一致性比较,若一致,则系统服务器中的密文数据通过数据完整性验证。
9.根据权利要求7所述的终端,其特征在于,还包括:
接收模块,用于接收用户的检索请求以及所述检索请求中携带的索引关键词和用户属性信息;
第四加密模块,用于根据与认证服务器预先设定的加密策略,从所述认证服务器获取第一密钥,并通过获取的第一密钥对所述索引关键词进行加密;
检索模块,用于根据所述加密后的索引关键词采用Lucene全文检索引擎对所述系统服务器中的索引文件进行全文检索,以供所述系统服务器根据检索结果,获取检索结果中包括的至少一个待下载数据对应的访问结构,所述访问结构与所述数据对应的授权用户的用户属性信息相匹配,
下载模块,用于将当前用户的用户属性信息于每一待下载数据对应的访问结构进行匹配,下载匹配成功的待下载数据。
10.一种用户可控的数据存储系统,其特征在于,包括认证服务器、系统服务器、云存储服务器以及如权利要求7-9任一项所述的用户可控的数据存储终端;
所述认证服务器与所述终端预先约定加密策略,并根据预先约定加密策略将第一密钥发送至所述终端,以供所述终端通过所述第一密钥对待存储数据的索引文件进行对称加密;
所述系统服务器接收所述终端发送的密文数据,所述密文数据包括加密数据、加密索引以及加密密钥,计算该加密数据的MD5值,并将得到的MD5值上传至所述认证服务器;
所述认证服务器将所述终端上传的MD5值于系统服务器上传的加密数据的MD5值进行一致性比较,若一致,则确认系统服务器中的密文数据通过数据完整性验证;
所述系统服务器在通过所述认证服务器的数据完整性验证后,根据所述加密索引对服务器本地索引信息进行更新,并将所述密文数据上传至云存储服务器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611000828.2A CN106682069B (zh) | 2016-11-14 | 2016-11-14 | 用户可控的数据检索方法及数据存储方法、终端、系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611000828.2A CN106682069B (zh) | 2016-11-14 | 2016-11-14 | 用户可控的数据检索方法及数据存储方法、终端、系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106682069A true CN106682069A (zh) | 2017-05-17 |
CN106682069B CN106682069B (zh) | 2021-03-09 |
Family
ID=58840202
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611000828.2A Active CN106682069B (zh) | 2016-11-14 | 2016-11-14 | 用户可控的数据检索方法及数据存储方法、终端、系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106682069B (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108092766A (zh) * | 2017-11-30 | 2018-05-29 | 深圳大学 | 一种密文搜索权限验证方法及其系统 |
CN109547413A (zh) * | 2018-10-23 | 2019-03-29 | 莆田学院 | 具有数据源认证的可转换的数据云存储的访问控制方法 |
CN109842589A (zh) * | 2017-11-27 | 2019-06-04 | 中兴通讯股份有限公司 | 一种云存储加密方法、装置、设备及存储介质 |
CN110149198A (zh) * | 2019-04-29 | 2019-08-20 | 成都信息工程大学 | 一种自主可控地对数据进行安全保护与存储的系统和方法 |
CN110413652A (zh) * | 2019-07-05 | 2019-11-05 | 华侨大学 | 一种基于边缘计算的大数据隐私化检索方法 |
CN110430192A (zh) * | 2019-08-06 | 2019-11-08 | 北京握奇数据股份有限公司 | 一种文件加解密的方法、系统、控制器及存储介质 |
CN113225318A (zh) * | 2021-04-14 | 2021-08-06 | 山东省计算中心(国家超级计算济南中心) | 一种政务大数据加密传输及安全存储的方法及系统 |
CN114722434A (zh) * | 2022-06-09 | 2022-07-08 | 江苏荣泽信息科技股份有限公司 | 基于区块链的台账数据管控方法及装置 |
CN114896218A (zh) * | 2022-07-12 | 2022-08-12 | 苏州青颖飞帆软件科技有限公司 | 一种课程课件的下载存储方法、设备及存储介质 |
CN116074110A (zh) * | 2023-02-21 | 2023-05-05 | 西安电子科技大学 | 一种用于实现云环境中加密文件共享的方法、系统、设备及介质 |
CN116388970A (zh) * | 2023-03-03 | 2023-07-04 | 京信数据科技有限公司 | 一种基于多方数据的中心化云计算实现方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102624522A (zh) * | 2012-03-30 | 2012-08-01 | 华中科技大学 | 一种基于文件属性的密钥加密方法 |
CN103281377A (zh) * | 2013-05-31 | 2013-09-04 | 北京鹏宇成软件技术有限公司 | 一种面向云的密文数据存储与查询方法 |
US20140359282A1 (en) * | 2013-05-31 | 2014-12-04 | Alcatel-Lucent | Systems and methods for enabling searchable encryption |
CN104717297A (zh) * | 2015-03-30 | 2015-06-17 | 上海交通大学 | 一种安全云存储方法及系统 |
CN105991278A (zh) * | 2016-07-11 | 2016-10-05 | 河北省科学院应用数学研究所 | 一种基于cp-abe的密文访问控制方法 |
-
2016
- 2016-11-14 CN CN201611000828.2A patent/CN106682069B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102624522A (zh) * | 2012-03-30 | 2012-08-01 | 华中科技大学 | 一种基于文件属性的密钥加密方法 |
CN103281377A (zh) * | 2013-05-31 | 2013-09-04 | 北京鹏宇成软件技术有限公司 | 一种面向云的密文数据存储与查询方法 |
US20140359282A1 (en) * | 2013-05-31 | 2014-12-04 | Alcatel-Lucent | Systems and methods for enabling searchable encryption |
CN104717297A (zh) * | 2015-03-30 | 2015-06-17 | 上海交通大学 | 一种安全云存储方法及系统 |
CN105991278A (zh) * | 2016-07-11 | 2016-10-05 | 河北省科学院应用数学研究所 | 一种基于cp-abe的密文访问控制方法 |
Non-Patent Citations (1)
Title |
---|
杜红刚等: "基于云存储的网络文档共享系统", 《湖南工业大学学报》 * |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109842589A (zh) * | 2017-11-27 | 2019-06-04 | 中兴通讯股份有限公司 | 一种云存储加密方法、装置、设备及存储介质 |
CN108092766B (zh) * | 2017-11-30 | 2020-12-18 | 深圳大学 | 一种密文搜索权限验证方法及其系统 |
CN108092766A (zh) * | 2017-11-30 | 2018-05-29 | 深圳大学 | 一种密文搜索权限验证方法及其系统 |
CN109547413A (zh) * | 2018-10-23 | 2019-03-29 | 莆田学院 | 具有数据源认证的可转换的数据云存储的访问控制方法 |
CN109547413B (zh) * | 2018-10-23 | 2021-04-27 | 莆田学院 | 具有数据源认证的可转换的数据云存储的访问控制方法 |
CN110149198A (zh) * | 2019-04-29 | 2019-08-20 | 成都信息工程大学 | 一种自主可控地对数据进行安全保护与存储的系统和方法 |
CN110413652B (zh) * | 2019-07-05 | 2022-06-07 | 华侨大学 | 一种基于边缘计算的大数据隐私化检索方法 |
CN110413652A (zh) * | 2019-07-05 | 2019-11-05 | 华侨大学 | 一种基于边缘计算的大数据隐私化检索方法 |
CN110430192A (zh) * | 2019-08-06 | 2019-11-08 | 北京握奇数据股份有限公司 | 一种文件加解密的方法、系统、控制器及存储介质 |
CN113225318A (zh) * | 2021-04-14 | 2021-08-06 | 山东省计算中心(国家超级计算济南中心) | 一种政务大数据加密传输及安全存储的方法及系统 |
CN114722434A (zh) * | 2022-06-09 | 2022-07-08 | 江苏荣泽信息科技股份有限公司 | 基于区块链的台账数据管控方法及装置 |
CN114722434B (zh) * | 2022-06-09 | 2022-08-16 | 江苏荣泽信息科技股份有限公司 | 基于区块链的台账数据管控方法及装置 |
CN114896218A (zh) * | 2022-07-12 | 2022-08-12 | 苏州青颖飞帆软件科技有限公司 | 一种课程课件的下载存储方法、设备及存储介质 |
CN116074110A (zh) * | 2023-02-21 | 2023-05-05 | 西安电子科技大学 | 一种用于实现云环境中加密文件共享的方法、系统、设备及介质 |
CN116074110B (zh) * | 2023-02-21 | 2024-03-19 | 西安电子科技大学 | 一种用于实现云环境中加密文件共享的方法、系统、设备及介质 |
CN116388970A (zh) * | 2023-03-03 | 2023-07-04 | 京信数据科技有限公司 | 一种基于多方数据的中心化云计算实现方法及装置 |
CN116388970B (zh) * | 2023-03-03 | 2023-11-28 | 京信数据科技有限公司 | 一种基于多方数据的中心化云计算实现方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN106682069B (zh) | 2021-03-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106682069A (zh) | 用户可控的数据检索方法及数据存储方法、终端、系统 | |
JP2013513889A (ja) | ラッパ複合を通じたデータのための確認可能な信頼 | |
US11489660B2 (en) | Re-encrypting data on a hash chain | |
WO2020123926A1 (en) | Decentralized computing systems and methods for performing actions using stored private data | |
Sood | Mobile fog based secure cloud-IoT framework for enterprise multimedia security | |
Mahalakshmi et al. | An analysis of cloud computing issues on data integrity, privacy and its current solutions | |
Geeta et al. | Sdvadc: secure deduplication and virtual auditing of data in cloud | |
Singh et al. | Enhancing data security in cloud using Split algorithm, Caesar cipher, and Vigenere cipher, homomorphism encryption scheme | |
Suwansrikham et al. | Asymmetric secure storage scheme for big data on multiple cloud providers | |
Ghutugade et al. | Privacy preserving auditing for shared data in cloud | |
Shahin et al. | Big data platform privacy and security, a review | |
Rajashekar et al. | Dynamic Attribute Tree for the Data Encryption and Third Party Auditing for Cloud Storage | |
Shekar et al. | Security Threats and Privacy Issues in Cloud Data | |
Raja et al. | An enhanced study on cloud data services using security technologies | |
Kumari et al. | A Review on Challenges of Security for Secure Data Storage in Cloud | |
Pandi et al. | Secured forensic framework for various users in the virtualized environment of cloud | |
Wu et al. | A New User-controlled and Efficient Encrypted Data Sharing Model in Cloud Storage | |
Sivasankari et al. | IPFS Enabled Robust Mechanism for File Storage and Retrieval Using Block Chain | |
Asesh | Encryption technique for a trusted cloud computing environment | |
Ashok Reddy et al. | Identity-Based Remote Data Integrity Checking Using Lattice Approach by Third-Party Auditor | |
Djeki et al. | Data confidentiality and integrity in cloud storage environment | |
Jasim et al. | Cloud Computing Cryptography" State-of-the-Art" | |
Abdulwahab et al. | Cloud-Based Data Management Security Models | |
Alrashidi et al. | A Framework and Cryptography Algorithm for Protecting Sensitive Data on Cloud Service Providers | |
Berrezzouq et al. | Issues and Threats of Cloud Data Storage |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20211223 Address after: 412000 room 722, floor 7, shift room 1, track Zhigu, No. 79, Liancheng Road, Shifeng District, Zhuzhou City, Hunan Province Patentee after: Zhuzhou qiyichen Electromechanical Technology Co.,Ltd. Address before: 412007 Taishan West Road, Tianyuan District, Zhuzhou City, Hunan Province Patentee before: HUNAN University OF TECHNOLOGY |
|
TR01 | Transfer of patent right |