Presentation is loading. Please wait.

Presentation is loading. Please wait.

A NEW AND SECURE INFORMATION HIDING SYSTEM USING CRYPT- STEGANOGRAPHY Anurag Kumar 424/IC/07.

Similar presentations


Presentation on theme: "A NEW AND SECURE INFORMATION HIDING SYSTEM USING CRYPT- STEGANOGRAPHY Anurag Kumar 424/IC/07."— Presentation transcript:

1 A NEW AND SECURE INFORMATION HIDING SYSTEM USING CRYPT- STEGANOGRAPHY Anurag Kumar 424/IC/07

2 CONTENTS 1. Literary Research 2. Cryptography and Steganography 3. Theory of Image Steganography 4. Details of Algorithm 5. How Steganography Works 6. Block Diagram 7. Steganalysis 8. References

3 LITERARY RESEARCH Papers read  A novel security Model combining cryptography and Steganography  Domenico Bloisi and Luca Iocchi, IMAGE BASED STEGANOGRAPHY AND CRYPTOGRAPHY Key Learning's  Idea that cryptography and steganography can be combined to form a secure system. Highlights  Paper uses standard RSA and LSB technique for crypto-steganography.

4 Cryptography  Cryptography Definition  AES Algorithm and its Use.  Shortcomings of AES algorithm and cryptography.

5 Image Steganography IMAGE STEGANOGRAPHY ENCYPTIONDECRYPTION ORIGINAL IMAGE TEXT MESSAGE ORIGINAL MESSAGE

6 Basic Formula For Crypt-Steganography COVER MEDIUMHIDDEN DATASTEGO KEY STEGO MEDIUM

7 Scope Of Image Steganography  Steganography is the technique for hiding information in images.  Cryptic messages are further hidden in images thereby further encrypting them and making them invisible altogether.  One of its various application is in Digital Watermarking.

8  Hacking of information online and use of images by terrorists make steganography and steganalysis very relevant fields to research on.  Applying RSA algorithm and LSB algorithm for crypt-steganography.

9 Algorithm The algorithm is mainly divided into three major steps: 1) AES data encryption algorithm.

10 Structure of Each Round

11 Algorithm 2) Generation of prime number, finding its primitive root and using it to randomize bits.  First a password (large no) is entered by the user.  Generate the smallest prime no greater than the password.  Find its primitive root.

12 Theory of Primitive Root If g is a primitive root modulo n, then for every integer a with gcd(a, n) = 1, there is an integer k such that g k ≡ a (mod n). Such k is called the index or discrete logarithm of a to the base g modulo n.gcddiscrete logarithm

13 Algorithm 3) Using modified LSB technique to hide the encrypted message behind the carrier image.  Select the pixel from the number generated by the primitive root of prime modulo n method.  Replace the LSB of this pixel with the first bit of cipher text generated by the AES algorithm.

14 LSB Algorithm  In this method, we can take the binary representation of the hidden data and overwrite the LSB of each byte within the cover image. If we are using 24-bit color, the amount of change will be minimal and indiscernible to the human eye. As an example, suppose that we have three adjacent pixels (nine bytes) with the following RGB encoding: 10010101 00001101 11001001 10010110 00001111 11001010 10011111 00010000 11001011

15  Now suppose we want to "hide" the following 9 bits of data (the hidden data is usually compressed prior to being hidden): 101101101. If we overlay these 9 bits over the LSB of the 9 bytes above, we get the following (where bits in bold have been changed) 10010101 00001100 11001001 10010111 00001110 11001011 10011111 00010000 11001011

16 Block Diagram for Encryption Secret Message AES Encryptor Cipher Code Prime No. >k Primitive Root Function + Carrier Image Random Pixel Replace LSB with C.C. Encrypted Image

17 Block Diagram for Decryption Prime No. >k ORIGINAL MESSAGE AES Decryptor Collect Data from LSB Random Pixel Primitive Root Function Encrypted Image +

18 How Steganography Works The process can be divided into further parts as below:-  Use of Bitmap Files  Bit Evaluation  Interaction  Encoding/Decoding Method  Hiding Message

19 Use of Bitmap Files  First you will need to read your picture as a jpg and then save it in 24-bit bmp format.  You will need to use bmp files for this assignment because JPEG’s are ”lossy” meaning that what you write to the file may be changed slightly so that the resulting image can be stored more efficiently.  Thus JPEG’s will not work for steganography because JPEG’s will change the secret message when storing the file to disk.  Here are the commands to save your file. You can give it the same name except be sure to put a.bmp file extension on the end.

20 Bitmap loadedTrueBitmap; DecryptedBitmap;  These commands will load the original.bmp file and the decrypted.bmp file after handling all the size and name conversion of the original.bmp file  Note that image size should be reduced to at max 1/4 original size because bmp files take a lot of memory. You will run in to less trouble if your image is smaller.

21 Interaction  Prompt the user if they want to encode or decode a message.  Use the File Chooser dialog to prompt the user for an input file.  If encode, prompt the user for an input message. Encode the message into the picture.  Then use the File Chooser dialog to prompt the user for an output file.  Save the new picture/message in this file (using bmp format).  If decode, extract the message from the file. Print the message.

22 Encoding/Decoding Method  Extract the pixels of your target picture in one big array using the textgetPixels() method.  Use the first pixel (at spot 0) to hide the length of your message (number of characters). You will limit yourself to messages that are between 0 and 255 characters long.  After that use every eleventh pixel to hide characters in your message. Start at pixel 11, then pixel 22, and so on until you hide all characters in your message.  Every thing that you need to hide in a pixel is 8-bits long. The length (in the first pixel) is a byte. You can typecast all the Unicode chars to bytes as well.  Use the method below to hide each byte in an appropriate pixel.

23 Hiding Method  The problem with changing the red values in our encode/decode steps, is that these often cause quite visible changes in the resulting image. This is especially true if the pixels that are being changed are part of a large section of uniformly colored pixels – the ”dots” stand out and are noticeable.  As an option, we can change only the lower order bits of each pixel color (red, blue, and green). This will make subtle changes to each pixel’s color and will not be as evident.  Remember that each pixel has three bytes: one byte for red, blue and green colors. Each byte has 8 bits to encode a number between 0 and 255.

24  We have swap out the red color byte for a character, it is possible that we are changing the redness of that pixel by quite a bit. For example, we might have had a pixel with values of (225, 100, 100) which has lots of red, some green and some blue – this is basically a reddish pixel with a slight bit of pink color to it.  Now suppose we are to store the character ”a” in the red part of this pixel. An ”a” is encoded as decimal number 97 so our new pixel becomes (97, 100, 100).  Now we have equal parts of all three colors to produce a dark grey pixel. This dark grey is noticeably different than the dark pink we had before; it will definitely stand out in the image especially if the other nearby pixels are all dark pink.

25  we only change the last three bits (lowest three bits) – these are the bits that determine the ”ones place”, the ”twos place” and the ”fours place”.  We can only alter the original pixel color value by ±7. Let us think of our original pixel as a bits: (r7 r6 r5 r4 r3 r2 r1 r0, g7 g6 g5 g4 g3 g2 g1 g0, b7 b6 b5 b4 b3 b2 b1 b0). And our character (byte) as some bits: c7 c6 c5 c4 c3 c2 c1 c0.

26  Then we can place three of these character bits in the lowest red pixel, three more in the lowest green pixel, and the last two in the lowest blue pixel as follows: (r7 r6 r5 r4 r3 c7 c6 c5, g7 g6 g5 g4 g3 c4 c3 c2, b7 b6 b5 b4 b3 b2 c1 c0). If we had done this to pixel (225, 100, 100) with character ”a”, we obtain: original pixel = ( 11100001, 01100100, 01100100 ) ”a” = 01100001 new pixel = ( 11100011, 01100000, 01100101 ) new pixel = ( 227, 96, 101 )

27 User Manual Hiding Any File In Image

28 Encryption

29 Decryption

30 Steganalysis  Steganalysis is the art and science of detecting messages hidden using steganography.  In Image Steganography we propose to predict each pixel gray scale value in the original cover image by using its neighboring pixels' gray scale values, and obtain a prediction-error image by subtracting the predicted image from the test image.

31  It is expected that this prediction-error image removes various information other than that caused by data hiding, thus making the steganalysis more efficient because the hidden data are usually unrelated to the cover media. In other words, the prediction-error image is used to erase the image content. The prediction algorithm is expressed below

32  where a, b, c are is the context of the pixel x under consideration, is the prediction value of x. The location of a, b, c can be illustrated below. Xc ab

33 REFERENCES BOOK  Stefan Katzenbeisser, Fabien A. P. Petitcolas : Information hiding techniques for steganographyInformation hiding techniques for steganography JOURNALS  Phillip A Ragalia,’Cryptographic measures in information hiding’.  Piyush Marwah, Paresh Marwah, ‘Visual Cryptographic Steganography in Images’. Online  http://www.jjtc.com/pub/book99_ih.htm http://www.jjtc.com/pub/book99_ih.htm  http://csrc.nist.gov/publications/fips/fips197/fips-197.pdf http://csrc.nist.gov/publications/fips/fips197/fips-197.pdf  http://www.daviddarling.info/encyclopedia/P/primitive_root.html http://www.daviddarling.info/encyclopedia/P/primitive_root.html

34 THANKING YOU


Download ppt "A NEW AND SECURE INFORMATION HIDING SYSTEM USING CRYPT- STEGANOGRAPHY Anurag Kumar 424/IC/07."

Similar presentations


Ads by Google