A collection of secure steganography tools that hide secret messages in images using different encryption methods. This project demonstrates three approaches to embedding encrypted data in images while preserving visual quality.
🌐 Live Demo: Image Steganography Suite
- 🧩 Basic XOR Steganography – Simple LSB embedding with XOR cipher.
- 🔄 Enhanced XOR Steganography – Improved pixel traversal pattern.
- 🛡️ AES-Encrypted Steganography – Military-grade AES encryption before embedding.
- 🌐 Web-based interface built with React for easy interaction.
- ⚙️ Flask API backend for handling image processing and encryption.
- 🔧 Support for multiple steganography methods (XOR, Enhanced XOR, AES).
- 💻 Cross-platform compatibility (runs on Windows, macOS, and Linux).
- 🖼️ Uses OpenCV and Pillow for image manipulation.
- 🔑 Secure encryption powered by PyCryptodome.
Image_Steganography_Suite/
│
│
├── 📁 api/ # ⚙️ Backend test and helper scripts
│ │
│ └── 🧪 test_api.py # API testing script
│
│
├── 📁 src/ # 💻 Frontend (React)
│ │
│ ├── 🧩 App.jsx # Main React app component
│ │
│ ├── 📁 components # Reusable UI components (Navbar, UploadForm, etc.)
│ │
│ ├── 📁 services # API communication layer (handles backend requests)
│ │
│ ├── 🚀 index.js # Entry point for React rendering
│ │
│ └── 🎨 index.css # Global styles
│
│
├── 📁 public/ # 🗂️ Static frontend assets
│ │
│ └── 🧱 index.html # Root HTML file for the React app
│
│
├── 🔐 aes_steganography.py # AES encryption-based image steganography
│
├── 🖼️ lsb_steganography.py # LSB (Least Significant Bit) image steganography
│
├── ⚡ xor_steganography.py # XOR-based steganography algorithm
│
│
├── 🧠 app.py # Flask backend main routes
│
├── ▶️ run_backend.py # Entry point to start Flask server
│
├── 🌐 wsgi.py # WSGI entry point for deployment
│
│
├── 📦 requirements.txt # Backend Python dependencies
│
├── 📦 package.json # Frontend dependencies
│
├── 🔒 package-lock.json # Dependency lock file
│
├── 🎨 tailwind.config.js # Tailwind CSS configuration
│
├── ⚙️ postcss.config.js # PostCSS configuration
│
├── 🗄️ static.json # Render deployment config (static)
│
├── ☁️ backend-render.yaml # Render deployment config (backend)
│
├── ⚙️ render.yaml # Combined Render deployment configuration
│
│
├── 📘 README.md # Project documentation
│
└── 📄 LICENSE # MIT License
git clone https://github.com/ScriptedLines404/Image_Steganography_Suite.git
cd Image_Steganography_Suitecd api
python -m venv venv
venv\Scripts\activate # On Mac: source venv/bin/activate
pip install -r requirements.txtStart the backend server:
python run_backend.py📍 The API will be available at http://127.0.0.1:5000.
cd ..
npm install
npm start📍 The frontend will run at http://localhost:3000.
-
🚀 Launch both backend and frontend servers.
-
🌍 Open the frontend in your browser at
http://localhost:3000. -
🛠️ Choose a steganography method:
- 📷 Upload a cover image.
- 📝 Enter or upload your secret message.
- 🔐 Select an encryption method (XOR / Enhanced XOR / AES).
- 💾 Download the generated stego-image.
-
🔍 To extract a hidden message:
- Upload the stego-image.
- Provide the decryption key (if applicable).
We welcome contributions! 🙌
- 🍴 Fork the repository.
- 🌿 Create a new branch for your feature or bugfix.
- 🖊️ Write clear commit messages and include tests where possible.
- 📬 Submit a pull request with a detailed description.
Guidelines:
- 🧹 Follow Python and JavaScript best practices.
- 📚 Keep code clean and well-documented.
- 📝 Update relevant documentation when making changes.
This project is licensed under the MIT License. You are free to use, modify, and share this project with proper attribution.
Hi, there!. I am Vladimir Illich Arunan, an engineering student with a deep passion for understanding the inner workings of the digital world. My goal is to master the systems that power modern technology—not just to build and innovate, but also to test their limits through cybersecurity.