Pixel-level and bit-level combined encryption method based on five-dimensional chaotic system
Through the pixel-level and bit-level joint encryption method based on the five-dimensional chaotic system, the images are encrypted, which solves the problems of low efficiency and weak resistance to differential attacks of the existing encryption methods, and achieves efficient and secure image encryption.
Patent Information
- Application Number
- CN202510350352.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-03-24
- Publication Date
- 2025-06-06
- Estimated Expiration
- 2045-03-24
AI Technical Summary
The existing encryption methods have problems such as long encryption time, low execution efficiency, unsuitable image encryption, and weak resistance to differential attacks.
Using a pixel-level and bit-level joint encryption method based on the five-dimensional chaotic system, the image is parity-filled, row-column cyclic shift, block diffusion and joint bit-level encryption are used to form an encrypted image by generating a chaotic sequence.
It improves the efficiency and security of encryption, enhances information redundancy and cracking difficulty, is suitable for image encryption, and improves the ability to resist differential attacks.
Smart Images

Figure CN120110641A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of chaotic system encryption, and in particular to a pixel-level and bit-level joint encryption method based on a five-dimensional chaotic system. Background Art
[0002] Chaos-based encryption methods have become one of the most ideal encryption methods due to their high sensitivity to initial conditions, strong mixing, strong ergodicity, and complex behavior. Therefore, many researchers have proposed a large number of image encryption schemes under chaotic systems.
[0003] The RNA encryption method in JSDDR is single, the encryption effect is poor, the ability to resist differential attacks is weak, and the encrypted image has high correlation. EDPD reorganizes the image into 8-base DNA cubes, so the encoding and decoding time is long, the computing power requirement is high, and the execution efficiency is low. The DFDLC cube reconstruction algorithm is simple, easy to be reverse cracked, and is subject to differential attacks, with low security.
[0004] The existing encryption methods mainly have the following problems: 1. The encryption time is long and the execution efficiency is low; 2. It is not suitable for image encryption; 3. Some chaotic encryption algorithms have weak resistance to differential attacks and low password sensitivity; 4. Some encryption algorithms have poor encryption effects, the encrypted image correlation, and the information redundancy is still very high. Summary of the invention
[0005] In view of the above-mentioned deficiencies in the prior art, the present invention provides a pixel-level and bit-level joint encryption method based on a five-dimensional chaotic system, which solves the problems of long encryption time and low execution efficiency in the prior art, as well as the traditional algorithm being unsuitable for image encryption and the weak ability of most chaotic encryption to resist differential attacks.
[0006] In order to achieve the above-mentioned invention object, the technical solution adopted by the present invention is: a pixel-level and bit-level joint encryption method based on a five-dimensional chaotic system, comprising the following steps: S1: Generate the initial value of the chaotic system based on the key, and input the initial value of the chaotic system into the chaotic system to obtain a chaotic sequence; S2: Perform parity padding on the rows and columns of the input image to obtain a preprocessed image with an even side length; S3: Perform the first round of row-column cyclic shift and block diffusion on the preprocessed image based on the chaotic sequence; S4: re-expand the block-diffused image into a one-dimensional bit sequence, perform the first round of joint bit-level and pixel-level joint encryption based on the chaotic sequence, and reorganize the encrypted bit sequence into a three-channel image; S5: performing a second round of row-column cyclic shift and block diffusion on the reorganized three-channel image; S6: The block-diffused image is re-expanded into a one-dimensional bit sequence, a second round of joint bit-level and pixel-level encryption is performed based on the chaotic sequence, and the encrypted bit sequence is reorganized into a three-channel image to obtain an encrypted image.
[0007] Furthermore, the S1 includes the following sub-steps: S11: Select a 256-bit key to generate five initial values of the chaotic system; S12: The five initial values of the chaotic system are input into the chaotic system, and the chaotic sequence is obtained by the second-order Runge-Kutta method.
[0008] Furthermore, S2 includes the following sub-steps: S21: Fill the input image with row pixels. If the number of rows is an odd number, copy the pixels of the last column and modify the last bit of the pixels in the filled column to be a parity bit. S22: Fill the input image with column pixels. If the number of columns is an odd number, copy the pixels of the last row and modify the last bit of the pixels of the filled row to a parity bit to obtain a preprocessed image with an even side length.
[0009] Furthermore, the row-column cyclic shift is: sequentially shifting 1- N Row and 1- N The column is shifted left and down by E bits in a circular shift. The formula is:
[0010] in, is the value of the chaotic sequence, To round down.
[0011] Furthermore, the block diffusion comprises the following sub-steps: a1: XOR and invert the corresponding bits of each 2×2 pixel block to complete four rounds of intra-block encryption; a2: Treat the encrypted block as a whole, traverse all pixel blocks through the Zigzag path, and perform XOR operations between adjacent blocks; The Zigzag path is determined by the following rules: traverse the blocks from the upper left to the lower right. When the left boundary is encountered, first visit an adjacent block downward, and then change the access order from the lower left to the upper right; when the lower boundary is encountered, visit the block on the right, and then change the access order from the upper left to the lower right; when the upper boundary is encountered, visit the block on the right, and then change the access order from the upper right to the lower left; when the right boundary is encountered, visit the block below, and then change the access order from the upper right to the lower left, until all blocks are visited.
[0012] Furthermore, the joint bit-level and pixel-level joint encryption is specifically: taking a chaotic sequence of a set length, traversing the chaotic sequence bit by bit to determine the operation mode, including: 00 represents bit-level encryption, taking the one-dimensional sequence and the last bit of the chaotic sequence for XOR; 01 represents four-base DNA encryption, converting the corresponding two bits of the original sequence into DNA bases, then finding the corresponding bases through the constructed DNA codon table, reconverting them into a bit sequence, and putting them into the encrypted sequence; 10 represents eight-base DNA encryption, converting the corresponding 3 bits of the original sequence into an 8-base DNA sequence, then converting it into the corresponding bases through the constructed DNA codon table, and then converting it into a bit sequence and adding it to the encrypted sequence; 11 represents byte encryption, which respectively represents inversion, unchanged, left circular shift and XOR.
[0013] The beneficial effects of the present invention are as follows: 1) an improved chaotic system is proposed, which strengthens its internal data correlation and enhances its chaotic properties. The chaotic sequence generated by the system has both the chaotic properties of periodic oscillation and the non-periodic changes of sudden stop. 2) a new diffusion method is proposed, which increases the diversity of diffusion methods, makes full use of the properties of chaotic sequences, breaks the inertia of thinking that encryption is only performed at one encryption level, and proposes a new thinking for the diversification of diffusion methods. 3) information redundancy is increased, the difficulty of cracking is improved, the risk of being cracked is reduced, and the security is taken to a higher level. BRIEF DESCRIPTION OF THE DRAWINGS
[0014] Figure 1 This is a flow chart of a pixel-level and bit-level joint encryption method based on a five-dimensional chaotic system.
[0015] Figure 2 This is a schematic diagram of the process of one round of intra-block encryption.
[0016] Figure 3 A zigzag diagram of a nine-block graph.
[0017] Figure 4 is the initial image.
[0018] Figure 5 This is a table of 4-base DNA codons.
[0019] Figure 6 This is the 8-base DNA codon table.
[0020] Figure 7 The graph shows the channel values of the image after the first reorganization.
[0021] Figure 8 The graph shows the channel values of the image after the second row-column circular shift.
[0022] Fig. 9 The graph shows the channel values of the image after the second joint bit-level and pixel-level encryption.
[0023] Fig.10 To encrypt the image.
[0024] Fig.11 Displays the values of each channel of the encrypted image. DETAILED DESCRIPTION
[0025] The present invention will be further described below in conjunction with the accompanying drawings and specific embodiments.
[0026] like Figure 1 As shown, a pixel-level and bit-level joint encryption method based on a five-dimensional chaotic system comprises the following steps: S1: Generate the initial value of the chaotic system based on the key, and input the initial value of the chaotic system into the chaotic system to obtain a chaotic sequence; S2: Perform parity padding on the rows and columns of the input image to obtain a preprocessed image with an even side length; S3: Perform the first round of row-column cyclic shift and block diffusion on the preprocessed image based on the chaotic sequence; S4: re-expand the block-diffused image into a one-dimensional bit sequence, perform the first round of joint bit-level and pixel-level joint encryption based on the chaotic sequence, and reorganize the encrypted bit sequence into a three-channel image; S5: performing a second round of row-column cyclic shift and block diffusion on the reorganized three-channel image; S6: The block-diffused image is re-expanded into a one-dimensional bit sequence, a second round of joint bit-level and pixel-level encryption is performed based on the chaotic sequence, and the encrypted bit sequence is reorganized into a three-channel image to obtain an encrypted image.
[0027] The present invention proposes a five-dimensional chaotic system to generate chaotic sequences. The system has many properties, including periodic oscillation and non-periodic jitter. It uses joint bit-level and pixel-level encryption, breaking the thinking environment that ordinary encryption methods need to perform multiple encryptions at multiple encryption levels, and enriching the diversity of encryption methods.
[0028] The S1 includes the following sub-steps: S11: Select a 256-bit key to generate five initial values of the chaotic system; S12: The five initial values of the chaotic system are input into the chaotic system, and the chaotic sequence is obtained by the second-order Runge-Kutta method.
[0029] In this embodiment, a 256-bit key is selected, divided into 4 64-bit sequences, and then XORed with a 64-bit custom constant sequence. After each XOR, the constant sequence is cyclically shifted to the left by 16 bits, and this is performed four times to obtain four new sequences. Each sequence is divided into 8 8-bit sequences, and XORed with each other between two sequences, and finally 16 8-bit sequences are obtained. Then each sequence is converted into an integer, modulo 256, and a total of 16 floating-point numbers are obtained. The first twelve are added three at a time as the first four initial values of the chaotic system, and the last four are added and negative as the last initial value. The five initial values are put into the chaotic system, and the value of the chaotic system is solved every 0.01 interval by the second-order Runge-Kutta method, and the length and width of the image are length and width. Assuming that they are all 3-channel images, a chaotic sequence of size 5*(length*width*8) is generated.
[0030] The S2 includes the following sub-steps: S21: Fill the input image with row pixels. If the number of rows is an odd number, copy the pixels of the last column and modify the last bit of the pixels in the filled column to be a parity bit. S22: Fill the input image with column pixels. If the number of columns is an odd number, copy the pixels of the last row and modify the last bit of the pixels of the filled row to a parity bit to obtain a preprocessed image with an even side length.
[0031] make , five initial values are put into the chaotic system to generate a size of 5* N*N *3*8 chaotic sequence. Take 2*(48) random sequences and construct the initial four-base and eight-base codon tables in ascending order.
[0032] Take 2* N The random sequence is converted into a cyclic shift index sequence and the first round of cyclic shift is performed.
[0033] The row and column cyclic shift is: sequentially shift 1- N Row and 1- N The column is shifted left and down by E bits in a circular shift. The formula is:
[0034] in, is the value of the chaotic sequence, To round down.
[0035] The block diffusion comprises the following sub-steps: a1: XOR and invert the corresponding bits of each 2×2 pixel block to complete four rounds of intra-block encryption; a2: Treat the encrypted block as a whole, traverse all pixel blocks through the Zigzag path, and perform XOR operations between adjacent blocks; Here we take a single-channel pixel as an example: The four pixels of the 2*2 pixel block are numbered as a11, a12, a21, and a22 respectively.
[0036] like Figure 2 As shown, first take the 345th bit xyz and the 678th bit ijk of pixel a22, take the ijk (combined into a binary number) bit of pixel a11 and XOR it with the even bit of xyz except ijk, take the xyz bit of pixel a11 and XOR it with the odd bit of xyz except ijk, swap the last three bits of a22 and the first three bits of a11 (for other pixels, it is the previous pixel), then invert ijk and xyz, and after four rounds of this pixel by pixel, the encryption in each block is completed.
[0037] Then the encrypted block is taken as a whole and XORed with adjacent blocks in Zigzag shape.
[0038] Here, the number of blocks is set to m*n, and the currently selected block is Bij. The next selected block can be determined by the following method.
[0039] The Zigzag path is determined by the following rules: traverse the blocks from the upper left to the lower right. When the left boundary is encountered, first visit an adjacent block downward, and then change the access order from the lower left to the upper right; when the lower boundary is encountered, visit the block on the right, and then change the access order from the upper left to the lower right; when the upper boundary is encountered, visit the block on the right, and then change the access order from the upper right to the lower left; when the right boundary is encountered, visit the block below, and then change the access order from the upper right to the lower left, until all blocks are visited, such as Figure 3 shown.
[0040] Zigzag: function getNextZigzagPixel(m, n, i, j): if (i + j) % 2 == 0: if (j == 1) and (i <m): i += 1 / / Move down else if (i == m) and (j <n): j += 1 / / Move right else: i -= 1 / / The number of rows decreases j += 1 / / Increase the number of columns else: / / Odd diagonals, traverse upwards (rows decrease, columns increase) if (i == 1) and (j <n): j += 1 / / Move right else if (j == n) and (i <m): i += 1 / / Move down else: i += 1 / / The number of rows increases j -= 1 / / The number of columns decreases return (i, j) Next, the first round of joint bit-level and pixel-level encryption is performed.
[0041] Pick N*N* The 3*3 chaotic sequence is subjected to the following operations:
[0042] in, A custom positive constant.
[0043] The joint bit-level and pixel-level joint encryption is specifically: taking a chaotic sequence of a set length, traversing the chaotic sequence bit by bit to determine the operation mode, including: 00 represents bit-level encryption, taking the one-dimensional sequence and the last bit of the chaotic sequence for XOR; 01 represents four-base DNA encryption, converting the two corresponding bits of the original sequence into DNA bases, and then finding the corresponding bases through the constructed DNA codon subtable (a total of four subtables), reconverting them into a bit sequence, and putting them into the encrypted sequence; 10 represents eight-base DNA encryption, converting the corresponding 3 bits of the original sequence into an 8-base DNA sequence, and then converting it into the corresponding bases through the constructed DNA codon subtable (a total of four subtables), and then converting it into a bit sequence and adding it to the encrypted sequence; 11 represents byte encryption, which means negation, unchanged, left circular shift and XOR. The latter two operations still need to take the last four bits for operation.
[0044] The number of bits required by the above four methods are 3, 4, 6, and 8 respectively. N*N *3*3 sequence length is sufficient for complete encryption.
[0045] The encrypted sequence is reorganized to regenerate the RGB image. 8 bits are taken as the RGB pixels of each pixel in turn, and finally restored to N*N *3RGB image.
[0046] Take 2* NThe random sequence is converted into a cyclic shift index sequence and a second round of cyclic shift is performed.
[0047] Take 2* N The random sequence is then operated as follows
[0048] 1- N Row, 1- N The columns are rotated left and down by E positions.
[0049] Block diffusion is performed again to re-expand the block diffusion image into a one-dimensional bit sequence, and the new sequence is jointly encrypted at the bit level and DNA level to obtain a new chaotic sequence.
[0050] The new chaotic sequence is converted into an RGB image as follows to obtain an encrypted image. One bit is filled into each pixel's RGB pixel in turn, and the image is finally restored to N*N *3RGB image.
[0051] In one embodiment of the present invention, an image with a size of 5*5*3 and each pixel is 128 is taken as the initial image to facilitate observation of the data encryption process. Figure 4 shown.
[0052] If the system's initial key is Init_Key, it is assumed to have been split into four 64-bit sequences, recorded as Init_Key[1], Init_Key[2], Init_Key[3], Init_Key[4], for example: Init_Key=[12345678,3445567843,46679875,35578990]; An example of a custom 64-bit constant sequence is as follows: Const_Val=2446754374836847758; Then take Init_Key and Const_Val and perform bitwise XOR, the result is a four-dimensional sequence, recorded as Inter_Val. The calculation process is as follows: Inter_Val[1]=Init_key[1]^Const_Val=2446754374831367616; / / XOR Now update Const_Val: Const_Val=bitshift(Const_Val,16)+bitshift(Const_Val,-48)=11395220624232030708; / / Circular shift 16 bits to the left.
[0053] Repeat this process until four intermediate values Inter_Val are obtained; the final Inter_Val is as follows: Inter_Val=[2446754374831367680,1139525796217675980,1638677255111927040,13855365463285364736]; Cut the sequence to get a new 8-bit sequence: Uint8Seq=[33,244,158,35,244,116,230,0,...]; XOR two by two to get a new sequence: 33^244=213, ..., Result=[213,189,128,230,186,171,147,200,171,136,121,101,136,95,182,248]; Convert to double: 213 / 256=0.83203125; ..., Db_sq=[0.83203125,0.73828125,0.5,0.8984375,0.7265625,0.66796875,0.57421875,0.7812 5,0.66796875,0.53125,0.47265625,0.39453125,0.53125,0.37109375,0.7109375,0.96875]; For the first twelve elements, add three together to form the first four initial values: Init_val1=(0.832031 + 0.738281 + 0.500000) = 2.070312 Init_val2=(0.898438 + 0.726562 + 0.667969) = 2.292969 Init_val3=(0.574219 + 0.781250 + 0.667969) = 2.023438 Init_val4=(0.531250 + 0.472656 + 0.394531) = 1.398438 The last four elements are added and inverted to form the fifth initial value: Init_val5=-(0.531250 + 0.371094 + 0.710938 + 0.968750) = -2.582031 Here, the image size is 5*5*3, and each pixel in each channel is 128. A total of 5*(5*5*10) length chaotic sequences are generated, denoted as Xt.
[0054] Pad the side length to an even number. Here we will first check the number of columns, which is 5, so copy the last column of pixels and check the parity bit at the same time, then check the number of rows. Copying the last row makes the number of rows an even number, so the result is a padded image of size 6*6*3 with each pixel being 128.
[0055] Take Xt(4:5,1:40) to generate 4-base DNA and 8-base DNA codon tables.
[0056] The method is as follows: Xt(4,1:4), Xt(4,5:8), Xt(5,1:4), and Xt(5,5:8) are sorted respectively, and a 4-base DNA codon table is constructed according to the sorting index. Similarly, Xt(4,9:16), Xt(4,16:24), Xt(4,9:16), Xt(4,16:24), Xt(4,25:32), Xt(4,33:40), Xt(5,9:16), Xt(5,16:24), Xt(5,9:16), Xt(5,16:24), Xt(5,25:32), and Xt(5,33:40) are constructed to construct an 8-base codon table. With 00->A, 11->T, 01->G, and 10->C as the base correspondence, the generated codon table is as follows: Figure 5 and Figure 6 shown.
[0057] Take Xt(4:5,41:46), sort the decimal part, record the sort index, and perform row and column shift operations on each row and column according to the sort index.
[0058] Intra-block diffusion is performed on each block (the specific process has been given above, so it will not be repeated here). The final result is that each channel of each pixel block is [228,246;36,66].
[0059] Then, each pixel block is XORed with the next pixel block by zigzagging, and the next pixel is covered. Finally, the pixel channels of some pixel blocks are all 0, and the sum of the row and column sides of these pixels is an odd number. The channels of other pixel blocks are [28, 246; 36, 66], and the sum of the row and column sides of these pixel blocks is an even number.
[0060] Perform the first round of joint bit-level and pixel-level encryption: Record each channel of each pixel of the image into a new one-dimensional array, and you will eventually get [28,28,28,246,246,246,0,0,0,0,0,0,...,36,36,36,66,66,66,0,0,0,0,0,0,...] (the ellipsis represents repeating the previous data until the array length is 6*6*3).
[0061] Take Xt(41:end,4:5), expand it into a shift sequence, and convert its fractional part to uint8.
[0062] The following will be converted into a binary data stream. Start the joint bit-level and pixel-level encryption: Among them, Xt is converted into a binary bit stream: [01011101 01100000 01100010 01100100...] The image is converted into a binary stream imgbit [00011100, 00011100, ...] Example steps: Operation 1: Take Xt[1:2]=01 as the operation code to perform four-base DNA encryption.
[0063] Take imgbit[1:2]=00, convert it to base A, and perform 4-base DNA encryption.
[0064] Take Xt[3:4]=01 and convert it to an integer 2 between 1 and 4 (add 1 after converting to an integer), and take the second subtable for operation. The corresponding base is A, which is then converted to the bit sequence 00 as the output bit sequence.
[0065] Operation 2: Take Xt[5:6]=11 as the operation code and Xt[7:8]=01 as the sub-operation code, which means the last four bits of Xt remain unchanged.
[0066] Take imgbit[3:6]=0111, unchanged, and output.
[0067] Operation 3: Take Xt[9:10]=01 as the operation code to perform four-base DNA encryption.
[0068] Take imgbit[7:8]=00, convert it to base A, and perform 4-base DNA encryption.
[0069] Take Xt[11:12]=10 and convert it to 3, and take the third subtable for operation. The corresponding base is G, convert it to 10, and add it to the output queue.
[0070] So the bit sequence for the first pixel is 00011110, which is 30.
[0071] Operation 4: Take Xt[13:14]=00 as the operation code and perform an XOR operation.
[0072] Take imgbit[9]=0. Take Xt
[15] =0 as the secondary operation code; the XOR result is 0, and it is added to the output queue.
[0073] Operation 5: Take Xt[16:17]=00 as the operation code, perform an XOR operation, and take Xt
[18] =1 as the sub-operation code.
[0074] Take imgbit
[10] =0, XOR it with Xt
[18] , the result is 1, and add it to the output queue.
[0075] Operation 6: Take Xt[19:20]=10 as the operation code to perform eight-base DNA encryption.
[0076] Take imgbit[11-13]=011, which is converted into eight bases of DNA base B.
[0077] Take Xt[21:23]=001 and convert it to 2, and take the second subtable for operation. The corresponding base is G, which is converted to 010 and added to the output queue.
[0078] Operation 7: Take Xt[24:25]=00 as the operation code and perform an XOR operation.
[0079] Take imgbit
[14] =1, take Xt
[26] =1, the XOR result is 0, and add it to the output queue.
[0080] Operation 8: Take Xt[27-28]=10 and perform eight-base DNA encryption.
[0081] Take imgbit[15-17]=000, convert it to base A, take the sub-opcode Xt[29-31]=010, convert it to 3.
[0082] Take the third subtable for operation, convert it into base B, byte stream 111, and add it to the output stream. So the bit sequence for the second pixel is 01010011.
[0083] And so on, until the resulting bit sequence is obtained.
[0084] The encryption result is distributed according to each pixel channel. Figure 7 shown.
[0085] Take Xt(4:5,41:46), sort the decimal part, record the sort index, and perform row and column shift operations on each row and column according to the sort index. The result is as follows Figure 8 shown.
[0086] Block diffusion is performed again. The result is as follows Fig. 9 shown.
[0087] The image is expanded again by pixels, and then a new joint bit-level and pixel-level joint encryption is performed, which will not be described in detail.
[0088] Reassemble into an encrypted image, the result is as follows Fig.10 and Fig.11 shown.
[0089] Those skilled in the art will appreciate that the embodiments described herein are intended to help readers understand the principles of the present invention, and should be understood that the protection scope of the present invention is not limited to such specific statements and embodiments. Those skilled in the art can make various other specific variations and combinations that do not deviate from the essence of the present invention based on the technical revelations disclosed by the present invention, and these variations and combinations are still within the protection scope of the invention.
Claims
1. A pixel-level and bit-level joint encryption method based on a five-dimensional chaotic system, characterized in that: The following steps are involved: S1: Generate the initial value of the chaotic system based on the key, and input the initial value of the chaotic system into the chaotic system to obtain a chaotic sequence; S2: Perform parity padding on the rows and columns of the input image to obtain a preprocessed image with an even side length; S3: Perform the first round of row-column cyclic shift and block diffusion on the preprocessed image based on the chaotic sequence; S4: re-expand the block-diffused image into a one-dimensional bit sequence, perform the first round of joint bit-level and pixel-level joint encryption based on the chaotic sequence, and reorganize the encrypted bit sequence into a three-channel image; S5: performing a second round of row-column cyclic shift and block diffusion on the reorganized three-channel image; S6: The block-diffused image is re-expanded into a one-dimensional bit sequence, a second round of joint bit-level and pixel-level encryption is performed based on the chaotic sequence, and the encrypted bit sequence is reorganized into a three-channel image to obtain an encrypted image.
2. The pixel-level and bit-level joint encryption method based on a five-dimensional chaotic system according to claim 1 is characterized in that: The S1 includes the following sub-steps: S11: Select a 256-bit key to generate five initial values of the chaotic system; S12: The five initial values of the chaotic system are input into the chaotic system, and the chaotic sequence is obtained by the second-order Runge-Kutta method.
3. The pixel-level and bit-level joint encryption method based on a five-dimensional chaotic system according to claim 1 is characterized in that: The S2 includes the following sub-steps: S21: Fill the input image with row pixels. If the number of rows is an odd number, copy the pixels of the last column and modify the last bit of the pixels in the filled column to be a parity bit. S22: Fill the input image with column pixels. If the number of columns is an odd number, copy the pixels of the last row and modify the last bit of the pixels of the filled row to a parity bit to obtain a preprocessed image with an even side length.
4. The pixel-level and bit-level joint encryption method based on a five-dimensional chaotic system according to claim 1 is characterized in that: The row and column cyclic shift is: sequentially shift 1- N Row and 1- N The column is shifted left and down by E bits in a circular shift. The formula is: in, is the value of the chaotic sequence, To round down.
5. The pixel-level and bit-level joint encryption method based on a five-dimensional chaotic system according to claim 1 is characterized in that: The block diffusion comprises the following sub-steps: a1: XOR and invert the corresponding bits of each 2×2 pixel block to complete four rounds of intra-block encryption; a2: Treat the encrypted block as a whole, traverse all pixel blocks through the Zigzag path, and perform XOR operations between adjacent blocks; The Zigzag path is determined by the following rules: traverse the blocks from the upper left to the lower right. When the left boundary is encountered, first visit an adjacent block downward, and then change the access order from the lower left to the upper right; when the lower boundary is encountered, visit the block on the right, and then change the access order from the upper left to the lower right; when the upper boundary is encountered, visit the block on the right, and then change the access order from the upper right to the lower left; when the right boundary is encountered, visit the block below, and then change the access order from the upper right to the lower left, until all blocks are visited.
6. The pixel-level and bit-level joint encryption method based on a five-dimensional chaotic system according to claim 1 is characterized in that: The joint bit-level and pixel-level joint encryption is specifically: taking a chaotic sequence of a set length, traversing the chaotic sequence bit by bit to determine the operation mode, including: 00 represents bit-level encryption, taking the one-dimensional sequence and the last bit of the chaotic sequence for XOR; 01 represents four-base DNA encryption, converting the corresponding two bits of the original sequence into DNA bases, then finding the corresponding bases through the constructed DNA codon table, reconverting them into a bit sequence, and putting them into the encrypted sequence; 10 represents eight-base DNA encryption, converting the corresponding 3 bits of the original sequence into an 8-base DNA sequence, then converting it into the corresponding bases through the constructed DNA codon table, and then converting it into a bit sequence and adding it to the encrypted sequence; 11 represents byte encryption, which respectively represents inversion, unchanged, left circular shift and XOR.
Citation Information
Patent Citations
Method for encrypting bit-level synchronous promiscuous diffusion images and pixel-level annular diffusion images
CN108319859A
Mixing chaos and block scrambling image encryption algorithm
CN114389788A
Image encryption method based on block selection Zigzag scrambling and wheel disc rotation coding
CN117579756A
Three-way scrambled image encryption method based on two-dimensional hyper chaotic vincent map
WO2025038063A1