水下声通信物理层密钥生成方案
2019-03-13刘景美沈志威韩庆庆刘景伟
刘景美,沈志威,韩庆庆,刘景伟
(西安电子科技大学通信工程学院,陕西 西安 710071)
1 引言
近年来,物理层密钥生成技术凭借其特有的优点(理论安全、算法简单、不需要预分发等)引起了学术界的广泛关注。目前,已有大量关于密钥生成技术的研究。文献[1]将密钥生成技术应用于跳频系统。文献[2-3]研究了双方不在彼此通信范围内时利用中继节点辅助密钥生成的方案。文献[4-5]研究了小组通信中的密钥生成。文献[6-7]提出了适合应用在频分双工(FDD, frequency division duplex)无互易系统中的物理层密钥生成技术。文献[8-10]将密钥生成技术拓展至水下声系统中。文献[8]首次提出在水声通信系统中应用物理层密钥生成技术。文献[9]提出利用接收信号强度作为信道特征进行水下密钥生成,利用正交频分复用(OFDM, orthogonal frequency division multiplexing)系统加快密钥生成速率(KGR, key generation rate),利用平滑滤波器提高密钥一致率(KAR, key agreement rate),并比较了几种不同的量化方式下的密钥一致性。文献[10]利用信道频率响应(CFR, channel frequency response)作为信道特征,提出了一种通过自适应导频以及分块密钥认证来提高一致率的方案,并通过水下环境实测,检验了通信双方测量值的相关性。
然而已有的水下密钥生成技术都假设在较为理想的情况。文献[9]只是将一系列传统的密钥生成技术应用于水下环境,OFDM系统和平滑滤波器都是常见的密钥生成技术[11-14],没有讨论生成密钥的随机性以及KGR。文献[10]忽略了多普勒频移影响,即忽略了物体移动,然而实际的应用场景往往都是动态变化的,如水下无人艇的通信。此外,已有研究都没有考虑水下声系统中互易性受损这一问题。由于在水下通信中往往采用水声作为通信载体[15],而水声的传播速度仅有1 500 m/s,传播速度较小,导致传播时延极大,从而使得信道的短时互易性不再有效。
目前,常见的密钥生成技术往往分成4个步骤:信道探测(获取测量值)、量化(将测量值模数转换)、信息调和(误差纠正)以及隐私放大(密钥确认与随机性放大)[16]。而本文根据水声信道的特点,考虑了文献[9-10]中未考虑的因素,针对密钥生成的前 2个环节分别提出如下改进方案:1)从FDD系统的密钥生成方案[7]中得到启发,针对互易性受损的情况,提出一种本地导频辅助信道探测协议以适应水下声系统;2)考虑动态环境对密钥生成的影响,将文献[17]的相位偏移量化方法拓展,提出双层补偿聚合结合自适应保护间隔(DLCC_AGI,double-layer compensation centralized and adaptive guard interval quantization)的量化方案以提高KAR和KGR;3)从KAR、KGR以及随机性这3个方面全面地讨论了本方案的性能。
2 信道探测方案
声波在水中的传播速度很慢,即使通信距离仅有几十米,也会产生远大于相干时间(TC)的传播时延(Tdelay),导致通信双方的测量值之间相干性极低,因此基于信道互易性的传统方案很难直接应用。本文受文献[7]中FDD非互易系统密钥生成方案的启发,提出应对互易性受损问题的本地导频辅助信道探测协议。
2.1 探测协议
图1为本方案的信道探测过程,其中,Alice、Bob代表通信双方。
图1 本地导频辅助协议
阶段1和阶段2类似,因此仅描述阶段1的过程。收发信号中,XTA1表示Alice的探测信号,XTB1表示Bob的探测信号,YRB1表示 Bob的接收信号,YRA1表示Alice的接收信号,WA与WB表示高斯白噪声信号,且上述信号都是N维列向量;XP表示公共导频信号,XR与VA表示Alice的本地导频信号,VB表示Bob的本地导频信号,YB1表示Bob接收信号的奇数行集合,YB2表示 Bob接收信号的偶数行集合,YA1表示Alice接收信号的奇数行集合,YA2表示Alice接收信号的偶数行集合,MA是一个中间变量,RA1与RB1分别表示Alice与Bob在第一阶段获得的估计值,上述信号都是维的列向量。
在时不变多径信道(保证一个相干时间内不变)中一个具有N个子载波的OFDM符号,所经历的多径信道在频域表现为一个对角阵[18]。而水声信道往往可以抽象为一个多径信道。因此,以XTA1发送的过程为例(如式(1)所示),结合信道探测流程可以得到图2所示的忽略噪声影响的收发信号帧结构。
图2 阶段1收发信号
步骤1Alice与Bob生成一个公开导频XP,Alice生成本地导频XR与VA,Bob生成本地导频VB。
步骤2Alice生成并发送如图2所示导频信号XTA1,如式(2)所示,其中f表示频率。
步骤3Bob接收YRB1,如式(3)所示。
将YRB1的奇数行合并为YB1,偶数行合并为YB2,根据YB2与XP以最小二乘估计得到RB1,如式(4)所示。
步骤4Bob生成并发送如图2所示的导频信号XTB1,如式(5)所示。
步骤5Alice接收YRA1,如式(6)所示。
将YRA1的奇数行合并为YA1,偶数行合并为YA2,由YA1与XP通过最小二乘估计可以得到MA。
由于相邻子载波的载波间隔很小,即相干性很大,可得如下关系。
因此,可以根据MA、XR、YA2以及VA求得RA1。
由于子载波之间的相干性,通信双方的测量值近似相等(RA1≈RB1),阶段 2 中同理可得RA2≈RB2。由于受到噪声的影响,最小二乘估计的准确性下降,尤其在信噪比较差时噪声将会严重影响密钥生成技术的 KAR性能,因此本文采用平滑滤波器以减小噪声影响。此外,本方案中采用频域插值以增大相邻子载波间的相关性。
2.2 安全性分析
本探测方案中,窃听者 Eve(距离合法通信者半波长以上)已知公共导频XP,可针对XTA1发送过程中的偶数行估计得到HAE(2j)VA(j)。然而随机数向量VA仅Alice可知,所以窃听者无法获取其自身与合法通信者之间的任何信道信息(HAE和HBE),因此窃听者也无法获得XTA1奇数行中的XR导频信号。同理在后续步骤中利用奇数行中的VB保护信道以及XTB1偶数行中的信息。窃听者无法获取通信双方用于生成密钥的测量值,所以本方案是在保证密钥生成安全的前提下解决了互易性受损的问题。
此外,假设Eve距离Bob足够近,便可以接收到和Bob一样的信号,即YRB1(阶段1)与YRB2(阶段2),且由于XP是公开的,Eve可以根据YRB1中的偶数行YB2获得阶段1的测量值RB1。但在阶段2中,Bob地位类似于阶段1中的Alice,若要获取RB2需要Bob的本地信号XR和VA,而Eve无法获知,因此Eve无法获得阶段2的测量值。换言之,当存在一个窃听者足够靠近Bob或Alice时,该窃听者可以获得一半的测量值信息,但是无法获取全部的信道测量值。综上所述,窃听者可获信息如表1所示。
表1 窃听者可获信息
2.3 本地导频辅助信道探测协议的优点
根据2.1节和2.2节对本地导频辅助信道探测协议的分析,可知该协议具有如下优势。
1)通过子载波之间的相关性将密钥生成技术有效地拓展至时分双工水下声通信系统,解决了水声信道互易性受损的问题.
2)在通信双方探测信号生成的过程中加入本地随机数矢量VA和VB,提高了生成密钥的随机性,使得生成密钥的随机性在信道环境变化极其缓慢的情况下也可以得到保证。
3)传统密钥生成方案无法防范邻近窃听者的窃听,但是本方案可以在存在一个邻近窃听者的情况下依旧保持安全。
3 补偿聚合量化
引入量化环节是为了将信道测量值转换成0、1比特序列,适当的量化方法可以有效提高 KAR与KGR。本文将相位偏移量化方法[17]拓展到 CFR情况,并提出双层补偿聚合量化以提高密钥一致性与密钥生成速率,同时利用了测量值的实部与虚部,进一步提高了KGR,具体步骤如下。
步骤1Alice:根据 Alice的测量值序列A,通过累积分布函数(CDF, cumulative distribution function)[16]自适应生成量化门限,将测量值序列A判决为其所在量化域的中心,得到中心序列A'。
步骤2Alice:计算Δa=A–A′, 并将其发送给Bob。
步骤3Bob:计算B′=B-Δa=B–A+A′= W+A′。
步骤4Bob:根据补偿后的测量值B′,通过CDF生成量化门限,并生成中心序列B″。
步骤5Bob:计算Δb=B′–B″,并将其发送给Alice。
步骤6Alice:计算A″=A′–Δb=A′–B′+B″=A′–W–A′+B″=B″–W。
步骤7分别对B′和A″进行量化。
经过步骤 1~步骤 3处理后(称为单层聚合补偿),测量值序列B被聚合到测量值序列A的量化域中心附近,得到测量值序列B′。步骤 4~步骤 6同理将Alice的测量值A聚合到测量值序列B′的量化域中心附近。由于通信双方的测量值都在对方根据测量值自适应生成的量化域的中心附近噪声振幅范围内,因此只需保证最小量化域 min{Range}的一半大于噪声的振幅,即可无误差量化。
图 3(a)比较了 5种量化方法,可以发现本文提出的补偿聚合量化方案在 KAR方面明显优于文献[9]采用的单比特直接量化和保护间隔量化,且双层补偿的方式能更进一步提升密钥一致性,将双层补偿聚合的方法与文献[16]提出的自适应保护间隔结合提出DLCC_AGI量化,得到了极高的密钥一致性,验证了本文提出的 DLCC_AGI在 KAR方面的优越性。图 3(b)比较了有无采用平滑滤波的方案,验证了平滑滤波能够适用于本文提出的水下声密钥生成方案中,即使信道互易性极差。
图3 未加工密钥一致率曲线
4 仿真结果与性能分析
在第2和第3节中已经详细介绍了本文采用的信道探测技术与量化技术,但应注意量化后生成的比特序列仅是未加工的密钥,还需要进行信息调和与隐私放大2个步骤来获取最终密钥。由于本文的重点在于探究信道探测和量化环节,因此对于信息调和与隐私放大仅选用已有的(31,16,3)BCH码以及文献[10]提出的散列函数分块确认机制。
本文采用Matlab进行数值仿真,仿真参数见表2。
表2 仿真参数
4.1 误码率
本节主要比较了本方案在不同移动速度下的密钥一致性,图3比较了不同量化方案下未加工密钥的一致性,可知本文提出的 DLCC_AGI量化方法能够有效提高密钥一致性。
图4比较了水下无人艇相对移速分别为1节、5节、10节时调和后密钥的 KAR。本文首先对密钥序列进行交织,而后采用(31,16,3)BCH码调和。图 4(a)比较了密钥的误码率(BER, bit error rate),图 4(b)比较了子密钥错误率(SKER, sub-key error rate),即子密钥出现错误的概率,取子密钥长度NBlock= 16。由仿真结果可知,移速越高,密钥一致性越差,因为移速提高将会导致多普勒频移升高,从而降低一致性。但是本文方案生成的密钥可以确保即使在信噪比较低且移速较快的情况下,依旧保持 BER<0.1,SKER<0.05。
4.2 密钥生成速率
由于经过信息调和后得到的密钥序列中依旧会存在错误比特,因而不能直接将其作为密钥使用,本文通过文献[10]提出的散列函数分块确认方法来获得最终的密钥。该方法可以保证获得一致的密钥,但是需要丢弃部分子密钥。由于本文方案已经可以保证即使在信噪比极低的高速移动环境中,SKER依旧保持在0.05以下,因此在大多数场景中将会获得较好的KGR。
图4 不同移动速度下的密钥一致性曲线
观察图5可得出以下结论。1)对比移动速度为5节时采用不同量化方法的 KGR可知,采用DLCC_AGI量化的方案KGR远高于采用保护间隔量化的方案,尤其是在低信噪比情况下。这是因为低信噪比情况下,自适应得到的保护间隔将会很大,导致大量的有效测量值被丢弃,而DLCC_AGI量化方法经过双层补偿聚合后再生成的保护间隔仅丢弃少量错误测量值。仿真结果验证了DLCC_AGI量化在KGR方面的优越性。2)比较不同移速下的密钥生成速率可知,移速较慢情况下的KGR略高于移速较快时的,但没有明显差距。
图5 不同方案的密钥生成速率曲线
4.3 密钥随机性
本小节通过美国国家标准与技术研究所(NIST,National Institute of Standards and Technology)随机性测验中的 10项测试(其余几项对序列长度要求过高,在物理层密钥生成技术的研究中往往忽略),说明本方案生成的密钥的随机性。取密钥长度为256 bit,依据蒙特卡洛思想重复1 000次测试,得到表3测试结果。由表3可知生成的密钥以大概率通过10项测试中的7项,以50%的概率通过其中一项,以小概率通过剩余2项,随机性较好,且因为在信道探测环节中加入了本地随机数,所以可以保证即使在低速移动的情况下依旧能够保持相对稳定的密钥熵水平,而不会随着移动速度的降低而变差。
表3 NIST测试
5 结束语
本文主要研究了物理层密钥生成技术在时分双工水声通信中的应用。首先,针对水声信道与电磁波信道的区别,通过提出的本地导频辅助信道探测协议解决了水声通信中由于测量值互易性受损引起的问题。其次,本文提出了 DLCC_AGI量化方法代替传统的保护间隔量化,提高了生成密钥的KAR与KGR。最后,通过仿真与分析证明了本方案生成的密钥在KAR、KGR以及随机性三方面都达到了较高的水准,即提供了一种可行的水声物理层密钥生成方案。然而,本文方案的 KAR虽然已经优于已有的水声密钥方案,但是相较于陆上密钥生成方案仍有一定差距。因此,下一步的研究将考虑从信息调和的角度进一步优化密钥一致性。