chore: upgrade argon2

This commit is contained in:
Henry-Hiles committed 2026-09-11 16:13:03 -04:00
1 parent 71e101a4dc
commit b221a49b77
4 files changed
+33 -27

No files matched your search

Generated
+28 -19
View File
@@ -112,13 +112,13 @@ dependencies = [
[[package]] [[package]]
name = "argon2" name = "argon2"
version = "0.5.3" version = "0.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3c3610892ee6e0cbce8ae2700349fcf8f98adb0dbfbee85aec3c9179d29cc072" checksum = "134c52ddac6d63c576bef8168db10c83c49c26444ecbc68060fef078925a901c"
dependencies = [ dependencies = [
"base64ct", "base64ct",
"blake2", "blake2",
"cpufeatures 0.2.17", "cpufeatures 0.3.0",
"password-hash", "password-hash",
] ]
@@ -475,11 +475,11 @@ checksum = "b4388bee8683e3d04af747c73422af53102d2bd24d9eadb6cbc100baef4b43f8"
[[package]] [[package]]
name = "blake2" name = "blake2"
version = "0.10.6" version = "0.11.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "46502ad458c9a52b69d4d4d32775c788b7a1b85e8bc9d482d92250fc0e3f8efe" checksum = "5b5d4d889834ee8ecfc0f8426ad30faf7cdcb10f741a8e6d7224d95325479f6f"
dependencies = [ dependencies = [
"digest 0.10.7", "digest 0.11.3",
] ]
[[package]] [[package]]
@@ -972,7 +972,6 @@ dependencies = [
"openidconnect", "openidconnect",
"parking_lot", "parking_lot",
"rand 0.10.2", "rand 0.10.2",
"rand_core 0.6.4",
"regex", "regex",
"reqwest 0.13.5", "reqwest 0.13.5",
"resolvematrix", "resolvematrix",
@@ -1853,7 +1852,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb" checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb"
dependencies = [ dependencies = [
"libc", "libc",
"windows-sys 0.52.0", "windows-sys 0.61.2",
] ]
[[package]] [[package]]
@@ -3517,7 +3516,7 @@ version = "5.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "51e219e79014df21a225b1860a479e2dcd7cbd9130f4defd4bd0e191ea31d67d" checksum = "51e219e79014df21a225b1860a479e2dcd7cbd9130f4defd4bd0e191ea31d67d"
dependencies = [ dependencies = [
"base64 0.21.7", "base64 0.22.1",
"chrono", "chrono",
"getrandom 0.2.17", "getrandom 0.2.17",
"http", "http",
@@ -3905,13 +3904,12 @@ dependencies = [
[[package]] [[package]]
name = "password-hash" name = "password-hash"
version = "0.5.0" version = "0.6.1"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "346f04948ba92c43e8469c1ee6736c7563d71012b17d40745260fe106aac2166" checksum = "aab41826031698d6ffcd9cff78ef56ef998e39dc7e5067cdfebe373842d4723b"
dependencies = [ dependencies = [
"base64ct", "getrandom 0.4.3",
"rand_core 0.6.4", "phc",
"subtle",
] ]
[[package]] [[package]]
@@ -3968,6 +3966,17 @@ dependencies = [
"indexmap 2.14.0", "indexmap 2.14.0",
] ]
[[package]]
name = "phc"
version = "0.6.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "44dc769b75f93afdddd8c7fa12d685292ddeff1e66f7f0f3a234cf1818afe892"
dependencies = [
"base64ct",
"ctutils",
"getrandom 0.4.3",
]
[[package]] [[package]]
name = "phf" name = "phf"
version = "0.11.3" version = "0.11.3"
@@ -4308,7 +4317,7 @@ dependencies = [
"once_cell", "once_cell",
"socket2", "socket2",
"tracing", "tracing",
"windows-sys 0.52.0", "windows-sys 0.61.2",
] ]
[[package]] [[package]]
@@ -4913,7 +4922,7 @@ dependencies = [
"errno", "errno",
"libc", "libc",
"linux-raw-sys", "linux-raw-sys",
"windows-sys 0.52.0", "windows-sys 0.61.2",
] ]
[[package]] [[package]]
@@ -4972,7 +4981,7 @@ dependencies = [
"security-framework", "security-framework",
"security-framework-sys", "security-framework-sys",
"webpki-root-certs", "webpki-root-certs",
"windows-sys 0.52.0", "windows-sys 0.61.2",
] ]
[[package]] [[package]]
@@ -5283,7 +5292,7 @@ checksum = "7bd22781911de0ca6debda95f073c8f18bec65d1a94f1fa9573f3102e514cea4"
dependencies = [ dependencies = [
"ahash", "ahash",
"annotate-snippets", "annotate-snippets",
"base64 0.21.7", "base64 0.22.1",
"encoding_rs_io", "encoding_rs_io",
"getrandom 0.3.4", "getrandom 0.3.4",
"granit-parser", "granit-parser",
@@ -6766,7 +6775,7 @@ version = "0.1.11"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22" checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22"
dependencies = [ dependencies = [
"windows-sys 0.52.0", "windows-sys 0.61.2",
] ]
[[package]] [[package]]
+2 -2
View File
@@ -176,8 +176,8 @@ version = "0.4.0"
# Used for password hashing # Used for password hashing
[workspace.dependencies.argon2] [workspace.dependencies.argon2]
version = "0.5.3" version = "0.6.0"
features = ["alloc", "rand"] features = ["alloc", "getrandom"]
default-features = false default-features = false
# Used to generate thumbnails for images # Used to generate thumbnails for images
-2
View File
@@ -88,8 +88,6 @@ log.workspace = true
lettre.workspace = true lettre.workspace = true
num-traits.workspace = true num-traits.workspace = true
rand.workspace = true rand.workspace = true
# tied to passwordhash 0.5.0
rand_core = { version = "0.6.4", features = ["getrandom"] }
regex.workspace = true regex.workspace = true
reqwest.workspace = true reqwest.workspace = true
sha2.workspace = true sha2.workspace = true
+3 -4
View File
@@ -2,7 +2,7 @@ use std::sync::OnceLock;
use argon2::{ use argon2::{
Algorithm, Argon2, Params, PasswordHash, PasswordHasher, PasswordVerifier, Version, Algorithm, Argon2, Params, PasswordHash, PasswordHasher, PasswordVerifier, Version,
password_hash, password_hash::SaltString, password_hash,
}; };
use crate::{Error, Result, err}; use crate::{Error, Result, err};
@@ -28,16 +28,15 @@ fn init_argon() -> Argon2<'static> {
} }
pub(super) fn password(password: &str) -> Result<String> { pub(super) fn password(password: &str) -> Result<String> {
let salt = SaltString::generate(rand_core::OsRng);
ARGON ARGON
.get_or_init(init_argon) .get_or_init(init_argon)
.hash_password(password.as_bytes(), &salt) .hash_password(password.as_bytes())
.map(|it| it.to_string()) .map(|it| it.to_string())
.map_err(map_err) .map_err(map_err)
} }
pub(super) fn verify_password(password: &str, password_hash: &str) -> Result<()> { pub(super) fn verify_password(password: &str, password_hash: &str) -> Result<()> {
let password_hash = PasswordHash::new(password_hash).map_err(map_err)?; let password_hash = PasswordHash::new(password_hash).map_err(|e| map_err(e.into()))?;
ARGON ARGON
.get_or_init(init_argon) .get_or_init(init_argon)
.verify_password(password.as_bytes(), &password_hash) .verify_password(password.as_bytes(), &password_hash)