Login
Newsletter
Werbung

Fr, 18. Februar 2005, 00:00

Der GNU Privacy Guard

Web of Trust

Ich erwähnte schon das Web-of-Trust. Ein OpenPGP-Nutzer vertraut einem anderen, indem er seine Schlüssel signiert. Das »Vertrauen« bezieht sich hierbei auf das Wissen, dass genau dieser Nutzer auch hinter diesem Schlüssel steckt und kein Man-in-the-Middle oder eine Spaßidentität. Das Vertrauen bezieht sich hier also nicht auf persönliches Vertrauen. Somit kann man auch ohne Bedenken fremde Personen und ihre Schlüssel überprüfen und sie dann signieren. Durch starke Verwebungen im Web-of-Trust wird es auch schwer, dieses Netz wieder zu zerstören: ein kompromittierter (geknackter) Schlüssel bringt nicht das gesamte System zu Fall.

Keysigning-Partys

Keysigning-Partys (kurz: KSP) sind leider viel zu seltene gesellschaftliche Ereignisse. Auf dem Linuxtag in Karlsruhe und auf dem Chaos Communication Congress waren im Jahr 2004 wohl größere Ereignisse dieser Art. Zu einer Keysigning-Party treffen sich Menschen aus allen Gegenden, um sich gegenseitig zu signieren. Die Motivationen sind unterschiedlich: die Stärkung und Ausweitung des Web-of-Trusts, das Erhöhen des eigenen Ranges in Key-Analysen, ... - für einige ist es auch einfach nur eine Art Sport, möglichst viele Signaturen zu ergattern. Wenn Sie viele Signaturen haben, haben auch Menschen, die Sie nicht signiert haben, einen Anhaltspunkt, dass Sie auch wirklich Sie sind. Allerdings ist das noch kein Grund, Sie einfach so ohne Kontrolle zu signieren, denn das würde eine Abschwächung des Web-of-Trusts bedeuten, da die Schwelle zum Signieren sinkt - Ihre ganzen Signaturen könnten ja auch von Menschen sein, die mit Ihnen unter einer Decke stecken :-) Nebenbei kann man auf Keysigning-Partys einige neue, vielleicht auch interessante, Leute kennen lernen. Durch Keysigning-Partys werden auch manchmal mehrere kleinere Web-of-Trusts zu einem großen zusammengeführt bzw. vom so genannten »Strong Set« aufgesogen.

Wie laufen also solche Keysigning-Partys ab? Meist steht alles Wichtige dazu auf der Website einer solchen Veranstaltung und meist ist dort auch ein Link auf das GnuPG Keysigning-Party HOWTO zu finden. In dem ist eigentlich alles Wichtige beschrieben, trotzdem hier eine kurze, grobe Zusammenfassung...

Als erstes sollte man seinen öffentlichen Schlüssel an den Koordinator (Veranstalter, Organisator, ...) oder auf einen Keyserver schicken - das ist von KSP zu KSP unterschiedlich. Bei der Lösung über den Keyserver muss man sich dennoch anmelden, da der Aufwand einer KSP riesig wäre, wenn alle unangemeldet kämen. Vom Veranstalter wird zu gegebenem Zeitpunkt eine Liste veröffentlicht, die alle Teilnehmer enthält. Diese Liste ist, wenn sie im Internet veröffentlicht wird, auszudrucken und mitzunehmen. Manchmal wird sie auch direkt vor der Veranstaltung unter den Teilnehmern verteilt.

Auf den Listen befindet sich nicht nur der Name und die Schlüssel-ID der Teilnehmer, sondern auch die Fingerprints. Der Fingerprint ist übersetzt der elektrische Fingerabdruck des Schlüssels und eigentlich nichts anderes als der MD5-Hashwert. Die Schlüssel-ID ist bei DSA-Schlüsseln übrigens einfach der letzte 16- bzw. 8-stellige Teil des Fingerprints. Es gilt nun vor bzw. bei der KSP den eigenen Fingerprint (Ausgabe mit gpg --fingerprint <em>eigeneID</em>) mit dem auf der Liste zu vergleichen und abzuhaken. Ein Stift ist bei einer Keysigning-Party also auch von Vorteil (wird auch im Howto extra genannt) :-) Im ersten Teil der KSP bestätigt jeder lautstark, dass der Fingerprint auf der Liste mit dem eigenen übereinstimmt. Stimmt er nicht, dann ist er zu berichtigen oder einfach nicht abzuhaken.

Im zweiten Teil geht es ans Vergleichen der Identität der Teilnehmer. Alle nehmen einen amtlichen Ausweis heraus und dann wird reihum oder zentral (z.B. über eine Projektion des Ausweises an die Wand) verglichen. Beim Vergleichen sollte der Name auf der Liste mit dem Namen auf dem Ausweis und das Gesicht auf dem Ausweis ungefähr mit dem realen Gesicht übereinstimmen. Wenn ja (beim Photo-Gesicht-Vergleich muss man meist tolerant sein), gibt es ein Häkchen, sonst nicht.

Auf KSPs sind aus Sicherheitsgründen keine Laptops zugelassen, und so geht die Arbeit erst im Nachhinein richtig los: das Signieren. Also man nimmt sich etwas Zeit und signiert (--sign-key) alle Teilnehmer, bei denen zwei Häkchen sind und bei denen der Fingerprint auf der Liste mit dem von GnuPG angezeigten Fingerprint übereinstimmt. Als nächstes sendet man den signierten Schlüssel entweder auf einen Keyserver oder per E-Mail zu dem Teilnehmer selbst (meist bevorzugt).

Da Signieren und Verschicken die aufwändigsten Schritte darstellen, gibt es dafür einige Skripte und Hilfen im Netz. Ich hab diese allerdings noch nicht getestet und kann nicht viel zur Funktionsweise sagen:

  • der von u.A. Peter Palfrader geschriebene CABot, eine Perl-Skriptsammlung, scheint relativ beliebt zu sein, denn er begegnete mir schon recht häufig. Einfach zu installieren (auch apt-get install cabot in Debian), gepflegt und gut dokumentiert, aber recht komplex bzw. umfangreich. Werde ich wohl für die nächsten KSPs auch nutzen.
  • signing-party bzw. apt-get install signing-party enthält das Skript gpg-mailkeys <em>IDs</em>, womit das Verschicken recht einfach fällt.
  • Beschreibung, wie man »schnell und einfach« signiert und ein Perl-Skript, das die signierten Keys an ihre Eigentümer mailt - von Thomas Themel, 2001
  • gpgsigs ist ein Perl-Skript, das einem vor einer Keysigning-Party auflistet, wen man aus dem KSP-Keyring schon signiert hat.

Key-Analysen

Im Internet stößt man ab und zu auf Analysen bestimmter Web-of-Trusts. Einige Keyserver-Betreiber lassen ihre Skripte sogar den gesamten Schlüsselbestand analysieren. Das Ergebnis sind oft Tabellen oder sonderbare Graphen. Einige Begriffe möchte ich dazu schnell klären.

Pfad
Der Pfad ist ein möglicher Weg, um über die Signaturen eines Schlüssels zu einem anderen zu gelangen. Von Interesse ist meist der kürzeste Pfad.
Distanz
Die Distanz eines Schlüssels zu einem anderen Schlüsseln beschreibt die Länge des kürzesten Pfades, d.h. die Anzahl der »Stationen«, um von einem Schlüssel zum anderen zu gelangen.
MSD
Die Mean Shortest Distance ist die durchschnittliche Distanz eines Schlüssels zu allen anderen analysierten Schlüsseln.
Rank
Der Rank (Rang) ist die Platzierung eines Schlüssels innerhalb einer analysierten Menge. Die Rangordnung geht meist von den MSDs aus, d.h. der Schlüssel mit der kleinsten MSD ist auch der erste.
Strong Set
Die, wörtlich, »starke Menge« ist die größte Menge der Schlüssel, die einen Pfad zu einem anderen Schlüssel in dieser Menge haben - oder kurz: das größte abgeschlossene Web-of-Trust.

Beispiele für Key-Analysen im Internet:

  • Pfade und Statistiken einzelner Schlüssel (über Formular eingebbar).
  • Jason Harris erstellt u.A eine Top 1000 und eine Top 50 aller Keys (geordnet nach MSD). Haben Sie sich schon entdeckt?
  • eine Analyse über die Entwicklung vom Strong Set, von Henk Penning.
  • Auf der sig2dot-Homepage findet man Graphen verschiedener Web-of-Trusts.
  • »Leaf Of Trust«-Grafiken mit dem Web-of-Trust von Jörgen Cederlöf

BigLumber.com

BigLumber.com hat, wie ich finde, eine besondere Erwähnung verdient: Es bietet alles, was man braucht, um Keysignings zu organisieren. Als signierwilliger Mensch fügt man dort seinen Schlüssel hinzu, gibt sein Land und die nächstgrößere Stadt ein und schon ist man von anderen Signierwilligen auffindbar, kann sich treffen und signieren. Ebenso kann man geplante Keysigning-Partys eintragen und BigLumber verwaltet auf Wunsch sogleich den KSP-Schlüsselbund, wodurch sich jeder selbst anmelden kann, ohne dass der Koordinator sich darum kümmern muss. Über einen RSS-Feed bleibt man immer über die neuesten Anmeldungen informiert. Nachteil ist das sehr lange Passwort, das sich kein Mensch merken kann. Aber dafür wird es einem verschlüsselt gesendet :-)

Kommentare (Insgesamt: 0 )
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung