一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种保护隐私的量子多方计算最大值的方法与流程

2021-10-30 02:48:00 来源:中国专利 TAG:多方 计算 适用于 最大值 量子


1.本发明涉及秘密分享与安全多方计算技术领域,具体地说是一种适用于量子通信网络中保护用户隐私的多方计算最大值的方法。


背景技术:

2.近年来,量子计算和量子信息的研究高速发展,受到越来越多的人的注意,一些量子算法的提出从理论上解决了一些如大数分解、离散对数等数学难题,对依托其建立的传统的公钥密码系统提出了挑战。另一方面,以量子密钥分配、量子秘密分享为代表的量子通信协议依靠量子力学机制可以保证理论安全性,使通信的安全性大大增加。
3.最值问题的安全多方计算是保密科学的研究热点,在统计学中也有重要的应用,该问题需要参与合作的每一方利用自己的隐私数据合作计算出一个共同的最值,并且任何一方都得不到其他参与者的隐私数据。最大值的安全多方计算在密封拍卖、电子投票、联邦学习等涉及隐私保护的领域中具有广泛而重要的应用。经典方法解决安全多方计算最值问题时通常需要将隐私信息进行编码转化,然后基于同态加密、秘密共享和门限密码技术来实现协议的设计。一方面,同态加密需要执行多次模乘运算,这对协议的性能产生了限制。另一方面,经典的安全多方计算最值的协议为了抵抗私钥持有者参与的合谋攻击,大多采用了密文分割和不经意传输技术,协议的通信和计算复杂度进一步增加。实现多方计算最大值的一种量子方法是使用隐私比较协议,但是这样做会导致参与方的隐私值的大小关系被泄露给第三方,而且在协议中应用了量子傅里叶变换和大量受控变换,存在着大量的量子纠缠,增加了实际应用的难度。
4.综上所述,解决安全多方计算最大值问题的经典协议存在结构复杂、复杂度大、难以抵抗量子攻击等问题,而针对该问题的量子协议研究较少。在云计算环境下的安全多方计算最大值的量子协议具有较好的应用价值。


技术实现要素:

5.本发明为了解决上述现有技术存在的不足之处,提供一种保护隐私的量子多方计算最大值的方法,以期能在保护客户端隐私的前提下实现多方计算最大值,在半诚实模型下保证信息论的安全性,并能有效地降低通信和计算复杂度的同时,还能降低对于客户端的量子处理能力的要求,从而能提高安全多方计算协议的效率。
6.本发明为解决技术问题所采用的技术方案是:
7.本发明一种保护隐私的量子多方计算最大值的方法,其特点是应用于由一个量子云qc和m个客户端{p1,p2,...,p
i
,...,p
m
}所构成的量子通信网络中,其中,p
i
表示第i个客户端,记第i个客户端p
i
持有长度为n的秘密为x
i
,所述量子多方计算方法是按如下步骤进行:
8.步骤1、第i个客户端p
i
根据自身的秘密x
i
生成一个辅助数组且满足
9.步骤2、所有客户端{p1,p2,...,p
i
,...,p
m
}共同执行以下操作:
10.步骤2.1、定义变量n并初始化n=1;
11.步骤2.2、所述量子云qc根据每个客户端的辅助数组的第n位元素,利用安全多方计算多方析取值的方法得到辅助数组第n位的析取值r[n];
[0012]
步骤2.3、所述量子云qc公布第n位的析取值r[n],第i个客户端p
i
比较自身的辅助数组的第n位元素和所述析取值r[n],如果则第i个客户端p
i
将自身辅助数组的每一位都置“0”,如果则保持辅助数组
[0013]
步骤2.4、将n 1赋值给n,并判断n>n是否成立,若成立,则表示量子云qc得到析取值数组r={r[1],r[2],...,r[n],...,r[n]},并将析取值数组r作为客户端持有的秘密中的最大值,否则返回步骤2.2顺序执行。
[0014]
本发明所述的保护隐私的量子多方计算最大值的方法的特点也在于,所述步骤2.2中的安全多方计算析取值的方法是按如下过程进行:
[0015]
步骤2.2.1、记第i个客户端p
i
的辅助数组的第n位元素为所有客户端共同商定一个整数k作为系统参数;
[0016]
步骤2.2.2、所述第i个客户端p
i
通过基于单光子的量子秘密分享协议分享一个长度为k的秘密值s
i

[0017]
步骤2.2.3、第i个客户端p
i
根据辅助数组第n位元素按照如下规则生成一个维度为k的秘密数组y
i

[0018]
如果则令秘密数组y
i
的每一个元素都为“0”,如果则令秘密数组y
i
中至少有一个元素为“1”;
[0019]
步骤2.2.4、所述量子云qc产生k个单光子{ph1,ph2,...,ph
j
,...,ph
k
},并记录k个单光子初始的量子态;其中,ph
j
表示第j个单光子;
[0020]
步骤2.2.5、定义变量h并初始化h=1;
[0021]
步骤2.2.6、所述量子云qc将k个单光子全部发送给第h个客户端p
h

[0022]
步骤2.2.7、所述第h个客户端p
h
根据持有的秘密值s
i
和秘密数组y
i
分别按如下过程对k个单光子{ph1,ph2,...,ph
j
,...,ph
k
}执行操作:
[0023]
步骤a、初始化j=1;
[0024]
步骤b、对于第h个客户端p
h
的秘密值s
h
的第j位s
h
[j],如果s
h
[j]=1,则对第j个光子ph
j
实施h门操作;否则,不执行操作;
[0025]
步骤c、对于第h个客户端p
h
的的秘密数组y
h
的第j个元素y
h
[j],如果y
h
[j]=1,则对第j个光子ph
j
实施泡利操作u
y
;否则,不执行操作;
[0026]
步骤d、将j 1赋值给j后,判断j>k是否成立,若成立,则表示得到更新后的k个单光子并发送给第h 1个客户端p
h 1
后,执行步骤e;否则,返回步骤b继续执行;
[0027]
步骤e、将h 1赋值给h后,返回步骤2.2.7执行,直到i>m为止;从而得到最终更新的k个单光子并发送所述量子云qc;
[0028]
步骤2.2.8、所述量子云qc对所收到的k个单光子中的每个单光子进行测量操作,如果任何一个单光子的量子态与初始量子态不同,则令第n位的析取值r[n]为1,否则令第n位的析取值r[n]为0。
[0029]
与现有的安全多方计算最大值的协议相比,本发明的有益效果体现在:
[0030]
1、本发明考虑了云计算的特征,在协议中引入了量子云,从而降低了对协议参与方的量子处理能力的需求。
[0031]
2、本发明使用单光子作为信息的载体,单光子的制备和测量都由量子云负责,而每个参与方都只需要执行单量子比特算子,从而显著降低了参与方的计算复杂度,并提高了协议的执行效率。
[0032]
3、本发明中不存在量子纠缠,使得信息具有更高的保真度,降低了实现上的难度并提高了协议的成功率。
[0033]
4、本发明在半诚实模型下,可以保证信息论的安全。相较于经典的安全多方计算最大值的方案具有更高的安全性。
附图说明
[0034]
图1为本发明中计算析取值时客户端对单光子的操作示意图;
[0035]
图2为本发明中客户端对辅助数组进行比较和操作过程示意图。
具体实施方式
[0036]
本实施例中,一种保护隐私的量子多方计算最大值的方法,是应用在由一个量子云qc和m个具有一定量子处理能力的客户端{p1,p2,...,p
i
,...,p
m
}构成的量子通信网络中,经过量子云的协助从而在不泄露客户端隐私的前提下多方计算最大值。该保护隐私的量子多方计算最大值的方法是按如下步骤进行:
[0037]
步骤1、第i个客户端p
i
根据各自持有的n位秘密值x
i
生成一个长度为n秘密数组且的每一个元素对应x
i
的每一位,即
[0038]
步骤2、定义变量n并初始化n=1。如图1所示,所有客户端{p1,p2,...,p
i
,...,p
m
}在量子云qc的协助下按照如下步骤计算辅助数组第n位的析取值r[n]:
[0039]
步骤2.1、记第i个客户端p
i
的辅助数组的第n位元素为所有客户端共同商定一个整数k作为系统参数;
[0040]
步骤2.2、第i个客户端p
i
通过基于单光子的量子秘密分享协议分享一个长度为k的秘密值s
i

[0041]
步骤2.3、第i个客户端p
i
根据辅助数组第n位元素为按照如下规则生成一个维度为k的秘密数组y
i

[0042]
如果则令秘密数组y
i
的每一个元素都为“0”,如果则令秘密数组y
i
中至少有一个元素为“1”;
[0043]
步骤2.4、量子云qc生成k个单光子{ph1,ph2,...,ph
k
},其中,ph
j
表示第j个单光子,量子云qc记录这k个单光子的初始量子态;
[0044]
步骤2.5、定义变量h并初始化h=1;
[0045]
步骤2.6、量子云qc将k个单光子全部发送给第h个客户端p
h

[0046]
步骤2.7、第h个客户端p
h
根据持有的秘密值s
h
和秘密数组y
h
分别按如下过程对k个单光子{ph1,ph2,...,ph
j
,...,ph
k
}执行操作:
[0047]
步骤a、初始化j=1;
[0048]
步骤b、如果第h个客户端p
h
的秘密值s
h
的第j位s
h
[j]为1,则对第j个光子ph
j
实施h门操作,否则,不执行操作;
[0049]
步骤c、如果第h个客户端p
h
的的秘密数组y
h
的第j个元素y
h
[j]为1,则对第j个光子ph
j
实施泡利操作u
y
,否则,不执行操作,泡利操作u
y
可以用以下矩阵表示:
[0050][0051]
步骤d、将j 1赋值给j后,判断j>k是否成立,若成立,则表示得到更新后的k个单光子并发送给第h 1个客户端p
h 1
后,执行步骤e;否则,返回步骤b继续执行;
[0052]
步骤e、将h 1赋值给h后,返回步骤2.7执行,直到i>m为止;从而得到最终更新的k个单光子并发送给量子云qc。
[0053]
步骤2.8、量子云qc对所收到的k个单光子中的每个单光子进行测量操作,如果任何一个单光子的量子态与记录的初始量子态不同,则令第n位的析取值r[n]为1,否则令第n位的析取值r[n]为0。
[0054]
步骤3、量子云qc公布第n位的析取值r[n]后,客户端比较和操作辅助数组的过程如图2所示:第i个客户端p
i
比较自身的辅助数组的第n位元素和析取值r[n],如果第i个客户端p
i
将自身辅助数组的每一位都置“0”,如果则保持辅助数组不变。
[0055]
步骤4、将n 1赋值给n,并判断n>n是否成立,若成立,则表示量子云qc得到析取值数组r={r[1],r[2],...,r[n],...,r[n]},并将析取值数组r对应的序列作为每个客户端的秘密中的最大值,否则返回步骤2.1按顺序执行。
[0056]
下面对于本发明的正确性、安全性以及计算和通信复杂度进行进一步说明:
[0057]
a)正确性:
[0058]
本发明的核心过程是对每个客户端的秘密值从高到低按位执行析取运算,在一轮析取运算后,如果某个客户端发现自己的输入小于析取值,那么他将自己的辅助数组的每个元素都置“0”,并以新的辅助数组参与之后的析取运算。当对最低位的析取运算完成后,未被置“0”的辅助数组被保存在量子云中,其对应的秘密值就是所有客户端中的最大秘密值。
[0059]
下面通过对求析取值的过程进行证明来阐述本发明的正确性。在求析取值过程中应用到以下泡利操作:
[0060][0061][0062]
具有以下性质:
[0063][0064]
hu
y
h=

u
y
ꢀꢀ
(4)
[0065]
hu
y


u
y
h
ꢀꢀ
(5)
[0066]
对析取过程中一个单光子ph
j
量子态的变化进行分析,设其初始量子态为|ψ>
j
,经过如图1中所示的操作后的终态为|φ>
j
,则析取过程中所执行的操作可以表示成:
[0067][0068]
根据式(3)

(5),化简为:
[0069][0070]
因为s
i
通过量子秘密分享协议生成,满足∑s
i
[j]=0mod2,所以泡利操作h并不会使ph
j
发送变化,|φ>
j
可以化为:
[0071][0072]
其中,泡利操作u
y
对任意单光子量子态的作用如下所示:
[0073][0074]
故u
y
操作的执行次数(即∑
i
y
i
[j]的奇偶)不会改变这个光子处于的基底。而l的取值也只是会带给|φ>
j
不同的全局相位,这对于观测是没有影响的。说明计算析取值过程中的泡利操作不会产生额外的误差。
[0075]
下面分析在一次析取值运算中,客户端的输入值里“1”的个数对正确率的影响。设m个客户端的输出中有t个“1”,考虑以下情形中析取值运算的正确率:
[0076]
1)t=0。此时所有的y
i
[j]都是全“0”数组,析取运算的结果一定为0,正确率为100%;
[0077]
2)t=1。此时仅有一个y
i
[j]是非“0”数组,析取运算结果为一定为1,正确率为100%;
[0078]
3)t=2。假设两个非“0”数组分别是y1[j]和y2[j],其不同取值组合总数为(2
k

1)(2
k

1),当y1[j]≠y2[j]时可以得出析取值为1,否则得出析取值为0,其错误率为:
[0079]
显然当k值足够大时,错误率接近0;
[0080]
4)t=3。考虑一个具有k行t列的矩阵,每一列至少有一个元素为1,而且每一行中都有0个或者2个1时,会导致得出错误的析取值,其概率δ满足:
[0081][0082][0083]
所以当k值足够大时,错误率接近0。例如,k=6时,δ<0.01638,k=10时,δ<0.00098;
[0084]
5)从式(10)

(11)可得,当t>3时的错误率满足:
[0085][0086][0087]
同理,当k值足够大时,错误率接近0。
[0088]
综上所述,本发明中求多方析取值的错误率极低,接近0;反之,正确率极高,接近1。因此该析取方法是渐近正确的。
[0089]
b)安全性:
[0090]
本发明求最大值的过程的一个主要部分是执行若干次安全多方计算析取值的方法,下面将证明该协议在半诚实模型下具有信息论安全。
[0091]
本发明中的安全多方计算析取值的协议首先通过量子秘密分享协议在客户端间分发一组秘密值s1,s2,....,s
m
,这一步的信息论安全由量子秘密分享协议所保证。随后,每个客户端p
i
通过各自持有的秘密值s
i
和根据x
i
生成的秘密数组y
i
对k个单光子执行相应操作,这一步骤可以认为是量子形式的一次一密加密。
[0092]
下面对方法中的量子秘密分享和协议中的量子一次一密可以提供信息论安全进行证明。首先根据定理:如果一个量子协议满足对于任何输入密度矩阵ρ
in
的输出ρ
out
都处于最大混合态,即满足其中,u
k
代表协议执行的酉操作,那么可以认为该协议是信息论安全的。
[0093]
对于本发明中使用单光子,协议的输入态密度矩阵可表示为:
[0094][0095]
其中,
[0096]
在第i个客户端p
i
执行相应操作之后的输出态的密度矩阵变为:
[0097]
[0098][0099]
显然,每个客户端所进行的操作满足上述定理,即对于任意输入的输出都处于最大混合态,所以整个过程也满足上述定理。从而得出结论:量子秘密分享和量子一次一密可以可以提供信息论上的安全性。进而得出结论:本发明在半诚实模型下是信息论安全的。
[0100]
c)计算复杂度和通信复杂度:
[0101]
采用本发明的方法完成一次由m个客户端参与的输入数据长度为n的安全多方求最大值,需要执行n次安全多方计算析取值的量子协议。每一次安全多方计算析取值的量子协议包含2个主要的过程:在m个客户端间执行量子秘密分享协议、每个客户端的操作和传输单光子。这两个步骤都需要传输mk个单光子,所以一次安全多方计算析取值的量子协议的通信复杂度为o(mk),一次安全多方计算最大值的通信复杂度为o(nmk)。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜