Manual CryptoParty Handbook
Manual CryptoParty Handbook
Manual CryptoParty Handbook
Version: 2015-07-14
2
Contents
1 Introducing Cryptoparty 13
1.1 About This Book . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.2 A CryptoParty Manifesto . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.3 How To CryptoParty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.4 Party like it’s december 31st 1983 . . . . . . . . . . . . . . . . . . . . . . . 20
1.4.1 What is CryptoParty? . . . . . . . . . . . . . . . . . . . . . . . . 20
1.5 Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1.6 Why Privacy Matters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2 Understanding Email 23
2.1 Basic Tips . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.1.1 In brief: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.1.2 Passwords . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.1.3 Reading Email in Public Places . . . . . . . . . . . . . . . . . . . 24
2.1.4 Cache Cunning . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.1.5 Securing your communication . . . . . . . . . . . . . . . . . . . . 25
2.1.6 DNSSEC & DANE . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.1.7 Account Separation . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.1.8 A note about hosted email . . . . . . . . . . . . . . . . . . . . . . 26
2.2 Types of Email . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.2.1 Remotely hosted email (‘webmail’), resourced using a web browser 26
2.2.2 Remotely hosted email, resourced using an email program or using
a web browser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.2.3 Context considerations . . . . . . . . . . . . . . . . . . . . . . . . 27
2.2.4 Email & Metadata . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.2.5 Self-administered email server . . . . . . . . . . . . . . . . . . . . 28
2.2.6 ‘Free’ email services . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.2.7 Non-profit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.2.8 Notes on email forwarding . . . . . . . . . . . . . . . . . . . . . . 29
2.3 Fears . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
2.3.1 Random abuse and theft by malicious hackers . . . . . . . . . . . 30
2.3.2 Targeted abuse, harassment, and spying . . . . . . . . . . . . . . 31
2.3.3 When Encryption Goes Wrong . . . . . . . . . . . . . . . . . . . 31
2.4 Secure Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
3
Contents
3 Understanding Browsing 35
3.1 Basic Tips . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3.1.1 In Brief: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3.1.2 Your browser talks about you behind your back . . . . . . . . . . 35
3.1.3 Web sites can track you as you browse . . . . . . . . . . . . . . . 35
3.1.4 Searching online can give away information about you . . . . . . 36
3.1.5 More eyes than you can see . . . . . . . . . . . . . . . . . . . . . 36
3.1.6 Your right to be unknown . . . . . . . . . . . . . . . . . . . . . . 37
3.2 Fears . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
3.2.1 Social Networking - what are the dangers? . . . . . . . . . . . . . 37
3.2.2 Who can steal my identity? . . . . . . . . . . . . . . . . . . . . . 38
3.2.3 Can I get in trouble for Googling weird stuff? . . . . . . . . . . . 39
3.2.4 Who is keeping a record of my browsing and am I allowed to hide
from them? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.2.5 How to not reveal my Identity? . . . . . . . . . . . . . . . . . . . 40
3.2.6 How to avoid being tracked? . . . . . . . . . . . . . . . . . . . . . 40
3.3 What happens when you browse . . . . . . . . . . . . . . . . . . . . . . . 40
3.3.1 A topography of you: footprints . . . . . . . . . . . . . . . . . . . 41
3.4 Accounts and Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
3.4.1 Can malicious web sites take over my accounts? . . . . . . . . . . 43
3.5 Tracking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
3.5.1 How do they track us? . . . . . . . . . . . . . . . . . . . . . . . . 44
3.5.2 How can I prevent tracking? . . . . . . . . . . . . . . . . . . . . . 45
3.5.3 A word of warning . . . . . . . . . . . . . . . . . . . . . . . . . . 52
3.6 Anonymity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
3.6.1 Intro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
3.6.2 Proxy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
3.6.3 Tor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
3.7 VPN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
4
Contents
4.3.3 I2P . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
7 Email Encryption 93
7.1 Introducing mail encryption (PGP) . . . . . . . . . . . . . . . . . . . . . . 93
7.1.1 Using a key-pair to encrypt your mail . . . . . . . . . . . . . . . . 94
7.1.2 Sending encrypted mails to other people: you need their public key 94
7.1.3 Receiving encrypted mails from other people: they need my pub-
lic key . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
7.1.4 Conclusion: encryption requires public key distribution! . . . . . 94
7.2 Installing PGP on Windows . . . . . . . . . . . . . . . . . . . . . . . . . . 94
7.2.1 Installing PGP (GPG) on Microsoft Windows . . . . . . . . . . . 95
7.2.2 Installing with the Enigmail extension . . . . . . . . . . . . . . . 95
7.2.3 Installation steps . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
7.3 Installing PGP on OSX . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
7.3.1 Getting started . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
7.3.2 Downloading and installing the Software . . . . . . . . . . . . . . 98
5
Contents
6
Contents
8.5.12 Enabling and disabling AdBlock Plus for specific elements or Web
sites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
8.5.13 Other extensions that can improve your security . . . . . . . . . . 166
8.6 Proxy Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
8.6.1 Default Firefox proxy configuration . . . . . . . . . . . . . . . . . 168
8.7 Using Tor? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
8.7.1 Using Tor Browser Bundle . . . . . . . . . . . . . . . . . . . . . . 171
8.7.2 Downloading Tor Browser Bundle . . . . . . . . . . . . . . . . . . 171
8.7.3 Running a Relay or Bridge . . . . . . . . . . . . . . . . . . . . . . 171
8.8 Extending Google Chrome . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
8.8.1 Disabling Instant Search . . . . . . . . . . . . . . . . . . . . . . . 172
8.8.2 AdBlock for Chrome . . . . . . . . . . . . . . . . . . . . . . . . . 172
8.8.3 HTTPS Everywhere . . . . . . . . . . . . . . . . . . . . . . . . . 172
8.8.4 PrivacyFix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
9 Passwords 173
9.1 Keeping passwords safe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
9.1.1 Password length and complexity . . . . . . . . . . . . . . . . . . . 173
9.1.2 Easy to remember and secure passwords . . . . . . . . . . . . . . 173
9.1.3 Minimizing damage . . . . . . . . . . . . . . . . . . . . . . . . . . 173
9.1.4 Using a password manager . . . . . . . . . . . . . . . . . . . . . . 174
9.1.5 Physical protection . . . . . . . . . . . . . . . . . . . . . . . . . . 174
9.1.6 Other caveats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
9.2 Installing KeePass . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
9.2.1 Installing KeePassX on Ubuntu . . . . . . . . . . . . . . . . . . . 174
9.2.2 Installing KeePass on Windows . . . . . . . . . . . . . . . . . . . 175
9.2.3 Installing KeePass on Mac OS X . . . . . . . . . . . . . . . . . . 181
9.3 Encrypting Passwords with a Password Manager . . . . . . . . . . . . . . 189
9.3.1 Encrypting Passwords with KeePassX on Ubuntu . . . . . . . . . 189
9.3.2 Encrypting Passwords with KeePass on Windows . . . . . . . . . 195
9.3.3 Encrypting Passwords with Keychain on Mac OSX . . . . . . . . 201
7
Contents
8
Contents
15 Appendices 309
15.1 Cryptography and Encryption . . . . . . . . . . . . . . . . . . . . . . . . . 309
15.1.1 Encryption examples . . . . . . . . . . . . . . . . . . . . . . . . . 310
15.1.2 A Warning! . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 310
15.1.3 Historical ciphers . . . . . . . . . . . . . . . . . . . . . . . . . . . 311
15.1.4 Modern ciphers . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313
15.1.5 Quantum Cryptography . . . . . . . . . . . . . . . . . . . . . . . 314
15.1.6 Challenges & Implications . . . . . . . . . . . . . . . . . . . . . . 314
15.2 Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315
15.2.1 aggregator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315
15.2.2 anonymity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315
15.2.3 anonymous remailer . . . . . . . . . . . . . . . . . . . . . . . . . . 315
15.2.4 ASP (application service provider) . . . . . . . . . . . . . . . . . 316
15.2.5 backbone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316
15.2.6 badware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316
15.2.7 bandwidth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316
15.2.8 bash (Bourne-again shell) . . . . . . . . . . . . . . . . . . . . . . 316
15.2.9 BitTorrent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316
15.2.10 blacklist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316
15.2.11 bluebar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317
15.2.12 block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317
15.2.13 bookmark . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317
15.2.14 bridge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317
15.2.15 brute-force attack . . . . . . . . . . . . . . . . . . . . . . . . . . . 317
15.2.16 cache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317
15.2.17 censor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317
15.2.18 censorware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317
15.2.19 CGI (Common Gateway Interface) . . . . . . . . . . . . . . . . . 318
15.2.20 chat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318
15.2.21 cipher . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318
15.2.22 circumvention . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318
15.2.23 Common Gateway Interface . . . . . . . . . . . . . . . . . . . . . 318
15.2.24 command-line interface . . . . . . . . . . . . . . . . . . . . . . . . 318
15.2.25 cookie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318
15.2.26 country code top-level domain (ccTLD) . . . . . . . . . . . . . . . 318
15.2.27 cryptography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
15.2.28 DARPA (Defense Advanced Projects Research Agency) . . . . . . 319
15.2.29 decryption . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
15.2.30 disk encryption . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
15.2.31 domain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
15.2.32 DNS (Domain Name System) . . . . . . . . . . . . . . . . . . . . 319
15.2.33 DNS leak . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320
9
Contents
10
Contents
11
Contents
12
1 Introducing Cryptoparty
13
1 Introducing Cryptoparty
This version of the handbook has since moved to github to collaboratively edit it.
Find it at https://github.com/cryptoparty/handbook. If you see areas that need
improvement or simply come across a typo, create a github account and start editing,
commenting or creating issues. For help using git and github, see https://help.github.
com/.
CryptoParty HandBook Credits
Facilitated by:
• Adam Hyde
Core Team:
• Marta Peirano
• Asher Wolf
• Julian Oliver
• Danja Vasiliev
• Malte Dik
• Jan Gerber
• Brian Newbold
• Brendan Howell
Assisted by:
• Teresa Dillon
• AT
• Carola Hesse
• Chris Pinchen
• ‘LiamO’
• ‘l3lackEyedAngels’
• ‘Story89’
• Travis Tueffel
• Yuval Adam
• Samuel Carlisle
• Daniel Kinsman
• pettter
• Jens Kubieziel
• Uwe Lippmann
• Kai Engert
14
1.2 A CryptoParty Manifesto
• https://www.flossmanuals.net/bypassing-censorship
The manuals used in the second half of this book borrow from 2 books sprinted by
FLOSS Manuals:
• “How to Bypass Internet Censorship” 2008 & 2010 Adam Hyde (Facilitator), Al-
ice Miller, Edward Cherlin, Freerk Ohling, Janet Swisher, Niels Elgaard Larsen,
Sam Tennyson, Seth Schoen, Tomas Krag, Tom Boyle, Nart Villeneuve, Ronald
Deibert, Zorrino Zorrinno, Austin Martin, Ben Weissmann, Ariel Viera, Niels El-
gaard Larsen, Steven Murdoch, Ross Anderson, helen varley jamieson, Roberto
Rastapopoulos, Karen Reilly, Erinn Clark, Samuel L. Tennyson, A Ravi
• “Basic Internet Security” 2011 Adam Hyde (Facilitator), Jan Gerber, Dan Hassan,
Erik Stein, Sacha van Geffen, Mart van Santen, Lonneke van der Velden, Emile
den Tex and Douwe Schmidt
All content in the CryptoParty Handbook is licensed under the Creative Commons
Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0).
All chapters Âľ the contributors unless otherwise noted below.
In 1996, John Perry Barlow, co-founder of the Electronic Frontier Foundation (EFF),
wrote ‘A Declaration of the Independence of Cyberspace’. It includes the following
passage:
We are creating a world that all may enter without privilege or prejudice
accorded by race, economic power, military force, or station of birth.
We are creating a world where anyone, anywhere may express his or her
beliefs, no matter how singular, without fear of being coerced into silence or
conformity.
15
1 Introducing Cryptoparty
Sixteen years later, and the Internet has changed the way we live our lives. It has
given us the combined knowledge of humankind at our fingertips. We can form new
relationships and share our thoughts and lives with friends worldwide. We can organise,
communicate and collaborate in ways never thought possible. This is the world we want
to hand down to our children, a world with a free Internet.
Unfortunately, not all of John Perry Barlow’s vision has come to pass. Without access
to online anonymity, we can not be free from privilege or prejudice. Without privacy,
free expression is not possible.
The problems we face in the 21st Century require all of humanity to work together. The
issues we face are serious: climate change, energy crises, state censorship, mass surveil-
lance and on-going wars. We must be free to communicate and associate without fear.
We need to support free and open source projects which aim to increase the commons’
knowledge of technologies that we depend on http://opensourceecology.org/wiki
Contribute!
To realise our right to privacy and anonymity online, we need peer-reviewed, crowd-
sourced solutions. CryptoParties provide the opportunity to meet up and learn how to
use these solutions to give us all the means with which to assert our right to privacy and
anonymity online.
1. We are all users, we fight for the user and we strive to empower the user. We assert
user requests are why computers exist. We trust in the collective wisdom of human
beings, not software vendors, corporations or governments. We refuse the shackles
of digital gulags, lorded over by vassal interests of governments and corporations.
We are the CypherPunk Revolutionaries.
2. The right to personal anonymity, pseudonymity and privacy is a basic human right.
These rights include life, liberty, dignity, security, right to a family, and the right
to live without fear or intimidation. No government, organisation or individual
should prevent people from accessing the technology which underscores these basic
human rights.
4. The individual alone owns the right to their identity. Only the individual may
choose what they share. Coercive attempts to gain access to personal information
without explicit consent is a breach of human rights.
5. All people are entitled to cryptography and the human rights crypto tools afford,
regardless of race, colour, sex, language, religion, political or other opinion, national
or social origin, property, birth, political, jurisdictional or international status of
the country or territory in which a person resides.
6. Just as governments should exist only to serve their citizens - so too, cryptography
should belong to the people.Technology should not be locked away from the people.
16
1.3 How To CryptoParty
17
1 Introducing Cryptoparty
• Make sure the way crypto is taught at your party could be understood by a 10 year
old. Then have the 10 year old teach it to an 80 year old. Breach the digital divide
with random acts of awesomeness such as unfettered use of images of kittens in all
CryptoParty literature. Red underpants on heads is only mandatory if you wish to
bid in our spectrum auction.
• Don’t scare non-technical people. Don’t teach command lines before people know
where the on-off buttons are located on their laptops. Everyone learns at their own
pace - make sure there is support for those in need of help.
• Consider the need for a bouncer, particularly if your CryptoParty expects over 50
people. Dress the bouncer up as a Sumo wrestler. Do not be afraid to bounce
people who breach CryptoParty’s anti-harassment policy.
• Use online meeting platforms like mumble, or even chatrooms (e.g. #cryptoparty
room on http://occupytalk.org/) when physical meetups are not possible or im-
practical.
• Copy from other cryptoparties. Remix, Reuse and Share. Create a basket of old
devices people are willing to donate to more needy CryptoPartiers.
18
1.3 How To CryptoParty
• Get the word out! Print posters and/or flyers and distribute them in your neigh-
bourhood, post online versions to social networks and mail them to friends, for
them to distribute the info even further.
• Don’t sell out to sponsors for pizza and beer money. Ask people to try and bring
food and drink to share. Host CryptoPicnics as often as possible. Make friends
with librarians. They wield power over keys to local, public meeting rooms that
may be free of charge to utilize.
• Invite all the people. Bring people together who have a wide range of skills and
interests - musicians, political pundits, activists, hackers, programmers, journalists,
artists and philosophers. Spread the love.
• Invite the graphic designers and illustrators you know to contribute new ways to
help people understand crypto.
• Invite everyone to share their knowledge and their skills. Individuals with little or
no coding, programming, hacking or crypto skills can change cultures by promoting
the idea that privacy is a fundamental right.
• Share music, beers, & chips. Bond together over eclectic music, cheeseballs, in-
stalling GPG, TrueCrypt, OTR and Tor, as well as watching movies together. We
recommend Hackers, The Matrix, Bladerunner, Tron, Wargames, Sneakers, and
The Net.
• Do not work too hard. Take breaks. Eat popcorn together. Create slang, phrases,
memes.
• When people at CryptoParties ask for advice on “hacking the Gibson” refer them
to episodes of ‘My Little Pony’.
• Create fliers and advertise using slogans like: “CryptoParties: If there is hope, it
lies in the proles” and “CryptoParty like it’s 1984.” CryptoParty all the things to
avoid oppression and depression.
• Seed CryptoParties in your local communities - at nursing homes, scout groups,
music festivals, universities, schools. Take CryptoParty to isolated and remote
communities. Make friends in far away places and travel whenever possible. Ask
people in rural farming communities if they’d like to CryptoParty.
• Share shimmering opportunities of crowd-sourced privacy: swap cheap, pre-paid
SIMs, handsets and travel cards.
• Create logos in bright pink and purple, with hearts all over them. Promote Cryp-
toParties to rebellious 13 year old girls. Declare success if rebellious 13 year old
girls demand to attend your parties.
• Become friends with journalists. Invite them to your parties. Teach them crypto.
Do not scare them by discussing Assassination Markets.
19
1 Introducing Cryptoparty
• Strew CryptoParty sigils across your city in 3am post-party raids. Make lots of
stickers, paste them everywhere.
Do things
CryptoParties happen because people make them happen. The most amazing and un-
foreseen learning experiences happen because people make them happen. If you are
uncertain if what you have in mind is on topic or if other people are interested as well:
20
1.5 Preface
Propose it anyway and see what other people have to say. If you are too shy to propose
to the whole room: Ask the person standing next to you first.
On a more global scale, there is a mailing list [email protected] which is open
for questions and discussion of all kind, as well as country and city-specific mailing lists
and other resources which can be found on https://cryptoparty.in .
For a guide on how to organize CryptoParties please be referred to the chapter of the
same name.
1.5 Preface
This book is a collective and ongoing effort in that it is based on the two FLOSS Manuals
How to Bypass Internet Censorship and Basic Internet Security and collaboratively edited
on Github although other venues of collaborative editing are investigated.
Its goal is to give a comprehensive resource to people who would like to attend or
organize a CryptoParty but lack the local expertise or just confidence in doing so. All
chapters are designed to be self-contained.
All content in the CryptoParty Handbook is licensed under the Creative Commons
Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0). The authors are listed in Ap-
pendix A: Contributions.
21
1 Introducing Cryptoparty
even has effects on how we define ourselves. If privacy is about the borders which govern
who we give permission to watch us and track aspects of our lives, then the amount and
type of personal information gathered, disseminated and processed is paramount to our
basic civil liberties.
An often heard argument, when questions of privacy and anonymity come up, goes
along the lines of, “I only do boring stuff. Nobody will be interested in it anyway” or, “I
have nothing to hide”. Both of these statements are easily defeated.
Firstly, a lot of companies are very interested in what boring things you do precisely
so they have opportunity to offer “excellent” products fitting interests. In this way their
advertising becomes much more efficient - they are able to tailor specifically to assumed
needs and desires. Secondly you do have lots to hide. Maybe you do not express it in
explicitly stated messages to friends and colleagues, but your browsing - if not protected
by the techniques laid out in this book - will tell a lot about things you might rather
keep secret: the ex-partner you search for using Google, illnesses you research or movies
you watch are just few examples.
Another consideration is that just because you might not have something to hide at
this moment, you may very well in future. Putting together all the tools and skills to
protect yourself from surveillance takes practice, trust and a bit of effort. These are
things you might not be able to achieve and configure right when you need them most
and need not take the form of a spy movie. An obsessed, persistent stalker, for example,
is enough to heavily disrupt your life. The more you follow the suggestions given in this
book, the less impact attacks like this will have on you. Companies may also stalk you
too, finding more and more ways to reach into your daily life as the reach of computer
networking itself deepens.
Finally, a lack of anonymity and privacy does not just affect you, but all the people
around you. If a third party, like your Internet Service Provider, reads your email, it is
also violating the privacy of all the people in your address book. This problem starts
to look even more dramatic when you look at the issues of social networking websites
like Facebook. It is increasingly common to see photos uploaded and tagged without the
knowledge or permission of the people affected.
While we encourage you to be active politically to maintain your right to privacy, we
wrote this book in order to empower people who feel that maintaining privacy on the
Internet is also a personal responsibility. We hope these chapters will help you reach a
point where you can feel that you have some control over how much other people know
about you. Each of us has the right to a private life, a right to explore, browse and
communicate with others as one wishes, without living in fear of prying eyes.
22
2 Understanding Email
2.1.1 In brief:
• Passwords shouldn’t relate to personal details and should contain a mix of a rea-
sonable amount of letters and other characters.
• To change passwords regularly is important as they might have been stolen, cracked
or exposed to others in the meantime.
• Always be sure your connection is secure when reading email on a wireless network,
especially in Internet cafes.
• Temporary files (the ‘cache’) on the computer that you use to check your email can
present some risks. Clear them often.
• Create and maintain separate email accounts for different tasks and interests.
• Encrypt any message you wouldn’t feel comfortable sending on a post card.
• Be aware of the risks of having your email hosted by a company or organization.
2.1.2 Passwords
Passwords are a primary point of vulnerability in email communication. Even a secure
password can be read in transit unless the connection is secure (see TLS/SSL in the
glossary). In addition, just because a password is long doesn’t mean it cannot be guessed
by using knowledge of you and your life to determine likely words and numbers.
The general rule for creating passwords is that it should be long (8 characters might
be cracked within few hours) and have a mix of letters and other characters (numbers
and symbols, which means you could just choose a sentence). Combining your birthday
with that of a family name is however a great example of how not to do it. This kind
of information is easy to find using public resources. A popular trick is to base it on a
favourite phrase and then, just to throw people off, sprinkle it with a few numbers. Best
of all is to use a password generator, either on your local system or online.
Often such passwords are difficult to remember and a second point of vulnerabil-
ity is opened up – physical discovery. Since there is no better means of storing a
password than in your own brain, services like OnlinePasswordGenerator (http://www.
onlinepasswordgenerator.com/) offer a great compromise by randomly generating pass-
words that vaguely resemble words and present you with a list to choose from.
23
2 Understanding Email
If you do choose to store your password outside your head, you have the choice to
either write it down or use keychain software. This can be a risky decision, especially if
the email account and password are on the same device like your phone or computer.
Keychain software, like Keepass, consolidates various passwords and passphrases in one
place and makes them accessible through a master password or passphrase. This puts
a lot of pressure on the master password. If you do decide to use a keychain software,
remember to choose a secure password.
Finally, you should use a different password for different accounts. In that way, if one
of them gets hijacked, your other accounts remain safe. Never use the same password for
your work and private email accounts. See section Passwords to learn more about how
to secure yourself.
24
2.1 Basic Tips
Whenever you write and send email in a browser or use an email program (Outlook
Express, Mozilla Thunderbird, Mail.app or Mutt), you should always ensure to use en-
cryption for the entire session. This is easily done due to the popular use of TLS/SSL
(Secure Socket Layer) connections by email servers (See glossary TLS/SSL).
If using a browser to check your email, check to see if the mail server supports SSL
sessions by looking for https:// at the beginning of the URL. If not, be sure to turn
it on in your email account settings, such as Gmail or Hotmail. This ensures that not
just the login part of your email session is encrypted but also the writing and sending of
emails. Furthermore check the cetificate details and take TLS pinning into account and
endorse browser extensions that warn about changing or disfunctional certificates (e.g.
Certificate Patrol ) and make use of TLS secured version of the website the default (e.g.
HTTPS everywhere).
The email service provider you select, should provide you with the mail server details.
These details can often be found in the settings option. If your email service provider
does not offer you a cryptographic protocol (TLS/SSL) to encrypt your data on the
network, then it is advised to stop using it. Even if your emails are not important, you
might find yourself ‘locked out’ of your account one day with a changed password!
When using an email program to check your email, be sure that you are using TLS/SSL
in the program options. For instance in Mozilla Thunderbird the option for securing your
outgoing email is found in Tools -> Account Settings -> Outgoing Server (SMTP)
and for incoming email in Tools -> Account Settings -> Server Settings. This
ensures that the downloading and sending of email is encrypted, making it very difficult
for someone on your network, or on any of the networks between you and the server, to
read or log your email. Encrypting the email itself
Even if the line itself is encrypted using a system such as SSL, the email service provider
still has full access to the email because they own and have full access to the storage
device where you host your email. If you want to use a web service and be sure that
your provider cannot read your messages, then you’ll need to use something like GPG
(Appendix for GnuPG) with which you can encrypt the email. The header of the email
however will still contain the IP (Internet address) that the email was sent from alongside
other compromising details. Worth mentioning here is that the use of GPG in webmail is
not as comfortable as with a locally installed mail client, such as Thunderbird or Outlook
Express.
certificate information can be stored in DNS records and therefore be regarded more
relyable. Check the availability of DNSSEC and especially regarding email services
DANE with your service providers. Here again browser extensions (e.g. DNSSEC/TLSA
Validator ) can assist to control the availability of these security measures.
25
2 Understanding Email
• Email read, written and sent in the browser (webmail via HTTP) and stored on a
providers server, and/or
• Email read, written, sent and stored using an email program, like e.g. Mozilla
Thunderbird, Mail.App or Outlook Express by utilizing protocols like SMTP, POP
and IMAP.
These two models might be mixed in practice, especially by using IMAP. Whilst the
webmail solution is more convinient to use and easier to maintain for end users on different
computers compared to the more powerful solution (less limits on storage, better search
options and direct control over data) based on native applications.
26
2.2 Types of Email
are many: contact with other services offered by the company, brand exposure and most
importantly, mining your plain text email for patterns that can be used to evaluate your
interests – something of great value to the advertising industry (alongside certain Gov-
ernments). For the reason of datamining those companies have no interest in encouraging
their users to use encryption to secure privacy and/or signatures for integrity/authenticity
of communication.
27
2 Understanding Email
As always, if you know the risks and feel concerned it is wise to listen to them - don’t
send sensitive email using a service you don’t trust. Employer/Organisation
Your employer or an organisation that you are involved with is in a very good position
to take advantage of your trust and read the emails of your business email account that
is stored on their email server, perhaps in an effort to learn about you, your motivations,
agendas and interests. Such cases of employer->employee spying are so typical they do
not bear mention. Your only measure against it is to use an email encryption solution
like GPG (Appendix GPG).
2.2.7 Non-profit
Several non-profit web hosts offer free email accounts to organisations that are themselves
non-profit or philanthropic. Some of them even offer wikis, mailing lists, chats and social
networks. A consideration for organisations working in a political field may be differences
of interests between the state in which the email is hosted and the political interests of
the organisation using that service. Such risks would ideally be reflected in the End User
License Agreement.
28
2.3 Fears
2.3 Fears
Who can read the email messages that I have already sent or received?
Who can read the emails I send when they travel across the Internet?
Can the people I send emails to share them with anybody?
Emails that are sent “in the clear” without any encryption (which means the vast
majority of email sent and received today) can be read, logged, and indexed by any
server or router along the path the message travels from sender to receiver. Assuming
you use an encrypted connection (see glossary for TLS/SSL) between your devices and
your email service provider (which everybody should), this means in practice that the
following people can still read any given message:
1. You
2. Your email service provider
3. The operators and owners of any intermediate network connections (often ambigu-
ous multinational conglomerates or even sovereign states)
4. The recipient’s email service provider
5. The intended recipient
Many webmail providers (like Gmail) automatically inspect all of the messages sent
and received by their users for the purpose of showing targeted advertisements. While
this may be a reasonable compromise for some users most of the time (free email!),
it is disturbing for many that even their most private communications are inspected
and indexed as part of a hidden and potentially very insightful profile maintained by a
powerful corporate giant with a profit motive.
Additionally, somebody who can legally pressure the groups above could request or
demand:
1. logged meta-data about email (lists of messages sent or received by any user, subject
lines, recipients), in some jurisdictions even without a warrant.
2. messages sent and received by a specific user or group, with a warrant or court
order in some jurisdictions.
3. a dedicated connection to siphon off all messages and traffic, to be analyzed and
indexed off site.
29
2 Understanding Email
In cases where a user has a business or service relationship with their email provider,
most governments will defend the privacy rights of the user against unauthorized and
unwarranted reading or sharing of messages, though often it is the government itself
seeking information, and frequently users agree to waive some of these rights as part
of their service agreement. However, when the email provider is the user’s employer or
academic institution, privacy rights frequently do not apply. Depending on jurisdiction,
businesses generally have the legal right to read all of the messages sent and received by
their employees, even personal messages sent after hours or on vacation.
Historically, it was possible to “get away” with using clear text email because the
cost and effort to store and index the growing volume of messages was too high: it was
hard enough just to get messages delivered reliably. This is why many email systems
do not contain mechanisms to preserve the privacy of their contents. Now the cost of
monitoring has dropped much faster than the growth of internet traffic and large-scale
monitoring and indexing of all messages (either on the sender or receiving side) is reason-
able to expect even for the most innocuous messages and users. [CITE:corporate email
archiving/spying, blue coat, Syrian monitoring, USA Utah data center, USA intercept
scandals]
For more about legal protections of email messages “at rest” (technical term for mes-
sages stored on a server after having been delivered), especially regarding government
access to your email messages, see:
• https://ssd.eff.org/3rdparties/govt/stronger-protection (USA)
• http://en.wikipedia.org/wiki/Data_Protection_Directive (EU)
Just like there are certain photos, letters, and credentials that you would not post “in
the clear” on the Internet because you would not want that information to get indexed
accidentally and show up in search results, you should never send email messages in the
clear that you would not want an employer or disgruntled airport security officer to have
easy access to.
30
2.3 Fears
Less obvious are attacks to gain access to valid and trusted user accounts to collect
contact email addresses from and then distribute mass spam, or to gain access to par-
ticular services tied to an email account, or to use as a “stepping stone” in sophisticated
social engineering attacks. For example, once in control of your account a hacker could
rapidly send emails to your associates or co-workers requesting emergency access to more
secured computer systems.
A final unexpected problem affecting even low-profile email users, is the mass hijacking
of accounts on large service providers, when hackers gain access to the hosting infras-
tructure itself and extract passwords and private information in large chunks, then sell
or publish lists of login information in online markets.
31
2 Understanding Email
If you store your email encrypted and lose all copies of your private key, you will be
absolutely unable to read the old stored emails, and if you do not have a copy of your
revocation certificate for the private key it could be difficult to prove that any new key
you generate is truly the valid one, at least until the original private key expires.
If you sign a message with your private key, you will have great difficulty convincing
anybody that you did not sign if the recipient of the message ever reveals the message and
signature publicly. The term for this is non-repudiation: any message you send signed is
excellent evidence in court. Relatedly, if your private key is ever compromised, it could be
used to read all encrypted messages ever sent to you using your public key: the messages
may be safe when they are in transit and just when they are received, but any copies are
a liability and a gamble that the private key will never be revealed. In particular, even
if you destroy every message just after reading it, anybody who snooped the message on
the wire would keep a copy and attempt to decrypt it later if they obtained the private
key.
The solution is to use a messaging protocol that provides perfect forward secrecy by
generating a new unique session key for every conversation of exchange of messages in a
random way such that the session keys could not be re-generated after the fact even if the
private keys were known. The OTR chat protocol provides perfect forward secrecy (http:
//en.wikipedia.org/wiki/Perfect_forward_secrecy) for real time instant messaging,
and the SSH protocol provides it for remote shell connections, but there is no equivalent
system for email at this time.
It can be difficult to balance the convenience of mobile access to your private keys with
the fact that mobile devices are much more likely to be lost, stolen, or inspected and
exploited than stationary machines. An emergency or unexpected time of need might
be exactly the moment when you would most want to send a confidential message or a
signed message to verify your identity, but these are also the moments when you might
be without access to your private keys if your mobile device was seized or not loaded
with all your keys.
32
2.5 Secure Emails
not enabled already be sure to turn it on in your account options. At the time of writing,
Google’s Gmail and Hotmail / Microsoft Live both automatically switch your browser
to using a secure connection.
If you are using an email program like Thunderbird, Mail.app or Outlook, be sure
to check that you are using TLS/SSL in the options of the program. See the chapter
Setting Up Secure Connections in the section Email Security.
2.4.2 Notes
It’s important to note that the administrators at providers like Hotmail or Google, that
host, receive or forward your email can read your email even if you are using secure
connections. It is also worth nothing that the cryptographic keys protecting a TLS/SSL
connection can be deliberately disclosed by site operators, or copied without their permis-
sion, breaching the confidentiality of that connection. It is also possible for a Certificate
Authority to be corrupted or compromised so that it creates false certificates for keys
held by eavesdroppers, making it much easier for a Man In The Middle Attack on con-
nections using TLS/SSL (See Glossary for “Man in the Middle Attack”). An example of
compromised E-mail providers is discussed here, implicating America’s NSA and several
email providers: http://cryptome.info/0001/nsa-ssl-email.htm
We also note here that a Virtual Private Network also a good way of securing your
connections when sending and reading email but requires using a VPN client on your
local machine connecting to a server. See the chapter Virtual Private Networking in
the Browsing section.
33
2 Understanding Email
34
3 Understanding Browsing
35
3 Understanding Browsing
present a significant risk to your right to anonymity on the web: they can be used to
identify you if you return to a site and also to track you as you move from site to site.
Coupled with the User-Agent, they present a powerful and covert means of remotely
identifying your person.
The ideal solution to this problem is deny all website attempts to write cookies onto
your system but this can greatly reduce the quality of your experience on the web.
See the section Tracking for guides as to how to stop web servers tracking you.
36
3.2 Fears
Internet your request must traverse many machines before it reaches the server hosting
the page. This journey is known as a route and typically includes at least 10 machines
along the path. As packets move from machine to machine they are necessarily copied
into memory, rewritten and passed on.
Each of the machines along a network route belongs to someone, normally a company
or organisation and may be in entirely different countries. While there are efforts to stan-
dardise communication laws across countries, the situation is currently one of significant
jurisdictional variation. So, while there may not be a law requiring the logging of your
web browsing in your country, such laws may be in place elsewhere along your packet’s
route.
The only means of protecting the traffic along your route from being recorded or
tampered with is using end to end encryption like that provided by TLS/Secure Socket
Layer (See chapter Encryption) or a Virtual Private Network (See chapter VPN).
3.2 Fears
3.2.1 Social Networking - what are the dangers?
The phenomenon of Internet based Social Networking has changed not just how people
use the Internet but its very shape. Large data centers around the world, particularly
in the US, have been built to cater to the sudden and vast desire for people to upload
content about themselves, their interests and their lives in order to participate in Social
Networking.
Social Networking as we know it with FaceBook, Twitter (and earlier MySpace) are
certainly far from ‘free’. Rather, these are businesses that seek to develop upon, and then
exploit, a very basic anxiety: the fear of social irrelevance. As social animals we can’t
bear the idea of missing out and so many find themselves placing their most intimate
expressions onto a businessman’s hard-disk, buried deep in a data center in another
country - one they will never be allowed to visit.
Despite this many would argue that the social warmth and personal validation acquired
through engagement with Social Networks well out-weighs the potential loss of privacy.
Such a statement however is only valid when the full extent of the risks are known.
The risks of Social Networking on a person’s basic right to privacy are defined by:
37
3 Understanding Browsing
• A user posting frequently and including many personal details constructs a body
of information of greater use for targeted marketing.
• A user making social connections uncritically is at greater risk from predators and
social engineering attacks.
• The economic interests and partners of the organisation providing the service.
• Political/legal demands exerted by the State against the organisation in the juris-
diction(s) in which it is resident.
With these things in mind it is possible to chart a sliding scale between projects like
Diaspora and Facebook: the former promises some level of organisational transparency, a
commitment to privacy and a general openness, whereas Facebook proves to be an opaque
company economically able to gamble with the privacy of their users and manage civil
lawsuits in the interests of looking after their clients. As such there is more likelihood of
your interactions with a large Social Network service affecting how an Insurance company
or potential employer considers you than a smaller, more transparent company.
Wireless networks
Here we find ourselves amidst an often underestimated risk of someone listening in on
your communications using network packet sniffing. It matters little if the network itself
is open or password secured. If someone uses the same encrypted network, he can easily
capture and read all unsecured traffic of other users within the same network. A wireless
key can be acquired for the cost of a cup of coffee and gives those that know how to
capture and read network packets the chance to read your password while you check
your email.
38
3.2 Fears
A simple rule always applies: if the cafe offers a network cable connection, use it!
Finally, just as at a bank machine, make sure no one watches over your shoulder when
you type in the password.
Due to the general annoyance of having to type in your password repeatedly, you allow
the browser or local mail client to store it for you. This is not bad in itself, but when a
laptop or phone gets stolen, this enables the thief to access the owner’s email account(s).
The best practice is to clear this cache every time you close your browser. All popular
browsers have an option to clear this cache on exit.
One precaution can justify you holding onto your convenient cache: disk encryption. If
your laptop is stolen and the thief reboots the machine, they’ll be met with an encrypted
disk. It is also wise to have a screen lock installed on your computer or phone. If the
machine is taken from you while still running your existing user session, it cannot be
accessed.
Whenever you log into any service you should always ensure to use encryption for the
entire session. This is easily done due to the popular use of TLS/SSL (Secure Socket
Layer).
Check to see the service you’re using (whether Email, Social Networking or online-
banking) supports TLS/SSL sessions by looking for https:// at the beginning of the
URL. If not, be sure to turn it on in any settings provided by the service. To better
understand how browsing the World Wide Web works, see the chapter What Happens
When I Browse?
39
3 Understanding Browsing
40
3.3 What happens when you browse
41
3 Understanding Browsing
medication habits, how many children you have and where you take them on holidays;
how you make your money, how much you earn and how you like to spend it. Even
more: they want to know how you feel about stuff. They want to know if your friends
respect those feelings enough so that you can convince them to change their consumption
habits. This is not a conspiracy, but rather the nature of Information Age capitalism.
To paraphrase a famous observation of the current situation, the best minds of our
generation are thinking about how to make people click ads.4
Some people think ads can be ignored or that having advertisers cater for our specific
needs is a win-win situation, because at least they are spammed with things they may
actually want. Even if that was the case (it isn’t): should we trust Google with such
intimate details of our life? Even if we trust Google to ‘do no evil’, it can still be bought
by someone we do not trust; benevolent Larry Page and Sergey Brin could be overruled
by their own Board, or their data base be sequestered by a fascistic government. One of
their 30,000 employees worldwide could cut loose and run with our data. Their servers
can be hacked. And in the end, they are just interested in their customers, the companies
paying for advertising. We are just the product being sold.
Moreover; in the Social Networks our browsing habits are generating a Permanent
Record, a collection of data so vast that the information that Facebook keeps about a
given user alone can fill 880 pages. Nobody will be surprised to learn that Facebook’s
purpose is not to make us happy – again: if you are not paying for it, you’re not the
customer, you’re the product. But even if you don’t care about their commercial goals,
consider this: the platform has publicly admitted hackers break into hundreds of thou-
sands of Facebook accounts every day.
For a taste of what lurks behind the curtains of the websites you visit, install a
plugin/add-on called Ghostery to your browser. It’s like an x-ray-machine which reveals
all the surveillance technology which might be (and often is) embedded in a web page,
normally invisible to the user. In the same line, Do Not Track Plus and Trackerblock
will give you further control over online tracking, through cookie blocking, persistent
opt-out cookies, etc. Our following chapter Tracking will equip you with expertise in
such topics.
Even in between your computer and the router, your packages can easily be intercepted
by anyone using the same wireless network in the casual environment of a cafe. It is a
jungle out there, but still we choose passwords like “password” and “123456”, perform
economic transactions and buy tickets on public wireless networks and click on links
from unsolicited emails. It is not only our right to preserve our privacy but also our
responsibility to defend that right against the intrusions of governments, corporations
and anyone who attempts to dispossess us. If we do not exercise those rights today, we
deserve whatever happens tomorrow.
1. If you are a Unix user, you can use the tcpdump command in the bash and view
real time dns traffic. It’s loads of fun! (and disturbing) ˆ
2. See list of TCP and UDP port numbers (http://en.wikipedia.org/wiki/List_
of_TCP_and_UDP_port_numbers)
3. If this exchange is happening under an HTTPS connection, the process is much
42
3.4 Accounts and Security
more complicated and also much safer, but you will find out more about that in a
most fascinating chapter called Encryption. ˆ
4. This Tech Bubble Is Different (http://www.businessweek.com/magazine/content/
11_17/b4225060960537.htm), Ashlee Vance (Businessweek magazine) ˆ
• Use a screen lock. If you have a phone and prefer an unlock pattern system get in
the habit of wiping the screen so an attacker can not guess the pattern from finger
smears. On a Laptop, you should set your screensaver to require a password as
well as a password on start-up.
• Encrypt your hard disk. TrueCrypt is an open and secure disk encryption system
for Windows 7/Vista/XP, Mac OS X and Linux. OSX and most Linux distributions
provide the option for disk encryption on install.
• Android Developers: do not enable USB debugging on your phone by default. This
allows an attacker using the Android adb shell on a computer to access your phone’s
hard disk without unlocking the phone.
43
3 Understanding Browsing
logged into your accounts as a tool for testing the safety of a link. Always confirm the
address (URL) in the link to make sure it is spelled correctly. It may be a site with a
name very similar to one you already trust. Note that links using URL shorteners (like
http://is.gd and http://bit.ly) present a risk as you cannot see the actual link you are
requesting data from.
If using Firefox on your device, use the add-on NoScript as it mitigates many of the
Cross Site Scripting techniques that allow for your cookie to be hijacked but it will
disable many fancy features on some web sites.
3.5 Tracking
When you browse the web tiny digital traces of your presence are left behind. Many
web sites harmlessly use this data to compile statistics and see how many people are
looking at their site and which pages are popular, but some sites go further and use
various techniques to track individual users, even going as far as trying to identify them
personally. It doesn’t stop there however. Some firms store data in your web browser
which can be used to track you on other web sites. This information can be compiled
and passed on to other organizations without your knowledge or permission.
This all sounds ominous but really who cares if some big company knows about a few
web sites that we have looked at? Big web sites compile and use this data for “behavioral
advertising” where ads are tailored to fit your interests exactly. That’s why after looking
at say, the Wikipedia entry for Majorca, one may suddenly start seeing lots of ads for
packaged vacations and party hats. This may seem innocent enough, but after doing a
search for “Herpes Treatments” or “Fetish Communities” and suddenly seeing listings for
relevant products, one may start to feel that the web is getting a bit too familiar.
Such information is also of interest to other parties, like your insurance company. If
they know you have been looking at skydiving sites or forums for congenital diseases,
your premiums may mysteriously start going up. Potential employers or landlords may
turn you down based on their concerns about your web interests. In extreme instances,
the police or tax authorities may develop an interest without you ever having committed
a crime, simply based on suspicious surfing.
44
3.5 Tracking
The simplest and most direct way to deal with tracking is to delete the cookie files in
your browser:
45
3 Understanding Browsing
In Internet Explorer: 1. Click the Tools button (shaped like a gear). 2. Click
Safety. 3. Click Delete Browsing History. 4. Tick Cookies. 5. Click Delete.
46
3.5 Tracking
47
3 Understanding Browsing
The limitation to this approach is that you will receive new cookies as soon as you
return to these sites or go to any other pages with tracking components. The other dis-
advantage is that you will lose all of your current login sessions for any open tabs, forcing
you to type in usernames and passwords again. A more convenient option, supported by
current browsers is private browsing or incognito mode. This opens a temporary browser
window that does not save the history of pages viewed, passwords, downloaded files or
cookies. Upon closing the private browsing window, all of this information is deleted.
You can enable private browsing:
In Firefox: 1. Click the Firefox menu. 2. Click Start Private Browsing.
48
3.5 Tracking
In Internet Explorer: 1. Click the Tools menu, shaped like a gear. 2. Click Safety.
3. Click InPrivate Browsing.
4. The InPrivate
logo appears in the top-left of your browser window, showing that private browsing is
on.
49
3 Understanding Browsing
This solution also has its limitations. We cannot save bookmarks, remember passwords,
or take advantage of much of the convenience offered by modern browsers. Thankfully,
there are several plugins specially designed to address the problems of tracking. The
most extensive, in terms of features and flexibility, is Ghostery. The plugin allows you to
block categories or individual services that track users. Here’s how you install Ghostery:
50
3.5 Tracking
Another option is to install an ad-blocking plugin like AdBlockPlus. This will auto-
matically block many of the tracking cookies sent by advertising companies but not those
used by Google, Facebook and other web analytics companies. [expand on this maybe,
explain “web analytics”]
How can I see who is tracking me?
The easiest way to see who is tracking you is to use the Ghostery plugin. There is a
small icon on the upper right or lower right corner of your browser window that will tell
you which services are tracking you on particular web sites.
{Suggestion: Add Abine.com’s Do Not Track add-on. I suggest using both Ghosterly
and DNT, as occasionally they block a different cookie. Abine also has Privacy Suite,
recently developed which can give a proxy telephone and proxy email, similar to 10
Minute Mail or Guerrilla Mail for fill- in emails for forms.}
51
3 Understanding Browsing
3.6 Anonymity
3.6.1 Intro
Article 2 of the Universal Declaration of Human Rights states:
“Everyone is entitled to all the rights and freedoms set forth in this Decla-
ration, without distinction of any kind, such as race, colour, sex, language,
religion, political or other opinion, national or social origin, property, birth
or other status.
One way of enforcing this basic right in hostile environments is by means of anonymity,
where attempts to connect an active agent to a specific person are blocked.
Acting anonymously is also a great way to help others with a high need for protection
– the bigger the herd of sheep, the harder it is to target a specific one. An easy way to
do so is by using Tor, a technique which routes internet traffic between users of a special
software, thus making it untraceable to any specific IP address or person without having
control over the whole network (and nobody has that yet in the case of the internet).
A highly functional means to protect ones own identity is by using anonymous proxy
servers and Virtual Private Networks (VPN).
3.6.2 Proxy
“An anonymizer or an anonymous proxy is a tool that attempts to make
activity on the Internet untraceable. It is a proxy [server] computer that
acts as an intermediary and privacy shield between a client computer and the
rest of the Internet. It accesses the Internet on the user’s behalf, protecting
personal information by hiding the client computer’s identifying information.”
(http://en.wikipedia.org/wiki/Anonymizer)
52
3.6 Anonymity
The main purpose behind using a proxy is to hide or to change Internet address (IP
address) assigned to user’s computer. There can be a few reasons for needing to do so,
for example:
While a usual scenario would be to use proxy for accessing the Web (HTTP), practically
Internet protocol can be proxied - i.e. sent via a remote server. Unlike a router, proxy
server is not directly forwarding remote user requests but rather mediates those requests
and echos responses back to remote user’s computer.
Proxy (unless setup as “transparent”) does not allow direct communication to the
Internet thus applications such as browsers, chat-clients or download applications need
to be made aware of the proxy server (see Safer Browsing/Proxy settings chapter)
3.6.3 Tor
• Tor prevents anyone from learning your location or browsing habits.
• Tor is for web browsers, instant messaging clients, remote logins, and
more.
• Tor is free and open source for Windows, Mac, Linux/Unix, and An-
droid. (https://www.torproject.org)
53
3 Understanding Browsing
business, by keeping their internet activities from being monitored. The software is
open-source and the network is free of charge to use.
Tor cannot and does not attempt to protect against monitoring the traffic entering and
exiting the network. While Tor does provide protection against traffic analysis, it cannot
prevent traffic confirmation (also called end-to-end correlation). End-to-End Correlation
is a way of matching an online identity with a real person.
A recent case of this involved the FBI wanting to prove that the man Jeremy Hammon
was behind an alias known to be responsible for several Anonymous attacks. Sitting
outside his house, the FBI were monitoring his wireless traffic alongside a chat channel
the alias was known to visit. When Jeremy went online in his apartment, inspection of
the wireless packets revealed he was using Tor at the same moment the suspected alias
associated with him came online in the surveilled chat channel. This was enough to
incriminate Jeremy and he was arrested.
See section Safer Browsing/Using Tor for setup instructions.
3.7 VPN
The way your data makes it to the desired server and back to your laptop computer or a
mobile device is not as straightforward as it might first seem. Say, you are connected to a
wireless network at home and opening a wikipedia.org page. The path your request (data)
takes will consist of multiple middle points or “hops” - in network-architect terminology.
At each of these hops (which are likely to be more then 5) your data can be scooped,
copied and potentially modified.
• Your wireless network (your data can be sniffed from the air)
• Your ISP (in most countries they are obliged to keep detailed logs of user activity)
• Internet Exchange Point (IXP) somewhere on another continent (usually more
secure then any other hop)
• ISP of the hosting company that hosts the site (is probably keeping logs)
• Internal network to which the server is connected
• And multiple hops between. . .
Any person with physical access to the computers or the networks which are on the
way from you to the remote server, intentionally or not, can collect and reveal the data
that’s passing from you to the remote server and back. This is especially true for so
called ‘last mile’ situations - the few last leaps that an internet connection makes to
reach a user. That includes domestic and public wireless or wired networks, telephone
and mobile networks, networks in libraries, homes, schools, hotels. Your ISP can not be
considered a safe, or ‘data-neutral’ instance either - in many countries state agencies do
not even require a warrant to access your data, and there is always the risk of intrusion
by paid attackers working for a deep-pocketed adversaries.
VPN - a Virtual Private Network - is a solution for this ‘last-mile’ leakage. VPN is
a technology that allows the creation of a virtual network on top of an existing infras-
tructure. Such a VPN network operates using the same protocols and standards as the
54
3.7 VPN
Another interesting and often underrated features of VPN is encoded in its name -
besides being Virtual and Private it is also a Network. VPN allows one not only to
connect via the VPN server to the rest of the world but also to communicate to other
members of the same VPN network without ever having to leave the safety of encrypted
space. Through this functionality Virtual Private Network becomes something like a
DarkNet (in a broader sense of the definition) - a network isolated from the Internet and
inaccessible to “others”. Since a connection to VPN server, and thus the private network
it facilitates, require a key or a certificate, only “invited” users are allowed. There is no
chance that Internet stranger would gain access to what’s on a VPN without enrolling as
a user or stealing someones keys. While not referred to as such, any corporate Intranet
type of network is a DarkNet too.
55
3 Understanding Browsing
Many commercial VPN providers stress the anonymity that their service provides.
Quoting Ipredator.org page (a VPN service started by the people behind The Pirate Bay
project):
“You’ll exchange the IP address you get from your ISP for an anonymous IP
address. You get a safe/encrypted connection between your computer and
the Internet”. (https://www.ipredator.se)
Indeed, when you access the Internet via a VPN connection it does appear as if the
connection is originating from the IP address of IPredator servers.
56
4 Publishing And Distribution
57
4 Publishing And Distribution
58
4.2 Anonymous Email
Belle de Jour, the British PhD candidate who became a sensation and sold a book and
mused two TV shows about her double life as a high escort) there will be a legion of
journalists, tax auditors and obsessive fans scrutinizing your every move. You are only
human: they will get to you.
Don’t linger. If you realize you have already made any mistakes but nobody has
caught you yet, do close all your accounts, cover your tracks and start a totally new
identity. The Internet has infinite memory: one strike, and you’re out of the closet.
59
4 Publishing And Distribution
60
4.3 File Sharing
structures which cannot be relied upon both because they are a single point of failure for
attack, and because their commercial interests are not aligned with those of their users.
Spreading files through distribution, decentralising the data, is the best way to defend
against such attacks. In the following section two realms of filesharing are profiled.
The first are standard p2p technologies whose technical design is determined by the
efficiency of the networks in enabling speed of distribution and discovery of content
through associated search mechanisms. The second focuses on I2P as an example of a
so-called darknet, its design prioritises security and anonymity over other criteria offering
a robust, if less resource efficient, path to persistent availability.
The means of sharing files mentioned below are just some examples of the many P2P
technologies that were developed since 1999. BitTorrent and Soulseek have very different
approaches, both however were designed for easy usability by a wide public and have
significant user communities. I2P is of more recent development and has a small user
base.
BitTorrent has become the most popular P2P file-sharing system. The controversy
that surrounds it nowadays ironically seems to help the community grow, while police,
lobbied by powerful copyright holders seize torrent-tracker server hardware and pursue
their operators, sometimes to the point of jailing them as in the case of The Pirate Bay.
Soulseek - while it has never been the most popular file-sharing platform, neither did
it ever have the ambition. Soulseek focuses on the exchange of music between enthusiasts,
underground producers, fans and researchers. The system and the community around
it is completely isolated from the Web: Soulseek files can’t be linked to. They are kept
exclusively on the hard-disks of Soulseek users. The content of the network fully depends
on how many members are connected and what they share. Files are transferred only
between two users at a time and nobody but those two users are involved. Because of
this ‘introverted’ character - and the specificity of its content - Soulseek has stayed out
of sight of legislation and non-pro-copy copyright advocates.
I2P is one of several systems developed to resist censorship (others include FreeNet
and Tor) and has a much smaller user community, it is highlighted here because of its
inclusion of Bit Torrent functionality within its basic installation. These systems can
also be used to provide hidden services, amongst others, enabling you to publish web
pages within their environments.
4.3.1 BitTorrent
BitTorrent is a peer-to-peer (P2P) protocol that facilitates distribution of data stored
across multiple nodes/participants of the network. There are no central servers or hubs,
each node is capable of exchanging data with any other node, sometimes hundreds of
them simultaneously. The fact that data is exchanged in parts between numerous nodes
allows for great download speeds for popular content on BitTorrent networks, making it
quickly the de facto P2P file-sharing platform.
If you are using BitTorrent to circulate material of ambiguous legality, you should
know that enforcement agents typically collect information on allegedly infringing peers
by participating in torrent swarms, observing and documenting the behaviour of other
61
4 Publishing And Distribution
peers. The large number of users creates a difficulty for the enforcement system simply at
the level of scaling up - there simply are not the resources to pursue every user. Any court
case will require actual evidence of data transfer between your client and another (and
usually evidence of you uploading), it is enough that you provide even part of the file,
not the file in its entirety, for a prosecution to have legs. But if you prefer to lean towards
greater caution, you should use a VPN to route your BitTorrent traffic, as detailed in
the Using VPN chapter.
Leeching (downloading) of a file from BitTorrent network begins with a torrent file or
magnet link. A torrent file is a small file containing information on the larger files you
want to download. The torrent file tells your torrent client the names of the files being
shared, a URL for the tracker and a hash code, which is a unique code representing, and
derived from, the underlying file - kind of like an ID or catalog number. The client can
use that hash to find others seeding (uploading) those files, so you can download from
their computers and check the authenticity of the chunks as they arrive.
A Magnet Link does away with the need for a torrent file and is essentially a hyperlink
containing a description for that torrent, which your torrent client can immediately use
to start finding people sharing the file you are willing to download. Magnet links don’t
require a tracker, instead they rely on Distributed Hash Table (DHT) - which you can
read more about in the Glossary - and Peer Exchange. Magnet links do not refer to a
file by its location (e.g. by IP addresses of people who have the file, or URL) but rather
defines search parameters by which this file can be found. When a magnet link is loaded,
the torrent client initiates an availability search which is broadcast to other nodes and
is basically a shout-out “who’s got anything matching this hash?!”. Torrent client then
connects to the nodes which responded to the shout-out and begins to download the file.
BitTorrent uses encryption to prevent providers and other man-in-the-middle from
blocking and sniffing your traffic based on the content you exchange. Since BitTorrent
swarms (flocks of seeders and leechers) are free for everyone to join it is possible for
anyone to join a swarm and gather information about all connected peers. Using magnet
links will not prevent you from being seen in a swarm; any of the nodes sharing the same
file must communicate between each-other and thus, if just one of the nodes in your
swarm is rogue, it will be able to see your IP address. It will also be able to determine
if you are seeding the data by sending your node a download request.
One important aspect of using BitTorrent is worth a special mention. Every chunk
of data that you receive (leech) is being instantly shared (seeded) with other BitTorrent
users. Thus, a process of downloading transforms into a process of (involuntary) pub-
lishing, using a legal term - making available of that data, before the download is even
complete. While BitTorrent is often used to re-distribute freely available and legitimate
software, movies, music and other materials, its “making available” capacity created a lot
of controversy and led to endless legal battles between copyright holders and facilitators
of BitTorrent platforms. At the moment of writing this text, the co-founder of The Pi-
rate Bay Gottfrid Svartholm is being detained by Swedish police after an international
warrant was issued against him.
For these reasons, and a public relations campaign by copyright holders, use of Bit-
Torrent platforms has become practically analogous to piracy. And while the meaning
62
4.3 File Sharing
of terms such as piracy, copyright and ownership in digital context is yet to be settled,
many ordinary BitTorrent users have been already prosecuted on the basis of breaking
copyright laws.
Most torrent clients allow you to block IP addresses of known copyright trolls us-
ing blacklists. Instead of using public torrents one can also join closed trackers or use
BitTorrent over VPN or Tor.
In situations when you feel that you should be worried about your BitTorrent traffic
and it’s anonymity go through the following check-list:
4.3.2 SoulSeek
As a peer to peer (P2P) file sharing program, the content available is determined by
the users of the Soulseek client, and what files they choose to share. The network has
historically had a diverse mix of music, including underground and independent artists,
unreleased music, such as demos and mix-tapes, bootlegs, etc. It is is entirely financed
by donations, with no advertising or user fees.
“Soulseek does not endorse nor condone the sharing of copyrighted materials.
You should only share and download files which you are legally allowed to,
or have otherwise received permission to, share.” (http://www.soulseekqt.
net)
Soulseek network depends on a pair of central servers. One server supports the original
client and network, and the other supporting the newer network. While these central
servers are key to coordinating searches and hosting chat rooms, they do not actually
play a part in the transfer of files between users, which takes place directly between the
users concerned.
Users can search for items; the results returned being a list of files whose names match
the search term used. Searches may be explicit or may use wildcards/patterns or terms
to be excluded. A feature specific to the Soulseek search engine is the inclusion of the
folder names and file paths in the search list. This allows users to search by folder name.
63
4 Publishing And Distribution
The list of search results shows details, such as the full name and path of the file,
its size, the user who is hosting the file, together with that users’ average transfer rate,
and, in the case of mp3 files, brief details about the encoded track itself, such as bit
rate, length, etc. The resulting search list may then be sorted in a variety of ways and
individual files (or folders) chosen for download.
Unlike BitTorrent, Soulseek does not support multi-source downloading or “swarming”
like other post-Napster clients, and must fetch a requested file from a single source.
While the Soulseek software is free, a donation scheme exists to support the pro-
gramming effort and cost of maintaining the servers. In return for donations, users are
granted the privilege of being able to jump ahead of non-donating users in a queue when
downloading files (but only if the files are not shared over a local area network). The
Soulseek protocol search algorithms are not published, as those algorithms run on the
server. However several Open Source implementations of server and client software exist
for Linux, OS X and Windows.
Regarding privacy and copyright issues Soulseek stand quite far away from BitTorrent
too. Soulseek has been taken to court only once, in 2008, but even that did not go
anywhere. There are no indications of Soulseek users ever being brought to court or
accused of illegal distribution of copyrighted materials or any other ‘digital-millenium’
crimes.
If you want to use the Soulseek network with some degree of real anonymity, you will
need to use it over a VPN.
4.3.3 I2P
I2P began as a fork from the Freenet project, originally conceived as a method for
censorship-resistant publishing and distribution. From their website:
The I2P project was formed in 2003 to support the efforts of those trying to
build a more free society by offering them an uncensorable, anonymous, and
secure communication system. I2P is a development effort producing a low
latency, fully distributed, autonomous, scalable, anonymous, resilient, and
secure network. The goal is to operate successfully in hostile environments
- even when an organization with substantial financial or political resources
attacks it. All aspects of the network are open source and available without
cost, as this should both assure the people using it that the software does
what it claims, as well as enable others to contribute and improve upon it to
defeat aggressive attempts to stifle free speech. (http://www.i2p2.de/)
For a guide to installing the software and configuring your browser see section on Secure
Filesharing - Installing I2P. Once complete, on launch you will be brought to a console
page containing links to popular sites and services. In addition to the usual webpages
(referred to as eePsites) there are a range of applications services available ranging from
the blogging tool Syndie to a built in BitTorrent client which functions through a web
interface.
64
5 Secure Calls And Sms
65
5 Secure Calls And Sms
5.2.1 Android
• TextSecure - WhisperSystems provide an SMS encryption system for Android
called TextSecure, based on public key cryptography which ensures that messages
are encrypted on the wire and are also stored in an encrypted database on the
device, however to ensure encryption on the wire, both parties must be using the
application. It is Open Source and available through the Play Store
The encryption technology behind it (named //axolotl//) extends the OTR protocol
so that messages can be encrypted and send even if not all of the communicating parties
are online.
66
6 Basic Email Security
6.1 Start Using Thunderbird
1. Use your web browser to visit the Thunderbird download page at http://www.
mozillamessaging.com/en-US/thunderbird/. This page detects your computer’s
operating system and language, and recommends the best version of Thunderbird
for you to use.
67
6 Basic Email Security
2. Click the download button to save the installation program to your computer.
Click the Save button to save the Thunderbird Setup file to your computer.
68
6.1 Start Using Thunderbird
69
6 Basic Email Security
Click the Next button to start the installation. If you want to cancel it, click the
Cancel button.
5. The next thing that you see is the Setup Type screen. For most users the Stan-
dard setup option is good enough for their needs. The Custom setup option is
recommended for experienced users only. Note that Thunderbird installs itself as
your default mail application. If you do not want this, clear the checkbox labeled
Use Thunderbird as my default mail application.
6. After Thunderbird has been installed, click the Finish button to close the setup
wizard.
70
6.1 Start Using Thunderbird
71
6 Basic Email Security
Mozilla recommends that a Linux system also has the following libraries or packages
installed:
72
6.1 Start Using Thunderbird
3. Type “Thunderbird” in the search box and press the Enter on your keyboard. The
Ubuntu Software Center finds Thunderbird in its list of available software.
4. Click the Install button. If Thunderbird needs any additional libraries, the Ubuntu
Software Center alerts you and installs them along with Thunderbird.
You can find the shortcut to start Thunderbird in the Internet option under the Ap-
plications menu:
1. Use your web browser to visit the Thunderbird download page at http://www.
mozillamessaging.com/en-US/thunderbird/. This page detects your computer’s
operating system and language, and it recommends the best version of Thunderbird
for you to use.
2. Download the Thunderbird disk image. When the download is complete, the disk
image may automatically open and mount a new volume called Thunderbird.
73
6 Basic Email Security
If the volume did not mount automatically, open the Download folder and double-click
the disk image to mount it. A Finder window appears:
3. Drag the Thunderbird icon into your Applications folder. You’ve installed Thun-
derbird!
4. Optionally, drag the Thunderbird icon from the Applications folder into the Dock.
Choosing the Thunderbird icon from the Dock lets you quickly open Thunderbird
from there.
Note: When you run Thunderbird for the first time, newer versions of Mac OS X
(10.5 or later) will warn you that the application Thunderbird.app was downloaded from
the Internet.
If you downloaded Thunderbird from the Mozilla site, click the Open button.
74
6.1 Start Using Thunderbird
75
6 Basic Email Security
After you have installed Thunderbird for the first time you will be guided through the
configuration of your mail account. These settings are defined by your e-mail provider
(your Internet Service Provider or web-based e-mail service provider). The next chapter
describes how to set up your account and configure it for maximum security.
There is a right (secure) way to configure your connection to your provider’s mail servers
and a wrong (insecure) way. The most fundamental aspect of e-mail security is the type
of connection that you make to your e-mail provider’s mail server.
Whenever possible, you should connect using the SSL (Secure Socket Layer) and TLS
(Transport Layer Security) protocols. (STARTTLS, which is another option available
when configuring an account, is a variation of SSL / TLS.) These protocols prevent
your own system (beyond Thunderbird) and any points between your system and the
mail server from intercepting and obtaining your password. SSL / TLS also prevent
eavesdroppers from reading the content of your messages.
These protocols, however, only secure the connection between your computer and the
mail server. They do not secure the information channel all the way to the message
recipient. Once the mail servers forward the message for delivery, the message may be
intercepted and read by points in between the mail server and the recipient.
This is where PGP (Pretty Good Privacy) comes in, which is described in the next
chapter.
The first step in establishing e-mail security is a secure connection between your system
and the mail servers. This chapter describes how to set up your e-mail account the right
way.
76
6.2 Setting up secure connections
• Your username
• Your password
• Incoming server: name (such as imap.example.com), protocol (POP or IMAP),
port (by default, 110), and security protocol
• Outgoing server: name (such as smtp.example.com), port (by default, 25), and
security protocol
You should have received this information from your hosting provider. Alternatively,
you can usually find this information on the support pages on the website of your hosting
provider. In our example we will be using the Gmail server configuration. You can use
Thunderbird with your Gmail account. To do so, you must change a configuration setting
in your account. If you are not using a Gmail account, skip the next section.
77
6 Basic Email Security
On the next screen, Thunderbird will attempt to determine the server names based
on your email address. This may take some time, and will only work if Thunderbird
knows the settings for the mail servers for your email provider. In either case you will
be presented with a window where you can modify the settings. In the example be-
low, Thunderbird has detected the settings automatically. You can see the protocol at
the right side of the server names. This should be either SSL/TLS or STARTTLS.
Otherwise your connection is insecure and you should attempt manual setup.
When you are finished, click Create account. If Thunderbird could not determine
your server settings, click on Manual setup to configure the server names yourself.
78
6.2 Setting up secure connections
79
6 Basic Email Security
Under ‘Server Settings’, we will find only the incoming (IMAP) server and its settings
for that specific account.
After Server Name enter the name of the IMAP server, in this case mail.gmail.com.
As you can see we have selected ‘SSL/TLS’ under the connection security setting.
This enforces encryption. Do not be scared by the authentication method Normal
80
6.2 Setting up secure connections
81
6 Basic Email Security
password. The password will be automatically encrypted due to our secured connections
to the server.
Finally, configure the outgoing server for the account. Click on Outgoing Server
(SMTP) in the left panel.
Again, we have selected SSL/TLS under Connection security. The port will default
to 465 and this should generally not have to be changed.
82
6.3 Some Additional Security Settings
• Adaptive junk mail controls. Adaptive junk mail controls allow you to train
Thunderbird to identify junk email (SPAM) and remove it from your inbox. You
can also mark messages as junk mail manually if your email provider’s system
misses the junk mail and lets it go through.
• Integration with anti-virus software. If your anti-virus software supports
Thunderbird, you can use that software to quarantine messages that contain viruses
or other malicious content. If you’re wondering what anti-virus software works with
Thunderbird, you can find a list here: http://kb.mozillazine.org/Antivirus_
software.
• Master password. For your convenience, you can have Thunderbird remember
each of your individual passwords of your e-mail accounts. You can specify a
master password that you enter each time you start Thunderbird. This will enable
Thunderbird to open all your email accounts with your saved passwords.
• Restrictions on cookies. Some blogs and websites attempt to send cookies
(a piece of text that stores information from Web sites on your computer) with
their RSS feeds. These cookies are often used by content providers to provide
targeted advertising. Thunderbird rejects cookies by default, but you can configure
Thunderbird to accept some or all cookies.
83
6 Basic Email Security
2. Do the following:
• To tell Thunderbird that it should handle messages marked as junk, select the
check box labelled ‘When I mark message as junk’.
• To have Thunderbird move these messages to a junk folder, select the ‘Move
them to account’s ’Junk’ folder’ radio button.
• To have Thunderbird delete junk mail upon receiving it, select the ‘Delete
them’ radio button.
3. Thunderbird will mark junk message as read if you select the check box labeled
‘Mark messages determined to be Junk as read’.
4. If you want to keep a log of junk mail received, select the ‘Enable junk filter logging’
check box.
5. Click the ‘OK’ button to close the ‘Options/Preferences’ dialog box.
2. To have Thunderbird warn you about possible email scams, select the check box
84
6.3 Some Additional Security Settings
labelled ‘Tell me if the message I’m read is a suspected email scam’. To turn off
this feature, deselect this check box.
2. To turn on anti-virus integration, select the check box labeled ‘Allow anti-virus
clients to quarantine individual incoming messages’. To turn off this feature, dese-
lect this check box.
3. Click the ‘OK’ button to close the ‘Options/Preferences’ dialog box.
85
6 Basic Email Security
4. Click the ‘OK’ button to close the Change Master Password dialog box.
5. If you want to see the passwords that you have saved in Thunderbird, click the
‘Saved Passwords’ button. This will open the ‘Saved Passwords’ dialog box.
86
6.3 Some Additional Security Settings
87
6 Basic Email Security
88
6.3 Some Additional Security Settings
89
6 Basic Email Security
2. In Windows or Mac go to the ‘Tools’ menu and select ‘Account Settings’. In Linux,
go to the ‘Edit menu’ and select ‘Account Settings’.
3. To set adaptive junk mail controls for a specific account, pick an account and click
‘Junk Settings’.
4. To turn on the controls, select the check box labeled ‘Enable adaptive junk mail
controls for this account’. To turn them off, deselect this check box.
5. If you want the controls to ignore mail from senders in your Address Book, select
the check boxes next to any of the listed address books.
6. To use a mail filter such as SpamAssassin or SpamPal, select the check box labelled
‘Trust junk mail headers sent by:’ and pick a filter from the menu.
7. Select the check box labeled ‘Move new junk messages to’ if you want to move junk
mail to a specified folder. Then select the destination folder to be either at your
email provider or a local folder on your computer.
90
6.3 Some Additional Security Settings
91
6 Basic Email Security
8. Select the ‘Automatically delete junk mail other 14 days’ check box to have Thun-
derbird regularly remove junk mail. To change the time period for this process,
enter a different number (in days) in the text box.
9. Click ‘OK’ to save your changes.
92
7 Email Encryption
7.1 Introducing mail encryption (PGP)
This chapter will introduce you to some basic concepts behind mail encryption. It is
important to read to get some feeling of how mail encryption actually works and what its
caveats and limitations are. PGP (Pretty Good Privacy) is the protocol we shall use for
e-mail encryption. This protocol allows us to digitally sign and encrypt mail messages.
It works on an end-to-end basis: messages will be encrypted on your own computer and
will only be decrypted by the recipient of the message. There is no possibility for a
‘man-in-the-middle’ to decipher the contents of your encrypted message. This excludes
the subject lines and the ‘from’ and ‘to’ addresses, which unfortunately are not encrypted
in this protocol.
After having introduced these basic concepts, the next chapters will give you a hands-
on guide to install the necessary tools on your operating system and get encryption up
and running. We will focus on using Enigmail which is an extension for Thunderbird that
helps you manage PGP encryption for your email. The installation process for Enigmail
/ PGP is different for Mac OSX, Windows and Ubuntu so please see the appropriate
chapters in this section for instructions.
93
7 Email Encryption
7.1.2 Sending encrypted mails to other people: you need their public key
I have five colleagues at work and I want to send encrypted mails to them. I need to have
public keys for each of their addresses. They can send me these keys using ordinary mail,
or they can give them to me in person, or put them on a USB stick, or they can have
their keys on a website. It doesn’t matter, as long as I can trust those keys really belong
to the person I want to correspond with. My software puts the keys on my ‘keyring’, so
my mail application knows how to send them encrypted mails.
7.1.3 Receiving encrypted mails from other people: they need my public
key
For my five (or thirty) colleagues to be able to send me encrypted mails, the process goes
the other way around. I need to distribute my public key to each of them.
94
7.2 Installing PGP on Windows
This will take you to a page where you can download the Gpg4Win. Click on the
button which offers you the latest stable version (not beta) of Gpg4Win.
This will download you an .exe file. Depending on your browser, you may have to
double-click on this downloaded file (named something like gpg4qin-2.1.0.exe) before
something happens. Windows will ask you if you are sure you want to install this pro-
gram. Answer yes.
Then complete the installation by agreeing to the license, choosing appropriate lan-
guage and accepting the default options by clicking ‘Next’, unless you have a particular
reason not to.
The installer will ask you where to put the application on your computer. The default
setting should be fine but make a note of it as we may need this later. Click on ‘Next’
when you agree.
95
7 Email Encryption
within Thunderbird.
Enigmail is based on public-key cryptography. In this method, each individual must
generate her/his own personal key pair. The first key is known as the private key. It is
protected by a password or passphrase, guarded and never shared with anyone.
The second key is known as the public key. This key can be shared with any of
your correspondents. Once you have a correspondent’s public key you can begin sending
encrypted e-mails to this person. Only she will be able to decrypt and read your emails,
because she is the only person who has access to the matching private key.
Similarly, if you send a copy of your own public key to your e-mail contacts and keep
the matching private key secret, only you will be able to read encrypted messages from
those contacts.
Enigmail also lets you attach digital signatures to your messages. The recipient of your
message who has a genuine copy of your public key will be able to verify that the e-mail
comes from you, and that its content was not tampered with on the way. Similarly, if you
have a correspondent’s public key, you can verify the digital signatures on her messages.
1. Open Thunderbird, then Select Tools > Add-ons to activate the Add-ons win-
dow; the Add-ons window will appear with the default Get Add-ons pane enabled.
2. Enter enigmail in the search bar, like below, and click on the search icon.
96
7.2 Installing PGP on Windows
4. Thunderbird will ask you if you are certain you want to install this add-on. We
trust this application so we should click on the ‘Install now’ button.
5. After some time the installation should be completed and the following window
should appear. Please click on the ‘Restart Thunderbird’ button.
97
7 Email Encryption
Note on OSX Mail: It is possible to use PGP with the build-in mail program of
OSX. But we do not recommend this because this option relies on a hack of the program
which is neither open or supported by its developer and breaks with every update of
the mail program. So unless you really have no other option we advice you to switch to
Mozilla Thunderbird as your default mail program if you want to use PGP.
98
7.3 Installing PGP on OSX
(nb. We are using the latest version Firefox for this manual, so the screens might look
a little bit different if you are using a different browser)
2. Download the software by choosing ‘Save File’ and clicking ‘OK’ in the dialogue.
3. Navigate to the folder where you normally store your downloads (Mostly the desk-
top or the downloads folder surprisingly) en double click the ‘.DMG’ file to open
the virtual disk containing the installer.
5. The program will check your computer to see if it can run on the computer.
(Note, if you’re Mac is bought before 2006 it will not have an intel processor required
to run this software and the installation will fail. Sadly it is beyond the scope op this
manual to also take into account computers over five year old)
You will be guided by the program through the next steps like accepting the license
agreement. But stop pressing all the OK’s and Agrees as soon as you come to the
‘Installation Type’ screen:
6. Clicking ‘Customize’ will open this screen where you several options of programs
and software to install. You can click on each one of them to get a little bit of
information on what is is, what it does and why you might need it.
As said in the intro; we advise against using Apple Mail in combination with PGP.
Therefore you won’t be needing ‘GPGMail’, as this enables PGP on Apple Mail, and you
can uncheck it.
‘Enigmail’ on the other hand is very important as it is the component that will enable
Thunderbird to use PGP. In the screen shot here it is greyed out as the installer wasn’t
able to identify my installation of Thunderbird. Since this seems to be a bug. You can
also install Enigmail from within Thunderbird as is explained in another chapter.
If the option is not greyed out in your installation, you should tick it.
After you checked all the components you want to install click ‘Install’ to proceed. The
installer will ask you for your password and after you enter that the installation will run
and complete; Hooray!
99
7 Email Encryption
100
7.3 Installing PGP on OSX
101
7 Email Encryption
102
7.3 Installing PGP on OSX
103
7 Email Encryption
104
7.3 Installing PGP on OSX
105
7 Email Encryption
106
7.3 Installing PGP on OSX
In the Add-On window, you can search for ‘Enigmail’ and install the extension by
clicking ‘Add to Thunderbird . . . ’
2. After you open the Add-On window, you can search for ‘Enigmail’ and install the
extension by clicking ‘Add to Thunderbird . . . ’
Be aware that you will have to restart Thunderbird to use the functionality
of this extension!
Now that you have successfully downloaded and installed Enigmail and PGP you can
go on to the Chapter that deals with setting up the software for use.
107
7 Email Encryption
108
7.3 Installing PGP on OSX
109
7 Email Encryption
110
7.5 Installing GPG on Android
1. Generate a new private key that uses DSA-Elgamal with your PC’s GPG installa-
tion (You can only create keys with up to 1024bit key length on Android itself).
2. Copy the private key to your Android device.
3. Import the private key to APG. You may wish to have APG automatically delete
the plaintext copy of your private key from your Android device’s filesystem.
4. Set-up your e-mail accounts in K-9 Mail.
5. In the settings for each account, under Cryptography, make sure that K-9 Mail
knows to use APG. You can also find options here to make K-9 Mail automatically
sign your messages and/or encrypt them if APG can find a public key for the
recipient(s).
6. Try it out.
7.5.1 APG
This is a small tool which makes GPG encryption possible on the phone. You can use
APG to manage your private and public keys. The options in the application are quite
111
7 Email Encryption
1. This is what the wizard looks like. Please read the text on every window carefully. It
provides useful information and helps you setup PGP to your personal preferences.
In the first screen, click on Next to start the configuration.
2. The wizard asks you whether you want to sign all your outgoing mail messages.
Signing all your messages is a good choice. If you choose not to, you can still
manually decide to sign a message when you are composing it. Click on the ‘Next’
button after you have made a decision.
3. On the following screen, the wizard asks you whether you want to encrypt all your
outgoing mail messages. Unlike signing of mails, encryption requires the recipient
to have PGP software installed. You should probably answer ‘no’ to this question,
so that you will send normal (unencrypted) mail by default. After you have made
your decision, click on the ‘Next’ button.
112
7.6 Creating your PGP keys
113
7 Email Encryption
114
7.6 Creating your PGP keys
115
7 Email Encryption
4. On the following screen the wizard asks if it can change some of your mail formatting
settings to better work with PGP. It is a good choice to answer ‘Yes’ here. This
will mean that by default, mail will be composed in plain text rather than HTML.
Click on the ‘Next’ button after you have made your decision.
5. In the following screen, select one of your mail accounts; the default is selected
for you if you only have one. In the ‘Passphrase’ text box you must enter a pass-
word. This is a new password which is used to protect your private key. It is
very important to remember this password, because you cannot read your own
encrypted emails if you forget it. Make it a strong password, ideally 20 characters
or longer. Please see the chapter on passwords for help on creating unique, long
and easy to remember passwords. After you have selected your account and created
a passphrase, click on the ‘Next’ button.
116
7.6 Creating your PGP keys
117
7 Email Encryption
6. In the following screen the wizard summarizes the actions it will take to enable
PGP encryption for your account. If you are satisfied, click the ‘Next’ button.
7. Your keys will be created by the wizard, which will take some time. When com-
pleted, click on the ‘Next’ button.
8. You now have your own PGP key-pair. The wizard will ask you if you also want to
create a ‘Revocation certificate’. This is a file which can be used to inform everyone
if your private key is compromised, for example if your laptop is stolen. Think of
it as a ‘kill switch’ for your PGP identity. You may also wish to revoke the key
simply because you have generated a new one, and the old one is obsolete.
118
7.6 Creating your PGP keys
119
7 Email Encryption
9. If you decided to generate a revocation certificate, the wizard will ask you where
the file should be saved. The dialog will look different depending on which oper-
ating system you use. It is a good idea to rename the file to something sensible
like my_revocation_certificate. Click on ‘Save’ when you you have decided on a
location.
10. If you decided to generate a revocation certificate, the wizard informs you it has
been successfully stored. You may want to print it out or burn it to a CD and keep
it in a safe place.
Congratulations, you now have a fully PGP-configured mail client. In the next chapter
we will explain how to manage your keys, sign messages and do encryption. Thunderbird
can help you do a lot of these things automatically.
120
7.6 Creating your PGP keys
121
7 Email Encryption
1. Encrypting attachments
2. Entering your pass-phrase
3. Receiving encrypted e-mail
4. Sending and receiving public keys
5. Receiving public keys and adding them to your key ring
6. Using public key servers
7. Signing e-mails to an individual
8. Sending encrypted e-mails to an individual
9. Automating encryption to certain recipients
10. Verifying incoming e-mails
11. Revoking your GPG key pair
12. What to do when you have lost your secret key, or forgot your passphrase
13. What to do when your secret key has been stolen, or compromised
14. Backing up your keys
First we shall explain two dialog windows that will inevitably appear after you start
using Thunderbird to encrypt your emails.
122
7.7 Daily PGP usage
For security reasons, the pass-phrase to your secret key is stored temporarily in memory.
Every now and then the dialog window below will pop-up. Thunderbird asks you for
the pass-phrase to your secret key. This should be different from your normal email
password. It was the pass-phrase you have entered when creating your key-pair in the
previous chapter. Enter the pass-phrase in the text-box and click on ‘OK’
The decryption of e-mails is handled automatically by Enigmail, the only action that
may be needed on your behalf is to enter the pass-phrase to your secret key. However, in
order to have any kind of encrypted correspondence with somebody, you will first need
to exchange public keys.
123
7 Email Encryption
2. Compose a mail to your friend or colleague and tell them you are sending them
your PGP public key. If your friend does not know what that means, you may have
to explain them and point them to this documentation.
3. Before actually sending the mail, click to OpenPGP > Attach My Public Key op-
tion on the menu bar of the mail compose window. Next to this option a marked
sign will appear. See the example below.
124
7.7 Daily PGP usage
125
7 Email Encryption
126
7.7 Daily PGP usage
to your keyring. The following pop-up should appear. Thunderbird says the operation
was successful. Click on ‘OK’ and you are almost done.
We are back in the main Thunderbird screen and we refresh the view on this particular
example message, by clicking on some other message and back for example. Now the
body of the message looks different (see below). This time Thunderbird does recognize
the signature, because we have added the public key of the sender.
There is still one thing that remains. While Thunderbird now recognizes the signature,
we should explicitly trust that the public key really belongs to the sender in real life. We
realize this when we take a closer look at the green bar (see below). While the signature
is good, it is still UNTRUSTED.
We will now decide to trust this particular public key and the signatures made by
it. We can do this immediately by clicking on ‘Details’. A small menu will appear (see
below). From this menu we should click on the option ‘Sign Sender’s Key . . . ’.
After we have selected ‘Sign Sender’s Key . . . ’ we will get another selection window
127
7 Email Encryption
(see below). We are requested to state how carefully we have checked this key for validity.
The explanation of levels of trust and trust networks in GPG falls outside the scope of
this document. We will not use this information, therefore we will just select the option
‘I will not answer’. Also select the option ‘Local signature (cannot be exported)’. Click
on the ‘OK’ button to finishing signing this key. This finishes accepting the public key.
You can now send encrypted mail to this individual.
128
7.7 Daily PGP usage
1. Head to the key manager by using the Thunderbird menu and click on OpenPGP >
Key Management
2. The key management window will be displayed and looks like this:
3. You need to have selected the ‘Display All Keys by Default’ option to get a list
of all your keys. Look up your own email address in the list and right click on
the address. A selection window will appear with some options. Select the option
‘Upload Public Keys to Keyserver’.
4. You will see a small dialog window like below. The default server to distribute your
keys to is good. Press ’OK" and distribute your public key to the world.
To look up whether some email address has a public key available on a server, take
the following steps.
129
7 Email Encryption
130
7.7 Daily PGP usage
1. Head to the key manager by using the Thunderbird menu and click on OpenPGP >
Key Management
2. In the key manager window menu bar, select Keyserver > Search for Keys
3. In this example we will look-up up the key for the creator of PGP software, Philip
Zimmermann. After we have entered the email address, we click on ‘OK’.
4. The next window displays the result of our search. We have found the public key.
It is automatically selected. Just click on ‘OK’ to import the key.
5. Importing the key will take some time. On completion you should see a pop-up
window like below.
131
7 Email Encryption
132
7.7 Daily PGP usage
6. The final step is to locally sign this key, to indicate that we trust it. When you
are back in the key manager, make sure you have selected the ‘Display All Keys by
Default’ option. You should now see the newly imported key in the list. Right-click
on the address and select the option ‘Sign Key’ from the list.
7. Select the options ‘I will not answer’ and ‘Local signature (cannot be exported)’,
then click on ‘OK’. You are now finished and can send Philip Zimmermann en-
crypted mail.
133
7 Email Encryption
1. Offer your friend your public key, using the method described earlier in this chapter.
3. Before actually sending the mail, enable the OpenPGP > Sign Message option via
the menu bar of the mail compose window, if it is not enable already. Once you
have enabled this option, by clicking on it, a marked sign will appear. Clicking
again should disable encryption again. See the example below.
134
7.7 Daily PGP usage
3. Compose a mail to the friend or colleague, from who you have previously received
their public key. Remember the subject line of the message will not be
encrypted, only the message body itself, and any attachments.
4. Before actually sending the mail, enable the OpenPGP > Encrypt Message option
via the menu bar of the mail compose window, if it is not enabled already. Once
you have enabled this option, by clicking on it, a marked sign will appear. Clicking
again should disable encryption again. See the example below.
135
7 Email Encryption
The preferences window will appear like below. We need to click on ‘Display Expert
Settings’.
New menu tabs will appear in the window. Go to the tab ‘Key Selection’ and then
click on the button labeled ‘Edit Rules . . . ’
We are now shown the per-recipient rules editor (see below). This editor can be used
to specify the way how messages to certain recipients are sent. We will now add a rule
saying we want to encrypt and sign all mail messages to [email protected]
First click on the ‘Add’ button.
Now the window to add a new rule will be shown.
The first thing we should enter is the email address of the recipient. In the example
below we have entered [email protected]
Now we will set the encryption defaults by using the drop-downs below. For Signing
select ‘Always’. For Encryption also select ‘Always’.
Finally we have to select the public key of the recipient, with which to encrypt our
messages. Do not forget this important step, otherwise the e-mail will not be encrypted.
Click on the button labeled ‘Select Key(s). . . ’. The key selection window will show up.
The most obvious key will be selected by default. In the example below, we only have
one public key available. We can select keys by clicking on the small box next to the
address. Then we click ‘OK’ and close all relevant windows and we are finished.
136
7.7 Daily PGP usage
137
7 Email Encryption
138
7.7 Daily PGP usage
139
7 Email Encryption
140
7.7 Daily PGP usage
The last example message was signed but not encrypted. If the message had been
encrypted, it would show like this:
When a message which has been encrypted, but not signed, it could have been a forgery
by someone. The status bar will become gray like in the image below and tells you that
while the message was sent securely (encrypted), the sender could have been someone else
than the person behind the email address you will see in the ‘From’ header. The signature
is neccessaty to verify the real sender of the message. Of course it is perfectly possible
that you have published your public key on the Internet and you allow people to send
you emails anonymously. But is it also possible that someone is trying to impersonate
one of your friends.
Similarly if you receive a signed email from somebody you know, and you have this per-
sons public key, but still the status bar becomes yellow and displays a warning message,
it is likely that someone is attempting to send you forged emails!
Sometimes secret keys get stolen or lost. The owner of the key will inform his friends
and send them a so-called revocation certificate (more explanation of this in the next
paragraph). Revocation means that we no longer trust the old key. The thief may
afterwards still try his luck and send you a falsely signed mail message. The status bar
will now look like this:
Strangely enough Thunderbird in this situation will still display a green status bar!
It is important to look at the contents of the status bar in order to understand the
encryption aspects of a message. GPG allows for strong security and privacy, but only if
you are familiar with its use and concepts. Pay attention to warnings in the status bar.
141
7 Email Encryption
7.7.12 What to do when you have lost your secret key, or forgot your
passphrase
During the creation of your key-pair, the OpenPGP wizard offered you the possibility
to create a so-called revocation certificate. This is a special file you send to others in
the advent you have to disable your key. If you have a copy of this file, sending the
revocation key is simply sending the file as an attachment to all your friends. You can no
longer send signed mails (obviously, because you have lost your secret key). That doesn’t
matter. Send it as a normal mail. The revocation certificate file could only have been
created by the owner of the secret key and proves he or she wants to revoke it. That’s
why it should normally be kept hidden from others.
If you do not have the revocation certificate, there exists no other option than for
you to contact your friends personally and convince them your key is lost and that they
should no longer trust it.
7.7.13 What to do when your secret key has been stolen, or compromised
If you have reason to believe your secret key has been compromised, or worse your secret
key and passphrase, it is very important to contact others that they should stop sending
you encrypted messages. With your secret key, other persons will be able to break the
encryption of your e-mail messages if they also have your passphrase. This is also true
for those messages you have send in the past. Cracking the passphrase is not trivial, but
it may be possible if the party has lots of resources, like a state or a big organization for
example, or if your passphrase is too weak. In any case you should assume the worst and
assume your passphrase may have been compromised. Send a revocation certificate file
to all your friends or contact them personally and inform them of the situation.
Even after you have revoked your old key pair, the stolen key may still be used to
142
7.7 Daily PGP usage
decrypt your previous correspondence. You should consider other ways to protect that
old correspondence, for instance by re-encrypting it with a new key. The latter operation
will not be discussed in this manual. If you are uncertain you should seek assistance from
experts or look up more information on the web.
143
7 Email Encryption
144
7.7 Daily PGP usage
people.
145
7 Email Encryption
A new file called “message.asc” will be created. It contains the encrypted message
and can thus be either attached to an email or its content safely copy & pasted into the
browser window.
To decrypt a message from the browser window, simply type gpg into the command
line and hit Enter. Then copy & paste the message to be decrpyted into the commandline
window and after being asked for your passphrase hit Ctrl+D (this enters a end-of-file
character and prompts gpg to output the cleartext message).
If using the commandline seems too cumbersome to you, you might consider installing a
helper application like gpgApplet, kgpg or whatever application ships with your operating
system.
146
8 Safer Browsing
8.1 Why Firefox?
Firefox is open source software, developed by the non-profit organisation, the Mozilla
Foundation. As such, it is independent from the interests of any one specific company
although a large portion of its funding comes from Google for its placement as the default
search engine within the Firefox browser. It is also highly extensible through the add-ons
and plugins, which allows users greater control over how the browser acts as compared
to Internet Explorer or Chrome (and it’s open-source’d version, Chromium). It should
however be noted that this extensibility through add-ons is a double-edged sword and as
such add-ons also have great power to subvert the browsers normal activities as well as
enhance them.
If you are uncomfortable with Google as the default search engine, this can be changed
through the ‘Manage Search Engines. . . ’ option from the pull-down menu of the search
box. Some more pro-privacy search engines that are worth considering are Startpage and
DuckDuckGo.
147
8 Safer Browsing
3. Click and drag the Firefox icon on top of the Applications icon.
4. When the installation is finished, close the two small Firefox windows.
5. Eject the Firefox disk image. If this does not work by normal means, select the
disk image icon and then, in the Finder menu, select File > Eject Firefox.
6. Now, open the Applications directory and drag the Firefox icon to the dock:
7. Click the Firefox icon in the Dock to start Firefox. The Import Wizard dialog
box appears:
148
8.3 Installing on Mac OS X
149
8 Safer Browsing
150
8.3 Installing on Mac OS X
151
8 Safer Browsing
152
8.4 Installing Firefox on Windows
8. To import your bookmarks, passwords and other data from Safari, click Continue.
If you don’t want to import anything, just select Cancel.
2. Click the download button and the installation file will begin to download to your
computer.
3. Once the download is complete, double-click the installation file to start the Firefox
installation wizard.
• If you are running Windows Vista, you may get a User Account Control
prompt. In this case, allow the setup to run by clicking Continue.
153
8 Safer Browsing
154
8.4 Installing Firefox on Windows
• If you are running Windows 7, you will be asked whether to allow Firefox to
make changes to your computer. Click on Yes.
A welcome screen appears.
4. Click Next to continue. You will be asked if you would like the standard installa-
tion, or whether you would like to customize it. Choose the standard installation
and click Next.
5. You will be asked if you want Firefox to be your default browser. This is recom-
mended.
6. Click Install.
7. To import your bookmarks and other data from other browsers (for example Inter-
net Explorer), click Continue. If you don’t want to import anything, just select
Cancel.
155
8 Safer Browsing
156
8.5 Extending Firefox
8. Once Firefox has been installed, click Finish to close the setup wizard.
If the Launch Firefox now check box is checked, Firefox will start after you click
Finish. Otherwise you can launch Firefox through the start menu.
8.4.1 Troubleshooting
If you have problems starting Firefox, see https://support.mozilla.com/kb/Firefox+
will+not+start
157
8 Safer Browsing
Please note that some of those sites still include a lot of content, such as images or icons,
from third party domains that is not available over HTTPS. As always, if the browser’s
lock icon is broken or carries an exclamation mark, you may remain vulnerable to some
adversaries that use active attacks or traffic analysis. However, the effort required to
monitor your browsing should still be usefully increased.
Some Web sites (such as Gmail) provide HTTPS support automatically, but using
HTTPS Everywhere will also protect you from TLS/SSL-stripping attacks, in which an
attacker hides the HTTPS version of the site from your computer if you initially try to
access the HTTP version.
Additional information can be found at: https://www.eff.org/https-everywhere.
8.5.2 Installation
First, download the HTTPS Everywhere extension from the official Web site: https:
//www.eff.org/https-everywhere
Select the newest release. In the example below, version 2.2 of HTTPS Everywhere
was used. (A newer version may be available now.)
Click on “Allow”. You will then have to restart Firefox by clicking on the “Restart
Now” button. HTTPS Everywhere is now installed.
158
8.5 Extending Firefox
159
8 Safer Browsing
8.5.3 Configuration
To access the HTTPS Everywhere settings panel in Firefox 4 (Linux), click on the Tools
menu at the top of your screen and then select Add-ons. (Note that in different versions of
Firefox and different operating systems, the Add-ons Manager may be located in different
places in the interface.)
A list of all supported Web sites where HTTPS redirection rules should be applied will
be displayed. If you have problems with a specific redirection rule, you can uncheck it
here. In that case, HTTPS Everywhere will no longer modify your connections to that
specific site.
8.5.4 Usage
Once enabled and configured, HTTPS Everywhere is very easy and transparent to use.
Type an insecure HTTP URL (for example, http://www.google.com).
Press Enter. You will be automatically redirected to the secure HTTPS encrypted Web
site (in this example: https://encrypted.google.com). No other action is needed.
160
8.5 Extending Firefox
161
8 Safer Browsing
162
8.5 Extending Firefox
163
8 Safer Browsing
1. Download the latest version of Adblock Plus from the Add-On database of Firefox
2. Confirm that your want Adblock Plus by clicking “Install Now”.
3. After Adblock Plus has been installed, Firefox will ask to restart.
164
8.5 Extending Firefox
165
8 Safer Browsing
Which filter subscription should you choose? Adblock Plus offers a few in its dropdown
menu and you may wish to learn about the strengths of each. A good filter to start
protecting your privacy is EasyList (also available at http://easylist.adblockplus.
org/en).
As tempting as it may seem, don’t add as many subscriptions as you can get, since some
may overlap, resulting in unexpected outcomes. EasyList (mainly targeted at English-
language sites) works well with other EasyList extensions (such as region-specific lists
like RuAdList or thematic lists like EasyPrivacy). But it collides with Fanboy’s List
(another list with main focus on English-language sites).
You can always change your filter subscriptions at any time within preferences. Once
you’ve made your changes, click OK.
||facebook.*$domain=~facebook.com|~127.0.0.1
The first part (||facebook.*) will initially block everything coming from Facebook’s
domain. The second part ($domain=~facebook.com|~127.0.0.1) is an exception that
tells the filter to allow Facebook requests only when you are in Facebook or if the Face-
book requests come from 127.0.0.1 (your own computer) in order to keep certain features
of Facebook working.
A guide on how to create your own Adblock Plus filters can be found at http://
adblockplus.org/en/filters.
8.5.12 Enabling and disabling AdBlock Plus for specific elements or Web
sites
You can see the elements identified by AdBlock Plus by clicking on the ABP icon AdBlock
Plus icon in your browser (usually next to the search bar) and selecting “Open blockable
items”. A window at the bottom of your browser will let you enable or disable each
element on a case-by-case basis. Alternatively, you can disable AdBlock Plus for a
specific domain or page by clicking on the ABP icon and ticking the option “Disable
on [domain name]” or “Disable on this page only”.
166
8.6 Proxy Settings
• Flagfox - puts a flag in the location bar telling you where the server you are visiting
is most probably located. https://addons.mozilla.org/en-US/firefox/addon/
flagfox/
• GoogleSharing - If you are worried that google knows your search history, this
extension will help prevent that. https://addons.mozilla.org/en-us/firefox/
addon/googlesharing/
• NoScript - Although not friendly for beginners, this addon will block scripts and
third party plugin content (eg, Adobe Flash) unless specifically allowed by the
user, it also provides general protection against simple cross site scripting vectors.
http://noscript.net/
• User Agent Switcher - Your browser supplies large amounts of identifying infor-
mation to any remote server through the ‘User-Agent’ header, including Operating
System and specific version information. This addon allows you to supply either
a fake or generic User-Agent to the server. http://chrispederick.com/work/
user-agent-switcher/
• Web proxies, which only require that you know the address to the proxy Web site,
which may have a URL similar to http://proxy.com/cgi-bin/nph-proxy.cgi
• HTTP proxies, which require that you modify your Browser settings. HTTP proxies
only work for Web content. You may get the information about a HTTP proxy in
the format proxy.example.com:3128 or 192.168.0.1:8080.
• SOCKS proxies, which also require that you modify your Browser settings. SOCKS
proxies work for many different Internet applications, including e-mail and instant
messaging tools. The SOCKS proxy information looks just like HTTP proxy infor-
mation.
You can use a Web proxy directly without any configuration by typing in the URL.
The HTTP and SOCKS proxies, however, have to be configured in your Web browser.
167
8 Safer Browsing
Select Settings, click on “Manual proxy configuration” and enter the information of the
proxy server you want to use. Please remember that HTTP proxies and SOCKS proxies
work differently and have to be entered in the corresponding fields. If there is a colon (:)
in your proxy information, that is the separator between the proxy address and the port
number. Your screen should look like this:
After you click OK, your configuration will be saved and your Web browser will au-
tomatically connect through that proxy on all future connections. If you get an error
message such as, “The proxy server is refusing connections” or “Unable to find the proxy
server”, there is a problem with your proxy configuration. In that case, repeat the steps
above and select “No proxy” in the last screen to deactivate the proxy.
168
8.6 Proxy Settings
169
8 Safer Browsing
This is fine, and Alice and Bob can use end to end cryptography to ensure privacy,
integrity and authenticity of their communications, however if Alice does not want Bob
to know that she is viewing his website or does not want Eve (a hypothetical evesdropper,
on Alice or Bobs side of the connection) to know she and Bob are communicating, extra
steps must be taken.
Alice instead makes an encrypted connection to an EntryNode on the Tor network,
here they establish a TLS connection and the EntryNode allows Alice to make a further
connection through it. Once again a TLS connection is established this time through the
already encrypted EntryNode connection, and once again the process is repeated through
the RelayNode to the ExitNode. Now, Alice is encrypting the data 3 times, first for the
ExitNode, then for the RelayNode and finally for the EntryNode. Creating a network
path like this:
When the EntryNode receives Alice’s data it is still encrypted for the RelayNode
and ExitNode, it knows where the data is coming from but not the final destination
or the message content, it then passes the data on to the RelayNode. The RelayNode
receives the data but it is still encrypted for the ExitNode, it knows it is coming from
the EntryNode and going to the ExitNode but does not know the final destination or the
original sender, it then passes the data to the ExitNode which removes the final layer of
encryption, the ExitNode knows what the message is, that it came from RelayNode but
does not know where it entered the network, or who sent it.
This layered approach is where Tor derives it’s name from (The Onion Router), each
‘layer’ knows only of the layer on either side of it, meaning that none in the chain except
Alice knows the full path the data is taking, however Alice, Bob and the ExitNode are all
able to see the message content, thus end-to-end cryptography is still required to ensure
privacy, integrity and authenticity of the communications across the Tor network.
Use of this system makes it more difficult to trace internet traffic to the user, including
visits to Web sites, online posts, instant messages, and other communication forms. It is
intended to protect users’ personal freedom, privacy, and ability to conduct confidential
business, by keeping their internet activities from being monitored. The software is
open-source and the network is free of charge to use.
170
8.7 Using Tor?
Like all current low latency anonymity networks, Tor cannot and does not attempt
to protect against monitoring of traffic at the boundaries of the Tor network, i.e., the
traffic entering and exiting the network. While Tor does provide protection against traffic
analysis, it cannot prevent traffic confirmation (also called end-to-end correlation)
Caution: As Tor does not, and by design cannot, encrypt the traffic between an exit
node and the target server, any exit node is in a position to capture any traffic passing
through it which does not use end-to-end encryption such as TLS. (If your postman is
corrupt he might still open the envelope and read the content). While this may or may
not inherently violate the anonymity of the source, if users mistake Tor’s anonymity
for end-to-end encryption they may be subject to additional risk of data interception by
third parties. So: the location of the user remains hidden; however, in some cases content
is vulnerable for analysis through which identifying or revealing information about the
user may be gained.
171
8 Safer Browsing
consider running a bridge. Since Tor relays are public, some ISP block access to the Tor
network by blocking all the relays. Tor Bridges are unlisted are therefore, more difficult
to find.
Tor’s goal is to protect anonymity on the Internet, but sometimes Tor is used for
illegal purposes. As a relay operator, consult the Legal FAQ, written by the Electronic
Frontier Foundation (EFF). The EFF is a U.S. based non-profit organization whose
mission is to “protect your digital right.” Other countries should seek the advice of
similar organizations. However, legal risks can be minimized by running a non-exit relay
or bridge.
If you’d like to configure your computer to run a relay or a bridge, visit the Tor website
for thorough instructions.
8.8.4 PrivacyFix
PrivacyFix (beta) gives you a dashboard view of your privacy settings on Facebook and
Google, as well as Do-Not-Track headers and tracking cookies. It provides links to quickly
change these privacy settings without digging through many drilldown pages. Install from
the Chrome web store page
172
9 Passwords
9.1 Keeping passwords safe
Passwords are like keys in the physical world. If you lose a password you will not be able
to get in, and if others copy or steal it they can use it to enter. A good password should
not be easy for others to guess and not easy to crack with computers, while still being
easy for you to remember.
173
9 Passwords
174
9.2 Installing KeePass
Highlight the item (it may already be highlighted by default) and then press ‘Install’.
You will be asked to Authorise the installation process:
Enter your password and press ‘Authenticate’ the installation process will then begin.
Ubuntu does not offer very good feedback to show the software is installed. If the
green progress indicator on the left has gone and the progress bar on the right has gone
then you can assumed the software is installed.
175
9 Passwords
176
9.2 Installing KeePass
177
9 Passwords
178
9.2 Installing KeePass
179
9 Passwords
180
9.2 Installing KeePass
This doesn’t do anything but give you a summary of your options. Press ‘Install’ and
the installation process will begin.
181
9 Passwords
182
9.2 Installing KeePass
183
9 Passwords
184
9.2 Installing KeePass
185
9 Passwords
186
9.2 Installing KeePass
187
9 Passwords
188
9.3 Encrypting Passwords with a Password Manager
Choose a strong password for this field - refer to the chapter about passwords if you
would like some tips on how to do this. Enter the password and press ‘OK’. You then
are asked to enter the password again. Do so and press ‘OK’. If the passwords are the
same you will see a new KeePassX ‘database’ ready for you to use.
189
9 Passwords
190
9.3 Encrypting Passwords with a Password Manager
Now you have a place to store all your passwords and protect them by the ‘master’
password you just set. You will see two default categories ‘Internet’ and ‘Email’ - you
can store passwords just under these two categories, you can delete categories, add sub-
groups, or create new categories. For now we just want to stay with these two and add a
password for our email to the email group. Right click on the email category and choose
‘Add New Entry. . . ’:
So now fill this form out with the details so you can correctly identify which email
account the passwords are associated with. You need to fill out the fields ‘Title’ and the
password fields. All else is optional.
KeePassX gives some indication if the passwords you are using are ‘strong’ or ‘weak’.
As may be obvious, you should try to use stronger passwords. For advice on this see
the chapter on creating good passwords. Press ‘OK’ when you are done and you will see
something like this:
To recover the passwords (see them) you must double click on the enter and you will
see the same window you used for recording the information. If you click on the ‘eye’
icon to the right of the passwords they will be converted from stars (***) to the plain
text so you can read it.
Now you you can use KeePassX to store your passwords. However before getting too
excited you must do one last thing. When you close KeePassX (choose File->Quit) it
191
9 Passwords
192
9.3 Encrypting Passwords with a Password Manager
193
9 Passwords
194
9.3 Encrypting Passwords with a Password Manager
asks you if you would like to save the changes you have made.
Press ‘Yes’. If it is the first time you used KeePassX (or you have just created a new
database) you must choose a place to store your passwords. Otherwise it will save the
updated information in the file you have previously created.
When you want to access the passwords you must then open KeePassX and you will
be asked for the master key. After typing this in you can add all your passwords to
the database and see all your entries. It is not a good idea to open KeePassX and have
it open permanently as then anyone could see your passwords if they can access your
computer. Instead get into the practice of just opening it when you need it and then
closing it again.
195
9 Passwords
196
9.3 Encrypting Passwords with a Password Manager
197
9 Passwords
198
9.3 Encrypting Passwords with a Password Manager
199
9 Passwords
200
9.3 Encrypting Passwords with a Password Manager
When you open it you will see that your ‘Login’ keychain is unlocked and see all the
items contained in it on the right bottom side of the window.
(note: the window here is empty because it seemed to be deceiving the purpose of this
manual to make a screenshot of my personal keychain items and share it here with you)
You can double click any of the items in the Keychain to view it’s details and tick
‘Show password:’ to see the password associated with the item.
You will note that it will ask you for your master or login password to view the item.
201
9 Passwords
You can access modify any of the items and also use the Keychain to securely save any
bits and pieces of text using the notes. To do this click on notes and than choose ‘New
secure Note item’ from the file menu.
202
9.3 Encrypting Passwords with a Password Manager
203
9 Passwords
204
10 Using Vpn
• Information that is required from you to register an account - the less that is needed
the better. A truly privacy concerned VPN provider would only ask you for email
address (make a temporary one!), username and password. More isn’t required
unless the provider creates a user database which you probably don’t want to be a
part of.
• Payment method to be used to pay for your subscription. Cash-transfer is probably
the most privacy-prone method, since it does not link your bank account and your
VPN network ID. Paypal can also be an acceptable option assuming that you can
register and use a temporary account for every payment. Payment via a bank
transfer or by a credit card can severely undermine your anonymity on and beyond
the VPN.
• Avoid VPN providers that require you to install their own proprietary client soft-
ware. There is a perfect open source solution for any platform, and having to run
a “special” client is a clear sign of a phony service.
• Avoid using PPTP based VPNs, as several security vulnerabilities exist in that
protocol. In fact, if two providers are otherwise equal, choose the one not offering
PPTP if feasible.
205
10 Using Vpn
• Look for a VPN provider that’s using OpenVPN - an open source, multi-platform
VPN solution.
• Exit gateways in countries of your interest. Having a choice of several countries
allows you to change your geo-political context and appears to come from a different
part of the world. You need to be aware of legislation details and privacy laws in
that particular country.
• Anonymity policy regarding your traffic - a safe VPN provider will have a non-
disclosure policy. Personal information, such as username and times of connection,
should not be logged either.
• Allowed protocols to use within VPN and protocols that are routed to the Internet.
You probably want most of the protocols to be available
• Price vs. quality of the service and its reliability.
• Any known issues in regard to anonymity of the users the VPN provider might
have had in the past. Look online, read forums and ask around. Don’t be tempted
by unknown, new, cheap or dodgy offers.
There are several VPN review oriented places online that can help you make the right
choice:
• http://www.bestvpnservice.com/vpn-providers.php
• http://vpncreative.com/complete-list-of-vpn-providers
• http://en.cship.org/wiki/VPN
“OpenVPN [..] is a full featured SSL VPN software solution that integrates
OpenVPN server capabilities, enterprise management capabilities, simplified
OpenVPN Connect UI, and OpenVPN Client software packages that accom-
modate GNu/Linux, OSX, Windows and environments. OpenVPN Access
Server supports a wide range of configurations, including secure and granu-
lar remote access to internal network and/or private cloud network resources
and applications with fine-grained access control.” (http://openvpn.net/
index.php/access-server/overview.html)
There is a number of different standards for setting up VPNs, including PPTP, LL2P/IPSec
and OpenVPN. They vary in complexity, the level of security they provide, and which
operating systems they are available for. Do not use PPTP as it has several security
vulnerabilities. In this text we will concentrate on OpenVPN. It works on most versions
of GNU/Linux, OSX, Windows. OpenVPN is TLS/SSL-based - it uses the same type
of encryption that is used in HTTPS (Secure HTTP) and a myriad of other encrypted
protocols. OpenVPN encryption is based on RSA key exchange algorithm. For this to
work and in order to communicate, both the server and the client need to have public
and private RSA keys.
Once you obtain access to your VPN account the server generates those keys and you
simply need to download those from the website of your VPN provider or have them sent
206
10.1 Getting, setting-up and testing a VPN account
to your email address. Together with your keys you will receive a root certificate (*.ca)
and a main configuration file (*.conf or *.ovpn). In most cases only the following files
will be needed to configure and run an OpenVPN client:
• client.conf (or client.ovpn) - configuration file that includes all necessary param-
eters and settings. NOTE: in some cases certificates and keys can come embedded
inside the main configuration file. In such a case the below mentioned files are not
necessary.
• ca.crt (unless in configuration file) - root authority certificate of your VPN server,
used to sign and check other keys issued by the provider.
• client.crt (unless in configuration file) - your client certificate, allows you to com-
municate with VPN server.
Based on a particular configuration, your VPN provider might require a username and
password to authenticate your connection. Often, for convenience, these can be saved
into a separate file or added to the main configuration file. In other cases, key-based
authentication is used, and the key is stored in a separate file:
In most cases, unless otherwise necessary, you don’t need to change anything in the
configuration file and (surely!) do not edit key or certificate files! All VPN providers
have thorough instructions regarding the setup. Read and follow those guidelines to make
sure your VPN client is configured correctly.
NOTE: Usually it’s only allowed to use one key per one connection, so you probably
shouldn’t be using the same keys on different devices at the same time. Get a new set
of keys for each device you plan to use with a VPN, or attempt to set up a local VPN
gateway (advanced, not covered here).
Download your OpenVPN configuration and key files copy them to a safe place and
proceed to the following chapter.
207
10 Using Vpn
208
10.2 VPN on Ubuntu
1. Open the Ubuntu Software Center by typing software in the Unity search bar
2. The Ubuntu Software Center enables you to search, install and remove software on
your computer. Click on the search box at the top right of the window.
4. Ubuntu may ask you for additional permissions to install the program. If that
is the case, type in your password and click Authenticate. Once the package is
installed, you can close the Software Center window.
5. To check if the extensions are correctly installed, click on the NetworkManager (the
icon at the left of your system clock) and select VPN Connections > Configure
VPN.
7. If you see a pop-up asking for the type of VPN and the tunnel technology (Open-
VPN) option is available, this means that you have installed the VPN extension in
Ubuntu correctly. If you have your VPN login information ready, you can continue
right away, else you first have to get a VPN account from a VPN-provider. If this
is the case, click cancel to close the Network Manager.
209
10 Using Vpn
210
10.2 VPN on Ubuntu
211
10 Using Vpn
212
10.2 VPN on Ubuntu
213
10 Using Vpn
In most cases your provider will send these files to you in a zip file. Some openvpn
providers use username and password authentication which will not be covered.
1. Unzip the file you have downloaded to a folder on your hard drive (for example
“/home/[yourusername]/.vpn”). You should now have four files. The file “air.ovpn”
is the configuration file that you need to import into NetworkManager.
214
10.2 VPN on Ubuntu
215
10 Using Vpn
4. Locate the file air.ovpn that you have just unzipped. Click Open.
216
10.2 VPN on Ubuntu
217
10 Using Vpn
218
10.2 VPN on Ubuntu
219
10 Using Vpn
1. In the NetworkManager menu, select your new connection from VPN Connections.
2. Wait for the VPN connection to be established. When connected, a small padlock
should appear right next to your NetworkManager icon, indicating that you are
now using a secure connection. Move your cursor over the icon to confirm that the
VPN connection is active.
3. Test your connection, using the method described in the “Make sure it works”
section of this chapter.
4. To disconnect from your VPN, select VPN Connections > Disconnect VPN in the
NetworkManager menu. You are now using your normal connection again.
220
10.2 VPN on Ubuntu
221
10 Using Vpn
10.3.1 Setup
1. Before getting started, please be sure you’ve read the paragraph “testing before
and after account set up”, this way you will be able to validate if your connection
is actually working after set up.
2. A VPN is configured in the network settings, that are accessible via “System Pref-
erences..” in the Apple menu.
4. OSX uses this nifty system to lock windows. To add a VPN it is necessary to
unlock the screen: you can do this by clicking on the lock on the left bottom of the
screen.
6. Now we can add a new network. Do this by clicking on the “+” sign
7. In the pop-up you need to specify the type of connection. In this case choose an
VPN interface with L2TP over IPSec. This is the most common system. Also don’t
forget to give the connection a nice name.
8. Next comes the connection data. Please fill in the provided server name and user
name (called ‘Account Name’). If this is done, click on the “Authentication Set-
tings. . . ” button
222
10.3 VPN on MacOSX
223
10 Using Vpn
224
10.3 VPN on MacOSX
225
10 Using Vpn
9. In the new pop-up you can specify connection specific information. This is the way
the user is authenticated and how the machine is authenticated. The user is very
commonly authenticated by using a password, although other methods are possible.
Machine authentication is often done by a Shared Secret (Pre-Shared-Key/PSK),
but also quite often by using a certificate. In this case we use the Shared Secret
method. When this is done click OK.
10. Now you return back to the network screen. The next step is very important, so
click on “Advanced. . . ”
11. In the new pop up you will see an option to route all traffic through the VPN
connection. We want to enable this, so all our traffic is encrypted.
13. A pop-up appears. You need to confirm your changes, just hit “Apply”
14. After a few seconds, on the left side the connection should turn green. If so, you
are connected!
226
10.3 VPN on MacOSX
227
10 Using Vpn
228
10.3 VPN on MacOSX
229
10 Using Vpn
230
10.3 VPN on MacOSX
231
10 Using Vpn
232
10.3 VPN on MacOSX
233
10 Using Vpn
234
10.4 VPN on Windows
10.4.1 Setup
1. Before getting started, please be sure you’ve read the paragraph “testing before
and after account set up”, this way you will be able to validate if your connection
is actually working after set up.
3. The “Network and Sharing Center” will popup. You will see some information about
your current network. Click on “Connect to a network” to add a VPN connection.
235
10 Using Vpn
236
10.4 VPN on Windows
4. The wizard to setup a connection will popup. Choose the option to “connect to a
workplace”, which is Microsoft’s way of naming a VPN connection.
5. The next screen asks us if we want to use our Internet connection or an old-school
phone line to connect to the VPN. Just choose the first option then.
6. The next screen asks for the connection details. Enter here the server of your VPN-
provider (called “Internet address” in this dialog). On the bottom please check the
box “Don’t connect now; just set it up”. Using this option the connection will be
automatically saved and it’s easier to control extra settings. If this is all done, hit
the “next” button
7. Next up are your username and password. Just give them like you received them
from your VPN-provider. If the connection fails, Windows forgets them. So keep
them with you, you maybe need them later. If this is done. Click “create”.
237
10 Using Vpn
238
10.4 VPN on Windows
239
10 Using Vpn
240
10.4 VPN on Windows
8. Your connection is now available, if you click the the network icon again, you will
see a new option in the network menu, the name of your VPN connection, just click
it to connect.
10. A VPN connection dialog appears. This give us the opportunity to review our
settings and to connect. You can try to connect, Windows will try to discover all
241
10 Using Vpn
242
10.4 VPN on Windows
other settings automatically. Unfortunately, this does not always work, so if this is
not working for you, hit the “properties” button.
11. The properties windows appear. The most important page is the “Security” page,
click on the Security tab to open it.
12. In the security tab you can specify VPN type, normally L2TP/IPSec. Do not use
PPTP as it has several security vulnerabilities. For L2TP/IPSec also have a look
at the Advanced settings.
243
10 Using Vpn
244
10.4 VPN on Windows
245
10 Using Vpn
13. In the Advanced Settings window, you can specify if you are using a pre-shared
key or a certificate. This depends on your VPN-provider. If you have received a
pre-shared-key, Select this option and fill in this key. Hit ok afterwards. You will
return to the previous window, click ok there also
14. Back in to connection window try to connect now. Please be sure your username
and password are filled out.
246
10.4 VPN on Windows
247
10 Using Vpn
248
11 Disk Encryption
From the ‘(Select a package)’ drop down menu you can choose from four options:
This is a little technical - the console version is the one you choose if you are either very
technical and don’t like Graphical User Interfaces or you wish to run this on a machine
that you have only a terminal (command line or ‘shell’) access to (like a remote server
for example).
Assuming you are running this in your laptop its best to choose the easy ‘standard’
option - this will give you a nice user interface to use. From these two options you need
to choose the one most suitable for the architecture of your machine. Don’t know what
this means? Well, it basically comes down to the type of hardware (processor) running
249
11 Disk Encryption
on your computer, the options are 32-bit or 64-bit. Unfortunately Ubuntu does not make
it easy for you to find this information if you don’t already know it. You need to open a
‘terminal’ from the Applications->Accessories menu and type the following, followed by
the [enter] key
uname -a
The output will be something like Linux bigsy 2.6.32-30-generic #59-Ubuntu SMP
Tue Mar 1 21:30:46 UTC 2011 x86_64 GNU/Linux. In this instance you can see the
architecture is 64-bit (x86_64). In this example I would choose the ‘Standard - 64-bit
(x64)’ option. If you see i686 somewhere in the output of the uname command then you
would choose the other standard option to download.
Once selected press the ‘download’ button and save the file to somewhere on your
computer.
So the installation process is still not over. The file you downloaded is a compressed
file (to make downloading it faster) and you need to first de-compress the file before
you install it. Fortunately Ubuntu makes this easy - simply browse to the file on your
computer and right click on it and choose ‘Extract Here’.
You will see a new file appear next to the compressed file:
Nearly done! Now right click on the new file and choose ‘open’:
If all is well you will see a window open like this:
Choose ‘run’ and you see the following:
250
11.1 Installing TrueCrypt
Figure 11.6: Window opens to confirm you want to ‘run’ the file
251
11 Disk Encryption
Now we are getting somewhere. . . press ‘Install TrueCrypt’. You will be displayed a
user agreement. At the bottom press ‘I accept and agree to be bound by the license
terms’ (sounds serious). You will then be shown another info screen telling you how
to uninstall TrueCrypt. Press ‘OK’ then you will be asked for your password to install
software on your computer. Enter your password and then you will finally see a screen
like this:
Believe it or now your are done. . . TrueCrypt is installed and you can access it from the
Applications->accessories menu. . . close the setup window. Now proceed to the chapter
on Using TrueCrypt.
2. Download this to your computer find the .dmg file and open it to access the instal-
lation package.
252
11.1 Installing TrueCrypt
5. After the installation finishes you can find the program in your ‘Applications’ folder.
253
11 Disk Encryption
254
11.1 Installing TrueCrypt
255
11 Disk Encryption
3. You should see the TrueCrypt Volume Creation Wizard window appear on screen.
Where do you want to create the TrueCrypt volume? You need to choose now. This
can be in a file, which is also called a container, in a partition or drive. The following
steps will take you through the first option creating a TrueCrypt volume within a file.
You can just click Next, as the option is selected by default,
4. Next you need to choose whether to create a standard or hidden TrueCrypt volume.
We will walk you through the former option and create a standard TrueCrypt
volume.
256
11.2 Using TrueCrypt
257
11 Disk Encryption
258
11.2 Using TrueCrypt
IMPORTANT: Note that TrueCrypt will not encrypt any existing files. If an existing
file is selected in this step, it will be overwritten and replaced by the newly created volume
(the contents of the existing file will be lost). You will be able to encrypt existing files
later on by moving them to the TrueCrypt volume that we are creating now.
6. In the Volume Creation Wizard window (which was previously running in the
background), click Next.
7. Here you can choose an encryption algorithm and a hash algorithm for the volume.
259
11 Disk Encryption
The TrueCrypt manual suggests that if you are not sure what to select here, you can
use the default settings and click Next (for more information about each setting have a
look at the TrueCrypt documentation website).
8. Now choose the size of your container. You should be fine with 1 megabyte but for
this example we will enter ‘20’ into the available field.
You may, of course, specify a different size. After you type the desired size in the input
field, click Next.
The information displayed in the Wizard window about what is considered a good
password, should be read carefully.
Choose a strong password, type it in the first input field. Then re-type it in the input
field below the first one.
When you are done click Next.
10. Now you must choose the format of your partition (this step may not be available
for you under windows or OSX). If using Ubuntu you can choose a Linux file type
or FAT (Windows) for simplicity leave it at the default.
11. Next TrueCrypt tries to generate random information to help encrypt your con-
tainer. For 30 seconds move your mouse as randomly as possible within the Volume
Creation Wizard window. Move the mouse as much as possible for up to a minute.
This significantly increases security by increasing the cryptographic strength of the
encryption keys. security). Move your mouse around until you are bored.
260
11.2 Using TrueCrypt
261
11 Disk Encryption
12. Well done! You’ve just successfully created a TrueCrypt volume (file container).
2. Make sure one of the ‘Slots’ is chosen (it doesn’t matter which - you can leave at
the default first item in the list). Click Select File.
3. In the file selector, browse to the container file (which we created earlier) and select
it.
262
11.2 Using TrueCrypt
263
11 Disk Encryption
264
11.3 Setting up a hidden volume
TrueCrypt will now attempt to mount the volume. If the password is correct, the
volume will be mounted.
If the password is incorrect (for example, if you typed it incorrectly), TrueCrypt will
notify you and you will need to repeat the previous step (type the password again and
click OK).
7. We have just successfully mounted the container as a virtual disk 1. The container
will appear on your Desktop or you will see it in your file browser.
265
11 Disk Encryption
To create a hidden volume open TrueCrypt and press the ‘Create Volume’ button:
The options for half of this process are almost the same as for setting up a standard
TrueCrypt volume and then the process continues for setting up the hidden volume but
lets go through the entire process step by step anyway. In the screen shown below you
just want to stay with the default setting ‘Create an encrypted file container’:
266
11.3 Setting up a hidden volume
use the name ‘myencryptedfile’ in this example. Its the same name as we used in the
last example so be aware that if you have just followed those instructions you must now
create a new volume with a new name.
Browse to the directory where you want to put the outer volume and enter the name
of the volume in the field named ‘Name’ as in the example above. When you are satisfied
all is well click on ‘Save’. The file browser will close and you return to the Wizard.
Click ‘Next >’. Here you are presented with some very technical choices. Don’t worry
about them. Leave them at the defaults and click ‘Next >’. The next screen asks you to
determine the size of the outer volume. Note that when you do this the maximum inner
‘hidden’ volume size is determined by TrueCrypt. This maximum size will of course be
smaller that the size you are setting on this screen. If you are not sure what the ratio of
outer volume size to inner (hidden) volume size is then go through the process now as
a ‘dummy’ run - you can always trash the encrypted volume and start again (no harm
done).
So choose the size of the outer volume, I will choose 20MB as shown below:
You cannot set the outer volume size to be larger than the amount of free space you
have available on your disk. TrueCrypt tells you the maximum possible size in bold
letters so create a volume size smaller than that. Then click ‘Next >’ and you will be
taken to a screen asking you to set a password for the outer (not the hidden, this comes
later) volume.
Enter a password that is strong (see the chapter on creating good passwords) and press
‘Next >’. Next TrueCrypt wants you to help it create the random data it will fill the
volume up with. So wave your mouse around, browse the web, and do whatever you want
for as long as you can. When you feel TrueCrypt should be happy then press ‘Format’.
You will see a progress bar zip by and then you will be presented with the next screen:
You can open the outer volume if you like but for this chapter we will skip that and
go ahead to create the hidden volume. Press ‘Next >’ and TrueCrypt will work out how
the maximum possible size of the hidden volume.
When you see the above screen just press ‘Next >’. Now you must choose the encryp-
267
11 Disk Encryption
268
11.3 Setting up a hidden volume
tion type for the hidden volume. Leave it at the defaults and press ‘Next >’.
Now you will be asked to choose the size of the hidden volume.
I have set (as you see above) the maximum size as 10MB. When you have set your
maximum size press ‘Next >’ and you will be prompted to create a password for the
hidden volume.
When creating the password for the hidden volume make sure you make it substantially
different fro the password for the outer volume. If someone really does access your
drive and finds out the password for the outer volume they might try variations on this
password to see if there is also a hidden volume. So make sure the two passwords are
not alike.
Enter your password in the two fields and press ‘Next >’.
Leave this window at the defaults and press ‘Next >’ and you will be presented with
the same screen you have seen before to generate random data for TrueCrypt. When you
are happy click ‘Format’ and you should see the following :
The TrueCrypt manual it is referring to is not this manual. They mean this manual :
http://www.truecrypt.org/docs/
Click ‘OK’ and keep and exit TrueCrypt. You can now mount the volume as noted in
the previous chapter.
269
11 Disk Encryption
Now, let’s decide you want to wipe the “Goldman Sachs” piece, what a harddisk will
do, it will only remove the entry on the first page, but not the actual data, your index
will be:
270
11.4 Securely destroying data
What we did, we removed only the reference to the article, but if we open page 3, we
will still able to read the Goldman Sachs piece. This is exactly the way what a harddisk
does when your “delete” a file. With specialized software it still able to “recover” page 3.
To securely delete data, we should do the following:
1. Open the “Goldman Sachs” page (page 3)
2. Use an eraser to remove the article there, if done return to page 1
3. Delete the reference in the index on page 1
Well you will be surprised by the similarity between this example and the real world.
You know when you removed the article on page 3 with an eraser, it is still possible to
read the article slightly. The pencil leaves a track on the paper because of the pressure
of the pencil on the paper and also you will be unable to erase all of the graphite. Small
traces are left behind on the paper. If you really need this article, you can reconstruct
(parts) of it, even if it’s erased.
With a harddisk this is very similar. Even if you erased every piece of data, it is
sometimes possible with (very) specialized hardware to recover pieces of the data. If the
data is very confidential and must be erased with the greatest care, you can use software
to “overwrite” all pieces of data with random data. When this is done multiple times,
this will make the data untraceable.
3. After confirming, there your file goes. Depending on the size of the file this can
take a while
271
11 Disk Encryption
272
11.4 Securely destroying data
1. Erase the free-space on your hard-drive containing all the data of items which are
deleted in an insecure way.
2. Make sure that every file from then on is always securely deleted.
1. Open Disk-Utility which resides in the Utilities folder inside the Applications folder.
3. Three options will appear, from top to bottom more secure, but also they take
much more time to complete. Read the descriptions on each one of them to get an
idea from what will happen if you use them and then choose which one might suite
your needs the best and click ‘Erase free Space’.
If time is no issue, then use the most secure method and enjoy your free time to get a
good coffee while you Mac crunches away on this task. If the crooks are already knocking
on your front-door you might want to use the fastest way.
273
11 Disk Encryption
2. Go to the advanced tab and tick ‘Empty trash securely’. This will make sure that
every time you empty your trash all the items in it will be securely deleted and are
really gone!
Note: Deleting your files securely will take longer then just deleting them. If you have
to erase big portions of unimportant data (say your movie and mp3 collection) you may
wanna untick this option before doing so.
274
11.4 Securely destroying data
275
11 Disk Encryption
276
11.4 Securely destroying data
277
11 Disk Encryption
• shred
• wipe
Shred is installed in Ubuntu by default and can delete single files. Wipe is not installed
by default but can easily be installed with using Ubuntu Software Center or if you
understand the command line you can install it with apt-get install wipe. Wipe is a
little more secure and has nicer options.
It is possible make access to these program’s easy by adding it as an extra menu option
1. We assume you are familiar with the Ubuntu Software Center. To add the securely
wipe option, it’s required to install these two programs wipe and nautilus-actions
If the two programs are installed follow the following steps. If they are not installed
use the Ubuntu Software Center to install them or on the command line simply type
apt-get install nautilus-actions wipe
2. Open the “Nautilus Actions Configuration” from the System -> Preferences menu
3. We have to add a new action. To do this, start clicking on the “create new action
button”, the first option in the toolbar
4. Next is describing the new action. You can give the action every name you wish.
Fill out this title in the “Context label” field. In this example we used “Delete file
securely”
5. Click on the second tab (“Command”), here is how we specify the action we want.
In the field “Path”, type “wipe”, in the field parameters type “-rf %M”, please be
sure about the capitalisation of all characters here, this is very important.
6. Next is specifying the conditions, click on the conditions tab and choose the option
“Both” in the “Appears if selection contains. . . ” box. With this option you can
wipe both files and folders securely. If done, click the save button (second item on
the icon bottom toolbar) or use the menu File->Save
7. Now close the Nautilus Actions Configuration tool. Unfortunately, after this, you
have to re-login into your system, so ether reboot or logout/login.
278
11.4 Securely destroying data
279
11 Disk Encryption
280
11.4 Securely destroying data
281
11 Disk Encryption
282
11.4 Securely destroying data
283
11 Disk Encryption
284
11.5 About LUKS
8. Now browse to the file you want to securely delete and right click:
Choose ‘Delete File Securely’. The file will then be wiped ‘quietly’ - you do not get
any feedback or notice that the process has started or stopped. However the process is
underway. It takes some time to securely delete data and the bigger the file the longer it
takes. When it is complete the icon for the file to be wiped will disappear. If you would
like to add some feedback you can change the parameters field in Nautilius Actions
Configuration tool to this:
-rf %M | zenity --info --text "your wipe is underway, please be patient.
The file to be wiped will disappear shortly."
The above line will tell you the process is underway but you will not know the file is
deleted until the icon disappears.
• Advantages: LUKS is available through dm-crypt which is part of the Linux kernel,
so it doesn’t need any further software to be installed.
• Disadvantages: Unlike with Truecrypt, it is not possible to use it with other Oper-
ating Systems (yet), so if you use LUKS to encrypt a USB drive, you can only use
it on Linux machines, but not on Windows or Mac OS.
If you want to encrypt a device after the Linux installation completed, you can use the
Disks utility which can be found in most Linux distribution’s System Settings.
285
11 Disk Encryption
286
11.5 About LUKS
On the left hand side you will find a list of all storage devices plugged into your
computer.
Select the one you want to encrypt (step 1) (in this case a usb stick), and then on the
right hand side, click on the cog wheels and “Format. . . ”. A dialog will appear where
you can select if the existing data on the device shall be completely overwritten (that
can take up to several hours depending on the size and performance of the device) or
just formatted. Please note that even if you choose to encrypt the device, data, that was
present before will be recoverable if you don’t choose to overwrite it completely.
No matter what you choose for the field Erase, select “Encrypted, compatible with
Linux systems (LUKS+Ext4)” for Type, give it a name and a strong passphrase (see
chapter 8 on that matter), and click Format. . .
On the confirmation screen make sure you selected the correct device as data recovery
287
11 Disk Encryption
288
11.5 About LUKS
Back on the main window the device now consists of two layers. One is the physical
storage (here called “Partition 1”) and the other a virtual device which is created by the
LUKS system to give you access to the encrypted device (here called “cryptostick”). The
pad lock on “Partition 1” is open as the Disks utility needed to open it in order to create
a file system (how would you store files on a device without a file system?). You can
click on the (other) pad lock as shown below to close the decryption channel and the
eject button in the upper right corner to safely remove the device.
289
11 Disk Encryption
290
11.5 About LUKS
291
11 Disk Encryption
292
12 Call Encryption
CSipSimple is a program for Android devices that allows for making encrypted calls.
Naturally the calling software isn’t enough on its own and we need a communication
network to enable us to make calls.
If you already know about OSTN and have an account, you can skip this section.
The Guardian Project’s OSTN (Open {Secure, Source, Standards} Telephony Network
- https://guardianproject.info/wiki/OSTN) is an attempt to define a standard Voice
over IP (VoIP) setup using the Session Initiation Protocol (SIP) that enables end-to-end
encrypted calls. Similar to e-mail, SIP allows people to choose their service provider
while still being able to call each other even if they are not using the same provider. Yet,
not all SIP providers offer OSTN and both providers have to support OSTN for the call
to be secure. Once a connection between two people is established, the audio data is
exchanged directly between the two parties. Data is encrypted according to the Secure
Real-time Transport Protocol (SRTP).
A majority of encrypting VoIP applications currently use Session Description Proto-
col Security Descriptions for Media Streams (SDES) with hop-by-hop Transport Layer
Security (TLS) to exchange secret master keys for SRTP. This method is not end-to-end
secure as the SRTP keys are visible in plaintext to any SIP proxy or provider involved
in the call.
ZRTP is a cryptographic key-agreement protocol to negotiate the keys for encryption
between two parties. ZRTP end points use the media stream rather than the signaling
stream to establish the SRTP encryption keys. Since the media stream is a direct con-
nection between the calling parties, there is no way for the SIP providers or proxies to
intercept the SRTP keys. ZRTP provides a useful reassurance to end-users that they
have a secure line. By reading and comparing a word pair, users can be certain that the
key exchange has completed.
Open Secure Telephony (https://ostel.me/) is a testbed for OSTN that worked well at
the time of writing this book. At https://ostel.me/users/sign_up you can sign up and
create an account. You can also check the OSTN page listed above for other providers.
293
12 Call Encryption
12.1.2 CSipSimple
CSipSimple is a free and open source client for Android that works well with OSTN. You
can find it at https://market.android.com/details?id=com.csipsimple
To use CSipSimple with ostel.me, select OSTN in the generic wizards when creating
an account and enter username, password and server as provided after signing up at
https://ostel.me/users/sign_up
Once you call another party with CSipSimple you see a yellow bar with ZRTP and the
verification word pair. You now have established a secure voice connection that cannot
be intercepted. Still, you should be aware that your phone or the phone of the other
party could be set up to record the conversation.
Basic steps:
To use CSipSimple with ostel.me, select OSTN in the Generic Wizards section when
creating an account. You can toggle off the “United States” providers by clicking on
“United States”. Now select OSTN :
Now you can enter your username (number), password and server (ostel.me) as pro-
vided after signing up at https://ostel.me/users/sign_up.
Now you can make a call. The first time you connect to someone with ZRTP you have
to verify that the key exchange was successful. In the example below the confirmation
word is “cieh”, you can already talk to the other party and make sure you both see the
same word. Once done, press ok.
You now have established a secure voice connection that cannot be intercepted. Beware
that your or the phone of the other party could be recording your conversation.
294
12.1 Installing CSipSimple
295
12 Call Encryption
296
12.1 Installing CSipSimple
297
13 Instant Messaging Encryption
299
13 Instant Messaging Encryption
You can securely chat with other programs with OTR support such as Adium, Pidgin
on the desktop, Gibberbot on Android or ChatSecure on iOS.
Now you can use OTR with any account you setup in Pidgin.
You can securely chat with other programs with OTR support such as Adium, Pidgin
on the desktop, Gibberbot on Android or ChatSecure on iOS.
300
13.1 Setting up Encrypted Instant Messaging
that is already encrypted. Cryptocat is delivered as a browser extension and offers plugins
for Google Chrome, Mozilla Firefox and Apple Safari.
Cryptocat intends to provide means for impromptu, encrypted communications that
offer more privacy than services such as Google Talk, while maintaining a higher level
of accessibility than other high-level encryption platforms, and furthermore allows for
multiple users in one chat room.
301
14 Secure File Sharing
14.1 Installing I2P on Ubuntu Lucid Lynx (and newer) and
derivatives like Linux Mint & Trisquel
1. Open a terminal and enter:
4. Your browse should open up with your local I2P router console, to browse i2p
domains you have to configure your browser to use the i2p proxy. Also check your
connection status on the left side on the router console. If your status is Network:
Firewalled your connection will be rather slow. The first time you start I2P it
may take a few minutes to integrate you into the network and find additional peers
to optimize your integration, so please be patient.
From the Tools menu, select Options to bring up the Firefox settings panel. Click the
icon labelled Advanced, then click on the Network tab. In the Connections section, click
on the Settings button. You’ll see a Window like the following:
In the Connection Settings window, click the circle next to Manual proxy configuration,
then enter 127.0.0.1, port 4444 in the HTTP Proxy field. Enter 127.0.0.1, port 4445 in
the SSL Proxy field. Be sure to enter localhost and 127.0.0.1 into the “No Proxy for”
box.
For more information and proxy settings for other browsers check https://www.i2p2.
de/htproxyports.htm
303
14 Secure File Sharing
304
14.1 Installing I2P on Ubuntu Lucid Lynx (and newer) and derivatives like Linux Mint & Trisquel
305
14 Secure File Sharing
• “on demand” using the i2prouter script. Simply run “i2prouter start” from a com-
mand prompt. (Note: Do not use sudo or run it as root!).
• as a service that automatically runs when your system boots, even before logging
in. The service can be enabled with “dpkg-reconfigure i2p” as root or using sudo.
This is the recommended means of operation.
You can search for a torrent using one of following bittorrent trackers:
• http://tracker.postman.i2p/
• http://diftracker.i2p/
306
14.4 Anonymous Bittorrent with I2PSnark
Copy the torrent or magnet link and past it in the I2PSnark window, and click Add
torrent. the file will be downloaded inside the /home/user/.i2p/i2psnark folder.
NOTE:
• Since I2P is a closed network, you can’t download normal torrents found on regular
internet with it, and it can’t be used to make downloading them anonymous!
• The speed seems to be slightly lower than usual which is caused by the anonymiza-
tion. I think that the download rates are still acceptable if you consider that you
download and share anonymously.
307
15 Appendices
0xcaca0 Adam Hyde Ahmed Mansour Alice Miller A Ravi Ariel Viera Asher Wolf AT
Austin Martin Ben Weissmann Bernd Fix Brendan Howell Brian Newbold Carola Hesse
Chris Pinchen Dan Hassan Daniel Kinsman Danja Vasiliev DÃľvai NaÌĄndor djmat-
tyg007 Douwe Schmidt Edward Cherlin Elemar Emile Denichaud Emile den Tex Erik
Stein Erinn Clark Freddy Martinez Freerk Ohling Greg Broiles Haneef Mubarak he-
len varley jamieson Janet Swisher Jan Gerber Jannette Mensch Jens Kubieziel jmorahan
Josh Datko Joshua Datko Julian Oliver Kai Engert Karen Reilly l3lackEyedAngels leoj3n
LiamO Lonneke van der Velden Malte Malte Dik Marta Peirano Mart van Santen mdim-
itrova Michael Henriksen Nart Villeneuve Nathan Andrew Fain Nathan Houle Niels El-
gaard Larsen Petter Ericson Piers Plato Punkbob Roberto Rastapopoulos Ronald Deib-
ert Ross Anderson Sacha van Geffen Sam Tennyson Samuel Carlisle Samuel L. Tennyson
Seth Schoen Steven Murdoch StooJ Story89 Ted W Ted Wood Teresa Dillon therealplato
Tomas Krag Tom Boyle Travis Tueffel Uwe Lippmann WillMorrison Ximin Luo Yuval
Adam zandi Zorrino Zorrinno
309
15 Appendices
Although most encryption methods refer to written word, during World War Two, the
US military used Navajo Indians, who traveled between camps sending messages in their
native tongue. The reason the army used the Navajo tribe was to protect the informa-
tion they were sending from the Japanese troops, who famously could not decipher the
Navajo’s spoken language. This is a very simple example of using a language to send
messages that you do not want people to listen into or know what you’re discussing.
Why is encryption important? —————————-
Computer and telecommunication networks store digital echoes or footprints of our
thoughts and records of personal lives.
From banking, to booking, to socialising: we submit a variety of detailed, personalised
information, which is driving new modes of business, social interaction and behavior. We
have now become accustomed to giving away what was (and still is) considered private
information in exchange for what is presented as more personalised and tailored services,
which might meet our needs, but cater to our greed.
But how do we protect who sees, controls and uses this information?
Lets consider a scenario whereby we all thought it was fine to send all our communica-
tion on open handwritten postcards. From conversations with your doctor, to intimate
moments with our lovers, to legal discussions you may have with lawyers or accountants.
It’s unlikely that we would want all people to be able to read such communications.
So instead we have written letters in sealed envelopes, tracking methods for sending
post, closed offices and confidential agreements, which help to keep such communication
private. However given the shift in how we communicate, much more of this type of
interaction is taking place online. More importantly it is taking place through online
spaces, which are not private by default and open to people with little technical skills to
snoop into the matters that can mean the most to our lives.
Online privacy and encryption is something we therefore need to be aware of and
practice daily. In the same way we would put an important letter into an envelope or have
a conversation behind a closed door. Given that so much of our private communication
is now happening in networked and online spaces, we should consider the interface, like
envelopes or seals, which protect this material as a basic necessity and human right.
15.1.2 A Warning!
“There are two kinds of cryptography in this world: cryptography that will
stop your kid sister from reading your files, and cryptography that will stop
major governments from reading your files” - Bruce Schneier, Applied Cryp-
tography, 1996
This chapter first explains a number of historical cryptographic systems and then
provides a summary of modern techniques. The historical examples illustrate how cryp-
310
15.1 Cryptography and Encryption
tography emerged, but are considered broken in the face of modern computers. They
can be fun to learn, but please don’t use them for anything sensitive!
311
15 Appendices
first polyalphabetic cipher was created by Leon Battista Alberti, a 15th century Italian,
Renaissance polymath and humanist who is also credited as the godfather of western
cryptography. His cipher is similar to the VigenÃĺre cipher, where every letter of the
alphabet gets a unique number (e.g. 1-26). The message is then encrypted by writing
down the message along with the password repeatedly written beneath it.
In the VigenÃĺre cipher the corresponding numbers of the letters of message and key
are summed up (with numbers exceeding the alphabet being dragged around the back)
making the message so unreadable that it couldn’t be deciphered for centuries (nowadays,
with the help of computers, this obviously isn’t true anymore).
312
15.1 Cryptography and Encryption
313
15 Appendices
ciphers use a secret key to convert a fixed block of plain text into cipher text. The same
key is then used to decrypt the cipher text.
In comparison stream ciphers (also known as state cipher) work on each plaintext digit
by creating a corresponding keystream which forms the ciphertext. The keystream refers
to a stream of random characters (bits, bytes, numbers or letters) on which various addi-
tive or subtractive functions are performed and combined to a character in the plaintext
message, which then produces the ciphertext. Although this method is very secure, it is
not always practical, since the key of the same length as the message needs to be trans-
mitted in some secure way so that receiver can decypher the message. Another limitation
is that the key can only be used once and then its discarded. Although this can mean
almost watertight security, it does limit the use of the cipher.
Asymmetric ciphers work much more complex mathematical problems with back doors,
enabling faster solutions on smaller, highly important pieces of data. They also work on
fixed data sizes, typically 1024-2048 bits and and 384 bits. What makes them special is
that they help solve some of the issues with key distribution by allocating one public and
one private pair per person, so that everyone just needs to know everyone else’s public
portion. Asymmetric ciphers are also used for digital signatures. Where as symmetric
ciphers are generally used for message authenticity. Symmetric ciphers cannot non-
repudiation signatures (i.e., signatures that you cannot later deny that you did not sign).
Digital signatures are very important in modern day cryptography. They are similar to
wax seals in that they verify who the message is from and like seals are unique to that
person. Digital signatures are one of the methods used within public key systems, which
have transformed the field of cryptography are central to modern day Internet security
and online transactions.
314
15.2 Glossary
privacy required. Getting this right depends on the task and context.
Importantly when we speak about communication, we are speaking about trust. Tra-
ditionally cryptography dealt with the hypothetical scenarios, where the challenge was
to address how ‘Bob’ could speak to ‘Alice’ in a private and secure manner.
Our lives are now heavily mediated via computers and the Internet. So the boundaries
between Bob, Alice + the ‘other’ (Eve, Oscar, Big Brother, your boss, ex-boyfriend or the
government) are a lot more blurred. Given the quantum leaps in computer processing,
in order for ‘us’, Bob’s and Alice’s to have trust in the system, we need to know who we
are talking too, we need to know who is listening and importantly who has the potential
to eavesdrop. What becomes important is how we navigate this complexity and feel in
control and secure, so that you can engage and communicate in a trustful manner, which
respects our individual freedoms and privacy.
15.2 Glossary
Much of this content is based on http://en.cship.org/wiki/Special:Allpages
15.2.1 aggregator
An aggregator is a service that gathers syndicated information from one or many sites
and makes it available at a different address. Sometimes called an RSS aggregator, a feed
aggregator, a feed reader, or a news reader. (Not to be confused with a Usenet News
reader.)
15.2.2 anonymity
(Not be confused with privacy, pseudonymity, security, or confidentiality.)
Anonymity on the Internet is the ability to use services without leaving clues to one’s
identity or being spied upon. The level of protection depends on the anonymity tech-
niques used and the extent of monitoring. The strongest techniques in use to protect
anonymity involve creating a chain of communication using a random process to select
some of the links, in which each link has access to only partial information about the
process. The first knows the user’s Internet address (IP) but not the content, destina-
tion, or purpose of the communication, because the message contents and destination
information are encrypted. The last knows the identity of the site being contacted, but
not the source of the session. One or more steps in between prevents the first and last
links from sharing their partial knowledge in order to connect the user and the target
site.
315
15 Appendices
message, remailers should be used as part of a chain of multiple remailers so that no one
remailer knows all this information.
15.2.5 backbone
A backbone is one of the high-bandwidth communications links that tie together networks
in different countries and organizations around the world to form the Internet.
15.2.6 badware
See malware.
15.2.7 bandwidth
The bandwidth of a connection is the maximum rate of data transfer on that connec-
tion, limited by its capacity and the capabilities of the computers at both ends of the
connection.
15.2.9 BitTorrent
BitTorrent is a peer-to-peer file-sharing protocol invented by Bram Cohen in 2001. It
allows individuals to cheaply and effectively distribute large files, such as CD images,
video, or music files.
15.2.10 blacklist
A blacklist is a list of forbidden things. In Internet censorship, lists of forbidden Web
sites or the IP addresses of computers may be used as blacklists; censorware may allow
access to all sites except for those specifically listed on its blacklist. An alternative to
a blacklist is a whitelist, or a list of permitted things. A whitelist system blocks access
to all sites except for those specifically listed on the whitelist. This is a less common
approach to Internet censorship. It is possible to combine both approaches, using string
matching or other conditional techniques on URLs that do not match either list.
316
15.2 Glossary
15.2.11 bluebar
The blue URL bar (called the Bluebar in Psiphon lingo) is the form at the top of your
Psiphon node browser window, which allows you to access blocked site by typing its URL
inside.
See also Psiphon node
15.2.12 block
To block is to prevent access to an Internet resource, using any number of methods.
15.2.13 bookmark
A bookmark is a placeholder within software that contains a reference to an external
resource. In a browser, a bookmark is a reference to a Web page – by choosing the
bookmark you can quickly load the Web site without needing to type in the full URL.
15.2.14 bridge
See Tor bridge.
15.2.16 cache
A cache is a part of an information-processing system used to store recently used or
frequently used data to speed up repeated access to it. A Web cache holds copies of Web
page files.
15.2.17 censor
To censor is to prevent publication or retrieval of information, or take action, legal or
otherwise, against publishers and readers.
15.2.18 censorware
Censorware is software used to filter or block access to the Internet. This term is most
often used to refer to Internet filtering or blocking software installed on the client machine
(the PC which is used to access the Internet). Most such client-side censorware is used
for parental control purposes.
Sometimes the term censorware is also used to refer to software used for the same
purpose installed on a network server or router.
317
15 Appendices
15.2.20 chat
Chat, also called instant messaging, is a common method of communication among two
or more people in which each line typed by a participant in a session is echoed to all
of the others. There are numerous chat protocols, including those created by specific
companies (AOL, Yahoo!, Microsoft, Google, and others) and publicly defined protocols.
Some chat client software uses only one of these protocols, while others use a range of
popular protocols.
15.2.21 cipher
In cryptography, a cipher (or cypher) is an algorithm for performing encryption or de-
cryption
15.2.22 circumvention
Circumvention is publishing or accessing content in spite of attempts at censorship.
15.2.25 cookie
A cookie is a text string sent by a Web server to the user’s browser to store on the
user’s computer, containing information needed to maintain continuity in sessions across
multiple Web pages, or across multiple sessions. Some Web sites cannot be used without
accepting and storing a cookie. Some people consider this an invasion of privacy or a
security risk.
318
15.2 Glossary
such ccTLD has a DNS server that lists all second-level domains within the TLD. The
Internet root servers point to all TLDs, and cache frequently-used information on lower-
level domains.
15.2.27 cryptography
Cryptography is the practice and study of techniques for secure communication in the
presence of third parties (called adversaries). More generally, it is about constructing
and analyzing protocols that overcome the influence of adversaries and which are related
to various aspects in information security such as data confidentiality, data integrity,
authentication, and non-repudiation. Modern cryptography intersects the disciplines of
mathematics, computer science, and electrical engineering. Applications of cryptography
include ATM cards, computer passwords, and electronic commerce.
15.2.29 decryption
Decryption is recovering plain text or other messages from encrypted data with the use
of a key.
See also encryption.
15.2.31 domain
A domain can be a Top-Level Domain (TLD) or secondary domain on the Internet.
See also Top-Level Domain, country code Top-Level Domain and secondary domain.
319
15 Appendices
15.2.36 Eavesdropping
Eavesdropping is listening to voice traffic or reading or filtering data traffic on a telephone
line or digital data connection, usually to detect or prevent illegal or unwanted activities
or to control or monitor what people are talking about.
15.2.37 e-mail
E-mail, short for electronic mail, is a method to send and receive messages over the
Internet. It is possible to use a Web mail service or to send e-mails with the SMTP
protocol and receive them with the POP3 protocol by using an e-mail client such as
Outlook Express or Thunderbird. It is comparatively rare for a government to block
e-mail, but e-mail surveillance is common. If e-mail is not encrypted, it could be read
easily by a network operator or government.
320
15.2 Glossary
15.2.39 encryption
Encryption is any method for recoding and scrambling data or transforming it mathe-
matically to make it unreadable to a third party who doesn’t know the secret key to
decrypt it. It is possible to encrypt data on your local hard drive using software like
TrueCrypt (http://www.truecrypt.org) or to encrypt Internet traffic with TLS/SSL or
SSH.
See also decryption.
15.2.43 filter
To filter is to search in various ways for specific data patterns to block or permit com-
munications.
15.2.44 Firefox
Firefox is the most popular free and open source Web browser, developed by the Mozilla
Foundation.
15.2.45 forum
On a Web site, a forum is a place for discussion, where users can post messages and com-
ment on previously posted messages. It is distinguished from a mailing list or a Usenet
newsgroup by the persistence of the pages containing the message threads. Newsgroup
and mailing list archives, in contrast, typically display messages one per page, with nav-
igation pages listing only the headers of the messages in a thread.
321
15 Appendices
15.2.46 frame
A frame is a portion of a Web page with its own separate URL. For example, frames are
frequently used to place a static menu next to a scrolling text window.
15.2.49 gateway
A gateway is a node connecting two networks on the Internet. An important example is
a national gateway that requires all incoming or outgoing traffic to go through it.
15.2.51 GPG
see GNU Privacy Guard.
15.2.52 honeypot
A honeypot is a site that pretends to offer a service in order to entice potential users to
use it, and to capture information about them or their activities.
15.2.53 hop
A hop is a link in a chain of packet transfers from one computer to another, or any
computer along the route. The number of hops between computers can give a rough
measure of the delay (latency) in communications between them. Each individual hop is
also an entity that has the ability to eavesdrop on, block, or tamper with communications.
322
15.2 Glossary
15.2.59 Intermediary
See man in the middle.
15.2.60 Internet
The Internet is a network of networks interconnected using TCP/IP and other commu-
nication protocols.
323
15 Appendices
74.54.30.85. In IPv6, which the Net is currently switching to, an IP address is four times
longer, and consists of 16 bytes (128 bits). It can be written as 8 groups of 4 hex digits
separated by colons, such as 2001:0db8:85a3:0000:0000:8a2e:0370:7334.
15.2.64 JavaScript
JavaScript is a scripting language, commonly used in Web pages to provide interactive
functions.
15.2.68 latency
Latency is a measure of time delay experienced in a system, here in a computer network.
It is measured by the time between the start of packet transmission to the start of packet
reception, between one network end (e.g. you) to the other end (e.g. the Web server).
One very powerful way of Web filtering is maintaining a very high latency, which makes
lots of circumvention tools very difficult to use.
324
15.2 Glossary
15.2.71 malware
Malware is a general term for malicious software, including viruses, that may be installed
or executed without your knowledge. Malware may take control of your computer for
purposes such as sending spam. (Malware is also sometimes called badware.)
15.2.74 monitor
To monitor is to check a data stream continuously for unwanted activity.
325
15 Appendices
15.2.77 node
A node is an active device on a network. A router is an example of a node. In the
Psiphon and Tor networks, a server is referred to as a node.
15.2.79 obfuscation
Obfuscation means obscuring text using easily-understood and easily-reversed transfor-
mation techniques that will withstand casual inspection but not cryptanalysis, or making
minor changes in text strings to prevent simple matches. Web proxies often use obfusca-
tion to hide certain names and addresses from simple text filters that might be fooled by
the obfuscation. As another example, any domain name can optionally contain a final
dot, as in “somewhere.com.”, but some filters might search only for “somewhere.com”
(without the final dot).
15.2.82 packet
A packet is a data structure defined by a communication protocol to contain specific
information in specific forms, together with arbitrary data to be communicated from one
point to another. Messages are broken into pieces that will fit in a packet for transmission,
and reassembled at the other end of the link.
326
15.2 Glossary
15.2.84 pastebin
A web service where any kind of text can be dumped and read without registration. All
text will be visible publicly.
15.2.85 peer-to-peer
A peer-to-peer (or P2P) network is a computer network between equal peers. Unlike
client-server networks there is no central server and so the traffic is distributed only among
the clients.This technology is mostly applied to file sharing programs like BitTorrent,
eMule and Gnutella. But also the very old Usenet technology or the VoIP program
Skype can be categorized as peer-to-peer systems.
See also file sharing.
15.2.88 PHP
PHP is a scripting language designed to create dynamic Web sites and web applications.
It is installed on a Web server. For example, the popular Web proxy PHProxy uses this
technology.
15.2.90 plaintext
Plaintext is unencrypted text, or decrypted text.
See also encryption, TLS/SSL, SSH.
327
15 Appendices
15.2.91 privacy
Protection of personal privacy means preventing disclosure of personal information with-
out the permission of the person concerned. In the context of circumvention, it means
preventing observers from finding out that a person has sought or received information
that has been blocked or is illegal in the country where that person is at the time.
15.2.93 POP3
Post Office Protocol version 3 is used to receive mail from a server, by default on port
110 with an e-mail program such as Outlook Express or Thunderbird.
15.2.94 port
A hardware port on a computer is a physical connector for a specific purpose, using a
particular hardware protocol. Examples are a VGA display port or a USB connector.
Software ports also connect computers and other devices over networks using various
protocols, but they exist in software only as numbers. Ports are somewhat like numbered
doors into different rooms, each for a special service on a server or PC. They are identified
by numbers from 0 to 65535.
15.2.95 protocol
A formal definition of a method of communication, and the form of data to be transmitted
to accomplish it. Also, the purpose of such a method of communication. For example, In-
ternet Protocol (IP) for transmitting data packets on the Internet, or Hypertext Transfer
Protocol for interactions on the World Wide Web.
328
15.2 Glossary
15.2.103 remailer
An anonymous remailer is a service which allows users to send e-mails anonymously.
The remailer receives messages via e-mail and forwards them to their intended recipient
after removing information that would identify the original sender. Some also provide
an anonymous return address that can be used to reply to the original sender without
disclosing her identity. Well-known Remailer services include Cypherpunk, Mixmaster
and Nym.
329
15 Appendices
15.2.104 router
A router is a computer that determines the route for forwarding packets. It uses address
information in the packet header and cached information on the server to match address
numbers with hardware connections.
15.2.107 scheme
On the Web, a scheme is a mapping from a name to a protocol. Thus the HTTP scheme
maps URLs that begin with HTTP: to the Hypertext Transfer Protocol. The protocol
determines the interpretation of the rest of the URL, so that http://www.example.com/
dir/content.html identifies a Web site and a specific file in a specific directory, and
mailto:[email protected] is an e-mail address of a specific person or group at a
specific domain.
15.2.108 shell
A UNIX shell is the traditional command line user interface for the UNIX/Linux oper-
ating systems. The most common shells are sh and bash.
15.2.109 SOCKS
A SOCKS proxy is a special kind of proxy server. In the ISO/OSI model it operates
between the application layer and the transport layer. The standard port for SOCKS
proxies is 1080, but they can also run on different ports. Many programs support a
connection through a SOCKS proxy. If not you can install a SOCKS client like FreeCap,
ProxyCap or SocksCap which can force programs to run through the Socks proxy using
dynamic port forwarding. It is also possible to use SSH tools such as OpenSSH as a
SOCKS proxy server.
15.2.110 screenlogger
A screenlogger is software able to record everything your computer displays on the screen.
The main feature of a screenlogger is to capture the screen and log it into files to view
at any time in the future. Screen loggers can be used as powerful monitoring tool. You
should be aware of any screen logger running on any computer you are using, anytime.
330
15.2 Glossary
15.2.111 script
A script is a program, usually written in an interpreted, non-compiled language such as
JavaScript, Java, or a command interpreter language such as bash. Many Web pages
include scripts to manage user interaction with a Web page, so that the server does not
have to send a new page for each change.
15.2.112 smartphone
A smartphone is a mobile phone that offers more advanced computing ability and connec-
tivity than a contemporary feature phone, such as Web access, ability to run elaborated
operating systems and run built-in applications.
15.2.113 spam
Spam is messages that overwhelm a communications channel used by people, most no-
tably commercial advertising sent to large numbers of individuals or discussion groups.
Most spam advertises products or services that are illegal in one or more ways, almost
always including fraud. Content filtering of e-mail to block spam, with the permission of
the recipient, is almost universally approved of.
15.2.116 steganography
Steganography, from the Greek for hidden writing, refers to a variety of methods of
sending hidden messages where not only the content of the message is hidden but the
very fact that something covert is being sent is also concealed. Usually this is done by
concealing something within something else, like a picture or a text about something
innocent or completely unrelated. Unlike cryptography, where it is clear that a secret
message is being transmitted, steganography does not attract attention to the fact that
someone is trying to conceal or encrypt a message.
331
15 Appendices
15.2.117 subdomain
A subdomain is part of a larger domain. If for example “wikipedia.org” is the domain
for the Wikipedia, “en.wikipedia.org” is the subdomain for the English version of the
Wikipedia.
332
15.2 Glossary
15.2.124 tunnel
A tunnel is an alternate route from one computer to another, usually including a protocol
that specifies encryption of messages.
15.2.127 Usenet
Usenet is a more than 20-year-old discussion forum system accessed using the NNTP
protocol. The messages are not stored on one server but on many servers which distribute
their content constantly. Because of that it is impossible to censor Usenet as a whole,
however access to Usenet can and is often blocked, and any particular server is likely to
carry only a subset of locally-acceptable Usenet newsgroups. Google archives the entire
available history of Usenet messages for searching.
333
15 Appendices
VPN provider is a very fast, secure and convenient method to bypass Internet censorship
with little risks but it generally costs money every month. Further, note that the VPN
standard PPTP is no longer considered secure, and should be avoided.
15.2.130 whitelist
A whitelist is a list of sites specifically authorized for a particular form of communication.
Filtering traffic can be done either by a whitelist (block everything but the sites on the
list), a blacklist (allow everything but the sites on the list), a combination of the two, or
by other policies based on specific rules and conditions.
15.2.132 Webmail
Webmail is e-mail service through a Web site. The service sends and receives mail mes-
sages for users in the usual way, but provides a Web interface for reading and managing
messages, as an alternative to running a mail client such as Outlook Express or Thun-
derbird on the user’s computer. For example a popular and free webmail service is
https://mail.google.com/
15.2.134 WHOIS
WHOIS (who is) is the aptly named Internet function that allows one to query remote
WHOIS databases for domain registration information. By performing a simple WHOIS
search you can discover when and by whom a domain was registered, contact information,
and more.
A WHOIS search can also reveal the name or network mapped to a numerical IP
address
334
15.3 The necessity of Open Source
While this principle has been taken further by most scientific and (of course) open
source communities – publishing their methods and inner-workings upfront, so potential
weaknesses can be pointed out and fixed before further distribution – most distributors
of proprietary software rely on obfuscation to hide the weaknesses of their software. As
such they often prove to address newly discovered vulnerabilities in a non-transparent
way – leaving many trusting users at risk of exploitation.
Of course it must be said that Open Source Software is as secure as you make it (and
there is a lot of OSS written by beginners). However there are many good examples of
well written, well managed software which have such a large (and concerned) user base
that even the tiniest of mistakes are quickly found and dealt with. This is especially the
case with software depended upon in a network context.
To use closed source software in a network context is not only to be a minority, it is
to be overlooked by a vast community of concerned researchers and specialists that have
your privacy and safety in mind.
N.B. There is also a more cynical view of Open Source Software, which points out that
since nobody is paid full time to constantly review and regression test the latest tinkering
by unskilled or deliberately malicious programmers, it can also suffer from major security
335
15 Appendices
weaknesses which go undetected for long periods of time in complicated software, leaving
it vulnerable to hackers, criminals and intelligence agencies etc. e.g. the (now fixed)
Debian Linux predictable random number generator problem which led to the creation
of lots of weak cryptographic keys.
336