一种可搜索的云安全数据加密方法技术

技术编号:12580787 阅读:64 留言:0更新日期:2015-12-23 19:10
一种可搜索的云安全数据加密方法,包括如下主要步骤:初始化、密钥生成、加密、重加密、生成令牌、搜索、预解密、解密、撤销。本发明专利技术能够对加密后的密文,直接进行搜索,让服务商根据要求直接选择密文,返回给相应的用户,并且保证在此过程中不泄露任何索引和文件信息给云服务提供商。

【技术实现步骤摘要】

本专利技术涉及一种数据加密方法,更具体的说,是涉及一种可搜索的云安全数据加 密方法。
技术介绍
云计算是信息领域正在发生的深刻变革,它将大量计算资源、存储资源和软件资 源链接在一起为用户提供了按需、易扩展的信息服务。云存储服务作为其中最重要的服务 之一,允许企业和个人将其数据外包到云服务器上,并以按使用付费的原则为其管理和维 护数据。然而,云存储在提高资源的利用效率和节约用户成本的同时,却给数据的保密性和 用户的隐私性带来了巨大的挑战。加密技术已经成为云计算中保护敏感数据和防止信息泄 漏的重要工具,而随之而来的加密数据的搜索与回取却成了一大难题。因此,如何解决数据 加密和数据搜索之间的冲突已经成为亟需解决的重要问题。 本专利技术针对加密数据搜索的问题提出了。该方 法主要由初始化、密钥生成、加密、重加密、生成令牌、搜索、预解密、解密、撤销等步骤组成。
技术实现思路
本专利技术要克服现有技术的上述缺点,提供一种能够对加密后的密文直接进行搜 索、同时为保证密文传输的安全性和可靠性的。该方法 让云服务商根据要求直接选择密文,返回给相应的用户,并且保证在此过程中不泄露任何 索引和文件信息给云服务提供商。 -种可搜索的云安全数据加密方法,主要包括以下步骤: 步骤1、初始化(lk); DO读取安全参数lk,输出系统参数Pk=(G,g,q,f,H,h,gaha),其中G表示一个q 阶循环群,g为G的生成元,f?为一个以s为密钥的伪随机函数,H为一个安全的散列函数, h=gR,其中RGzq%随机选择一个aGz:,xGzq%Sk= (a,X,s);将Pk公开,S!/[呆持私 有; 步骤2、生成密钥(KM,u); DO为用户身份为uGU,输出一个用户密钥eg以及一个辅助密钥Xu2=x-xul; 计算ai| |a2=a(modq),将(xul,aps)发送给用户u,将(u,xu2,a2)发送到云服务器端作为 用户u的辅助密钥; 步骤 3、数据加密(xul,d,d.w); 用户u计算,其中对于关键字d.w计算I(d.w) =(IpI2),其中, 乃=.(§'1')"1:,〇=;^((1.'\¥),1 2=11((83113)1'),然后将(1'=伍((1),1((1.'\¥)}发送到服务器 端进行存储; 步骤 4、重加密(u,xu2,cT); 当收到来自用户u的数据组时,服务器端首先寻找与用户u相关的辅助密 钥xu2,保存数据组(u,xu2,d〃);其中d" ={E" (d),I〃(d.w)},E〃(d)=E(d), /V-u〇= !/;'-,/:); 步骤5、生成令牌(Ku,w');用户u计算,其中T(v/)=(n"im#Tu(w')发送到服务器端进行数据检索; 步骤 6、搜索(u,Tu(w' ),ID); 当收到用户u的搜索请求时,找到与用户u相对应的辅助密钥并计算 T=T?fl' =(^~严二(容^^ ;对每一个数据项计算,如果I2=H(Ii?T),就意味着 I" (d)对应的数据E" (d)是用户所需要的数据;采用预解密算法对E" (d)解密后将d' 返回给用户; 步骤 7、预解密(u,xu2,d"); 服务器端判断数据发送给哪个用户,假设是叫,查看需要预解密的数据组 (u,xu2,d"),如果u=ud,则直接返回数据给ud;如果u乒ud,则计算也=xu2-xd2,其中xd2 为叫用户在服务器端的辅助密钥;据E(d)计算,其中~表 示用户ud的用户密钥;将{g'\g~返回给用户ud; 步骤 8、解密(xul,cT); 用户u计算(g"')'」_d,完成解密; 步骤9、撤销(u); 服务器端删除与用户u相对应的辅助密钥,达到撤销用户搜索权限的效果。 本专利技术的优点在于: 由于云环境下,云服务器并不是完全可信的,为了保护不可信云服务器上用户敏 感数据的隐私性,数据上传之前要进行加密,这使得对密文数据的高效检索成为一个具有 挑战性的问题,本专利技术能够对加密后的密文,直接进行搜索,让服务商根据要求直接选择密 文,返回给相应的用户,并且保证在此过程中不泄露任何索引和文件信息给云服务提供商。【附图说明】 图1为本专利技术的流程图【具体实施方式】本专利技术由三个核心模块组成:(1)数据处理器:在将数据传送到云上之前对其进 行处理;(2)数据校验器:可随时校验数据的完整性;(3)令牌生成器:生成允许服务提供 商取得文档的令牌。用户持有一个主密钥,存在用户的本地系统,而云服务供应商不知道这 个密钥。在将数据上传到云之前,用户使用数据处理器将数据与其相应的元数据一起加密 和编码,然后再将其传送到云上。当用户下载一些文档时,则使用令牌生成器创建一个令牌 和密钥,其中令牌被发送给云服务商,并据此以搜索选择需要下载的被加密文件,并返回给 用户。然后,数据校验器被启用,用户以自己持有的主密钥来校验数据的完整性。而令牌生 成器产生的解密密钥会被用来对文档进行解密。当用户A希望与用户B共享数据时,过程 与此相似。用户A调用令牌生成器生成令牌和密钥,将令牌和密钥发送给用户B,用户B将 令牌发送到服务提供商,后者则使用该令牌检索并返回相应的加密文件,然后用户B根据 解密密钥对文档进行解密。准备在云存储数据时,数据处理器首先为其建立索引,并使用对 称加密模式AES用唯一密钥对其进行加密,然后使用可搜索的加密模式对索引进行加密, 接下来用基于属性的加密模式对唯一密钥加密,最后,对加密的数据和索引进行编码,编码 的方式使得之后数据校验器能够使用存储证据来验证数据的完整性。具体步骤如下: 步骤1、初始化(lk); DO读取安全参数lk,输出系统参数Pk=(G,g,q,f,H,h,gaha),其中G表示一个q 阶循环群,g为G的生成元,f?为一个以s为密钥的伪随机函数,H为一个安全的散列函数, h=gR,其中RGzq%随机选择一个aGz:,xGzq%Sk= (a,X,s);将Pk公开,S!/[呆持私 有; 步骤2、生成密钥(KM,u); DO为用户身份为ugU,输出一个用户密钥teZj以及一个辅助密钥Xu2=x-xul; 计算ai| |a2=a(modq),将(xul,aps)发送给用户u,将(u,xu2,a2)发送到云服务器端作为 用户u的辅助密钥; 步骤 3、数据加密(xul,d,d.w); 用户u计算,其中对于关键字d.w计算I(d.w) =d12),其中, 4=(,?'+<^广,.〇=;^((1.'\¥),1 2=11((83113)1'),然后将(1'=伍((1),1((1.'\¥)}发送到服务器 端进行存储; 步骤 4、重加密(u,xu2,d'); 当收到来自用户u的数据组时,服务器端首先寻找与用户u相关的辅助密 钥xu2,保存数据组(u,xu2,d〃);其中d" ={E" (d),I〃(d.w)},E〃(d)=E(d), = (/!":,/」; 步骤5、生成令牌(Ku,w'); 用户u计算,其中T,,(w') =CiT'__广;将Tu(w')发送到服务器端进行数据检索; 步骤 6、搜索(u,Tu(w' ),ID); 当收到用户u的搜索请求时,找到与用户u相对应的辅助密钥并计算 T=T;AwY' =(g;对每一个数据项计算,如果l2=H(I本文档来自技高网...

【技术保护点】
一种可搜索的云安全数据加密方法,主要包括以下步骤:步骤1、初始化(1k);DO读取安全参数1k,输出系统参数Pk=(G,g,q,f,H,h,gaha),其中G表示一个q阶循环群,g为G的生成元,f为一个以s为密钥的伪随机函数,H为一个安全的散列函数,h=gR,其中R∈Zq*;随机选择一个a∈Zq*,x∈Zq*,Sk=(a,x,s);将Pk公开,Sk保持私有;步骤2、生成密钥(KDO,u);DO为用户身份为u∈U,输出一个用户密钥以及一个辅助密钥xu2=x‑xu1;计算a1||a2≡a(mod q),将(xu1,a1,s)发送给用户u,将(u,xu2,a2)发送到云服务器端作为用户u的辅助密钥;步骤3、数据加密(xu1,d,d.w);用户u计算,其中对于关键字d.w计算I(d.w)=(I1,I2),其中,σ=fs(d.w),I2=H((gaha)r),然后将d′={E(d),I(d.w)}发送到服务器端进行存储;步骤4、重加密(u,xu2,d′);当收到来自用户u的数据组时,服务器端首先寻找与用户u相关的辅助密钥xu2,保存数据组(u,xu2,d″);其中d″={E″(d),I″(d.w)},E″(d)=E(d),I′′(d.w)={I1a2,I2};]]>步骤5、生成令牌(Ku,w′);用户u计算,其中将Tu(w′)发送到服务器端进行数据检索;步骤6、搜索(u,Tu(w′),ID);当收到用户u的搜索请求时,找到与用户u相对应的辅助密钥并计算对每一个数据项计算,如果I2=H(I1·T),就意味着I″(d)对应的数据E″(d)是用户所需要的数据;采用预解密算法对E″(d)解密后将d′返回给用户;步骤7、预解密(u,xu2,d″);服务器端判断数据发送给哪个用户,假设是ud,查看需要预解密的数据组(u,xu2,d″),如果u=ud,则直接返回数据给ud;如果u≠ud,则计算ψ=xu2‑xd2,其中xd2为ud用户在服务器端的辅助密钥;据E(d)计算其中xd1表示用户ud的用户密钥;将返回给用户ud;步骤8、解密(xu1,d′);用户u计算完成解密;步骤9、撤销(u);服务器端删除与用户u相对应的辅助密钥,达到撤销用户搜索权限的效果。...

【技术特征摘要】

【专利技术属性】
技术研发人员:刘东升邹江波周怡王蓓王黎明王冰
申请(专利权)人:浙江工商大学
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1