webitect.de
de | en

Inhalt

Sicherheit

← Zurück zur Übersicht

Ein Passwortmanager verlangt Vertrauen. Diese Seite sagt, wie EasyKeys verschlüsselt, und zeigt einen Weg, es ohne unseren Code nachzuprüfen.

Die Verfahren

EasyKeys erfindet keine eigene Verschlüsselung. Es benutzt zwei öffentlich genormte Verfahren:

Beide Bausteine werden bei jedem Bau der App gegen die veröffentlichten Prüfwerte ihrer Normen gerechnet (RFC 9106 für Argon2id, die GCM-Spezifikation für AES-256-GCM).

Woher der Schlüssel kommt

Der Schlüssel entsteht ausschließlich aus deinem Master-Passwort. Das Passwort wird nirgends gespeichert und nirgends hingeschickt; die App hat keine Internet-Berechtigung. Es gibt keinen zweiten Schlüssel und keinen Weg zurück: Ohne das Master-Passwort öffnet niemand den Tresor, auch wir nicht.

Schaltest du den Fingerabdruck ein, legt die App eine Kopie des Schlüssels in ein Schließfach, das Android nur nach deinem Fingerabdruck öffnet. Diese Kopie ist entbehrlich: Fügt jemand am Gerät einen weiteren Finger hinzu, wird sie wertlos, und es gilt wieder das Master-Passwort.

Selbst nachprüfen

Du musst uns das nicht glauben. Das Programm tresor_nachbau.py (rund 80 Zeilen Python) öffnet eine Tresordatei ohne ein Stück Code aus der App. Es kennt nur die Formatbeschreibung unten und zwei fremde, weit verbreitete Bibliotheken: die Referenzfassung von Argon2 und OpenSSL. Öffnet es deine Datei, dann ist sie genau so verschlüsselt, wie hier steht.

  1. Leg in der App eine Sicherung ab und bring sie auf einen Computer. Die Sicherung ist die Tresordatei selbst.
  2. Installiere die beiden Bibliotheken: pip install argon2-cffi cryptography
  3. Starte python3 tresor_nachbau.py tresor-….pwm und gib dein Master-Passwort ein.

Das Programm nennt die Verfahren aus dem Kopf der Datei und die Zahl der Einträge; mit --json gibt es den ganzen Inhalt im Klartext aus. Mit einem falschen Passwort oder einer veränderten Datei bricht es ab.

Mach das auf einem Computer, dem du vertraust, und lösch die Ausgabe danach: Sie enthält deine Passwörter.

Das Dateiformat

Die Datei beginnt mit 48 Byte, die nicht verschlüsselt, aber gegen Veränderung geschützt sind. Alle Zahlen stehen mit dem höchstwertigen Byte zuerst.

Ab ByteLängeInhalt
08Kennung PWMGRVLT
82Formatversion (1)
101Schlüsselableitung (1 = Argon2id, Version 1.3)
114Argon2: Speicher in KiB
154Argon2: Durchgänge
191Argon2: Spuren
2016Salz
3612Nonce für AES-GCM, bei jedem Speichern neu
48RestAES-256-GCM über den Inhalt (JSON, UTF-8), am Ende 16 Byte Prüfwert

Das Master-Passwort geht als UTF-8 in Argon2id, heraus kommen 32 Byte Schlüssel. Die ersten 48 Byte fließen als zusätzliche Daten in GCM ein.

Was das nicht leistet

Weitere Hilfethemen