The invention discloses a method, system and computer readable storage medium MD5 hash function platform for CPU+FPGA accelerated heterogeneous, the method comprises the following steps: the host will be processed data is sent to the FPGA board of the DDR memory, and set the parameters of information required for FPGA terminal operation; FPGA terminal according to the parameter information to MD5 data processing the hash function calculation, the calculation results and the memory data storage to DDR; the host obtains calculated result data from the DDR memory; the invention through the FPGA terminal according to the parameter information, deal with data MD5 hash function are calculated. The calculation results and the data storage memory to DDR, you can use the FPGA terminal on the performance of packet cycle operation speed, improve the performance of MD5 hash function calculation, effectively improve the efficiency of implementation of MD5 hash function calculation, reduce development Cycle and cost.
【技术实现步骤摘要】
MD5哈希函数计算方法、系统及计算机可读存储介质
本专利技术涉及可重构计算
,特别涉及一种面向CPU+FPGA异构加速平台的MD5哈希函数计算方法、系统及计算机可读存储介质。
技术介绍
Hash(哈希)函数亦称散列函数,简单的说就是一种能够将任意长度的消息压缩成为固定长度的消息摘要函数。具体来讲,哈希函数能够将任意长度的输入(即pre-image)通过散列算法变换成为固定长度的输出(即散列值)。该散列算法是一种压缩映射,散列值的空间大小远远小于输入值的空间大小。不同的输入存在相同的输出,所以不可能从散列值来唯一确定输入值。哈希函数涵盖的范围较广,目前出现的较常用的为MD(MessageDigestAlgorithm,消息摘要算法)系列和SHA系列。由于安全性问题,历史的MD1、MD2、MD3、MD4已经不再广泛使用,最新的MD系列的第五版本(MD5)。MD5的算法过程包括位数填充、信息长度记录、标准的幻数装入以及四轮循环运算(分组处理),而绝大多数核心运算集中在第四步的四轮分组循环运算。现有技术中,在云计算、大数据以及人工智能等应用中包含大量的哈希运算,处理批量的哈希运算需要大量的计算资源。一般服务器的CPU将会被洪水般的计算量耗尽资源。因此,如何提高MD5哈希函数算法中的分组循环运算的性能,是现今急需解决的问题。
技术实现思路
本专利技术的目的是提供一种面向CPU+FPGA异构加速平台的MD5哈希函数计算方法、系统及计算机可读存储介质,以利用FPGA(Field-ProgrammableGateArray,现场可编程门阵列)对分组循环运算的性能加速,提 ...
【技术保护点】
一种面向CPU+FPGA异构加速平台的MD5哈希函数计算方法,其特征在于,包括:主机端将待处理数据发送至FPGA板卡的DDR内存,并设置FPGA端运行所需的参数信息;所述FPGA端根据所述参数信息,对所述待处理数据进行MD5哈希函数计算,并将获取的计算结果数据存储至所述DDR内存;所述主机端从所述DDR内存获取所述计算结果数据。
【技术特征摘要】
1.一种面向CPU+FPGA异构加速平台的MD5哈希函数计算方法,其特征在于,包括:主机端将待处理数据发送至FPGA板卡的DDR内存,并设置FPGA端运行所需的参数信息;所述FPGA端根据所述参数信息,对所述待处理数据进行MD5哈希函数计算,并将获取的计算结果数据存储至所述DDR内存;所述主机端从所述DDR内存获取所述计算结果数据。2.根据权利要求1所述的面向CPU+FPGA异构加速平台的MD5哈希函数计算方法,其特征在于,所述FPGA端根据所述参数信息,对所述待处理数据进行MD5哈希函数计算,包括:所述FPGA端利用OpenCL语言实现的MD5哈希函数内核,根据所述参数信息对所述待处理数据进行MD5哈希函数计算。3.根据权利要求2所述的面向CPU+FPGA异构加速平台的MD5哈希函数计算方法,其特征在于,所述FPGA端利用OpenCL语言实现的MD5哈希函数内核,根据所述参数信息对所述待处理数据进行MD5哈希函数计算,包括:所述FPGA端将所述待处理数据从所述DDR内存批量读取至片上缓存;根据所述参数信息,对所述待处理数据进行并行和流水式的压缩映射处理,获取所述计算结果数据;其中,所述参数信息包括数据批量读取位数、循环展开大小、执行度大小和流水线过程。4.根据权利要求1至3任一项所述的面向...
【专利技术属性】
技术研发人员:曹芳,李雪雷,王丽,
申请(专利权)人:郑州云海信息技术有限公司,
类型:发明
国别省市:河南,41
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。