avrecum / git-password-manager

Store your encrypted passwords in a (public) git repository.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

gpm - git password manager

Why store your passwords in a fancy password manager, when you can just encrypt and store them (publicly) in a repository? (I'm not a cryptographer, so I can't guarantee that there are is absolutely no way to break the crypto. Use this with caution.)

Install

Clone the repo, cd into the directory and create a virtual environment with Python 3.7:

$ python3 -m venv venv

Activate the virtual environment:

$ source venv/bin/activate

Install all requirements:

$ pip install requirements.txt

Initialize the database:

$ python gpm.py -i

You'll be asked to enter a master password. Don't forget it! If you lose it, you will not be able to decrypt your passwords.

Usage

You can either add a shortcut for your terminal or access the password manager by running python3 gpm.py inside this repository. Once you start gpm, you will be asked for your master password. Type it in and hit enter.

Interaction with gpm happens through a command line interface. For every password you store, you must specify a service, e.g. "google", and a username, e.g. "example@gmail.com". After every change, the database is re-encrypted and written to disk.

copy

To copy a password to the clipboard, type

gpm $ copy <service> <username>

paste

To paste a password into the database directly from the clipboard, type

gpm $ paste <service> <username>

get

To get a password, type

gpm $ get <service> <username>

set

To set a password, type

gpm $ set <service> <username>

You will be asked to enter a password and repeat it.

ls

To list all services, type

gpm $ ls

To list all usernames for a given service, type

gpm $ ls <service>

passwd

To change your master password, type

gpm $ passwd

You will be asked to enter your old password. If it matches, you'll be able to enter and confirm your new password. Note that if your master password has been compromised, it is best to change all your passwords since the attacker will be able to decrypt the old database.

exit

Once you're done, type

gpm $ exit

help

If you forget a command, type

gpm $ help

About

Store your encrypted passwords in a (public) git repository.


Languages

Language:Python 100.0%