Spatial Data Authentication Through Novel Extended Hashing Algorithm in Steganography
Spatial Data Authentication Through Novel Extended Hashing Algorithm in Steganography
#2
_____________________________________
Abstract
The main goal of Steganography is to hide the secret information inside the media. Steganography has many technical challenges such as high hiding capacity and imperceptibility. In this paper, we have proposed a novel algorithm using Hashing() function, the different way of using hash function for the purpose of authentication spatial data, so that our data remain secure in case of steganalytic attack. Experimental results show that the proposed algorithm is very efficient and effective data authentication method in steganography that overcome many challenges in existing techniques.
corresponding Author
1.1 Introduction
Steganography means hiding the data within a medium such that the very existence of data is hidden. It varies from encryption in the sense that its objective is secret communication, rather than data protection. The goal of steganography is to avoid drawing suspicion to the transmission of a hidden message. The plain medium used for hiding information is called cover medium, and the medium generated after embedding the secret text is called stego medium. The use of steganography is thousands of years old; however, steganography using digital media is a recent application. Today, computer and network technologies provide easy-to-use communication channels for steganography. Essentially, the information-hiding process in a steganographic system is carried out by applying various algorithms. Algorithms in this domain include the LSB (least significant bit) technique, DCT technique [2] [3] [4] and their variants. The Process of Steganography as shown in figure 1 can be explained by Simmons Prisoners Problem [9]: Suppose Alice and Bob are in a jail, locked in two separate cells which are far apart from each other. They wish to communicate secretly, without the knowledge of the warden Eve, so that they can hatch an escape plan. Bob and Alice are allowed to exchange messages, but each such message is first inspected by Eve, who has Page 126
access to their communication link. If Alice & Bob try to communicate through encrypted text, Eve will sense a conspiracy and block the message. This is the case where steganography come in. Alice and Bob can use steganography to hide the message such that Eve is unaware of existence of message.
Proposed Objectives In the following sections of this paper, we discuss various steganography algorithms and our novel Extended Hashing Function algorithm for authentication, to ensure the integrity of secret communication for spatial dataset. This algorithm ensures compatibility between cover image and hidden spatial data for security reasons especially for highly secured area like defence, research centres etc. We then discuss the use of hashing for authentication [22], to ensure the integrity of secret communication [23].
This is by far the most popular method of steganography. Any colour in a digital image is represented inside the computer as an array of 8 (or more) bits, called pixels. Thus these 8 bits can be used to represent a total of 256 shades. Studies have shown that human eyes are sensitive mainly to the more significant bits of a pixel. The information contained in the less significant bits of any pixel is almost imperceptible and may be substituted by bits representing the information to be hidden. Human visual system is not acute enough to pick the slight change created by this embedding. A naive algorithm for LSB substitution would be to take the first M cover pixels where M is the length of the secret message to be hidden in bits. And then every pixels last bit is replaced by one of the message bits [9] [23]. This is the simplistic case; we could get away with replacing more than one bit also. The problem with such an approach as above is that you end up having the first region of the image having different statistics than the rest of the image. Among various improvements possible to the LSB scheme one of the more effective/common ones is to seed a pseudoPage 127
random number generator and then use the numbers output [3]. We present the algorithms that can be used to implement these methods, and then proceed to a more robust technique proposed by us, which we believe is more resistant to attacks using statistical steganalysis.
Information is hidden inside of a image using digital watermarks that include information such as copyright, ownership, or licenses. Algorithm & Transformation are the key component here. This technique hides data in mathematical functions that are often used in compression algorithms [23].
C. Hashing For Message Authentication
Hash functions are frequently called message digest functions. Their purpose is to extract a fixed-length bit string from a message (image, documents, etc.). Hash functions [3], [21], [23] have found varied applications in various cryptographic, compiler and database search applications. In cryptography, hash functions are typically used for digital signatures to authenticate the message being sent so that the recipient can verify its source. Recently, there has been interest in using hash functions in multimedia applications both for security and indexing. A key feature of conventional cryptographic hashing algorithms such as message digest 5 (MD5) and secure hash algorithm 1 (SHA-1) is that they are extremely sensitive to the message, i.e. changing even one bit of the input will change the output dramatically. However, multimedia data such as digital images go through various manipulations such as compression, enhancement, cropping, and scaling. An image hash function should instead take into account the changes in the visual domain and produce hash values based on the image's visual appearance. Such a hash function would be useful in identifying images in databases, in which the image possibly undergoes incidental changes (such as compression and format changes, common signal processing operations, scanning or watermarking). A second significant application of a perceptual image hash could be for robust image authentication. In such cases, the hash must be invariant under perceptually insignificant modifications to the image but detect malicious tampering of image data. Several other applications can be identified in the areas of watermarking and information embedding in images. We propose its use as an authentication mechanism coupled with steganography [10]. The hash value of stego image can be calculated and transmitted with the image. Any tampering caused by an adversary in an Page 128
attempt to foil steganography will be easily detected by the receiver who can discard any such stego image that shows anomaly. JPEG Steganography Originally it was thought that steganography would not be possible to use with JPEG images, since they use lossy compression which results in parts of the image data being altered. One of the major characteristics of steganography is the fact that information is hidden in the redundant bits of an object and since redundant bits are left out when using JPEG it was feared that the hidden message would be destroyed. Even if one could somehow keep the message intact it would be difficult to embed the message without the changes being noticeable because of the harsh compression applied. However, properties of the compression algorithm have been exploited in order to develop a steganographic algorithm for JPEGs. One of these properties of JPEG is exploited to make the changes to the image invisible to the human eye. During the DCT transformation phase of the compression algorithm, rounding errors occur in the coefficient data that are not noticeable [14]. Although this property is what classifies the algorithm as being lossy, this property can also be used to hide messages. It is neither feasible nor possible to embed information in an image that uses lossy compression, since the compression would destroy all information in the process. Thus it is important to recognize that the JPEG compression algorithm is actually divided into lossy and lossless stages. The DCT and the quantization phase form part of the lossy stage, while the Huffman encoding used to further compress the data is lossless. Steganography can take place between these two stages. Using the same principles of LSB insertion the message can be embedded into the least significant bits of the coefficients before applying the Huffman encoding [18]. By embedding the information at this stage, in the transform domain, it is extremely difficult to detect, since it is not in the visual domain.
D.
5. Now scan N positions to the right of '#'. This is our message. Store this message in some variable. 6. Compute the hash value of message using the same algorithm that was used on the sending side.
// proposed algorithm at the sender end using Hash () Function Step1.Count N=M.length;// M is Message & N is no. Of character Step2. Compute String Hash (#) = H (M); Step3. New Message length M="N#M" Step4. New Message M="N#MHash" //appended hash value Step5 Image= Image + S (M); // or S ("N#MHash") Fig. 3 Encoding Algorithm for proposed method
// proposed algorithm at the receiver end using Hash() Function Step 1. Data= Extract (Image); Step 2. Scan M from left to right. Step 3. N is the length.// new length of M Step 4. N=n; //Scanning N position right of # Step 5. m is the retrieved message. Step 6.Calculate NewHash= H(m);// using same method at the sender side Step 7. if(Hash== NewHash) print "authenticated"; else print "message incorrect"; Step 8 Message M is received if both values are equal
6. Compute the hash value of message using the same algorithm that was used on the sending side. 7. Check if the computed hash is equal to the hash value stored in the message after n positions. 8. If both are equal, hence the message has been intercepted.
Fig. 4 Decoding Algorithm for proposed method
C. Example for Proposed Algorithm Let M= message we have to sent At Sender side: Step 1. N=17 //including blank spaces Step 2Hash= H (M); //therefore the Hash Function value is given by Hash (#)= b2cad21e87dbd57f1a1928e4013b56fb553bb82a (Generated by using SHA-1 algorithm from [23]) Step 3. NewMessage= "17#This is a message" Step4.NewMessage= "17#This is a messageb2cad21e87dbd57f1a1928e4013b56fb553bb82a" Step 5. NewMessage hided inside image.jpg Step 6. Image.jpg transferred. At Receiving Side: Step 1. Message extracted from image.jpg. Therefore Message="17#This messageb2cad21e87dbd57f1a1928e4013b56fb553bb82a" Steps 2 and 3 are same like sender side process. Step 4. We find 17 is the derived length using scanning process. Step 5. "This is a message" is the original message is a
Page 130
Step 6. newHash=H("This is a message") Step 7. The new Hash value is given by function newHash==b2cad21e87dbd57f1a1928e4013b56fb553bb82a?? Step 8. Message correct if above relation is true otherwise message incorrect D. Advantages of Proposed Algorithm 1. The algorithm works for all type of secret data like text, image audio and video. This is possible because we can compute the hash value of Image, audio and video too. 2. The authenticity of the information or message is maintained. 3. Efficiently implement on spatial data and spatial Images
Page 131
This algorithm gives very efficient result as comparing with few existing technique specially like LSB in BMP, LSB in GIF, DCT over every kind of data i.e. text, images, audio/video etc as shown in table 1. Whereas Stego# algorithm has better result than hash () function with regards to Independency of file format and payload capacity. Complexity of spatial images are very high thats why extended hashing algorithm gives better results over ordinary techniques of steganography.
Page 132
Acknowledgments
The authors would like to thank the YMCA University of Science and Technology and DCRUST Sonepat to support us in our research.
References
[1] Moerland, T., Steganography and Steganalysis, Leiden Institute of Advanced Computing Science, www.liacs.nl/home/ tmoerl/privtech.pdf. [2] Silman, J., Steganography and Steganalysis: An Overview, SANS Institute, 2001. [3] Jamil, T., Steganography: The art of hiding information is plain sight, IEEE Potentials, 18:01, 1999. [4] Wang, H & Wang, S, Cyber warfare: Steganography vs. Steganalysis, Communications of the ACM, 47:10, October 2004. [5] Anderson, R.J. & Petitcolas, F.A.P., On the limits of steganography, IEEE Journal of selected Areas in Communications, May 1998. [6] Marvel, L.M., Boncelet Jr., C.G. & Retter, C., Spread Spectrum Steganography, IEEE Transactions on image processing, 8:08, 1999. [7] Dunbar, B., Steganographic techniques and their use in an Open-Systems environment, SANS Institute, January 2002. [8] Artz, D., Digital Steganography: Hiding Data within Data, IEEE Internet Computing Journal, June 2001. [9] Simmons, G., The prisoners problem and the subliminal channel, CRYPTO, 1983 [10] Chandramouli, R., Kharrazi, M. & Memon, N., Image steganography and steganalysis: Concepts and Practice, Proceedings of the 2nd International Workshop on Digital Watermarking, October 2003. [11] Currie, D.L. & Irvine, C.E., Surmounting the effects of lossy compression on Steganography, 19th National Information Systems Security Conference, 1996. [12] Handel, T. & Sandford, M., Hiding data in the OSI network model, Proceedings of the 1st International Workshop on Information Hiding, June 1996. [13] Ahsan, K. & Kundur, D., Practical Data hiding in TCP/IP, Proceedings of the Workshop on Multimedia Security at ACM Multimedia, 2002. [14] Johnson, N.F. & Jajodia, S., Exploring Steganography: Seeing the Unseen, Computer Journal, February 1998. [15] Reference guide: Graphics Technical Options and Decisions, http://www.devx.com/projectcool/Article/1997. [16] Owens, M., A discussion of covert channels and steganography, SANS Institute, 2002. [17] Johnson, N.F. & Jajodia, S., Steganalysis of Images Created Using Current Steganography Software, Proceedings of the 2nd Information Hiding Workshop, April 1998. [18] Venkatraman, S., Abraham, A. & Paprzycki, M., Significance of Steganography on Data Security, Proceedings of the International Conference on Information Technology: Coding and Computing, 2004. [19] Krenn, R., Steganography and Steganalysis, http://www.krenn.nl/univ/cry/steg/article.pdf. [20] Lee, Y.K. & Chen, L.H., High capacity image steganographic model, Visual Image Signal Processing, 147:03, June 2000.
Page 133
[21] Provos, N. & Honeyman, P., Hide and Seek: An introduction to steganography, IEEE Security and Privacy Journal, 2003. [22] Bender, W., Gruhl, D., Morimoto, N. & Lu, A., Techniques for data hiding, IBM Systems Journal, Vol 35, 2000. [23] Petitcolas, F.A.P., Anderson, R.J. & Kuhn, M.G., Information Hiding A survey, Proceedings of the IEEE, 87:07, July 2007 [24] http://hash.online-convert.com/sha1-generator
Page 134