How long and complex should a password be? At what point is it effectively uncrackable?
Time out: Look at that opening paragraph. Its 87 characters long, but it could be your password to your Windows system. Yes, even with the spaces in it. Technically, this has become known as a "passphrase."
Robert Hensing, a member of Microsofts Security Incident Response Team, has written in his blog that you shouldnt use passwords anymore for Windows systems—you should use passphrases. The blog entry has generated a lot of interest on security lists. Many agree with Hensing, and theres a lot I like about the idea. The discussions also raised my awareness of cracking tools for Windows passwords that do things you might not believe possible.
My opening lines might not make a good passphrase because its not very memorable. But lets say youre a Dead Head: "Its just a box of rain, I dont know who put it there" is a very strong passphrase, and it might be easy to remember. It has upper and lower case, punctuation and 58 characters. The downside relative to a more conventional password is that it has upper and lower case, punctuation and 58 characters. Its going to take a while to type, and youre more likely to make mistakes on it.
As Hensing points out, Windows has supported passphrases of up to 127 characters since Windows 2000. But boilerplate password advice from people like me has always focused on bizarre words that we kid ourselves as being easy to remember, like "Ih8m0d3rnART!" ("I hate modern art"). Take a phrase you can remember and distort it into a password. Hensing asks why not just use the phrase?
In fact, the "Ih8m0d3rnART!" example is instructive in another way. While it looks long and complex, and is relatively impervious to certain types of attacks, its only 13 characters and is therefore vulnerable to a weakness in Windows 2000 password hash methodology. Ill get into it more in a future column, but if you have local administrator access to the system, its possible to reverse-engineer Windows passwords up to a particular length. As I understand it, this problem has been eliminated in Windows 2003 domains, but remains in Windows 2000 for reasons of backward compatibility with third-party programs.