美文网首页
SHA-3(Secure Hash Algorithm-3)过程

SHA-3(Secure Hash Algorithm-3)过程

作者: guw2016 | 来源:发表于2017-01-07 21:54 被阅读0次

            本文为对结城浩所著 《图解密码技术》一书中论述的SHA-3在2012年确定的标准算法Keccak用更简洁的方式描述下,力求让无专业数学的朋友们也能了解算法过程。

           

    图(一)

    (图一)Keccak过程:将需要Hash运算的消息补全并分为r个bit的最小整数倍个输入分组;用全0的r个bit与输入分组进行XOR异或操作,再补充c个干扰bit一起输入函数f( )中进行运算;运算结果继续与后续分组进行同样处理。在输入分组处理完后形成输出分组,根据需要的Hash散列结果长度再通过函数f( )获得多个输出分组。

    图(二)

    (图三)至(图七)为函数f( )算法。算法基本思想是用小正方体组成的长方体去装载b个bit,每个小正方体里装载一位bit。函数要对所装载的这些bit循环处理24轮,每轮5个步骤。

           

    图(三)

    图(三)第一步骤:在(X,Y)切面,对每个bit,用与该点位置不同的两列各自5个bit异或相加后,再与改bit异或运算。

    图(四)

    图(四)第二步骤:各(Y,Z)切面中所有bit,沿Z轴进行平行移动。

    图(五)

    图(五)第三步骤:在(X,Y)切面,对所有bit进行移位互换。

    图(六)

    图(六)第四步骤:对与X轴平行的每一行,将每一bit与另外两个bit计算结果再进行异或操作,得到新的行。

    图(七)

    (图七)第五步骤:亦即每轮最后,用一串常数对与Z轴平行的每道的所有bit进行异或操作。

    相关文章

      网友评论

          本文标题:SHA-3(Secure Hash Algorithm-3)过程

          本文链接:https://www.haomeiwen.com/subject/igafbttx.html