一种基于树型网络的可验证多方量子密钥分配协议

2019-08-14 10:02沙倚天李天一姚铭艺
计算机应用与软件 2019年8期
关键词:单光子身份验证密钥

沙倚天 李天一 贾 玮 姚铭艺

1(国网江苏省电力有限公司南京供电分公司 江苏 南京 210024)2(南京南瑞国盾量子技术有限公司 江苏 南京 210016)3(南瑞集团有限公司(国网电力科学研究院有限公司) 江苏 南京 210016)

0 引 言

2016年8月,世界上第一颗量子科学实验卫星“墨子”在中国成功发射。2017年9月,建立了连接北京和上海,总长度超过2 000公里的量子通信骨干网“量子京沪干线”。量子通信骨干网将推动量子安全通信在金融、政务、国防和电子信息领域的大规模应用。量子密钥分配(QKD)是量子信息安全领域中最重要的应用之一。在电力行业,将QKD与电力通信系统相结合逐渐成为电网企业关注的焦点。

QKD以经典密码学和量子力学为基础,利用量子力学原理来实现通信双方共享一组随机序列组成的密钥。1984年,Bennett等提出了第一个著名的量子密钥分配协议——BB84[1],在协议中两个用户通过交换单粒子来创建一个共享密钥。随后,人们提出了一系列基于单粒子或纠缠态的QKD协议[2-5],其中大部分协议是点对点之间的密钥分配。而在实际中,一个量子网络[6]由多个节点组成,要求节点(用户)之间进行密钥分配。为此,人们提出了多用户量子密钥分配协议(Multi-User Quantum Key Distribution,MQKD)。1995年,Phoenix等[7]提出了第一个基于单光子的MQKD协议,展示了如何利用单光子的特性在光网络上实现密钥分配。为了提高传输效率,2010年,Hong等[8]提出基于Bell态的MUQKD协议,利用纠缠交换实现密钥分配,并且对于n个用户的通信系统,仅需要n个量子信道,Guo等[9]提出了一种基于GHZ态网络量子密钥分配的MQKD协议,其中,一种方案以概率方式在合法用户之间分配密钥,而另一种方案以确定性方式发送确定性消息。上述协议中的纠缠制备和量子存储并不容易实现,并且上述协议一般仅实现了密钥验证,身份验证[10]的问题函待解决。

2014年,Guan等[11]提出了一个基于单光子的三方可验证量子密钥分配协议,在星型网络拓扑结构上实现身份验证和密钥验证。该协议仅适用于星型网络拓扑结构,并不适用树型网络拓扑结构。2016年,Lin等[12]提出适用于树型网络拓扑结构的单光子可验证MQKD协议,其中身份验证和密钥验证是分阶段执行的,其成本开销会更大,且面临一些安全隐患。为了解决以上问题,本文提出一个基于树型网络的可验证多方量子密钥分配协议,同时对每个用户进行身份验证和密钥验证,两者在一个步骤中完成,而无需发送者和接收者之间的公开讨论,节省了资源。此外,本协议利用单光子作为量子信息载体,且单光子不需要存储,更容易实现。

1 预备知识

1.1 电力通信系统网络

电力通信系统网络一般体现为树型拓扑结构。例如,江苏电网安全稳定实时预警及协调防御系统(Electric Power Alarming and Coordinated Control System,EACCS)具有典型的树型拓扑结构,如图1所示,该图充分展示了中心站与主站、主站与子站、子站与执行站之间的上下层次关系。

图1 EACCS系统控制结构

1.2 量子态

比特是经典计算和经典信息里的基本概念,其状态或0或1。类似地,在量子计算中,量子比特的两个可能状态是|0〉和|1〉,此外,量子比特可以是状态的线性组合,常称为叠加态:

|φ〉=α|0〉+β|1〉

(1)

1.3 量子测量

量子测量由一组测量算子{Mm}描述,这些算子作用在被测系统状态空间上,指标m表示实验中可能的测量结果。若在测量前,量子系统的最新状态是|ψ〉,则结果m发生的可能性由下式给出:

且测量后系统的状态为:

测量算子满足完备性方程:

2 协议设计

从图1可知,电力通信系统网络结构可以抽象成树型拓扑结构图,如图2所示。

图2 电力通信系统树型拓扑结构图

假设树型网络中任意两个不同的终端用户Ai和Bj希望生成一个安全的会话密钥。假设根节点TC及Ai和Bj所属的中间节点AC、BC为可信的;Ai、AC、BC、Bj的身份UAi、UAC、UBC、UBj是公开的,长度均为k比特;AC与Ai共享一个长度为n比特的安全主密钥KTAi,BC与Bj共享一个长度为n比特的安全主密钥KTBj,KTAi和KTBj对无关的第三方是保密的。中间节点AC(BC)和用户Ai(Bj)根据预先共享的主密钥KTAi(KTBj)约定测量基。如果(KTAi)s=0,就选择基D={|+〉,|-〉},否则选择基R={|0〉,|1〉},其中,(KTAi)s表示密钥KTAi的第s位,s=1,2,…,n。本文协议描述如图3所示。

图3 本文协议的密钥分配过程

步骤1根节点TC与中间节点AC(BC)利用文献[13]中的方法生成一个u比特安全的密钥sk(sm)。TC将sk与sm进行对比分析,若对应的比特相同记为“Y”不同记为“N”。TC通过公开的信道将所得的比较结果告诉AC和BC,这样,AC和BC可以共享彼此的量子密钥sm和sk。

步骤2TC生成长度为l比特的随机数rTAC、rTBC。AC(BC)生成长度为l比特的随机数rTAi(rTBj)并计算中间量:

式中:h(·):{0,1}*→{0,1}m是输出为m比特的单向哈希函数,并且有等式n=m+2l和m=u+4k成立。注意,(KTAi)s((KTBj)s)中长度为n比特,sk长度为u比特,UAC、UBC、UAi、UBj长度均为k比特。

式中:s=1,2,…,n。

步骤4Ai(Bj)根据KTAi(KTBj)来测量接收到的量子比特QTAi(QTBj)。如果(KTAi)s=0((KTBj)s=0),则用D基进行测量;否则,用R基进行测量。

3 协议分析

3.1 正确性分析

不失一般性,选取两个用户Ai与Bj来验证协议的正确性。假设UAC=100,UBC=001,UAi=101,UBj=011;KTAi=10001100100000101010001110100011,KTBj=01011000111101011110001110000100;AC(BC)和Ai(Bj)根据预先共享的主密钥KTAi(KTBj)约定测量基。如果(KTAi)s=0,就选择基D={|+〉,|-〉},否则选择基R={|0〉,|1〉},其中,(KTAi)s表示密钥KTAi的第s位,s=1,2,…,n。TC与AC、BC的共享密钥分别为sk=1010100000010111、sm=0011100101111011。

步骤1中,AC(BC)可以得到彼此的密钥sm(sk)。

步骤2中,TC生成随机数rTAC=00,AC生成随机数rTAi=10,计算h(KTAi,rTAi,rTAC)=1101001101010001

以上过程中,密钥串数值、测量基和量子态变换情况如表1所示。

表1 本文协议中密钥串数值、测量基和量子态对应关系

3.2 安全性分析

本文主要从以下5种常见攻击情形来分析所提协议的安全性。它们分别是假冒根节点攻击,即假冒TC攻击;假冒中间节点攻击,即假冒AC(BC)攻击;假冒用户攻击,即假冒Ai(Bj)攻击;在线猜测攻击;离线猜测攻击。

(1) 假冒TC攻击 在步骤1中,根节点TC与中间节点AC(BC)利用文献[13]方法生成一个u比特安全的密钥sk(sm)。该方法已被证明AC(BC)可以有效地对TC进行身份验证和密钥验证[13]。因此,攻击者假冒TC会在AC(BC)对TC的身份验证和密钥验证中被检测到。

(4) 在线猜测攻击 在线猜测攻击在现有的密钥分配协议中是不可避免的,尽管攻击者可以在本文协议上执行在线猜测攻击,但他必须花费大量精力来验证他对主密钥KTAi(KTBj)的猜测,即在目标协议上多次执行在线猜测攻击。这使得中间节点AC(BC)和用户可以采取一些对付这种攻击的对策。例如,一旦中间节点和用户注意到一定数量的本文协议执行失败,则应该更新预共享密钥,这样就可以避免在线猜测攻击。

4 协议比较

通过选取加密机制、量子信道、易受中间人攻击、易受被动攻击、易受重放攻击、信息载体、身份验证、密钥验证和网络等指标,将本文协议与其他多方密钥分配协议[14-17]进行了比较,相关参数如表2所示。

表2 本文协议与其他协议比较

由表2可知,与经典的多方密钥分配协议1[14]相比,所提协议更有效抵抗重放和被动攻击,具有更高的安全性。本协议采用单光子实现,且单光子无需存储,协议2和协议3需要存储纠缠态,这在当前技术条件下很难实现。与协议3和协议4相比,所提协议可以避免中间人攻击,不仅可以实现身份验证还可以实现密钥验证。总而言之,本协议可以同时对每个用户进行身份验证和密钥验证,两者可以在一个步骤中完成,而无需发送者和接收者之间的公开讨论,节省了资源,降低了成本。和其他利用纠缠资源的协议相比,本协议采用单光子作为量子信息载体,且单光子不需要存储,在技术上更容易实现。

5 结 语

本文将经典密码学和量子密码学的优点相结合,提出了一种适用于电力通信系统的密钥分配协议。与经典的三方密钥分配协议相比,本协议更容易抵抗重放和被动攻击。与其他三方量子密钥分配协议相比,本协议不仅实现了用户身份验证还实现了密钥验证,并且两者可以在一个步骤中同时完成,而无需发送者和接收者之间的公开讨论,节省了资源,降低了成本。安全性分析表明,本协议在理论上是安全的。在方案实现方面,和其他利用纠缠资源的协议相比,本协议采用单光子作为量子信息载体,且单光子不需要存储,这在当前技术下更容易实现。

当然,本协议仍有一些不足可以改进。例如,本协议不考虑量子信道中的噪声,但在实际环境中这不可避免,下一步工作会考虑存在量子信道噪声的情形下,使用纠错码和密钥演化来设计一种适用于电力通信系统的树型网络可验证多方量子密钥分配协议。

猜你喜欢
单光子身份验证密钥
基于单光子的高效量子安全直接通信方案
幻中邂逅之金色密钥
幻中邂逅之金色密钥
密码系统中密钥的状态与保护*
“完美的单光子源”为量子精密测量奠定基础
TPM 2.0密钥迁移协议研究
声纹识别认证云落户贵州
中科大团队实现综合性能最优单光子源
基于Windows下的文件保密隐藏系统的设计与实现