HP Forums

Full Version: GROBs with hidden data in them...
You're currently viewing a stripped down version of our content. View the full version with proper formatting.

I've read proposals over the years that data can be hidden inside GROBs by taking advantage of the unused bit fields.

Has anyone ever heard of someone actually doing that? Even better would be if someone could point me towards an HP48 program or an example GROB with such hidden data.

I've already done the obvious searches of hpmuseum, comp.sys.hp48, and hpcalc.org and only found a few people saying it can be done.

Background: GROBs store each row of pixels as consecutive bits. To make memory management easier, the number of bits is rounds up to the nearest multiple of 8 bits. Thus, a GROB that is 9x6 or 10x6 or 11x6 will all store their pixels as 16x6 bits. This round up adds extra bits to the end of each row that the calculator doesn't use so theoretically you can put your own data into there.

In a picture file with a 32-bit color palette, you can commandeer the least significant bit from successive pixel's color-code bytes and use that bit sequence to encode plain text messages into the picture file. The file still opens as a picture, with only the tiniest perceptible loss in clarity. Whoever receives the picture file simply runs the decode module, which pulls the least significant bits back out and reassembles the text message.

Yes, that alternative mechanism has been done for modern image formats, as long as you have large enough color depth (ex: don't work on 1-bit color images).

However, the question is whether anyone has actually hidden data into the unused bits of GROBs (not JPG, GIF, PNG, etc), rather than just discuss the possibility.