应用于信息安全的杂凑算法的硬件实现系统的制作方法

文档序号:11929689阅读:301来源:国知局
应用于信息安全的杂凑算法的硬件实现系统的制作方法与工艺

本发明属于信息安全领域,具体涉及一种应用于信息安全的杂凑算法的硬件实现系统。



背景技术:

随着信息技术的不断进步,互联网、大数据、物联网、智能生活等技术应用的普及与发展,使得信息安全的重要性日益提高,身份认证与数据保护成为整个信息安全技术的核心与基础。

目前公钥加密体制作为已知最安全的信息加密处理方式,被广泛应用在各领域的安全体系中,并且结合杂凑算法与对称加解密算法可以形成完整的安全加解密及认证体系,满足各类安全应用场景的需要。

2010年12月,国家密码管理局发布了具有自主知识产权的《SM2椭圆曲线公钥密码算法》与《SM3密码杂凑算法》等算法,实现了一套完整的安全加密与认证的算法体系,既统一规范了国内的相关领域,又保证了无国外可利用的算法后门。其中SM3密码杂凑算法既是SM2算法中重要的组成部分,用于身份认证运算;又可独立使用,用于数据完整性验证,是信息安全技术中的一个重要安全算法。



技术实现要素:

(一)要解决的技术问题

本发明要解决的技术问题是:针对信息安全中身份认证与数据完整性的实现需求,使用国家具有自主知识产权的《SM3密码杂凑算法》,如何提供一种基于硬件的高效的杂凑算法实现系统。该系统作为独立的算法核,实现对指定地址的数据进行Hash运算,并且对《SM3密码杂凑算法》中算法实现进行了硬件优化,可有效减少硬件存储空间及节省运算周期。该系统应用于SoC芯片设计或FPGA开发中,可挂载使用常见的SoC片内互连总线协议,如AXI、AHB协议等,并且支持具有安全属性的芯片架构。

(二)技术方案

为解决上述技术问题,本发明提供一种应用于信息安全的杂凑算法的硬件实现系统,该系统包括:

消息输入模块,其用于按照SoC片内互连总线协议获取消息,并发送至消息填充模块;

消息填充模块,其用于满足《SM3密码杂凑算法》中5.2节的填充算法规范,将输入的消息填充至512比特;

消息扩展模块,其用于满足《SM3密码杂凑算法》中5.3.2节的扩展算法中W扩展与W’扩展的规范,对512比特消息进行扩展,W扩展将原消息扩展至2176比特,W’扩展采用W扩展结果得到2048比特数据,共计4224比特;

每组消息的压缩迭代过程需要连续64次循环调用压缩变量模块与压缩运算模块:

所述压缩变量模块,其用于满足《SM3密码杂凑算法》中4.3节的布尔运算FF与布尔运算GG,以及5.3.3节中规定的生成变量SS1、SS2、TT1、TT2;

压缩运算模块,其用于满足《SM3密码杂凑算法》中4.4节的置换函数P0与置换函数P1,以及5.3.3节中规定的生成变量A、B、C、D、E、F、G、H;

每组512比特的消息进行一轮消息迭代,所有消息迭代结束后产生最终结果;

下面描述所述消息扩展模块、压缩变量模块、压缩运算模块三个模块中消息的运算时序;定义《SM3密码杂凑算法》中5.3.2节的扩展算法中W扩展使用的存储空间为W空间共512比特,W’扩展使用的空间为W’空间共32比特;

时钟周期T0:消息扩展模块的启动周期,满足《SM3密码杂凑算法》中5.3.2节的扩展算法生成数据W16与W’0;

时钟周期T1:消息扩展模块生成W17与W’1,压缩变量模块与压缩运算模块启动并使用W0及T0周期生成的W’0,将T0周期生成的W16存储至W0的空间;

时钟周期T2:消息扩展模块生成W18与W’2,压缩变量模块与压缩运算模块使用W1及T1周期生成的W’1,将T1周期生成的W17存储至W1的空间;

时钟周期T3:消息扩展模块生成W19与W’3,压缩变量模块与压缩运算模块使用W2及T2周期生成的W’2,将T2周期生成的W18存储至W2的空间;

时钟周期T4:消息扩展模块生成W20与W’4,压缩变量模块与压缩运算模块使用W3及T3周期生成的W’3,将T3周期生成的W19存储至W3的空间;

由此直至-

时钟周期T17:消息扩展模块生成W33与W’17,压缩变量模块与压缩运算模块使用T0周期生成的W16及T16周期生成的W’16,系统将T16周期生成的W32存储至W16的空间,即W0的空间;

由此直至-

时钟周期T51:消息扩展模块的W扩展运算完成,W’扩展运算生成W’51,压缩变量模块与压缩运算模块使用之前生成的W16与W’16,系统将T50周期生成的W66存储至W50的空间,即W2的空间;

由此直至-

时钟周期T63:消息扩展模块的W’扩展运算完成;

时钟周期T64:压缩变量模块与压缩运算模块运算完成。

(三)有益效果

首先,本发明的硬件结构满足《SM3密码杂凑算法》(以下简称《算法》)的规范。《算法》规定可处理最大263-1比特的消息,并对消息进行分组处理,每组处理的数据宽度固定为512比特,若最后一组消息不足512比特,则使用《算法》中5.2节规定的填充算法扩展至512比特,《算法》采用迭代处理的结构,每组消息的处理结果固定为256比特,最后一组迭代结果为最终算法结果。

其次本发明的硬件结构优化《算法》中的运算过程。《算法》运算过程主要包括:消息填充过程,即使用《算法》中5.2节填充算法扩展每轮输入消息至512比特;消息扩展过程,即使用《算法》中5.3.2节的扩展算法将每轮填充后的512比特消息扩展为4224比特;迭代压缩过程,即使用《算法》中5.3.1节的迭代算法与5.3.3节的压缩算法对扩展后的消息进行64轮迭代处理,最后得到256比特的压缩结果,完成一组消息的处理。本发明结构的运算时序,可节省消息扩展过程中使用的数据存储空间,又可对消息扩展过程与迭代压缩过程实现并行处理,节省运算周期。

与现有技术相比较,本发明具备如下有益效果:

1.该系统实现满足《算法》规范的SM3密码杂凑算法的功能,可满足身份认证与数据完整性验证等应用需求;

2.该系统实现优化了《算法》规范中数据存储结构,节省了存储扩展消息运算所需的硬件资源;

3.该系统实现优化了《算法》规范中运算周期,将扩展运算整合至压缩迭代过程中,有效的节省了扩展运算周期;

4.该系统支持使用SoC片内互连总线协议,可作为IP核的形式灵活嵌入各类SoC芯片与FPGA设计中。

附图说明

图1:本发明的具体实施结构框图。

图2:本发明的运算时序结构示意图。

具体实施方式

为使本发明的目的、内容、和优点更加清楚,下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。

为解决现有技术的问题,本发明提供一种应用于信息安全的杂凑算法的硬件实现系统,如图1所示,该系统包括:

消息输入模块,其用于按照SoC片内互连总线协议获取消息,本结构推荐使用AHB总线协议,并发送至消息填充模块;

消息填充模块,其用于满足《SM3密码杂凑算法》中5.2节的填充算法规范,将输入的消息填充至512比特;

消息扩展模块,其用于满足《SM3密码杂凑算法》中5.3.2节的扩展算法中W扩展与W’扩展的规范,对512比特消息进行扩展,W扩展将原消息扩展至2176比特,W’扩展采用W扩展结果得到2048比特数据,共计4224比特;

每组消息的压缩迭代过程需要连续64次循环调用压缩变量模块与压缩运算模块:

所述压缩变量模块,其用于满足《SM3密码杂凑算法》中4.3节的布尔运算FF与布尔运算GG,以及5.3.3节中规定的生成变量SS1、SS2、TT1、TT2;

压缩运算模块,其用于满足《SM3密码杂凑算法》中4.4节的置换函数P0与置换函数P1,以及5.3.3节中规定的生成变量A、B、C、D、E、F、G、H;

每组512比特的消息进行一轮消息迭代,所有消息迭代结束后产生最终结果;

本发明结构的具体运算过程如附图2所示,下面描述附图1中所述消息扩展模块、压缩变量模块、压缩运算模块三个模块中消息的运算时序;定义《SM3密码杂凑算法》中5.3.2节的扩展算法中W扩展使用的存储空间为W空间共512比特,W’扩展使用的空间为W’空间共32比特;

时钟周期T0:消息扩展模块的启动周期,满足《SM3密码杂凑算法》中5.3.2节的扩展算法生成数据W16与W’0;

时钟周期T1:消息扩展模块生成W17与W’1,压缩变量模块与压缩运算模块启动并使用W0及T0周期生成的W’0,将T0周期生成的W16存储至W0的空间;

时钟周期T2:消息扩展模块生成W18与W’2,压缩变量模块与压缩运算模块使用W1及T1周期生成的W’1,将T1周期生成的W17存储至W1的空间;

时钟周期T3:消息扩展模块生成W19与W’3,压缩变量模块与压缩运算模块使用W2及T2周期生成的W’2,将T2周期生成的W18存储至W2的空间;

时钟周期T4:消息扩展模块生成W20与W’4,压缩变量模块与压缩运算模块使用W3及T3周期生成的W’3,将T3周期生成的W19存储至W3的空间;

由此直至-

时钟周期T17:消息扩展模块生成W33与W’17,压缩变量模块与压缩运算模块使用T0周期生成的W16及T16周期生成的W’16,系统将T16周期生成的W32存储至W16的空间,即W0的空间;

由此直至-

时钟周期T51:消息扩展模块的W扩展运算完成,W’扩展运算生成W’51,压缩变量模块与压缩运算模块使用之前生成的W16与W’16,系统将T50周期生成的W66存储至W50的空间,即W2的空间;

由此直至-

时钟周期T63:消息扩展模块的W’扩展运算完成;

时钟周期T64:压缩变量模块与压缩运算模块运算完成。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1