曾 玲 ,王 伟
(1.西南通信研究所,四川 成都 610041;2.中国电子科技网络信息安全有限公司,四川 成都 610041)
无线传感器网络(Wireless Sensor Network,WSN)是使用大量微型传感器作为感知、检查外部环境的末端节点,通过无线通信方式组成的多跳自组织网络,可协作地感知、采集和处理网络覆盖区域内被感知对象的信息,并发送给数据分析观察者。
水下无线传感器网络(Underwater Wireless Sensor Network,UWSN),顾名思义是将传感器节点部署在水面以下,对海洋、水域环境进行监测的网络。
21世纪是海洋的世纪,人类开始全面、充分探索认识海洋特性,合理开发利用海洋资源,海洋经济在各国经济中所占据的比重越来越大。在建设海洋强国的战略部署背景下,在提高海洋资源的开发能力、大力发展海洋经济的同时,需做好海洋生态环境的保护工作,以实现海洋经济的持续发展。另外,需做好海洋权益的维护工作,以维护国家领海安全。因此,水下传感器网络已成为各国研究重点。水下传感器网络可广泛应用于军事情报监测、海洋水文数据搜集、海洋资源勘探、水质污染监测、地震海啸预报和辅助导航等方面。
地面无线传感器网络一般使用无线电波进行通信。但是,电信号在水中传输衰减严重,且衰减速度随着频率的提高而加快。研究表明,遵循IEEE 802.11b/g(2.4 GHz)或 IEEE 802.15.4(868 MHz,915 MHz,2.4 GHz)协议的节点发送的无线电波在水中的传输距离为50~100 cm。30~300 Hz的超低频无线电波在水中的传播距离虽可达100多米[1],但其所需天线非常大,不适合传感器类小型设备,而光信号在水中将产生较大散射,也不适合水下传播。因此,水声通信是目前最适合的水下通信方式[2]。
表1为不同通信范围的水声信道带宽[1]。从表1可知,当想获得大于100 kHz带宽时,其传输距离小于100 m;当想传输距离达到1 000 km时,其带宽小于1 kHz。
表1 不同通信范围的水声信道带宽
地面无线电波在空气中的传播速度略低于光速,接近于光速3×108m/s。而声波在水中的传播速度仅为1.5×103m/s,比无线电信号传播速度低了5个数量级[3-4],因此水下传播时延大。此外,水声通信具有时空变特性,传播速度受海水压强、温度、盐度等物理特性的影响大。
声波在水面或水中传播时,受海底、海面反射以及折射的影响,导致同一声源发出的信号因沿着不同的路径传播,先后到达目的地而导致信号叠加,振幅、相位减弱,引起多径效应。
水流、船舶航行等原因会使传感器节点移动,由于声波的传播速度低,相对于无线电波而言,相同的移动造成的多普勒频移更严重。
受船舶航行产生的环境噪声等物理属性和水介质密度、温度、盐碱度等化学属性的影响,产生噪声干扰。
受多径效应、信道衰落、噪声干扰、多普勒频移等综合因素影响,导致水声信道误码率较高,误码率在10-7~10-3[1]。
水下传感器网络主要由水下传感器节点、水面网关、船载站点、中继卫星和岸上站点等组成,如图1所示。水下传感器节点主要负责探测、收集监测到的信息,并将收集整理的信息发给下一跳节点或水面中继设备,接收来自于船/岸上站点的控制命令并执行。水下传感器节点可分为水底节点、水中悬浮节点和自移动节点。水下节点布放于水底,布放后不再移动。水中悬浮节点依靠水面浮力装置或者锚系的方式悬浮在海面上中,自移动节点具有水下自主移动能力[2]。水面网关主要负责接收、汇总、整理来自于水下节点的信息,并将整理后的信息发船/岸上站点设备;接收执行或转发来自于船/岸上站点的控制命令。船/岸上站点主要负责接收、处理、分析网络内收集的信息,并向水下节点、水面中继发布控制命令。
图1 水下传感器网络组成
地面传感器网络可使用大量相对廉价的陆地传感器进行部署。而水下传感器节点因环境相对于地面复杂、恶劣,需进行特殊的物理硬件防护,以抵御水蚀、鱼群破坏等。部署于水下的传感器节点因更换困难,对其可靠性要求相对较高。另外,水下通信环境恶劣,误码率高,为提高通信可靠性,水下收发器的设计更复杂。特殊的硬件防护、高可靠性要求、复杂的收发器等,造成水下传感器节点造价昂贵。为节约成本,只能稀疏布放。
陆地传感器可以通过太阳能进行能量补充,而水下传感器却不能使用太阳能进行补充,只能使用一次性电池供电。加之水下接收端为补偿信道衰减而实施的信息处理技术复杂,所需消耗能量较多。
陆地传感器一般不需要对收集的信息进行存储,其存储空间较小。而水下传感器因要求在水下传输中断时进行数据存储,且要长期处于水下,因此存储能力相对于陆地传感器要求较高。
水下环境相对较恶劣,海水腐蚀、鱼群攻击、漂浮物碰撞以及其他因素等,都会导致传感器遭到破坏,故障率高于地面传感器。
水下传感器节点故障率高;随着水流或其他水下活动而漂移;设备昂贵,为节约成本,部署稀疏等原因,都将导致网络连通性较差。
地面传感器网络,部署区域的高度变化远远小于长度与宽带的变化。因此,地面传感器网络拓扑一般为二维网络。水下传感器网络有二维静态网络,将传感器节点用锚链固定在海底;也有三维静态网络,通过调整锚链的长度控制节点在水域中的不同深度,使节点的部署位置在长、宽、深三个维度均有变化。为了提高网络的覆盖性,加大网络监测范围,提高监测方式的灵活性,使用AUV作为监测节点。AUV将获取的信息通过其他临近AUV或固定节点传回水面网关,而由AUV节点组成的网络为三维动态网络[5]。
信息在信道上传输时不可避免会被有意或无意的监听。对于海洋水文数据搜集、水质污染监测、地震海啸预报等民用、科学研究信息被监听后不会导致破坏性后果的信息,可以不进行保护。对于海洋资源勘探等具有经济性或情报监测等具有军事性的数据,需要对传输过程进行机密性保护。可以选择信源加密、链路加密、网络加密等单一的加密方式或组合式加密。具体采用哪种,需根据网络拓扑、数据信息传输、融合方式等综合评估。
数据在传输过程中可能因信道误码被无意修改,也可能被攻击者为某些特定目的,针对某些特定数据段进行有意篡改。对数据的防篡改保护,不能做到不被篡改,只是在被篡改后接收方能正确识别。对于语音数据,因在信道上传输的为语音编码后的数据,个别数据的更改在完成语音解码后可能只是导致音量大小、音频的变化,或者为背景噪音,对接收者无影响或能正确判断,对此类信息可不进行完整性保护。对控制、调度、短信等数据信息,因被篡改后无法识别,且可能导致南辕北辙的后果,对该类信息需进行完整性保护,以确保被篡改后能正确识别。
数据在开放信道传输过程中,被攻击者截收,在后续时间再一次或多次发送给对端设备。若协议未进行抗重放设计,接收设备将无法判断信息的时效性,可能造成网络被大量重复报文堵塞;节点因处理大量的重复报文而无谓地消耗本就稀少的能源,当能量销毁殆尽,节点提前报废;执行旧的控制指令,造成节点失控等。抗重放安全性设计,可采用时间戳、序列号、随机数挑战等方式。
假冒节点进入网络,收集汇总网络内的有效信息占为己用,或发送假冒信息给其他节点,造成整个网络收集汇总分析假冒信息,得出不真实的评估报告,扰乱网络的正常运行。可以采用身份认证的方式防止节点假冒。
水下传感器网络常根据位置信息进行网络路由。例如,基于深度路由协议(DBR),每个中间节点在收到信息后,计算自身与目的节点的深度差,根据深度差计算信息的持有时间。深度差最小的节点持有时间最短,即优先发送数据。其他中间节点在监听到转发数据包后,将收到的转发信息丢弃。若假冒节点杜撰自己的深度信息,该节点收到的任何转发数据报文均将持有时间设为最短,将导致有效路由被破坏,信息传输路径被延长,中间节点能量被消耗,网络资源被占用。
传感器节点部署在广域的水下,无人值守。攻击者可以通过监听信道来确定发射源的位置,从而俘获节点。攻击者通过探测、采集、分析节点内存储的密钥等密码资源,对节点俘获前/后信道上传输的信息进行破译,破坏网络的安全性。为减小节点被俘获的威胁,可采用隐藏、伪装节点机制。为减小个别节点失控后对网络造成的风险,需从整个网络的安全防护体系入手,建立防丢失防护体系。
为确保信息的机密性,需采用密码算法对信息进行加密保护。为确保信息的完整性,可采用算法进行完整性校验与验证。为对数据源或节点的身份进行确认,可采用算法对身份进行核实。上述机制均涉及到密钥、密码算法的产生、分配、使用与维护等管理保障问题。水下传感器节点能量有限,补给困难,为节约能量、延长节点的使用寿命,需减小密码算法运行复杂度,以减小能量消耗;节点存储空间小,簇点作为中间枢纽承担着中继、数据融合的重任,需与多个传感器节点密码互通,因此不适合采用预制大量密钥的方法;节点在不受控的水域内部署,易被俘获,并探测系统内使用的密码资源,对系统造成威胁。因此,在进行特殊应用领域密钥体制设计时,需解决防丢失的问题,满足单个节点被俘后对系统的安全影响小的设计要求。
无瞄链固定的水下传感器节点具有随着水流移动的特性,随着位置的变化,进入新的网络;损坏或能量耗尽的传感器节点退出网络,新的传感器节点进入网络;AUV节点的活动范围更大,可以航行在不同深度,与不同的节点进行通信。所以,水下传感器网络是一个动态网络,节点随着位置的变化随意接入新的网络。恶意节点进入网络后,可以在链路层发起冲突攻击或耗尽攻击,增多传输路径,降低信道质量而引入高误码;持续发送请求信息,耗费节点能量,从而减少网络生存期。可以在网络层发起贪婪攻击、汇聚攻击、黑洞攻击[5]等,使网络数据流入黑洞而丢失,破坏网络的正常通信。因此,在动态组网网络中,需对接入网络的节点进行身份认证,确保授权节点进入网络。
所谓的安全协议,并不仅仅是指采集信息的传输安全,应包括网络建立、维护、运行过程中,为确保水下传感器网络的安全正常运行所涉及的所有协议。
传感器节点的使命是收集、采集周围信息并发送给下一跳节点。因此,传感器节点收集的信息需与自身的位置信息相结。基于地理位置的路由协议,其路由算法的基础也是节点的位置信息。因此,位置定位信息的安全可靠是采集信息可靠可用、地理位置路由有效高效的前提。
地面节点可以通过GPS获取定位,而水下节点由于无线电波的快速衰减而无法使用,可采用测距定位算法和非测距定位算法[1]进行。测距定位算法主要依赖于将到达信号时间差转换为测距差。有些测距定位算法依赖不同节点间的时间同步。另外,安全协议中的时间戳、数据融合中数据的时间标记、带有睡眠机制的MAC层协议等,都需要不同程度的时间同步[5],因此安全时间同步对该类网络尤其重要。
水声信道带宽窄,在传播距离小于0.1 km的超短距离下,带宽也仅有100 kHz。当想获得较远距离时,带宽也相应减小。密码协议的设计需在原有通信协议的基础上增加额外字段,用于传输同步数据、校验数据、时效数据等。为有效利用信道资源,增加信道传输有效率,需在确保安全可达的前提下,缩减上述开销。在密码算法正确性运行中,密码同步是核心。目前,水声信道的高误码和可提供信道资源小,给密码同步带来了挑战。
水下传感器节点无法通过太阳能、电源系统进行供电、充电,只能使用蓄电池给节点设备提供能源输入。具有隐蔽需求的水下节点,其节点体积受控,蓄电池的容量相对而言更小。因此,要求每一个设备尽可能减小功耗,以延长蓄电池的使用时间。设计协议时,可采用计算复杂度低的协议。另外,可通过休眠管理、低功耗芯片、未用管脚/接口关闭等方式降低功耗。
节点能量小、体积小,所选用的芯片必然存储资源小。因此,要求密码算法和密码协议代码对程序、数据空间的占用少。
综上所述,轻量型密码协议应包括占用信道资源少、计算复杂度低、占用程序/数据存储空间少等多个方面。
随着对海洋资源的进一步开发与利用,水下传感器网络必将迎来更广阔的使用前景,应用范围也将不断扩展。水下传感器网络应用广泛,不同的应用环境、不同的数据特性对安全的要求不同。在进行安全体系设计时,需根据具体的应用环境,结合水声信道带宽窄、误码率高,水下传感器节点能量有限,补给不便等特点进行灵活定制,以减少不必要的对能量、存储空间、计算能力、资源占用方面的浪费,增强网络的安全性,延长节点的使用寿命,节约网络部署、维护成本。