Implementations of differentially private analyses
Since the advent of differential privacy, a number of systems supporting differentially private data analyses have been implemented and deployed. This article tracks real-world deployments, production software packages, and research prototypes.
Real-world deployments
Name | Organization | Year Introduced | Notes | Still in use? |
---|---|---|---|---|
OnTheMap: Interactive tool for exploration of US income and commute patterns.[1][2] | US Census Bureau | 2008 | First deployment of differential privacy | Yes |
RAPPOR in Chrome Browser to collect security metrics[3][4] | 2014 | First widespread use of local differential privacy | No | |
Emoji analytics; analytics. Improve: QuickType, emoji; Spotlight deep link suggestions; Lookup Hints in Notes. Emoji suggestions, health type usage estimates, Safari energy drain statistics, Autoplay intent detection (also in Safari)[5] | Apple | 2017 | Yes | |
Application telemetry[6] | Microsoft | 2017 | Application usage statistics Microsoft Windows. | yes |
Flex: A SQL-based system developed for internal Uber analytics[7][8] | Uber | 2017 | Unknown | |
2020 Census[9] | US Census Bureau | 2018 | Yes | |
Audience Engagement API[10] | 2020 | Yes | ||
Labor Market Insights[11] | 2020 | Yes | ||
COVID-19 Community Mobility Reports[12] | 2020 | Unknown | ||
Advertiser Queries[13] | 2020 | |||
U.S. Broadband Coverage Data Set[14] | Microsoft | 2021 | Unknown | |
College Scorecard Website | IRS and Dept. of Education | 2021 | Unknown | |
Ohm Connect[15] | Recurve | 2021 |
Production software packages
These software packages purport to be usable in production systems. They are split in two categories: those focused on answering statistical queries with differential privacy, and those focused on training machine learning models with differential privacy.
Statistical analyses
Name | Developer | Year Introduced | Notes | Still maintained? |
---|---|---|---|---|
Google's differential privacy libraries[16] | 2019 | Building block libraries in Go, C++, and Java; end-to-end framework in Go,[17] . | Yes | |
OpenDP[18] | Harvard, Microsoft | 2020 | Core library in Rust,[19] SDK in Python with an SQL interface. | Yes |
Tumult Analytics[20] | Tumult Labs[21] | 2022 | Python library, running on Apache Spark. | Yes |
PipelineDP[22] | Google, OpenMined[23] | 2022 | Python library, running on Apache Spark, Apache Beam, or locally. | Yes |
PSI (Ψ): A Private data Sharing Interface | Harvard University Privacy Tools Project.[24] | 2016 | No | |
TopDown Algorithm[25] | United States Census Bureau | 2020 | Production code used in the 2020 US Census. | No |
Research projects and prototypes
Name | Citation | Year Published | Notes |
---|---|---|---|
PINQ: An API implemented in C#. | [31] | 2010 | |
Airavat: A MapReduce-based system implemented in Java hardened with SELinux-like access control. | [32] | 2010 | |
Fuzz: Time-constant implementation in Caml Light of a domain-specific language. | [33] | 2011 | |
GUPT: Implementation of the sample-and-aggregate framework. | [34] | 2012 | |
KTELO: A framework and system for answering linear counting queries. | [35] | 2018 |
Attacks on implementations
In addition to standard defects of software artifacts that can be identified using testing or fuzzing, implementations of differentially private mechanisms may suffer from the following vulnerabilities:
- Timing side-channel attacks.[33] In contrast with timing attacks against implementations of cryptographic algorithms that typically have low leakage rate and must be followed with non-trivial cryptanalysis, a timing channel may lead to a catastrophic compromise of a differentially private system, since a targeted attack can be used to exfiltrate the very bit that the system is designed to hide.
- Leakage through floating-point arithmetic.[38] Differentially private algorithms are typically presented in the language of probability distributions, which most naturally lead to implementations using floating-point arithmetic. The abstraction of floating-point arithmetic is leaky, and without careful attention to details, a naive implementation may fail to provide differential privacy. (This is particularly the case for ε-differential privacy, which does not allow any probability of failure, even in the worst case.) For example, the support of a textbook sampler of the Laplace distribution (required, for instance, for the Laplace mechanism) is less than 80% of all double-precision floating point numbers; moreover, the support for distributions with different means are not identical. A single sample from a naïve implementation of the Laplace mechanism allows distinguishing between two adjacent datasets with probability more than 35%.
- Timing channel through floating-point arithmetic.[39] Unlike operations over integers that are typically constant-time on modern CPUs, floating-point arithmetic exhibits significant input-dependent timing variability.[40] Handling of subnormals can be particularly slow, as much as by ×100 compared to the typical case.[41]
References
- "OnTheMap". onthemap.ces.census.gov. Retrieved 29 March 2023.
- Machanavajjhala, Ashwin; Kifer, Daniel; Abowd, John; Gehrke, Johannes; Vilhuber, Lars (April 2008). "Privacy: Theory meets Practice on the Map". 2008 IEEE 24th International Conference on Data Engineering. pp. 277–286. doi:10.1109/ICDE.2008.4497436. ISBN 978-1-4244-1836-7. S2CID 5812674.
- Erlingsson, Úlfar. "Learning statistics with privacy, aided by the flip of a coin".
- Erlingsson, Úlfar; Pihur, Vasyl; Korolova, Aleksandra (November 2014). "RAPPOR: Randomized Aggregatable Privacy-Preserving Ordinal Response". Proceedings of the 2014 ACM SIGSAC Conference on Computer and Communications Security. pp. 1054–1067. arXiv:1407.6981. Bibcode:2014arXiv1407.6981E. doi:10.1145/2660267.2660348. ISBN 9781450329576. S2CID 6855746.
- Differential Privacy Team (December 2017). "Learning with Privacy at Scale". Apple Machine Learning Journal. 1 (8).
{{cite journal}}
:|last1=
has generic name (help) - Ding, Bolin; Kulkarni, Janardhan; Yekhanin, Sergey (December 2017). "Collecting Telemetry Data Privately". 31st Conference on Neural Information Processing Systems: 3574–3583. arXiv:1712.01524. Bibcode:2017arXiv171201524D.
- Tezapsidis, Katie (Jul 13, 2017). "Uber Releases Open Source Project for Differential Privacy".
- Johnson, Noah; Near, Joseph P.; Song, Dawn (January 2018). "Towards Practical Differential Privacy for SQL Queries". Proceedings of the VLDB Endowment. 11 (5): 526–539. arXiv:1706.09479. doi:10.1145/3187009.3177733.
- Abowd, John M. (August 2018). "The U.S. Census Bureau Adopts Differential Privacy". Proceedings of the 24th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining. p. 2867. doi:10.1145/3219819.3226070. hdl:1813/60392. ISBN 9781450355520. S2CID 51711121.
- Rogers, Ryan; Subramaniam, Subbu; Peng, Sean; Durfee, David; Lee, Seunghyun; Santosh Kumar Kancha; Sahay, Shraddha; Ahammad, Parvez (2020). "LinkedIn's Audience Engagements API: A Privacy Preserving Data Analytics System at Scale". arXiv:2002.05839 [cs.CR].
- Rogers, Ryan; Adrian Rivera Cardoso; Mancuhan, Koray; Kaura, Akash; Gahlawat, Nikhil; Jain, Neha; Ko, Paul; Ahammad, Parvez (2020). "A Members First Approach to Enabling LinkedIn's Labor Market Insights at Scale". arXiv:2010.13981 [cs.CR].
- Aktay, Ahmet; Bavadekar, Shailesh; Cossoul, Gwen; Davis, John; Desfontaines, Damien; Fabrikant, Alex; Gabrilovich, Evgeniy; Gadepalli, Krishna; Gipson, Bryant; Guevara, Miguel; Kamath, Chaitanya; Kansal, Mansi; Lange, Ali; Mandayam, Chinmoy; Oplinger, Andrew; Pluntke, Christopher; Roessler, Thomas; Schlosberg, Arran; Shekel, Tomer; Vispute, Swapnil; Vu, Mia; Wellenius, Gregory; Williams, Brian; Royce J Wilson (2020). "Google COVID-19 Community Mobility Reports: Anonymization Process Description (Version 1.1)". arXiv:2004.04145 [cs.CR].
- Rogers, Ryan; Subbu, Subramaniam; Peng, Sean; Durfee, David; Lee, Seunghyun; Kancha, Santosh Kumar; Sahay, Shraddha; Ahammad, Parvez (2020). "LinkedIn's Audience Engagements API: A Privacy Preserving Data Analytics System at Scale". arXiv:2002.05839 [cs.CR].
- Pereira, Mayana; Kim, Allen; Allen, Joshua; White, Kevin; Juan Lavista Ferres; Dodhia, Rahul (2021). "U.S. Broadband Coverage Data Set: A Differentially Private Data Release". arXiv:2103.14035 [cs.CR].
- "EDP". EDP. Retrieved 29 March 2023.
- "Google's differential privacy libraries". GitHub. 3 February 2023.
- "Differential-privacy/Privacy-on-beam at main · google/Differential-privacy". GitHub.
- "OpenDP". opendp.org. Retrieved 29 March 2023.
- "OpenDP Library". GitHub.
- "Tumult Analytics". www.tmlt.dev. Retrieved 29 March 2023.
- "Tumult Labs | Privacy Protection Redefined". www.tmlt.io. Retrieved 29 March 2023.
- "PipelineDP". pipelinedp.io. Retrieved 29 March 2023.
- "OpenMined". www.openmined.org. Retrieved 29 March 2023.
- Gaboardi, Marco; Honaker, James; King, Gary; Nissim, Kobbi; Ullman, Jonathan; Vadhan, Salil; Murtagh, Jack (June 2016). "PSI (Ψ): a Private data Sharing Interface".
- "DAS 2020 Redistricting Production Code Release". GitHub. 22 June 2022.
- "Diffprivlib v0.5". GitHub. 17 October 2022.
- Holohan, Naoise; Braghin, Stefano; Pól Mac Aonghusa; Levacher, Killian (2019). "Diffprivlib: The IBM Differential Privacy Library". arXiv:1907.02444 [cs.CR].
- Radebaugh, Carey; Erlingsson, Ulfar (March 6, 2019). "Introducing TensorFlow Privacy: Learning with Differential Privacy for Training Data".
- "TensorFlow Privacy". GitHub. 2019-08-09.
- "Opacus · Train PyTorch models with Differential Privacy". opacus.ai. Retrieved 29 March 2023.
- McSherry, Frank (1 September 2010). "Privacy integrated queries" (PDF). Communications of the ACM. 53 (9): 89–97. doi:10.1145/1810891.1810916. S2CID 52898716.
- Roy, Indrajit; Setty, Srinath T.V.; Kilzer, Ann; Shmatikov, Vitaly; Witchel, Emmett (April 2010). "Airavat: Security and Privacy for MapReduce" (PDF). Proceedings of the 7th Usenix Symposium on Networked Systems Design and Implementation (NSDI).
- Haeberlen, Andreas; Pierce, Benjamin C.; Narayan, Arjun (2011). "Differential Privacy Under Fire". 20th USENIX Security Symposium.
- Mohan, Prashanth; Thakurta, Abhradeep; Shi, Elaine; Song, Dawn; Culler, David E. "GUPT: Privacy Preserving Data Analysis Made Easy". Proceedings of the 2012 ACM SIGMOD International Conference on Management of Data. pp. 349–360. doi:10.1145/2213836.2213876. S2CID 2135755.
- Zhang, Dan; McKenna, Ryan; Kotsogiannis, Ios; Hay, Michael; Machanavajjhala, Ashwin; Miklau, Gerome (June 2018). "EKTELO: A Framework for Defining Differentially-Private Computations". Proceedings of the 2018 International Conference on Management of Data. pp. 115–130. arXiv:1808.03555. doi:10.1145/3183713.3196921. ISBN 9781450347037. S2CID 5033862.
- McSherry, Frank (25 February 2018). "Uber's differential privacy .. probably isn't". GitHub.
- Lyu, Min; Su, Dong; Li, Ninghui (1 February 2017). "Understanding the sparse vector technique for differential privacy". Proceedings of the VLDB Endowment. 10 (6): 637–648. arXiv:1603.01699. doi:10.14778/3055330.3055331. S2CID 5449336.
- Mironov, Ilya (October 2012). "On significance of the least significant bits for differential privacy". Proceedings of the 2012 ACM conference on Computer and communications security (PDF). ACM. pp. 650–661. doi:10.1145/2382196.2382264. ISBN 9781450316514. S2CID 3421585.
- Andrysco, Marc; Kohlbrenner, David; Mowery, Keaton; Jhala, Ranjit; Lerner, Sorin; Shacham, Hovav (May 2015). "On Subnormal Floating Point and Abnormal Timing". 2015 IEEE Symposium on Security and Privacy. pp. 623–639. doi:10.1109/SP.2015.44. ISBN 978-1-4673-6949-7. S2CID 1903469.
- Kohlbrenner, David; Shacham, Hovav (August 2017). "On the Effectiveness of Mitigations Against Floating-point Timing Channels". Proceedings of the 26th USENIX Conference on Security Symposium. USENIX Association: 69–81.
- Dooley, Isaac; Kale, Laxmikant (September 2006). "Quantifying the interference caused by subnormal floating-point values" (PDF). Proceedings of the Workshop on Operating System Interference in High Performance Applications.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.