Skip to content

A tool that uses caesar-cipher to encrypt and decrypt files on Linux.

License

Notifications You must be signed in to change notification settings

nkminion/Encryption-Decryption

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

File Encryptor-Decryptor

A C++ tool for securing files using a custom PIN-based encryption mechanism. Designed for Linux systems.

Branches:

'main':

Modern, multi-threaded graphical interface using Qt.

'CLI':

Runs in the terminal, lightweight version.

To switch versions:

#For GUI version:
git checkout main

#For CLI version:
git checkout CLI

Pre-requisites:

You'll need a C++ compiler and OpenSSL libraries. You will also need Qt6 if you plan on using the GUI version.

Arch Linux:

#GUI
sudo pacman -S base-devel openssl cmake qt6-base

#CLI
sudo pacman -S base-devel openssl cmake

Debian/Debian-based:

#GUI
sudo apt install build-essential libssl-dev cmake qt6-base-dev

#CLI
sudo apt install build-essential libssl-dev cmake

Compilation:

#Inside the repository
mkdir build && cd build
cmake ..
make
#Run with ./Encryption-Decryption

Usage:

CLI:

Run the executable

Make sure to include file paths as arguments while executing

./Encryption-Decryption file1.txt file2.png

Enter your choice (1: Encrypt,2: Decrypt)

Enter your pin

GUI: Run the executable

./Encryption-Decryption

Click on the respective button to choose your option

Click on "Add Files" to add files to your queue

Enter your pin in the textbox

Click on start

Technical Details:

Algorithm: Caesar-Cipher with PIN-seeded offset.

Integrity: SHA-256 verifies file validity and pin before processing the file.

Safety: Automatic permission restoration and write-verification before deleting files.

Optimisation: Uses a 128KiB buffer to maximise cache efficiency.

Disclaimer:

Use with caution. The program performs destructive operations(deletes original after processing). Always backup critical data. This is designed for personal privacy and file obscuring, not for protecting classified data against professional cryptanalysts.

About

A tool that uses caesar-cipher to encrypt and decrypt files on Linux.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published