Recommendation Methods for Privacy Protection Tasks on High-Dimensional Data in a Spatial Crowdsourcing Environment

CN116992483BActive Publication Date: 2026-09-18NANJING UNIV OF INFORMATION SCI & TECH
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202311030087.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-08-16
Publication Date
2026-09-18
Estimated Expiration
2043-08-16

AI Technical Summary

Technical Problem

例如,如果在空间众包中请求者对医院的访问模式一旦被泄露,这将导致请求者的健康状况和其正在寻找的工人位置的敏感信息被窃取

Benefits of technology

[0047] 1. This invention addresses the problem of geometric range querying for high-dimensional data by employing the Hilbert curve encoding method to convert high-dimensional data and geometric ranges into one-dimensional numerical values ​​and interval ranges, thereby reducing the spatial search dimensionality and enabling efficient geometric range querying in high-dimensional space.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116992483B_ABST
    Figure CN116992483B_ABST
Patent Text Reader

Abstract

This invention discloses a privacy-preserving task recommendation method for high-dimensional data in a spatial crowdsourcing environment, belonging to the field of task recommendation. The recommendation method includes: a trusted institution generating a master key, and based on the master key, generating a worker's key, a data requester's key, and a cloud server's re-encryption key; the worker constructing a numerical filtering tree and encrypting the numerical filtering tree with the worker's key to obtain an encrypted numerical filtering tree; the cloud server re-encrypting the encrypted numerical filtering tree using the re-encryption key; the data requester encrypting the encoded query range using the key to obtain a numerical intersection test trapdoor and a range intersection test trapdoor; the cloud server performing ciphertext conversion on the numerical intersection test trapdoor and the range intersection test trapdoor using the re-encryption key to obtain a conversion trapdoor; after receiving the re-encrypted numerical filtering tree and the conversion trapdoor, the cloud server performs task recommendation according to the traversal method from non-leaf nodes to leaf nodes.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of task recommendation, specifically relating to a privacy-preserving task recommendation method for high-dimensional data in a spatial crowdsourcing environment. Background Technology

[0002] With the rapid development of location services, spatial crowdsourcing (SC), as a method for solving crowdsourcing tasks by leveraging workers' abilities and resources, has received increasing attention in academia and industry. Extensive research has been conducted in this field, and significant results have been achieved in industry practice. Spatial data generated by location services is experiencing explosive growth, encompassing numerous areas such as Vehicular Ad Hoc Networks (VANETs) and Point-of-Interest (POI) recommendation systems. Therefore, location-based task recommendation has become a major research hotspot.

[0003] In a spatial crowdsourcing system, data requesters publish their task requirements along with a specific geographical area to a cloud server to obtain the desired task results. The cloud server then sends the task requirements to eligible workers based on geographical query criteria—that is, the worker's location must be within a specific geometric range. Finally, the workers complete the task and return the results to the cloud server, receiving a corresponding reward.

[0004] However, cloud servers are often considered semi-honest parties; they honestly execute task matching protocols, but may become curious about the privacy of task requirements and worker locations. Generally, space crowdsourcing often takes place in environments with multiple workers and requesters, where workers and data requesters typically share symmetric keys. However, key sharing is impractical and inflexible in real-world applications because it easily leads to key privacy leaks and requires frequent key updates. Furthermore, the leakage of access patterns in space crowdsourcing can lead to serious data security issues, such as home addresses, daily activities, and health status. Unfortunately, most solutions fail to address the privacy protection of access patterns, i.e., hiding the matching relationship between worker locations and query results. If access patterns are leaked to attackers, they can launch reasoning attacks to obtain sensitive information. For example, if a requester's access pattern to a hospital is leaked in space crowdsourcing, sensitive information such as the requester's health status and the locations of the workers they are looking for could be stolen. Summary of the Invention

[0005] To address the shortcomings of existing technologies, the present invention aims to provide a method for recommending privacy-preserving tasks for high-dimensional data in a spatial crowdsourcing environment, thereby solving the problems in existing technologies.

[0006] The objective of this invention can be achieved through the following technical solutions:

[0007] A recommendation method for privacy protection tasks involving high-dimensional data in a space crowdsourcing environment, with participants including workers, data requesters, cloud servers, and trusted institutions, and the recommendation method includes:

[0008] Given security parameters and system initialization, the trusted authority generates a master key;

[0009] Trusted institutions use the master key to generate keys for workers, keys for data requesters, and re-encryption keys for cloud servers;

[0010] The worker constructs a numerical filter tree and encrypts the numerical filter tree using the worker's key to obtain an encrypted numerical filter tree;

[0011] The cloud server uses a re-encryption key to re-encrypt the encrypted numerical filtering tree;

[0012] The data requester encodes the query range into an interval range for numerical intersection testing and an interval range for range intersection testing; and uses the data requester's key to encrypt the two interval ranges respectively to obtain: a numerical intersection test trapdoor and a range intersection test trapdoor;

[0013] The cloud server uses a re-encryption key to perform ciphertext conversion on numerical intersection test trapdoors and range intersection test trapdoors to obtain the conversion trapdoor;

[0014] After receiving the re-encrypted numerical filtering tree and transformation trapdoor, the cloud server executes the task recommendation according to the traversal method from non-leaf nodes to leaf nodes.

[0015] Furthermore, the specific process of encrypting the numerical filtering tree is as follows:

[0016] S31, The worker uses the Hilbert curve coding method to assign the worker's position L. i Encoded as a numerical point P i ;

[0017] S32, the worker based on the numerical point P i Generate a three-dimensional vector and three-dimensional vectors Expanded to (n+3) dimensional vector Generate a random (n+3)×(n+3) lower triangular matrix. The main diagonal is Other non-zero elements are one-time, one-key random numbers;

[0018] S33, the worker uses their own key to encrypt a random lower triangular matrix. Once the encrypted index is obtained, the worker sends the encrypted index along with their own ID to the cloud server.

[0019] Furthermore, the encrypted numerical filtering tree consists of two parts:

[0020] 1) For Non-leaf nodes in the interval represent the range HB = [HB l ,HB u ], of which HB l HB represents the lower bound of the interval range. u The upper bound of the interval range is represented; the encrypted non-leaf nodes contain the lower bound A of the encrypted interval range. i HB l And the upper bound of the encrypted interval range A i HB u ;

[0021] 2) For The leaf nodes in the data store the encoded value point P corresponding to the worker's position. i Workers on numerical point P i Encryption yields the encrypted leaf node A. i P i .

[0022] Furthermore, the process of re-encrypting the encrypted numerical filtering tree is as follows:

[0023] After receiving the encrypted index from the worker, the cloud server uses the re-encryption key rk=(A' i N i M i ) and a randomly selected (n+3)×(n+3) lower triangular matrix D i The encrypted index is converted into a re-encrypted index and stored on the cloud server.

[0024] Furthermore, the expression for converting the encrypted index into a re-encrypted index is:

[0025]

[0026] In the formula, C i Indicates an encrypted index. Indicates a re-encrypted index, D i The main diagonal is (α, α, α, 1, ..., 1), and α is a one-time one-pad random number; for non-leaf nodes, the lower bound of the interval range after re-encryption by the cloud server is... The upper bound of the re-encrypted interval range For the leaf node, the leaf node M1S re-encrypted by the cloud server i (P i+I i )D i M i .

[0027] Furthermore, the numerical intersection test trapdoor T is obtained. Q The process includes:

[0028] 1) Given an arbitrary geometric query range The data requester uses the Hilbert curve encoding method to encode the geometric query range, thus encoding the high-dimensional geometric query range. Encoded as a one-dimensional interval range Q k =[Q k,l Q k,u ];

[0029] 2) The data requester generates a three-dimensional vector based on the interval range. The data requester will use a three-dimensional vector. Expanded to an (n+3) dimensional vector Q k = (1, Q) k,l +Q k,u Q k,l ·Q k,u The data requester generates an (n+3)×(n+3) lower triangular matrix (0, 0, ..., 0). The main diagonal is Q. k Other non-zero elements are one-time random numbers;

[0030] 3) The data requester uses key B q Will Encryption And the encrypted trapdoor T Q Send to the cloud server.

[0031] Furthermore, the numerical intersection test trap T Q The steps for ciphertext conversion include:

[0032] 1) After receiving the encrypted trapdoor from the data requester, the cloud server first generates a random (n+3)×(n+3) lower triangular matrix with a main diagonal of (β,β,β,1,1,…,1), where β is a one-time pad random positive number; the cloud server uses the re-encryption key rk=(M i N q M q ) to encrypt the trapdoor T Q Convert to

[0033]

[0034] 2) Cloud servers utilize re-encryption keys Transform the trapdoor The encryption was performed again, and the calculation was obtained.

[0035]

[0036] Furthermore, the task recommendation step includes:

[0037] S31, For non-leaf nodes, the cloud server calculates the trace between the interval range matrix and the transformation trapdoor matrix. and like and If both conditions are met, the cloud server proceeds to the next step, calculating the trace of the child nodes corresponding to the non-leaf node; otherwise, the cloud server selects another non-leaf node and performs the same calculation process.

[0038] S32, For leaf nodes, the cloud server calculates the trace between the numerical matrix and the transformation trapdoor matrix. like If the query is successful, the cloud server adds the leaf node to the query results; otherwise, the cloud server selects another leaf node and repeats the above calculation process.

[0039] S33 Finally, the cloud server sends the crowdsourcing task from the data requester to the corresponding worker in the query results.

[0040] A privacy-preserving task recommendation system for high-dimensional data in a spatial crowdsourcing environment includes:

[0041] Workers: Workers crowdsource their locations to cloud servers, and the locations are encrypted before workers outsource their locations;

[0042] Data requester: The data requester submits an encrypted task request to the cloud server. The cloud server sends the task request to the worker. After the worker completes the task, it returns the encrypted task result to the cloud server. Finally, the cloud server sends the encrypted task result back to the data requester.

[0043] Cloud server: The cloud server is responsible for storing the encrypted location of workers and receiving task requests from data requesters; the cloud server executes the task recommendation protocol, matches suitable workers based on the worker's location and the task requester's query range, and distributes tasks to the corresponding workers.

[0044] And, trusted authority: The trusted authority is responsible for system initialization and distributing keys and re-encryption keys to each participating entity.

[0045] A computer storage medium storing a readable program that, when the program is run, can execute the recommended method described above.

[0046] The beneficial effects of this invention are:

[0047] 1. This invention addresses the problem of geometric range querying for high-dimensional data by employing the Hilbert curve encoding method to convert high-dimensional data and geometric ranges into one-dimensional numerical values ​​and interval ranges, thereby reducing the spatial search dimensionality and enabling efficient geometric range querying in high-dimensional space.

[0048] 2. This invention solves the problems of low efficiency in task recommendation and privacy leakage in access patterns, and realizes efficient and secure task recommendation in a crowdsourcing environment, while protecting the privacy of access patterns.

[0049] 3. To address the issue of low efficiency in task recommendation in high-dimensional space, this invention proposes a task recommendation method based on numerical filtering trees. By transforming the matrix intersection test problem in high-dimensional space into the interval intersection test problem in one-dimensional space, the computational complexity of task recommendation is reduced, thereby achieving efficient task recommendation. Attached Figure Description

[0050] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, for those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0051] Figure 1 This is a model diagram of the privacy protection task recommendation system for high-dimensional data according to the present invention;

[0052] Figure 2 This invention relates to a multidimensional spatial data query graph based on Hilbert curve encoding;

[0053] Figure 3 This is the privacy protection task recommendation graph based on numerical filtering tree of the present invention. Detailed Implementation

[0054] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0055] like Figure 1 As shown, the privacy-preserving task recommendation system for high-dimensional data in a spatial crowdsourcing environment includes four entities: workers, data requesters, cloud servers, and trusted institutions; among which:

[0056] 1) Workers: To save storage resources and computing costs, workers typically crowdsource their locations to cloud servers; to protect location privacy, workers encrypt their locations before outsourcing; in addition, based on the worker's location, the cloud server sends the task to the appropriate worker, who completes the task and receives payment.

[0057] 2) Data requester: To protect the privacy of the task content, the data requester submits an encrypted task request to the cloud server; the cloud server sends the task request to the appropriate worker; after the worker completes the task, it returns the encrypted task result to the cloud server; finally, the cloud server sends the encrypted task result back to the data requester.

[0058] 3) Cloud Server: The cloud server is a crowdsourcing server with powerful computing capabilities and ample storage resources. The cloud server is mainly responsible for storing the encrypted locations of workers and receiving task requests from data requesters. In addition, the cloud server executes a task recommendation protocol, matching suitable workers based on worker locations and the query range of task requesters, and distributing tasks to the corresponding workers.

[0059] 4) Trusted Authority: The trusted authority is responsible for system initialization and distributing keys and re-encryption keys to each participating entity; among them, it generates keys for workers and data requesters and generates corresponding re-encryption keys for cloud servers.

[0060] like Figure 3 As shown, the recommendation method for privacy protection tasks involving high-dimensional data in a spatial crowdsourcing environment includes the following steps:

[0061] S1, System initialization;

[0062] Given the system security parameter λ, the system is initialized, and the trusted institution generates the master key msk = {M1, M2, M...} i M q The master key is used for index encryption, index transformation, trapdoor generation, and trapdoor transformation.

[0063] S2, the trusted institution uses the master key to generate the worker's key, the data requester's key, and the cloud server's re-encryption key;

[0064] Given the master key msk, for the worker, the trusted institution randomly selects an (n+3)×(n+3) invertible matrix A. i A (n+3)×(n+3) invertible lower triangular matrix S i S i The main diagonal is (1,1,…,1). Then, the trusted mechanism calculates… and A' iThe worker uses the re-encryption key; for the data requester, the trusted institution randomly selects an (n+3)×(n+3) invertible matrix B. q And an invertible lower triangular matrix S with a main diagonal of (1,1,…,1). q Trusted organization computing The key serves as the data requester's key; the trusted institution generates a perturbation matrix N for the worker. i =A i I i Generate a perturbation matrix N for the data requester. q =I q B q , among which, I i and I q These are the two main diagonals (0,0,0,r1,…,r) n (0,0,0,-r'1,…,-r') and (0,0,0,-r'1,…,-r') n A (n+3)×(n+3) lower triangular matrix. and Let r be a one-time one-pad random positive number, and {r} i ,r' i}<γ, where γ is a positive real number; the trusted institution will use key A i Distribute to workers, and give key B q Distribute to data requesters and re-encrypt the key Send to the cloud server.

[0065] S3, index encryption;

[0066] The workers first construct a numerical filtering tree (PFR-tree) based on the numerical points and interval ranges. Specifically, the worker does not store any content in the root node of the numerical filtering tree. Instead, it obtains multiple interval ranges using the Hilbert curve encoding method and stores these interval ranges in non-leaf nodes. For the worker's encoded numerical points, it stores them all in the corresponding leaf nodes. Then, the worker uses key A... i Encrypted numerical filter tree Obtain the encrypted numerical filter tree Encrypted numerical filter tree It includes two parts:

[0067] Firstly, regarding Non-leaf nodes in the interval represent the range HB = [HB l ,HB u ], of which HB l HB represents the lower bound of the interval range. u The upper bound of the interval range is represented; the encrypted non-leaf nodes contain the lower bound of the encrypted interval range. and the boundary of the encrypted interval range That is, encrypted non-leaf nodes

[0068] Secondly, regarding The leaf nodes in the data store the encoded value point P corresponding to the worker's position. i Workers on numerical point P i Encryption, resulting in the encrypted leaf node C. i =A i P i ;

[0069] After the leaf nodes and non-leaf nodes are encrypted, the worker filters the encrypted values ​​through the tree. Outsource to cloud servers.

[0070] Among them, the worker's key A is used. i Encrypted numerical filter tree The specific process is as follows:

[0071] S31, Given the worker's position L i =(x i ,y i The workers first used the Hilbert curve coding method to assign position L i Encoded as a numerical point P i ;

[0072] S32, the worker based on the numerical point P i Generate a three-dimensional vector and three-dimensional vectors Expanded to (n+3) dimensional vector Generate a random (n+3)×(n+3) lower triangular matrix. The main diagonal is Other non-zero elements are one-time, one-key random numbers;

[0073] S33, the worker uses his own key A i Encrypted random lower triangular matrix Obtain the encrypted index The worker will encrypt index C i It is sent to the cloud server along with its own ID.

[0074] S4, Index Transformation;

[0075] The cloud server uses the re-encryption key rk to filter the encrypted numerical tree. The specific process for re-encryption is as follows:

[0076] The cloud server received the encrypted index C from the worker. iThen, the cloud server uses the re-encryption key rk=(A' i N i M i ) and a randomly selected (n+3)×(n+3) lower triangular matrix D i , where D i The main diagonal is (α, α, α, 1, ..., 1), and α is a one-time key random number; the cloud server uses equation (1) to encrypt the index C. i Convert to re-encrypted index And store the converted index on the cloud server;

[0077]

[0078] For non-leaf nodes, the lower bound of the interval range after re-encryption by the cloud server is... The upper bound of the re-encrypted interval range

[0079] For leaf nodes, the leaf nodes are re-encrypted by the cloud server.

[0080] S5, trapdoor generated;

[0081] The data requester will query the scope The encoding is divided into two types of interval ranges: the first type is used for numerical intersection tests, represented as [Q k,l Q k,u The second type is used for range intersection testing, denoted as [1, Q]. k,u ],[Q k,l ,UB(Q k The data requester uses private key B. q The above two interval ranges are encrypted to obtain: Numerical Intersection Test Trapdoor T Q =Q k B q Range intersection test trap and

[0082] Obtain the numerical intersection test trap T Q The process includes:

[0083] 1) Given an arbitrary geometric query range The data requester uses the Hilbert curve encoding method to encode the geometric query range, thus encoding the high-dimensional geometric query range. Encoded as a one-dimensional interval range Q k =[Q k,l Q k,u ];

[0084] like Figure 2 The image shows an example of multidimensional spatial data querying based on Hilbert curve encoding. Assuming the Hilbert curve is a 3rd-order curve in d-dimensional space, the Hilbert curve can divide the d-dimensional space into 2... 3d There are 3 positions, and the value range of each value point is [0, 2]. 3d Assume there are 5 spatial target data points {O1, O2, O3, O4, O5} in a d-dimensional space, each containing d elements. This invention uses the Hilbert curve encoding method to convert these 5 spatial target data points into five corresponding numerical points: 3, 37, 16, 60, 33. If the data requester wishes to search for the blue region (Q1) and the green region (Q2), similarly, the data requester can use the Hilbert curve encoding method to generate the corresponding geometric query ranges, i.e., Q1 = [14, 19] and Q2 = {[31, 33], [46, 51]}. Through the above Hilbert curve encoding method, the geometric range query in d-dimensional space can be converted into a numerical range query in a 1-dimensional plane. Figure 2 As can be seen, the present invention can find that the query results of the high-dimensional spatial geometric range in the figure are O3 and O5.

[0085] 2) The data requester generates a three-dimensional vector based on the interval range. The data requester will use a three-dimensional vector. Expanded to an (n+3) dimensional vector Q k = (1, Q) k,l +Q k,u Q k,l ·Q k,u The data requester generates an (n+3)×(n+3) lower triangular matrix (0, 0, ..., 0). The main diagonal is Q. k Other non-zero elements are one-time random numbers;

[0086] 3) The data requester uses key B q Will Encryption And the encrypted trapdoor T Q Send to the cloud server.

[0087] Range intersection test trapdoor and The acquisition process is as follows:

[0088] 1) The data requester bases the request on a one-dimensional interval range Q. k =[Q k,l Q k,u This is transformed into two different range intervals, represented as [1, Q]. k,u ],[Q k,l ,UB(Qk )];

[0089] 2) The data requester uses numerical intersection to test the trapdoor generation algorithm and generates corresponding (n+3)×(n+3) lower triangular matrices based on the two ranges mentioned above. and The main diagonals are (1, 1+Q) k,u Q k,u ,0,…,0) and (1,Q k,l +UB(Q k ),Q k,l ·UB(Q k (),0,…,0), and other non-zero elements are one-time one-key random numbers;

[0090] 3) The data requester uses key B q Each and Encryption and and encrypted trapdoor and Send to the cloud server.

[0091] S6, Trapdoor Conversion;

[0092] The cloud server uses a re-encryption key to test the intersection of numerical values ​​using a trapdoor T. Q Range intersection test trap and Perform ciphertext conversion to obtain the conversion trapdoor:

[0093] Among them, the logarithmic intersection test trap T Q The steps for ciphertext conversion include:

[0094] 1) After receiving the encrypted trapdoor from the data requester, the cloud server first generates a random (n+3)×(n+3) lower triangular matrix with a main diagonal of (β,β,β,1,1,…,1), where β is a one-time pad random positive number; as shown in the following formula, the cloud server uses the re-encryption key rk=(M i N q M q ) to encrypt the trapdoor T Q Convert to

[0095]

[0096] 2) Cloud servers utilize re-encryption keys Transform the trapdoor Re-encryption is performed as shown in the following formula, and the result is calculated.

[0097]

[0098] Traps for range intersection tests and The steps for ciphertext conversion are as follows:

[0099] 1) The cloud server received a range intersection test trap. and Subsequently, it employs a numerical intersection test trapdoor transformation method, first using the re-encryption key rk to transform the encrypted trapdoors tested by the range intersection test. and Convert to and in,

[0100] 2) Cloud servers utilize re-encryption keys Transform the trapdoor and The encryption was performed again, and the calculation was obtained. and

[0101] S7, Recommended Tasks

[0102] The cloud server received a re-encrypted numerical filter tree. After converting the trapdoor, the task recommendation is executed according to the traversal method from non-leaf nodes to leaf nodes; the recommendation steps include:

[0103] S31, for non-leaf nodes, the cloud server calculates the trace between the interval range matrix and the transformation trapdoor matrix, i.e. and like and If both conditions are met, the cloud server proceeds to the next step, calculating the trace of the child nodes corresponding to the non-leaf node; otherwise, the cloud server selects another non-leaf node and performs the same calculation process.

[0104] S32, for leaf nodes, the cloud server calculates the trace between the numerical matrix and the transformation trapdoor matrix, i.e. like If the query is successful, the cloud server adds the leaf node to the query results; otherwise, the cloud server selects another leaf node and repeats the above calculation process.

[0105] S33 Finally, the cloud server sends the crowdsourcing task from the data requester to the corresponding worker in the query results.

[0106] For non-leaf nodes, the trace between the interval range matrix and the transformation trapdoor matrix and The calculation process is as follows:

[0107]

[0108]

[0109] For leaf nodes, the cloud server calculates the trace between the numerical matrix and the transformation trapdoor matrix. The calculation process is as follows:

[0110]

[0111] Assumption The supremum of the dimension is δ, i.e., UB(n) = δ, n ≤ δ, and a random positive number is obtained once. like but If the query is successful, it means the worker's location is within the data requester's geometric query range. The cloud server considers the worker to meet the data requester's query requirements and adds its ID to the query results; otherwise, the cloud server selects another encrypted index and repeats the task recommendation process described above until a worker matching the query range is found.

[0112] In the description of this specification, references to terms such as "an embodiment," "example," "specific example," etc., indicate that a specific feature, structure, material, or characteristic described in connection with that embodiment or example is included in at least one embodiment or example of the invention. In this specification, illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in one or more embodiments or examples.

[0113] The foregoing has shown and described the basic principles, main features, and advantages of the present invention. Those skilled in the art should understand that the present invention is not limited to the above embodiments. The embodiments and descriptions in the specification are merely illustrative of the principles of the invention. Various changes and modifications can be made to the invention without departing from its spirit and scope, and all such changes and modifications fall within the scope of the claimed invention.

Claims

1. A recommendation method for privacy protection tasks involving high-dimensional data in a spatial crowdsourcing environment, with participating entities including: Workers, data requesters, cloud servers, and trusted institutions, characterized in that the recommendation method includes: Given security parameters and system initialization, the trusted authority generates a master key; Trusted institutions use the master key to generate keys for workers, keys for data requesters, and re-encryption keys for cloud servers; The worker constructs a numerical filter tree and encrypts the numerical filter tree using the worker's key to obtain an encrypted numerical filter tree; The cloud server uses a re-encryption key to re-encrypt the encrypted numerical filtering tree; The data requester encodes the query range into an interval range for numerical intersection testing and an interval range for range intersection testing; and uses the data requester's key to encrypt the two interval ranges respectively to obtain: a numerical intersection test trapdoor and a range intersection test trapdoor; The cloud server uses a re-encryption key to perform ciphertext conversion on numerical intersection test trapdoors and range intersection test trapdoors to obtain the conversion trapdoor; After receiving the re-encrypted numerical filtering tree and transformation trapdoor, the cloud server executes the task recommendation according to the traversal method from non-leaf nodes to leaf nodes; The specific process of encrypting the numerical filtering tree is as follows: S31, Workers use the Hilbert curve coding method to determine their positions. Encoded as numerical points ; S32, workers based on numerical points Generate a three-dimensional vector and the three-dimensional vector Expanded to dimensional vector Generate a random Lower triangular matrix The main diagonal is Other non-zero elements are one-time random numbers; S33, the worker uses their own key to encrypt a random lower triangular matrix. After obtaining the encrypted index, the worker sends the encrypted index along with their own ID to the cloud server; The encrypted numerical filtering tree consists of two parts: 1) For Non-leaf nodes in the interval represent the range of the interval. ,in It represents the lower bound of the interval. The upper bound of the interval range is represented; the encrypted non-leaf nodes contain the lower bound of the encrypted interval range. and the boundary of the encrypted interval range ; 2) For The leaf nodes in the data store the encoded numerical value corresponding to the worker's position. Workers on numerical points Encryption yields encrypted leaf nodes. ; The process of re-encrypting the encrypted numerical filter tree is as follows: After receiving the encrypted index from the worker, the cloud server uses the re-encryption key. and randomly selected Lower triangular matrix The encrypted index is converted into a re-encrypted index, and the converted index is stored on the cloud server. The expression to convert an encrypted index to a re-encrypted index is: In the formula, Indicates an encrypted index. Indicates a re-encrypted index. The main diagonal is ,and For a one-time pad random number; for non-leaf nodes, the lower bound of the interval range after re-encryption by the cloud server. The upper bound of the re-encrypted interval range For leaf nodes, the cloud server re-encrypts the leaf nodes. .

2. The method for recommending privacy-preserving tasks for high-dimensional data in a spatial crowdsourcing environment according to claim 1, characterized in that, Numerical intersection test trapdoor The process includes: 1) Given an arbitrary geometric query range The data requester uses the Hilbert curve encoding method to encode the geometric query range, thus encoding the high-dimensional geometric query range. Encoding as a one-dimensional interval range ; 2) The data requester generates a three-dimensional vector based on the interval range. The data requester will provide a three-dimensional vector. Expanded to dimensional vector The data requester generates a Lower triangular matrix The main diagonal is Other non-zero elements are one-time random numbers; 3) The data requester uses the key Will Encryption and encrypted trapdoor Send to the cloud server.

3. The method for recommending privacy-preserving tasks for high-dimensional data in a spatial crowdsourcing environment according to claim 2, characterized in that, Logarithmic intersection test trapdoor The steps for ciphertext conversion include: 1) After receiving the encrypted trapdoor from the data requester, the cloud server first generates a random... And the main diagonal is The lower triangular matrix, where The key is a one-time pad random positive number; the cloud server uses a re-encryption key. Encryption trapdoor Convert to ; 2) The cloud server uses a re-encryption key Transform the trapdoor The encryption was performed again, and the calculation was obtained. ; 。 4. The method for recommending privacy-preserving tasks for high-dimensional data in a spatial crowdsourcing environment according to claim 1, characterized in that, The task recommendation steps include: S31, For non-leaf nodes, the cloud server calculates the trace between the interval range matrix and the transformation trapdoor matrix. and ;like and If both conditions are met, the cloud server proceeds to the next step, calculating the trace of the child nodes corresponding to the non-leaf node; otherwise, the cloud server selects another non-leaf node and performs the same calculation process. S32, For leaf nodes, the cloud server calculates the trace between the numerical matrix and the transformation trapdoor matrix. ;like If the query is successful, the cloud server adds the leaf node to the query results; otherwise, the cloud server selects another leaf node and repeats the above calculation process. S33 Finally, the cloud server sends the crowdsourcing task from the data requester to the corresponding worker in the query results.

5. A privacy-preserving task recommendation system for high-dimensional data in a spatial crowdsourcing environment, comprising the method described in any one of claims 1-4, characterized in that, include: Workers: Workers crowdsource their locations to cloud servers, and the locations are encrypted before workers outsource their locations; Data requester: The data requester submits an encrypted task request to the cloud server. The cloud server sends the task request to the worker. After the worker completes the task, it returns the encrypted task result to the cloud server. Finally, the cloud server sends the encrypted task result back to the data requester. Cloud server: The cloud server is responsible for storing the encrypted location of workers and receiving task requests from data requesters; The cloud server executes a task recommendation protocol, matching suitable workers based on worker location and the query range of the task requester, and distributing tasks to the corresponding workers; And, trusted authority: The trusted authority is responsible for system initialization and distributing keys and re-encryption keys to each participating entity.

6. A computer storage medium storing a readable program, characterized in that, When the program runs, it is able to execute the recommended method as described in any one of claims 1-4.