tuning
[cryptoparty-slides.git] / cryptoparty.tex
1 \documentclass{beamer}
2 \usepackage[utf8x]{inputenc}
3 \usepackage[ngerman]{babel}
4 \usepackage{color}
5 \usepackage{listings}
6 \usepackage{graphicx} % needed for beamer
7
8 \lstset{%
9 language=sh, % FIXME: nice syntax coloring for JSON
10 basicstyle=\ttfamily\footnotesize,
11 showspaces=false,
12 showstringspaces=false,
13 showtabs=false,
14 keepspaces=true,
15 %breaklines=true,
16 }
17
18 \usetheme{Boadilla}
19 \usefonttheme{professionalfonts}
20 \useoutertheme[subsection=false,footline=empty]{miniframes}
21 \useinnertheme{circles}
22 \setbeamertemplate{footline}[frame number]
23
24 \author{Stratum~0~e.~V.}
25 \title{Cryptoparty}
26 \subtitle{Sichere Kommunikation im Internet}
27 \date{17. August 2013}
28
29 \begin{document}
30 \begin{frame}
31 \maketitle
32 \end{frame}
33
34 \section{Begrüßung}
35 \begin{frame}{Begrüßung}
36 \begin{itemize}
37 \item Wer sind wir?
38 \item Wer seid ihr?
39 \end{itemize}
40 \end{frame}
41
42
43 \section{Organisatorisches}
44 \begin{frame}{Organisatorisches}
45 \begin{itemize}
46 \item Ablauf:
47 \begin{itemize}
48 \item kurzer Vortrag zur Theorie (15-20 Min)
49 \item Workshop in Kleingruppen
50 \end{itemize}
51 \item Getränke hinten an der Theke
52 \item WLAN-Passwort ist: FIXME
53 \item Folien gibts auf \url{https://stratum0.org/cryptoparty}
54 \end{itemize}
55 \end{frame}
56
57 \section{Einführung}
58 \begin{frame}{Motivation}
59 \begin{itemize}
60 \item Daten im Internet sind vergleichbar mit Postkarten: \\
61 \vfill
62 \begin{center}
63 \includegraphics[width=0.8\textwidth]{no-crypto.pdf}
64 \end{center}
65 \pause
66 \vfill
67 \item Mögliche Angriffspunkte:
68 \begin{itemize}
69 \item Provider A
70 \item die große Internet-Wolke
71 \item Provider B
72 \end{itemize}
73 \pause
74 \vfill
75 \item Aber: es gibt Möglichkeiten, das zu verhindern.
76 \end{itemize}
77 \end{frame}
78
79 \begin{frame}
80 \begin{block}{Disclaimer}
81 \begin{itemize}
82 \item Es gibt keine 100-prozentige Sicherheit.
83 \item Alles hier gezeigte ist Stand der Technik und hinreichend sicher.
84 \end{itemize}
85
86 Trotzdem: plant keine Terroranschläge über das Internet.
87 \end{block}
88 \end{frame}
89
90 \section{Public-Key-Kryptographie}
91 \begin{frame}{Public-Key-Kryptografie}
92 \emph{(Kryptografie: die Lehre vom Geheimen)}
93
94 \begin{itemize}
95 \item 1977 erfunden von Ron Rivest, Adi Shamir und Leonard Adleman
96 \item komplizierte mathematische Verfahren
97 \begin{itemize}
98 \item soll hier nicht erklärt werden
99 \end{itemize}
100 \item Jeder Kommunikationsteilnehmer generiert ein zufälliges Schlüsselpaar:
101 \begin{itemize}
102 \item einen öffentlichen Schlüssel zum Verschlüsseln von Nachrichten
103 \item einen geheimen Schlüssel zum Entschlüsseln von Nachrichten
104 \end{itemize}
105 \end{itemize}
106 \begin{alertblock}{Achtung}
107 Der private Schlüssel sollte geheim gehalten werden, der öffentliche Schlüssel
108 sollte veröffentlicht werden.
109 \end{alertblock}
110 \end{frame}
111
112 \begin{frame}{Public-Key-Kryptografie}
113 \begin{itemize}
114 \item Nachrichten, die mit dem öffentlichen Schlüssel verschlüsselt wurden,
115 können nur mit dem passenden privaten Schlüssel entschlüsselt werden
116 \vfill
117 \begin{center}
118 \includegraphics[width=0.5\textwidth]{public-private-keys.pdf}
119 \end{center}
120 \vfill
121 \item der private Schlüssel kann nicht aus dem öffentlichen Schlüssel
122 hergeleitet werden
123 \end{itemize}
124 \end{frame}
125
126 \begin{frame}{Analogie}
127 \begin{itemize}
128 \item Das ist Bob: \raisebox{-6pt}{\includegraphics[height=20pt]{bob.pdf}}
129 \vspace{0.5\baselineskip}
130
131 \item Bob verteilt Bügelschlösser für jeden, der Nachrichten an ihn
132 verschlüsseln will:
133 \raisebox{-4pt}{\includegraphics[height=16pt]{bobs-lock.pdf}}
134 \begin{itemize}
135 \item öffentlicher Schlüssel
136 \end{itemize}
137 \vspace{0.5\baselineskip}
138
139 \item Bob behält den Schlüssel für die Schlösser:
140 \raisebox{-2pt}{\includegraphics[width=20pt]{bobs-key.pdf}}
141 \begin{itemize}
142 \item privater Schlüssel
143 \end{itemize}
144 \end{itemize}
145 \end{frame}
146
147 \begin{frame}{Verschlüsseln und Entschlüsseln}
148 Alice verschlüsselt eine Nachricht an Bob mit seinem öffentlichen Schlüssel: \\
149 \begin{center}
150 \includegraphics[width=.7\textwidth]{public-key-encryption.pdf}
151 \end{center}
152
153 Nur Bob kann diese Nachricht jetzt mit seinem privaten Schlüssel lesen:
154 \begin{center}
155 \includegraphics[width=.7\textwidth]{public-key-decryption.pdf}
156 \end{center}
157 \end{frame}
158
159 \begin{frame}{Signaturen}
160 Das System auch umgekehrt für Signaturen einsetzbar:
161 \begin{center}
162 \includegraphics[width=0.5\textwidth]{public-private-signature.pdf}
163 \end{center}
164 \begin{itemize}
165 \item Bob verschlüsselt ein Dokument mit seinem \emph{privaten} Schlüssel
166 \begin{itemize}
167 \item nur Bob hat diesen privaten Schlüssel, also kann nur Bob diesen
168 Schlüsseltext erstellt haben
169 \end{itemize}
170 \item Jeder andere kann den Schlüsseltext entschlüsseln und Bobs Signatur
171 überprüfen
172 \end{itemize}
173 \end{frame}
174
175 \begin{frame}{Vertrauensnetzwerke}
176 \begin{block}{Soweit in Ordnung\ldots}
177 Aber wie kann ich sicher sein, dass der Schlüssel, mit dem ich
178 Nachrichten verschlüssele, auch wirklich Bob gehört?
179 \end{block}
180
181 \pause
182 \textbf{Lösung:} Vertrauensnetzwerke
183 \begin{itemize}
184 \item Ich prüfe, ob Alices öffentlicher Schlüssel auch wirklich Alice gehört
185 \begin{itemize}
186 \item Falls ja, signiere ich ihren öffentlichen Schlüssel
187 \item Ich versichere damit, dass Alice diesen Schlüssel besitzt
188 \end{itemize}
189 \item Alice hat das gleiche mit Bobs Schlüssel getan
190 \item Falls Alice nicht schlampig war, kann ich Bobs Schlüssel indirekt
191 vertrauen
192 \end{itemize}
193 \end{frame}
194
195 \begin{frame}{Vertrauensnetzwerke}
196 Beispiel Vertrauensnetzwerk:
197 \begin{center}
198 \includegraphics[width=\textwidth]{web-of-trust.pdf}
199 \end{center}
200 \end{frame}
201
202 \section{Surfen}
203 \begin{frame}{Sicher surfen: HTTPS}
204 \begin{itemize}
205 \item Webserver besitzt privaten und öffentlichen Schlüssel ("`Zertifikat"')
206 \item Schlüsselerzeugung auf Benutzerseite dynamisch
207 \item Vertrauensnetzwerk über \emph{Certificate Authorities} (CA)
208 \begin{itemize}
209 \item nehmen meist Geld für die Signatur des Server-Zertifikats
210 \item Identitätsprüfung je nach CA unterschiedlich genau\ldots
211 \item Browser vertrauen nur bestimmten CAs $\Rightarrow$
212 Zertifikatswarnungen
213 \end{itemize}
214 \end{itemize}
215 \begin{center}
216 \includegraphics[width=0.5\textwidth]{https-google-de.png}
217 \end{center}
218 \end{frame}
219
220 \begin{frame}{Sicher surfen: HTTPS}
221 \begin{alertblock}{Achtung}
222 Die Daten sind nur auf dem Weg zum Webserver geschützt, am Ende liegen sie
223 wieder entschlüsselt vor!
224 \end{alertblock}
225
226 \begin{itemize}
227 \item Auf dem Webserver könnte z.\,B. auch ein Angreifer seine Finger im
228 Spiel haben\ldots
229 \item Certificate Authorities könnten gefälschte Zertifikate ausstellen
230 \begin{itemize}
231 \item Beispiel: Comodo CA, DigiNotar, TürkTrust
232 \end{itemize}
233 \item keine eingebaute Anonymisierung
234 \end{itemize}
235 \end{frame}
236
237 \section{E-Mail}
238 \begin{frame}{Mails verschlüsseln: PGP}
239 \begin{itemize}
240 \item PGP: Pretty Good Privacy ("`Ziemlich gute Privatsphäre"')
241 \item seit 1998 ein Standard für Mailverschlüsselung
242 \begin{itemize}
243 \item Freie Softwarelösung: GnuPG (GNU Privacy Guard)
244 \end{itemize}
245 \item Verschlüsselt keine Metadaten (wie z.\,B. Betreffzeile)!
246 \item Erweiterungen für viele Mailprogramme vorhanden
247 \begin{alertblock}{Webbasierte Dienste?}
248 Mit webbasierte Diensten ist PGP kaum möglich -- es ist nötig, ein
249 Mailprogramm auf dem eigenen Rechner zu installieren! Die meisten Anbieter
250 bieten Anleitungen zum Einrichten der Mailkonten im Mailprogramm an.
251 \end{alertblock}
252 \end{itemize}
253 \end{frame}
254
255 \begin{frame}{PGP: Softwareunterstützung}
256 \begin{itemize}
257 \item Windows: Gpg4Win, \url{http://gpg4win.org/}
258 \item Mac OS X: GPGTools, \url{https://www.gpgtools.org/}
259 \item Linux: GnuPG, \url{http://gnupg.org}
260 \end{itemize}
261
262 Darauf aufbauend Unterstützung in Mailprogrammen:
263 \begin{itemize}
264 \item Mozilla Thunderbird: Enigmail, \url{http://enigmail.org}
265 \item Apple Mail: GPGMail, \url{https://www.gpgtools.org/}
266 \item Microsoft Outlook: Gpg4Win
267 \end{itemize}
268 \end{frame}
269
270 \section{Chats}
271 \begin{frame}{Chats verschlüsseln: OTR}
272 \begin{itemize}
273 \item OTR: Off-the-Record Messaging
274 \item Verschlüsselung
275 \item Authentizität
276 \item Abstreitbarkeit
277 \begin{itemize}
278 \item keiner kann nachher beweisen, ich hätte etwas bestimmtes gesendet
279 \end{itemize}
280 \item Folgenlosigkeit
281 \begin{itemize}
282 \item Verlust des privaten Schlüssels hat keine Auswirkung auf bisherige
283 Verbindungen
284 \end{itemize}
285 \end{itemize}
286 \end{frame}
287
288 \begin{frame}{OTR: Softwareunterstützung}
289 \begin{itemize}
290 \item eingebaut in Adium (Mac OS X), Jitsi, Xabber (Android), ChatSecure (iOS)
291 \item Pidgin (Windows, Linux): \url{http://www.cypherpunks.ca/otr/}
292 \item Miranda (Windows): auf der Addons-Seite
293 \end{itemize}
294
295 \begin{block}{Tipp}
296 Adium, Pidgin und Miranda unterstützen alle gängigen Netzwerke, z.~B. ICQ,
297 MSN, Yahoo und auch Facebook Chat.
298 \end{block}
299 \end{frame}
300
301 \begin{frame}{Weitere Informationen}
302 \begin{itemize}
303 \item CryptoCD, Anleitungen auf deutsch,
304 \url{http://www.cryptocd.org/CryptoCDBetriebssystem}
305 \item Cryptoparty Handbook, mit Anleitungen zu allen hier gezeigten Themen
306 (englisch), \url{https://www.cryptoparty.in/documentation/handbook}
307 \end{itemize}
308 \end{frame}
309
310 \begin{frame}{Quellen}
311 Folgende Bilder wurden benutzt:
312 \begin{itemize}
313 \item Server-Icon, Computer-Icon: aus dem Tangerine-Icon-Theme, CC-BY-SA 2.5,
314 Copyright 2004-2006 Canonical Ltd.
315 \item Schlüssel-Icon: aus dem Gnome-Icon-Theme, CC-BY-SA 3.0 United States,
316 Copyright GNOME Project
317 \item Notizblock-Icon:
318 \url{http://commons.wikimedia.org/wiki/File:Ruled_paper_note_with_pin.svg},
319 Autor: Andreas Plank, CC-BY-SA-3.0 Unported
320 \item alle anderen Icons aus dem Tango Project, gemeinfrei.
321 \end{itemize}
322 \end{frame}
323
324 \end{document}
This page took 0.078299 seconds and 5 git commands to generate.