sm3算法的简单介绍

Posted insistYuan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sm3算法的简单介绍相关的知识,希望对你有一定的参考价值。

 

转自:https://blog.csdn.net/hugewaves/article/details/53765063

 

SM3算法也是一种哈希算法,中国国家密码管理局在2010年发布,其名称是SM3密码杂凑算法,密码管理局有该算法的详细说明,可以到其网站下载。本文只是简单的介绍这个算法,便于理解。 
1、算法的本质 
给数据加一个固定长度的指纹,这个固定长度就是256比特。 
2、处理过程 
第一步:填充,使填充后的数据的长度是512的整数倍 
先在数据的最尾巴上加一个1;然后把原始数据的长度用64比特表示,放在最后面;再看看现在的数据的长度值离512的整数还差多少个,差多少个就填多少个0在加的这个1和64比特的长度之间。 
第二步:分组 
把填充后的信息按照512比特一个分组进行分组,如果分成了N组,就是b(0),b(1),,,b(N-1) 
第三步:迭代压缩得到最后的杂凑值(哈希值) 
IV(n)=CF(IV(n-1),b(n-1)) 
如果信息分为N组,那么IV(N)就是最后得到的杂凑值。

宏观上算法就是这样一个过程,在这个基础上再去看具体的算法就比较容易了。

以上是关于sm3算法的简单介绍的主要内容,如果未能解决你的问题,请参考以下文章

rsa加密算法简单介绍

简单介绍神经网络算法

算法——堆的简单介绍

算法之--堆的简单介绍

RSYNC及其算法简单介绍

Paxos算法简单介绍