On 26 May 99, at 22:08, Chris M. Lonvick wrote:

> The concept of hiding files within bitmaps follows the general 
> rule that the least significant bit of each pixel can be changed 
> without any noticable overall change.  (You should be able to do 
> the same with sound files.)

  I used to think this -- and wondered how this would interact with "lossy"
compression methods....
  This is not how the example available currently at antionline works.

  A .GIF file consists of a table of 256 colour values (the "palette") and 
then the indices into this table for each pixel (this latter list is 
compressed -- and, of course, there are various header fields as well).  
Think of it as a "paint by numbers", where all of the pixels coded "3" will 
be rendered in a particular shade of red (or as near as the recipient's 
equipment can manage).
  The list of colour values in the palette can be permuted; as long as the 
pixel indices are shifted to match, there is no change to the actual pixel 
colour values when the image is rendered.  [Note that the method Chris 
describes above involves a slight probably-not-perceptible discolouration of 
the image....]

  The possible permutations of 255 unique values can be numbered in lexical 
order; there are about 2^1600 of them.  So examining the table as stored in a 
particular file, a program can identify the lexical number of this 
permutation, and interpret that as about 200 bytes of encoded information -- 
which may have been compressed first.  This isn't a huge "file", but it's 
sufficient to hide a password or an encryption key or some other useful 
nugget.

  If we knew that all "normal" graphics tools always selected a particular 
permutation for the palette (probably lexical number 0), then we might have 
some grounds to suspect that concealed messages were present in any .GIF 
files using any other ordering of the palette.  But I don't think we know 
this, and that means that we have no way of suspecting one file more than 
another.  [If the same message is stored in multiple files, their palettes 
may use the permutation with the same lexical numbering.  But since the 
palettes are likely to consist of different colour values, it is highly 
unlikely that any automated pattern-matching system would ever spot this.


David G
-
[To unsubscribe, send mail to [EMAIL PROTECTED] with
"unsubscribe firewalls" in the body of the message.]

Reply via email to