Keywords

1 Introduction

Steganography is a technique and science of information hiding, which means that no one other than the intended recipient is aware of the event or content of the transmission of information. Image steganography is a kind of covert communication technology in which secret messages are embedded in image carriers for information transmission. The early non-adaptive image steganographic methods mainly include LSB [1], F5 [2], OutGuess [3], MB [4], nsF5 [5], etc. These algorithms have the advantages of simple design and easy operation, but poor security.

In recent years, with the development of the steganographic techniques, adaptive steganography has gradually become a hot research direction in the field of current image steganography. Combined with the structural characteristics of the image itself, the algorithm adaptively selects the regions in the image that are relatively difficult to detect and insensitive to embed the message, which preserves the more complex image statistical characteristics and greatly improves the security of steganography. The algorithm is combined with the structure of the image features itself, adaptive selection is relatively difficult to detect, not sensitive areas of the image for message embedding, retain the more complex the statistical properties of the image greatly improves the security of steganography. At present, several mainstream adaptive stegographic algorithms, such as HUGO [6], WOW [7], S-UNIWARD [8], HILL [9], MiPOD [10], are mainly based on the minimum distortion cost function. Message embedding is realized in the form of encoding through the embedded generation value of different pixels, during which the total distortion value of all pixels should be kept to the minimum, which can effectively improve the anti-detection ability and maximize the original image characteristics. Finally, the corresponding steganographic image is obtained by the adaptive steganographic coding method STC [11]. Therefore, better definition of distortion cost function can effectively improve the security of adaptive steganographic algorithm.

2 Preliminaries on Chaotic Systems and Image Steganography

2.1 Logic Map

Logistic map is a typical non-linear chaotic equation, which can generate complex chaotic behavior [12, 13]. It generated chaotic sequence has better randomness, the xn+1 are all distributed on (0, 1) when the μ ∈ (3.5699456,4].

$$ {\text{x}}_{{{\text{n}} + 1}} = \mu {\text{x}}_{\text{n}} \left( { 1- {\text{x}}_{\text{n}} } \right),{\text{ x}}_{\text{n}} \in \left( {0, 1} \right) $$
(1)

2.2 ChebyShev Map

ChebyShev map has good initial sensitivity and long-term unpredictability of chaotic sequences, which is in chaos when k ≥ 2 [14, 15].

$$ {\text{x}}_{{{\text{n}} + 1}} = { \cos }\left( {{\text{karccos}}\left( {{\text{x}}_{\text{n}} } \right)} \right),{\text{ x}}_{\text{n}} \in \left[ { - 1, 1} \right] $$
(2)

2.3 HILL-Based Minimized Distortion Function

HILL algorithm is a steganographic algorithm with excellent detection resistance and computational speed under minimum embedded distortion system. Compared with WOW algorithm, HILL algorithm uses a smaller and more concise filter. The HILL algorithm uses a high pass filter to determine the texture area and two low pass filters to aggregate the pixels with lower modification costs. The formula for calculating the modification cost for the HILL algorithm is shown below.

$$ D(x,y) = \sum\nolimits_{i = 1}^{n} {\rho_{i} (x_{i} ,y_{i} )} $$
(3)

where, x = (x1, x2, …, xn) is the carrier image to be embedded, y = (y1, y2, …, yn) is the embedded secret image, and p(xi, yi) is the distortion cost of modifying the ith carrier pixel xi to yi.

2.4 Syndrome-Trellis Codes (STC)

STC code is binary steganographic code, and the calculation formula is as follows:

$$ Emb(c,m) = \arg \hbox{min} d(c,s) $$
(4)

The encoding process is the process of finding the code word s with the minimum hamming distance from carrier c in the cosset of the secret message m. After receiving s, the receiver can multiply H to obtain the secret message m. Where, d(c, s) is the hamming distance between c and s, and H is the check matrix of parameters Shared by both receiving and receiving parties.

3 Design and Implementation of Image Adaptive Steganography Algorithm

Our algorithm uses the Logistic and ChebyShev maps to the secret information is encrypted, according to the image noise and texture complexity, HILL cost function is used to calculate the corresponding embedding cost, and then the key and the encrypted secret information is embedded into the carrier image, statistics the total image distortion, to use on STC embedded coding minimizes the distortion in order to get the secret image. The algorithm process is as follows [16,17,18]: (see Fig. 1).

  1. (1)

    Convert secret information into ASCII code A[M*N] by character;

  2. (2)

    Convert A[M*N] into binary sequence B[M*N];

  3. (3)

    Randomly generated two keys are keyL (keyL∈(0,1)) and keyC (keyC∈[−1,1]), where keyL is the initial key for Logistic mapping and keyC is the initial key for ChebyShev mapping.

  4. (4)

    Take keyL as the initial key, use Logistic mapping to iterate for 100 times (eliminate the influence of transient), and use ChebyShev to iterate for 1 more time, and save the result in Cx.

  5. (5)

    Take keyC as the initial key, iterate 100 times with ChebyShev mapping (eliminate the influence of transient), take the absolute value of the result, use Logistic iteration for 1 time, and save it in Lx.

  6. (6)

    Extract elements from B[M*N]. If the position number of this element is odd, then use ChebyShev chaotic map to iterate with Cx as the initial key, and record the result of each iteration as the next odd element point iteration encryption; If the element’s position number is even, Logistic chaos mapping is used to iterate with Lx as the initial key, and the result of each iteration is recorded as the element point corresponding to the next even number point.

  7. (7)

    Take the element point being encrypted and the element point at the previous position for xor operation;

  8. (8)

    Repeat steps (6) and (7), and finally output ciphertext A’;

  9. (9)

    Obtain the carrier image and extract the pixel matrix I;

  10. (10)

    Use the HILL cost function to embed the key and encrypted secret information into the carrier image I’ = HILL(I, A’);

  11. (11)

    The corresponding steganographic image SI = STC(I’) was obtained by the adaptive steganographic coding method STC.

  12. (12)

    Obtain the carrier image and extract the pixel matrix with the embedded key;

  13. (13)

    Extract key and secret information;

  14. (14)

    Use the key to decrypt the secret information through the decryption algorithm;

  15. (15)

    Convert binary secret information into a string, that is, decrypted information.

Fig. 1.
figure 1

Image steganography and steganalysis algorithm flow chart.

4 Experimental Results and Analysis

4.1 Imperceptibility Analysis

Imperceptibility refers to the comparison between the densified image and the original image to see whether it can achieve an indistinguishable effect, which is the simplest evaluation method for the image steganographic algorithm. Figure 2 shows the carrier image and the corresponding steganographic image, which show no difference from the naked eye.

Fig. 2.
figure 2

(a) Cover image and (b) corresponding stego image.

4.2 Pixels Change Rate

The pixel change rate is one of the indicators to judge the steganographic algorithm of images. By comparing the pixel change rate between the original image and the densified image, we can see the change size of the whole image and the original image before and after embedding. The larger the pixel change rate is, the more the image changes and is more vulnerable to hackers and viruses. It can be seen from Table 1 that the pixel change rate of the proposed adaptive steganography algorithm is lower than that of the classic LSB image steganography algorithm, and it has better anti-detection ability.

Table 1. Comparison of pixel change rates based on different steganographic algorithms.

4.3 PSNR

The PSNR (Peak signal-to-noise ratio) is an objective standard for image evaluation. When PSNR is greater than 38 dB, the image visual quality requirements are met.

$$ MSE = \frac{1}{M \times N}\sum\nolimits_{i = 1}^{m} {\sum\nolimits_{j = 1}^{n} {\left[ {S(i,j) - C(i,j)} \right]} }^{2} $$
(5)
$$ PSNR = 10 \times \lg \left[ {\frac{{(2^{r} - 1)^{2} }}{MSE}} \right] $$
(6)

where S is the densified image, C is the original image, m and n are the height and width of the image, r is the number of sampling bits of each pixel, and MSE is the mean square deviation of the image. The larger the PSNR value of the image, the less distortion of the image. Table 2 shows that the PSNR of our algorithm is higher than that of reference [19,20,21,22], and slightly lower than that of reference [23]. This indicates that steganographic image distortion using our algorithm is less.

Table 2. Analysis of different image steganographic algorithms based on PSNR.

4.4 Histogram Analysis

Histogram describes the changes in the image and is a common method to evaluate the image processing. Figure 3 depicts the change of histogram before and after steganography. It is difficult to detect histogram changes in images after steganography with our algorithm, so there is little change in images after steganography, indicating that the algorithm has a good effect after steganography and can effectively resist attacks from statistical methods.

Fig. 3.
figure 3

(a) Histogram of the cover image and (b) histogram of the stego image.

4.5 Embedded Location Analysis of Secret Information

Different images have different textures, and embedding secret information in places with complex textures makes it harder to detect, in order to better deal with non-statistical attacks. The image steganographic analysis method based on convolutional neural network can extract the image features to analyze whether the image contains secret information. By comparing the embedding position of the original image and the secret information in the steganographic image, the ability of the image to resist the feature attack can be determined. Figure 4 (a) the texture of the mountains is more complex than that of the sky. The pixel value of the sky is single, while the pixel value of the mountains is rich with more changes. Our algorithm is used to embed the secret information in the mountains (see Fig. 4 (b)), which is better than the traditional LSB steganographic algorithm (see Fig. 4 (c)), so our algorithm can better resist the feature attack.

Fig. 4.
figure 4

(a) Cover image, (b) embedded pixel location based on HILL, (c) embedded pixel location based on LSB.

5 Conclusion

Combining chaos theory and HILL distortion function to design steganographic algorithm has the advantages of fast processing speed and high security. The algorithm uses randomly generated keys to encrypt secret information, and even the user does not know the encrypted keys, which increases the security of the algorithm. The encryption key is embedded into the densive-carrying image, and the densive-carrying image can be transmitted through the public channel due to its concealment. Even if the attacker steals the embedded key, the secret information cannot be obtained.