Jump to content


Photo

Steganography (Hidden Images-secret agenty stuff) 2007-07-06


  • Please log in to reply
111 replies to this topic

#1 BoltBait

BoltBait

    2013 Movie Guru Award Winner

  • Administrators
  • 9,243 posts
  • LocationCalifornia, USA
  • Reputation:173

Posted 05 July 2007 - 09:32 PM

Steganography (version 1.1 Updated 2007-07-06)

Alph Tech / STUART requested a plugin to detect hidden messages in existing graphics. Using the least significan bit of color information to encode hidden messages/images is called steganography. More information can be seen at Wikipedia here: http://en.wikipedia....i/Steganography


The Idea

My first thought was to devise a code for encoding text to the least significant bit of the target image. This would have worked well, but I saw on the Wiki article that this technique could be extended to images! Cool. So, my second thought was to encode a 1 bit image (black-and-white). I played around with CodeLab until I had something workable. Then I started wondering how many bits it would take to encode a color photograph... :D

Once I had a working algorithm, I found Paint.NET user pleska's photo flood fill plugin source code. I started with his code and made the necessary changes. If there are any bugs in this plugin, of course, I blame pleska. :P

I learned a couple of new things while coding this plugin. First, stay out of other people's namespace. Heh. And, second, I learned how to put multiple plugins into a single DLL file.


The Effect DLL

If you like it, you can download the precompiled effect here:
Attached File  Steganography.zip   10.91KB   1012 downloads


Instructions for Use

To use this plugin, you must have 2 image files. Then, follow these steps:

1. Open the graphic into which you wish to hide an image. It is best if this image has lots of detail and not much area that is a solid color.

2. Click the Effects > Steganography > Hide Image menu. You will see the following UI:

Posted Image
3. Click on the "..." button to select the image you wish to hide. IF you are going to pick the Black and White method, you may want to prepare your hidden image with the Floyd-Steinberg HalfTone error defusion effect.

4. Select the method (either Color or Black and White) for the encoding.

5. Click the OK button to finalize the image.

6. Save your image in a 24-bit lossless format. THIS IS CRITICAL. Lossless formats include PNG and BMP. This will not work if you save as JPG or GIF!


To view the hidden image, follow these steps:

1. Open the graphic that contains the hidden image.

2. Click the Effects > Steganography > Reveal Hidden B&W Image to view a black and white hidden image.

Or, click the Effects > Steganography > Reveal Hidden Color Image to view a color hidden image.


Sample Images

This image has a hidden Black & White image:

Posted Image

To view the hidden image, right click on the image
and pick "Save Image As" to save it to your computer.
Then, open the image in Paint.NET and follow the
steps above.
This image has a hidden Color image:

Posted Image
Enjoy 8)

P.S. More info here: <!-- m -->http://boltbait.goog...m/steganography<!-- m -->


EDITS:

Version 1.1 updated 2007-07-06: This version is not compatible with 1.0, sorry. Improved 1Bit images. Added Preview checkbox so you can see what the hidden image will look like when decoded. Compiled for release instead of debug.
  • 0
Click to play:
Posted ImagePosted ImagePosted ImagePosted ImagePosted Image
Download: BoltBait's Plugin Pack | CodeLab | More... and how about a Computer Dominos Game

#2 david.atwell

david.atwell

    2013 Real Estate Award Winner

  • Moderators
  • 1,332 posts
  • LocationIndianapolis, IN (39°46′5.88″N 86°9′29.52″W)
  • Reputation:125

Posted 05 July 2007 - 09:39 PM

Woah, BoltBait.

Talk about your secret agenty stuff.

Awesome work!
  • 0

stargatesig.png

The Doctor: There was a goblin, or a trickster, or a warrior... A nameless, terrible thing, soaked in the blood of a billion galaxies. The most feared being in all the cosmos. And nothing could stop it, or hold it, or reason with it. One day it would just drop out of the sky and tear down your world.
Amy: But how did it end up in there?
The Doctor: You know fairy tales. A good wizard tricked it.
River Song: I hate good wizards in fairy tales; they always turn out to be him.


#3 stefTACULAR

stefTACULAR
  • Members
  • 67 posts
  • Reputation:0

Posted 05 July 2007 - 09:59 PM

This is really neat! I can see a game in the Overflow popping up from this...
  • 0
Posted Image

#4 MiguelPereira

MiguelPereira
  • Members
  • 821 posts
  • LocationPortugal
  • Reputation:1

Posted 05 July 2007 - 10:43 PM

woooww
wooooooowww
WWOooOWWWW

dude. that. is. awesome....

really

woooow
  • 0

#5 The_Lionhearted

The_Lionhearted
  • Members
  • 2,613 posts
  • LocationSpringfield, MO
  • Reputation:3

Posted 05 July 2007 - 10:51 PM

Oooo...now this is cool.
  • 0

#6 barkbark00

barkbark00
  • Members
  • 3,336 posts
  • Reputation:2

Posted 05 July 2007 - 10:59 PM

Tried it! This is awesome!
  • 0
Posted Image
Take responsibility for your own intelligence. ;) -Rick Brewster

#7 someone2016

someone2016
  • Members
  • 582 posts
  • Reputation:0

Posted 05 July 2007 - 11:28 PM

I've always wanted this!
  • 0
Posted Image

#8 BoltBait

BoltBait

    2013 Movie Guru Award Winner

  • Administrators
  • 9,243 posts
  • LocationCalifornia, USA
  • Reputation:173

Posted 06 July 2007 - 12:10 AM

Woah, BoltBait.

Talk about your secret agenty stuff.

Awesome work!


Thanks!

Heh. "Secret angenty stuff". I like that.

<-- runs off to edit thread title. :D
  • 0
Click to play:
Posted ImagePosted ImagePosted ImagePosted ImagePosted Image
Download: BoltBait's Plugin Pack | CodeLab | More... and how about a Computer Dominos Game

#9 david.atwell

david.atwell

    2013 Real Estate Award Winner

  • Moderators
  • 1,332 posts
  • LocationIndianapolis, IN (39°46′5.88″N 86°9′29.52″W)
  • Reputation:125

Posted 06 July 2007 - 12:19 AM

I'm honored :-)
  • 0

stargatesig.png

The Doctor: There was a goblin, or a trickster, or a warrior... A nameless, terrible thing, soaked in the blood of a billion galaxies. The most feared being in all the cosmos. And nothing could stop it, or hold it, or reason with it. One day it would just drop out of the sky and tear down your world.
Amy: But how did it end up in there?
The Doctor: You know fairy tales. A good wizard tricked it.
River Song: I hate good wizards in fairy tales; they always turn out to be him.


#10 Zeek

Zeek
  • Members
  • 21 posts
  • Reputation:0

Posted 06 July 2007 - 01:14 AM

Very interesting concept. Downloading and looking for those secret images in your post!
  • 0
Posted Image
Hmmm?

#11 Yata

Yata
  • Members
  • 3,267 posts
  • LocationOhio
  • Reputation:0

Posted 06 July 2007 - 02:22 AM

Very impressed. Great job BB!
  • 0

"Only two things are infinite, the universe and human stupidity, and I'm not sure about the former"
Posted Image
[ dA Paint.NET Chat :: Yata on dA ]


#12 drakaan

drakaan
  • Members
  • 619 posts
  • Reputation:0

Posted 06 July 2007 - 02:45 AM

Nice work, BoltBait.

Now I just have to wait for the stenography plugin...
  • 0

#13 Ben_R_R

Ben_R_R
  • Members
  • 566 posts
  • LocationWI, USA, World, Solar System
  • Reputation:2

Posted 06 July 2007 - 03:32 AM

Great, now I'm going to have to download every new image posted and check it for hidden messages :roll: ... In other words... Great Plugin!! :mtdew:
  • 0

#14 barkbark00

barkbark00
  • Members
  • 3,336 posts
  • Reputation:2

Posted 06 July 2007 - 03:45 AM

I am totally going to spend the whole weekend embedding stuff in my Sigs and Avs!
  • 0
Posted Image
Take responsibility for your own intelligence. ;) -Rick Brewster

#15 Eraesr

Eraesr
  • Members
  • 56 posts
  • LocationNetherlands
  • Reputation:0

Posted 06 July 2007 - 09:21 AM

awesome!
  • 0

#16 Hope

Hope
  • Members
  • 83 posts
  • Reputation:0

Posted 06 July 2007 - 01:22 PM

very very cool!
  • 0
Posted Image

#17 Myrddin

Myrddin

    Former Moderator

  • Members
  • 4,155 posts
  • LocationSheffield, England.
  • Reputation:2

Posted 06 July 2007 - 05:14 PM

Blow me down, this is amazing BoltBait! So many ideas flooding my mind...

Thanks.
  • 0

#18 BoltBait

BoltBait

    2013 Movie Guru Award Winner

  • Administrators
  • 9,243 posts
  • LocationCalifornia, USA
  • Reputation:173

Posted 06 July 2007 - 05:28 PM

I've been thinking of changing the 1 bit algorithm. It would not be compatible with the current implementation.

Any objections?
  • 0
Click to play:
Posted ImagePosted ImagePosted ImagePosted ImagePosted Image
Download: BoltBait's Plugin Pack | CodeLab | More... and how about a Computer Dominos Game

#19 barkbark00

barkbark00
  • Members
  • 3,336 posts
  • Reputation:2

Posted 06 July 2007 - 05:31 PM

Nope...
  • 0
Posted Image
Take responsibility for your own intelligence. ;) -Rick Brewster

#20 BoltBait

BoltBait

    2013 Movie Guru Award Winner

  • Administrators
  • 9,243 posts
  • LocationCalifornia, USA
  • Reputation:173

Posted 06 July 2007 - 09:31 PM

OK. Done!

Go get the new version.

Version 1.1 updated 2007-07-06
This version is not compatible with 1.0, sorry.
- Improved 1Bit images.
- Added Preview checkbox so you can see what the hidden image will look like when decoded.
- Removed useless color mask option.
- Compiled for release instead of debug.

Enjoy. 8)

Does this get the coveted "Most Useless Plugin" award? :D
  • 0
Click to play:
Posted ImagePosted ImagePosted ImagePosted ImagePosted Image
Download: BoltBait's Plugin Pack | CodeLab | More... and how about a Computer Dominos Game