Is it possible to create a MD5 collision based on a known input value?
So for example I have input string abc
with MD5 900150983cd24fb0d6963f7d28e17f72
.
Now I want to add bytes to string def
to get the same MD5 900150983cd24fb0d6963f7d28e17f72
.
(I know this is possible by bruteforcing and waiting a long time; I want to know if there is a more efficient way in doing this)
The act of searching for collisions for a particular function is known as a collision attack. MD5 and SHA-1 are two of the most popular hash func- tions and are in widespread use. However, MD5 and SHA- 1 are vulnerable to collision attacks based on differential cryptanalysis.
A collision is when you find two files to have the same hash. The research published by Wang, Feng, Lai and Yu demonstrated that MD5 fails this third requirement since they were able to generate two different messages that have the same hash.
Collision attack against widely used MD5 algorithm took 10 hours, cost just 65 cents.
Overview of security issues In 2004 it was shown that MD5 is not collision-resistant. As such, MD5 is not suitable for applications like SSL certificates or digital signatures that rely on this property for digital security.
Unitl now no algorithm has been discovered that allows you to find a matching input that will generate a given md5 hash.
What has been proven is that you can create md5 collisions quite easily, for example with what is known as chosen-prefix-collision: you can create two files yielding the same md5 hash by appending different data to a specified file. If you want to know more or get the program to try it, look here.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With