宋秀丽 李 闯
①(重庆邮电大学计算机科学与技术学院 重庆 400065)
②(重庆邮电大学网络空间安全与信息法学院 重庆 400065)
量子秘密共享(Quantum Secret Sharing,QSS)是量子密码学的一个重要研究子领域,它将1个量子(经典)秘密分成多个份额,并将其分配给多个参与者,每个参与者拥有1个份额,只有多个参与者相互协作才能正确恢复出原始的秘密值。1999年,Hillery等人[1]发现对Greenberger-Horne-Zeilinger态的粒子执行测量,所得的结果具有关联性,基于这一性质,他们提出了首个QSS方案。此后,纠缠态测量结果的关联性引起了学者的广泛关注,一些基于纠缠态的QSS方案相继出现[1-4],例如Karlsson等人[2]基于二粒子纠缠态的测量关联性提出了QSS方案,并讨论了如何抵抗外部攻击者的窃听攻击或参与者的内部攻击。
上述QSS方案都是基于纠缠态的非局域性设计的,后来一些学者基于经典通信和局域测量(Local Operations and Classical Communications,LOCC)将正交乘积基(Orthogonal Product Basis,OPB)中量子态完全区分开,提出了许多基于LOCC的正交乘积态QSS方案[5-7],这些方案避免了量子态纠缠的开销。除了基于LOCC的正交乘积态可作为量子资源态之外,Bennett等人[8]构建的非局域性正交乘积基量子态也可以作为量子资源态,其只有全局测量才能被区分。2002年,Walgate等人[9]对文献[8]中构建的9个正交乘积态给出了简单的局域不可区分的证明。之后一些学者研究了一般的非局域性正交乘积基的构造及其证明[10,11],例如,2021年,Xu等人[11]给出高维非局域性OPB的最小化构造,并证明了Cd ⊗Cd系统中至少有 2d-4个正交乘积态是不能被局域区分的。目前,非局域性OPB量子态已经应用于量子秘密共享和量子签名等领域[12,13]。其中,2022年,Fu等人[13]基于非局域性OPB态提出了一种多方QSS方案,该方案的量子网络中,每个节点都拥有1个OPB态序列,用于共享秘密值,导致其量子资源开销较大。
上述QSS方案中参与者人数是固定的,有一个参与者缺席将导致秘密共享不能成功,动态量子秘密共享[14-18]能有效解决这一问题。2013年,Hsu等人[14]基于Bell态纠缠交换提出了一个动态QSS方案,可以在不改变秘密的情况下,实现参与者加入或退出。Wang等人[15]指出文献[14]中两个不诚实参与者使用Bell态替换攻击能窃取到分发者的秘密。2018年,Du等人[16]提出了可动态更新秘密和参与者份额的QSS方案,但是文献[17]指出该方案也不能抵抗合谋攻击。为了增强动态QSS方案的安全性,Li等人[18]提出了基于Bell态的动态QSS方案,该方案不仅能抵抗合谋攻击,并且考虑了参与者欺骗攻击的问题。
在基于非局域性OPB态的QSS方案中,当参与者人数增加时,量子资源开销较大;现有大多数动态QSS方案中使用纠缠态共享秘密,量子资源制备的难度较大,并且这些方案的安全性有待提升,鉴于以上两种QSS方案的局限性,本文以非局域性正交乘积态作为量子资源态,提出了一种多方参与者可动态加入或退出的量子秘密共享方案。与其他相似的QSS方案相比,提出的方案具有以下优势:
(1) 非局域性OPB态作为量子资源态,不仅量子资源开销较低,而且其非局域性在量子信息传输中拥有较好的安全性;
(2) 根据平方和定理将秘密进行分发和重构,可实现参与者人数的增加与减少,有较好的灵活性;
(3) 依据Rabin密码思想设计验证机制,测量结果验证过程具有强安全性。
在整数域 Zp中,p是一个无平方因子数,对于任意整数r ∈Zp,它可以表示成n ≥2个整数{r1,r2,...,rn}∈的平方数之和[19]
定义1(d维Pauli算子)在d维量子空间中,通用的Pauli算子定义为,其中t ∈{0,1,...,d-1},⊕是模d加法。
定义2(d维拉格朗日酉算子)由定义1可知,所有的通用酉算子集合 {U(0),U(1),...,U(d-1)}构成了一个有限循环矩阵群。以此循环矩阵群为基础,可构造一个如式(2)所示的拉格朗日酉算子[20]
其中ω=。酉算子U(t)与M(θ)满足如式(3)的交换和结合性质
定义3(d维 F变换及逆变换 F†)d维(d是奇数)希尔伯特空间中,定义F变换为
将其作用在 |k〉(k ∈{0,1,...,d-1}) 上, |k〉演变成。并且, 变换的逆变换 定义为FF†
将F†算子作用量子态(|k〉+|k ⊕1〉),其演变为, 其 中k ∈{0,1,...,d-1}。
在Cd ⊗Cd(d为奇数)系统中,最小化不可局域区分的正交乘积基[11]包含 2d-4个元素,它们表示为
其中 |j±(j+1)〉=(|j〉±|j+1〉)。特别的,将酉变换U(k)⊗Ok,k ∈{0,1,...,d-2}作用在量子态|〉 上,演变过程如式(7),其中,如果k=1(mod2) ,酉算子Ok=U(1) ;如果k=0(mod2),Ok为单位门I
作为秘密序列的分发者,Alice在参与者集合B ={Bob1,Bob2,···,Bobl}中分发秘密值,且她从集合B中选取任意一个参与者Bobl作为半可信的验证者,Bobl的职责是联合Alice对测量结果进行验证。本文所提方案主体上包括份额分发阶段、粒子制备阶段、秘密重构阶段和测量结果验证4个阶段。如果有其他参与者想要加入或退出秘密共享方案,则执行后续的参与者加入与退出过程。
Alice选择一个合适的有限域 GF(d),其中d是两个素数d1,d2的乘积。Alice生成一个秘密值序列T={T1,T2,...,Tn}, 其中 {Tj ∈GF(d)|j=1,2,...,n}。以序列T为基础,Alice根据等式(1)构建l×n矩阵
参与者Bobi(i=1,2,...,l)收到份额向量后,他们与Alice共同协商一个随机数b∈Zn用于向量移位。
步骤1 Alice从集合{ϕ,ϕ,ψ}中 随机选取n个粒子对,将这些粒子对的第1个粒子组成信息粒子序列PS={|p1〉S,|p2〉S,...,|pn〉S},第2个粒子组成信息粒子序列QS={|q1〉S,|q2〉S,...,|qn〉S},然后根据序列A={A1,A2,...,An} ,对序列PS中粒子|pj〉S(j=1,2,...,n)执 行酉算子M(ωj)得 到 |pj〉0=M(ωj)|pj〉S,参数ωj=π(2d-Aj′)/d,j′=1+((j+b-1)modn),对应于图1 的步骤①。随后,A l i c e 从集合{Ψ±,Φ±} 中任意选取v个粒子对作为诱骗粒子插入到 序 列P0={|p1〉0,|p2〉0,...,|pn〉0}得 到 新 的 序 列,当Alice记录序列P¯0中诱骗粒子的位置和初始态之后,她将序列发送给参与者Bob1。
图1 方案主体流程图
步骤2 Bob1收到序列后,Alice告知Bob1在中诱骗粒子对的位置和初始态,Bob1根据收到的位置信息,使用OPB基测量每对诱骗粒子。然后,Bob1将得到的测量结果与Alice告知的初始态进行比较。如果错误率高于阈值(一般选取2%~8%),将会放弃本轮操作,开始新一轮协议;否则Bob1恢复出序列P0并执行步骤3。
步骤3 Bob1使用份额向量m1中的元素m1,j(j=1,2,...,n) 分别对相应的粒子 |pj〉0执行酉算子U(m) 得到U(m)|pj〉0,然后根据m1的第j′个元素m1,j′计算θ1,j=πm1,j′/d,j′=1+((b+j-1)酉算子M(θ1,j) ,得到|pj〉1=M(θ1,j)U(m)|pj〉0,modn) 。接着,Bob1对U(m)|pj〉0执行拉格朗日对应于图1的步骤②。当P0中的所有粒子变换完毕,得到序列P1={|p1〉1,|p2〉1,...,|pn〉1}。
最后,Bob1从集合 {Ψ±,Φ±} 中随机选择v对诱骗粒子,将诱骗粒子插入到序列P1中得到一个新的序列,并将其发送给下一个参与者Bob2。
步骤4 参与者Bob2收到序列P¯1之后,执行类似于Bob1的步骤2和3。恢复出序列P1之后,Bob2首先使用隐私份额向量m2中的每一个元素m2,j(j=1,2,...,n) 分 别 对 相 应 的 粒 子 |pj〉1执 行U(m) 得 到U(m)|pj〉1,然 后根据m2中元 素m2,j′计 算 角 度θ2,j=πm2,j′/d,其 中j′=1+((b+j-1)modn) ,再次对U(m)|pj〉0执行拉格朗日酉算 子M(θ2,j) ,得 到 |pj〉2=M(θ2,j)U(m)|pj〉1,对应于图1的步骤③。当序列P1中所有粒子变换完毕,得到序列P2={|p1〉2,|p2〉2,...,|pn〉2}。
最后,Bob2以诱骗粒子的传输模式将序列P2发送给参与者Bob3。其他参与者Bobi(i=3,4,...,l)执行类似于Bob2的操作步骤,直到最后一个参与者Bobl执行完酉变换得到序列Pl,对应图1的步骤④。
步骤5 当所有参与者执行完自己的操作步骤之后,Alice将序列QS和向量E以诱骗粒子的模式发送给参与者Bobl,并且告知Bobl粒子对|pj,qj〉S(j=1,2,...,n) 的 制备时初态。Bobl根据向量E中元素Ej(j=1,2,...,n)对QS中粒子 |qj〉S执行Oracle算子OEj得到OEj|qj〉S( 如果Ej=1, 则OEj为酉算子U(1);如果Ej=0 ,则OEj为单位门I),将这个过程记为O变换,对应于图1的步骤⑤。当序列QS中的n个粒子执行完毕,得到一个新的序列Ql={|q1〉l,|q2〉l,...,|qn〉l}。
步骤6 当Alice选取的粒子对|pj,qj〉S(j ∈{1,2,...,n})为 |ψ〉 时,B o bl对 |pj,qj〉l执 行(F ⊗F†U(d-1)) 变换得到 |pj,qj〉;当Alice选取的粒子对属于 {|〉,|〉} 时,Bobl对 |pj,qj〉l不执行任何变换。当所有粒子对变换完成,Bobl得到新的粒子对序列{P′,Q′}={|p1,q1〉,|p2,q2〉...,|pn,qn〉时,将该过程记为F变换。
步骤7 Bobl使用OPB基对序列 {P′,Q′}中的n个粒子对执行测量操作,其中每个粒子对的量子态是集合 {|〉|〉,...,|ϕ〉}中的一个元素,对应于 图1 的 步 骤⑥。 量 子 态 集 合{|〉|〉,...,|ϕ〉}与 经典整数集合 {0,1,...,d-2}之间的编码关系为:{ |〉→0;|〉→1;...;|ϕ〉→(d-2)}。那么,Bobl根据每个粒子对的量子态得到对应的整数,记为 {R1,R2,...,Rn}。
步骤8 针对测量结果Rj(j=1,2,...,n),如果它不是 GF(d)中的平方剩余数,那么Bobl认为被测量的粒子对是不合法的,本次秘密共享协议中存在不诚实的参与者,放弃本次协议;否则对于合法的测量结果Rj,Bobl根据{r2≡Rj(modd1),r2≡Rj(modd2)} 计算出4个平方根rj,1,rj,2,rj,3,rj,4。然后,Bobl从平方根之中随机选取一个元素rj,τ(τ ∈{1,2,3,4}) ,并使用安全单向函数H计算哈希值Hj=H(IDl||rj,τ×ml,j) , IDl是Bobl的公开身份信息。最后,Bobl通过经典安全信道将{Hj|j=1,2,...,n}发送给Alice。
步骤9 Alice收到Bobl的{Hj|j=1,2,...,n}后,根据Bobl的份额向量中元素ml,j和 IDl,以及的平方根向量tj=(tj,1,tj,2,tj,3,tj,4)(Tj在tj中序号为Ij ∈{1,2,3,4} ),分别 计算{H=H(IDl||tj,u×ml.j)|u=1,2,3,4} , 并将它们与Hj分别进行比对,如果有一个(u ∈{1,2,3,4})与Hj相等,则认为测量结果Rj验证成功;反之,则告知Bobl本次秘密共享中存在不诚实的参与者,放弃本次协议。直到所有测量结果Rj被验证成功后,Alice将Tj(j=1,2,...,n)在tj中的序号Ij作为标识信息通过经典安全信道发送给Bobl,此时Bobl确定Rj的平方根rj,Ij为秘密值Tj,最后将秘密序列T在参与者之间共享。对应图1的步骤⑦。
如果有其他t位参与者Bobl+1, Bobl+2, ···, Bobl+t想要加入到秘密共享过程之中,同时有一位参与者Bobk(k ∈{1,2,...,l})想要退出秘密共享过程,则他们执行以下操作:
参与者Bobk根据份额向量mk=(mk,1,mk,2,...,mk,n) 重新计算一个新的t×n矩阵
定理1若粒子对的初态为 |〉,先对其执行U(k)⊗Ok,k ∈{0,1,...,d-2}变换,然后再执行变换 (F ⊗F†U(d-1)) 得到量子态|〉。
证明对于初态 |ψ〉=|0〉⊗|0+1〉,对其执行U(k)⊗Ok变换,其中,若k=1(mod2),则酉算子Ok为U(1), |ψ〉 演变为 |ψ〉′=(|k〉⊗|1+2〉);若k=0(mod2) ,则Ok为 单 位 门I, |ψ〉演 变 为(|k〉⊗|0+1〉)。 然后,对 |ψ〉′执 行(F ⊗F†U(d-1))变换将演变为|〉′′=(F ⊗F†U(d-1))|ψ〉′
引理1在份额重构阶段,如果参与者Bobi(i=1,2,...,l) 对 序 列P0中 每 一 个 粒 子|pj〉0(j=1,2,...,n) 依次执行酉算子M(θi,j)U(m),当所有参与者执行完毕,Bobl对序列QS中粒子 |qj〉S执行OEj变换,得到 |pj,qj〉l。Bobl对粒子对 |pj,qj〉l执行F变换后,Bobl使用OPB基测量序列 {P′,Q′}得到测量结果 {R1,R2,...,Rn}。当所有测量结果通过验证后,所有参与者能共享正确的秘密值序列T={T1,T2,...,Tn}。
证明针对序列P0中的任意一个粒子|pj〉0(j=1,2,...,n) ,如果参与者Bobi(i=1,2,...,l)对其依次执行酉算子M(θi,j)U(m2i,j),当所有参与者执行完毕之后,那么该粒子将演变为
由式(3)可知,通用酉算子U与拉格朗日酉算子M满足交换性质,因此式(11)可改写为
其 中,j′=1+((b+j-1)modn) 。 由 于|pj〉0=M(ωj)|pj〉S,混 淆 角度ωj=π(2d-Aj′)/d,其 中,那么式(12)可改写为
当Bobl对序列QS中的粒子|qj〉S(j=(1,2,...,n))执行OEj操作之后,粒子对 |pj〉l ⊗|qj〉S演变为
在测量结果验证阶段,对于验证者Bobl的每一个测量结果Rj(j=1,2,...,n) , Bobl从Rj的4个平方根rj,1,rj,2,rj,3,rj,4中 随机选取元素rj,τ(τ ∈{1,2,3,4}),计算Hj=H(IDl||rj,τ×ml,j)并通过经典信道将其发送给Alice。假设外部攻击者Eve截获了哈希值Hj,并想从Hj中获取有效信息。如果Eve使用碰撞攻击推测出 IDl||rj,τ×ml,j,虽然 IDl是公开信息,但Eve并不知道Bobl的隐私份额向量ml,且rj,τ对于她而言是未知的,那么Eve从碰撞攻击中不能获取到任何有用的信息。
假设存在一个攻击者Eve,具有仅仅受限于量子力学原理的强大的计算能力,并且可以截获量子信道的粒子或重放伪造的粒子,并试图从截获的粒子中获得有效的信息。在秘密重构阶段,假设Eve截获了从Alice或Bobi(i ∈{1,2,...,l-1})传输给下一个参与者的序列,并试图传输伪造序列P给下一个参与者以逃过Alice或Bobi对量子信道的窃听检测。因为序列P¯i中包含v个诱骗粒子对,且这些诱骗粒子对是局域不可完美区分的,如果Eve想要正确测量出这些诱骗粒子对的量子态,前提是她知道每个诱骗粒子对在P¯i中的位置并且使用正确的OPB基测量,然而Eve对诱骗粒子对的位置是未知的。如果Eve从截获的粒子中随机选择一个粒子,这个粒子是诱骗粒子的概率是 2v/(n+2v),从剩下的诱骗粒子中找到与之配对粒子的概率为1 /(2v-1),那么这一诱骗粒子对被成功找出的概率为。对于v个诱骗粒子对,那么E v e 错误地找出这些诱骗粒子对的概率为。若诱骗粒子对数目v越来越大,Pe接近于1,Eve使用OPB基测量诱骗粒子引入错误的概率接近于1,那么伪造的序列P与原序列P¯i不同的概率接近于1,Bobi+1在3.3节步骤3中能检测到该错误。因此,本方案能抵抗截获-重放攻击。
在纠缠-测量攻击中,攻击者Eve截获分发者Alice或参与者Bobi传输的序列(i=0,1,...,l-1)中的粒子,执行酉操作UE将自己制备的附加粒子|ψ〉与截获的粒子纠缠起来,并试图通过测量附加粒子获取有效信息。为了不失一般性,假设酉操作UE满足式(15)
由式(17)可知,诱骗粒子与附加粒子并没有发生纠缠,因此当Eve测量附加粒子时,不能获得任何有用的信息。类似的,对于属于正交基{σ0=|0〉,=|t±(t+1)〉|t=1,3,...,d-2}的 诱 骗 粒 子,Eve也执行酉操作UE将制备的附加粒子 |ψ〉与此诱骗粒子纠缠起来,如果Eve想要避开窃听检测,根据诱骗粒子只能出现的测量结果,附加粒子与诱骗粒子并不会产生纠缠关系,同理可证明,此时Eve也不能获取任何有用的信息。因此,本方案可以抵抗纠缠-测量攻击。
在秘密重构阶段,假设不诚实参与者Bobr(r ∈{1,2,...,l-1}) 在 对 序 列Pr-1中 粒 子|pj〉r-1(j=1,2,...,n)执 行U(m)和M(θr,j)的过程中,使用虚假值r,j(j ∈{1,2,...,n}) 替 换真实的份额值mr,j,其他参与者都诚实地执行3.3节步骤4,Bobl执行完 步 骤5 后,序 列 {Ql,Pl} 中 第j和k(=1+(jb-1(modn)))个粒子对演变成
合谋攻击是指存在多个不诚实参与者联合起来想获取其他诚实参与者的份额值,目的是不需要这些诚实参与者参与就能恢复出秘密值。对于合谋攻击,本节考虑以下两种假设。
假设1Bobi-1(i ∈{2,3,···,l-2})和Bobi+1的合谋攻击。
假设2Bob1和Bobl的合谋攻击。
以上理论安全分析是建立在量子态制备和测量是完美的前提假设,现有的光学器件中存在不满足理论安全的非理想特性。针对实际系统中的弱相干光源引起的光子数分流攻击,本方案使用与信息粒子具有不可区分性的OPB粒子作为诱骗态,这些诱骗态的平均光子数与信息粒子的平均光子数不同,通信双方在对量子信道的安全检测中,通过比较诱骗态的响应比脉冲可以判断是否存在光子数分流攻击。在量子信道中,攻击者Eve可能发起的两种特洛伊木马攻击:不可见光子攻击和延迟光子攻击。针对不可见光子攻击,本方案中每个参与者可以在接收量子态序列之前添加滤波器,只允许接近合法波长的光子通过,这样不可见光子就会被过滤掉。针对延迟光子攻击,本方案中参与者在接收到通过滤波器的粒子序列之后,可以选取部分光子进行多光子率检测,通过观察多光子率是否超出阈值达到检测延迟光子攻击行为的目的。
本节首先将本文方案与其他OPB态QSS方案(文献[7,13])从信息粒子类型、粒子数量、计算消耗等5个方面进行比较,比较结果如表1所示。为了便于比较,这里规定各方案的属性,l是多方参与者的人数,本方案每次共享1个d进制秘密,文献[7,13]中共享长度为的二进制秘密序列。
表1 相似方案的性能比较
从表1可以得出,文献[7]是基于3维OPB态的两方QSS方案,参与者人数受到正交乘积态中粒子数量限制,在拓展至更高维量子系统以及多个参与者的秘密共享场景下存在较大局限性;文献[13]使用2维多粒子OPB态拓展了参与者的人数,每个参与者都拥有1个OPB态,量子资源开销较大。本方案使用d维OPB态拓展了正交乘积态QSS方案的量子维度,参与者人数可以动态调整,并且降低了参与者人数拓展时产生的量子资源开销,具有更好的灵活性和通用性。
其次,本节将本文方案与其他动态QSS方案(文献[16,18,21])主要从抗截获-重放攻击性、抗纠缠-测量攻击性、抗合谋攻击性等5个方面进行比较和分析,比较结果如表2所示。在表2中,文献[18,21]和提出的方案能抵抗截获-重放攻击;在文献[17]指出,文献[16]中只需要两个参与者就能获取到分发者的秘密,因此不能抵抗合谋攻击;与其他相似方案相比,只有文献[18]和本方案考虑了内部参与者参与欺骗的安全问题,文献[18]中分发者将秘密S的哈希值H(S)编码在Bell态粒子中并发送给最后一个参与者,如果存在不诚实参与者Bobm使用虚假值R代替真实份额值Rm参与秘密重构,最后一个参与者测量粒子得到u1=S+(R-Rm)+和并将u1和u2在参与者之间公布,此时Bobm计算u2-u1=H(S)-S,其中 {H(S),S}∈GF(d)。在安全性不依赖于d是大整数的情况下,Bobm使用穷举攻击能以一定概率推测出秘密值,那么该验证过程会泄露秘密值;本方案在粒子测量阶段得到秘密的平方剩余,由于平方剩余与其平方根是一对多映射,随机选取一个平方根实现对平方剩余的验证,验证过程中不会泄露有效信息,防止了秘密值的泄露。从分析可知,与其他相似方案相比,本方案的安全性能最优。
表2 相似动态QSS方案的安全性比较
本文提出基于非局域性正交乘积态的动态量子秘密共享方案。本文使用非局域性OPB态携带信息,并借鉴Rabin密码思想设计验证机制,保证了秘密共享和验证过程具有较好的安全性。相对于现有基于OPB态QSS方案,本方案拓展了量子空间的维度,并且参与者人数动态增减,具有更好的灵活性和通用性;与相似的动态QSS方案相比,本方案具有更好的安全性。下一步工作是使用新的非局域性正交乘积态,进一步降低基于正交乘积态的QSS方案的量子资源开销。