6 ms·
If using MD5 is all you do, you'd still be susceptible to brute force attacks. MD5 is a really fast hash to compute, salting or not. The solution is to pick a
by seabee 15y ago
If using MD5 is all you do, you'd still be susceptible to brute force attacks. MD5 is a really fast hash to compute, salting or not.
The solution is to pick a better algorithm and learn how to use it securely. That probably won't happen unless all the ridiculous PHP 'security' tutorials are erased from the history of the internet and only correct methods are shown.
- carbocation 15y agoDefinitely. I'm just saying that I could recover the common passwords with a 486 instead of a GPU :)
- dhimes 15y agoDo you have a reference that you would consider "the minimum you should know?" And, perhaps, maybe one somewhat better than that one? TIA.
- tptacek 15y agoYes: http://codahale.com/how-to-safely-store-a-password/ http://codahale.com/how-to-safely-store-a-password/ This is the answer to this question. You should bookmark it and share it with your peers when this question inevitably comes up on another thread.
- dhimes 15y agoOK, so this is still the definitive thinking. I think you've told us about this before. Thanks again.
- almost 15y agoJust remember "use bcrypt" and you should be fine. There is almost certainly a library for it for your language.
- bad_user 15y agoIf using MD5 is all you do, you'd still be susceptible to brute force attacks. Only if you know the algorithm and salt used (i.e. your source code is also compromised, not just your database). Otherwise, demonstrate to me how you can find the passwords that relate to these hashes (all of them use the same salt): 23C206503ABD36FCB575FC8F12791CF0 D82BDB4160F60B657D6F994B553D2E63 0DA0572E042F822F91772F14269548E6 CB8BF6C16029400885F9A68A17576FA7 7CE4F679810409CF1477CF142B481EF9 It should be easy, right?
- rimantas 15y agoYou ommited this: > MD5 is a really fast hash to compute, salting or not. Just spend some time thinking about this.
- bad_user 15y agoYes MD5 is fast to compute and ... NO, in the example I've given it really does not matter much. As I said, it should be easy cracking those hashes right? Prove me wrong.
- burgerbrain 15y ago"Prove me wrong." This is not how discussions in this topic work.
- JoachimSchipper 15y agoIt's somewhat optimistic to assume that the adversary knows no passwords - even if you can't create a user, phishing one isn't that hard. That makes recovering the salt much easier.
- bad_user 15y agoWell yeah, but then you're proposing a brute force against the salt and the salt can be anything of any length. So if you're assuming a salt that can contain standard latin letters and digits and is 256 in length, that's 62^256 possible variations. Do note that I'm not saying here that MD5_HMAC doesn't have flaws, but it definitely doesn't have the same flaws as MD5, cracking it ain't easy and I can't find a reference for an instance in which this was actually done.