Security processing method and device for spatial network data
By segmenting, obfuscating, diffusion and compression processing of satellite images, the problems of low security and efficiency in satellite image transmission are solved, and higher data security and more efficient transmission are achieved.
Patent Information
- Application Number
- CN202510066071.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-01-16
- Publication Date
- 2025-02-25
- Estimated Expiration
- 2045-01-16
AI Technical Summary
Satellite images have problems of leaks and inefficiency during transmission, especially when signal interception and communication links are unstable.
By obtaining six randomized keys, the satellite grayscale image to be transmitted is divided into two sub-images, and these keys are used to generate obfuscation and diffusion sequences, the sub-images are obfuscated and diffusion processed, and the encrypted sub-images are finally spliced and compressed to form compressed encrypted satellite image data.
Improve the security and efficiency of satellite image data during transmission, prevent data leakage and reduce bandwidth consumption.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of information security technology, and in particular to a method and device for securely processing spatial network data. Background Art
[0002] Space network is a communication and information transmission network formed by satellites or other space equipment, which is widely used in aerospace, military, meteorology, communication and other fields. It relies on radio communication between satellites, spacecraft and ground stations to carry out tasks such as communication, remote sensing and meteorological data transmission in remote areas. There are many types of data transmitted in space network, among which satellite images are one of the important data types. Satellite images provide detailed records of information such as the earth's surface, environment, and climate. It is widely used in environmental monitoring, agricultural management, disaster prediction, military reconnaissance and other fields, and has extremely high value.
[0003] However, there is a risk of leakage during the transmission of satellite images. Since satellite communications are usually carried out via radio waves, data transmission between satellites and ground stations is vulnerable to signal interception. Malicious attackers may intercept communication signals and steal sensitive data in transmission, resulting in information leakage. In addition, due to the instability of the communication links of space networks, signals may be interfered with or tampered with during transmission, resulting in data loss or leakage. Therefore, the transmission security of satellite images requires special attention.
[0004] In addition, transmission rate is also an important issue in space networks. Since satellite images are usually high-resolution image files containing a large amount of pixel information, the file size is very large. Without effective compression measures, transmitting these large data will significantly increase the network burden, consume a lot of bandwidth, and cause transmission delays, and may even fail to transmit in a timely manner in an environment with limited bandwidth.
[0005] Therefore, it is necessary to provide a secure processing solution for spatial network data to improve the security and transmission efficiency of satellite image data during transmission. Summary of the invention
[0006] The present invention provides a method and device for securely processing spatial network data, which are used to solve the defects of poor security and efficiency in data transmission in the prior art.
[0007] The present invention provides a method for securely processing spatial network data, comprising: Obtain six randomized keys; the six randomized keys are binary sequences of the same length; Split the satellite grayscale image to be transmitted into two sub-images of the same size; Converting a first randomized key and a second randomized key among the six randomized keys into a first obfuscated permutation sequence and a second obfuscated permutation sequence; Performing obfuscation processing on one of the sub-images based on the first obfuscation permutation sequence to obtain a first obfuscation sub-graph, and performing obfuscation processing on the other sub-image based on the second obfuscation permutation sequence to obtain a second obfuscation sub-graph; intercepting a third randomized key, a fourth randomized key, a fifth randomized key, and a sixth randomized key from the six randomized keys based on the size of the sub-image to obtain a first diffusion key, a second diffusion key, a third diffusion key, and a fourth diffusion key; Diffusion processing is performed on the first obfuscated subgraph based on the first diffusion key and the second diffusion key to obtain a first encrypted subgraph, and diffusion processing is performed on the second obfuscated subgraph based on the third diffusion key and the fourth diffusion key to obtain a second encrypted subgraph; The first encrypted sub-image and the second encrypted sub-image are spliced to obtain an encrypted satellite image, and the encrypted satellite image is compressed to obtain compressed encrypted satellite image data.
[0008] According to a method for securely processing spatial network data provided by the present invention, converting the first randomized key and the second randomized key among the six randomized keys into the first obfuscated permutation sequence and the second obfuscated permutation sequence comprises: Convert the binary number of each preset bit of the first randomization key and the second randomization key into a decimal number to obtain a first initial permutation sequence and a second initial permutation sequence; The first initial permutation sequence and the second initial permutation sequence are converted into a first obfuscated permutation sequence and a second obfuscated permutation sequence based on the size of the sub-image.
[0009] According to a method for securely processing spatial network data provided by the present invention, the converting of the first initial permutation sequence and the second initial permutation sequence into a first obfuscated permutation sequence and a second obfuscated permutation sequence based on the size of the sub-image comprises: First initialization step: constructing an empty row permutation sequence and column permutation sequence, a row pointer and a column pointer, a pointer to be processed and a read pointer based on the size of the sub-image; wherein the length of the row permutation sequence is the number of vertical pixels of the sub-image, the length of the column permutation sequence is the number of horizontal pixels of the sub-image, the row pointer and the column pointer point to the first position of the row permutation sequence and the column permutation sequence respectively, the initial value of the pointer to be processed is the row pointer, and the read pointer points to the first position of the initial permutation sequence to be processed; the initial permutation sequence to be processed is the first initial permutation sequence or the second initial permutation sequence; Conversion step: if the current pointer to be processed is a row pointer, the read pointer is moved from the current position of the read pointer until the value currently pointed to by the read pointer does not overlap with the value in the row permutation sequence and is less than the length of the row permutation sequence, the value currently pointed to by the read pointer is stored at the position pointed to by the row pointer, the row pointer points to the next position, and the current pointer to be processed is set as the column pointer; if the current pointer to be processed is a column pointer, the read pointer is moved from the current position of the read pointer until the value currently pointed to by the read pointer does not overlap with the value in the column permutation sequence and is less than the length of the column permutation sequence, the value currently pointed to by the read pointer is stored at the position pointed to by the column pointer, the column pointer points to the next position, and the current pointer to be processed is set as the row pointer; Iteration step: repeating the conversion step until the row pointer traverses the row permutation sequence and the column pointer traverses the column permutation sequence, concatenating the row permutation sequence and the column permutation sequence to obtain a first confusion permutation sequence or a second confusion permutation sequence corresponding to the initial permutation sequence to be processed.
[0010] According to a method for securely processing spatial network data provided by the present invention, the method of performing obfuscation processing on one of the sub-images based on the first obfuscation permutation sequence to obtain a first obfuscated sub-graph includes: Second initialization step: constructing a first pointer and a second pointer; the first pointer points to the first position of the first obfuscated permutation sequence, and the second pointer points to the last position of the first obfuscated permutation sequence; Pixel replacement step: determining a first replacement pixel point of the sub-image based on the current position of the first pointer and the current position of the second pointer; determining a second replacement pixel point of the sub-image based on the value currently pointed to by the first pointer and the value currently pointed to by the second pointer; exchanging the pixel values of the first replacement pixel point and the second replacement pixel point, and jumping to the row iteration step; Row iteration step: if the second pointer reaches the N+1th position of the first confusion permutation sequence, jump to the column iteration step; otherwise, move the second pointer forward and jump to the pixel permutation step; N is the length of the row permutation sequence; Column iteration step: if the first pointer does not reach the Nth position of the first obfuscated permutation sequence, move the first pointer backward, point the second pointer to the last position of the first obfuscated permutation sequence, and jump to the pixel permutation step.
[0011] According to a method for securely processing spatial network data provided by the present invention, the step of obtaining six randomized keys includes: Generate six chaotic sequences of the same length based on the chaotic system; Based on any chaotic sequence, the first preset number of digits after the decimal point of each number in the any chaotic sequence is intercepted to form an intercepted sequence of the any chaotic sequence; Convert each number in the intercepted sequence of any chaotic sequence into an integer and then convert it into a binary number of a second preset number of bits to obtain a conversion sequence of any chaotic sequence; Each number in the conversion sequence of any chaotic sequence is concatenated to obtain a randomized key of any chaotic sequence.
[0012] According to a method for securely processing spatial network data provided by the present invention, the third randomized key, the fourth randomized key, the fifth randomized key and the sixth randomized key among the six randomized keys are intercepted based on the size of the sub-image to obtain the first diffusion key, the second diffusion key, the third diffusion key and the fourth diffusion key, including: Determine the product of the number of pixels of the sub-image and 8 as the length to be truncated; The third randomized key, the fourth randomized key, the fifth randomized key and the sixth randomized key are respectively intercepted based on the length to be intercepted to obtain a first diffusion key, a second diffusion key, a third diffusion key and a fourth diffusion key whose lengths are equal to the length to be intercepted.
[0013] According to a method for securely processing spatial network data provided by the present invention, the first obfuscated subgraph is diffused based on the first diffusion key and the second diffusion key to obtain a first encrypted subgraph, including: Converting the first obfuscated subgraph into a one-dimensional sequence, and converting each number in the one-dimensional sequence into an 8-bit binary number to obtain a first obfuscated sequence; Performing bitwise XOR of the first obfuscated sequence and the first diffusion key to obtain a first diffusion sequence, and performing bitwise XOR of the first diffusion sequence and the second diffusion key to obtain a second diffusion sequence; Each 8-bit binary number in the second diffusion sequence is converted into a decimal number and then converted into a two-dimensional sequence to obtain a first encrypted subgraph.
[0014] According to a method for securely processing spatial network data provided by the present invention, compressing the encrypted satellite image to obtain compressed encrypted satellite image data includes: The pixel value of each pixel point in the encrypted satellite image is converted into a binary number and then converted into one dimension to obtain a binary sequence to be compressed; Create an empty compressed queue, set an initial value based on the first value of the binary sequence to be compressed, store the initial value in the compressed queue, and set the initial value of the counter to 1, flag=1; The values of the binary sequence to be compressed are read in sequence. When flag=1, if the current value of the binary sequence to be compressed is equal to the initial value, the value of the counter is increased by 1. If the current value of the binary sequence to be compressed is not equal to the initial value, the value of the counter is stored in the compressed queue and the value of the counter is set to 1, and the flag is set to 0. When flag=0, if the current value of the binary sequence to be compressed is not equal to the initial value, the value of the counter is increased by 1. If the current value of the binary sequence to be compressed is equal to the initial value, the value of the counter is stored in the compressed queue and the value of the counter is set to 1, and the flag is set to 1. Based on the compressed queue, compressed encrypted satellite image data is constructed.
[0015] The present invention also provides a device for securely processing spatial network data, comprising: A key acquisition unit, used to acquire six randomized keys; the six randomized keys are binary sequences of the same length; An image segmentation unit, used for segmenting the satellite grayscale image to be transmitted into two sub-images of the same size; A confusion sequence acquisition unit, used for converting a first randomized key and a second randomized key among the six randomized keys into a first confusion permutation sequence and a second confusion permutation sequence; a confusion unit, configured to perform confusion processing on one of the sub-images based on the first confusion permutation sequence to obtain a first confusion sub-graph, and perform confusion processing on the other sub-image based on the second confusion permutation sequence to obtain a second confusion sub-graph; a diffusion key acquisition unit, configured to intercept the third randomization key, the fourth randomization key, the fifth randomization key and the sixth randomization key from the six randomization keys based on the size of the sub-image, and obtain the first diffusion key, the second diffusion key, the third diffusion key and the fourth diffusion key; a diffusion unit, configured to perform diffusion processing on the first obfuscated subgraph based on the first diffusion key and the second diffusion key to obtain a first encrypted subgraph, and perform diffusion processing on the second obfuscated subgraph based on the third diffusion key and the fourth diffusion key to obtain a second encrypted subgraph; The compression unit is used to splice the first encrypted sub-image and the second encrypted sub-image to obtain an encrypted satellite image, and compress the encrypted satellite image to obtain compressed encrypted satellite image data.
[0016] The present invention also provides an electronic device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the program, the method for securely processing spatial network data as described in any one of the above is implemented.
[0017] The present invention also provides a non-transitory computer-readable storage medium on which a computer program is stored. When the computer program is executed by a processor, the method for securely processing spatial network data as described in any one of the above is implemented.
[0018] The present invention also provides a computer program product, including a computer program, which, when executed by a processor, implements any of the above-mentioned methods for securely processing spatial network data.
[0019] The method and device for securely processing spatial network data provided by the present invention obtain six randomized keys, divide the satellite grayscale image to be transmitted into two sub-images of the same size, and then convert the first randomized key and the second randomized key of the six randomized keys into the first confusion permutation sequence and the second confusion permutation sequence, so as to perform confusion processing on one of the sub-images based on the first confusion permutation sequence to obtain the first confusion sub-graph, and perform confusion processing on the other sub-image based on the second confusion permutation sequence to obtain the second confusion sub-graph, and then intercept the third randomized key, the fourth randomized key, the fifth randomized key and the sixth randomized key of the six randomized keys based on the size of the sub-image to obtain the first diffusion key, the second diffusion key, the third diffusion key and the fourth diffusion key, and perform diffusion processing on the first confusion sub-graph based on the first diffusion key and the second diffusion key to obtain the first encrypted sub-graph, and perform diffusion processing on the second confusion sub-graph based on the third diffusion key and the fourth diffusion key to obtain the second encrypted sub-graph, so as to splice the first encrypted sub-graph and the second encrypted sub-graph to obtain the encrypted satellite image, and compress the encrypted satellite image to obtain the compressed encrypted satellite image data, thereby improving the security and transmission efficiency of the satellite image data during transmission. BRIEF DESCRIPTION OF THE DRAWINGS
[0020] In order to more clearly illustrate the technical solutions in the present invention or the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.
[0021] Figure 1 It is a schematic diagram of the flow of the method for securely processing spatial network data provided by the present invention; Figure 2 It is a flow chart of the randomized key acquisition method provided by the present invention; Figure 3 It is a schematic diagram of the flow of the method for obtaining a confusing substitution sequence provided by the present invention; Figure 4 It is a schematic diagram of the structure of the secure processing device for spatial network data provided by the present invention; Figure 5 It is a structural schematic diagram of the electronic device provided by the present invention. DETAILED DESCRIPTION
[0022] In order to make the purpose, technical solution and advantages of the present invention clearer, the technical solution of the present invention will be clearly and completely described below in conjunction with the drawings of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0023] Figure 1 is a flow chart of the method for securely processing spatial network data provided by the present invention, such as Figure 1 As shown, the method includes: Step 110, obtaining six randomized keys; the six randomized keys are binary sequences of the same length; Step 120, dividing the satellite grayscale image to be transmitted into two sub-images of the same size; Step 130, converting the first randomized key and the second randomized key among the six randomized keys into a first obfuscated permutation sequence and a second obfuscated permutation sequence; Step 140, performing obfuscation processing on one of the sub-images based on the first obfuscation permutation sequence to obtain a first obfuscated sub-graph, and performing obfuscation processing on the other sub-image based on the second obfuscation permutation sequence to obtain a second obfuscation sub-graph; Step 150, intercepting the third randomized key, the fourth randomized key, the fifth randomized key and the sixth randomized key from the six randomized keys based on the size of the sub-image to obtain the first diffused key, the second diffused key, the third diffused key and the fourth diffused key; Step 160: performing diffusion processing on the first obfuscated subgraph based on the first diffusion key and the second diffusion key to obtain a first encrypted subgraph, and performing diffusion processing on the second obfuscated subgraph based on the third diffusion key and the fourth diffusion key to obtain a second encrypted subgraph; Step 170: concatenate the first encrypted sub-graph and the second encrypted sub-graph to obtain an encrypted satellite image, and compress the encrypted satellite image to obtain compressed encrypted satellite image data.
[0024] Specifically, six different randomization keys with the same length are obtained, and each randomization key is a binary sequence.
[0025] In some embodiments, Figure 2 As shown, the six randomized keys can be obtained as follows: Step 210, generating six chaotic sequences of the same length based on the chaotic system; Step 220, based on any chaotic sequence, intercepting the first preset digit after the decimal point of each number in the any chaotic sequence to form an intercepted sequence of the any chaotic sequence; Step 230, converting each number in the truncated sequence of any chaotic sequence into an integer and then converting it into a binary number of a second preset number of bits to obtain a conversion sequence of any chaotic sequence; Step 240: concatenate each number in the conversion sequence of any chaotic sequence to obtain a randomized key of any chaotic sequence.
[0026] Among them, a 6-dimensional chaotic system can be used to generate six chaotic sequences of the same length. In some embodiments, the following formula can be used to generate six chaotic sequences x, y, z, m, n and o: ; Among them, x t ,y t 、z t 、m t 、n t and t is the tth number in the corresponding sequence. a, b, c, d, ρ 1 and ρ 2 are preset coefficients, where a=10, b=8 / 3, c=28, d=2, ρ 1 =1,ρ 2 =0.9.x 0 ,y 0 、z 0 、m 0 、n 0 and t They are 0.05, 0, 0.2, 1, 0, and 0.5 respectively.
[0027] For each chaotic sequence, a random key corresponding to the corresponding chaotic sequence is generated respectively. Taking any chaotic sequence as an example, in order to generate its corresponding random key, the first preset number of bits (assuming 5 bits, 0.987654... the intercepted value is 0.98765) after the small data point of each number in the chaotic sequence can be intercepted to form an intercepted sequence of the chaotic sequence. Subsequently, each number in the intercepted sequence of the chaotic sequence is converted to an integer (for example, multiplied by a preset number and rounded) and then converted to a binary number of a second preset number of bits to obtain a conversion sequence of the chaotic sequence. It should be noted that each number in the conversion sequence is a binary number with the same number of bits. Then, each number in the conversion sequence of the chaotic sequence is spliced to obtain the random key corresponding to the chaotic sequence. Repeat the above operation to obtain the random keys corresponding to six chaotic sequences.
[0028] After obtaining the six randomization keys, the satellite grayscale image to be transmitted is divided into two sub-images of the same size. For the convenience of description, the six randomization keys are respectively referred to as the first randomization key, the second randomization key, the third randomization key, the fourth randomization key, the fifth randomization key and the sixth randomization key. Among them, the first randomization key and the second randomization key are used to perform the obfuscation operation, and the third randomization key, the fourth randomization key, the fifth randomization key and the sixth randomization key are used to perform the diffusion operation.
[0029] The first randomized key and the second randomized key are converted into a first obfuscated permutation sequence and a second obfuscated permutation sequence respectively.
[0030] In some embodiments, Figure 3 As shown, the first randomized key and the second randomized key may be converted into the first obfuscated permutation sequence and the second obfuscated permutation sequence in the following manner: Step 310, converting the binary number of each preset bit of the first randomization key and the second randomization key into a decimal number to obtain a first initial permutation sequence and a second initial permutation sequence; Step 320: Convert the first initial permutation sequence and the second initial permutation sequence into a first obfuscated permutation sequence and a second obfuscated permutation sequence based on the size of the sub-image.
[0031] The first randomization key and the second randomization key are respectively divided into a sequence of multiple binary numbers based on a preset bit (e.g., 8 bits), and the binary numbers in the corresponding sequences are converted into decimal numbers to obtain a first initial permutation sequence and a second initial permutation sequence. Here, assuming that the preset bit is D and the size of the sub-image is m*n, then D satisfies the following conditions: ; in, .
[0032] Subsequently, the first initial permutation sequence and the second initial permutation sequence are converted into a first obfuscated permutation sequence and a second obfuscated permutation sequence respectively based on the size of the sub-image. It should be noted that the first obfuscated permutation sequence and the second obfuscated permutation sequence are obtained in the same manner.
[0033] In some embodiments, the process of converting the first initial permutation sequence into the first obfuscated permutation sequence comprises the following steps: First initialization step: constructing an empty row permutation sequence and column permutation sequence, a row pointer and a column pointer, a pointer to be processed and a read pointer based on the size of the sub-image; wherein the length of the row permutation sequence is the number of vertical pixels of the sub-image, the length of the column permutation sequence is the number of horizontal pixels of the sub-image, the row pointer and the column pointer point to the first position of the row permutation sequence and the column permutation sequence respectively, the initial value of the pointer to be processed is the row pointer, and the read pointer points to the first position of the initial permutation sequence to be processed; the initial permutation sequence to be processed is the first initial permutation sequence or the second initial permutation sequence; Conversion steps: if the current pointer to be processed is a row pointer, the read pointer is moved from the current position of the read pointer (one position at a time) until the value currently pointed to by the read pointer is not repeated with the value in the row permutation sequence and is less than the length of the row permutation sequence, the value currently pointed to by the read pointer is stored in the position pointed to by the row pointer, the row pointer points to the next position, and the current pointer to be processed is set as the column pointer; if the current pointer to be processed is a column pointer, the read pointer is moved from the current position of the read pointer until the value currently pointed to by the read pointer is not repeated with the value in the column permutation sequence and is less than the length of the column permutation sequence, the value currently pointed to by the read pointer is stored in the position pointed to by the column pointer, the column pointer points to the next position, and the current pointer to be processed is set as the row pointer; Iteration step: Repeat the above conversion steps until the row pointer traverses the row permutation sequence and the column pointer traverses the column permutation sequence (that is, the row permutation sequence and the column permutation sequence are full), concatenate the row permutation sequence and the column permutation sequence to obtain the first confusion permutation sequence or the second confusion permutation sequence corresponding to the initial permutation sequence to be processed.
[0034] By constructing the first obfuscated permutation sequence and the second obfuscated permutation sequence in the above manner, more randomness can be introduced, thereby improving the security of obfuscation based on the first obfuscated permutation sequence and the second obfuscated permutation sequence.
[0035] After obtaining the first obfuscation permutation sequence and the second obfuscation permutation sequence, one of the sub-images is obfuscated based on the first obfuscation permutation sequence to obtain a first obfuscated sub-image, and the other sub-image is obfuscated based on the second obfuscation permutation sequence to obtain a second obfuscation sub-image. It should be noted that the manner of obfuscating the two sub-images is the same, and the manner of obfuscating based on the first obfuscation permutation sequence will be used as an example to avoid redundancy.
[0036] In some embodiments, the process of performing obfuscation processing based on the first obfuscation permutation sequence includes the following steps: Second initialization step: constructing a first pointer and a second pointer; the first pointer points to the first position of the first obfuscated permutation sequence, and the second pointer points to the last position of the first obfuscated permutation sequence; Pixel replacement step: based on the current position of the first pointer and the current position of the second pointer, determine the first replacement pixel point of the sub-image (using the current position of the first pointer as the ordinate and the current position of the second pointer as the abscissa, and determining the pixel point at the corresponding position in the sub-image as the first replacement pixel point); based on the value currently pointed to by the first pointer and the value currently pointed to by the second pointer, determine the second replacement pixel point of the sub-image (using the value currently pointed to by the first pointer as the ordinate and the value currently pointed to by the second pointer as the abscissa, and determining the pixel point at the corresponding position in the sub-image as the second replacement pixel point); exchange the pixel values of the first replacement pixel point and the second replacement pixel point, and jump to the row iteration step; Row iteration step: if the second pointer reaches the N+1th position of the first confusion permutation sequence, jump to the column iteration step; otherwise, move the second pointer forward (by one position) and jump to the pixel permutation step; N is the length of the row permutation sequence; Column iteration step: if the first pointer has not reached the Nth position of the first confusion permutation sequence, move the first pointer backward, point the second pointer to the last position of the first confusion permutation sequence, and jump to the pixel permutation step; if the first pointer has reached the Nth position of the first confusion permutation sequence, end the current confusion process and obtain the first confusion subgraph.
[0037] After the obfuscation is completed, the third randomization key, the fourth randomization key, the fifth randomization key and the sixth randomization key can be intercepted based on the size of the sub-image to obtain the first diffusion key, the second diffusion key, the third diffusion key and the fourth diffusion key. In some embodiments, the product between the number of pixels of the sub-image and 8 (because the sub-image is a grayscale image, the pixel value is 0-255) can be determined as the length to be intercepted. Subsequently, the third randomization key, the fourth randomization key, the fifth randomization key and the sixth randomization key are intercepted respectively based on the length to be intercepted to obtain the first diffusion key, the second diffusion key, the third diffusion key and the fourth diffusion key with a length equal to the length to be intercepted.
[0038] Subsequently, the first obfuscated subgraph is diffused twice in succession based on the first diffusion key and the second diffusion key to obtain a first encrypted subgraph, and the second obfuscated subgraph is diffused twice in succession based on the third diffusion key and the fourth diffusion key to obtain a second encrypted subgraph. It should be noted that the manner of diffusing the first obfuscated subgraph and the second obfuscated subgraph is the same, and the manner of diffusing the first obfuscated subgraph will be taken as an example to avoid redundancy.
[0039] In some embodiments, the first obfuscated subgraph may be converted into a one-dimensional sequence, and each number in the one-dimensional sequence may be converted into an 8-bit binary number to obtain a first obfuscated sequence. Subsequently, the first obfuscated sequence and the first diffusion key may be bitwise XORed to obtain a first diffusion sequence, and the first diffusion sequence and the second diffusion key may be bitwise XORed to obtain a second diffusion sequence. Finally, each 8-bit binary number in the second diffusion sequence may be converted into a decimal number and then converted into a two-dimensional sequence in the opposite manner to the first step of converting the first obfuscated subgraph into a one-dimensional sequence, to obtain a first encrypted subgraph.
[0040] After encrypting the first encrypted sub-graph and the second encrypted sub-graph in the above manner, the first encrypted sub-graph and the second encrypted sub-graph are spliced to obtain an encrypted satellite image. In order to improve transmission efficiency, the encrypted satellite image can be compressed to obtain compressed encrypted satellite image data. In some embodiments, in order to improve the compression rate, the pixel value of each pixel in the encrypted satellite image can be converted into an 8-bit binary number and then converted into one dimension to obtain a binary sequence to be compressed.
[0041] Then, create an empty compressed queue, set the initial value based on the first value of the binary sequence to be compressed, and store the initial value in the compressed queue, and set the initial value of the counter to 1, flag = 1. Read the values of the binary sequence to be compressed in sequence. When flag = 1, if the current value of the binary sequence to be compressed is equal to the initial value, the value of the counter is increased by 1. If the current value of the binary sequence to be compressed is not equal to the initial value, the value of the counter is stored in the compressed queue and the value of the counter is set to 1, and the flag is set to 0; when flag = 0, if the current value of the binary sequence to be compressed is not equal to the initial value, the value of the counter is increased by 1. If the current value of the binary sequence to be compressed is equal to the initial value, the value of the counter is stored in the compressed queue and the value of the counter is set to 1, and the flag is set to 1. After the values of the binary sequence to be compressed are traversed, the compressed encrypted satellite image data is constructed based on the current compressed queue.
[0042] In other embodiments, after the compressed encrypted satellite image data is transmitted to the data receiving end, the data receiving end can perform decompression and decryption based on the opposite method to the above method. Specifically, during decompression, an empty decompression queue is constructed, and the first value of the compressed encrypted satellite image data is stored in the decompression queue, and deflag=1 is set when the first value is 1, and deflag=0 is set when the first value is 0. Then, starting from the second value of the compressed encrypted satellite image data, the values in the compressed encrypted satellite image data are read in sequence. If deflag=1, a number of 1s equal to the current value is created and stored in the decompression queue, and deflag=0 is set; if deflag=0, a number of 0s equal to the current value is created and stored in the decompression queue, and deflag=1 is set until the compressed encrypted satellite image data is traversed. The number in the decompression queue is converted into a decimal number every 8 bits, and then converted into two dimensions, and then evenly divided to obtain the first sub-image to be decrypted and the second sub-image to be decrypted. For the first subgraph to be decrypted, each number is converted into an 8-bit binary number and then converted into one dimension to obtain a first sequence to be decrypted, and then a bitwise XOR is performed based on the first diffusion key, the first sequence to be decrypted, and the second diffusion key to obtain a first decryption sequence, and then the first decryption sequence is converted into a decimal number for every 8 bits and then converted into two dimensions to obtain a first subgraph to be deobfuscated. Similarly, a second subgraph to be deobfuscated can be obtained based on the second subgraph to be decrypted, the third diffusion key, and the fourth diffusion key.
[0043] Next, the first sub-image to be deobfuscated is deobfuscated based on the first confusion permutation sequence, and the second sub-image to be deobfuscated is deobfuscated based on the second confusion permutation sequence, to obtain the first deobfuscated sub-image and the second deobfuscated sub-image. The deobfuscation method is similar to the obfuscation method given in the above embodiment (the first sub-image to be deobfuscated and the second sub-image to be deobfuscated can be used to replace the corresponding sub-image), and will not be repeated here. Subsequently, the first deobfuscated sub-image and the second deobfuscated sub-image are spliced to obtain the decrypted image.
[0044] In summary, the method provided by the embodiment of the present invention obtains six randomized keys, divides the satellite grayscale image to be transmitted into two sub-images of the same size, and then converts the first randomized key and the second randomized key of the six randomized keys into the first confusion permutation sequence and the second confusion permutation sequence, so that one of the sub-images is obfuscated based on the first confusion permutation sequence to obtain a first obfuscated sub-graph, and the other sub-image is obfuscated based on the second confusion permutation sequence to obtain a second obfuscated sub-graph, and then the third randomized key, the fourth randomized key, the fifth randomized key and the sixth randomized key of the six randomized keys are intercepted based on the size of the sub-image to obtain a first diffusion key, a second diffusion key, a third diffusion key and a fourth diffusion key, and the first obfuscated sub-graph is diffused based on the first diffusion key and the second diffusion key to obtain a first encrypted sub-graph, and the second obfuscated sub-graph is diffused based on the third diffusion key and the fourth diffusion key to obtain a second encrypted sub-graph, so that the first encrypted sub-graph and the second encrypted sub-graph are spliced to obtain an encrypted satellite image, and the encrypted satellite image is compressed to obtain compressed encrypted satellite image data, thereby improving the security and transmission efficiency of satellite image data during transmission.
[0045] The secure processing device for spatial network data provided by the present invention is described below. The secure processing device for spatial network data described below and the secure processing method for spatial network data described above can be referenced to each other.
[0046] Based on any of the above embodiments, Figure 4 is a schematic diagram of the structure of the secure processing device for spatial network data provided by the present invention, such as Figure 4 As shown, the device comprises: The key acquisition unit 410 is used to acquire six randomized keys; the six randomized keys are binary sequences of the same length; An image segmentation unit 420 is used to segment the satellite grayscale image to be transmitted into two sub-images of the same size; The obfuscation sequence acquisition unit 430 is used to convert the first randomization key and the second randomization key of the six randomization keys into a first obfuscation permutation sequence and a second obfuscation permutation sequence; The obfuscation unit 440 is configured to perform obfuscation processing on one of the sub-images based on the first obfuscation permutation sequence to obtain a first obfuscation sub-graph, and perform obfuscation processing on the other sub-image based on the second obfuscation permutation sequence to obtain a second obfuscation sub-graph; a diffusion key acquisition unit 450, configured to intercept the third randomization key, the fourth randomization key, the fifth randomization key and the sixth randomization key from the six randomization keys based on the size of the sub-image, and obtain the first diffusion key, the second diffusion key, the third diffusion key and the fourth diffusion key; a diffusion unit 460, configured to perform diffusion processing on the first obfuscated subgraph based on the first diffusion key and the second diffusion key to obtain a first encrypted subgraph, and perform diffusion processing on the second obfuscated subgraph based on the third diffusion key and the fourth diffusion key to obtain a second encrypted subgraph; The compression unit 470 is used to splice the first encrypted sub-image and the second encrypted sub-image to obtain an encrypted satellite image, and compress the encrypted satellite image to obtain compressed encrypted satellite image data.
[0047] The device provided by the embodiment of the present invention obtains six randomized keys, divides the satellite grayscale image to be transmitted into two sub-images of the same size, and then converts the first randomized key and the second randomized key of the six randomized keys into the first confusion permutation sequence and the second confusion permutation sequence, thereby performing confusion processing on one of the sub-images based on the first confusion permutation sequence to obtain a first confusion sub-graph, and performing confusion processing on the other sub-image based on the second confusion permutation sequence to obtain a second confusion sub-graph, and then intercepting the third randomized key, the fourth randomized key, the fifth randomized key and the sixth randomized key of the six randomized keys based on the size of the sub-image to obtain a first diffusion key, a second diffusion key, a third diffusion key and a fourth diffusion key, and performing diffusion processing on the first confusion sub-graph based on the first diffusion key and the second diffusion key to obtain a first encrypted sub-graph, and performing diffusion processing on the second confusion sub-graph based on the third diffusion key and the fourth diffusion key to obtain a second encrypted sub-graph, thereby splicing the first encrypted sub-graph and the second encrypted sub-graph to obtain an encrypted satellite image, and compressing the encrypted satellite image to obtain compressed encrypted satellite image data, thereby improving the security and transmission efficiency of satellite image data during transmission.
[0048] Based on any of the foregoing embodiments, converting the first randomized key and the second randomized key among the six randomized keys into the first obfuscated permutation sequence and the second obfuscated permutation sequence includes: Convert the binary number of each preset bit of the first randomization key and the second randomization key into a decimal number to obtain a first initial permutation sequence and a second initial permutation sequence; The first initial permutation sequence and the second initial permutation sequence are converted into a first obfuscated permutation sequence and a second obfuscated permutation sequence based on the size of the sub-image.
[0049] Based on any of the foregoing embodiments, converting the first initial permutation sequence and the second initial permutation sequence into a first confusion permutation sequence and a second confusion permutation sequence based on the size of the sub-image includes: First initialization step: constructing an empty row permutation sequence and column permutation sequence, a row pointer and a column pointer, a pointer to be processed and a read pointer based on the size of the sub-image; wherein the length of the row permutation sequence is the number of vertical pixels of the sub-image, the length of the column permutation sequence is the number of horizontal pixels of the sub-image, the row pointer and the column pointer point to the first position of the row permutation sequence and the column permutation sequence respectively, the initial value of the pointer to be processed is the row pointer, and the read pointer points to the first position of the initial permutation sequence to be processed; the initial permutation sequence to be processed is the first initial permutation sequence or the second initial permutation sequence; Conversion step: if the current pointer to be processed is a row pointer, the read pointer is moved from the current position of the read pointer until the value currently pointed to by the read pointer does not overlap with the value in the row permutation sequence and is less than the length of the row permutation sequence, the value currently pointed to by the read pointer is stored at the position pointed to by the row pointer, the row pointer points to the next position, and the current pointer to be processed is set as the column pointer; if the current pointer to be processed is a column pointer, the read pointer is moved from the current position of the read pointer until the value currently pointed to by the read pointer does not overlap with the value in the column permutation sequence and is less than the length of the column permutation sequence, the value currently pointed to by the read pointer is stored at the position pointed to by the column pointer, the column pointer points to the next position, and the current pointer to be processed is set as the row pointer; Iteration step: repeating the conversion step until the row pointer traverses the row permutation sequence and the column pointer traverses the column permutation sequence, concatenating the row permutation sequence and the column permutation sequence to obtain a first confusion permutation sequence or a second confusion permutation sequence corresponding to the initial permutation sequence to be processed.
[0050] Based on any of the foregoing embodiments, the step of performing obfuscation processing on one of the sub-images based on the first obfuscation permutation sequence to obtain a first obfuscated sub-image includes: Second initialization step: constructing a first pointer and a second pointer; the first pointer points to the first position of the first obfuscated permutation sequence, and the second pointer points to the last position of the first obfuscated permutation sequence; Pixel replacement step: determining a first replacement pixel point of the sub-image based on the current position of the first pointer and the current position of the second pointer; determining a second replacement pixel point of the sub-image based on the value currently pointed to by the first pointer and the value currently pointed to by the second pointer; exchanging the pixel values of the first replacement pixel point and the second replacement pixel point, and jumping to the row iteration step; Row iteration step: if the second pointer reaches the N+1th position of the first confusion permutation sequence, jump to the column iteration step; otherwise, move the second pointer forward and jump to the pixel permutation step; N is the length of the row permutation sequence; Column iteration step: if the first pointer does not reach the Nth position of the first obfuscated permutation sequence, move the first pointer backward, point the second pointer to the last position of the first obfuscated permutation sequence, and jump to the pixel permutation step.
[0051] Based on any of the foregoing embodiments, obtaining six randomized keys includes: Generate six chaotic sequences of the same length based on the chaotic system; Based on any chaotic sequence, the first preset number of digits after the decimal point of each number in the any chaotic sequence is intercepted to form an intercepted sequence of the any chaotic sequence; Convert each number in the intercepted sequence of any chaotic sequence into an integer and then convert it into a binary number of a second preset number of bits to obtain a conversion sequence of any chaotic sequence; Each number in the conversion sequence of any chaotic sequence is concatenated to obtain a randomized key of any chaotic sequence.
[0052] Based on any of the above embodiments, the method of intercepting the third randomized key, the fourth randomized key, the fifth randomized key, and the sixth randomized key from the six randomized keys based on the size of the sub-image to obtain the first diffusion key, the second diffusion key, the third diffusion key, and the fourth diffusion key includes: Determine the product of the number of pixels of the sub-image and 8 as the length to be truncated; The third randomized key, the fourth randomized key, the fifth randomized key and the sixth randomized key are respectively intercepted based on the length to be intercepted to obtain a first diffusion key, a second diffusion key, a third diffusion key and a fourth diffusion key whose lengths are equal to the length to be intercepted.
[0053] Based on any of the foregoing embodiments, the step of performing diffusion processing on the first obfuscated subgraph based on the first diffusion key and the second diffusion key to obtain a first encrypted subgraph includes: Converting the first obfuscated subgraph into a one-dimensional sequence, and converting each number in the one-dimensional sequence into an 8-bit binary number to obtain a first obfuscated sequence; Performing bitwise XOR of the first obfuscated sequence and the first diffusion key to obtain a first diffusion sequence, and performing bitwise XOR of the first diffusion sequence and the second diffusion key to obtain a second diffusion sequence; Each 8-bit binary number in the second diffusion sequence is converted into a decimal number and then converted into a two-dimensional sequence to obtain a first encrypted subgraph.
[0054] Based on any of the above embodiments, compressing the encrypted satellite image to obtain compressed encrypted satellite image data includes: The pixel value of each pixel point in the encrypted satellite image is converted into a binary number and then converted into one dimension to obtain a binary sequence to be compressed; Create an empty compressed queue, set an initial value based on the first value of the binary sequence to be compressed, store the initial value in the compressed queue, and set the initial value of the counter to 1, flag=1; The values of the binary sequence to be compressed are read in sequence. When flag=1, if the current value of the binary sequence to be compressed is equal to the initial value, the value of the counter is increased by 1. If the current value of the binary sequence to be compressed is not equal to the initial value, the value of the counter is stored in the compressed queue and the value of the counter is set to 1, and the flag is set to 0. When flag=0, if the current value of the binary sequence to be compressed is not equal to the initial value, the value of the counter is increased by 1. If the current value of the binary sequence to be compressed is equal to the initial value, the value of the counter is stored in the compressed queue and the value of the counter is set to 1, and the flag is set to 1. Based on the compressed queue, compressed encrypted satellite image data is constructed.
[0055] Figure 5 is a schematic diagram of the structure of the electronic device provided by the present invention, such as Figure 5As shown, the electronic device may include: a processor 510, a memory 520, a communications interface 530 and a communication bus 540, wherein the processor 510, the memory 520 and the communications interface 530 communicate with each other through the communication bus 540. The processor 510 may call the logic instructions in the memory 520 to execute a method for securely processing space network data, the method comprising: obtaining six randomized keys; the six randomized keys are binary sequences of the same length; dividing the satellite grayscale image to be transmitted into two sub-images of the same size; converting the first randomized key and the second randomized key of the six randomized keys into a first confusion permutation sequence and a second confusion permutation sequence; performing confusion processing on one of the sub-images based on the first confusion permutation sequence to obtain a first confusion subgraph, and performing confusion processing on the other sub-image based on the second confusion permutation sequence to obtain a second confusion subgraph; and performing confusion processing on the sub-image based on the second confusion permutation sequence to obtain a second confusion subgraph. The method comprises: intercepting the third random key, the fourth random key, the fifth random key and the sixth random key from the six random keys according to the size of the image to obtain a first diffusion key, a second diffusion key, a third diffusion key and a fourth diffusion key; performing diffusion processing on the first obfuscated subgraph based on the first diffusion key and the second diffusion key to obtain a first encrypted subgraph, and performing diffusion processing on the second obfuscated subgraph based on the third diffusion key and the fourth diffusion key to obtain a second encrypted subgraph; splicing the first encrypted subgraph and the second encrypted subgraph to obtain an encrypted satellite image, and compressing the encrypted satellite image to obtain compressed encrypted satellite image data.
[0056] In addition, the logic instructions in the above-mentioned memory 520 can be implemented in the form of a software functional unit and can be stored in a computer-readable storage medium when it is sold or used as an independent product. Based on such an understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art or the part of the technical solution, can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present invention. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), disk or optical disk, etc. Various media that can store program codes.
[0057] On the other hand, the present invention also provides a computer program product, the computer program product includes a computer program stored on a non-transitory computer-readable storage medium, the computer program includes program instructions, when the program instructions are executed by a computer, the computer can execute the security processing method of space network data provided by the above methods, the method comprising: obtaining six randomization keys; the six randomization keys are binary sequences of the same length; dividing the satellite grayscale image to be transmitted into two sub-images of the same size; converting the first randomization key and the second randomization key of the six randomization keys into a first confusion permutation sequence and a second confusion permutation sequence; performing obfuscation processing on one of the sub-images based on the first confusion permutation sequence to obtain a first confusion subgraph, and The second obfuscation permutation sequence performs obfuscation processing on another sub-image to obtain a second obfuscation sub-graph; based on the size of the sub-image, a third randomized key, a fourth randomized key, a fifth randomized key and a sixth randomized key are intercepted from the six randomized keys to obtain a first diffusion key, a second diffusion key, a third diffusion key and a fourth diffusion key; based on the first diffusion key and the second diffusion key, the first obfuscation sub-graph is diffused to obtain a first encrypted sub-graph, and based on the third diffusion key and the fourth diffusion key, the second obfuscation sub-graph is diffused to obtain a second encrypted sub-graph; the first encrypted sub-graph and the second encrypted sub-graph are spliced to obtain an encrypted satellite image, and the encrypted satellite image is compressed to obtain compressed encrypted satellite image data.
[0058] On the other hand, the present invention also provides a non-transitory computer-readable storage medium having a computer program stored thereon, which is implemented when the computer program is executed by a processor to execute the above-mentioned methods for securely processing space network data, the methods comprising: obtaining six randomization keys; the six randomization keys are binary sequences of the same length; dividing the satellite grayscale image to be transmitted into two sub-images of the same size; converting the first randomization key and the second randomization key of the six randomization keys into a first confusion permutation sequence and a second confusion permutation sequence; performing obfuscation processing on one of the sub-images based on the first confusion permutation sequence to obtain a first obfuscated subgraph, and performing obfuscation processing on the other sub-image based on the second confusion permutation sequence The invention relates to a method for performing an obfuscated subgraph and a second obfuscated subgraph; performing an obfuscated subgraph and a second obfuscated subgraph on the first obfuscated subgraph based on the size of the sub-image, and obtaining a first diffusion key, a second diffusion key, a third diffusion key and a fourth diffusion key; performing a diffusion process on the first obfuscated subgraph based on the first diffusion key and the second diffusion key to obtain a first encrypted subgraph; performing a diffusion process on the second obfuscated subgraph based on the third diffusion key and the fourth diffusion key to obtain a second encrypted subgraph; splicing the first encrypted subgraph and the second encrypted subgraph to obtain an encrypted satellite image; and compressing the encrypted satellite image to obtain compressed encrypted satellite image data.
[0059] The device embodiments described above are merely illustrative, wherein the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the scheme of this embodiment. Ordinary technicians in this field can understand and implement it without paying creative labor.
[0060] Through the description of the above implementation methods, those skilled in the art can clearly understand that each implementation method can be implemented by means of software plus a necessary general hardware platform, and of course, can also be implemented by hardware. Based on this understanding, the above technical solution is essentially or the part that contributes to the prior art can be embodied in the form of a software product, and the computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, a disk, an optical disk, etc., including a number of instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to execute the methods described in each embodiment or some parts of the embodiments.
[0061] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit it. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present invention.
Claims
1. A method for securely processing spatial network data, characterized in that: include: Get six randomized keys; The six randomized keys are binary sequences of the same length; Split the satellite grayscale image to be transmitted into two sub-images of the same size; Converting a first randomized key and a second randomized key among the six randomized keys into a first obfuscated permutation sequence and a second obfuscated permutation sequence; Performing obfuscation processing on one of the sub-images based on the first obfuscation permutation sequence to obtain a first obfuscation sub-graph, and performing obfuscation processing on the other sub-image based on the second obfuscation permutation sequence to obtain a second obfuscation sub-graph; intercepting a third randomized key, a fourth randomized key, a fifth randomized key, and a sixth randomized key from the six randomized keys based on the size of the sub-image to obtain a first diffusion key, a second diffusion key, a third diffusion key, and a fourth diffusion key; Diffusion processing is performed on the first obfuscated subgraph based on the first diffusion key and the second diffusion key to obtain a first encrypted subgraph, and diffusion processing is performed on the second obfuscated subgraph based on the third diffusion key and the fourth diffusion key to obtain a second encrypted subgraph; The first encrypted sub-graph and the second encrypted sub-graph are spliced to obtain an encrypted satellite image, and the encrypted satellite image is compressed to obtain compressed encrypted satellite image data.
2. The method for securely processing spatial network data according to claim 1, characterized in that: The converting the first randomized key and the second randomized key among the six randomized keys into the first obfuscated permutation sequence and the second obfuscated permutation sequence comprises: Convert the binary number of each preset bit of the first randomization key and the second randomization key into a decimal number to obtain a first initial permutation sequence and a second initial permutation sequence; The first initial permutation sequence and the second initial permutation sequence are converted into a first obfuscated permutation sequence and a second obfuscated permutation sequence based on the size of the sub-image.
3. The method for securely processing spatial network data according to claim 2, characterized in that: The converting the first initial permutation sequence and the second initial permutation sequence into a first confusion permutation sequence and a second confusion permutation sequence based on the size of the sub-image comprises: First initialization step: constructing an empty row permutation sequence and column permutation sequence, a row pointer and a column pointer, a pointer to be processed and a read pointer based on the size of the sub-image; wherein the length of the row permutation sequence is the number of vertical pixels of the sub-image, the length of the column permutation sequence is the number of horizontal pixels of the sub-image, the row pointer and the column pointer point to the first position of the row permutation sequence and the column permutation sequence respectively, the initial value of the pointer to be processed is the row pointer, and the read pointer points to the first position of the initial permutation sequence to be processed; the initial permutation sequence to be processed is the first initial permutation sequence or the second initial permutation sequence; Conversion step: if the current pointer to be processed is a row pointer, the read pointer is moved from the current position of the read pointer until the value currently pointed to by the read pointer does not overlap with the value in the row permutation sequence and is less than the length of the row permutation sequence, the value currently pointed to by the read pointer is stored at the position pointed to by the row pointer, the row pointer points to the next position, and the current pointer to be processed is set as the column pointer; if the current pointer to be processed is a column pointer, the read pointer is moved from the current position of the read pointer until the value currently pointed to by the read pointer does not overlap with the value in the column permutation sequence and is less than the length of the column permutation sequence, the value currently pointed to by the read pointer is stored at the position pointed to by the column pointer, the column pointer points to the next position, and the current pointer to be processed is set as the row pointer; Iteration step: repeating the conversion step until the row pointer traverses the row permutation sequence and the column pointer traverses the column permutation sequence, concatenating the row permutation sequence and the column permutation sequence to obtain a first confusion permutation sequence or a second confusion permutation sequence corresponding to the initial permutation sequence to be processed.
4. The method for securely processing spatial network data according to claim 3, characterized in that: The step of performing obfuscation processing on one of the sub-images based on the first obfuscation permutation sequence to obtain a first obfuscated sub-image includes: Second initialization step: constructing a first pointer and a second pointer; the first pointer points to the first position of the first obfuscated permutation sequence, and the second pointer points to the last position of the first obfuscated permutation sequence; Pixel replacement step: determining a first replacement pixel point of the sub-image based on the current position of the first pointer and the current position of the second pointer; determining a second replacement pixel point of the sub-image based on the value currently pointed to by the first pointer and the value currently pointed to by the second pointer; exchanging the pixel values of the first replacement pixel point and the second replacement pixel point, and jumping to the row iteration step; Row iteration step: if the second pointer reaches the N+1th position of the first confusion permutation sequence, jump to the column iteration step; otherwise, move the second pointer forward and jump to the pixel permutation step; N is the length of the row permutation sequence; Column iteration step: if the first pointer does not reach the Nth position of the first obfuscated permutation sequence, move the first pointer backward, point the second pointer to the last position of the first obfuscated permutation sequence, and jump to the pixel permutation step.
5. The method for securely processing spatial network data according to claim 1, characterized in that: The obtaining of six randomized keys includes: Generate six chaotic sequences of the same length based on the chaotic system; Based on any chaotic sequence, the first preset number of digits after the decimal point of each number in the any chaotic sequence is intercepted to form an intercepted sequence of the any chaotic sequence; Convert each number in the intercepted sequence of any chaotic sequence into an integer and then convert it into a binary number of a second preset number of bits to obtain a conversion sequence of any chaotic sequence; Each number in the conversion sequence of any chaotic sequence is concatenated to obtain a randomized key of any chaotic sequence.
6. The method for securely processing spatial network data according to claim 1, characterized in that: The method of intercepting the third randomized key, the fourth randomized key, the fifth randomized key and the sixth randomized key from the six randomized keys based on the size of the sub-image to obtain the first diffusion key, the second diffusion key, the third diffusion key and the fourth diffusion key includes: Determine the product of the number of pixels of the sub-image and 8 as the length to be truncated; The third randomized key, the fourth randomized key, the fifth randomized key and the sixth randomized key are respectively intercepted based on the length to be intercepted to obtain a first diffusion key, a second diffusion key, a third diffusion key and a fourth diffusion key whose lengths are equal to the length to be intercepted.
7. The method for securely processing spatial network data according to claim 6, characterized in that: The step of performing diffusion processing on the first obfuscated subgraph based on the first diffusion key and the second diffusion key to obtain a first encrypted subgraph includes: Converting the first obfuscated subgraph into a one-dimensional sequence, and converting each number in the one-dimensional sequence into an 8-bit binary number to obtain a first obfuscated sequence; Performing bitwise XOR of the first obfuscated sequence and the first diffusion key to obtain a first diffusion sequence, and performing bitwise XOR of the first diffusion sequence and the second diffusion key to obtain a second diffusion sequence; Each 8-bit binary number in the second diffusion sequence is converted into a decimal number and then converted into a two-dimensional sequence to obtain a first encrypted subgraph.
8. The method for securely processing spatial network data according to any one of claims 1 to 7, characterized in that: The step of compressing the encrypted satellite image to obtain compressed encrypted satellite image data includes: The pixel value of each pixel point in the encrypted satellite image is converted into a binary number and then converted into one dimension to obtain a binary sequence to be compressed; Create an empty compressed queue, set an initial value based on the first value of the binary sequence to be compressed, store the initial value in the compressed queue, and set the initial value of the counter to 1, flag=1; The values of the binary sequence to be compressed are read in sequence. When flag=1, if the current value of the binary sequence to be compressed is equal to the initial value, the value of the counter is increased by 1. If the current value of the binary sequence to be compressed is not equal to the initial value, the value of the counter is stored in the compressed queue and the value of the counter is set to 1, and the flag is set to 0. When flag=0, if the current value of the binary sequence to be compressed is not equal to the initial value, the value of the counter is increased by 1. If the current value of the binary sequence to be compressed is equal to the initial value, the value of the counter is stored in the compressed queue and the value of the counter is set to 1, and the flag is set to 1. Based on the compressed queue, compressed encrypted satellite image data is constructed.
9. A secure processing device for spatial network data, characterized in that: include: A key acquisition unit, used for acquiring six randomized keys; The six randomized keys are binary sequences of the same length; An image segmentation unit, used for segmenting the satellite grayscale image to be transmitted into two sub-images of the same size; A confusion sequence acquisition unit, used for converting a first randomized key and a second randomized key among the six randomized keys into a first confusion permutation sequence and a second confusion permutation sequence; a confusion unit, configured to perform confusion processing on one of the sub-images based on the first confusion permutation sequence to obtain a first confusion sub-graph, and perform confusion processing on the other sub-image based on the second confusion permutation sequence to obtain a second confusion sub-graph; a diffusion key acquisition unit, configured to intercept the third randomization key, the fourth randomization key, the fifth randomization key and the sixth randomization key from the six randomization keys based on the size of the sub-image, and obtain the first diffusion key, the second diffusion key, the third diffusion key and the fourth diffusion key; a diffusion unit, configured to perform diffusion processing on the first obfuscated subgraph based on the first diffusion key and the second diffusion key to obtain a first encrypted subgraph, and perform diffusion processing on the second obfuscated subgraph based on the third diffusion key and the fourth diffusion key to obtain a second encrypted subgraph; The compression unit is used to splice the first encrypted sub-image and the second encrypted sub-image to obtain an encrypted satellite image, and compress the encrypted satellite image to obtain compressed encrypted satellite image data.
10. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein: When the processor executes the program, it implements the method for securely processing spatial network data as described in any one of claims 1 to 8.
Citation Information
Patent Citations
Multi-key image encryption method based on five-dimensional conservative hyperchaotic system
CN115766962A
Power plant image data encryption and decryption method and system
CN117061680A
Power transmission line monitoring image security encryption and decryption method
CN118400093A
Image encryption method and device
CN118631417A