Rust Unique Pass
This software is designed to generate random strong passwords. Users can customize the length of their passwords and the special characters they use. Except for the FTL files for translation, everything is written in the Rust language.
Install
Please make sure that the Rust language is installed beforehand. If not,
please install it from the official website.
If it is already installed, run the following command.
Usage
It is a CLI tool and should be run from the command line. The command name
is rupass.
Command-Line Options
rupass provides several command-line options to control password generation.
| Option (Short) | Option (Long) | Description |
|---|---|---|
-l |
--language |
Language for prompts/messages (eng default, also jpn, deu). |
-p |
--password-length |
Password length. Required when --no-prompt is used. |
-a |
--all |
Enable all character classes (numbers, uppercase, lowercase, symbols). |
--no-prompt |
Non-interactive: skip all questions; unspecified classes stay OFF (errors if none chosen). | |
-n |
--numbers / --no-numbers |
Include / exclude numbers (default OFF). |
-u |
--uppercase / --no-uppercase |
Include / exclude uppercase (default OFF). |
-w |
--lowercase / --no-lowercase |
Include / exclude lowercase (default OFF). |
-s |
--symbols / --no-symbols |
Include / exclude symbols (default OFF; default set ~!@#$%^&*_-+=(){}[]:;<>,.?/). |
--symbols-set |
Custom symbols set to use with --symbols. |
|
--timeout-ms (--budget-ms) |
Time budget for strength search (>=10). Default: 150. Advanced |
|
--min-score |
Early-stop target score (0..=4). Default: 4. Advanced |
|
--strict |
Fail (exit 3) if target not reached within budget. Advanced | |
--show-strength |
Print strength (score/entropy) on success. | |
--quiet (--porcelain) |
Output password only; suppress headings/warnings. Advanced |
Command Examples:
-
If you specify nothing, all character classes start OFF and the CLI will ask interactively. With
--no-prompt, you must provide--password-lengthand at least one class flag (e.g.,--numbersor--all), otherwise it errors. -
Generate a 32-character password including numbers, uppercase, lowercase, and symbols:
-
Generate a password with prompts in Japanese:
Time-budgeted strength search
- By default, the generator searches up to 150 ms for a candidate that reaches zxcvbn score 4.
- It stops early as soon as the target score is reached. If not reached within the budget, it uses the best candidate and prints a warning to stderr (unless
--strictor--quiet). - Use
--show-strengthto print a strength line likeStrength: 4/4 (entropy: 82.3 bits). - In
--strictmode, the program exits with code 3 if the target score is not met within the budget and does not print the password.
About Language Settings
- Languages supported
- Japanese language
- English language
- German language
For use in languages other than English, specify the language code defined in
ISO 639-3. The command can be used in Japanese by making the following
changes.
rupass -l jpn
precautions
- Default language setting is English.
- The language can be specified with the
-loption.- The
-loption is not required when using the English language. - english use example
- The
Request for collaboration.
This project is intended to be multilingual. If you would like to help with translation, please see CONTRIBUTING.
License
This software is released under the Apache License 2.0. See
LICENSE for details.
Copyright © 2023 Neuron Grid. Licensed under the Apache License 2.0.