分析极端填充情况
来源:3-5 详解MD5 SHA1原理

慕函数6382292
2022-08-16
该节3分30秒,分析极端填充情况:
按照课程理解,无论原数据有多少位,都会在末尾将原数据长度Len写入到64位长度的K中,但有个疑问是padding最小是0位还是1位,假定padding最小为0位的话:
padding的长度 = 512 - 64 - ( Len mod 512 ),当 Len mod 512 = 0时,padding最大,为448;当 Len mod 512 = 448 时,padding最小,为0。
写回答
1回答
-
假设原消息长度为 `len` bits,首先在末尾填充一个 1
然后填充 n 个0,使得 len+1+n + 64 = 0 mod 512
其中 `1+n` 部分指的为填充进去的长度,也就是最少1位最多448位
当 len=447 mod 512 时,padding => {1}
当 len=0 mod 512 时,padding => {1000...000} 共448位,此时最多。
也可以参考资料: https://www.rfc-editor.org/rfc/rfc3174#section-4
112022-08-18
相似问题