Skip to content
This project is geared to make it easy to encrypt and decrypt content so you no longer store passwords or other sensitive information in plain text
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


Enigma is an open source asymmetric encryption application which allows the user to encrypt and decrypt content using a public and private key.


You only need to install Docker to compile and run this project.

How to use

Just run the following command for Encryption :

docker run -it --rm -v ~/keys:/keys -v $(pwd):/wd bhgedigital/enigma:2.0 encrypt -i <plain_file> -o <encrypted_file>


docker run -it --rm -v ~/keys:/keys -v $(pwd):/wd bhgedigital/enigma:2.0 encrypt "Plain text here"


./ -i <plain_file> -o <encrypted_file>


./ "Plain text here"

and for Decrypting :

docker run -it --rm -v ~/keys:keys  -v $(pwd):/wd bhgedigital/enigma:2.0 decrypt -i <encrypted_file> -o <decrypted_file>


docker run -it --rm -v ~/keys:keys  -v $(pwd):/wd bhgedigital/enigma:2.0 decrypt "Encrypted text here"


./ "Encrypted text here"

Note: The path to the encrypted and decrypted file is the path within the container. Check setting VOL_MAP in your .env file for more details.

Whats happening behind the scenes . . .

If you do not have a key-pair, the application will create it in the container and store it on the host in the ~/keys folder. If the keys are lost, the application will no longer be able to decrypt the content. If the keys are shared with someone else, they will be able to decrypt the content as well. The public key is required for encrypting and the private key is required for decrypting of content.


The Docker image for this project is located here:

You can’t perform that action at this time.