[发明专利]基于Modbus协议的数据并行加密通信方法和系统有效
| 申请号: | 201510846844.2 | 申请日: | 2015-11-27 |
| 公开(公告)号: | CN105515758B | 公开(公告)日: | 2018-08-17 |
| 发明(设计)人: | 张红梅;黄剑;张向利;陈俊彦;李世文;刘国良 | 申请(专利权)人: | 桂林电子科技大学 |
| 主分类号: | H04L9/06 | 分类号: | H04L9/06 |
| 代理公司: | 桂林市持衡专利商标事务所有限公司 45107 | 代理人: | 陈跃琳 |
| 地址: | 541004 广西*** | 国省代码: | 广西;45 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 基于 modbus 协议 数据 并行 加密 通信 方法 系统 | ||
1.基于Modbus协议的数据并行加密通信方法,其特征是,包括如下步骤:
步骤1、配置应用程序,即根据数据采集站点的实际需求,产生配置信息表;
步骤2、根据配置信息表里的信息对数据采集站点的设备运行信息进行采集,所采集到的数据为明文数据;
步骤3、利用基于GPU的动态选择的改进SM4并行加密法对采集到的明文数据进行加密;即
步骤3.1、利用AES-128密钥扩展法生成SM4加密法所需的32个扩展密钥;
步骤3.2、随机生成1个32位的随机数G;
步骤3.3、利用GPU进行并行SM4加密,即将明文数据分成每块128比特的数据分组,一个数据分组的加密任务分配给一个GPU线程;每个GPU线程再进行32轮循环迭代加密处理,在每轮循环迭代加密处理时,根据迭代的轮数确定随机数G的对应位置,并根据随机数G的该位置上的取值选取加密轮函数;
步骤3.4、将各个GPU线程加密输出的数据按分块的前后顺序进行组合后形成密文数据;
步骤4、将数据采集站点的密文数据发送给中心监控系统;
步骤5、中心监控系统接收到数据采集站点发送的密文数据;
步骤6、利用基于GPU的动态选择的改进SM4并行解密法对密文数据进行解密;即
步骤6.1、利用GPU进行并行SM4解密,即将密文数据分成每块128比特的数据分组,每个GPU线程解密一个数据分组;每个GPU线程再进行32轮循环迭代解密处理,在进行32轮循环迭代解密处理时,根据随机数G对应位置上的取值,动态选择解密的轮函数;
步骤6.2、将各个GPU线程解密输出的数据按分块的前后顺序进行组合后获得明文数据;
步骤7、将解密所得的明文数据进行显示,以获得数据采集站点的设备运行信息。
2.根据权利要求1所述基于Modbus协议的数据并行加密通信方法,其特征是,步骤3.1中,扩展密钥只需要产生一次,该扩展密钥在各个GPU线程加密过程中循环使用。
3.根据权利要求1或2所述基于Modbus协议的数据并行加密通信方法,其特征是,步骤3.1中所述密钥扩展的具体过程为:
步骤3.1.1、将128bit的初始密钥按照列顺序组成4个32bit的字,分别记为w0-w3;
步骤3.1.2、在初始密钥的基础上依次新增31个字wj,每一个新增的字wj的值依赖于wj-1和wj-4,即:
当j除以4的余数不为0时,
当j除以4的余数为0时,
步骤3.1.3、利用上述产生的字生成SM4加密算法中用到的扩展密钥,即扩展密钥rki=wj+4;
上述j=4,5,6……35;i=0,1,…,31;g()是一个复杂函数。
4.根据权利要求3所述基于Modbus协议的数据并行加密通信方法,步骤3.1.2中,复杂函数g()的计算过程如下:
步骤3.1.2.1、将字wj-1以字节为单位,排列表示成[B0,B1,B2,B3]的形式,并将[B0,B1,B2,B3]循环左移一个字节,变换成[B1,B2,B3,B0];
步骤3.1.2.2、利用AES的S盒对输入字的每个字节进行字节替换,变为[B’1,B’2,B’3,B’0];
步骤3.1.2.3、将产生的结果[B’1,B’2,B’3,B’0]与轮常数进行异或输出;
上述j=4,5,6……35。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于桂林电子科技大学,未经桂林电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510846844.2/1.html,转载请声明来源钻瓜专利网。
- 上一篇:自适应动态量化的生物密钥生成方法
- 下一篇:一种RSA-CRT签名方法及装置
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置





