Sicherheit in Rechnernetzen: - Professur Datenschutz und ...
Sicherheit in Rechnernetzen: - Professur Datenschutz und ...
Sicherheit in Rechnernetzen: - Professur Datenschutz und ...
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
428<br />
A. Pfitzmann: Datensicherheit <strong>und</strong> Kryptographie; Lösungen, TU Dresden, WS2000/2001, 15.10.2000, 15:52 Uhr<br />
427<br />
A. Pfitzmann: Datensicherheit <strong>und</strong> Kryptographie; Lösungen, TU Dresden, WS2000/2001, 15.10.2000, 15:52 Uhr<br />
bzw. Entschlüsseln <strong>und</strong>/oder Authentisieren der Nachricht genommen. E<strong>in</strong> Angreifer muß<br />
dann zu vielen verschiedenen Zeiten an vielen verschiedenen Orten präsent se<strong>in</strong>, um alle Pads<br />
<strong>und</strong> die verschlüsselte Nachricht abzuhören bzw. die authentisierte Nachricht zu verfälschen.<br />
Die Maßnahme erschwert zwar Angriffe auf die Vertraulichkeit <strong>und</strong> Integrität, erleichtert aber<br />
aktive Angriffe auf die Verfügbarkeit: Es genügt, daß der Angreifer e<strong>in</strong>es der pads (oder<br />
natürlich auch die eigentliche Nachricht) abfängt oder verfälscht.<br />
Als kryptographische Systeme können das One-time pad <strong>und</strong> <strong>in</strong>formationstheoretisch sichere<br />
Authentikationscodes verwendet werden. Ersteres geht nun wirklich e<strong>in</strong>fach <strong>und</strong> auch letzteres<br />
mit vertretbarem Aufwand ohne Rechnerhilfe.<br />
b) Nachdem wieder beide je e<strong>in</strong> Kryptogerät haben, können sie auch asymmetrische kryptographische<br />
Systeme verwenden. Hierzu müssen alle Kryptogeräte, die ihre geheimen<br />
Schlüssel gelöscht haben, neue Schlüsselpaare erzeugen. Zusätzlich zu a) sagt e<strong>in</strong>er dem<br />
andern z.B. am Telefon noch die öffentlichen Schlüssel – denn Alice Kryptogerät hat auch<br />
Bobs öffentliche Schlüssel gelöscht, da es beim besten Willen nicht vorhersehen konnte, ob<br />
nur die geheimen Schlüssel ausgeforscht oder auch die öffentlichen unbefugt geändert werden<br />
sollten. (Heutzutage wird durch die Erkennung des Sprechers beim Telefonieren der Inhalt<br />
authentifiziert. Klappt demnächst Sprachsynthese auch <strong>in</strong> der Variante Sprecherimitation gut,<br />
fällt dieses Argument weg. Man sollte sich also nicht alle<strong>in</strong> auf diese Authentikation<br />
verlassen.) Danach werden mit den öffentlichen Schlüsseln noch e<strong>in</strong> oder mehrere zusätzliche<br />
pads ausgetauscht oder signierte Nachrichten direkt geprüft.<br />
Haben Großrechner <strong>und</strong> „Taschenrechner“ e<strong>in</strong>e genügend genaue Uhr, so kann man sich<br />
e<strong>in</strong>mal Abtippen vom Term<strong>in</strong>al ersparen, <strong>in</strong>dem statt Zufallszahlen Datum <strong>und</strong> Uhrzeit verwendet<br />
werden. (Hier sei an Aufgabe 2-3 er<strong>in</strong>nert <strong>und</strong> die dortige Bemerkung, möglichst schwache<br />
Annahmen über die Zufallszahlenerzeugung zu machen.)<br />
Nicht toleriert wird, daß e<strong>in</strong> Angreifer z.B. nach dem LOGIN „e<strong>in</strong>steigt“. Um diesen Angriff<br />
abzuwehren, ist kont<strong>in</strong>uierliche Authentikationsprüfung nötig.<br />
(Man beachte aber, daß <strong>in</strong> dieser Aufgabe e<strong>in</strong>e Blockchiffre mit ziemlich starken <strong>Sicherheit</strong>seigenschaften<br />
benötigt wird. Sie wird ja hier eher als Authentikations- als als Konzelationssystem<br />
verwendet, <strong>und</strong> nicht jedes Konzelationssystem eignet sich auch zur Authentikation, s. Aufg. 3-7<br />
d). Es muß z.B. gelten, wenn man die Uhrzeit verwendet, daß e<strong>in</strong> Angreifer nicht aus der Verschlüsselung<br />
e<strong>in</strong>er Nachricht die Verschlüsselung anderer, ähnlicher Nachrichten erraten kann.)<br />
Haben Alice <strong>und</strong> Bob Vorsorge für den Fall e<strong>in</strong>es Schlüsselverlustes getroffen <strong>und</strong> e<strong>in</strong> geme<strong>in</strong>sames<br />
Geheimnis vere<strong>in</strong>bart, das beide <strong>in</strong> ihrem Kopf (<strong>und</strong> folglich immer dabei) haben, können<br />
sie natürlich auch dieses Geheimnis als Startwert für die Generierung e<strong>in</strong>es geme<strong>in</strong>samen Schlüssels<br />
verwenden. Insbesondere <strong>in</strong>teressant ist dies für Fall b). Aus e<strong>in</strong>em von beiden leicht zu<br />
merkenden Passphrase (e<strong>in</strong>er relativ langen Zeichenkette mit wenig Entropie pro Zeichen) kann<br />
durch Anwenden e<strong>in</strong>er kryptographischen Hashfunktion (die allgeme<strong>in</strong> bekannt se<strong>in</strong> kann) e<strong>in</strong><br />
kürzerer Funktionswert mit mehr Entropie pro Zeichen gewonnen werden. Dieser Funktionswert<br />
kann dann als Startwert für die Schlüsselgenerierung oder auch direkt als symmetrischer Schlüssel<br />
verwendet werden.<br />
3-21 Identifikation <strong>und</strong> Authentikation mittels asymmetrischem Konzelationssystem<br />
a) U generiert e<strong>in</strong>e Zufallszahl z <strong>und</strong> verschlüsselt diese so, daß nur T sie entschlüsseln kann:<br />
cT (z). U sendet cT (z) an die Instanz, die T se<strong>in</strong> soll, <strong>und</strong> erwartet, daß sie ihm – je nach Protokoll<br />
– entweder z zurückschickt oder z <strong>in</strong> e<strong>in</strong>er weiteren kryptographischen Operation verwendet<br />
<strong>und</strong> das Operationsergebnis zurückschickt. Tut sie das, so war (unter der Annahme, daß<br />
cT authentisch <strong>und</strong> das asymmetrische Konzelationssystem sicher ist <strong>und</strong> z wirklich zufällig<br />
gewählt wurde) das „richtige“ T (mit durch die Länge von z bestimmter Wahrsche<strong>in</strong>lichkeit)<br />
<strong>in</strong>volviert. Hiermit hat U den Teilnehmer T identifiziert. Aber Vorsicht: Wird so naiv vorgegangen,<br />
funktioniert der <strong>in</strong> Aufgabe 3-18a beschriebene verändernde Angriff auch hier. Will<br />
sich e<strong>in</strong> Angreifer A als Teilnehmer T ausgeben, schickt er cT(z) e<strong>in</strong>fach an T weiter <strong>und</strong> das,<br />
was er von T erhält, danach an U. Kurzum: Das Protokoll identifiziert nicht den direkten<br />
Kommunikationspartner, sondern stellt nur sicher, daß T auch <strong>in</strong>volviert ist, <strong>in</strong>sbesondere z<br />
erfährt. Codiert U die Botschaft, die er T zukommen lassen möchte, also <strong>in</strong> diese erste<br />
Nachricht, etwa z := cT(Botschaft), so erfüllt das Protokoll se<strong>in</strong>en Zweck doch. U weiß nach<br />
Erhalt von z, daß T die Botschaft Botschaft erhalten hat.<br />
(Warnung: Wenn sie e<strong>in</strong>e wesentlich andere Lösung haben, dann prüfen Sie, ob sie T se<strong>in</strong>en<br />
geheimen Schlüssel dT haben auf etwas anwenden lassen, das vorher nicht mit cT verschlüsselt<br />
wurde. Solch e<strong>in</strong>e Operation, d.h. erst dT (zum Signieren) <strong>und</strong> danach cT (zum Prüfen der<br />
3-19 Ende-zu-Ende-Verschlüsselung<br />
Egal ob mit symmetrischer oder asymmetrischer Kryptographie gearbeitet wird: Jeder Benutzer<br />
benötigt zum<strong>in</strong>dest e<strong>in</strong>en geheimen Schlüssel. Das Hauptproblem ist bei e<strong>in</strong>em von mehreren<br />
Personen genutzten Rechner also, wo jeder se<strong>in</strong>e geheimen Schlüssel so aufheben kann, daß die<br />
anderen legitimen Benutzer des Rechners sie nicht unbefugt nutzen können.<br />
Traut man dem Betriebssystem, daß es verschiedene legitime Benutzer bezüglich des Zugriffs<br />
auf vertrauliche Daten vone<strong>in</strong>ander isoliert, <strong>und</strong> dem Hardwareschutz (Gehäuse etc.) des Rechners<br />
bzgl. der Vereitelung von E<strong>in</strong>dr<strong>in</strong>gversuchen physischer Art, so ist das Problem per<br />
Def<strong>in</strong>ition gelöst.<br />
Vertraut man dem Rechner gar nicht, so muß nicht nur die Schlüsselspeicherung, sondern<br />
auch die Verschlüsselung, Entschlüsselung, das Testen von Signaturen <strong>und</strong> vor allem das Signieren<br />
<strong>in</strong> e<strong>in</strong>em separaten, persönlichen Rechner geschehen. Dieser sollte, damit er mit se<strong>in</strong>em Benutzer<br />
direkt kommunizieren kann, zum<strong>in</strong>dest über e<strong>in</strong>e kle<strong>in</strong>e Tastatur <strong>und</strong> e<strong>in</strong> kle<strong>in</strong>es Display<br />
verfügen. Physische Ausprägungen reichen von sogenannter „Super smart card“ (Chipkarte mit<br />
Display <strong>und</strong> Tatstatur), über sogenannte Smart Diskettes (Rechner <strong>in</strong> Diskettenform, die mit<br />
anderen über deren Laufwerk kommunizieren, so daß ke<strong>in</strong> Chipkartenleser benötigt wird <strong>und</strong><br />
mehr Platz als <strong>in</strong> e<strong>in</strong>er Chipkarte mit den genormten Magnetstreifenkartenabmessungen zur<br />
Verfügung steht) bis Notebookcomputer.<br />
E<strong>in</strong> Kompromiß bzgl. Aufwand <strong>und</strong> <strong>Sicherheit</strong> besteht dar<strong>in</strong>, daß jeder Benutzer beim LOGIN<br />
e<strong>in</strong> Paßwort solcher Länge (genauer: Entropie) e<strong>in</strong>gibt, daß aus ihm e<strong>in</strong> Schlüssel e<strong>in</strong>es symmetrischen<br />
Konzelationssystems gebildet werden kann. Mit diesem Schlüssel werden dann die<br />
eigentlich für die Ende-zu-Ende-Verschlüsselung benötigten Schlüssel zu Sitzungsbeg<strong>in</strong>n ent- <strong>und</strong><br />
am Sitzungsende wieder verschlüsselt. Dieses Verfahren ist natürlich zu brechen, wenn entweder<br />
die Paßworte doch zu wenig Entropie enthalten oder das symmetrische Konzelationssystem gebrochen<br />
werden kann oder andere Benutzer durch e<strong>in</strong> Anwendungs-Programm, was das LOGIN<br />
simuliert (so daß der nächste Benutzer glaubt, er kommuniziere mit dem Betriebssystem), an e<strong>in</strong>e<br />
Kopie des Paßwortes gelangen können. Letzteres kann etwa dadurch verh<strong>in</strong>dert werden, daß vor<br />
dem LOGIN der Rechner gr<strong>und</strong>sätzlich auf Hardwaremanipulationen untersucht <strong>und</strong> mit dem<br />
authentischen Betriebssystem gebootet wird. Damit s<strong>in</strong>d „nur“ noch E<strong>in</strong>dr<strong>in</strong>gversuche erkennende<br />
Gehäuse, vgl. §2.1, <strong>und</strong> authentisches Booten nötig, vgl. [Cles_88, ClPf_91, Groß_91].<br />
3-20 Ende-zu-Ende-Verschlüsselung ohne vorher ausgetauschten Schlüssel<br />
a) Wer dem andern e<strong>in</strong>e Nachricht senden will, generiert viele One-time pads. Er sendet dann die<br />
pads e<strong>in</strong>zeln über verschiedene Wege (z.B. via Umweg über e<strong>in</strong>em Bekannten <strong>und</strong> möglichst<br />
von unterschiedlichen Orten aus, z.B. Wohnung, Büro, Telefonzellen) <strong>und</strong> Medien (z.B.<br />
Telefon, Telex, Datex) <strong>und</strong> dies möglichst noch zu unterschiedlichen Zeiten (sofern der Dienst<br />
dies zuläßt, d.h. ke<strong>in</strong>e Realzeitforderungen stellt). Die Summe aller pads wird dann zum Ver-