Welcome to collectivesolver - Programming & Software Q&A with code examples. A website with trusted programming answers. All programs are tested and work.

Contact: aviboots(AT)netvision.net.il

Buy a domain name - Register cheap domain names from $0.99 - Namecheap

Scalable Hosting That Grows With You

Secure & Reliable Web Hosting, Free Domain, Free SSL, 1-Click WordPress Install, Expert 24/7 Support

Semrush - keyword research tool

Boost your online presence with premium web hosting and servers

Disclosure: My content contains affiliate links.

39,851 questions

51,772 answers

573 users

How to check whether a given password is strong, medium, or weak in Rust

1 Answer

0 votes
// You can set your own rules

fn check_password_strength(password: &str) -> &str {
    let length = password.len();

    let mut has_lower = false;
    let mut has_upper = false;
    let mut has_digit = false;
    let mut special_char = false;

    let lowuppdig = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890";

    for c in password.chars() {
        if c.is_lowercase() {
            has_lower = true;
        }
        if c.is_uppercase() {
            has_upper = true;
        }
        if c.is_digit(10) {
            has_digit = true;
        }
        if !lowuppdig.contains(c) {
            special_char = true;
        }
    }

    if has_lower && has_upper && has_digit && special_char && length >= 10 {
        return "Strong";
    } else if (has_lower || has_upper) && special_char && length >= 8 {
        return "Medium";
    }

    "Weak"
}

fn main() {
    let password = "aq1o@p9$XM";

    println!("{}", check_password_strength(password));
    println!("{}", check_password_strength("asW!W)(o"));
    println!("{}", check_password_strength("WSDFK!#Q"));
    println!("{}", check_password_strength("n*djskq*"));
    println!("{}", check_password_strength("WE3q#$"));
}


      
/*
run:
  
Strong
Medium
Medium
Medium
Weak
 
*/
 

 



answered Oct 23, 2024 by avibootz
edited Oct 23, 2024 by avibootz
...