You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

基于MD5哈希函数,已知总块比特数与填充位,求原始消息长度

MD5原始消息长度计算问题解答

首先明确MD5的填充规则:

  • 第一步:在原始消息末尾先添加1个1比特,再添加若干0比特,使得填充后的消息长度模512等于448比特;
  • 第二步:最后添加固定的64比特,用来存储原始消息的比特长度。

已知处理的总块数是2467个,每个MD5块为512比特,所以总处理长度为:2467 * 512 = 1263104比特,这个长度已经包含了原始消息 + 第一步的填充比特 + 第二步的64比特长度字段。

你的计算逻辑完全错误,正确的原始消息长度计算公式应为:
原始消息长度 = 总处理长度 - 填充比特数 - 64比特

代入已知数值:
原始消息长度 = 1263104 - 51 - 64 = 1262989比特

需要注意:这里的“填充大小为51比特”指的是第一步添加的所有比特(包含开头的1个1比特和后续的50个0比特),符合MD5填充后长度模512等于448的规则(验证:1262989 + 51 = 1263040,1263040 mod 512 = 448,满足要求)。

内容的提问来源于stack exchange,提问作者luciferRayan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.03 19:03:16