水下声呐通信安全研究
2021-08-24翟月琛张东钥
吴 晖,翟月琛,张东钥
(中国电子信息产业集团有限公司第六研究所,北京100083)
0 引言
21世纪以来,人类对海洋资源的开发利用以及海洋权益日益重视。海洋资源的勘探与开发、海洋环境监测、军事对抗等现代海洋高新科学技术已成为各海洋大国研究的重要领域[1-2]。任何海洋技术的应用都离不开对海洋数据的采集与传输,水声是海洋中无线信息传输的主要技术手段[3]。水声通信及网络可灵活地应用于不同的速率载荷、覆盖距离、水体深度、网络结构的情景,实现水下不同空间位置多个通信节点间的信息交互[4]。水声通信即水下声呐通信,由最初的水下声呐探测衍生,现为水下声呐通信探测一体化设备。现阶段,其通信种类向多方向发展,有水下组网、潜漂标探测、遥控遥测等[5]。
水下声呐通信具有传输速率低、误码率高、延迟高、信道窄等缺陷,特别容易遭受恶意攻击。因此,水下通信安全是一个不容忽视的重要问题,特别在军事应用方面,保证通信安全更是需要首先考虑的问题[6]。尽管目前针对水声通信安全问题的研究仍处于起步阶段,但越来越多的研究人员意识到安全问题的重要性,开展了相应的研究工作。文献[7]重点介绍了水下无线传感器网络的安全要求、威胁模型以及需要解决的安全问题;文献[8]重点研究了AES加密算法和轻量级遥控无人潜水器的软硬件设计,给出了水下环境数据采集及加密传输的测试结果;文献[9]提出了一种基于椭圆曲线的密钥管理方案和一种基于混沌理论的分组加密算法,并对算法的抵抗攻击能力和资源消耗情况进行了分析,验证了对水下通信网络的适用性;文献[10]提出了一组新的8-bit S盒设计,新S盒不仅提供强大的加密标准,还针对 TI进行了优化;文献[11]总结了轻量级分组密码算法的设计准则与目标,并给出设计软件轻量化或硬件轻量化算法的一些指导性思想。
本文针对水下声呐通信系统安全防护等级较弱的现状,根据水声通信特点,分析了水下密码装备的发展趋势。然后,从保护数据机密性角度出发,设计了一型密码样机和一种轻量级密码算法,用于水下声呐通信安全技术的演示验证,为未来水声通信系统配备密码系统奠定研究基础。
1 水下声呐通信系统
现水声通信设备主要分为三类[12],分别为:
(1)水声通信一体化平台:从人机交互界面到信号发声装置(换能器)集成一体,具有探测、语音和电报功能。
(2)水下潜标:分为电子组(信号处理)、传感器组和电池组,具有探测、信息传送、节点组网等功能。
(3)水下modem:独立声呐设备,外供电,通过422串口完成数据收发。
目前,这些水下装备没有密码系统防护,信息安全无法保证[13]。未来水声通信必须将密码系统设计考虑其中,并一同考量,这也是国家海洋战略规划论证提出的重点问题。整个密码系统由终端密码机和密钥分发设备组成,对水下通信系统的控制信道和业务信道同时进行保护,实现信息化密码保障,如图 1所示。
图1 水下通信安全保密分系统示意图
水下密码装备发展趋势[14]:
(1)小型化、低功耗
水下无人潜艇、浮标站等装备平台,需要密码装备小型化和低功耗,嵌入到装备的通信单元中,能够长时间自主工作,为设备提供数据存储和传输的安全保密防护。
(2)无人值守、防丢失
水下装备(除有人潜艇外)的最大特点是可控距离近、境外使用或者长时间无人看管,丢失风险大,密码装备的抗丢失和无人值守设计尤为重要。
(3)密码算法轻量设计、密码保障简单化设计
水下无线通信带宽窄,通信速率受水下复杂环境影响大,通信距离近、速率慢。水下密码装备要适应水下通信的特点,密码算法要轻量设计,且满足水域范围大、不易保障的特点,做到设备可丢失,丢失后对整个密码系统无影响。
(4)智能化
水下装备的发展趋势是无人化、智能化,密码装备作为保障水下装备通信安全的设备,也需要智能化设计,以满足水下智能化要求,以及密码装备自身的智能化安全防御增强等。
2 水下声呐通信密码样机设计
在前述背景下,现以水下modem为例设计一型密码样机,用于水下声呐通信安全的演示验证。系统采用信源端进行信息加密,加密后由通信系统处理发送,解密反向同理。通过加密、鉴别等密码保密技术手段,为水声通信系统传送的各种业务信息提供完善的密码保密功能。
2.1 硬件设计
密码样机主要由电源处理单元、CPU、DDR2接口电路、Flash接口电路、实时时钟电路以及4路串口通信电路等组成,如图2所示。模块外接12 V电源,电源处理单元将12 V电源转换为模块所需电压。CPU(神州龙芯GSC3280)最小系统为核心处理单元,负责加解密处理及密钥的注入、销毁等功能。4路RS232串口用于密码模块的调试、资源注入、管控指令收发以及业务数据收发等功能。密码样机在硬件设计上合理选型与布局,元器件国产化率达100%。
图2 密码样机硬件框图
2.1.1 电源处理单元
电源处理单元为整个模块提供3.3 V、1.8 V、1.2 V三种电压,如图3所示。采用上海贝岭BL8033实现12 V转 3.3 V,再利用中电58所的JPC62065实现 3.3 V转 1.8 V、3.3 V转 1.2 V,满足 3.3 V电源先于1.2 V电源上电的时序要求。这两款芯片的优势在于:宽电压输入范围;电源转化效率高,均在90%以上;超小封装,节省布板面积;宽工作温度范围,具有较好的环境适应性。
图3 电源处理单元框图
2.1.2 Flash接口电路
Nor Flash和Nand Flash的硬件原理如图4所示。利用GSC3280芯片的SPI1接口拓展一片16 MB容量的 Nor Flash,作为系统 Boot、内核以及文件系统的存储单元,芯片采用兆易创新GD25Q128CSIGR。利用GSC3280芯片的SPI0接口拓展一片512 MB容量的Nand Flash,作为用户数据文件的存储单元,芯片采用兆易创新GD5F4GQ4UCYIGR。
图4 Flash硬件原理图
2.1.3 RS232接口电路
利用 GSC3280芯片的 uart0、uart2、uart3和 uart7,外接 2片电平转换芯片(深圳国微 SM3232),构成四路RS232串口,分别用作调试、资源注入、管控指令收发以及业务数据收发,RS232硬件原理如图5所示。
图5 RS232硬件原理图
2.2 软件设计
密码样机软件采用分层模块化设计,遵循“高内聚、低耦合”原则,以提高软件模块的独立性和可继承性。密码样机软件架构主要包括通信层和服务层,如图6所示。通信层实现样机对外基本通信功能,包括业务通信接口模块、管理控制接口模块、注入接口模块、销毁接口模块以及硬件设备驱动模块等。服务层实现样机的主要功能,包括主控、系统运行维护、管理服务和加密服务等模块。
图6 嵌入式软件架构
2.2.1 通信协议
通信系统调用密码样机实现各类业务信息加解密,为提高数据传输正确性,采用帧结构来降低数据包在传输过程中的误码率。水下声呐通信安全演示验证阶段的数据包采用变长消息格式设计,拟定的帧结构如表1所示。
表1 数据帧格式
2.2.2 工作流程设计
软件启动后,首先进行必要变量、密码资源以及设备接口的初始化工作。然后,创建三个并行线程,即注入线程、管控线程和业务线程。注入线程实现密码资源注入与密存,管控线程实现自检、入网管理、资源销毁等管控功能,业务线程实现业务数据加解密。本文主要对水声通信业务数据加密传输进行演示验证,故此处主要介绍业务线程工作流程,如图7所示。主要有以下步骤:(1)对接收到的业务帧做合法性校验;(2)判断合法帧是明文还是密文,若是明文,则调用算法进行加密,若是密文,则调用算法进行解密;(3)对加密/解密后的数据重新组帧发送给宿主设备。
图7 业务线程工作流程图
2.2.3 轻量级密码算法
针对水下无线通信带宽窄,通信速率受水下复杂环境影响大,通信距离近、速率慢,资源有限且不易保障等特点,研究轻量级密码算法,为水下通信提供全方位保障。该算法整体上采用Feistel结构,分组长度为 128 bit,密钥长度为 256 bit[15],结构如图8所示。轻量级密码算法按以下步骤运行:(1)将输入分为左右两个64 bit分支,分别异或子密钥;(2)每一分支分别进行ROUND2变换,也就是两轮SP结构的ROUND函数变换,然后将左分支异或到右分支上,再交换左右分支的位置,此为一步操作,共循环10步(第10步每一分支上进行的为ROUND2-FINAL操作,且无左分支向右分支异或操作)。
图8 算法整体加密结构图
本文采用的轻量级分组密码算法代码量仅6.1 KB,且可通过算法库文件的替换/调用实现算法重构。经过理论与实验分析,在轮数达到算法总轮数的2/3时,单条差分特征的差分概率≤2-128。在轮数达到算法总轮数的2/3时,单条线性特征的线性相关度≤2-64。算法能够抵抗差分攻击、线性攻击、不可能差分攻击和零相关线性攻击等密码攻击。加解密算法能够通过完全性和扩散性检测。
3 测试与验证
针对水下数据加密传输的要求,以及对轻量级分组密码算法的验证需要,在实验室环境下搭建水下声呐通信安全演示验证平台,实物效果如图9所示。
图9 水下声呐通信安全演示验证平台
系统主要由2个水下modem、2部密码样机、1台调试单机和若干直流电源组成,工作流程与连接关系如图10所示。
图10 系统工作流程与连接关系
测试时,水下 modem功率设置为“-30”(对应发射声源级为 153 dB),通信速率设置为 39 b/s。发送端输入962个随机字符,调用密码样机进行加密,然后由发送端modem将加密后的信息发送出去。结果显示:加密该字符串信息共耗时70 ms,平均加密速率107 kb/s。接收端modem接收到密文后,若不调用密码样机进行解密,则无法获取真实信息。结果显示为乱码。此时,接收端必须调用密码样机对密文进行反向解密,才能还原真实信息,结果显示:原始信息为962个字符,与输入端字符串完全一致,解密共耗时 70 ms,平均解密速率107 kb/s。
演示验证时,还对密码样机在线资源销毁功能进行了测试,结果完全符合预期,本文不做详述。
4 结论
本文针对水下通信系统没有密码系统的现状,考虑水下通信特点,研制了一型密码样机,用于水下声呐通信安全技术的演示验证。从验证结果来看,采用轻量级分组密码算法的密码样机保证了水下modem的通信安全,且满足通信速率要求。这在一定程度上为今后的水下通信网络安全研究奠定了基础,下一步将利用此平台对水下信息安全防护技术做进一步研究,包括低功耗、小型化、水下组网以及防打捞智能销毁等。