TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Steganography with Brainfuck

75 pointsby Two9Aover 13 years ago

4 comments

CGamesPlayover 13 years ago
&#62; Steganography is a name given for a set of encryption techniques, where the targeted message is hidden inside an image in some form.<p>Actually, steganography is not a type of encryption, and is simply the process of hiding a message, be it inside of an image, another message, the closing values of the DJIA, or not inside of anything at all.<p>I'm curious why you didn't simply duplicate the palette 16 times, then use the gray values in 0x0X, and the brainfuck character component in 0xX0. You'd be able to fit vastly more brainfuck data into an image, depending on the characteristics of the image and the code.
评论 #3228679 未加载
tripzilchover 13 years ago
So the basic idea is that a BF interpreter will ignore any non-BF characters?<p>How about, if you'd take an 8 bit grayscale image, and allow each pixel a margin of error, say 2 values up or down. Then you could process the pixels sequentially while looking for the next value that is within the range of +/- 2 of your next BF token and adjust it to the correct value. If instead you happen upon an incorrect BF token, you can also adjust it so that it either turns into the correct one or a non-BF instruction byte.<p>Of course there's no guarantee that you'll be able to fit the whole program since you'll be skipping a lot of pixels. But an image is big and the message is short, so there's a good chance. Especially if you retry with different BF encodings of the same message, and failing that upping the error margin to +/- 3, then +/- 4, etc.
评论 #3228935 未加载
philhover 13 years ago
It seems like this would be pretty easy to do with XPM2. Duplicate certain colours as [.,&#60;&#62;+-] (at the beginning of a program, that's a no-op) and insert the program into the pixel data. It's probably less well-hidden though, since someone's more likely to look at it in a text editor.<p><a href="http://en.wikipedia.org/wiki/X_PixMap#XPM2" rel="nofollow">http://en.wikipedia.org/wiki/X_PixMap#XPM2</a>
SagelyGuruover 13 years ago
This looks like 'snake oil'. What exactly is the purpose of using the brainfuck code instead of the message itself? Surely, if steganography fulfilled its purpose and the message was not discovered, then the simplest/most compact form of the message would have been the best. On the other hand, if the message was discovered, then brainfuck does not represent much of an obstacle to reading it.
评论 #3228949 未加载
评论 #3229159 未加载