基于接收信号强度的无线网络自适应密钥提取方法

2021-02-25 07:49杜文杰
中北大学学报(自然科学版) 2021年1期
关键词:物理层监听密钥

杜文杰

(北京计算机技术及应用研究所,北京 100854)

0 引 言

无线信道固有的开放性使得其中传输的数据可以被轻易获取,因此保证无线网络的通信安全至关重要.通信双方实现密钥生成是基本的安全需求.传统的公钥安全体制需要较高的计算能力且会消耗节点大量能量,这对某些无线网络场景不适合,比如资源受限的传感器网络.同时,对于具有较高移动性的网络,其本身可能缺少可信密钥管理中心,而且节点的频繁加入、退出,也使得公钥密码体制并不适合此类网络.另外,非对称加密主要基于某些难解问题的计算复杂度确保密钥的安全性,这类方案无法达到绝对安全.相比之下,最近提出的物理层密钥生成方案理论上可以达到信息论安全级别[1].

物理层密钥生成方案主要利用无线信道的物理层特性为无线节点生成密钥[2].典型的物理层密钥生成方案主要包括4个步骤:信道探测、量化、信息协调以及保密增强.目前已提出的方案根据效率以及实现复杂度等需求分别使用不同的参量作为信道状态实现密钥生成.文献[3]提出了Level Crossing方案,从接收信号强度(Received Signal Strength,RSS)以及信道冲击响应(Channel Impulse Response,CIR)中提取共享密钥.Jana等[4]在LevelCrossing方案基础上提出了自适应的物理层密钥生成ASBG方案,该方案同样利用RSS实现密钥生成.类似地,文献[5-8]中均提出了利用RSS实现的物理层密钥生成方案.利用RSS实现的物理层密钥生成方案具有实现复杂度低,兼容现有设备等优点,然而,此类方案的密钥生成效率较低.为了提高密钥生成效率,文献[9]提出了利用信道状态信息(Channel State Information,CSI)实现密钥生成.文献[10-12]也提出了利用CSI为节点生成共享密钥.除RSS和CSI外,文献[13]提出了利用相位实现物理层群组密钥生成方案,文献[14]提出利用信道到达角度(Angle of Arrival,AoA)生成共享密钥.根据现有方案分析,节点初始收集的原始信道状态序列之间存在较多差异,从而造成误码率高而降低了最终密钥生成的效率,因此,需对原始信道状态进行预处理,以保证密钥生成的效率以及实际可用性.

本文提出一个基于接收信号强度实现物理层密钥生成的方案.首先,提出了一个信道状态评估机制,通过该评估机制可以确定收发节点在不同阶段采集的信道状态的变化程度以及适合用于密钥生成的程度.在此基础上,提出了一个自适应量化方法.该量化过程根据前一阶段的信道状态评估结果自适应调整量化参数,确保生成的比特序列之间的误码率更低,从而提高了密钥生成效率.基于所提出的信道评估机制以及量化方法,结合Cascade信息协调方案以及2阶全域哈希函数,最终实现的密钥生成机制确保节点可以利用接收信号强度生成共享密钥,保证了彼此之间的安全通信.

本文实验中的收发节点配置的网卡均不相同,即使用的是异构设备,这更接近于现实中的场景.实验数据表明,相比于同构设备,异构设备由于制作工艺的差别,硬件性能的差别等,使得数据相差很多.但在实际应用中,仍可以满足网络的需要,即在满足条件的密钥生成速率下生成具有符合条件的密钥串.最后得出的密钥串经过NIST随机性测试套件[15]的评估.

1 系统模型

本文提出的方案主要用于实现无线网络中两个合法节点之间共享密钥生成的场景,即配对密钥生成(Pairwise Key Generation).场景中除了涉及合法节点之外,还考虑了监听节点的存在.在本场景中,监听节点不但可以一直监听合法节点的通信,还可以探测合法节点之间的信道.而且,监听节点还知道密钥生成期间所涉及的所有算法以及相关参数.为了保证密钥生成过程的实现以及确保空间去相关性成立,需要设定监听节点只能监听,不能持续地阻断通信,也不可以距离合法节点太近.根据现有研究结果,监听节点和合法节点之间的距离不能少于半个波长.对于常见的2.412 GHz的信道来说,这个距离大约为6.25 cm.

图1为本文工作所涉及的系统模型.

图1 系统模型Fig.1 System model

对于该模型,可以用以下形式表达.

1) 发起者向响应者发起请求

rB(t)=sA(t)*h(t)+nAB(t),

(1)

式中:sA(t)和rB(t)分别为发起节点Alice的信道探测信号以及响应节点Bob的接收信号;h(t)为信道状态;nAB(t)为该通信过程的噪声.

2) 类似地,响应者在接收到探测信号后向发起者发起响应

rA(t+τ)=sB(t+τ)*h(t+τ)+nBA(t+τ),

(2)

式中:τ为此次通信过程与通信过程(1)之间的时间间隔.

3) 监听者监听过程(1)

rBE(t)=sA(t)*hAE(t)+nAE(t).

(3)

4) 监听者监听过程(2)

rAE(t)=sB(t)*hBA(t)+nBE(t).

(4)

式(2)中的τ实际上是两个节点探测信道的时间间隔,该间隔不能超过相干时间tc以保证两个节点获得信道状态是相同或近似相同的.综上,为保证物理层密钥生成过程能够在有监听者的情况下实现,需满足以下条件

(5)

式中:LAE和LBE分别为监听节点距离发起节点和响应节点的距离;λ为波长.

2 密钥生成方案

为了确保无线节点在彼此连接之后能够有效地实现密钥生成,本方案共包含以下步骤:信道探测,预处理,量化,信息协调以及保密增强.图2为本文提出的密钥生成方案.

图2 密钥生成流程图Fig.2 The flowchart of key generation

2.1 信道探测

为了确保节点能够高效地生成期望长度的对偶密钥,合法节点需要在方案初始阶段短时间内收集足够的信道采样.本方案中,发起者利用ICMP Ping程序向响应者发送大量的探测包,响应者在成功接收到每个探测包后立即回送响应.在探测阶段,为了保证信道探测期间信道的变化,两个节点中的一个节点位置固定,另一个节点围绕该节点在1 m~15 m范围内移动.另外,在完成探测之后,双方节点需要利用探测包的序号去除失效的数据,即丢弃丢包时造成的数据不同步情况.

2.2 预处理

完成信道探测并实现数据同步之后,两个节点需要对不同时间段内收集的数据进行评估,从而确定这些数据适合的量化过程.根据现有文献研究,信道状态变化大,所蕴含的熵更高且信道状态序列之间的相关性高,可以支撑更高水平的量化,从而生成更多比特位;反之,信道状态变化小,所蕴含的熵较低且信道状态序列之间的相关性低,只能使用较低的量化水平.

根据上述结论,预处理阶段使用标准差判断信道变化,流程简述如下:

1) 发起者确定子序列大小并将其发送给响应者;

2) 双方节点将各自的序列划分为指定大小的子序列,对于最后一个子序列,如果大小不满足则丢弃该子序列;

3) 发起者统计每个子序列的标准差;

4) 发起者根据每个子序列的标准差确定该子序列的量化参数的值,对于标准差越小的子序列,量化参数的值越大;

5) 发起者将每个子序列的量化参数发送给响应者.

2.3 量化

根据信道探测阶段的评估结果,发起者确定每个子序列的量化参数,然后将这些参数发送给响应者.量化阶段的每个子序列对应的阈值计算如下

(6)

根据计算出子序列的阈值,节点可以将满足条件的信道采样量化为0或1,不满足条件的信道采样则被丢弃,具体量化规则如下

(7)

2.4 信息协调

在量化阶段,发起节点和响应节点会从各自的信道状态序列去除部分不满足条件的信道采样,从而利用有效信道采样提取比特序列.然而,实际环境中的各种干扰会造成信道状态序列之间存在许多差异,使得由此获得的两个节点的比特序列之间会存在若干不匹配位;因此,节点需要在信息协调阶段纠正所有不匹配位获得公共比特序列.

文献[16]中提出的交互式Cascade方案是一个高效的信息协调方案,当需要处理的两个序列原始不匹配率不高于15%时,节点可以通过很少的交互纠正所有的不匹配位;然而,当两个序列原始不匹配率高于15%时,整个纠错过程会泄漏过多的有效信息,从而提高攻击者破解该公共比特序列的概率.因此,在执行Cascade方案之前,节点需要先使用Distillation方案消除部分不匹配位,从而确保执行Cascade方案时两个序列的原始不匹配率低于15%.

根据文献[4]分析,2~3轮Distillation方案可以将序列的不匹配率降低至10%以下.因此,本方案要求节点在信息协调阶段先执行3轮Distillation方案,然后使用Cascade方案获得公共比特序列.

2.5 保密增强

在信息协调阶段,发起和响应节点为了纠正比特序列之间的不匹配位,需要通过不安全的公共信道交换信息.如果这些信息暴露给攻击者,可能极大地提高攻击者破解密钥的成功率.因此,收发节点最终需要实现保密增强,从而去除泄漏信息带来的影响.

全域哈希函数是一种常用的随机数生成器.文献[4]所提出的保密增强方案就是基于2阶全域哈希函数.保密增强期间的参数均匀发起节点确定并通过公共信道发送给响应节点,从而确保两个节点利用相同的哈希函数处理信息协调阶段获得的公共比特序列.保密增强阶段生成的比特序列就是两个节点最终的共享密钥.

3 实 验

为了验证所提出的方案,进行了不同环境下的多组实验.图3为动态环境下两个实验获得的信道数据,由图中收发节点的信道数据变化趋势可以看出动态场景下获得信道状态序列之间的相关性十分显著.

图 3(a)和图 3(b)中的收发节点信道状态序列之间的相关系数分别为0.783 9和0.713 6.相比于静态场景,动态场景更适合利用无线信道物理层特性为节点生成共享密钥,因为此类场景中收发节点的信道状态不但具有更高的相关性,还具有更高的随机性,从而确保生成的共享密钥的私密性.

(a) 实验(1)

4 性能评估

本节以动态场景所获的实验数据为例,通过以下参数评估本文所提出的方案.

1) 误码率.误码率表示收发节点收集的信道状态量化之后获得比特序列之间的不匹配位占整个比特序列的比例,此处所涉及的比特序列还未经信息协调阶段处理.

2) 密钥生成率.该参数是指经过保密增强处理后,节点生成的共享密钥的长度与信道探测阶段收集的信道状态序列长度之间的比值.

3) 随机性.随机性用于表征密钥被破解的难易程度.本文采用NIST推荐的随机数测试套件完成,从中选择8个测试程序对共享密钥的随机性进行评估.

4.1 误码率

图4为对实验(2)数据采用不同量化过程后,收发节点生成的比特序列之间的误码率.

图4 误码率Fig.4 Bit mismatch rate

图4中level表示量化期间所使用的量化参数的取值情况,level=1时表示所有子序列使用相同的量化参数α,此时本方案实际退化为文献[4]所提的ASBG方案;level>1时表示量化期间共有level个不同的量化参数,此时,所有子序列根据标准差大小被分为level个水平并降序排列.量化参数同样按照降序分配给对应量化水平的子序列.结果表明,使用多个不同量化参数的情况所生成的比特序列之间具有更低的误码率.另外,当量化参数取值策略相同时,子序列长度越长,对应的比特序列之间的误码率越低.

4.2 密钥生成率

密钥生成率主要受误码率及比特序列的熵影响.图5为不同情况下收发节点利用实验(2)数据生成共享密钥的密钥生成率,图中所示的参数level意义与图4相同.结果表明,当收发节点使用多个量化参数自适应量化时,节点共享密钥的生成率更高.相比文献[4]所提的ASBG方案,本方案具有更高的密钥生成率.另外,由图中可以发现,当量化参数的取值策略相同时,子序列长度越长,密钥生成率越高.

图5 密钥生成率Fig.5 Key generation rate

4.3 随机性

NIST的随机数测试套件共包含15个统计测试,本文从中选择了8个测试对所生成的共享密钥进行随机性评估,从而判断这些密钥是否可以用于实现保密通信.根据NIST官方建议,所有选用的测试的P值均设为0.01,若测试结果大于P值,则表明通过该测试.表1列出了对实验(2)数据利用本方案生成的共享密钥通过NIST测试的结果.表中〈p,q〉表示子序列长度为p,量化期间的量化参数分为q个水平.例如,〈40,1〉表示预处理阶段节点将整个信道状态序列划分为多个长度为40的子序列,量化期间对所有子序列使用相同的量化参数进行量化的过程.另外,累加和测试(Cumulative sums)分为正反两种测试.结果表明该密钥通过了所有的测试,可以用于实现保密通信.

表1 密钥随机性评估结果Tab.1 Results of NIST randomness tests

4.4 安全性

本文提出的方案要求收发节点需要经历5个阶段生成最终的共享密钥.其中,密钥的私密性由无线信道的互易性、空间去相关性以及信道探测期间的信道变化保证.也就是说,攻击者如果不能距离合法节点非常近,就无法获取与合法节点相关的信道状态,即生成共享密钥的秘密源对于攻击者是未知元素.因此,即使密钥生成期间的所有算法及其对应的参数都是已知的情况下,攻击者也无法获取通过信道状态生成的密钥.

5 结 论

物理层密钥生成方案的性能显著地受信道探测阶段获得的信道状态的影响.鉴于此,根据在信道探测阶段,不同时段获得的信道状态序列的变化程度不同,本文提出了一个使用自适应量化过程的物理层密钥生成方案.对于变化显著的子序列,使用高水平量化过程,相应地,变化不明显的子序列则使用低水平量化过程.利用不同场景下获得的实验数据进行评估,评估结果也表明本文提出的方案可以高效地为无线节点生成共享密钥.

猜你喜欢
物理层监听密钥
幻中邂逅之金色密钥
幻中邂逅之金色密钥
英国风真无线监听耳机新贵 Cambridge Audio(剑桥)Melomania Touch
千元监听风格Hi-Fi箱新选择 Summer audio A-401
Android密钥库简析
利用Modbus协议实现垂直螺旋卸车机取料器自动调速方法
一种应用于5G基于LDPC码的物理层包编码
卫星通信物理层安全技术探析
基于智能布线的前沿技术及其网络应用
监听“有”道 ——杰夫(美国)