何业锋,狄 曼,庞一博,岳玉茹,李国庆,刘继祥
(西安邮电大学网络空间安全学院 西安 710121)
量子密码的安全基于海森堡不确定原理[1]和量子不可克隆定理[2]。近年来,随着量子密码应用的发展,量子密码学引起越来越多的关注,研究成果层出不穷,包括量子密钥分发(quantum key distribution, QKD)[3-4]、量子密钥协商(quantum key agreement, QKA)[5]、量子秘密共享(quantum secret sharing, QSS)[6]、量子安全直接通信(quantum secure direct communication, QSDC)[7]、量 子 私 有 比 较(quantum private comparison, QPC)[8]以及量子远程态 准 备(quantum remote state preparation, QRSP)[9]等。量子密钥协商(QKA)是量子密码学的一个重要研究方向。它允许所有参与者共同协商一个会话密钥,并且每个参与者对生成会话密钥的贡献是相同的,即会话密钥不能由任意一方完全决定。它显然不同于QKD,因为QKD 是由一个参与者决定会话密钥并将其分发给其他各方。因此,QKA 在生成会话密钥方面比QKD 更加公平。
QKA 经过了多年的研究发展,取得了大量研究成果。2004 年,文献[5]提出了第一个QKA 协议,其中通信方共同确定会话密钥。2010 年,文献[10]提出了一种基于BB84[3]的QKA 协议,利用延迟测量技术和双CNOT 操作,实现了会话密钥的公平建立。2013 年,文献[11]提出了利用EPR 对和纠缠交换技术将参与者由两方扩展为多方的QKA 协议。2017 年,文献[12]提出了两种不受集体噪声影响的QKA 协议,这两种协议主要利用逻辑量子态、多粒子纠缠态的测量相关特性和延迟测量技术,使得协议的性能得到提升。2020 年,文献[13]提出了一种三方半量子密钥协商协议,降低了对参与者能力和设备的要求。2020 年,文献[14]提出了基于最大三粒子纠缠态的受控量子密钥协商协议,与之前的两方和三方QKA 协议相比较,最大的变化是引入了一个监督者来控制协议过程,以提高协议的可控性。2021 年,文献[15]提出了基于类GHz 态的半诚实三方互认证量子密钥协商协议,利用身份认证部分验证用户身份的真实性,确保密钥协商双方身份的正确性与可靠性,并且能防止外部攻击者冒充合法用户传递虚假信息窃取会话密钥。这与其他QKA 协议相比,更符合实际应用需求。因此,设计具有互认证功能的QKA协议有重要意义。
然而已有的互认证量子密钥协商协议需要在可信或者半可信第三方的帮助下才能实现参与者之间的密钥协商,因此步骤繁琐且通信量较大。利用Bell 态,本文提出了一个无需第三方参与的两方互认证QKA 协议。在该协议中,两个参与方通过对身份信息粒子的制备和测量,来实现双方身份的互认证;并且利用Bell 态的纠缠交换关系和编码实现密钥协商。新的QKA 协议被证明是安全的且有较高的量子比特效率。
4 个Bell 态构成了四维Hilbert 空间的一组正交基,即:
任意两个Bell 态纠缠交换后仍然处于一对Bell态,如:
表1 Bell 态的纠缠交换[11]
当Alice 和Bob 想要协商一个会话密钥时,他们需要先相互认证对方的身份,当身份认证通过后,Alice 和Bob 再进行密钥协商。协议的身份认证及密钥协商的具体步骤如下。
图1 量子态的制备与传输
如果Alice 和Bob 计算的错误率都低于门限值[16],则认为信道是安全的,Alice 和Bob 可以继续进行下一步;如果Alice 和Bob 哪一方计算的错误率高于门限值,则停止该步骤并重新开始。
5) 当两方的信道都通过了安全检测后,就对双方进行身份认证。
当认证Alice 身份时,由Alice 公布rA中所有粒子的位置和测量基,而Bob 则对rA中所有粒子进行测量。然后Bob 根据rA的测量结果和步骤1),得到相应二进制序列, 通过比较与RA是否相等,来判断Alice 的身份是否正确。通过对中的rB粒子执行类似操作,来判断Bob 的身份是否正确。
如果Alice 和Bob 双方都通过了身份认证,则可以继续进行协议的下一步,否则终止协议并重新开始。信道安全性检测与身份认证如图2 所示。先测量诱骗态粒子,完成信道安全性检测后,再测量身份信息粒子,完成身份认证。
图2 信道安全性检测与身份认证
图3 Bell 态的测量与密钥协商
一个好的QKA 协议应该既可以抵抗外部攻击,也可以抵抗内部攻击。
Alice 和Bob 在步骤1)、2)制备序列rA,rB,SA和SB;在步骤3)传输序列和;在步骤4)测量序列和中的诱骗态粒子进行信道安全性检测;在步骤5)对序列和S中 的粒子和进行测量完成身份认证;在步骤6)~8)完成会话密钥协商。通过对协议的分析知,双方只在步骤3)进行了信息的传输,其他步骤只进行了量子态的制备和测量。
针对会话密钥的攻击:假设Eve 想窃取会话密钥,他只能在双方通信时,即在步骤3)对序列和执行特洛伊木马攻击、测量−重发攻击、截获−重发攻击或纠缠−测量攻击。由于序列和在本协议中仅被传输了一次,因此Eve 无法成功实现两种特洛伊木马攻击[17-19]。若Eve 进行测量−重发攻击、截获−重发攻击或纠缠−测量攻击,然而Eve 的操作会影响序列和中诱骗态粒子的状态[12],从而Alice 和Bob 在步骤4)的信道安全性检测中就能发现Eve 的攻击。
当Alice 和Bob 通过了身份认证后,他们的身份就是合法的。在后续密钥中,双方交换序列和, 并分别测量序列对(SA1,SB1)和 (SA2,SB2)。由式(2)和表1 给出的纠缠交换关系可知,Alice和Bob 的测量结果是在4 种Bell 态中等概率出现的。即双方的测量结果是随机的,Alice 和Bob 都不能决定他们的测量结果。因此,双方都不能成功执行参与者攻击。
QKA 协议的量子比特效率公式[20]定义为η=c/(q+b), 其中,c表示协商出的会话密钥的比特数量,q表 示协议中用到的量子比特总数,b表示用于解码的经典信息。
因为本文QKA 协议中用到的Bell 态数量为4n, 诱骗态量子比特数量为 2p,身份认证粒子的比特数量为 2n, 经典解码信息为b=4n+4n=8n,得到的会话密钥比特数量为c=4n。所以本文QKA 的量子比特效率为 η=4n/(4n×2+2p+2n+8n)。又因为身份认证粒子是随机插入的,可起部分诱骗态粒子的作用,所以可令p=n。 当p=n时,效率为η=4n/20n=20%。它与已有互认证的QKA 协议的比较可以参见表2。根据表2 知本文的QKA 协议在量子比特效率方面也较高。
表2 本文互认证的QKA 协议与已有互认证的QKA 协议的比较
本文利用Bell 态提出了一个两方的互认证量子密钥协商协议,它无需第三方的参与就能实现参与者的身份互认证和密钥协商,协议的步骤简单且只需一次交互的量子通信。 安全性分析证明了这个QKA 协议可以有效抵抗外部攻击和内部攻击。与已有的互认证QKA 协议相比较,本文提出的新的互认证QKA 协议不但有较高的量子比特效率,而且仅用到了单粒子测量和Bell 态测量,在现有技术的基础上更易实现。