gpt4 book ai didi

c++ - 仍然遇到MD5问题

转载 作者:行者123 更新时间:2023-11-30 05:35:58 25 4
gpt4 key购买 nike

我用 C++ 完成了 MD5 算法的实现,但它不能正常工作...我的哈希值不正确。

仅供理解:如果我尝试使用 MD5 哈希算法对文件(64 字节)进行哈希处理,则必须发生以下情况:

//    512 Bit(data)     512 Bit(Padding)
// ------------- -------------
// |xxxxxxxxxxx| |10000000|64|
// ------------- -------------
//
// 1 - appended 1 Bit
// 0 - filled with zeros until 8 bytes before end of block
// 64 - 64 bit (8 Byte) representation of size of file

第1:带数据 block 的MD5算法

第二:使用 Padding 创建额外的 block

第三:带填充 block 的MD5算法

对吧?

最佳答案

64 位表示的值必须以位为单位,而不是字节!因此,在我的例子中,计数器不是 64。它是 64*8 = 512。

关于c++ - 仍然遇到MD5问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33673381/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com