本发明涉及一种随机衰落混扰隐秘大气光信道密钥分发方法,属于信息安全。
背景技术:
1、随着通信技术在日常生活中的广泛使用,如何确保传送的信息不被非法方截获成为人们关注的一个焦点。加密技术是确保信息传输安全的有效手段。在使用对称密码体制时,需要为收发双方提前分配共享密钥(必须确保共享密钥信息不会向外泄露,即对外界保密),然后发方先使用共享密钥对传送的信息进行加密,并把得到的密文发送给收方,收方再利用共享密钥把接收到的密文解密还原成发方最初的明文。对称密码体制具有加密效率、保密强度较高的特点,然而如何为相距遥远的收发双方安全地分配共享密钥是一个需要解决的技术问题。当前,在互联网通信中,通常用公钥密码体制来为相距遥远的收发双方分配共享密钥。在公钥密码体制中,加密和解密过程使用不同但相关的一对密钥,即公钥和私钥。公钥对外界公开,私钥对外界保密。利用公钥推算私钥因计算开销太大而不可行。在利用公钥密码体制来为收发双方分配共享密钥时,通常需要有公钥管理机构或者公钥证书权威机构的支持,才能确保共享密钥分配的安全性。人民邮电出版社于2016年出版的由俞研等人编著的《网络安全理论与应用》的11.1节对基于公钥密码体制的对称加密密钥分配作过介绍。值得注意的是,公钥密码体制一般采用较复杂的数学方法进行加密和解密,计算开销比较大,不适合用于大量数据信息的加密处理。因此,在实际互联网通信中,通常先采用公钥密码体制为收发双方分配共享密钥,然后再用对称密码体制来对传输的数据信息进行加密。
2、公钥密码体制的安全性依赖于求解特定数学问题的复杂度,其安全性本质上是计算安全性(computational security),即只保证在特定计算能力条件下的安全性。随着量子计算机技术的不断发展,人类拥有越来越强大的计算能力。当量子计算机技术发展到一定程度时,现有公钥密码体制的计算安全性将不复存在。为了解决这个问题,人们研究出量子密钥分发技术,其可以在提供信息论安全(information-theoretic security)的条件下,使收发双方获得相同的共享密钥。信息论安全就是无条件安全(unconditionalsecurity),它的安全性不受计算能力影响。当前通常使用光量子态实现量子密钥分发。然而,量子密钥分发需要使用量子器件,其实施成本相对较高。由于经典光通信技术发展相对成熟,如何在现有经典光通信设备上实现信息论安全的密钥分发成为非常具有实际意义的研究工作。本发明提供一种随机衰落混扰隐秘大气光信道密钥分发方法,其借助大气随机光衰落混扰,利用经典大气光传输信道实现信息论安全的密钥分发,可为信息论安全的密钥分发提供一种低成本实现方案。
技术实现思路
1、本发明的目的在于,提供一种随机衰落混扰隐秘大气光信道密钥分发方法,实现兼容经典光通信设备的信息论安全密钥分发。本方法的技术方案是这样实现的:
2、需要双向大气光信道传输系统,如图1所示。双向大气光信道传输系统包括端机a和端机b。端机a包括激光器a(101)、电光调制器a(102)、收发光学系统a(103)、随机数发生模块(104)、探测器a(105)、计算机a(106)。端机b包括激光器b(109)、电光调制器b(108)、收发光学系统b(107)、探测器b(110)、计算机b(111)。收发光学系统a(103)和收发光学系统b(107)相互通视。激光器a(101)发出的光信号入射到电光调制器a(102)的光输入端口,经电光调制器a(102)进行光振幅调制后输出的光信号入射到收发光学系统a(103)的光输入端口,再经大气光信道传输到收发光学系统b(107),收发光学系统b(107)接收来自端机a的光信号并使其入射到探测器b(110)上,探测器b(110)输出的电信号传输到计算机b(111)的采集卡并被采样量化成数字信号存储在计算机b(111)的存储器中。随机数发生模块(104)产生的[bl, 1]范围内的随机数传送给电光调制器a(102)作为电控信号,用于控制从电光调制器a(102)输出的光信号的振幅。随机数发生模块(104)产生的[bl, 1]范围内的随机数同时也传送给计算机a(106)。激光器b(109)发出的光信号入射到电光调制器b(108)的光输入端口,经电光调制器b(108)进行光振幅调制后输出的光信号入射到收发光学系统b(107)的光输入端口,再经大气光信道传输到收发光学系统a(103),收发光学系统a(103)接收来自端机b的光信号并使其入射到探测器a(105)上,探测器a(105)输出的电信号传输到计算机a(106)的采集卡并被采样量化成数字信号存储在计算机a(106)的存储器中。电光调制器b(108)的电控信号为固定值x,电光调制器b(108)输出的光信号的振幅不随时间发生变化。bl表示随机数发生模块(104)产生的随机数下界值,0 < bl < 1。
3、1)本方法的第一部分使端机a和端机b正常工作,具体操作包括:
4、使激光器a(101)、电光调制器a(102)、收发光学系统a(103)、随机数发生模块(104)、探测器a(105)、计算机a(106)、激光器b(109)、电光调制器b(108)、收发光学系统b(107)、探测器b(110)、计算机b(111)正常工作。随机数发生模块(104)从t0时刻开始,每隔时间τs就输出一个新的在[bl, 1]范围内的随机数z,电光调制器a(102)输出的光信号的振幅等于z×ε×a0,其中a0表示进入电光调制器a(102)的光输入端口的光信号的振幅,ε表示不随时间变化的损耗衰减系数0≤ε≤1。使x始终等于1,也就是使电光调制器b(108)输出的光信号的振幅等于ε×a′0,其中a′0表示进入电光调制器b(108)的光输入端口的光信号的振幅。
5、2)本方法的第二部分在计算机a(106)中执行以下操作:
6、从t0时刻开始,计算机a(106)每隔时间τs就对探测器a(105)输出的电信号进行一次采样测量,每次采样测量获得一个采样测量值msa,在nt×τs+t0时刻总共获得nt+1个采样测量值msa。按获得的时间先后顺序把这nt+1个采样测量值msa保存在计算机a(106)的存储器中的列表lista中;在(i-1)×τs+t0时刻获得第i个采样测量值msa,其中i = 1, 2,3, …, nt+1;nt是一个正整数。
7、3)本方法的第三部分在计算机b(111)中执行以下操作:
8、从t0时刻开始,计算机b(111)每隔时间τs就对探测器b(110)输出的电信号进行一次采样测量,每次采样测量获得一个采样测量值msb,在nt×τs+t0时刻总共获得nt+1个采样测量值msb。按获得的时间先后顺序把这nt+1个采样测量值msb保存在计算机b(111)的存储器中的列表listb中;在(i-1)×τs+t0时刻获得第i个采样测量值msb,其中i = 1, 2,3, …, nt+1。
9、4)本方法的第四部分在计算机a(106)中执行以下操作:
10、步骤step401:对于i = 1, 2, 3, …, nt+1,令msai表示列表lista的第i个元素的值,把列表lista的第i个元素的值更新为msai×zi,其中zi表示随机数发生模块(104)在(i-1)×τs+t0时刻输出的随机数的值;
11、步骤step402:令l=floor((nt+1)/ng),ng表示分组个数,ng≤nt+1。在计算机a(106)的存储器中创建一个包含l×ng个元素的列表lista1;把列表lista的第i个元素的值赋给列表lista1的第j×l+i+1个元素,其中i=floor((i-1)/ng),j=i-1-floor((i-1)/ng)×ng,i = 1, 2, 3, …, l×ng;floor(x)表示对x向下取整。
12、步骤step403:在计算机a(106)的存储器中创建一个包含l×ng个元素的列表keyla;令列表keyla为空;针对k = 1, 2, 3, …, ng,依次分别做如下操作:
13、步骤step403-1:把列表lista1的从第(k-1)×l+1到第k×l个元素共l个元素存储的值当作随机观测值,在计算机a(106)中利用程序计算与之对应的经验累积分布函数fa(x);计算,把tx,a作为判决阈值;
14、步骤step403-2:针对m = (k-1)×l+1, (k-1)×l+2, …, k×l,依次分别做如下操作:
15、如果列表lista1的第m个元素的值大于tx,a,则在列表keyla的末尾添加一个元素并令该元素的值等于1,否则在列表keyla的末尾添加一个元素并令该元素的值等于0。
16、5)本方法的第五部分在计算机b(111)中执行以下操作:
17、步骤step501:令l=floor((nt+1)/ng),ng表示分组个数,ng≤nt+1。在计算机b(111)的存储器中创建一个包含l×ng个元素的列表listb1;把列表listb的第i个元素的值赋给列表listb1的第j×l+i+1个元素,其中i=floor((i-1)/ng),j=i-1-floor((i-1)/ng)×ng,i = 1, 2, 3, …, l×ng;
18、步骤step502:在计算机b(111)的存储器中创建一个包含l×ng个元素的列表keylb;令列表keylb为空;针对k = 1, 2, 3, …, ng,依次分别做如下操作:
19、步骤step502-1:把列表listb1的从第(k-1)×l+1到第k×l个元素共l个元素存储的值当作随机观测值,在计算机b(111)中利用程序计算与之对应的经验累积分布函数fb(x);计算,把tx,b作为判决阈值;
20、步骤step502-2:针对m = (k-1)×l+1, (k-1)×l+2, …, k×l,依次分别做如下操作:
21、如果列表listb1的第m个元素的值大于tx,b,则在列表keylb的末尾添加一个元素并令该元素的值等于1,否则在列表keylb的末尾添加一个元素并令该元素的值等于0。
22、6)本方法的第六部分利用量子密钥分配后处理中的误码估计、密钥协商、错误校验技术纠正列表keyla和列表keylb中存储的原始共享密钥的比特序列中的不一致比特,使计算机a(106)和计算机b(111)获得一致的共享密钥比特序列。
23、本发明的积极效果是:本方法先把端机a的随机数发生模块(104)产生的随机数通过大气光信道分发到端机b,在此过程中利用大气随机光衰落混扰改变分发的原始随机数,然后通过阈值量化方式生成原始共享密钥的比特序列。本方法的优点在于,生成原始共享密钥的比特序列的随机源由端机a的本地随机源提供,其单位时间内产生的随机熵大小可人为控制。因此,使用本方法可以很容易地提高共享密钥产生速率。