Securely Encrypt and Decrypt Your Data.
One Byte at a Time!
iCrypt is a versatile encryption and decryption tool designed to enhance the privacy and security of your data. Born from the need to protect sensitive information, iCrypt offers a robust solution for encrypting and decrypting texts and various file types.
Entirely developed in Python, iCrypt features a sleek and user-friendly Graphical User Interface (GUI) built with Customtkinter, by Tom Schimansky.
iCrypt is designed to provide robust security for your data with ease of use. Its main functionalities include:
✅ Secure encryption and decryption of text or any file type.
✅ Implementation of symmetric encryption so that users can exchange data securely, ensuring that only those with the correct key can decrypt the information.
✅ Support for multiple layers of encryption in a single file, allowing users to apply several layers of security. To decrypt, simply use the symmetric keys in the correct reverse order.
With iCrypt, you can have full control over your data privacy, ensuring that your sensitive information remains protected at all times.
🧑 To End Users
📚 Index
Click the button below to download the iCrypt_v1.rar
file:
To verify the integrity of the file and ensure its security, it is essential to compare the provided hashes with those of the files you downloaded. This ensures that the file has not been altered or corrupted during the download.
1️⃣ Obtain the Official Hash
This hash serves as a unique digital signature for the file.iCrypt_v1.rar
= c9e454f8c5aa9214e489a70358711d9f9d16a1f8c0c1ce971f6189fb00ccdf15
iCrypt_v1.rar
= 435766ac2c1f8186fc5f472a427b1b58
2️⃣ Calculate the Hash of the Downloaded File
Next, you will need to calculate the hash of the file you downloaded to compare it with the official hash. To do this, open a terminal in the same folder where the file was downloaded and type one of the following commands, depending on the type of hash provided (e.g., SHA-256, MD5):certutil -hashfile iCrypt_v1.rar sha256
certutil -hashfile iCrypt_v1.rar md5
3️⃣ Compare the Hashes
After calculating the hash of your downloaded file, compare it with the provided official hash.✅ If the two hashes are identical, the file is intact and safe to use.
❌ If they differ, the file may have been altered or corrupted and should not be trusted or used.
Remember that hash verification is a crucial step to ensure the security and integrity of downloaded files, especially when it comes to executable or critical files.
After extracting the iCrypt_v1.rar
file, give a double click on the iCrypt_v1.exe
file to open the program:
No initial installation or internet connection is required.
Use the tabs (Home
or Info
) located at the top of the program to navigate.
- Selecting the Mode: Use the first slider to choose between
Encryption
andDecryption
. - Content Type: Next to it, there is another slider to select if you want to encrypt
Text
orFile
. - Entering the Key: In the
Enter the key here
field, type the key that will be used for encryption. Remember, the same key must be provided to decrypt the text or file later. - Choosing the Algorithm: Select between 128-bit AES and 256-bit AES encryption according to your needs.
After configuring the desired options, click the Start
button located below the settings to initiate the encryption or decryption process. For texts, after encryption, you can copy the encrypted text by clicking the green button with a Copy
icon next to the Start
button.
Your text or file is now encrypted (or decrypted, depending on your initial choice). If you encrypted a text, use the button to copy the encrypted content and share it securely. If you encrypted a file, a copy of it will appear in the same folder as the original file with the .enc
extension. This is the encrypted file that you can send securely to whoever you want.
💡 Security Tip (optional):
To significantly enhance the security of your data, apply multi-layer encryption using different keys for each layer. The recipient of the data will only need to know the keys used and apply them in reverse order to successfully decrypt the text or file.
🖥️ To Developers
📚 Index
🔒 Encryption
Type | Algorithm | Description |
---|---|---|
Text |
SHA-128 SHA-256 |
Encrypts plaintext input using the selected hashing algorithm, converting it into a secure format. |
File |
SHA-256 |
Encrypts files, ensuring their content is securely transformed and protected. |
🔓 Decryption
Type | Algorithm | Description |
---|---|---|
Text |
SHA-128 SHA-256 |
Decrypts encrypted text back into its original plaintext format using the selected algorithm. |
File |
SHA-256 |
Decrypts encrypted files, restoring their original content securely. |
📊 Algorithm Types
Type | Description |
---|---|
SHA-128 |
A hashing algorithm that produces a 128-bit hash value, providing a moderate level of security for text encryption. |
SHA-256 |
A cryptographic hash function that produces a 256-bit hash value, offering a higher level of security for both text and file encryption. |
👉
iCrypt (1.0)
is currently under development in branchmain
.
📋 Prerequisites
- Windows 10 or higher and Ubuntu 22.04 or higher. 2. Python 3.11.4 or higher 3. git 2.40.1 or higher 4. pip 23.1.2 or higher
⬇️ Installing prerequisites
Update system dependencies before proceeding. To do this, copy and paste the command below into your Terminal and press enter
:
sudo apt update
...and only then, proceed with the tutorial below:
🐍 Installing Python
sudo apt install python3.11
🐙 Installing git
sudo apt install git
📦 Installing pip
sudo apt install python3.11-pip
To use this software, follow the steps below:
1️⃣ Cloning this repository
- Navigate to the folder where you typically install programs or applications on your computer. Any folder you prefer.
- Opens the Terminal. To do this, follow any of the instructions below:
On Windows, there are 2 options:
- Via CMD (Command Prompt):
- In the address bar located at the top of the window, click on the folder address field. If it's not visible, ensure that 'Address Bar' is checked in the 'View' menu.
- Type
CMD
in the selected address bar and pressenter
. This opens a CMD-type terminal in the current folder.
- Via PowerShell:
- In the upper address bar, click to select the folder address. If not visible, ensure 'Address Bar' is checked in the 'View' menu.
- Right-click on the selected address bar and choose
Open in Terminal
. This opens a PowerShell-type terminal in the current folder.
On Linux (via Bash):
- Right-click on the folder background and select
Open in Terminal
or navigate to the project root folder using thecd
command.
- Next, clone this repository into the folder you chose. To do this, copy and paste the command below into your terminal and press
enter
:
git clone https://github.com/GustavoRosasDev/iCrypt.git
Then, navigate into the project folder. To do this, copy and paste the command below into your terminal and press enter
:
cd iCrypt
[!NOTE] The above command will use the git clone module to create an exact copy of this repository in your folder (local repository).
2️⃣ Create virtual environment
With the Terminal still open, copy and paste the command below and press enter
:
On Windows:
python -m venv venv
On Linux:
Begin by installing the package below, which provides support for virtual environments (venv), in Python 3.11.
sudo apt install python3.11-venv
The execution of the above command requires elevated administrative privileges (indicated by the use of sudo
). Therefore, you will be prompted for the superuser (root
) password to ensure security and authorize the package installation in Python 3.11.
Next, create your virtual environment by copying and pasting the code below into your Terminal:
python3.11 -m venv venv
[!NOTE] The above command utilizes the
python
interpreter (via environment variables) with the-m
(module) parameter to create a virtual environment (venv
) named the same asvenv
. You could name it whatever you like; however, it is a universal convention (adopted by the Python community) to name it this way.
3️⃣ Activate virtual environment
The next step is to activate the virtual environment. See how simple it is:
On Windows:
-
Navigate to the
Scripts
folder:cd venv\Scripts
-
Then, activate the virtual environment:
activate
-
And finally, return to the root folder. To do this, type the command below and press
enter
. Repeat this twice:cd ..
-
[!NOTE] The
cd
(change directory) command, when used with..
, allows you to navigate up one level in the directory structure. Executing this combination twice will bring you back to the main project folder, specifically theiCrypt/
directory.
On Linux:
source venv/bin/activate
✅ To confirm that the virtual environment has been activated correctly , simply look at your Terminal and check if (venv)
appears on the same line where you would type your next command.
See an example in the image below:
4️⃣ Install requirements
With the virtual environment active, simply install the dependencies (libraries) that the project needs to function. To do this, copy and paste the command below into the Terminal and press enter
:
On Windows:
pip install -r requirements.txt
On Linux:
pip3.11 install -r requirements.txt
[!NOTE] The above command uses
pip
(Package Installer for Python) to install dependencies specified in the requirements file. Theinstall
command is a fundamental part of pip, followed by the-r
(read) parameter, indicating that it should read and install the requirements. Therequirements.txt
file, located in the root folder of this project, contains a list of necessary libraries for the project to function.
Make sure you are in the project's root folder (iCrypt/
). Then, copy and paste the command below into the Terminal, and press enter
:
python main.py
python3.11 main.py
See CONTRIBUTING
See LICENSE