Lange suchte man für Android vergeblich nach einer guten Open Source-Mail-App mit zeitgemäßer PGP-Unterstützung. K-9 und OpenKeychain haben diese Lücke endlich geschlossen.
Lesezeit für diesen Artikel: ca. 4 Minuten
Bei der Suche nach einer guten Mail-App für Android mit PGP-Unterstützung stößt man schon seit Jahren sehr schnell auf K-9 (der Name ist eine Anspielung auf das englische Wort für Polizeihund, „canine“ – vermutlich deshalb wurde als Programmsymbol ein (Roboter-)Hundekopf gewählt).
Bisher endete die Erfahrung mit K-9 und PGP aber meist in tiefem Frust: Die App unterstützte in Verbindung mit der Kryptographie-App APG, später mit deren Nachfolgerin OpenKeychain, bis Anfang 2017 nur den älteren PGP/Inline-Standard. Damit ließen sich aber ausschließlich verschlüsselte E-Mails in reinem Textformat bearbeiten. Die Verschlüsselung von Anhängen wurde ebenfalls nicht unterstützt. Ein weiteres Problem von K-9 und APG war der, gelinde gesagt, eher dürftige Bedienkomfort im Umgang mit verschlüsselten E-Mails.
Heutzutage werden E-Mails meistens als HTML-Nachrichten verschickt. So kann man verschiedene Schriftarten, Formatierungen wie Fett- und Kursivschrift etc. verwenden. Außerdem ist das Verschicken von Anhängen per E-Mail im Alltag unverzichtbar. In beiden Fällen braucht man für die Verschlüsselung den Standard PGP/MIME. Daher ist PGP/Inline heute kaum noch praxistauglich.
Glücklicherweise unterstützt K-9 ab der kürzlich veröffentlichten Version 5.2 nun auch PGP/MIME, also den Verschlüsselungsstandard für HTML-Mails mit Anhängen. Außerdem hat sich das Zusammenspiel von K-9 mit OpenKeychain, der für die Verschlüsselung ebenfalls benötigten Kryptographie-App, deutlich verbessert.
Vor dem Einsatz von E-Mail-Verschlüsselung mit PGP sollte man sich mit den Grundlagen der asymmetrischen Verschlüsselung vertraut machen, z. B. hier, und sie mit einem gängigen E-Mail-Programm ausprobieren (ich empfehle Thunderbird mit der Erweiterung Enigmail). Die folgende Anleitung ist nur mit diesem Vorwissen verständlich.
- K-9 installieren (aus dem Google Play Store oder von F-Droid)
- OpenKeychain installieren (aus dem Google Play Store oder von F-Droid)
- Vorhandenes PGP-Schlüsselpaar (= privater PGP-Schlüssel) auf das Smartphone übertragen (bevorzugt mit USB-Kabel) oder neues Schlüsselpaar mit OpenKeychain direkt auf dem Smartphone erzeugen (in beiden Fällen Sicherung des Schlüssels an anderem Ort nicht vergessen, erfahre mehr)
- K-9 für den eigenen Mailaccount konfigurieren (in der Regel nach dem IMAP-Protokoll)
- OpenKeychain als Kryptographie-App festlegen (K-9 Kontoeinstellungen – Kryptographie – OpenPGP App – OpenKeychain auswählen)
- Privaten PGP-Schlüssel in OpenKeychain importieren (Schlüssel – Meine Schlüssel – +-Zeichen – Aus Datei importieren – in Schritt 3. gespeicherten privaten Schlüssel auswählen; dieser Schritt ist natürlich nur notwendig, wenn das Schlüsselpaar nicht mit OpenKeychain erzeugt wurde)
Beim Öffnen einer empfangenen verschlüsselten E-Mail muss nun das Passwort für den eigenen privaten PGP-Schlüssel eingegeben werden. Die Vorhaltdauer für dieses Passwort kann in den Einstellungen von OpenKeychain festgelegt werden (Menüpunkt „Merkdauer für Passwörter). Wichtig: Allgemein sind Passphrases anstelle von Passwörtern zu empfehlen (erfahre mehr).
Um eine verschlüsselte E-Mail zu verschicken braucht man den öffentlichen Schlüssel des Kontaktes. Dieser kann in OpenKeychain leicht über eine integrierte Suchfunktion auf den gängigen Schlüsselservern gefunden und von dort importiert werden. Außerdem sollte man OpenKeychain erlauben, Schlüssel mit Kontakten zu verknüpfen (in den Einstellungen unter „Synchronisierung“ aktivierbar).
Verschlüsselte E-Mails werden von K-9 immer auch signiert. Das standardmäßige Signieren von unverschlüsselten E-Mails kann in den K-9-Kontoeinstellungen (Menüpunkt „Kryptographie“) aktiviert werden. Das kann sinnvoll sein, um den eigenen öffentlichen Schlüssel zu verteilen – Empfänger können ihn der signierten E-Mail entnehmen.
Der ebenfalls sehr verbreitete zweite wichtige Standard für E-Mail-Verschlüsselung, S/MIME, wird von K-9 weiterhin nicht unterstützt. Hierfür sind die Nutzer nach wie vor auf kommerzielle Apps angewiesen (erfahre mehr).
Fazit: Die seit langem überfällige Unterstützung von PGP/MIME durch K-9 und OpenKeychain ist ein sehr erfreulicher Fortschritt. PGP ist endlich auch unter Android ohne nennenswerte Einbußen im Nutzungskomfort und ausschließlich mit Open Source-Software einsetzbar. Vielleicht ist dies ja für manche Nutzer ein Anlass, diesen wichtigen Projekten eine kleine Spende zukommen zu lassen. Für OpenKeychain kann man hier direkt spenden. K-9 bittet um eine Spende an F-Droid, das Portal für Open Source-Software (hier).
Wie sind Deine Erfahrungen mit Android und PGP? Hinterlass einen Kommentar!
Findest Du diesen Beitrag interessant?
→ Teile ihn mit Deinen Freunden (klicke unten auf einen der Buttons)
→ Folge dem Autor auf Twitter (@JochenPlikat) oder abonniere neue Beiträge als E-Mail (klicke oben rechts auf „Folgen“)
→ Unterstütze diese Seite mit einer Spende (klicke oben rechts auf „Donate“)
K-9, eine Android-App für PGP by Jochen Plikat is licensed under CC BY-NC-ND 4.0
Bildnachweis: Dog Trainer by skeeze is licensed under CC0 Public Domain
Hehe, das sagst du mir nicht direkt? 😉
War doch direkt – in Deine Inbox (und die von Millionen anderen Abonnenten)! 😉
Danke für die Info, bei K9 bewegt sich also immer noch was.
Habe OpenKeyChain installiert zu K9, beim Import eines Schlüssels soll dieser aber bestätigt werden durch Scannen eines QR-Codes – wie bitte, welcher QR-Code denn??
Hallo Werner, für Support-Anfragen zu hier vorgestellten Programmen wendest Du Dich bitte direkt an den Hersteller bzw. im Falle von K9 an das Forum zur App.
Den besagten QR-Code (OpenKeychain) erstellt jeder Schlüsselinhaber selber, indem er entweder ein neues Schlüsselpaar erzeugt oder einen vorhandenen Schlüsselbund (Schlüsselpaar aus „Public“ und „Private“ Key) in OpenKeychain importiert. Der Ersteller muß seinen so erstellten QR-Code schließlich noch auf geeignete Weise an den Kummunikationspartner weitergegeben (auf einem sicheren Weg übermitteln), woraufhin dieser den Code scannen und somit den entsprechenden Schlüssel bestätigen (verifizieren) kann.
Und … es braucht tatsächlich ein wenig Einarbeitungszeit (Learning by doing), wenn man die App nicht kennt. 😉
*Kommunikationspartner
Was „OpenKeychain“ betrifft, wird leider nirgendwo erläutert (auch in den FAQ auf „openkeychain.org“ nicht), welchen QR-Code man von wo und wie einscannen muss, um den eigenen Schlüssel (vorhandenen Key importiert) zu bestätigen. Können Sie mir da vielleicht kurz auf die Sprünge helfen? Im Voraus vielen Dank für die Mühe und die freundliche Unterstützung!
Danke für die Erklärung, Danilo!
Nur als Randnotiz, warum K-9 einen Robohundekopf als Logo gewählt hat:
http://tardis.wikia.com/wiki/K9