An image steganography method based on Rossler chaotic system and integer wavelet transform

By using the method based on Rossler chaotic system and integer wavelet transformation, the problem of insufficient security of image steganography method in the prior art is solved, and the combination of high capacity embedding and high security is realized, which improves the confidentiality and steganography of image transmission. Security.

CN118887070BActive Publication Date: 2024-12-06湖南工商大学
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411350204.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-09-26
Publication Date
2024-12-06
Estimated Expiration
2044-09-26

AI Technical Summary

Technical Problem

The existing image steganography method cannot maintain high capacity embedding while maintaining high-capacity embedding, and cannot effectively protect the security of private image information.

Method used

Using the image steganography method based on Rossler chaotic system and integer wavelet transformation, the carrier image feature value is extracted, and the bit plane is chaotic, combined with the carrier image feature value is chaotic, and the integer wavelet transformation is cryptographically chaotic. Write a secret image and finally restore the secret image through inverse integer wavelet transformation.

Benefits of technology

It improves the confidentiality and steganography security of image transmission, reduces the consumption of key transmission resources, enhances the difficulty of cracking, and ensures accurate extraction of feature values ​​and lossless restoration of pixel values ​​after embedding information.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118887070B_ABST
    Figure CN118887070B_ABST
Patent Text Reader

Abstract

The invention discloses an image steganography method based on Rossler chaotic system and integer wavelet transform, comprising the following steps: S1: extracting carrier image eigenvalues ​​to obtain chaotic sequence X; S2: obtaining a bit plane encrypted image; S3: obtaining an inter-block encrypted image; fusing the carrier image eigenvalues ​​with the inter-block encrypted image eigenvalues, and performing intra-block scrambling to obtain an intra-block encrypted image; S4: performing integer wavelet transform on the carrier image to obtain a coefficient matrix; the coefficient matrix is ​​used to steganographically ...
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The invention relates to the technical field of image steganography, to the technical field of Rossler chaotic system technology and integer wavelet transform technology, and specifically to an image steganography method based on Rossler chaotic system and integer wavelet transform. Background Art

[0002] With the rapid development of Internet technology and multimedia technology, digital information can be easily and quickly transmitted on the Internet in different forms. At the same time, the popularity of various intelligent terminal devices has placed information in various aspects of people's study, work and life in the Internet environment. As an important file type in multimedia information, images have a more important position than text, audio and other information. In the Internet environment, in order to ensure the security of private image information, it is very necessary to adopt appropriate steganography methods to protect private image information.

[0003] Encryption technology can protect information from being stolen or tampered with during transmission, ensuring the confidentiality and integrity of information; while steganography can be used to hide information and prevent information leakage. At present, scholars have proposed image steganography methods that combine encryption and steganography. However, existing image steganography methods cannot meet the problem of maintaining high capacity embedding while still having high security. Summary of the invention

[0004] The present invention aims to solve at least one of the technical problems existing in the prior art; to this end, the present invention proposes an image steganography method based on Rossler chaotic system and integer wavelet transform, which is used to solve the technical problem that the existing image steganography method cannot meet the requirements of maintaining high capacity embedding while still having high security.

[0005] To achieve the above object, the present invention provides an image steganography method based on Rossler chaotic system and integer wavelet transform, comprising the following steps:

[0006] S1: Extract the eigenvalues ​​of the carrier image, pass them into the Rossler chaotic system, and obtain the chaotic sequence X;

[0007] S2: Use the chaotic sequence X to scramble the bit plane of the secret image to obtain the bit plane encrypted image;

[0008] S3: using the carrier image feature value to perform inter-block scrambling on the bit plane encrypted image to obtain the inter-block encrypted image; then fusing the carrier image feature value with the inter-block encrypted image feature value, and using them to perform intra-block scrambling to obtain the intra-block encrypted image;

[0009] S4: Perform integer wavelet transform on the carrier image to obtain a coefficient matrix; the coefficient matrix is ​​used to steganographically write the encrypted image in the block in the form of a block to obtain the steganographic coefficient matrix;

[0010] S5: restoring the steganographic coefficient matrix to a carrier image by inverse integer wavelet transform, and keeping the restored pixel values ​​from overflowing, thereby obtaining a steganographic image;

[0011] S6: Based on the encryption and steganography method, the secret image is inversely operated to extract and restore the secret image.

[0012] Further: in said S1, extracting the carrier image feature value specifically includes the following steps:

[0013] Decompose the carrier image into 8 bit planes, and extract the highest bit plane of the carrier image;

[0014] The highest bit plane of the extracted carrier image is split into 16 blocks. The splitting rule is from top to bottom and from left to right. When the carrier image size is 512*512, the block size is 128 bits long and 128 bits wide.

[0015] Calculate the value of each of the 16 blocks. The specific calculation rule is: add each value in each block, and the sum of the addition is the value of the block. The 16 values ​​obtained are the carrier image feature values.

[0016] Further: In S1, the Rossler chaotic system is input to obtain the chaotic sequence X, which specifically includes the following steps:

[0017] The carrier image feature values ​​are divided into the first 8-bit array and the second 8-bit array in order, and then these two arrays are converted into sequences with a value range of 1 to 8 according to their sizes, thereby obtaining two sequences;

[0018] The variable-step Joseph traversal is used to improve the previous sequence using the next sequence. The next sequence is the step sequence, and the previous sequence is the sequence to be traversed. Its function expression is as follows:

[0019] ;

[0020] in Indicates the sequence that needs to be traversed. represents a sequence with a step size, Indicates the sequence after the traversal is completed. First, and The sequences are connected end to end in a ring, first get The first value of the sequence ,Will Sequence cyclic shift Then extract the first digit and then The sequence is also cyclically shifted After the first bit, extract the first value as the step length of the next loop shift, and repeat this cycle until the traversal is completed. All the values ​​of the sequence are obtained sequence;

[0021] The two sequences obtained by the carrier image feature value and the sequence obtained by the improved variable step size Joseph traversal are concatenated in order to convert them into three 8-bit decimal numbers, and then multiplied by To obtain the initial value of the Rossler chaotic system, its expression is as follows:

[0022] ;

[0023] in is the initial value, The processed value;

[0024] The initial value The Rossler chaotic system is passed in, and the Rossler chaotic system is iterated 500+MN*8 times, where M and N are the length and width of the secret image. Then the first 500 digits are discarded to eliminate transient effects, and the chaotic sequences X, Y and Z are obtained. The first chaotic sequence X is used as the sequence for bit plane scrambling. The differential equation expression of the Rossler chaotic system is as follows:

[0025] ;

[0026] in , , The parameters were set to 0.2, 0.2, and 5.7, respectively;

[0027] , , is the initial value of the chaotic system.

[0028] Further: In S2, the secret image is scrambled in the bit plane using the chaotic sequence X, which specifically includes the following steps:

[0029] Multiply all the values ​​in the chaotic sequence X by , its equation expression is as follows:

[0030] ;

[0031] Where X is a chaotic sequence, For the modulo operation, is the rounding operation. Represents a decreasing array;

[0032] Arrange the processed chaotic sequence X end to end into a ring;

[0033] The secret image is decomposed into 8 bit planes, with pixel values ​​in order from top to bottom and from left to right, and bit planes in order from high to low, to convert the secret image into a sequence in binary format;

[0034] The binary sequence of the secret image is connected end to end to form a ring, and the chaotic sequence is used as the step length sequence. The improved variable step length Joseph traversal is performed on the binary sequence of the secret image to obtain the scrambled binary sequence;

[0035] Convert the scrambled binary sequence into a decimal sequence in order in the format of 8-bit binary numbers;

[0036] The converted decimal sequence is reshaped in order into a bit-plane encrypted image of the same size as the secret image.

[0037] Further: in said S3, said using the carrier image characteristic value to perform inter-block scrambling on the bit plane encrypted image specifically comprises the following steps:

[0038] The carrier image feature values ​​are converted into a sequence ranging from 1 to 16 according to their magnitude, thereby obtaining a 16-bit sequence;

[0039] Split the bit plane encrypted image into 16 pixel blocks. The splitting rule is from top to bottom and from left to right. When the size of the bit plane encrypted image is 256*256, the size of the block is 64 bits long and 64 bits wide.

[0040] The 16 pixel block sequences after splitting are connected end to end to form a ring, and the 16-bit sequence obtained by using the carrier image feature value is used as the step sequence. The 16 pixel block sequences of the bit plane encrypted image are subjected to an improved variable step Joseph traversal to obtain the scrambled pixel block sequence;

[0041] The scrambled pixel block sequence is concatenated in order and reshaped into an inter-block encrypted image with the same size as the original secret image;

[0042] The method for extracting the inter-block encrypted image feature value specifically includes the following steps:

[0043] Splitting the inter-block encrypted image into 16 blocks, with the splitting rule being from top to bottom and from left to right, and the block size being 64 bits in length and 64 bits in width;

[0044] Calculate the value of each block. The calculation rule is to add up all the pixel values ​​in the block. The sum of the added values ​​is the value of the block. The 16 values ​​obtained are the inter-block encrypted image feature values.

[0045] Further: in said S3, the block is disordered, and the encrypted image in the block is obtained, which specifically includes the following steps:

[0046] The carrier image feature values ​​are converted into a sequence with a value range of 1 to 16 according to their size, thus obtaining a 16-bit sequence named sequence;

[0047] The inter-block encrypted image feature values ​​are converted into a sequence with a value range of 1 to 16 according to their size, thereby obtaining a 16-bit sequence named sequence;

[0048] Multiply the elements in the sequence by 4 to get sequence, Multiply the elements in the sequence by 4 and then subtract 1 to get sequence, Multiply the elements in the sequence by 4 and then subtract 2 to get sequence, Multiply the elements in the sequence by 4 and then subtract 3 to get The function expression of the sequence is as follows:

[0049] ;

[0050] in is an element in a sequence;

[0051] Will , , , The sequence is taken one element at a time in order, and they are concatenated alternately into a 64-bit sequence;

[0052] Split the inter-block encrypted image into 1024 blocks, the splitting rule is from top to bottom and from left to right, and the block size is 8 bits long and 8 bits wide;

[0053] Arrange the first 8×8 pixel block sequence end to end in a ring, use the 64-bit sequence formed by the fusion of the carrier image feature value and the inter-block encrypted image feature value as the step sequence, perform the improved variable step Joseph traversal on the 8×8 pixel block sequence to obtain the scrambled pixel block sequence, and then take the next 8×8 pixel block sequence until all pixel blocks are scrambled;

[0054] The scrambled pixel block sequence is concatenated in order and reshaped into an intra-block encrypted image with the same size as the original secret image.

[0055] Further: In S4, integer wavelet transform is performed on the carrier image to obtain a coefficient matrix, which specifically includes the following steps:

[0056] Decompose the carrier image into 8 bit planes, and extract the last 7 bit planes except the highest bit plane;

[0057] The extracted 7 bit planes are merged and converted into a secondary carrier image;

[0058] Perform a one-dimensional integer wavelet transform on the secondary carrier image to obtain the coefficient matrix. The integer wavelet transform equation is as follows:

[0059] ;

[0060] ;

[0061] in , is the continuous pixel value of the secondary carrier image, , They are high-frequency wavelet coefficients and low-frequency wavelet coefficients respectively.

[0062] Further: In said S4, encrypting the image in the steganographic block specifically comprises the following steps:

[0063] Split the coefficient matrix into 65536 blocks. The splitting rule is from top to bottom and from left to right. The block size is 2 bits long and 2 bits wide.

[0064] Extract each pixel value of the encrypted image in the block in order from top to bottom and from left to right, divide the pixel value by 16, and obtain the remainder and quotient. The function expression is as follows:

[0065] ;

[0066] in is the pixel value of the encrypted image within the block, The divisor value is 16. , are the quotient and remainder respectively;

[0067] Since the pixel value range of the grayscale image is 0~255, the obtained quotient and remainder values ​​are both in the range of 0~15, which can be represented by 4-bit binary, and are converted into binary format;

[0068] Get the first 2×2 coefficient block, convert all coefficient values ​​in the block into binary format, replace the first two binary digits of the quotient with the lowest and second lowest bits of the (0, 0) coefficient, replace the last two binary digits of the quotient with the lowest and second lowest bits of the (0, 1) coefficient, replace the first two binary digits of the remainder with the lowest and second lowest bits of the (1, 0) coefficient, replace the last two binary digits of the remainder with the lowest and second lowest bits of the (1, 1) coefficient, and then take the next 2×2 coefficient block until all coefficient blocks are steganographically written.

[0069] Further: S5 specifically includes the following steps:

[0070] The one-dimensional inverse integer wavelet transform is performed on the coefficient matrix after steganography. The inverse integer wavelet transform equation is as follows:

[0071] ;

[0072] ;

[0073] If there is a pixel value overflow during the inverse transformation process, it needs to be adjusted. If the restored pixel value is less than 0, add 8. If the restored pixel value is greater than 127, subtract 8. The function expression is as follows:

[0074] ;

[0075] in , is the continuous pixel value of the secondary carrier image, , are the high-frequency and low-frequency wavelet coefficients respectively;

[0076] The secondary carrier image restored by inverse integer wavelet transform is decomposed into 7 bit planes, and then spliced ​​with the highest bit plane of the carrier image to reconstruct the encrypted image.

[0077] Further: S6 specifically comprises the following steps:

[0078] The encrypted image is decomposed into 8 bit planes, and the last 7 bit planes except the highest bit plane are extracted;

[0079] The extracted 7 bit planes are merged and converted into a sub-encrypted image;

[0080] Perform one-dimensional integer wavelet transform on the sub-encrypted image to obtain the coefficient matrix. The integer wavelet transform equation is as follows:

[0081] ;

[0082] ;

[0083] in , is the continuous pixel value of the secondary carrier image, , are the high-frequency and low-frequency wavelet coefficients respectively;

[0084] Split the coefficient matrix into 65536 blocks. The splitting rule is from top to bottom and from left to right. The block size is 2 bits long and 2 bits wide.

[0085] Get the first 2×2 coefficient block, convert all coefficient values ​​in the block into binary format, extract the lowest bit and the second lowest bit of the coefficient values ​​of (0, 0) and (0, 1), combine them and convert them into decimal as the quotient, extract the lowest bit and the second lowest bit of the coefficient values ​​of (1, 0) and (1, 1), combine them and convert them into decimal as the remainder, and then take the next 2×2 coefficient block until all coefficient blocks are extracted;

[0086] The quotient and remainder extracted from the same coefficient block are processed according to the quotient × 16 + remainder processing rule to calculate each pixel value of the encrypted image in the block.

[0087] Reconstructing it into an intra-block encrypted image, its function expression is as follows:

[0088] ;

[0089] in is the pixel value of the encrypted image within the block, The divisor value is 16. , are the quotient and remainder respectively;

[0090] Extract the highest bit plane of the encrypted image and divide it into 16 blocks. The splitting rule is from top to bottom and from left to right. The block size is 128 bits long and 128 bits wide.

[0091] Calculate the value of each block. The calculation rule is to add up each value in the block. The sum of the added values ​​is the value of the block. The 16 values ​​obtained are the carrier image feature values.

[0092] The carrier image feature values ​​are converted into a sequence ranging from 1 to 16 according to their magnitude, thereby obtaining a 16-bit sequence;

[0093] Split the encrypted image in the block into 16 blocks. The splitting rule is from top to bottom and from left to right. The block size is 64 bits long and 64 bits wide.

[0094] Calculate the value of each block. The calculation rule is to add up all the pixel values ​​in the block. The sum of the added values ​​is the value of the block. The 16 values ​​obtained are the secret image feature values.

[0095] According to the method in the encryption process, the carrier image feature value and the inter-block encrypted image feature value are fused to generate a 64-bit sequence;

[0096] Split the encrypted image in the block into 1024 blocks. The splitting rule is from top to bottom and from left to right. The block size is 8 bits long and 8 bits wide.

[0097] The first 8×8 pixel block sequence is connected end to end to form a ring, and the 64-bit sequence formed by the fusion of the carrier image feature value and the inter-block encrypted image feature value is used as the step sequence. The 8×8 pixel block sequence is subjected to an improved inverse step size Joseph traversal to obtain the restored pixel block sequence, and then the next 8×8 pixel block sequence is taken until all pixel blocks are restored. The function expression is as follows:

[0098] ;

[0099] in Indicates the sequence that needs to be reversed and restored. represents a sequence with a step size, Indicates the sequence after the reverse traversal restoration is completed;

[0100] The restored pixel block sequence is spliced ​​in order and reshaped into an inter-block encrypted image with the same size as the original secret image;

[0101] Split the inter-block encrypted image into 16 blocks, the splitting rule is from top to bottom and from left to right, and the block size is 64 bits long and 64 bits wide;

[0102] The 16 pixel block sequences after splitting are connected end to end to form a ring, and the 16-bit sequence obtained by using the carrier image feature value is used as the step length sequence. The 16 pixel block sequences of the inter-block encrypted image are subjected to an improved inverse step length Joseph traversal to obtain the restored pixel block sequence;

[0103] splicing and reshaping the restored pixel block sequence into a bit plane encrypted image in order;

[0104] The carrier image feature values ​​are divided into the first 8-bit array and the second 8-bit array in order, and then these two arrays are converted into sequences with a value range of 1 to 8 according to their sizes, thereby obtaining two sequences;

[0105] The variable step size Joseph traversal is improved by using the latter sequence to traverse the former sequence. The latter sequence is the step size sequence and the former sequence is the sequence to be traversed. A new sequence is obtained. The three sequences are concatenated and converted into three 8-bit decimal numbers, and then multiplied by To obtain the initial value of the Rossler chaotic system;

[0106] The processed chaotic sequence is obtained by using the Rossler chaotic system which is the same as the encryption process, and the chaotic sequence is connected end to end to form a ring.

[0107] The bit plane encrypted image is decomposed into 8 bit planes, the pixel values ​​are in the order from top to bottom and from left to right, and the bit planes are in the order from high to low, and the bit plane encrypted image is converted into a sequence in binary format;

[0108] The binary sequence of the bit plane encrypted image is connected end to end to form a ring, and the chaotic sequence is used as the step length sequence. The improved inverse step length Joseph traversal is performed on the binary sequence of the bit plane encrypted image to obtain the restored binary sequence;

[0109] The restored binary sequence is converted into a decimal sequence in order in the format of a group of 8 binary numbers, and then reshaped into a secret image in order.

[0110] The present invention protects secret images by using the dual means of chaotic encryption and steganography, thereby improving the confidentiality of image transmission and the security of image steganography. Its main advantages are: (1) This method proposes an image feature value extraction algorithm to achieve keyless encryption. The target parties do not need to transmit additional keys, but directly convert the feature values ​​in the secret image into keys for encryption and decryption, reducing the resource consumption of key transmission and eliminating the possibility of key interception; (2) An improved variable step-length Joseph traversal method is proposed. During the traversal, the step-length sequence also needs to be traversed synchronously, which improves the scrambling effect and increases the difficulty of being cracked; (3) The Rossler chaotic system generated The chaotic sequence is scrambled based on the bit plane, and the plaintext information of the original image is completely disrupted from the level of the bit plane; (4) A method is proposed to generate a new key by fusing the eigenvalues ​​of the carrier image and the secret image, and this is used to perform block scrambling to further eliminate the structural similarity of the secret image; (5) In order to ensure that the eigenvalue can be extracted losslessly after the secret information is embedded, it is proposed to perform integer wavelet transform only on the last 7 bit planes to ensure the accurate extraction of the eigenvalue; (6) A solution to the pixel value overflow of integer wavelet transform is proposed, which can ensure that no pixel value overflow occurs when the inverse integer wavelet transform is performed after the secret information is embedded without performing pixel value preprocessing. BRIEF DESCRIPTION OF THE DRAWINGS

[0111] In order to more clearly illustrate the embodiments of the present invention and the technical solutions in the prior art, the drawings required for use in the embodiments and the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some implementation methods recorded in the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.

[0112] Figure 1 A flow chart of an image steganography method based on Rossler chaotic system and integer wavelet transform provided by an embodiment of the present invention;

[0113] Figure 2 A schematic diagram of a carrier image provided by an embodiment of the present invention;

[0114] Figure 3 A schematic diagram of an improved variable-step-length Joseph traversal provided by an embodiment of the present invention;

[0115] Figure 4 An attractor diagram of a Rossler chaotic system provided by an embodiment of the present invention;

[0116] Figure 5 A schematic diagram of a secret image provided by an embodiment of the present invention;

[0117] Figure 6 A schematic diagram of information embedding provided by an embodiment of the present invention;

[0118] Figure 7 Grayscale histograms of a plaintext image (a) and a ciphertext image (b) of woman_darkhair provided in an embodiment of the present invention. DETAILED DESCRIPTION

[0119] In order to make the purpose, technical solutions and advantages of the present application clearer, the present application is described and illustrated below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not intended to limit the present application. Based on the embodiments provided in the present application, all other embodiments obtained by ordinary technicians in the field without making creative work are within the scope of protection of the present application.

[0120] Obviously, the drawings described below are only some examples or embodiments of the present application. For ordinary technicians in this field, the present application can also be applied to other similar scenarios based on these drawings without creative work. In addition, it can also be understood that although the efforts made in this development process may be complicated and lengthy, for ordinary technicians in this field related to the content disclosed in this application, some changes in design, manufacturing or production based on the technical content disclosed in this application are just conventional technical means, and should not be understood as insufficient content disclosed in this application.

[0121] Unless otherwise specified, all embodiments and optional embodiments of the present application can be combined with each other to form a new technical solution.

[0122] S1: Extract the eigenvalues ​​of the carrier image, pass them into the Rossler chaotic system, and obtain the chaotic sequence X;

[0123] Specifically, the extracting of carrier image feature values ​​comprises the following steps:

[0124] Decompose the carrier image into 8 bit planes and extract the highest bit plane;

[0125] Split the highest bit plane of the carrier image into 16 blocks. The splitting rule is from top to bottom and from left to right. When the carrier image size is 512*512, the block size is 128 bits long and 128 bits wide.

[0126] Calculate the value of each block. The calculation rule is to add up each value in the block. The sum of the addition is the value of the block. The 16 values ​​obtained are the characteristic values ​​of the carrier image.

[0127] In the specific implementation process, the highest bit plane of the carrier image is extracted, that is, each pixel value is converted into 8-bit binary and the first binary number is extracted. Assuming that there are pixel points with values ​​of 24, 123 and 236, extracting the highest bit of these three pixel points is to obtain the first bit (0, 0, 1) of 00011000, 01111011 and 11101100, such as Figure 2 As shown, it is a schematic diagram of a carrier image provided by an embodiment of the present invention;

[0128] During the specific implementation process, the sum of the values ​​in the block is calculated and used as the eigenvalue. Assuming that there is a block [[1,1],[0,1]], the sum of the block is 1+1+0+1=3, and 3 is used as the eigenvalue of the block. The eigenvalue extracted by this method can ensure that after the carrier image is embedded in the secret image, the eigenvalue can still be extracted 100% accurately and losslessly.

[0129] Specifically, the method of transferring the carrier image characteristic value into the Rossler chaotic system to obtain the chaotic sequence X specifically includes the following steps:

[0130] The carrier image feature values ​​are divided into the first 8-bit array and the second 8-bit array in order, and then these two arrays are converted into sequences with a value range of 1 to 8 according to their sizes, thereby obtaining two sequences;

[0131] The variable step size Joseph traversal traversal that uses the latter sequence to improve the previous sequence has the following function expression:

[0132] ;

[0133] in Indicates the sequence that needs to be traversed. represents a sequence with a step size, Indicates the sequence after the traversal is completed. First, and The sequences are connected end to end in a ring, first get The first value of the sequence ,Will Sequence cyclic shift After the first digit is extracted, The sequence is also cyclically shifted After the first bit, extract the first value as the step length of the next loop shift, and repeat this cycle until the traversal is completed. All the values ​​of the sequence are obtained sequence;

[0134] The two sequences obtained by the carrier image feature value and the sequence obtained by the improved variable step size Joseph traversal are concatenated in order to convert them into three 8-bit decimal numbers, and then multiplied by To obtain the initial value of the Rossler chaotic system, its expression is as follows:

[0135] ;

[0136] in is the initial value, is the processed value;

[0137] The initial value is passed into the Rossler chaotic system, and the Rossler chaotic system is iterated 500+MN*8 times, where M and N are the length and width of the secret image, and then the first 500 digits are discarded to eliminate transient effects, and the chaotic sequences X, Y and Z are obtained. The first chaotic sequence X is used as the sequence for bit plane scrambling. The differential equation expression of the Rossler chaotic system is as follows:

[0138] ;

[0139] in , , The parameters are set to 0.2, 0.2, and 5.7 respectively. , , is the initial value of the chaotic system;

[0140] In the specific implementation process, the variable step size Joseph traversal traversal using the latter sequence to improve the former sequence can be illustrated as follows. The sequence (2, 4, 1, 5, 3), The sequence (5, 2, 4, 3, 1) is Sequence Pair The sequence is improved by the variable step length Joseph traversal traversal. Sequence and The sequences are connected end to end to form a ring, and the first The first element of the sequence is 5, and extracts The fifth element of the sequence is 3. The sequence is (3), The sequence is (2, 4, 1, 5), The sequence is (2, 4, 3, 1), then take out The fifth element of the sequence is 2, and extracts The second element of the sequence is 4. The sequence is (3, 4), The sequence is (2, 1, 5), The sequence is (4, 3, 1), and this loop continues until all the All the values ​​of the sequence, this scrambling method improves the scrambling effect and increases the difficulty of cracking, such as Figure 3 As shown, it is a schematic diagram of the improved variable-step-size Joseph traversal provided by an embodiment of the present invention.

[0141] In the specific implementation process, the characteristic values ​​in the encrypted image are used as the key for encryption and decryption, which reduces the resource consumption of the transmission key and eliminates the possibility of the key being intercepted; in addition, since the chaotic system has similar noise, long-term unpredictability and sensitivity to initial values, the chaotic system is a good choice for designing image encryption systems. In the Rossler chaotic system, , , When the parameters are set to 0.2, 0.2, and 5.7, and their initial values ​​are set to 0.1, 0.2, and 0.3, Figure 4 As shown, it is an attractor diagram of the Rossler chaotic system provided by an embodiment of the present invention.

[0142] S2: Use the chaotic sequence X to scramble the bit plane of the secret image;

[0143] Specifically, the method of using the chaotic sequence X to scramble the bit plane of the secret image comprises the following steps:

[0144] The chaotic sequence All values ​​in are multiplied by , its equation expression is as follows:

[0145] ;

[0146] in is a chaotic sequence, For the modulo operation, is the rounding operation. Represents a decreasing array;

[0147] Arrange the processed chaotic sequences end to end in a ring;

[0148] The secret image is decomposed into 8 bit planes, with pixel values ​​in order from top to bottom and from left to right, and bit planes in order from high to low, to convert the secret image into a sequence in binary format;

[0149] The binary sequence of the secret image is connected end to end to form a ring, and the chaotic sequence is used as the step length sequence. The improved variable step length Joseph traversal is performed on the binary sequence of the secret image to obtain the scrambled binary sequence;

[0150] Convert the scrambled binary sequence into a decimal sequence in order in the format of 8-bit binary numbers;

[0151] Reshape the converted decimal sequence into a bit plane encrypted image with the same size as the original secret image in order;

[0152] In the specific implementation process, the chaotic sequence is used as the step length sequence. The unpredictability of the chaotic sequence will be fully reflected in the conversion of the secret image into a binary sequence through the improved variable step length Joseph traversal, which can completely disrupt the plaintext information of the original image and has a high degree of randomness. Figure 5 As shown, it is a schematic diagram of a secret image provided by an embodiment of the present invention.

[0153] S3: Use the carrier image feature value to perform inter-block scrambling on the bit plane encrypted image, then fuse the carrier image feature value with the inter-block encrypted image feature value, and use this to perform intra-block scrambling.

[0154] Specifically, the inter-block scrambling of the inter-block encrypted image using the carrier image characteristic value specifically includes the following steps:

[0155] The carrier image feature values ​​are converted into a sequence ranging from 1 to 16 according to their magnitude, thereby obtaining a 16-bit sequence;

[0156] Split the bit plane encrypted image into 16 pixel blocks. The splitting rule is from top to bottom and from left to right. When the size of the bit plane encrypted image is 256*256, the size of the block is 64 bits long and 64 bits wide.

[0157] The 16 pixel block sequences after splitting are connected end to end to form a ring, and the 16-bit sequence obtained by using the carrier image feature value is used as the step sequence. The 16 pixel block sequences of the bit plane encrypted image are subjected to an improved variable step Joseph traversal to obtain the scrambled pixel block sequence;

[0158] The scrambled pixel block sequence is concatenated in order and reshaped into an inter-block encrypted image of the same size as the original secret image.

[0159] Specifically, the step of extracting the inter-block encrypted image feature value comprises the following steps:

[0160] Split the inter-block encrypted image into 16 blocks, the splitting rule is from top to bottom and from left to right, and the block size is 64 bits long and 64 bits wide;

[0161] Calculate the value of each block. The calculation rule is to add up all the pixel values ​​in the block. The sum of the added values ​​is the value of the block. The 16 values ​​obtained are the inter-block encrypted image feature values.

[0162] In the specific implementation process, the sum of all pixel values ​​in the block is calculated. For example, if the pixel values ​​in the block are (56, 23, 78, 5, 12), the sum of them is 56+23+78+5+12=174, and the obtained 174 is the value of the block. The sequence composed of the values ​​of all blocks is the inter-block encrypted image feature value;

[0163] Specifically, the fusion carrier image feature value and the inter-block encrypted image feature value are used to perform intra-block scrambling, which specifically includes the following steps:

[0164] The carrier image feature values ​​are converted into a sequence with a value range of 1 to 16 according to their size, thus obtaining a 16-bit sequence named sequence;

[0165] The inter-block encrypted image feature values ​​are converted into a sequence with a value range of 1 to 16 according to their size, thereby obtaining a 16-bit sequence named sequence;

[0166] Multiply the elements in the sequence by 4 to get sequence, Multiply the elements in the sequence by 4 and then subtract 1 sequence, Multiply the elements in the sequence by 4 and then subtract 2 to get sequence, Multiply the elements in the sequence by 4 and then subtract 3 The function expression of the sequence is as follows:

[0167] ;

[0168] in is an element in a sequence;

[0169] Will , , , The sequence is taken one element at a time in order, and they are concatenated alternately into a 64-bit sequence;

[0170] Split the inter-block encrypted image into 1024 blocks, the splitting rule is from top to bottom and from left to right, and the block size is 8 bits long and 8 bits wide;

[0171] Arrange the first 8×8 pixel block sequence end to end in a ring, use the 64-bit sequence formed by the fusion of the carrier image feature value and the inter-block encrypted image feature value as the step sequence, perform the improved variable step Joseph traversal on the 8×8 pixel block sequence to obtain the scrambled pixel block sequence, and then take the next 8×8 pixel block sequence until all pixel blocks are scrambled;

[0172] The scrambled pixel block sequence is concatenated in order and reshaped into an intra-block encrypted image with the same size as the original secret image;

[0173] In the specific implementation process, it is assumed The sequence is (2, 5, 1, 3, 4), and the above function gives The sequence is (8, 20, 4, 12, 16), so The sequence is (7, 19, 3, 11, 15), if The sequence is (5, 3, 1, 4, 2), and the above function gives The sequence is (18, 10, 2, 14, 6), so The sequence is (17, 9, 1, 13, 5), which are spliced ​​alternately in turn to obtain a 20-bit sequence (8, 7, 18, 17, 20, 19, 10, 9, 4, 3, 2, 1, 12, 11, 14, 13, 16, 15, 6, 5), and this is used as the step sequence for variable step Joseph traversal. This action can further eliminate the structural similarity of the secret image. In addition, the sequence is formed by merging the carrier image eigenvalue and the inter-block encrypted image eigenvalue, and the eigenvalue of the secret image itself is used as half of the key, so that the secret image encrypts itself and ensures the reversibility of the encryption. This action greatly improves the security of the secret image and the difficulty of cracking the encryption, while maintaining the functional characteristics of the keyless encryption of the present invention.

[0174] S4, performing integer wavelet transform on the carrier image to obtain a coefficient matrix; the coefficient matrix is ​​used to steganographically write the encrypted image in the block in the form of a block to obtain the steganographic coefficient matrix;

[0175] Specifically, integer wavelet transform is performed on the carrier image to obtain a coefficient matrix, which specifically includes the following steps:

[0176] Decompose the carrier image into 8 bit planes, and extract the last 7 bit planes except the highest bit plane;

[0177] The extracted 7 bit planes are merged and converted into a secondary carrier image;

[0178] Perform a one-dimensional integer wavelet transform on the secondary carrier image to obtain the coefficient matrix. The integer wavelet transform equation is as follows:

[0179] ;

[0180] ;

[0181] in , is the continuous pixel value of the secondary carrier image, , are the high-frequency and low-frequency wavelet coefficients respectively.

[0182] In the specific implementation process, only the last 7-bit plane of the carrier image is obtained for integer wavelet transform. After being converted into decimal, the value range is between 0 and 127. Therefore, in the coefficient matrix after integer wavelet transform, The value range is between 0 and 127. The value range is between -127 and 127. This is intended to ensure that the parameters of the original eigenvalues ​​are not changed after the carrier image is embedded with information, and the eigenvalues ​​can still be accurately and losslessly extracted. At the same time, integer wavelet transform is performed on some bit planes, which will not cause obvious visual changes after the information is embedded, and has the ability to resist steganalysis, thereby improving security.

[0183] Specifically, the step of steganographically writing the secret image in the form of blocks of the coefficient matrix comprises the following steps:

[0184] Split the coefficient matrix into 65536 blocks. The splitting rule is from top to bottom and from left to right. The block size is 2 bits long and 2 bits wide.

[0185] Extract each pixel value of the encrypted image in the block in order from top to bottom and from left to right, divide the pixel value by 16, and obtain the remainder and quotient. The function expression is as follows:

[0186] ;

[0187] in is the pixel value of the encrypted image within the block, The divisor value is 16. , are the quotient and remainder respectively;

[0188] Since the pixel value range of the grayscale image is 0~255, the obtained quotient and remainder values ​​are both in the range of 0~15, which can be represented by 4-bit binary, and are converted into binary format;

[0189] Get the first 2×2 coefficient block, convert all coefficient values ​​in the block into binary format, replace the first two binary digits of the quotient with the lowest and second lowest bits of the (0, 0) coefficient, replace the last two binary digits of the quotient with the lowest and second lowest bits of the (0, 1) coefficient, replace the first two binary digits of the remainder with the lowest and second lowest bits of the (1, 0) coefficient, replace the last two binary digits of the remainder with the lowest and second lowest bits of the (1, 1) coefficient, and then take the next 2×2 coefficient block until all coefficient blocks are steganographically written;

[0190] In the specific implementation process, the pixel value of the encrypted image is embedded in the coefficient block of the coefficient matrix in the form of quotient and remainder, and the divisor is set to 16. Assuming that there is a pixel value of 179 that needs to be steganographic, take the coefficient block B[[11,67], [105,8]], the quotient is 11, and the remainder is 3, which are converted into 4-bit binary: 1011, 0011, and then replace the last two digits of the (0,0) coefficient with 10, replace the last two digits of the (0,1) coefficient with 11 with 67, replace the last two digits of the (1,0) coefficient with 00 with 104, and replace the last two digits of the (1,1) coefficient with 11 with 11. After embedding, the coefficient block B`[[10,67], [104,11]] is as follows: Figure 6 As shown, it is a schematic diagram of information embedding provided by an embodiment of the present invention.

[0191] S5: restoring the steganographic coefficient matrix to a carrier image by inverse integer wavelet transform, and keeping the restored pixel values ​​from overflowing, thereby obtaining a steganographic image;

[0192] Specifically, the carrier image is restored by inverse integer wavelet transform, and the restored pixel values ​​are kept from overflowing to obtain the encrypted image, which specifically includes the following steps:

[0193] The one-dimensional inverse integer wavelet transform is performed on the coefficient matrix after steganography. The inverse integer wavelet transform equation is as follows:

[0194] ;

[0195] ;

[0196] If there is a pixel value overflow during the inverse transformation process, it needs to be adjusted. If the restored pixel value is less than 0, add 8. If the restored pixel value is greater than 127, subtract 8. The function expression is as follows:

[0197] ;

[0198] in , is the continuous pixel value of the secondary carrier image, , are the high-frequency and low-frequency wavelet coefficients respectively;

[0199] The secondary carrier image restored by inverse integer wavelet transform is decomposed into 7 bit planes, and then spliced ​​with the highest bit plane of the carrier image to reconstruct the carrier image;

[0200] In the specific implementation process, after the coefficient matrix is ​​modified, after the inverse integer wavelet transform, the restored pixel value overflow usually occurs. This is caused by pixels in the critical range, that is, pixels with pixel values ​​close to 0 and 127. The previous processing method is to add 15 to the pixels located between 0 and 15, and subtract 15 from the pixels located between 112 and 127. This preprocessing will significantly change the brightness distribution and contrast of the image, destroy the visual effect of the original image, and when the preprocessing is used on some bit planes, it will increase the damage to the visual effect of the original image and distort the original image. In view of the above situation, this method does not need to preprocess the pixel values ​​and keeps the restored pixel values ​​from overflowing. Assuming that the restored pixel values ​​are 130 and -5, 130 minus 8 is 122, and -5 plus 8 is 3. Because only the last two bits are replaced during embedding, when the amplitude of the coefficient addition and subtraction is 4, it will not affect the last two embedded data. However, during the inverse integer wavelet transform, The operation of dividing by two and rounding down is performed, so when adjusting the pixel value, you only need to adjust the addition or subtraction amplitude to 8, and the last two digits of the coefficient will not be affected.

[0201] S6. Based on the encryption and steganography method, the secret image is inversely operated to extract and restore the secret image.

[0202] Specifically, based on the encryption and steganography method, the inverse operation of the cryptanalyst image is performed to extract and restore the secret image, which specifically includes the following steps:

[0203] The encrypted image is decomposed into 8 bit planes, and the last 7 bit planes except the highest bit plane are extracted;

[0204] The extracted 7 bit planes are merged and converted into a sub-encrypted image;

[0205] Perform one-dimensional integer wavelet transform on the sub-encrypted image to obtain the coefficient matrix. The integer wavelet transform equation is as follows:

[0206] ;

[0207] ;

[0208] in , is the continuous pixel value of the secondary carrier image, , are the high-frequency and low-frequency wavelet coefficients respectively;

[0209] Split the coefficient matrix into 65536 blocks. The splitting rule is from top to bottom and from left to right. The block size is 2 bits long and 2 bits wide.

[0210] Get the first 2×2 coefficient block, convert all coefficient values ​​in the block into binary format, extract the lowest bit and the second lowest bit of the coefficient values ​​of (0, 0) and (0, 1), combine them and convert them into decimal as the quotient, extract the lowest bit and the second lowest bit of the coefficient values ​​of (1, 0) and (1, 1), combine them and convert them into decimal as the remainder, and then take the next 2×2 coefficient block until all coefficient blocks are extracted;

[0211] The quotient and remainder extracted from the same coefficient block are processed according to the quotient × 16 + remainder processing rule to calculate each pixel value of the encrypted image in the block.

[0212] Reconstructing it into an intra-block encrypted image, its function expression is as follows:

[0213] ;

[0214] in is the pixel value of the encrypted image within the block, The divisor value is 16. , are the quotient and remainder respectively;

[0215] Extract the highest bit plane of the encrypted image and divide it into 16 blocks. The splitting rule is from top to bottom and from left to right. The block size is 128 bits long and 128 bits wide.

[0216] Calculate the value of each block. The calculation rule is to add up each value in the block. The sum of the added values ​​is the value of the block. The 16 values ​​obtained are the carrier image feature values.

[0217] The carrier image feature values ​​are converted into a sequence ranging from 1 to 16 according to their magnitude, thereby obtaining a 16-bit sequence;

[0218] Split the encrypted image in the block into 16 blocks. The splitting rule is from top to bottom and from left to right. The block size is 64 bits long and 64 bits wide.

[0219] Calculate the value of each block. The calculation rule is to add up all the pixel values ​​in the block. The sum of the added values ​​is the value of the block. The 16 values ​​obtained are the secret image feature values.

[0220] According to the method in the encryption process, the carrier image feature value and the inter-block encrypted image feature value are fused to generate a 64-bit sequence;

[0221] Split the encrypted image in the block into 1024 blocks. The splitting rule is from top to bottom and from left to right. The block size is 8 bits long and 8 bits wide.

[0222] The first 8×8 pixel block sequence is connected end to end to form a ring, and the 64-bit sequence formed by the fusion of the carrier image feature value and the inter-block encrypted image feature value is used as the step sequence. The 8×8 pixel block sequence is subjected to an improved inverse step size Joseph traversal to obtain the restored pixel block sequence, and then the next 8×8 pixel block sequence is taken until all pixel blocks are restored. The function expression is as follows:

[0223] ;

[0224] in Indicates the sequence that needs to be reversed and restored. represents a sequence with a step size, Indicates the sequence after the reverse traversal restoration is completed;

[0225] The restored pixel block sequence is spliced ​​in order and reshaped into an inter-block encrypted image with the same size as the original secret image;

[0226] Split the inter-block encrypted image into 16 blocks, the splitting rule is from top to bottom and from left to right, and the block size is 64 bits long and 64 bits wide;

[0227] The 16 pixel block sequences after splitting are connected end to end to form a ring, and the 16-bit sequence obtained by using the carrier image feature value is used as the step length sequence. The 16 pixel block sequences of the inter-block encrypted image are subjected to an improved inverse step length Joseph traversal to obtain the restored pixel block sequence;

[0228] splicing and reshaping the restored pixel block sequence into a bit plane encrypted image in order;

[0229] The carrier image feature values ​​are divided into the first 8-bit array and the second 8-bit array in order, and then these two arrays are converted into sequences with a value range of 1 to 8 according to their sizes, thereby obtaining two sequences;

[0230] The variable step size Joseph traversal is improved by using the latter sequence to traverse the former sequence. The latter sequence is the step size sequence and the former sequence is the sequence to be traversed. A new sequence is obtained. The three sequences are concatenated and converted into three 8-bit decimal numbers, and then multiplied by To obtain the initial value of the Rossler chaotic system;

[0231] The processed chaotic sequence is obtained by using the Rossler chaotic system which is the same as the encryption process, and the chaotic sequence is connected end to end to form a ring.

[0232] The bit plane encrypted image is decomposed into 8 bit planes, the pixel values ​​are in the order from top to bottom and from left to right, and the bit planes are in the order from high to low, and the bit plane encrypted image is converted into a sequence in binary format;

[0233] The binary sequence of the bit plane encrypted image is connected end to end to form a ring, and the chaotic sequence is used as the step length sequence. The improved inverse step length Joseph traversal is performed on the binary sequence of the bit plane encrypted image to obtain the restored binary sequence;

[0234] The restored binary sequence is converted into a decimal sequence in order in the format of a group of 8 binary numbers, and then reshaped into a secret image in order.

[0235] The following is an analysis of various aspects of the performance of the embodiments of the present invention:

[0236] Information entropy analysis: Information entropy is a measure of the uncertainty or randomness of a set of data. In grayscale images, it can be used to measure the randomness of its grayscale values. For images with a pixel depth of 8 bits, information entropy can be calculated as follows:

[0237] ;

[0238] in, Represents grayscale value For an 8-bit ideal random grayscale image, the information entropy value is 8. The larger the entropy value, the more uniform the intensity value distribution, that is, the more irregular states between the image pixels. The information entropy calculation results of the three images encrypted by the present invention are shown in Table 1 below:

[0239] Table 1 Information entropy calculation results of three images encrypted by the present invention:

[0240] .

[0241] Histogram analysis: Histogram analysis is a common image processing technique used to understand the distribution of pixel values ​​in an image. It can help us understand the image's contrast, brightness distribution, and whether there are problems such as overexposure or underexposure. Figure 7 (a) and Figure 7 (b) The grayscale histograms of the plaintext image and the ciphertext image of woman_darkhair are given respectively. By comparing the two groups of images, it can be found that the pixel distribution of the ciphertext image is close to uniform distribution, and the statistical characteristics of the plaintext image are hidden, which verifies that the present invention can resist statistical attacks.

[0242] Correlation analysis of adjacent pixels: Correlation analysis can help us understand the structural features, texture information and edge structure of images in different directions. In a natural image, adjacent pixels (horizontally, vertically and diagonally) often have a certain degree of correlation. The following formula can be used to quantitatively calculate the correlation coefficient of adjacent pixels:

[0243] ;

[0244] ;

[0245] ;

[0246] in, , is a sequence of 2 adjacent pixels, For the correlation coefficient, 8000 pairs of adjacent pixels were randomly selected in the horizontal, vertical and diagonal directions for correlation calculation.

[0247] The calculation results are shown in Table 2 below: As can be seen from Table 2, the value of the ciphertext image is close to 0, indicating that the pixel distribution of the ciphertext image has good randomness. The comparison shows that the pixel distribution of the ciphertext image has good randomness, which verifies that the present invention can effectively reduce the high correlation between adjacent pixels of the plaintext image.

[0248] Table 2 Correlation analysis of adjacent pixels of three images encrypted by the present invention:

[0249] .

[0250] Peak signal-to-noise ratio (PSNR) analysis: PSNR is one of the commonly used indicators for measuring image quality. It is used to compare the quality difference between the original image and the image after encoding, compression or processing. The higher the PSNR value, the better the image quality. Its values ​​can be roughly divided into four categories: (1) [0,20) dB; the image quality is unacceptable; (2) [20,30) dB; the image quality is poor and noticeable; (3) [30,40) dB; the quality is acceptable but the distortion may be noticeable; (4) [40, ) dB; the image quality is excellent (that is, very close to the original image), and the PSNR value can be quantitatively calculated using the following formula:

[0251] ;

[0252] ;

[0253] in , Respectively represent the coordinate positions of the original image and the steganographic image The pixel value of , the calculation results of PSNR are shown in Table 3 below:

[0254] Table 3 Calculation results of PSNR of three images encrypted by the present invention:

[0255] .

[0256] Structural Similarity Index (SSIM) analysis: SSIM is an indicator used to measure the similarity between two images. Its value range is between -1 and 1, where 1 means that the two images are exactly the same and -1 means that the two images are completely different. The following formula can be used to quantitatively calculate the SSIM value:

[0257] ;

[0258] in and Respectively represent and The mean of and Respectively represent and The standard deviation of represent and The covariance between the two; , ,in =0.01, =0.03, =255, the calculation results of SSIM are shown in Table 4 below:

[0259] Table 4 Calculation results of SSIM of three images encrypted by the present invention:

[0260] .

[0261] The above is a very detailed description of one or more embodiments of the present invention, but the content is only a specific example of the present invention and cannot be considered to limit the scope of application of the present invention. Any other methods and changes proposed based on the content of the present invention should fall within the scope of patent protection of the present invention.

Claims

1. An image steganography method based on Rossler chaotic system and integer wavelet transform, characterized in that: The following steps are involved: S1: Extract the carrier image feature value, pass it into the Rossler chaotic system, and obtain the chaotic sequence X; S2: Use the chaotic sequence X to scramble the bit plane of the secret image to obtain the bit plane encrypted image; S3: using the carrier image feature value to perform inter-block scrambling on the bit plane encrypted image to obtain the inter-block encrypted image; then fusing the carrier image feature value with the inter-block encrypted image feature value, and using them to perform intra-block scrambling to obtain the intra-block encrypted image; S4: Perform integer wavelet transform on the carrier image to obtain a coefficient matrix; the coefficient matrix is ​​used to steganographically write the encrypted image in the block in the form of a block to obtain the steganographic coefficient matrix; S5: restoring the steganographic coefficient matrix to a carrier image by inverse integer wavelet transform, and keeping the restored pixel values ​​from overflowing, thereby obtaining a steganographic image; S6: Based on the encryption and steganography method, inverse operation is performed on the cryptanalyst image to extract and restore the secret image; In S1, the Rossler chaotic system is input to obtain the chaotic sequence X, which specifically includes the following steps: The carrier image feature values ​​are divided into the first 8-bit array and the second 8-bit array in order, and then these two arrays are converted into sequences with a value range of 1 to 8 according to their sizes, thereby obtaining two sequences; The variable-step Joseph traversal is used to improve the previous sequence using the next sequence. The next sequence is the step sequence, and the previous sequence is the sequence to be traversed. Its function expression is as follows: ; in Indicates the sequence that needs to be traversed. represents a sequence with a step size, Indicates the sequence after the traversal is completed. First, and The sequences are connected end to end in a ring, first get The first value of the sequence ,Will Sequence cyclic shift Then extract the first digit and then The sequence is also cyclically shifted After the first bit, extract the first value as the step length of the next loop shift, and repeat this cycle until the traversal is completed. All the values ​​of the sequence are obtained sequence; The two sequences obtained by the carrier image feature value and the sequence obtained by the improved variable step size Joseph traversal are concatenated in order to convert them into three 8-bit decimal numbers, and then multiplied by To obtain the initial value of the Rossler chaotic system, its expression is as follows: ; in is the initial value, The processed value; The initial value The Rossler chaotic system is passed in, and the Rossler chaotic system is iterated 500+MN*8 times, where M and N are the length and width of the secret image. Then the first 500 digits are discarded to eliminate transient effects, and the chaotic sequences X, Y and Z are obtained. The first chaotic sequence X is used as the sequence for bit plane scrambling. The differential equation expression of the Rossler chaotic system is as follows: ; in , , The parameters were set to 0.2, 0.2, and 5.7, respectively; , , is the initial value of the chaotic system.

2. According to claim 1, the image steganography method based on Rossler chaotic system and integer wavelet transform is characterized in that: In S1, extracting the carrier image feature value specifically includes the following steps: Decompose the carrier image into 8 bit planes, and extract the highest bit plane of the carrier image; The highest bit plane of the extracted carrier image is split into 16 blocks. The splitting rule is from top to bottom and from left to right. When the carrier image size is 512*512, the block size is 128 bits long and 128 bits wide. Calculate the value of each of the 16 blocks. The specific calculation rule is: add each value in each block, and the sum of the addition is the value of the block. The 16 values ​​obtained are the carrier image feature values.

3. According to claim 1, the image steganography method based on Rossler chaotic system and integer wavelet transform is characterized in that: In S2, the secret image is scrambled using the chaotic sequence X, which specifically includes the following steps: Multiply all the values ​​in the chaotic sequence X by , its equation expression is as follows: ; Where X is a chaotic sequence, For the modulo operation, is the rounding operation. Represents a decreasing array; Arrange the processed chaotic sequence X end to end into a ring; The secret image is decomposed into 8 bit planes, with pixel values ​​in order from top to bottom and from left to right, and bit planes in order from high to low, to convert the secret image into a sequence in binary format; The binary sequence of the secret image is connected end to end to form a ring, and the chaotic sequence is used as the step length sequence. The improved variable step length Joseph traversal is performed on the binary sequence of the secret image to obtain the scrambled binary sequence; Convert the scrambled binary sequence into a decimal sequence in order in the format of 8-bit binary numbers; The converted decimal sequence is reshaped in order into a bit-plane encrypted image of the same size as the secret image.

4. According to claim 1, the image steganography method based on Rossler chaotic system and integer wavelet transform is characterized in that: In S3, the inter-block scrambling of the bit plane encrypted image using the carrier image characteristic value specifically includes the following steps: The carrier image feature values ​​are converted into a sequence ranging from 1 to 16 according to their magnitude, thereby obtaining a 16-bit sequence; Split the bit plane encrypted image into 16 pixel blocks. The splitting rule is from top to bottom and from left to right. When the size of the bit plane encrypted image is 256*256, the size of the block is 64 bits long and 64 bits wide. The 16 pixel block sequences after splitting are connected end to end to form a ring, and the 16-bit sequence obtained by using the carrier image feature value is used as the step sequence. The 16 pixel block sequences of the bit plane encrypted image are subjected to an improved variable step Joseph traversal to obtain the scrambled pixel block sequence; The scrambled pixel block sequence is concatenated in order and reshaped into an inter-block encrypted image with the same size as the original secret image; The method for extracting the inter-block encrypted image feature value specifically includes the following steps: Splitting the inter-block encrypted image into 16 blocks, with the splitting rule being from top to bottom and from left to right, and the block size being 64 bits in length and 64 bits in width; Calculate the value of each block. The calculation rule is to add up all the pixel values ​​in the block. The sum of the added values ​​is the value of the block. The 16 values ​​obtained are the inter-block encrypted image feature values.

5. According to claim 1, the image steganography method based on Rossler chaotic system and integer wavelet transform is characterized in that: In S3, the block is scrambled, and an encrypted image is obtained, which specifically includes the following steps: The carrier image feature values ​​are converted into a sequence with a value range of 1 to 16 according to their size, thus obtaining a 16-bit sequence named sequence; The inter-block encrypted image feature values ​​are converted into a sequence with a value range of 1 to 16 according to their size, thereby obtaining a 16-bit sequence named sequence; Multiply the elements in the sequence by 4 to get sequence, Multiply the elements in the sequence by 4 and then subtract 1 to get sequence, Multiply the elements in the sequence by 4 and then subtract 2 to get sequence, Multiply the elements in the sequence by 4 and then subtract 3 to get The function expression of the sequence is as follows: ; in is an element in a sequence; Will , , , The sequence is taken one element at a time in order, and they are concatenated alternately into a 64-bit sequence; Split the inter-block encrypted image into 1024 blocks, the splitting rule is from top to bottom and from left to right, and the block size is 8 bits long and 8 bits wide; Arrange the first 8×8 pixel block sequence end to end in a ring, use the 64-bit sequence formed by the fusion of the carrier image feature value and the inter-block encrypted image feature value as the step sequence, perform the improved variable step Joseph traversal on the 8×8 pixel block sequence to obtain the scrambled pixel block sequence, and then take the next 8×8 pixel block sequence until all pixel blocks are scrambled; The scrambled pixel block sequence is concatenated in order and reshaped into an intra-block encrypted image with the same size as the original secret image.

6. The image steganography method based on Rossler chaotic system and integer wavelet transform according to claim 1, characterized in that: In S4, integer wavelet transform is performed on the carrier image to obtain a coefficient matrix, which specifically includes the following steps: Decompose the carrier image into 8 bit planes, and extract the last 7 bit planes except the highest bit plane; The extracted 7 bit planes are merged and converted into a secondary carrier image; Perform a one-dimensional integer wavelet transform on the secondary carrier image to obtain the coefficient matrix. The integer wavelet transform equation is as follows: ; ; in , is the continuous pixel value of the secondary carrier image, , They are high-frequency wavelet coefficients and low-frequency wavelet coefficients respectively.

7. The image steganography method based on Rossler chaotic system and integer wavelet transform according to claim 1, characterized in that: In S4, encrypting the image in the steganographic block specifically includes the following steps: Split the coefficient matrix into 65536 blocks. The splitting rule is from top to bottom and from left to right. The block size is 2 bits long and 2 bits wide. Extract each pixel value of the encrypted image in the block in order from top to bottom and from left to right, divide the pixel value by 16, and obtain the remainder and quotient. The function expression is as follows: ; in is the pixel value of the encrypted image within the block, The divisor value is 16. , are the quotient and remainder respectively; Since the pixel value range of the grayscale image is 0~255, the obtained quotient and remainder values ​​are both in the range of 0~15, which can be represented by 4-bit binary, and are converted into binary format; Get the first 2×2 coefficient block, convert all coefficient values ​​in the block into binary format, replace the first two binary digits of the quotient with the lowest and second lowest bits of the (0, 0) coefficient, replace the last two binary digits of the quotient with the lowest and second lowest bits of the (0, 1) coefficient, replace the first two binary digits of the remainder with the lowest and second lowest bits of the (1, 0) coefficient, replace the last two binary digits of the remainder with the lowest and second lowest bits of the (1, 1) coefficient, and then take the next 2×2 coefficient block until all coefficient blocks are steganographically written.

8. The image steganography method based on Rossler chaotic system and integer wavelet transform according to claim 1, characterized in that: The S5 specifically comprises the following steps: The one-dimensional inverse integer wavelet transform is performed on the coefficient matrix after steganography. The inverse integer wavelet transform equation is as follows: ; ; If there is a pixel value overflow during the inverse transformation process, it needs to be adjusted. If the restored pixel value is less than 0, add 8. If the restored pixel value is greater than 127, subtract 8. The function expression is as follows: ; in , is the continuous pixel value of the secondary carrier image, , are the high-frequency and low-frequency wavelet coefficients respectively; The secondary carrier image restored by inverse integer wavelet transform is decomposed into 7 bit planes, and then spliced ​​with the highest bit plane of the carrier image to reconstruct the encrypted image.

9. The image steganography method based on Rossler chaotic system and integer wavelet transform according to claim 1, characterized in that: The S6 specifically comprises the following steps: The encrypted image is decomposed into 8 bit planes, and the last 7 bit planes except the highest bit plane are extracted; The extracted 7 bit planes are merged and converted into a sub-encrypted image; Perform one-dimensional integer wavelet transform on the sub-encrypted image to obtain the coefficient matrix. The integer wavelet transform equation is as follows: ; ; in , are the continuous pixel values ​​of the secondary carrier image, , are the high-frequency and low-frequency wavelet coefficients respectively; Split the coefficient matrix into 65536 blocks. The splitting rule is from top to bottom and from left to right. The block size is 2 bits long and 2 bits wide. Get the first 2×2 coefficient block, convert all coefficient values ​​in the block into binary format, extract the lowest bit and the second lowest bit of the coefficient values ​​of (0, 0) and (0, 1), combine them and convert them into decimal as the quotient, extract the lowest bit and the second lowest bit of the coefficient values ​​of (1, 0) and (1, 1), combine them and convert them into decimal as the remainder, and then take the next 2×2 coefficient block until all coefficient blocks are extracted; The quotient and remainder extracted from the same coefficient block are processed according to the quotient × 16 + remainder processing rule to calculate each pixel value of the encrypted image in the block. Reconstructing it into an intra-block encrypted image, its function expression is as follows: ; in is the pixel value of the encrypted image within the block, The divisor value is 16. , are the quotient and remainder respectively; Extract the highest bit plane of the encrypted image and divide it into 16 blocks. The splitting rule is from top to bottom and from left to right. The block size is 128 bits long and 128 bits wide. Calculate the value of each block. The calculation rule is to add up each value in the block. The sum of the added values ​​is the value of the block. The 16 values ​​obtained are the carrier image feature values. The carrier image feature values ​​are converted into a sequence ranging from 1 to 16 according to their magnitude, thereby obtaining a 16-bit sequence; Split the encrypted image in the block into 16 blocks. The splitting rule is from top to bottom and from left to right. The block size is 64 bits long and 64 bits wide. Calculate the value of each block. The calculation rule is to add up all the pixel values ​​in the block. The sum of the added values ​​is the value of the block. The 16 values ​​obtained are the secret image feature values. According to the method in the encryption process, the carrier image feature value and the inter-block encrypted image feature value are fused to generate a 64-bit sequence; Split the encrypted image in the block into 1024 blocks. The splitting rule is from top to bottom and from left to right. The block size is 8 bits long and 8 bits wide. The first 8×8 pixel block sequence is connected end to end to form a ring, and the 64-bit sequence formed by the fusion of the carrier image feature value and the inter-block encrypted image feature value is used as the step sequence. The 8×8 pixel block sequence is subjected to an improved inverse step size Joseph traversal to obtain the restored pixel block sequence, and then the next 8×8 pixel block sequence is taken until all pixel blocks are restored. The function expression is as follows: ; in Indicates the sequence that needs to be reversed and restored. represents a sequence with a step size, Indicates the sequence after the reverse traversal restoration is completed; The restored pixel block sequence is spliced ​​in order and reshaped into an inter-block encrypted image with the same size as the original secret image; Split the inter-block encrypted image into 16 blocks, the splitting rule is from top to bottom and from left to right, and the block size is 64 bits long and 64 bits wide; The 16 pixel block sequences after splitting are connected end to end to form a ring, and the 16-bit sequence obtained by using the carrier image feature value is used as the step length sequence. The 16 pixel block sequences of the inter-block encrypted image are subjected to an improved inverse step length Joseph traversal to obtain the restored pixel block sequence; splicing and reshaping the restored pixel block sequence into a bit plane encrypted image in order; The carrier image feature values ​​are divided into the first 8-bit array and the second 8-bit array in order, and then these two arrays are converted into sequences with a value range of 1 to 8 according to their sizes, thereby obtaining two sequences; The variable step size Joseph traversal is improved by using the latter sequence to traverse the former sequence. The latter sequence is the step size sequence and the former sequence is the sequence to be traversed. A new sequence is obtained. The three sequences are concatenated and converted into three 8-bit decimal numbers, and then multiplied by To obtain the initial value of the Rossler chaotic system; The processed chaotic sequence is obtained by using the Rossler chaotic system which is the same as the encryption process, and the chaotic sequence is connected end to end to form a ring. The bit plane encrypted image is decomposed into 8 bit planes, the pixel values ​​are in the order from top to bottom and from left to right, and the bit planes are in the order from high to low, and the bit plane encrypted image is converted into a sequence in binary format; The binary sequence of the bit plane encrypted image is connected end to end to form a ring, and the chaotic sequence is used as the step length sequence. The improved inverse step length Joseph traversal is performed on the binary sequence of the bit plane encrypted image to obtain the restored binary sequence; The restored binary sequence is converted into a decimal sequence in order in the format of a group of 8 binary numbers, and then reshaped into a secret image in order.