Encrypto CLI is a command-line program that provides you with an intuitive and easy-to-use program that allows for a highly efficient and customizable interface to generate hashes of files or encrypt them. This allows you to encrypt and decrypt files or text data. This is all powered by the Fernet Encryption.
- Python3
- Cryptography Module (Fernet Encryption)
- Hashing Module
- Termcolor
- PyInquirer
- Scrypt
The idea is very simple. The program first asks you about which operation do you want to perform and then asks you 2-3 questions relative to which operation you have selected.
You can generate hashes for text or file data by selecting the algorithm from the 5 options provided: The five algorithms supported are:
- MD5
- SHA256
- SHA512
- BLAKE2
- BLAKE2b
Also, if you are interested in an analysis of these algorithms or implementing them by yourself you can head over to this article that I wrote on hashing.
You can encrypt data by going through these steps.
- Select the type of data you want to encrypt.
- Input the data (either the text or path to a file).
- Enter a password.
- And you are done.
You can decrypt data by going through these steps.
- Select the type of data you want to decrypt.
- Input the data (either the text or path to a file).
- Enter the password.
- And you are done.
You can encrypt and hide your data in an image using lsb method of steganography ( internally uses stegano package )
- Select the type of data you want to encrypt.
- Select Image as output type
- Input path to the image where your secret will be hidden
- Enter the text/secret you want to encrypt and hide
- Enter a password.
- And you are done your secret has been hidden in the image named "encrypto.png"
- Select Image as the type of data you want to decrypt.
- Input path to the image file you want to decrypt.
- Enter the text/secret you want to encrypt and hide
- Enter the password.
- And you are done.
You can pull this image from Docker Hub and build it very easily.
- Just pull the image.
docker pull arpanpandey/encrypto:latest
OR
-
You can build the image using.
docker build --pull --rm -f "Dockerfile" -t arpanpandey/encrypto:latest "."
-
Running the container with the image (Be sure to put the
-t
and-d
flag.)docker run -t -d arpanpandey/encrypto:latest
This project is licensed under the MIT License.
You can access the video demo at https://youtu.be/Zmf2EK9jPCw
Thanks a lot to the team at CS50 for teaching me so much about the fascinating world of computer science and program.