diora-web/tui/diora_tui
marwin 50f711831c TUI: Verschlüsselungs-Key per Benutzername+Passwort ableiten statt Konsolen-Export
diora_tui/crypto.py:derive_key_b64 reproduziert app.js' deriveAndStoreKey()
(PBKDF2-HMAC-SHA256, 200000 Iterationen, Salt "diora:"+username) — der
`sync`-Prompt bietet das jetzt als Standardweg zum Schlüssel an, als
Alternative zum bisherigen Weg über die Browser-Konsole (await
exportEncKey()). Funktioniert nur für Accounts, die den Key je über
diora's "Unlock with password"-Formular abgeleitet haben; ein falsches
Passwort/Account führt zu einem abgefangenen DecryptError ("falscher
Key?"), nie zu stillem Fehlverhalten.

Getestet: zwei unabhängige PBKDF2-Implementierungen (hashlib,
cryptography) stimmen für die verwendeten Parameter byte-genau überein;
vollständiger sync-Lauf gegen einen echten Dev-Server mit einem Buch, das
unter einem exakt so abgeleiteten Key verschlüsselt wurde, entschlüsselt
korrekt; falsches Passwort wird sauber als Fehler gemeldet statt
abzustürzen.
2026-08-15 16:55:03 +02:00
..
__init__.py TUI: lokaler EPUB-Reader als erste Stufe eines diora-TUI-Clients 2026-08-15 16:04:18 +02:00
__main__.py TUI: lokaler EPUB-Reader als erste Stufe eines diora-TUI-Clients 2026-08-15 16:04:18 +02:00
api.py TUI: Bücher per diora-tui sync vom diora-Server holen und entschlüsseln 2026-08-15 16:41:50 +02:00
app.py TUI: Verschlüsselungs-Key per Benutzername+Passwort ableiten statt Konsolen-Export 2026-08-15 16:55:03 +02:00
app.tcss TUI: lokaler EPUB-Reader als erste Stufe eines diora-TUI-Clients 2026-08-15 16:04:18 +02:00
config.py TUI: Bücher per diora-tui sync vom diora-Server holen und entschlüsseln 2026-08-15 16:41:50 +02:00
crypto.py TUI: Verschlüsselungs-Key per Benutzername+Passwort ableiten statt Konsolen-Export 2026-08-15 16:55:03 +02:00
epub.py TUI: lokaler EPUB-Reader als erste Stufe eines diora-TUI-Clients 2026-08-15 16:04:18 +02:00
progress.py TUI: lokaler EPUB-Reader als erste Stufe eines diora-TUI-Clients 2026-08-15 16:04:18 +02:00
remote.py TUI: Bücher per diora-tui sync vom diora-Server holen und entschlüsseln 2026-08-15 16:41:50 +02:00