A privacy-preserving Top-k query why-not problem processing method
By using the PAILLIER homogenic encryption and security sub-protocol under the framework of two non-interactive clouds, the reasons for calculating and interpreting the lost objects in the Top-K queries are realized in the ciphertext. The problem of not 'has improved query efficiency and privacy protection capabilities.
Patent Information
- Application Number
- CN202110428365.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-04-21
- Publication Date
- 2025-01-24
- Estimated Expiration
- 2041-04-21
AI Technical Summary
In the prior art, the reason why objects are lost in Top-k queries cannot be effectively explained on the premise of protecting data privacy, and the question of "why-not" cannot be answered safely.
The Paillier homomorphic encryption system and security sub-protocols (such as secure multiplication, secure equality, secure squared Euclidean distance, secure comparison, and secure ternary conditional operations) are used to calculate the score function in the ciphertext under the framework of two non-interoperable clouds. and penalty function to generate a weight space, and perform safe pruning and early stopping conditions through the dominance relationship to find the optimal refined query.
While protecting the privacy of data, the reason for the loss of objects in the Top-K queries is effectively explained, and the problem of ‘why-not’ is safely answered, and the query efficiency is improved.
Smart Images

Figure CN113158209B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of data processing technology, and in particular to a method for processing Top-k query why-not problems for protecting privacy. Background Art
[0002] In recent years, cloud computing, as an emerging computing method, has attracted many individuals and organizations due to its powerful computing and storage capabilities. Outsourcing data and cloud computing have great flexibility and save a lot of costs and management overhead, prompting more data owners to provide data services in the cloud. However, due to privacy concerns, it is necessary to ensure the confidentiality of sensitive data from cloud servers that cannot be fully trusted and unauthorized users.
[0003] To ensure the confidentiality of outsourced data to the cloud and unauthorized users, a simple solution is for the data owner to encrypt the data before outsourcing. When issuing a data query, the authorized query user encrypts his query request to protect the privacy of the query. The cloud server responds to the user's query request by processing the encrypted data and returns the encrypted query results to the user. In this query processing, the cloud server and unauthorized users cannot learn any information about the data, query, results, and access patterns.
[0004] At present, some methods have been proposed to support specific queries on encrypted data, which have different degrees of security assurance and efficiency, including secure kNN query, secure skyline query and secure spatial keyword query. In addition to the above methods, the prior art discloses secure Top-k query, that is, secure retrieval of k objects with the largest (or smallest) value of a given scoring function. In order to obtain higher database availability, when the query user wants to know why the object he expects does not appear in the Top-k query results, a "why-not" question is raised. Given a set of missing objects, answering the "why-not" question in the Top-k query is to find a refined query that contains the missing objects in the query results with the least changes. This problem has received increasing attention recently.
[0005] However, there is currently no method in the existing technology that can achieve the explanation of lost objects while protecting data privacy, that is, to safely answer the "why-not" question. Summary of the invention
[0006] In view of this, the present invention discloses a method for processing Top-k query why-not problems with privacy protection, so as to define and solve the Top-k query why-not problems while protecting privacy;
[0007] The technical solution provided by the present invention is specifically a method for processing the Top-k query why-not problem with privacy protection. Given an encrypted why-not problem {E pk (M),q0(E pk (k0),E pk (w0))}, the secure Top-k query why-not problem is to find a refined Top-k query in the ciphertext Wherein, pk is the public key of asymmetric encryption, and the method comprises the following steps:
[0008] 1) Safely calculate the initial ranking of lost targets;
[0009] 2) Based on the initial ranking, secure pruning is performed through dominance relations;
[0010] 3) Safely generate weight space:
[0011] 4) Calculate the security penalty function;
[0012] 5) Define early stopping conditions to obtain the best refined query.
[0013] Specifically, the system model of this method includes three parties: data owner, query user and cloud server;
[0014] The data owner first generates a key K=<pk,sk> , where pk is the public key and sk is the private key. Before outsourcing, the data owner uses pk to encrypt the data and sends the encrypted data to C1 using pk. K =<pk,sk> Send to C2;
[0015] Query user: Specify a secure Top-k query After that, the query user will have the missing object set E pk (M) Sent to the cloud, and a why-not request is made based on the top-k query results;
[0016] Cloud Server: After processing the secure Top-k query, the cloud server performs SWNkQ processing when receiving the "why-not" question, and returns the encrypted refined Top-k query to the corresponding user;
[0017] The security model of this method adopts the framework of two non-interoperable clouds C1 and C2. The specific privacy requirements include: data privacy, query privacy, result privacy, and access mode privacy.
[0018] Specifically, the method introduces a security subprotocol for basic calculations of encrypted data. The security subprotocol works under the framework of two non-interoperable clouds C1 and C2. The security subprotocol includes secure multiplication SM, secure equality SEQ, secure square Euclidean distance SSED, secure comparison SCMP, and secure ternary conditional operation STCO.
[0019] Furthermore, the STCO protocol is defined in the method as follows:
[0020] Assume C1 has private input E pk (d3), E pk (d4) and SCMP protocol output result E pk ([d1≤d2]), C2 has the private key, then C1 calculates:
[0021] STCO(E pk (d3),E pk (d4),E pk ([d1≤d2]))
[0022] =SM(E pk (d3),E pk ([d1≤d2])*SM(E pk (d4),E pk (1)*E pk ([d1≤d2]) N-1 )
[0023] Therefore, if the SCMP result E pk ([d1≤d2]) is true, then return E pk (d3), otherwise return E pk (d4) without being known by C1.
[0024] Furthermore, the method specifically includes the following steps:
[0025] 1) Servers C1 and C2 first calculate the initial ranking r0 of the missing target m, where r0=0 is determined using the SEQ protocol, indicating that m is not in the data set;
[0026] 2) Based on the initial ranking r0, the encrypted data after increasing the dimension Prune if E pk (p i [d+1])≥r0, remove the data from the candidate set, where p i [d+1] represents the number of dominating points;
[0027] 3) Server C2 randomly samples and encrypts the weight space E of SWNkQ pk (S) and sent to C1,
[0028] 4) Given a refined query and user uploaded C1 is calculated first E pk (η w )=SM(E pk (1-α),E pk (r0-k0)), and then calculate the penalty function value of q':
[0029]
[0030] use Calculate the penalty function;
[0031] 5) For each C1 calculates the score function value and ranks it, and compares η through the SCMP protocol w Δw j and If Then jump out of the current The calculated ranking r i With Δw j Calculate the penalty function value;
[0032] Among them, when calculating the ranking, the SCMP protocol is used to compare η k Δk L and like Then jump out of the current
[0033] 6) For the calculated and E pk (k min ) plus the disturbance, the disturbance factor ε1 and Encrypt the two perturbation factors and add them to and E pk (k min ) and E pk (k med ),Will and E pk (k med ) is sent to C2 for decryption and then sent to the user, and ε1 and Sent directly to the user, who uses the result from C2 minus the perturbation factor from C1 to get the best refined query
[0034] Furthermore, in step 1), server C1 first calculates the score function and uses SCMP to compare the score functions. Servers C1 and C2 cooperate to calculate E pk(r0) = E pk (r0)*E pk ([score i ≤score0]), C1 obtains the calculation result, namely E pk (r0).
[0035] Furthermore, given a dataset with n data objects Each data object Has d attribute values Top-k query consists of three parts: result set k, d-dimensional weighted vector And the scoring function, assuming the scoring function is:
[0036]
[0037] The scoring function can be any monotonic function, There is a constraint: when i = 1, 2, … d, ∑w[i] = 1 and 0≤w[i]≤1, the Top-k query result set is the k objects with the smallest scores.
[0038] Furthermore, the encryption described in step 2) adopts Pailier homomorphic encryption, adopts Pailier cryptographic system, and the plaintext m is encrypted by the public key to E pk (m), ciphertext E pk (m) is decrypted by the private key to D sk (E pk (m));
[0039] Homomorphic addition:
[0040] E pk (m0)*E pk (m1)modN 2 =E pk (m0+m1)modN
[0041] Multiplication of quantities:
[0042] E pk (m0) m1 modN 2 =E pk (m0*m1)modN.
[0043] Furthermore, the sampling of the weighted vectors in step 3) is independent of the why-not question interpretation, and a new set of weighted vectors needs to be generated for each why-not question interpretation process.
[0044] Furthermore, the penalty model involved in step 4) is:
[0045]
[0046] That α∈[0,1] is a balancing factor, which represents the user's response to the original query q0 on k and Tolerance for change. In addition, pass To standardize, is the equivalent conversion formula, where r0 is exist The following ranking.
[0047] The present invention provides a privacy-preserving Top-k query why-not problem processing method (SWNkQ). The Paillier cryptosystem is used to ensure the semantic security of data and queries, and two new security subprotocols, the security protocol and the secure ternary condition operation protocol (SCMP, STCO), are proposed, together with other security subprotocols as the basis to support the calculation of score functions and penalty functions in ciphertext. Then, a secure weighted space generation method is proposed for the calculation method of finding the global optimal refined query, and a sample-based solution method is used to obtain the optimal approximate refined query. In order to solve the efficiency problem of the basic method, we further propose secure data pruning and early stopping conditions based on dominance relations. In secure data pruning based on dominance relations, the number of dominated points of the data is encrypted and recorded in the extended attribute dimension of each object, so that data objects that have no effect on the result can be excluded without affecting the refined query. In addition, based on the observation of the penalty function, two early termination conditions on the change of the minimum ranking and the maximum weighted vector are obtained by shifting terms, and the early stopping conditions can skip those refined queries that are not better than the current query. The security of our method is proved through analysis and the computational complexity is explained. A large number of experimental results on real data sets prove the effectiveness of the method proposed in this invention.
[0048] It is to be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the present disclosure. BRIEF DESCRIPTION OF THE DRAWINGS
[0049] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the invention and, together with the description, serve to explain the principles of the invention.
[0050] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, for ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.
[0051] Figure 1 A schematic diagram of the system model structure described in the disclosed embodiment of the present invention;
[0052] Figure 2 The influence of different initial rankings on time on four data sets in the experimental data described in the embodiments disclosed in the present invention;
[0053] Figure 3 The effect of different initial result set sizes on time on four data sets in the experimental data described in the embodiments disclosed in the present invention;
[0054] Figure 4 This is the effect of different weight space sizes on time in four data sets in the experimental data described in the embodiments disclosed in the present invention. DETAILED DESCRIPTION
[0055] Exemplary embodiments will be described in detail herein, examples of which are shown in the accompanying drawings. When the following description refers to the drawings, the same numbers in different drawings represent the same or similar elements unless otherwise indicated. The implementations described in the following exemplary embodiments do not represent all implementations consistent with the present invention. Instead, they are merely examples of systems consistent with some aspects of the present invention as detailed in the appended claims.
[0056] The present invention is given a data set with n data objects Each data object Has d attribute values First, Top-k query, Top-k query consists of three parts: result set k, d-dimensional weighted vector And the scoring function, assuming that the scoring function of the present invention is:
[0057]
[0058] It can be any monotonic function. There is a constraint: when i=1,2,…d, ∑w[i]=1 and 0≤w[i]≤1, the Top-k query result set is the k objects with the smallest scores.
[0059] Users can use Specify a Top-k query and get the result set. Then, the user proposes the set of objects missing from q0 A query refinement solution is used to explain the "why-not" problem. That is, the system will return a refined Top-k query Make all objects in M appear in the result set of q′.
[0060] In order to evaluate the quality of refined queries, a penalty model is defined:
[0061]
[0062] in α∈[0,1] is a balancing factor, which represents the user's response to the original query q0 on k and Tolerance for change. In addition, pass To standardize, is the equivalent conversion formula, where r0 is exist Note that since the normalization factor is non-negative, this transformation only affects the real value of the penalty function and does not change the comparison between the two penalties.
[0063] Definition 1: Top-k query why-not problem: Given a why-not problem Where M is a non-empty set of missing objects, q0 is the user's initial query, and a Top-k query why-not question returns a refined Top-k query that contains M in the result set and has the smallest penalty function value.
[0064] Definition 2: Secure Top-k Query Why-Not Question Explanation Method (SWNkQ): Given an encrypted why-not question The goal of the secure Top-k query why-not problem is to find a refined Top-k query in the ciphertext. pk is the public key for asymmetric encryption.
[0065] System model: The SWNkQ system model in the cloud includes three parties: data owner, query user and cloud server, and is widely used in related fields. Figure 1 The system model shown is described as follows:
[0066] Data owner: The data owner first generates a key K =<pk,sk> , where pk is the public key and sk is the private key. Before outsourcing, the data owner encrypts the data using pk, sends the encrypted data to C1 using pk, and K=〈pk,sk〉 to C2.
[0067] Query user: Specify a secure Top-k query After that, the query user will have the missing object set E pk (M) is sent to the cloud and a why-not request is made based on the top-k query results.
[0068] Cloud Server: After processing the secure Top-k query, the cloud server performs SWNkQ processing when receiving the “why-not” question and returns the encrypted refined Top-k query to the corresponding user.
[0069] To improve the security of the system, security model: We adopt a framework of two non-interconnected clouds (C1 and C2). In practice, these non-interconnected clouds can be provided by competitive cloud service providers, such as Google and Amazon, so collusion between well-known companies is impossible. In addition, we assume that the query user is trustworthy and will not collude with the cloud or other users. Specifically, the privacy requirements are as follows:
[0070] Data privacy, the cloud knows nothing about the plaintext of the data. Correspondingly, the query user knows nothing about the data except the results.
[0071] Query privacy, the cloud server cannot know the plaintext of the user's query request.
[0072] Result privacy,The plaintext of the query result should not be known to any other party except the corresponding query user.
[0073] Access Pattern Privacy,The access pattern of refined query results should not be revealed to the cloud server.
[0074] In this invention, we do not focus on the access control of query users and attacks from the transmission channel. We assume that the data owner is trustworthy, the query user is well authorized, and the channel to the system is secure.
[0075] This implementation involves Pailier homomorphic encryption: Pailier homomorphic encryption is used as the basic encryption method, and the Pailier cryptographic system is used. The plaintext m is encrypted by the public key into E pk (m), ciphertext E pk (m) is decrypted by the private key to D sk (E pk (m)). The specific attributes are as follows:
[0076] Homomorphic addition:
[0077] E pk (m0)*E pk (m1)modN 2 =E pk (m0+m1)modN
[0078] Multiplication of quantities:
[0079] E pk (m0) m1 modN 2 =E pk(m0*m1)modN
[0080] Semantic security. The Pailier cryptosystem is proven to be semantically secure. In other words, given any ciphertext, the adversary cannot infer any information about the corresponding plaintext.
[0081] Basic Security Subprotocols,This implementation introduces several security subprotocols for basic computations of,encrypted data, which work under the framework of two non-interoperable,clouds (C1 and C2).,The security proofs of these protocols are omitted here, and,if there are ready-made solutions, they can be directly derived,through simulation and synthesis theorems in related research.
[0082] Secure Multiplication (SM), assuming C1 has private input E pk (a) and E pk (b), C2 has the private key, secure multiplication SM(E pk (a),E pk (b)) returns an encrypted form of a*b, namely E pk (a*b) is given as output to C1. During the protocol, no information about a and b is revealed to C1 and C2.
[0083] Safe Equality (SEQ), assuming C1 has private input E pk (a) and E pk (b), C2 has the private key, which is securely equal to SEQ(E pk (a),E pk (b)) returns an encrypted Boolean output E pk ([a==b]). In the SEQ process, C1 can only obtain E pk ([a==b]), the plaintext [a==b] cannot be revealed to C1 and C2.
[0084] Secure Squared Euclidean Distance (SSED), assuming C1 has two encrypted vectors E pk (X) and E pk (Y), C2 has the private key, X and Y are d-dimensional vectors, E pk (X) and E pk (Y) can be expressed as E pk (X)=〈E pk (x1),E pk (x2),...,E pk (x d )〉, E pk (Y)=〈E pk (y1),E pk (y2),...,E pk (y d)〉. Safe Squared Euclidean Distance (SSED) (E pk (X),E pk (Y)) Secure Computing E pk (||XY|| 2 ), where ||XY|| represents the Euclidean distance between X and Y. In this protocol, C1 and C2 do not obtain any information about X and Y.
[0085] The secure comparison (SCMP), i.e., the secure comparison (minimal) protocol, requires only the encrypted comparison result (less than or greater than) between two encrypted values, but not the encrypted values themselves, according to the comparison requirements in the ciphertext, which leads to low efficiency. To this end, the present invention proposes a new SCMP protocol, which only returns the encrypted comparison result between two encrypted values.
[0086] Assume C1 has private input E pk (a) and E pk (b), C2 has the private key, C1 first generates a random number r∈Z n , and randomly selects function F (tossing a coin) so that F = 0 or F = 1. Because F is randomly selected by C1, it is only known to C1, but not to C2. Use SM, F, r to compare SCMP (E pk (d1),E pk (d2)) can be safely calculated as follows:
[0087] If F = 0, calculate E pk (β)=(E pk (d1)*E pk (d2) N-1 ) r ;
[0088] If F = 1, calculate E pk (β)=(E pk (d2)*E pk (d1) N-1 ) r ;
[0089] E pk (β) sent to C2, C2 decrypts E pk (β) obtains β. If β < 0, C2 sets γ = 1, otherwise γ = 0. After encrypting γ, C2 sets E pk (γ) is sent to C1. Finally, according to the selected F, C1 outputs E pk ([d1≤d2])=E pk (β) As a result, if F = 0, output E pk ([d1≤d2])=E pk (1)*Epk (γ) N-1 .
[0090] Secure Ternary Conditional Operation (STCO). Based on the SCMP and SM protocols, we further proposed a secure ternary conditional operation protocol. The main idea of this protocol is to safely return different values according to different conditions, which is similar to using the ternary conditional operation in programming languages (such as C or Java). <condition> : <value1> : <value2>Using the output of the SCMP protocol as a condition, we define the STCO protocol as follows:
[0091] Assume C1 has private input E pk (d3), E pk (d4) and SCMP protocol output result E pk ([d1≤d2]), C2 has the private key, then C1 calculates:
[0092] STCO(E pk (d3),E pk (d4),E pk ([d1≤d2]))
[0093] =SM(E pk (d3),E pk ([d1≤d2])*SM(E pk (d4),E pk (1)*E pk ([d1≤d2]) N-1 )
[0094] Therefore, if the SCMP result E pk ([d1≤d2]) is true, then return E pk (d3), otherwise return E pk (d4) without being known by C1.
[0095] A privacy-preserving Top-k query why-not problem processing method, the method comprising the following steps:
[0096] 1) Safely calculate the initial ranking of lost targets;
[0097] After the user asks a "why-not" question, the initial ranking of the missing target needs to be found. In order to ensure that no relevant information about the data and query is leaked during the calculation of the initial ranking, the secure multiplication protocol (SM) and the secure comparison protocol (SCMP) are used to calculate the score function and compare the score function values to achieve the purpose of protecting data privacy and query privacy;
[0098] Specifically, in the SWNkQ algorithm, in order to calculate the initial value of the penalty function, we must first obtain the lost target in the weighted vector In order to obtain r0, C1 first calculates the score function and uses SCMP to compare the score functions. C1 and C2 collaborate to calculate E pk (r0) = E pk (r0)*E pk ([score i ≤score0]), C1 obtains the calculation result, namely E pk (r0).
[0099] 2) Based on the initial ranking, secure pruning is performed through dominance relations;
[0100] In order to improve efficiency and reduce the number of data points in the data set that need to be calculated, the present invention proposes a more efficient secure data dominance relationship calculation method based on the existing secure data dominance relationship calculation, and uses the secure comparison protocol (SCMP) to achieve secure screening of data sets;
[0101] In the data set, there are two data If p1[i]≤p2[i] and p1[i]<p2[i] exists in at least one dimension, we consider Dominate This dominance relationship is well studied and widely used in skyline queries. Dominate Regardless of any weight vector, The scoring functions are better than We can conclude that the points that dominate the missing object m must have a better score than m, and the points that score better than m must be ranked higher than m. Therefore, we can filter the data set by simply calculating the points that dominate m.
[0102] In the prior art, a secure dominance relationship calculation protocol (SDOM) is proposed to calculate the dominance relationship under ciphertext. However, the cost of calculating the dominance relationship using a secure protocol is very high. In addition, filtering a data set does not require recording the dominance point itself, but only the number of dominance points. Based on this property, when the data owner encrypts the data and sends it to
[0103] Before C1, for each Calculate the number of points that dominate it, and add a dimension to the end of each data to store the number of dominated points p i [d+1]. Finally, the data owner encrypts each expanded dimension of data and uploads it to C1.
[0104] 3) Safely generate weight space:
[0105] In order to obtain a better approximate answer, server C2 randomly samples and encrypts a set of weighted vectors to form a weight space and sends it to server C1. C1 does not know the specific value of the weight space, and C2 does not know which set of weighted vectors is finally used, so this process is safe for both C1 and C2.
[0106] In order to reduce the computation and communication overhead of data owners, a secure method is designed to leverage the cooperation of C1 and C2 to support random sampling of encrypted weighted vectors to generate a secure weighted space. The specific method is as follows: C2 randomly samples encrypted weighted vectors to generate a weighted space E pk (S) and E pk (S) is sent to C1. It should be noted that the sampling of weighted vectors is independent of the why-not question explanation, and a new set of weighted vectors needs to be generated for each why-not question explanation process. is randomly sampled and encrypted by C2, and C1 does not know S. At the same time, C2 does not know which weighting vector C1 uses, so C2 does not know the value of the weighting vector finally selected. Therefore, C1 obtains E pk (S) is safe.
[0107] 4) Calculate the security penalty function;
[0108] In order to evaluate the quality of refined queries, the penalty function value is used as the judgment criterion. We believe that the refined query with a smaller penalty function value has the smallest change from the initial query. Finally, the refined query with the smallest penalty function value is returned among all refined queries.
[0109] In order to find the refined query with the minimum penalty function value, C1 needs to calculate the penalty function value under each weighted vector. Given a refined query and user uploaded E pk (1-α), C1 first calculates E pk (η w )=SM(E pk (1-α),E pk (r0-k0)), and then calculate the penalty function value of q':
[0110]
[0111] We use Calculate the penalty function instead of It does not affect the size relationship of the penalty function value. It is more convenient to calculate the penalty function value.
[0112] 5) Define early stopping conditions to obtain the best refined query.
[0113] By shifting the penalty function, we can find that the refined query that meets certain conditions must not be less than the penalty function value of the current refined query. For such refined queries, we can stop and skip them in advance. By stopping the conditions in advance, we can greatly improve efficiency.
[0114] For penalty function calculation, let η w =(1-α)(r0-k0), the penalty function calculation formula becomes: We can get a simple deformation of the penalty function calculation formula and By observing m[d+1], we can get the minimum ranking of m. If m[d+1]≤k0, it means that m can appear in the result of the refined query without modifying k0. Therefore, use max{m[d+1]-k0,0} as Δk L The value of gives the current minimum penalty function value Pen min , for each If η w Δw j Greater than Then it is impossible to obtain a refined query that is less than the current penalty function value. Can be skipped.
[0115] Similarly, given a Pen min , you can also use To limit η k Δr j If η k Δr j Greater than This also means that we cannot obtain a refined query with a smaller penalty function value. Through the above two conditions, we can stop the calculation of the current refined query earlier.
[0116] There is encrypted data after adding dimension and encrypted why-not query requests C1 and C2 first calculate the initial ranking r0 of the missing target m. If r0 = 0 is determined by the SEQ protocol, it means that m is not in the data set. Prune if E pk (p i [d+1])≥r0, we remove the data from the candidate set. Then C2 randomly samples and encrypts the weight space E of SWNkQ pk (S) and sent to C1, for each C1 calculates the score function value and ranks it. The calculated ranking r i With Δw j Calculate the penalty function value. Before calculating the ranking, the SCMP protocol is used to compare η w Δw j and The size relationship is relatively Then jump out of the current When calculating the ranking, the SCMP protocol is used to compare η k Δk L and like Then jump out of the current Finally, we calculate and E pk (k min ) plus the disturbance, the disturbance factor ε1 and Encrypt the two perturbation factors and add them to and E pk (k min ) and E pk (k med ),Will and E pk (k med ) is sent to C2 for decryption and then sent to the user, and ε1 and Sent directly to the user, who uses the result from C2 minus the perturbation factor from C1 to get the best refined query
[0117] The present invention solves the "why-not" problem of Top-k queries in outsourced data scenarios for the first time, and verifies through experiments that the present invention has good usability. At the same time, in order to better illustrate the efficiency of the present invention, the usability of the algorithm is experimentally demonstrated on three real data sets and one randomly generated data set.
[0118] The experimental settings are as follows: a server is used as a cloud server, which is configured with two Intel(R) Xeon(R) Silver 4110 Eight-Core CPU 21GHz and 128G memory running Ubuntu1004LTS. The experimental datasets are real NBA player data, movie rating data, sales data and a randomly generated dataset. There are 4500 data in five attribute dimensions, 10000 data in four attribute dimensions, 16000 data in four attribute dimensions and 100000 data in three attribute dimensions.
[0119] The performance of the algorithm in the present invention is illustrated below by analyzing experimental data.
[0120] Initial ranking, Figure 2 The effect of different initial rankings on the time of four datasets is shown. The rule that can be observed in all datasets is that the time increases with the increase of ranking. There are also different situations between different datasets. The NBA dataset takes the least time relatively because it has the least data. The query on the rand dataset is more efficient, while the query on the Movie dataset takes a longer time, which may be due to the large pruning conditions and attribute dimensions. Different α also presents different times. In general, the NBA, Sales and rand datasets are not so sensitive to α, while the Movie dataset is more affected by α.
[0121] Initial result set size, Figure 3 The effect of different initial result set sizes on the time of four data sets is shown. Unlike the initial ranking, the larger the result set, the shorter the running time, because the larger the result set, the earlier the lost target appears in the result set, and the shorter the running time. When k=40, the running time drops sharply, because the larger the k, the better the pruning effect.
[0122] The size of the weight space. Figure 4 The effect of different weight space sizes on the time on four datasets is shown. It can be observed that on all datasets, the larger the weight space, the longer the running time, because more weighted vectors represent more cycles, and the longer the running time. The Movie dataset takes longer to run than the rand dataset, because the rand dataset has fewer attribute dimensions, and the dominance relationship calculation can screen more points.
[0123] In summary, this implementation scheme realizes the explanation of "why-not" questions in outsourcing scenarios, while ensuring data privacy, query privacy and no relevant information is leaked during the explanation process;
[0124] Efficiently implement the explanation of "why-not" questions on encrypted data objects, so that data objects in outsourcing scenarios can be effectively utilized;
[0125] Under the premise of ensuring data privacy and security, it can return Top-k queries that meet user requirements in actual applications.
[0126] Those skilled in the art will readily appreciate other embodiments of the present invention after considering the specification and practicing the invention disclosed herein. This application is intended to cover any variations, uses or adaptations of the present invention that follow the general principles of the present invention and include common knowledge or customary techniques in the art that are not disclosed by the present invention. The specification and examples are to be considered exemplary only, and the true scope and spirit of the present invention are indicated by the claims. < / value1> < / condition>
Claims
1. A privacy-preserving Top-k query why-not problem processing method, given an encrypted why-not problem The why-not problem of secure Top-k query is to find a refined Top-k query in the ciphertext. in, pk is a public key of asymmetric encryption, characterized in that the method comprises the following steps: 1) Safely calculate the initial ranking of lost targets; 2) Based on the initial ranking, secure pruning is performed through dominance relations; 3) Safely generate weight space: 4) Calculate the security penalty function; 5) Define early stopping conditions to obtain refined queries; The system model of this method includes three parties: data owner, query user and cloud server; The data owner first generates a key K=<pk,sk> , where pk is the public key for asymmetric encryption, and sk is the private key. Before outsourcing, the data owner uses pk to encrypt the data and sends the encrypted data to C1 using pk. K =<pk,sk> Send to C2; Query user: Specify a secure Top-k query After that, the query user will have the missing object set E pk (M) Sent to the cloud, and a why-not request is made based on the top-k query results; Cloud Server: After processing the secure Top-k query, the cloud server performs SWNkQ processing when receiving the "why-not" question, and returns the encrypted refined Top-k query to the corresponding user; The security model of this method adopts the framework of two non-interoperable clouds C1 and C2. The specific privacy requirements include: data privacy, query privacy, result privacy, and access mode privacy; The method introduces a security sub-protocol for basic calculation of encrypted data. The security sub-protocol works under the framework of two non-interoperable clouds C1 and C2. The security sub-protocol includes secure multiplication SM, secure equality SEQ, secure squared Euclidean distance SSED, secure comparison SCMP, and secure ternary conditional operation STCO. The STCO protocol is defined in this method as follows: Assume C1 has private input E pk (d3), E pk (d4) and SCMP protocol output result E pk ([d1≤d2]), C2 has the private key, then C1 calculates: STCO(E pk (d3),E pk (d4),E pk ([d1≤d2])) =SM(E pk (d3),E pk ([d1≤d2])*SM(E pk (d4),E pk (1)*E pk ([d1≤d2]) N-1 ) Therefore, if the SCMP result E pk ([d1≤d2]) is true, then return E pk (d3), otherwise return E pk (d4) without being known by C1; The method specifically comprises the following steps: 11) Servers C1 and C2 first calculate the initial ranking r0 of the missing target m, where r0=0 is determined using the SEQ protocol, indicating that m is not in the data set; 12) Based on the initial ranking r0, the encrypted data after increasing the dimension Prune if E pk (p i [d+1])≥r0, remove the data from the candidate set, where p i [] indicates the number of dominating points; 13) Server C2 randomly samples and encrypts the weight space E of SWNkQ pk (S) and sent to C1, 14) Given a refined query and user uploaded E pk (1-α), C1 first calculates E pk (η w )=SM(E pk (1-α),E pk (r0-k0)), and then calculate the penalty function value of q': use Calculate the penalty function; 15) For each C1 calculates the score function value and ranks it, and compares η through the SCMP protocol w Δw j and If Then jump out of the current The calculated ranking r i With Δw j Calculate the penalty function value; Among them, when calculating the ranking, the SCMP protocol is used to compare η k Δk L and like Then jump out of the current 16) For the calculated and E pk (k min ) plus the disturbance, the disturbance factor ε1 and Encrypt the two perturbation factors and add them to and E pk (k min ) and E pk (k med ),Will and E pk (k med ) is sent to C2 for decryption and then sent to the user, and ε1 and Sent directly to the user, who uses the result from C2 minus the perturbation factor from C1 to get the best refined query 2. According to claim 1, a privacy-preserving Top-k query why-not problem processing method is characterized by: In step 11), server C1 first calculates the score function and uses SCMP to compare the score functions. Servers C1 and C2 then cooperate to calculate E pk (r0) = E pk (r0)*E pk ([score i ≤score0]), C1 obtains the calculation result, namely E pk (r0).
3. According to claim 1, a privacy-preserving Top-k query why-not problem processing method is characterized by: Given a dataset with n data objects Each data object Has d attribute values Top-k query consists of three parts: result set k, d-dimensional weighted vector And the scoring function, assuming the scoring function is: The scoring function can be any monotonic function, There is a constraint: when i = 1, 2, … d, ∑w[i] = 1 and 0≤w[i]≤1, the Top-k query result set is the k objects with the smallest scores.
4. According to claim 1, a privacy-preserving Top-k query why-not problem processing method is characterized by: The encryption described in step 12) adopts Paillier homomorphic encryption, using the Paillier cryptographic system, and the plaintext m is encrypted by the public key to E pk (m), ciphertext E pk (m) is decrypted by the private key to D sk (E pk (m)); Homomorphic addition: And pk (m0)*E pk (m1)modN 2 =E pk (m0+m1)modN Multiplication of quantities:
5. According to claim 1, a privacy-preserving Top-k query why-not problem processing method is characterized by: The sampling of the weighted vectors in step 13) is independent of the why-not question interpretation, and a new set of weighted vectors needs to be generated for each why-not question interpretation process.
6. A privacy-preserving Top-k query why-not problem processing method according to claim 1, characterized in that: The penalty model involved in step 14) is: Where Δk=max(0,k′-k0), α∈[0,1] is a balancing factor, which represents the user's response to the original query q0 on k and Tolerance for variation, in addition, pass To standardize, is the equivalent conversion formula, where r0 is exist The following ranking.
Citation Information
Patent Citations
Method and system for solving SKQway-not problem by adopting AkC
CN111008270A
Method and system for solving SKQway-not problem by using AIR tree
CN111026750A