Skip to main content

Simple Storage-Saving Structure for Volume-Hiding Encrypted Multi-maps

(A Slot in Need is a Slot Indeed)

  • Conference paper
  • First Online:
Data and Applications Security and Privacy XXXV (DBSec 2021)

Part of the book series: Lecture Notes in Computer Science ((LNISA,volume 12840))

Included in the following conference series:

Abstract

Severe consequences in volume leakage (subject to the conditions required by specific attacks) stimulate a new research direction (Eurocrypt 2019) of volume-hiding structured encryption (\(\mathsf {STE}\)), particularly encrypted multi-maps (\(\mathsf {EMM}\)), in which all queries should share the same (as the largest) response size unless the scheme is lossy. Meanwhile, note that the responses are originated from the actual ciphertexts outsourced to the server. Conventional wisdom suggests that the ciphertexts (to be accessed by the server while answering a query) should also contain many dummy results to make a query look uniform with others. Supporting updates is also natural; however, attaching dummy results to a query also complicates the operation and leakage of updates, which excludes many advanced data structures, e.g., cuckoo hashing (CCS 2019). This paper proposes a space-efficient \(\mathsf {EMM}\) without storing any dummy ciphertext, which is volume hiding against passive adversaries (SP 2021) and compatible with dynamic extensions. Its crux structure is a hash ring, which is famous for load balancing but rarely appears in any \(\mathsf {STE}\). Efficiency-wise, our scheme beats the state-of-the-art (Eurocrypt 2019, CCS 2019), maintaining the necessary communication overhead and downsizing the server storage to be linear in the number of values in the \(\mathsf {EMM}\), while ruling out any data loss due to truncations or differential privacy.

Sherman S. M. Chow is supported by General Research Fund (Project Numbers: CUHK 14210217 and CUHK 14209918) from Research Grant Council.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    Even powerful cloud/server-side security enclaves would not hide the communication volume. A highlight of our scheme is its simplicity (fits in a single page) and its usage of lightweight tools (e.g., \(\mathsf {PRF}\)). No significant constant is hidden in the asymptotic evaluations. There are no (non-colluding) servers. These emphases might be random; however, we found the need to respond to a very negative review (not from DBSec) of an imagined paper, if not related subfields (volume-hiding \(\mathsf {SSE}\)/\(\mathsf {ORAM}\)/etc.).

  2. 2.

    A similar re-sampling is required in \(\mathsf {AVLH}\)  [14], while \(\mathsf {dprfMM}\) and \(\mathsf {dpMM}\)  [27] abort when the stash of cuckoo hashing overflows due to collisions and evictions.

  3. 3.

    This is our only assumption on the input multi-map. \(\mathsf {AVLH}\)  [14] made more constraints on the multi-map for security or efficiency concerns, including this one.

References

  1. Amjad, G., Kamara, S., Moataz, T.: Breach-resistant structured encryption. Proc. Privacy Enhanc. Technol. (PoPETs) 2019(1), 245–265 (2019)

    Article  Google Scholar 

  2. Blackstone, L., Kamara, S., Moataz, T.: Revisiting leakage abuse attacks. In: Network and Distributed System Security Symposium (NDSS) (2020)

    Google Scholar 

  3. Bost, R.: \(\sum \)o\(\varphi \)o\(\varsigma \): forward secure searchable encryption. In: ACM Conference on Computer and Communications Security (CCS), pp. 1143–1154 (2016)

    Google Scholar 

  4. Bost, R., Minaud, B., Ohrimenko, O.: Forward and backward private searchable encryption from constrained cryptographic primitives. In: ACM Conference on Computer and Communications Security (CCS), pp. 1465–1482 (2017)

    Google Scholar 

  5. Cash, D., Grubbs, P., Perry, J., Ristenpart, T.: Leakage-abuse attacks against searchable encryption. In: ACM Conference on Computer and Communications Security (CCS), pp. 668–679 (2015)

    Google Scholar 

  6. Chase, M., Kamara, S.: Structured encryption and controlled disclosure. In: Abe, M. (ed.) ASIACRYPT 2010. LNCS, vol. 6477, pp. 577–594. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-17373-8_33

    Chapter  Google Scholar 

  7. Demertzis, I., Papadopoulos, S., Papapetrou, O., Deligiannakis, A., Garofalakis, M.N.: Practical private range search revisited. In: ACM International Conference on Management of Data (SIGMOD), pp. 185–198 (2016)

    Google Scholar 

  8. Faber, S., Jarecki, S., Krawczyk, H., Nguyen, Q., Rosu, M., Steiner, M.: Rich queries on encrypted data: beyond exact matches. In: Pernul, G., Ryan, P.Y.A., Weippl, E. (eds.) ESORICS 2015, Part II. LNCS, vol. 9327, pp. 123–145. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-24177-7_7

    Chapter  Google Scholar 

  9. Goldreich, O., Ostrovsky, R.: Software protection and simulation on oblivious RAMs. J. ACM 43(3), 431–473 (1996)

    Article  MathSciNet  Google Scholar 

  10. Grubbs, P., Lacharité, M., Minaud, B., Paterson, K.G.: Pump up the volume: practical database reconstruction from volume leakage on range queries. In: ACM Conference on Computer and Communications Security (CCS), pp. 315–331 (2018)

    Google Scholar 

  11. Gui, Z., Paterson, K.G., Patranabis, S., Warinschi, B.: SWiSSSE: system-wide security for searchable symmetric encryption. IACR Cryptology ePrint Archive: 2020/1328 (2020)

    Google Scholar 

  12. Islam, M.S., Kuzu, M., Kantarcioglu, M.: Access pattern disclosure on searchable encryption: ramification, attack and mitigation. In: Network and Distributed System Security Symposium (NDSS) (2012)

    Google Scholar 

  13. Kamara, S., Moataz, T.: SQL on structurally-encrypted databases. In: Peyrin, T., Galbraith, S. (eds.) ASIACRYPT 2018, Part I. LNCS, vol. 11272, pp. 149–180. Springer, Cham (2018). https://doi.org/10.1007/978-3-030-03326-2_6

    Chapter  Google Scholar 

  14. Kamara, S., Moataz, T.: Computationally volume-hiding structured encryption. In: Ishai, Y., Rijmen, V. (eds.) EUROCRYPT 2019, Part II. LNCS, vol. 11477, pp. 183–213. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-17656-3_7

    Chapter  Google Scholar 

  15. Kamara, S., Moataz, T., Ohrimenko, O.: Structured encryption and leakage suppression. In: Shacham, H., Boldyreva, A. (eds.) CRYPTO 2018, Part I. LNCS, vol. 10991, pp. 339–370. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-96884-1_12

    Chapter  Google Scholar 

  16. Kamara, S., Papamanthou, C., Roeder, T.: Dynamic searchable symmetric encryption. In: ACM Conference on Computer and Communications Security (CCS), pp. 965–976 (2012)

    Google Scholar 

  17. Karger, D.R., Lehman, E., Leighton, F.T., Panigrahy, R., Levine, M.S., Lewin, D.: Consistent hashing and random trees: distributed caching protocols for relieving hot spots on the world wide web. In: Annual ACM Symposium on the Theory of Computing (STOC), pp. 654–663 (1997)

    Google Scholar 

  18. Kellaris, G., Kollios, G., Nissim, K., O’Neill, A.: Generic attacks on secure outsourced databases. In: ACM Conference on Computer and Communications Security (CCS), pp. 1329–1340 (2016)

    Google Scholar 

  19. Kiayias, A., Papadopoulos, S., Triandopoulos, N., Zacharias, T.: Delegatable pseudorandom functions and applications. In: ACM Conference on Computer and Communications Security (CCS), pp. 669–684 (2013)

    Google Scholar 

  20. Kirsch, A., Mitzenmacher, M., Wieder, U.: More robust hashing: Cuckoo hashing with a stash. SIAM J. Comput. 39(4), 1543–1561 (2009)

    Article  MathSciNet  Google Scholar 

  21. Kornaropoulos, E.M., Papamanthou, C., Tamassia, R.: Response-hiding encrypted ranges: revisiting security via parametrized leakage-abuse attacks. In: IEEE Symposium on Security and Privacy (S&P), pp. 750–767 (2021)

    Google Scholar 

  22. Lacharité, M., Minaud, B., Paterson, K.G.: Improved reconstruction attacks on encrypted data using range query leakage. In: IEEE Symposium on Security and Privacy (S&P), pp. 297–314 (2018)

    Google Scholar 

  23. Lai, R.W.F., Chow, S.S.M.: Structured encryption with non-interactive updates and parallel traversal. In: International Conference on Distributed Computing Systems (ICDCS), pp. 776–777 (2015)

    Google Scholar 

  24. Lai, R.W.F., Chow, S.S.M.: Parallel and dynamic structured encryption. In: Deng, R., Weng, J., Ren, K., Yegneswaran, V. (eds.) SecureComm 2016. LNICST, vol. 198, pp. 219–238. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-59608-2_12

    Chapter  Google Scholar 

  25. Lai, R.W.F., Chow, S.S.M.: Forward-secure searchable encryption on labeled bipartite graphs. In: Gollmann, D., Miyaji, A., Kikuchi, H. (eds.) ACNS 2017. LNCS, vol. 10355, pp. 478–497. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-61204-1_24

    Chapter  Google Scholar 

  26. Lamb, A., et al.: The vertica analytic database: C-store 7 years later. Proc. VLDB Endow. 5(12), 1790–1801 (2012)

    Article  Google Scholar 

  27. Patel, S., Persiano, G., Yeo, K., Yung, M.: Mitigating leakage in secure cloud-hosted data structures: volume-hiding for multi-maps via hashing. In: ACM Conference on Computer and Communications Security (CCS), pp. 79–93 (2019)

    Google Scholar 

  28. Salmani, K., Barker, K.: Don’t fool yourself with forward privacy, your queries still belong to us! In: ACM Conference on Data and Application Security and Privacy (CODASPY), pp. 131–142 (2021)

    Google Scholar 

  29. Stoica, I., Morris, R.T., Karger, D.R., Kaashoek, M.F., Balakrishnan, H.: Chord: a scalable peer-to-peer lookup service for internet applications. In: ACM Conference on Applications, Technologies, Architectures, and Protocols for Computer Communication (SIGCOMM), pp. 149–160 (2001)

    Google Scholar 

  30. Wang, J., Chow, S.S.M.: Forward and backward-secure range-searchable symmetric encryption. IACR Cryptology ePrint Archive: 2019/497 (2019)

    Google Scholar 

  31. 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, Part III. LNCS, vol. 12114, pp. 322–338. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-59419-0_20

    Chapter  Google Scholar 

  32. Willard, D.E.: Log-logarithmic worst-case range queries are possible in space theta(n). Inf. Process. Lett. (IPL) 17(2), 81–84 (1983)

    Article  Google Scholar 

  33. Zhang, Y., Katz, J., Papamanthou, C.: All your queries are belong to us: the power of file-injection attacks on searchable encryption. In: USENIX Security Symposium, pp. 707–720 (2016)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Sherman S. M. Chow .

Editor information

Editors and Affiliations

Appendices

A  Security Proof for Theorem 1

Proof

We construct the simulator \(\mathcal {S}\) as follows.

To simulate \(\mathsf {EMM}\) with \(\mathcal {L}_\mathsf {S}=\mathsf {dsize} \), the simulator \(\mathcal {S}\) initializes two arrays \(\mathsf {V}, \mathsf {U} \) of size \(n = \mathsf {dsize} (\mathsf {MM})\), and a dictionary \(\mathsf {DX} _S\). \(\mathcal {S}\) fills each slot of \(\mathsf {U} \) with a uniformly random value sampling from \(\{0,1\}^{s}\), and then sorts \(\mathsf {U} \). For \(i\in [n]\), \(\mathcal {S}\) randomly selects a uniformly random integer t as \(\mathsf {V} [i-1]\) from the interval and sets \(\mathsf {DX} _S[\mathsf {V} [i-1]]\) as a uniformly random value sampling from \(\{0,1\}^{\lambda } \). \(\mathcal {S}\) sorts and keeps \(\mathsf {V} \). \((\mathsf {DX} _S, \mathsf {V})\) is returned as \(\mathsf {EMM} \).

To simulate \(\mathsf {tk} \) for the i-th query of \(\mathsf {key} _i\) with \(\mathcal {L}_\mathsf {Q}= (\mathsf {qeq}, \mathsf {aintx}, \mathsf {mrlen})\), the simulator \(\mathcal {S}\) checks whether \(\mathsf {key} _i\) has been queried before using \(\mathsf {qeq} (\mathsf {key} _1, \ldots , \mathsf {key} _i)\). If so, \(\mathcal {S}\) returns the same \(\mathsf {tk} \) as that of the previous queries of \(\mathsf {key} _i\). Otherwise, \(\mathcal {S}\) checks \(\mathsf {aintx} (\mathsf {EMM}, \mathsf {key} _1, \ldots ,\mathsf {key} _i)\) and get the common slots of \(\mathsf {key} _i\) with previous queries. \(\mathcal {S}\) picks \(\ell = \mathsf {mrlen} (\mathsf {MM})\) intervals in \(\mathsf {V}\), with parts of them determined by the common slots from \(\mathsf {aintx}\) and the rest picked randomly without repeating, and samples a uniformly random value from each selected interval. These \(\ell \) values are returned as \(\mathsf {tk} \).

We show that for all \(\mathsf {PPT}\) adversary \(\mathcal {A}\), the outputs of the real-world game and ideal-world game are indistinguishable. We derive a standard game sequence from the real-world game \(\mathbf {Real}_{\varSigma ,\mathcal {A}}(1^\lambda )\) to the ideal-world game \(\mathbf {Ideal}_{\varSigma ,\mathcal {A},\mathcal {S}}(1^\lambda )\).

  • \(\mathbf{Game} _0\) is the same as \(\mathbf {Real}_\mathcal {A}(1^\lambda )\).

  • \(\mathbf{Game} _1\) replaces the pseudorandom function F in \(\mathbf{Game} _0\) with a random function (and recalled when needed).

  • \(\mathbf{Game} _2\) replaces the \(\mathsf {RCPA}\)-secure encryption scheme in \(\mathbf{Game} _1\) with a random function.

  • \(\mathbf{Game} _3\) replaces the outputs of random functions in \(\mathbf{Game} _2\) with values chosen uniformly at random.

  • \(\mathbf{Game} _4\), for any query, randomly picks \(\ell = \mathsf {mrlen} (\mathsf {MM})\) intervals in \(\mathsf {V}\) and samples a uniformly random value from each selected interval. \(\mathbf{Game} _4\) is the same as \(\mathbf {Ideal}_{\varSigma ,\mathcal {A},\mathcal {S}}(1^\lambda )\).

\(\mathbf{Game} _0\) and \(\mathbf{Game} _1\) are indistinguishable; otherwise, it violates the security of the pseudorandom function. \(\mathbf{Game} _1\) and \(\mathbf{Game} _2\) are indistinguishable; otherwise, it violates the \(\mathsf {RCPA}\) security of the encryption scheme. By the definition of random functions, winning \(\mathbf{Game} _2\) or \(\mathbf{Game} _3\) shares an equal probability. The probabilities of winning \(\mathbf{Game} _3\) and \(\mathbf{Game} _4\) are also equal since \(\mathsf {DX} _S, \mathsf {V}, \mathsf {tk} \) follow the same distributions in both games. By combining these (in)equalities, we have

B  Forward and Backward Privacy for Batch Updates

Forward privacy for batch updates requires that any batch of updates reveals nothing about the keys to be updated. Thus, the adversary cannot figure out the relation between newly updated multi-maps and any previous query. We extend the definition from that designed for a single key-value update [3].

Definition 3

(Forward Privacy). We say that an \(\mathcal {L}\)-adaptively-secure structured encryption scheme for multi-maps \(\varSigma \) over key space \(\mathcal {K}\) is forward private, if the update leakage function \(\mathcal {L}_\mathsf {U}\) can be written as \(\mathcal {L}_\mathsf {U}(\mathsf {MM} _\mu ) = \mathcal {L}'( \{ \vec {v} _i \}_{\mathsf {key} _i \in \mathcal {K}}),\) where \( \mathsf {MM} _\mu = \{\mu , \mathsf {key} _i, \vec {v} _i\} _{\mathsf {key} _i \in \mathcal {K}}, \) and \(\mathcal {L}'\) is stateless.

Backward privacy hides deleted values during subsequent queries. Like the previous definition [4], we formalize it for batch updates by introducing leakage functions constructed from the union of historical update batches \(\mathsf {MM} = \cup \mathsf {MM} _\mu \):

  • Value-batch pattern \(\mathsf {valb} \) reports the values currently associated with \(\mathsf {key} \) and in which batches they are inserted. Formally, \( \mathsf {valb} (\mathsf {MM}, \mathsf {key}) = \{(\mu , u)\ | (\mu , \mathsf {key}, (\mathsf {add}, u))\in \mathsf {MM}\ \wedge \ \forall \mu ', (\mu ', \mathsf {key}, (\mathsf {del}, u))\notin \mathsf {MM} \} \).

  • Delete-batch pattern \(\mathsf {delb} \) lists the batch-pairs of deletions and corresponding insertions on \(\mathsf {key} \). Formally, \( \mathsf {delb} (\mathsf {MM}, \mathsf {key}) = \{(\mu , \mu ')\ |\ \exists u \ \text {s.t.}\ (\mu , \mathsf {key}, (\mathsf {del}, u)) \in \mathsf {MM}\ \wedge \ (\mu ', \mathsf {key}, (\mathsf {add}, u))\in \mathsf {MM} \} \).

Definition 4

(Backward Privacy). We say that an \(\mathcal {L}\)-adaptively-secure structured encryption scheme for multi-maps \(\varSigma \) over key space \(\mathcal {K}\) is

  • insertion-pattern revealing backward-private (Level-I) if

    $$\begin{aligned} \mathcal {L}_\mathsf {U}(\mathsf {MM} _\mu )&= \mathcal {L}'( \{ \vec {o} _i \} _{\mathsf {key} _i\in \mathcal {K}}),\\ \mathcal {L}_\mathsf {S}(\mathsf {MM},\mathsf {key})&= \mathcal {L}''( \mathsf {valb} (\mathsf {MM}, \mathsf {key}), \ell (\mathsf {key}) ), \end{aligned}$$
  • update-pattern revealing backward-private (Level-II) if

    $$\begin{aligned} \mathcal {L}_\mathsf {U}(\mathsf {MM} _u)&= \mathcal {L}' (\{ \mathsf {key} _i, \vec {o} _i \} _{\mathsf {key} _i\in \mathcal {K}}) , \\ \mathcal {L}_\mathsf {S}(\mathsf {MM}, \mathsf {key})&= \mathcal {L}''( \mathsf {valb} (\mathsf {MM}, \mathsf {key}), \mathsf {updb} (\mathsf {MM}, \mathsf {key})) , \end{aligned}$$
  • weakly backward-private (Level-III) if

    $$\begin{aligned} \mathcal {L}_\mathsf {U}(\mathsf {MM} _u)&= \mathcal {L}' (\{ \mathsf {key} _i, \vec {o} _i \} _{\mathsf {key} _i\in \mathcal {K}}) ,\\ \mathcal {L}_\mathsf {S}(\mathsf {MM}, \mathsf {key})&= \mathcal {L}''( \mathsf {valb} (\mathsf {MM}, \mathsf {key}), \mathsf {delb} (\mathsf {MM}, \mathsf {key}) ), \end{aligned}$$

where \(\mathsf {MM} = \cup \mathsf {MM} _\mu \) with \(\mathsf {MM} _\mu = \{\mu , \mathsf {key} _i, \vec {v} _i = (\vec {o} _i, \vec {u} _i)\}_{\mathsf {key} _i\in \mathcal {K}}\). \(\ell (\mathsf {key})\) is the volume of \(\mathsf {key} \) in \(\mathsf {MM}\). \(\mathcal {L}'\) and \(\mathcal {L}''\) are stateless.

Rights and permissions

Reprints and permissions

Copyright information

© 2021 IFIP International Federation for Information Processing

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Wang, J., Chow, S.S.M. (2021). Simple Storage-Saving Structure for Volume-Hiding Encrypted Multi-maps. In: Barker, K., Ghazinour, K. (eds) Data and Applications Security and Privacy XXXV. DBSec 2021. Lecture Notes in Computer Science(), vol 12840. Springer, Cham. https://doi.org/10.1007/978-3-030-81242-3_4

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-81242-3_4

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-81241-6

  • Online ISBN: 978-3-030-81242-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics