一种SM3杂凑加密算法多模块实现方法及外部计数器技术

技术编号:16607633 阅读:83 留言:0更新日期:2017-11-22 17:53
本发明专利技术公开了一种SM3杂凑加密算法多模块实现方法及外部计数器,先进行写状态,再进入加密状态,再进入读状态,其中:空闲状态,该状态下,初始时控制参数为0,停止一切运算;写状态,该状态下,count从0开始到16之间计数,count=16时进入加密状态;加密状态,该状态下,count从0开始到69之间计数,count=69且R=1、finish=1时进入读状态;读状态,count从0开始到7之间计数,count=7时输出加密后的数据,输出后直接进入空闲状态等待下一轮加密。本发明专利技术减少了寄存器个数,由于寄存器会带来大量的面积和功耗开销,所以嵌套迭代的方法使得面积的减小的同时也降低了功耗的开销。

【技术实现步骤摘要】
一种SM3杂凑加密算法多模块实现方法及外部计数器
本专利技术涉及计算机
,尤其涉及一种SM3杂凑加密算法多模块实现方法及外部计数器。
技术介绍
为从根本上摆脱对国外加密技术和设备的过度依赖,国密局的网站在2010年底公布了基于椭圆曲线ECC的SM2公开密钥国密算法和SM3杂凑算法。加上原来的SM1商密对称算法,中国自主定义的加密算法终于展现出来了。SM3密码杂凑算法适用于商用密码应用中的数字签名和验证、消息认证码的生成与检验以及随机数的生成,可以满足多种密码应用的安全需求。现有的SM3实现方法大多数是由Java或者C语言实现,没有办法直接在硬件平台上实现加密。少数的SM3硬件实现只由一个模块生成,只能实现512bit输入,无法扩展到L<的数据长度。并且没有状态控制,无法与其他加密算法进行通信。
技术实现思路
有鉴于现有技术的上述缺陷,本专利技术所要解决的技术问题是提供一种SM3杂凑加密算法多模块实现方法及外部计数器,采用分模块,并且计数器外置的的设计方法,数据输入、消息扩展压缩、结果输出等采用同一个外部计数器。对比单一模块的实现,对每一个状态均需要一个独立的计数器,减少了寄存本文档来自技高网...
一种SM3杂凑加密算法多模块实现方法及外部计数器

【技术保护点】
一种SM3杂凑加密算法多模块实现方法,其特征在于,包括读状态、写状态、空闲状态、加密状态,先进行写状态,再进入加密状态,再进入读状态,其中:空闲状态,该状态下,初始时控制参数W=0、R=0、finish=0、count=0,停止一切运算;写状态,该状态下,初始时控制参数W=1、R=0、finish=0,count从0开始到16之间计数,count=16时进入加密状态;加密状态,该状态下,初始时控制参数W=0、R=0、finish=0,count从0开始到69之间计数,count=69且R=1、finish=1时进入读状态;读状态,该状态下,初始时控制参数W=0、R=1、finish=0,cou...

【技术特征摘要】
1.一种SM3杂凑加密算法多模块实现方法,其特征在于,包括读状态、写状态、空闲状态、加密状态,先进行写状态,再进入加密状态,再进入读状态,其中:空闲状态,该状态下,初始时控制参数W=0、R=0、finish=0、count=0,停止一切运算;写状态,该状态下,初始时控制参数W=1、R=0、finish=0,count从0开始到16之间计数,count=16时进入加密状态;加密状态,该状态下,初始时控制参数W=0、R=0、finish=0,count从0开始到69之间计数,count=69且R=1、finish=1时进入读状态;读状态,该状态下,初始时控制参数W=0、R=1、finish=0,count从0开始到7之间计数,count=7时输出加密后的数据,输出后直接进入空闲状态等待下一轮加密;每加密完成一个512bit数据时,如果没有R=1信号,就会返回到空闲状态;每输出一次256bit数据时,都会返回到空闲状态。2.如权利要求1所述的一种SM3杂凑加密算法多模块实现方法,其特征在于:所述写状态下,压缩扩展模块读入待加密的随机数,一次最多读入51...

【专利技术属性】
技术研发人员:殷含微熊晓明
申请(专利权)人:广州星海集成电路基地有限公司
类型:发明
国别省市:广东,44

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

1