Skip to content

MrMayestic/ImageVault

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ImageVault

Desktop application for hiding encrypted text inside images using the LSB (Least Significant Bit) steganography method with AES-256-GCM encryption.

Requirements

  • Java 17+
  • Maven 3.6+

Installation & Running

1. Clone the repository

git clone https://github.com/MrMayestic/ImageVault.git
cd ImageVault

2. Run the application

mvn javafx:run

Usage

Encoding

  1. Open the ENCODE tab
  2. Click Pick Image and select an image (PNG, BMP, JPG)
  3. Choose Select File to pick a .txt file, or Input text to type directly
  4. Enter a password (optional)
  5. Click Encode
  6. Preview the result image and click Download to save it

Decoding

  1. Open the DECODE tab
  2. Click Pick Image and select the encoded image
  3. Enter the same password used during encoding
  4. Click Decode
  5. The hidden message will appear in the text area

Tech Stack

  • Java 17
  • JavaFX 21
  • Maven
  • AtlantaFX (NordDark theme)
  • AES-256-GCM (javax.crypto)
  • LSB steganography (javax.imageio)

Project Structure

src/main/java/com/imagevault/
├── Main.java
├── Launcher.java
├── controller/
│   └── TaskController.java
├── model/
│   ├── StegoEncoder.java
│   ├── StegoDecoder.java
│   └── EncryptData.java
└── util/
    └── ErrorHandler.java

Authors

Patryk Pilch, Szymon Kodura — AGH University of Science and Technology, 2026

About

Steganography + AES-256-GCM encryption in images — JavaFX desktop app.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages