本发明属通信安全技术领域,具体涉及一种物理层信息互易性的增强方法。
背景技术:
随着科技与社会的同步发展,无线通信已经成为人们之间交互的主要方式。而传统的加密体制在无线通信中已不再适用,为解决其面临的密钥分发困难、更新周期过长等问题,产生了基于物理层信息的密钥生成技术。如何提高密钥的生成速率、保证密钥的高随机性是物理层密钥生成技术所要解决的关键问题,而保证通信双方测量到具有高相关性的信道特征是解决这些问题的主要途径。但在信道特征提取过程中,面临着以下问题:(1)通信双方提取信道特征的时刻存在一个时间差,而无线信道在这一时间差内产生的变化会使通信双方提取到的信道特征存在一定程度上的差异,造成通信双方量化阶段生成的初始比特串匹配率降低,进而增加协商阶段开销,导致密钥生成速率与密钥一致率下降;(2)通信双方在生成密钥时,所处环境通常可以分为静态环境与动态环境,静态环境下,信道状态变化缓慢,通信双方很容易生成具有大量连续0或连续1比特串的密钥,并且由于大量的信道特征处于量化门限附近,双方量化生成的初始比特串一致率比较低;动态环境的信道特征变化剧烈,通信双方可以以较高的速率生成具有高准确率、高随机性的密钥;但是,在一次密钥生成中,会经常存在静态环境与动态环境交互出现的情形,静态环境下生成的密钥会对密钥质量造成一定程度的影响;(3)由于电子元器件在生产制造过程中的差异,使得同一型号设备的硬件参数存在差异,进而对其接受发送的信号产生影响,同时,由于环境噪声的影响,最终使得通信双方在同一时刻提取到的信道特征存在差异。
为解决以上问题,文献“n.patwari,j.croft,s.jana,etc.high-rateuncorrelatedbitextractionforsharedsecretkeygenerationfromchannelmeasurements[j].ieeetrans.mobilecomput,2010,9(1):17-30.”利用利用插值滤波的方式,试图将测量值平移到同一时间点,以解决测量时间差造成的影响。这种平移测量时间的方法,建立在双方测量信道间隔相同且每两个特征值之间的信道特征是线性的基础上。而实际中,通信双方测量信道的间隔时间并非恒定,而且每两个特征值间并不是简单的线性变化。除此之外,通信双方的时钟振荡器并非完全相同,通信双方难以同步测量时间。
文献“buttlerwt,lamoreauxsk,torgersonjr,etal.fast,efficienterrorreconciliationforquantumcryptography[j].physics.2002.”使用回环机制传输导频信号,使得通信双方可以提取到同时包含通信双方硬件干扰在内的信道特征,提升通信双方的相关性。但是由于其在公开信道中传输彼此测得的信道特征,很容易被第三方窃听得到密钥信息。
技术实现要素:
为了克服现有技术的不足,本发明提供一种物理层信息互易性的增强方法。首先,采用csi幅值信息作为信道特征,修改通信双方的通信协议,使bob在接收到alice发来的探测帧后立即返回探测帧,减小通信双方测量信道的时间差,从而减小该段时间内的csi幅值变化,提升通信双方的csi幅值的互易性;然后,依据提取到的csi幅值的方差,动态的调整探测包的发送速率,减小信道与系统开销,增强通信双方互易性;接着,筛选出动态区域测量到的csi幅值用于密钥生成,提高比特一致率;最后,将筛选出的csi幅值信号去噪。采用本发明方法能够提高量化阶段生成的初始比特的一致率,减小协商阶段的开销,以较高的速率生成高一致率、高随机性的密钥。
一种物理层信息互易性的增强方法,其特征在于步骤如下:
步骤一:设通信双方分别为alice和bob,alice使用udp通信方式以速率vs发送探测包,vs的取值范围为3≤vs≤5,bob接收并提取alice发送的探测包的csi幅值信息,利用udp报文的数据段记录该csi序号;
然后,bob构建新的探测包并发送给alice,所述的构建新的探测包过程为:首先,调换所收到的探测帧帧首部的mac地址address1字段与源mac地址address2字段内容,调换帧首部framecontrol字段中的fromds位与tods位内容,调换ip首部的sourceip字段与destinationip字段的内容,调换udp首部sourceport字段与destinationport字段的内容,保持除前述所有调整字段和udp首部checksum字段、ip首部checksum字段、帧首部fcs字段以外的其余字段不变;然后,分别计算udp校验和并填入udp首部checksum字段、计算ip首部校验和并填入ip首部checksum字段、计算帧校验序列并填入帧首部fcs字段,完成新探测包的构建;
步骤二:alice接收到bob返回的探测包后,提取该探测包的csi幅值信息,利用udp报文的数据段记录该csi序号,令csi序号加1,然后,继续向bob发送探测包;
步骤三:设定窗口大小w,当alice已记录的csi幅值信息个数达到w时,计算窗口内csi幅值的方差s,并根据s按下式调整发包速率vs:
其中,vs′为调整后的发包速率,vs为当前发包速率;
然后,按照调整后的发包速率重复步骤一和二,直至提取到的csi幅值信息数量能够满足一次密钥生成所需;
所述的窗口大小w的取值范围为10≤w≤20,所述的窗口内csi幅值的方差s的计算公式如下:
其中,xi表示窗口内第i个csi的幅值;xj表示窗口内第j个csi的幅值;
步骤四:alice按照下式筛选得到动态区域:
其中,start表示动态区域的起始窗口序号,end表示动态区域的结束窗口序号,ki表示第i+1个窗口和第i个窗口的csi幅值方差斜率,ki=si+1-si,si+1表示第i+1个窗口内的csi幅值方差,si表示第i个窗口内的csi幅值方差,i和j表示窗口序号,i,j=1,…,n,n为alice所提取的csi幅值信息所包含的窗口总数;t为阈值,依据方差斜率序列的均值确定,t=aμ,μ为所有窗口方差斜率的平均值,a为阈值参数,取值范围为[3,7];
设alice共筛选得到m个动态区域,所有m个动态区域的起始和结束窗口序号构成序号序列a,alice将序列a发送给bob;
步骤五:bob将自己记录的csi序号序列与alice发送的序号序列a求交集,得到序列b,并将序列b发送给alice;
步骤六:alice按照序列b中的序号从自己所提取的csi幅值信息中选择对应的csi幅值,得到csi幅值序列x,bob按照序列b中的序号从自己所提取的csi幅值信息中选择对应的csi幅值,得到csi幅值序列y;
步骤七:alice和bob采用小波滤波方法分别对其csi幅值序列x和y进行去噪处理,得到互易性增强的csi幅值序列。
本发明的有益效果是:由于修改了802.11协议对探测帧的收发机制,使得通信双方可以在较小的时间差内提取到csi幅值信息,减小了该测量时间差内的csi变化;由于进行发包速率动态调整,能够节约信道与系统资源;由于对动态环境下测量到的csi幅值信息进行了筛选,提高了密钥的准确率与生成速率;由于对提取到的csi幅值进行了小波去噪,减小了硬件与环境噪声对信道互易性的影响。使用处理后的csi幅值进行密钥生成可以以较高的速率生成具有高一致率与高随机性的加密密钥。
附图说明
图1是本发明的物理层信息互易性的增强方法流程图;
图2是本发明实施例计算得到的相邻窗口csi幅值方差斜率序列;
图3是本发明实施例原始csi幅值与筛选得到的动态区域csi幅值对比图像;
图4是本发明实施例经小波去噪后的csi幅值序列。
具体实施方式
下面结合附图和实施例对本发明进一步说明,本发明包括但不仅限于下述实施例。
如图1所示,本发明提供了一种物理层信息互易性的增强方法,主要包括探测帧快速构建与返回、实时调整发包速率、动态区域选择、去噪处理等过程,具体如下:
1、探测帧快速构建与返回
通信双方分别使用配置无线网卡的主机,在修改了802.11协议的无线通信系统中,通信中的一方alice使用udp通信的方式,将udp报文的数据段填写为探测包的类型及序号,以速率vs发送探测包,vs的取值范围为3≤vs≤5。
通信中的另一方bob,在收到alice发来的探测包后,提取包含ofdm子载波信道响应信息的信道状态信息(csi),并利用udp报文的数据段内容记录该csi序号。
接着,bob直接于链路层完成响应帧的构建并返回,构建方式为:(1)调换所收到的探测帧帧首部的目的mac地址address1字段与源mac地址address2字段内容;调换帧首部framecontrol字段中的fromds位与tods位内容。调换ip首部的sourceip字段与destinationip字段的内容。调换udp首部sourceport字段与destinationport字段的内容。(2)除上述字段及udp首部checksum字段、ip首部checksum字段、mac帧首部fcs字段,新构建帧的其余字段按照接收到的探测帧的对应字段进行填充,保持不变。(3)计算udp校验和,填入udp首部checksum字段;计算ip首部校验和,填入ip首部checksum字段;计算帧校验序列,填入帧首部fcs字段。
bob在完成帧构建后,直接将该帧加入至网卡发送队列,发送给alice。
采用如上的探测帧快速构建与返回机制,可以使通信双方一次信道测量之间的时间差缩小,也就意味着这一时间差内的信道状态变化减少,通信双方可以提取相关性更强的csi幅值信息。
2、实时调整发包速率
alice在接收到bob返回的探测帧后,立即提取该探测包一号子载波对应的csi幅值信息,并利用udp报文数据段的内容记录该csi序号,令csi序号加1,然后,继续向bob发送探测包。
当alice已记录的csi幅值信息个数达到一个窗口大小w后,计算窗口内csi幅值的方差s,依据s的经验阈值,判断是否增减发包速率:当s>20时,增大发包速率至vs=20;当s<15时,减小发包速率至vs=5。
然后,以新的发包速率发送探测包。窗口大小w的取值范围为10≤w≤20。
3、动态区域选择
在通信双方提取到该次密钥生成的所有csi幅值信息后,可得出相邻两窗口的csi幅值方差的斜率序列ki如图2所示。
求得序列ki中所有元素的均值μ,接着对ki中元素做如下判断:
(1)当ki≤aμ且ki+1≥aμ时,记录当前的窗口索引i,这是一段动态区域的起点。其中,a为阈值参数,取值范围为3~7。
(2)对于i之后最先满足kj≥aμ和kj+1≤aμ的j,记录其窗口索引j,这是一段动态区域的终点。
如此可以得到多组动态区域起点与终点的组合,但是可能存在某些组合只存在i值或只存在j值,这是在csi幅值信息提取的开始或结束阶段即为动态区域,因此只有起始或结束窗口索引。
alice将这若干组起始点内包含的csi幅值序号组成的序列a发送给bob,bob依据自己拥有的csi序列,与a求并集,组成序列b发送给alice,通信双方同时利用这个索引序列b筛选出各自用于密钥生成的csi幅值。如图3所示,上半部分为alice端原始未经筛选的csi幅值图,下半部分为alice端筛选出的动态区域的csi幅值图。
4、去噪处理
alice与bob分别利用小波滤波方法对各自筛选得到的csi幅值序列进行去噪处理,去噪后的序列即为各自最终的互易性增强后的csi幅值序列。
小波滤波方法的过程是:(1)选取合适的小波基对信号序列进行小波分解;(2)保留低分辨率下的全部分解值,对于高分辨率下的分解值,设定一个阈值,当小波系数的绝对值小于给定阈值时,令其为零;大于阈值时令其减去阈值。阈值通常可以设为
图4给出了alice端的csi幅值序列经过小波去噪前后的示意图。可以看出,csi幅值更加平滑,这就意味着在量化特征值时,双方在量化门限附近的特征值因某些细微差异在一端量化为0,而另一端量化为1的问题得到部分解决,通信双方得到了互易性增强的csi幅值序列。使用处理后的csi幅值进行密钥生成可以以较高的速率生成具有高一致率与高随机性的加密密钥。