4 <meta http-equiv=
"content-type" content=
"text/html; charset=utf-8" />
5 <title>Email Self-Defense - a guide to fighting surveillance with GnuPG
7 <meta name=
"keywords" content=
"GnuPG, GPG, openpgp, surveillance, privacy,
8 email, security, GnuPG2" />
9 <meta name=
"description" content=
"Email surveillance violates our fundamental
10 rights and makes free speech risky. This guide will teach you email
11 self-defense in 40 minutes with GnuPG." />
12 <meta name=
"viewport" content=
"width=device-width, initial-scale=1" />
13 <link rel=
"stylesheet" href=
"../static/css/main.css" />
14 <link rel=
"shortcut icon"
15 href=
"../static/img/favicon.ico" />
19 <!--<div style="text-align: center; padding: 2.5px; background-color: #a94442; color:#fcf8e3;"><p>Due to Enigmail's PGP functionality being migrated into Icedove and Thunderbird, steps 2 and 3 of the guide are currently out of date.</p><p> Thank you for your patience while we're working on a new round of updates.</p></div>-->
21 <!-- PLACE FUNDRAISER MODAL WINDOW HERE -->
23 <!-- Begin fsf-modal-window-elem campaign element -->
24 <link type=
"text/css" rel=
"stylesheet" href=
"https://static.fsf.org/nosvn/fonts/fa/css/font-awesome.min.css">
26 #fsf-modal-window-elem-container div {
27 -webkit-box-sizing: border-box;
28 -moz-box-sizing: border-box;
29 box-sizing: border-box;
32 @media screen and (min-width:
700px) {
34 #fsf-modal-window-elem-outer-v-center {
40 #fsf-modal-window-elem-inner-v-center {
42 vertical-align: middle;
45 #fsf-modal-window-elem {
51 #fsf-modal-window-elem-right-column {
58 #fsf-modal-window-elem-left-column {
64 #fsf-modal-window-elem-text {
69 @media screen and (max-width:
699px) {
71 #fsf-modal-window-elem {
73 -ms-box-orient: horizontal;
78 display: -webkit-flex;
81 -webkit-flex-flow: row wrap;
85 #fsf-modal-window-elem {
93 #fsf-modal-window-elem-right-column {
98 #fsf-modal-window-elem-left-column {
103 #fsf-modal-window-elem-text {
108 @media screen and (max-width:
360px) {
110 font-size:
25px !important;
114 #fsf-modal-window-elem-container {
122 background-color: rgba(
0,
0,
0,
0.8);
127 #fsf-modal-window-elem a, a:active, a:focus {
132 #fsf-modal-window-elem {
137 border-color: #
3a5b2c;
139 box-shadow:
0px
0px
10px #
111111;
140 background-color: #fdf7b9;
143 #fsf-modal-window-elem-header {
147 #fsf-modal-window-elem-header h2 {
148 font-family: sans-serif,
"Helvetica",Arial;
152 /* text-shadow:
0px
0px
8px #
00378c; */
153 padding-bottom:
20px;
159 #fsf-modal-window-elem-close-button {
169 #fsf-modal-window-elem-close-button:hover {
173 #fsf-modal-window-elem-right-column {
175 -webkit-user-select: none;
176 -moz-user-select: none;
177 -ms-user-select: none;
181 #fsf-modal-window-elem-buttons div {
183 line-height:
53.333px;
189 #fsf-modal-window-elem-buttons {
192 #fsf-modal-window-elem-buttons a {
198 text-decoration: none;
199 font-family: sans-serif,
"Helvetica",Arial;
203 #fsf-modal-window-elem-maybe-later {
208 #fsf-modal-window-elem-maybe-later a {
211 text-decoration: none;
214 font-family: sans-serif,
"Helvetica",Arial;
218 #fsf-modal-window-elem-text {
221 #fsf-modal-window-elem-text a {
224 text-decoration: none;
227 #fsf-modal-window-elem-text a:hover {
231 #fsf-modal-window-elem-text a:focus {
235 #fsf-modal-window-elem-text a:active {
239 #fsf-modal-window-elem-text p {
240 font-family: sans-serif,
"Helvetica",Arial;
243 margin:
0px
0px
10px
0px;
246 /* text-shadow:
0px
0px
8px #
004067;*/
249 <div id=
"fsf-modal-window-elem-container" style=
"display: none;">
250 <div id=
"fsf-modal-window-elem-outer-v-center">
251 <div id=
"fsf-modal-window-elem-inner-v-center">
252 <div id=
"fsf-modal-window-elem">
253 <div id=
"fsf-modal-window-elem-header">
254 <div id=
"fsf-modal-window-elem-close-button" onclick=
"/* LibreJS: script accepted. */
255 //fsfModalWindowElemDontShowForAWhile();">
256 <i class=
"fa fa-close">
</i>
258 <h2>Move freedom forward with a donation to the FSF!
</h2>
260 <div id=
"fsf-modal-window-elem-left-column">
261 <div id=
"fsf-modal-window-elem-text">
265 Without free software, we cannot and will not have a free society.
<b>We rely on donations from people like you, who use and appreciate our work.
</b> Fuel our journey forward, and help us reach our ultimate destination: full software freedom.
271 Support us with a donation today, and help us maximize our summer fundraising goal by donating before July
19 – Every contribution will be matched dollar for dollar by our generous donors up to USD
11,
000.
275 <p><span id=
"fsf-modal-window-text-link"><a href=
"https://www.fsf.org/appeal?mtm_campaign=summer21&mtm_kwd=learn-more&mtm_source=modal">Read more
</a> |
<a href=
"https://my.fsf.org/join?mtm_campaign=summer21&mtm_source=modal">Join
</a></span></p>
279 <div id=
"fsf-modal-window-elem-right-column">
280 <div id=
"fsf-modal-window-elem-buttons" style=
"border-radius: 20px; box-shadow: 0px 0px 5px #0c2b2b;">
281 <div style=
"background-color:#8c9e1e; border-top-right-radius: 20px; border-top-left-radius: 20px;">
282 <a style=
"text-shadow: 0px 0px 6px #d5e471;" href=
"https://my.fsf.org/join?mtm_campaign=summer21&mtm_source=modal" onclick=
"/* LibreJS: script accepted. */
283 //fsfModalWindowElemFollowedLink();"><i class=
"fa fa-check-circle"> </i>Join
</a>
286 <div style=
"background-color:#fdf7b9">
287 <a href=
"https://my.fsf.org/renew?mtm_campaign=summer21&mtm_source=modal" onclick=
"/* LibreJS: script accepted. */
288 //fsfModalWindowElemFollowedLink();"><i class=
"fa fa-refresh"> </i>Renew
</a>
291 <div style=
"background-color:#3a5b2c; border-bottom-right-radius: 20px; border-bottom-left-radius: 20px; margin-bottom: 2px">
292 <a style=
"text-shadow: 0px 0px 6px #c2d831;" href=
"https://my.fsf.org/donate?mtm_campaign=summer21&mtm_source=modal" onclick=
"/* LibreJS: script accepted. */
293 //fsfModalWindowElemFollowedLink();"><i class=
"fa fa-money"> </i>Donate
</a>
300 <script>/* LibreJS: script accepted. */
301 // @license magnet:?xt=urn:btih:
1f739d935676111cfff4b4693e3816e664797050&dn=gpl-
3.0.txt GPL-
3.0
303 // Licensed GPLv3-or-later by Andrew Engelbrecht
305 var startTime, endTime, switchTextTime;
307 startTime = new Date('
2021-
06-
15T04:
00:
00Z');
308 switchTextTime = new Date('
2021-
08-
17T04:
00:
00Z');
309 // endTime is unused.
310 endTime = new Date('
2021-
08-
17T04:
00:
00Z');
312 // Possibly switch the text that is displayed in the modal window, depending
313 // upon the current date.
314 function fsfModalWindowElemMaybeSwitchText () {
319 if (now.getTime() < switchTextTime.getTime()) {
320 return; // Do not switch the text
324 document.getElementById(
"fsf-modal-window-elem-text").innerHTML =' \
326 <p>Without free software, we cannot and will not have a free society.
<b>We rely on donations from people like you, who use and appreciate our work.<\/b
> Fuel our journey forward, and help us reach our ultimate destination: full software freedom.<\/p
><p>Support us with a donation today, and help us maximize our summer fundraising goal by donating before July
19 \&ndash\; Every contribution will be matched dollar for dollar by our generous donors up to USD
11,
000.<\/p
> \
328 <p><span id=
"fsf-modal-window-text-link"><a href=
"https://www.fsf.org/appeal?mtm_campaign=summer21&mtm_kwd=learn-more&mtm_source=modal">Read more<\/a
> |
<a href=
"https://my.fsf.org/join?mtm_campaign=summer21&mtm_source=modal">Join<\/a
><\/span
><\/p
>';
331 // Show fsf-modal-window-elem if it has not been previously closed by
332 // the user, nor recently hit
"maybe later",
333 // and the campaign is still happening
334 function fsfModalWindowElemMaybeShow () {
336 var pattern, noShowFsfModalWindowElementP, now;
338 // See if cookie says not to show element
339 pattern = /showFsfSpring2021FundraiserModalWindowElementP\s*=\s*false/;
340 noShowFsfModalWindowElementP = pattern.test(document.cookie);
342 //// Uncomment here to enable modal window hiding
343 if (!noShowFsfModalWindowElementP) {
344 setTimeout(function () {
345 // display the element
346 document.getElementById(
"fsf-modal-window-elem-container").style.
display=
"block";
351 // Call this first to set the proper text.
352 fsfModalWindowElemMaybeSwitchText();
353 // Check if appeal is the url.
354 if (window.location.href.indexOf(
"appeal") == -
1) {
355 // Call this right away to avoid flicker.
356 fsfModalWindowElemMaybeShow();
359 // Get the time `plusDays` in the future.
360 // This can be a fraction.
361 function daysInFuture (plusDays) {
365 future = new Date(now.getTime() + Math.floor(
1000 *
60 *
60 *
24 * plusDays));
366 return future.toGMTString();
369 // Hide the fsf-modal-window-elem
370 function fsfModalWindowElemHide () {
371 document.getElementById(
"fsf-modal-window-elem-container").style.
display=
"none";
374 // Optionally hide elem and set a cookie to keep the fsf-modal-window-elem hidden for the next `forDays`.
375 function fsfModalWindowElemDontShowForDays (forDays, hideNow) {
376 if (hideNow === true) {
377 fsfModalWindowElemHide();
379 //document.cookie =
"showFsfSpring2021FundraiserModalWindowElementP=false; path=/; domain=.fsf.org; expires=" + daysInFuture(forDays);
380 document.cookie =
"showFsfSpring2021FundraiserModalWindowElementP=false; path=/; SameSite=Strict; Secure; expires=" + daysInFuture(forDays);
383 // Hide the element from now to two weeks after closing it
384 function fsfModalWindowElemDontShowForAWhile () {
385 fsfModalWindowElemDontShowForDays(
7, true);
388 // Keep the element visible for now, but do not show it for a while
389 function fsfModalWindowElemFollowedLink () {
390 fsfModalWindowElemDontShowForDays(
14, false);
393 // Check if visiting appeal page.
394 if (window.location.href.indexOf(
"appeal")
> -
1) {
395 fsfModalWindowElemDontShowForAWhile();
398 // Close popup if user clicks trasparent part
399 document.getElementById(
"fsf-modal-window-elem-container").addEventListener(
"click", function(event){
400 fsfModalWindowElemDontShowForAWhile();
403 // Do not close popup if clicking non-trasparent part (with the text and buttons)
404 document.getElementById(
"fsf-modal-window-elem").addEventListener(
"click", function(event){
405 event.stopPropagation();
408 // Close popup if user clicks X icon
409 document.getElementById(
"fsf-modal-window-elem-close-button").addEventListener(
"click", function(event){
410 fsfModalWindowElemDontShowForAWhile();
413 // Disable popup if user clicks one of the main buttons
414 document.getElementById(
"fsf-modal-window-elem-buttons").addEventListener(
"click", function(event){
415 fsfModalWindowElemFollowedLink();
418 // Disable popup if user clicks one of the
"Read more" link
419 document.getElementById(
"fsf-modal-window-text-link").addEventListener(
"click", function(event){
420 fsfModalWindowElemFollowedLink();
423 // Close popup if user presses escape key
424 window.addEventListener(
"keydown", function (event) {
427 fsfModalWindowElemDontShowForAWhile();
433 // @license-end
</script>
435 <!-- End fsf-modal-window-elem campaign element -->
437 <!-- ~~~~~~~~~ GnuPG Header and introduction text ~~~~~~~~~ -->
438 <header class=
"row" id=
"header"><div>
441 <h1>Email Self-Defense
</h1>
443 <!-- Language list for browsers that do not have JS enabled -->
444 <ul id=
"languages" class=
"os">
445 <!--<li><a class="current" href="/en">English - v4.0</a></li>
446 <li><a href="/cs">čeština - v4.0</a></li>
447 <li><a href="/de">Deutsch - v4.0</a></li>
448 <li><a href="/el">ελληνικά - v3.0</a></li>
449 <li><a href="/es">español - v4.0</a></li>
450 <li><a href="/fa">فارسی - v4.0</a></li>
451 <li><a href="/fr">français - v4.0</a></li>
452 <li><a href="/it">italiano - v3.0</a></li>
453 <li><a href="/ja">日本語 - v4.0</a></li>
454 <li><a href="/pt-br">português do Brasil - v3.0</a></li>
455 <li><a href="/ro">română - v3.0</a></li>
456 <li><a href="/ru">русский - v4.0</a></li>
457 <li><a href="/sq">Shqip - v4.0</a></li>
458 <li><a href="/sv">svenska - v4.0</a></li>
459 <li><a href="/tr">Türkçe - v4.0</a></li>
460 <li><a href="/zh-hans">简体中文 - v4.0</a></li>-->
461 <li><a href=
"https://libreplanet.org/wiki/GPG_guide/Translation_Guide">
462 <strong><span style=
"color: #2F5FAA;">Translate!
</span></strong></a></li>
465 <ul id=
"menu" class=
"os">
466 <li class=
"spacer"><a href=
"index.html" class=
"current">Set up guide
</a></li>
467 <!--<li><a href="mac.html">Mac OS</a></li>-->
468 <!--<li><a href="windows.html">Windows</a></li>-->
469 <li class=
"spacer"><a href=
"workshops.html">Teach your friends
</a></li>
470 <li class=
"spacer"><a
471 href=
"https://fsf.org/share?u=https://u.fsf.org/zb&t=Email encryption for everyone via %40fsf">
473 <img src=
"../static/img/gnu-social.png" class=
"share-logo"
474 alt=
"[GNU Social]" />
475 <img src=
"../static/img/mastodon.png" class=
"share-logo"
476 alt=
"[Mastodon]" />
477 <img src=
"../static/img/reddit-alien.png" class=
"share-logo"
478 alt=
"[Reddit]" />
479 <img src=
"../static/img/hacker-news.png" class=
"share-logo"
480 alt=
"[Hacker News]" /></a></li>
483 <!-- ~~~~~~~~~ FSF Introduction ~~~~~~~~~ -->
486 <h3><a href=
"https://u.fsf.org/ys"><img
487 alt=
"Free Software Foundation"
488 src=
"../static/img/fsf-logo.png" />
491 <div class=
"fsf-emphasis">
493 <p>We fight for computer users' rights, and promote the development of free (as
494 in freedom) software. Resisting bulk surveillance is very important to us.
</p>
496 <p><strong>Please donate to support Email Self-Defense. We need to keep
497 improving it, and making more materials, for the benefit of people around
498 the world taking the first step towards protecting their privacy.
</strong></p>
503 href=
"https://crm.fsf.org/civicrm/contribute/transact?reset=1&id=14&mtm_campaign=email_self_defense&mtm_kwd=guide_donate"><img
505 src=
"../static/img/en/donate.png" /></a></p>
507 </div><!-- End #fsf-intro -->
509 <!-- ~~~~~~~~~ Guide Introduction ~~~~~~~~~ -->
512 <p><a id=
"infographic" href=
"infographic.html"><img
513 src=
"../static/img/en/infographic-button.png"
514 alt=
"View & share our infographic →" /></a>
516 <strong>Help translate this site into your language!
</strong>
518 We could use your help with
<a
519 href=
"https://libreplanet.org/wiki/GPG_guide/Translation_Guide">translating
520 our newly updated and rewritten guide
</a>.
<br>
522 This guide is also available in
<a href=
"../en/">English
</a>.
525 </div><!-- End .intro -->
526 </div></header><!-- End #header -->
528 <!-- ~~~~~~~~~ FAQ ~~~~~~~~~ -->
529 <!-- When un-commenting this section go to main.css and search
530 for /* Guide Sections Background */ then add #faq to the desired color
531 <section class="row" id="faq"><div>
532 <div class="sidebar">
540 <dt>My key expired</dt>
541 <dd>Answer coming soon.</dd>
543 <dt>Who can read encrypted messages? Who can read signed ones?</dt>
544 <dd>Answer coming soon.</dd>
546 <dt>My email program is opening at times I don't want it to open/is now my
547 default program and I don't want it to be.</dt>
548 <dd>Answer coming soon.</dd>
553 </section> --><!-- End #faq -->
555 <!-- ~~~~~~~~~ Footer ~~~~~~~~~ -->
556 <footer class=
"row" id=
"footer"><div>
559 <h4><a href=
"https://u.fsf.org/ys"><img
560 alt=
"Free Software Foundation"
561 src=
"../static/img/fsf-logo.png" /></a></h4>
563 <p>Copyright
© 2014-
2021 <a
564 href=
"https://u.fsf.org/ys">Free Software Foundation
</a>, Inc.
<a
565 href=
"https://my.fsf.org/donate/privacypolicy.html">Privacy Policy
</a>. Please
566 support our work by
<a href=
"https://u.fsf.org/yr">joining us as an associate
569 <p>The images on this page are under a
<a
570 href=
"https://creativecommons.org/licenses/by/4.0/">Creative Commons
571 Attribution
4.0 license (or later version)
</a>, and the rest of it is under
572 a
<a href=
"https://creativecommons.org/licenses/by-sa/4.0">Creative Commons
573 Attribution-ShareAlike
4.0 license (or later version)
</a>. Download the
<a
574 href=
"https://agpl.fsf.org/emailselfdefense.fsf.org/edward/CURRENT/edward.tar.gz">
575 source code of Edward reply bot
</a> by Andrew Engelbrecht
576 <andrew@engelbrecht.io
> and Josh Drake
<zamnedix@gnu.org
>,
577 available under the GNU Affero General Public License.
<a
578 href=
"https://www.gnu.org/licenses/license-list.html#OtherLicenses">Why these
581 <p>Fonts used in the guide
& infographic:
<a
582 href=
"https://www.google.com/fonts/specimen/Dosis">Dosis
</a> by Pablo
583 Impallari,
<a href=
"https://www.google.com/fonts/specimen/Signika">Signika
</a>
584 by Anna Giedry
ś,
<a
585 href=
"https://www.google.com/fonts/specimen/Archivo+Narrow">Archivo
586 Narrow
</a> by Omnibus-Type,
<a
587 href=
"https://libreplanet.org/wiki/GPG_guide/Graphics_Howto#Pitfalls">PXL-
2000</a>
588 by Florian Cramer.
</p>
590 <p>Download the
<a href=
"emailselfdefense_source.zip">source package
</a>
591 for this guide, including fonts, image source files and the text of Edward's
594 <p>This site uses the Weblabels standard for labeling
<a
595 href=
"https://www.fsf.org/campaigns/freejs">free JavaScript
</a>. View
596 the JavaScript
<a href=
"https://weblabels.fsf.org/emailselfdefense.fsf.org/"
597 rel=
"jslicense">source code and license information
</a>.
</p>
599 </div><!-- /#copyright -->
601 <p class=
"credits">Infographic and guide design by
<a rel=
"external"
602 href=
"https://jplusplus.org"><strong>Journalism++
</strong><img
603 src=
"static/img/jplusplus.png"
604 alt=
"Journalism++" /></a></p><!-- /.credits -->
605 </div></footer><!-- End #footer -->
608 <script type=
"text/javascript"
609 src=
"../static/js/jquery-1.11.0.min.js"></script>
610 <script type=
"text/javascript"
611 src=
"../static/js/scripts.js"></script>
613 <script type=
"text/javascript">
614 // @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-
2.0.txt GPL-
2.0-or-later
615 var _paq = _paq || [];
616 _paq.push([
"trackPageView"]);
617 _paq.push([
"enableLinkTracking"]);
620 var u = ((
"https:" == document.location.protocol) ?
"https" :
"http") +
"://"+
"piwik.fsf.org//";
621 _paq.push([
"setTrackerUrl", u+
"piwik.php"]);
622 _paq.push([
"setSiteId",
"13"]);
623 var d=document, g=d.createElement(
"script"), s=d.getElementsByTagName(
"script")[
0]; g.
type=
"text/javascript";
624 g.defer=true; g.async=true; g.src=u+
"piwik.js"; s.parentNode.insertBefore(g,s);
628 <!-- End Piwik Code -->
629 <!-- Piwik Image Tracker -->
630 <noscript><img src=
"https://piwik.fsf.org//piwik.php?idsite=13&rec=1" style=
"border:0" alt=
"" /></noscript>