发明名称 一种折叠结构的SM3杂凑密码压缩运算电路
摘要 本发明公开了一种折叠结构的SM3杂凑密码压缩运算电路,包括11个寄存器、5个与门、4个异或门、2个或门,1个非门、8个加法器、6个循环移位单元和21个选择器;折叠结构的SM3杂凑密码压缩运算电路将一轮压缩运算分为5个时钟周期进行,每个时钟周期中各32位寄存器参与执行一次模2<sup>32</sup>加法或者循环左移或者按位异或操作,并且最多只进行一次模2<sup>32</sup>加法操作。与普通迭代方式压缩运算电路一个时钟周期完成一轮压缩运算不同,折叠结构SM3压缩运算电路以每轮压缩运算增加4个时钟周期为代价,换取了电路规模的减小和压缩运算电路关键路径延时的大幅减小。
申请公布号 CN105281890A 申请公布日期 2016.01.27
申请号 CN201410349798.0 申请日期 2014.07.22
申请人 华中科技大学 发明人 郑朝霞;蔚然;邹雪城;高峻;朱国义;田园
分类号 H04L9/06(2006.01)I 主分类号 H04L9/06(2006.01)I
代理机构 武汉东喻专利代理事务所(普通合伙) 42224 代理人 李佑宏
主权项 一种折叠结构的SM3杂凑密码压缩运算电路,其特征在于,包括第一寄存器、第二寄存器、第三寄存器、第四寄存器、第五寄存器、第六寄存器、第七寄存器、第八寄存器、第九寄存器、第十寄存器、第十一寄存器、第一与门、第二与门、第三与门、第四与门、第五与门、第一异或门、第二异或门、第三异或门、第四异或门、第一或门、第二或门、第一非门、第一加法器、第二加法器、第三加法器、第四加法器、第五加法器、第六加法器、第七加法器、第八加法器、第一循环左移单元、第五循环左移单元、第二循环左移单元、第三循环左移单元、第四循环左移单元、第六循环左移单元、第一选择器、第二选择器、第三选择器、第四选择器、第五选择器、第六选择器、第七选择器、第八选择器、第九选择器、第十选择器、第十一选择器、第十二选择器、第十三选择器、第十四选择器、第十五选择器、第十六选择器、第十七选择器、第十八选择器、第十九选择器、第二十选择器和第二十一选择器;所述第一寄存器的输出端分别与所述第一与门的第一输入端、第三与门的第一输入端、第一异或门的第一输入端、第三循环左移单元的输入端、第十四选择器的第二输入端和第十五选择器的第一输入端连接;所述第二寄存器的输出端分别与所述第一与门的第二输入端、所述第二与门的第一输入端、第一异或门的第二输入端、第十五选择器的第二输入端、第五循环左移单元的输入端连接;所述第三寄存器的输出端分别与所述第二与门的第二输入端、所述第三与门的第二输入端、所述第一异或门的第三输入端、所述第十六选择器的第二输入端、所述第十七选择器的第一输入端连接;所述第四寄存器的输出端分别与所述第一加法器的第二输入端和所述第十七选择器的第二输入端连接;所述第五寄存器的输出端分别与第六加法器的第二输入端、所述第四与门的第一输入端、所述第一非门的输入端、所述第二异或门的第一输入端、所述第十八选择器的第二输入端和所述第十九选择器的第一输入端连接;所述第六寄存器的输出端分别与所述第四与门的第二输入端、所述第二异或门的第二输入端、所述第十九选择器的第二输入端、所述第六循环左移单元的输入端连接;所述第七寄存器的输出端分别与所述第五与门的第二输入端、第二异或门的第三输入端、第二十选择器的第二输入端、第二十一选择器的第一输入端连接;所述第八寄存器的输出端分别与所述第三加法器的第二输入端、所述第二十一选择器的第二输入端连接;所述第九寄存器的输出端分别与所述第二选择器的第二输入端、所述第一加法器的第一输入端、所述第二加法器的第一输入端和所述第八加法器的第一输入端连接;所述第十寄存器的输出端分别与所述第三加法器的第一输入端、所述第四加法器的第一输入端、所述第五加法器的第一输入端、所述第一循环左移单元的输入端、所述第二循环左移单元的输入端、所述第三异或门的第三输入端和所述第六选择器的第二输入端连接;所述第十一寄存器的输出端分别与所述第五加法器的第二输入端、所述第七加法器的第一输入端、所述第八加法器的第二输入端、所述第四循环左移单元的输入端、所述第四异或门的第一输入端和所述第十选择器的第二输入端连接;所述第一与门的输出端与所述第一或门的第一输入端连接;所述第二与门的输出端与所述第一或门的第二输入端连接;所述第三与门的输出端与所述第一或门的第三输入端连接;所述第四与门的输出端与所述第二或门的第一输入端连接;所述第五与门的输出端与所述第二或门的第二输入端连接;所述第一异或门的输出端与所述第一选择器的第二输入端连接;所述第二异或门的输出端与所述第五选择器的第二输入端连接;所述第三异或门的输出端与所述第十八选择器的第一输入端连接;所述第四异或门的输出端与所述第十三选择器的第二输入端连接;所述第一或门的输出端与所述第一选择器的第一输入端连接;所述第二或门的输出端与所述第五选择器的第一输入端连接;所述第一非门的输出端与所述第五与门的第一输入端连接;所述第一加法器的输出端与所述第三选择器的第二输入端连接;所述第二加法器的输出端与所述第四选择器的第二输入端连接;所述第三加法器的输出端与所述第七选择器的第二输入端连接;所述第四加法器的输出端与所述第八选择器的第二输入端连接;所述第五加法器的输出端与所述第九选择器的第二输入端连接;所述第六加法器的输出端与所述第十选择器的第一输入端连接;所述第七加法器的输出端与所述第十一选择器的第二输入端连接;所述第八加法器的输出端与所述第十四选择器的第一输入端连接;所述第一循环左移单元的输出端与所述第三异或门的第一输入端连接;所述第二循环左移单元的输出端与所述第三异或门的第二输入端连接;所述第三循环左移单元的输出端,分别接第七加法器的第二输入端、第四异或门的第二输入端连接;所述第四循环左移单元的输出端与所述第十二选择器的第二输入端连接;所述第五循环左移单元的输出端与所述第十六选择器的第一输入端连接;所述第六循环左移单元的输出端与所述第二十选择器的第一输入端连接;所述第一选择器的输出端与所述第二选择器的第一输入端连接;所述第二选择器的输出端与所述第三选择器的第一输入端连接;所述第三选择器的输出端与所述第四选择器的第一输入端连接;所述第四选择器的输出端与所述第九寄存器的输入端连接;所述第五选择器的输出端与所述第六选择器的第一输入端连接;所述第六选择器的输出端与所述第七选择器的第一输入端连接;所述第七选择器的输出端与所述第八选择器的第一输入端连接;所述第八选择器的输出端与所述第九选择器的第一输入端连接;所述第九选择器的输出端与所述第十寄存器的输入端连接;所述第十选择器的输出端与所述第十一选择器的第一输入端连接;所述第十一选择器的输出端与所述第十二选择器的第一输入端连接;所述第十二选择器的输出端与所述第十三选择器的第一输入端连接;所述第十三选择器的输出端与所述第十一寄存器的输入端连接;所述第十四选择器的输出端与所述第一寄存器的输入端连接;所述第十五选择器的输出端与所述第二寄存器的输入端连接;所述第十六选择器的输出端与所述第三寄存器的输入端连接;所述第十七选择器的输出端与所述第四寄存器的输入端连接;所述第十八选择器的输出端与所述第五寄存器的输入端连接;所述第十九选择器的输出端与所述第六寄存器的输入端连接;所述第二十选择器的输出端与所述第七寄存器的输入端连接;所述第二十一选择器的输出端与所述第八寄存器的输入端连接;第一输入信号SEL0分别与所述第二选择器的第三输入端、所述第六选择器的第三输入端、所述第十选择器的第三输入端连接;所述第二输入信号SEL1分别与所述第三选择器的第三输入端、所述第七选择器的第三输入端和所述第十一选择器的第三输入端连接;所述第三输入信号SEL2分别与所述第四选择器的第三输入端、所述第八选择器的第三输入端和所述第十二选择器的第三输入端连接;所述第四输入信号SEL3分别与所述第九选择器的第三输入端和所述第十三选择器的第三输入端连接;所述第五输入信号SEL4分别与所述第十四选择器的第三输入端、所述第十五选择器的第三输入端、所述第十六选择器的第三输入端、所述第十七选择器的第三输入端、所述第十八选择器的第三输入端、所述第十九选择器的第三输入端、所述第二十选择器的第三输入端和所述第二十一选择器的第三输入端连接;所述第六输入信号R_SEL分别与所述第一选择器的第三输入端和所述第五选择器的第三输入端连接;所述第一输入信号轮操作字Wj与所述第四加法器的第二输入端连接;所述第一输入信号轮操作字Wj`与所述第二加法器的第二输入端连接;所述输入信号轮常量Tj与所述第六加法器的第一输入端。
地址 430074 湖北省武汉市洪山区珞喻路1037号