Privacy Enhancements for Android
An experimental mobile privacy platform
Privacy Enhancements for Android (PE for Android) is a platform for exploring concepts in regulating access to private information on mobile devices. The goal is to create an extensible privacy system that abstracts away the details of various privacy-preserving technologies. PE for Android allows app developers to safely leverage state-of-the-art privacy techniques without knowledge of esoteric underlying technologies. Further, PE for Android helps users to take ownership of their private information by presenting them with more intuitive controls and permission enforcement. The platform was developed as a fork of the Android Open Source Project (AOSP) release for Android 9 “Pie” and can be installed as a Generic System Image (GSI) on a Project Treble-compliant device.
PE for Android supports a new way for apps to access sensitive data types such as location, contacts, and SMSs. Through the Private Data Service and Privacy Abstraction Layer, apps may ask for sensitive data to be transformed and returned to the app in lieu of requesting access directly to the underlying information. This enables (for example) a weather app that only receives the phones current zip code, or a messaging application that receives a contact's name when a phone number is given.
Key components of the PE for Android system are new class of trusted modules, dubbed μPALs, that integrate with the Privacy Abstraction Layer. These μPALs are responsible for performing the data transformation requested by apps. PE for Android exposes a new set of APIs to allow developers and researchers alike to create μPAL modules of their own that, once proven, may later be integrated into the core Android OS.