APP下载

基于量子随机数发生器的量子密钥分发系统

2023-05-08胡倩倩

计算机应用与软件 2023年4期
关键词:光子比特密钥

胡倩倩 冯 宝 李 冬

1(南瑞集团有限公司(国网电力科学研究院有限公司) 江苏 南京 210000) 2(南京南瑞国盾量子技术有限公司 江苏 南京 210000) 3(国网山东省电力公司信息通信分公司 山东 济南 250000)

0 引 言

随着科技的发展和经济的进步,社会对电力资源的需求不断增加,也对电力系统提出了更高的要求。为了使电力系统朝着更加稳定、高效、节能、安全的方向发展,智能电网受到了广泛的关注。作为一种数字化、自动化的电网系统,智能电网具有信息量大、信息接入方式多样、通信网络复杂等特点,这些特点给信息安全带来了更大的挑战。2015年12月23日,乌克兰国家电网发生大规模的停电事故,原因是变电站的控制系统遭到黑客入侵[1-2]。该事件充分体现了变电站乃至整个智能电网中测控信息保密传输的重要性。

信息的保密传输离不开加密,目前主流的加密方案是以RSA算法为代表的非对称加密方案[3]。此类加密方案的安全性依赖于经典计算机求解特定问题(如因子分解问题)的困难性。Shor在1994年提出的因子分解算法[4],在时间复杂度方面相比于目前最佳的经典算法有着指数级加速,这意味着当前的公钥密码体制无法抵抗量子计算机的攻击。2019年,Google公布了53量子比特超导量子处理器Sycamore,在特定问题的求解上超越了当时性能最强的超级计算机[5]。这表明量子计算机逐渐走向实用化的阶段,其对于公钥密码体制造成的威胁与日俱增。

根据经典信息论,采用“一次一密”的对称加密方案,可以实现绝对的通信安全性[3,6],即使量子计算机也无法对其产生威胁。该方案要求通信双方在通信前进行密钥分发,经典密钥分发难以保证密钥的安全性,而量子密钥分发(Quantum Key Distribution, QKD)则具有无条件的安全性,这种安全性依赖于量子力学的基本原理[7-8]。著名的QKD协议有BB84协议、B92协议等[9-10]。这些协议都含有随机选取测量基的步骤,因此在协议过程中必然涉及随机数生成的环节。

随机数的生成必须满足不可预测性,而经典力学无法保证这一特性。在经典计算中,随机数是由特定的生成算法和随机种子来产生的,一旦算法流程和随机种子被确定,其生成的数值也可被确定[11]。因此,经典的随机数从理论上是可以预测的,这会在一些应用中产生安全隐患。例如在BB84协议中,窃听者如果获得了发送者产生的随机数,将能够在不被发现的情况下获取完整的密钥信息。量子力学具有内在的随机性,利用量子随机性来产生随机数的设备称为量子随机数发生器(Quantum Random Number Generator, QRNG),相比于经典的随机数发生器,其具有物理上的不可预测性[12]。目前的QRNG实现方案主要依赖于光学系统,如基于光子计数、基于光子到达时间、基于光子到达位置等[13-15]。

1 基础知识

1.1 BB84协议

1.1.1 协议流程与安全性分析

Bennett和Brassard于1984年提出了一种量子密钥分发协议,后被称为BB84协议[9]。协议中使用了两种不同的基{|0>,|1>}和{|+>,|->},其中|+>和|->定义如下。

(1)

BB84协议具体流程如下[7, 9]:

1) Alice随机生成2个长度为(4+δ)n的比特串,分别记为a和b。如果b中某一位的比特是0,则将a中相应位置的比特制备为|0>或|1>;如果b中某一位的比特是1,则将a中相应位置的比特制备为|+>或|->,如图1所示。

图1 经典比特与量子态的对应关系

2) Alice将制备的量子比特串发送给Bob。

3) Bob收到长度为(4+δ)n的量子比特串,随机生成一个长度为(4+δ)n的比特串b′,如果b′中某一位的比特是0,则用{|0>,|1>}基测量相应位置的量子比特;如果b′中某一位的比特是1,则用{|+>,|->}基测量相应位置的量子比特。最后得到长度为(4+δ)n的比特串a′。

4) Alice和Bob分别公布并对比比特串b和b′的值,如果其中相同比特的数量不少于2n则协议继续,否则协议终止。

5) Alice和Bob根据相同比特的位置保留a和a′中前2n个相应的比特,记为c。

6) Alice选择c中的n个比特作为校验比特并告诉Bob。 双方公布并比较校验比特的值,如果不同比特的数量多于可接受的值,则认为有窃听者存在,协议终止。

7) Alice和Bob利用剩下的n个比特作为最终密钥。

下面简要说明BB84协议的安全性。假设窃听者为Eve,由于未知量子态无法被克隆,因此Eve只能对Alice发送的量子比特进行测量而无法备份。由于Alice发送的每个量子比特有4种可能的状态,且Alice并未公布她在步骤1)中随机生成的比特串b,如果Eve对某些量子比特使用了错误的基进行测量,将有一半概率获得错误的结果,并导致量子比特的状态发生改变。这可能导致步骤6)中Alice和Bob的校验比特产生差异,从而使他们发现窃听者的存在。

1.1.2 协议中的随机数安全问题

BB84协议的安全性有一个重要的前提,即步骤1)中Alice随机生成的比特串a和b对于Alice以外的人是绝对保密的。如果这一前提无法满足,则整个协议的安全性将不复存在。以下分两种情况进行分析:

情况1:假设Eve获取了比特串a的值,根据步骤4)中Alice和Bob公开的b和b′值,便可知道应该保留a中的哪些比特,从而确定比特串c的值。之后再丢弃步骤6)中Alice选择的校验比特,便可得到最终密钥。

情况2:假设Eve获取了比特串b的值,则可以截取Alice在步骤2)中发送的量子比特串并用b所对应的基进行测量。这样Eve测量所用的基与Alice制备所用的基完全相同,因此Eve便在不改变量子比特状态的情况下获得了比特串a的值。之后的分析与情况1相同。

在以上两种情况中,不仅Eve能够获得最终的密钥,Alice发送的量子比特状态也不会发生改变,这意味着通信双方无法发现窃听者Eve的存在。

1.2 F-M系统

量子密钥分发的实现离不开硬件系统的支持,Mo等[16]在2005年提出并实现了一种基于Faraday-Michelson干涉仪的量子密钥分发系统,简称为F-M系统。该系统能够自动地补偿环境扰动所引起的偏振变化,有效消除长距离传输中偏振态对量子密钥分发系统稳定性的影响。

F-M系统的结构如图2所示。由激光二极管(laser diode, LD)发射的激光脉冲被耦合器C1分为两束脉冲。沿短臂传输的脉冲被Faraday旋转镜FM1反射并返回到C1,而沿长臂的脉冲由相位调制器PMa调制,并由Faraday旋转镜FM2反射,经过一定时延后回到耦合器C1。两束脉冲在量子信道中耦合并发送给Bob。脉冲到达耦合器C2后再次被分为两组。沿短臂传输的脉冲被Faraday旋转镜FM3反射并返回到C2,沿长臂传输的脉冲由相位调制器PMb进行调制,并由Faraday旋转镜FM4反射,经过一定时延后回到耦合器C2。由于DL1与DL2时延相等,仅经过一次调制的两束脉冲将同时到达耦合器C2并发生干涉,之后被单光子雪崩二极管(Single-photon avalanche diode, SPAD)探测到。通过控制PMa和PMb,Alice和Bob可以完成基于单光子的量子密钥分发协议,如BB84协议。

图2 F-M系统结构

1.3 基于光子到达时间的QRNG

1.3.1 光子到达时间的随机性

在一段时间间隔(t,t+T)内,连续激光的光子数量n服从参数为λT的泊松分布[14],如式所示:

(2)

根据泊松分布的性质,对于在时间间隔(t,t+T)内到达的一个光子,其在每个时刻到达的概率是相等的。如图3所示,以一个周期为T的脉冲信号作为参考信号,将每个时间区间内光子到达的相对时间记为tr,则tr服从(0,T)上的均匀分布。将该时间间隔T划分成N个区间{τ1,τ2,…,τN},则根据tr所在的区间可以得到{1,2,…,N}中的一个随机数。

图3 光子到达时间的随机性

1.3.2 基于光子到达时间的QRNG

Nie等[14]在2014年提出了一种基于光子到达时间的QRNG实现方案,其结构如图4所示。激光二极管LD发射的连续激光经过光衰减器(Attenuator,ATT),其强度降到每段时间间隔T内到达的平均光子数小于1的水平 。单光子雪崩二极管(Single-photon avalanche diode,SPAD)能够探测光子的到达并产生脉冲信号,该脉冲信号作为数字时间转换器(Time-to-digital converter,TDC)的停止信号,一个周期为T的外部周期脉冲信号作为TDC的开始信号。TDC的输出作为现场可编程门阵列(Field programmable gate array,FPGA)的输入,最后输出原始的随机比特串。原始的随机比特串与均匀分布存在微小的偏差,通过在计算机上进行一定的后处理,可以得到理想的均匀分布比特串。

图4 基于光子到达时间的QRNG结构

上述基于光子到达时间的QRNG能够显著消除实验数据中的偏差,生成几乎为均匀分布的原始随机比特串。相比于其他基于光学的QRNG实现方案,该方案具有随机数生成速率高、设备简单的优点,因此具有较高的实用性。除非特别说明,后文中提到的QRNG均为基于光子到达时间的QRNG。

2 基于QRNG的量子密钥分发系统

2.1 系统结构

2.1.1 光开关设计

本文系统的光路控制是通过机械式光开关来实现,可选择与切换光的传播路径。机械式光开关具有插入损耗低、隔离度大、使用寿命长以及体积小等特点,可实现任意两条量子链路之间的动态切换,如图5所示,当光开关与上方线路连接时,端口P1与端口P2连通,当光开关处于与下路线路连接时,端口P1与端口P3连通。

图5 光开关结构

2.1.2 随机数生成模块设计

基于光子到达时间的QRNG的关键任务是将“光子到达时间”这一具有随机性的物理量转换为随机数,完成该任务的模块称为随机数生成模块(random number generation module, RNGM),其结构如图6所示。

图6 随机数生成模块结构

该模块的输入为经过衰减后的激光,SPAD探测到光子时产生脉冲信号,该脉冲信号作为TDC的停止信号。RNGM内置一个信号源Ref,能够产生一定周期的参考信号,该信号同时作为TDC的开始信号。TDC的输出作为FPGA的输入。FPGA能够产生接近均匀分布的原始随机比特。对于原始随机比特,使用Toplitz矩阵来提取最终的随机比特[17-18],该过程同样在FPGA中完成。因此,整个RNGM的输出即为最终的理想随机比特串。

2.1.3 整体结构设计

在F-M系统的基础上,使用光开关进行光路控制,并使用随机数生成模块生成随机比特串,最终的整体结构如图7所示。

图7 基于QRNG的QKD系统整体结构

相比于F-M系统,该系统对Alice区域进行了重新设计。首先是在激光二极管LD的输出处添加光开关S1,当其与端口P1连通时,激光脉冲将传向光衰减器ATT;当其与端口P2连通时,激光脉冲将传向耦合器C1。其次是在ATT的输出处添加光开关S2,当其与端口P3连通时,激光脉冲将经过量子信道发送给Bob;当其与端口P4连通时,激光脉冲将进入随机数生成模块RNGM。

2.2 分析与讨论

上述量子密钥分发系统可以用于基于单光子的量子密钥分发协议。以BB84协议为例,其工作可以分为两个阶段。

第一个阶段为随机数生成阶段。该阶段中光开关S1与端口P1连通,S2与P4连通。LD发射的激光脉冲经过ATT后进入RNGM中,最后RNGM输出长度为n的随机比特串a。重复这一步骤,可以得到长度为n的随机比特串b。第二个阶段为密钥分发阶段。该阶段中光开关S1与端口P2连通,S2与P3连通。此时系统的工作方式与传统的F-M系统相同,Alice和Bob通过控制相位调制器PMa和PMb,可以完成BB84协议的后续步骤。

上述量子密钥分发系统能够实现F-M系统的所有功能,也具有F-M系统的全部优点,因此可以用于长距离的光量子通信,并且具有强大的抗干扰能力。与F-M系统不同的是,本文提出的系统还集成了QRNG功能。在目前主流的方案中,上述两个阶段的任务一般由两个独立的硬件系统来完成。随机数生成阶段由独立的RNG完成,密钥分发阶段则一般由F-M系统完成。下面根据RNG类型的不同,将本文的系统与两种组合方案进行对比。

(1) 独立的经典RNG与F-M系统的组合方案。经典RNG采用确定性算法生成随机数,存在被预测的可能性;而QRNG利用的是物理上的随机性,因此具有不可预测性。使用本文的系统可以避免随机数泄露,提高安全性。

(2) 独立的QRNG与F-M系统的组合方案。基于光子到达时间的QRNG与F-M系统存在重复的物理器件。本文的系统复用了一个激光二极管和一个光衰减器,并采用模块化的方法,将QRNG中的其余器件封装为RNGM接入F-M系统中。其优点是在不降低随机数安全性的同时降低了硬件成本。

3 结 语

智能电网的稳定运作离不开测控信息的安全传输,而安全传输的前提是有足够可靠的加密方式。量子密钥分发使得理论上绝对安全的“一次一密”方案成为可能,因此对测控信息的加密起到了关键作用。为了保证量子密钥分发协议的正常执行,需要对各个环节中存在的安全漏洞进行修补。本文分析讨论了随机数生成环节中存在的安全隐患,之后结合基于光子到达时间的QRNG实现方案,对F-M系统进行了改进。只要利用光开关对线路进行一定的改造,并接入RNGM,便可实现F-M系统的升级。改进之后的量子密钥分发系统不仅具有F-M系统的优点,还能有效地避免随机数泄露所导致的安全问题,为智能电网的安全运作提供了进一步保障。

猜你喜欢

光子比特密钥
《光子学报》征稿简则
密码系统中密钥的状态与保护*
一种对称密钥的密钥管理方法及系统
比特币还能投资吗
比特币分裂
基于ECC的智能家居密钥管理机制的实现
比特币一年涨135%重回5530元
在光子带隙中原子的自发衰减
光子晶体在兼容隐身中的应用概述
多光子Jaynes-Cummings模型中与Glauber-Lachs态相互作用原子的熵压缩