CN112270006A - 电商平台中隐藏搜索模式和访问模式的可搜索加密方法 - Google Patents
电商平台中隐藏搜索模式和访问模式的可搜索加密方法 Download PDFInfo
- Publication number
- CN112270006A CN112270006A CN202011201549.9A CN202011201549A CN112270006A CN 112270006 A CN112270006 A CN 112270006A CN 202011201549 A CN202011201549 A CN 202011201549A CN 112270006 A CN112270006 A CN 112270006A
- Authority
- CN
- China
- Prior art keywords
- search
- key
- user
- server
- encryption
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 67
- 239000011159 matrix material Substances 0.000 claims abstract description 109
- 238000013507 mapping Methods 0.000 claims abstract description 23
- 238000004364 calculation method Methods 0.000 claims abstract description 17
- 238000004422 calculation algorithm Methods 0.000 claims description 45
- 230000008569 process Effects 0.000 claims description 28
- 230000005540 biological transmission Effects 0.000 claims description 15
- 238000012545 processing Methods 0.000 claims description 4
- 238000001914 filtration Methods 0.000 claims description 3
- 235000020004 porter Nutrition 0.000 claims description 3
- 238000007781 pre-processing Methods 0.000 claims description 3
- 238000005516 engineering process Methods 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 239000000243 solution Substances 0.000 description 5
- 238000004590 computer program Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000002360 explosive Substances 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000002347 injection Methods 0.000 description 1
- 239000007924 injection Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/13—File access structures, e.g. distributed indices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/14—Details of searching files based on file metadata
- G06F16/148—File search processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/002—Countermeasures against attacks on cryptographic mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/14—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Data Mining & Analysis (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Medical Informatics (AREA)
- Library & Information Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Storage Device Security (AREA)
Abstract
本发明涉及云计算安全技术领域,具体涉及一种电商平台中隐藏搜索模式和访问模式的可搜索加密方法,包括获取数据源、初始化阶段、密文检索。首先从公开数据集获取数据;初始化阶段包括提取关键字和文档的关系,构建索引矩阵和辅助数据结构,生成相关密钥。密文查询阶段包括:用户对待查询关键字生成搜索陷门,发送给服务器;服务器根据搜索陷门,检索二级映射,获得搜索范围,检索对应数据块序列;用户构造置换矩阵,并加密上传给服务器,在服务器端与索引矩阵执行同态计算,改变索引矩阵中数据的位置。本发明融合二级搜索和同态加密技术到可搜索加密领域中,保证用户隐私的同时实现高效的安全搜索,对用户隐私保护和信息检索有着重要的应用价值。
Description
技术领域
本发明涉及云计算安全技术领域,具体涉及一种电商平台中隐藏搜索模式和访问模式的可搜索加密方法。
背景技术
随着互联网时代的迅猛发展,人们的生活逐渐步入信息化时代,其中电子商务平台更是与现代生活不可分离。但与此同时,人们也面临着数据爆发式增长的问题。例如,电商平台在特殊时期(双十一,双十二等促销活动期间)的业务数据剧烈增长。虽然这些海量数据在分析用户行为等方面拥有许多隐藏价值,但同时也带来了信息泄露的安全问题。
云概念的提出对社会和IT行业提供了极大的好处。存储即服务(SaaS)是最常见的云服务,能够使用户远程存储数据并且可以随时随地的进行访问,从而减少了客户端的存储和计算开销。但是将数据以明文形式存储在云服务器上,易造成信息泄露,不利于用户隐私的保护。虽然将数据加密上传,能够保证数据的机密性,但是不利于用户的一些基本操作。可搜索加密技术解决了在密文域上检索的难题。可搜索加密技术是Song等人在2000年提出的,可以简单描述为:具备检索能力的用户利用生成的搜索陷门对服务器上的加密数据进行检索。
近年来,基于可搜索加密技术的方案层出不穷。从最初的静态方案逐步扩展到动态方案。但是众多研究表明,可搜索加密技术是以泄露部分信息为代价来提高搜索效率,这就导致了较为严重的安全性问题。一般的可搜索加密算法为了提高搜索效率,都以泄露一些关于文件或查询的信息给服务器为代价,比如搜索模式,访问模式等。搜索模式是指用户的历史查询,重复的查询容易由相同的搜索令牌识别出来;访问模式是指用户的访问路径,重复的查询容易由相同的访问路径识别出来。一般认为,可搜索加密方案除了泄露属性文件(Leakage Profile)披露的信息外,不揭示用户数据和查询信息,那么可搜索加密方案就被认为是安全的。但在现实世界中,攻击者却可以通过这些泄露信息发动统计攻击,恢复用户数据和查询信息。比如,Liu等人利用搜索模式泄露发动攻击,获取用户的查询信息。Zhang等人通过文件注入攻击能完整地揭露客户端的查询,恢复用户数据和查询信息。因此,已有的可搜索加密算法存在搜索模式和访问模式泄露的问题,但很少有同时解决这两个问题的方案。
为了解决上述问题,出现了一些解决方案,但大多数研究集中在前向安全和后向安全,例如:不经意随机访问机制(基于ORAM的方案)虽然能够在一定程度上隐藏访问模式和搜索模式,但是其主要通过混淆每一次访问过程,使其与随机访问不可区分,因此需要执行额外的操作来保护访问模式,通常会带来极大的开销,并不适用于一般的云应用环境。原则上,不向服务器泄露任何信息的解决方案可以基于强大的技术构建,如:安全多方计算(例如PIR)和全同态加密等技术,但安全多方计算(例如PIR)和全同态加密等技术虽然可以解决信息泄露的问题,但是需要强大功能的外部设备并且这样的系统非常昂贵,因此不适用于一般的云应用环境。最近的研究表明有些方案利用多服务器实现隐藏搜索模式,例如:公开号CN110427771A,专利名称为“一种检索模式隐藏的可搜索加密方法、云服务器”中公开了一种通过利用辅助服务器为云服务器提供协助,帮助云服务器执行检索,并且在检索过程中,利用加法同态性生成结果多项式,保证搜索结果除用户想要的信息外,不会泄露其他任何信息,不仅可以隐藏搜索模式,还能支持多关键字查询。Hoang等人发表的(T.Hoang,A.A.Yavuz,and J.Guajardo,“Practical and secure dynamic searchable encryptionvia oblivious access on distributed data structure,”in Proceedings of the32nd Annual Conference on Computer Security Applications,2016,pp.302–313.)公开了一种不经意访问加密的数据结构的算法,该算法基于分布式数据结构。上述利用多服务器实现隐藏搜索模式方法中,多服务器之间的数据交换会造成信息泄露,存在安全隐患;此外,无法避免恶意服务器之间相互串通带来的新的安全问题。
发明内容
为了解决上述问题,本发明提供一种电商平台中隐藏搜索模式和访问模式的可搜索加密方法,该可搜索加密方法基于单服务器,结合二级搜索、1-out-of-n不经意传输协议和Paillier加密算法对用户信息进行隐私保护,可以实现在云服务器上进行安全高效地检索数据,同时最大程度地保护用户隐私的目的。
一种电商平台中隐藏搜索模式和访问模式的可搜索加密方法,包括以下步骤:
S1、获取原始数据,对原始数据进行预处理,采用Porter词干算法对数据进行处理,删除重复数据和无效数据,使非结构化数据结构化,得到预处理后的数据并储存在本地;
S2、初始化阶段:用户生成所需对称密钥和非对称密钥;首先基于预处理后的数据,过滤掉文件中的无用数据,提取关键字和文件的关系,基于关键字和文档的关系构建索引矩阵,利用对称密钥对索引矩阵进行加密,生成安全索引;利用对称加密算法对文件进行加密,生成加密文件;构建辅助数据结构来满足用户的不经意访问;将生成的安全索引、加密文件以及辅助数据结构上传至服务器;
S3、密文检索:用户生成搜索陷门,对服务器发起搜索请求;服务器接收到用户的搜索请求后,服务器根据搜索陷门执行查询过程,完成搜索;搜索完成后,对服务器的索引矩阵进行混洗。
进一步的,对称密钥的生成包括:采用元组ε(Gen,Enc,Dec)加密算法生成对称密钥,元组ε(Gen,Enc,Dec)加密算法的实施过程包括:
密钥生成:输入安全参数κ,并输出密钥k,表达式为:k←ε.Gen(1κ);
根据密钥k加密:输入密钥k和明文信息m,输出加密密文c,表达式为:c←ε.Enck(m);
解密:输入密钥k和密文c,输出明文信息m,表达式为:m←ε.Deck(c)。
进一步的,非对称密钥的生成采用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的阶,μ表示第二私钥参数,且μ=((gλmodn2-1)/n)-1modn,mod表示求余函数。
进一步的,索引矩阵I中关键字和文件的关系形式化为:
其中,Iij表示索引矩阵中第i行第j列的元素,i,j分别表示索引矩阵的行和列,0≤i≤N,0≤j≤N,N表示关键字和文件数量的最大值,wi表示第i个关键字,fj表示第j个文件。
进一步的,所述辅助数据结构为二级映射表Ω(Mw,A),二级映射表由一个地址映射表Mw(l,i)和一个数组A[i]构成,存于服务器,地址映射表Mw(l,i)存储键值对,键为关键字所属的块号l,值为i。
进一步的,用户生成搜索陷门包括:用户首次搜索时,根据关键字哈希表Tw确定待查询关键字的行号,并计算该关键字所属块号l,即搜索陷门,将l发送给服务器进行检索。用户若非首次查询,则查询字典D获取待查询关键字的行号,即xi←D[wi],计算该关键字所属块号l,即搜索陷门,并将l发送给服务器进行检索,关键字所属块号l的计算表达式为:其中ν表示数据块的大小,x表示行号。
进一步的,服务器根据搜索陷门执行查询过程包括:
S321:执行一级搜索:根据关键字所属块号l生成的搜索陷门查询二级映射Ω(Mw,A)中的地址映射表Mw(l,i),根据i←Mw[l]可获得待查询关键字在数组A中的起始位置,此时再根据该起始位置顺序检索数组A,获得一个大小为ν的行号组row=(ri,...,ri+v);
S322:执行二级搜索:根据一级搜索获得的行号组row,检索加密索引矩阵,读取一个大小为ν的数据块B=(b1,..,bν),该数据块为对称加密的密文;服务器与用户执行1-out-of-n不经意传输协议,在对称加密的密文基础上再进行一次加密,得到查询结果,并将查询结果发送给用户;
S323:用户解密:用户获得查询结果后,先根据1-out-of-n不经意传输协议进行第一次解密,即获得对称加密的结果再检索关键字哈希表Tw获得待查询关键字的初始行号,联合对称加密算法的解密密钥k对查询结果进行第二次解密,得到包含该待查询关键字的文件标识符集合,即其中,γw表示包含该关键字的文件标识符集合。
进一步的,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),...,(αν,cν)发送给用户,其中 为辅助参数,cν为服务器发送给用户的消息密文,kj为随机数。
进一步的,对服务器的索引矩阵进行混洗包括:用户构造置换矩阵、用户加密置换矩阵和服务器执行同态计算,具体包括:
S331、构造置换矩阵P,
S332、使用Paillier加密算法对置换矩阵P进行加密处理,得到加密的置换矩阵P',将加密的置换矩阵P'发送给服务器;
进一步的,使用Paillier加密算法对置换矩阵P进行加密处理,得到加密的置换矩阵P',具体实现方式包括:首先选择随机数随机数满足0<r<n,最大公约数gcd(r,n)=1,根据选择的随机数r,使用公钥PK对混淆矩阵M进行Paillier加密,得到加密的混淆矩阵P'=PE.EncPK(P),n表示第一公钥参数。
本发明的有益效果:
1.本发明以单服务器的角度出发,利用二级搜索和1-out-of-n不经意传输协议模糊搜索结果,并构建置换矩阵,利用Paillier加密算法对索引矩阵进行混洗,改变数据存放位置,进而改变用户的访问路径,从而实现对搜索模式和访问模式的隐藏,能够有效保护用户隐私数据。
2.检索更加高效:本发明利用“倒排索引”思想的“关键字-文档对”来构建索引矩阵,通过该数据结构找到包含待检关键字的所有文件。索引的构建使得检索更加高效。
3.通信开销小:利用Paillier加密实现对索引矩阵数据的混洗,只需上传混淆矩阵,无须下载-解密-交换-重传数据块,因此降低了通信开销。
4.安全性更优:利用二级搜索,1-out-of-n不经意传输协议和Paillier加密算法不经意的访问索引结构,使得查询过程更加安全。
附图说明
下面结合附图和具体实施方式对本发明做进一步详细的说明。
图1为本发明实施例的一种电商平台中隐藏搜索模式和访问模式的可搜索加密方法系统模型图;
图2本发明实施例的一种倒排索引矩阵示意图;
图3本发明实施例的一种二级索引示意图;
图4本发明实施例的一种不经意传输协议示意图;
图5本发明实施例的一种混洗过程示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示为本发明实施例的一种隐藏搜索模式和访问模式的可搜索加密的系统模型图。在该系统模型中,隐藏搜索模式和访问模式的可搜索加密方案主要包括用户和服务器两个实体。本发明的整体思路包括:首先,初始化阶段:用户利用对称加密算法生成对称密钥,用于加密索引矩阵和文件。利用Paillier加密算法生成非对称密钥,用于加密置换矩阵。同时,提取关键字-文档对的关系,构建索引矩阵,此时采用特制的可搜索加密方案生成安全索引。密文检索阶段:用户利用可搜索加密方案生成搜索陷门,将其发送给服务器,服务器通过检索二级映射确定搜索关键字所在的块位置,并利用1-out-of-n不经意传输协议再次加密将结果返回给用户。最后,用户发送Paillier加密的置换矩阵给服务器,在服务器端与索引矩阵进行同态计算,改变索引矩阵中数据的位置。
本发明实施例的一种电商平台中隐藏搜索模式和访问模式的可搜索加密方法包括但不限于以下实施过程:
S1:获取原始数据,对原始数据进行预处理,得到预处理后的数据。
本发明原始数据的获取可以直接从现有的网络公开数据集中获取,需要获取的原始数据包括关键字和文档的对应关系。具体地,包括以下实施过程:
S11:获取原始数据。本发明利用现有数据源获得原始的邮件数据集Enron。
S12:预处理:通常获取的原始数据都是非结构化的,不能直接用于构建索引,因此需要基于获取的原始数据进行简单的数据处理。本发明采用Porter词干算法对数据进行处理,删除重复数据和无效数据等,使大部分非结构化数据结构化,得到预处理后的数据。
S13:存储数据。将预处理后的数据存入本地,用于后续构建索引和加密操作。
S2、初始化阶段。用户调用对称加密算法生成对称密钥,用于在后续步骤中加密索引矩阵和文件,用户调用Paillier加密算法生成非对称密钥,用于在后续步骤中加密置换矩阵;基于预处理后的数据,过滤掉数据集中的无用数据,提取关键字-文档对的关系,并构建索引矩阵,调用对称加密算法对索引矩阵进行加密,生成安全索引;调用对称加密算法对预处理后的文件进行加密,生成加密文件;构建辅助数据结构来满足用户的不经意访问;将安全索引、加密文件以及辅助数据结构进行加密上传至服务器。
S21:生成密钥:本实施例中主要是用户执行密钥生成算法生成对称密钥和非对称密钥。
在一个实施例中,对称密钥的生成可以采用元组ε(Gen,Enc,Dec)加密算法实现,该算法是一个IND-CPA加密方案,主要用于加密索引矩阵和文件。具体地,采用元组ε(Gen,Enc,Dec)加密算法生成对称密钥的实施过程包括:
k←ε.Gen(1κ):密钥生成算法。输入安全参数κ,并输出密钥k。
c←ε.Enck(m):加密算法。输入密钥k和明文信息m,输出加密密文c。
m←ε.Deck(c):解密算法。输入密钥k和密文c,输出明文信息m。
需要说明的是,对称密钥的生成还可以采用其他可以实现的加密方式。
在一个实施例中,非对称密钥的生成可以采用Paillier加密算法实现,主要用于加密置换矩阵和进行同态计算。具体地,采用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的阶,μ表示第二私钥参数,且μ=((gλmodn2-1)/n)-1modn,mod表示求余函数。因此Paillier加密算法可形式化为PE=(Gen,Enc,Dec),Paillier加密算法的整个加密解密过程具体为:
(PK,SK)←PE.Gen(p,q):密钥生成算法。输入两个大的质数,输出公钥PK,私钥SK。
c←PE.EncPK(m):加密算法。输入明文消息m,输出密文c,其中c=rngmmodn2。
需要说明的是,非对称密钥的生成还可以采用其他可以实现的加密方式。
S22:构建索引矩阵。本实施例中构建一个“关键字-文档”的倒排索引(如图2所示)。
首先构建索引矩阵:对处理过后的数据集进行关键字提取,利用两个哈希表Tf,Tw来确定关键字和文件在索引矩阵中的行号和列号,其中,Tf为文件哈希表,Tw为关键字哈希表。再根据关键字和文件的对应关系构成一个索引矩阵I。在该索引矩阵中,行表示关键字,列表示文件,若某个文件包含了该关键字,则索引矩阵的对应位置记为1,否则记为0。索引矩阵I中关键字和文件的关系形式化为:
其中,Iij表示索引矩阵中第i行第j列的元素,i,j分别表示索引矩阵的行和列,0≤i≤N,0≤j≤N,N表示关键字和文件数量的最大值,wi表示第i个关键字,fj表示第j个文件。
构建好索引矩阵I后,利用对称密钥加密索引矩阵,得到生成安全索引,即加密后的索引矩阵I'[i,j]。加密过程包括:利用生成的对称密钥k联合行号依次加密索引矩阵的每一行,即I'[i,j]←ε.Enck||i(I[i,j]),其中,I'[i,j]表示加密后的索引矩阵。
在用户进行数据访问时,由于访问时间的随机性和不确定性,除了主要的索引矩阵外,还需要构建辅助数据结构来实现用户的不经意访问。辅助数据结构可以是一个二级映射表,构建二级映射表的目的是确定用户的搜索范围,模糊搜索结果。如图3所示,二级映射表Ω(Mw,A)主要由一个地址映射表Mw(l,i)和一个数组A[i]构成,存于服务器。其中,地址映射表Mw(l,i)存储键值对,键为关键字所属的块号l,值为i。数组A[i]存储索引矩阵的行号(1,...,m)。地址映射表Mw(l,i)为块级索引,对数组A中的元素进行分块检索,因此,i为数组A中每一个数据块的起始位置。
在客户端维护一个字典D。每次混洗之后,关键字在索引矩阵中的位置会发生改变,因此字典D用于存储每个关键字的新位置。字典D的表达形式为:D[w]=x,其中,w表示关键字,x表示行号。
S23:上传加密信息。用户将初始化阶段生成的加密文件、加密后的索引矩阵(安全索引)以及二级映射表上传给服务器,以供后期的密文检索阶段。
S3、密文检索阶段。本实施例中密文检索主要包括三个阶段:
第一阶段,用户构造搜索陷门发起查询。用户首次搜索时,根据关键字哈希表Tw确定待查询关键字的行号,并计算该关键字所属块号l,即搜索陷门,将l发送给服务器进行检索。用户若非首次查询,则查询字典D获取待查询关键字的行号,即xi←D[wi],计算该关键字所属块号l,即搜索陷门,并将l发送给服务器进行检索。关键字所属块号l的计算表达式为:其中ν表示数据块的大小,x表示行号。
第二阶段,服务器根据搜索陷门执行查询过程,主要包括查询二级映射表,确定搜索范围后再检索索引矩阵,最后检索数据块并返回给客户端。
服务器执行查询过程包括:
S321:执行一级搜索。根据关键字所属块号l生成的搜索陷门查询二级映射Ω(Mw,A)中的地址映射表Mw(l,i),根据i←Mw[l]可获得待查询关键字在数组A中的起始位置,此时再根据该起始位置顺序检索数组A,获得一个大小为ν的行号组row=(ri,...,ri+v)。
S322:执行二级搜索。根据一级搜索获得的行号组row,检索加密索引矩阵,读取一个大小为ν的数据块B=(b1,..,bν),注意,该数据块为对称加密的密文。
S323:执行1-out-of-n不经意传输协议:不经意传输协议是指协议参与方以一种模糊化的方式传递信息,从而有效保护参与方的隐私。如图4所示,1-out-of-n不经意传输协议主要的性质为:若发送者拥有n则消息m1,m2,...,mn∈G(p),要求接收方最后只能得到所选择消息mσ,其中(1≤σ≤n),而无法获得其他n-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),...,(αν,cν)发送给用户。其中 αν为辅助参数,cν为服务器发送给用户的消息密文,kj为随机数。注意,该加密过程是在对称加密的密文基础上再进行一次加密。
S323:用户解密。用户需要进行两次解密。用户获得查询结果(即上述不经意传输的结果(α1,c1),...,(αν,cν))后,先根据1-out-of-n不经意传输协议进行第一次解密,由1-out-of-n不经意传输协议的性质可知,我们只能解密我们所选择的消息,即获得对称加密的结果此时再检索关键字哈希表Tw获得待查询关键字的初始行号,联合对称加密算法的解密密钥k对查询结果进行第二次解密,得到包含该待查询关键字的文件标识符集合,即其中γw表示包含该待查询关键字的文件标识符集合。此时,除了待查询关键字所在行被解密之外,该数据块中其余多余的数据将不会被解密。这不仅降低了解密时的计算开销,同时非查询关键字的相关信息也得到保护。
第三阶段,服务器进行索引矩阵混洗,改变索引矩阵中行的位置。搜索结束后,为了隐藏搜索模式和访问模式,保护用户隐私,需要对服务器的索引矩阵进行混洗。混洗过程如图5所示,混洗的具体过程主要包括:用户构造置换矩阵、用户加密置换矩阵,服务器执行同态计算。
本实施例中给出一种矩阵变换形式,用于理解混洗过程的计算方式。混洗过程可以采用基于矩阵的数据置换方式实现,具体描述如下:
置换矩阵的构造阶段:给一个数据序列B=(B1,...,Bn),和一个n×n置换矩阵π,矩阵的点乘运算B·π可以对数据序列进行置换。比如,给一个数据序列和一个置换矩阵可以改变数据序列中数据的位置,计算表达式如下所示:
在一个实施例中,置换矩阵P的实现如下:用πi=i'表示一个随机置换函数,其中i=1,...,2n。通过从集合{1,...,2n}中随机均匀的选择来生成一个置换π。让pi,j表示置换矩阵P中第i行j列的值,可以实现一个置换矩阵P表示为
置换矩阵的加密处理阶段:使用Paillier加密算法对置换矩阵P进行加密处理,得到加密的置换矩阵P'。具体实现方式包括:首先选择随机数随机数满足0<r<n,最大公约数gcd(r,n)=1,根据选择的随机数r,使用公钥PK对置换矩阵P进行Paillier加密,得到加密的置换矩阵P'=PE.EncPK(P),将加密的置换矩阵P'发送给服务器。
由于Paillier加密中采用的随机数r是随机生成数,对于相同的明文,随机数r改变则密文也会相应的发生变化,因此Paillier加密满足语义安全性。
执行同态计算:本实施例中,服务器对加密后的置换矩阵P'和加密后的索引矩阵I'[i,j]执行同态计算,获得混洗过后的索引矩阵即由于执行同态计算之后,获得的结果是同态加密的结果,不利于下一次的数据混洗,所以在下一次搜索之前,需要使用私钥SK对该结果进行同态解密,即其中,I″表示解密后的结果。对同态加密的结果进行同态解密后,进行下一次索引矩阵的混洗过程,索引矩阵混洗的次数由用户确定。
本发明以单服务器的角度出发,利用二级搜索模糊搜索结果,利用Paillier加密算法对索引矩阵进行混洗,改变数据存放位置,进而改变用户的访问路径,从而实现对搜索模式和访问模式的隐藏。本发明综合考虑了用户隐私在网络中遭到不稳定因素的巨大威胁,因此该发明对用户隐私数据保护有应用价值,可应用于医疗数据,财务安全等隐私数据的保护领域中。
需要说明的是,本领域普通技术人员可以理解实现上述方法实施例中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法实施例的流程。其中,所述存储介质可为磁碟、光盘、只读存储记忆体(Read-0nly Memory,ROM)或随机存储记忆体(RandomAccess Memory,RAM)等。
以上所述仅是本申请的具体实施方式,应当指出,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
Claims (10)
1.一种电商平台中隐藏搜索模式和访问模式的可搜索加密方法,其特征在于,包括以下步骤:
S1、获取原始数据,对原始数据进行预处理,采用Porter词干算法对数据进行处理,删除重复数据和无效数据,使非结构化数据结构化,得到预处理后的数据并储存在本地;
S2、初始化阶段:用户生成所需对称密钥和非对称密钥;首先基于预处理后的数据,过滤掉文件中的无用数据,提取关键字和文件的关系,基于关键字和文档的关系构建索引矩阵,利用对称密钥对索引矩阵进行加密,生成安全索引;利用对称加密算法对文件进行加密,生成加密文件;构建辅助数据结构来满足用户的不经意访问;将生成的安全索引、加密文件以及辅助数据结构上传至服务器;
S3、密文检索:用户生成搜索陷门,对服务器发起搜索请求;服务器接收到用户的搜索请求后,服务器根据搜索陷门执行查询过程,完成搜索;搜索完成后,对服务器的索引矩阵进行混洗。
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的阶,μ表示第二私钥参数,且μ=((gλmod n2-1)/n)-1mod n,mod表示求余函数。
5.根据权利要求1所述的一种电商平台中隐藏搜索模式和访问模式的可搜索加密方法,其特征在于,所述辅助数据结构为二级映射表Ω(Mw,A),二级映射表由一个地址映射表Mw(l,i)和一个数组A[i]构成,存于服务器,地址映射表Mw(l,i)存储键值对,键为关键字所属的块号l,值为i。
7.根据权利要求1所述的一种电商平台中隐藏搜索模式和访问模式的可搜索加密方法,其特征在于,服务器根据搜索陷门执行查询过程包括:
S321:执行一级搜索:根据关键字所属块号l生成的搜索陷门查询二级映射Ω(Mw,A)中的地址映射表Mw(l,i),根据i←Mw[l]可获得待查询关键字在数组A中的起始位置,此时再根据该起始位置顺序检索数组A,获得一个大小为ν的行号组row=(ri,...,ri+v);
S322:执行二级搜索:根据一级搜索获得的行号组row,检索加密索引矩阵,读取一个大小为ν的数据块B=(b1,..,bν),该数据块为对称加密的密文;服务器与用户执行1-out-of-n不经意传输协议,在对称加密的密文基础上再进行一次加密,得到查询结果,并将查询结果发送给用户;
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011201549.9A CN112270006A (zh) | 2020-11-02 | 2020-11-02 | 电商平台中隐藏搜索模式和访问模式的可搜索加密方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011201549.9A CN112270006A (zh) | 2020-11-02 | 2020-11-02 | 电商平台中隐藏搜索模式和访问模式的可搜索加密方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112270006A true CN112270006A (zh) | 2021-01-26 |
Family
ID=74345633
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011201549.9A Pending CN112270006A (zh) | 2020-11-02 | 2020-11-02 | 电商平台中隐藏搜索模式和访问模式的可搜索加密方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112270006A (zh) |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112989386A (zh) * | 2021-03-31 | 2021-06-18 | 苏州黑云智能科技有限公司 | 一种基于不经意传输的黑名单共享方法及系统 |
CN113127536A (zh) * | 2021-04-14 | 2021-07-16 | 上海同态信息科技有限责任公司 | 一种基于同态构型加密的离线模糊匹配架构 |
CN113407962A (zh) * | 2021-06-16 | 2021-09-17 | 福建师范大学 | 一种实用型可搜索加密安全性检测方法 |
CN113672980A (zh) * | 2021-08-23 | 2021-11-19 | 四川新网银行股份有限公司 | 一种机构间实时隐私数据查询方法、设备及存储介质 |
CN113704303A (zh) * | 2021-08-03 | 2021-11-26 | 浙江大学 | 一种支持可组合sql查询的加密数据库方法 |
CN113722366A (zh) * | 2021-09-14 | 2021-11-30 | 长沙理工大学 | 一种基于不经意密文倒排索引的安全数据检索方法 |
CN114528370A (zh) * | 2022-01-12 | 2022-05-24 | 重庆邮电大学 | 动态多关键字模糊排序搜索方法及系统 |
CN115269938A (zh) * | 2022-09-22 | 2022-11-01 | 深圳市洞见智慧科技有限公司 | 基于同态加密的关键词匿踪查询方法、系统及相关装置 |
CN116340984A (zh) * | 2023-05-29 | 2023-06-27 | 四川云合数创信息技术有限公司 | 一种基于智慧社区的用户信息管理方法及系统 |
CN115935429B (zh) * | 2022-12-30 | 2023-08-22 | 上海零数众合信息科技有限公司 | 一种数据处理方法、装置、介质以及电子设备 |
CN117056978A (zh) * | 2023-08-30 | 2023-11-14 | 西安电子科技大学 | 一种基于算术共享的安全并查集方法及其运算方法 |
CN117077179A (zh) * | 2023-10-11 | 2023-11-17 | 中国移动紫金(江苏)创新研究院有限公司 | 基于差分隐私排序的可搜索加密方法、装置、设备及介质 |
CN117595991A (zh) * | 2024-01-18 | 2024-02-23 | 深圳大学 | 一种结合密钥协商的隐私信息检索方法 |
CN117744120A (zh) * | 2023-12-21 | 2024-03-22 | 北京航空航天大学 | 一种多用户可搜索加密方法及系统 |
CN117763593A (zh) * | 2024-02-21 | 2024-03-26 | 电子科技大学 | 隐藏模式的多关键词对称可搜索加密方法、终端及服务器 |
CN118133324A (zh) * | 2024-05-07 | 2024-06-04 | 北京隐算科技有限公司 | 一种全同态密文检索方法、系统、电子设备及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108632032A (zh) * | 2018-02-22 | 2018-10-09 | 福州大学 | 无密钥托管的安全多关键词排序检索系统 |
CN112272188A (zh) * | 2020-11-02 | 2021-01-26 | 重庆邮电大学 | 一种电商平台数据隐私保护的可搜索加密方法 |
-
2020
- 2020-11-02 CN CN202011201549.9A patent/CN112270006A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108632032A (zh) * | 2018-02-22 | 2018-10-09 | 福州大学 | 无密钥托管的安全多关键词排序检索系统 |
CN112272188A (zh) * | 2020-11-02 | 2021-01-26 | 重庆邮电大学 | 一种电商平台数据隐私保护的可搜索加密方法 |
Non-Patent Citations (2)
Title |
---|
李学琴: "云环境中抑制信息泄露的数据检索技术研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》, no. 03, 15 March 2022 (2022-03-15), pages 138 - 225 * |
苑丹丹: "基于ORAM的隐私保护数据共享方案研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》, no. 01, 15 January 2019 (2019-01-15), pages 138 - 186 * |
Cited By (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112989386B (zh) * | 2021-03-31 | 2023-09-22 | 苏州黑云智能科技有限公司 | 一种基于不经意传输的黑名单共享方法及系统 |
CN112989386A (zh) * | 2021-03-31 | 2021-06-18 | 苏州黑云智能科技有限公司 | 一种基于不经意传输的黑名单共享方法及系统 |
CN113127536A (zh) * | 2021-04-14 | 2021-07-16 | 上海同态信息科技有限责任公司 | 一种基于同态构型加密的离线模糊匹配架构 |
CN113127536B (zh) * | 2021-04-14 | 2023-07-28 | 上海同态信息科技有限责任公司 | 一种基于同态构型加密的离线模糊匹配系统 |
CN113407962A (zh) * | 2021-06-16 | 2021-09-17 | 福建师范大学 | 一种实用型可搜索加密安全性检测方法 |
CN113704303B (zh) * | 2021-08-03 | 2023-09-29 | 浙江大学 | 一种支持可组合sql查询的加密数据库方法 |
CN113704303A (zh) * | 2021-08-03 | 2021-11-26 | 浙江大学 | 一种支持可组合sql查询的加密数据库方法 |
CN113672980B (zh) * | 2021-08-23 | 2023-05-30 | 四川新网银行股份有限公司 | 一种机构间实时隐私数据查询方法、设备及存储介质 |
CN113672980A (zh) * | 2021-08-23 | 2021-11-19 | 四川新网银行股份有限公司 | 一种机构间实时隐私数据查询方法、设备及存储介质 |
CN113722366B (zh) * | 2021-09-14 | 2024-05-03 | 长沙理工大学 | 一种基于不经意密文倒排索引的安全数据检索方法 |
CN113722366A (zh) * | 2021-09-14 | 2021-11-30 | 长沙理工大学 | 一种基于不经意密文倒排索引的安全数据检索方法 |
CN114528370A (zh) * | 2022-01-12 | 2022-05-24 | 重庆邮电大学 | 动态多关键字模糊排序搜索方法及系统 |
CN115269938B (zh) * | 2022-09-22 | 2023-02-14 | 深圳市洞见智慧科技有限公司 | 基于同态加密的关键词匿踪查询方法、系统及相关装置 |
CN115269938A (zh) * | 2022-09-22 | 2022-11-01 | 深圳市洞见智慧科技有限公司 | 基于同态加密的关键词匿踪查询方法、系统及相关装置 |
CN115935429B (zh) * | 2022-12-30 | 2023-08-22 | 上海零数众合信息科技有限公司 | 一种数据处理方法、装置、介质以及电子设备 |
CN116340984B (zh) * | 2023-05-29 | 2023-08-15 | 四川云合数创信息技术有限公司 | 一种基于智慧社区的用户信息管理方法及系统 |
CN116340984A (zh) * | 2023-05-29 | 2023-06-27 | 四川云合数创信息技术有限公司 | 一种基于智慧社区的用户信息管理方法及系统 |
CN117056978A (zh) * | 2023-08-30 | 2023-11-14 | 西安电子科技大学 | 一种基于算术共享的安全并查集方法及其运算方法 |
CN117077179A (zh) * | 2023-10-11 | 2023-11-17 | 中国移动紫金(江苏)创新研究院有限公司 | 基于差分隐私排序的可搜索加密方法、装置、设备及介质 |
CN117077179B (zh) * | 2023-10-11 | 2024-01-02 | 中国移动紫金(江苏)创新研究院有限公司 | 基于差分隐私排序的可搜索加密方法、装置、设备及介质 |
CN117744120A (zh) * | 2023-12-21 | 2024-03-22 | 北京航空航天大学 | 一种多用户可搜索加密方法及系统 |
CN117595991A (zh) * | 2024-01-18 | 2024-02-23 | 深圳大学 | 一种结合密钥协商的隐私信息检索方法 |
CN117595991B (zh) * | 2024-01-18 | 2024-04-05 | 深圳大学 | 一种结合密钥协商的隐私信息检索方法 |
CN117763593A (zh) * | 2024-02-21 | 2024-03-26 | 电子科技大学 | 隐藏模式的多关键词对称可搜索加密方法、终端及服务器 |
CN117763593B (zh) * | 2024-02-21 | 2024-05-07 | 电子科技大学 | 隐藏模式的多关键词对称可搜索加密方法、终端及服务器 |
CN118133324A (zh) * | 2024-05-07 | 2024-06-04 | 北京隐算科技有限公司 | 一种全同态密文检索方法、系统、电子设备及存储介质 |
CN118133324B (zh) * | 2024-05-07 | 2024-07-12 | 北京隐算科技有限公司 | 一种全同态密文检索方法、系统、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112270006A (zh) | 电商平台中隐藏搜索模式和访问模式的可搜索加密方法 | |
Pasupuleti et al. | An efficient and secure privacy-preserving approach for outsourced data of resource constrained mobile devices in cloud computing | |
EP3058678B1 (en) | System and method for dynamic, non-interactive, and parallelizable searchable symmetric encryption | |
Sun et al. | An efficient non-interactive multi-client searchable encryption with support for boolean queries | |
CN108494768B (zh) | 一种支持访问控制的密文搜索方法及系统 | |
Wang et al. | Secure ranked keyword search over encrypted cloud data | |
Ren et al. | Secure searching on cloud storage enhanced by homomorphic indexing | |
Bösch et al. | Selective document retrieval from encrypted database | |
Chenam et al. | A designated cloud server-based multi-user certificateless public key authenticated encryption with conjunctive keyword search against IKGA | |
Bösch et al. | Distributed searchable symmetric encryption | |
CN112332979B (zh) | 云计算环境中的密文搜索方法及系统、设备 | |
Jiang et al. | An Efficient Symmetric Searchable Encryption Scheme for Cloud Storage. | |
Chamili et al. | Searchable encryption: a review | |
Liu et al. | Multi-user image retrieval with suppression of search pattern leakage | |
Awais et al. | A novel searchable encryption scheme to reduce the access pattern leakage | |
Hoang et al. | A multi-server oblivious dynamic searchable encryption framework | |
Tahir et al. | A ranked searchable encryption scheme for encrypted data hosted on the public cloud | |
Ali et al. | Searchable encryption with conjunctive field free keyword search scheme | |
Yan et al. | Secure and efficient big data deduplication in fog computing | |
Manasrah et al. | An investigation study of privacy preserving in cloud computing environment | |
KR100951034B1 (ko) | 암호문 크기를 줄이기 위한 공개키 기반의 검색가능암호문생성 방법과, 그에 따른 공개키 기반의 데이터 검색 방법 | |
Tian et al. | A Privacy-Preserving Hybrid Range Search Scheme Over Encrypted Electronic Medical Data in IoT Systems | |
Moataz et al. | Privacy-preserving multiple keyword search on outsourced data in the clouds | |
Jiang et al. | A novel privacy preserving keyword search scheme over encrypted cloud data | |
Pillai et al. | Blockchain-Based Searchable Asymmetric Encryption Scheme in Cloud Environment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |