Simple pass(1) implementation
Find a file
2024-11-17 14:12:45 +00:00
.gitignore change argon to apm 2024-05-19 16:52:18 +01:00
apm.1 change argon to apm 2024-05-19 16:52:18 +01:00
apm.c Fix multiline password and remove sizeof(char) 2024-11-17 14:12:45 +00:00
arg.h use arg.h to parse options 2024-04-08 11:41:57 +00:00
LICENSE initial commit 2024-04-08 01:50:36 +00:00
Makefile Update CFLAGS 2024-11-04 23:26:02 +00:00
README.md update description 2024-05-22 16:11:23 +01:00

apm

apm, argon password manager; a simple implementation of pass(1) in C. It uses a unique key to encrypt every password, it provides functionality to edit, add, generate, show, list, remove passwords. It uses argon2 to create hash of master password and uses XSalsa20 to encrypt the password.

The name "argon" is chosen as it uses argon2 algorithm and sodium(library) is stored with argon.

Before using apm, you must export 2 environment variables in order to make it work

export APM_DIR=~/secret/apm
export APM_KEY=~/secret/apm_key

APM_DIR is the directory where passwords are stored and APM_KEY is the path to the master key file.

Usage

Usage: apm [-vhL] [[-e | -R | -I | -Q] <password>] [-M <file>] [-G <password> <length>]

Dependencies

  • libsodium

Building

You will need to run these with elevated privilages.

$ make
# make install

Contributions

Contributions are welcomed, feel free to open a pull request.

License

This project is licensed under the GNU Public License v3.0. See LICENSE for more information.