38 lines
1.5 KiB
Markdown
38 lines
1.5 KiB
Markdown
# Live Steganography Experiments
|
||
|
||
This project explores the concept of serving live image requests while embedding encrypted metadata into images using real-time steganography.
|
||
|
||
## Core Concept
|
||
|
||
The server begins by caching all images into memory (if configured to do so). When a client requests an image:
|
||
|
||
1. The server intercepts the request.
|
||
2. It embeds encrypted metadata — including the client’s IP address, timestamp, and headers — directly into the image pixels using LSB (Least Significant Bit) encoding.
|
||
3. The modified image is returned to the client in real time.
|
||
4. If the image is later disseminated (and remains uncompressed), it can be traced back to the original request.
|
||
|
||
Key properties of the system:
|
||
|
||
- **Invisible**: Embedding is imperceptible to the human eye.
|
||
- **Encrypted**: Metadata is secured with AES-GCM; only those with the key can decrypt it.
|
||
- **Stateless**: No logs are stored on the server; the information is embedded within the image itself.
|
||
|
||
## Use Cases
|
||
|
||
- Watermarking downloaded content per user
|
||
- Forensic tracking and auditing of media distribution
|
||
|
||
## Limitations
|
||
|
||
- For large images, encoding can introduce noticeable latency.
|
||
- Embedded images are generated per request, which limits caching efficiency.
|
||
|
||
## Components
|
||
|
||
- `stego-server/`: HTTP server that encodes client metadata into images on-the-fly.
|
||
- `stego-client/`: CLI tool to decode and decrypt embedded metadata from images.
|
||
|
||
## Disclaimer
|
||
|
||
Do not use this technology in ways that violate laws, privacy regulations, or platform terms of service.
|