Multiplicative data perturbation (2)
Multiplicative Perturbation: RASP Random space perturbation
confidential query services in the cloud framework Data D D’ D’ D’=F(D) Data owner q’ Query q q’=Q(q) H(q’,D’) Authorized Users Result R’ Result R R=G(R’) Trusted client Honest but curious cloud RASP framework for confidential query services in the cloud
Order preserving encryption Agrawal2004, Boldyreva2009 The set of data is securely transformed so that the order is preserved but the distribution and domain are changed Benefits: indexing/searching on OPE encrypted data Weakness: once the original distribution is known, OPE is broken
Not attribute-wise order preserving Order preserving encryption (OPE, Agrawal et al 2004) is not resilient to distribution-based attacks Original Xi distribution is known Transformed Xi’ distribution OPE Bucket based Estimation
RASP perturbation k-dimensional numeric data, n records, represented as a k x n matrix, x: a record RG: random number generator A: (k+2)x(k+2) random invertible matrix K_ope : key for Order preserving encryption
Properties Not an OPE Preserves convexity of the dataset Convex dataset in Rk another convex dataset in Rk+2. Good for range query Each range query in Rk hyperplane based query range query in Rk+2 .
RASP properties Convexity preserving Queried range (hypercube) is convex RASP transforms the range to another convex (polyhedron) half space: wTx<=a wTx=a The intersection of convex sets is also convex.
illustration of convexity preserving Perturbed space Original space OPE space Xi < a E(Xi)<E(a)
Secure query transformation A naïve solution Based on the convexity preserving property Problems: (1) A-1 can be probed (2) is . . If a is known, the whole dimension i is breached.
Secure query transformation Enhanced solution Xk+2 is always positive (Xi-a) 0 (Xi-a)Xk+2 0 Correspondingly, in the encrypted space yTy 0, Problems addressed: (1) A-1 cannot be derived from (2) (Xi-a)Xk+2 0 contains the random component Xk+2 that protects the condition (Xi-a) 0
Efficient two-stage query processing illustrated Stage2: Filter out the junk records Stage1: Querying this bounding box Original space Transformed space A multidimensional tree index is been built on the encrypted data (in the transformed space) in the server.
The client calculates the large bounding box; Stage 1: The client calculates the large bounding box; The server uses the index to find the results. Stage 2: filter the initial results with the conditions yTiy 0 for 1…2m Note: the two-stage strategy works, if the output of stage 1 is significantly smaller than the original database and can be fit into the memory. Otherwise, use linear scan with stage 2 filtering.