一种基于异构加速平台的AES对称加解密方法及系统技术方案

技术编号:16837083 阅读:24 留言:0更新日期:2017-12-19 19:43
本申请公开了一种基于异构加速平台的AES对称加解密方法及系统,该方法包括:CPU端运行主机端可执行文件,以将待处理数据集和启动控制信号发送至FPGA端,并获取FPGA端得到的处理结果;FPGA端在启动控制信号的控制下,运行Kernel可执行文件,以对待处理数据集进行与目标算法对应的数据加密或解密处理,得到相应的处理结果;其中,目标算法为AES对称加密或解密算法;主机端可执行文件和Kernel可执行文件分别为基于主机端程序和Kernel程序生成的可执行文件;主机端程序和Kernel程序为利用OpenCL对目标算法进行高级语言描述后生成的程序。本申请通过在FPGA端运行上述Kernel可执行文件,能够大幅减少AES对称加密过程或解密过程中并行处理所需的时间,明显提升了AES对称加解密速度。

A AES symmetric encryption and decryption method based on heterogeneous acceleration platform and its system

The invention discloses a system and AES encryption and decryption method of heterogeneous acceleration platform based on the CPU operation method includes: end host executable file, the data set will be processed and start to transmit the control signal to the FPGA terminal, and get the results obtained at FPGA FPGA in the end; start control signal control by running the Kernel executable file, to treat the data sets corresponding to the objective algorithm of data encryption or decryption processing, get the corresponding results; the goal of the algorithm for the AES symmetric encryption or decryption algorithm; the host executable files and Kernel executable file respectively the host program and the Kernel program can be generated based on the executable file; the host program and Kernel program for advanced language description generated after the program on the target algorithm using OpenCL. By executing the above Kernel executable files on the FPGA side, this application can significantly reduce the time required for parallel processing in the process of AES symmetric encryption or decryption, and significantly improve the speed of AES symmetric encryption and decryption.

【技术实现步骤摘要】
一种基于异构加速平台的AES对称加解密方法及系统
本专利技术涉及数据加解密
,特别涉及一种基于异构加速平台的AES对称加解密方法及系统。
技术介绍
对称加密算法是应用较早的加密算法,技术成熟。在对称加密算法中,数据发信方将明文(原始数据)和加密密钥一起经过特殊加密算法处理后,使其变成复杂的加密密文发送出去。收信方收到密文后,若想解读原文,则需要使用加密用过的密钥及相同算法的逆算法对密文进行解密,才能使其恢复成可读明文。在对称加密算法中,使用的密钥只有一个,发收信双方都使用这个密钥对数据进行加密和解密,这就要求解密方事先必须知道加密密钥。对称加密算法中存在一类应用领域十分广泛的商用密码标准,主要用于对不涉及国家秘密内容但又具有敏感性的内部信息、行政事务信息、经济信息等进行加密保护。比如:商用密码可用于企业门禁管理、企业内部的各类敏感信息的传输加密、存储加密,防止非法第三方获取信息内容;也可用于各种安全认证、网上银行、数字签名等。AES在密码学中又称Rijndael加密法,是美国联邦政府采用的一种区块加密标准,已经被多方分析且广为全世界所使用的商用密码加密标准。经过五年的甄选流程,高级加密标准由美国国家标准与技术研究院(NIST)于2001年11月26日发布于FIPSPUB197,并在2002年5月26日成为有效的标准。2006年,高级加密标准已然成为对称密钥加密中最流行的算法之一。AES加密数据块分组长度必须为128比特,密钥长度可以是128比特、192比特、256比特中的任意一个(如果数据块及密钥长度不足时,会补齐)。AES加密有很多轮的重复和变换,加密过程是在一个4×4的字节矩阵上运作,这个矩阵又称为“状态(state)”,其初值就是一个明文区块(矩阵中一个元素大小就是明文区块中的一个Byte)。各轮AES加密循环(除最后一轮外)均包含4个步骤:1.AddRoundKey:矩阵中的每一个字节都与该次轮秘钥(roundkey)做XOR运算;每个子密钥由密钥生成方案产生。2.SubBytes:通过非线性的替换函数,用查找表的方式把每个字节替换成对应的字节。3.ShiftRows:将矩阵中的每个横列进行循环式移位。4.MixColumns:为了充分混合矩阵中各个直行的操作。这个步骤使用线性转换来混合每列的四个字节。最后一个加密循环中省略MixColumns步骤,而以另一个AddRoundKey取代。由于信息时代数据量的暴增,信息和数据的隐私安全成为各商业领域内最有价值的资产。各商业公司会对自己领域内的数据从系统准入到数据读取都会做严格的信息保护。数据加密就是对信息进行保护的一种有效手段,能够阻止非授权用户的读取和传播。然而,对数据的加密和解密过程需要一定的计算资源,尤其是在数据暴增、响应时间有限的条件下,如何实现较快的AES加解密速度以满足用户对数据的存取响应成为一项严峻的挑战。
技术实现思路
有鉴于此,本专利技术的目的在于提供一种基于异构加速平台的AES对称加解密方法及系统,能够明显提升AES对称加解密速度。其具体方案如下:一种基于异构加速平台的AES对称加解密方法,包括:CPU端运行主机端可执行文件,以将待处理数据集和启动控制信号发送至FPGA端,并获取所述FPGA端得到的处理结果;所述FPGA端在所述启动控制信号的控制下,运行Kernel可执行文件,以对所述待处理数据集进行与目标算法对应的数据加密或解密处理,得到相应的处理结果;其中,所述目标算法为AES对称加密或解密算法;所述主机端可执行文件和所述Kernel可执行文件分别为基于主机端程序和Kernel程序生成的可执行文件;所述主机端程序和所述Kernel程序为利用OpenCL对所述目标算法进行高级语言描述后生成的程序。可选的,所述主机端可执行文件的生成过程,包括:利用GCC编译器对所述主机端程序进行编译,得到所述主机端可执行文件。可选的,所述Kernel可执行文件的生成过程,包括:利用AlteraSDKforOpenCL对所述Kernel程序进行编译,以生成相应的AOCX文件,得到所述Kernel可执行文件。可选的,所述CPU端将待处理数据集和启动控制信号发送至FPGA端的步骤,包括:对原始目标数据进行分组,得到分组数据;其中,所述原始目标数据为原始的待加密数据或待解密数据;将所述分组数据、相应的密钥数据以及相关的辅助数据集进行合并,得到所述待处理数据集;在所述FPGA端的开发板的DDR内存上创建目标缓存,并将所述待处理数据集传输至所述目标缓存;设置所述FPGA端在实际运行的过程中所需的参数信息;生成所述启动控制信号,并将所述启动控制信号发送至所述FPGA端。可选的,所述FPGA端对所述待处理数据集进行与目标算法对应的数据加密或解密处理,得到相应的处理结果的步骤,包括:将所述待处理数据集从所述目标缓存上批量读取至所述FPGA端的片上缓存;对所述片上缓存中的分组数据进行与所述目标算法对应的并行以及流水化的迭代处理,得到所述处理结果,并将所述处理结果保存至所述目标缓存,以便所述CPU端从所述目标缓存上读取所述处理结果。本专利技术还相应公开了一种基于异构加速平台的AES对称加解密系统,包括CPU端和FPGA端;其中,所述CPU端,用于运行主机端可执行文件,以将待处理数据集和启动控制信号发送至所述FPGA端,并获取所述FPGA端得到的处理结果;所述FPGA端,用于在所述启动控制信号的控制下,运行Kernel可执行文件,以对所述待处理数据集进行与目标算法对应的数据加密或解密处理,得到相应的处理结果;其中,所述目标算法为AES对称加密或解密算法;所述主机端可执行文件和所述Kernel可执行文件分别为基于主机端程序和Kernel程序生成的可执行文件;所述主机端程序和所述Kernel程序为利用OpenCL对所述目标算法进行高级语言描述后生成的程序。可选的,所述系统,还包括:第一编译模块,用于利用GCC编译器对所述主机端程序进行编译,得到所述主机端可执行文件。可选的,所述系统,还包括:第二编译模块,用于利用AlteraSDKforOpenCL对所述Kernel程序进行编译,以生成相应的AOCX文件,得到所述Kernel可执行文件。可选的,所述CPU端,包括:数据分组单元,用于对原始目标数据进行分组,得到分组数据;其中,所述原始目标数据为原始的待加密数据或待解密数据;数据合并单元,用于将所述分组数据、相应的密钥数据以及相关的辅助数据集进行合并,得到所述待处理数据集;缓存创建单元,用于在所述FPGA端的开发板的DDR内存上创建目标缓存;数据传输单元,用于将所述待处理数据集传输至所述目标缓存;参数设置单元,用于设置所述FPGA端在实际运行的过程中所需的参数信息;启动控制单元,用于生成所述启动控制信号,并将所述启动控制信号发送至所述FPGA端。可选的,所述FPGA端,包括:数据读取单元,用于将所述待处理数据集从所述目标缓存上批量读取至所述FPGA端的片上缓存;数据处理单元,用于对所述片上缓存中的分组数据进行与所述目标算法对应的并行以及流水化的迭代处理,得到所述处理结果,并将所述处理结果保存至所述目标缓存,以便所述CPU端从所述目标缓存上读取所述处理结果。可见,本专利技术中本文档来自技高网
...
一种基于异构加速平台的AES对称加解密方法及系统

【技术保护点】
一种基于异构加速平台的AES对称加解密方法,其特征在于,包括:CPU端运行主机端可执行文件,以将待处理数据集和启动控制信号发送至FPGA端,并获取所述FPGA端得到的处理结果;所述FPGA端在所述启动控制信号的控制下,运行Kernel可执行文件,以对所述待处理数据集进行与目标算法对应的数据加密或解密处理,得到相应的处理结果;其中,所述目标算法为AES对称加密或解密算法;所述主机端可执行文件和所述Kernel可执行文件分别为基于主机端程序和Kernel程序生成的可执行文件;所述主机端程序和所述Kernel程序为利用OpenCL对所述目标算法进行高级语言描述后生成的程序。

【技术特征摘要】
1.一种基于异构加速平台的AES对称加解密方法,其特征在于,包括:CPU端运行主机端可执行文件,以将待处理数据集和启动控制信号发送至FPGA端,并获取所述FPGA端得到的处理结果;所述FPGA端在所述启动控制信号的控制下,运行Kernel可执行文件,以对所述待处理数据集进行与目标算法对应的数据加密或解密处理,得到相应的处理结果;其中,所述目标算法为AES对称加密或解密算法;所述主机端可执行文件和所述Kernel可执行文件分别为基于主机端程序和Kernel程序生成的可执行文件;所述主机端程序和所述Kernel程序为利用OpenCL对所述目标算法进行高级语言描述后生成的程序。2.根据权利要求1所述的基于异构加速平台的AES对称加解密方法,其特征在于,所述主机端可执行文件的生成过程,包括:利用GCC编译器对所述主机端程序进行编译,得到所述主机端可执行文件。3.根据权利要求1所述的基于异构加速平台的AES对称加解密方法,其特征在于,所述Kernel可执行文件的生成过程,包括:利用AlteraSDKforOpenCL对所述Kernel程序进行编译,以生成相应的AOCX文件,得到所述Kernel可执行文件。4.根据权利要求1至3任一项所述的基于异构加速平台的AES对称加解密方法,其特征在于,所述CPU端将待处理数据集和启动控制信号发送至FPGA端的步骤,包括:对原始目标数据进行分组,得到分组数据;其中,所述原始目标数据为原始的待加密数据或待解密数据;将所述分组数据、相应的密钥数据以及相关的辅助数据集进行合并,得到所述待处理数据集;在所述FPGA端的开发板的DDR内存上创建目标缓存,并将所述待处理数据集传输至所述目标缓存;设置所述FPGA端在实际运行的过程中所需的参数信息;生成所述启动控制信号,并将所述启动控制信号发送至所述FPGA端。5.根据权利要求4所述的基于异构加速平台的AES对称加解密方法,其特征在于,所述FPGA端对所述待处理数据集进行与目标算法对应的数据加密或解密处理,得到相应的处理结果的步骤,包括:将所述待处理数据集从所述目标缓存上批量读取至所述FPGA端的片上缓存;对所述片上缓存中的分组数据进行与所述目标算法对应的并行以及流水化的迭代处理,得到所述处理结果,并将所述处理结果保存至所述目标缓存,以便所述CPU端从所述目标缓存上读取所述处理结果。6.一种基于异...

【专利技术属性】
技术研发人员:李雪雷王丽曹芳段志刚
申请(专利权)人:郑州云海信息技术有限公司
类型:发明
国别省市:河南,41

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1