  We present Peekaboo, a new privacy-sensitive architecture for smart homes
that leverages an in-home hub to pre-process and minimize outgoing data in a
structured and enforceable manner before sending it to external cloud servers.
Peekaboo's key innovations are (1) abstracting common data pre-processing
functionality into a small and fixed set of chainable operators, and (2)
requiring that developers explicitly declare desired data collection behaviors
(e.g., data granularity, destinations, conditions) in an application manifest,
which also specifies how the operators are chained together. Given a manifest,
Peekaboo assembles and executes a pre-processing pipeline using operators
pre-loaded on the hub. In doing so, developers can collect smart home data on a
need-to-know basis; third-party auditors can verify data collection behaviors;
and the hub itself can offer a number of centralized privacy features to users
across apps and devices, without additional effort from app developers. We
present the design and implementation of Peekaboo, along with an evaluation of
its coverage of smart home scenarios, system performance, data minimization,
and example built-in privacy features.
