1.一种支持撤销和验证的无配对可搜索加密方法,其特征在于有下述步骤组成:(1)生成加密索引及文件生成加密索引及文件的方法如下:
1)数据所有者从p阶整数群 中选取私钥α,按下式确定公钥β:α
β=g
λ
其中g为从p阶群 中选取的随机元素,p>2 ,λ为参数,λ为有限的正整数;
2)按下式确定累加器Ai:N=q1×q2
其中,Wi表示关键字集合,i∈{1,2,...,n},n表示数据所有者上传的文档数量,n为有限正整数,w为关键字集Wi中的关键字,q1、q2为随机选取的大素数,e属于模N的二次剩余、且e不为1;每个关键字集合Wi生成对应的累加器Ai;
3)按下式确定文档Di的安全索引Xi:Xi=(Ci,Ui,Vi)Ci={cij}
cij=ti+α×H(wij)Ui={uik}
Vi=(vi1,vi2,vi3)其中wij为待加密的关键字,ti为从p阶整数群 中选取的随机整数, H为单向哈希函数,*表示任意长度, H'为随机选择的单向哈希函数,gk为从p阶群 中选取的随机元素,k∈{1,2,...,n},fij作为关键字wij的累加器证明;
4)按下式确定加密文档
其中E为选择的对称加密方法;
5)输出加密数据M并上传到云服务提供商:(2)生成聚合共享密钥
按下式生成聚合共享密钥KA:KA=Πk∈Shk
其中,S为数据所有者选定的共享文档集合,(3)生成搜索令牌
数据用户在本地初始化建立可信执行环境,与数据所有者进行远程认证,认证通过后,双方建立安全信道,获得共享通信密钥ks,数据所有者通过安全信道将聚合授权密钥发送给数据用户,数据用户执行搜索令牌生成方法,输出搜索令牌Tu;
按下式确定搜索令牌Tu:(4)查询关键字
1)按下式生成结果集R:R={i}
对于每个文档Di, 与Πk∈Suik×Tu相等时,将文档Di的编号i加入到结果集R中;
2)按下式生成证明集O:O={Oi}
Oi=(pi1,pi2,pi3)pi1=vi1
pi2=vi2
pi3=vi3
3)将结果集R和证明集O作为搜索结果发送给数据用户;
(5)验证搜索结果
1)按下式恢复累加器Ai:有任意一个累加器Ai不能被恢复,终止方法;
2)按下式恢复累加器证明fij:
3)按下式得到累加器A'i:w
A'i=fijmod NAi与A'i相等时,验证结果bi为1,输出验证结果集B:B={bi};
(6)撤销共享密钥
数据所有者撤销密钥时,生成撤销指令R如下:其中KA为选定要撤销的共享密钥,r表示撤销命令;
数据用户接收到撤销指令,在可信执行环境中使用共享通信密钥ks对撤销指令R进行解密,得到共享密钥KA,擦除存储该密钥的内存,完成撤销共享密钥KA。
2.根据权利要求1所述的支持撤销和验证的无配对可搜索加密方法,其特征在于所述的(1)步骤的1)步骤为:数据所有者从p阶整数群 中选取私钥α,按下式确定公钥β:α
β=g
λ
其中g为从p阶群 中选取的随机元素,p>2 ,λ为参数,λ取值为80。
3.根据权利要求1所述的支持撤销和验证的无配对可搜索加密方法,其特征在于所述的(3)步骤中的输出搜索令牌Tu为:按下式确定搜索令牌Tu:
4.根据权利要求1所述的支持撤销和验证的无配对可搜索加密方法,其特征在于所述的(1)生成加密索引及文件为:生成加密索引及文件的方法如下:
1)数据所有者从p阶整数群 中选取私钥α,按下式确定公钥β:α
β=g
λ
其中g为从p阶群 中选取的随机元素,p>2,λ为参数,λ为有限的正整数;
2)按下式确定累加器Ai:N=q1×q2
其中,Wi表示关键字集合,i∈{1,2,...,n},n表示数据所有者上传的文档数量,n取值为
1000,w为关键字集Wi中的关键字,q1、q2为随机选取的长度为1024比特的大素数,e属于模N的二次剩余、且e不为1;每个关键字集合Wi生成对应的累加器Ai;
3)按下式确定文档Di的安全索引Xi:Xi=(Ci,Ui,Vi)Ci={cij}
cij=ti+α×H(wij)Ui={uik}
Vi=(vi1,vi2,vi3)其中wij为待加密的关键字,ti为从p阶整数群 中选取的随机整数, H为单向哈希函数,*表示任意长度, H'为随机选择的单向哈希函数,gk为从p阶群 中选取的随机元素,k∈{1,2,...,n},fij作为关键字wij的累加器证明;
4)按下式确定加密文档
其中E为选择的对称加密方法;
5)输出加密数据M并上传到云服务提供商: