一种增强SHA256算法运行速度、安全性的方法及其系统技术方案

技术编号:37242847 阅读:39 留言:0更新日期:2023-04-20 23:23
本发明专利技术提供一种增强SHA256算法运行速度、安全性的方法及其系统,方法应用于SHA256加密电路;对所述消息块依次进行逻辑运算中任意消息的逻辑运算的过程具体为,用计数控制单元对任意消息块的循环压缩处理次数进行计数判断并确定数据流向;在对任意消息块进行前十六次循环压缩处理时,消息块内对应的数据由所述消息预处理模块传输至循环压缩模块进行循环压缩并输出循环压缩结果。本发明专利技术的有益效果:通过改变数据流向,将传统SHA算法的线性结构改为叉状树结构;通过减少数据流经的路径来提升算法的运行速度;将消息拓展和循环压缩的计数控制置于上级模块,通过减少使用的寄存器和占用的内存来提升算法的运行速度。用的内存来提升算法的运行速度。用的内存来提升算法的运行速度。

【技术实现步骤摘要】
一种增强SHA256算法运行速度、安全性的方法及其系统


[0001]本专利技术涉及安全领域应用密码学的
,尤其涉及增强SHA256算法运行速度、安全性方法及其系统。

技术介绍

[0002]SHA256是SHA

2下细分出的一种算法。SHA

2,名称来自于安全散列算法2(英语:Secure Hash Algorithm 2)的缩写,一种密码散列函数算法标准,由美国国家安全局研发,属于SHA算法之一,是SHA

1的后继者。SHA

2下又可再分为六个不同的算法标准,包括了:SHA

224、SHA

256、SHA

384、SHA

512、SHA

512/224、SHA

512/256。这些变体除了生成摘要的长度、循环运行的次数等一些微小差异,算法的基本结构是一致的。
[0003]SHA256的算法应用的层面很广,安全领域很多地方都需要用到SH本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种增强SHA256算法运行速度的方法,所述方法应用于SHA256加密电路;包括以下步骤,初始数据在消息预处理模块中进行数据分组并形成消息块;对所述消息块依次进行逻辑运算,生成256位的哈希值;其特征在于:对若干所述消息块依次进行逻辑运算中任意消息的逻辑运算的过程具体为,用计数控制单元对任意消息块的循环压缩处理次数进行计数判断并确定数据流向;在对任意消息块进行前十六次循环压缩处理时,消息块内对应的数据由所述消息预处理模块传输至循环压缩模块进行循环压缩并输出循环压缩结果;在对任意消息块进行前十七次到第六十四次循环压缩处理时,将消息块传输至所述消息拓展模块进行消息拓展,然后将消息拓展结果传输至所述循环压缩模块进行循环压缩并输出循环压缩结果;在对任意消息块进行第十六次循环压缩处理时,进行循环压缩的同时进行第十七次循环压缩前将消息块传输至所述消息拓展模块进行消息拓展。2.如权利要求1所述的增强SHA256算法运行速度的方法,其特征在于:还包括对所述计数控制单元的改进步骤,将所述计数控制单元设置于所述消息预处理模块内;将所述消息拓展模块和所述循环压缩模块统一使用所述计数控制单元中的同一组计数用寄存器;删除原SHA256算法中哈希值的8组寄存器,并修改数据传输路径来代替这一步的储存行为;所述消息拓展模块和所述循环压缩模块同时和所述消息预处理模块相连。3.如权利要求1所述的增强SHA256算法运行速度的方法,其特征在于:所述计数控制单元确定数据流向包括以下步骤,在单个消息块中,所述计数控制单元在前十五次的计数中,此阶段内所述消息预处理模块仅向所述循环压缩模块传输数据;在所述计数控制单元的第十六次计数的阶段中,所述消息预处理模块同时向所述消息拓展模块和所述循环压缩模块传输数据;在所述计数控制单元的第十七次计数到第六十四次计数的阶段中,所述消息预处理模块仅向所述消息拓展模块传递数据。4.如权利要求1所述的增强SHA256算法运行速度的方法,其特征在于:所述计数控制单元计数判断包括以下步骤,从0开始计数,即计数为0时是第一次;若计数小于等于15,则将16组32位数据数据输入到所述循环压缩模块,进行多个步骤的循环压缩处理;若计数大于等于15,则对数据块进行消息拓展处理,形成48组32位数据,然后再将数据传输到所述循环压缩模块进行循环压缩处理。5.如权利要求4所述的增强SHA256算法运行速度的方法,其特征在于:所述消息拓展模块的消息拓展过程包括如下拓展步骤,
将所述16组32位数据拓展成为48组32位数据,逻辑运算过程中每次运算中都对多组32位的数据进行逻辑运算并最终输出一组32位字节函数;然后对48组32位数据分别进行循环压缩处理,并将结果存入...

【专利技术属性】
技术研发人员:杨鸿伟刘宏伟
申请(专利权)人:芯光智网集成电路设计无锡有限公司
类型:发明
国别省市:

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

1