@iPhan
2017-12-08T07:22:04.000000Z
字数 983
阅读 764
密码学
输入输出说明了SM3压缩函数输入输出的格式及来源
常量定义说明了SM3压缩函数用到的常量的值
函数定义说明了SM3压缩函数用到的三个函数
函数体说明了SM3压缩函数
取 ,定义压缩函数输入输出为:
其中, 为上一次迭代中压缩函数的输出; 为消息分组 为消息扩展模块的输出。
注:
三个函数的输入X, Y, Z 为字
定义: 为字寄存器; 为中间变量
变量说明:
py伪代码
for i in range(64):SS1 = ((A<<<12)+E+(T_j<<<(j % 32)))SS2 = SS1 ^ (A<<<12)TT1 = FF_j(A, B, C) + D + SS2+ W_j_TT2 = GG_j(E, F, G) + H + SS1 + W_jD = CC = B <<< 9B = AA = TT1H = GG = F <<< 19F = EE = P_0(TT2)
对于 ,函数输出
