Zum Inhalt

Teilnahme an einer PGP-Signingparty

Einleitung

Im folgenden wird in Kürze erklärt, welche Vorbereitungen für eine Signingparty notwendig sind, zu der man als Teilnehmer geht.

Vor der Party

Einstellungen vornehmen

Damit man sichere Schlüssel erstellen kann, braucht man sinnvolle Einstellungen. Bitte aktivieren Sie den Expertenmodus und vermeiden Sie schwache Hashes. Wie, wird auf einer anderen Seite erklärt:

http://blog.bmarwell.de/gnupg/einstellungen-fur-gnupg/

Schritt 1: Schlüssel erstellen

Bevor man zu einer Signing-Party geht, muss man natürlich einen Schlüssel haben.

  1. gpg --gen-key
  2. (5) RSA (nur signieren/beglaubigen)
  3. 4096 (Schlüssellänge)
  4. 10y (Schlüssel verfällt nach zehn Jahren)
  5. j (Bestätigen)
  6. <Max Mustermann> (Vor- und Nachname)
  7. <max@mustermann.invalid> (E-Mailadresse)
  8. ./. (Kommentar leer lassen – man wird es später nur bereuen! 😉 )
  9. F (Fertigstellen)
  10. <komplexes Passwort> (Passphrase eingeben – siehe hier).

Der Schlüssel zum Signieren wird jetzt erstellt. In der Regel möchte man nicht nur signieren und zertifizieren können, sondern auch verschlüsselte Daten erhalten können. Dafür fügen Sie dem Schlüsselpaar noch ein weiteres Sub-Schlüsselpaar hinzufügen:

  1. gpg --edit-key <Max Mustermann>
  2. addkey (Schlüssel hinzufügen)
  3. (4) Elgamal (nur verschlüsseln)
  4. 4096 (Schlüssellänge)
  5. 10y (Schlüssel verfällt nach zehn Jahren)
  6. j (Ja, ist richtig)
  7. y (Ja, jetzt erzeugen)
  8. <passphrase> (Mit Passphrase bestätigen)
  9. save

Der Schlüssel ist nun bereit genutzt zu werden.

Wichtige Informationen zum GnuPG-Schlüssel

Rufen Sie nun folgenden Befehl auf:

gpg --list-keys --with-fingerprint Max Mustermann

Es sind jetzt folgende Ausgaben zu sehen:

  • Es handelt sich um einen öffentlichen Schlüssel. (pub = Public = öffentlicher Teil)
  • Der Schlüssel hat 4096 Bit und verwendet RSA.
  • Die kurze Identifikation des Schlüssels (die letzten acht Stellen)
  • Der Schlüssel wurde am 24. Juni 2009 erstellt.
  • Die Identifikationsnummer des Schlüssels sind diese acht Hexzahlen-Blöcke.
  • Es gibt eine Benutzeridentifikation (UID = User-Identifikation).
  • Es gibt einen Unterschlüssel mit 4096 Bit. Dieser verwendet ElGamal.

Ab jetzt verwende Sie bitte für alle Aktionen die Kurzidentifikation (ID) des Schlüssels.

Schritt 2: Den Schlüssel bekanntmachen

Nun sollte der Schlüssel auf einen Schlüsselserver hochgeladen werden:

gpg --send-keys <ID>

Dabei wäre die ID im obrigen Beispiel „040149D8“.

Falls der Signing-Partyveranstalter einen eigenen Schlüsselserver aufgesetzt hat, fragt man nach der URL und führt folgenden Befehl aus:

gpg --keyserver "<url>" --send-keys <ID>.

Ersetzen Sie dabei nicht nur die ID, sondern auch die <URL>.

Schritt 3: Drucken Sie den Fingerprint aus

Falls der verwendeten Distribution das Paket „signing-party“ beiliegt, installiert man dieses und führt folgendes aus:

gpg-key2ps -p A4 040149D8 > keys.ps && ps2pdf keys.ps.

Damit speichern Sie in die Datei keys.pdf Schnipsel mit allen wichtigen Informationen. Drucken Sie diese aus, am besten mehrfach, und bringen Sie diese zur Signing-Party mit.

Schritt 4: Liste ausdrucken (nicht immer)

Falls der Zeremonienmeister einen Schlüsselserver aufgesetzt hat, wird er wahrscheinlich auch eine Teilnehmerliste erstellen lassen. Dabei handelt es sich um eine normale Textdatei. Drucken Sie diese aus.

Gegebenenfalls müssen Sie noch Hashwerte dieser Datei erstellen und nach dem Ausdrucken eintragen.

  • Für MD5:
    gpg --print-md md5 <datei.txt>
  • Für RIPEMD160:
    gpg --print-md ripemd160 <datei.txt>
  • Für SHA-1:
    gpg --print-md sha1 <datei.txt>

Diese Liste dient zum Abgleich, ob alle Teilnehmer die gleichen Informationen besitzen.

Schritt 5: Halten Sie alles zusammen

Bringen Sie immer folgendes mit:

  • Einen gültigen Lichtbildausweis einer Behörde (Personalausweis, Führerschein, Reisepass etc.)
  • Die Schnipsel, die Sie in Schritt drei gedruckt haben.
  • Die Liste, die Sie in Schritt vier gedruckt haben. Prüfsummen eingetragen?
  • Einen Stift
  • Sich selbst – Vertreter werden nicht akzeptiert!

Nach der Party

Wen darf man wie zertifizieren

Wichtig: Signieren Sie nie Personen mit cert-level 3, wenn Sie falsche Namen, falsche Fingerprints, ungültige Ausweise oder nicht nachvollziehbare E-Mailadressen haben! Besonders nicht auf Druck dieser Personen!

Level drei (3) sollte nur nach besonders ausgiebieger Prüfung von Name, Fingerprint, Identität und E-Mailadresse vergeben werden. Letztere lässt sich nur durch ein Tool wie caff prüfen, da es an jede UserID und somit an jede E-Mailadresse eine verschlüsselte Signatur schickt. Daher muss die Gegenstelle

  1. Besitzer der E-Mailadresse sein
  2. Den privaten Schlüssel zum öffentlichen Gegenstück besitzen
  3. Die E-Mailadresse, den Namen und den Schlüssel beide Ihnen gegenüber korrekt geäußert und in den PGP-Schlüssel eingetragen haben.

Level zwei (2) können Sie vergeben, wenn Sie den Schlüssel nur auf einen Schlüsselserver hochladen

Level eins (1) sollten Sie verwenden, wenn Sie ein Pseudonym unterzeichnen. Das bedeutet, dass auf dem Schlüssel ein Pseudonym steht, der Besitzer jedoch einen bürgerlichen Namen trägt. (z.B. Spitzname im Schlüssel).

Level null (0) bedeutet, dass sie nicht angeben, wie sorgfältig Sie die Angaben überprüft haben.

Schlüssel signieren mit caff – CA Fire and forget

Von allen, die einen gültigen Ausweis, den korrekten Namen und den korrekten Fingerprint zu ihrem Schlüssel mitgebracht haben werden jetzt die IDs benötigt. Außerdem sollten Sie spätestens jetzt das Paket signing-party installiert haben.

Setzen Sie bei oben genannter Personengruppe in der Datei ~/.gnupg/gpg.conf: # ask-cert-level (auskommentiert) und default-cert-level 3 – diese haben Sie ja bald gründlich überprüft.

  • Bearbeiten Sie die Datei ~/.caffrc. Tragen Sie folgende Zeile ein:
    $CONFIG{'mailer-send'} = [ 'smtp', Server => 'mail.mustermann.invalid', Auth => ['max@mustermann.invalid', 'maexchenmustermann'] ];
  • Fügen Sie keinesfalls folgende Zeile ein:
    $CONFIG{'gpg-sign-args'} = "save";
    Sonst haben Sie keine Möglichkeit, alle Angaben zu prüfen – es wird sonst alles automatisiert! Das ist unerwünscht!
  • Bearbeiten Sie die Werte hinter folgenden Variablen:
    $CONFIG{'owner'}
    $CONFIG{'email'}

Signieren und Schicken der Schlüssel funktioniert nun in einem Rutsch:

  • gpg --recv <id> <id> <id>
  • caff -m yes <id> <id> <id>

Prüfen Sie bei caff in jedem Schritt, ob die Angaben auf der Liste mit den Angaben auf ihrem Bildschirm *exakt* übereinstimmen. Dafür unterschreiben Sie schließlich mit Ihrem Namen!

Zertifizieren von Personen mit falschen Namen

Sie können auch Personen zertifizieren bzw. deren Schlüssel signieren, wenn diese falsche Angaben gemacht haben. Aktivieren Sie dazu wieder ‚ask-cert-level‘ in ihrer gpg.conf und setzen Sie den default-cert-level auf 1 herab.

Alternative: Hochladen der Schlüssel

Wenn die Personen dem nicht widerpsprochen haben, laden Sie die Schlüssel einfach auf einen Schlüsselserver hinauf. Es zählt aber unter einigen Personen als „bad habbit“, da einige

  • nicht auf Schlüsselservern sein möchten, um ihre E-Mailadresse zu verstecken
  • Sie dürfen – oder besser: sollten – diesen Personen nicht cert-level 3 geben.

Es ist vor allem etwas umständlicher, weshalb ich caff empfehle.

  • Erstmal laden Sie wieder alle Schlüssel ein:
    gpg --recv <id> <id> <id>
  • Dann signieren Sie jeden einzeln:
    gpg --sign-key <id1>
    gpg --sign-key <id2>
    gpg --sign-key <id3>
    usw.
  • Laden Sie die Schlüssel auf den Keyserver
    Für alle Keys in Ihrem Schlüsselring: gpg –refresh
    Nur die einzelnen: gpg --send-keys <id1> <id2> <id3> ...

Wichtig: Personen mit Pseudonym sollten weiterhin nur cert-level eins bekommen! Denken Sie daran!

Ihre Signaturen veröffentlichen

Importieren Sie erhaltene Signaturen.

  • Vom Keyserver:
    gpg --recv <ihre ID>
  • Aus E-Mails mit Anlage (z.B. von caff gesendet):
    gpg --import <datei.asc>
  • Laden Sie Ihren Schlüssel jetzt hoch:
    gpg --send-keys <ihre ID>

Fertig! Das war ein großes Stück Arbeit, aber Sie haben es geschafft!

Weitere Quellen und Literatur:

2 Kommentare

  1. dertextor dertextor

    ihr Nerds!
    🙂

  2. Illift-web Illift-web

    warum nicht:)

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.