团队科研成果分享
2023.09.18-2023.09.24
标题: AUV-Assisted Stratified Source Location Privacy Protection Scheme Based on Network Coding in UASNs
期刊: IEEE Internet of Things Journal, vol. 10, no. 12, pp. 10636-10648, 15 June15, 2023.
作者: Hao Wang; Guangjie Han; Yulin Liu; Aohan Li; Jinfang Jiang.
分享人: 河海大学——李俊俪
01
研究背景
BACKGROUND
研究背景
海洋作为国家整体安全的新疆域,已成为各国争夺竞争战略、扩大增长领域、寻求竞争力的关键区域。水声传感器网络(Underwater Acoustic Sensor Networks,UASNs)由于其体积小、易于部署和成本低等优势已成为更好地利用海洋资源的重要渠道。在水下部署的源节点定期向汇聚节点提供监控数据以保证水下事件监测系统正常运行。然而,UASN在无人值守的环境中运行易导致源信息被跟踪,随后也会暴露源地址和监控目标。在这种情况下,保护UASN源的位置隐私是至关重要的。
传统的安全技术使用基于密码学的方法对消息进行加密以对抗可以通过窃听获得包内容的对手。然而,智能攻击者可以在仅对消息内容进行加密的情况下记录和分析被窃听的数据包,并通过分析消息地址段的相关性来跟踪通信源的地址,这种加密方案不能确保源位置的隐私性。此外,攻击者可以利用数据挖掘技术在截获消息后推断出监控目标的敏感信息,甚至可能涉及到网络的底层拓扑信息,根据这些信息跟踪并获得目标的位置。因此,研究和设计基于UASN特点的源位置隐私保护策略,是保障网络安全,促进UASN技术进一步发展,为提高智慧海洋安全奠定基础的必要条件。
02
关键技术
TECHNOLOGY
关键技术
本文提出了一种基于网络编码的分层源位置隐私保护方案(Stratified Source Location Privacy Protection Scheme Based on Network Coding, SSLP-NC)。针对被动攻击者,分别针对源位于浅水区和深水区提出了假源选择算法。然后,每个节点利用伪随机数生成器定期创建序列,以便将关键数据不受干扰地传递到接收器。针对主动攻击者,节点使用预存的伪随机数序列作为编码向量对源和假数据进行加密,以阻止攻击者的解密。此外,本文提出了一种中继节点选择方法来传输编码数据以增加数据传输路径的多样性。为解决潜在的空洞问题,本文提出了一种利用节点或AUV的空洞规避机制。
该方法的创新和贡献如下:
1. 本文针对源节点出现在浅水区域和深水区域的两种情况,提出了不同的选择机制以满足作为假源的要求。在深水区域中,假源生成假数据包,并允许用源生成的数据对它们进行编码以提高源数据的安全性。
2. 提出了一种基于伪随机数的时隙分配算法,将关键数据包和假数据包分配到不同随机和不可预测的时隙进行传输以避免伪造数据包对关键信息传输的篡改。
3. 设计基于时延和剩余能量的中继节点选择策略,增加路径多样性,平衡网络能耗,缩短传输时延。此外,传输节点建立多个数据传输通道,每轮只决定一个唯一的下一跳,确保传输路径的私密性。
03
算法介绍
ALGORITHMS
算法介绍
1. 系统模型
A. 网络模型
图1 网络模型
如图1所示,UASN由几个部分组成:水声链路、水面汇聚节点和水下传感器节点。海面上设置了一个汇聚节点,它通过水声链路接收来自水下传感器节点的数据,并通过无线电链路将数据发送到其他汇聚节点或岸上的数据中心。传感器节点随机部署在水下区域,收集相关数据并进行使用用于传输信号的水声通道聚集在汇聚节点。
本文将网络水域划分为浅水区和深水区,构建的UASN的基本假设如下:
1)节点在网络中的分布是随机均匀的,在计算存储容量和通信半径上,这些节点是相同的。此外,不需要分析汇聚节点的资源情况。
2)每个节点有自己固定的ID号,汇聚节点的ID号为0。每个水下节点以下沉节点为坐标原点,通过深度信息和主动定位技术获取自身位置坐标。
3)假设网络是时间同步的,首选传输频率为F的半双工模式。节点在不同的时间段分别发送和接收数据包。
4)一旦目标对象被监视,立即触发离被监视对象最近的节点成为源,并定期向SINK报告被监视对象的信息。
5)由于海浪的干扰,节点在网络中移动缓慢,一段时间后邻居关系和路由路径发生变化。然而,海洋的速度不够大,节点不会离开网络的范围。
B. 水声通信模型
陆地上使用的通信技术应用于海洋的效率可能大大降低,并且信号传输可能受到影响。海水产生的多径效应、海洋中的浮游生物和水下反射都会对信号产生影响。在这种情况下,水声通信技术应用于海洋虽然声音在水下的传播速度接近1500米/秒,但海洋的深度、温度、盐度和其他变量都会影响声音在水下的传播速度。此外,本文的算法考虑到水声声速是可变的,对网络进行分层。节点间的传输受噪声等多种因素的影响,因此声通道通常会衰减。在传输一段距离的数据时,丢包量为A(d,f)=A_0d^ka(f)^d。其中,a(f)为吸收系数,f为发射频率,d和k为传输距离和传播损耗。a(f)满足下式:。
获取噪声后,信噪比为SNR(d,f)=P/A(d,f)/N(f)B。
C. 对手模型
对手既可以进行被动攻击,也可以进行主动攻击,但被动攻击是优先考虑的,这是因为网络会及时实施入侵检测,主动攻击更容易被检测到。被动攻击有窃听攻击、回溯攻击,而有针对性的主动攻击则是数据包的解耦。以下假设考虑了网络中对手的行为:
1)对手有一个很好的监听设备,可以记录它所遍历的节点和偷听的数据包。此外,它还可以通过分析记录的数据包来解密数据包。
2)基于自身包含的监听装置,攻击者采用逐跳回溯的方式监听本地的通信信息。
3)相对于数据包的传输速度,攻击者的移动速度相对较低,在获取数据包后,攻击者向源移动了一个节点。
4)基于大多数位置隐私保护方案的设置,假设网络中只有一个对手。
2. SSLP-NC方案
该方案是针对既能进行被动攻击又能进行主动攻击的攻击者而设计的。考虑攻击者可以通过记录和分析已经被窃听的数据包来解密数据包加密,本文在AUV的辅助下提出了SSLP-NC方案,采用源包与假包混合后的NC方法,提高了源包的保密性。出于安全考虑,节点传输具有第一优先级,AUV传输具有第二优先级。
A. 网络初始化
接收节点向整个网络广播一个信标Hello报文,其中包括节点ID号、跳值和时间点。节点收到启动信号后,对该跳值加1,在初始保存的跳值上加1后,节点尝试匹配该值。如果电流高于先前记录的电流,则节点将其丢弃。节点将当前跳值作为自己的跳值,如果当前跳值小于最初的跳值,则从存储空间中删除原来存储的跳值。然后,该节点将其跳值在附近尚未收到信号的节点之间进行通信。最后,每个节点接收到它和汇聚节点之间的跳值。从节点i到汇聚节点的传输延迟用表达式τ_i,SINK (n)表示。然后,每个节点指定它传送数据包的频率。接收节点向整个网络广播候选频率消息,接收消息的节点从中选择一个频率。然后,它将自己选择的邻居和一跳邻居的邻居广播给其他邻居节点。同时,节点跟踪两跳距离内的邻居选择的频率,以确保它们不相同,这有助于实现后续的无冲突传输。
B. 假源的选择
深水区:传统的假信源选择策略不能动态控制假信源的数量,因此提出了一种深水区的新的假信源选择策略。假源选择策略步骤如下:
1)选择剩余能量较多的节点。更多的剩余能量可以保证节点能够完成假报文发送任务,节点可以运行更长的时间;
2)寻找激活可能性较低的过去节点。历史激活概率低的节点的剩余能量往往较大,同时防止了攻击者根据历史排除该节点作为源而不再返回的可能性;
3)从t开始,源广播假源选择包。当其他节点收到此数据包时,它们决定是否成为假源,并将此选择消息广播给它们的邻居。
此外,如果假源离真源过近,它将无法实现引诱对手远离真源的功能。因此,本文考虑以下限制 :
1)源通信范围内的节点不能为伪源,它们只转发请求消息;
2)为了节约成本,所选的伪源之间要保持足够的距离。
浅水区: 针对监测目标在浅水区活动的情况,提出了一种基于虚拟壳的假源选择策略。
图2 虚拟壳模型
如图2所示,源坐标为S(X_S,Y_S,Z_S),汇聚节点可能位于坐标系B(X_B, Y_B,Z_B) =(0,0,0)的原点,网络中的节点可以通过主动定位技术获得其坐标。虚拟壳shell范围的表达式为R^2_min≤x^2+y^2+z^2≤R^2_max。式中,R_min为虚拟壳的内圆半径,设与节点的通信半径重合,R_max表示虚拟壳的外圆半径。
图3 2-D虚拟壳模型图
如图3所示,当节点被激活后,首先根据中继节点选择策略选择合适的下一跳节点i来发送报文。如果到达的节点SP_i满足R^2_min≤x^2+y^2+z^2≤R^2_max,则节点SP_i根据剩余能量和向sink传输的延迟选择虚拟壳内最优的下一跳节点j。如果节点j在源S所在象限的对角象限。节点j转换为假源SP_j,并将数据传输到接收器。基于剩余能量选择中继节点可以增加路径的多样性,考虑传输时延,可以减小假源到接收端的侧时延。本文要求假源位于源所在的对角线象限内,是为了保证假源远离源以避免攻击者追踪。
C. 基于伪随机数的槽位分配
为了获得更好的安全性能和避免传输冲突,本文提出了一种基于伪随机数的时隙分配算法。生成器的相同内部状态允许它们连续产生相同的随机数序列。
由于节点的能量和存储能力有限,本研究采用直接的线性同余方法生成序列,使序列具有周期性。该随机数序列称为伪随机数序列,其周期长度取决于加密参数的选择。最后,递归式为z_n = (az_n-1+ b) mod m,其中z_0表示主值,a, b, m表示序列生成器选择的加密设置。每个伪随机数是不同的,序列的值在区间[0,m]上。生成的序列为{z_0,z_1,z_2,…,z_m}。关键数据包的插槽为{1+z_0,1+z_0+z_1,…,1+z_0+z_1+…+z_m,1+z_0+z_1+…+z_m+z_0,…,},未使用的插槽用于假数据包。
D. 基于源假混包的网络编码算法
针对主动攻击,本文结合NC技术,提出了一种基于源包和假包混合的NC算法,将网络中的源包和伪包混合进行线性网络编码。考虑一个场景,其中节点NC_i节点在关键报文传输时隙中获取源报文s_1,节点NC_i将在下一个假报文传输时隙中继续保持接收节点状态,假设节点NC_i收到假报文a_1, a2,…,a_n。节点NC_i首先对源数据包和伪数据包的混合物进行线性编码,以获得编码后的数据包c_1,单独编码假报文c^’_1,汇聚节点可按下解码源数据包s_1=(c_1-c^’_1)/z_0。由于水下传输环境不可靠,数据包容易丢失。因此,节点NC_i在发送编码后的报文之前重新进行网络编码以确保sink能够成功接收到编码后的报文。节点NC_i使用Shamir算法将待转发的原始数据包切割成M个信息块进行传输。攻击者在进行信息传输时截获不少于T个共享才能获得原始数据包。
同样,在浅水区,源端使用Shamir算法将接收到的源数据包分成M个信息块分别进行传输,基于剩余能量和传输延迟来选择后续跳转发节点,因此,每个信息块可以到达不同的伪源SP_j。伪源SP_j将接收到的信息块沿剩余能量较大、延迟较短的路径传输到汇聚节点。最后,汇聚节点根据接收到的信息块还原源数据包。
E. 基于中继节点选择的路径多样化策略
本文设置节点传输优先级,由于水中数据流较多,基于AUV的传输为第二优先级,攻击者可能无法确定哪一个是源数据流。此外,为了避免隐藏终端造成的碰撞,本文在数据包传送前使用握手协议。在路径分散开始时,多个AUV将源数据转发到随机选择的节点。然后,接收源数据的节点作为启动器执行网络编码。n-hop节点i在发送密钥报文之前,首先向邻居发送RTS控制报文,节点在网络启动阶段选择的频率包含在RTS控制包中。在节点i的唤醒下,其通信范围内的所有可访问节点发送CTS消息作为响应,并调整到合适的频率f,准备接收数据包。CTS由汇聚节点的传输延迟、自己的ID号和剩余能量组成。n跳节点找到n-1跳最优候选节点u,表示为
式中,E_j(n−1)表示节点j跳数为n−1的剩余能量,E表示节点的主能量,τ_j,SINK(n-1)表示节点j与SINK之间的延迟。
F. 基于竞争数的空洞规避机制
如果网络中出现空洞问题,网络链路极易中断,降低了空洞投递率。因此,避免漏洞问题是保证汇聚节点能够成功接收源数据包,降低隐私保护算法延迟和能耗的关键步骤。本文引入竞争数AF来避免传输路径出现漏洞。竞争数表示节点之间争夺下一跳中继节点的竞争程度。竞争数越高的节点竞争性越强,竞争成功的概率也越大。在节点j到sink的跳数为n-1的跳数范围内,n-1跳节点在向n跳节点响应CTS报文时,计算自己的竞争数,并将结果插入到CTS中。n跳节点对收到的所有CTS报文的竞争数进行评估,选择竞争数最高的n-1跳节点发送数据包。此外,在传输过程中,可能会出现多个n跳节点同时选择同一候选节点的情况。在这种情况下,n-1跳节点选择竞争数较小的n跳节点接收报文,使报文尽可能远离漏洞区域。
04
实验结果
EXPERIMENTS
实验结果
A. 实验设置
本文利用MATLAB对UASN环境进行仿真。在1500m×1500m×1500m模拟环境中,大量传感器节点均匀随机分布,通信半径为200m,初始能量为100J,发射功率为1.78W,接收功率为0.2 W。实验设置10个通道,带宽为1kb/s,数据包大小为256字节,控制数据包大小为16字节,水流速度为2.5m/s。
B. 浅水区下R_max对网络安全时间、网络效率和能耗的影响
图4 浅水区下R_max对网络安全时间、网络效率和能耗的影
从图4(a)可以看出,R_max越大,网络安全时间越长。这是因为R_max越大,虚拟外壳的范围就越大,可以选择作为下一跳转发节点的候选节点也就越多,从而增加了外壳内报文传输路径的多样性。从图4(b)可以看出,R_max越大,网络效率越高。R_max越大,速度就越慢,这是因为经常需要额外的跳数来将数据包转发到伪源,会花费更多的时间。从图4(c)可以看出,R_max越大,能耗越大,这是因为当R_max越大时,数据包传输到网络中汇聚节点的路径往往更长,消耗的能量越多。
C. 深水区下L对网络安全时间、网络效率和PDR的影响
图5 深水区下L对网络安全时间、网络效率和PDR的影响
从图5(a)可以看出,网络边缘长度L越长,节点越多,网络安全时间越长。这是因为当网络边缘长度L一定时,节点越多,在同一时间窗内它们越有可能成为假源。此外,网络将有更多的节点参与源包和假包的转发,这使得攻击者能够定位源包流量,增加网络的安全时间。从图5(b)可以看出,网络边缘长度L越长,节点越多,产生的EED越大。随着仿真场景的扩大,节点之间的平均距离和源到汇聚节点的平均距离也会增大,平均EED增加,因为数据包在到达sink之前必须等待和转发多次。从图5(c)可以看出,增大网络规模,PDR会减小。当节点数量保持不变且仅扩大网络规模时,节点呈随机分布,那么它也增加了节点之间的平均距离,从而降低了PDR。
D. 深水区下R对网络安全时间、网络效率和PDR的影响
图6 深水区下R对网络安全时间、网络效率和PDR的影响
从图6(a)可以看出,水下节点的最大通信距离增大,网络的安全时间逐渐减少,因为源和接收之间的跳数更少,攻击者更容易追踪。从图6(b)可以看出,随着最大通信距离的增大,节点平均跳数、平均源报文发送数和EED值都将减小。节点在整个通信区域以较小的延迟和更多的能量向节点发送数据包。从图6(c)可以看出,随着最大通信距离的扩大,有更多的周围节点和更多的候选节点可用于转发数据包,从而有更多的数据包转发选项。
E. SSLP-NC与EECOR和DBR-MAC算法下网络安全时间和PDR比较
图7 SSLP-NC与EECOR和DBR-MAC算法下网络安全时间和PDR比较
从图7(a)可以看出,在深水区时,SSLP-NC在相同节点数量下网络安全时间最长,DBR-MAC报文总是沿着固定的最短路径传输,因此网络安全时间最短,EECOR在选择中继节点时考虑了节点的剩余能量,增加了路由路径的多样性,在一定程度上提高了安全性。从图7(b)可以看出,在浅水区时,SSLP-NC在相同节点数量下网络安全时间最长。从图7(c)可以看出,SSLP-NC在相同节点数量下PDR最高,这是因为SSLP-NC算法在选择下一跳转发节点时考虑了节点的相邻节点数量,有效地减少了由于传输路径上水流造成的空白,而EECOR和DBR-MAC算法没有设计任何漏洞处理方案,在产生漏洞问题后,数据包可能会被丢弃或重复发送。
F. SSLP-NC与EECOR和DBR-MAC算法下EED比较
图8 SSLP-NC与EECOR和DBR-MAC算法下EED比较
从图8(a)可以看出,在一定分组速率下,EED随着网络长度的增加而增加。当包速率达到0.3时,增长率下降。这是因为数据包速率可能会影响时隙的分配,更多的数据包需要分配一个时隙以避免干扰,因此延迟的性能一开始并不好。从图8(b)可以看出,在固定的分组速率下,EED随着通信半径的增加而增加。当通信半径不大时,延迟主要是由于时间序列的调整造成的,因此会影响后续的线性网络编码。当通信半径变大时,减小了序列确定的负担,因此,EED不会增加太多。从图9(c)可以看出。由于准备路由的时间(即顺序的确定时间)的原因,SSLP-NC在一开始的性能并不好。当序列确认后,与EECOR和DBR-MAC相比,特别是在报文发送速率较快的情况下,由于时间序列的复用,降低了报文传输效率。
05
总结
CONCLUSION
总结
基于无线局域网中监控目标的位置隐私保护需求,本文提出了一种基于AUV的SSLP-NC算法。该算法首先将网络划分为浅水区和深水区,针对不同的区域提出了不同的假源选择机制。然后,本文提出了一种基于伪随机数的时隙分配算法,对源数据包和伪数据包进行混合编码,以提高源数据包内容的保密性。针对攻击者容易通过固定路径跟踪关键数据包的问题,本文提出了一种基于中继节点选择策略以增加的传输路径的多样性。最后,该算法提出了基于竞争数的空洞规避机制以提高网络的整体通信质量。
END
扫描二维码关注我们
==河海大学网络与安全实验室==
微信搜索:Hohai_Network
联系QQ:1084561742
责任编辑:何宇