基于离散混沌映射的嵌入式远程数据加密传输方法*
2022-08-17郑振峰
郑振峰
(陕西国防工业职业技术学院,陕西西安 710300)
1 引言
从通信特点来看,现代智能嵌入式远程数据采集与监控系统的无线通信仍面临严重的安全威胁。数据通信节点的存储和通信能力具有一定局限性,尤其是在嵌入式远程系统中,对于数据加密方案而言,在减少存储空间和计算量方面必须满足轻量级的要求,操作系统的安全漏洞可能因为网络边界的不确定性而被利用。这一漏洞存在于单机时代的整个嵌入式远程系统中,破坏力十分有限。但是在互联网时代,这些漏洞使系统非常容易受到攻击,一次攻击就会威胁到整个系统。以往采用的是基于改进MQTT协议的加密算法[1],其本质上就是将物联网设备端与服务器端随机生成自己的私钥,然后相互通知对方自己的私钥并通过算法组合成最终的会话主密钥,通过DES加密、解密,传输安全数据,模拟了敌手A、B 对数据传输过程进行攻击,验证了在会话密钥生成算法没有泄露的前提下MQTT-EA是安全的。但是该方法的数据位置错乱,不能改变实际的传输位置,因此这种加密方法有可能被攻击者破译,大大降低了数据加密传输安全性。针对该问题,本文提出了一种基于离散混沌映射的嵌入式远程数据加密传输方法。离散混沌映射具有伪随机、确定性特点,且对初始条件和参数极为敏感,为数据传输加密提供快速简单新途径。
2 嵌入式远程数据加密传输方案设计
数据加密是嵌入式远程操作与维护中的一个重要环节,该模型集成了嵌入式远程终端设备绑定、数据采集、数据加密、数据解密、数据双向传输等功能,实现了数据远程传输[2]。数据加密传输步骤如下所示:
步骤一:嵌入式远程终端绑定
基于移动电话的终端设备,增加了红外、RFID、GIS、测压等软功能终端。每一个终端都具有唯一IMEI,这样终端就能保证与远程系统自动连接,保证无线公网能够安全连接到远程平台上进行设备管理[3-4]。
步骤二:数据采集
主要采用加密方式进行数据采集,是验证密码结果重要依据。结合GPS、RFID、QR码扫描等技术,实现移动数据的采集与聚合。在保证了数据采集及时性的同时,通过智能数据梳理采集,强化了移动维修作业指导工作规范[5-6]。
步骤三:数据加密、解密
采用离散混沌映射技术对数据进行加密,使远程数据传输更加安全可靠。采用IDEA 加密技术,在已有算法基础上,增加了移动设备IMEI数据。在此基础上,增加了手持终端验证能力,提高了返回数据安全性和可控性[7-8]。其中包括数据加密模块、数据解密模块和数据验证模块等内容,图1中显示了加密和解密过程。
图1 加密、解密流程图
(1)数据加密模块
在传输前进行数据加密是指在传输终端和远程平台之间实现加密,通过使用IDEA来优化IMEI验证过程,从而加强了返回数据优化过程。与单纯无序相比,离散混沌是一种复杂动力行为。其内部结构丰富,无明显周期性和对称性。
由于其非周期、宽频谱连续性和类噪声等特点,使得离散混沌信号自然不会被发现,而由非线性算法产生混沌信号可以在加密算法中提供大量密钥,从而产生序列密码。序列码是一个混沌加密密码,它用字符对明文信息进行加密,混沌序列是一个非线性序列。该方法简单、确定性强、不含任何随机因素,迭代后结果完全随机,对参数动态变化和初始值极为敏感。加解密钥相同,其计算格式为:
公式(1)中,{Cn}、{Kn}、{Pn}分别表示加密密文、密钥、解密密文信息序列。
在基于离散混沌映射的加密模型中,采用了路径迭代后加密算法。将迭代初始条件作为密钥,取一段待加密明文,计算明文和迭代密钥,得到密钥。图2中显示了序列加密设计过程。
图2 序列加密设计流程
由图2可确定加密流程,具体内容为:①选取适当密钥,代入离散的混沌映射方程,产生混沌序列;②当得到的密文从发送者传送到接收者时,在该序列和待加密的明文信息之间执行异或操作;③选择相同的密钥,重复步骤①;④将步骤③产生的混沌序列与密文序列进行异或运算,得到明文序列。
(2)数据解密模块
解密模块是在终端和远程平台接收到加密数据后,有针对性地解密加密的数据。加解密过程中,要对IMEI 信息进行解密和验证。
离散混沌映射是一个简单而又被广泛研究的动态系统,又称虫口映射。最初的数学模型是:
为了计算方便,令:a=b=μ,由此得到如下关系式:
该模型起初用于描述种群变化,其中Xn表示当年种群数,Xn+1则是下一年种群数,μ为增长参数,初始状态X0与参数μ为种子密钥。
离散混沌映射是一维非线性映射,它能满足信号达到混沌状态要求,对混沌问题研究具有普遍性和重要意义。当参数μ 在[3.57,4.00]之间时,所生成的混沌序列具有较好的随机性,即混沌效果最佳。图3中显示了模拟对比结果。
图3 种子密钥在3.60-4.00之间混沌效果
(3)数据验证模块
将采集到的终端数据传输到确认阶段,判断嵌入式远程数据加密维护工作是否按照要求完成。
步骤四:数据传输
该终端将数据采集与加密结合在一起,在远程平台上实现了远程验证。通过终端装置IMEI,采用4G 传输技术,回传移动用户数据到远程平台上,直至恢复到确认到远程平台为止。
3 嵌入式远程数据位置置乱
嵌入式远程数据位置置乱加密的基本思想是通过改变数据位置实现加密,当数据置乱发生时,一般采用混沌序列发生器产生实数序列,量化后产生置乱地址码,并对其进行位置变换。基于离散混沌映射的置乱加密能有效地扩展密钥空间,同时具有良好的统计特性,进一步提高加密数据的抗解密能力。嵌入远端数据置乱技术是利用数据矩阵的特性对数据进行置乱,使数据排列混乱,达到保密目的。
置乱算法如下所示:
(1)设嵌入式远程数据矩阵R,大小为m×n,从离散混沌映射中产生长为m的混沌序列:x={x1,x2,x3,…,xi,…,xm},长为n的混沌序列y={y1,y2,y3,…,yi,…,yn},对x,y序列进行大小排序,生成位置序列Z1、Z2。
(2)进行如下数据置乱,将Z1、Z2作为数据矩阵R行序和列序。该算法利用离散混沌映射生成两组混沌序列来构造置乱矩阵,从而减少了置乱矩阵生成时间,有效地缩短了加密处理时间。
4 对比实验分析
为了验证基于离散混沌映射的嵌入式远程数据加密传输方法研究合理性,将文献[1]提出的基于改进MQTT 协议的加密方法作为对比方法,进行实验验证分析。
4.1 置乱数据位置分析
选取7 个嵌入式远程数据,分别为E1、E2、E3、E4、E5、E6、E7,将这些数据进行置乱处理,期望得到的数据位置依次为:E1→E7、E2→E1、E3→E2、E4→E5、E5→E3、E6→E4、E7→E6。
由于受置乱数据影响,基于改进MQTT 协议的加密方法对网络数据进行加密的效果较差,而采用基于离散混沌映射的嵌入式远程数据加密方法则不受外部置乱数据影响,有很好加密效果。要检验这一点,两种方法都需要在置乱数据干扰下进行对比分析,如图4所示。
由图4可知:使用基于改进MQTT 协议的加密方法将E1、E2、E3、E4、E5、E6、E7数据进行置乱处理,得到的数据位置依次为:E1→E4、E2→E3、E3→E1、E4→E6、E5→E5、E6→E7、E7→E2。根据置乱结果可知,使用该方法数据并未发生置乱现象。
图4 两种方法数据加密对比结果
使用基于离散混沌映射的嵌入式远程数据加密方法将E1、E2、E3、E4、E5、E6、E7数据进行置乱处理,得到的数据位置依次为:E1→E7、E2→E1、E3→E2、E4→E5、E5→E3、E6→E4、E7→E6。由置乱结果可知,使用该算法可将全部数据置乱。
4.2 传输、接收数据安全吞吐率分析
分析E2、E3两个位置变换对嵌入式远程传输、接收数据大小安全吞吐率影响进行分析,分析结果如表1、2所示。
表1 两种方法下E2、E3两个位置变换对传输数据吞吐率影响分析kb/s
由表1和表2可知,使用改进MQTT协议加密方法随着数据增大,传输数据吞吐率也持续增大,当数据为512kb时,传输数据吞吐率在E2数据置乱情况下达到最大为10000kb/s。随着数据增大,接收数据吞吐率也持续增大,当数据为为512kb时,传输数据吞吐率在E2、E3数据置乱情况下都达到最大为12500kb/s;使用离散混沌映射加密方法随着数据增大,传输数据吞吐率变大,当数据为512kb时,传输数据吞吐率在E2数据置乱情况下达到最大为7500kb/s,接收数据吞吐率在E2 数据置乱情况下达到最大为5200kb/s。使用改进MQTT协议加密方法在整个加密过程中数据未受到置乱影响,抗解密性差,而使用离散混沌映射加密方法在整个加密过程中数据全部置乱,抗解密性强。
表2 两种方法下E2、E3两个位置变换对接收数据吞吐率影响分析kb/s
4.3 加密效果对比分析
基于上述分析内容,分别使用改进MQTT 协议加密方法和离散混沌映射加密方法分析数据加密效果,对比结果如表3所示。
表3 两种方法加密效果对比分析
由表3可知,使用改进MQTT协议加密方法的加密效果在传输和接收数据过程中,加密效果始终低于0.70,而使用离散混沌映射加密方法的加密效果传输和接收数据过程中,加密效果始终高于0.90,通过分析内容可知,使用该方法加密效果较好。
5 结束语
基于离散混沌映射的嵌入式远程数据加密传输方法具有较高保密性,利用该方法来完成了对数据加密,在嵌入式远程数据位置置乱时,会根据加密不同产生的密钥值,在解密时作为解密密钥的辅助密钥使用。由实验结果可知,该方法传输加密效果良好。
虽然使用基于离散混沌映射加密传输方法具有良好加密性,但由于混沌信号迭代处理中所产生的序列具有随机性,因此导致运算量变大,无法保证数据传输时服务器与转换模块数据交互实时性。因此,在今后研究进程中,以此为基础展开深入分析。