一种云计算环境下以用户为中心的数据检索和共享方案
- 国知局
- 2024-09-11 15:10:29
本技术涉及网络与信息安全领域,具体涉及一种云计算环境下以用户为中心的数据检索和共享方案。
背景技术:
1、云计算领域的快速发展,为许多算力有限的用户和设备提供了便利。用户和设备可以把让云服务器承担一部分计算的责任来实现更复杂的功能。但是,云服务器一般是半可信的,在这种情况下,对于直接将没有进行任何处理的数据外包到云服务器,相当于放弃了对数据的控制。由于数据通常包含敏感信息,因此存在隐私泄露的风险。所以为了保护数据,数据拥有者通常在将数据外包到云服务器之前对其进行加密。
2、外包数据加密的方式有很多,其中一个典型的方案是基于属性的加密,其可以进行精确的访问控制。在基于云的系统中,用户上传信息到云端之前,使用特定属性对其进行加密,从而保护数据的机密性,确保只有授权用户可以访问。但当需要授权的用户增多时,如何安全高效地进行数据共享成为一项挑战。一种做法是用户为每个需要授权的用户解密并重新加密数据,但这种方法明显增加了用户本身的计算负担。另一种方法是将用户的属性密钥委托给云服务器,由其代替用户进行解密并重新加密。这种方法需要云服务器完全可信,但在实际中云服务器通常是半可信的,因此这种方法对云服务器的信任要求过高,而代理重加密为解决这些问题提供了可行的方案。
3、在数据共享过程中,数据检索也是关键的步骤。对明文数据的搜索过程相对简单。当数据以密文形态存储在云端时,数据的检索变得复杂。一种常见的解决方案是创建一个数据表来记录数据信息,但随着数据量的增加,维护数据表的成本也随之上升。基于公钥的可搜索加密以及基于属性的可搜索加密为解决这一问题提供了途径。尽管在数据共享方面的研究已有诸多进展,但是当前的研究仍无法完全满足数据用户在数据搜索和共享中的需求。例如,用户希望获取他们感兴趣的所有数据,这不仅包括他们有权限访问的数据,还包括他们感兴趣但没有权限访问的数据。此外,用户希望能够以非常低的成本解密获取的数据,这也是有待解决的问题。
技术实现思路
1、本技术为了解决上述技术问题,提出了如下技术方案:
2、权威机构调用算法,输入安全参数和属性空间进行初始化,得到系统主密钥并公开系统参数,用户向权威机构提交一个属性集,权威机构调用(),输入主密钥和属性集,得到属性密钥发送给数据拥有者和数据使用者。
3、数据拥有者选择一组关键字,调用算法生成索引和中间秘密值;之后,数据拥有者使用明文、访问策略和中间秘密值,调用算法生成密文,并将索引和密文上传到云存储服务器。
4、数据使用者想要获得感兴趣的数据时,调用算法,使用属性密钥生成预解密密钥和解密密钥;数据使用者调用算法生成陷门;之后,数据使用者向云查询服务器发送查询请求。
5、云查询服务器在接收到数据使用者的请求后,调用算法使用陷门、数据索引和匹配阈值生成,将符合数据使用者兴趣的数据条目记录在列表1中;若成功输出,则调用算法先判断属性是否符合访问策略后,不符合则在列表1中删除数据条目;若符合则输入、预解密密钥生成和原始密文生成预解密密文;需要注意的是,列表1和列表2符合数据使用者的兴趣匹配到的所有数据;列表1包含与数据使用者的兴趣匹配并且他们可以访问的数据,而列表2包含与数据使用者的兴趣匹配但他们无法访问的数据。
6、数据拥有者收到数据使用者的请求后,调用算法输入自己的属性密钥和访问策略,输出重加密密钥发送给云存储服务器。
7、云查询服务器收到数据使用者的重加密密钥后,调用算法,输入预解密密钥、重加密密文和重加密密钥生成预解密密文并发送给数据使用者。
8、数据使用者收到原始密文的预解密密文和重加密密文的预解密密文后,将两份密文和解密密钥分别作为和算法的输入来验证原始密文和重加密密文是否被篡改,并输出明文。
9、流程中提到的算法具体为:
10、算法1、初始化:权威机构au将安全参数和属性空间作为输入,算法选择阶为素数的双线性群,定义双线性映射为;定义,,,,,,作为哈希函数;随机选择、、;输出系统主密钥和公开参数。
11、算法2、密钥生成:当用户提交一个属性集时,权威机构au使用主密钥和属性集作为算法的输入;此算法随机选择,计算对于属性集中的每个属性计算再计算,。
12、最终输出属性密钥。
13、算法3、索引生成:当数据拥有者do将数据上传到云端时,选择一组关键字作为算法的输入算法随机选择,,令计算对中的每个关键字计算,最终输出索引和中间秘密值。
14、算法4、数据加密:生成索引后,数据拥有者do将明文、访问策略、中间秘密值和作为算法输入,其中为的矩阵;算法随机选择,计算,随机选择构成向量,对于计算,随机选择,计算,,然后计算,,,,,最终输出运行算法3和4后,数据拥有者do将索引和密文上传到云存储服务器css。
15、算法5、预解密密钥生成:当数据使用者du希望获取与感兴趣的数据时,将其属性密钥作为输入;算法随机选择,计算,对于属性密钥中属性集的每个属性计算,令 ;最终输出预解密密钥和解密密钥。
16、算法6、陷门生成:生成预解密密钥和解密密钥之后,数据使用者du将其属性密钥,解密密钥,关键字作为输入;算法随机选择,对于的关键字依次计算,,,;然后随机选择,对于的关键字依次计算,,,;之后计算,设;最终输出陷门。
17、数据使用者du向云查询服务器cqs提交查询请求,请求包括陷门、预解密密钥和匹配阈值。
18、算法7、陷门匹配:云查询服务器cqs接收到数据使用者du的请求后,将陷门、不同的数据索引以及匹配阈值作为输入;算法定义计数器和分别记录最后一个陷门中关键字和索引中关键字匹配成功的一项;算法计算并判断与是否相等,如果不相等则继续检索直到全部检索完毕,如果相等,令计数器 +1,并记录匹配项陷门关键字位置和索引关键字位置;检索完毕后判断计数器的值是否达到阈值,如果没有达到,则输出,如果达到阈值,则计算,。
19、算法最终输出,同时云查询服务器cqs将符合数据使用者兴趣的数据条目记录在列表1中。
20、算法8、预解密原始密文:如果算法7成功输出,那么云查询服务器cqs将和预解密密钥、原始密文一起作为此算法的输入;算法判断中的属性是否满足中的访问策略。
21、如果不满足则直接输出;此时云查询服务器cqs将列表1中数据条目删除,将其添加到列表2中;如果满足,则设,随机选择,使得;计算,,;算法输出原始密文预解密密文。
22、算法9、重加密密钥生成:当数据拥有者do收到数据使用者du的请求之后,do将自己的属性密钥和满足du属性密钥的访问策略作为算法的输入;算法随机选择,计算,,,对于属性密钥中的每个属性计算;然后计算,;随机选择,对于中的所有列计算,随机选择,计算最终输出重加密密钥。
23、算法10、密文重加密:云查询服务器cqs收到数据使用者du从数据拥有者do手中获取到的重加密密钥之后,将原始密文和重加密密钥作为算法的输入;算法设。
24、随机选择,使得;计算;最终输出重加密密文。
25、算法11、预解密重加密密文:云查询服务器cqs通过算法10获取到重加密密文后将预解密密钥、重新加密密文以及重新加密密钥作为此算法的输入;算法判断中的属性是否满足中的访问策略,如果不满足则直接输出;如果满足,则设,随机选择,使得;计算;令,最终输出重加密密文的预解密密文。
26、算法12、解密原始密文的预解密密文:数据使用者du接收到云查询服务器cqs返回的原始密文的预解密密文和解密密钥作为算法输入;算法进行以下计算,,。
27、若则表明密文未被篡改,输出明文,否则输出。
28、算法13、解密重加密密文的预解密密文:数据使用者du接收到云查询服务器cqs返回的重加密密文的预解密密文和解密密钥作为算法输入。算法进行计算,,,。
29、若,则表明密文未被篡改,输出明文,否则输出。
30、本方案设计了独特的数据检索、验证以及共享方案,方案确保数据使用者可以获取到他们感兴趣的所有数据,从而提升云计算环境中对用户的加密数据检索操作与共享操作的友好性。
31、在保证数据安全的情况下利用云计算服务器对数据进行预解密,从而减少数据使用者的解密计算时间,同时方案支持细粒度的访问控制,允许数据拥有者在不损害数据安全性的情况下将重新加密任务委托给云服务器,从而减少数据拥有者的计算负担。
32、与现有技术相比,本发明具有以下技术效果:
33、现有数据共享和加密方案中,无法在保证云服务器对数据有效检索和共享的同时,保证安全性;本发明采用代理重加密和基于属性和关键字的加密策略,设计了独特的数据检索、验证以及共享方案,方案确保数据使用者可以获取到他们感兴趣的所有数据,从而提升云计算环境中对用户的加密数据检索操作与共享操作的友好性;在保证数据安全的情况下利用云计算服务器对数据进行预解密,从而减少数据使用者的解密计算时间,同时方案支持细粒度的访问控制,允许数据拥有者在不损害数据安全性的情况下将重新加密任务委托给云服务器,从而减少数据拥有者的计算负担。
本文地址:https://www.jishuxx.com/zhuanli/20240911/293447.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表