第六章消息认证和杂凑算法20156研讨.ppt

Keccak概述 吸收过程: 1. state S被初始化为0; 2. 对输入进行填充; 3. 将第一组r1个输入bit与r进行异或; 4. S被f(S)取代; 5. 下一个r2个输入比特与r进行异或; 6. S被f(S)取代 … 循环直至所有的r数据块被计算完成 . * Keccak概述 压缩过程:1. 将所得运算结果S截取r位,赋值给Z; 2. 如果r小于输出结果n,对S进行迭代运算; 3. 将迭代运算结果截取r位级联到Z后面,循环进行迭代和级联直到Z的长度大于n; 4. 截取Z的前n位,所得结果即为Keccak的运算结果。 * keccak概述 b=25×2? w=2? a[5][5][w] * state S[w(5y+x)+z]=a[x][y][z] * f[b]: θ θ是线性的,以扩散为目的。 * f[b]: ρ 满足 当x=y=0时,t=-1。 用不同的三角形数对slice上的25个数进行比特旋转。 (0,1,3,6,10,15,21,28,36…) x=3 x=4 x=0 x=1 x=2 y=2 153 231 3 10 171 y=1 55 276 36 300 6 y=0 28 91 0 1 190 y=4 120

文档评论(0)

1亿VIP精品文档

相关文档