#!/coding/blatt
Sammelsurium mit Schwerpunkten Linux & IT-Sicherheit

Android: Passwörter sicher speichern mit dem Passwort-Manager Password Store auf Basis von GPG & YubiKey

Zum Verwalten und sicheren Speichern von Passwörtern unter Android verwende ich den Passwort-Manager Password Store. Dabei handelt es sich quasi um einen Android-Client für den Linux-Passwort-Manager pass, den ich zum Verwalten meiner Passwörter auf meinem Notebook verwende. Bei diesem Passwort-Manager wird ein Passwort, optional mit weiteren Daten, wie z.B. Benutzername, in einer mit GPG verschlüsselten Datei gespeichert. Meinen dazu benötigten GPG-(Unter-)Schlüssel habe ich aber nicht auf meinem Android-Gerät, sondern auf meinem YubiKey gespeichert. Zum Entschlüsseln und Anzeigen eines Passworts benötige ich also meinen YubiKey und die dazugehörige YubiKey-GPG-PIN. Den YubiKey halte ich dann einfach an mein Android-Gerät und die Verbindung erfolgt dabei über NFC.

Folgende Software bzw. Hardware wurde verwendet:
  • YubiKey 5C NFC (Firmware: v5.4.3)
  • Sony Xperia X Compact mit LineageOS v18.1
  • OpenKeychain v5.7.5 (F-Droid-Version)
  • Password Store v1.13.5 (F-Droid-Version)

Voraussetzungen

Ich gehe in diesem Beitrag nicht auf jedes Detail ein, weshalb folgende Punkte als vorausgesetzt angesehen werden:

  • YubiKey mit eingerichteten GPG-Schlüsseln
  • Android-Gerät
    • die o.g. Apps OpenKeychain und Password Store sind installiert
    • OpenKeychain ist bereits mit eurem YubiKey eingerichtet
Hinweis Quelloffene YubiKey-Alternativen

Es sollte erwähnt sein, dass der YubiKey leider nicht mit einer quelloffenen Firmware läuft. Quelloffene Alternativen wären z.B. SoloKey und Nitrokey. Normalerweise ziehe ich quelloffene Systeme bzw. Open-Source-Software immer vor, aber bisher konnte mich keiner der Alternativen, was Funktionsumfang und Qualität im Vergleich zum YubiKey anbelangt, vollends überzeugen.

Passwort Store einrichten

Beim ersten Start der App Password Store müssen wir ein sogenanntes Repository für unsere Passwörter anlegen. Folgt den Anweisungen der App und klickt auf Los geht's:

Android - Password Store einrichten

Entscheidet euch nun, ob ihr ein lokales Repository oder ein Remote-Repository (auf Basis von Git) einrichten möchtet. Ich wähle Lokales Repository anlegen:

Android - Password Store einrichten

Anschließend könnt ihr wählen, ob das Repository versteckt auf dem Hauptspeicher eures Geräts, oder auf dem externen Speicher gespeichert werden soll. In meinem Fall wähle ich Versteckt:

Android - Password Store einrichten

Im nächsten Schritt müsst ihr euren GPG-Schlüssel, der zum Ver- bzw. Entschlüsseln verwendet werden soll, auswählen. Klickt dazu auf Select key:

Android - Password Store einrichten - GPG-Schlüssel auswählen

Die eigentliche GPG-Schlüssel-Verwaltung und alles was damit zu tun hat, wie z.B. die Kommunikation mit eurem YubiKey, erfolgt dabei durch die App OpenKeychain. Ich wähle hier also meinen entsprechenden GPG-Schlüssel aus:

Android - Password Store einrichten - GPG-Schlüssel auswählen

Danach wird euer Passwort-Repository erstellt und ihr seht eine entsprechende - derzeit noch leere - Übersicht:

Android - Password Store einrichten - Passwort-Übersicht

Passwort-Eintrag erstellen

Zum Anlegen bzw. Speichern eines Passwort-Eintrags klickt auf das + unten rechts. Vergebt nun einen Namen sowie das dazugehörige Passwort, welches ihr euch auch generieren lassen könnt. Klickt dann auf das Speicher-Symbol.

Android - Password Store einrichten - Passwort-Eintrag erstellen

In eurer Übersicht seht ihr nun den entsprechenden Eintrag:

Android - Password Store einrichten - Passwort-Einträge-Übersicht

Möchtet ihr euch nun das Passwort anzeigen lassen, klickt auf den entsprechenden Passwort-Eintrag. Ihr werdet nun aufgefordert eure YubiKey-GPG-PIN anzugeben und dann euren YubiKey mit eurem Android-Gerät zu verbinden.

Android - Password Store einrichten - Passwort anzeigen

Wenn alles korrekt funktioniert hat, wird euch dann das entschlüsselte Passwort im Klartext angezeigt:

Android - Password Store einrichten - Passwort anzeigen

Fazit

Die quelloffene App Password Store in Verbindung mit einem Hardware-Security-Token zu verwenden, ist eine geeignete Möglichkeit, Passwörter auf einem mobilen Android-Endgerät sicher zu verwalten. Ein Vorteil ist auch, dass man im Notfall auch ohne die App Zugriff auf seine Passwörter hat, da es sich letztendlich nur um mit GPG verschlüsselte Dateien handelt. Diese Dateien können auch z.B. unter Linux oder Windows direkt mit GPG entschlüsselt werden.