ONOC Logo
ProgrammiersprachenIT-Sicherheit
Key Signing Party

Key Signing Party

Bitte tragt vor der Key Signing Party die Daten eures Schlüssels, den ihr signieren lassen wollt, in dieses Formular ein. Sobald die Key Signing Party startet werden wir euch die Daten noch einmal überprüfen lassen. Bitte verwendet den Namen und die E-Mail-Adresse, die im Schlüssel vermerkt sind! Den Fingerprint könnt ihr mittels gpg --fingerprint <Schlüssel-ID> erhalten.

Anschließend werdet ihr reihum gegenseitig eure Identität prüfen. Was ihr voraussetzt, um die Identitäten der anderen Teilnehmer als echt anzuerkennen, ist euch überlassen, allerdings solltet ihr euch mindestens einen amtlichen Lichtbildausweis zeigen lassen und prüfen, dass das Foto mit der Person vor euch und der Name mit ihrem Eintrag in der Liste übereinstimmt. Dies ist der gesamte Inhalt der Key Signing Party – das eigentliche Signieren der anderen Schlüssel führt ihr später selbstständig durch, wann und wo ihr wollt (aber natürlich solltet ihr die anderen Teilnehmer auch nicht ewig auf eure Signatur warten lassen). Das genaue Verfahren zum Erstellen und Verteilen der Signaturen ist im nächsten Abschnitt beschrieben, bitte lest ihn euch gründlich durch, wenn ihr noch nicht mit Key Signing Partys vertraut seid, denn es geht dabei um mehr als nur das Erstellen der Signatur.

Nach der Key Signing Party

Ihr habt nun die Identitäten der anderen Teilnehmer geprüft und die Key Signing Party ist vorbei. Nun folgt der eigentliche Zweck der Veranstaltung, das Signieren der Schlüssel. Dazu geht ihr die Schlüssel der Teilnehmer durch, ladet jeden herunter, signiert die UID, deren Identität ihr bestätigt habt, und verschlüsselt schließlich den signierten öffentlichen Schlüssel mit sich selbst und sendet ihn an die E-Mail-Adresse der UID. Ladet ihn nicht direkt auf einen Key Server hoch! Der letzte Schritt ist zwingend nötig, um sicherzustellen, dass der andere Teilnehmer sowohl der Inhaber der angegebenen E-Mail-Adresse ist als auch der rechtmäßige Eigentümer des zugehörigen privaten Schlüssels ist.

  1. Zum herunterladen des Schlüssels verwendet ihr wie üblich gpg --recv-key <Schlüssel-ID>, also z. B. gpg --recv-key BA1BC85D. Falls der Standard-Keyserver (keys.gnupg.net) einen Fehler liefert, kann helfen, durch hinzufügen von --keyserver <Adresse> einen anderen Server auszuwählen. Einige Server, die ihr probieren könnt, sind etwa:
    • hkp://pgp.mit.edu
    • hkp://keyserver.ubuntu.com
    • hkp://keys.fedoraproject.org
    • hkp://keyserver.paulfurley.com
  2. Anschließend prüft ihr anhand der Ausgabe von gpg --fingerprint <Schlüssel-ID>, ob der Fingerprint des Schlüssels mit dem Eintrag der Liste übereinstimmt.
  3. Falls das der Fall ist, startet das Bearbeiten des Schlüssels mittels gpg --ask-cert-level --edit-key <Schlüssel-ID>. In der Ausgabe findet ihr unter anderem die Liste der UIDs des Schlüssels, z. B. so:

    [ unknown] (1). Max Mustermann (mamuma) <max@mustermann.de>
    [ unknown] (2)  Max Mustermann <mmustermann@uni-bremen.de>

    Wählt unter diesen UIDs nur diejenige aus, die mit den von euch überprüften Daten übereinstimmt, indem ihr uid <n> eingebt, wobei n die Nummer der UID in der Liste ist. Wählt auf keinen Fall mehrere UIDs mit unterschiedlichen E-Mail-Adressen gleichzeitig aus, schließlich habt ihr die Mail-Adressen noch nicht einzeln verifiziert (Mehr zum Verfahren bei verschiedenen E-Mail-Adressen folgt im Anschluss). Als nächstes signiert ihr den Schlüssel, indem ihr sign eingebt. Ihr werdet anschließend gefragt werden, wie gründlich ihr die Identität des Schlüsseleigentümers geprüft habt. Hier solltet ihr in der Regel Option 2 („I have done casual checking”) auswählen, wenn ihr mindestens einen amtlichen Lichtbildausweis geprüft habt. Option 3 („I have done very careful checking”) solltet ihr nur wählen, falls ihr die entsprechende Person bereits seit mehreren Jahren persönlich kennt. Anschließend müsst ihr das Signieren des Schlüssels noch bestätigen und schließlich den Schlüssel mit save abspeichern.

  4. Als nächstes verschlüsseln wir den öffentlichen Schlüssel mit sich selbst. Auf diese Weise kann nur der rechtmäßige Inhaber des zugehörigen privaten Schlüssels ihn entschlüsseln und eure Signatur veröffentlichen. Hierzu verwendet ihr den Befehl gpg --armor --export <Schlüssel-ID> | gpg --encrypt -r <Schlüssel-ID> --armor --output <Ausgabedateiname>.asc
  5. Zuletzt bleibt nur noch, dem Eigentümer des Schlüssels die Signatur zukommen zu lassen. Das geschieht per E-Mail, denn auf diese Weise prüfen wir gleichzeitig, ob die Person tatsächlich auch Zugriff auf die genannte E-Mail-Adresse hat. Hierzu schickt ihr die Ausgabedatei des letzten Befehls einfach als Anhang an die Adresse der UID, die ihr signiert habt.

Damit seid ihr nun mit dem Signieren dieser UID des Schlüssels fertig. Falls es die einzige UID des Schlüssels war, die ihr signieren wolltet, fahrt ihr nun genau so mit den übrigen Schlüsseln fort. Falls der Schlüssel noch mehr zu signierende UIDs mit anderen Mail-Adressen enthält, müsst ihr den Schlüssel erst in seinen vollkommen (von uns) unsignierten Ausgangszustand zurückversetzen, denn sonst würdet ihr es den anderen Teilnehmern ermöglichen, Signaturen für Mail-Adressen zu erhalten, die gar nicht ihre sind, solange sie nur auf die Adresse der zuletzt von euch signierten UID zugreifen können – denn wenn ihr weitere Signaturen erstellt, bleiben die vorherigen Signaturen bestehen und werden anschließend mitexportiert. Daher müsst ihr den Schlüssel zunächst via gpg --delete-key <Schlüssel-ID> völlig löschen und ihn anschließend wie oben erneut herunterladen. Anschließend ist das Verfahren wieder identisch zum Signieren einer einzigen UID.

Nach der Key Signing Party werdet ihr hoffentlich schon bald eure eigenen Schlüssel signiert an eure Mail-Adressen erhalten. Diese entschlüsselt ihr dann zunächst mittels gpg --decrypt <Dateiname> und importiert sie anschließend via gpg --import <Dateiname> in euren Schlüsselbund. Ihr könnt die Signatur jetzt auch veröffentlichen, indem ihr euren Schlüssel mittels gpg --send-key <Eure Schlüssel-ID> auf einen Keyserver hochladet.