We present LINQ, the first join protocol with linear complexity (in both running time and communication) under the secure multi-party computation model (MPC). It can also be extended to support all free-connex queries, a large class of select-join-aggregate queries, still with linear complexity. This matches the plaintext result for the query processing problem, as free-connex queries are the largest class of queries known to be solvable in linear time in plaintext. We have then built a query processing system based on LINQ, and the experimental results show that LINQ significantly outperforms the state of the art. For example, it can finish a query on three relations with an output size of 1 million tuples in around 100s in the LAN setting, while existing protocols that support the query cannot finish in an hour. Thus LINQ brings MPC query processing closer to practicality.
翻译:我们提出LINQ协议,这是首个在安全多方计算(MPC)模型下实现线性复杂度(包括运行时间和通信量)的连接协议。该协议可进一步扩展至所有自由连接查询(即一类重要的选择-连接-聚合查询),且仍保持线性复杂度。这一结果与明文查询处理的结论相匹配,因为自由连接查询是已知可在明文环境中线性时间求解的最大查询类别。我们基于LINQ构建了查询处理系统,实验结果表明,LINQ显著优于现有技术。例如,在局域网环境下,对于包含三个关系且输出规模为100万条元组的查询,LINQ可在约100秒内完成,而现有支持此类查询的协议在一小时内无法完成。因此,LINQ使MPC查询处理更接近实用化。