Now checking the hashes in constant time

This commit is contained in:
StNicolay committed 2023-06-06 20:04:39 +03:00
1 parent 10601d49ad
commit c8c7ba154a
3 files changed
+4 -1

No files matched your search

+2 -1
View File
@@ -2,6 +2,7 @@ use entity::master_pass;
use rand::{rngs::OsRng, RngCore};
use scrypt::{scrypt, Params};
use sea_orm::ActiveValue::Set;
use subtle::ConstantTimeEq;
/// Hashes the password with Scrypt with the given salt
#[inline]
@@ -21,7 +22,7 @@ impl VerifyMasterPassExt for master_pass::Model {
#[inline]
fn verify(&self, password: &str) -> bool {
let hashed = hash_password(password.as_bytes(), &self.salt);
hashed == self.password_hash.as_slice()
hashed.ct_eq(&self.password_hash).into()
}
}