3 ms·
Well, yes and no. I actually mostly agree with your point, but just to play devil's advocate: When we talk about secure passwords (Not PINs for the moment, I'
by demallien 14y ago
Well, yes and no. I actually mostly agree with your point, but just to play devil's advocate:
When we talk about secure passwords (Not PINs for the moment, I'll get back to those in a moment), we're mostly worrying about how easy it is to recover someone's password from a database once a system has been compromised. However these days, we don't store the password, we store a hash of the password. To recover the password, the hacker has to successfully 'un-hash' the hashed password, which is done by applying a brute force cryptographic algorithm. The computer detects hits by examining the frequency of letters in the output, knowing that letters don't have an even distribution in passwords (or any other text). Choosing a random password is actually useful in this case, because even if the computer correctly finds the right key for de-hashing, it doesn't recognize your password as 'de-hashed' and just passes right over it.
So, for passwords, it is fairly clear that a random password is going to be safer than a word / name or other commonly used password constructs, in its ability to resist extraction from a compromised database.
Can we make the same claim for PIN codes? It would be harder - you only have 4 digits to work with, which makes it much harder to determine if digits are distributed in a pattern or randomly. You would expect a lot of false positives and false negatives. Nevertheless, distributions in real life numbers do exist - http://en.wikipedia.org/wiki/Benford%27s_law http://en.wikipedia.org/wiki/Benford%27s_law is an obvious example, which leads us to the non-obvious conclusion that making PIN codes longer probably leads to a lower level of security. On the other hand, the scenario in which this is a problem is when a database is compromised, and bank databases are amongst the most hardened targets on the planet, so the increase in risk is probably negligeable.
- beering 14y agoI'm going to need a citation for what you just said because it sounds like you have a really messed up view of how cracking passwords works. Strong passwords aren't strong because they fool the computer by not looking like passwords. Wtf?
- VexXtreme 14y ago" Choosing a random password is actually useful in this case, because even if the computer correctly finds the right key for de-hashing, it doesn't recognize your password as 'de-hashed' and just passes right over it." That's assuming someone is trying to brute force a system 'from the outside', without having access to the list of password hashes for the system. In reality such attempts rarely if ever happen and they are easily defeated by using rate limiting and other techniques. The problem arises when the attacker has a list of hashed password and is running checks against that list. In those cases, the fact that a password is random won't do any good as the program knows which password hash it is trying to crack. Furthermore, there is no "de-hashing". Password cracking software is actually hashing commonly used words, letter combinations and/or even random characters, and comparing the output of the hashing operation with the password hash that it is trying to crack. Cryptographic hash functions are unidirectional and cannot be reversed, you can only try to hash raw data and hope to produce a hash which matches the hash you're trying to "reverse".
- demallien 14y agoYou're talking about rainbow tables. They aren't used very much anymore, since the salting of hashes has become commonplace. As for your idea that hash functions can't be reversed, not so much. They can't be easily reversed, but that's not the same thing. In reality, brute forcing is pretty much the only viable attack left now that salting is commonplace. Still, if you have managed to get your hands on the password table, you can brute force without having to worry about rate limiting etc.