A comprehensive tool for password management including generation, strength checking, expiry tracking, and secure sharing.
Project description
CipherCraft
CipherCraft is a versatile and secure password generator designed to help you create strong, memorable passwords with ease. With a range of customizable features and unique tools, CipherCraft ensures your passwords are not only secure but also tailored to your needs.
- For detailed documentation and usage instructions, please visit our Read the Docs page.
- You can also explore the source code and contribute to the project on our GitHub repository.
Features
CipherCraft offers a wide range of features to help you securely generate, manage, and share passwords and passphrases:
- Password and Passphrase Generation
- Random Password Generator: Generate strong, random passwords with customizable options such as length, inclusion/exclusion of uppercase letters, lowercase letters, digits, and special characters.
- Context-Aware Password Generator: Generate passwords tailored to specific contexts, such as finance, social media, or work environments.
- Mnemonic Password Generator: Create mnemonic-based passwords using a custom wordlist, making them easier to remember.
- Passphrase Generator: Generate secure passphrases composed of random words from a user-defined wordlist, with customizable separators.
- Password Strength and Entropy
- Password Strength Checker: Evaluate the strength of a given password to ensure its robustness against attacks.
- Entropy Calculator: Calculate the entropy of a password, giving you an indication of its unpredictability and security level.
- Password History Management
- Password History Checker: Verify if a password has been used before, helping to prevent reuse of old passwords.
- Password Expiry Checker: Check if a password has expired based on a specified number of days.
- Password Creation Recorder: Record the creation date of a new password for tracking and expiry purposes.
- Limit Password History: Set a limit on the number of stored passwords in history to maintain a clean and secure password management process.
- Obfuscation and Pronunciation Guide
- Password Obfuscator: Obfuscate your password to different levels (1, 2, or 3) for enhanced security.
- Pronunciation Guide: Generate a pronunciation guide for a given password to make it easier to recall.
- Secure Sharing and Breach Detection
- Secure Password Sharing: Encrypt and securely share passwords using a generated key.
- Password Decryption: Decrypt a shared password using the provided key.
- Data Breach Checker: Check if your password has been involved in any known data breaches, ensuring its safety.
- Time-Based One-Time Password (TOTP)
- TOTP Generation: Generate a Time-Based One-Time Password (TOTP) using a provided secret, for use in two-factor authentication.
- TOTP Verification: Verify the validity of a TOTP using the provided secret and OTP.
- Advanced Customization
- Salting: Apply passphrase-based salting to generated passwords for added security.
- Personalization: Incorporate personalized inputs (e.g., names, favorite numbers) into password generation for more tailored security.
- Common Words Filtering: Exclude common words from the password using a custom dictionary file to enhance password security.
Installation
You can install CipherCraft via PyPI:
pip install cipher-craftt
Updating the Package
To ensure you have the latest features and improvements, you can easily update the CipherCraft package using pip. Open your command line interface and run the following command:
pip install --upgrade cipher-craftt
This command will update your CipherCraft package to the latest version available on PyPI.
Basic Usage
To use the CLI, run the following command:
python cli.py [options]
Available Options
- Password Generation
--generate-password
: Generates a random password.
python cli.py --generate-password
Options:
-l, --length
: Length of the generated password (default: 12).-u, --no-upper
: Exclude uppercase letters.-lo, --no-lower
: Exclude lowercase letters.-d, --no-digits
: Exclude digits.-s, --no-special
: Exclude special characters.--exclude-chars
: Characters to exclude from the password.--min-digits
: Minimum number of digits required (default: 0).--min-special
: Minimum number of special characters required (default: 0).--salting
: Apply passphrase-based salting to the password.--personalization
: Personalized input to include in the password.--file_path
: Path to a file containing common words (e.g., common_words.txt).--obfuscate
: Apply obfuscation to the password (level 1, 2, or 3).
- Passphrase Generation
--generate-passphrase
: Generates a passphrase based on a word list.
python cli.py --generate-passphrase
Options:
--num-words
: Number of words in the passphrase (default: 4).--separator
: Separator between words in the passphrase (default: '-').--obfuscate
: Apply obfuscation to the passphrase (level 1, 2, or 3).--wordlist
: Your custom wordlist can also be used.--language
: Multiple language wordlist available.da
: Danishde
: Germanen
: Enlish ( default )es
: Spanishfr
: Frenchit
: Italiannl
: Dutchno
: Norwegianpl
: Polishpt
: Portuguesesv
: Swedishtr
: Turkish
- Password Entropy
--calculate-entropy
: Calculate the entropy of a given password.
python cli.py --calculate-entropy your_password
- Password Expiry Check
--check-expiry
: Check if a password has expired.
python cli.py --check-expiry your_password
Options:
--expiry-days
: Number of days before a password expires (default: 90).
- Password History Management
--record-password
: Record the creation date of a new password.
python cli.py --record-password your_password
--check-history
: Check if a password has been used before.
python cli.py --check-history your_password
--max-history
: Limit the number of stored passwords in history.
python cli.py --max-history 100
- Data Breach Check
--check-breach
: Check if a password has been involved in a data breach.
python cli.py --check-breach your_password
- Secure Password Sharing
--share-password
: Encrypt and share a password securely.
python cli.py --share-password your_password
--decrypt-password
: Decrypt a shared password.
python cli.py --decrypt-password encrypted_password key
- Pronunciation Guide
--pronunciation-guide
: Generate a pronunciation guide for a password.
python cli.py --pronunciation-guide your_password
- Password Strength Check
--check-strength
: Check the strength of the given password.
python cli.py --check-strength your_password
- Mnemonic Password Generation
--generate-mnemonic
: Generate a mnemonic-based password.
python cli.py --generate-mnemonic --wordlist path/to/wordlist.txt
Options:
--num-words
: Number of words in the mnemonic password (default: 4).--separator
: Separator between words in the mnemonic password (default: '-').--length
: Length of the mnemonic password.
- Context-Aware Password Generation
--context
: Specify the context for the password generation (e.g., finance, social, work).
python cli.py --generate-password --context finance
- TOTP (Time-based One-Time Password)
--generate-totp
: Generate a TOTP using the provided secret.
python cli.py --generate-totp your_secret
--verify-totp
: Verify a TOTP using the provided secret and OTP.
python cli.py --verify-totp your_secret your_otp
Examples
- Generate a password with specific constraints:
python cli.py --generate-password -l 16 --no-special --min-digits 2 --personalization "MySecret!"
- Generate a passphrase with a custom word list and separator:
python cli.py --generate-passphrase --wordlist path/to/wordlist.txt --separator "_"
- Check if a password has expired:
python cli.py --check-expiry your_password --expiry-days 60
- Encrypt and share a password securely:
python cli.py --share-password your_password
- Generate a TOTP:
python cli.py --generate-totp your_secret
License
CipherCraft is licensed under the MIT License. See the LICENSE file for details.
Contact and Issues
If you have any questions, suggestions, or encounter issues, please feel free to open an issue on the GitHub repository. For direct communication, you can reach out to Mayur Tembhare via email .
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
Hashes for cipher_craftt-0.1.18-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2e21243425a52b69bf4626fc4f6613749a5bf770316943dfd0b2c564960c8d41 |
|
MD5 | aef95316d58ba3363de81a11526257aa |
|
BLAKE2b-256 | 3a3e6bfdbb095ceb5a4e86ed76938d081796d67378726322c937d0f0454839a4 |