Im new at coding so Maybe I’ve missed the point of what md5 is about.
But from what’ i’ve experienced MD5 encryption is “static” for each word. By static i mean you will always find the same result for example md5(“hello”). And this makes me think that is is highly reversible using a library.
What if md5(“hello”) was assigned a number (example 5), and the string for example
xbuIdSjsdsjsd44s64sd was its encryption. and was equal to 5
but what if
sfoiefef465f4ze4f6fe was also its encryption. and was also equal to 5
Because both for a mathematical calculation ends to the same result. That would be dynamic encryption?
I think, but I tell you I’m a newb at all this, so those are just questions that bother me,
I think that people who have access to the database md5’s password, can reverse them easily by testing words and stocking them as a library.
what do you think guys?
and is there an alternative to md5?
thank for any help or enlightnment
These are indeed legitimate concerns. You might find the following articles interesting:
But MD5 is considered “broken” by security professionals. It depends on exactly what your requirements are: MD5 might be suitable, but more secure hashes like the SHA-2 family would probably be a wiser choice, or even key-strengthening techniques such as PBKDF2 (as CodeInChaos suggests).
Note that your choice of hash algorithm alone can’t be considered either secure or insecure in isolation. It’s important to use the hash algorithm in a proven, tried-and-tested way.