Is there any way to decrypt the encrypted MD5 string, given the key?
MD5 is an asymmetric hash -- not an encryption mechanism. You can't "decrypt" an MD5. If you know the hashed contents are limited to a (short) set of possibilities, you can use a Rainbow Table to attempt to brute-force reverse the hash, but this will not work in the general case.
MD5 is a one-way hash. It cannot be decrypted. The closest thing to decrypting an MD5 hash would be to do a lookup against a pre-generated rainbow table. Also, I'm not sure what you mean by "I have the key". There is no "key" in an MD5 hash. Perhaps you are thinking of a salt? If your data has a salt value incorporated prior to hashing, the rainbow table approach probably won't be practical anyway.
MD5 is not a encryption algorithm, it is a hashing algorithm. Read up on MD5 and Crytographic Hash Functions.
To create a MD5 hash of a string in Python you do as follows:
import hashlib
m = hashlib.md5()
m.update("String to Hash")
echo m.digest()
# '\xed\xa5\x8bA-nU\xa2\xee\xbb[_s\x130\xbd'
echo m.hexdigest() # its more common to show hashes as a hex string
# 'eda58b412d6e55a2eebb5b5f731330bd'
Try Google (see Using Google To Crack MD5 Passwords) or an online DB of MD5 hashes like md5(); or GDATA (the last one contains 1,133,766,035 unique entries).
Message-Digest algorithm 5 is a widely-used cryptographic hash function with a 128-bit hash value. Encryption has 2 way : encrypt - decript , hash has one way - there is no decryption possible. BUT with database hash IS POSSIBLE to solve this issue.
See this sites :
www.rednoize.com – 50,709,274 Hash in database
www.md5oogle.com – 6,353,625 Hash in database
www.hashmash.com – 1,611,191 Hash in database
www.gdataonline.com 1,155,613 Hash in database
www.md5decryption.com – 872,145 Hash in database
www.md5decrypter.com – 583,441 Hash in database
www.md5decrypter.co.uk – 41,568,541 Hash in database
www.macrosoftware.ro – 5,403 Hash in database
@catalin: thank you so much. i checked the site's which u have mentioned. it worked out for me..