邵婷婷 张仕斌 昌 燕 张 焱
(成都信息工程大学网络空间安全学院 四川 成都 610225)
随着量子计算机研制的提出[1],经典的密码体制受到了极大的挑战。1969年S.Wiesner首先提出用量子效应保护信息,他写了一篇《共轭编码》[2]的论文。量子密钥分发(QKD)是量子密码学中研究最早,同时也是发展最快的一个分支,它可以使远距离的两个用户通过量子信道建立随机密钥。量子通信除了量子密钥分发(QKD)还包括量子安全直接通信(QSDC)[3-4]、量子秘密共享(QSS)[5-6]、量子隐私比较(QPC)[7-8]等。
1984年,Bennet提出第一个量子密钥分发方案,称为BB84量子密钥分发方案,BB84协议利用单粒子作为载体,证明了利用量子密码协议传输信息的绝对安全,这也标志着量子密码学的诞生,引起了整个科学界的广泛关注[9]。1991年,英国牛津大学的Ekert提出了一种基于两粒子纠缠态的量子密钥分发方案,称为E91方案[10]。1992年Bennett又提出一种更简单但是效率减半的B92方案[11]。目前,各种各样的量子密钥分发协议相继提出[12-16]。
以往的QKD协议大都是通信双方进行密钥分发,多数没有考虑到三方及以上的情况。随着用户数量的增加,需要考虑多用户密钥分发,因此需要设计更加实用的多用户密钥分发协议。如果网络中有n个用户,那么以往的密钥分发协议需要0.5n×(n-1)个量子信道,用户数量越多,那么所需的信道数量也就越多,因此传输的效率将会降低。2010年,一种多用户密钥分发协议被提出,但是需要利用纠缠交换,操作起来比较复杂[17]。本协议中密钥分发的两个用户只需要用正确的测量基测量各自的粒子,不需要其他的任何操作。目前对于多用户的密钥分发研究多数需要可信第三方的帮助,但是在实际的应用中,要求第三方完全可信非常困难,本文提出的基于密集编码的多用户量子密钥分发协议降低了对第三方的依赖,只要求第三方是半可信。如果网络中任意两个用户想要进行通信,由半可信第三方制备Bell粒子,分别发送给两个用户,根据粒子在X基和Z基的不同特性实现密钥的分发。半可信第三方只需要诚实地制备Bell粒子并公布对应的测量基,但是并不能推测出正确的密钥信息。系统中的任何两个用户都可以彼此通信,即使它们之间没有直接的量子通道,n个用户只需要n个信道就可以实现两两用户的密钥分发。因为采用了密集编码的思想,一个粒子可以传输两个比特的信息,极大提高了协议的效率,同时减少了网络结构的复杂度,具有很强的实际应用价值。多用户量子密钥分发结构图如图1所示。
图1 多用户量子密钥分发结构图
Z基测量下的|0〉、|1〉在X基下可以表示为:
(1)
X基测量下的| +〉、| -〉在Z基下可以表示为:
(2)
四个Bell态在Z基和X基下的表示如下:
(3)
利用X基或Z基测量两个粒子状态相同的这个特性,设计一个基于密集编码的多用户量子密钥分发协议。该协议需要半可信第三方的参与,但是半可信第三方只需要诚实地制备粒子并公布对应的测量基,如果公布Z基测量,用户50%的概率得到|0〉,50%的概率得到|1〉;如果公布X基测量,用户50%的概率得到| +〉,50%的概率得到| -〉,而半可信第三方无法获得正确的密钥信息。虽然增加了半可信第三方,但是有效减少了信道的数量,提高了信道容量。因为采用了密集编码的思想,一个粒子可以传输两个比特的信息,极大提高了协议的效率。
(1) 如果网络中的用户Alice与用户Bob需要进行密钥分发,通过广播通知半可信第三方。
(2) 半可信第三方制备4种Bell态,其中|Ψ-〉态粒子作为检测粒子,其余三种状态用于密钥的分发。
(3) 每个Bell态中有两个粒子,将其中的第一个粒子组成序列A发送给用户Alice,将第二个粒子组成序列B发送给用户Bob。
(4) 用户Alice和用户Bob收到粒子之后,进行信道安全性检测,半可信第三方公布|Ψ-〉态粒子的位置及测量基,Alice和Bob用X基(或Z基)进行测量并用经典信道公布结果。比较两者的测量结果,如果两者的测量结果相反,说明信道安全,可以进行下一步,否则放弃通信。
(5) 半可信第三方根据发送的Bell态公布测量基。如果是|Ψ+〉态,公布X基;如果是|Φ-〉态,公布Z基;如果是|Φ+〉态,随机公布X基或Z基。
(6) 用户Alice和用户Bob选用第三方公布的测量基进行测量,测量结果为|0〉编码为00;测量结果为|1〉编码为01;测量结果为| +〉编码为10;测量结果为| -〉编码为11。
在保密通信系统中,n个用户进行密钥分发一般需要0.5n×(n-1)个信道,用户数量越多,那么所需的信道数量也就越多。本文提出的基于密集编码的多用户量子密钥分发协议增加了半可信第三方,n个用户只需要n个信道就可以实现两两用户的密钥分发,减少了网络结构的复杂度。半可信第三方只需要诚实地制备粒子并公布对应的测量基,但是并不能推测出正确的密钥信息,降低了对第三方的依赖。以往的密钥分发协议中,对1个量子比特操作只能传输1比特的经典信息,本协议采用了密集编码的思想,1个粒子可以传输2个比特的信息,极大地提高了协议的效率。如果网络中任意两个用户想要进行通信,由半可信第三方制备Bell粒子,分别发送给两个用户,只需要根据粒子在X基和Z基的不同特性就可以实现密钥的分发,不需要其他任何操作,实现过程更加简单。本协议只进行1次窃听检测,减少了协议中传输信息的次数。
如果网络中用户Alice和用户Bob两个用户想要进行通信,通知半可信第三方,由半可信第三方制备4种Bell态粒子,此时|Φ+〉、|Ψ+〉、|Φ-〉和|Ψ-〉四种状态不携带任何信息。每个Bell态中有两个粒子,将其中的第一个粒子组成序列A发送给用户Alice,将第二个粒子组成序列B发送给用户Bob。假设半可信第三方制备的粒子如表1所示,用户Alice和用户Bob收到粒子之后,通过经典信道告知半可信第三方,半可信第三方公布|Ψ-〉态粒子的位置及随机选取的Z基或X基。用户Alice和用户Bob分别取出对应位置的粒子用Z基或X基测量,如果测量结果相反说明没有存在窃听,半可信第三方则继续公布其他粒子对应的测量基。半可信第三方根据发送的Bell态公布测量基,如果是|Ψ+〉态,公布X基;如果是|Φ-〉态,公布Z基;如果是|Φ+〉态,随机公布X基或Z基。如表1所示,如果公布的是Z基,得到的测量结果是| +〉或| -〉;如果公布的是X基,得到的测量结果是| +〉或| -〉。根据Alice和Bob得到的测量结果,测量结果为|0〉编码为00;测量结果为|1〉编码为01;测量结果为| +〉编码为10;测量结果为| -〉编码为11。根据表1中制备粒子的状态及Alice和Bob测量结果可知,Alice和Bob得到的相同密钥为“001000011101110”。一个粒子可以传输两个比特的信息,极大提高了协议的效率。
表1 制备粒子的状态及Alice和Bob测量结果
3.3.1 对半可信第三方的分析
半可信第三方虽然负责制备Bell粒子并公布对应的测量基,但是半可信第三方不能获得最终的密钥信息。半可信第三方制备的粒子以及发送给任意两个用户的粒子序列是完全随机的,不包含任何信息。半可信第三方第一次公布测量基是用于窃听检测,通信的两个用户根据半可信第三方公布的测量基及|Ψ-〉态粒子的位置进行窃听检测。如果发现可能存在窃听者,则放弃通信。因为密钥是用户根据半可信第三方公布的测量基测量各自手中的粒子获得,并且测量结果是随机的,因此此时并没有泄露任何有用信息。半可信第三方第二次公布测量基是为了两个用户获得密钥,通信双方根据半可信第三方公布的测量基测量各自手中的粒子获得密钥。由于测量结果也是随机的,半可信第三方并不知道两者的测量结果。例如,半可信第三方公布Z基,那么用户的测量结果可能是|0〉,也可能是|1〉;半可信第三方公布X基,那么用户的测量结果可能是| +〉,也可能是| -〉。所以,半可信第三方无法获得正确的密钥信息,保证了密钥分发的安全性。
3.3.2 中间人攻击或截获重发攻击
当信道不安全时,可能存在中间人攻击或截获重发攻击。用户Alice和用户Bob收到粒子之后,需要进行信道安全性检测,半可信第三方公布|Ψ-〉态粒子的位置及随机公布X基或Z基。用户Alice和用户Bob分别用对应测量基进行测量并用经典信道公布结果,通过比较两者的测量结果是否相反判断信道是否安全。当两个用户使用同一测量基进行测量的时候,测量结果反相关。攻击者一旦选错测量基,就会不可避免的对粒子造成干扰。|Ψ-〉态的两个粒子采用相同的测量基测量具有反相关性,根据这个特性可以发现窃听,抵御中间人攻击或截获重发攻击。一旦发现攻击,则放弃通信,并且没有造成密钥信息的泄露。
3.3.3 纠缠攻击
攻击者Eve想要利用|1〉态作为探针对第三方发送给用户Alice或用户Bob的粒子进行交互,假设Eve对每个粒子准备一个探针,将探针与用户Alice的粒子执行受控非门CNOT(Controlled Not)操作。CNOT作用在两个量子比特上,一个是目标量子比特,一个是源量子比特。如果源量子比特处于|1〉态,则目标量子比特进行翻转。如果源量子比特处于|0〉态,则目标量子比特不变。假设Eve截取半可信第三方发送给用户Alice的序列A,想要通过CONT操作,获得用户Alice的信息。在下式中,粒子1表示源量子比特,粒子2表示目标量子比特,Eve选用探针|1〉态为目标量子比特。
(4)
通过式(4)可知,源量子比特为是|0〉态和|1〉态时,Eve可以通过目标量子比特|1〉态判断出第三方发送的量子态。如果目标量子态不变,则发送的是|0〉态;如果目标量子态改变,则发送的是|1〉态。但是源量子比特为也可能是| +〉态或者| -〉态,对应公式如下:
(5)
通过式(5)可知,源量子比特为态和态时,Eve制备的目标量子比特状态发生了改变,无法通过纠缠攻击获得有效信息。如果Eve进行了纠缠攻击,同时会对半可信第三方发送的纠缠粒子引入错误,在进行窃听检测的时候会被发现。
随着网络中用户数量的增加,需要研究多用户之间的通信,量子通信也在往多用户的方向发展。本文提出一个基于密集编码的多用户量子密钥分发协议。该协议中,不需要像以往方案中建立0.5n×(n-1)个信道,只需要n个信道就可以实现n个用户两两之间进行密钥分发,采用了密集编码的思想,一个粒子能够传输两比特的信息。同时第三方是半可信的,如果网络中任意两个用户想要进行通信,由半可信第三方制备Bell粒子,分别发送给两个用户,根据粒子在X基和Z基的不同特性实现密钥的分发,有效提高了信道容量和传输效率。通过安全性分析可知,虽然第三方负责制备粒子,但是无法获得正确的密钥信息。同时,该协议能够发现窃听,抵御截获重发攻击和纠缠攻击,具有很强的实际应用价值。