...um schwerwiegende Fehler zu vermeiden. Es ist wichtig zu wissen, innerhalb welcher Grenzen man sich sicher bewegen kann. Es handelt sich da in erster Linie um organisatorisches, weniger um technisches Wissen. Diese Informationen sind deshalb ganz ausdrücklich auch für Anfänger.
Sicherheit ist unbequem ←
Man kann es gar nicht oft genug sagen: Wenn man Sicherheit will, muss man dafür etwas tun. Wenn man viel Sicherheit will, muss man viel dafür tun; insbesondere Dinge, die umständlich und lästig sind. Computer, mit denen man normale E-Mails liest oder mit denen man (ohne drastische Einschränkungen) im Web unterwegs ist, sind mit vertretbarem Aufwand nicht auf hohem Niveau zu sichern. Wer wirklich vertrauliche Daten bearbeiten oder kritische Unterschriften erzeugen möchte, der braucht minimal einen gesonderten, nur dafür verwendeten Rechner.
Die Schlüssel sind das stärkste Glied in der Kette ←
Das gilt auch für schwache Schlüssel (1024 Bit). Realistischerweise wird niemand einen Schlüssel per brute force angreifen. Die Computer, auf denen Schlüssel verwendet werden, sind geradezu dramatisch unsicher. Nicht nur der eigene, sondern auch der des Kommunikationspartners. Die Daten sind nur so sicher, wie das schwächste Glied in der Kette.
Der Schlüssel muss zum Sicherheitsniveau der jeweiligen Daten passen.
Nichtverifizierte Schlüssel sind weitgehend wertlos ←
Wenn man Schlüssel verwendet, ohne deren Fingerprint aus sicherer Quelle beschafft und geprüft zu haben, schafft man sich lediglich die "Sicherheit", dass nicht mehr alle, sondern nur noch einer mitlesen kann (und nein, damit ist nicht der beabsichtigte Empfänger gemeint). Bezüglich der Integrität und Authentizität der Daten heißt das nur, dass irgend jemand eine Unterschrift erzeugt hat – also de facto gar nichts.
Das heißt nicht, dass man nichtverifizierte Schlüssel auf keinen Fall verwenden soll. Wenn man die Daten auch unverschlüsselt verschicken würde, dann ist es natürlich eine Verbesserung, den zweifelhaften Schlüssel zu benutzen. Man darf nur nicht den Fehler machen, kritische Daten mit solchen Schlüsseln zu verwenden. Leider sind die aktuellen Mailclients dabei keine Hilfe.
soziale / rechtliche Bedeutung technischer Gegebenheiten ←
Die Existenz eines Schlüssels sagt erst einmal nichts darüber aus, wie sein Besitzer ihn verwendet (ob er ihn überhaupt noch verwendet). Von Testschlüssel bis Hochsicherheitsschlüssel ist alles möglich. Dem Schlüssel selber kann man das nicht (mit Sicherheit) ansehen. Das kann einem zumeist nur der Schlüsselbesitzer sagen. Es gibt auch noch kein standardisiertes System, wie man diese Information in Zertifikate integriert.
Dasselbe grundsätzliche Problem besteht bei der Interpretation von Signaturen. Dass eine Signatur technisch korrekt ist, ist trivial feststellbar. Dass der Schlüssel noch gültig ist, lässt sich auch relativ einfach ermitteln. Aber was genau sagt diese Signatur nun aus (und was nicht)? Dafür gibt es (abgesehen von qualifizierten Signaturen, die aber bisher bei OpenPGP keine Rolle spielen) keine Festlegung. Wenn eine signierte E-Mail als Attachment ein Angebot hat (womöglich als Rücksendung), ist das dann die rechtsverbindliche Unterbreitung bzw. Annahme des Angebots, oder hat das erst einmal gar nichts zu bedeuten, wenn der Sender grundsätzliche alle seine Mails signiert, also die Datei gar nicht unsigniert "schicken kann"?
Was ist davon zu halten, wenn eine Signatur von einem Schlüssel erzeugt wurde, den der Besitzer als relativ unsicher bezeichnet (etwa, weil er auf seinem normalen Computer verwendet wird)? Vielleicht gibt es eine Schlüsselrichtlinie, in der festgelegt wurde, wofür der Schlüssel verwendet wird.
das Web of Trust ←
Das Web of Trust (WoT) ist in seiner aktuellen Form ein einziger Alptraum. Anfänger sollten die Finger davon lassen. Ihm fehlen so ziemlich alle Qualitäten, die es haben müsste, um seinen Zweck ernsthaft zu erfüllen:
Die Schlüssel (zertifizierender und zertifizierter) enthalten keine Information, wie sicher sie sind und wofür sie verwendet werden.
Die Zertifizierungen enthalten keine Information, wie sicher die zertifizierten Schlüssel sind und wofür sie verwendet werden.
Die Zertifizierungen enthalten keine Information, was (Name, E-Mail, ggf. Kommentar) geprüft wurde.
Die Zertifizierungen enthalten keine Information, in welchem Verhältnis Zertifizierer und Zertifizierter zueinander stehen (Verwandte, Fremde) und wie ggf. die Identität geprüft wurde (Personalausweis? Inländischer oder ausländischer?).
Kein reines WoT-Problem: Die meisten Schlüssel haben keine Angabe dazu, wo man verbindliche Schlüsselupdates bekommt. Zur verlässlichen Nutzung von Schlüsseln gehört aber auch eine verlässliche Handhabung von Schlüsselwiderrufen inklusive einer belastbaren Dokumentation, wann der Widerruf veröffentlicht wurde. Für X.509 ist das brauchbar gelöst.
Man bekommt keine Bestätigung dafür, dass man zu einem bestimmten Zeitpunkt eine Aktualisierung des Zertifikats (inklusive Widerruf) durchgeführt hat und wie die aussah.
Die meisten Zertifizierungen des WoT sind de facto wertlos. Anfänger sollten Schlüssel nicht für die Öffentlichkeit zertifizieren, sondern nur lokal (lsign
).
Siehe zu dieser Problematik auch www.openpgp-notations.org (auch vom Betreiber dieser Site).
Schlüsselgültigkeit und Zertifizierungsvertrauen ←
Ohne hier ins Detail gehen zu können: Schlüsselgültigkeit und Zertifizierungsvertrauen (trust / owner trust) werden gerne verwechselt, auch in Artikeln über OpenPGP... Schlüsselgültigkeit ist in jeder Situation ein entscheidendes Kriterium (auch technisch, weil manche Applikationen die Nutzung ungültiger Schlüssel komplett verweigern, was keine gute Idee ist); Zertifizierungsvertrauen betrifft nur diejenigen, die Schlüssel über das Web of Trust (WoT) validieren. Es ist – insbesondere für Anfänger – völlig in Ordnung (und sogar ratsam), die WoT-Vertrauensstellung eines Schlüssels auf unbekannt
zu lassen. Gültig werden Schlüssel dadurch, dass man sie mit einem entsprechend privilegierten Schlüssel unterschreibt.
Aktualität der Zertifikate ←
Es hilft wenig, wenn ein Schlüssel kompromittiert und deswegen zurückgezogen wird, aber der Kommunikationspartner das nicht mitbekommt, weil er nur alle zwei Jahre seinen Keyring aktualisieren lässt.
Die Sicherheit hängt nicht nur an den Schlüsseln ←
Das gilt sowohl bei Verschlüsselung als auch – und dort in viel stärkerem Maß – für Signaturen. Daten werden nämlich weder direkt asymmetrisch verschlüsselt noch direkt signiert. Beim Verschlüsseln sind symmetrische und asymmetrische Verschlüsselung beteiligt, und der Angreifer kann sich aussuchen, was er angreift (das Knacken des symmetrischen Schlüssels entschlüsselt nur die eine Nachricht, das des asymmetrischen alle Nachrichten). Allerdings gab es bei symmetrischer Verschlüsselung bisher wenig Probleme.
Bei Signaturen wird zunächst der Hashwert der Daten (zusammen mit einigen Metadaten) bestimmt; nur dieser wird dann signiert. Wer also die Hashfunktion brechen kann, kann zu einer bereits erzeugten Unterschrift neue Daten erzeugen, für die diese Unterschrift gültig ist. Dass diese Unterschrift wiederverwertet wurde, ist nicht offensichtlich und womöglich nicht einmal mehr feststellbar (weil man die fraglichen Daten mitsamt der Unterschrift inzwischen gelöscht hat). Das Problem ist nun: Anders als bei den Verschlüsselungsverfahren gibt es bei Hashfunktionen ständig Ärger.
Fehler lassen sich meist nicht mehr ausgleichen ←
Wenn man einen Schlüssel in einer unsicheren Umgebung erzeugt oder verwendet hat, kann man sein Sicherheitsniveau nicht dadurch noch retten, dass man ihn aus der unsicheren Umgebung herausnimmt. Dasselbe gilt für eine Passphrase, die man einmal in einem unsicheren System eingegeben hat.
Die meisten Leute haben keine Ahnung ←
Es reicht nicht aus, dass man selber sich einigermaßen auskennt. Das schwächste Glied der Kette kann der Kommunikationspartner sein, und zwar in mehrfacher Hinsicht:
Er kann inkompetent sein.
Er kann undiszipliniert sein (Sachkenntnis reicht nicht aus, siehe den ersten Punkt).
Er kann aus Gründen, die nichts mit Ihnen zu tun haben müssen (und von denen Sie womöglich nicht einmal etwas ahnen), ein wertvolles Ziel für staatliche, private oder kriminelle Schnüffler sein, so dass Ihre Daten zwar nicht direkt mit viel Aufwand angegriffen werden, aber zu Beifang werden.
Jedenfalls muss man grundsätzlich annehmen, dass die anderen keine Ahnung haben und Fehler machen.