but now my task is to find a way to decrypt it.
Good luck. MD5 is a hash, which means one-way, not necessarily bijective conversion, from input to output. MD5 is known to be weak, but only for general collisions, and not for the selected hash attack. You can try every possible input until you get the correct hash (or collision), but it will be costly and not necessarily a good idea. In addition, pre-created rainbow tables can be used as a memory compilation over time. They take a long time to generate, but have a quick search. I will not refer to them because of disagreements on their use, but you can get and purchase them freely if you are within the applicable laws of your jurisdiction. This process is still not ordinary, and it is not a good idea for a webapp or a general application.
Have you looked into AES instead, which has a key and is encrypted, allowing decryption with this key?
source share