1.一种电商平台中隐藏搜索模式和访问模式的可搜索加密方法,其特征在于,包括以下步骤:
S1、获取原始数据,对原始数据进行预处理,采用Porter词干算法对数据进行处理,删除重复数据和无效数据,使非结构化数据结构化,得到预处理后的数据并储存在本地;
S2、初始化阶段:用户生成所需对称密钥和非对称密钥;首先基于预处理后的数据,过滤掉文件中的无用数据,提取关键字和文件的关系,基于关键字和文档的关系构建索引矩阵,利用对称密钥对索引矩阵进行加密,生成安全索引;利用对称加密算法对文件进行加密,生成加密文件;构建辅助数据结构来满足用户的不经意访问;将生成的安全索引、加密文件以及辅助数据结构上传至服务器;辅助数据结构为二级映射表Ω(Mw,A),二级映射表由一个地址映射表Mw(l,i)和一个数组A[i]构成,存于服务器,地址映射表Mw(l,i)存储键值对,键为关键字所属的块号l,值为i;
S3、密文检索:用户生成搜索陷门,对服务器发起搜索请求;服务器接收到用户的搜索请求后,服务器根据搜索陷门执行查询过程,完成搜索;搜索完成后,对服务器的索引矩阵进行混洗;
服务器根据搜索陷门执行查询过程包括:
S321:执行一级搜索:根据关键字所属块号l生成的搜索陷门查询二级映射Ω(Mw,A)中的地址映射表Mw(l,i),根据i←Mw[l]可获得待查询关键字在数组A中的起始位置,此时再根据该起始位置顺序检索数组A,获得一个大小为ν的行号组row=(ri,...,ri+v);
S322:执行二级搜索:根据一级搜索获得的行号组row,检索加密索引矩阵,读取一个大小为ν的数据块B=(b1,..,bv),该数据块为对称加密的密文;服务器与用户执行1‑out‑of‑n不经意传输协议,在对称加密的密文基础上再进行一次加密,得到查询结果,并将查询结果发送给用户;
S323:用户解密:用户获得查询结果后,先根据1‑out‑of‑n不经意传输协议进行第一次解密,即 获得对称加密的结果 再检索关键字哈希表Tw获得待查询关键字的初始行号,联合对称加密算法的解密密钥k对查询结果进行第二次解密,得到包含该待查询关键字的文件标识符集合,即 其中,Υw表示包含该关键字的文件标识符集合;
对服务器的索引矩阵进行混洗包括:用户构造置换矩阵、用户加密置换矩阵和服务器执行同态计算,具体包括:S331、构造置换矩阵P,
S332、使用Paillier加密算法对置换矩阵P进行加密处理,得到加密的置换矩阵P',将加密的置换矩阵P'发送给服务器;
S333、服务器对加密后的置换矩阵和加密后的索引矩阵执行同态计算,获得混洗过后的索引矩阵 即
2.根据权利要求1所述的一种电商平台中隐藏搜索模式和访问模式的可搜索加密方法,其特征在于,对称密钥的生成包括:采用元组ε(Gen,Enc,Dec)加密算法生成对称密钥,元组ε(Gen,Enc,Dec)加密算法的实施过程包括:κ
密钥生成:输入安全参数κ,并输出密钥k,表达式为:k←ε.Gen(1);
根据密钥k加密:输入密钥k和明文信息m,输出加密密文c,表达式为:cε.Enck(m);
解密:输入密钥k和密文c,输出明文信息m,表达式为:m←.Deck(c)。
3.根据权利要求1所述的一种电商平台中隐藏搜索模式和访问模式的可搜索加密方法,其特征在于,非对称密钥的生成采用Paillier加密算法实现,包括:随机选择两个使Paillier密码系统在语义上安全的加密参数,分别为第一加密参数p和第二加密参数q,p和q确保给定明文的重复加密生成不同的密文,防止明文攻击,且p和q满足最大公约数gcd(pq,(p‑1)(q‑1))=1,根据加密参数设置公钥PK=(n,g),私钥SK=(λ,μ);其中,gcd表示求最大公约数函数,n表示第一公钥参数,且n为两个加密参数p和q的乘积n=pq,λ表示第一私钥参数,且λ是p‑1和q‑1的最小公倍数值,λ=lcm(p‑1,q‑1),lcm表示求最小公倍数函数,g表示第二公钥参数,且g为随机选择的整数 且满足n整除g的阶,μ表示第二私钥参λ 2 ‑1数,且μ=((gmod n‑1)/n) mod n,mod表示求余函数。
4.根据权利要求1所述的一种电商平台中隐藏搜索模式和访问模式的可搜索加密方法,其特征在于,索引矩阵I中关键字和文件的关系形式化为:其中,Iij表示索引矩阵中第i行第j列的元素,i,j分别表示索引矩阵的行和列,0≤i≤N,0≤j≤N,N表示关键字和文件数量的最大值,wi表示第i个关键字,fj表示第j个文件。
5.根据权利要求1所述的一种电商平台中隐藏搜索模式和访问模式的可搜索加密方法,其特征在于,用户生成搜索陷门包括:用户首次搜索时,根据关键字哈希表Tw确定待查询关键字的行号,并计算该关键字所属块号l,即搜索陷门,将l发送给服务器进行检索;用户若非首次查询,则查询字典D获取待查询关键字的行号,即xi←D[wi],计算该关键字所属块号l,即搜索陷门,并将l发送给服务器进行检索,关键字所属块号l的计算表达式为:其中ν表示数据块的大小,x表示行号。
6.根据权利要求1所述的一种电商平台中隐藏搜索模式和访问模式的可搜索加密方法,其特征在于,1‑out‑of‑n不经意传输协议过程包括:服务器生成系统参数(g,h,G(p)),p为公开的大素数,g,h为 的生成元,G(·)为有限域;用户根据字典D获取待检索关键字的行号xi,即xi←D[wi],随机选择r(r<p),计算用户发送给服务器的消息 将y发送给服务器;服务器接收到y后,计算(α1,c1),...,(αν,cν),将(α1,c1),...,(αv,cν)发送给用户,其中 αν为辅助参数,cν为服务器发送给用户的消息密文,kj为随机数。
7.根据权利要求1所述的一种电商平台中隐藏搜索模式和访问模式的可搜索加密方法,其特征在于,使用Paillier加密算法对置换矩阵P进行加密处理,得到加密的置换矩阵P',具体实现方式包括:首先选择随机数 随机数满足0<r<n,最大公约数gcd(r,n)=1,根据选择的随机数r,使用公钥PK对混淆矩阵M进行Paillier加密,得到加密的混淆矩阵P'=PE.EncPK(P),n表示第一公钥参数。