2024年6月13日发(作者:)
(19)中华人民共和国国家知识产权局
(12)发明专利说明书
(21)申请号 CN2.7
(22)申请日 2015.07.13
(71)申请人 西安理工大学
地址 710048 陕西省西安市金花南路5号
(72)发明人 王尚平 张亚玲 王晓峰
(74)专利代理机构 西安弘理专利事务所
代理人 李娜
(51)
H04L9/08
G06F17/30
H04L29/08
(10)申请公布号 CN 105049196 A
(43)申请公布日 2015.11.11
权利要求说明书 说明书 幅图
(54)发明名称
云存储中指定位置的多个关键词可
搜索的加密方法
(57)摘要
本发明公开了一种云存储中指定位
置的多个关键词可搜索的加密方法,具体
按照以下步骤实施:步骤1、系统参数初
始化;步骤2、添加用户;步骤3、文件拥
有者对文件加密和安全索引生成;步骤
4、服务器对索引重加密;步骤5、用户关
于关键词搜索令牌的生成;步骤6、云存
储服务器关于密文关键词的搜索;步骤
7、用户关于密文的解密;步骤8、撤销用
户,本发明解决了现有技术中存在的云存
储数据加密后不能实现关键词检索的问
题。
法律状态
法律状态公告日
法律状态信息
法律状态
权 利 要 求 说 明 书
1.云存储中指定位置的多个关键词可搜索的加密方法,其特征在于,具
步骤1、系统参数初始化;
步骤2、添加用户;
步骤3、文件拥有者对文件加密和安全索引生成;
步骤4、服务器对索引重加密;
步骤5、用户关于关键词搜索令牌的生成;
步骤6、云存储服务器关于密文关键词的搜索;
步骤7、用户关于密文的解密;
步骤8、撤销用户。
2.根据权利要求1所述的云存储中指定位置的多个关键词可搜索的加密
步骤(1.1)、由文件加密者Ent输入安全参数k,输出两个阶为素数q的
乘法循环群G1和G2,g1为
方法,其特征在于,所述步骤1具体按照以下步骤实施:
体按照以下步骤实施:
G1的生成元,g2为G2的生成元;
步骤(1.2)、选择双线性映射
步骤(1.3)、随机均匀地选择x∈Zq作为文件加密者Ent的主密钥,记为
其中
.
mskEnt=x,计算
步骤(1.4)、选择两个伪随机函数和 并任意选择两个随机种子
s′,s″∈R{0,1}k;
步骤(1.5)、选择对称加密算法SKE={(1k),(.),
(.)}, 随机均匀地选择一个加密密钥
ek←(1k);
步骤(1.6)、文件加密者Ent公开系统参数为
m
mi> >, o> mrow> /mi> mo>保密系统私钥为mskEnt=x、随机种子 3.根据权利要求1所述的云存储中指定位置的多个关键词可搜索的加密 步骤(2.1)、输入系统用户管理者UM的主密钥kUM=x和用户身份 uID∈U, 密钥 输出用户uID的密钥和辅助 方法,其特征在于,所述步骤2具体按照以下步骤实施: 以及文件加密密钥ek。 ComK msub> > mrow> msubsup> b> > mo> ub> > ow> mi> 这里 mi> mn>2 >u msub>
mi>u
步骤(2.2)、将安全地发送给用户uID,用户uID保密
步骤(2.3)、将安全地发送给Serv,Serv在其用户列表U-ComK
4.根据权利要求1所述的云存储中指定位置的多个关键词可搜索的加密
步骤(3.1)、输入用户密钥加密密钥ek、随机种子s′、文档Di及其关键
词列表
ri∈RZq;
步骤(3.2)、计算和计算
方法,其特征在于,所述步骤3具体按照以下步骤实施:
中加入
mi>j sup> mo>, > i>D i>r mo>
ths>1≤j≤im,令
mo>=
>
msubsup>
mn>1
mega;
/mi>
mo>
>
器Serv。
5.根据权利要求1所述的云存储中指定位置的多个关键词可搜索的加密
方法,其特征在于,所述步骤4具体按照以下步骤实施:
云服务
步骤(4.1)、服务器Serv执行对中的索引的重加密,输入用户身份uID
和接收到的Serv根据uID在U-ComK中查找若无,则返回,
ub>
mi>r
mrow> >I
/mo> >ω
w> ow> > mo> n> o> > > /mo> mi>
mi>i
m
否则重新计算中的得索引: > msup> o> >r o>
mo> > i>r
mo>
mrow>
msup> p> ow> sub> ... msub> mrow> 步骤(4.2)、将Ci=(Encek(Di),Ii) 存储在Serv上。 6.根据权利要求1所述的云存储中指定位置的多个关键词可搜索的加密 步骤(5.1)、用户uID执行用来生成连接关键词的搜索令牌,输入s′、 s″和要检索的关键词位置1≤l1,…,ld≤m及对 方法,其特征在于,所述步骤5具体按照以下步骤实施: 应的关键词w′1,…,w′d,d是用户搜 键词个数,随机选择随机数按照下式计算: 索的关 > up> >s >) ub> mo>+ ow> /mo> n> i>j mi>f mi> >′ mo> > T3=f″(s″,t2); 步骤(5.2)、将搜索令牌T= (uID,T1,T2,T3,l1,…,l< sub>d)发送给云存贮服务器Serv。 7.根据权利要求1所述的云存储中指定位置的多个关键词可搜索的加密 步骤(6.1)、云存贮服务器Serv执行用于搜索加密文档,输入搜索令牌 T= 方法,其特征在于,所述步骤6具体按照以下步骤实施: (uID,T1,T2,T3,l1,…,l< sub>d)及密文Ci= (Encek(Di),Ii),Serv首先根据uID 在U-ComK中 步骤(6.2)、对Ci,1≤i≤n,判断如下等是否成立: ow> > > msub> mrow> >1 /mi> 查找若无,则返回,否则Serv初始化空集Ω; mn>3 若成立,则Ω=Ω∪{Ci},最后将搜索结果Ω发送给用户 uID,否则,该密文与 关键词 不匹配,继续搜索下一个关键词索引Ii+1,最后将搜索结果Ω发送给 用 8.根据权利要求1所述的云存储中指定位置的多个关键词可搜索的加密 用户uID输入对称密钥ek及接收到的Ω,对计算Di= Decek(Ei)。 9.根据权利要求1所述的云存储中指定位置的多个关键词可搜索的加密 用户管理机构UM输入用户身份uID,UM向云存贮服务器Serv发送 撤销 用户uID的命令,Serv执行操作 方法,其特征在于,所述步骤8具体为: 方法,其特征在于,所述步骤7具体为: 户uID。 mo>- mrow> sub> >D mrow>即云存储服 务器CSS删除用户 uID注册项目即成。 说 明 书 技术领域 本发明属于信息安全技术领域,具体涉及一种云存储中指定位置的多个 背景技术 云计算作为一种新的计算模型,能够提供成本较低、可扩展的各种先进 的计算服务,为了节省存储及管理数据的代价,企业和个人可以将数据外包 到云存储服务器。云存储服务提供的数据具有可用性和可靠性等优势, 其也有一个很明显的缺点,即数据不在用户的管理及控制之下,那么 护数据的机密性和完整性便成为用户迫切关注的问题。 关键词可搜索的加密方法。 但是 如何维 虽然企业相信云存储服务提供商(CloudStorageServiceProvider,CSSP) 性、可用性、容错性等,但是人们无法确信CSSP不将托管的数据用 目的;同样对于个人用户而言,他们希望自己的数据只能由自己或指 的可靠 于其他 定的人访问而不能被CSSP访问。这将导致两方面的问题:一方面,从用户 的角度看,他们无法找到让他们完全可信的CSSP来存储和管理他们的数据; 另一方面从CSSP的角度看,在没有解决上述问题的情况下将会丢失 客户。因此,数据的机密性及完整性将阻碍云存储的推广及使大量的 用。 鉴于以上的实际问题,云存储中数据必须在传输到CSSP之前,由用户 自己加密,并且也只能由用户自己进行解密,这样将会减轻用户数据泄漏的 危险。但这将引入一个新的问题,如用户需要包含某个关键字的文档, 用户是否能很快的获得他们想要的数据并那么 保证数据对CSSP的机密性? 发明内容 本发明的目的是提供一种云存储中指定位置的多个关键词可搜索的加 本发明所采用的技术方案是,云存储中指定位置的多个关键词可搜索的 步骤1、系统参数初始化; 步骤2、添加用户; 步骤3、文件拥有者对文件加密和安全索引生成; 步骤4、服务器对索引重加密; 步骤5、用户关于关键词搜索令牌的生成; 步骤6、云存储服务器关于密文关键词的搜索; 步骤7、用户关于密文的解密; 步骤8、撤销用户。 本发明的特点还在于, 加密方法,具体按照以下步骤实施: 密方法,解决了现有技术中存在的云存储数据加密后不能实现关键词检索的 问题。 步骤1具体按照以下步骤实施: 步骤(1.1)、由文件加密者Ent输入安全参数k,输出两个阶为素数q的 乘法循环群G1和G2,g1为 G1的生成元,g2为G2的生成元; 步骤(1.2)、选择双线性映射 步骤(1.3)、随机均匀地选择x∈Zq作为文件加密者Ent的主密钥,记为 其中 . mskEnt=x,计算h=g1x; 步骤(1.4)、选择两个伪随机函数和 并任意选择两个随机种子 s′,s″∈R{0,1}k; 步骤(1.5)、选择对称加密算法SKE={(1k),(.), (.)}, 步骤(1.6)、文件加密者Ent公开系统参数为 随机均匀地选择一个加密密钥ek←(1k); m mi> >, o> mrow> /mi> mo>保密系统私钥为mskEnt=x、随机种子 步骤2具体按照以下步骤实施: 步骤(2.1)、输入系统用户管理者UM的主密钥kUM=x和用户身份 uID∈U, 输出用户uID的密钥和辅助密钥 s′,s″∈R{0,1}k以及文件加密密钥ek。 ComK msub> > mrow> msubsup> b> > mo> ub> > ow> mi> 这里 mi> mn>2 >u msub> mi>u 步骤(2.2)、将安全地发送给用户uID,用户uID保密 步骤(2.3)、将安全地发送给Serv,Serv在其用户列表U-ComK 步骤3具体按照以下步骤实施: 步骤(3.1)、输入用户密钥加密密钥ek、随机种子s′、文档Di及其关键 词列表随机选择ri∈RZq; 步骤(3.2)、计算和 mi>j sup> > mo>) * , 中加入 > > mrow> mo>= > msubsup> mn>1 mega; /mi> mo> mo> Serv。 步骤4具体按照以下步骤实施: 步骤(4.1)、服务器Serv执行对中的索引Ii*的重加密,输 入用户身份uID 和接收到的Serv根据 否则重新计算中的 云服务器 uID在U-ComK中查找若无,则返回, Ii*得索引: mi>i >u > mi>ω o>, mi> i> msub> > = ub> > msub> ub> msub> ub> w> /mi> /mo> o> mi> ub> >, msub> b> o>, w> h mi>ComK > mo>, o>) ths> 步骤(4.2)、将Ci=(Encek(Di),Ii) 存储在Serv上。 步骤5具体按照以下步骤实施: 步骤(5.1)、用户uID执行用来生成连接关键词的搜索令牌,输入s′、 s″和要检索的关键词位置1≤l1,…,ld≤m及对应的关 索的关键词个数,随 键词w′1,…,w′d,d是用户搜 机选择随机数按照下式计算: /mrow> > , mo>) mn>1 mo>+ ow> o>′ ub> mo> /mo> mo>, w> mi> ath> T3=f″(s″,t2); 步骤(5.2)、将搜索令牌T= (uID,T1,T2,T3,l1,…,l< sub>d)发送给云存贮服务器Serv。 步骤6具体按照以下步骤实施: 步骤(6.1)、云存贮服务器Serv执行用于搜索加密文档,输入搜索令牌 T= (uID,T1,T2,T3,l1,…,l< sub>d)及密文Ci= (Encek(Di),Ii),Serv首先根据uID 在U-ComK中 查找若无,则返回,否则Serv初始化空集Ω; 步骤(6.2)、对Ci,1≤i≤n,判断如下等是否成立: ow> > > msub> mrow> >1 /mi> mn>3 若成立,则Ω=Ω∪{Ci},最后将搜索结果Ω发送给用户 uID,否则,该密文与 关键词不匹配,继续搜索下一个关键词索 户uID。引Ii+1,最后将搜索结果Ω发送给用 步骤7具体为: 用户uID输入对称密钥ek及接收到的Ω,对计算Di= Decek(Ei)。 步骤8具体为: 用户管理机构UM输入用户身份uID,UM向云存贮服务器Serv发送 撤销 用户uID的命令,Serv执行操作即云存储服 务器CSS删除用户uID注册项目即成。 本发明的有益效果是,云存储中指定位置的多个关键词可搜索的加密 数据用户可以将自己的数据加密后,存放到云存储服务器,需要时候, 可以通过关键词检索令牌检索到需要的密文数据,然后下载解密。同时,云 存储服务器并不知道用户检索的关键词,确保用户的数据信息隐私性。 与现有方案相比较,本发明方法在通信和计算代价,即搜索陷门大小、 词加密和搜索的速度等方面的综合效率得到提高,同时本发明是适合 环境的,是指可以增加和撤销用户,用户增加可以通过算法 现,用户的撤销可以通过算 方法, 通过 关键 多用户 Enroll(kUM,uID)实 法RevokeUser(uID)实现。 具体实施方式 下面结合具体实施方式对本发明进行详细说明。 本发明云存储中指定位置的多个关键词可搜索的加密方法,具体按照以 步骤1、系统参数初始化: 具体按照以下步骤实施: 步骤(1.1)、由文件加密者Ent输入安全参数k,输出两个阶为素数q的 乘法循环群G1和G2,g1为 下步骤实施: G1的生成元,g2为G2的生成元; 步骤(1.2)、选择双线性映射 步骤(1.3)、随机均匀地选择x∈Zq作为文件加密者Ent的主密钥,记为 其中 . mskEnt=x,计算h=g1x; 步骤(1.4)、选择两个伪随机函数和 并任意选择两个随机种子 s′,s″∈R{0,1}k; 步骤(1.5)、选择对称加密算法SKE={(1k),(.), (.)}, 步骤(1.6)、文件加密者Ent公开系统参数为 随机均匀地选择一个加密密钥ek←(1k); m mi> >, o> mrow> /mi> mo>保密系统私钥为mskEnt=x、随机种子 步骤2、添加用户: s′,s″∈R{0,1}k以及文件加密密钥ek。 具体按照以下步骤实施: 步骤(2.1)、输入系统用户管理者UM的主密钥kUM=x和用户身份 uID∈U, 输出用户uID的密钥和辅助密钥 ComK msub> > mrow> msubsup> b> > mo> ub> > ow> mi> 这里 mi> mn>2 >u msub> mi>u 步骤(2.2)、将安全地发送给用户uID,用户uID保密 步骤(2.3)、将安全地发送给Serv,Serv在其用户列表U-ComK 步骤3、文件拥有者对文件加密和安全索引生成: 具体按照以下步骤实施: 步骤(3.1)、输入用户密钥加密密钥ek、随机种子s′、文档Di及其关键 词列表随机选择ri∈RZq; 步骤(3.2)、计算和 mi>j sup> > mo>) * , > > mrow> mo>= 中加入 > msubsup> mn>1 mega; /mi> mo> mo> Serv; 步骤4、服务器对索引重加密: 具体按照以下步骤实施: 步骤(4.1)、服务器Serv执行对中的索引Ii*的重加密,输 入用户身份uID和接收到的Serv根据uID在U-ComK中查 找若无,则返回, mi>i >u > mi>ω o>, mi> 否则重新计算中的Ii*得索引: 云服务器 i> msub> > = ub> > msub> ub> msub> ub> w> /mi> /mo> o> mi> ub> >, msub> b> o>, w> h mi>ComK > mo>, o>) ths> 步骤(4.2)、将Ci=(Encek(Di),Ii) 存储在Serv上; 步骤5、用户关于关键词搜索令牌的生成: 具体按照以下步骤实施: 步骤(5.1)、用户uID执行用来生成连接关键词的搜索令牌,输入s′、 s″和要检索的关键词位置1≤l1,…,ld≤m及对应的关 索的关键词个数,随 键词w′1,…,w′d,d是用户搜 机选择随机数按照下式计算: /mn> mi>I /mi> o> ow> mi>t p> mo>′ ime; o> >t > i> sup> > ′ ub> msup> mn>2 msub> mtr> mi>f row> ow> 步骤(5.2)、将搜索令牌T= (uID,T1,T2,T3,l1,…,l< sub>d)发送给云存贮服务器Serv; 步骤6、云存储服务器关于密文关键词的搜索: 具体按照以下步骤实施: 步骤(6.1)、云存贮服务器Serv执行用于搜索加密文档,输入搜索令牌 T= (uID,T1,T2,T3,l1,…,l< sub>d)及密文Ci= (Encek(Di),Ii),Serv首先根据uID 在U-ComK中 查找若无,则返回,否则Serv初始化空集Ω; 步骤(6.2)、对Ci,1≤i≤n,判断如下等是否成立: ow> > > msub> mrow> >1 /mi> mn>3 若成立,则Ω=Ω∪{Ci},最后将搜索结果Ω发送给用户 uID,否则,该密文与 关键词不匹配,继续搜索下一个关键词索 户uID;引Ii+1,最后将搜索结果Ω发送给用 步骤7、用户关于密文的解密: 具体为: 用户uID输入对称密钥ek及接收到的Ω,对计算Di= Decek(Ei); 步骤8、撤销用户: 具体为: 用户管理机构UM输入用户身份uID,UM向云存贮服务器Serv发送 撤销 下面对本发明云存储中指定位置的多个关键词可搜索的加密方法的安 证明:若所有数据都是按照本发明方法中描述生成的,并且如果 1≤i≤m,1≤j≤d,则有: i>d ub> > n>2 mi> l msub> w> mi> ow> w> sup> msub> 其中 全性进行分析: 用户uID的命令,Serv执行操作即云存储服 务器CSS删除用户uID注册项目即成。 >( > > w> > msubsup> mtr> > mi>I ub> p> mi>T w> > mo>′ /mo> Σ msubsup> p> j >x b> row> mrow> /mi> mi> msub> mo>) mi> > w> up> bsup> >d ′ /msup> p> i> ced> 因此 ow> > > msub> mrow> >1 /mi> mn>3 证毕 对本发明的总结: 本发明云存储中指定位置的多个关键词可搜索的加密方法,能够在加密 的数据集合上进行搜索查询,具体方法是,先为文件集合生成索引集合,再 使用可搜索加密对这些索引进行加密以隐藏索引内容,并且加密要满 性质:1)给定一个关键字(即索引)的令牌,可以获得包含该关 有文件的指针;2)没有令牌,索引的内容是隐藏的;3)只有具 的用户才能生成令牌;4)检索过程除了暴露了哪些文件共享某 不会暴露任何有关文件和关键字的具体信息。可搜索加 存储服务提供:一是用户自己控制其数据;二是 码学原理验证,而不是通过法律、物理设 足如下 键字的所 有相关密钥 个关键字外, 密的核心作用是为云 数据的安全性质可以通过密 备来确定安全性。 本发明云存储中指定位置的多个关键词可搜索的加密方法,在云存储服 务中,用户可以使用可搜索的加密方案对数据加密后,外包到云存储服务器。 可搜索加密方案使得用户能够有选择的访问其密文数据,同时还能确 搜索数据的机密性,基于连接关键词(即多个关键词的布尔组 加密方案因其更高的搜索精度在安全存储服务中有着重要的应 明采用授权用户和存储服务器先后对关键词加密的方式 多个关键词的加密方法,使得授权用户能够利用连接关 文档。通过与现有方案相比较,提出的方案在通 大小、关键词加密和搜索的速度,等方面 的方案支持多用户,即能够动态的 储服务器上进行数据共享。 保用户 合)的可搜索 用价值。本发 提出了一种可搜索 键词的陷门搜索加密 信和计算代价,即搜索陷门 的综合效率得到提高。此外,提出 增加和撤销用户,使得用户能够直接在存


发布评论