5 stable releases
1.0.4 | Jun 3, 2024 |
---|---|
1.0.3 | Jun 2, 2024 |
1.0.2 | Jun 1, 2024 |
#692 in Development tools
186 downloads per month
25KB
247 lines
A command-line password generator built with Rust, offering a swift and effortless solution for creating passwords of varying strengths. Cure your password creation woes with a single command!
Installation
Install using Cargo
Please ensure that your operating system has Rust and the Cargo development environment properly configured.
cargo install xpwd //Install the latest version by default
Install using Scoop
If you haven't installed Scoop, please refer to the official website for installation (https://scoop.sh/#/). Then, execute the following command to install xpwd
scoop install xpwd
More installation methods are coming soon...
CLI Usage
The usage examples below are always in line with the latest version. If you are using an older version, please visit https://crates.io/crates/xpwd to view the corresponding version's usage examples. Thank you.
$ xpwd -h
_______ ______
|\ /| ( ____ )|\ /|( __ \
( \ / ) | ( )|| ) ( || ( \ )
\ (_) /_____ | (____)|| | _ | || | ) |
) _ ((_____)| _____)| |( )| || | | |
/ ( ) \ | ( | || || || | ) |
( / \ ) | ) | () () || (__/ )
|/ \| |/ (_______)(______/
Fast, secure, and universal password generator.
Usage: xpwd.exe <COMMAND>
Commands:
pwd Generate a secure password of specified length and strength.
str Check the strength of the password you entered.
pas Generate a random short passphrase password based on a dictionary.
help Print this message or the help of the given subcommand(s)
Options:
-h, --help Print help
-V, --version Print version
$ xpwd pwd -l 8 -c s
+--------+--------+----------+
| Param1 | Param2 | Result |
+--------+--------+----------+
| 8 | simple | u50nil6u |
+--------+--------+----------+
π‘οΈ β β β β β β β β β β β β β β β β β β β β moderate
---------------------------------------------
$ xpwd str -p 123456
π‘οΈ β β β β β β β β very weak
---------------------------------------------
$ xpwd pas -d C:\RustProjects\xpwd\resources\dictionary.txt -w 3
+--------+-----------------------------------------------+-----------------------+
| Param1 | Param2 | Result |
+--------+-----------------------------------------------+-----------------------+
| 3 | C:\RustProjects\xpwd\resources\dictionary.txt | PotatoHarmonyKeyboard |
+--------+-----------------------------------------------+-----------------------+
-----------------------------------------------
For details on each specific feature, you can use the -h
command to view help. For example, to see the help for the pwd
command, use:
$ xpwd pwd -h
_______ ______
|\ /| ( ____ )|\ /|( __ \
( \ / ) | ( )|| ) ( || ( \ )
\ (_) /_____ | (____)|| | _ | || | ) |
) _ ((_____)| _____)| |( )| || | | |
/ ( ) \ | ( | || || || | ) |
( / \ ) | ) | () () || (__/ )
|/ \| |/ (_______)(______/
Generate a secure password of specified length and strength.
Usage: xpwd.exe pwd [OPTIONS]
Options:
-l, --len <LEN> Length of password [default: 8]
-c, --complex <COMPLEX> Complexity of the password [default: m]
-h, --help Print help
The generated password will be automatically copied to the clipboard by default, allowing you to directly paste and use it.
Futures
Here are the features and improvements we plan to add to the tool in the future. If you have any suggestions or ideas, feel free to share!
- Quick Password Generation
- β Rapidly generates random passwords of specified lengths and strengths.
- Password Strength Check
- β Assesses the strength of user-inputted passwords, providing visual feedback.
- Customizable Password Policy
- β Enables users to customize password generation rules, such as mandating the inclusion of uppercase letters, lowercase letters, numbers, special characters, and their minimum occurrences.
- Password History Management
- β Offers a secure means for users to store and manage their previously generated passwords (with emphasis on encrypted storage), including features to flag frequently used passwords and search for specific ones.
- Password Expiration Reminder
- β Implements a notification system that alerts users, based on their settings (e.g., every 90 days), when to change passwords for specific websites or applications.
- Password Synchronization & Backup
- β Provides cloud synchronization functionality, allowing users to sync their password database across multiple devices, ensuring secure access while facilitating cross-platform use.
- Security Assessment Report
- β Generates detailed reports on password security, analyzing the distribution of password strengths and reuse within the user's database, offering improvement suggestions.
- Password Leak Check
- β Integrates with an
API
(likeHave I Been Pwned
) to check if user-supplied passwords have been exposed in known data breaches, enhancing user awareness of password security.
- β Integrates with an
- Random Passphrase Generation
- β
In addition to traditional random strings, includes a dictionary-based passphrase generator that produces longer but more memorable passwords, such as β
CorrectHorseBatteryStaple
β.
- β
In addition to traditional random strings, includes a dictionary-based passphrase generator that produces longer but more memorable passwords, such as β
- Multilingual Password Support
- β Expands character set support to allow for passwords containing non-English characters, catering to international users with specific needs.
- Graphical User Interface
- β Considers developing a graphical user interface (
GUI
) to enhance the user experience, particularly for those unfamiliar with command-line operations.
- β Considers developing a graphical user interface (
- Plug-in Based Development
- β Develops related plugins to enrich usage scenarios, including browser plugins,
IDE
integrations, and apps for multiple platforms.
- β Develops related plugins to enrich usage scenarios, including browser plugins,
- Educational Module
- βIncorporates educational content on password security, covering common password cracking methods and guidelines for creating and managing strong passwords, to boost user awareness.
License
This project is licensed under the MIT License - see the LICENSE file for details.
about
In order to provide a more efficient and convenient user experience, the original project quick_pswd (https://crates.io/crates/quick_pswd) has officially been renamed to xpwd.
Dependencies
~13β44MB
~658K SLoC