Table of Contents
Public sector initiatives
- The Royal Society's 2019 report Protecting Privacy in Practice provides case studies for a number of the emerging PETs discussed on this site, as well as Personal Data Store technology.
- The ICO has produced a Data Sharing Code of Practice, and have released a roadmap for updating their guidance on anonymisation and pseudonymisation which will explore the role that privacy enhancing technologies can play in enabling safe and lawful access to data. Some guidance is already provided in a machine learning context in the ICO's guidance on AI and data protection.
- The UKRI-funded National Research Centre on Privacy, Harm Reduction and Adversarial Influence Online (REPHRAIN) was established in 2020 and brings together academics and researchers from the universities of Bristol, Edinburgh, Bath, King’s College London, and University College London. The Centre is taking an interdisciplinary approach to researching online harms, including the role of PETs. Of particular interest is the creation of a PETs Testbed, incorporating network and end-nodes on which PETs will be rolled out and evaluated, both from the systems and human experiences perspective.
Online courses
Open-source community OpenMined provides a number of online courses:
- The Our Privacy Opportunity course is a short course covering fundamental privacy concepts, and providing an overview of some of the privacy enhancing technologies available. This is a one day course requiring no technical knowledge or coding skills.
- The Secure and Private AI Udacity course, in association with Facebook AI, is a technical course introducing methods for privacy-preserving machine learning, including federated learning, differential privacy, and encrypted computation. Beginner-level knowledge of Python and machine learning are required.
- The Foundations of Private Computation course is a technical course covering various cryptographic concepts and privacy enhancing technologies. The course aims to teach every major privacy-preserving technique to an intermediate level. Beginner-level Python is required.
Technical resources
The following are technical resources related to specific PETs, which are also included on the end nodes of the Adoption Guide.
Technology | Resource | Description |
---|---|---|
De-identification techniques | Privitar's guide to de-identification | A series of short courses covering the issues and challenges of de-identification, and describing the available de-identification techniques and where to apply them. |
De-identification techniques | The ICO's Anonymisation Code of Practice | Guidance from the regulator on data anonymisation, which includes case studies of where de-identification techniques have been applied. This guidance is set to be updated in 2021. |
Differential privacy | NIST's differential privacy blog series | A series of blogs from the US National Institute of Standards and Technology covering use cases and technical aspects of differential privacy. |
Differential privacy | Google's differential privacy libraries | Includes libraries that implement noise addition primitives and differentially private aggregations, and an end-to-end differential privacy framework built on Apache Beam. Libraries are written in Go, C++, and Java, and OpenMined provide a Python wrapper. |
Differential privacy | PyTorch Opacus | Library for training differentially private machine learning models using the PyTorch framework |
Differential privacy | TensorFlow Privacy | Library for training differentially private machine learning models using the TensorFlow framework |
Federated analytics | TensorFlow Federated | A framework for developing federating applications with TensorFlow |
Federated analytics | OpenMined PyGrid | A peer-to-peer data network and platform facilitating federated learning |
Homomorphic encryption | Homomorphic encryption standard | A proposed community security and API standard for homomorphic encryption. |
Homomorphic encryption | Microsoft SEAL | An open-source homomorphic encryption library created by Microsoft, written in C++. The EVA project separately provides a Python API for homomorphically encrypting data with SEAL. |
Homomorphic encryption | OpenMined TenSEAL | A library for performing homomorphic encryption operations on tensors, enabling homomorphic encryption to be more easily integrated into ML applications. |
Homomorphic encryption | IBM FHE Toolkits | iOS, MacOS, Linux, and Android Toolkits for integrating homomorphic encryption in desktop and mobile applications. |
Homomorphic encryption | Google FHE Transpiler | A proof-of-concept transpiler for converting regular C++ code into FHE-ready C++ code. The tool is described in this blog. |
Multi-party computation | multiparty.org | Software libraries and frameworks for implementing and deploying systems with MPC, created by a Boston University-led research group |
Multi-party computation | MPyC library | Python library for implementing MPC, using threshold secret sharing as the underlying cryptographic mechanism |
Multi-party computation | Morten Dahl's blog series | A series of blogs describing various MPC protocols |
Multi-party computation | Secure Dating with Four or Fewer Cards | Fun thought experiments on MPC protocols for securely determining whether there is mutual affection between two individuals |
Trusted execution environments | Apple Secure Enclave | Overview of Apple's Secure Enclave, use to protect the biometric data used for Touch ID and Face ID on iPhone |
Trusted execution environments | Azure Confidential Compute | Self-service offering for provisioning and leveraging TEEs (specifically Intel SGX) on Microsoft's Azure cloud |
All content is available under the Open Government License v3.0 except where otherwise stated.