Live data from Hacker News

Show HN: A simple “stateless” password manager for Chrome

stephanboyer.com

11–20 of 54 posts

Re: Show HN: A simple “stateless” password manager for Chrome

#11
post #9

Please tell me I am missing something. There is no salt. The hashing algorithm is hence vulnerable to a simple dictionary attack. It does not matter if you do a gigazillion rounds. Someone can still pre-calculate a list of common passwords and then test that list against each and every user.

and the best part is you can't change your password in case some website becomes compromised and the hash is leaked. (without changing the secret key and as the result changing all passwords on all websites).

Re: Show HN: A simple “stateless” password manager for Chrome

#12

Use slower / heavier hash -- PBKDF2 or better. For lulz use something like Darkcoin Cryptocurrency 'X11' Proof of Work function - multiple rounds of 11 different hashes. Or more. (X13, X15 and X17 all exist as PoW functions in CryptoCurrencies today). A <$1000 bitcoin (SHA-256) mining ASIC appliance is likely to be doing 1TH/s. Makes 2^16 rounds look kinda weak.

[deleted]

Re: Show HN: A simple “stateless” password manager for Chrome

#13
post #9

Please tell me I am missing something. There is no salt. The hashing algorithm is hence vulnerable to a simple dictionary attack. It does not matter if you do a gigazillion rounds. Someone can still pre-calculate a list of common passwords and then test that list against each and every user.

and the best part is you can't change your password in case some website becomes compromised and the hash is leaked. (without changing the secret key and as the result changing all passwords on all websites).

I tried to address this in the article:

"If a generated password is ever compromised, you don’t need to memorize a whole new secret key and update all of your passwords. For that service only, just add an incrementing index to your secret key. For example, if your key was bananas, just use bananas2. If you can’t remember which iteration of your secret key you used for a particular service, simply try them all in order."

In particular, you don't have to use the same secret key for all websites. It's okay to slightly modify one if that password is compromised.

Re: Show HN: A simple “stateless” password manager for Chrome

#16
post #9

Please tell me I am missing something. There is no salt. The hashing algorithm is hence vulnerable to a simple dictionary attack. It does not matter if you do a gigazillion rounds. Someone can still pre-calculate a list of common passwords and then test that list against each and every user.

Correct, there is no salt. A dictionary attack will uncover common passwords. It's crucial to pick a strong secret key. That's the price you pay for using a stateless password manager.

However, the gigazillion rounds are not for nothing. That is the defense against brute force attacks, which could otherwise crack passwords even if they are random.

Re: Show HN: A simple “stateless” password manager for Chrome

#17
post #2

Ok, the idea in general isn't good because most people won't use a good password and also because now there's a single point of failure if someone sees your password. However, it might be okay if one can provide their own hashing function. Like a JS function that takes the domain and secret key as parameters.

It's still a huge step up from the all-too-common "use the same password everywhere" technique.

not a huge one. Because now instead of testing just the common passwords, the cracker would just have to double the amount of work by testing their hashes.

Granted, fragmentation in this space is actually good for security, because now there are is a different hash for each password generating program.

Re: Show HN: A simple “stateless” password manager for Chrome

#18
post #9

Please tell me I am missing something. There is no salt. The hashing algorithm is hence vulnerable to a simple dictionary attack. It does not matter if you do a gigazillion rounds. Someone can still pre-calculate a list of common passwords and then test that list against each and every user.

and the best part is you can't change your password in case some website becomes compromised and the hash is leaked. (without changing the secret key and as the result changing all passwords on all websites).

from TFA: "If a generated password is ever compromised, you don’t need to memorize a whole new secret key and update all of your passwords. For that service only, just add an incrementing index to your secret key".

The extension doesn't force you to use one master password, and it doesn't have to be a dictionary word, too.

I think adding options like an auto expiring password (adding the month or year etc as a salt) can improve this further. But I like the idea in general.

Re: Show HN: A simple “stateless” password manager for Chrome

#20
post #14

This is why beginners should not design crypto, much less encourage others to use their creations... Do not use this, it's a textbook example of how to not do it.

Stanford published a paper that is basically the exact same model: http://crypto.stanford.edu/PwdHash/pwdhash.pdf

This is not a new technique. In addition to the Stanford paper, there are several other implementations mentioned in these comments. It's a compromise, not a mistake. It is better to memorize one strong password than a dozen weak ones.

This isn't custom crypto. It's a well-known hash function that serves as a filter, transforming the passwords you would otherwise enter directly into a website's login form. It is no less secure than typing in passwords by hand.

Post reply on HN