Table of Contents
Fetching ...

Gyokuro: Source-assisted Private Membership Testing using Trusted Execution Environments

Yoshimichi Nakatsuka, Nicolas Dutly, Kari Kostiainen, Srdjan Capkun

Abstract

Private Membership Testing (PMT) protocols enable clients to verify whether a certain data item is included in a database without revealing the item to the database operator or other external parties. This paper examines Source-assisted PMT (SPMT), in which clients leverage compact data source-provided information issued when the data item is first submitted to the database. SPMT is relevant in applications such as certificate transparency and supply-chain auditing; yet, designing an approach that is efficient, scalable, and privacy-preserving remains a challenge. This work presents Gyokuro, which takes a different approach to conventional membership testing schemes. Instead of requesting the server to produce a proof attesting that a certain data item exists in the database, we leverage Trusted Execution Environments (TEEs) to produce proofs demonstrating that the server has made enough progress to add the data item to the database. With the help of existing monitoring services, clients can infer that no items have been removed from the database. This allows Gyokuro to provide strong privacy guaranties and achieve high efficiency, as a client's membership testing query does not include any information regarding their interests, and eliminates the need for complex and inefficient protection mechanisms. Additionally, this approach enables membership testing on large-scale databases, since the communication and computation required are independent of the database size. Our evaluations show practical feasibility, achieving 7 ms membership testing latency and throughput of around 1400 requests/sec/core.

Gyokuro: Source-assisted Private Membership Testing using Trusted Execution Environments

Abstract

Private Membership Testing (PMT) protocols enable clients to verify whether a certain data item is included in a database without revealing the item to the database operator or other external parties. This paper examines Source-assisted PMT (SPMT), in which clients leverage compact data source-provided information issued when the data item is first submitted to the database. SPMT is relevant in applications such as certificate transparency and supply-chain auditing; yet, designing an approach that is efficient, scalable, and privacy-preserving remains a challenge. This work presents Gyokuro, which takes a different approach to conventional membership testing schemes. Instead of requesting the server to produce a proof attesting that a certain data item exists in the database, we leverage Trusted Execution Environments (TEEs) to produce proofs demonstrating that the server has made enough progress to add the data item to the database. With the help of existing monitoring services, clients can infer that no items have been removed from the database. This allows Gyokuro to provide strong privacy guaranties and achieve high efficiency, as a client's membership testing query does not include any information regarding their interests, and eliminates the need for complex and inefficient protection mechanisms. Additionally, this approach enables membership testing on large-scale databases, since the communication and computation required are independent of the database size. Our evaluations show practical feasibility, achieving 7 ms membership testing latency and throughput of around 1400 requests/sec/core.
Paper Structure (47 sections, 8 figures, 3 tables)

This paper contains 47 sections, 8 figures, 3 tables.

Figures (8)

  • Figure 1: SPMT system model and main operations. Solid arrows represent Upload protocols and dashed arrows represent Testing protocols.
  • Figure 2: Overview of our solution. Notations are listed in Table \ref{['table:notations']}. Solid arrows represent Upload protocols and dashed arrows represent Testing protocols. Dotted boxes represent information exchanged during the interaction.
  • Figure 3: Upload (Data submission and Storage & Processing) protocols. These protocol run for every $d$ submitted by a data source.
  • Figure 4: Membership testing & Consistency checking protocol. This protocol run only for a limited selection of data items which the client requested from the data source.
  • Figure 5: Upload latency evaluation for various concurrent data sources. We achieve a data submission latency of around 6.5ms when measured over 1024 concurrent clients.
  • ...and 3 more figures