胡红彬,李 忠,刘建华,程刚
(国网四川省电力公司资阳供电公司,四川资阳 641300)
嵌入式系统设备与无线网络通信技术相结合,在实时数据传输中起着举足轻重的作用,同时也会对信息的窃取、欺骗和篡改带来安全隐患。由于不需要布线,操作方便快捷,维护费用低,因此无线网络通信已逐步替代有线通信技术。在通信过程中,数据加密是保证数据能安全有效传输的关键方法。目前文献[1]提出基于改进Rossler 方程的加解密系统,结合两端对称加密密钥序列,设计改进Rossler混沌系统。与不对称加密技术相结合,可以有效地解决密码系统所需的大量空间。通过模拟计算,得出了不同状态下混沌系统的密码性能,并得到了加密后的通信数据;文献[2]提出融合量子密钥加密系统,采用一次一密的量子密钥对局域网中的保密文件进行加密,可防止文件丢失。无线网络通信过程中的冗余数据很多,对冗余数据的处理是一个非常关键的过程,而这两种方法都不能很好地解决该问题。为此,提出了基于数据聚类的无线网络通信数据加密系统设计。其目标是聚类处理大量无线网络通信数据,并据此对各种数据的实际状况进行加密处理,由此获取安全通信密文。
设计了一个基于数据聚类的无线网络通信数据加密系统,该系统采用STM32 控制器,通过无线网络通信技术实现数据加密传输,该系统既能实现长距离、短距离通信,又能确保数据安全,在图1 中显示了硬件配置。
图1 硬件结构
由图1 可知,STM32 处理器主要负责数据的处理,确保数据的安全性,是系统的一个重要组成部分[3-4]。根据系统的需求,考虑到芯片的性能,选用了基于GPRS 的STM32 处理器,同时兼顾了功耗、高性能特点。为了实现网络的互联,远程监控中心必须对IP 地址进行访问[5]。在短距离和长距离通信过程中,充分发挥硬件模块的优势,这也是系统的一项创新[6]。
加密控制子系统采用了数据聚类技术,能有效地提高系统加密速度和强度。在密码控制中,由于密钥的不易传递,使得数据安全和快速传输成为可能。该系统采用了一个锁盒和一个门禁模块来完成对密码的控制,它的实施过程主要包括并行化处理和信息存储任务的控制[7-9]。数据处理节点的并行组件包括开始、结束、播放和再排列,每个数据集都有一个随机生成的密钥。根据锁盒基本原理,所有的文件块密钥都被保存在对应的密码箱中,只有有权限的用户才能使用[10]。每个文件块的密钥只有一个版本号,它确保了用户的权限变更,并且组成了顺序信息的组件节点,完成了数据处理组件的装载。而信息处理的任务是启动、停止、清除信息,并将信息保存到数据库中。
密钥管理子系统以静态方式向客户机分配网络协议密钥,并将其储存于客户机磁碟或无线网卡存储器中[11]。在客户端被破坏或被攻击的情况下,异常用户可以很容易地进入网络,而不能及时地察觉到其对网络的破坏[12-13]。一旦用户的密钥丢失,系统管理员必须对其进行再分配,这会对整个系统的部署产生很大的影响。
密钥管理子系统以STM32 为核心,设计了一种步进电动机的驱动电路,如图2 所示。
图2 基于STM32芯片步进电机驱动电路
由图2 可知,STM32 芯片通过驱动电路直接插入到插座内。密钥管理子系统在步进电机驱动下的工作原理:当步进电动机正向旋转时,按照10、11、12、13 接口顺序分别给1 端口脉冲值。当步进电动机反向旋转时,按照13、12、11、10 接口顺序分别给1端口脉冲值。该电路能消除存储于只读内存中的干扰网卡地址,并能实现对网络信息的加密传输[14]。
结合改进K-means 算法聚类无线通信数据,详细步骤如下所示:
步骤1:对无线网络通信数据进行规范化处理,再由人工选定初始分类数[15];
步骤2:根据初始分类数确定元素距离矩阵,由此确定初始聚类中心;
步骤3:确定一个元素,通过计算元素与各个初始聚类中心距离,可得到元素对应分组;
步骤4:更新分组的聚类中心,获取实际聚类中心;
步骤5:判断初始分类数是否满足最优分类值,以各个聚类中心之间距离为依据,公式为:
式中,o1、o2为实际聚类中心的类间距离;m表示聚类个数;n表示聚类项。
步骤6:实时调整聚类效果,以提升分类合理性,为通信数据加密处理提供数据支持。
对于聚类后的通信数据,使用三重加密法对其处理,使其形成密文[16]。设三个密钥分别是q1、q2、q3,加解密过程可表示为:
式中,C、M分别表示密文和明文;Hq表示用密钥q加密的数据;Sq表示用密钥q解密的数据。
在明文加密前需要与密文进行异或运算,公式为:
式中,R表示最终获取的密文字节。检查明文字节是否全部进行了加密,如果全部加密,则进行下一轮加密操作。
通信双方通过加密处理后,建立会话阶段,对大量无线网络通信数据加密,同时更新每次通信回合。更新机制不仅仅依赖于前一次的加密密钥,还依赖于通信一方传递的密文以及MAC 地址。通过验证能够保证通信回合的安全,随着密钥的实时更新,获取通信过程中被攻击者的伪造包。
为了防止密文和密钥同时落入攻击者手中,在对密文处理过程中,随机选取被插入的数字节。待通信一方接收到数据包后,可以获取相应加密位置,由此完成通信数据加密处理。
当无线网络通信节点接收到加密处理后的通信数据后,进行如下操作:
首先,检查无线网络的IDij是否合法,并检查加密聚类通信报告来源的真实性。然后,检查时间戳,假设无线网络通信每隔10 min 上传一次加密报告,检查时间戳是否在有效时间内,抵御潜在的攻击风险。各个阶段处理过程如图3 所示。
图3 各个阶段处理过程
如果无线网络IDij和时间戳Tij均是有效的,那么需要进一步检验聚类密文签名,公式为:
式中,Cij表示加密聚类通信密文;w表示无线网络通信数据量。所有满足该公式的聚类密文签名均是有效的,即聚类通信报告没有被攻击。
聚类所有无线网络通信节点的数据,得到隐私数据聚类密文,生成聚类密文签名,将该签名发送到无线网络服务器上,由此生成加密聚类通信报告。
对于基于数据聚类的无线网络通信数据加密系统设计性能的检验,需要在Windows 7 平台上进行编译、运行和调试,并通过命令窗口显示实验结果。
模拟一个无线网络通信过程,如下所示:当客户端向服务器发出请求时,该服务器将处理该请求,并将其结果反馈给客户端。服务程序经常在一个已知的地址上监听客户端的服务请求,在客户端向服务地址发送连接请求之前,服务处理器总是处于睡眠状态。此时“唤醒”服务能够对客户需求作出适当回应,该通信过程下所创建的程序如下所示:首先,在VC++6.0 中构建了一个应用程序框架,然后通过创建连接请求,生成一个界面,完成数据接收和传输,最终使用成员函数对象实现网络通信。
每一行的IP 地址和端口都是根据无线网络随机分配的,由此选取的明文信息和密钥内容如下所示:
初始信息:需要申请审核通过;
密钥信息:0x01,0x02,0x21,0x22,0x31,0x32,0x41,0x42。
理想情况下的加密实现过程如下所示:
输入随机数种子:345;
解密后得到的信息:需要申请审核通过。
以上述通信内容为研究环境,继续进行实验验证分析。
将文献[1]基于改进Rossler 方程的加解密系统、文献[2]融合量子密钥加密系统和基于数据聚类的加密系统移植到keiluVision5 上运行,再通过ISP 程序下载相关文件到STM32 处理器上。STM32 处理器通过串口与计算机调试串口相连接,并通过计算机显示器显示实验结果。三种系统的加密结果如图4所示。
图4 三种系统加密结果分析
由图4 可知,使用数据聚类加密系统能够得到准确加密信息,而使用其余两种方法在图中所标注的虚线框均是出现异常情况的信息,导致最终加密信息不是原始信息。
为了进一步验证系统设计的合理性,将其余两种系统与该系统的加密时间戳进行对比分析,结果如表1 所示。
表1 三种系统加密时间戳对比分析
由表1 可知,使用基于改进Rossler 方程的加密系统与理想时间戳存在00:29:00 的误差;使用基于融合量子密钥加密的加密系统与理想时间戳存在00:21:00 的误差;使用基于数据聚类的加密系统与理想时间戳存在00:01:00 的误差。
通过上述分析结果可知,使用基于融合量子密钥加密的加密系统与理想时间戳误差最小,说明使用该系统加密耗时较短。
设计的基于数据聚类的无线网络通信数据加密系统,在保证数据加密完整性基础上,改进密钥管理和存取控制机制,通过对系统验证分析,证明了该系统在无线加密环境中具有较好的加密性能。在系统加密方面,通过数据聚类虽然能够提升系统安全性,但是在运行时间上略有增长,因而需要在以后的研究中对其进行优化。