News for hackers. Stuff that matters.
Re:The man who wrote the book on password management regrets... by GlitchMr on Wednesday August 09, 2017 @08:52AM (#14968140)
The long passphrase idea as suggested by xkcd is fine, provided you pick random words. For instance, a database of 2048 words, and a 4 word passphrase has 44 entropy (2^44 possible passwords).

  >>> log2(2048 ** 4)
  44.0
Even if somebody knows the pattern they have 17 592 186 044 416 passwords to try. You can further increase number of passwords to try by increasing number of words. Probably with advances of technology 4 words may be somewhat unsecure in the future, but 5 words is 2048 times harder to crack than 4 words password, so it should be still secure.

The article in question shows three word passwords being cracked, but please note that three words is 2048 times easier to crack than 4 words, and probably very feasible to crack using graphics cards (provided poor choice of algorithms like MD5).

Re:The man who wrote the book on password management regrets... by Taek on Wednesday August 09, 2017 @09:27AM (#14968509)
In practical terms, that's still not very many. GPUs can do 2 GH/s for a simple hashing function. Your 44 bit password can be cracked in 4 hours by a single GPU, or in minutes by a cluster.

A large KDF helps, but damages user experience and again starts to become fragile if your threat model includes ASICs (a $3m expense or so for an attacker. That's a practical sum for many applications).

To put things in perspective, a CPU can do about 2^20 hashes per second. A $3m ASIC cluster (made entirely from scratch) can do about 2^52 hashes per second. It's obscenely asymmetric.

For high security accounts, you really want like 64 bits of entropy in your password plus a KDF, or you want 80 bits without a KDF.

KDFs have another major problem. If you forget a word in your password, and you also have a KDF, you have to fight your own KDF to discover that last word. You don't want that barrier.

edit: was off by a factor of 1000 in my ASIC math. $3m in ASICs can do about 2^52 hashes per second, not 2^42

Re:The man who wrote the book on password management regrets... by marcosdumay on Wednesday August 09, 2017 @10:34AM (#14969341)
> you have to fight your own KDF to discover that last word. You don't want that barrier.

You pretty much want it. Why would you make your password easy to brute force so that you can recover it in case you forget it? This makes no sense.

A 6 word phrase reaches your 64 bits target (on the GP's 2-48 word dictionary). It is still easier to remember than a base64 dump of a 64 bits random number. I still fail to see anything wrong with passphrases.

Re:The man who wrote the book on password management regrets... by Taek on Wednesday August 09, 2017 @08:53PM (#14975296)
8 words is enough without a KDF. If you know 7 of the 8 words and there is a KDF, you might not be able to figure out which word is wrong or missing. But if there is no KDF you may be able to forget up to even 3 words.

Being able to brute Force your own password is a good thing if you can at least depend on knowing most of it.

Re:The man who wrote the book on password management regrets... by tome on Wednesday August 09, 2017 @09:41AM (#14968631)
> For high security accounts, you really want like 2^64 bits of entropy in your password plus a KDF, or you want 2^80 bits without a KDF.

I think you mean 64 bits and 80 bits!

Re:The man who wrote the book on password management regrets... by Taek on Wednesday August 09, 2017 @11:18AM (#14969953)
Oops. Fixed.
Re:The man who wrote the book on password management regrets... by corobo on Wednesday August 09, 2017 @10:38AM (#14969407)
Don't sites also salt (and pepper?) passwords though? Does this still apply in the scenario that they have done so?

Edit: Realised Google exists, currently reading https://stackoverflow.com/questions/16891729/best-practices-...

Re:The man who wrote the book on password management regrets... by dspillett on Thursday August 10, 2017 @06:59AM (#14978428)
> Don't sites also salt (and pepper?) passwords though?

They should salt. They should do many things. But we know some sites don't, we suspect many sites don't. Unless you know otherwise never assume a site is handling your data, including your login credentials, securely.

Re:The man who wrote the book on password management regrets... by Bartweiss on Wednesday August 09, 2017 @11:00AM (#14969686)
That math is for fast hashes without salting, agreed. Of course, plenty of sites that lose passwords also make those mistakes...
Re:The man who wrote the book on password management regrets... by ykler on Wednesday August 09, 2017 @10:23AM (#14969156)
This is wrong assuming, as is recommended practice, you use a hashing function like bcrypt or scrypt that is designed to be resistant against massive ASIC speedups, right?
Re:The man who wrote the book on password management regrets... by Bartweiss on Wednesday August 09, 2017 @11:01AM (#14969694)
I wouldn't call it wrong, but I agree that it's for fast hashes without salts. Since sites still use that (and we can't check what they're using pre-leak) it's still relevant, though.
Re:The man who wrote the book on password management regrets... by yflu on Wednesday August 09, 2017 @09:31AM (#14968548)
Then I add another word or two and make that 44 bits 55 or 66 bits.

The strategy itself still works, even if the particular details of implementation change.

Re:The man who wrote the book on password management regrets... by Ajedi32 on Wednesday August 09, 2017 @09:37AM (#14968603)
The XKCD comic includes this note:

> 1000 Guesses/Sec (Plausible attack on a weak remote web service. Yes, cracking a stolen hash is faster, but it's not what the average user should worry about.)

Re:The man who wrote the book on password management regrets... by tempay on Wednesday August 09, 2017 @09:58AM (#14968833)
Provided they don't use the same password for several services
Re:The man who wrote the book on password management regrets... by Ajedi32 on Wednesday August 09, 2017 @11:20AM (#14969988)
In which case, sooner or later they'll probably end up using the password on a site that stores passwords in plaintext, and after that no amount of entropy will help.
Re:The man who wrote the book on password management regrets... by jandrese on Wednesday August 09, 2017 @11:58AM (#14970552)
Or the website hashes the password, and then stores a plaintext (or weakly encrypted) copy in the database as well so they can make sure you don't use a "similar" password on the next change. And in fact keep like 30 passwords in the database so hackers can get a good sense of how you construct your passwords. All for better security of course.
Re:The man who wrote the book on password management regrets... by sersi on Wednesday August 09, 2017 @02:43PM (#14972324)
Oh that'd be a treasure trove for security researchers.

I think we should work on an opensource gem or plugin for cakephp that does this and hope a website uses it. It would be very good data for research into the psychology of choosing passwords.

Just imagine all the potential findings!

Re:The man who wrote the book on password management regrets... by JohnStrange on Wednesday August 09, 2017 @10:33AM (#14969321)
Maybe I'm paranoid, but I advice to my customers that any passphrase with an entropy below 80 bits is insecure, around 140 bit is fairly secure, and anything above 200 bit entropy is very secure.
Re:The man who wrote the book on password management regrets... by contravariant on Wednesday August 09, 2017 @10:53AM (#14969595)
I can understand why you'd want to be more careful with generated passphrases, but 80 bits of entropy is like a 16 character long alphanumeric password. That seems fairly secure to me for most purposes.

Unless the hash is 'broken' but then your options are fairly limited anyway.

Re:The man who wrote the book on password management regrets... by JohnStrange on Wednesday August 09, 2017 @11:01AM (#14969710)
80 bits of entropy is between 12 and 13 visible ASCII characters and between 14-15 ASCII letters.

Yes, if you go below that I'd say it's insecure. It's a conservative estimate, I admit. An entropy of 60 might be okay, too, but there is no harm in making passwords more secure.

Re:The man who wrote the book on password management regrets... by Bromskloss on Wednesday August 09, 2017 @01:11PM (#14971338)
> but there is no harm in making passwords more secure.

Well, it makes them harder to remember and slower to type (and increases the chance of making an error and having to type it again). I hesitate slightly to do things that require me to type my long password. :-)

Re:The man who wrote the book on password management regrets... by Abekkus on Wednesday August 09, 2017 @10:44AM (#14969473)
Assuming that password complexity is the weak link in their practices.
Re:The man who wrote the book on password management regrets... by JohnStrange on Wednesday August 09, 2017 @10:54AM (#14969611)
Uhm, no, independently of that...
Re:The man who wrote the book on password management regrets... by bitexploder on Wednesday August 09, 2017 @01:09PM (#14971318)
Going to just add some thoughts here:

It isn't quite right to treat each word as a symbol either from the information theoretic standpoint. If an attacker /knows/ your password is xkcd style words there is still cracking cost to choosing to crack using only that strategy.

To achieve similar entropy for a classic password you would need say, 8 characters A-Za-z (~7.71 characters required to achieve 44 bits of entropy) (https://en.wikipedia.org/wiki/Password_strength)

But now the cracker has to run two strategies (word based, and classic character based). Granted it is only "times two" and not an exponential increase you get by increasing your number of available symbols or better yet total number of symbols.

In a "readable words dictionary" with say 75000 words you can achieve ~64 bits of entropy. This is also completely ignoring some facets of password storage and hashing. For example, ASICs are good, but not great against scrypt since it is memory hard. So storage format matters a lot. In an offline attack of the worst case known scenario (MD5) lets just call it 25,000-100,000 MH/s in your house without a crazy amount of expense.

That works out to a (on the shortest end of things for 'desktop cracking') about 5 - 6 years. That password is safe for some time against password dumps and such. No one but a high resource attacker that wants your specific password is going to crack it in the near future if a password like that was leaked as an md5 hash. No cute articles about 90% success rates of cracking, etc.

So, the security always comes down to the needed security. Right now 5 years is pretty good. You hopefully change your passwords every 5 years. Add in a 5th symbol in word based passwords and you hit 80 bits of entropy though. That takes the crack time up to about 383,000 years. It is such a vast difference it isn't even funny.

So: 5 or 6 years vs 383,000 years. Basically, use a 5th word. This is all for a desktop cracker, but even someone with 10000 times the desktop crackers resources (e.g. ~50000 GPU, or at least several hundred ASICS) would still be working on a scale of decades.

Re:The man who wrote the book on password management regrets... by antisthenes on Wednesday August 09, 2017 @04:34PM (#14973319)
The actual XKCD password generator suggests using padding as well.

Using non-alphabet padding symbols (even if they are all the same and as trivial as 111 or !!! at both ends) will improve entropy by a decent amount while being just as easy to remember.

However the password itself is still only 1 aspect of security. There are many cases where there are far easier attack vectors that don't including cracking hashes.

Re:The man who wrote the book on password management regrets... by davemp on Wednesday August 09, 2017 @09:04AM (#14968288)
Using non dictionary words should help greatly.
Re:The man who wrote the book on password management regrets... by KekDemaga on Wednesday August 09, 2017 @09:08AM (#14968323)
There are probably less non dictionary words than dictionary words, perhaps better advice is to use words from a random language other than your own so the password cracker might make a wrong assumption and waste his time?
Re:The man who wrote the book on password management regrets... by mcherm on Wednesday August 09, 2017 @09:20AM (#14968424)
> perhaps better advice is to use words from a random language other than your own

I think you may have missed the point that the XKCD cartoon was making. The question here is NOT how to generate passwords that are hard for computers to guess. That's a solved problem: simply generate a 128-bit string with a secure random number generator, and that's your secure password that computers can't guess easily.

The PROBLEM is to generate a password where the ratio of ease-for-humans-to-remember to ease-for-computers-to-guess is maximized. Using words from a language other than your own is NOT a good way to maximize this. Introducing just one more randomly-generated word from your own language will be far more effective by this criterion.

Re:The man who wrote the book on password management regrets... by 5555624 on Wednesday August 09, 2017 @09:28AM (#14968512)
You don't need to speak a language, much less be fluent in it, to use some words from it in a password. Although I am not fluent in any language other than English, I know words in Irish Gaelic, German, Japanese, Spanish, and some other languages. It's easy to use a word I know in one of those languages as part of a password. (I do have one password that does contain a word from a language I don't speak.)
Re:The man who wrote the book on password management regrets... by mannykannot on Wednesday August 09, 2017 @10:14AM (#14969048)
Up to a point, no doubt - but there is a good chance that the words you know from a language that you do not speak come from a small subset that is known by many non-speakers, so they may appear in cracking dictionaries, possibly gleaned from passwords that have been broken, or because they do sometimes appear in articles written predominantly in your language.

Just for completeness, your strategy assumes the attackers are assuming a particular language - which I would guess is probably the right thing for them to do, if they are looking for low-hanging fruit.

Re:The man who wrote the book on password management regrets... by chaoky on Wednesday August 09, 2017 @09:36AM (#14968593)
On the flip side, most of the world is multlingual or have at least been exposed to one other language. If you speak more than one language, mixing words from two or more basically renders dictionary attacks impossible, especially with number of languages and type unknown. I have words from non native languages in my passwords and they are just as easy or easier to remember.
Re:The man who wrote the book on password management regrets... by Xoros on Wednesday August 09, 2017 @10:21AM (#14969137)
What about having your own pattern for upper case and lower case in the words ?

Like, say, every 3rd letter of the words you choose will be upper. hoRse or baTtery etc...

Re:The man who wrote the book on password management regrets... by mediocrejoker on Wednesday August 09, 2017 @11:04AM (#14969748)
Someone who actually studies this stuff can maybe correct me but I think this adds only a single bit of entropy (multiplies the possible combinations by 2) and thus is almost negligible.
Re:The man who wrote the book on password management regrets... by Avernar on Wednesday August 09, 2017 @02:25PM (#14972159)
Nope, it's one bit extra entropy per character. The attacker must try all possible capitilazations of each word (horse, Horse, hOrse, HOrse, etc).

You've doubled the character set so it's not negligable.

Re:The man who wrote the book on password management regrets... by davemp on Wednesday August 09, 2017 @01:04PM (#14971259)
> There are probably less non dictionary words than dictionary words

There are infinitely many non dictionary words.

I also didn't say to use _strictly_ non dictionary words.