masterkey

secure interactive password manager with xchacha20poly1305, argon2id, and Go

Github stars Tracking Chart

masterkey

Go Report Card
Build Status

masterkey

masterkey is a simple, secure password manager written in Go. It uses xchacha20poly1305 for authenticated encryption and argon2id for key derivation. It stores credentials given a location, where each credential is represented by a Username and a Password. Locations, Usernames, and Passwords are always encrypted using a argon2id key derived from the input passphrase. Unlike password-store and a few other password managers, an attacker with access to the encrypted database can not discern exactly how many passwords are stored, the labels (locations) for the passwords, or the usernames associated with the passwords.

Example Usage

Install masterkey either by downloading a release or using go get:

go get github.com/avahowell/masterkey

Now create your vault, in this example we'll create it at ./vault.db. New vaults are created using the -new flag, existing vaults can be opened by simplly omitting the -new flag.

Next, launch the terminal UI using masterkey vault.db, or use masterkey -repl vault.db to use the developer shell which has a bit more functionality.

Note that as with all password managers, your vault is only as secure as your master password. Use a strong, high entropy master password to protect your credentials.

Overview

Name With Owneravahowell/masterkey
Primary LanguageGo
Program languageGo (Language Count: 2)
Platform
License:Apache License 2.0
Release Count2
Last Release Name0.2 (Posted on )
First Release Name0.1.0 (Posted on )
Created At2016-11-23 08:07:17
Pushed At2021-04-25 07:13:48
Last Commit At2019-02-18 15:02:49
Stargazers Count275
Watchers Count20
Fork Count19
Commits Count126
Has Issues Enabled
Issues Count7
Issue Open Count2
Pull Requests Count5
Pull Requests Open Count0
Pull Requests Close Count1
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private
To the top