CN113068128A - 基于双云安全计算协议的用户地理位置近邻查询方法 - Google Patents
基于双云安全计算协议的用户地理位置近邻查询方法 Download PDFInfo
- Publication number
- CN113068128A CN113068128A CN202110288951.3A CN202110288951A CN113068128A CN 113068128 A CN113068128 A CN 113068128A CN 202110288951 A CN202110288951 A CN 202110288951A CN 113068128 A CN113068128 A CN 113068128A
- Authority
- CN
- China
- Prior art keywords
- query
- lsp
- user
- public key
- csp
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 21
- 238000004364 calculation method Methods 0.000 claims abstract description 13
- 239000013598 vector Substances 0.000 claims description 15
- 238000003780 insertion Methods 0.000 claims description 4
- 230000037431 insertion Effects 0.000 claims description 4
- 239000004576 sand Substances 0.000 claims description 3
- 230000009977 dual effect Effects 0.000 claims 1
- 238000011065 in-situ storage Methods 0.000 claims 1
- 238000005516 engineering process Methods 0.000 abstract description 5
- 230000000694 effects Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 241001669696 Butis Species 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 229910003460 diamond Inorganic materials 0.000 description 1
- 239000010432 diamond Substances 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/029—Location-based management or tracking 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/90—Details of database functions independent of the retrieved data types
- G06F16/907—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/909—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using geographical or spatial information, e.g. location
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/02—Protecting privacy or anonymity, e.g. protecting personally identifiable information [PII]
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Library & Information Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Storage Device Security (AREA)
Abstract
本发明提出一种基于双云安全计算协议的用户地理位置近邻查询方法,用于解决现有用户地理位置近邻查询技术中存在的安全性不足和查询准确率较低的问题,实现步骤为:构建用户地理位置近邻查询模型;制定双云安全计算协议;查询中心生成密钥并分配;查询中心初始化k维二叉树并上传;用户对其位置信息进行加密并上传;位置服务提供商和计算服务提供商基于密态数据比较协议对加密后的k维二叉树更新;查询中心请求获取用户地理位置的k近邻查询结果;位置服务提供商和计算服务提供商基于双云安全计算协议进行k近邻查询;查询中心解密结果队列。
Description
技术领域
本发明属于位置服务中的位置隐私保护技术领域,涉及一种用户地理位置近邻查询方法,具体涉及一种基于双云安全计算协议的用户地理位置近邻查询方法,可用于智能交通、物联网、环境监测和互联网社交等领域。
背景技术
得益于定位技术、移动终端技术和地理信息技术的蓬勃发展,基于位置服务近年来已经融入人们日常生活的方方面面,在智能交通、物联网、环境监测和互联网社交等领域得到广泛的应用并带来巨大的经济利益,其中近邻查询作为位置服务的一种重要的服务形式在兴趣点查询、位置共享等应用场景有着重要的作用。然而位置服务给人们带来极大方便的同时也给用户的个人隐私带来潜在的风险。恶意攻击者通过多查询攻击、背景知识攻击等方式直接获取或者推测出用户的空间位置、行动路径、兴趣爱好、健康状况等敏感信息,一旦这些信息被用于违法犯罪,造成的后果将不堪设想。
目前位置服务近邻查询的隐私保护技术有混淆法、匿名法、加密法等技术。申请公布号CN110248315A,名称为“一种基于双锚点的位置隐私保护方法”,公开了一种用户地理位置近邻查询方法,该方法通过构造多个用户的匿名区,使用匿名区代替用户真实位置提交查询请求给位置服务器,使攻击者无法区分匿名区中的多个用户,保证用户的位置安全,通过使用基于双锚点的查询方法,使得查询结果能保证满足用户的匿名请求,且可在匿名状态下得到用户位置近邻查询结果。但是该方法的隐私保护效果依赖于所构建的匿名区的用户数量,用户数量过少,隐私保护效果变差,安全性较低;用户数量过大,匿名区过大,用户地理位置近近邻查询的准确率变低。
发明内容
本发明的目的在于克服上述现有技术的不足,提出了基于双云安全计算协议的地理位置查询方法,用于解决现有技术中存在的安全性较差和查询准确率较低的技术问题。
为实现上述目的,本发明采取的技术方案包括如下步骤:
(1)构建用户地理位置近邻查询模型:
构建包括查询中心和用户集合D={di|1≤i≤I,I≥2},以及由位置服务提供商LSP和计算服务提供商CSP组成的云服务器的用户地理位置近邻查询模型,其中用户集合D对应的位置信息集为 P={pi=(xi,yi,ui)|1≤i≤I,I≥2},di表示位置信息为pi=(xi,yi,ui)的第i个用户,xi和yi表示di所在位置的横坐标和纵坐标,ui表示di的包含身份标识和健康状况的标识信息,I表示用户的总个数;
(2)制定双云安全计算协议:
制定包括密态数据比较协议和密态数据欧氏距离计算协议的双云安全计算协议,实现步骤为:
(2a)制定包括密态数据比较协议:
(2a1)LSP通过正整数r,计算输入给LSP的密文的一级中间常量以及输入给LSP的密文的一级中间常量再采用DT-PKC的部分解密算法PMDes1(·),通过部分私钥mk1对一级中间常量A1和B1分别进行部分解密,得到部分明文A1'和B1':
A1'=PMDes1(A)
B1'=PMDes1(B)
其中(·)r表示求r次幂操作;
(2a2)LSP随机均匀地选取整数μ∈{0,1},当μ=1时,将{A1,A1',B1,B1'}上传至CSP,当μ=0时,将{B1,B1',A1,A1'}上传至CSP;
(2a3)CSP采用部分解密算法PMDes2(),通过部分私钥mk2对 {A1,A1',B1,B1'}或{B1,B1',A1,A1'}进行解密,得到明文{ar,br}或者{br,ar},并通过{ar,br}计算判断常量d=a/b,或通过{br,ar}计算判断常量d=b/a;
(2a4)当d>0时,CSP将返回值ω=1返回至LSP,当d<0时,CSP将返回值ω=-1返回至LSP,当d=0时,CSP将返回值ω=0返回至LSP;
(2a5)LSP根据μ和ω的值,确定a和b的大小关系:
(2b)制定密态数据欧氏距离计算协议:
(2b1)LSP通过随机选取的两个非负整数rα和rβ计算中间常量R=rα-rβ,并采用DT-PKC的加密算法Enc(·),通过公钥PK对R和R2分别进行加密,得到密文EPK(R)和EPK(R2),其中R2为R的平方;
(2b3)LSP计算输入给LSP的密文的一级中间常量和输入给LSP的密文的一级中间常量并采用DT-PKC的部分解密算法PMDes1(·),通过部分私钥mk1对一级中间常量A2和B2分别进行部分解密,得到部分明文A2'和 B2',然后将{A2,A2',B2,B2'}上传至CSP,其中:
(2b4)CSP采用DT-PKC的部分解密算法PMDes2(·),通过部分私钥mk2对 {A2,A2',B2,B2'}进行解密,得到明文{a+rα,b+rβ},并计算{a+rα,b+rβ}的二级中间常量A2”=(a+rα)-(b+rβ)和B2”=((a+rα)-(b+rβ))2;
(2b5)CSP采用DT-PKC的加密算法Enc(·),通过公钥PK将A2”和B2”加密,得到密文中间常量S1=EPK(A2”)和S2=EPK(B2”),并将{S1,S2}返回至LSP;
(3)查询中心生成密钥并分配:
(3a)查询中心采用DT-PKC的密钥生成算法KeyGen(·),计算查询中心的公钥PK0和主私钥mk、云服务器的公钥PK、以及每个用户di的公钥pki;
(3b)查询中心采用DT-PKC的私钥分割算法MkeyS()将主私钥mk分割成部分私钥mk1和mk2,并通过密钥信道将公钥PK和部分私钥mk1分配给位置服务提供商LSP,将公钥PK和部分私钥mk2分配给计算服务提供商CSP,将公钥pki分配给对应的用户di;
(4)查询中心初始化k维二叉树并上传:
(4a)查询中心从位置信息集P选取w个位置信息组成的位置信息子集 P'={ps=(xs,ys,us)|1≤s≤w,w<I},并采用k维二叉树初始化算法 K-DTreeInit(·),以xs和ys为分割维度对位置信息子集P'进行交替分割,得到 k维二叉树T={ts:<ts.data=ps,ts.right,ts.left>|1≤s≤w},其中ts表示T中的节点,ts.data表示存储在节点ts的数据,ts.right和ts.left分别表示ts的右孩子和左孩子;
(4b)查询中心采用DT-PKC的加密算法Enc(),并通过公钥PK0对k维二叉树T的每个节点ts的节点数据ts.data进行加密并和公钥PK0组合,得到位置信息向量为ps'的加密后的k维二叉树T',然后将T'上传至LSP,其中:
(5)用户di对其位置信息pi进行加密并上传:
(5a)用户di采用DT-PKC的加密算法Enc(),并通过自己的公钥pki对用户位置信息pi=(xi,yi,ui)进行加密,得到用户位置信息密文然后将和公钥pki组合成用户位置信息向量pi'上传至LSP,其中:
(6)LSP和CSP基于密态数据比较协议对加密后的k维二叉树T'更新:
LSP和CSP采用k维二叉树的节点插入算法K-DTreeInsert(·),并基于密态数据比较协议,将用户di上传的用户位置信息向量pi'插入到k维二叉树T' 中,得到更新后的k维二叉树T”;
(7)查询中心请求获取用户地理位置的k近邻查询结果:
查询中心采用DT-PKC的加密算法Enc(),通过公钥PK0对用户地理位置 p0=(x0,y0,u0)进行加密,得到用户地理位置密文并将由和公钥PK0组合成的用户地理位置信息向量p0',以及p0的近邻点个数的查询参数k0组成近邻查询请求{p0',k0}上传至LSP,其中:
(8)LSP和CSP基于双云安全计算协议进行k近邻查询:
LSP和CSP采用k维二叉树的k近邻查询算法K-DTreeKnnQuery(·),并基于双云安全计算协议,在k维二叉树T”中使用p0'查询用户地理位置p0的k0个近邻点,得到的查询结果队列返回至查询中心,其中PQ中的元素pj'为待查询位置点p0在k维二叉树中的k0个近邻点的位置信息向量;
(9)查询中心解密结果队列:
查询中心采用DT-PKC的解密算法MDec(),通过主私钥mk对结果队列PQ 进行解密,得到用户地理位置p0的近邻点位置信息集 P”={pj={xj,yj,uj}|1≤j≤k0},其中pj表示p0的第j个近邻点的位置信息。
本发明与现有技术相比,具有以下优点:
1.本发明制定双云安全计算协议并采用DT-PKC算法将用户的位置信息加密并以k维二叉树的数据结构上传至云服务器中存储,LSP和CSP无法直接得到用户位置信息的明文数据,与现有技术相比增加用户位置信息的安全性。
2.本发明制定双云安全计算协议使本来只适用于明文位置信息点的k维二叉树近邻查询算法适用于加密的位置信息点,在执行k维二叉树算法的过程中,LSP 和CSP依然无法获得用户位置信息的明文数据,与现有技术提高了近邻查询的准确率。
附图说明
图1为本发明的实现流程图。
图2为本发明实施例采用的k维二叉树的结构示意图。
具体实施方式
以下结合附图和具体实施例,对本发明作进一步详细描述:
参照图1,本发明包括如下步骤:
步骤1)构建用户地理位置近邻查询模型:
构建包括查询中心和用户集合D={di|1≤i≤9},以及由位置服务提供商 LSP和计算服务提供商CSP组成的云服务器的用户地理位置近邻查询模型,其中用户集合D对应的位置信息集为P={pi=(xi,yi,ui)|1≤i≤9},di表示位置信息为pi=(xi,yi,ui)的第i个用户,xi和yi表示di所在位置的横坐标和纵坐标,ui表示di的包含身份标识和健康状况的标识信息,I表示用户的总个数,在实施例中为了简便叙述,将ui隐去,则位置信息集为:
P={(1,5),(2,2),(3,1),(4,6),(5,4),(7,2),(8,5),(5,3),(1,1)};
步骤2)制定双云安全计算协议:
制定包括密态数据比较协议和密态数据欧氏距离计算协议的双云安全计算协议,实现步骤为:
步骤2a)制定包括密态数据比较协议:
步骤2a1)LSP通过正整数r,计算输入给LSP的密文的一级中间常量以及输入给LSP的密文的一级中间常量再采用DT-PKC的部分解密算法PMDes1(·),通过部分私钥mk1对一级中间常量A1和B1分别进行部分解密,得到部分明文A1'和B1':
A1'=PMDes1(A)
B1'=PMDes1(B)
其中(·)r表示求r次幂操作;
步骤2a2)LSP随机均匀地选取整数μ∈{0,1},当μ=1时,将{A1,A1',B1,B1'} 上传至CSP,当μ=0时,将{B1,B1',A1,A1'}上传至CSP;
步骤2a3)CSP采用部分解密算法PMDes2(),通过部分私钥mk2对 {A1,A1',B1,B1'}或{B1,B1',A1,A1'}进行解密,得到明文{ar,br}或者{br,ar},并通过{ar,br}计算判断常量d=a/b,或通过{br,ar}计算判断常量d=b/a;
步骤2a4)当d>0时,CSP将返回值ω=1返回至LSP,当d<0时,CSP将返回值ω=-1返回至LSP,当d=0时,CSP将返回值ω=0返回至LSP;
步骤2a5)LSP根据μ和ω的值,确定a和b的大小关系:
步骤2b)制定密态数据欧氏距离计算协议:
步骤2b1)LSP通过随机选取的两个非负整数rα和rβ计算中间常量 R=rα-rβ,并采用DT-PKC的加密算法Enc(·),通过公钥PK对R和R2分别进行加密,得到密文EPK(R)和EPK(R2),其中R2为R的平方;
步骤2b3)LSP计算输入给LSP的密文的一级中间常量和输入给LSP的密文的一级中间常量并采用DT-PKC的部分解密算法PMDes1(·),通过部分私钥mk1对一级中间常量A2和B2分别进行部分解密,得到部分明文A2'和 B2',然后将{A2,A2',B2,B2'}上传至CSP,其中:
步骤2b4)CSP采用DT-PKC的部分解密算法PMDes2(·),通过部分私钥mk2对{A2,A2',B2,B2'}进行解密,得到明文{a+rα,b+rβ},并计算{a+rα,b+rβ}的二级中间常量A2”=(a+rα)-(b+rβ)和B2”=((a+rα)-(b+rβ))2;
步骤2b5)CSP采用DT-PKC的加密算法Enc(·),通过公钥PK将A2”和B2”加密,得到密文中间常量S1=EPK(A2”)和S2=EPK(B2”),并将{S1,S2}返回至LSP;
步骤3)查询中心生成密钥并分配:
步骤3a)查询中心采用DT-PKC的密钥生成算法KeyGen(·),计算查询中心的公钥PK0和主私钥mk、云服务器的公钥PK、以及每个用户di的公钥pki,具体步骤如下:
步骤3a1)查询中心根据所需要的安全等级生成安全参数κ,并通过两个比特长度等于κ的大素数p和q计算公共模数N=pq;
步骤3a3)查询中心通过整数θ0∈[1,N/4]计算自己的公钥参数并将N、g和h0作为自己的公钥PK0={N,g,h0},同时计算公共模数N的卡米歇尔值λ=lcm(p-1,q-1),并将λ作为自己的主私钥mk=λ,其中 lcm(·)表示求最小公倍数操作;
步骤3a4)查询中心通过整数θ∈[1,N/4]计算云服务器的公钥参数 h=gθmod N2,并将N、g和h作为云服务器的公钥PK={N,g,h};
步骤3b)查询中心采用DT-PKC的私钥分割算法MkeyS()将主私钥mk分割成部分私钥mk1和mk2,并通过密钥信道将公钥PK和部分私钥mk1分配给位置服务提供商LSP,将公钥PK和部分私钥mk2分配给计算服务提供商CSP,将公钥 pki分配给对应的用户di,其中将主私钥mk分割成部分私钥mk1和mk2的具体步骤如下:
步骤3b1)查询中心按照下式计算部分私钥mk1=λ1和部分私钥mk2=λ2:
步骤4)查询中心初始化k维二叉树并上传:
步骤4a)查询中心从位置信息集P选取前7个位置信息组成的位置信息子集P'={ps=(xs,ys,us)|1≤s≤7},并采用k维二叉树初始化算法 K-DTreeInit(·),以xs和ys为分割维度对位置信息子集P'进行交替分割,得到 k维二叉树T={ts:<ts.data=ps,ts.right,ts.left>|1≤s≤w},其中ts表示T中的节点,ts.data表示存储在节点ts的数据,ts.right和ts.left分别表示ts的右孩子和左孩子,在实施例中构造k维二叉树T的步骤如下:
步骤4a1)查询中心查找P'在维度xs的中位数元素(4,6),则(4,6)为k维二叉树T的根节点,然后按(4,6)将P'按维度xs分为两个子集 PL'={(1,5),(2,2),(3,1)}和PR'={(5,4),(7,2),(8,5)},注意如果集合数量为偶数则向下取;
步骤4a2)查询中心查找PL'在维度ys的中位数元素(2,2),则(2,2)为根节点(4,6)的左孩子,然后按照(2,2)将PL'按维度ys分为两个子集 PLL'={(1,5)},PLR'={(3,1)},注意到此时PLL'和PLR'均只有一个元素,无法被继续划分,所以将(1,5)作为(2,2)的左孩子,将(3,1)作为(2,2)的右孩子;
步骤4a3)查询中心查找PR'在维度ys的中位数元素(5,4),则(5,4)为根节点(4,6)的右孩子,然后按(5,4)将PR'按维度ys分为两个子集 PRL'={(7,2)},PRR'={(8,5)},此时PRL'和PRR'均只有一个元素,无法被继续划分,所以将(7,2)作为(5,4)的左孩子,将(8,5)作为(5,4)的右孩子,至此完成了如图2所示的以P'中的元素(4,6)为根节点的共有7个节点的K维二叉树 T的初始化,其中的黑色节点代表树的节点,空心节点为未插入树的节点,菱形节点代表待查询的位置点信息,图中的横坐标表示位置信息的x轴,纵坐标表示位置信息的y轴。
步骤4b)查询中心采用DT-PKC的加密算法Enc(),并通过公钥PK0对k维二叉树T的每个节点ts的节点数据ts.data进行加密并和公钥PK0组合,得到位置信息向量为ps'的加密后的k维二叉树T',然后将T'上传至LSP,其中:
步骤5)用户d8对其位置信息p8进行加密:
用户d8采用DT-PKC的加密算法Enc(),并通过自己的公钥pk8对用户位置信息p8=(x8,y8,u8)进行加密,得到用户位置信息密文然后将和公钥pk8组合成用户位置信息向量p8'上传至LSP,其中:
步骤6)LSP和CSP基于密态数据比较协议对加密后的k维二叉树T'更新:
LSP和CSP采用k维二叉树的节点插入算法K-DTreeInsert(·),并基于密态数据比较协议,将用户d8上传的用户位置(5,3)对应的信息向量pk8插入到K维二叉树T'中,得到更新后的K维二叉树T”,具体步骤如下:
步骤6a)LSP和CSP从K维二叉树T'的根节点开始执行密态数据比较协议,按照维度xs将中的和中的作为比较协议的输入值,得到结果的明文要大于的明文,然后在的右子树继续执行 K-DTreeInsert(·);
步骤6c)LSP和CSP执行密态数据比较协议,按照维度xs将中的和中的作为比较协议的输入值,得到结果的明文要小于的明文,故在的左子树继续执行节点插入算法,但已经是叶子节点,并没有左子树,故将作为的左孩子插入到看k维二叉树 T'中,得到新的k维二叉树T”;
步骤7)查询中心请求获取用户地理位置的k近邻查询结果:
查询中心采用DT-PKC的加密算法Enc(),通过公钥PK0对用户地理位置 p0=(x0,y0,u0)进行加密,得到用户地理位置密文并将由和公钥PK0组合成的用户地理位置信息向量p0',以及p0的近邻点个数的查询参数 k0组成近邻查询请求{p0',k0}上传至LSP,其中:在实施例中k0=2;
步骤8)LSP和CSP基于双云安全计算协议进行k近邻查询:
LSP和CSP采用k维二叉树的k近邻查询算法K-DTreeKnnQuery(·),并基于双云安全计算协议,在k维二叉树T”中使用p0'查询用户地理位置p0的k0个近邻点,得到的查询结果队列返回至查询中心,其中PQ中的元素pj'为待查询位置点p0在k维二叉树中的k0个近邻点的位置信息向量,具体步骤如下:
步骤8a)LSP和CSP k维二叉树T'的根节点执行密态数据欧氏距离计算协议,将中的和中的作为计算协议的输入值,得到和对应明文欧氏距离平方的密文EPK(9);将中的和中的作为计算协议的输入值,得到和对应明文欧氏距离平方的密文EPK(25),然后计算和对应明文欧氏距离平方的密文将加入查询结果队列PQ;
步骤8c)LSP和CSP执行密态数据欧氏距离计算协议,将中的和中的作为计算协议的输入值,得到和对应明文欧氏距离平方的密文EPK(1);将中的和中的作为计算协议的输入值,得到和对应明文欧氏距离平方的密文 EPK(1),然后计算和对应明文欧氏距离平方的密文将加入查询结果队列PQ;
步骤8d)LSP和CSP执行密态数据欧氏距离计算协议,将中的和中的作为计算协议的输入值,得到和对应明文欧氏距离平方的密文将中的和中的作为计算协议的输入值,得到和对应明文欧氏距离平方的密文EPK(0),然后计算和对应明文欧氏距离平方的密文将加入查询结果队列PQ,此时由于PQ中的元素个数大于k0,故将从PQ 中删除,由于已经是叶子节点,故搜索结束,将结果队列 PQ返回至查询中心;
步骤9)查询中心解密结果队列:
查询中心采用DT-PKC的解密算法MDec(),通过主私钥mk对结果队列PQ 进行解密,得到用户地理位置p0的近邻点位置信息集 P”={pj={xj,yj,uj}|1≤j≤2},其中pj表示p0的第j个近邻点的位置信息,在实施例中P”={(2,2),(3,1)}。
Claims (2)
1.一种基于双云安全计算协议的用户地理位置近邻查询方法,其特征在于,包括如下步骤:
(1)构建用户地理位置近邻查询模型:
构建包括查询中心和用户集合D={di|1≤i≤I,I≥2},以及由位置服务提供商LSP和计算服务提供商CSP组成的云服务器的用户地理位置近邻查询模型,其中用户集合D对应的位置信息集为P={pi=(xi,yi,ui)|1≤i≤I,I≥2},di表示位置信息为pi=(xi,yi,ui)的第i个用户,xi和yi表示di所在位置的横坐标和纵坐标,ui表示di的包含身份标识和健康状况的标识信息,I表示用户的总个数;
(2)制定双云安全计算协议:
制定包括密态数据比较协议和密态数据欧氏距离计算协议的双云安全计算协议,实现步骤为:
(2a)制定包括密态数据比较协议:
(2a1)LSP通过正整数r,计算输入给LSP的密文的一级中间常量以及输入给LSP的密文的一级中间常量再采用DT-PKC的部分解密算法PMDes1(·),通过部分私钥mk1对一级中间常量A1和B1分别进行部分解密,得到部分明文A1'和B1':
A1'=PMDes1(A)
B1'=PMDes1(B)
其中(·)r表示求r次幂操作;
(2a2)LSP随机均匀地选取整数μ∈{0,1},当μ=1时,将{A1,A1',B1,B1'}上传至CSP,当μ=0时,将{B1,B1',A1,A1'}上传至CSP;
(2a3)CSP采用部分解密算法PMDes2(),通过部分私钥mk2对{A1,A1',B1,B1'}或{B1,B1',A1,A1'}进行解密,得到明文{ar,br}或者{br,ar},并通过{ar,br}计算判断常量d=a/b,或通过{br,ar}计算判断常量d=b/a;
(2a4)当d>0时,CSP将返回值ω=1返回至LSP,当d<0时,CSP将返回值ω=-1返回至LSP,当d=0时,CSP将返回值ω=0返回至LSP;
(2a5)LSP根据μ和ω的值,确定a和b的大小关系:
(2b)制定密态数据欧氏距离计算协议:
(2b1)LSP通过随机选取的两个非负整数rα和rβ计算中间常量R=rα-rβ,并采用DT-PKC的加密算法Enc(·),通过公钥PK对R和R2分别进行加密,得到密文EPK(R)和EPK(R2),其中R2为R的平方;
(2b3)LSP计算输入给LSP的密文的一级中间常量和输入给LSP的密文的一级中间常量并采用DT-PKC的部分解密算法PMDes1(·),通过部分私钥mk1对一级中间常量A2和B2分别进行部分解密,得到部分明文A2'和B2',然后将{A2,A2',B2,B2'}上传至CSP,其中:
(2b4)CSP采用DT-PKC的部分解密算法PMDes2(·),通过部分私钥mk2对{A2,A2',B2,B2'}进行解密,得到明文{a+rα,b+rβ},并计算{a+rα,b+rβ}的二级中间常量A2”=(a+rα)-(b+rβ)和B2”=((a+rα)-(b+rβ))2;
(2b5)CSP采用DT-PKC的加密算法Enc(·),通过公钥PK将A2”和B2”加密,得到密文中间常量S1=EPK(A2”)和S2=EPK(B2”),并将{S1,S2}返回至LSP;
(3)查询中心生成密钥并分配:
(3a)查询中心采用DT-PKC的密钥生成算法KeyGen(·),计算查询中心的公钥PK0和主私钥mk、云服务器的公钥PK、以及每个用户di的公钥pki;
(3b)查询中心采用DT-PKC的私钥分割算法MkeyS()将主私钥mk分割成部分私钥mk1和mk2,并通过密钥信道将公钥PK和部分私钥mk1分配给位置服务提供商LSP,将公钥PK和部分私钥mk2分配给计算服务提供商CSP,将公钥pki分配给对应的用户di;
(4)查询中心初始化k维二叉树并上传:
(4a)查询中心从位置信息集P选取w个位置信息组成的位置信息子集P'={ps=(xs,ys,us)|1≤s≤w,w<I},并采用k维二叉树初始化算法K-DTreeInit(·),以xs和ys为分割维度对位置信息子集P'进行交替分割,得到k维二叉树T={ts:<ts.data=ps,ts.right,ts.left>|1≤s≤w},其中ts表示T中的节点,ts.data表示存储在节点ts的数据,ts.right和ts.left分别表示ts的右孩子和左孩子;
(4b)查询中心采用DT-PKC的加密算法Enc(),并通过公钥PK0对k维二叉树T的每个节点ts的节点数据ts.data进行加密并和公钥PK0组合,得到位置信息向量为ps'的加密后的k维二叉树T',然后将T'上传至LSP,其中:
(5)用户di对其位置信息pi进行加密并上传:
用户di采用DT-PKC的加密算法Enc(),并通过自己的公钥pki对用户位置信息pi=(xi,yi,ui)进行加密,得到用户位置信息密文然后将和公钥pki组合成用户位置信息向量pi'上传至LSP,其中:
(6)LSP和CSP基于密态数据比较协议对加密后的k维二叉树T'更新:
LSP和CSP采用k维二叉树的节点插入算法K-DTreeInsert(·),并基于密态数据比较协议,将用户di上传的用户位置信息向量pi'插入到k维二叉树T'中,得到更新后的k维二叉树T”;
(7)查询中心请求获取用户地理位置的k近邻查询结果:
查询中心采用DT-PKC的加密算法Enc(),通过公钥PK0对用户地理位置p0=(x0,y0,u0)进行加密,得到用户地理位置密文并将由和公钥PK0组合成的用户地理位置信息向量p0',以及p0的近邻点个数的查询参数k0组成近邻查询请求{p0',k0}上传至LSP,其中:
(8)LSP和CSP基于双云安全计算协议进行k近邻查询:
LSP和CSP采用k维二叉树的k近邻查询算法K-DTreeKnnQuery(·),并基于双云安全计算协议,在k维二叉树T”中使用p0'查询用户地理位置p0的k0个近邻点,得到的查询结果队列返回至查询中心,其中PQ中的元素pj'为待查询位置点p0在k维二叉树中的k0个近邻点的位置信息向量;
(9)查询中心解密结果队列:
查询中心采用DT-PKC的解密算法MDec(),通过主私钥mk对结果队列PQ进行解密,得到用户地理位置p0的近邻点位置信息集P”={pj={xj,yj,uj}|1≤j≤k0},其中pj表示p0的第j个近邻点的位置信息。
2.根据权利要求1所述的基于双云安全计算协议的用户地理位置近邻查询方法,其特征在于,步骤(3a)中所述的计算查询中心的公钥PK0和主私钥mk、云服务器的公钥PK、以及每个用户di的公钥pki,实现步骤为:
(3a1)查询中心根据所需要的安全等级生成安全参数κ,并通过两个比特长度等于κ的大素数p和q计算公共模数N=pq;
(3a3)查询中心通过整数θ0∈[1,N/4]计算自己的公钥参数并将N、g和h0作为自己的公钥PK0={N,g,h0},同时计算公共模数N的卡米歇尔值λ=lcm(p-1,q-1),并将λ作为自己的主私钥mk=λ,其中lcm(·)表示求最小公倍数操作;
(3a4)查询中心通过整数θ∈[1,N/4]计算云服务器的公钥参数h=gθmod N2,并将N、g和h作为云服务器的公钥PK={N,g,h};
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110288951.3A CN113068128B (zh) | 2021-03-18 | 2021-03-18 | 基于双云安全计算协议的用户地理位置近邻查询方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110288951.3A CN113068128B (zh) | 2021-03-18 | 2021-03-18 | 基于双云安全计算协议的用户地理位置近邻查询方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113068128A true CN113068128A (zh) | 2021-07-02 |
CN113068128B CN113068128B (zh) | 2021-11-23 |
Family
ID=76561184
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110288951.3A Active CN113068128B (zh) | 2021-03-18 | 2021-03-18 | 基于双云安全计算协议的用户地理位置近邻查询方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113068128B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140090023A1 (en) * | 2012-09-27 | 2014-03-27 | Hong Kong Baptist University | Method and Apparatus for Authenticating Location-based Services without Compromising Location Privacy |
CN107222302A (zh) * | 2017-07-03 | 2017-09-29 | 深圳大学 | 用部分同态加密方案构建的空间众包任务分配系统及方法 |
CN108683729A (zh) * | 2018-05-14 | 2018-10-19 | 重庆第二师范学院 | 一种面向可信云的环境监测数据安全存储系统及方法 |
CN109992995A (zh) * | 2019-03-05 | 2019-07-09 | 华南理工大学 | 一种支持位置保护和查询隐私的可搜索加密方法 |
CN110248315A (zh) * | 2019-04-24 | 2019-09-17 | 广东工业大学 | 一种基于双锚点的位置隐私保护方法 |
CN112052466A (zh) * | 2020-08-28 | 2020-12-08 | 西安电子科技大学 | 基于多方安全计算协议的支持向量机用户数据预测方法 |
-
2021
- 2021-03-18 CN CN202110288951.3A patent/CN113068128B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140090023A1 (en) * | 2012-09-27 | 2014-03-27 | Hong Kong Baptist University | Method and Apparatus for Authenticating Location-based Services without Compromising Location Privacy |
CN107222302A (zh) * | 2017-07-03 | 2017-09-29 | 深圳大学 | 用部分同态加密方案构建的空间众包任务分配系统及方法 |
CN108683729A (zh) * | 2018-05-14 | 2018-10-19 | 重庆第二师范学院 | 一种面向可信云的环境监测数据安全存储系统及方法 |
CN109992995A (zh) * | 2019-03-05 | 2019-07-09 | 华南理工大学 | 一种支持位置保护和查询隐私的可搜索加密方法 |
CN110248315A (zh) * | 2019-04-24 | 2019-09-17 | 广东工业大学 | 一种基于双锚点的位置隐私保护方法 |
CN112052466A (zh) * | 2020-08-28 | 2020-12-08 | 西安电子科技大学 | 基于多方安全计算协议的支持向量机用户数据预测方法 |
Non-Patent Citations (4)
Title |
---|
LEYOU ZHANG;JUAN REN;YI MU;BAOCANG WANG: "Privacy-Preserving Multi-Authority Attribute-Based Data Sharing Framework for Smart Grid", 《IEEE ACCESS》 * |
RONG RONG,YULI FU,XIN ZHANG: "ANN Feature Scaling based K-Nearest Neighbor Algorithm for Indoor Localization", 《2021 13TH INTERNATIONAL CONFERENCE ON MEASURING TECHNOLOGY AND MECHATRONICS AUTOMATION (ICMTMA)》 * |
刘彦,张琳: "位置大数据中一种基于Bloom Filter的匿名保护方法", 《计算机科学》 * |
江明明; 赵利军; 王艳; 王保仓: "面向云数据共享的量子安全的无证书双向代理重加密", 《信息网络安全》 * |
Also Published As
Publication number | Publication date |
---|---|
CN113068128B (zh) | 2021-11-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Xiong et al. | Partially policy-hidden attribute-based broadcast encryption with secure delegation in edge computing | |
Sandor et al. | Efficient decentralized multi-authority attribute based encryption for mobile cloud data storage | |
Shao et al. | FINE: A fine-grained privacy-preserving location-based service framework for mobile devices | |
Wang et al. | Efficiently revocable and searchable attribute-based encryption scheme for mobile cloud storage | |
Gupta et al. | [Retracted] An Improved Secure Key Generation Using Enhanced Identity‐Based Encryption for Cloud Computing in Large‐Scale 5G | |
Boufounos et al. | Secure binary embeddings for privacy preserving nearest neighbors | |
Schlegel et al. | Privacy-preserving location sharing services for social networks | |
CN106656997B (zh) | 一种基于移动社交网络代理重加密跨域交友隐私保护方法 | |
CN109981265B (zh) | 一种基于身份的不使用双线性对的密文等值判定方法 | |
CN114362940B (zh) | 一种数据隐私保护的无服务器异步联邦学习方法 | |
CN108632237A (zh) | 一种基于多匿名器匿名的位置服务方法 | |
CN110035067B (zh) | 云存储中支持高效数据去重和属性撤销的属性加密方法 | |
Li et al. | Efficient privacy-preserving access control of mobile multimedia data in cloud computing | |
Deng et al. | Policy-based broadcast access authorization for flexible data sharing in clouds | |
CN111581648B (zh) | 在不规则用户中保留隐私的联邦学习的方法 | |
CN114697042A (zh) | 一种基于区块链的物联网安全数据共享代理重加密方法 | |
Gu et al. | Self-verifiable attribute-based keyword search scheme for distributed data storage in fog computing with fast decryption | |
Yin et al. | A Novel Proxy Re-encryption Scheme Based on Identity Property and Stateless Broadcast Encryption Under Cloud Environment. | |
Zhang et al. | Fully Constant‐Size CP‐ABE with Privacy‐Preserving Outsourced Decryption for Lightweight Devices in Cloud‐Assisted IoT | |
Li et al. | A lightweight and verifiable access control scheme with constant size ciphertext in edge-computing-assisted IoT | |
CN113204788B (zh) | 一种细粒度属性匹配隐私保护方法 | |
Qin et al. | Flexible and lightweight access control for online healthcare social networks in the context of the internet of things | |
Wang | One-round secure fair meeting location determination based on homomorphic encryption | |
Hong et al. | A key-insulated CP-ABE with key exposure accountability for secure data sharing in the cloud | |
CN111447200B (zh) | 数据处理方法、装置、系统、电子设备及存储介质 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |