is it possible to create a file given an md5 hash

453

Solution 1

It is possible to find a file that has a given MD5 hash, but it is not possible to produce such a file from the hash itself.

Solution 2

A unique MD5 hash can be produced by an infinite number of files, as there is only 2^128 unique hashes but there are infinite files of infinite length (theoretically).

To create a file from an MD5 hash would take a large amount of effort! You would have create a sequence of unique files and generate the MD5 hash for each one until you found a match. Certainly possible to 'brute force' your way through.

However your task would be considerably easier if you had the original file that the hash was produced with. There are several known flaws with MD5 and it is possible to create slightly different files for the same hash. MD5 is not unbreakable as you say.

Share:
453

Related videos on Youtube

LBR
Author by

LBR

Updated on September 18, 2022

Comments

  • LBR
    LBR almost 2 years

    I'm trying to learn Ruby on Rails, and it looks like I'll need some type of database to build a basic web application according to the tutorials. So I'm trying to download and install MySQL onto my Mac according to these instructions. However, I'm running into a variety of problems. Unix isn't recognizing the following commands:

    groupadd mysql
    useradd -g mysql mysql
    

    I tried addgroup and adduser but I also get a command not found error.

    So then I tried to go ahead and configure mysql using cmake with the following commands:

    cd mysql-5.5.12
    cmake .
    

    But I get command not found for cmake as well. I installed CMake and put it in my Applications directory, but is there something else I need to do to be able to access it from the command line?

    In general, is there a simpler way to install mysql just for the purpose of working in RoR? Or is there a different database? I'm using this tutorial, which assumes "the MySQL engine is running."

    Thank you!

  • Ignacio Vazquez-Abrams
    Ignacio Vazquez-Abrams over 11 years
    That's not "create".
  • JZeolla
    JZeolla over 11 years
    +1 See: Trapdoor function & one-way function.
  • Gilles 'SO- stop being evil'
    Gilles 'SO- stop being evil' over 11 years
    @IgnacioVazquez-Abrams No, it's fair game. However, this method is useless in practice. If you're willing to spend the current age of the universe (a little under 1 billion billion seconds) enumerating possibilities, using a billion computers, each computer would have to perform about a trillion operation per second. Also, it is not guaranteed that there is a file containing only 1 bits with a particular MD5, you may need to put 0 bits as well. (It's not even known if all 16-byte blobs are the MD5 of some payload.)