All Projects → CalderWhite → gif-msg

CalderWhite / gif-msg

Licence: GPL-3.0 license
Hide 127 bytes in a gif without touching any pixels or colors

Programming Languages

python
139335 projects - #7 most used programming language
HTML
75241 projects

Projects that are alternatives of or similar to gif-msg

pixcryption
📷 Pixel Safe Encryption - Now Cryptographically Secure 🔒
Stars: ✭ 56 (+115.38%)
Mutual labels:  steganography, steganography-algorithms
hiddenwave
An Audio Steganography Tool, written in C++
Stars: ✭ 46 (+76.92%)
Mutual labels:  steganography, steganography-algorithms
HiddenWave
Hide Your Secret Message in any Wave Audio File.
Stars: ✭ 97 (+273.08%)
Mutual labels:  steganography, steganography-algorithms
StegX
Steganography (BMP, PNG, WAV, MP3, AVI, FLV)
Stars: ✭ 22 (-15.38%)
Mutual labels:  steganography, steganography-algorithms
Hidden-Eye
Hide data into Picture
Stars: ✭ 39 (+50%)
Mutual labels:  steganography, steganography-algorithms
euli treasure hunt
Euli is not a computer game but a tool which helps you set up a real life treasure hunt
Stars: ✭ 34 (+30.77%)
Mutual labels:  steganography
FlutterLoadingGIFs
Loading indicator GIFs. Material and Cupertino (Android and iOS) loading indicators in assorted sizes. Use as placeholders for loading remote image assets. Demo: https://gallery.codelessly.com/flutterwebsites/loadinggifs/
Stars: ✭ 28 (+7.69%)
Mutual labels:  gifs
stegjs
Encrypt message to PNG image.
Stars: ✭ 18 (-30.77%)
Mutual labels:  steganography
node-gif
Displays Gifs In Terminal 👽 👾 🚀 💣
Stars: ✭ 27 (+3.85%)
Mutual labels:  gifs
steganography
A simple steganography library written in rust
Stars: ✭ 75 (+188.46%)
Mutual labels:  steganography
TGInlineGIF
Telegram Inline tenor gif search bot.
Stars: ✭ 19 (-26.92%)
Mutual labels:  gifs
GiphyImageResultsPreview
Library for GIF results, preview, play, share everything at one place!
Stars: ✭ 28 (+7.69%)
Mutual labels:  gifs
Walt
🎬 A Swift 3 library for creating gifs and videos from a series of images
Stars: ✭ 44 (+69.23%)
Mutual labels:  gifs
nats
A program to hide file into executable binary.
Stars: ✭ 16 (-38.46%)
Mutual labels:  steganography
comfy-scenes
A rudimentary app for interactive Twitch scenes using Vue.js. It monitors your Twitch channel chat for !commands using Comfy.js (by instafluff and others), plays mp3 files, loads images, and interacts with Vue.js components.
Stars: ✭ 24 (-7.69%)
Mutual labels:  gifs
PyTorch-Deep-Image-Steganography
A PyTorch implementation of image steganography utilizing deep convolutional neural networks
Stars: ✭ 71 (+173.08%)
Mutual labels:  steganography
Steganography
Image & video steganography in Matlab
Stars: ✭ 31 (+19.23%)
Mutual labels:  steganography
TryHackMe-Write-Up
The entire walkthrough of all my resolved TryHackMe rooms
Stars: ✭ 53 (+103.85%)
Mutual labels:  steganography
AperiSolve
Steganalysis web platform
Stars: ✭ 268 (+930.77%)
Mutual labels:  steganography
hiddenthread
Steganography for 2ch
Stars: ✭ 18 (-30.77%)
Mutual labels:  steganography

gif-msg

gif-msg hides a 128 byte message in a gif while keeping the pixel values identical. Can you figure out how I did it?

gif's popular usage in messaging apps allow them to blend into conversations naturally. This way users can send secret (potentially encrypted) messages to eachother without it being obvious to a 3rd party. This method of steganography is also largely applicable on message forums.

Installation

Pillow's gif encoder does not support lossless compression, so gifsicle is used to re-encode the gif such that its file size does not increase.

# Install dependancies
pip3 install -r requirements.txt
sudo apt install gifsicle

# Clone module
git clone https://github.com/CalderWhite/gif-msg/
cd gif-msg
git submodule update --init --recursive

Usage

Please use the Latest Stable Release and note that the semantic versioning indicates when changes will not be backwards compatible (so the major release must match if you are to exchange gifs with another version).

usage: gif_msg.py [-h] [--key KEY] [--compress]
                  command infile [outfile] [body]

Encode/Decode 128 bytes into a gif file.

positional arguments:
  command     The command to be run (encode/decode)
  infile      The input gif.
  outfile     The outfile gif. (applicable for encode)
  body        The message to be encoded. (applicable for encode)

optional arguments:
  -h, --help  show this help message and exit
  --key KEY   If given a key, AES will be used to encrypt/decrypt the message
              body.
  --compress  If supplied, smaz will be used to compress the body. NOTE: This
              is only effective with language, and binary data is best left
              uncompressed

Known Bugs

  • Greyscale gifs are not currently supported.
  • Gifs with <256 colors can only hold n//2 bytes, where n=number of colors
  • Gifs with duplicate colors in their color palette

Note: If there color white (0xFFFFFF) is in the color palette and the image has transparency, this will create a duplicate color error since PIL overwrites what is at the transparent index in the palette as 0xFFFFFF)

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].