A lightweight Python steganography project that demonstrates secure embedding and extraction of secret text messages in image files using ASCII-based XOR operations. This project was developed as part of the AICTE-Edunet Foundation IBM SkillsBuild Cybersecurity Internship 2025.
Steganography hides secret information within ordinary files like images. This project conceals text messages in digital images by converting text to ASCII codes and applying XOR operations on pixel values. The technique maintains the image's visual quality while embedding hidden data. Only authorized users can extract the message using the correct XOR key. Steganography using ASCII and XOR operation is a technique where data is hidden within another medium (like text or an image) by manipulating ASCII values and applying the XOR operation.
- ASCII-based Encoding: Converts secret messages to ASCII representation for secure embedding
- XOR Operations: Uses bitwise XOR operations for robust data hiding
- Minimal Visual Impact: Maintains image quality while hiding information
- Lightweight Implementation: Simple and efficient Python-based solution
- Educational Purpose: Designed for learning cybersecurity concepts
The implementation uses ASCII XOR operations to hide text data within image pixels:
- Convert the secret message into its ASCII values.
- XOR these ASCII values with a key (a single character or a sequence).
- Store the resulting values in the cover medium.
- Extract the encoded values from the medium.
- XOR them with the same key to retrieve the original ASCII values.
- Convert these ASCII values back to characters to reconstruct the secret message.
- Python 3.8 or higher
- PIL (Python Imaging Library)
- NumPy
Ensure you have the following Python libraries installed to run the program:
1. NumPy: Required for numerical operations, especially in the image steganography program.
pip install numpy
2. PIL (Pillow): Used for image processing and displaying a logo in the GUI.
pip install Pillow
3. Crypto.Cipher (PyCryptoDome): Provides cryptographic algorithms for secure message encoding and decoding.
pip install pycryptodome
This project was developed as part of the AICTE-Edunet Foundation IBM SkillsBuild Cybersecurity Internship 2025. It demonstrates:
- Cybersecurity Principles: Data concealment and protection
- Python Programming: Object-oriented design and file handling
- Image Processing: Pixel manipulation and format handling
- Cryptographic Concepts: XOR operations and key-based security
Note: This project is for educational purposes only. Use responsibly and in compliance with applicable laws and regulations.