Security/Contextual Identity Project
Enable users to gain sovereignty over their personal data, whether it is deliberately shared, passively tracked, inferred, or otherwise aggregated.
"I am large, I contain multitudes." -- Walt Whitman, Leaves of Grass 
Whitman was not speaking of multiple personality disorder, but rather of the human tendency to present different aspects of self to different people. For example, many people want to keep professional and personal lives separate, or at least want to maintain different types of relationships (and thus share different information) with acquantainces versus say, parents. This problem has surfaced many times over the years: Carl Jung called this persona theory , Erving Goffman called it impression management , and more recently Lucas Adamski called it contextual identity .
Managing these different personas is easier in meatspace than online. In meatspace, there are more clues about how your information will be shared, most information will eventually be forgotten, and information leakage is easier to track and contain. By contrast, intuiting the total amount of personal information shared online that can be inferred via a vast array of technologies (cookies, web bugs, search engines, user-supplied application data, log data) is difficult. Yet many users would like the convenience of chatting, posting, gaming, and otherwise participating in all their multiple identities or personas without the cognitive burden of preventing information leakage between them.
Firefox already has several features that enable users to manage contextual identities. There is a profile manager that allows users to have multiple sets of cookies, bookmarks, addons, and anything else in local storage . Unfortunately it's too much work for people . There's also Private Browsing Mode , which is a great first step but doesn't address the whole problem space.
We need to understand what people really want before we can create software to serve them. It's not about how people can operate our software, but rather how the software can operate as people expect. A large problem with complex systems like the Web is that peoples' expectations of how their identity and data is treated do not match up to reality.
This project aims to discover exactly what people expect and identify ways to help the browser close this gap between what they want and how the web works.
This project will take three phases and produce clearly thought out revisions to Firefox and perhaps the web platform and identity-related efforts at Mozilla.
- Principal Investigator
- Tanvi Vyas
Phase I: Problem Definition
The Firefox Vision Statement says, "People seek to regain more control over their online lives and expect more nuanced and contextual relationships with other people, websites and applications -- to share what they want about themselves on their own terms."
- Relationship to Manifesto
- This project is core to the values held by Mozilla. The underlying goal of this project is for users to gain sovereignty over their personal information, first by enabling them to inspect their data holistically, then allowing them to curate it to fit the desired contextual identities.
- Hypothesis and Estimated Outcome
- Problem statement: We suspect there are already common techniques for managing contextual identities, but have not catalogued or quantified them. Criteria for success: Design and run user studies for quantifying these common techniques.
- Research plan
- What kind of investigation is necessary and what resources are needed.
Phase II: Research and Study
- Catalog of Related Work
- other work in this area.
- User Research Papers
- What we learn from studying our users.
- Design Requirements / Use Cases
- things we need to make our products live up to users' expectations.
Phase III: Implementation
Check out https://wiki.mozilla.org/Security/Contextual_Identity_Project/Containers for the latest!
Deliverables: (list is a work in progress)
|Pr||Feature||Team||Stage||Directly Responsible Individual||Theme|
|P1||Cookie tagging||Security||Development||`||Contextual Identity|
|P1||Multiple Cookie Jars||Privacy||Draft||Sid Stamm||Contextual Identity|
|P2||Improve Site identity button to show more about how you've interacted with a site in the past||`||Draft||`||Contextual Identity|
|P2||Require master password when using Sync to protect locally stored passwords||`||Draft||`||Contextual Identity|
|P2||Improve the UX on master password so that it is comfortable to be used by default||`||Draft||`||Contextual Identity|
|P2||Per-window Private Browsing||`||Landed||Josh Matthews||Contextual Identity|
|P3||Geolocation: Let the user pick where they are or lie using a map or other UI||`||Draft||`||Contextual Identity|
|P3||Plugin awareness of users privacy prefs||`||Draft||`||Contextual Identity|