Activity 4.1: Improve how circuits are displayed to the user
Problem we are trying to solve:
Many users expect the guard node to change when asking for a new circuit.
There is nothing on circuit display that tells the user the first node is a guard, what guards are, and how it works when Tor creates new circuits for the user.
If no other condition, guards will only change for a client every 3 months. Even if the user pick 'new identity' the guard should stay the same.
First of all we need to update the Tor Browser User Manual to have an explanation about how the guard selection works, it should be in this section: https://tb-manual.torproject.org/en-US/managing-identities.html
All the solutions below will link to the manual, this will allow us to send the user to a place with more information. And not necessary have to explain everything in the display or UI.
Managing users expectations: I believe that for now we are better served if we managed user expectation about what will change when they request such change, not in the circuit display. The current places where the user will be asking for a new circuit are:
1 - Tor Button -> New Identity At this action, Tor Browser will open a confirmation window (see screenshot: https://trac.torproject.org/projects/tor/attachment/ticket/24309/new_identity_confirmation_window.png) We should change the text here to set the right expectation about guards.
2 - Tor Button -> New Tor Circuit for this Site Could we have a tool tip here that helps user know that guards won't change.
Circuit display UI: keep IP and country name. Add 'guard' to the first node - guard should be a link to manual page. Add a link at the bottom for "Learn More" which should also link to the manual page.
I am suggesting 2 links to the manual as an intentional effort of over communicating to the user.
Things I would like to test
- User understanding of Tor Browser User Manual explanation about how guards selection works.
- Did we managed to set the right expectation for user? Test it with New Identity flow and New Tor Circuit flow.
- Do we need both links on circuit display?
Things I am suggesting to be left for a second iteration or not doing and why
- Suggesting to not add functionality to let user pick a different guard. I think such a feature should be deeply discussed and done as a project of it own. Not as part of this solution.
- Suggestion to leave for a second iteration making the IP addresses linkable to more information about the relay (from atlas).
- Suggestion to not use JS for the more information on the relay feature mentioned above. We should never jeopardize the user safety for 'better UX'. We should be able to deliver better UX within the limitations we have by building a product that has security by design in mind.
Tickets related to the problem:
- Ticket: https://trac.torproject.org/projects/tor/ticket/16665
- Circuit visualizer needs a cue about guards
This is the main ticket that contains lots of information describing the user problem in the comments posted. Would recommend reading it fully for better understanding.
- Ticket: https://trac.torproject.org/projects/tor/ticket/15239
- Add hyperlinks in tor circuit display to show "more info" about relays
This ticket has some suggestions for displaying more information about the relays (using atlas). We are taking into consideration these suggestions in the hypothesis above.
- Ticket: https://trac.torproject.org/projects/tor/ticket/20805
- Circuit display does not honor or use the UI font.
This ticket is more a bug then a UX issue. Although we should make sure that we set a rule of what font to use in the display, and fall back options. Let's make sure we are aligning this with: Activity 1.2: Make sure Firefox Photon UI works with our style guidelines -- on UX Team roadmap (for March 2018)