6e875181a12b989a60c1d7558994a0a4c2bf36e5
[ach-master.git] / src / practical_settings / GPG.tex
1 % hack.
2 \gdef\currentsectionname{GPG}
3 \gdef\currentsubsectionname{GnuPG}
4
5 The OpenPGP protocol
6 \footnote{\url{https://tools.ietf.org/search/rfc4880}}
7  uses asymmetric encryption to protect a session key which is used to encrypt a message. Additionally, it signs messages via asymmetric encryption and hash functions. %% what? - azet
8 Research on SHA-1 conducted back in 2005\footnote{\url{https://www.schneier.com/blog/archives/2005/02/sha1\_broken.html}} has made clear that collision attacks are a real threat to the security of the SHA-1 hash function. PGP settings should be adapted to avoid using SHA-1.
9
10
11 When using PGP, there are a couple of things to take care of:
12 \begin{itemize*}
13   \item keylengths (see section \ref{section:keylengths})
14   \item randomness (see section \ref{section:RNGs})
15   \item preference of symmetric encryption algorithm (see section \ref{section:CipherSuites})
16   \item preference of hash function (see section \ref{section:CipherSuites})
17 \end{itemize*}
18
19 Properly dealing with key material, passphrases and the web-of-trust is outside of the scope of this document. The GnuPG website\footnote{\url{http://www.gnupg.org/}} has a good tutorial on PGP.
20
21 This \href{https://www.debian-administration.org/users/dkg/weblog/48}{Debian How-to}\footnote{\url{https://www.debian-administration.org/users/dkg/weblog/48}} is a great resource on upgrading your old PGP key as well as on safe default settings. This section is built based on the Debian How-to.
22
23 \subsubsection{Hashing}
24 Avoid SHA-1 in GnuPG. Edit \$HOME/.gnupg/gpg.conf:
25
26 \configfile{gpg.conf}{208-210}{Digest selection in GnuPG}
27
28 Before you generate a new PGP key, make sure there is enough entropy available (see subsection \ref{subsec:RNG-linux}).
29
30 %\subsubsection{PGP / GPG Operations}
31
32 %% Ciphering - Unciphering operations
33 %%% TOO COMPLEX. Make a pointer to a good GPG tutorial
34
35 %% Signing / checking signatures
36 %%% TOO COMPLEX. Make a pointer to a good GPG tutorial
37
38 %\subsubsection{Trusted Keys}
39
40 %%Explain that a key by himself is not trustable.  Chain of trust principle.
41
42 %%% TOO COMPLEX. Make a pointer to a good GPG tutorial
43
44 %\subsection{Available implementations and mails plugins}
45
46 %% Microsoft Windows (Symantec for Outlook? GnuPG + ....)
47 %%% TOO COMPLEX. Make a pointer to a good GPG tutorial
48
49 %% Linux (GnuPG + Enigmail for Thunderbird)
50
51 %%% TOO COMPLEX. Make a pointer to a good GPG tutorial
52 %% Mac OS X (GnuPG + GPGMail)
53 %%% TOO COMPLEX. Make a pointer to a good GPG tutorial
54
55