A secure password generator using modern standards.
Project description
SecurePassKeyGen
SecurePassKeyGen is a Python library designed to generate secure, random passwords with configurable length and complexity. The library follows best practices for password generation, ensuring high entropy, and providing the user with options to customize the output according to their needs.
Features
- High Security: Uses cryptographically secure random number generation.
- Customizable Password Length: Generate passwords of any length from 8 to 128 characters.
- Character Set Options: Includes options for lowercase, uppercase, digits, and special characters.
- Password Strength: Default passwords are generated with a high level of entropy.
- Easy to Use: Simple API to generate passwords.
Installation
To install SecurePassKeyGen, use pip:
pip install securepasskeygen
Usage
To generate a password using SecurePassKeyGen:
from securepasskeygen import generate_password
# Generate a random password with 16 characters
password = generate_password(length=16)
print(password)
Customizing Password Generation
You can customize the password generation by specifying the length and character sets. Here is how you can do that:
from securepasskeygen import generate_password
# Generate a password with the following options:
# - Length of 20 characters
# - Includes lowercase, uppercase, digits, and special characters
password = generate_password(length=20, include_lower=True, include_upper=True, include_digits=True, include_special=True)
print(password)
Parameters
The generate_password function accepts the following parameters:
length(int): The desired length of the password (default: 12).include_lower(bool): Whether to include lowercase letters (default: True).include_upper(bool): Whether to include uppercase letters (default: True).include_digits(bool): Whether to include digits (default: True).include_special(bool): Whether to include special characters (default: True).
Example
from securepasskeygen import generate_password
# Example 1: Generate a 12-character password with default settings
password = generate_password()
print(password)
# Example 2: Generate a password of 20 characters with only lowercase and digits
password = generate_password(length=20, include_lower=True, include_digits=True, include_upper=False, include_special=False)
print(password)
Contributing
We welcome contributions to SecurePassKeyGen! If you find bugs, have feature requests, or would like to improve the library, feel free to submit a pull request.
Steps to Contribute:
- Fork the repository.
- Clone your fork locally.
- Make your changes.
- Write tests for your changes.
- Submit a pull request to the main repository.
License
This project is licensed under the MIT License - see the LICENSE file for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file securepasskeygen-1.0.2.tar.gz.
File metadata
- Download URL: securepasskeygen-1.0.2.tar.gz
- Upload date:
- Size: 3.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.0.1 CPython/3.12.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
18267d539d285061257cc51560938b7a4284f57fbbdb9a9c3bcb3625c2ca3a89
|
|
| MD5 |
0884c117073b1c6bf4cba5d5779cae5b
|
|
| BLAKE2b-256 |
2f40a102fe766c7efa89f7ef0e4780fe6494c1a6e753145b19292e657138b1b6
|
Provenance
The following attestation bundles were made for securepasskeygen-1.0.2.tar.gz:
Publisher:
python-publish.yml on holmek/securepasskeygen
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
securepasskeygen-1.0.2.tar.gz -
Subject digest:
18267d539d285061257cc51560938b7a4284f57fbbdb9a9c3bcb3625c2ca3a89 - Sigstore transparency entry: 162987953
- Sigstore integration time:
-
Permalink:
holmek/securepasskeygen@63139488a5abe2d356d9179bf25c27717a135e1d -
Branch / Tag:
refs/tags/v1.0.2 - Owner: https://github.com/holmek
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@63139488a5abe2d356d9179bf25c27717a135e1d -
Trigger Event:
release
-
Statement type:
File details
Details for the file securepasskeygen-1.0.2-py3-none-any.whl.
File metadata
- Download URL: securepasskeygen-1.0.2-py3-none-any.whl
- Upload date:
- Size: 4.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.0.1 CPython/3.12.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
663bccb2e83debdc85fd89a14005b05658d47d56e05e602ed80bbd5a31d0e123
|
|
| MD5 |
8d8c13ac56f317046f1474ab4205f7ec
|
|
| BLAKE2b-256 |
cc91d8067c3b70a7db2b1e9d1c27f075172cad8477edc29c2665d9e7c57881f6
|
Provenance
The following attestation bundles were made for securepasskeygen-1.0.2-py3-none-any.whl:
Publisher:
python-publish.yml on holmek/securepasskeygen
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
securepasskeygen-1.0.2-py3-none-any.whl -
Subject digest:
663bccb2e83debdc85fd89a14005b05658d47d56e05e602ed80bbd5a31d0e123 - Sigstore transparency entry: 162987955
- Sigstore integration time:
-
Permalink:
holmek/securepasskeygen@63139488a5abe2d356d9179bf25c27717a135e1d -
Branch / Tag:
refs/tags/v1.0.2 - Owner: https://github.com/holmek
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@63139488a5abe2d356d9179bf25c27717a135e1d -
Trigger Event:
release
-
Statement type: