Skip to main content

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

Metadata

Release files for passkey-generator-cli 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for passkey-generator-cli 1.0.0
File Interpreter ABI Platform
passkey_generator_cli-1.0.0-py3-none-any.whl Python 3 none any Details

Release files / passkey_generator_cli-1.0.0-py3-none-any.whl

Download URL passkey_generator_cli-1.0.0-py3-none-any.whl
Size 5.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
9219e9b5a6e576f771e7beed4da822aef92bdff993a1cad653737da7910c569c
BLAKE2b-256 checksum
How to use checksums
1c5a70420129845fa24383f0be3271a21cb5680f17dec21dd26eddd71e41eea2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.1

Release history Release notifications | RSS feed

This release

1.0.0 This release

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page