A privacy protection calculation method and system for hyperspectral remote sensing image data
Through the collaborative work of user computing devices, key management centers and cloud servers, using index sets to element-by-element encryption and sampling detection verification, the privacy protection calculation of hyperspectral remote sensing image data is optimized, solving the problem of heavy computing burden on user computing devices, and improving the encryption and decryption efficiency and result verification speed.
Patent Information
- Application Number
- CN202510378881.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-03-28
- Publication Date
- 2025-07-04
- Estimated Expiration
- 2045-03-28
AI Technical Summary
In the privacy protection calculation of hyperspectral remote sensing image data, the computing burden of user computing devices is heavy, and the encryption and decryption and verification operations are inefficient, which cannot effectively reduce the additional overhead of privacy protection operations.
User computing equipment, key management center and cloud server work together, use index sets as keys to encrypt the hyperspectral remote sensing image matrix element by element, and perform privacy protection calculations on the cloud server side, and combine sampling detection ideas for verification and decryption to optimize the encryption and decryption process.
It reduces the key storage burden of user computing devices, improves the encryption and decryption efficiency of hyperspectral remote sensing image data, ensures the confidentiality of plain text data and the integrity and availability of results, and shortens the result verification time.
Smart Images

Figure CN119918089B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of data security, and more particularly to a privacy protection calculation method and system for hyperspectral remote sensing image data. Background Art
[0002] Hyperspectral remote sensing image data plays an important role in application fields such as geographic information mapping, environmental monitoring, land resource survey, and agricultural monitoring. With the development of ground object image acquisition technology, hyperspectral remote sensing technology uses hyperspectral images containing more than a hundred spectral band information to achieve precise remote sensing analysis. Each pixel point of a hyperspectral image has rich spatial, radiometric, and spectral information, and can exhibit numerous response characteristics of ground objects to electromagnetic waves. Generally, in the process of hyperspectral remote sensing, an image is processed into a high-dimensional matrix, and machine learning algorithms for remote sensing analysis such as feature selection, anomaly detection, and object recognition can use high-dimensional pixel feature vectors to extract significant target features, thereby achieving accurate analysis and prediction of ground object information.
[0003] Based on the characteristics of hyperspectral image data, large-scale matrix operations, such as matrix multiplication in image filtering convolution operations and vector dimensionality reduction principal component analysis algorithms, matrix pseudo-inversion operations in image fitting least squares methods and feature selection sparse representation algorithms, etc., play an important role in performing hyperspectral remote sensing tasks. However, while a large amount of spectral band data provides rich information for remote sensing analysis, the operation of large-scale hyperspectral image matrices brings a heavy computational burden to user computing devices.
[0004] Currently, collaborating with a cloud server to complete complex computational tasks is an effective solution for hyperspectral remote sensing analysis. By sending computationally demanding tasks to a cloud server with stronger computing power for privacy protection calculations, the difficulty of local hyperspectral remote sensing analysis can be effectively reduced while ensuring data security. Currently, machine learning solutions based on cloud computing widely use various privacy protection methods to ensure the confidentiality, integrity, and availability of data during the calculation process. Among them, the privacy protection calculation method based on matrix blinding has the advantages of high efficiency and low resource consumption, and is more suitable for machine learning tasks such as remote sensing analysis with real-time feedback requirements. The matrix blinding method usually uses a specially designed matrix as the key, and uses sparse matrix multiplication and vector-matrix multiplication to add perturbation terms and perform row and column permutations on the plaintext matrix, thereby realizing the encrypted state calculation of sensitive data without revealing privacy information.
[0005] However, for the privacy protection calculation process of hyperspectral remote sensing image data, in order to improve the efficiency of remote sensing analysis on user computing devices and reduce the additional overhead caused by privacy protection operations, it is necessary to further improve the privacy protection calculation method and optimize the encryption, decryption, and verification operations on the user side. Summary of the Invention
[0006] In view of this, the present invention provides a privacy protection calculation method and system for hyperspectral remote sensing image data, which can improve the encryption and decryption efficiency of hyperspectral remote sensing images.
[0007] To achieve the above object, the present invention adopts the following technical solutions:
[0008] In a first aspect, the present invention discloses a privacy protection calculation method for hyperspectral remote sensing image data, which is jointly participated in the calculation process by a user computing device, a key management center, and a cloud server, and includes the following steps:
[0009] The key management center generates an index set as a key and sends it to the user computing device through a secure channel;
[0010] According to different privacy protection calculation schemes to be executed, the user computing device performs corresponding encryption calculations on the hyperspectral remote sensing image matrix using the key sent by the key management center, and sends the encrypted data to the cloud server;
[0011] According to different privacy protection calculation schemes to be executed, the cloud server performs corresponding privacy protection calculations on the encrypted data and returns the encrypted calculation result to the user computing device;
[0012] The user computing device verifies and decrypts the encrypted calculation result in a corresponding manner according to different privacy protection calculation schemes to be executed, and obtains the final calculation result.
[0013] Further, the key management center randomly generates an index set , , , as the key;
[0014] When the user computing device needs to perform privacy protection calculation of matrix multiplication, at this time, there are two hyperspectral remote sensing image matrices and to be operated. Use the index set to encrypt each element in the matrix individually to obtain , and then use the index set to encrypt each element of individually to obtain ; Use the index set to encrypt each element in the matrix individually to obtain , and then use the index set to encrypt each element of individually to obtain ;
[0015] When the user's computing device needs to perform matrix pseudo-inverse privacy protection calculation, at this time, there is a hyperspectral remote sensing image matrix to be calculated. , use the index set to encrypt each element of the matrix separately, and obtain . Then use the index set to encrypt each element of separately, and obtain .
[0016] Further, the generation processes of the index sets , and are the same. For an index set with a length of n, the generation process includes:
[0017] Select a random permutation function ;
[0018] Create the permutation index , where ;
[0019] Create the inverse permutation index , where ;
[0020] Create the value index , and all its elements are initially set to 0;
[0021] Generate a loop, where to for a total of rounds: Set the security parameter , and uniformly select random integers and within the interval , and calculate ; Calculate , ;
[0022] Generate the key index set .
[0023] Further, use the index set to encrypt each element in the matrix , and obtain , which is expressed as:
[0024] ;
[0025] Among them, , ; represents the row encryption and decryption function; Represents a matrix The row and the column element; Represents the index of the th element; Represents a matrix The row and the column element; Represents the index of the th element; Represents a matrix The row and the column element; Represents a matrix The row and the column element; Represents the index of the th element;
[0026] Using the index set to encrypt each element individually to obtain , expressed as:
[0027] ;
[0028] Wherein, , ; Represents the inverse column encryption / decryption function; Represents the index of the th element; Represents a matrix The row and the column element; Represents the index of the th element; Represents a matrix The row and the column element; Represents a matrix The row and the column element; Represents the index of the th element;
[0029] Using the index set to the matrix Each element is encrypted separately to obtain , expressed as:
[0030] ;
[0031] Among them, , ; represents the element in the th row and th column of the matrix; represents the element in the th row and th column of the matrix; represents the element in the th
[0032] Using the index set to each element is encrypted separately to obtain , expressed as:
[0033] ;
[0034] Among them, , ; represents the element in the th row and th column of the matrix; represents the element in the th row and th column of the matrix; represents the element in the th
[0035] Furthermore, according to different privacy protection calculation schemes that the cloud server needs to execute, corresponding privacy protection calculations are performed on the encrypted data, including:
[0036] When performing privacy protection calculation of matrix multiplication, the cloud server receives the encrypted matrices , , performs matrix multiplication calculation, and obtains the calculation result , ;
[0037] When performing privacy protection calculation of matrix pseudo-inverse, the cloud server receives the encrypted matrix , performs matrix pseudo-inverse calculation, if , then the matrix The right inverse matrix exists, and the cloud server calculates ;
[0038] If , then the left inverse matrix of matrix exists, and the cloud server calculates .
[0039] Furthermore, when performing matrix multiplication privacy protection calculation, the user's computing device verifies the encrypted calculation result based on the sampling detection idea. The verification process includes:
[0040] a) Generate the number of verification rounds ;
[0041] b) Initialize the verification result ;
[0042] c) Perform a loop from to :
[0043] For each loop, randomly select two integers and , and generate an integer pair ; Extract the encrypted element from ;
[0044] Calculate the verification element ;
[0045] Extract the encrypted element from the -th row of , and extract the encrypted element from the -th column of ;
[0046] Calculate the verification element , represents a variable with a range of , represents the number of columns of matrix and the number of rows of matrix , represents the element in the -th row and -th column of matrix , represents the element in the -th row and -th column of matrix ;
[0047] If , let , and exit the loop; otherwise, continue the loop;
[0048] d) Obtain the verification result , if , then the verification is passed, and the user computing device accepts ; otherwise, it is rejected .
[0049] Furthermore, when performing matrix pseudo-inverse privacy protection calculation, the user computing device verifies the encrypted calculation result based on the sampling detection idea. The verification includes:
[0050] a) Generate the number of verification rounds ;
[0051] b) Initialize the verification result ;
[0052] c) Conduct a loop, from to :
[0053] For each loop, randomly select two integers and , and generate an integer pair ;
[0054] If , conduct a loop, from to :
[0055] Extract the encrypted elements and from the -th row and the -th row of respectively, and calculate , represents a variable with a range of , represents the element in the -th row and the -th column of matrix , represents the element in the -th row and the -th row of matrix ;
[0056] Extract the encrypted element from the -th row of , and calculate , represents the element in the -th row and the -th column of matrix , represents the -th element of vector ;
[0057] If , perform a loop from to :
[0058] Extract the encryption elements from the th column and the th column of and respectively, calculate , represents the element in the th row and the th column of the matrix , represents the element in the th row and the th column of the matrix ;
[0059] Extract the encryption element from the th column of , calculate , represents the element in the th row and the th column of the matrix ;
[0060] Calculate the verification element ;
[0061] If , let , and exit the loop; otherwise, continue the loop;
[0062] d) Obtain the verification result , if , then the verification is passed, and the user computing device accepts ; otherwise, it rejects .
[0063] Furthermore, when performing matrix multiplication privacy protection calculation, the process of the user computing device decrypting the encrypted calculation result includes:
[0064] Use the index set to decrypt each element in , obtaining , and the decryption process is expressed as:
[0065] ;
[0066] Among them, , ; represents the reverse encryption and decryption function; Represents the th element; Represents the th row and th column element of the matrix; Represents the th element of the index ; Represents the th row and th column element of the matrix; Represents the th row and th column element of the matrix; Represents the th
[0067] Decrypt each element in the index set to obtain the final calculation result . The decryption process is expressed as:
[0068] ;
[0069] where represents the reverse encryption / decryption function; Represents the th element of the index ; Represents the th row and th column element of the matrix; Represents the th element of the index ; Represents the th row and th column element of the matrix; Represents the th row and th element of the index ; element.
[0070] Further, when performing matrix pseudo-inverse privacy protection calculation, the process of the user computing device decrypting the ciphertext calculation result includes:
[0071] Using each element in the index set to decrypt and obtaining , and the decryption process is expressed as:
[0072] ;
[0073] Using each element in the index set to decrypt and obtaining the final calculation result , and the decryption process is expressed as:
[0074] .
[0075] In a second aspect, the present invention discloses a privacy protection calculation system for hyperspectral remote sensing image data, including: a user computing device, a key management center, and a cloud server, and performing encryption and decryption calculations on the hyperspectral remote sensing image matrix by using the method described above;
[0076] The key management center is used to generate an index set as a key and send it to the user computing device through a secure channel;
[0077] The user computing device is used to perform corresponding encryption calculations on the hyperspectral remote sensing image matrix by using the key sent by the key management center according to different privacy protection calculation schemes required, and send the encrypted data to the cloud server;
[0078] The cloud server is used to perform corresponding privacy protection calculations on the encrypted data according to different privacy protection calculation schemes required, and return the ciphertext calculation result to the user computing device;
[0079] The user computing device is used to perform corresponding verification and decryption on the ciphertext calculation result according to different privacy protection calculation schemes required to obtain the final calculation result.
[0080] It can be seen from the above technical solutions that, compared with the prior art, the present invention has the following beneficial effects:
[0081] 1. For the privacy protection calculation scheme of hyperspectral remote sensing image matrix multiplication operation and pseudo-inverse operation, the user performs plaintext data encryption and decryption operations locally, and performs privacy protection calculations on ciphertext data at the cloud server side, reducing the burden of key storage and realizing efficient processing of hyperspectral remote sensing image data.
[0082] 2. The present invention uses an index set as a key to encrypt hyperspectral remote sensing image data, and completes blind operations such as adding perturbation terms and position permutation element by element, reducing the key storage cost of the user's computing device and improving the encryption and decryption efficiency of large-scale matrices.
[0083] 3. When verifying the privacy protection result, the present invention introduces an efficient vector matrix multiplication to complete the verification process based on the idea of sampling detection, and uses ciphertext data to detect the correctness of the returned result, ensuring the confidentiality of plaintext data, the integrity and availability of plaintext results, and accelerating the speed of result correctness verification. BRIEF DESCRIPTION OF THE DRAWINGS
[0084] In order to more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the following will briefly introduce the drawings required in the description of the embodiments or the prior art. Obviously, the drawings in the following description are only the embodiments of the present invention. For those of ordinary skill in the art, other drawings can be obtained according to the provided drawings without creative efforts.
[0085] Figure 1 It is a flowchart of the privacy protection calculation method for hyperspectral remote sensing image data provided by the present invention;
[0086] Figure 2 It is a flowchart when the privacy protection calculation method for hyperspectral remote sensing image data provided by the present invention performs matrix pseudo-inverse privacy protection calculation. DETAILED DESCRIPTION OF THE EMBODIMENTS
[0087] The following will clearly and completely describe the technical solutions in the embodiments of the present invention with reference to the drawings in the embodiments of the present invention. Obviously, the described embodiments are only a part of the embodiments of the present invention, rather than all the embodiments. All other embodiments obtained by those of ordinary skill in the art based on the embodiments of the present invention without creative efforts belong to the scope of protection of the present invention.
[0088] As Figure 1 shown, the embodiment of the present invention discloses a privacy protection calculation method for hyperspectral remote sensing image data, which is jointly participated in the calculation process by a user computing device, a key management center and a cloud server, and includes the following steps:
[0089] S1. The key management center generates an index set as a key and sends it to the user computing device through a secure channel;
[0090] S2. The user computing device performs corresponding encryption calculations on the hyperspectral remote sensing image matrix using the key sent by the key management center according to different privacy protection calculation schemes required, and sends the encrypted data to the cloud server;
[0091] S3. Depending on the different privacy protection calculation schemes that need to be executed, the cloud server performs corresponding privacy protection calculations on the encrypted data and returns the ciphertext calculation results to the user computing device;
[0092] S4. The user computing device verifies and decrypts the ciphertext calculation results in a corresponding manner according to the different privacy protection calculation schemes that need to be executed to obtain the final calculation results.
[0093] Next, the above steps will be further described.
[0094] S1. The key management center randomly generates index sets , , as keys; the generation processes of the index sets , and are the same. Taking the generation process of the index set as an example, for an index set of length n, the generation process includes:
[0095] Select a random permutation function ;
[0096] Create a permutation index , where ;
[0097] Create an inverse permutation index , where ;
[0098] Create a value index , all of whose elements are initially 0;
[0099] Generate a loop, where to for a total of rounds: Set the security parameter , and uniformly select random integers within the interval and , calculate ; calculate , ;
[0100] Generate a key index set .
[0101] S2. According to the different privacy protection calculation schemes that the user computing device needs to execute, the user computing device performs corresponding encryption calculations on the hyperspectral remote sensing image matrix using the key sent by the key management center, and sends the encrypted data to the cloud server; the privacy protection calculation scheme to be executed is matrix multiplication privacy protection calculation or matrix pseudoinverse privacy protection calculation.
[0102] 1) When the user computing device needs to execute matrix multiplication privacy protection calculation, at this time, there are two hyperspectral remote sensing image matrices that need to be operated and , represents the set of real numbers, represents the number of rows of the matrix, represents the number of columns of the matrix and the number of rows of the matrix, represents the number of columns of the matrix; use the index set to encrypt each element in the matrix individually to obtain , and then use the index set to encrypt each element of individually to obtain ; use the index set to encrypt each element in the matrix individually to obtain , and then use the index set to encrypt each element of individually to obtain ; specifically including:
[0103] Use the index set to encrypt each element in the matrix individually to obtain , expressed as:
[0104] ;
[0105] Among them, , ; represents the row encryption / decryption function; represents the matrix the th row and th column element; represents the index the th element; represents the matrix the th row and th column element; Represents the th element; Represents the th row and th column element of the matrix; Represents the th row and Represents the th element;
[0106] Each element of is separately encrypted using the index set to obtain , expressed as:
[0107] ;
[0108] Among them, , ; Represents the inverse column encryption and decryption function; Represents the th element; Represents the th row and th Represents the th element; Represents the th row and th Represents the th row and th Represents the th element;
[0109] Each element of the matrix is separately encrypted using the index set to obtain , expressed as:
[0110] ;
[0111] Among them, , ; Represents the th the element in the th row and represents the matrix the th row and th column; represents the matrix the th row and th column;
[0112] Use the index set to encrypt each element of separately, and obtain
[0113] ;
[0114] where and ; represents the matrix the th row and th column; represents the matrix the th row and th column; represents the matrix the th row and th column.
[0115] 2) When the user's computing device needs to perform matrix pseudo-inverse privacy protection calculation, at this time, there is a hyperspectral remote sensing image matrix to be operated on. Use the index set to encrypt each element of the matrix separately, and obtain Then use the index set to encrypt each element of
[0116] Use the index set to encrypt each element of separately, and obtain
[0117] ;
[0118] Use the index set to encrypt each element of separately, and obtain
[0119] 。
[0120] S3. According to the different privacy protection calculation schemes that need to be executed, the cloud server performs corresponding privacy protection calculations on the encrypted data.
[0121] 1) When performing the privacy protection calculation of matrix multiplication, the cloud server receives the encrypted matrices 、 , performs matrix multiplication calculation, and obtains the calculation result , ;
[0122] 2) When performing the privacy protection calculation of matrix pseudoinverse, the cloud server receives the encrypted matrix , performs matrix pseudoinverse calculation. If , then the right inverse matrix of the matrix exists, and the cloud server calculates ;
[0123] If , then the left inverse matrix of the matrix exists, and the cloud server calculates .
[0124] S4. The user computing device verifies and decrypts the ciphertext calculation result in a corresponding manner according to the different privacy protection calculation schemes that need to be executed, and obtains the final calculation result.
[0125] S41. The verification process includes:
[0126] A. When performing the privacy protection calculation of matrix multiplication, the user computing device executes the verification algorithm, verifies the ciphertext calculation result based on the idea of sampling detection. The user computing device calculates some elements in the encrypted matrices and , and compares the results of these calculations with the results returned by the cloud server. If all the selected elements pass the verification, the user computing device accepts the returned result . The specific verification process includes:
[0127] a) Generate the number of verification rounds ;
[0128] b) Initialize the verification result ;
[0129] c) Conduct a loop, from to :
[0130] For each loop, randomly select two integers and , and generate an integer pair ; Extract the encryption elements from ; ;
[0131] Calculate the verification element ;
[0132] Extract the encryption elements from the th row, and extract the encryption elements from the th row and the rd column;
[0133] Calculate the verification element , represents a variable with a range of , represents the number of columns of matrix and the number of rows of matrix , represents the element at the th row and th column of matrix ; represents the element at the th
[0134] If , let , and exit the loop; otherwise, continue the loop;
[0135] d) Obtain the verification result . If , the verification is passed, and the user computing device accepts ; otherwise, it rejects .
[0136] B. When performing matrix pseudo-inverse privacy protection calculation, the user computing device executes the designed verification algorithm, verifies the encrypted calculation result based on the sampling detection idea, calculates some elements in the encrypted matrix , and compares the results of these calculations with the results returned by the cloud server. If all the selected elements pass the verification, the user computing device accepts the returned result . The specific verification process includes:
[0137] a) Generate the number of verification rounds ;
[0138] b) Initialize the verification result ;
[0139] c) Conduct a loop, starting from to :
[0140] For each loop, randomly select two integers and , and generate an integer pair ;
[0141] If , perform a loop from to :
[0142] Extract the encryption elements from the th row and the th row of and respectively, calculate , represents a variable with a range of , represents the element in the th row and th column of the matrix ; represents the element in the th row and th column of the matrix ;
[0143] Extract the encryption element from the th row of , calculate , represents the element in the th row and th column of the matrix ; represents the th element of the vector ;
[0144] If , perform a loop from to :
[0145] Extract the encryption elements from the th column and the th column of and respectively, calculate , represents the element in the th row and th column of the matrix ; represents the element in the th row and th column of the matrix Elements of the column
[0146] Extract the encrypted elements from the th column, calculate , , denote the element at the th row and th column of the matrix
[0147] Calculate the verification element ;
[0148] If , let , and exit the loop; otherwise, continue the loop;
[0149] d) Obtain the verification result , if , then the verification is passed, and the user computing device accepts ; otherwise, reject .
[0150] S42. The user computing device decrypts the ciphertext calculation result in a corresponding manner according to the different privacy protection calculation schemes to be executed.
[0151] A. When performing the privacy protection calculation of matrix multiplication, the process of the user computing device decrypting the ciphertext calculation result includes:
[0152] Use the index set to decrypt each element in to obtain , and the decryption process is expressed as:
[0153] ;
[0154] where , ; denotes the reverse row addition and decryption function; denotes the th element of the index denotes the element at the th row and th column of the matrix denotes the th element of the index denotes the th element of the index denotes the element at the th the element in the th row and representing matrix the th row and th column; representing the th element of index ;
[0155] Using the index set to decrypt each element in to obtain the final calculation result
[0156] ;
[0157] where represents the reverse encryption / decryption function; representing the th element of index ; representing matrix the th row and th column; representing the th element of index ; representing the th element of index ; representing matrix the th row and th column; representing matrix the th row and th column; representing the th element of index ;
[0158] Since S is eliminated during the privacy-preserving calculation process, the ciphertext result matrix is protected by keys M and N. Therefore, S is not required for decryption.
[0159] B. When performing matrix pseudo-inverse privacy-preserving calculation, the process of decrypting the ciphertext calculation result by the user's computing device includes:
[0160] Using the index set to decrypt each element in to obtain
[0161] ;
[0162] Use the index set Decrypt each element in to obtain the final calculation result , and the decryption process is expressed as:
[0163] .
[0164] In other embodiments, the present invention further provides a privacy protection computing system for hyperspectral remote sensing image data, including: a user computing device, a key management center, and a cloud server, which perform encryption and decryption calculations on the hyperspectral remote sensing image matrix by using the method described above;
[0165] The key management center is used to generate an index set as a key and send it to the user computing device through a secure channel;
[0166] The user computing device is used to perform corresponding encryption calculations on the hyperspectral remote sensing image matrix by using the key sent by the key management center according to different privacy protection calculation schemes to be executed, and send the encrypted data to the cloud server;
[0167] The cloud server is used to perform corresponding privacy protection calculations on the encrypted data according to different privacy protection calculation schemes to be executed, and return the calculation result to the user computing device;
[0168] The user computing device is used to verify and decrypt the calculation result in a corresponding manner according to different privacy protection calculation schemes to be executed to obtain the final calculation result.
[0169] The various embodiments in this specification are described in a progressive manner. Each embodiment focuses on the differences from other embodiments. The same or similar parts among the various embodiments can be referred to each other. For the devices disclosed in the embodiments, since they correspond to the methods disclosed in the embodiments, the description is relatively simple. For the relevant parts, reference can be made to the description in the method part.
[0170] The above description of the disclosed embodiments enables those skilled in the art to implement or use the present invention. Various modifications to these embodiments will be obvious to those skilled in the art. The general principles defined herein can be implemented in other embodiments without departing from the spirit or scope of the present invention. Therefore, the present invention will not be limited to these embodiments shown herein, but rather to the widest scope consistent with the principles and novel features disclosed herein.
Claims
1. A privacy - protected computing method for hyperspectral remote sensing image data, characterized in that, The computing process involves the joint participation of a user computing device, a key management center, and a cloud server, including the following steps: The key management center generates an index set as the key and sends it to the user computing device D through a secure channel; According to the different privacy-preserving computing schemes to be executed, the user computing device performs corresponding encryption calculations on the hyperspectral remote sensing image matrix using the key sent by the key management center and sends the encrypted data to the cloud server; According to different privacy protection calculation schemes that need to be executed, the cloud server performs corresponding privacy protection calculations on the encrypted data and returns the encrypted calculation results to the user computing device; when performing privacy protection calculations for matrix multiplication, the cloud server receives the encrypted matrices , , performs matrix multiplication calculations, and obtains the calculation results , ; When performing matrix pseudo-inverse privacy protection calculation, the cloud server receives an encrypted matrix , performs matrix pseudo-inverse calculation. If , then the right inverse matrix of matrix exists, and the cloud server calculates , where m represents the number of rows of matrix , n represents the number of columns of matrix , and represent two hyperspectral remote sensing image matrices to be operated on; If , then the left inverse matrix of matrix exists, and the cloud server calculates ; According to the different privacy-preserving computing schemes to be executed, the user computing device verifies and decrypts the encrypted calculation results in a corresponding manner to obtain the final calculation results; When performing privacy-preserving matrix multiplication calculations, the user computing device verifies the encrypted calculation results based on the idea of sampling detection. The verification process includes: a) Generate the number of verification rounds ; b) Initialize the verification result ; c) Perform a loop from to : For each loop, randomly select two integers and , generating an integer pair ; extract the encryption element from ; Calculation verification element ; Extract encryption elements from the th row, and extract encryption elements from the th column of ; Calculate verification elements , The range is variables, Representation Matrix The number of columns and matrix the number of rows, Representation Matrix No. Line The elements of the column, Representation Matrix No. Line Elements of a column; If , let , and exit the loop; otherwise, continue the loop; d) Obtain the verification result , if , then the verification is passed, and the user computing device accepts ; otherwise, it rejects .
2. The privacy protection calculation method for hyperspectral remote sensing image data according to claim 1, characterized in that The key management center randomly generates an index set , , , which serves as the key When the user's computing device needs to perform privacy-preserving matrix multiplication calculations, at this time, there are two hyperspectral remote sensing image matrices that need to be operated on and , use the index set to encrypt each element in the matrix individually to obtain , and then use the index set to encrypt each element of individually to obtain ; Use the index set to encrypt each element in the matrix individually to obtain , and then use the index set to encrypt each element of individually to obtain ; When the user's computing device needs to perform matrix pseudo-inverse privacy protection calculations, at this time, there is a hyperspectral remote sensing image matrix that needs to be calculated , use the index set to encrypt each element of the matrix individually to obtain , and then use the index set to encrypt each element of individually to obtain .
3. The privacy protection calculation method for hyperspectral remote sensing image data according to claim 2, wherein Index set , and have the same generation process. For an index set of length n the generation process includes: Select a random permutation function ; Create a permutation index , where ; Create an inverse permutation index , where ; Create a value index , all of whose elements have an initial value of 0; Generate a loop, where to a total of rounds: Set the security parameter , and uniformly select random integers within the interval and , and calculate ; Calculate , ; Generate key index set .
4. The privacy protection calculation method for hyperspectral remote sensing image data according to claim 2, wherein Using an index set each element in the matrix is encrypted individually to obtain , which is expressed as: ; Among them, , ; represents the row encryption and decryption function; represents the matrix the th element in the row and the th element of the index the th element in the row and the th element of the index the th element in the row and the th element in the row and the th element of the index; Use the index set For each element of perform separate encryption to obtain , which is expressed as: ; Among them, , ; represents the inverse column encryption / decryption function; represents the th element of the index; represents the th row and th column element of the matrix; represents the th element of the index; represents the th row and represents the th row and th represents the th element of the index; Using an index set for each element of the matrix to perform individual encryption, resulting in , expressed as: ; Among them, , ; represents the matrix the th element of the column in the row; represents the matrix the th element of the column in the row; represents the matrix the th element of the column in the row; Using an index set for each element of which is individually encrypted to obtain , expressed as: ; Among them, , ; represents the matrix the th element of the column; represents the matrix the th element of the column; represents the matrix the th element of the column.
5. The privacy protection calculation method for hyperspectral remote sensing image data according to claim 1, wherein When performing privacy-preserving matrix pseudoinverse calculations, the user computing device verifies the encrypted calculation results based on the idea of sampling detection. The verification process includes: e) Generate the number of verification rounds ; f) Initialization verification result ; g) Perform a loop from to : For each loop, two integers are randomly selected and to generate an integer pair ; If , perform a loop from to : Extract the encryption elements from the th row and the th row of respectively, calculate , , where is a variable with a range of , represents the element in the th row and the th column of the matrix , represents the element in the th row and the th column of the matrix ; Extract the encryption element from the th row of , calculate , denotes the element at the th row and th column of matrix , and denotes the th element of vector If , perform a loop from to : Extract the encryption elements from the th column and the th column respectively, calculate and , , represents the element in the th row and th column of the matrix, ; represents the element in the th row and th column of the matrix; Extract the encryption element from the third column, calculate , where denotes the element at the i-th row and j-th column of the matrix i -th row and j-th column; Calculation verification element ; If , let , and exit the loop; otherwise, continue the loop; h) Obtain the verification result , if , then the verification is passed and the user computing device accepts ; otherwise, it is rejected .
6. The privacy protection calculation method for hyperspectral remote sensing image data according to claim 1, wherein, When performing privacy-preserving matrix multiplication calculations, the process by which the user computing device decrypts the encrypted calculation results includes: Using the index set Decrypt each element in to obtain ; Among them, , ; represents the reverse encryption and decryption function; represents the index of the th element; represents the th row and th column element of the matrix; represents the index of the th element; represents the index of the th element; represents the th row and th column element of the matrix; represents the th row and th column element of the matrix; represents the index of the th element; Use the index set Decrypt each element in to obtain the final calculation result , and the decryption process is expressed as: ; Among them, represents the reverse encryption and decryption function; represents the index of the th element; represents the th row and th column element of the matrix of the th element; represents the index of the th element; represents the th row and th column element of the matrix of the th row and th column; represents the th element of the index 7. The privacy protection calculation method for hyperspectral remote sensing image data according to claim 1, characterized in that When performing privacy-preserving matrix pseudoinverse calculations, the process by which the user computing device decrypts the encrypted calculation results includes: Using the index set Decrypt each element in , and the decryption process is expressed as: ; Using the index set Decrypt each element in to obtain the final calculation result , and the decryption process is expressed as: 。 8. A privacy protection computing system for hyperspectral remote sensing image data, characterized in that, Including: The user computing device, the key management center, and the cloud server perform encryption and decryption calculations on the hyperspectral remote sensing image matrix using the method described in any one of claims 1-7; The key management center is used to generate an index set as the key and send it to the user computing device through a secure channel; The user computing device is used to perform corresponding encryption calculations on the hyperspectral remote sensing image matrix using the key sent by the key management center according to the different privacy-preserving computing schemes to be executed and send the encrypted data to the cloud server; The cloud server is used to perform corresponding privacy-preserving calculations on the encrypted data according to the different privacy-preserving computing schemes to be executed and return the encrypted calculation results to the user computing device; The user computing device is used to verify and decrypt the encrypted calculation results in a corresponding manner according to the different privacy-preserving computing schemes to be executed to obtain the final calculation results.
Citation Information
Patent Citations
Security encryption method for cloud computing based matrix multiplication outsourcing process
CN106788980A
Cloud-assisted image recognition method, device and equipment supporting privacy protection
CN112152806A