next up previous
Next: Results Up: Steganography Using Computer Images Previous: Materials

Procedure

First, an algorithm for the steganography must be selected. For simplicity, an algorithm that changed only the lowest-order bit of each pixel color value was selected. Next, the algorithm must be implemented on one or more types of image file. The first file type chosen was the P2 PGM standard. P2 PGM images consist of an array of numbers in ASCII text, each representing a grayscale pixel value from 0 to 255. This attribute of the P2 PGM makes it ideally suited for a simple steganography program because of the ease with which it source data can be read not only by a computer but also by a human.
\epsfig{file=fig1}
Figure 1. fig1.pgm
This first iteration of the program reads in a PGM P2 image file, named fig1.pgm. After analyzing the file's headers, it reads the pixel values into an integer array. The program then asks the user for the message to be hidden in the image. While it's possible to store any data, this iteration is limited to ASCII text. The program then makes each low-order bit of each pixel value match the sequence of bits that are equivalent to the text string the user input. This method is simple, but it is effective; no pixel changes color by more than 1 (out of 256 shades of gray), some do not change at all, and the output file size is identical to that of the original[1]. The limitation of this algorithm is that the maximum number of characters that can be hidden is the number of pixels divided by seven (because there are seven bits in an ASCII character).
next up previous
Next: Results Up: Steganography Using Computer Images Previous: Materials
William Barratt 2003-06-13