首页 专利交易 科技果 科技人才 科技服务 国际服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

一种安全高效的分布式k-d树构建方法 

买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!

申请/专利权人:西安电子科技大学

摘要:本发明公开了一种安全高效的分布式k‑d树构建方法,包括:TTP生成两对安全密钥{pk,sk}和{pk#,sk#},并将{pk,pk#}公开发布给各数据拥有者、第一云服务器CS1和第二云服务器CS2,将sk、sk#分别秘密发送给CS2、CS1;数据拥有者利用公钥pk对自身数据集中的数据进行加密,得到加密数据后外包至CS1;CS1与CS2进行协同计算,基于外包数据集逐个构建k‑d树的内部结点和叶子结点,得到加密的k‑d树。本发明确保攻击者在仅攻破单个云服务器的情况下,无法危及到分布式数据及k‑d树的隐私安全,由于数据拥有者会提前对自身数据进行排序,并将加密后的数据连同顺序一起外包给云端,因此该方法更为高效。

主权项:1.一种安全高效的分布式k-d树构建方法,其特征在于,应用于云外包查询系统,所述云外包查询系统包括:数据拥有者、可信第三方TTP、第一云服务器CS1和第二云服务器CS2;所述方法包括:TTP初始化生成两对安全密钥{pk,sk}和{pk#,sk#},并将{pk,pk#}发布给每个数据拥有者DOj、第一云服务器CS1和第二云服务器CS2,将sk秘密发送给第二云服务器CS2,将sk#秘密发送给第一云服务器CS1;其中,{pk,pk#}为公钥,{sk,sk#}为私钥,DOj表示k个数据拥有者中的第j个数据拥有者,1≤j≤k;数据拥有者DOj利用公钥pk对自身数据集Xj中的数据进行加密,得到加密数据后,将加密数据外包至第一云服务器CS1;第一云服务器CS1与第二云服务器CS2进行协同计算,基于接收到的外包数据集逐个构建k-d树的内部结点和叶子结点,得到加密的k-d树;其中,所述外包数据集包括各个数据拥有者外包的加密数据;其中,第一云服务器CS1与第二云服务器CS2进行协同计算,基于接收到的外包数据集逐个构建k-d树的内部结点和叶子结点,得到加密的k-d树的步骤,包括:第一云服务器CS1通过与第二云服务器CS2协同计算,获得加密的随机维度向量其中,存在cd′满足b′cd′=1,而j≠cd′满足b′j=0,1≤cd′≤k,1≤j≤k;第二云服务器CS2与第一云服务器CS1根据所述随机维度向量及外包数据集进行协同计算,获得所述外包数据集在第cd′维的数据和其中,xi,j表示自身数据集Xj中的第i条数据,n表示自身数据集Xj中共有n条数据,si,j表示xi,j的顺序值,αi=xi,cd′,βi=si,cd′,1≤i≤n;基于和第一云服务器CS1和第二云服务器CS2进行协同计算,获得加密的分割数据并根据所述加密的分割数据将所述外包数据集分为子数据集C′l和子数据集C′r,其中,Median表示取中位数;第一云服务器CS1建立根结点其中,pl和pr分别表示指向左子树和右子树的指针,所述左子树和右子树由第一云服务器CS1和第二云服务器CS2基于C′l和C′r,通过递归运算建立;其中,第一云服务器CS1通过与第二云服务器CS2协同计算,获得加密的随机维度向量的步骤,包括:第一云服务器CS1随机选择一个维度cd,并构建k维的二进制向量bcd=b1,b2,…,bk,其中,bcd=1,bj=0,1≤cd≤k,j≠cd;第一云服务器CS1利用公钥pk#将bcd加密为密文向量并将所述密文向量发送至第二云服务器CS2;第二云服务器CS2随机置换的位置,得到置换后的向量第二云服务器CS2构造随机向量z2=z2,1,z2,2,…,z2,k,其中,从M中随机选取,M表示预设的明文空间;第二云服务器CS2计算并利用公钥pk将所述随机向量z2加密为密文后,发送至所述第一云服务器CS1,其中,mod表示取模;第一云服务器CS1利用私钥sk#对进行解密得到z1,并构建所述随机维度向量其中,N为预设的素数;第二云服务器CS2与第一云服务器CS1根据所述随机维度向量及外包数据集进行协同计算,获得所述外包数据集在第cd′维的数据和的步骤,包括:第一云服务器CS1随机选择2*k*n个随机值s1,i,j∈M,x1,i,j∈M,M表示预设的明文空间;第一云服务器CS1基于x1,i,j、xi,j、s1,i,j和si,j计算:和第一云服务器CS1计算: 第一云服务器CS1随机选择一组随机值并计算和第一云服务器CS1将发送至第二云服务器CS2;第二云服务器CS2利用私钥sk解密获得第一云服务器CS1计算: 其中,表示在分割维度上提取出的对应的顺序值;基于和第一云服务器CS1和第二云服务器CS2进行协同计算,获得分割数据并根据所述分割数据将所述外包数据集分为子数据集C′l和子数据集C′r的步骤,包括:第二云服务器CS2计算βh=Median{βi|1≤i≤n},并令分割数据第二云服务器CS2与第一云服务器CS1利用安全数据比较算法顺序测试集合中的数据,直至发现αi满足αi≠αh,并将αi的顺序记为βh′;第二云服务器CS2构造数据集合: 其中,是随机值,并且第二云服务器CS2计算和并将密文发送给第一云服务器CS1,其中,rval∈M为随机值;第一云服务器CS1利用私钥sk#解密密文获得{val′,x′i,j,s′i,j},并计算和第二云服务器CS2构造子数据集C′l、C′r:

全文数据:

权利要求:

百度查询: 西安电子科技大学 一种安全高效的分布式k-d树构建方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。

相关技术
相关技术
相关技术
相关技术