vAUTH v0.0.6! This 2FA command-line tool is designed to help you manage your accounts and services through Time-based One-Time Passwords (TOTP). You can register, login, recover accounts, and manage services with ease. It also includes a built-in shell to interact with your services securely and efficiently.
- User Authentication: Register, login, recover, and remove users.
- Service Management: Add, modify, remove services and generate Time-based OTPs.
- TOTP Integration: Use a TOTP app like Google Authenticator with QR codes.
- Shell Interface: Interactive shell for easy service management.
- Real-Time OTP Display: Continuously display OTPs with time remaining until refresh.
Clone the repository and install the dependencies:
pip install vauth
The vAUTH CLI supports a variety of commands for user and service management. After installation, you can start using the tool with the following commands.
To register a new user:
vauth register -u <user_id>
You will receive confirmation and recovery codes upon successful registration.
To log in to the vAUTH CLI tool:
vauth login -u <user_id>
This will start an interactive shell where you can manage your services.
If you need to recover your account:
vauth recover -u <user_id>
To remove a user account:
vauth remove -u <user_id>
Once you're logged in, the vAUTH Shell will allow you to interact with your services. Here are the available commands:
add_service <service> <username> <seed>
Adds a new service with the specified username and seed.
show_service <service> <username>
Displays the current OTP for the service along with the time remaining. It will also continuously update the OTP every 30 seconds until you press 'ESC' to quit. Here's how the output will look:
Service: <service_name>
Username: <username>
OTP: <current_otp>
█████████████████████████████░░27s
Press 'ESC' to quit
show_qr <service> <username>
Displays a QR code for a service, which can be scanned using a TOTP app like Google Authenticator. It shows the service, username, and an ASCII QR code for easy scanning.
remove_service <service> <username>
Removes the specified service from your account.
modify_service <service> <username> <'username'/'seed'> <new_value>
Allows you to modify either the username or the seed of a service. You can specify whether you want to update the username
or the seed
and provide the new value.
You can exit the shell at any time by entering:
exit
- ESC: Quit the OTP display.
Here's a sample session of how the tool works:
-
Register a User:
vauth register -u user123
Output:
vAUTH> Registration Successful Recovery Codes: ['ABCD1234', 'WXYZ5678', ...]
-
Login and Use the Shell:
vauth login -u user123
This will drop you into the interactive shell:
$$$$$$\ $$\ $$\ $$$$$$$$\ $$\ $$\ $$ __$$\ $$ | $$ |\__$$ __|$$ | $$ | $$\ $$\ $$ / $$ |$$ | $$ | $$ | $$ | $$ | \$$\ $$ |$$$$$$$$ |$$ | $$ | $$ | $$$$$$$$ | \$$\$$ / $$ __$$ |$$ | $$ | $$ | $$ __$$ | \$$$ / $$ | $$ |$$ | $$ | $$ | $$ | $$ | \$ / $$ | $$ |\$$$$$$ | $$ | $$ | $$ | \_/ \__| \__| \______/ \__| \__| \__| Welcome to vAUTH CLI TOOL v0.0.6. Enter 'exit' to exit at any time.
-
Add a Service:
vAUTH> add_service Google user123 ABCDEF123456
-
Show OTP for a Service:
vAUTH> show_service Google user123
Output:
Service: Google Username: user123 OTP: 123456 ████████████████████████████░ 5s Press 'ESC' to quit
-
Exit the Shell:
vAUTH> exit
This project is licensed under the MIT License - see the LICENSE file for details.