2 \usepackage[utf8x
]{inputenc}
3 \usepackage[ngerman]{babel
}
6 \usepackage{graphicx} % needed for beamer
9 language=sh,
% FIXME: nice syntax coloring for JSON
10 basicstyle=
\ttfamily\footnotesize,
12 showstringspaces=false,
19 \usefonttheme{professionalfonts
}
20 \useoutertheme[subsection=false,footline=empty
]{miniframes
}
21 \useinnertheme{circles
}
22 \setbeamertemplate{footline
}[frame number
]
24 \author{Stratum~
0~e.~V.
}
26 \subtitle{Sichere Kommunikation im Internet
}
27 \date{17. August
2013}
35 \begin{frame
}{Begrüßung
}
43 \section{Organisatorisches
}
44 \begin{frame
}{Organisatorisches
}
48 \item kurzer Vortrag zur Theorie (
15-
20 Min)
49 \item Workshop in Kleingruppen
51 \item Getränke hinten an der Theke
52 \item WLAN-Passwort ist: FIXME
53 \item Folien gibts auf
\url{https://stratum0.org/cryptoparty
}
58 \begin{frame
}{Motivation
}
60 \item Daten im Internet sind vergleichbar mit Postkarten: \\
63 \includegraphics[width=
0.8\textwidth]{no-crypto.pdf
}
67 \item Mögliche Angriffspunkte:
70 \item die große Internet-Wolke
75 \item Aber: es gibt Möglichkeiten, das zu verhindern.
80 \begin{block
}{Disclaimer
}
82 \item Es gibt keine
100-prozentige Sicherheit.
83 \item Alles hier gezeigte ist Stand der Technik und hinreichend sicher.
86 Trotzdem: plant keine Terroranschläge über das Internet.
90 \section{Public-Key-Kryptographie
}
91 \begin{frame
}{Public-Key-Kryptografie
}
92 \emph{(Kryptografie: die Lehre vom Geheimen)
}
95 \item 1977 erfunden von Ron Rivest, Adi Shamir und Leonard Adleman
96 \item komplizierte mathematische Verfahren
98 \item soll hier nicht erklärt werden
100 \item Jeder Kommunikationsteilnehmer generiert ein zufälliges Schlüsselpaar:
102 \item einen öffentlichen Schlüssel zum Verschlüsseln von Nachrichten
103 \item einen geheimen Schlüssel zum Entschlüsseln von Nachrichten
106 \begin{alertblock
}{Achtung
}
107 Der private Schlüssel sollte geheim gehalten werden, der öffentliche Schlüssel
108 sollte veröffentlicht werden.
112 \begin{frame
}{Public-Key-Kryptografie
}
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
118 \includegraphics[width=
0.5\textwidth]{public-private-keys.pdf
}
121 \item der private Schlüssel kann nicht aus dem öffentlichen Schlüssel
126 \begin{frame
}{Analogie
}
128 \item Das ist Bob:
\raisebox{-
6pt
}{\includegraphics[height=
20pt
]{bob.pdf
}}
129 \vspace{0.5\baselineskip}
131 \item Bob verteilt Bügelschlösser für jeden, der Nachrichten an ihn
133 \raisebox{-
4pt
}{\includegraphics[height=
16pt
]{bobs-lock.pdf
}}
135 \item öffentlicher Schlüssel
137 \vspace{0.5\baselineskip}
139 \item Bob behält den Schlüssel für die Schlösser:
140 \raisebox{-
2pt
}{\includegraphics[width=
20pt
]{bobs-key.pdf
}}
142 \item privater Schlüssel
147 \begin{frame
}{Verschlüsseln und Entschlüsseln
}
148 Alice verschlüsselt eine Nachricht an Bob mit seinem öffentlichen Schlüssel: \\
150 \includegraphics[width=
.7\textwidth]{public-key-encryption.pdf
}
153 Nur Bob kann diese Nachricht jetzt mit seinem privaten Schlüssel lesen:
155 \includegraphics[width=
.7\textwidth]{public-key-decryption.pdf
}
159 \begin{frame
}{Signaturen
}
160 Das System auch umgekehrt für Signaturen einsetzbar:
162 \includegraphics[width=
0.5\textwidth]{public-private-signature.pdf
}
165 \item Bob verschlüsselt ein Dokument mit seinem
\emph{privaten
} Schlüssel
167 \item nur Bob hat diesen privaten Schlüssel, also kann nur Bob diesen
168 Schlüsseltext erstellt haben
170 \item Jeder andere kann den Schlüsseltext entschlüsseln und Bobs Signatur
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?
182 \textbf{Lösung:
} Vertrauensnetzwerke
184 \item Ich prüfe, ob Alices öffentlicher Schlüssel auch wirklich Alice gehört
186 \item Falls ja, signiere ich ihren öffentlichen Schlüssel
187 \item Ich versichere damit, dass Alice diesen Schlüssel besitzt
189 \item Alice hat das gleiche mit Bobs Schlüssel getan
190 \item Falls Alice nicht schlampig war, kann ich Bobs Schlüssel indirekt
195 \begin{frame
}{Vertrauensnetzwerke
}
196 Beispiel Vertrauensnetzwerk:
198 \includegraphics[width=
\textwidth]{web-of-trust.pdf
}
203 \begin{frame
}{Sicher surfen: HTTPS
}
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)
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$
216 \includegraphics[width=
0.5\textwidth]{https-google-de.png
}
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!
227 \item Auf dem Webserver könnte z.\,B. auch ein Angreifer seine Finger im
229 \item Certificate Authorities könnten gefälschte Zertifikate ausstellen
231 \item Beispiel: Comodo CA, DigiNotar, TürkTrust
233 \item keine eingebaute Anonymisierung
238 \begin{frame
}{Mails verschlüsseln: PGP
}
240 \item PGP: Pretty Good Privacy ("`Ziemlich gute Privatsphäre"')
241 \item seit
1998 ein Standard für Mailverschlüsselung
243 \item Freie Softwarelösung: GnuPG (GNU Privacy Guard)
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.
255 \begin{frame
}{PGP: Softwareunterstützung
}
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
}
262 Darauf aufbauend Unterstützung in Mailprogrammen:
264 \item Mozilla Thunderbird: Enigmail,
\url{http://enigmail.org
}
265 \item Apple Mail: GPGMail,
\url{https://www.gpgtools.org/
}
266 \item Microsoft Outlook: Gpg4Win
271 \begin{frame
}{Chats verschlüsseln: OTR
}
273 \item OTR: Off-the-Record Messaging
274 \item Verschlüsselung
276 \item Abstreitbarkeit
278 \item keiner kann nachher beweisen, ich hätte etwas bestimmtes gesendet
280 \item Folgenlosigkeit
282 \item Verlust des privaten Schlüssels hat keine Auswirkung auf bisherige
288 \begin{frame
}{OTR: Softwareunterstützung
}
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
296 Adium, Pidgin und Miranda unterstützen alle gängigen Netzwerke, z.~B. ICQ,
297 MSN, Yahoo und auch Facebook Chat.
301 \begin{frame
}{Weitere Informationen
}
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
}
310 \begin{frame
}{Quellen
}
311 Folgende Bilder wurden benutzt:
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.