CLI manager of time-based one-time password generators. It is a desktop alternative to Google Authenticator.
Packages, available in AUR:
Grab an appropriate binary from the latest release and put it
in a place of your choice. If you're on the *nix system, don't forget to set proper permissions: chmod +x totp
.
Make sure you have $HOME/.cargo/bin
in your $PATH
.
shell
cargo install rustotpony
cargo install
from the inside of the repo directoryProbably, you will need gcc
(Linux) or clang
(Mac OS) to compile dependencies.
```text $ totp help 🐴 RusTOTPony 0.3.2
Manager of one-time password generators
Usage: totp [COMMAND] Commands: dash Show realtime dashboard with all generators list List all generators add Add a new generator delete Delete a generator rename Rename a generator eradicate Delete all generators help Print this message or the help of the given subcommand(s)
Options: -h, --help Print help information -V, --version Print version information ```
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 it's a binary file in fact).
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 usability and add a command for changing the password.
Retrieve a secret key from your TOTP provider (it must be encoded with base32, for example, GEZDGMZSGE2TKCQ=
)
shell
$ # Creating a fake secret key for demo purposes
$ echo 123321555 | base32
GEZDGMZSGE2TKNIK
Add new generator with totp add <NAME>
(you will be asked for a secret and a password)
shell
$ # Adding a new TOTP generator
$ totp add demo
Enter your secret code:
Enter your database pass:
New application created: demo
If it's not the first run, you'll be asked for a password twice: for opening the database and for saving it.
Use totp list
to check your secrets
shell
$ # Listing all secrets in the database
$ totp list
Enter your database pass:
+------+------------------+----------+
| name | key | username |
+------+------------------+----------+
| demo | GEZDGMZSGE2TKNIK | |
+------+------------------+----------+
Use totp dash
or just totp
for real-time dashboard
shell
$ # Display real-time dashboard with all generators
$ totp
Enter your database pass:
Welcome to RusTOTPony realtime dashboard! Press ^C to quit.
[============================================= ]
009216 demo
After hitting ^C it'll clean up the dashboard
shell
$ totp
Enter your database pass:
I won't tell anyone about this 🤫
show
and show-all
commandsLicensed under the MIT License.