40
77

SMCQL: Secure Query Processing for Private Data Networks

Abstract

As storage becomes more and more inexpensive, we see a plethora of new datasets being recorded and queried. In contrast, the ability of the individuals and researchers to access, share, and learn from their data has not improved significantly during this time. One factor in this scant progress is privacy concerns. We propose a novel generalization of federated databases called a private data network (PDN), and it is designed for executing queries over mutually distrustful data providers. In this setting, participants do not reveal their raw data nor do they encrypt it and upload it to the cloud. Rather, they perform secure multiparty computation (SMC) with other data providers in the PDN to produce query results. In a PDN, users submit a SQL query to a honest broker that plans and coordinates its execution. Participating databases send their garbled query results to the broker who assembles it into plaintext results for the user. SMC enables the participating engines to compute a joint function with an output that is only revealed to the user. Thus the databases computing the query learn nothing about the inputs provided by their peers, nor can they see the output of their group computation. This capability comes at a cost though; standard SMC runs over garbled circuits that have an exponential blowup in runtime proportional to the complexity of the circuit. This has created a barrier to entry for it in the past. To address this, our rewrite framework rigorously analyzes a PDN query's relational algebra to identify a minimal set of operations that require coordination between parties. The framework then injects SMC into the query plan at these coordination points to compute them securely as needed. We are presently preparing smcql for an open-source release.

View on arXiv
Comments on this paper