PETs Adoption Guide

Additional resources

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.

TechnologyResourceDescription
De-identification techniquesPrivitar's guide to de-identificationA 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 techniquesThe ICO's Anonymisation Code of PracticeGuidance 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 privacyNIST's differential privacy blog seriesA series of blogs from the US National Institute of Standards and Technology covering use cases and technical aspects of differential privacy.
Differential privacyGoogle's differential privacy librariesIncludes 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 privacyPyTorch OpacusLibrary for training differentially private machine learning models using the PyTorch framework
Differential privacyTensorFlow PrivacyLibrary for training differentially private machine learning models using the TensorFlow framework
Federated analyticsTensorFlow FederatedA framework for developing federating applications with TensorFlow
Federated analyticsOpenMined PyGridA peer-to-peer data network and platform facilitating federated learning
Homomorphic encryptionHomomorphic encryption standardA proposed community security and API standard for homomorphic encryption.
Homomorphic encryptionMicrosoft SEALAn 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 encryptionOpenMined TenSEALA library for performing homomorphic encryption operations on tensors, enabling homomorphic encryption to be more easily integrated into ML applications.
Homomorphic encryptionIBM FHE ToolkitsiOS, MacOS, Linux, and Android Toolkits for integrating homomorphic encryption in desktop and mobile applications.
Homomorphic encryptionGoogle FHE TranspilerA proof-of-concept transpiler for converting regular C++ code into FHE-ready C++ code. The tool is described in this blog.
Multi-party computationmultiparty.orgSoftware libraries and frameworks for implementing and deploying systems with MPC, created by a Boston University-led research group
Multi-party computationMPyC libraryPython library for implementing MPC, using threshold secret sharing as the underlying cryptographic mechanism
Multi-party computationMorten Dahl's blog seriesA series of blogs describing various MPC protocols
Multi-party computationSecure Dating with Four or Fewer CardsFun thought experiments on MPC protocols for securely determining whether there is mutual affection between two individuals
Trusted execution environmentsApple Secure EnclaveOverview of Apple's Secure Enclave, use to protect the biometric data used for Touch ID and Face ID on iPhone
Trusted execution environmentsAzure Confidential ComputeSelf-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.