[wp-trac] [WordPress Trac] #21022: Use bcrypt for password hashing; updating old hashes
WordPress Trac
noreply at wordpress.org
Wed Feb 19 16:43:05 UTC 2025
#21022: Use bcrypt for password hashing; updating old hashes
-------------------------------------------------+-------------------------
Reporter: th23 | Owner:
| johnbillion
Type: enhancement | Status: reopened
Priority: normal | Milestone: 6.8
Component: Security | Version: 3.4
Severity: normal | Resolution:
Keywords: has-patch needs-testing has-unit- | Focuses:
tests has-dev-note |
-------------------------------------------------+-------------------------
Comment (by paragoninitiativeenterprises):
I would not be opposed to making 6.8 support bcrypt, then 6.9 ''use''
bcrypt. This two-putt migration will prevent the kind of lockout caused by
a downgrade.
> Don't let non-working passwords after a rollback to 6.7 (or earlier) be
a showstopper for deploying the much-anticipated improvement to the
password hashing method.
I don't think we need to worry about 6.7 or earlier. Two-putt migrations
(first, make it so everyone can read, then make it so that anyone can
write) is the platonic ideal for avoiding split-brain states when working
with a protocol upgrade in any distributed system--especially one where
you do not control all of the clients.
But we don't necessarily need to do this across 6.8/6.9 specifically.
For example, adding the ability to read new password hashes in 6.7.x (for
some value of x) and then writing them in 6.8 would work too, if such a
change is tenable by the version policies and timelines for the next major
version.
If the WordPress community wants to avoid the edge case of someone
upgrading to 6.8 then rolling back their upgrade (and then risking being
locked out if they re-hashed their password), the two-putt approach is
ideal and doesn't keep the ecosystem bogged down forever.
But if that's the decision, stretching this consideration further back
(e.g. supporting users that roll all the way back to 6.7.0 or 6.6.x) would
be inadvisable.
--
Ticket URL: <https://core.trac.wordpress.org/ticket/21022#comment:229>
WordPress Trac <https://core.trac.wordpress.org/>
WordPress publishing platform
More information about the wp-trac
mailing list