基于混沌的智能塔机数据远传加密算法的应用研究
2022-10-26王鹏飞WANGPengfei刘世涛LIUShitao陈公正CHENGongzheng史云飞SHIYunfei
王鹏飞 WANG Peng-fei;刘世涛 LIU Shi-tao;陈公正 CHEN Gong-zheng;史云飞 SHI Yun-fei
(中建八局第二建设有限公司,济南 250014)
0 引言
塔机在我国现代化建设中扮演了举足轻重的角色,其广泛应用于建筑、交通等领域的物料运输场合。近年来,随着互联网及智能化技术的飞速发展,塔机相关技术依旧停留在数年前的水平,发展并不迅速,其功能、安全保障措施、工作流程和商业模式水平还有很大的提升空间。随着无线通信技术尤其是5G通信技术的发展,其高速率、低延迟和大连接的特点非常适用于对可靠性、安全性和实时性要求较高的工业场合,那么,采用远程遥控的方式驾驶塔机逐步得以实现。智能遥控塔机技术将司机从塔机上面的司机室解放下来,使得塔机的驾驶操作更为简单直观,可以进一步实现塔机的自动化运行,大大提高了塔机的安全性和工作效率。
智能遥控塔机的无线通信技术一般采用3G/4G/5G数据流量通信、Wi-Fi通信、小无线通信或其他高稳定性无线通信的一种或多种。在工程现场,如何确保信号的稳定性,保障塔机遥控驾驶的安全稳定运行是至关重要的,目前也有较多的针对性研究。但是,针对智能塔机无线传输数据加密的研究较少,原因可能是工程现场一般比较偏远,数据受到恶意读取和入侵的可能性较低。即便如此,数据传输的安全性也不能被忽视,因为一旦塔机的传感器参数和控制指令遭到恶意篡改,则极大地影响智能塔机运行的稳定性,甚至出现事故造成人员伤亡。
本文所提出的基于混沌的智能塔机数据远传加密算法,实现了塔机远传数据的加密,在没有获取正确密钥的前提下,无法解密数据,更无法干扰和入侵数据包,确保了智能塔机数据传输的安全性。
1 混沌加密
1.1 混沌映射
Logistic映射是一种简单的动力系统,目前应用较广,其定义如下:
其中,X是迭代计算结果,λ是常量。分析混沌动力系统发现,当X∈(0,1)且λ∈(3.469,4]时,工作于混沌态。分析Feigenbaum分叉图也可以得出上述结论,如图1所示。
图1 Feigenbaum分叉
图2则显示了初始值分别是X=0.667(实线)和0.687(虚线),且常量λ=3.899时,相应的Logistic映射输出值。图3则显示了参数初始值是X=0.667且不同的常量λ=3.899(实线)和3.755(虚线)时,相应的Logistic映射输出值。从图2和图3可知,当Logistic映射处于混沌状态时,其初值敏感性和参数敏感性良好,可用于迭代数据加密。
图2 初值敏感性
图3 参数敏感性
1.2 基于Logistic映射的加密解密算法
①加载需要加密的二进制数据序列,以bit为单位,得到初值序列{S(i)},一共i个bit;②采用唯一的初值X和常量λ分别用迭代方程X=λX(1-X)进行迭代计算,一共计算i次,得到结果{X(i)},则{X(i)}一共含有i个数据;③得到密钥{X,λ};④对{X(i)}中的每个数据做判断,生成{Y(i)},其对应关系是当X(i)≥0.5时Y(i)=1,当X(i)<0.5时,Y(i)=0;⑤做异或运算,{Z(i)}={S(i)}XOR{Y(i)},得到加密结果{Z(i)},完成加密;⑥传输含有{Z(i)}的加密数据包;⑦接收者采用事先约定好的{X,λ}密钥,采用迭代运算得到{Y(i)};⑧做异或运算,{S’(i)}={Y(i)}XOR{Z(i)},得到计算结果{S’(i)},完成解密,即{S’(i)}应等于{S(i)}。
2 智能塔机数据序列
目前,建筑行业针对塔机的安全生产设置有塔机监控系统,该系统由塔机远程监控管理平台、塔机检测仪主机(一般包括主机板、塔机状态显示器、视频监控显示器、通信模块、传感器接口、指令接口、视频接口等)、各种传感器如高度传感器、幅度传感器、重量传感器、回转传感器、倾角传感器、风速传感器、风向传感器等等,多个监控摄像头如吊钩监控视频、卷扬机监控视频、驾驶室监控视频等等所组成。该系统塔机检测仪主机端按照功能主要分为塔机黑盒子部分和视频监控部分,均可以实现相应重要参数的无线上传。其中,塔机黑盒子主要监控塔机相关参数包括:重量、高度、幅度、角度、倾角、空间限位、防碰撞等。
最近,塔机监控系统功能得以扩展,即在原有硬件的基础上增加或者升级相应的通信技术,使得塔机驾驶员在不需要攀爬至塔机驾驶室的情况下,在地面上同样可以使用遥控器进行遥控。为了考虑该种塔机驾驶的安全性,原有塔机监控系统必须采用无线通信技术和手持遥控器进行参数共享,显然,无论是采用云服务器中转的方式,还是采用网络直连的方式,其数据传输的安全性是非常必要的。保障这些数据的安全性,首选的方式即为数据加密技术。
智能塔机及其无线远程遥控器的数据传输是双向的,即遥控端须将驾驶控制信号传送至塔机,而塔机须将传感器、五限位等信息传送至遥控端,其结构如图4所示。
图4 塔机遥控系统结构
由于塔机监控系统和遥控端装置大多都以ARM Cortex-A系列的处理器为核心,其浮点运算能力大大增强,即便进行浮点数的迭代运算,也不会影响控制指令和传感器数据传输的实时性。
这里以上述系统需要传输的关键参数为例,讲述数据序列的构成。
2.1 控制指令序列
控制指令序列主要是由遥控端向塔机发送的控制指令,基本控制指令一般有升降控制、变幅控制、回转控制、紧急制动等,智能塔机的诸如障碍物设置、障碍物预警和避障、多塔机防碰撞等智能化功能,均由以上基本控制指令经过运算后达成。
2.2 传感数据序列
传感数据序列主要是由塔机向遥控端发送的状态数据,一般有:第一,五限位状态,分别是高度限位、幅度限位、回转限位、重量限位和角度限位,该类数据均由相应的专用设备生成;第二,塔机参数,分别是设备序列号、塔臂高、塔顶高、前臂长、尾臂长、塔机中心坐标、吊钩位置坐标、倍率、起重量、安全起重量、额定力矩、力矩百分比、标准节、驾驶员信息等,该类数据是人工设置和存储的;第三,传感器状态,主要包括的数据如表1所示。第四,报警信息,分别是报警优先级状态、各传感器越限报警、倾翻报警(前倾、侧倾、后倾等)、障碍物接近预警、障碍物高度报警、多塔机碰撞报警等等。
表1 传感器数据
上述数据一般由塔机监控系统从相应的传感器、设备或者存储单元中读取,或者人工设置,扩展无线通信接口后,采用一定的算法加密后传输至无线远程遥控器。
3 试验验证
3.1 数据加密
以部分传感器数据为例,实现混沌加密和解密。传感器数据、类型和精度分别是:温度(双字节、精确到0.1℃)、湿度(双字节、精确到0.1RH%)、风速(双字节、精确到0.1m/s)、风向(双字节、精确到1°)、吊重(双字节、精确到1kg),一共10个字节。私有协议中,凡是精确到小数点0.1位的数据,分别做乘以十处理。
假设在某时刻,上述传感数据分别是:30.3℃、47.2RH%、1.2m/s、120°和1500kg,即为数据的初始序列,其对 应 的 十 六 进 制 分 别 是:{S(80)}={0x2f,0x01,0xd8,0x01,0x0c,0x00,0x78,0x00,0x05,0xdc},一共包括10个字节,共有80个bit,即i=80,也就是迭代次数。
取X=0.1155,λ=3.851,构成密钥{0.1155,4.851},进行迭代运算,得到80个数据运算结果是{X(80)}。
做判断,当X(80)≥0.5时Y(i)=1,当X(80)<0.5时,Y(80)=0。将{Y(80)}按位组合为十六进制格式,得到{Y(80)}={0X2E,0XBE,0XEF,0XBD,0X75,0X77,0XFB,0XF5,0XFE,0X6B},共10个字节。
执行异或运算,{Z(80)}={S(80)}XOR{Y(80)},得到{Z(80)}={0X01,0XBF,0X37,0xBC,0X79,0X77,0X83,0XF5,0XF2,0XB7}。
{Z(80)}即加密数据的结果,可以通过无线通信方式从塔机传至遥控端。
3.2 解密步骤
遥控端接收到塔机发送来的数据{Z(80)}。由于共享密钥{0.1155,4.851},遥控端进行混沌迭代计算80次,得到运算结果{Y(80)},将{Y(80)}和{Z(80)}进行异或运算,即{S’(80)}={Y(80)}XOR{Z(80)}={},{S’(80)}即为结果。
经对比,{S’(80)}与{S(80)}完全一致,数据解密成功。
3.3 密钥的匹配
由于塔机和遥控端需要共享相同的密钥,显然,密钥并不能随着控制指令和传感数据实时传输,一般由塔机和遥控器首次绑定匹配时一次性确认,密钥数据在值域内随机取值。若需要重新确定密钥,则将塔机和遥控器解除绑定后重新匹配即可。另一方面,密钥也可以由塔机驾驶员以权限密码的形式,人工输入到塔机监控系统中。密钥的匹配方法并不仅限于上述两种,只要能保证密钥不泄露,并且塔机和遥控端能够共享同一个密钥即可。
4 结论
提出了一种基于混沌的智能塔机数据远传加密算法,算法流程明确了数据的加密算法、数据的解密和密钥的匹配方法,实现了智能塔机双向远传数据的加密。利用混沌加密特性,使得在没有获取正确密钥的前提下,进行密钥的暴力破解、数据包入侵、数据解密等可能性非常低,数据安全可以得到全方位的保障。经过试验验证,本算法适用于保障智能塔机的数据安全可靠传输。