预览加载中,请您耐心等待几秒...
1/8
2/8
3/8
4/8
5/8
6/8
7/8
8/8

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

(19)中华人民共和国国家知识产权局(12)发明专利申请(10)申请公布号CN105939190A(43)申请公布日2016.09.14(21)申请号201610462944.X(22)申请日2016.06.23(71)申请人天津中安华典数据安全科技有限公司地址300300天津市东丽区平盈路8号服务滨海委3005-47室(72)发明人杨志欣李杰倪红(51)Int.Cl.H04L9/06(2006.01)权利要求书1页说明书4页附图2页(54)发明名称基于FPGA的离线生成密钥的AES数据加密方法(57)摘要本发明涉及一种基于FPGA的离线生成密钥的AES数据加密方法,包括:利用种子密钥及密钥扩展算法离线生成10轮密钥并存储;首先用所述种子密钥对预告分割形成的状态数组进行第0轮轮密钥加操作,之后再按依次顺序输入所述10轮密钥分别对前一轮加密后形成的数组进行加密。本发明提出的基于FPGA的离线生成密钥的AES数据加密方法,通过以上的技术方案,大大提高了加密算法的加密处理的性能。CN105939190ACN105939190A权利要求书1/1页1.一种基于FPGA的离线生成密钥的AES数据加密方法,其特征在于,包括以下步骤:将待处理的数据流按预设的处理方法预处理,分割成多个预定长度的状态数组;利用种子密钥及密钥扩展算法离线生成10轮密钥并存储;首先用所述种子密钥对所述状态数组进行第0轮轮密钥加操作,之后再按依次顺序输入所述10轮密钥分别对前一轮加密后形成的数组进行加密;其中,第1-9轮的加密过程依次包括字节替换、行移位、列混合和轮密钥加的操作,且1-9轮中每轮的列混合和轮密钥加的步骤合并形成一个步骤,所述列混合和轮密钥加的步骤采用三个异或门依次进行完成每轮轮密钥加处理;第10轮的加密过程包括字节替换、行移位和轮密钥加的操作。2.根据权利要求1所述基于FPGA的离线生成密钥的AES数据加密方法,其特征在于,所述种子密钥以及10轮密钥在轮密钥加操作前预先离线形成并存储于预设的寄存器中。3.根据权利要求1或2所述基于FPGA的离线生成密钥的AES数据加密方法,其特征在于,所述10轮密钥的每一轮密钥的生成采用以下步骤:维护一个密钥调度表,用于存储种子密钥和十轮密钥;该密钥调度表为一个4行4×11列的二维数组,每个数组单元为一个字节,二维数组的每一列作为一个字;所述种子密钥被复制到密钥调度表的前四个字中,然后第一轮密钥扩展生成的密钥占据之后的四个字,依此编排,十轮扩展之后,密钥调度表会被填满,密钥扩展过程结束,其中,每一轮密钥生成是通过前一轮密钥的四个字经过字循环移位、字节替换以及轮常量异或的步骤顺序操作形成。4.根据权利要求1所述基于FPGA的离线生成密钥的AES数据加密方法,其特征在于,每一轮的加密操作以及每一轮的密钥扩展操作中的字节替换均是通过S盒查找表的方式实现的。5.根据权利要求4所述基于FPGA的离线生成密钥的AES数据加密方法,其特征在于,所述S盒实现查找表是通过采用FPGA的可重构逻辑单元实现的。2CN105939190A说明书1/4页基于FPGA的离线生成密钥的AES数据加密方法技术领域[0001]本发明属于汽车涂装技术领域,具体涉及一种基于FPGA的离线生成密钥的AES数据加密方法。背景技术[0002]随着信息化的发展,计算机和互联网深入到生活工作生产中的方方面面。对应的,网络信息安全问题也随之成为目前至关重要的问题之一。[0003]网络安全主是要针对网络攻击,防洪网络攻击。针对网络攻击,从网络结构上筑造坚固的堡垒进行防范和完善恶意行为监测机制是一方面,另一方面数据安全,即数据传输、数据存储的安全也至关重要。而数据的泄露主要是由于数据传输存储过程中采用明文或是仅采用简单加密方式导致的信息泄露。黑客攻击防不胜防,在数据的传输和存储过程中,对数据选取安全有效的加密加密算法进行加密是保证数据安全、防止信息泄露的最常见也是最重要的方式。[0004]对数据加密采用的算法的安全有效性方面,AES(AdvancedEncryptionStandard)算法已久经考验。Rijndael算法是经过五年的甄选评估测试,由美国国家标准与技术研究院(NIST)最终选定的新一代数据加密标准,即AES。AES算法指的就是Rijndael算法,它是一种开放性对称分组加密算法。AES算法不仅对目前已知的密码分析攻击具备很强的抗攻击性,而且在实现方面,算法简单明了,计算量相对较小。作为目前最优秀的对称加密算法,其应用已深入各个安全领域,是事实标准。[0005]然而在针对目前大规模的高速数据流,数据加密性能方面,使用传统的软件加密来处理,不仅在实时性上会拖慢传输速度,而且大量占用主机的CPU,使得主机性能严重下降,若加密模块的实现采用专用高速硬件的实现方式,