Files
archivmail/features/PROJ-18-integritaetspruefung.md
T
sysops bb963a796f security: Zufallspasswörter beim Erststart, kryptographisch sichere JTI-Generierung
- seedDefaultUsers: generiert kryptographisch zufällige Passwörter (crypto/rand)
  statt hartkodiertes "archivmailrockz" — Passwörter werden einmalig im Terminal
  angezeigt und können danach nicht wiederhergestellt werden
- generateJTI: verwendet crypto/rand (16 Byte, hex) statt time.UnixNano XOR deadbeef

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-17 01:19:24 +01:00

20 lines
793 B
Markdown

# PROJ-18: E-Mail Integritätsprüfung
## Status: Deployed
**Created:** 2026-03-14
**Last Updated:** 2026-03-17
## User Stories
- Als Admin möchte ich sehen ob eine archivierte E-Mail unverändert ist, damit ich Manipulationen erkennen kann.
## Acceptance Criteria
- [x] Hintergrund-Job läuft alle 5 Minuten und prüft alle E-Mails
- [x] Prüfung: SHA-256 der entschlüsselten Datei == gespeicherte ID
- [x] Ergebnis wird in DB gespeichert (verify_ok, verified_at)
- [x] Mail-Ansicht zeigt grünen Haken (verifiziert OK), graues X (noch nicht geprüft) oder rotes X (Manipulation erkannt)
## Implementation Notes
- verify_ok BOOLEAN + verified_at TIMESTAMPTZ in emails-Tabelle
- Background worker in main.go, Ticker 5 Minuten
- GET /api/mails/{id} gibt verified_ok + verified_at zurück