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.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
- 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.
- 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
Amjad, G., Kamara, S., Moataz, T.: Breach-resistant structured encryption. Proc. Privacy Enhanc. Technol. (PoPETs) 2019(1), 245–265 (2019)
Blackstone, L., Kamara, S., Moataz, T.: Revisiting leakage abuse attacks. In: Network and Distributed System Security Symposium (NDSS) (2020)
Bost, R.: \(\sum \)o\(\varphi \)o\(\varsigma \): forward secure searchable encryption. In: ACM Conference on Computer and Communications Security (CCS), pp. 1143–1154 (2016)
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)
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)
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
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)
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
Goldreich, O., Ostrovsky, R.: Software protection and simulation on oblivious RAMs. J. ACM 43(3), 431–473 (1996)
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)
Gui, Z., Paterson, K.G., Patranabis, S., Warinschi, B.: SWiSSSE: system-wide security for searchable symmetric encryption. IACR Cryptology ePrint Archive: 2020/1328 (2020)
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)
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
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
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
Kamara, S., Papamanthou, C., Roeder, T.: Dynamic searchable symmetric encryption. In: ACM Conference on Computer and Communications Security (CCS), pp. 965–976 (2012)
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)
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)
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)
Kirsch, A., Mitzenmacher, M., Wieder, U.: More robust hashing: Cuckoo hashing with a stash. SIAM J. Comput. 39(4), 1543–1561 (2009)
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)
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)
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)
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
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
Lamb, A., et al.: The vertica analytic database: C-store 7 years later. Proc. VLDB Endow. 5(12), 1790–1801 (2012)
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)
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)
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)
Wang, J., Chow, S.S.M.: Forward and backward-secure range-searchable symmetric encryption. IACR Cryptology ePrint Archive: 2019/497 (2019)
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
Willard, D.E.: Log-logarithmic worst-case range queries are possible in space theta(n). Inf. Process. Lett. (IPL) 17(2), 81–84 (1983)
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)
Author information
Authors and Affiliations
Corresponding author
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
Copyright information
© 2021 IFIP International Federation for Information Processing
About this paper
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)