jak can encrypt and decrypt files. The standard example is of a .env
file with secrets in it inside of a git repository.
By sharing a key through some other means all developers can encrypt and decrypt the file, so that it is encrypted whenever it enters git history.
For a more thorough introduction you should read the documentation..
jak currently works for *nix type systems such as macOS or ubuntu. We are working on windows compatibility.
IMPORTANT!! JAK IS NOT READY FOR PRODUCTION USE YET!!
pip install jak
cd ~/folderThatMayOrMayNotBeARepo
jak start
nano jakfile # add which files you want to have be encrypted.
jak encrypt all
jak decrypt all
One off
# Create a 64 character (32 byte) hex digit (0-f) key.
jak keygen
# Encrypt/Decrypt a specific file
jak encrypt <file> --key <key from keygen command>
jak decrypt <file> --key <key from keygen command>
# If you put the generated key in a file
jak encrypt <file> --keyfile <keyfile location>
etc.
# Initialize jak (If using in git repository, make sure your cwd is the repos root)
jak start
# List the files you want to encrypt on a regular basis.
nano jakfile
# Encrypt/Decrypt all of the files that are specified as
# "files_to_encrypt" in your jakfile.
jak encrypt all
jak decrypt all
# Don't need to pass key (--key) because it defaults to keyfile designated
# in the jakfile
jak encrypt <specific file>
jak decrypt <specific file>
# Generate a strong key. An encryption is only as strong as the key.
# ALWAYS use a strong 32 character key.
jak keygen
# Where action is one of encrypt/decrypt
# Overrides the key the jakfile may be pointing to.
jak <action> -k faca44c66af094f18e3e69eaf2328e557a618ca0e3d560a5f83c6f43a172b542
# Overrides the key in the jakfile with a key from a file
jak <action> -kf <keyfile>
# We highly recommend you read the jak --help man texts.
jak --help
# It works for specific commands as well
jak keygen --help
jak is stewarded by Dispel but all of the contributors are the authors.
see LICENSE file.