Lune

CCS2022Top-tier venue

Secret-Shared Joins with Multiplicity from Aggregation Trees

Saikrishna Badrinarayanan, Sourav Das, Gayathri Garimella, Srinivasan Raghuraman, Peter Rindal

2022Year
9Citations
8Top-tier citations

Abstract

We present novel protocols to compute SQL-like join operations on secret shared database tables with non-unique join keys. Previous approaches to the problem had the restriction that the join keys of both the input tables must be unique or had quadratic overhead. Our work lifts this restriction, allowing one or both of the secret shared input tables to have an unknown and unbounded number of repeating join keys while achieving efficient O(n log n) asymptotic communication/computation and O(log n) rounds of interaction, independent of the multiplicity of the keys. We present two join protocols, Π Join-OM and Π Join-MM . The first, Π Join-OM is optimized for the case where one table has a unique primary key while the second, Π Join-MM is for the more general setting where both tables contain duplicate keys. Both protocols require O(n log n) time and O(log n) rounds to join two tables of size n. Our framework for computing joins requires an efficient sorting protocol and generic secure computation for circuits. We concretely instantiate our protocols in the honest majority three-party setting. Our join protocols are built around an efficient method to compute structured aggregations over a secret shared input vector V ∈ D n . If the parties have another secret-shared vector of control bits B ∈ 0, 1 n to partition V into sub-vectors (that semantically relates to the join operations). A structured aggregation computes a secret shared vector V ∈ D n where every subvector (V b , ..., V e ) (defined by the control bits) is aggregated as V i = V b ... V i for i ∈ b, ..., e according to some user-defined operator . Critically, the b, e indices that partition the vector are secret. It's trivial to compute aggregations by sequentially processing the input vector and control bits. This would require O(n) rounds and would be very slow due to network latency. We introduce Aggregation Trees as a general technique to compute aggregations in O(log n) rounds. For our purpose of computing joins, we instantiate ∈ copy previous value, add, but we believe that this technique is quite powerful and can find applications in other useful settings.

Ask about this paper

Your agent reads all of it.

Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.

Questions to start from

Your agent calls

Luneget_paper_fulltext

Ask in Lune

Free to start. No credit card required.

lune papers fulltext 637018e2-dc2a-49c5-97a1-deafbad33eed

Cited by top-tier papers8

Ask how each one uses it

Builds on11

Related papers

Dusk over the sea between two cliffs drawn in fine vertical lines