代码之家  ›  专栏  ›  技术社区  ›  ccalboni

是否可以创建具有给定大小和MD5哈希的文件?

  •  6
  • ccalboni  · 技术社区  · 15 年前

    当然,我知道有可能创建一个具有一定大小的文件,以及如何做到这一点。但是,是否可以创建一个具有特定大小和特定MD5指纹的文件?

    6 回复  |  直到 15 年前
        1
  •  3
  •   Anton Gogolev    15 年前

    理论上,是的。实际上,它很可能需要计算所有元素的所有排列 N

        2
  •  4
  •   999999    13 年前

    虽然md5已经中断,但是这些中断只允许您使用相同的哈希创建两个不同的文件(图像),而不是使用预定的哈希。

    这需要2个 64 (2 128/2

    维基百科也有一篇关于图像前攻击的文章:
    http://en.wikipedia.org/wiki/Preimage_attack

        3
  •  4
  •   CoolOppo a_m0d    11 年前

    仅仅用给定的MD5散列创建一个文件是非常困难的 difficult enough

    你可以试试看 rainbow table ,但这需要很长的时间来创建和存储大量的内存。

        4
  •  3
  •   Michael Myers KitsuneYMG    15 年前

    尽管如此,研究人员最近发现了算法中的缺陷。上面有一些信息 Wikipedia page .

        5
  •  2
  •   Klaus Byskov Pedersen    15 年前

    MD5算法是不可逆的(一般来说),所以答案是否定的,除非你知道某个字符串的MD5散列,并将该字符串放入文件中。但我想那没什么意义。

        6
  •  1
  •   Oded    15 年前

    你创建的每个文件都有一个 某些 某些

    如果你想要一个 预定的 大小和MD5散列,这实际上是不可能的(您必须计算所有可能输入的所有散列)。