【技术实现步骤摘要】
一种实时以太网总线式工控系统的数据加密通信方法
[0001]本专利技术涉及工业控制及数控
,涉及智能制造系统中数控机床、机器人、自动化生产线等装备的总线式控制系统应用,特别地,涉及一种实时以太网总线式工控系统的数据加密通信方法。
技术介绍
[0002]由于以太网通信技术在工业控制领域的渗透,基于总线式工控系统架构的通信问题得到广泛研究,从工业控制系统的控制性能、安全性以及可靠性等方面逐步改善。实时以太网总线的引入也使得系统的安全性和安全性要求高于普通总线式系统。目前,实时以太网工业控制系统已成为工控领域的主流控制系统。传统总线式工业控制系统中总线数据的传输主要以控制命令、实时位置状态等设备运行数据为主,很少考虑这些运行数据传输的安全加密问题。
[0003]随着网络攻击行为的不断加剧,如何在确保总线式工业控制系统主从站间通信的实时性、同步性等功能的基础上,提高工业控制系统总线数据传输的安全防护性能,保证以“互联网+制造”为特点的智能制造系统中数控机床、机器人等自动化设备的安全运行,已成为智能制造装备研发与应用企业面临的主要问题。
技术实现思路
[0004]基于此,本专利技术提供了一种适用于总线式工业控制系统的高速高安全数据加密通信方法。该数据加密通信方法施加于系统各节点间的总线通信过程之中,将CANopen通信协议与实时以太网总线相结合,能够保证总线数据传输性能实时性、同步性的同时,提高系统通信的整体安全性及可靠性。
[0005]为实现上述目的,本专利技术提供了一种实时以太网总线式 ...
【技术保护点】
【技术特征摘要】
1.一种实时以太网总线式工控系统的数据加密通信方法,其特征在于,适用于总线式工业控制系统中主站模块和各个从站模块之间的以太网总线实时数据传输,基于实时以太网通信链路层通信协议及CANopen通信规范,对主站模块和各个从站模块中的对象字典数据采用Blowfish数据加密算法进行加密后形成加密数据帧,再由以太网总线进行数据传输;对主站模块,包括主站模块向各个从站模块发送控制指令的加密过程和各个从站模块向主站模块发送反馈状态数据的解密过程两个方面;对各个从站模块而言,相应的也包括主站模块向各个从站模块发送控制指令的解密和各个从站模块向主站模块发送反馈数据的加密过程两个方面;采用Blowfish数据加密算法对主站模块和各个从站模块之间需要总线传输的对象字典数据进行实时加密,包括加密过程的和解密过程;Blowfish数据加密是按照密钥KEY生成子密钥,再按子密钥对原始数据xl和xr进行处理,最后生成加密数据xl*和xr*的过程;其中,密钥KEY由用户设置,子密钥由迭代计算产生,以两个32位的一维和二维数组pbox[round+2]、sbox[4][256]的加密盒形式表示,round表示加密轮次数;S1、加密过程包括:S11、按照密钥KEY对pbox加密盒进行初始化;S12、数据加密:当pbox初始化完成之后,将该需要加密的数据分为两组,并合成两个32位数据xl和xr;利用pbox和sbox对xl与xr进行每轮的加密运算,得到每轮加密的中间数据;当xl和xr所有轮次的加密处理完成之后,再将其与pbox进行运算,并将生成的xl*与xr*组合为原始data数组对应的元素,即得到最终的密文data*;S2、解密过程包括:S21、按照密钥KEY对pbox加密盒进行初始化;S22、对接收到的的密文进行数据解密:将步骤S12生成的密文data*中的元素分解为两个32位数据xl*和xr*;利用pbox和sbox对xl*与xr*进行每轮的解密运算,得到每轮解密的中间数据;当xl*和xr*的所有轮次解密处理完成之后,再将其与pbox进行相关运算,并将最终得到的xl*与xr*还原为原data*数组对应个数的元素,即得到最终解密之后的明文数据data。2.根据权利要求1所述的一种实时以太网总线式工控系统的数据加密通信方法,其特征在于,步骤S11和步骤S21中对主站、从站内部的pbox加密盒初始化采用相同的处理方法,具体为:对于长度为N个字节的密钥KEY的,先用密钥KEY对pbox进行轮次数为round的初始化运算,计算公式如式(1)所示:
其中,i表示pbox的元素顺序号,j表示KEY中元素的顺序号,data1、data2、data3、data4为中间变量。3.根据权利要求1所述的一种实时以太网总线式工控系统的数据加密通信方法,其特征在于,在步骤S12数据加密过程中,符合CANopen协议的对象字典数据帧data由data[0]、data[1]、data[2]、data[3]、data[4]、data[5]、data[6]、data[7]需要加密的8字节数据,首先将该8字节数据分解为两个32位数据xl和xr,具体如式(2)所示:利用数据盒pbox和sbox对两个32位数据xl和xr按式(3)进行多轮加密运算:其中,i表示当前加密轮次,变化范围从0累加到round
‑
1;d[0]
‑
d[3]、temp以及Dk(xl)表示用于计算的中间变量;当xl和xr所有轮次的加密处理完成之后;按照下式(4)再将其与pbox进行运算,将xl与xr组合为与原数据帧d...
【专利技术属性】
技术研发人员:范大鹏,陈凌宇,朱文亮,何爱华,范世珣,任广安,张连超,谢馨,
申请(专利权)人:中国人民解放军国防科技大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。