A powerful, secure, and user-friendly Windows GUI application for text encryption and decryption. Built using pure C and the Win32 API, this tool supports Caesar and Vigenère ciphers, offering both text-based and file-based operations.
- Clean & Professional Interface: A modern, minimal GUI with clear navigation and visual hints.
- Dual Encryption Algorithms:
- Caesar Cipher: Classic shift-based encryption.
- Vigenère Cipher: Stronger polyalphabetic substitution using a keyword.
- Cipher Conversions: unique tool to convert ciphertext directly between Caesar and Vigenère formats.
- File Operations:
- Directly encrypt or decrypt
.txtfiles. - Auto-loads file content.
- Save results back to new files immediately.
- Directly encrypt or decrypt
- Robust Input Handling:
- Validates numeric shifts and alphabetic keys.
- Auto-clears inputs when switching modes to prevent confusion.
- Error messages for invalid or missing inputs.
- Language: C (C99 Standard)
- GUI Framework: Windows API (Win32)
- Styles: Custom Owner-Drawn Buttons, color theming, and Segoe UI/Verdana fonts.
- File I/O: Native Windows Common Dialogs (
GetOpenFileName,GetSaveFileName).
- A C Compiler (GCC via MinGW is recommended) OR Visual Studio.
- Windows OS (Windows 7/8/10/11).
To build the application yourself, run the following command in your terminal:
Using GCC (MinGW):
gcc -o SecureCrypt gui_encryption.c -lgdi32 -luser32 -lcomdlg32 -mwindowsUsing Visual Studio (CL):
cl gui_encryption.c user32.lib gdi32.lib comdlg32.lib /Fe:SecureCrypt.exeDouble-click SecureCrypt.exe or run it via command line:
.\SecureCrypt.exe-
Select a Mode from the sidebar:
- Caesar Cipher: Enter text, set a numeric shift (1-25), and click Encrypt/Decrypt.
- Vigenère Cipher: Enter text, set a secret keyword (letters only), and click Encrypt/Decrypt.
- Cipher Conversions: Convert text encrypted with one method specifically to the other.
- File Operations: Browses for a file, select the algorithm, enter key, and process. You can save the output instantly.
-
Input & Output:
- Type or paste your text in the top "Input Text" box.
- View the result in the bottom "Process Result" box.
- Use the Clear button to reset fields.
gui_encryption.c: Main source code containing the GUI and logic.SecureCrypt.exe: The compiled executable application.input.txt/output.txt: Example files for testing.
Contributions are always welcome! Please follow these steps:
- Fork the Project.
- Create your Feature Branch (
git checkout -b feature/AmazingFeature). - Commit your Changes (
git commit -m 'Add some AmazingFeature'). - Push to the Branch (
git push origin feature/AmazingFeature). - Open a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.