· Create 1 program, which is both an encoder and a decoder, WRITTEN IN FREEMAT. The operation is set by a command-line parameter having a value of 1 or 2 respectively.
o The encoder will accept 2 files:
§ A black & white photo named “c:\temp\coursedata\stego-original.bmp” for encoding. This is the “cover” or “decoy” file. The Course Assistant will supply his/her own cover image for you to use, but it will have that name.
§ A simple text file with a maximum size of 50 bytes, but always ended with an “!” which must also be encoded. All ASCII alphabetic characters, symbols (like $, #, etc.) and digits are allowed in the message.
o The encoder will use the LSB algorithm encoding described in class to encode the message.
o The encoder output will be an image file named “c:\temp\courseout\stego-enc.bmp” with the message embedded.
o Be careful to NOT change the original input file.
· The decoder will extract and display on the screen, the hidden message from the “stego-enc.bmp” file, using the LSB decoding algorithm given in class. The decoder will NOT create any files.
· You will not pad or truncate the message encoding. The size is determined only by the placement of the “!”
· When decoding, you must display all of the message up to and including the “!”
If you have properly encoded the message inside the cover image, you should be able to look very closely at the 2 images (original and enc) and NOT be able to tell the difference between them!!