Skip to main content

PasswordEncoder

Trait PasswordEncoder 

Source
pub trait PasswordEncoder: Send + Sync {
    // Required methods
    fn encode(&self, raw_password: &str) -> String;
    fn matches(&self, raw_password: &str, encoded_password: &str) -> bool;

    // Provided method
    fn upgrade_encoding(&self, _encoded_password: &str) -> bool { ... }
}
Expand description

Trait for encoding and verifying passwords.

§Spring Security Equivalent

PasswordEncoder interface

§Example

use actix_security_core::http::security::crypto::{PasswordEncoder, Argon2PasswordEncoder};

let encoder = Argon2PasswordEncoder::new();
let hash = encoder.encode("my_password");
assert!(encoder.matches("my_password", &hash));

Required Methods§

Source

fn encode(&self, raw_password: &str) -> String

Encode the raw password.

§Spring Equivalent

PasswordEncoder.encode(CharSequence rawPassword)

Source

fn matches(&self, raw_password: &str, encoded_password: &str) -> bool

Verify a raw password against an encoded password.

§Spring Equivalent

PasswordEncoder.matches(CharSequence rawPassword, String encodedPassword)

Provided Methods§

Source

fn upgrade_encoding(&self, _encoded_password: &str) -> bool

Returns true if the encoded password should be upgraded for better security.

§Spring Equivalent

PasswordEncoder.upgradeEncoding(String encodedPassword)

Implementors§

Source§

impl PasswordEncoder for Argon2PasswordEncoder

Available on crate feature argon2 only.
Source§

impl PasswordEncoder for BCryptPasswordEncoder

Available on crate feature bcrypt only.
Source§

impl PasswordEncoder for DelegatingPasswordEncoder

Available on crate feature argon2 only.
Source§

impl PasswordEncoder for NoOpPasswordEncoder