Skip to content

Commit f46bc7a

Browse files
committed
feat(auth): Implement passlib base64 salt decoding for legacy pbkdf2
Note: This commit was done with the help of AI.
1 parent 3a67158 commit f46bc7a

6 files changed

Lines changed: 654 additions & 175 deletions

File tree

Cargo.lock

Lines changed: 47 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

crates/config/src/identity.rs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,12 @@ pub enum PasswordHashingAlgo {
6262
/// Bcrypt.
6363
#[default]
6464
Bcrypt,
65+
/// Bcrypt combined with SHA256.
66+
BcryptSha256,
67+
/// Scrypt.
68+
Scrypt,
69+
/// PBKDF2 with SHA512.
70+
Pbkdf2Sha512,
6571
// #[cfg(test)]
6672
/// None. Should not be used outside of testing where expected value is
6773
/// necessary.

crates/core/Cargo.toml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,9 @@ tracing.workspace = true
4646
url = { workspace = true, features = ["serde"] }
4747
uuid = { workspace = true, features = ["v4"] }
4848
validator.workspace = true
49+
pbkdf2 = { version = "0.12", features = ["simple", "sha2"] }
50+
scrypt = { version = "0.11", features = ["simple"] }
51+
subtle = "2.6.1"
4952

5053
[dev-dependencies]
5154
config = { workspace = true }

0 commit comments

Comments
 (0)