Coder Social home page Coder Social logo

cleasbycode / jdvrif Goto Github PK

View Code? Open in Web Editor NEW
0.0 0.0 0.0 111.74 MB

Hide files within JPG images using this steganography privacy tool. Post images on Mastodon and other hosting sites.

License: MIT License

C++ 100.00%
arbitrary-data jpg mastodon steganography hidden-files encryption cybersecurity privacy hide-files-in-image hidden-data

jdvrif's Introduction

jdvrif

CLI tools to hide (jdvin) or extract (jdvout) any file type via a JPG image.
You can post your image with hidden data on Mastodon and a few other social media sites.

*Image size limits (cover image + data file):

  • Flickr (200MB), ImgPile (100MB), ImgBB (32MB), PostImage (24MB), Reddit (20MB / -r option),
  • Mastodon (~6MB / Limit measured by data file size), Twitter (~10KB / Limit measured by data file size).

jdvrif partly derives from the technique discovered by security researcher David Buchanan.

Demo Image
Image credit: @altphotos_pl

Demo Videos: Mastodon (hidden jpg) / X/Twitter (hidden workflow.json) / Web Tool

To post/share file-embedded JPG images on Reddit, you must use the -r option.
Always select the "Images & Video" tab on Reddit to post these images.

When saving images from Reddit, use the new.reddit.com site, click the image in the post to expand it, then save it.
You should see the filename with a .jpeg extension in the address bar of your browser.

To correctly download an image from Twitter, click the image in the post to fully expand it, before saving.

With Twitter, the size limit (~10KB) is measured by the data file size and not the combined image size.
As the data file is compressed when embedded, you should be able to hide files larger than 10KB.
For example, a 30KB workflow.json file compressed down to under 10KB.

Also with Mastodon, the size limit (~6MB) is measured by the data file size and not the combined image size.
For example, if your cover image is 2MB you can still embeded a data file upto ~6MB.

(You can try jdvrif from this site if you don't want to download & compile the source code.)

Usage (Linux - jdvin / jdvout)

user1@linuxbox:~/Downloads/jdvrif-main/src/jdvin$ g++ main.cpp -O2 -lz -s -o jdvin
user1@linuxbox:~/Downloads/jdvrif-main/src/jdvin$ sudo cp jdvin /usr/bin

user1@linuxbox:~/Desktop$ jdvin 

Usage: jdvin [-r] <cover_image> <data_file>  
       jdvin --info

user1@linuxbox:~/Desktop$ jdvin clown.jpg workflow.rar
  
Saved file-embedded JPG image: jrif_28597.jpg 176345 Bytes.

Complete!

user1@linuxbox:~/Downloads/jdvrif-main/src/jdvout$ g++ main.cpp -O2 -lz -s -o jdvout
user1@linuxbox:~/Downloads/jdvrif-main/src/jdvout$ sudo cp jdvout /usr/bin

user1@linuxbox:~/Desktop$ jdvout

Usage: jdvout <file_embedded_image>
       jdvout --info
        
user1@linuxbox:~/Desktop$ jdvout jrif_28597.jpg

Extracted hidden file: workflow.rar 4225 Bytes.

Complete! Please check your file.

Demo Image2 Demo Image3

Issues:

  • Reddit - While you can upload JPG images via the mobile app, you need to use the Desktop/browser to download them (new.reddit.com).
  • ImgPile - You must sign in to an account before sharing your data-embedded JPG image on ImgPile.
    Sharing your image without logging in, your embedded data will not be preserved.

My other programs you may find useful:-

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.