Live data from Hacker News

300M Freely Downloadable Pwned Passwords

troyhunt.com

111–120 of 184 posts

Re: 300M Freely Downloadable Pwned Passwords

#111
post #77
post #75

Earlier quoted context omitted.

test the SHA1 of your passwords, not your passwords, and you are safe.

A weak password can still be cracked given the sha1 hash and a dictionary.

If you the type of person to read the article, you aren't likely to submit a basic dictionary password. Either your passwords have more entropy or you know better than to submit them.

Re: 300M Freely Downloadable Pwned Passwords

#112
As others have pointed out, the use case for pasting plain text passwords is not quite clear. Maybe it would be a good idea to allow searching for hashes only, or at least hash the password in js on the client.

Also, I'm genuinely curious as to why SHA-1 is used and not SHA-256. Surely the one-time additional cost of using SHA-256 would've been negligible for Troy? If at some point somebody manages to do preimage attacks on SHA-1, I have to assume my password is broken if I've submitted its hash to his API. Although I guess you'd have to actually be able to enumerate preimages, preferably from small to big. Still, I don't understand why Troy doesn't account for the possibility by using a hash function widely considered to be stronger.

Re: 300M Freely Downloadable Pwned Passwords

#113
post #88

>If a password is not found in the Pwned Passwords set, it'll result in a response like this: Wait, so I test my password to see if it's "good" and now you have a copy of a password I will be using. Am I just being paranoid?

You can post the sha1sum instead. $ sha1sum SooperSekretPassw0rd^D SooperSekretPassw0rddc0d3504b259a92dce59b850969601d12c06a75f -

If you're on Windows, you can calculate it in PowerShell like this:

$password = "foobar"

([Security.Cryptography.SHA1CryptoServiceProvider]::Create().ComputeHash([Text.Encoding]::ASCII.GetBytes($password)) | %{'{0:x2}' -f $_}) -join ""

Re: 300M Freely Downloadable Pwned Passwords

#114

Earlier quoted context omitted.

Email address is stupid, we should have randomly generated proxy email addresses.

A former coworker makes liberal use of American Express disposable credit card numbers -- proxy credit card numbers that you can request to give away to less than trustworthy merchants.

Privacy (https://privacy.com/) offers a similar service for those that want something that works with more than American Express cards or other such offerings from other card issuers.

Re: 300M Freely Downloadable Pwned Passwords

#115

Earlier quoted context omitted.

A former coworker makes liberal use of American Express disposable credit card numbers -- proxy credit card numbers that you can request to give away to less than trustworthy merchants.

Privacy ( https://privacy.com/ ) offers a similar service for those that want something that works with more than American Express cards or other such offerings from other card issuers.

I use this all the time. It's great.

Re: 300M Freely Downloadable Pwned Passwords

#116
post #66

Earlier quoted context omitted.

KeePass uses an auto-type feature; wouldn't that simulate individual key presses, and defeat anti-paste mechanisms?

I find that on some sites if I click in the username field and alt tab to keepass or any other function I'm suddenly not in the txt field on the site... thus I can't trigger auto type at times.

It's unfortunate that this workaround is needed, but in KeePass you can set a custom keystroke sequence to define what actions are performed during auto-type. Right click > "Edit/view entry" > "Auto-Type" tab > Override default sequence:

I then entered {DELAY 3000}{PASSWORD}

Now I can log in to a full screen game that doesn't allow pasting (I type in the username by hand first). If I'm alt-tabbed out of the game with KeePass in focus, the three second delay is enough time to go from triggering auto-type to restoring the full screen game window and clicking on the password field to give it focus. I was unable to trigger KeePass autotype with the game already full screen.

If the account you're trying to log in to also has a long random username that needs to be auto-typed, you'll probably want a sequence like "{DELAY 3000}{USERNAME}{TAB}{PASSWORD}". Or, if the form doesn't allow you to tab from the username to the password field, you could use "{DELAY 3000}{USERNAME}{DELAY 3000}{PASSWORD}" and you can click on the password field during the second delay.

Re: 300M Freely Downloadable Pwned Passwords

#117
One really unfortunate aspect of the passwords being hashed is that there's no info available about their lengths. Knowing the lengths could allow you to reduce the size considerably when you enforce a minimum password length.

For example, if I have a site that requires passwords to be at least 10 chars long, I don't need any of the data for breached passwords that are shorter than 10 characters. People can't possibly use them anyway, so that's probably a huge chunk of the data that's completely useless to be storing and checking.

Re: 300M Freely Downloadable Pwned Passwords

#118

Earlier quoted context omitted.

I believe the idea is to ensure no one can use the listing to brute force.

I think gp is complaining that the second you type your password into the form, you've "used it", hence you should change it. The gp makes a good point, but that's also why you can submit the `sha1($your_password)` instead. The only question is why did Troy allow un-hashed passwords to be submitted.

Maybe - even better - if you could submit only - say - first 8 characters of the SHA1 (and NOT the complete hash) and provide - still say - max 10 "whole" hashes found with that 8 char beginning (if more than 10 ask for a ninth char).

I mean, here is the SHA1 of my password (not really):

d012f68144ed0f121d3cc330a17eec528c2e7d59

This site:

https://hashkiller.co.uk/sha1-decrypter.aspx

>We have a total of just over 312.072 billion unique decrypted SHA1 hashes since August 2007.

Took exactly 221 ms to reverse it to "pippo".

Re: 300M Freely Downloadable Pwned Passwords

#119
post #113

Earlier quoted context omitted.

You can post the sha1sum instead. $ sha1sum SooperSekretPassw0rd^D SooperSekretPassw0rddc0d3504b259a92dce59b850969601d12c06a75f -

If you're on Windows, you can calculate it in PowerShell like this: $password = "foobar" ([Security.Cryptography.SHA1CryptoServiceProvider]::Create().ComputeHash([Text.Encoding]::ASCII.GetBytes($password)) | %{'{0:x2}' -f $_}) -join ""

And people say that PowerShell isn't readable or intuitive.

Re: 300M Freely Downloadable Pwned Passwords

#120

Interesting - "correct horse battery staple"[0] is flagged as not being in the data set. I was sure someone should have used that by now. [0] https://xkcd.com/936/

It shows up if you remove the spaces.

And with spaces and uppercase first letters.
Post reply on HN