implementation of least significant bit image steganography and its steganalaysis

18
Implementation of Least Significant Bit Image Steganography and its Steganalaysis By: Deniz Oran Fourth Quarter

Upload: kermit-stevenson

Post on 03-Jan-2016

29 views

Category:

Documents


0 download

DESCRIPTION

Fourth Quarter. Implementation of Least Significant Bit Image Steganography and its Steganalaysis. By: Deniz Oran. Goals. To conceal a text message into a "carrier" image with Least Significant Bit Steganography - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Implementation of Least Significant Bit Image Steganography and its Steganalaysis

Implementation of Least Significant Bit Image Steganography and its

Steganalaysis

By: Deniz Oran

Fourth Quarter

Page 2: Implementation of Least Significant Bit Image Steganography and its Steganalaysis

Goals

• To conceal a text message into a "carrier" image with Least Significant Bit Steganography

 • To detect that an image has been compromised or

altered and to extract that message • To extend the method to apply to various image formats

 • To make the program usable with a Graphical User

Interface (GUI)

Page 3: Implementation of Least Significant Bit Image Steganography and its Steganalaysis

• Literally means "concealed writing" in Greek • Opposite of cryptography, in which a message is made

unintelligible, but transmitted through public means •  Steganography is the concealment of the fact that a

 message is even being transferred.

What is Steganography?

Page 4: Implementation of Least Significant Bit Image Steganography and its Steganalaysis

Historical Methods

• Shaving hair• Wax tablets• Jargon• Cardano grille• Invisible Inks• Thermo-activated inks• Micro dots• Enigma Machine• All of the above have been used for espionage and

for coordinating attacks on other bodies.

Page 5: Implementation of Least Significant Bit Image Steganography and its Steganalaysis

Current Method

• Hiding an entire text or image binary in either an image or audio “carrier” using Least Significant Bit encoding

• Previously done as a Senior Technology Lab using the same technique with .wav audio files in 2007.

• There is currently no established method for encoding something with steganography because better encoding methods translate to lower carrier image capacity.

• There is no established method for universally detecting steganography because of the variety of methods.

Page 6: Implementation of Least Significant Bit Image Steganography and its Steganalaysis

Least Significant Bit Encoding

• Images on computers are made out of pixels

• Each pixel is represented by three bytes

• Each byte is composed of eight bits or 1s and 0s

10010101 00001101 11001001 10010110 00001111 11001011 10011111 00010000

10010100 00001101 11001000 1001011000001110 11001011 10011111 00010001

• The second set of bytes represents the encoded ASCII character “G” (01000111)

Page 7: Implementation of Least Significant Bit Image Steganography and its Steganalaysis

Program Design in JAVA• Create a GUI• Dropdown menu• Input a suspected image• Attempt to detect if it has been compromised• Place the two image next to each other for visual comparison when extraction is finished.

Page 8: Implementation of Least Significant Bit Image Steganography and its Steganalaysis

Inputing the Image•Read the binary of the image using Buffered Reader, DataBufferByte, and WritableRaster into a three dimensional array (data cube) with the row, column and corresponding color value (depends on image format).

•Alter every Least Significant Bit in each byte in order to spell out the word. The ASCII values are understood by DataBufferByte instead of having me define each one.•Save the altered image because it is ready to be sent

•Saving should be done using a “lossless” image standard because this form of steganography exploits the “noise” of an image. Therefore, .PNG is a good start.

Page 9: Implementation of Least Significant Bit Image Steganography and its Steganalaysis

Steganalysis• Detecting a message encoded using steganography is only feasible if the original image is available or if the exact encoding method is known.

• The program will still be able to detect if an image has been compromised by converting the suspected image into hexadecimal but the message may not be extracted.

•This method won’t work if a proper LSB is done, since the encoding starts after the data for the hex tags, thus not altering them.

Page 10: Implementation of Least Significant Bit Image Steganography and its Steganalaysis

Decoding• Just attempt to reverse the process of Least Significant Bit encoding. This method is always tried by commercial software but hardly works if the LSB is done differently.• The suspected image is inputted, converted to binary, the length of the message was hidden in the first 32 bytes, that length is the parameter for the for-loop which traverses the rest of the image extracting the least significant bits in the same manner they were isolated when they were inserted• The output is the original ASCII message inputted by the first user

Page 11: Implementation of Least Significant Bit Image Steganography and its Steganalaysis

Possible Problems•Steganography is an increasingly complex field because of new algorithms and unique ways of analyzing images

•There are many methods to inconspicuously hide an image or text message with computer science, some are less complex (microdots) and some use higher level mathematical algorithms (stochastic modulation)

•The Least Significant Bit method is an established method and can be detected at 80% accuracy using highly advanced math but not the human eye

Page 12: Implementation of Least Significant Bit Image Steganography and its Steganalaysis

Testing•Tests involve inserting a character into an image, finding where the character is hidden, and verifying that it is indeed the letter. Tests on file size versus message length as well should be done. Visual comparison is required.

Image 1 Image 2

Page 13: Implementation of Least Significant Bit Image Steganography and its Steganalaysis

TestingBinary comparison revealed that after 32 bytes there was a variation when the letter “G” (01000111) was encoded:Image 1:Image 2:There was also testing on the rendering time of the image, the time it took to encode and decode the image with varied message lengths and image sizes. The trend appeared linear for each process, but the slopes of the curved varied.

Page 14: Implementation of Least Significant Bit Image Steganography and its Steganalaysis

TestingTest the effect of the hidden text message length on the performance of the program.

Page 15: Implementation of Least Significant Bit Image Steganography and its Steganalaysis

TestingTest the effect of the inputted image size on the encoding speed of the program.

Page 16: Implementation of Least Significant Bit Image Steganography and its Steganalaysis

TestingTest the effect of the inputted image size on the decoding speed of the program.

Page 17: Implementation of Least Significant Bit Image Steganography and its Steganalaysis

Learned Concepts• How images of various formats are constructed, especially .PNG.

•How to determine a file's extension using JAVA

• How to manipulate binary code and understanding the role of bits within bytes. Binary operations such as AND, OR, ADD.

• Various methods of Steganography and Steganalysis and which are the most effective

Page 18: Implementation of Least Significant Bit Image Steganography and its Steganalaysis

Future Projects• Extend the program to work with other image formats and improve the algorithms susceptibility to common detection methods (using padding and random byte locations)

•Extend the steganography to another medium

• Pairing the steganography with a simple encryption algorithm