You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
a javascript and HTML based steganography encoder/decoder.
2
+
3
+
encoder.html takes a .png file as the cover and any file data file as the hidden data. the hidden data cannot be bigger than the width*the height of the cover image (in bytes)
4
+
5
+
decoder.html takes an encoded png selected by the user and extracts the data from the image.
6
+
7
+
8
+
the encoder uses a Pseudo-Random number generator seeded with a hash of a string which serves as the password. the same password must be used for decoding as was used for encoding.
9
+
10
+
requires Firefox (dont know the minimum version, but just best to have the latest)
11
+
12
+
still to do:
13
+
14
+
* arbitrary data hidden inside audio files
15
+
* arbitrary data hidden inside video files
16
+
* clean up the page a bit (planning to move most of it to a webworker and use that to update a progress bar element, should also give a boost to performance and usability)
17
+
* move a bunch of the code into a greasemonkey script (or BACK into a greasemonkey script)
18
+
* make it work in chrome and maybe ie9 or 10
19
+
* celebrate
20
+
21
+
wish i could do:
22
+
23
+
* use some other image format than png for the cover image, but all images are converted to png by the canvas tag
24
+
* suggest a name for the download (i wish base64 uris had a filename hint optional part, something to tell the browser "try this filename when saving this file" so like (data:|foo.png;base64,data)
25
+
26
+
_credits_:
27
+
28
+
1. Chris McKenzie, his project [piggyback](http://qaa.ath.cx/PiggyPack.html) inspired me to make this (in fact the first version was a straight port of his ruby program with a bit of html5 flare)
29
+
2. Patrick Wied his project [nudejs](http://www.patrick-wied.at/static/nudejs/) provided the code i needed to read the pixels from the cover image and for writing it back out to the canvas
0 commit comments