Hi Gophers,
I’ve created a command line password manager in the style of the “pass” utility by Jason A. Donenfeld (https://www.passwordstore.org/) in Go.
It uses symmetric AES encryption, Argon2 key-derivation and key-agent similar to SSH.
I would love to get your opinions on the code, the architecture, the security concept and perhaps more users on the codebase to find possible errors.
Any comments, help and pull requests are welcome.
https://github.com/ms140569/loki
Cheers,
Matthias Schmidt
Since you're looking for opinions on the security concept, two questions spring immediately to my mind:1. Does the daemon keep the sensitive data in locked memory that cannot be paged out? If so, how cross-platform is this?
2. How does the client communicate securely with the daemon? Which encryption protocol/handshake is used for this? (If it just uses a socket, what would prevent another process from reading out the master password?)