195
Secure Nearest Neighbor Revisited Bin Yao 1 , Feifei Li 2 , Xiaokui Xiao 3 1 Department of Computer Science and Engineering 2 School of Computing Shanghai Jiao Tong University, P. R. China University of Utah 3 School of Computer Engineering Nanyang Technological University, Singapore July 11, 2013

Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Secure Nearest Neighbor Revisited

Bin Yao1, Feifei Li2, Xiaokui Xiao3

1Department of Computer Science and Engineering 2School of ComputingShanghai Jiao Tong University, P. R. China University of Utah

3School of Computer EngineeringNanyang Technological University, Singapore

July 11, 2013

Page 2: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

The Motivation

Cloud databases: Google Cloud SQL, Microsoft SQL Azure, AmazonSimpleDB.

Service providers (SP) answer queries from different clients.Data owner might not want to reveal data values to SP; clientsmight not want SP to learn their queries and/or the query results.

Cloud Database

Hakan Hacigumus,Balakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model. SIGMOD 2002

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 3: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

The Motivation

Cloud databases: Google Cloud SQL, Microsoft SQL Azure, AmazonSimpleDB.Service providers (SP) answer queries from different clients.

Data owner might not want to reveal data values to SP; clientsmight not want SP to learn their queries and/or the query results.

Cloud Database

Hakan Hacigumus,Balakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model. SIGMOD 2002

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 4: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

The Motivation

Cloud databases: Google Cloud SQL, Microsoft SQL Azure, AmazonSimpleDB.Service providers (SP) answer queries from different clients.Data owner might not want to reveal data values to SP; clientsmight not want SP to learn their queries and/or the query results.

Cloud DatabaseHakan Hacigumus, Balakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-providermodel. SIGMOD 2002

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 5: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Introduction and Motivation

Secure Query Processing

Secure Nearest Neighbor (SNN)

cloud server

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 6: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Introduction and Motivation

Secure Query Processing

Secure Nearest Neighbor (SNN)

cloud server

data owner

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 7: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Introduction and Motivation

Secure Query Processing

Secure Nearest Neighbor (SNN)

cloud server

data owner

E(D)

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 8: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Introduction and Motivation

Secure Query Processing

Secure Nearest Neighbor (SNN)

cloud server

data owner client

E(D)

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 9: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Introduction and Motivation

Secure Query Processing

Secure Nearest Neighbor (SNN)

?

?

?cloud server

data owner client

E(D)

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 10: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Introduction and Motivation

Secure Query Processing

Secure Nearest Neighbor (SNN)

cloud server

data owner client

E(D)

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 11: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Introduction and Motivation

Secure Query Processing

Secure Nearest Neighbor (SNN)

cloud server

data owner client

E(D)

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 12: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Introduction and Motivation

Secure Query Processing

Secure Nearest Neighbor (SNN)

cloud server

data owner client

E(D)

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 13: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Introduction and Motivation

Secure Query Processing

Secure Nearest Neighbor (SNN)

cloud server

data owner client

E(D)

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 14: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Introduction and Motivation

Secure Query Processing

Secure Nearest Neighbor (SNN)

cloud server

data owner client

E(q)

E(q)

E(q)

E(D)

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 15: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Introduction and Motivation

Secure Query Processing

Secure Nearest Neighbor (SNN)

cloud server

data owner client

E(nn(q))

E(nn(q))

E(nn(q))

E(D)

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 16: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Related Work

Existing work has examined the problems of answering basic SQLqueries [1], executing aggregate queries [2], and performing rangequeries [3], over an encrypted database

Hu et al. [4] and Wong et al. [5] deal with the SNN problem; thesolutions thus proposed, however, are insecure and can be attackedefficiently

Fully homomorphic encryption encryption due to Craig Gentry, “AFully Homomorphic Encryption Scheme (Ph.D. thesis)”: mostly oftheoretical interest, impractical, and inefficient for large data.

[1] H. Hacigumus, B. R. Iyer, C. Li, and S. Mehrotra. Executing SQL over encrypted data in the database service provider model.

In SIGMOD, 2002

[2] E. Mykletun and G. Tsudik. Aggregation queries in the database-as-a-service model. In DBSec, 2006

[3] E. Shi, J. Bethencourt, H. T.-H. Chan, D. X. Song, and A. Perrig. Multi-dimensional range query over encrypted data. In

IEEE Symposium on Security and Privacy, pages 350C364, 2007

[4] H. Hu, J. Xu, C. Ren, and B. Choi. Processing private queries over untrusted data cloud through privacy homomorphism. In

ICDE, pages 601C612, 2011

[5] W. K. Wong, D. W.-L. Cheung, B. Kao, and N. Mamoulis. Secure knn computation on encrypted databases. In SIGMOD,

pages 139C152, 2009

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 17: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Related Work

Existing work has examined the problems of answering basic SQLqueries [1], executing aggregate queries [2], and performing rangequeries [3], over an encrypted database

Hu et al. [4] and Wong et al. [5] deal with the SNN problem; thesolutions thus proposed, however, are insecure and can be attackedefficiently

Fully homomorphic encryption encryption due to Craig Gentry, “AFully Homomorphic Encryption Scheme (Ph.D. thesis)”: mostly oftheoretical interest, impractical, and inefficient for large data.

[1] H. Hacigumus, B. R. Iyer, C. Li, and S. Mehrotra. Executing SQL over encrypted data in the database service provider model.

In SIGMOD, 2002

[2] E. Mykletun and G. Tsudik. Aggregation queries in the database-as-a-service model. In DBSec, 2006

[3] E. Shi, J. Bethencourt, H. T.-H. Chan, D. X. Song, and A. Perrig. Multi-dimensional range query over encrypted data. In

IEEE Symposium on Security and Privacy, pages 350C364, 2007

[4] H. Hu, J. Xu, C. Ren, and B. Choi. Processing private queries over untrusted data cloud through privacy homomorphism. In

ICDE, pages 601C612, 2011

[5] W. K. Wong, D. W.-L. Cheung, B. Kao, and N. Mamoulis. Secure knn computation on encrypted databases. In SIGMOD,

pages 139C152, 2009

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 18: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Related Work

Existing work has examined the problems of answering basic SQLqueries [1], executing aggregate queries [2], and performing rangequeries [3], over an encrypted database

Hu et al. [4] and Wong et al. [5] deal with the SNN problem; thesolutions thus proposed, however, are insecure and can be attackedefficiently

Fully homomorphic encryption encryption due to Craig Gentry, “AFully Homomorphic Encryption Scheme (Ph.D. thesis)”: mostly oftheoretical interest, impractical, and inefficient for large data.

[1] H. Hacigumus, B. R. Iyer, C. Li, and S. Mehrotra. Executing SQL over encrypted data in the database service provider model.

In SIGMOD, 2002

[2] E. Mykletun and G. Tsudik. Aggregation queries in the database-as-a-service model. In DBSec, 2006

[3] E. Shi, J. Bethencourt, H. T.-H. Chan, D. X. Song, and A. Perrig. Multi-dimensional range query over encrypted data. In

IEEE Symposium on Security and Privacy, pages 350C364, 2007

[4] H. Hu, J. Xu, C. Ren, and B. Choi. Processing private queries over untrusted data cloud through privacy homomorphism. In

ICDE, pages 601C612, 2011

[5] W. K. Wong, D. W.-L. Cheung, B. Kao, and N. Mamoulis. Secure knn computation on encrypted databases. In SIGMOD,

pages 139C152, 2009

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 19: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Related Work

Existing work has examined the problems of answering basic SQLqueries [1], executing aggregate queries [2], and performing rangequeries [3], over an encrypted database

Hu et al. [4] and Wong et al. [5] deal with the SNN problem; thesolutions thus proposed, however, are insecure and can be attackedefficiently

Fully homomorphic encryption encryption due to Craig Gentry, “AFully Homomorphic Encryption Scheme (Ph.D. thesis)”: mostly oftheoretical interest, impractical, and inefficient for large data.

[1] H. Hacigumus, B. R. Iyer, C. Li, and S. Mehrotra. Executing SQL over encrypted data in the database service provider model.

In SIGMOD, 2002

[2] E. Mykletun and G. Tsudik. Aggregation queries in the database-as-a-service model. In DBSec, 2006

[3] E. Shi, J. Bethencourt, H. T.-H. Chan, D. X. Song, and A. Perrig. Multi-dimensional range query over encrypted data. In

IEEE Symposium on Security and Privacy, pages 350C364, 2007

[4] H. Hu, J. Xu, C. Ren, and B. Choi. Processing private queries over untrusted data cloud through privacy homomorphism. In

ICDE, pages 601C612, 2011

[5] W. K. Wong, D. W.-L. Cheung, B. Kao, and N. Mamoulis. Secure knn computation on encrypted databases. In SIGMOD,

pages 139C152, 2009

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 20: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Problem Formulation

Three parties:

A data owner who has a database D that contains d-dimensionalEuclidean objects/points, and outsources D to a server that cannotbe fully trusted.A client (or multiple of them) who wants to access and pose queriesto D.A server that is honest but potentially curious in the tuples in thedatabase and the queries from the clients.

Objective:

To enable the client to perform NN queries without letting the serverlearn contents about the query (and its result) or the tuples in thedatabase.To ensure the SNN method is as secure as the encryption method Eused by the data owner.Adversary model: same as whatever model in which E is secure, e.g,IND-CPA, IND-CCA.

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 21: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Problem Formulation

Three parties:

A data owner who has a database D that contains d-dimensionalEuclidean objects/points, and outsources D to a server that cannotbe fully trusted.A client (or multiple of them) who wants to access and pose queriesto D.A server that is honest but potentially curious in the tuples in thedatabase and the queries from the clients.

Objective:

To enable the client to perform NN queries without letting the serverlearn contents about the query (and its result) or the tuples in thedatabase.To ensure the SNN method is as secure as the encryption method Eused by the data owner.Adversary model: same as whatever model in which E is secure, e.g,IND-CPA, IND-CCA.

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 22: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Problem Formulation

Three parties:

A data owner who has a database D that contains d-dimensionalEuclidean objects/points, and outsources D to a server that cannotbe fully trusted.A client (or multiple of them) who wants to access and pose queriesto D.A server that is honest but potentially curious in the tuples in thedatabase and the queries from the clients.

Objective:

To enable the client to perform NN queries without letting the serverlearn contents about the query (and its result) or the tuples in thedatabase.To ensure the SNN method is as secure as the encryption method Eused by the data owner.Adversary model: same as whatever model in which E is secure, e.g,IND-CPA, IND-CCA.

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 23: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Problem Formulation

Three parties:

A data owner who has a database D that contains d-dimensionalEuclidean objects/points, and outsources D to a server that cannotbe fully trusted.A client (or multiple of them) who wants to access and pose queriesto D.A server that is honest but potentially curious in the tuples in thedatabase and the queries from the clients.

Objective:

To enable the client to perform NN queries without letting the serverlearn contents about the query (and its result) or the tuples in thedatabase.To ensure the SNN method is as secure as the encryption method Eused by the data owner.Adversary model: same as whatever model in which E is secure, e.g,IND-CPA, IND-CCA.

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 24: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Problem Formulation

Three parties:

A data owner who has a database D that contains d-dimensionalEuclidean objects/points, and outsources D to a server that cannotbe fully trusted.A client (or multiple of them) who wants to access and pose queriesto D.A server that is honest but potentially curious in the tuples in thedatabase and the queries from the clients.

Objective:

To enable the client to perform NN queries without letting the serverlearn contents about the query (and its result) or the tuples in thedatabase.To ensure the SNN method is as secure as the encryption method Eused by the data owner.

Adversary model: same as whatever model in which E is secure, e.g,IND-CPA, IND-CCA.

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 25: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Problem Formulation

Three parties:

A data owner who has a database D that contains d-dimensionalEuclidean objects/points, and outsources D to a server that cannotbe fully trusted.A client (or multiple of them) who wants to access and pose queriesto D.A server that is honest but potentially curious in the tuples in thedatabase and the queries from the clients.

Objective:

To enable the client to perform NN queries without letting the serverlearn contents about the query (and its result) or the tuples in thedatabase.To ensure the SNN method is as secure as the encryption method Eused by the data owner.Adversary model: same as whatever model in which E is secure, e.g,IND-CPA, IND-CCA.

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 26: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Problem Definition

Database D = {p1, . . . , pN}, where pi ∈ Rd .

E (D): encryption of D under a secure encryption function E .

Goal: find a method S such that S(E (q),E (D)) = E (nn(q,D)),where q ∈ Rd , without letting the SP learn contents about eitherthe query (and its results) or the tuples in D.

Standard security model, such as indistinguishability under chosenplaintext attack (IND-CPA), or indistinguishability under chosenciphertext attack (IND-CCA).

To appear in ICDE’13.

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 27: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Problem Definition

Database D = {p1, . . . , pN}, where pi ∈ Rd .

E (D): encryption of D under a secure encryption function E .

Goal: find a method S such that S(E (q),E (D)) = E (nn(q,D)),where q ∈ Rd , without letting the SP learn contents about eitherthe query (and its results) or the tuples in D.

Standard security model, such as indistinguishability under chosenplaintext attack (IND-CPA), or indistinguishability under chosenciphertext attack (IND-CCA).

To appear in ICDE’13.

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 28: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Problem Definition

Database D = {p1, . . . , pN}, where pi ∈ Rd .

E (D): encryption of D under a secure encryption function E .

Goal: find a method S such that S(E (q),E (D)) = E (nn(q,D)),where q ∈ Rd , without letting the SP learn contents about eitherthe query (and its results) or the tuples in D.

Standard security model, such as indistinguishability under chosenplaintext attack (IND-CPA), or indistinguishability under chosenciphertext attack (IND-CCA).

To appear in ICDE’13.

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 29: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Problem Definition

Database D = {p1, . . . , pN}, where pi ∈ Rd .

E (D): encryption of D under a secure encryption function E .

Goal: find a method S such that S(E (q),E (D)) = E (nn(q,D)),where q ∈ Rd , without letting the SP learn contents about eitherthe query (and its results) or the tuples in D.

Standard security model, such as indistinguishability under chosenplaintext attack (IND-CPA), or indistinguishability under chosenciphertext attack (IND-CCA).

To appear in ICDE’13.

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 30: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Problem Definition

Database D = {p1, . . . , pN}, where pi ∈ Rd .

E (D): encryption of D under a secure encryption function E .

Goal: find a method S such that S(E (q),E (D)) = E (nn(q,D)),where q ∈ Rd , without letting the SP learn contents about eitherthe query (and its results) or the tuples in D.

Standard security model, such as indistinguishability under chosenplaintext attack (IND-CPA), or indistinguishability under chosenciphertext attack (IND-CCA).

To appear in ICDE’13.

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 31: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Insecurity of Existing Methods

First attempt: Wai Kit Wong, David Wai-Lok Cheung, Ben Kao, NikosMamoulis: Secure kNN computation on encrypted databases. SIGMOD2009

Basic idea: construct a “secure” encryption function that preservesthe dot product between a query point and a database point.Attack we found: after learning only d query points and theirencryptions, a linear system of d equations can be formed to decryptany encrypted p ∈ D.

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 32: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Insecurity of Existing Methods

First attempt: Wai Kit Wong, David Wai-Lok Cheung, Ben Kao, NikosMamoulis: Secure kNN computation on encrypted databases. SIGMOD2009

Basic idea: construct a “secure” encryption function that preservesthe dot product between a query point and a database point.

Attack we found: after learning only d query points and theirencryptions, a linear system of d equations can be formed to decryptany encrypted p ∈ D.

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 33: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Insecurity of Existing Methods

First attempt: Wai Kit Wong, David Wai-Lok Cheung, Ben Kao, NikosMamoulis: Secure kNN computation on encrypted databases. SIGMOD2009

Basic idea: construct a “secure” encryption function that preservesthe dot product between a query point and a database point.Attack we found: after learning only d query points and theirencryptions, a linear system of d equations can be formed to decryptany encrypted p ∈ D.

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 34: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Insecurity of Existing Methods

Second attempt: Haibo Hu, Jianliang Xu, Chushi Ren, Byron Choi:Processing private queries over untrusted data cloud through privacyhomomorphism. ICDE 2011

Basic idea: Using homomorphic encryption to encrypt each entry ina multi-dimensional index; Guide the search by using thehomomorphic operations between (encrypted) q and entry e.Attack we found: In the above process, the server learns if q lies tothe left or the right of another point, in each dimension, which leadsto a binary search to efficiently recover any encrypted point.

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 35: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Insecurity of Existing Methods

Second attempt: Haibo Hu, Jianliang Xu, Chushi Ren, Byron Choi:Processing private queries over untrusted data cloud through privacyhomomorphism. ICDE 2011

Basic idea: Using homomorphic encryption to encrypt each entry ina multi-dimensional index; Guide the search by using thehomomorphic operations between (encrypted) q and entry e.

Attack we found: In the above process, the server learns if q lies tothe left or the right of another point, in each dimension, which leadsto a binary search to efficiently recover any encrypted point.

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 36: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Insecurity of Existing Methods

Second attempt: Haibo Hu, Jianliang Xu, Chushi Ren, Byron Choi:Processing private queries over untrusted data cloud through privacyhomomorphism. ICDE 2011

Basic idea: Using homomorphic encryption to encrypt each entry ina multi-dimensional index; Guide the search by using thehomomorphic operations between (encrypted) q and entry e.Attack we found: In the above process, the server learns if q lies tothe left or the right of another point, in each dimension, which leadsto a binary search to efficiently recover any encrypted point.

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 37: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Hardness of the Problem: OPE

Order-preserving encryption (OPE) is a set of functions{E , E−1, op}, such that:

E(m) = c, E−1(c) = m (here we omit the keys).op(c1, c2) = 1 if m1 < m2; op(c1, c2) = −1 if m1 > m2.

Theorem

A truly secure OPE does not exist in standard security models, such asIND-CPA. It also does not exist even in much relaxed security models,such as the indistinguishability under ordered chosen-plaintext attack(IND-OCPA).

Rakesh Agrawal, Jerry Kiernan, Ramakrishnan Srikant, Yirong Xu: Order-Preserving Encryption for Numeric Data. SIGMOD 2004

Alexandra Boldyreva, Nathan Chenette, Younho Lee, Adam O’Neill: Order-Preserving Symmetric Encryption. EUROCRYPT 2009Alexandra Boldyreva, Nathan Chenette, Adam O’Neill: Order-Preserving Encryption Revisited: Improved Security Analysis and AlternativeSolutions. CRYPTO 2011

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 38: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Hardness of the Problem: OPE

Order-preserving encryption (OPE) is a set of functions{E , E−1, op}, such that:

E(m) = c, E−1(c) = m (here we omit the keys).op(c1, c2) = 1 if m1 < m2; op(c1, c2) = −1 if m1 > m2.

Theorem

A truly secure OPE does not exist in standard security models, such asIND-CPA. It also does not exist even in much relaxed security models,such as the indistinguishability under ordered chosen-plaintext attack(IND-OCPA).

Rakesh Agrawal, Jerry Kiernan, Ramakrishnan Srikant, Yirong Xu: Order-Preserving Encryption for Numeric Data. SIGMOD 2004Alexandra Boldyreva, Nathan Chenette, Younho Lee, Adam O’Neill: Order-Preserving Symmetric Encryption. EUROCRYPT 2009Alexandra Boldyreva, Nathan Chenette, Adam O’Neill: Order-Preserving Encryption Revisited: Improved Security Analysis and AlternativeSolutions. CRYPTO 2011

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 39: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Hardness of the Problem: SNN gives OPE

Given E (D) = {E (p1), . . . ,E (pN)}, suppose we have a secure SNNmethod S such that: S(E (q),E (D))→ E (nn(q,D)) without theknowledge of E−1.

We can construct an OPE, {E , E−1, op}, based on S(·)!

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 40: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Hardness of the Problem: SNN gives OPE

Given E (D) = {E (p1), . . . ,E (pN)}, suppose we have a secure SNNmethod S such that: S(E (q),E (D))→ E (nn(q,D)) without theknowledge of E−1.We can construct an OPE, {E , E−1, op}, based on S(·)!

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 41: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Hardness of the Problem: SNN gives OPE

Given E (D) = {E (p1), . . . ,E (pN)}, suppose we have a secure SNNmethod S such that: S(E (q),E (D))→ E (nn(q,D)) without theknowledge of E−1.We can construct an OPE, {E , E−1, op}, based on S(·)!

p1

m1 m2 m3 m4

Z+

p2 p3 p4

h(·) : pi+1 − pi < pi − pi−1

p5

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 42: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Hardness of the Problem: SNN gives OPE

Given E (D) = {E (p1), . . . ,E (pN)}, suppose we have a secure SNNmethod S such that: S(E (q),E (D))→ E (nn(q,D)) without theknowledge of E−1.We can construct an OPE, {E , E−1, op}, based on S(·)!

p1

m1 m2 m3 m4

Z+

p2 p3 p4

h(·) : pi+1 − pi < pi − pi−1

p5

E(mi) = E(h(mi) = E(pi), E−1(c) = h−1(E−1(c))

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 43: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Hardness of the Problem: SNN gives OPE

Given E (D) = {E (p1), . . . ,E (pN)}, suppose we have a secure SNNmethod S such that: S(E (q),E (D))→ E (nn(q,D)) without theknowledge of E−1.We can construct an OPE, {E , E−1, op}, based on S(·)!

p1

m1 m2 m3 m4

Z+

p2 p3 p4

h(·) : pi+1 − pi < pi − pi−1

p5

E(mi) = E(h(mi) = E(pi), E−1(c) = h−1(E−1(c))

D:

nn(pi, D) = pi+1, i ∈ [1, N ]; nn(pN+1, D) = pN .

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 44: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Hardness of the Problem: SNN gives OPE

Given E (D) = {E (p1), . . . ,E (pN)}, suppose we have a secure SNNmethod S such that: S(E (q),E (D))→ E (nn(q,D)) without theknowledge of E−1.We can construct an OPE, {E , E−1, op}, based on S(·)!

p1

m1 m2 m3 m4

Z+

p2 p3 p4

h(·) : pi+1 − pi < pi − pi−1

p5

E(mi) = E(h(mi) = E(pi), E−1(c) = h−1(E−1(c))

D:

nn(pi, D) = pi+1, i ∈ [1, N ]; nn(pN+1, D) = pN .

S(E(pi), E(D)) = E(pi+1), for i ∈ [1, N ].

S(E(pN+1), E(D)) = E(pN ).

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 45: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Hardness of the Problem: SNN gives OPE

How to construct op(E(mi ), E(mj))?

Observe that by our construction, E(mi ) = E (pi ), andE(mj) = E (pj).Define function traverse(E(mi )) which outputs i !

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 46: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Hardness of the Problem: SNN gives OPE

How to construct op(E(mi ), E(mj))?Observe that by our construction, E(mi ) = E (pi ), andE(mj) = E (pj).

Define function traverse(E(mi )) which outputs i !

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 47: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Hardness of the Problem: SNN gives OPE

How to construct op(E(mi ), E(mj))?Observe that by our construction, E(mi ) = E (pi ), andE(mj) = E (pj).Define function traverse(E(mi )) which outputs i !

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 48: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Hardness of the Problem: SNN gives OPE

How to construct op(E(mi ), E(mj))?Observe that by our construction, E(mi ) = E (pi ), andE(mj) = E (pj).Define function traverse(E(mi )) which outputs i !

p1

m1 m2 m3 m4

Z+

p2 p3 p4

h(·) : pi+1 − pi < pi − pi−1

p5E(p2)

E(m2)

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 49: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Hardness of the Problem: SNN gives OPE

How to construct op(E(mi ), E(mj))?Observe that by our construction, E(mi ) = E (pi ), andE(mj) = E (pj).Define function traverse(E(mi )) which outputs i !

p1

m1 m2 m3 m4

Z+

p2 p3 p4

h(·) : pi+1 − pi < pi − pi−1

p5E(p2)

E(m2)

1: S(E(p2), E(D) = E(p3)

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 50: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Hardness of the Problem: SNN gives OPE

How to construct op(E(mi ), E(mj))?Observe that by our construction, E(mi ) = E (pi ), andE(mj) = E (pj).Define function traverse(E(mi )) which outputs i !

p1

m1 m2 m3 m4

Z+

p2 p3 p4

h(·) : pi+1 − pi < pi − pi−1

p5E(p2)

E(m2)

E(p3)

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 51: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Hardness of the Problem: SNN gives OPE

How to construct op(E(mi ), E(mj))?Observe that by our construction, E(mi ) = E (pi ), andE(mj) = E (pj).Define function traverse(E(mi )) which outputs i !

p1

m1 m2 m3 m4

Z+

p2 p3 p4

h(·) : pi+1 − pi < pi − pi−1

p5E(p2)

E(m2)

E(p3)

2: S(E(p3), E(D) = E(p4)

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 52: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Hardness of the Problem: SNN gives OPE

How to construct op(E(mi ), E(mj))?Observe that by our construction, E(mi ) = E (pi ), andE(mj) = E (pj).Define function traverse(E(mi )) which outputs i !

p1

m1 m2 m3 m4

Z+

p2 p3 p4

h(·) : pi+1 − pi < pi − pi−1

p5E(p2)

E(m2)

E(p3) E(p4)

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 53: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Hardness of the Problem: SNN gives OPE

How to construct op(E(mi ), E(mj))?Observe that by our construction, E(mi ) = E (pi ), andE(mj) = E (pj).Define function traverse(E(mi )) which outputs i !

p1

m1 m2 m3 m4

Z+

p2 p3 p4

h(·) : pi+1 − pi < pi − pi−1

p5E(p2)

E(m2)

E(p3) E(p4)

3: S(E(p4), E(D) = E(p5)

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 54: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Hardness of the Problem: SNN gives OPE

How to construct op(E(mi ), E(mj))?Observe that by our construction, E(mi ) = E (pi ), andE(mj) = E (pj).Define function traverse(E(mi )) which outputs i !

p1

m1 m2 m3 m4

Z+

p2 p3 p4

h(·) : pi+1 − pi < pi − pi−1

p5E(p2)

E(m2)

E(p3) E(p4)E(p5)

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 55: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Hardness of the Problem: SNN gives OPE

How to construct op(E(mi ), E(mj))?Observe that by our construction, E(mi ) = E (pi ), andE(mj) = E (pj).Define function traverse(E(mi )) which outputs i !

p1

m1 m2 m3 m4

Z+

p2 p3 p4

h(·) : pi+1 − pi < pi − pi−1

p5E(p2)

E(m2)

E(p3) E(p4)E(p5)

4: S(E(p5), E(D) = E(p4), Repetition FOUND!

E(p4)

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 56: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Hardness of the Problem: SNN gives OPE

How to construct op(E(mi ), E(mj))?Observe that by our construction, E(mi ) = E (pi ), andE(mj) = E (pj).Define function traverse(E(mi )) which outputs i !

p1

m1 m2 m3 m4

Z+

p2 p3 p4

h(·) : pi+1 − pi < pi − pi−1

p5E(p2)

E(m2)

E(p3) E(p4)E(p5)

4: S(E(p5), E(D) = E(p4), Repetition FOUND!

i = N− (number of steps −2)!

E(p4)

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 57: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

So, Hopeless? NO!

It only says it is hard to output E (nn(q,D))! What if we relax thisrestriction and allow something “less precise”?

Extreme case: just return E (D) and ask client to decrypt and findnn(q,D). Obviously secure! But expensive!The SVD (secure voronoi diagram) method:

create partitions based on the voronoi cells of D.E(D) = {E(G1),E(G2), . . .}.send partition configurations (the boundaries) to clients, client onlyneeds to ask for the encryption of a given partition by partition id(which is figured out locally).

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 58: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

So, Hopeless? NO!

It only says it is hard to output E (nn(q,D))! What if we relax thisrestriction and allow something “less precise”?Extreme case: just return E (D) and ask client to decrypt and findnn(q,D). Obviously secure! But expensive!

The SVD (secure voronoi diagram) method:

create partitions based on the voronoi cells of D.E(D) = {E(G1),E(G2), . . .}.send partition configurations (the boundaries) to clients, client onlyneeds to ask for the encryption of a given partition by partition id(which is figured out locally).

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 59: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

So, Hopeless? NO!

It only says it is hard to output E (nn(q,D))! What if we relax thisrestriction and allow something “less precise”?Extreme case: just return E (D) and ask client to decrypt and findnn(q,D). Obviously secure! But expensive!The SVD (secure voronoi diagram) method:

create partitions based on the voronoi cells of D.E(D) = {E(G1),E(G2), . . .}.send partition configurations (the boundaries) to clients, client onlyneeds to ask for the encryption of a given partition by partition id(which is figured out locally).

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 60: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

So, Hopeless? NO!

It only says it is hard to output E (nn(q,D))! What if we relax thisrestriction and allow something “less precise”?Extreme case: just return E (D) and ask client to decrypt and findnn(q,D). Obviously secure! But expensive!The SVD (secure voronoi diagram) method:

create partitions based on the voronoi cells of D.

E(D) = {E(G1),E(G2), . . .}.send partition configurations (the boundaries) to clients, client onlyneeds to ask for the encryption of a given partition by partition id(which is figured out locally).

B1 B2

Gi = {p|p ⊂ Bi}

G2G1

p1

p2

p3

p4p5

p8

p6

p7p10

p9p12

p11

p13

p14

p16

p15

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 61: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

So, Hopeless? NO!

It only says it is hard to output E (nn(q,D))! What if we relax thisrestriction and allow something “less precise”?Extreme case: just return E (D) and ask client to decrypt and findnn(q,D). Obviously secure! But expensive!The SVD (secure voronoi diagram) method:

create partitions based on the voronoi cells of D.E(D) = {E(G1),E(G2), . . .}.

send partition configurations (the boundaries) to clients, client onlyneeds to ask for the encryption of a given partition by partition id(which is figured out locally).

B1 B2

Gi = {p|p ⊂ Bi}

G2G1

p1

p2

p3

p4p5

p8

p6

p7p10

p9p12

p11

p13

p14

p16

p15

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 62: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

So, Hopeless? NO!

It only says it is hard to output E (nn(q,D))! What if we relax thisrestriction and allow something “less precise”?Extreme case: just return E (D) and ask client to decrypt and findnn(q,D). Obviously secure! But expensive!The SVD (secure voronoi diagram) method:

create partitions based on the voronoi cells of D.E(D) = {E(G1),E(G2), . . .}.send partition configurations (the boundaries) to clients, client onlyneeds to ask for the encryption of a given partition by partition id(which is figured out locally).

B1 B2

Gi = {p|p ⊂ Bi}

G2G1

p1

p2

p3

p4p5

p8

p6

p7p10

p9p12

p11

p13

p14

p16

p15

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 63: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

So, Hopeless? NO!

It only says it is hard to output E (nn(q,D))! What if we relax thisrestriction and allow something “less precise”?Extreme case: just return E (D) and ask client to decrypt and findnn(q,D). Obviously secure! But expensive!The SVD (secure voronoi diagram) method:

create partitions based on the voronoi cells of D.E(D) = {E(G1),E(G2), . . .}.send partition configurations (the boundaries) to clients, client onlyneeds to ask for the encryption of a given partition by partition id(which is figured out locally).

B1 B2

Gi = {p|p ⊂ Bi}

G2G1

p1

p2

p3

p4p5

p8

p6

p7p10

p9p12

p11

p13

p14

p16

p15Challenge:minmax(|Gi |)!

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 64: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Solution Overview

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 65: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Solution Overview

Secure Voronoi Diagram (SVD):

Preprocessing at the data owner

Query processing at the client

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 66: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Solution Overview

Secure Voronoi Diagram (SVD):

Preprocessing at the data owner

Query processing at the client

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 67: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Solution Overview

Preprocessing at the data owner:

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 68: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Solution Overview

Preprocessing at the data owner:

D

data owner

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 69: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Solution Overview

Preprocessing at the data owner:

D G(D)

data owner

partitioning

discussed later...

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 70: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Solution Overview

Preprocessing at the data owner:

D G(D)

data owner

partitioning

discussed later...

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 71: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Solution Overview

Preprocessing at the data owner:

random padding operation

D G(D)

data owner

partitioning

discussed later...

G′(D)

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 72: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Solution Overview

Preprocessing at the data owner:

random padding operation

D G(D)

data owner

cloud serverencryption

outsouring

partitioning

discussed later...

G′(D)

E(G′(D))

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 73: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Solution Overview

Preprocessing at the data owner:

random padding operation

D G(D)

data owner

cloud serverencryption

outsouring

partitioning

discussed later...

G′(D)

E(G′(D))

client

E−1,P(D)

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 74: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Solution Overview

Secure Voronoi Diagram (SVD):

Preprocessing at the data owner

Query processing at the client

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 75: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Solution Overview

Query processing at the client:

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 76: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Solution Overview

Query processing at the client:

client

P(D)

q

1

2 3

0

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 77: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Solution Overview

Query processing at the client:

client

P(D)

q

1

2 3

0

compute the ID(index)i = 1

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 78: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Solution Overview

Query processing at the client:

client

P(D)

q

1

2 3

0

E(i) = 100...010...

encryption

compute the ID(index)i = 1

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 79: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Solution Overview

Query processing at the client:

client

P(D)

q

1

2 3

0

E(i) = 100...010...

encryption

cloud server

query

compute the ID(index)i = 1

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 80: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Solution Overview

Query processing at the client:

client

P(D)

q

1

2 3

0

E(i) = 100...010...

encryption

cloud server

query

6

E(Gi)

compute the ID(index)i = 1

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 81: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Solution Overview

Query processing at the client:

client

P(D)

q

1

2 3

0

E(i) = 100...010...

encryption

cloud server

query

6

E(Gi)

Gi

decryption

compute the ID(index)i = 1

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 82: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Solution Overview

Query processing at the client:

client

P(D)

q

1

2 3

0

E(i) = 100...010...

encryption

cloud server

query

6

E(Gi)

Gifind the NN

decryption

compute the ID(index)i = 1

q

1

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 83: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

SVD Partitioning Principle

1 Bi is an axis-parallel d-dimensional box and Bi ∩Bj = ∅ for any i 6= j

2 Gi = {pj |vcj is contained or intersected by Bi}3 minimum |Gx | and minimum |Gx | − |Gi |, which means low storage

and communication overheads, as well as cheap encryption cost

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 84: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

SVD Partitioning Principle

p1

p2

p3

p5

p8

p6

p7

p10

p9p12

p11

p13

p14

p16

p15

p4

D

1 Bi is an axis-parallel d-dimensional box and Bi ∩Bj = ∅ for any i 6= j

2 Gi = {pj |vcj is contained or intersected by Bi}3 minimum |Gx | and minimum |Gx | − |Gi |, which means low storage

and communication overheads, as well as cheap encryption cost

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 85: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

SVD Partitioning Principle

p1

p2

p3

p5

p8

p6

p7

p10

p9p12

p11

p13

p14

p16

p15

p4

D

1 Bi is an axis-parallel d-dimensional box and Bi ∩Bj = ∅ for any i 6= j

2 Gi = {pj |vcj is contained or intersected by Bi}3 minimum |Gx | and minimum |Gx | − |Gi |, which means low storage

and communication overheads, as well as cheap encryption cost

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 86: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

SVD Partitioning Principle

p1

p2

p3

p5

p8

p6

p7

p10

p9p12

p11

p13

p14

p16

p15

B1 B2

G1 G2

p4

G(D)

1 Bi is an axis-parallel d-dimensional box and Bi ∩Bj = ∅ for any i 6= j

2 Gi = {pj |vcj is contained or intersected by Bi}3 minimum |Gx | and minimum |Gx | − |Gi |, which means low storage

and communication overheads, as well as cheap encryption cost

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 87: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

SVD Partitioning Principle

p1

p2

p3

p5

p8

p6

p7

p10

p9p12

p11

p13

p14

p16

p15

B1 B2

G1 G2

p4

G(D)

Gi : a subset of dataset D

Bi : the geometric boundary of Gi

1 Bi is an axis-parallel d-dimensional box and Bi ∩Bj = ∅ for any i 6= j

2 Gi = {pj |vcj is contained or intersected by Bi}3 minimum |Gx | and minimum |Gx | − |Gi |, which means low storage

and communication overheads, as well as cheap encryption cost

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 88: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

SVD Partitioning Principle

p1

p2

p3

p5

p8

p6

p7

p10

p9p12

p11

p13

p14

p16

p15

B1 B2

G1 G2

p4

G(D)

Gi : a subset of dataset D

Bi : the geometric boundary of Gi

1 Bi is an axis-parallel d-dimensional box and Bi ∩Bj = ∅ for any i 6= j

2 Gi = {pj |vcj is contained or intersected by Bi}3 minimum |Gx | and minimum |Gx | − |Gi |, which means low storage

and communication overheads, as well as cheap encryption cost

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 89: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

SVD Partitioning Principle

p1

p2

p3

p5

p8

p6

p7

p10

p9p12

p11

p13

p14

p16

p15

B1 B2

G1 G2

p4

G(D)

Gi : a subset of dataset D

Bi : the geometric boundary of Gi

1 Bi is an axis-parallel d-dimensional box and Bi ∩Bj = ∅ for any i 6= j

2 Gi = {pj |vcj is contained or intersected by Bi}

3 minimum |Gx | and minimum |Gx | − |Gi |, which means low storageand communication overheads, as well as cheap encryption cost

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 90: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

SVD Partitioning Principle

p1

p2

p3

p5

p8

p6

p7

p10

p9p12

p11

p13

p14

p16

p15

B1 B2

G1 G2

p4

G2 = {p5,p6,p7,p8,p10, p9, p11, p12, p13, p14, p15, p16}G1 = {p1, p2, p3, p4,p5,p6,p7,p8,p10}

G(D)

Gi : a subset of dataset D

Bi : the geometric boundary of Gi

1 Bi is an axis-parallel d-dimensional box and Bi ∩Bj = ∅ for any i 6= j

2 Gi = {pj |vcj is contained or intersected by Bi}

3 minimum |Gx | and minimum |Gx | − |Gi |, which means low storageand communication overheads, as well as cheap encryption cost

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 91: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

SVD Partitioning Principle

p1

p2

p3

p5

p8

p6

p7

p10

p9p12

p11

p13

p14

p16

p15

B1 B2

G1 G2

p4

G2 = {p5,p6,p7,p8,p10, p9, p11, p12, p13, p14, p15, p16}G1 = {p1, p2, p3, p4,p5,p6,p7,p8,p10}

G(D)

Gi : a subset of dataset D

Bi : the geometric boundary of Gi

|Gi|: size of Gi

1 Bi is an axis-parallel d-dimensional box and Bi ∩Bj = ∅ for any i 6= j

2 Gi = {pj |vcj is contained or intersected by Bi}

3 minimum |Gx | and minimum |Gx | − |Gi |, which means low storageand communication overheads, as well as cheap encryption cost

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 92: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

SVD Partitioning Principle

p1

p2

p3

p5

p8

p6

p7

p10

p9p12

p11

p13

p14

p16

p15

B1 B2

G1 G2

p4

G2 = {p5,p6,p7,p8,p10, p9, p11, p12, p13, p14, p15, p16}G1 = {p1, p2, p3, p4,p5,p6,p7,p8,p10}

G(D)

Gi : a subset of dataset D

Bi : the geometric boundary of Gi

|Gi|: size of Gi

|G1| = 9

|G2| = 12

1 Bi is an axis-parallel d-dimensional box and Bi ∩Bj = ∅ for any i 6= j

2 Gi = {pj |vcj is contained or intersected by Bi}

3 minimum |Gx | and minimum |Gx | − |Gi |, which means low storageand communication overheads, as well as cheap encryption cost

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 93: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

SVD Partitioning Principle

p1

p2

p3

p5

p8

p6

p7

p10

p9p12

p11

p13

p14

p16

p15

B1 B2

G1 G2

p4

G2 = {p5,p6,p7,p8,p10, p9, p11, p12, p13, p14, p15, p16}G1 = {p1, p2, p3, p4,p5,p6,p7,p8,p10}

G(D)

Gi : a subset of dataset D

Bi : the geometric boundary of Gi

|Gi|: size of Gi

|G1| = 9

|G2| = 12

Gx: largest-sized partition

1 Bi is an axis-parallel d-dimensional box and Bi ∩Bj = ∅ for any i 6= j

2 Gi = {pj |vcj is contained or intersected by Bi}

3 minimum |Gx | and minimum |Gx | − |Gi |, which means low storageand communication overheads, as well as cheap encryption cost

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 94: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

SVD Partitioning Principle

p1

p2

p3

p5

p8

p6

p7

p10

p9p12

p11

p13

p14

p16

p15

B1 B2

G1 G2

p4

G2 = {p5,p6,p7,p8,p10, p9, p11, p12, p13, p14, p15, p16}G1 = {p1, p2, p3, p4,p5,p6,p7,p8,p10}

G(D)

Gi : a subset of dataset D

Bi : the geometric boundary of Gi

|Gi|: size of Gi

|G1| = 9

|G2| = 12

Gx: largest-sized partition

1 Bi is an axis-parallel d-dimensional box and Bi ∩Bj = ∅ for any i 6= j

2 Gi = {pj |vcj is contained or intersected by Bi}

3 minimum |Gx | and minimum |Gx | − |Gi |, which means low storageand communication overheads, as well as cheap encryption cost

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 95: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

SVD Partitioning Principle

p1

p2

p3

p5

p8

p6

p7

p10

p9p12

p11

p13

p14

p16

p15

B1 B2

G1 G2

p4

G2 = {p5,p6,p7,p8,p10, p9, p11, p12, p13, p14, p15, p16}G1 = {p1, p2, p3, p4,p5,p6,p7,p8,p10}

G(D)

Gi : a subset of dataset D

Bi : the geometric boundary of Gi

|Gi|: size of Gi

|G1| = 9

|G2| = 12

Gx: largest-sized partition

1 Bi is an axis-parallel d-dimensional box and Bi ∩Bj = ∅ for any i 6= j

2 Gi = {pj |vcj is contained or intersected by Bi}3 minimum |Gx | and minimum |Gx | − |Gi |, which means low storage

and communication overheads, as well as cheap encryption cost

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 96: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

SVD Partitioning Principle

p1

p2

p3

p5

p8

p6

p7

p10

p9p12

p11

p13

p14

p16

p15

B1 B2

G1 G2

p5

p8

p6

p7

p10p10

p7

p6

p5

p8

p4

G2 = {p5,p6,p7,p8,p10, p9, p11, p12, p13, p14, p15, p16}G1 = {p1, p2, p3, p4,p5,p6,p7,p8,p10}

G(D)

Gi : a subset of dataset D

Bi : the geometric boundary of Gi

|Gi|: size of Gi

|G1| = 9

|G2| = 12

Gx: largest-sized partition

Duplicated points

1 Bi is an axis-parallel d-dimensional box and Bi ∩Bj = ∅ for any i 6= j

2 Gi = {pj |vcj is contained or intersected by Bi}3 minimum |Gx | and minimum |Gx | − |Gi |, which means low storage

and communication overheads, as well as cheap encryption cost

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 97: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

SVD Partitioning

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 98: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

SVD Partitioning

Square Grid (SG)

Minimum Space Grid (MinSG)

Minimum Maximum Partition(MinMax)

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 99: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

SVD Partitioning

Square Grid (SG)

Minimum Space Grid (MinSG)

Minimum Maximum Partition(MinMax)

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 100: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Square Grid (SG)

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 101: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Square Grid (SG)

D

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 102: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Square Grid (SG)

B2 = C1,2 B4 = C2,2

B1 = C1,1 B3 = C2,1

G(D)

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 103: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Square Grid (SG)

Merits:

simple

minimum storage cost at client

Demerits:

high storage and communication overheads, as well as expensiveencryption cost because of highly unbalanced partitions when thedata distribution is skewed

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 104: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Square Grid (SG)

Merits:

simple

minimum storage cost at client

Demerits:

high storage and communication overheads, as well as expensiveencryption cost because of highly unbalanced partitions when thedata distribution is skewed

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 105: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Square Grid (SG)

Merits:

simple

minimum storage cost at client

Demerits:

high storage and communication overheads, as well as expensiveencryption cost because of highly unbalanced partitions when thedata distribution is skewed

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 106: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

SVD Partitioning

Square Grid (SG)

Minimum Space Grid (MinSG)

Minimum Maximum Partition(MinMax)

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 107: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Space Grid (MinSG)

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 108: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Space Grid (MinSG)

G

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 109: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Space Grid (MinSG)

|G| = 26

G

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 110: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Space Grid (MinSG)

|G| = 26

G

A greedy algorithm: always split the maximum partition Gx intosmaller partitions

use a line going though the entire space and intersected with thevoronoi vertex in Bx

choose the ` that leads to the minimum maximum partition

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 111: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Space Grid (MinSG)

|G| = 26

G

A greedy algorithm: always split the maximum partition Gx intosmaller partitions

use a line going though the entire space and intersected with thevoronoi vertex in Bx

choose the ` that leads to the minimum maximum partition

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 112: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Space Grid (MinSG)

|G| = 26

G

A greedy algorithm: always split the maximum partition Gx intosmaller partitions

use a line going though the entire space and intersected with thevoronoi vertex in Bx

choose the ` that leads to the minimum maximum partition

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 113: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Space Grid (MinSG)

|G| = 26

G

A greedy algorithm: always split the maximum partition Gx intosmaller partitions

use a line going though the entire space and intersected with thevoronoi vertex in Bx

choose the ` that leads to the minimum maximum partition

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 114: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Space Grid (MinSG)

|G| = 26

G

A greedy algorithm: always split the maximum partition Gx intosmaller partitions

use a line going though the entire space and intersected with thevoronoi vertex in Bx

choose the ` that leads to the minimum maximum partition

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 115: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Space Grid (MinSG)

|G| = 26

G

A greedy algorithm: always split the maximum partition Gx intosmaller partitions

use a line going though the entire space and intersected with thevoronoi vertex in Bx

choose the ` that leads to the minimum maximum partition

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 116: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Space Grid (MinSG)

|G| = 26

G

A greedy algorithm: always split the maximum partition Gx intosmaller partitions

use a line going though the entire space and intersected with thevoronoi vertex in Bx

choose the ` that leads to the minimum maximum partition

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 117: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Space Grid (MinSG)

G

G2

G1

B2

B1

A greedy algorithm: always split the maximum partition Gx intosmaller partitions

use a line going though the entire space and intersected with thevoronoi vertex in Bx

choose the ` that leads to the minimum maximum partition

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 118: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Space Grid (MinSG)

|G1| = 16

|G2| = 15

G

G2

G1

B2

B1

A greedy algorithm: always split the maximum partition Gx intosmaller partitions

use a line going though the entire space and intersected with thevoronoi vertex in Bx

choose the ` that leads to the minimum maximum partition

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 119: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Space Grid (MinSG)

|G1| = 16

|G2| = 15

G

G2

G1

B2

B1

A greedy algorithm: always split the maximum partition Gx intosmaller partitions

use a line going though the entire space and intersected with thevoronoi vertex in Bx

choose the ` that leads to the minimum maximum partition

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 120: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Space Grid (MinSG)

|G1| = 16

|G2| = 15

G

G2

G1

B2

B1

A greedy algorithm: always split the maximum partition Gx intosmaller partitions

use a line going though the entire space and intersected with thevoronoi vertex in Bx

choose the ` that leads to the minimum maximum partition

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 121: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Space Grid (MinSG)

|G1| = 16

|G2| = 15

G

G2

G1

B2

B1

A greedy algorithm: always split the maximum partition Gx intosmaller partitions

use a line going though the entire space and intersected with thevoronoi vertex in Bx

choose the ` that leads to the minimum maximum partition

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 122: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Space Grid (MinSG)

|G1| = 16

|G2| = 15

G

G2

G1

B2

B1

A greedy algorithm: always split the maximum partition Gx intosmaller partitions

use a line going though the entire space and intersected with thevoronoi vertex in Bx

choose the ` that leads to the minimum maximum partition

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 123: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Space Grid (MinSG)

|G1| = 16

|G2| = 15

G

G2

G1

B2

B1

A greedy algorithm: always split the maximum partition Gx intosmaller partitions

use a line going though the entire space and intersected with thevoronoi vertex in Bx

choose the ` that leads to the minimum maximum partition

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 124: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Space Grid (MinSG)

|G1| = 16

|G2| = 15

G

G2

G1

B2

B1

A greedy algorithm: always split the maximum partition Gx intosmaller partitions

use a line going though the entire space and intersected with thevoronoi vertex in Bx

choose the ` that leads to the minimum maximum partition

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 125: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Space Grid (MinSG)

|G1| = 16

|G2| = 15

G

G2

G1

B2

B1

A greedy algorithm: always split the maximum partition Gx intosmaller partitions

use a line going though the entire space and intersected with thevoronoi vertex in Bx

choose the ` that leads to the minimum maximum partition

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 126: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Space Grid (MinSG)

G

G11 G12

G21 G22

B11 B12

B21 B22

A greedy algorithm: always split the maximum partition Gx intosmaller partitions

use a line going though the entire space and intersected with thevoronoi vertex in Bx

choose the ` that leads to the minimum maximum partition

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 127: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Space Grid (MinSG)

G

G11 G12

G21 G22

|G11| = 11

|G12| = 10

|G21| = 14

|G22| = 6B11 B12

B21 B22

A greedy algorithm: always split the maximum partition Gx intosmaller partitions

use a line going though the entire space and intersected with thevoronoi vertex in Bx

choose the ` that leads to the minimum maximum partition

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 128: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Space Grid (MinSG)

Merits:

relatively balanced partitions: low storage and communicationoverheads, as well as cheap encryption cost

Demerits:

complicated partitioning process

not most balanced: small-sized partitions introduced by someunnecessary splitting

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 129: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Space Grid (MinSG)

Merits:

relatively balanced partitions: low storage and communicationoverheads, as well as cheap encryption cost

Demerits:

complicated partitioning process

not most balanced: small-sized partitions introduced by someunnecessary splitting

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 130: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Space Grid (MinSG)

Merits:

relatively balanced partitions: low storage and communicationoverheads, as well as cheap encryption cost

Demerits:

complicated partitioning process

not most balanced: small-sized partitions introduced by someunnecessary splitting

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 131: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Space Grid (MinSG)

G

G11 G12

G21 G22

|G11| = 11

|G12| = 10

|G21| = 14

|G22| = 6B11 B12

B21 B22

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 132: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Space Grid (MinSG)

G

G11 G12

G21 G22

|G11| = 11

|G12| = 10

|G21| = 14

|G22| = 6B11 B12

B21 B22

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 133: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Space Grid (MinSG)

G

G11 G12

G21 G22`

B11 B12

B21 B22

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 134: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Space Grid (MinSG)

G

`

G11

|G11| = 2!!

p1

p2

We need a method that produce more balanced partitions!!

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 135: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

SVD Partitioning

Square Grid (SG)

Minimum Space Grid (MinSG)

Minimum Maximum Partition(MinMax)

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 136: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Maximum Partition (MinMax)

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 137: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Maximum Partition (MinMax)

G

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 138: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Maximum Partition (MinMax)

|G| = 26

G

similar to MinSG in most part

use segments going though the space bounded by Bx instead oflines going though the entire space to split partitions

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 139: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Maximum Partition (MinMax)

|G| = 26

G

similar to MinSG in most part

use segments going though the space bounded by Bx instead oflines going though the entire space to split partitions

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 140: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Maximum Partition (MinMax)

|G| = 26

G

similar to MinSG in most part

use segments going though the space bounded by Bx instead oflines going though the entire space to split partitions

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 141: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Maximum Partition (MinMax)

|G| = 26

G

similar to MinSG in most part

use segments going though the space bounded by Bx instead oflines going though the entire space to split partitions

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 142: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Maximum Partition (MinMax)

|G| = 26

G

similar to MinSG in most part

use segments going though the space bounded by Bx instead oflines going though the entire space to split partitions

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 143: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Maximum Partition (MinMax)

|G| = 26

G

similar to MinSG in most part

use segments going though the space bounded by Bx instead oflines going though the entire space to split partitions

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 144: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Maximum Partition (MinMax)

|G| = 26

G

similar to MinSG in most part

use segments going though the space bounded by Bx instead oflines going though the entire space to split partitions

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 145: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Maximum Partition (MinMax)

|G| = 26

G

similar to MinSG in most part

use segments going though the space bounded by Bx instead oflines going though the entire space to split partitions

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 146: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Maximum Partition (MinMax)

G

G2

G1

B1

B2

similar to MinSG in most part

use segments going though the space bounded by Bx instead oflines going though the entire space to split partitions

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 147: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Maximum Partition (MinMax)

|G1| = 16

|G2| = 15

G

G2

G1

B1

B2

similar to MinSG in most part

use segments going though the space bounded by Bx instead oflines going though the entire space to split partitions

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 148: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Maximum Partition (MinMax)

|G1| = 16

|G2| = 15

G

G2

G1

B1

B2

similar to MinSG in most part

use segments going though the space bounded by Bx instead oflines going though the entire space to split partitions

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 149: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Maximum Partition (MinMax)

|G1| = 16

|G2| = 15

G

G2

G1

B1

B2

similar to MinSG in most part

use segments going though the space bounded by Bx instead oflines going though the entire space to split partitions

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 150: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Maximum Partition (MinMax)

|G1| = 16

|G2| = 15

G

G2

G1

B1

B2

similar to MinSG in most part

use segments going though the space bounded by Bx instead oflines going though the entire space to split partitions

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 151: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Maximum Partition (MinMax)

|G1| = 16

|G2| = 15

G

G2

G1

B1

B2

similar to MinSG in most part

use segments going though the space bounded by Bx instead oflines going though the entire space to split partitions

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 152: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Maximum Partition (MinMax)

|G1| = 16

|G2| = 15

G

G2

G1

B1

B2

similar to MinSG in most part

use segments going though the space bounded by Bx instead oflines going though the entire space to split partitions

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 153: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Maximum Partition (MinMax)

|G1| = 16

|G2| = 15

G

G2

G1

B1

B2

similar to MinSG in most part

use segments going though the space bounded by Bx instead oflines going though the entire space to split partitions

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 154: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Maximum Partition (MinMax)

|G1| = 16

|G2| = 15

G

G2

G1

B1

B2

similar to MinSG in most part

use segments going though the space bounded by Bx instead oflines going though the entire space to split partitions

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 155: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Maximum Partition (MinMax)

G

G2

G1 G3

B1

B2

B3

similar to MinSG in most part

use segments going though the space bounded by Bx instead oflines going though the entire space to split partitions

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 156: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Maximum Partition (MinMax)

G

G2

G1 G3

|G1| = 11

|G3| = 10

|G2| = 15B1

B2

B3

similar to MinSG in most part

use segments going though the space bounded by Bx instead oflines going though the entire space to split partitions

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 157: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Maximum Partition (MinMax)

G

G2

G1 G3

|G1| = 11

|G3| = 10

|G2| = 15B1

B2

B3

similar to MinSG in most part

use segments going though the space bounded by Bx instead oflines going though the entire space to split partitions

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 158: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Maximum Partition (MinMax)

G

G2

G1 G3

G4

B1

B2

B3

B4

similar to MinSG in most part

use segments going though the space bounded by Bx instead oflines going though the entire space to split partitions

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 159: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Maximum Partition (MinMax)

G

G2

G1 G3

G4

|G1| = 11

|G3| = 10

|G2| = 10

|G4| = 11B1

B2

B3

B4

similar to MinSG in most part

use segments going though the space bounded by Bx instead oflines going though the entire space to split partitions

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 160: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Maximum Partition (MinMax)

Merits:

most balanced partitions: low storage and communication overheads,as well as cheap encryption cost

Demerits:

high storage cost at client

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 161: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Maximum Partition (MinMax)

Merits:

most balanced partitions: low storage and communication overheads,as well as cheap encryption cost

Demerits:

high storage cost at client

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 162: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Minimum Maximum Partition (MinMax)

Merits:

most balanced partitions: low storage and communication overheads,as well as cheap encryption cost

Demerits:

high storage cost at client

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 163: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Comparison between MinSG and MinMax

G

G11 G12

G21 G22

|G11| = 11

|G12| = 10

|G21| = 14

|G22| = 6B11 B12

B21 B22

G

G2

G1 G3

G4

|G1| = 11

|G3| = 10

|G2| = 10

|G4| = 11B1

B2

B3

B4

MinSG MinMax

Clearly, MinMax achieves more balanced partitions than MinSG,which means lower storage and communication overheads, as well ascheaper encryption cost.

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 164: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Comparison between MinSG and MinMax

G

G11 G12

G21 G22

|G11| = 11

|G12| = 10

|G21| = 14

|G22| = 6B11 B12

B21 B22

G

G2

G1 G3

G4

|G1| = 11

|G3| = 10

|G2| = 10

|G4| = 11B1

B2

B3

B4

MinSG MinMax

Clearly, MinMax achieves more balanced partitions than MinSG,which means lower storage and communication overheads, as well ascheaper encryption cost.

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 165: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Comparison between MinSG and MinMax

G

G11 G12

G21 G22

|G11| = 11

|G12| = 10

|G21| = 14

|G22| = 6B11 B12

B21 B22

G

G2

G1 G3

G4

|G1| = 11

|G3| = 10

|G2| = 10

|G4| = 11B1

B2

B3

B4

MinSG MinMax

Clearly, MinMax achieves more balanced partitions than MinSG,which means lower storage and communication overheads, as well ascheaper encryption cost.

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 166: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Experiment

We examine the three methods: SG, MinSG and MinMax.

For each method, we test its running time of both partition phraseand encryption phrase, partition size, communication cost of boththe preprocessing step and query step and query time.

C++, Linux, Intel Xeon 3.07GHz CPU and 8GB memory

Data sets

Points of interest in California(CA) and Texas(TX) from theOpenStreetMap project.In each dataset, we randomly select 2 million points to create thelargest dataset Dmax and form smaller datasets based on Dmax.

Default settings.

Symbol Definition Default Value|D| size of the dataset 106

k number of partitions 625DT dataset type CA

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 167: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Experiment

We examine the three methods: SG, MinSG and MinMax.

For each method, we test its running time of both partition phraseand encryption phrase, partition size, communication cost of boththe preprocessing step and query step and query time.

C++, Linux, Intel Xeon 3.07GHz CPU and 8GB memory

Data sets

Points of interest in California(CA) and Texas(TX) from theOpenStreetMap project.In each dataset, we randomly select 2 million points to create thelargest dataset Dmax and form smaller datasets based on Dmax.

Default settings.

Symbol Definition Default Value|D| size of the dataset 106

k number of partitions 625DT dataset type CA

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 168: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Experiment

We examine the three methods: SG, MinSG and MinMax.

For each method, we test its running time of both partition phraseand encryption phrase, partition size, communication cost of boththe preprocessing step and query step and query time.

C++, Linux, Intel Xeon 3.07GHz CPU and 8GB memory

Data sets

Points of interest in California(CA) and Texas(TX) from theOpenStreetMap project.In each dataset, we randomly select 2 million points to create thelargest dataset Dmax and form smaller datasets based on Dmax.

Default settings.

Symbol Definition Default Value|D| size of the dataset 106

k number of partitions 625DT dataset type CA

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 169: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Experiment

We examine the three methods: SG, MinSG and MinMax.

For each method, we test its running time of both partition phraseand encryption phrase, partition size, communication cost of boththe preprocessing step and query step and query time.

C++, Linux, Intel Xeon 3.07GHz CPU and 8GB memory

Data sets

Points of interest in California(CA) and Texas(TX) from theOpenStreetMap project.In each dataset, we randomly select 2 million points to create thelargest dataset Dmax and form smaller datasets based on Dmax.

Default settings.

Symbol Definition Default Value|D| size of the dataset 106

k number of partitions 625DT dataset type CA

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 170: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Experiment

We examine the three methods: SG, MinSG and MinMax.

For each method, we test its running time of both partition phraseand encryption phrase, partition size, communication cost of boththe preprocessing step and query step and query time.

C++, Linux, Intel Xeon 3.07GHz CPU and 8GB memory

Data sets

Points of interest in California(CA) and Texas(TX) from theOpenStreetMap project.In each dataset, we randomly select 2 million points to create thelargest dataset Dmax and form smaller datasets based on Dmax.

Default settings.

Symbol Definition Default Value|D| size of the dataset 106

k number of partitions 625DT dataset type CA

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 171: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Experiment

We examine the three methods: SG, MinSG and MinMax.

For each method, we test its running time of both partition phraseand encryption phrase, partition size, communication cost of boththe preprocessing step and query step and query time.

C++, Linux, Intel Xeon 3.07GHz CPU and 8GB memory

Data sets

Points of interest in California(CA) and Texas(TX) from theOpenStreetMap project.In each dataset, we randomly select 2 million points to create thelargest dataset Dmax and form smaller datasets based on Dmax.

Default settings.

Symbol Definition Default Value|D| size of the dataset 106

k number of partitions 625DT dataset type CA

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 172: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Attack on Existing SNN Methods

Vary |D|: Wai Kit Wong, David Cheung, Ben Kao, Nikos Mamoulis:

Secure kNN computation on encrypted databases. SIGMOD 2009

0 0.4 0.8 1.2 1.6 20

400

800

1200

1600

|D|=N: x106

time

to a

ttack

(sec

s)

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 173: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Attack on Existing SNN Methods

Vary |D|: Haibo Hu, Jianliang Xu, Chushi Ren, Byron Choi: Processing

private queries over untrusted data cloud through privacy homomorphism. ICDE

2011

0 0.4 0.8 1.2 1.6 20

5

10

15

20

|D|=N: x106

time

to a

ttack

(sec

s)

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 174: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Partition size in different methods

Vary k

0 300 600 900 120010

0

102

104

106

108

k

avg

pa

rtitio

n s

ize

(b

yte

s)

SG MinSG MinMax

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 175: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Partition size in different methods

Vary |D|

0 0.4 0.8 1.2 1.6 210

0

102

104

106

108

|D|=N: x106

avg

pa

rtitio

n s

ize

(b

yte

s)

SG MinSG MinMax

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 176: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Query communication cost

Vary k

0 300 600 900 120010

4

105

106

107

108

k

qu

ery

co

mm

un

ica

tio

n (

byte

s)

SG MinSG MinMax

Send−D

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 177: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Query communication cost

Vary |D|

0 0.4 0.8 1.2 1.6 210

4

105

106

107

108

|D|=N: x106

query

com

munic

ation (b

yte

s)

SG MinSG MinMax

Send−D

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 178: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Total running time of the preprocessing step

Vary k

0 300 600 900 120010

0

101

102

103

k

tota

l ru

nn

ing

tim

e (

se

cs)

SG MinSG MinMax

Send−D

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 179: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Total running time of the preprocessing step

Vary |D|

0 0.4 0.8 1.2 1.6 210

0

101

102

103

|D|=N: x106

tota

l ru

nn

ing

tim

e (

se

cs)

SG MinSG MinMax

Send−D

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 180: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Query time for different methods

Vary k

0 300 600 900 120010

−3

10−2

10−1

100

101

k

qu

ery

tim

e (

se

cs)

SG MinSG MinMax

Send−D

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 181: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Query time for different methods

Vary |D|

0 0.4 0.8 1.2 1.6 210

−3

10−2

10−1

100

101

|D|=N: x106

qu

ery

tim

e (

se

cs)

SG MinSG MinMax

Send−D

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 182: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Running time of the partition phase

Vary k

0 300 600 900 12000

15

30

45

60

k

pa

rtitio

n t

ime

(se

cs)

SG MinSG MinMax

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 183: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Running time of the partition phase

Vary |D|

0 0.4 0.8 1.2 1.6 20

20

40

60

80

100

|D|=N: x106

pa

rtitio

n t

ime

(se

cs)

SG MinSG MinMax

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 184: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Total size of E (D)

Vary k

0 300 600 900 120010

6

108

1010

1012

k

siz

e o

f a

ll e

ncry

ptio

ns (

byte

s)

SG MinSG MinMax

Send−D |D|

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 185: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Total size of E (D)

Vary |D|

0 0.4 0.8 1.2 1.6 210

6

108

1010

1012

|D|=N: x106

siz

e o

f all

encry

ptions (

byte

s)

SG MinSG MinMax

Send−D |D|

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 186: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Open Problems

1 Other similarity metrics?

2 High dimensions (beyond 2)?

3 Secure k nearest neighbors?

4 Updates?

5 Secure data analytics based on similarity search: clustering,content-based search, etc.

6 Variants of similarity search: reverse nearest neighbors, skylines, etc.

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 187: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Open Problems

1 Other similarity metrics?

2 High dimensions (beyond 2)?

3 Secure k nearest neighbors?

4 Updates?

5 Secure data analytics based on similarity search: clustering,content-based search, etc.

6 Variants of similarity search: reverse nearest neighbors, skylines, etc.

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 188: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Open Problems

1 Other similarity metrics?

2 High dimensions (beyond 2)?

3 Secure k nearest neighbors?

4 Updates?

5 Secure data analytics based on similarity search: clustering,content-based search, etc.

6 Variants of similarity search: reverse nearest neighbors, skylines, etc.

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 189: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Open Problems

1 Other similarity metrics?

2 High dimensions (beyond 2)?

3 Secure k nearest neighbors?

4 Updates?

5 Secure data analytics based on similarity search: clustering,content-based search, etc.

6 Variants of similarity search: reverse nearest neighbors, skylines, etc.

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 190: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Open Problems

1 Other similarity metrics?

2 High dimensions (beyond 2)?

3 Secure k nearest neighbors?

4 Updates?

5 Secure data analytics based on similarity search: clustering,content-based search, etc.

6 Variants of similarity search: reverse nearest neighbors, skylines, etc.

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 191: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Open Problems

1 Other similarity metrics?

2 High dimensions (beyond 2)?

3 Secure k nearest neighbors?

4 Updates?

5 Secure data analytics based on similarity search: clustering,content-based search, etc.

6 Variants of similarity search: reverse nearest neighbors, skylines, etc.

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 192: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Conclusion

Design a new partition-based secure voronoi diagram (SVD) method.

Implement the SVD with three partitioning methods.

Future work

extending our investigation to higher dimensions, k nearest neighbors

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 193: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Conclusion

Design a new partition-based secure voronoi diagram (SVD) method.

Implement the SVD with three partitioning methods.

Future work

extending our investigation to higher dimensions, k nearest neighbors

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 194: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

Conclusion

Design a new partition-based secure voronoi diagram (SVD) method.

Implement the SVD with three partitioning methods.

Future work

extending our investigation to higher dimensions, k nearest neighbors

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited

Page 195: Secure Nearest Neighbor Revisitedlifeifei/papers/snnslides.pdfBalakrishna R. Iyer, Chen Li, Sharad Mehrotra: Executing SQL over encrypted data in the database-service-provider model

The end

Thank You

Q and A

Bin Yao, Feifei Li, Xiaokui Xiao Secure Nearest Neighbor Revisited