从大气湍流光信号衰落中提取共享随机比特的方法与流程

文档序号:17125311发布日期:2019-03-16 00:20阅读:188来源:国知局
从大气湍流光信号衰落中提取共享随机比特的方法与流程

本发明属于信息安全技术领域,涉及一种从大气湍流光信号衰落中提取共享随机比特的方法。



背景技术:

信息安全是当今备受人们关注的问题。在网络通信中,为了保护传送的数据,通常需要对传送的数据进行加密。在私钥加密体制中,需要使收发双方拥有相同的密钥,发送方用密钥对数据进行加密,接收方用相同的密钥对数据进行解密。如何安全地为收发双方分配密钥是一个难题。对于地球大气环境中的两个通视的激光收发端,如果能在两个激光收发端之间建立起一条互易的双向光传输信道,则可以让两个激光收发端直接从大气湍流引起的光信号衰落中提取随机比特序列。关于双向光传输信道的互易性问题,在《opticsexpress》2018年26卷13期16422~16441页的论文中有详细叙述。双向光传输信道的互易性会使两个激光收发端同时提取的随机比特序列(称为原始共享随机比特序列)基本相同。两个激光收发端提取的随机比特序列在进行不一致比特纠错后,可以被用作两个相距一定距离的通信端同时拥有的共享随机密钥,用于对两个通信端之间的网络传输数据进行加密和解密。借用量子密钥分配后处理中使用的密钥协商、错误校验技术可以对两个通信端提取的原始共享随机比特序列进行不一致比特纠错,使得原始共享随机比特序列变为可以在实际中被使用的共享随机比特序列。从大气湍流导致的光信号衰落中提取随机比特序列需要对接收光信号进行量化,比较容易实现的方式是:判断瞬时光信号强度是否大于特定阈值,如果大于特定阈值,则提取比特1,否则提取比特0。由1995年cambridgeuniversitypress出版的《opticalcoherenceandquantumoptics》可知,如果x(t)是一个可微的实平稳过程,则其中尖括号表示求系综平均,表示x(t)的导数。因此,x(t)与不相关。如果大气湍流导致的光信号衰落是平稳的过程,则从光信号衰落的导数中提取的随机比特序列应该和从光信号衰落中提取的随机比特序列不相关。在短时间内,大气湍流导致的光信号衰落通常可看作是近似平稳的随机过程。利用这一事实,本发明公开一种从大气湍流光信号衰落中提取共享随机比特的方法,本方法同时从大气湍流光信号衰落及其导数中提取随机比特序列,从而增加从每次信号采样中提取的随机比特数目。



技术实现要素:

本发明的目的在于,提供一种从大气湍流光信号衰落中提取共享随机比特的方法,其同时从经大气湍流传输后的光信号的探测电信号幅值及其导数提取随机比特,提高了从每次信号采样数据中提取随机比特的数目。

本方法的技术方案是这样实现的:从大气湍流光信号衰落中提取共享随机比特的方法,其特征在于,所需的硬件系统和执行步骤如下:

需要激光收发端机a和激光收发端机b,激光收发端机a和激光收发端机b相互通视。激光收发端机a包括激光器a、收发光学系统a、探测器a和计算机a。激光收发端机b包括激光器b、收发光学系统b、探测器b和计算机b。如图1所示,激光器a发出的激光信号a001经收发光学系统a发射到大气湍流信道中,激光信号a001到达收发光学系统b后再入射到探测器b上;激光器b发出的激光信号b001经收发光学系统b发射到大气湍流信道中,激光信号b001到达收发光学系统a后再入射到探测器a上;计算机a实时采集探测器a输出的电信号,计算机b实时采集探测器b输出的电信号。

1)本方法的第一部分使激光收发端机a和激光收发端机b正常工作,具体操作包括:

使激光器a和激光器b正常工作,使探测器a和探测器b正常工作,使计算机a和计算机b正常工作,使收发光学系统a和收发光学系统b相互对准并正常工作。

2)本方法的第二部分在激光收发端机a中执行以下操作:

步骤step201:在计算机a的采集程序中创建一个计数器countera,令countera=1;令时刻ta=0;在计算机a的存储器中创建一个包含num个元素的一维数组arraya,数组arraya的元素用于存储探测器a输出的电信号的幅度采样值;在计算机a的存储器中创建一个包含num-1个元素的一维数组arrayad,数组arrayad的元素用于存储探测器a输出的电信号的幅度采样的导数值;在计算机a的存储器中创建一个列表lista,列表lista的元素用于存储随机比特,令列表lista为空;在计算机a的存储器中创建一个列表listad,列表listad的元素用于存储随机比特,令列表listad为空;令ia=1;令iad=1;

步骤step202:在时刻ta,计算机a的采集程序对探测器a输出的电信号幅度做一次采样,获得一个采样值c001;把数组arraya的第countera个元素赋值为采样值c001;

步骤step203:令countera=countera+1;令ta=ta+δt,δt为采样时间间隔;

步骤step204:如果countera>num,则转步骤step205,否则转步骤step202;

步骤step205:计算数组arraya中的所有元素的平均值c002;令ta等于系数ct与平均值c002的乘积,系数ct为一个正实数,用于对平均值c002进行缩放;

步骤step206:从数组arraya的第1个元素开始,依次针对数组arraya的每个元素c003做如下操作:

在列表lista的末尾添加一个新元素ea,新元素ea是列表lista的第ia个元素;判断元素c003的值是否大于ta,如果是,则把列表lista的第ia个元素赋值为比特1,否则把列表lista的第ia个元素赋值为比特0;令ia=ia+1;

步骤step207:分别依次针对j=1,2,…,num-1,把数组arrayad的第j个元素赋值为数组arraya的第j+1个元素的值与数组arraya的第j个元素的值之差除以δt的结果;

步骤step208:计算数组arrayad中的所有元素的平均值c004;令tad等于系数ctd与平均值c004的乘积,系数ctd为一个正实数,用于对平均值c004进行缩放;

步骤step209:从数组arrayad的第1个元素开始,依次针对数组arrayad的每个元素c005做如下操作:

在列表listad的末尾添加一个新元素ead,新元素ead是列表listad的第iad个元素;判断元素c005的值是否大于tad,如果是,则把列表listad的第iad个元素赋值为比特1,否则把列表listad的第iad个元素赋值为比特0;令iad=iad+1;

步骤step210:激光收发端机a完成原始共享随机比特序列提取操作。

3)本方法的第三部分在激光收发端机b中执行以下操作:

步骤step301:在计算机b的采集程序中创建一个计数器counterb,令counterb=1;令时刻tb=0;在计算机b的存储器中创建一个包含num个元素的一维数组arrayb,数组arrayb的元素用于存储探测器b输出的电信号的幅度采样值;在计算机b的存储器中创建一个包含num-1个元素的一维数组arraybd,数组arraybd的元素用于存储探测器b输出的电信号的幅度采样的导数值;在计算机b的存储器中创建一个列表listb,列表listb的元素用于存储随机比特,令列表listb为空;在计算机b的存储器中创建一个列表listbd,列表listbd的元素用于存储随机比特,令列表listbd为空;令ib=1;令ibd=1;

步骤step302:在时刻tb,计算机b的采集程序对探测器b输出的电信号幅度做一次采样,获得一个采样值d001;把数组arrayb的第counterb个元素赋值为采样值d001;

步骤step303:令counterb=counterb+1;令tb=tb+δt,δt为采样时间间隔;

步骤step304:如果counterb>num,则转步骤step305,否则转步骤step302;

步骤step305:计算数组arrayb中的所有元素的平均值d002;令tb等于系数ct与平均值d002的乘积,系数ct为一个正实数,用于对平均值d002进行缩放;

步骤step306:从数组arrayb的第1个元素开始,依次针对数组arrayb的每个元素d003做如下操作:

在列表listb的末尾添加一个新元素eb,新元素eb是列表listb的第ib个元素;判断元素d003的值是否大于tb,如果是,则把列表listb的第ib个元素赋值为比特1,否则把列表listb的第ib个元素赋值为比特0;令ib=ib+1;

步骤step307:分别依次针对j=1,2,…,num-1,把数组arraybd的第j个元素赋值为数组arrayb的第j+1个元素的值与数组arrayb的第j个元素的值之差除以δt的结果;

步骤step308:计算数组arraybd中的所有元素的平均值d004;令tbd等于系数ctd与平均值d004的乘积,系数ctd为一个正实数,用于对平均值d004进行缩放;

步骤step309:从数组arraybd的第1个元素开始,依次针对数组arraybd的每个元素d005做如下操作:

在列表listbd的末尾添加一个新元素ebd,新元素ebd是列表listbd的第ibd个元素;判断元素d005的值是否大于tbd,如果是,则把列表listbd的第ibd个元素赋值为比特1,否则把列表listbd的第ibd个元素赋值为比特0;令ibd=ibd+1;

步骤step310:激光收发端机b完成原始共享随机比特序列提取操作。

4)本方法的第四部分对激光收发端机a和激光收发端机b提取的原始共享随机比特序列中的不一致比特进行纠错,具体步骤如下:

步骤step401:在计算机a中,把列表lista中的随机比特序列和列表listad中的随机比特序列拼接在一起,即把列表listad中的随机比特序列添加到列表lista中的随机比特序列之后,使二者成为一个随机比特序列并保存在列表lista中;在计算机b中,把列表listb中的随机比特序列和列表listbd中的随机比特序列拼接在一起,即把列表listbd中的随机比特序列添加到列表listb中的随机比特序列之后,使二者成为一个随机比特序列并保存在列表listb中;

步骤step402:利用量子密钥分配后处理中的误码估计、密钥协商、错误校验技术找出并纠正列表lista和列表listb中存储的原始共享随机比特序列中的不一致比特,使列表lista和列表listb中的随机比特序列一致。

在实施本方法时,先执行本方法的第一部分,接着同时开始执行本方法的第二部分和第三部分,最后执行本方法的第四部分。

本发明的积极效果:本发明方法从经大气湍流传输后的激光探测信号中提取共享随机比特序列;激光在自由空间中传输无需频率许可,而且可以支持远距离传输,这是本发明方法拥有的相对于现有的基于无线电信道提取共享随机比特序列的优势。另外,相对于使用量子密钥分配产生共享随机比特序列的方法,本发明方法无需使用昂贵的量子设备,实施成本更低。

附图说明

图1为从大气湍流光信号衰落中提取共享随机比特的系统硬件结构示意图。

具体实施方式

为了使本方法的特征和优点更加清楚明白,下面结合具体实施例对本方法作进一步的描述。在本实施例中,激光收发端机a和激光收发端机b分别位于两栋高楼的屋顶,激光收发端机a的计算机a和激光收发端机b的计算机b都接入到互联网上,计算机a和计算机b可以通过互联网相互通信,以便通过互联网信道执行误码估计、密钥协商、错误校验操作。发表在《密码学报》2015年2卷2期113~121页的论文对误码估计、密钥协商、错误校验操作有详细的介绍。收发光学系统a和收发光学系统b使用《opticsexpress》2018年26卷13期16422~16441页论文描述的方式保证激光收发端机a和激光收发端机b之间的双向信道是互易的。探测器a和探测器b为pin光电探测器。

本方法的技术方案是这样实现的:从大气湍流光信号衰落中提取共享随机比特的方法,其特征在于,所需的硬件系统和执行步骤如下:

需要激光收发端机a和激光收发端机b,激光收发端机a和激光收发端机b相互通视。激光收发端机a包括激光器a、收发光学系统a、探测器a和计算机a。激光收发端机b包括激光器b、收发光学系统b、探测器b和计算机b。如图1所示,激光器a发出的激光信号a001经收发光学系统a发射到大气湍流信道中,激光信号a001到达收发光学系统b后再入射到探测器b上;激光器b发出的激光信号b001经收发光学系统b发射到大气湍流信道中,激光信号b001到达收发光学系统a后再入射到探测器a上;计算机a实时采集探测器a输出的电信号,计算机b实时采集探测器b输出的电信号。

1)本方法的第一部分使激光收发端机a和激光收发端机b正常工作,具体操作包括:

使激光器a和激光器b正常工作,使探测器a和探测器b正常工作,使计算机a和计算机b正常工作,使收发光学系统a和收发光学系统b相互对准并正常工作。

2)本方法的第二部分在激光收发端机a中执行以下操作:

步骤step201:在计算机a的采集程序中创建一个计数器countera,令countera=1;令时刻ta=0;在计算机a的存储器中创建一个包含num个元素的一维数组arraya,数组arraya的元素用于存储探测器a输出的电信号的幅度采样值;在计算机a的存储器中创建一个包含num-1个元素的一维数组arrayad,数组arrayad的元素用于存储探测器a输出的电信号的幅度采样的导数值;在计算机a的存储器中创建一个列表lista,列表lista的元素用于存储随机比特,令列表lista为空;在计算机a的存储器中创建一个列表listad,列表listad的元素用于存储随机比特,令列表listad为空;令ia=1;令iad=1;

步骤step202:在时刻ta,计算机a的采集程序对探测器a输出的电信号幅度做一次采样,获得一个采样值c001;把数组arraya的第countera个元素赋值为采样值c001;

步骤step203:令countera=countera+1;令ta=ta+δt,δt为采样时间间隔;

步骤step204:如果countera>num,则转步骤step205,否则转步骤step202;

步骤step205:计算数组arraya中的所有元素的平均值c002;令ta等于系数ct与平均值c002的乘积,系数ct为一个正实数,用于对平均值c002进行缩放;

步骤step206:从数组arraya的第1个元素开始,依次针对数组arraya的每个元素c003做如下操作:

在列表lista的末尾添加一个新元素ea,新元素ea是列表lista的第ia个元素;判断元素c003的值是否大于ta,如果是,则把列表lista的第ia个元素赋值为比特1,否则把列表lista的第ia个元素赋值为比特0;令ia=ia+1;

步骤step207:分别依次针对j=1,2,…,num-1,把数组arrayad的第j个元素赋值为数组arraya的第j+1个元素的值与数组arraya的第j个元素的值之差除以δt的结果;

步骤step208:计算数组arrayad中的所有元素的平均值c004;令tad等于系数ctd与平均值c004的乘积,系数ctd为一个正实数,用于对平均值c004进行缩放;

步骤step209:从数组arrayad的第1个元素开始,依次针对数组arrayad的每个元素c005做如下操作:

在列表listad的末尾添加一个新元素ead,新元素ead是列表listad的第iad个元素;判断元素c005的值是否大于tad,如果是,则把列表listad的第iad个元素赋值为比特1,否则把列表listad的第iad个元素赋值为比特0;令iad=iad+1;

步骤step210:激光收发端机a完成原始共享随机比特序列提取操作。

3)本方法的第三部分在激光收发端机b中执行以下操作:

步骤step301:在计算机b的采集程序中创建一个计数器counterb,令counterb=1;令时刻tb=0;在计算机b的存储器中创建一个包含num个元素的一维数组arrayb,数组arrayb的元素用于存储探测器b输出的电信号的幅度采样值;在计算机b的存储器中创建一个包含num-1个元素的一维数组arraybd,数组arraybd的元素用于存储探测器b输出的电信号的幅度采样的导数值;在计算机b的存储器中创建一个列表listb,列表listb的元素用于存储随机比特,令列表listb为空;在计算机b的存储器中创建一个列表listbd,列表listbd的元素用于存储随机比特,令列表listbd为空;令ib=1;令ibd=1;

步骤step302:在时刻tb,计算机b的采集程序对探测器b输出的电信号幅度做一次采样,获得一个采样值d001;把数组arrayb的第counterb个元素赋值为采样值d001;

步骤step303:令counterb=counterb+1;令tb=tb+δt,δt为采样时间间隔;

步骤step304:如果counterb>num,则转步骤step305,否则转步骤step302;

步骤step305:计算数组arrayb中的所有元素的平均值d002;令tb等于系数ct与平均值d002的乘积,系数ct为一个正实数,用于对平均值d002进行缩放;

步骤step306:从数组arrayb的第1个元素开始,依次针对数组arrayb的每个元素d003做如下操作:

在列表listb的末尾添加一个新元素eb,新元素eb是列表listb的第ib个元素;判断元素d003的值是否大于tb,如果是,则把列表listb的第ib个元素赋值为比特1,否则把列表listb的第ib个元素赋值为比特0;令ib=ib+1;

步骤step307:分别依次针对j=1,2,…,num-1,把数组arraybd的第j个元素赋值为数组arrayb的第j+1个元素的值与数组arrayb的第j个元素的值之差除以δt的结果;

步骤step308:计算数组arraybd中的所有元素的平均值d004;令tbd等于系数ctd与平均值d004的乘积,系数ctd为一个正实数,用于对平均值d004进行缩放;

步骤step309:从数组arraybd的第1个元素开始,依次针对数组arraybd的每个元素d005做如下操作:

在列表listbd的末尾添加一个新元素ebd,新元素ebd是列表listbd的第ibd个元素;判断元素d005的值是否大于tbd,如果是,则把列表listbd的第ibd个元素赋值为比特1,否则把列表listbd的第ibd个元素赋值为比特0;令ibd=ibd+1;

步骤step310:激光收发端机b完成原始共享随机比特序列提取操作。

4)本方法的第四部分对激光收发端机a和激光收发端机b提取的原始共享随机比特序列中的不一致比特进行纠错,具体步骤如下:

步骤step401:在计算机a中,把列表lista中的随机比特序列和列表listad中的随机比特序列拼接在一起,即把列表listad中的随机比特序列添加到列表lista中的随机比特序列之后,使二者成为一个随机比特序列并保存在列表lista中;在计算机b中,把列表listb中的随机比特序列和列表listbd中的随机比特序列拼接在一起,即把列表listbd中的随机比特序列添加到列表listb中的随机比特序列之后,使二者成为一个随机比特序列并保存在列表listb中;

步骤step402:利用量子密钥分配后处理中的误码估计、密钥协商、错误校验技术找出并纠正列表lista和列表listb中存储的原始共享随机比特序列中的不一致比特,使列表lista和列表listb中的随机比特序列一致。

在实施本方法时,先执行本方法的第一部分,接着同时开始执行本方法的第二部分和第三部分,最后执行本方法的第四部分。

在本实施例中,num=20000;δt=1毫秒;ct=0.8;ctd=0.8;激光器a和激光器b的输出光强在时间上是稳定的。激光器a和激光器b输出的光强大小相同。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1