Master-Passphrase + KDF-Upgrade¶
Optional, ab v3.7.0 verfügbar. Die Master-Passphrase erweitert die At-Rest-Encryption um Schutz auch im laufenden User-Account — für Szenarien, wo z. B. ein Familien-Mitglied am selben Mac arbeitet.
32.1 Funktionsweise¶
- Der Master-Key wird mit einer von dir gewählten Passphrase verschlüsselt abgelegt. Die Passphrase wird nie auf Platte geschrieben.
- Beim App-Start erscheint der Boot-Prompt — bis zur korrekten Eingabe bleiben alle verschlüsselten Daten gesperrt (App startet leer).
- Im laufenden Programm kann die Passphrase manuell wieder gesperrt werden, ohne die App zu beenden.
32.2 Aktivieren¶
- DSGVO-Dialog → Sektion „🔑 Master-Passphrase"
- Button 🔑 Master-Passphrase einrichten
- Neue Passphrase eingeben (min. 8 Zeichen) und in einem zweiten Feld zur Bestätigung wiederholen
- Bestätigen
⚠️ Wichtig: Bei Verlust der Passphrase sind alle verschlüsselten Daten unwiederbringlich. Es gibt keinen Recovery-Mechanismus — jede Hintertür wäre ein Sicherheitsproblem. Notiere die Passphrase an einem sicheren Ort (Passwort-Manager, versiegelter Umschlag).
32.3 Aktionen im aktiven Modus¶
| Button | Wirkung |
|---|---|
| 🆙 KDF auf scrypt upgraden | Erscheint nur bei v1-PBKDF2-Bestand. Migriert zu memory-hard scrypt (siehe § 32.5). |
| 🔁 Passphrase ändern | Doppelte Eingabe der neuen Passphrase, alte zur Authentifizierung. Master-Key bleibt derselbe. |
| 🚫 Passphrase deaktivieren | Wrappt Master-Key zurück in den OS-Keychain. Erfordert aktuelle Passphrase. |
| 🔒 Jetzt sperren | Master-Key aus dem RAM löschen ohne Neustart. Beim nächsten Daten-Lese-Versuch erscheint der Boot-Prompt. |
32.4 Boot-Prompt¶
Beim Start der App erscheint:
SARmission · Master-Passphrase
Diese Installation ist mit einer Master-Passphrase geschützt.
[ Passphrase: ************** ] [ OK ] [ Abbrechen ]
- Bis zu 5 Versuche pro Boot. Danach Hinweis-Toast und Abbruch.
- Bei Abbruch startet die App leer (keine Daten lesbar). Bestehende Daten bleiben unangetastet — ein Neustart ermöglicht erneute Eingabe.
32.5 KDF-Upgrade auf scrypt (ab v3.8.0)¶
Die Schlüsselableitung von Passphrase zu Wrap-Key gibt es in zwei Versionen:
| Version | KDF | Memory | Brute-Force-Schutz |
|---|---|---|---|
| v1 (v3.7.0) | PBKDF2-SHA512, 200 000 Iter. | ~1 KB | gut gegen CPU, schwach gegen GPU |
| v2 (v3.8.0) | scrypt N=2¹⁷, r=8, p=1 | ~128 MB | gut gegen CPU und GPU/ASIC |
Neu eingerichtete Installationen ab v3.8.0 nutzen automatisch v2. Bestehende v1-Installationen können mit einem Klick migrieren:
- DSGVO-Dialog → Sektion „🔑 Master-Passphrase"
- Falls v1 aktiv ist, erscheint ein blauer Hinweis „🆙 Upgrade auf scrypt verfügbar" und ein Button 🆙 KDF auf scrypt upgraden
- Aktuelle Passphrase eingeben → Migration läuft (~250 ms)
- Nach Erfolg zeigt die UI „KDF: scrypt (N=131072, r=8, p=1)"
Der Upgrade ist atomar (tmp-Datei + rename) und idempotent (zweiter Klick ist no-op). Crash-resistent: wird die App während des Upgrades geschlossen, bleibt entweder die alte oder die neue Datei intakt — nie beide oder keine.
32.6 Sicherheits-Modell-Tabelle¶
| Angreifer-Profil | Modus A (Keychain) | Modus B v1 (PBKDF2) | Modus B v2 (scrypt) |
|---|---|---|---|
| Festplatte gestohlen, Gerät aus | ✅ geschützt | ✅ geschützt | ✅ geschützt |
| Mitnutzer am gleichen User-Account | ❌ ungeschützt | ✅ geschützt | ✅ geschützt |
| GPU-Brute-Force gegen 8-Zeichen-Passphrase | n/a | ⚠️ ~50× schneller als CPU | ✅ Memory-bandwidth-limitiert |
| Speicher-Dump während Laufzeit | ❌ Master-Key im RAM | ❌ Master-Key im RAM | ❌ Master-Key im RAM |
| Hardware-Token-Bypass | n/a | n/a | n/a |