• Quick note - the problem with Youtube videos not embedding on the forum appears to have been fixed, thanks to ZiprHead. If you do still see problems let me know.

Ed Password Format - Strength and Safety

Bell, take a peek at that brute force time estimate calculator I linked up above. I know you'd just have to trust it for now since it's a black box, but seriously, it'll help illustrate what towlie is saying. As a simple, quick example: Suppose I set up a 5 character password, check all the boxes for uppercase, numbers, punctuation, etc., and set the speed to 2,000,000 passwords checked per second. That ends up taking only 68 minutes. Now, go to a password only 6 characters long, but only check the lower and upper case letters boxes. It's using far fewer characters -only letters and their capitals - but it's more than doubling the time required to break it (165 minutes).

Thanks, clear to me now :-)

But where does when one stop with the password length? 16? 17? 18? ...

All dirty jokes aside: Length is better than complexity.

But the longer it is, the longer it takes to get a satisfying result.
 
But where does when one stop with the password length?
That depends entirely upon the function of the password. If it's a website like this one, you really don't have much at stake and there's not much motivation for others to try to hack your password. Also, there's no way to do a high-speed, brute-force attack because you have to wait for the server to tell you if the password is correct or not.

But if it's the online banking password for the account where you keep your life savings, that's a little different and you'll probably want the longest and most random password you can handle, although you're generally protected by limits the banking servers place on password attempts.

If it's encrypted data on your laptop, that might be where you need the best password of all, because a thief can take all the time he needs to crack it with an automated program.

Every security situation is different and has to be considered independently.

And by the way, never use the same password for two different purposes. Every time you enter a password, it should be completely different from any password you're using anywhere else.
 
Thanks, clear to me now :-)

But where does when one stop with the password length? 16? 17? 18? ...

Towlie is right. There is not really a "one size fits all" answer to that; it varies depending on multiple factors. It's just that the general principle of a longer password - or beyond a certain point, a passphrase - is better than a shorter one stands. The specifics depend on the situation.

An IT Security Officer answer :D would be "the maximum the system is able to handle". But who wants to make a password that long?? :boggled: Where I work, you can have over one hundred characters for our centralized authentication system, but I guarantee you nobody's got one that long. Mine is pretty abysmally long (well over 20+; don't want to give too much away), but I work in a place where a breach could potentially enable violations of US government FERPA and HIPAA laws, and that would mean my termination. So I make damn well sure I'm good.

At risk of overgeneralization: A good passphrase length would depend on the state of the cracking technology. The SANS organization has a spreadsheet available for computation of expected times to crack a passphrase; you change the variables and read off the output. That can be found here:
http://blogs.sans.org/windows-security/2009/06/12/how-long-to-crack-a-password-spreadsheet/

If I use the following presumptions in that spreadsheet:
  • A single computer doing a brute force attack
  • The computer is able to calculate 1,000,000 "keys" (passwords or passphrases) per second
  • The password I'm using in this example only uses upper and lower case letters, no numbers, no punctuation characters, etc.
... it tells me that a 10 character password should take on the order of 45 years to "brute force" crack. An 11 character password would take over 2,300 years, a 12 character one over 123,000 years. Whereas a 9 character one would only take just under a year (321.75 days), roughly. Where's the sweet spot there? For those criteria, it's where you feel safe, but what about when those initial presumptions change? Just having two computers do the attack means that a 10 character password would be broken in just 22 years.

So, you see what I mean by "situationally dependent"? For important systems, we actually have to pay attention to the state of the art in hacking to determine our defense. For unimportant places (sorry, JREF, I mean "unimportant" as far as "severity of a break in", so this site is my example), just having something simple and short is sufficient. Worst that would happen to me if someone compromised the ElMondHummus account is that I get kicked off of the forum. Personally painful, but hardly a large issue legally.

Anyway... I'm sorry I don't have a good, simple answer, but thanks to malicious people on the internet, there is no good, simple answer beyond "longer is better".

But the longer it is, the longer it takes to get a satisfying result.

And the longer it is, the more exercise your hands get! Wait a minute, that's wrong on too many levels... :boggled:

;)
 
<snip>
And by the way, never use the same password for two different purposes. Every time you enter a password, it should be completely different from any password you're using anywhere else.

One problem. There are heaps of sites that demand a password. I could use a unique one for each of them, however there is no way known I could remember them all.

Most of them are on the computer. I could buy some software to remember the password for me. But then I would never know if there is a weakness in the software that allowed someone to tell them of all the passwords.

So what is the answer in today's world?
 
One problem. There are heaps of sites that demand a password. I could use a unique one for each of them, however there is no way known I could remember them all.

Most of them are on the computer. I could buy some software to remember the password for me. But then I would never know if there is a weakness in the software that allowed someone to tell them of all the passwords.

So what is the answer in today's world?

Password managers.
 
When is the last time you looked to see if there was a little dongle about 3/4" long (not much bigger than the plug on the keyboard) inserted between your keyboard and the computer. This little key logger can defeat the longest and most complex passwords.
 
Thanks for all the feedback!

I was planning to go through all my online accounts and registrations to check my personal information and change my passwords.
 
I have come up with ways of generating easy to remember and secure passwords, different for each site, that also fullfil all requirements regarding use of numbers, capital and lower case letters and special characters.

Then comes a site every now and then where some moron has decided that I shouldn't be able to change the password the site assigns to me, or that passwords should be of a certain length etc. Or, the most annoying, that I have to change my password every 3 months and not use a previously used password.
 
Okay.

I chose the numbers 32 and 64 just because they're convenient for demonstrating my point. Both numbers are powers of two.

Two raised to the fifth power, which means 2 x 2 x 2 x 2 x 2, or 25, equals 32. An example of a set of 32 characters that are all easy to type would be abcdefghjklmnpqrstuvwxyz23456789. Using this character set for the case of a password consisting of a single character, there would be 25, or 32, possible passwords.

For the case of a password consisting of two characters, there would be 32 X 32 or 1024 possible combinations. This can be expressed as

322 = (25)2 = 25 x 2 = 210.

The identity that applies here is (NA)B = NA x B.

For the case of a password consisting of 16 characters, there would be 3216 = 1,208,925,819,614,630,000,000,000 possible combinations. This can be expressed as

(25)16 = 25 x 16 = 280.

(You can see the advantage of working with exponents when the numbers get huge like this.)

In the above case, if the character set is increased to 64 characters, which would necessarily involve using the shift key, there would be

(26)16 = 26 x 16 = 296 = 79,228,162,514,264,300,000,000,000,000 combinations.

That's 65,536 times as many combinations and an impressive increase in security, to be sure, but look what happens if you keep the set of 32 characters and just tack on four more characters for a total of 20. In that case you get

(25)20 = 25 x 20 = 2100 = 1,267,650,600,228,230,000,000,000,000,000 combinations.

That's 16 times as many combinations from adding four more characters as what you'd get from increasing from a 32 character set to a 64 character set.

And that's why increasing password length is more effective than using a larger character set.

To me, it appears your argument only works if passwords/-phrases are truly random generated out of your character set. But that's not what actual users find workable.

Users need to be able to remember their passwords, and this requires much more work with random passwords. Instead, they use easy to remember passwords, as in dictionary words, which can be used to cut down time on an attack as you don't need to check every combination, just the ones that appear in everyday language. Let's not forget personal data that allow specific attacks (birthdates of children, for instance).

Adding special characters, capitalization and random typos is a way to keep both the rememberability and security high.

I presume that's also where the OP's 12 characters come from: There are not that many dictionary words that are that long, hence it forces people to use additional (special) characters to reach that length. Of course, adding just "1" (or "1234" or some such) at the end to fulfill the requirement of digits does not increase security very much if everything before is a common word.
 
Last edited:
That's very novel. I wonder what security experts like Bruce Schneier think about it. It seems his readers have mentioned it but I haven't found any comments from him about it yet.

You can read about it here.
It's not very novel. It's been in widespread use for a decade, especially in the online banking world. It's usually combined with other things though, like a PIN code on the key generator itself or a password (and a semi-secret username like a national identification number), so you have even more to remember.
 
One problem. There are heaps of sites that demand a password. I could use a unique one for each of them, however there is no way known I could remember them all.

Most of them are on the computer. I could buy some software to remember the password for me. But then I would never know if there is a weakness in the software that allowed someone to tell them of all the passwords.

So what is the answer in today's world?

One way is to use some 'base' password and then add a site specific portion. So, for instance, the first several letters of the site name could be grafted on.

How this might work in practice: Base is Home45dog and for this forum it becomes -- Home45JREFdog and for PayPal -- Home45PAYPdog

Not ideal, but works in the wild. It also has the property of getting you away from dictionary style attacks.
 
I presume that's also where the OP's 12 characters come from: There are not that many dictionary words that are that long, hence it forces people to use additional (special) characters to reach that length. Of course, adding just "1" (or "1234" or some such) at the end to fulfill the requirement of digits does not increase security very much if everything before is a common word.

No, that's just what I thought was mentioned in the thread I can't find anymore.
 
True, but for some reason a lot of sites where such security is desired limit passwords to 16 characters and REQUIRE at least one of each character type, while very few allow 20 characters.
As an old BOFH once told me, "I'd rather reset passwords daily than have my system compromised by a weak password."

All password system I know which are halfway modern and secure (read : not older than 15/20 years ETA and not html forum level security) allow variable length password , up to whatever you want.

What they save *anyway* is a salted hash of fixed length, and it does not matter how long is your password.

If a system limit yourself to a special length (16 or whatever) then it is either limiting itself due to some artificial technical constraint imposed by the programmer (read : idiotic constraint) or it is not salt-hashing the password but save in reality it in encrypted form to allow a later retrieval, (a security hole in itself, and can be relatively easily exploited with social hacks).

All mainframe or WS system I know of use salted hashed password, and need an administrator intervention to reset the account, but this is much secure as you have neigh unlimited length to make your password.

One of my password used to be "GIST 2501 tohokami emi tame *" where * was a number I increased every time Iw as asked a new password.

No special char. Good luck with your dictionary acttack. Unless you already have physical access (key logger or similar in which case anyway physical acces==I lose no matter password strength) or you look over my shoulder, you have no chance to find it out.

I have another citation in the mean time, but I mix 3 different language (english german japanish) and 1 number. No special char. Nothing.

That type of password is much much more secure than any combo of of special char/number/lowercase/uppercase you can think of, limited to 16 char or 12 char. And easy to remember , and probably much harder to keyboard-spy than a 12 digit stuff. And I don#t need to write it on post it.
 
Last edited:
Not good enough

Ref:http://en.wikipedia.org/wiki/Password_manager See the section on Vulnerabilities

Meh. You've got one strong password to remember rather than dozens (or hundreds for some of us) and keyloggers aren't as big a worry as some suggest. You have much bigger problems than criminals accessing your online banking if someone broke into your home and installed a keylogger without disturbing anything. "Ha! They do that with trojans and viruses and worms and things!" If you're not savvy enough to avoid that, you're probably not savvy enough to use a strong password in the first place.
90% of the "I was hacked via a keylogger" claims I've heard, the password was compromised some other way. Of the actual keyloggers, few resulted in compromised accounts. And of THOSE, almost all were of the sort where someone installed the keylogger thinking it was a cheat for an online game (in other words, just deserts.)
 
One way is to use some 'base' password and then add a site specific portion. So, for instance, the first several letters of the site name could be grafted on.

How this might work in practice: Base is Home45dog and for this forum it becomes -- Home45JREFdog and for PayPal -- Home45PAYPdog

Not ideal, but works in the wild. It also has the property of getting you away from dictionary style attacks.


Speaking of use in the wild, do you ever access unencrypted web sites from open wireless access points? Unless the site is kind enough to have the script pre hash your password before sending it to the server, you might as well shout your password to everyone in the room.

Once someone has collected a couple of your passwords from open sites it won't be that hard to guess your pattern and start attacking the hard sites where the money is.
 
Speaking of use in the wild, do you ever access unencrypted web sites from open wireless access points? Unless the site is kind enough to have the script pre hash your password before sending it to the server, you might as well shout your password to everyone in the room.

Once someone has collected a couple of your passwords from open sites it won't be that hard to guess your pattern and start attacking the hard sites where the money is.

No, no open wireless -- I'm strictly a home user.

Very true. What I am striving for is a balance between usability and security. Before this, I was using the same username and password everywhere... and I wondered what was going on at some of those sites that conned me into a sign-up for a white paper or something. What I do like is visiting a site I haven't been to in a coon's age and being able to sign in by knowing the algorithm I used to construct the password.

So I'm memorizing the recipe instead of a series of passwords. Anyone with some access and savvy could also reconstruct the recipe. But I like it. Better might be an automated construction from the URL in a little hot-key activated app. Not being a coder, someone would have to write it for me.

"For every lock there is a pick."
 
Once someone has collected a couple of your passwords from open sites it won't be that hard to guess your pattern and start attacking the hard sites where the money is.
Like I said back in post #22, "Every time you enter a password, it should be completely different from any password you're using anywhere else. "
 
This difference could be accomplished if there were a standard password hasher built into the browser. Even if the user entered the same password for every site, hashing the password with the user name and a site provided sequence code would insuer that each site sees a unique passcode. Sites could even rotate the sequence code to increase security because each login would setup a new code for the next one.
 

Back
Top Bottom