[1] https://chrome.google.com/webstore/detail/hashpass/gkmegkoip...
Despite this awkwardness, I think this approach is worth it. I only have to memorize one password, and yet I still have a different password for every website. And if the Chrome extension ever gets shut down (*), the algorithm is simple enough to recreate in 4 lines of Python:
bits = (domain + '/' + universal_password).encode()
for i in range(2 ** 16):
bits = hashlib.sha256(bits).digest()
generated_password = base64.b64encode(bits).decode()[:16]
(*) I am the author of that Chrome extension, so I personally am not worried about it being shut down. But it is perfectly valid for other people to have that concern, of course. generated_password = base64.b64encode(bits).decode()[:16] + '0@#Zz'I'm still considering it, but there would need to be a very slow, very careful rollout plan. Probably some transition period where users can opt into the new scheme, then eventually make the new scheme the default but still support the old scheme, and finally remove the old scheme to make things simple again.
Since this is a Chrome extension which collects no information from users, I have no way of contacting users about this. So I would need to wait long enough that users discover it themselves in the UI. All told, I'd guess it would take about a year for the full migration.
Anyone is welcome to discuss things like this with me via GitHub issues: https://github.com/stepchowfun/hashpass
Checkbox:
Append common required chars [ ]: @Zz1
The roll out is that this is unchecked by default initially with a warning that the default will be checked. Then eventually it defaults to checked.Note that regular password managers also have a master password people can try to brute force, so I actually think this algorithmic method is technically more secure since there's no need to trust a third party to manage the password store, while still having the other flaws that traditional PW managers have.
* Layman who reuses passwords unless a techie friend convinces them to use a PW manager.
* HN user who either uses a SAAS password manager or sets up their own system to solve the issue of syncing a password store across devices.
* Those who actually have state level secrets or living under an oppressive regime and thereby don't trust even the networks they connect to.
Just an observation; not making any statements. But if I were to make one, it's to know your own threat level and find the security vs convenience compromise that works for you, and educate your friends & family.