Privacy-Preserving Systems

Functionality and user privacy are often in tension with each other, especially when it comes to modern data-driven and cloud-based applications. Much of my research is on leveraging cryptographic tools and techniques to provide a balance between the need for privacy and the need for functionality. Examples include designing private discovery protocols for the Internet of Things, constructing private navigation systems, and building systems for privacy-preserving machine learning classification.

Privacy, Discovery, and Authentication for the Internet of Things

Contributors: David J. Wu, Ankur Taly, Asim Shankar, and Dan Boneh

Abstract:

Automatic service discovery is essential to realizing the full potential of the Internet of Things (IoT). While discovery protocols like Multicast DNS, Apple AirDrop, and Bluetooth Low Energy have gained widespread adoption across both IoT and mobile devices, most of these protocols do not offer any form of privacy control for the service, and often leak sensitive information such as service type, device hostname, device owner's identity, and more in the clear.

To address the need for better privacy in both the IoT and the mobile landscape, we develop two protocols for private service discovery and private mutual authentication. Our protocols provide private and authentic service advertisements, zero round-trip (0-RTT) mutual authentication, and are provably secure in the Canetti-Krawczyk key-exchange model. In contrast to alternatives, our protocols are lightweight and require minimal modification to existing key-exchange protocols. We integrate our protocols into an existing open-source distributed applications framework, and provide benchmarks on multiple hardware platforms: Intel Edisons, Raspberry Pis, smartphones, laptops, and desktops. Finally, we discuss some privacy limitations of the Apple AirDrop protocol (a peer-to-peer file sharing mechanism) and show how to improve the privacy of Apple AirDrop using our private mutual authentication protocol.

Resources:

BibTeX:
@inproceedings{WTSB16,
  author    = {David J. Wu and Ankur Taly and Asim Shankar and Dan Boneh},
  title     = {Privacy, Discovery, and Authentication for the Internet of Things},
  booktitle = {European Symposium on Research in Computer Security ({ESORICS})},
  year      = {2016}
}

Privacy-Preserving Shortest Path Computation

Contributors: David J. Wu, Joe Zimmerman, Jérémy Planul, and John C. Mitchell

Abstract:

Navigation is one of the most popular cloud computing services. But in virtually all cloud-based navigation systems, the client must reveal her location and destination to the cloud service provider in order to learn the fastest route. In this work, we present a cryptographic protocol for navigation on city streets that provides privacy for both the client's location and the service provider's routing data. Our key ingredient is a novel method for compressing the next-hop routing matrices in networks such as city street maps. Applying our compression method to the map of Los Angeles, for example, we achieve over tenfold reduction in the representation size. In conjunction with other cryptographic techniques, this compressed representation results in an efficient protocol suitable for fully-private real-time navigation on city streets. We demonstrate the practicality of our protocol by benchmarking it on real street map data for major cities such as San Francisco and Washington, D.C.

Resources:

BibTeX:
@inproceedings{WZPM16,
  author    = {David J. Wu and Joe Zimmerman and J{\'{e}}r{\'{e}}my Planul and
               John C. Mitchell},
  title     = {Privacy-Preserving Shortest Path Computation},
  booktitle = {Network and Distributed System Security Symposium ({NDSS})},
  year      = {2016}
}

Privately Evaluating Decision Trees and Random Forests

Contributors: David J. Wu, Tony Feng, Michael Naehrig, and Kristin Lauter

Abstract:

Decision trees and random forests are common classifiers with widespread use. In this paper, we develop two protocols for privately evaluating decision trees and random forests. We operate in the standard two-party setting where the server holds a model (either a tree or a forest), and the client holds an input (a feature vector). At the conclusion of the protocol, the client learns only the model's output on its input and a few generic parameters concerning the model; the server learns nothing. The first protocol we develop provides security against semi-honest adversaries. We then give an extension of the semi-honest protocol that is robust against malicious adversaries. We implement both protocols and show that both variants are able to process trees with several hundred decision nodes in just a few seconds and a modest amount of bandwidth. Compared to previous semi-honest protocols for private decision tree evaluation, we demonstrate a tenfold improvement in computation and bandwidth.

Resources:

BibTeX:
@article{WFNL15,
  author  = {David J. Wu and Tony Feng and Michael Naehrig and Kristin Lauter},
  title   = {Privately Evaluating Decision Trees and Random Forests},
  journal = {Proceedings on Privacy Enhancing Technologies ({PoPETs})},
  volume  = {2016},
  number  = {4},
  pages   = {335--355},
  year    = {2016}
}