Abstract
Supporting efficient and secure skyline query services on outsourced data remains an ongoing challenge, given the fact that existing solutions either incur significant overhead due to the underlying algorithm traversing the entire dataset or raise privacy issues when specific data structures are introduced. Motivated by addressing these limitations, this work proposes the Speedy and Privacy-Preserving Skyline Query scheme (SPSQ) to support efficient skyline queries that preserve the privacy requirements of datasets, skylines, queries, and indirect privacy with low online computational costs. SPSQ is an optimized distributed skyline diagram constructed by a novel privacy-preserving set intersection with the deduplication algorithm. Moreover, it converts the skyline queries into a lightweight polynomial-based private information retrieval for diagrams to reduce user-perceived latency. The quadrant skyline is extracted directly while the retrieval scale of the dynamic skyline is rapidly reduced by around 100\(\times \). We also carefully analyze its security and conduct experimental evaluations on different datasets. The results show that our SPSQ is more efficient than current works, and it is at least an order of magnitude faster in computational complexity than the state-of-the-art with the same security level.
This work was supported in part by the National Natural Science Foundation of China (Grant No. 62102430, No. 62122092, No. 62032005, No. 62072466), Science Research Plan Program by NUDT (Grant No. ZK22-50), and Education Ministry-China Mobile Research Funding under Grant No. MCM20170404.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Börzsönyi, S., Kossmann, D., Stocker, K.: The skyline operator. In: 17th IEEE International Conference on Data Engineering, ICDE, pp. 421–430. IEEE Computer Society (2001)
Canetti, R., Lindell, Y., Ostrovsky, R., Sahai, A.: Universally composable two-party and multi-party secure computation. In: Proceedings on 34th Annual ACM Symposium on Theory of Computing, 19–21 May 2002, Montréal, Québec, Canada, pp. 494–503. ACM (2002)
Chen, H., Chillotti, I., Dong, Y., Poburinnaya, O., Razenshteyn, I.P., Riazi, M.S.: SANNS: scaling up secure approximate k-nearest neighbors search. In: 29th USENIX Security Symposium, USENIX Security 2020, 12–14 August 2020, pp. 2111–2128. USENIX Association (2020)
Chen, J., Liu, L., Chen, R., Peng, W., Huang, X.: Secrec: a privacy-preserving method for the context-aware recommendation system. IEEE Trans. Dependable Secur. Comput. 19(5), 3168–3182 (2022)
Chen, W., Liu, M., Zhang, R., Zhang, Y., Liu, S.: Secure outsourced skyline query processing via untrusted cloud service providers. In: 35th Annual IEEE International Conference on Computer Communications, INFOCOM 2016, USA, April, 2016, pp. 1–9. IEEE (2016)
Choi, S., Ghinita, G., Lim, H., Bertino, E.: Secure KNN query processing in untrusted cloud environments. IEEE Trans. Knowl. Data Eng. 26(11), 2818–2831 (2014)
Ding, X., Wang, Z., Zhou, P., Choo, K.R., Jin, H.: Efficient and privacy-preserving multi-party skyline queries over encrypted data. IEEE Trans. Inf. Forensics Secur. 16, 4589–4604 (2021)
Doerner, J., Shelat, A.: Scaling ORAM for secure computation. In: Proceedings of the 2017 ACM SIGSAC Conference on Computer and Communications Security, CCS 2017, Dallas, TX, USA, 2017, pp. 523–535. ACM (2017)
Dua, D., Graff, C.: UCI machine learning repository (2017). http://archive.ics.uci.edu/ml
Hose, K., Vlachou, A.: A survey of skyline processing in highly distributed environments. VLDB J. 21(3), 359–384 (2012)
Kermanshahi, S.K., et al.: Multi-client cloud-based symmetric searchable encryption. IEEE Trans. Dependable Secur. Comput. 18(5), 2419–2437 (2021)
Kerschbaum, F., Blass, E., Mahdavi, R.A.: Faster secure comparisons with offline phase for efficient private set intersection. In: 30th Annual Network and Distributed System Security Symposium, NDSS 2023, San Diego, California, USA, 27 February–3 March 2023. The Internet Society (2023)
Lindell, Y.: How to simulate it – a tutorial on the simulation proof technique. In: Lindell, Y. (ed.) Tutorials on the Foundations of Cryptography. ISC, pp. 277–346. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-57048-8_6
Liu, J., Yang, J., Xiong, L., Pei, J.: Secure and efficient skyline queries on encrypted data. IEEE Trans. Knowl. Data Eng. 31(7), 1397–1411 (2019)
Liu, J., et al.: Skyline diagram: efficient space partitioning for skyline queries. IEEE Trans. Knowl. Data Eng. 33(1), 271–286 (2021)
Liu, L., et al.: Towards strong privacy protection for association rule mining and query in the cloud. IEEE Trans. Cloud Comput. 11(3), 3211–3225 (2023)
Liu, X., Yang, D., Ye, M., Lee, W.: U-skyline: a new skyline query for uncertain databases. IEEE Trans. Knowl. Data Eng. 25(4), 945–960 (2013)
Mohassel, P., Rindal, P.: Aby\( ^{\text{3}}\): a mixed protocol framework for machine learning. In: Proceedings of the 2018 ACM SIGSAC Conference on Computer and Communications Security, CCS 2018, Toronto, ON, Canada, 15–19 October 2018, pp. 35–52. ACM (2018)
Paillier, P.: Public-key cryptosystems based on composite degree residuosity classes. In: Stern, J. (ed.) EUROCRYPT 1999. LNCS, vol. 1592, pp. 223–238. Springer, Heidelberg (1999). https://doi.org/10.1007/3-540-48910-X_16
Qaosar, M., Zaman, A., Siddique, M.A., Annisa, Morimoto, Y.: Privacy-preserving secure computation of skyline query in distributed multi-party databases. Information 10(3), 119 (2019)
Rathee, D., et al.: Cryptflow2: practical 2-party secure inference. In: CCS 2020: 2020 ACM SIGSAC Conference on Computer and Communications Security, Virtual Event, USA, pp. 325–342. ACM (2020)
Wagh, S., Tople, S., Benhamouda, F., Kushilevitz, E., Mittal, P., Rabin, T.: Falcon: honest-majority maliciously secure framework for private deep learning. Proc. Priv. Enhancing Technol. 2021(1), 188–208 (2021)
Wang, J., Du, M., Chow, S.S.M.: Stargazing in the dark: secure skyline queries with SGX. In: Nah, Y., Cui, B., Lee, S.-W., Yu, J.X., Moon, Y.-S., Whang, S.E. (eds.) DASFAA 2020. LNCS, vol. 12114, pp. 322–338. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-59419-0_20
Wang, W., et al.: SCALE: an efficient framework for secure dynamic skyline query processing in the cloud. In: Nah, Y., Cui, B., Lee, S.-W., Yu, J.X., Moon, Y.-S., Whang, S.E. (eds.) DASFAA 2020. LNCS, vol. 12114, pp. 288–305. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-59419-0_18
Wang, Z., Ding, X., Jin, H., Zhou, P.: Efficient secure and verifiable location-based skyline queries over encrypted data. Proc. VLDB Endow. 15(9), 1822–1834 (2022)
Zeighami, S., Ghinita, G., Shahabi, C.: Secure dynamic skyline queries using result materialization. In: 37th IEEE International Conference on Data Engineering, ICDE, pp. 157–168. IEEE (2021)
Zhang, S., Ray, S., Lu, R., Zheng, Y., Guan, Y., Shao, J.: Towards efficient and privacy-preserving interval skyline queries over time series data. IEEE Trans. Dependable Secur. Comput. 20(2), 1348–1363 (2023)
Zhang, S., Ray, S., Lu, R., Zheng, Y., Guan, Y., Shao, J.: Towards efficient and privacy-preserving user-defined skyline query over single cloud. IEEE Trans. Dependable Secur. Comput. 20(2), 1319–1334 (2023)
Zheng, Y., Lu, R., Li, B., Shao, J., Yang, H., Choo, K.R.: Efficient privacy-preserving data merging and skyline computation over multi-source encrypted data. Inf. Sci. 498, 91–105 (2019)
Zheng, Y., Wang, W., Wang, S., Jia, X., Huang, H., Wang, C.: Secskyline: fast privacy-preserving skyline queries over encrypted cloud databases. IEEE Trans. Knowl. Data Eng. 35(9), 8955–8967 (2023)
Author information
Authors and Affiliations
Corresponding authors
Editor information
Editors and Affiliations
Appendices
Appendix
Appendix A Security Analysis with Simulation
We construct a polynomial-time simulator \(\mathcal {S}\) with the ideal process for \(\mathcal {F}_{\textbf {SDG}}\) such that for any probability polynomial time (PPT) adversary \(\mathcal {A}\), no environment \(\mathcal {Z}\) can tell with non-negligible probability whether it is interacting with \(\mathcal {A}\) and the real protocol or with \(\mathcal {S}\) in the ideal process for \(\mathcal {F}_{\textbf {SDG}}\). We describe the real view \({\textbf {Real}}_{\mathcal {A}}\) and the simulated view \({\textbf {Ideal}}_{\mathcal {A},\mathcal {S}}\) as follows.
In the \({\textbf {Real}}_{\mathcal {A}}\), given the inputs \(\texttt{P}_{j_1+1,j_2+1}\) and \(\texttt{I}_{j_1+1,j_2+1}\), CS and ES calculate the index vector \(\texttt{IV}_{j_1,j_2}\) with three generated skylines \(\texttt{S}_{j_1+1,j_2}\), \(\texttt{S}_{j_1,j_2+1}\) and \(\texttt{S}_{j_1+1,j_2+1}\) by \({\textbf {SSE}}\) and \({\textbf {SSC}}\), and exchanges the obfuscated skyline shares \(\texttt{S}_T^{\prime \prime \prime }\) with some pseudorandom numbers \(\pi \) and r by \({\textbf {SSM}}\) and \({\textbf {SSH}}\). CS and ES select the final set intersection and compute the skyline \(\texttt{S}_{j_1,j_2}\) with inputs \(\texttt{P}_{j_1+1,j_2+1}\), \(\texttt{I}_{j_1+1,j_2+1}\) and \({\textbf {0}}\) by \({\textbf {SSH}}\). Finally, they hold the shared skyline \(\left\langle \texttt{S}_{j_1,j_2}\right\rangle \).
In the \({\textbf {Ideal}}_{\mathcal {A},\mathcal {S}}\), recall that \(\mathcal {S}\) interacts with the ideal functionality \(\mathcal {F}_{\textbf {SDG}}\) and with the environment \(\mathcal {Z}\). Simulator \(\mathcal {S}\) starts by invoking a copy of \(\mathcal {A}\) and running a simulated interaction of \(\mathcal {A}\) with \(\mathcal {Z}\) and parties running the protocol [3].
-
1.
Simulating the communication with \(\mathcal {Z}\): Every input value that \(\mathcal {S}\) receives from \(\mathcal {Z}\) is written on \(\mathcal {A}\)’s input tape (as if coming from \(\mathcal {A}\)’s environment). Likewise, each output written by \(\mathcal {A}\) on its output tape is copied to \(\mathcal {S}\)’s output tape (to be read by \(\mathcal {S}\)’s environment \(\mathcal {Z}\)).
-
2.
Simulating the case where CS only is corrupted: \(\mathcal {S}\) begins by activating \(\mathcal {A}\) and internally sending it the message that \(\mathcal {A}\) (controlling CS) expects to receive from ES in a real execution. Simulator \(\mathcal {S}\) externally sends CS’s input (i, j) and \((\left\langle \texttt{S}_{j_1+1,j_2}\right\rangle ^{\text {C}},\left\langle \texttt{S}_{j_1,j_2+1}\right\rangle ^{\text {C}},\left\langle \texttt{S}_{j_1+1,j_2+1}\right\rangle ^{\text {C}})\) to \(\mathcal {F}_{\textbf {SDG}}\) and receives back the output \((i,j,\xi _1,\xi _2)\). Then, \(\mathcal {S}\) simulates \(\left\langle \texttt{S}_1\right\rangle ^{\text {E}}\in _R\mathbb {Z}_N^{\xi _1},\left\langle \texttt{S}_2\right\rangle ^{\text {E}}\in _R\mathbb {Z}_N^{\xi _2}\) and simulates ES interacting with CS in the internal interactions to receive \(\left\langle \texttt{IV}\right\rangle ^{\text {E}}\). Next, when \(\mathcal {A}\) sends the message \(\left\langle \pi _{c}\right\rangle ^{\text {E}}\) from CS to ES, \(\mathcal {S}\) simulates \(\left\langle \pi _{e}\right\rangle \in _R\mathbb {Z}_N^{\xi \times \xi }\) and sends \(\left\langle \pi _{e}\right\rangle ^{\text {C}}\) to CS. \(\mathcal {S}\) simulates \(\left\langle r\right\rangle ^{\text {E}}\in _R\mathbb {Z}_N^{\xi }\) and simulates ES interacting with CS in the internal interactions to receive \(\left\langle \texttt{S}_T^{\prime \prime \prime }\right\rangle ^{\text {E}}\) for computing the final set intersection. Finally, \(\mathcal {S}\) simulates \(\left\langle \texttt{P}_{j_1+1,j_2+1}\right\rangle ^{\text {E}}\in _R\mathbb {Z}_N\) and \(\left\langle \texttt{I}_{j_1+1,j_2+1}\right\rangle ^{\text {E}}\in _R\mathbb {Z}_N\), and simulates ES interacting with CS to construct \(\left\langle {\textbf {0}}\right\rangle \) to output the final skyline \(\left\langle \texttt{S}_{j_1,j_2}\right\rangle \).
-
3.
Simulating the case where ES only is corrupted: \(\mathcal {S}\) begins by activating \(\mathcal {A}\) and internally sending it the message that \(\mathcal {A}\) (controlling ES) expects to receive from CS in a real execution. Simulator \(\mathcal {S}\) externally sends ES’s input (i, j) and \((\left\langle \texttt{S}_{j_1+1,j_2}\right\rangle ^{\text {E}},\left\langle \texttt{S}_{j_1,j_2+1}\right\rangle ^{\text {E}},\left\langle \texttt{S}_{j_1+1,j_2+1}\right\rangle ^{\text {E}})\) to \(\mathcal {F}_{\textbf {SDG}}\) and receives back the output \((i,j,\xi _1,\xi _2)\). Then, \(\mathcal {S}\) simulates \(\left\langle \texttt{S}_1\right\rangle ^{\text {C}}\in _R\mathbb {Z}_N^{\xi _1},\left\langle \texttt{S}_2\right\rangle ^{\text {C}}\in _R\mathbb {Z}_N^{\xi _2}\) and simulates CS interacting with ES in the internal interactions to receive \(\left\langle \texttt{IV}\right\rangle ^{\text {C}}\). Next, when \(\mathcal {A}\) sends the message \(\left\langle \pi _{e}\right\rangle ^{\text {C}}\) from ES to CS, \(\mathcal {S}\) simulates \(\left\langle \pi _{c}\right\rangle \in _R\mathbb {Z}_N^{\xi \times \xi }\) and sends \(\left\langle \pi _{c}\right\rangle ^{\text {E}}\) to ES. \(\mathcal {S}\) simulates \(\left\langle r\right\rangle ^{\text {C}}\in _R\mathbb {Z}_N^{\xi }\) and simulates CS interacting with ES in the internal interactions to receive \(\left\langle \texttt{S}_T^{\prime \prime \prime }\right\rangle ^{\text {C}}\) for computing the final set intersection. Finally, \(\mathcal {S}\) simulates \(\left\langle \texttt{P}_{j_1+1,j_2+1}\right\rangle ^{\text {C}}\in _R\mathbb {Z}_N\) and \(\left\langle \texttt{I}_{j_1+1,j_2+1}\right\rangle ^{\text {C}}\in _R\mathbb {Z}_N\), and simulates CS interacting with ES to construct \(\left\langle {\textbf {0}}\right\rangle \) to output the final skyline \(\left\langle \texttt{S}_{j_1,j_2}\right\rangle \).
-
4.
Simulating the case that neither party is corrupted: In this case, \(\mathcal {S}\) receives a message \(\left\langle \texttt{S}_{j_1,j_2}\right\rangle \) signaling it that CS and ES concluded an ideal execution with \(\mathcal {F}_{\textbf {SDG}}\). \(\mathcal {S}\) then generates a simulated transcript of messages between the real parties. That is, \(\mathcal {S}\) obtains the length of inputs L. In each cell, \(\mathcal {S}\) simulates the input \(\texttt{P}_{j_1+1,j_2+1}^*\in _R\mathbb {Z}_N\) and \(\texttt{I}_{j_1+1,j_2+1}^*\in _R\mathbb {Z}_N\) of length 1, simulates the dummy points \({\textbf {0}}\) of length \(L-1\), and extracts the simulated history \(\texttt{S}_{j_1+1,j_2}^*\), \(\texttt{S}_{j_1,j_2+1}^*\) and \(\texttt{S}_{j_1+1,j_2+1}^*\) of corresponding length. After that, \(\mathcal {S}\) forms the simulated input \(\texttt{P}_{j_1+1,j_2+1}^*\) and \(\texttt{I}_{j_1+1,j_2+1}^*\), and runs \(\mathcal {F}_{\textbf {SDG}}\) to output the result \(\texttt{S}_{j_1,j_2}^*\) by the experiment.
The shared inputs and outputs are indistinguishable from uniformly chosen random numbers. Based on the simulator \(\mathcal {S}\), no PPT adversary can distinguish the output of \({\textbf {Ideal}}_{\mathcal {A},\mathcal {S}}\) from that of \({\textbf {Real}}_{\mathcal {A}}\). That is, \({\textbf {Ideal}}_{\mathcal {A}, \mathcal {S}, \mathcal {Z}} {\mathop {\approx }\limits ^{\textrm{c}}} {\textbf {Real}}_{\mathcal {A}, \mathcal {Z}}\).
In \(\mathcal {F}_{\textbf {SDG}}\), the adversary only knows the final size of each cell since adding some dummy points to the intermediate result, and then there is some leakage about the distribution of points in the dataset. However, the adversary cannot derive values from the data distribution because the skylines are invisible.
The adversary knows nothing in \(\mathcal {F}_{\textbf {SPE}}\) since we add dummy points to all the cells to make the size the same. Opening \(\texttt{m}\) does not make more information leakage occur in \(\eta \) due to the random coefficients. Therefore, The leakage of \(\mathcal {F}_{\textbf {SPE}}\) is only related to the degree t of the polynomial, but \(t=2\) ensures safety when the skylines in the cell are not identical and visible.
Appendix B Details for Skyline Diagram
Table 3 illustrates examples of averages, \(\bar{n}\) is at least two orders of magnitude smaller than n, thus effectively reducing the retrieval size. Concretely, when \(n=9000\), ours 22491 secure operations are (\(22\times \)) less than SecSkyline’s 495000 in CORR, (\(15\times \)) in INDE and (\(22\times \)) in ANTI. When \(n=9000\), (\(9.6\times \)) in CORR, (\(7.6\times \)) in INDE and (\(9.4\times \)) in ANTI, (\(5\times \)) and (\(10.7\times \)) in REAL, respectively.
Rights and permissions
Copyright information
© 2024 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
Cite this paper
Chen, Y. et al. (2024). Speedy Privacy-Preserving Skyline Queries on Outsourced Data. In: Garcia-Alfaro, J., Kozik, R., Choraś, M., Katsikas, S. (eds) Computer Security – ESORICS 2024. ESORICS 2024. Lecture Notes in Computer Science, vol 14983. Springer, Cham. https://doi.org/10.1007/978-3-031-70890-9_22
Download citation
DOI: https://doi.org/10.1007/978-3-031-70890-9_22
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-70889-3
Online ISBN: 978-3-031-70890-9
eBook Packages: Computer ScienceComputer Science (R0)