- 论坛徽章:
- 0
|
原帖由 wolf0403 于 2006-6-11 01:14 发表
参考 TCP header 计算 checksum 的办法。预先在文件中留空白串("\0\0\0\0..." 足够写入整个 MD5 结果为准),计算 MD5SUM,然后把结果写入预留空间。进行检验的时候,把这个部分的内容置 '\0' 计算,然 ...
checksum是可以累加的,你可以留白后期再算,md5似乎不能这么做,不知道你是否了解md5的计算方式,它本质上是个hash码。
一个最简单的例子是:
建立一个新文件,在文件中写下一个md5码并保存,并用md5算法来计算这个字符串得到的结果就是原来这个串,用公式来表达就是:
md5(stringA)=stringA ----------1
当有其他文本时公式变成
md5(stringB+stringA)=stringA --------2
对于1式请给出一个或多个解stringA
对于2式,已知stringB,要求一个满足条件的stringA
问题是方程是非线性的md5算法不是checksum算法,所以要求这个方程好像比较难哦,我没有找到方法,所以来问,但感觉楼上的说法不对,似乎不那么简单。 |
|