Bitwarden Increases KDF to 600k, double-encrypts data, working on Argon2 support

Consider that the master password hash is 256 bits of high-entropy. This makes it very hard to crack, even with PBKDF2 (or even 1 round of SHA1). The point of argon2 is to make low entropy master passwords hard to crack.

Unless there is a threat model under which this could actually be used to break any part of the security architecture, I don’t see the need.

I see there is a new version of Bitwarden WEB with Argon support. Is double encryption already available?

I note the release notes for 2023.2.0 do not mention double encryption. Did this get delayed?

This has been merged: Data protection for user columns at rest by kspearrin · Pull Request #2571 · bitwarden/server · GitHub

A big congratulations to @Quexten for all the community work in developing Argon support and to Bitwarden developers and leadership for picking it up and running with it! A great example of the value proposition of open source and a project working closely with its community!

4 Likes

I’m assuming that no one can actually use it since the clients aren’t updated yet, right?

That is what I am thinking while I read the comments :laughing:

I assume it is working on the web vault right now. FYI I read the apps and mobile etc can take a week to get updated.
I plan to hold off for a while before switching to learn about others experiences and I suggest a vault backup before.

Yes, please wait until you have the same version on all clients before making changes. Also be sure to backup vault before hand and remember that best protection is a strong/unique master password with 2FA.

1 Like

@bw-admin For those of us who don’t fully understood the development & release cycle, can you explain how to tell whether a particular code change is present in a given release (in case it has not been mentioned explicitly in the release notes)? I have been assuming that if a commit has been merged into the main branch, then it would automatically be part of the next scheduled release — is this correct?

What does the full cycle look like? Is it PR → Commit → QA → Merge → Release?

I don’t understand if this double encryption already works even though it’s not listed in the changes list? Will it be introduced in the future?
Sorry for my English, I’m using google translator

I would assume if it’s not listed, it’s not yet implemented. This is a big change so I think it’s reasonable that the developers kick the tires on this to ensure the risk profile is low.

Thanks all, the storage article has been updated: Storage | Bitwarden Help Center

Along with the security whitepaper: Bitwarden Security Whitepaper | Bitwarden Help Center

4 Likes

Love seeing this product and project actively developed by Bitwarden and the community after being with LastPass for well over a decade and watching it slowly grow stale and turgid as time went on.

1 Like

Is there a reason why Argon2 hasn’t been made the default option for new users, as it seems to be a superior option compared to PBKDF2 in every way?

PBKDF2 is FIPS-140 compliant. It’s also battle tested within Bitwarden. I can imagine these two reasons would have informed this decision for an initial roll out. Just guessing, of course.

1 Like

Maybe because the clients haven’t been updated yet to support it? I’d assume after the roll out across the board they’ll flick a switch to make it default. :man_shrugging:

Doubt it. I think PBKDF2 will remain the default for audits and enterprise where FIPS-140 compliance is an expectation.

1 Like

Also Argon2 using webassembly does not work in some specific environments (chromium on openbsd, ios in lockdown mode). Unless that changes, it can’t be made default.

2 Likes