A monkey king evolutionary algorithm-based JPEG image multi-carrier steganography method
By optimizing multi-carrier image steganography using the Monkey King Evolution Algorithm and a steganography matrix generated from user passwords, the problem of limited embedding capacity and easy detection of secret information in multi-carrier images is solved, achieving efficient and secure allocation and extraction of secret information.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- FUJIAN NORCA TECH
- Filing Date
- 2025-11-07
- Publication Date
- 2026-07-07
AI Technical Summary
In existing multi-carrier image steganography techniques, the embedding capacity of secret information is limited by a single carrier image, and the traditional uniform distribution strategy makes the steganographic image easy to detect.
The Monkey King Evolutionary Algorithm is used to perform non-uniform dynamic allocation of secret information. Combined with the steganography matrix generation based on user password and the (7,4) Hamming code steganography algorithm, the embedding capacity and feature difference of each carrier image are optimized, and the feature difference between the carrier and the secret image is minimized.
It improves the efficiency of embedding secret information, reduces the probability of detected secret images, enhances security, and enables a user-controllable steganography process.
Smart Images

Figure CN121547538B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of secure communication technology, and specifically relates to a multi-carrier steganography method for JPEG images based on the Monkey King Evolutionary Algorithm. Background Technology
[0002] Current mainstream image steganography techniques primarily focus on single-carrier images. However, the capacity for steganographic embedding is often limited by the size of a single carrier image. If a large amount of secret information needs to be embedded, embedding such information in a single carrier image is easily detected by third parties. In fact, with the rapid development of the internet and social networks, the act of uploading and downloading images in bulk is very common. Therefore, multi-carrier image steganography techniques have attracted widespread attention in recent years.
[0003] Due to the feature differences between the various carrier images in multi-carrier image steganography, the actual secure embedding capacity of each image varies. Traditional multi-carrier steganography strategies distribute the secret information evenly across each carrier image. This even distribution scheme does not consider the features of each carrier image, making the encrypted image easy to detect. Summary of the Invention
[0004] The purpose of this invention is to provide a multi-carrier steganography method for JPEG images based on the Monkey King Evolutionary Algorithm, which can solve the problem of efficient distribution of secret information among multiple carrier images, thereby minimizing the detection of secret images.
[0005] To achieve the above objectives, the solution of the present invention is:
[0006] A multi-carrier steganography method for JPEG images based on the Monkey King Evolutionary Algorithm is used to embed secret information into the image; it includes the following steps:
[0007] Step 1: Based on the user-input password and the error correction matrix H based on the (7,4) Hamming code, process the N images to obtain N carrier images, where the matrix of the i-th carrier image is H. i ′, i = 1, 2, ..., N;
[0008] Step 2: Convert the embedded secret information Secret into binary form and encrypt it to obtain a binary sequence M = (m1, m2, ..., m...). L L is the length of the binary sequence M;
[0009] Step 3: With the goal of minimizing the difference between the feature set of the carrier image and the feature set of the secret image, the Monkey King Evolutionary Algorithm is used to perform non-uniform dynamic allocation of the payload size of each carrier image. Based on the allocation result, the secret information is segmented and written into the corresponding carrier image to obtain the secret image set.
[0010] The specific content of step 1 above is as follows:
[0011] Step 11: After encoding the user-input password, use a random number algorithm to obtain an 8N-bit large integer T, then divide it into N large integers T′ = (t1, t2, ..., tn) in 8-bit units to obtain N large integers T′ = (t1, t2, ..., tn) N );
[0012] Step 12: Perform column swapping on each image based on the large integer to obtain N carrier images; specifically including,
[0013] For the i-th image, calculate its Q-value. R = mod(t) i ,7),t i ∈T′; Swap the column corresponding to R in the error correction matrix H based on (7,4) Hamming code with the first column, and then determine if its Q value is greater than 7, according to Update the Q value, where Q0 is the previous Q value, and obtain the new R′ = mod(Q,7). Swap the column corresponding to R′ in the current error correction matrix with the first column. Repeat this step until the Q value is less than or equal to 7, and use the image at this time as the i-th carrier image.
[0014] Before step 1 above, it also includes confirming that the embedding capacity of the N images meets the requirements. The specific process is as follows:
[0015] Step 101: Obtain carrier data for N images.
[0016] C=((c 1,1 ,c 1,2 ,...,c 1,l1 ),...,(c i,1 ,c i,2 ,...,c i,li ),..,(c N,1 ,c N,2 ,...,c 1,lN ))
[0017] Among them, c i,li Let c be the li-th element of the i-th image. i,li ∈[0,1];
[0018] Step 102: Calculate the embedding capacity of each image according to the following formula.
[0019]
[0020] Determine the minimum value of (mc1, mc2, ..., mc) N If the number of images is greater than or equal to the effective information length threshold, the embedding capacity of the N images is confirmed to meet the requirements.
[0021] The specific steps of step 3 above are as follows:
[0022] Step 31: With the goal of minimizing the difference between the carrier image feature set and the carrier image feature set, the optimization objective for the load allocation problem is designed as follows:
[0023]
[0024] The constraints are as follows:
[0025]
[0026] in, Represents the payload of the i-th carrier image, i.e., the length of the allocated secret information; MC i This represents the maximum embedding size of the i-th carrier image. Let represent the feature set of the i-th carrier image and the corresponding feature set of the carrier image, respectively, and MMD represent the maximum average difference;
[0027] Step 32: Solve the load allocation problem using the Monkey King Evolutionary Algorithm. The specific steps are as follows:
[0028] Step 321: Initialize the particle swarm, set the population size to ps, and randomly initialize the positions of particles that meet the constraints. The fluctuation coefficient FC sets the historical best solution X for each particle in the current population. pbest and the global optimal solution X of the population gbest ;
[0029] Step 322: Update all particles in the population according to the following formula.
[0030]
[0031] In the formula:
[0032] and To randomly shuffle and rearrange The two different matrices generated by the row vectors in the middle. Let be the coordinate matrix of all particles in the population.
[0033] This is the globally optimal coordinate matrix in the Gth iteration.
[0034] FC is the fluctuation coefficient of the development matrix. max =0.9, FC min =0.1;
[0035] iter, iter maxThese are the current iteration number and the maximum iteration number, respectively; G max The maximum number of iterations is given by `rand`, which is a random value between [0,1].
[0036] Multiply the corresponding elements of the matrix;
[0037] M is the transformation matrix. The binary inverse of the transformation matrix M;
[0038] Step 323: Calculate the fitness value f for each particle, that is, calculate the effective payload allocation strategy for each particle.
[0039] Step 324: Based on the fitness value f of each particle, update the historical best solution X of each particle in the current population. pbest and the global optimal solution X of the population gbest ;
[0040] Step 325: Determine if the iteration stopping criterion has been met. If the stopping criterion has been met, stop the iteration and output the load density map set corresponding to the optimal load allocation. Otherwise, go to step 322.
[0041] In step 322 above, the process of generating the transformation matrix M is as follows:
[0042] Matrix M is generated by multiplying the orthogonal eigenvector matrix P and the diagonal eigenvalue matrix. tmp ;
[0043] Random transformation M tmp The elements of each dimension of the row vector;
[0044] Randomly arrange the row vectors while keeping the elements of each row vector unchanged.
[0045] The specific process of step 323 above is as follows:
[0046] Step 3231, assume that the i-th particle in the G-th iteration is: X G,i ={x1,x2,...,x N Divide the binary sequence M into N groups, denoted as sequence M. Then particle X G,i Element encoding Convert to 32-bit binary form and encrypt to obtain Then, it is added to the M′ sequence to obtain the final hidden sequence M″:
[0047] Step 3232, the sequence to be hidden in the i-th carrier image is Next, the entropy decoding of the i-th image data in JPEG compression is performed. In the DCT domain of each 8×8 sub-block, the least significant bit of the intermediate frequency quantization coefficient is selected and arranged in its original order to form the carrier sequence cover. i Based on matrix H i Secret information is embedded using the (7,4) Hamming code steganography algorithm.
[0048] In step 3232 above, the principle of embedding secret information using the (7,4) Hamming code steganography algorithm is as follows:
[0049] The embedded information dm is segmented into groups of 4. i denoted as S i ={s1,s2,s3,s4}; the carrier sequence is divided into groups of 8 bits. i , denoted as D i ={d1,d2,d3,d4,d5,d6,d7,d8}, XOR D i Extract all data bits to obtain the result.
[0050]
[0051] In the formula: · represents matrix multiplication. This is an XOR operation; it transforms the calculation result [xyz]. T Convert to decimal number re, and flip the re-th data bit in {d1,d2,d3,d4,d5,d6,d7} according to the result. If re = 0, leave it unchanged.
[0052] Recalculate If t=1, then flip the d8 data bits; otherwise, leave the d8 data bits unchanged.
[0053] Using the embedded D i The least significant bit of the corresponding quantization coefficient is directly replaced, and the modified quantization coefficient is entropy encoded to obtain the corresponding dense image.
[0054] A multi-carrier steganography method for JPEG images based on the Monkey King Evolutionary Algorithm is used to extract secret information from a steganography image set; it includes the following steps:
[0055] Step 1: For the i-th encrypted image, extract the first 32 bits of embedded information based on the (7,4) Hamming code steganography algorithm, and decrypt and convert it to obtain the length Le of the secret information. i Based on the (7,4) Hamming code steganography algorithm, extract the secret information sequence of the corresponding length. Where i = 1, 2, ..., N, the encrypted image set contains N encrypted images;
[0056] Step 2: Based on the user-input password and the error correction matrix H based on the (7,4) Hamming code, obtain the matrix H′ of the i-th encrypted image; perform entropy decoding on the data of the i-th encrypted image, and generate the embedded encrypted carrier vector cover in each 8×8 sub-block DCT domain. i ′, sequentially from cover i Select 8 bits of data to form a sequence D. i = {d1′,d2′,d3′,d4′,d5′,d6′,d7′,d8′}, and extract the 4-bit secret information [x′,y′,z′,v′], repeating until Le is extracted. i Secret information;
[0057] Step 3: Concatenate each group of elements in M″ to obtain the complete sequence. Then, after decryption and conversion, the secret information embedded in the coded image set is obtained.
[0058] In step 2 above, 4 bits of secret information are extracted using the following method:
[0059] The following formula is used to extract the 3-bit secret information [x′,y′,z′].
[0060]
[0061] Then, the fourth secret information v′ is extracted using the following formula.
[0062]
[0063] After adopting the above solution, the beneficial effects of the present invention are reflected in the following aspects:
[0064] (1) Maximum Mean Difference (MMD) can measure the difference between the feature sets of the carrier image and the encrypted image. The smaller the MMD value, the closer the features of the two are, and the more difficult they are to detect during transmission. Based on this, this invention constructs a model for minimizing the feature difference between the carrier and the encrypted image, and designs a multi-carrier steganography method for JPEG images based on the Monkey King Evolutionary Algorithm. This method seeks the optimal payload allocation scheme, distributing the payload non-uniformly to each carrier image to improve the payload allocation efficiency.
[0065] (2) The present invention designs a password-based steganography matrix generation strategy, which maps the generation of the steganography matrix to the user key, so that the user can control the steganography process and solve the security risks that most existing steganography algorithms are in the hands of the algorithm designer and the user has insufficient participation.
[0066] (3) This invention first reduces the probability of steganography being detected by minimizing the MMD model, and then combines the password-based steganography matrix generation strategy to solve the security risks of algorithm designers controlling the core, forming a dual security system of "low detectability + user controllability" and improving the overall security of multi-carrier steganography. Attached Figure Description
[0067] Figure 1 This is a flowchart of an embodiment of the present invention. Detailed Implementation
[0068] The technical solution and beneficial effects of the present invention will be described in detail below with reference to the accompanying drawings.
[0069] like Figure 1 As shown, this invention provides a multi-carrier steganography method for JPEG images based on the Monkey King Evolutionary Algorithm, which can be applied to the information embedding stage and the information extraction stage, respectively, and will be described below.
[0070] 1. Information Embedding Stage
[0071] (1) Input N images and extract the carrier data for each image:
[0072] C=((c 1,1 ,c 1,2 ,...,c 1,l1 ),...,(c i,1 ,c i,2 ,...,c i,li ),..,(c N,1 ,c N,2 ,...,c 1,lN ), where c i,li Let c be the li-th element of the i-th image. i,li ∈[0,1];
[0073] Calculate the maximum embedding capacity for each image:
[0074]
[0075] The maximum total embedding amount is:
[0076] Determine the minimum value of (mc1, mc2, ..., mc) N If the value is greater than or equal to 32, proceed to the next step; otherwise, it means that the maximum embedding capacity of the image does not meet the requirements, and the algorithm ends.
[0077] (2) Convert the secret information to be embedded into binary form and encrypt it to obtain the binary sequence M = (m1, m2, ..., m L L is the length of the binary sequence M;
[0078] (3) Password-based steganography matrix generation strategy. The user-input password is encoded in UTF-8, and the encoded result is then input into a random number algorithm to generate an 8N-bit large integer T. This T is then divided into N large integers T′=(t1,t2,...,t) in 8-bit increments. N For example: N=3, T=254234481235941845627189, then T′=(25423448,12359418,45627189);
[0079] Based on H (H is the error correction matrix of (7,4) Hamming code), ), calculate the matrix H corresponding to the i-th image. i Let H′ be denoted as H′=(H1′,H2′,...,H′). N ), H i ′∈H′,H i The calculation method for ′ is as follows:
[0080] For the i-th image, calculate R = mod(t) i ,7),t i ∈T′, swap the column corresponding to R in H with the first column. If Q > 7, continue using... Then obtain the new R′ = mod(Q, 7), perform column swapping, and repeat this step until Q”'... < 7, thus obtaining the new H′. i Used for steganography of the i-th image in the future.
[0081] (4) Dynamic Load Allocation: A dynamic load allocation algorithm is designed based on the Monkey King Evolutionary Algorithm. According to the principle of minimizing the difference between the carrier image feature set and the carrier image feature set, the load size of each carrier image is dynamically and non-uniformly allocated (load refers to how many bits of secret information are embedded in each image). The load allocation problem is expressed as:
[0082] Optimization goal:
[0083] Constraints:
[0084]
[0085] In the formula: Let L represent the payload of the i-th carrier graph, i.e., the length of the allocated secret information, and MC represent the length of the information to be embedded. i This represents the maximum embedding size of the i-th carrier image. Let represent the feature set of the i-th carrier image and the corresponding feature set of the carrier image, respectively, and MMD represent the maximum average difference.
[0086] The following are the specific steps for designing a monkey king evolutionary algorithm to solve the optimization problem:
[0087] 1) Initialize the particle swarm, set the population size to ps, and randomly initialize the positions of particles that meet the constraints. The fluctuation coefficient FC sets the historical best solution X for each particle in the current population. pbest and the global optimal solution X of the population gbest ;
[0088] 2) Update all particles in the population according to the following formula:
[0089]
[0090] In the formula:
[0091] and Randomly shuffle and rearrange The two different matrices generated by the row vectors in the middle. Let be the coordinate matrix of all particles in the population.
[0092] The globally optimal coordinate matrix in the Gth iteration.
[0093] FC: Fluctuation coefficient of the development matrix, FC max =0.9 and FC min =0.1, iter, iter max : Current iteration number and maximum iteration number; G max The maximum number of iterations is given by `rand`, which is a random value between [0,1].
[0094] : Element-wise multiplication of matrices;
[0095] M and Transformation matrix and the binary inverse of M. M generation process: First, matrix M is generated by multiplying the orthogonal eigenvector matrix P and the diagonal eigenvalue matrix. tmp Then, randomly transform M tmp The elements of each dimension of the row vector are determined; finally, the row vectors are randomly arranged while keeping the elements of each row vector unchanged, as shown in the following formula:
[0096]
[0097] 3) Calculate the fitness value of each particle, that is, calculate the effective payload allocation strategy for each particle. The specific steps are as follows:
[0098] A. Assume that the i-th particle in the G-th iteration is: X G,i ={x1,x2,...,x N Divide M into N groups, denoted as} Then X G,i Element encoding To convert to 32-bit binary form and encrypt it, we can obtain Then, it is added to the M′ sequence to obtain the final hidden sequence M″:
[0099]
[0100] B. The sequence to be hidden for the i-th carrier image is: Next, the entropy decoding of the i-th image data in JPEG compression is performed. In the DCT domain of each 8×8 sub-block, the least significant bit of the intermediate frequency quantization coefficient is selected and arranged in its original order to form the carrier sequence cover. i H′, generated based on the password-based steganography matrix generation strategy in step (3), is embedded with secret information using the (7,4) Hamming code steganography algorithm. The principle of the steganography algorithm is as follows:
[0101] The embedded information dm is segmented into groups of 4. i denoted as S i ={s1,s2,s3,s4}; the carrier sequence is divided into groups of 8 bits. i , denoted as D i ={d1,d2,d3,d4,d5,d6,d7,d8}, XOR D i Extract all data bits to obtain the result.
[0102]
[0103] In the formula: · represents matrix multiplication. This is an XOR operation that transforms the calculation result [xyz]. T Convert to decimal number re, and flip the re-th data bit in {d1,d2,d3,d4,d5,d6,d7} according to the result. If re = 0, leave it unchanged.
[0104] Recalculate If t=1, then flip the d8 data bits; otherwise, leave the d8 data bits unchanged.
[0105] Using the embedded D i The least significant bit of the corresponding quantization coefficient is directly replaced, and the modified quantization coefficient is entropy encoded to obtain the corresponding dense image.
[0106] 4) Based on the fitness value f of each particle, update the historical best solution X of each particle in the current population.pbest and the global optimal solution X of the population gbest ;
[0107] 5) Determine if the iteration stopping criterion has been met. If the stopping criterion has been met, stop the iteration and output the load density map corresponding to the optimal load allocation. Otherwise, go to step 2).
[0108] 2. Information extraction algorithm
[0109] (1) The user inputs the corresponding password, and generates the corresponding H′ according to step (3) in the information embedding algorithm for subsequent information extraction;
[0110] (2) Input N encrypted images. First, extract the first 32 bits of embedded information from the i-th encrypted image based on the (7,4) Hamming code steganography algorithm. After decryption and conversion, obtain the length Le of the secret information. i ; and then according to Le i Based on the (7,4) Hamming code steganography algorithm, the secret information sequence of corresponding length is extracted. Extraction principle based on (7,4) Hamming code steganography algorithm:
[0111] Assume the matrix corresponding to the i-th dense image is H. i For the entropy decoding of the i-th densely packed image data, generate the embedded densely packed carrier vector cover in the DCT domain of each 8×8 sub-block using the same method as during embedding. i ′. From cover in sequence i Select 8 bits of data to form a sequence D. i ={d′1,d′2,d′3,d′4,d′5,d′6,d′7,d′8}, extract the 4-bit secret information [x′,y′,z′,v′] using the following method: First, use the formula [x′ y′ z′] T =H′ i Extract 3 bits of secret information [x′, y′, z′] from [d′1 d′2 d′3 d′4 d′5 d′6 d′7]; extract the 4th bit of secret information v′ using the formula: Repeat the above steps until Le is extracted. i Secret information.
[0112] (3) Concatenate each group of elements in M″ into a complete sequence. Then, after decryption and conversion, the original secret information to be embedded, Secret′, is obtained.
[0113] In the several embodiments provided by this invention, it should be understood that the disclosed devices and methods can be implemented in other ways. The device embodiments described above are merely illustrative. For example, the division of units is only a logical functional division, and in actual implementation, there may be other division methods, such as: multiple units or components can be combined, or integrated into another system, or some features can be ignored or not executed. In addition, the coupling, direct coupling, or communication connection between the various components shown or discussed can be through some interfaces, and the indirect coupling or communication connection between devices or units can be electrical, mechanical, or other forms.
[0114] Those skilled in the art will understand that embodiments of the present invention can be provided as methods, systems, or computer program products. Therefore, the present invention can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present invention can take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code. The solutions in the embodiments of the present invention can be implemented using various computer languages, such as the object-oriented programming language Java and the interpreted scripting language JavaScript.
[0115] This invention is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart illustrations and / or block diagrams. Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.
[0116] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.
[0117] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.
[0118] Although preferred embodiments of the invention have been described, those skilled in the art, upon learning the basic inventive concept, can make other changes and modifications to these embodiments. Therefore, the appended claims are intended to be interpreted as including both the preferred embodiments and all changes and modifications falling within the scope of the invention.
[0119] Obviously, those skilled in the art can make various modifications and variations to this invention without departing from its spirit and scope. Therefore, if these modifications and variations fall within the scope of the claims of this invention and their equivalents, this invention also intends to include these modifications and variations.
Claims
1. A multi-carrier steganography method for JPEG images based on the Monkey King Evolutionary Algorithm, used to embed secret information into images; characterized in that... Includes the following steps: Step 1: Based on the user-input password and the error correction matrix H based on the (7,4) Hamming code, process the N images to obtain N carrier images, where the matrix of the i-th carrier image is... , i=1,2,…,N; Step 2: Convert the embedded secret information (Secret) into binary form and encrypt it to obtain a binary sequence. , For the binary sequence Length; Step 3: With the goal of minimizing the difference between the feature set of the carrier image and the feature set of the secret image, the Monkey King Evolutionary Algorithm is used to perform non-uniform dynamic allocation of the payload size of each carrier image. Based on the allocation result, the secret information is segmented and written into the corresponding carrier image to obtain the secret image set. The specific content of step 1 is as follows: Step 11: After encoding the user-input password, a random number algorithm is used to obtain a... Big integer Then divide it into 8-bit units to obtain Large integers ; Step 12: Perform column swapping on each image based on the large integer to obtain N carrier images; specifically including, For the i-th image, calculate its Q-value. , , The error correction matrix based on (7,4) Hamming code will be used. middle Swap the corresponding column with the first column, and then determine if its Q value is greater than 7. Update Q value, Given the previous Q value, obtain the new one. , in the current error correction matrix Swap the corresponding column with the first column; repeat this step until the Q value is less than or equal to 7, and use the image at this point as the first column. Zhang carrier image.
2. The JPEG image multi-carrier steganography method based on the Monkey King Evolutionary Algorithm as described in claim 1, characterized in that: Before step 1, it is also necessary to confirm that the embedding capacity of the N images meets the requirements. The specific process is as follows: Step 101: Obtain carrier data for N images. ; in, For the i-th image, the... Bit element, ; Step 102: Calculate the embedding capacity of each image according to the following formula. ; judge If the embedding capacity of the N images is greater than or equal to the effective information length threshold, it is confirmed that the embedding capacity meets the requirements.
3. The JPEG image multi-carrier steganography method based on the Monkey King Evolutionary Algorithm as described in claim 1, characterized in that: The specific steps of step 3 are as follows: Step 31: With the goal of minimizing the difference between the carrier image feature set and the carrier image feature set, the optimization objective for the load allocation problem is designed as follows: ; The constraints are as follows: ; ; in, This represents the payload of the i-th carrier image, i.e., the length of the allocated secret information; This represents the maximum embedding size of the i-th carrier image. , Let i represent the feature set of the i-th carrier image and the corresponding feature set of the carrier image, respectively. Indicates the maximum average difference; Step 32: Solve the load allocation problem using the Monkey King Evolutionary Algorithm. The specific steps are as follows: Step 321, initialize the particle swarm and set the population size to [value missing]. Randomly initialize particle positions that meet the constraints. Volatility coefficient Set the historical best solution for each particle in the current population. and the global optimal solution of the population ; Step 322: Update all particles in the population according to the following formula. ; ; ; ; In the formula: and To randomly shuffle and rearrange The two different matrices generated by the row vectors in the middle. Let be the coordinate matrix of all particles in the population. ; This is the globally optimal coordinate matrix in the Gth iteration. ; FC is the fluctuation coefficient of the development matrix. max =0.9, FC min =0.1; iter, iter max These are the current iteration number and the maximum iteration number, respectively; G max The maximum number of iterations is given by `rand`, which is a random value between [0,1]. Multiply the corresponding elements of the matrix; M is the transformation matrix. The binary inverse of the transformation matrix M; Step 323: Calculate the fitness value for each particle. That is, under the payload allocation strategy for each particle, the calculation ; Step 324, based on the fitness value of each particle Update the historical best solution for each particle in the current population. and the global optimal solution of the population ; Step 325: Determine whether the iteration stopping criterion has been met. If the stopping criterion has been met, stop the iteration and output the load density map set corresponding to the optimal load allocation; otherwise, go to step 322.
4. The JPEG image multi-carrier steganography method based on the Monkey King Evolutionary Algorithm as described in claim 3, characterized in that: In step 322, the process of generating the transformation matrix M is as follows: A matrix is generated by multiplying the orthogonal eigenvector matrix P and the diagonal eigenvalue matrix. ; Random transformation The elements of each dimension of the row vector; Randomly arrange the row vectors while keeping the elements of each row vector unchanged.
5. The JPEG image multi-carrier steganography method based on the Monkey King Evolutionary Algorithm as described in claim 3, characterized in that: The specific process of step 323 is as follows: Step 3231, assuming the first In the nth iteration The number of particles is: , binary sequence Cut into A group, denoted as a sequence Then the particles Element encoding Convert to 32-bit binary form and encrypt to obtain , then added The sequence yields the final hidden sequence. : ; Step 3232, the The carrier image to be hidden sequence is: Then, the JPEG compression... Image data entropy decoding, in each In the DCT domain of the sub-block, the least significant bit of the intermediate frequency quantization coefficient is selected and arranged in its original order to form the carrier sequence. Based on matrix Secret information is embedded using the (7,4) Hamming code steganography algorithm.
6. The JPEG image multi-carrier steganography method based on the Monkey King Evolutionary Algorithm as described in claim 5, characterized in that: In step 3232, the principle of embedding secret information using the (7,4) Hamming code steganography algorithm is as follows: The embedded information is segmented into groups of four. , recorded as ; The vector sequence is divided into groups of 8. , recorded as XOR Extract all data bits to obtain the result. ; ; In the formula: For matrix multiplication, This is an XOR operation; it transforms the calculation result. Convert to decimal number Flip based on the result value The first in Bit data bits, if If it remains unchanged; Recalculate ,like Then flip Data bits, otherwise, keep The data bits remain unchanged; Use the embedded The least significant bit of the corresponding quantization coefficient is directly replaced, and the modified quantization coefficient is entropy encoded to obtain the corresponding dense image.
7. A multi-carrier steganography method for JPEG images based on the Monkey King Evolutionary Algorithm, used to extract secret information from a steganography dataset; characterized in that... Includes the following steps: Step 1: For the i-th encrypted image in the encrypted image set, extract the first 32 bits of embedded information based on the (7,4) Hamming code steganography algorithm, and then decrypt and convert it to obtain the length of the secret information. Based on the (7,4) Hamming code steganography algorithm, extract the secret information sequence of the corresponding length. Where i = 1, 2, ..., N, the encrypted image set contains N encrypted images; Step 2: Based on the user-input password and the error correction matrix H based on the (7,4) Hamming code, obtain the matrix of the i-th encrypted image. Entropy decoding is performed on the data of the i-th encrypted image, and in each... On the DCT domain of the sub-block, generate the embedded dense carrier vector. From in order Select 8 bits of data to form a sequence And extract 4 secret information Repeat until extracted Secret information; Step 3, Each group of elements is concatenated to obtain a complete sequence. Then, after decryption and conversion, the secret information embedded in the coded image set is obtained.
8. The JPEG image multi-carrier steganography method based on the Monkey King Evolutionary Algorithm as described in claim 7, characterized in that: In step 2, 4 bits of secret information are extracted according to the following method: Extract the 3-bit secret information using the following formula , ; Then, the fourth secret information is extracted using the following formula. , 。