Skip to content

Generate secure, tailored passwords with this powerful command-line tool. Built for flexibility and security, it offers customizable options and strength analysis.

License

Notifications You must be signed in to change notification settings

MohsenBizhani/PasswordGenerator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Secure Password Generator

A powerful and flexible command-line password generator tool with advanced features for generating secure passwords.

Features

  • Generate single or multiple passwords
  • Customizable password length
  • Include/exclude character types (uppercase, numbers, special characters)
  • Set minimum requirements for each character type
  • Exclude similar-looking characters
  • Exclude ambiguous characters
  • Password strength analysis
  • Clipboard integration
  • Secure random generation using the secrets module

Installation

From GitHub

  1. Clone the repository:
git clone https://github.com/MohsenBizhani/PasswordGenerator.git
cd PasswordGenerator
  1. Install required dependencies:
pip install -r requirements.txt
  1. Install the package:
pip install .

From PyPI

pip install passkey-generator-cli

Usage

Basic Usage

password-generator

Common Options

  • -l, --length: Set password length (default: 12)
  • -u, --uppercase: Include uppercase letters
  • -n, --numbers: Include numbers
  • -s, --specials: Include special characters
  • -c, --count: Generate multiple passwords
  • --analyze: Analyze password strength
  • --clipboard: Copy password to clipboard

Advanced Options

  • --min-uppercase: Minimum number of uppercase letters
  • --min-numbers: Minimum number of numbers
  • --min-specials: Minimum number of special characters
  • --no-similar: Exclude similar characters (iIl1Lo0O)
  • --no-ambiguous: Exclude ambiguous characters {}/'"~,;:.<>

Examples

  1. Generate a basic 12-character password:
password-generator
  1. Generate a strong 16-character password with all character types:
password-generator -l 16 -u -n -s
  1. Generate and analyze a password:
password-generator -u -n -s --analyze
  1. Generate 5 passwords:
password-generator -c 5 -u -n -s
  1. Generate password with minimum requirements:
password-generator -u -n -s --min-uppercase 2 --min-numbers 2 --min-specials 1
  1. Generate password without similar-looking characters:
password-generator -u -n --no-similar
  1. Generate and copy to clipboard:
password-generator -u -n -s --clipboard

Password Strength Analysis

The tool analyzes passwords based on:

  • Length (4 points per character)
  • Presence of uppercase letters (10 points)
  • Presence of lowercase letters (10 points)
  • Presence of numbers (10 points)
  • Presence of special characters (15 points)

Strength levels:

  • Weak: Score < 40
  • Moderate: Score 40-59
  • Strong: Score 60-79
  • Very Strong: Score ≥ 80

Security Features

  • Uses Python's secrets module for cryptographically strong random generation
  • Implements secure password shuffling
  • Provides options to exclude similar and ambiguous characters
  • Enforces minimum requirements for different character types

Project Structure

PasswordGenerator/
├── password_generator/       # Main package
│   ├── __init__.py           # Package initialization
│   └── cli.py                # Command-line interface implementation
├── setup.py                  # Package installation setup
├── README.md                 # Project documentation
├── HELP.md                   # Help documentation
├── LICENSE                   # License file
└── requirements.txt          # Dependencies

Requirements

  • Python 3.6 or higher
  • pyperclip package (>=1.8.2)

License

This project is licensed under the MIT License - see the LICENSE file for details.

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Author

Mohsen Bizhani - bizhani.2002@gmail.com

Links

About

Generate secure, tailored passwords with this powerful command-line tool. Built for flexibility and security, it offers customizable options and strength analysis.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages