Allgemeines

Ich weiß nicht, wie lange - es dürften Jahrzehnte sein - ich schon GPG nutze, und muss leider zugegeben, dass GPG für den Normalbenutzer schlicht und ergreifend unbenutzbar ist. Mit dieser Meinung stehe ich allerdings nicht alleine da. Das Problem an GPG ist gar nicht mal die Sicherheit, das Konzept oder die Idee von öffentlichen Schlüsseln oder Verschlüsselung generell, es hapert an anderen Problemen:

Authentifizierung

Wie stellt man sicher dass der öffentliche Schlüssel auch der entsprechenden Person gehört? Es gab - und gibt immer noch - sogenannte Key-Signing-Partys, mich würde tatsächlich mal interessieren in welchem Promille-Bereich sich die GPG-User bewegen, die jemals auch nur auf einer einzigen solcher Party waren. Und natürlich sind diese nur sehr regional. Die früher angedachte Lösung web of trust funktioniert einfach nicht.

Selbst neuere Ansätze wie Keybase, die früher1 versucht haben das Problem der Überprüfbarkeit zu lösen. sind gescheitert.

Benutzbarkeit

Ich weiß gar nicht wo ich anfangen soll. Es geht noch nicht einmal um die Grundfunktionalität - Signieren oder Verschlüsseln - sondern um die Bedienbarkeit von GPG. Auch wenn ich das entsprechende Know-How, Verständnis und die Erfahrung habe, hadere ich permanent mit GPG. Ein paar Beispiele:

Verlängerung von Schlüsseln

Mein Schlüssel enthält immer ein Ablaufdatum von einem Jahr, wie es empfohlen ist. Jedes Jahr auf’s Neue muss ich nachdenken wie das war mit dem Verlängern der Schlüssel2

  1. Den Beglaubigungs-Schlüssel von einem externen Speichermedium herauskramen.
  2. Dann irgendwie - sinnvollerweise in einer virtuellen Maschine oder ähnlichem - das GPG-Verzeichnis auf gesagten Schlüssel setzen damit man sich sein eigentliches GPG-Verzeichnis nicht verschmutzt.
  3. Mit diesem Schlüssel die eigentlichen Schlüssel verlängern/signieren, und das ist in gpg auch merkwürdig gelöst - sowohl die Auswahl der Unterschlüssel als auch im Ablaufdatum
  4. Wenn dann alles geklappt hat - tut es nie auf Anhieb - die öffentlichen Schlüssel mit den neuen Ablaufdaten dann als Ascii-Datei exportieren.
  5. Diese dann in die eigentliche GPG-Installation importieren und dann veröffentlichen - ja wo eigentlich? Die Keyserver sind nicht funktional. Also hier.

Ist genauso umständlich wie es sich anhört 😒

Nutzung von Hardware-Tokens

Ich nutze Yubikeys. Diese können GPG-Keys sicher speichern, was sie für den Einsatz von GPG ideal machen. Wären da nicht zwei Kleinigkeiten:

  1. Wenn man einen existierenden Key auf den Yubikey lädt, löscht gpg diesen dann. Immer vorher denken den Schlüssel vor solchen Operationen zu sichern.
  2. Die Verwendung von mehreren Yubikeys - die den selben Key enthalten3 ist völlig behämmert gelöst: GPG merkt sich - warum auch immer - die ID des Yubikeys nachdem er das erste mal verwendet wird, in den sogenannten Stubs. Das führt dazu, dass GPG beim Einsetzen eines anderen Yubikeys verlangt, den gemerkten Yubikey einstecken, auch wenn der gewünschte Schlüssel auf dem Yubikey ist. Das lässt sich nur durch vorsichtiges Löschen im GPG-Verzeichnis umgehen. Und zwar jedes mal, wenn der jeweils andere Yubikey zum Einsatz komt.

Fazit

Wenn das alles für mich schon extrem umständlich und fehleranfällig ist - was soll denn ein Normaluser davon halten? Ergo: Vollkommen unbenutzbar für Normalsterbliche, und es wird nie - egal wieviel Anstrengungen es gibt - sich in der Masse durchsetzen, schon gar nicht bei E-Mailkommunikation.

Eher nutzen die Leute verschlüsselte Messenger wie Threema oder Signal, wo es den Nutzern viel einfacher gemacht wird eine sichere Kommunikation durchzuführen - inklusive Überprüfung der Gegenseite.

Mein GPG Key

Nichtdestotrotz, wer unbedingt will, hier ist mein öffentlicher Schlüssel:

Oder auch direkt zum herunterladen: 💾Mein öffentlicher Schlüssel

Footnotes

  1. Mittlerweile liegt der Schwerpunkt bei Keybase.io woanders

  2. Ich habe mehrere Unterschlüssel, wie es ebenfalls empfohlen wird

  3. Immer daran denken den vor der Übertragung zu sichern