Skip to content

A modular password analysis CLI tool written in Rust. Analyze password strength, detect common patterns, and explore password security metrics — all from your terminal.

License

Notifications You must be signed in to change notification settings

RicardoUMC/Password-Analyzer-CLI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🔐 Password Analyzer CLI

A command-line tool written in Rust that allows you to analyze password security, generate secure passwords, and detect if a password is common (based on wordlists).

🚀 Features

  • Checks the strength of given passwords (length, special characters, etc.).
  • Detects passwords that appear in common password files (wordlist.txt).
  • Generates secure passwords with the most important criteria.
  • User-friendly command-line interface using clap.
  • Output with colors and symbols for clear visualization (requires ANSI support).

📦 Installation

  1. Clone the repository:
git clone https://github.com/RicardoUMC/Password-Analyzer-Cli.git
cd Password-Analyzer-Cli
  1. Make sure you have Rust installed.

  2. Build the project:

cargo build --release

🧪 Usage

Analyze a password

cargo run -- MySecureP@ssw0rd!

Generate a secure password

cargo run -- -g

or using the following form:

cargo run -- --generate

Analyze passwords from a file

Suppose you have a list in wordlist.txt and want to check if the password is included:

cargo run -- -c wordlist.txt "123456"

or using the long form of the option:

cargo run -- -common wordlist.txt "123456"

📁 Project Structure

  • src/main.rs – Main entry point of the program.
  • src/cli/ – Module responsible for handling the command-line interface and argument processing.
  • src/common/ – Module for loading common passwords (wordlist.txt).
  • src/password/ – Module containing the core logic for password analysis and generation.
  • src/utils/ – Module with various auxiliary functions such as screen prints.
  • wordlist.txt – Optional wordlist of common passwords, upload your own file.

🧱 Technologies Used

  • Rust
  • clap – CLI parsing
  • regex – Pattern validation
  • colored – Terminal colors

✅ Output Examples

Received password: MySecureP@ssw0rd!
--- Security Analysis ---

✓ Valid length (>=10)
✓ Has uppercase
✓ Has lowercase
✓ Has numbers
✓ Has symbols

Password strength: [■■■■■■■■■■] 100% (Strong)

📄 MIT License

This project is licensed under the MIT License. See the LICENSE file for more details.


✨ Credits

Developed by Ricardo Mora.

About

A modular password analysis CLI tool written in Rust. Analyze password strength, detect common patterns, and explore password security metrics — all from your terminal.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages