[发明专利]一种实现哈希运算的专用计算电路有效
申请号: | 201711288835.1 | 申请日: | 2017-12-07 |
公开(公告)号: | CN109905228B | 公开(公告)日: | 2023-07-25 |
发明(设计)人: | 霍晓芳;白彩云 | 申请(专利权)人: | 北京智云芯科技有限公司 |
主分类号: | H04L9/06 | 分类号: | H04L9/06;H04L9/32 |
代理公司: | 北京中政联科专利代理事务所(普通合伙) 11489 | 代理人: | 陈超 |
地址: | 100193 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 实现 运算 专用 计算 电路 | ||
1.一种实现哈希运算的专用计算电路,其特征在于:包括至少一个哈希计算模块;
所述哈希计算模块包括变量输入单元、常量输入单元,哈希输入单元、哈希计算单元和哈希输出单元;
所述哈希运算的迭代运算次数为N,每个哈希计算模块使用N个哈希计算单元分别完成N次迭代运算,每一次计算需要固定的时钟周期数A,共需要A×N个时钟周期完成一次哈希运算,N和A都为自然数;
N个哈希计算单元之间通过硬件连线进行数据传递,在每一次计算的时钟周期A初始通过哈希输入单元给哈希计算单元输入一组新的输入数据,后一个哈希计算单元的哈希输入值为前一个哈希计算单元的哈希输出值;
变量输入单元和常量输入单元的个数分别N个,且分别与N个哈希计算单元对应相连,用于输入相应的变量值和常量值;
一次哈希运算结束后结果由哈希输出单元输出;
所述哈希计算单元的连续两次输入数据当中,有些数据保持不变,则动态关闭输入数据不变的电路或者电路的一部分。
2.根据权利要求1所述的专用计算电路,其特征在于:需要做多次哈希运算时,使用多个哈希计算模块,各个哈希计算模块之间依次相连,前一个计算模块的输出数据送入后一个计算模块做为输入数据。
3.根据权利要求1所述的专用计算电路,其特征在于:所述哈希计算单元以加法器为主,某些次迭代计算的加法器输入当中有多个常数,把多个常数预先加起来得到一个常数和,然后再将该常数和与其它变量进行相加。
4.根据权利要求1所述的专用计算电路,其特征在于:当只需要检验哈希值的特定输出时,不需要得到所有的哈希值即可完成验证工作时,当某一次迭代计算的计算结果当中已经包含了需要检验的输出值,则马上进行校验,而不必等到完成全部哈希计算之后才进行输出值的校验。
5.根据权利要求1所述的专用计算电路,其特征在于:当需要校验的哈希值不止一个时,则每一个哈希值都验证成功,最终的验证结果才会成功;如果有任何一个哈希值验证失败,则最终的验证结果也失败;因此,当某个哈希值验证失败时,无论后面的验证结果成功与否,最终的验证结果都是失败的,所以随后的迭代计算和校验电路都进行关闭。
6.根据权利要求1所述的专用计算电路,其特征在于:对于门电路,选择面积小、功耗低的门单元,和/或选用不带复位reset、不带扫描scan的触发器来存储各级哈希计算单元的输出值。
7.根据权利要求6所述的专用计算电路,其特征在于:所述门单元为多位门单元。
8.根据权利要求6所述的专用计算电路,其特征在于:降低门电路的工作电压,以降低每次哈希运算的功耗。
9.根据权利要求1所述的专用计算电路,其特征在于:所述哈希运算包括SHA256、SHA3或SM3。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京智云芯科技有限公司,未经北京智云芯科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711288835.1/1.html,转载请声明来源钻瓜专利网。