a CLI tool for 'quick encryption' with GPG

lotus 396b320432 added compressing message 16 hours ago
shunit2 @ ba130d69bb a86f8a990e added support to automatically tar+gzip and directory prior to encryption, updated readme, update manpages, added submodule for shunit2, started test files, added make test target 2 months ago
tests a86f8a990e added support to automatically tar+gzip and directory prior to encryption, updated readme, update manpages, added submodule for shunit2, started test files, added make test target 2 months ago
.gitignore 7840e90d3c added gitignore, updated readme, fixed makefile 9 months ago
.gitmodules a86f8a990e added support to automatically tar+gzip and directory prior to encryption, updated readme, update manpages, added submodule for shunit2, started test files, added make test target 2 months ago
LICENSE.md 839e434908 first commit 1 year ago
NOTES.md 7e3d8e7ad0 Added argon2 kdf to process password for gpg. Updated README. Version bump. 2 months ago
README.md 25bb233c67 no longer compress directories by default, added -z flag to enable compression, added support for rc file (~/.qerc), updated, man page, updated README. 1 day ago
makefile c5f40724f7 fixed manfile install location 1 month ago
qe.1 25bb233c67 no longer compress directories by default, added -z flag to enable compression, added support for rc file (~/.qerc), updated, man page, updated README. 1 day ago
qe.sh 396b320432 added compressing message 16 hours ago
sample-qerc 25bb233c67 no longer compress directories by default, added -z flag to enable compression, added support for rc file (~/.qerc), updated, man page, updated README. 1 day ago

README.md

qe

License

Installation

Simply run:

git clone https://git.zerohack.xyz/lotus/qe.git
cd qe
# as root
make install

# to uninstall
make uninstall

# to run development unit tests (pulls down shunit2)
git submodule init
git submodule update

The required dependencies are GPG and argon2. We use AES256 symmetric cipher. GPG's default key stretching in symmetric mode is relatively weak. To alleviate this issue we derive our key from argon2 first, then pass it to GPG. I have made an effort to keep this tool as portable as possible. Should work with any POSIX shell. Zstd is an optional dependency. By default qe will not compress anything.

Note: When you pass a directory, qe will tar it prior to encryption!

Usage

qe secret.txt                    # encrypt secret.txt
qe /root/secret\ dir/            # encrypt the directory 'secret dir'
qe secret.txt.gpg                # decrypt secret.txt.gpg
qe -z gz secret.txt              # gzip secret.txt prior to encryption
qe -z zst /root/secret\ dir/     # compress using zstd prior to encryption
qe -h                            # show this help message
qe -v                            # show version

# qe expects encrypted files to end with the .gpg extension

Technical Notes

Read More. If you would like to set the default behavior of qe, it looks for a configuration file in your home directory (.qerc). This will help you by allowing you to skip entering flags manually. Copy over sample-qerc to your home directory to get started.

License / Disclaimer

This project is licensed under the 3-clause BSD license. (See LICENSE.md) I take no responsibility for you blowing stuff up.