npmauto: bump urijs from 1.19.6 to 1.19.7 in /chromium (#20107)
[https-everywhere.git] / docs / en_US / faq.md
blob1a805b5bcf53c42cd464195decf9961354b8d5c1
1 ## HTTPS Everywhere FAQ
3 This page answers frequently-asked questions about EFF's [HTTPS
4 Everywhere](https://www.eff.org/https-everywhere) project. If your question
5 isn't answered below, you can try the resources [listed
6 here](https://www.eff.org/https-everywhere/development).
8 *   [What if HTTPS Everywhere breaks some site that I
9     use?](#what-if-https-everywhere-breaks-some-site-that-i-use)
10 *   [Why is HTTPS Everywhere preventing me from joining this hotel/school/other
11     wireless
12     network?](#why-is-https-everywhere-preventing-me-from-joining-this-hotelschoolother-wireless-network)
13 *   [Will there be a version of HTTPS Everywhere for IE, Safari, or some other
14     browser?](#will-there-be-a-version-of-https-everywhere-for-ie-safari-or-some-other-browser)
15 *   [Why use a allowlist of sites that support HTTPS? Why can't you try to use
16     HTTPS for every last site, and only fall back to HTTP if it isn't
17     available?](#why-use-a-allowlist-of-sites-that-support-https-why-cant-you-try-to-use-https-for-every-last-site-and-only-fall-back-to-http-if-it-isnt-available)
18 *   [How do I get rid of/move the HTTPS Everywhere button in the
19     toolbar?](#how-do-i-get-rid-ofmove-the-https-everywhere-button-in-the-toolbar)
20 *   [When does HTTPS Everywhere protect me? When does it not protect
21     me?](#when-does-https-everywhere-protect-me-when-does-it-not-protect-me)
22 *   [What does HTTPS Everywhere protect me
23     against?](#what-does-https-everywhere-protect-me-against)
24 *   [How do I get support for an additional site in HTTPS
25     Everywhere?](#how-do-i-get-support-for-an-additional-site-in-https-everywhere)
26 *   [What if the site doesn't support HTTPS, or only supports it for some
27     activities, like entering credit card
28     information?](#what-if-the-site-doesnt-support-https-or-only-supports-it-for-some-activities-like-entering-credit-card-information)
29 *   [Isn't it more expensive or slower for a site to support HTTPS compared to
30     regular
31     HTTP?](#isnt-it-more-expensive-or-slower-for-a-site-to-support-https-compared-to-regular-http)
32 *   [Why should I use HTTPS Everywhere instead of just typing https:// at the
33     beginning of site
34     names?](#why-should-i-use-https-everywhere-instead-of-just-typing-https-at-the-beginning-of-site-names)
35 *   [Why does HTTPS Everywhere include rules for sites like PayPal that already
36     require HTTPS on all their
37     pages?](#why-does-https-everywhere-include-rules-for-sites-like-paypal-that-already-require-https-on-all-their-pages)
38 *   [What do the different colors for rulesets in the Firefox toolbar menu
39     mean?](#what-do-the-different-colors-for-rulesets-in-the-firefox-toolbar-menu-mean)
40 *   [What do the different colors of the HTTPS Everywhere icon
41     mean?](#what-do-the-different-colors-of-the-https-everywhere-icon-mean)
42 *   [I'm having a problem installing the browser
43     extension.](#im-having-a-problem-installing-the-browser-extension.)
44 *   [How do I uninstall/remove HTTPS
45     Everywhere?](#how-do-i-uninstallremove-https-everywhere)
46 *   [How do I add my own site to HTTPS
47     Everywhere?](#how-do-i-add-my-own-site-to-https-everywhere)
48 *   [Can I help translate HTTPS Everywhere into my own
49     language?](#can-i-help-translate-https-everywhere-into-my-own-language)
51 ### [What if HTTPS Everywhere breaks some site that I use?](#what-if-https-everywhere-breaks-some-site-that-i-use)
53 This is occasionally possible because of inconsistent support for HTTPS on
54 sites (e.g., when a site seems to support HTTPS access but makes a few,
55 unpredictable, parts of the site unavailable in HTTPS). If you [report the
56 problem to us](https://github.com/EFForg/https-everywhere/issues), we can try
57 to fix it. In the meantime, you can disable the rule affecting that particular
58 site in your own copy of HTTPS Everywhere by clicking on the HTTPS Everywhere
59 toolbar button and unchecking the rule for that site.
61 You can also report the problem to the site, since they have the power to fix
62 it!
64 ### [Why is HTTPS Everywhere preventing me from joining this hotel/school/other wireless network?](#why-is-https-everywhere-preventing-me-from-joining-this-hotelschoolother-wireless-network)
66 Some wireless networks hijack your HTTP connections when you first join them,
67 in order to demand authentication or simply to try to make you agree to terms
68 of use. HTTPS pages are protected against this type of hijacking, which is as
69 it should be. If you go to a website that isn't protected by HTTPS Everywhere
70 or by HSTS (currently, example.com is one such site), that will allow your
71 connection to be captured and redirected to the authentication or terms of use
72 page.
74 ### [Will there be a version of HTTPS Everywhere for IE, Safari, or some other browser?](#will-there-be-a-version-of-https-everywhere-for-ie-safari-or-some-other-browser)
76 As of early 2012, the Safari extension API does not offer a way to perform
77 secure rewriting of http requests to https. But if you happen to know a way to
78 perform secure request rewriting in these browsers, feel free to let us know at
79 https-everywhere at EFF.org (but note that modifying document.location or
80 window.location in JavaScript is not secure).
82 ### [Why use a allowlist of sites that support HTTPS? Why can't you try to use HTTPS for every last site, and only fall back to HTTP if it isn't available?](#why-use-a-allowlist-of-sites-that-support-https-why-cant-you-try-to-use-https-for-every-last-site-and-only-fall-back-to-http-if-it-isnt-available)
84 There are several problems with the idea of trying to automatically detect
85 HTTPS on every site. There is no guarantee that sites are going to give the
86 same response via HTTPS that they give via HTTP. Also, it's not possible to
87 test for HTTPS in real time without introducing security vulnerabilities (What
88 should the extension do if the HTTPS connection attempt fails? Falling back to
89 insecure HTTP isn't safe). And in some cases, HTTPS Everywhere has to perform
90 quite complicated transformations on URIs — for example until recently the
91 Wikipedia rule had to turn an address like
92 `http://en.wikipedia.org/wiki/World_Wide_Web` into one like
93 `https://secure.wikimedia.org/wikipedia/en/wiki/World_Wide_Web` because HTTPS
94 was not available on Wikipedia's usual domains.
96 ### [How do I get rid of/move the HTTPS Everywhere button in the toolbar?](#how-do-i-get-rid-ofmove-the-https-everywhere-button-in-the-toolbar)
98 The HTTPS Everywhere button is useful because it allows you to see, and
99 disable, a ruleset if it happens to be causing problems with a site. But if
100 you'd rather disable it, go to View->Toolbars->Customize, and drag the button
101 out of the toolbar into the Addons bar at the bottom of the page. Then you can
102 hide the Addons bar. (In theory you should be able to drag it into the tray of
103 available icons too, but that may trigger [this
104 bug](https://trac.torproject.org/projects/tor/ticket/6276).
106 ### [When does HTTPS Everywhere protect me? When does it not protect me?](#when-does-https-everywhere-protect-me-when-does-it-not-protect-me)
108 HTTPS Everywhere protects you only when you are using _encrypted portions of
109 supported web sites_. On a supported site, it will automatically activate HTTPS
110 encryption for all known supported parts of the site (for some sites, this
111 might be only a portion of the entire site). For example, if your web mail
112 provider does not support HTTPS at all, HTTPS Everywhere can't make your access
113 to your web mail secure. Similarly, if a site allows HTTPS for text but not
114 images, someone might be able to see which images your browser loads and guess
115 what you're accessing.
117 HTTPS Everywhere depends entirely on the security features of the individual
118 web sites that you use; it _activates_ those security features, but it can't
119 _create_ them if they don't already exist. If you use a site not supported by
120 HTTPS Everywhere or a site that provides some information in an insecure way,
121 HTTPS Everywhere can't provide additional protection for your use of that site.
122 Please remember to check that a particular site's security is working to the
123 level you expect before sending or receiving confidential information,
124 including passwords.
126 One way to determine what level of protection you're getting when using a
127 particular site is to use a packet-sniffing tool like
128 [Wireshark](https://www.wireshark.org/) to record your own communications with
129 the site. The resulting view of your communications is about the same as what
130 an eavesdropper on your wifi network or at your ISP would see. This way, you
131 can determine whether some or all of your communications would be protected;
132 however, it may be quite time-consuming to make sense of the Wireshark output
133 with enough care to get a definitive answer.
135 You can also turn on the "Block all HTTP requests" feature for added
136 protection. Instead of loading insecure pages or images, HTTPS Everywhere will
137 block them outright.
139 ### [What does HTTPS Everywhere protect me against?](#what-does-https-everywhere-protect-me-against)
141 On supported parts of supported sites, HTTPS Everywhere enables the sites'
142 HTTPS protection which can protect you against eavesdropping and tampering with
143 the contents of the site or with the information you send to the site. Ideally,
144 this provides some protection against an attacker learning the content of the
145 information flowing in each direction — for instance, the text of e-mail
146 messages you send or receive through a webmail site, the products you browse or
147 purchase on an e-commerce site, or the particular articles you read on a
148 reference site.
150 However, HTTPS Everywhere **does not conceal the identities of the sites you
151 access**, the amount of time you spend using them, or the amount of information
152 you upload or download from a particular site. For example, if you access
153 `http://www.eff.org/issues/nsa-spying` and HTTPS Everywhere rewrites it to
154 `https://www.eff.org/issues/nsa-spying`, an eavesdropper can still trivially
155 recognize that you are accessing www.eff.org (but might not know which issue
156 you are reading about). In general, the entire hostname part of the URL remains
157 exposed to the eavesdropper because this must be sent repeatedly in unencrypted
158 form while setting up the connection. Another way of saying this is that HTTPS
159 was never designed to conceal the identity of the sites that you visit.
161 Researchers have also shown that it may be possible for someone to figure out
162 more about what you're doing on a site merely through careful observation of
163 the amount of data you upload and download, or the timing patterns of your use
164 of the site. A simple example is that if the site only has one page of a
165 certain total size, anyone downloading exactly that much data from the site is
166 probably accessing that page.
168 If you want to protect yourself against monitoring of the sites you visit,
169 consider using HTTPS Everywhere together with software like
170 [Tor](https://www.torproject.org/).
172 ### [How do I get support for an additional site in HTTPS Everywhere?](#how-do-i-get-support-for-an-additional-site-in-https-everywhere)
174 You can learn [how to write
175 rules](https://www.eff.org/https-everywhere/rulesets) that teach HTTPS
176 Everywhere to support new sites. You can install these rules in your own
177 browser or send them to us for possible inclusion in the official version.
179 ### [What if the site doesn't support HTTPS, or only supports it for some activities, like entering credit card information?](#what-if-the-site-doesnt-support-https-or-only-supports-it-for-some-activities-like-entering-credit-card-information)
181 You could try to contact the site and point out that using HTTPS for all site
182 features is an increasingly common practice nowadays and protects users (and
183 sites) against a variety of Internet attacks. For instance, it defends against
184 the ability of other people on a wifi network to spy on your use of the site or
185 even take over your account. You can also point out that credit card numbers
186 aren't the only information you consider private or sensitive.
188 Sites like Google, Twitter, and Facebook now support HTTPS for non-financial
189 information — for general privacy and security reasons.
191 ### [Isn't it more expensive or slower for a site to support HTTPS compared to regular HTTP?](#isnt-it-more-expensive-or-slower-for-a-site-to-support-https-compared-to-regular-http)
193 It can be, but some sites have been pleasantly surprised to see how practical
194 it can be. Also, experts at Google are currently implementing several
195 enhancements to the TLS protocol that make HTTPS dramatically faster; if these
196 enhancements are added to the standard soon, the speed gap between the two
197 should almost disappear. See [Adam Langley's description of the HTTPS
198 deployment
199 situation](https://www.imperialviolet.org/2010/06/25/overclocking-ssl.html) for
200 more details on these issues. Notably, Langley states: "In order to [enable
201 HTTPS by default for Gmail] we had to deploy no additional machines and no
202 special hardware. On our production frontend machines, SSL/TLS accounts for
203 less than 1% of the CPU load, less than 10KB of memory per connection and less
204 than 2% of network overhead."
206 It used to be expensive to purchase a certificate for HTTPS usage, but they can
207 now be obtained for free from [Let's Encrypt](https://letsencrypt.org/) as
208 well.
210 ### [Why should I use HTTPS Everywhere instead of just typing https:// at the beginning of site names?](#why-should-i-use-https-everywhere-instead-of-just-typing-https-at-the-beginning-of-site-names)
212 Even if you normally type https://, HTTPS Everywhere might protect you if you
213 occasionally forget. Also, it can rewrite other people's links that you follow.
214 For instance, if you click on a link to
215 `http://en.wikipedia.org/wiki/EFF_Pioneer_Award`, HTTPS Everywhere will
216 automatically rewrite the link to
217 `https://en.wikimedia.org/wikipedia/en/wiki/EFF_Pioneer_Award`. Thus, you might
218 get some protection even if you wouldn't have noticed that the target site is
219 available in HTTPS.
221 ### [Why does HTTPS Everywhere include rules for sites like PayPal that already require HTTPS on all their pages?](#why-does-https-everywhere-include-rules-for-sites-like-paypal-that-already-require-https-on-all-their-pages)
223 HTTPS Everywhere, like the [HSTS
224 spec](https://en.wikipedia.org/wiki/HTTP_Strict_Transport_Security), tries to
225 address an attack called [SSL stripping](https://moxie.org/software/sslstrip/).
226 Users are only protected against the SSL stripping attack if their browsers
227 don't even _try_ to connect to the HTTP version of the site — even if the site
228 would have redirected them to the HTTPS version. With HTTPS Everywhere, the
229 browser won't even attempt the insecure HTTP connection, even if that's what
230 you ask it to do. (Note that HTTPS Everywhere currently does not include a
231 comprehensive list of such sites, which are mainly financial institutions.)
233 ### [What do the different colors for rulesets in the Firefox toolbar menu mean?](#what-do-the-different-colors-for-rulesets-in-the-firefox-toolbar-menu-mean)
235 The colors are:
237 Dark Green: ruleset was active in loading the resources in the current page.
239 Light Green: ruleset was ready to prevent HTTP loads in the current page, but
240 everything that the ruleset would have covered was loaded over HTTPS anyway (in
241 the code, light green is called a "moot rule").
243 Dark Brown or Clockwise Red Arrow: broken rule -- the ruleset is active but the
244 server is redirecting at least some URLs back from HTTPS to HTTP.
246 Gray: the ruleset is disabled.
248 ### [What do the different colors of the HTTPS Everywhere icon mean?](#what-do-the-different-colors-of-the-https-everywhere-icon-mean)
250 The colors are:
252 Light Blue: HTTPS Everywhere is enabled.
254 Dark Blue: HTTPS Everywhere is both enabled and active in loading resources in
255 the current page.
257 Red: All unencrypted requests will be blocked by HTTPS Everywhere.
259 Gray: HTTPS Everywhere is disabled.
261 ### [I'm having a problem installing the browser extension.](#im-having-a-problem-installing-the-browser-extension.)
263 Some people report that installing HTTPS Everywhere gives them the error: "The
264 addon could not be downloaded because of a connection failure on www.eff.org."
265 This may be caused by Avast anti-virus, which blocks installation of browser
266 extensions. You may be able to [install from addons.mozilla.org
267 instead](https://addons.mozilla.org/en-US/firefox/addon/https-everywhere/).
269 ### [How do I uninstall/remove HTTPS Everywhere?](#how-do-i-uninstallremove-https-everywhere)
271 In Firefox: Click the menu button in the top right of the window at the end of
272 the toolbar (it looks like three horizontal lines), and then click "Add-ons"
273 (it looks like a puzzle piece). Scroll until you see HTTPS Everywhere, and then
274 click the "Remove" button all the way on the right. You can then safely close
275 the Add-ons tab.
277 In Chrome: Click the menu button in the top right of the window at the end of
278 the toolbar (it looks like three horizontal lines), and then click "Settings"
279 near the bottom. On the left, click "Extensions". Scroll until you see HTTPS
280 Everywhere, and then click the trash can icon on the right, and then click
281 "Remove" to confirm removal. You can then safely close the Settings tab.
283 ### [How do I add my own site to HTTPS Everywhere?](#how-do-i-add-my-own-site-to-https-everywhere)
285 We're excited that you want your site in HTTPS Everywhere! However, remember
286 that not everyone who visits your site has our extension installed. If you run
287 a web site, you can make it default to HTTPS for everyone, not just HTTPS
288 Everywhere users. And it's less work! The steps you should take, in order, are:
290 1.  Set up a
291     [redirect](https://www.sslshopper.com/apache-redirect-http-to-https.html)
292     from HTTP to HTTPS on your site.
293 2.  [Add the Strict-Transport-Security (HSTS) header on your
294     site.](https://raymii.org/s/tutorials/HTTP_Strict_Transport_Security_for_Apache_NGINX_and_Lighttpd.html)
295 3.  [Add your site to the HSTS Preload list.](https://hstspreload.appspot.com/)
297 These steps will give your site much better protection than adding it to HTTPS
298 Everywhere. Generally speaking, once you are done, there is no need to add your
299 site to HTTPS Everywhere. However, if you would still like to, please follow
300 the [instructions on writing
301 rulesets](https://eff.org/https-everywhere/rulesets), and indicate that you are
302 the author of the web site when you submit your pull request.
304 ### [Can I help translate HTTPS Everywhere into my own language? ](#can-i-help-translate-https-everywhere-into-my-own-language)
306 Yes! We use the Tor Project's Transifex account for translations, please sign
307 up to help translate at
308 [https://www.transifex.com/otf/torproject](https://www.transifex.com/otf/torproject).