Information Hiding using Chaotic-Address Steganography

: In this study, two techniques are introduced for image steganography in the spatial domain. These systems employ chaos theory to track the addresses of shuffled bits in steganography. The first system is based on the well-known LSB technique, while the second system is based on a recent approach that searches for the identical bits between the secret message and the cover image. A modified logistic map is employed in the chaotic map to generate integer chaotic series to extract the shuffled addresses bits. Peak Signal-to-Noise Ratio (PSNR), Mean Square Error (MSE), histogram analysis and correlative analysis are used for testing and evaluating the new levels of security for the proposed techniques. The results show that the proposed methods outperform existing systems.


Introduction
In modern communication technology, people exchange information by using an open network (the internet). Through the connection, hackers attempt to spy on the secret information (Martin and Barmawi, 2015). In order to prevent them from detecting secret information, it needs to provide high security for data (Bukhari et al., 2017). Steganography and cryptography are two techniques which are used to provide a high level of data security (Manjula and Danti, 2015). In cryptography, confidential messages have changed into an encrypted form and transported through the networks. Whereas, in steganography, the secret information is hidden inside a cover medium like text, image, audio, or video (Chang et al., 2014).
Steganography is a method for hiding information, which hides secret information such as text, image, audio or video inside a cover medium such as text, image, audio or video in a way that cannot be detected by the Human Visual System (HVS). This makes people unaware of the existing a secret message (except for the sender and receiver). Steganography is a Greek word that means covered writing; the word "stegano" means covered or concealed and the word "graphy" means writing (Muhammad et al., 2015). The image is an excellent medium for steganography because of having redundancy in its representation (Khalind, 2015).
There are two domains by using the image as a cover medium for concealing a secret message: Spatial domain and frequency domain (Amirtharajan and Rayappan, 2012). In the spatial domain, intensity values of the cover image are used to hide a secret message (Vigila and Muneeswaran, 2015). In the frequency domain, the image is converted to frequency coefficients then the secret message is hidden inside these coefficients (Wahballa et al., 2016). One of the simple and fast-hiding techniques in the spatial domain is the Least Significant Bit (LSB) technique (Sarreshtedari and Akhaee, 2013). It substitutes the least significant bits of the pixels in the cover image with bits of the secret message; the result is a stego image that looks like the cover image.
The recent technique in (Al-Shatnawi, 2012) conceals the secret message inside a cover image depending on the looking for the identical bits between them. This will increase the security level compared to the conventional LSB technique. The random choice of pixels for hiding the secret message gives better security than sequential selection in the conventional LSB technique.
Chaos theory has been founded since the 1970s by many different research fields such as engineering, science, physics, mathematics and biology (Behnia et al., 2008). Chaos is a dynamical system that is very sensitive to initial conditions. A small difference in the starting values will lead to a great difference in the output. It is a deterministic nonlinear system that has semi-random behavior (Tayel et al., 2012). Because of the random behavior of chaos, it can be used to ensure a high level of security in steganography (Habib et al., 2015). Chaos has applications in the security of the physical layer as Linh-Trung et al., 2008).
This work uses chaos theory as additional security dimension in steganography by incorporating it to the LSB technique and technique in (Al-Shatnawi, 2012) (it is called here Identical-Bits Steganography), where the new address can be extracted chaotically.
The paper is structured as follows: A brief about existing systems of steganography has been discussed in section 2. Section 3 handles a description of some chaotic maps with focus on logistic map and its proposed modification to generate integer chaos for the purpose of shuffling addresses. A brief description of the LSB steganography using 1, 2 and 4 LSBs has been illustrated in section 4. A brief description of the improved LSB technique as in (Yadav et al., 2011) has been discussed in section 5 for the purpose of fair comparison. Yadav's approach would be named in this study as "improved LSB". The two proposed systems for hiding secret information with algorithms of them have explained in section 6. Experimental results and discussions using some performance measures has discussed in section 7. The conclusion of the paper declared in section 8.

Related Work
The most relevant steganographic techniques are presented below. Karim et al. (2011) have suggested an improved-LSB technique for color images to enhance the security level of the secret message by using a secret key. The methodology is to divide the cover image into three matrices (Red, Green and Blue). The secret key is converted into ASCII value then to binary (1D array of bits). The secret key and Red matrix are used only for decision making regarding where to place hidden information: Either in Green matrix or in Blue matrix. Each bit of secret key is XORed with LSB bits of Red matrix. The resulting XOR value decides where the bits of secret information will be placed: Either in LSB of Green matrix (if XOR bit = 1) or in LSB of Blue matrix (if the XOR bit is 0). The same process will be continued until the secret information is finished. Viswanatham and Manikonda (2010) have suggested an effective and secure technique of LSB insertion mechanism. The technique involves the generation of random numbers and also selecting a region of interest in which the required message is to be embedded in the random pixels whose addresses are previously generated. The technique also involves a secret key (password to decode the message) which has to be provided by the recipient for decoding the message from the image. Gutub (2010) has suggested a new steganography method using RGB image pixels as its cover media. The information is hidden into two of the RGB pixel channels based on the indication within the third channel. It uses the size of the message as a selection criterion for the first indicator channel. If type of length of the message is (even number) the first indicator channel is red, If type of length of the message is prime number the first indicator channel is blue, otherwise it is green. The Pixel Indicator Technique (PIT) proposed in this study is for steganography utilizing RGB images as cover media. The technique uses least two significant bits of one of the channels Red, Green or Blue as an indicator of secret data existence in the other two channels. If 2LSB of indicator channel is 00 then no hidden data in the two channels; if 2LSB of indicator channel is 01 then no hidden data in channel 1 and two bits of hidden data in channel 2; if 2LSB of indicator channel is 10 then two bits of hidden data in channel 1 and no hidden data in channel 2; if 2LSB of indicator channel is 11 two bits hidden data in channel 1 and two bits hidden data in channel 2. Luo et al. (2010) have suggested expanding the LSB matching image steganography and proposed an edgeadaptive scheme which can select the embedding regions according to the size of the secret message as well as the difference between two consecutive pixels in the cover image. For lower embedding rates only sharper edge regions are used, while keeping the other smoother regions as they are. When the embedding rate increases, more edge regions can be released adaptively for data hiding by adjusting just a few parameters.
Al-Shatnawi (2012) has suggested a technique that embeds the secret message based on searching about the identical bits between the secret message and bits of the cover image pixel. This technique was compared with the 2-LSB technique which conceals the secret message immediately.
Al-Taani and Al-Issa (2009) have suggested a new steganographic technique for hiding information in the spatial domain of the grayscale image. This approach works by dividing the cover image into blocks of equal sizes and then hiding the secret message in the edge of each block depending on the number of ones in the left four bits of the pixel. This approach is more efficient as compared with the well-known method Pixel Value Differing (PVD) in (Wu and Tsai, 2003).
The next section presents a brief description of some chaotic maps that generate chaotic series.

Chaotic Maps
Chaos is a random-like behavior of a dynamical system as a function of time. This behavior may happen in continuous-time or discrete-time systems. It can be noted naturally in weather, electrical circuits, liquid elements and mechanical systems. The essential feature of chaos (relevant to information security) is sensitivity to initial conditions, so that small changes in the input can cause large changes in the output. This feature is exploited for implementing information hiding techniques (Valandar et al., 2017). Mathematically, any chaotic map can be defined as in Equation (1) (Azou et al., 2002): where, x n is the state of iteration n, the function f(⋅) is mapping the state x n-1 to the next state x n . This work uses a one-dimensional (1D) logistic map to generate the chaotic series which is used as secret keys to shuffle addresses in a new steganography technique.

The 1D Logistic Map
A logistic map is a simple form of a chaotic system, which it is easy to understand. It is developed by May (May 1976) and is described by Equation (8): Here x 0 is the initial value α is a control parameter and n refers to the iteration.
The logistic map will generate chaotic series, if the control parameter is in the rang 3.5≤ α ≤ 4 (Wang et al., 2012). The chaotic series is within the range [0, 1]; it is very sensitive to a change in an initial value, where a very small difference of the initial values can cause a large impact in the next values. Figure 1a shows the chaotic behavior of the logistic map with values α = 4 and x 0 = 0.7; Fig. 1b shows the chaotic behavior of the logistic map with values of α = 3.95 and x 0 = 0.9.
This chaotic series contains real numbers within the range [0, 1]. It should be modified to produce large integers suitable to extract new addresses. The next section illustrates this modification.

Address Shuffling using Integer Logistic Map
After applying Equation (8), the chaotic series contains real numbers within the range [0, 1]. This series should be modified to get integers that will be used to select the new addresses of pixels in the cover image; this modification is achieved by following steps: 1. Determining initial values x 0 , α 2. Applying x n = αx n-1 (1-x n-1 ) 3. Determining minimum value (e.g., t min = 5) of the series 4. Multiplying the number of samples N by any number to get ܾ (e.g., b = 6 * N) t <= t max 8. Sorting the series (t) in ascending order 9. If two elements in the series (t) are equal, add one to the next elements to avoid repetition 10. Saving the new integer chaotic series with no repetition in z After modifying the chaotic map, the next section shows the autocorrelation of the real chaos signal and the autocorrelation of the integer chaos signal to determine whether the features of the correlation have changed or not.

Autocorrelation Test
Autocorrelation of chaotic sequences is delta or semidelta functions in the lag domain, which it is very similar to that of Gaussian noise (Al-Muntafki, 2017) Autocorrelation is calculated according to Equation (3), which can be implemented using the built-in MATLAB function xcorr(·): Where: x i = Chaos sequence x i+k = Lagged chaos sequence m x = Mean of chaos sequence Figure 2a shows the autocorrelation of the real chaos signal; Fig. 2b shows the autocorrelation of the integer chaos signal. They are almost same; hence, autocorrelation features have preserved by the integer transform.
The next section presents a brief description of the LSB technique using 1, 2 and 4 LSBs for hiding a secret message in the cover image.

LSB Steganography Technique
LSB steganography is the most popular technique in the spatial domain steganography; sometimes, it is called a substitution method. It is used for embedding information directly into another information medium in a sequential or random manner without presence significant distortions. In a grayscale image, every pixel is represented in 8-bits; the last bit of each pixel is named Least Significant Bit (LSB). The cover image and secret message have changed into a binary representation, then LSB of each pixel in the cover image is exchanged by secret message bits.
In this study, the 1, 2 and 4 LSB-bits are used for hiding message. This helps to embed extra data (high capacity); but increasing the number of bits for hiding causes significant distortion of the stego image, thus it will reduce the security level.
The next section presents a brief description of an improved LSB technique.
An Improved LSB Technique (Yadav et al., 2011) For a fair comparative study, this section explains an efficient approach that improved the performance of conventional LSB technique (Yadav et al., 2011). This improved LSB technique used the last two bits of the cover-image pixels for embedding and retrieval of secret message.
In the embedding process, it embeds the message bit 0 at a pixel value if the last two bits of pixel value are 00 or 10. If the last two bits of pixel value are not 00 or 10, try to make them 00 or 10 by adding or subtracting 1 at that pixel value to embed 0. Also, it embeds the message bit 1 at a pixel value if the last two bits of pixel value are 01 or 11. If the last two bits of pixel value are not 01 or 11 then we try to make them 01 or 11 by adding or subtracting 1 at that pixel value to embed 1.
In the retrieval process, if the last two bits of a pixel are 00 or 10, then 0 is the message bit, otherwise it is 1. In this study we will call this approach as "improved LSB".
The next section explains two proposed systems for hiding secret information (text or image).

The Proposed Systems
According to the shuffled addresses which are explained above, two extended systems are proposed from the well-known LSB method and the recent Identical-Bits Method.

The Chaos-LSB Steganography
LSB steganography is a method for hiding a secret message inside the cover image directly in a sequential manner. This makes LSB technique less resistive to cyber-attack. To enhance its security, in this study a modified system is proposed that employs a chaotic map to hide a secret message (text or image) in the cover image via shuffling of addresses bits. The proposed system uses a chaotic map to generate integer chaotic series (secret key), to choose pixel addresses of the cover image for embedding the secret message. The parameters of the chaotic map are secret keys known only to the sender and receiver. The observer cannot detect the existence of a secret message without knowing these secret keys. The proposed system is divided into two processes; the Chaos-LSB encoding and the Chaos-LSB decoding.

Chaos-LSB Encoding
Firstly, the cover image and secret message are entered and then a secret key is generated by a modified logistic map to select addresses pixels of the cover image chaotically. Additionally, the encoding process is done to get the output which represents stego image. The following algorithm shows the steps of this process. Figure 3 shows a block diagram of the proposed system.

Chaos-LSB Algorithm
Input// Gray-scale cover image X, secret message M (text or image), secret key. Output// Stego image Y.
Step 1: Read the cover image and the secret message (text or image).
Step 2:-Convert the cover image to binary.
Step 3:-Convert secret message (image to binary) or (text to ASCII code and then to binary).
Step 4:-Check the size of the cover image and the secret message, the size of the cover image should be larger than the size of the secret message, else go to step11.
Step 5:-Get new addresses of pixels for inserting the secret message into the cover image by generating the secret key (integer chaotic series) as shown in section 3.2 Step 6:-Calculate K-LSBs for each chosen pixels of the cover image, K = 1, 2 and 4.
Step 7:-Replace K-LSBs for each chosen pixels of the cover image with each bit of the secret message K by K.
Step 8:-Repeat Step 6 to Step 7 until all secret message bits are embedded.
Step 9:-Set the image with the new value to produce stego image.
Step 10:-Convert the stego image to the decimal.
Step 11:-Stop. Figure 4 illustrates the embedding process of Chaos-LSB Algorithm.

Chaos-LSB Decoding
Firstly, the stego image and secret key are entered, then the random pixels of the stego image are determined by the secret key to extract the secret message. The following algorithm shows the steps of this process.

Retrieval by Chaos-LSB Algorithm:
Input// Stego image Y, secret key. Output// Secret message M (text or image).
Step 2:-Choose pixels position in stego image by the secret key.
Step 5:-Retrieve bits of the secret message (text or image).
Step 6:-Repeat Step 4 to Step 5 until all secret message bits are retrieved.
Step 7:-Convert secret message (text or image) to decimal, if the secret message is text it will convert to the character. Step 8:-Stop

The Chaotic Identical-Bits Steganography
The technique in (Al-Shatnawi, 2012) hides 2 bits of the secret message in the color image pixels depending on the searching for the identical bits between the secret message bits and cover image bits. This makes the technique increase the security level comparable to the conventional LSB technique. If the identical bits are not available, it is hidden in 2LSBs of the color image pixels.
In this study, this technique is used for hiding the secret message (text or image) in a grayscale image. Many researchers are based on color image and grayscale image to hide significant information. In the proposed work, the focus is on the grayscale image for information hiding. A grey-scale image is very proper for information hiding than the color image. Because the disorder of the correlation among the color components is detected easily; this will cast doubt on existence hidden information (Chatterjee, 2017).
In this system, chaotic addressing is employed as an additional security dimension in steganography and incorporating it with the technique in (Al-Shatnawi, 2012). The cover image pixels are chosen randomly by a modified logistic map to generate integer chaotic series. This series extracts the address of pixels in the cover image. The proposed system is divided into two processes; the Chaotic Identical-Bits encoding process and the Chaotic Identical-Bits retrieval process Fig. 3 shows a block diagram of the proposed system.

The Chaotic Identical-Bits Embedding Process
Firstly, the cover image and secret message are entered and then a secret key is generated by a modified logistic map to select addresses pixels of the cover image chaotically. Additionally, the embedding process is done to get the output which represents stego image. The following algorithm shows the steps of this process.

Embedding Chaotic Identical-Bits Algorithm
Input// Grayscale cover image X, the secret message M (text or image), secret key. Output// Stego image Y.
Step 1:-Read the cover image and secret message (text or image).
Step 2:-Convert cover image to binary.
Step 3:-Convert secret message (image to binary) or (text to ASCII code and then to binary).
Step 4:-Check the size of the cover image and the size of the secret message. The size of the cover image should be larger than the size of the secret message, else go to step11.
Step 5:-Get new addresses of pixels for inserting the secret message into the cover image by generating the secret key (integer chaotic series) as shown in section 3.2 Step 6:-Hide 2 bits of the secret message (text or image) in 2bits of a chosen pixel in the cover image by searching for the identical bits. If the matching is achieved go to setp7; otherwise, hide in the 2LSB of the selected pixels.
Step 7:-Sort the positions of the hidden bits in a binary table.
Step 8:-Repeat Step 6 to Step7 until all secret message bits are embedded.
Step 9:-Set the image with the new value to produce stego image.

The Chaotic Identical-Bits Retrieval Process
Firstly, the stego image, binary table and secret key are entered and then the random pixels of the stego image are determined by the secret key. After that, the stego image is converted into binary, then searching for the location of the hidden bits in a binary table is done to extract the secret message. The decoding algorithm shows the steps of the Retrieval process.

Chaotic Identical-Bits Retrieval
Input// Stego image Y, secret key, binary table. Output// Secret message M (text or image).
Step 2:-Choose pixels position in stego image using the secret key.
Step 4:-Search for the location of the hidden bits in a binary table.
Step 5:-Retrieve bits of secret message (text or image).
Step 6:-Repeat Step 4 to Step 5 until all secret message bits are retrieved.
Step 7:-Convert secret message (text or image) to decimal, if the secret message is text it will convert to a character.
The next section displays experimental results and discussions using some performance measures.

Quality Measures
The standard measures of image quality are the MSE and PSNR. MSE is the square of the error between the cover image and the stego image. PSNR is the ratio of End the extreme signal to noise power between the stego image and the cover image. It is normally measured in dB (Kutter and Petitcolas, 1999). MSE and PSNR are computed according to Equations (4) and (5) respectively as follows: where, m and n are row and column indices, X(i,j) denotes the cover image and Y(i,j) denotes the stego image.
Based on analysis of the results given in Table 1 and Table 2 the two proposed systems for hiding the secret message have better quality and higher security than the 1, 2 and 4LSBs technique and the technique in (Al-Shatnawi, 2012) because it provides a balance between PSNR values and security.
From the above results, it can be concluded that the proposed Chaotic Identical-Bits system has better performance than the proposed Chaos-LSB system. Different sizes of the secret image (cameraman image: 5*5, 10*10, 20*20, 30*30, 50*50 and 100*100) have been applied and the ratio R m between message size and cover size has been calculated. The size ratio is defined as: As the size ratio R m increases, PSNR decreases. Figure 8a shows the relation when applying the proposed Chaos-LSB system. Figure 8b shows the relation when applying the proposed Chaotic Identical-Bits system.

Histogram Analysis
Histogram illustrates the distribution of pixels in an image. This approach is used to test the pixel differences before and after the embedding process. Figure 9 shows the histogram of the original and stego images when applying the proposed Chaos-LSB system. It is noted a significant similarity between the histogram of the cover image and the histogram of the stego image; this means little distortion has happened after embedding the secret message into the cover image. Figure 10a shows the histogram of the original image when applying the proposed Chaotic Identical-Bits system, while Fig. 10b shows the histogram of stego image when applying the proposed Chaotic Identical-Bits system.
The stego image looks like the original image, so the Human Vision System (HVS) cannot recognize the difference between them. Figure 11a show the stego images after applying Chaos-LSB system. Figure 11b shows the stego image after applying a Chaotic Identical-Bits system. The histogram MSE values increase when the ratio between message size and cover image size increases as shown in Fig. 12. The MSE (and MSE in dB) are computed according to Equations (7) and (8) Here E is the error in the histogram, S is the histogram of the stego image and H is the histogram of the cover image. Note that E has been normalized in (7).

Correlative Analysis
To compute the correlation between two contiguous pixels (horizontal, vertical and diagonal), 5000 pairs of contiguous pixels are randomly chosen from the cover image and the stego images. The Correlative analysis is computed according to Equation (9) (Wang et al., 2012). The range of correlation coefficient is [−1,1]; it can be implemented using the built-in MATLAB function corrcoef(·): where, x and y are the intensity values of two adjacent pixels in the image and N is the total number of pixels in the image. Figure 13 shows the correlation between two adjacent pixels (vertical, horizontal and diagonal) of the cover image (toysnoflash) and stego image after embedding the secret image (cameraman) by the proposed Chaos-LSB system. Figure 14 shows the correlation between two adjacent pixels (vertical, horizontal and diagonal) of the cover image (lighthouse) and stego image after embedding the secret image (cameraman) by the proposed Chaotic Identical-Bits system. No much difference in the correlation coefficient is noticed after encoding. This is an indication of high security. A Comparison with the Improved LSB Steganography (Yadav et al., 2011): A comparison between the recently-proposed improved LSB (Yadav et al., 2011)   In future works, the Authors will extend their testing for the performance of these techniques over real-life engineering systems, especially long-range wireless channels as in (Mahmoud et al. 2006;.  Original + message, k = 2 r = 0.97652

Conclusion
Two systems for steganography in the spatial domain are proposed. These systems are based on the well-known LSB and the recently-proposed identicalbits steganography. The new systems have utilized chaos theory for address shuffling to add a new security dimension. The first system is based on the LSB technique for hiding the secret message (text or image). The chaotic map used for address shuffling has been modified in order to generate integer chaotic series. The proposed systems have much higher security level than their conventional counterparts. The approach is versatile as it could be added to other steganographic systems to enhance their security. Various performance measures have been considered to test security levels. Results showed that the two proposed systems have higher security and reliability than their existing counterparts.