[发明专利]一种基于FPGA的动态数据加解密实现方法有效
申请号: | 201911059711.5 | 申请日: | 2019-11-01 |
公开(公告)号: | CN111049639B | 公开(公告)日: | 2022-10-28 |
发明(设计)人: | 王成群;仇光强;徐伟强;贾宇波 | 申请(专利权)人: | 浙江理工大学 |
主分类号: | H04L9/06 | 分类号: | H04L9/06;H04L9/08;H04L9/40;H04L67/568 |
代理公司: | 杭州求是专利事务所有限公司 33200 | 代理人: | 林超 |
地址: | 310018 浙江省杭*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 fpga 动态 数据 解密 实现 方法 | ||
本发明公开了一种基于FPGA的动态数据加解密设计与实现方法。本发明采用FPGA作为主控制器完成对动态密钥加解密主状态机的设计,将整个动态密钥加解密分成3DES加解密和密钥更新两个部分;同时在加密帧数达到设定的阈值,就更新密钥和阈值,达到双重混沌态,极大的保证了数据的安全性。本发明具有高速数据处理能力,也极大的提高了加解密速度,能够满足工业网关快速加解密以及高安全性的要求。
技术领域
本发明涉及通信加密领域的一种数据加解密处理方法,具体为一种基于FPGA的动态数据加解密设计与实现方法。
背景技术
信息是信息化社会发展的重要战略资源,也是衡量一个国家综合国力的重要指标之一。随着网络信息技术的迅猛发展,信息的地位与作用在急剧上升,信息安全问题因此而日益突出。尤其是在当前大力发展工业物联网的情况下,工业环境下对信息安全的要求更加高。因此在满足工业高速通信的前提条件下还要对数据进行有效的加解密就显得尤为重要。
发明内容
为了解决背景技术中存在的问题,本发明目的是针对工业网关快速加解密以及高安全性的要求,设计并实现了一种能够快速加解密并且实现动态密钥的加解密方法。
本发明方法包括以下具体步骤:
一、一种基于FPGA的动态数据加密方法,包括以下步骤:
步骤1:待加密数据缓存:对输入的待加密数据进行缓存,存入第一缓存器中;
步骤2:子密钥生成:根据步骤7中生成的三个密钥key1、key2、key3进行子密钥生成操作获得子密钥,每个密钥得到其对应的16个子密钥,并给出子密钥完成生成标志位信号;
步骤3:读取待加密数据:
(1)初始状态:当步骤2中的子密钥完成生成标志位信号出现时,第一缓存器读取出待加密数据的1帧数据;
(2)非初始状态:当步骤2中的子密钥完成生成标志位信号和步骤6-1中的请求读取脉冲信号均出现时,第一缓存器读取出待加密数据的1帧数据;
步骤4:Padding处理:对步骤3中读取出来的待加密数据的1帧数据进行预处理,不足64位的数据在低位补0至64位;
步骤5:加密处理;
步骤6:已加密数据缓存:将步骤5获得的数据存入第二缓存器中,即获得当前帧数据加密后的数据;
步骤7:加密链状态检测:步骤5中的步骤5-1每完成一次,加密链状态寄存器的值都加1,并根据加密链状态寄存器的值判断进行密钥更新和加密帧数阈值Nx更新,并回到步骤2;
步骤8:不断迭代上述步骤2~7,直到完成每一帧数据的加密处理。
所述步骤5具体是对步骤4获得的数据进行如下处理:
步骤5-1:DES1加密:采用第一密钥key1的子密钥对步骤4获得的数据进行一次DES加密处理,一次加密分为16轮,每一轮依次采用1个子密钥进行加密;
步骤5-2:DES2加密:采用第二密钥key2的子密钥对步骤5-1获得的数据再进行一次DES加密处理,一次加密分为16轮,每一轮依次采用1个子密钥进行加密;
步骤5-3:DES3加密:采用第三密钥key3的子密钥对步骤5-2获得的数据再进行一次DES加密处理,一次加密分为16轮,每一轮依次采用1个子密钥进行加密。
所述步骤7具体为:
步骤7-1:若加密链状态寄存器的值小于加密帧数阈值Nx,则发送请求读取脉冲信号为1到第一缓存器并回到步骤3处理;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江理工大学,未经浙江理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911059711.5/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置