🐴 RusTOTPony
CLI manager of time-based one-time password generators. It is a desktop alternative for Google Authenticator.
Installation
Make sure you have $HOME/.cargo/bin in your $PATH.
From crates.io
From source
- Clone this repo
- Run
cargo installfrom the inside of the repo directory - Keep calm and wait for compilation
Probably, you will need gcc (Linux) or clang (Mac OS) to compile dependencies.
Usage
$ totp help
🐴 RusTOTPony 0.2.3
German Lashevich <german.lashevich@gmail.com>
CLI manager of one-time password generators aka Google Authenticator
USAGE:
totp [SUBCOMMAND]
FLAGS:
-h, --help Prints help information
-V, --version Prints version information
SUBCOMMANDS:
add Add a new generator
dash Show realtime dashboard with all generators
delete Delete generator
eradicate Delete all generators
help Prints this message or the help of the given subcommand(s)
list List all generators
rename Rename generator
Try `totp help [SUBCOMMAND]` to see help for the given subcommand
Choose your password wisely
At the very first run totp asks for a password for a new database. It's located at $HOME/.rustotpony/db.json (don't be confused by json extension, actually, it's a binary file). If you forget the password or want to change it, you have to remove $HOME/.rustotpony directory. It's not convenient, but I'm going to improve usablity and an option for changing password.
Basic scenario
-
Retrieve a secret key from your TOTP provider (it must be encoded with base32, for example:
GEZDGMZSGE2TKCQ=)| -
Add new generator with
totp add <NAME>(you will be asked for a secret and a password)If it's not the first run, you'll be asked for password twice: for opening database and for saving it.
-
Use
totp listto check your secrets| | | | | | | | -
Use
totp dashor justtotpfor realtime dashboard[============================================= ] -
After hitting ^C it'll cleanup the dashboard
TODO
- command completion
- database password caching
- tests
- binaries for main platforms
- refactor
showandshow-allcommands
License
Licensed under the MIT License.