]> gitweb.stoutner.com Git - PrivacyBrowserAndroid.git/blob - app/src/main/assets/en/guide_user_agent_light.html
3616b7e7285618ce92ece20fba3d41b320ea1f50
[PrivacyBrowserAndroid.git] / app / src / main / assets / en / guide_user_agent_light.html
1 <!--
2   Copyright © 2016-2018 Soren Stoutner <soren@stoutner.com>.
3
4   This file is part of Privacy Browser <https://www.stoutner.com/privacy-browser>.
5
6   Privacy Browser is free software: you can redistribute it and/or modify
7   it under the terms of the GNU General Public License as published by
8   the Free Software Foundation, either version 3 of the License, or
9   (at your option) any later version.
10
11   Privacy Browser is distributed in the hope that it will be useful,
12   but WITHOUT ANY WARRANTY; without even the implied warranty of
13   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14   GNU General Public License for more details.
15
16   You should have received a copy of the GNU General Public License
17   along with Privacy Browser.  If not, see <http://www.gnu.org/licenses/>. -->
18
19 <html>
20     <head>
21         <meta charset="UTF-8">
22
23         <link rel="stylesheet" href="../css/light_theme.css">
24     </head>
25
26     <body>
27         <h3><img class="title" src="../shared_images/devices_other_blue_light.png"> Browser Identification</h3>
28
29         <p>When web browsers connect to websites, they send a user agent, which identifies the browser and the rendering capabilities it possesses.
30             The web server can use this information to decide which version of the website to send to the browser.
31             For example, many websites have different versions for desktop and mobile browsers.</p>
32
33         <p>By default, Privacy Browser uses its own user agent, which is PrivacyBrowser/1.0. This sends a minimum of information to the web server.
34             Because web servers do not recognize this to be a mobile user agent, they typically display the desktop version of the site.</p>
35
36         <p>By comparison, WebView’s default user agent divulges a large amount of information about the hardware and software of the device.
37             On the <strong>Settings</strong> screen, selecting <strong>WebView Default</strong> as the <strong>User agent</strong> displays the user agent that will be sent.
38             The screenshot below shows a Pixel 2 XL running Android 8.1.0 with Android System WebView 67.0.3396.87 installed.
39             Most web servers will recognize this as a mobile browser and will display the mobile version of the site if they have one.</p>
40
41         <img class="center21" src="images/user_agent.png">
42
43         <p>There is enough information in the user agent that sometimes only a few visitors to a website will be the same.
44             If the user agent is combined with another piece of non-unique identifying information, often it results in a unique fingerprint.
45             The Electronic Frontier Foundation created a tool called <a href="https://panopticlick.eff.org/">Panopticlick</a> to demonstrate how much information can be gleaned from these sources.
46             If this test is run with JavaScript enabled the amount of information that is disclosed increases greatly.
47             <a href="https://www.browserleaks.com">Browser Leaks</a> and <a href="https://amiunique.org/">Am I Unique</a> are also good sources of information on this topic.</p>
48
49         <img class="center" src="images/panopticlick.png">
50
51         <p>There are several preset user agents that match common browsers and operating systems. For browser fingerprinting purposes, anything that is rare is easier to track.
52             If Privacy Browser becomes common and many people use PrivacyBrowser/1.0 as their user agent, it will be a good choice for privacy.
53             Firefox or Chrome are the most common user agents, but they auto-update and their version numbers change so quickly that it is likely the user agents included in Privacy Browser
54             will often be out of step with the majority of user agents in the server logs.</p>
55
56         <p>Some websites <a href="https://www.stoutner.com/user-agent-problems/">do not function correctly</a> if they do not recognize the user agent.
57             Using domain settings to set the user agent to <strong>WebView Default</strong>, or another user agent that is commonly recognized, usually resolves the problem.
58             Android’s WebView does not allow the user agent to be blank. If it is, WebView simply sends the default user agent to the server.</p>
59     </body>
60 </html>