• v0.2.0 ea571d245e

    Sanctum v0.2.0 (Windows x86_64)
    Sanctum Release / Build & Release (Windows x86_64) (push) Canceled after 0s
    Stable

    harald released this 2026-09-08 11:50:11 +02:00 | 29 commits to main since this release

    Changelog

    Alle nennenswerten Änderungen an diesem Projekt werden in dieser Datei dokumentiert.

    Das Format basiert auf Keep a Changelog
    und dieses Projekt folgt den Richtlinien von Semantic Versioning.

    [0.2.0] - 2026-09-08

    Added

    • Transparente LZ4-Kompression:
      • lz4_flex Integration mit Frame-Format vor der AEAD-Verschlüsselung.
      • Adaptiver Fallback: Chunks werden nur komprimiert, wenn mindestens 64 Bytes gespart werden.
      • Transparente On-the-Fly Dekompression bei Leseoperationen.
    • Disaster Recovery & Integrität:
      • BIP-39 Mnemonic Seed Phrases (24 Wörter) für Master-Key Recovery.
      • sanctum recovery-key: Export und Anzeige des BIP-39 Notfallschlüssels.
      • sanctum backup & sanctum restore: Konsistente Online-Sicherungen via SQLite Backup API mit WAL-Flush.
      • sanctum verify: Vollständige kryptografische Integritätsprüfung aller AEAD-Chunks und B-Tree-Validierung.
    • Windows Explorer Integration & Bedienkomfort:
      • sanctum register & sanctum unregister: Windows-Kontextmenü im Explorer (HKCU\Software\Classes\.sanctum, "In Sanctum öffnen", Icon-Zuordnung).
      • Intelligente Erkennung freier Laufwerksbuchstaben (von Z: abwärts).
      • Automatisches Öffnen des gemounteten Laufwerks im Windows Explorer.
      • System-Tray Icon (tray-icon) im Windows Infobereich mit Status und schnellem Unmount.
    • Explorer Anti-Leak Shield & OpSec:
      • Windows Anti-Leak Filter: Blockiert thumbs.db, desktop.ini, *.tmp, Office-Lockfiles (~$*) und NTFS Alternative Data Streams (:Zone.Identifier).
      • Activity Tracking & Inaktivitäts-Timeout: Automatischer Unmount bei Leerlauf.
      • Windows Session Lock Monitor: Registrierung für WTS_SESSION_LOCK mit sicherem Auto-Unmount beim Sperren des PCs.
    • Storage Compaction & Anti-Forensics:
      • SQLite Incremental Auto-Vacuum (PRAGMA auto_vacuum = INCREMENTAL;) zur physikalischen Freigabe ungenutzter Dateiseiten an das Host-Dateisystem.
      • Kryptografisches Chunk-Shredding: Chunks werden vor dem Löschen/Abschneiden mit CSPRNG-Zufallsrauschen überschrieben.
      • sanctum compact: Manuelles oder beim Aushängen automatisches Freigeben von Freelist-Pages.
      • Plausible Deniability (Hidden Vault): Dual-Slot Header-Architektur. Unbenutzte Slots enthalten ununterscheidbares CSPRNG-Rauschen.
      • sanctum init --with-hidden: Erstellung zweier getrennter Safes (Decoy & Hidden) mit individuellen Passphrasen und BIP-39 Recovery-Karten.
      • Vollständige Dateinamen-Verschlüsselung für den Hidden Vault.
    • Passwort-Verwaltung (sanctum passwd):
      • Sofortiges Ändern des Master-Passworts über DEK-Rewrapping mit neuem Argon2id-Salt und KEK-Parametern ohne Neuverschlüsselung der Nutzdaten. Multi-Slot fähig.

    [0.1.0] - 2026-09-07

    Added

    • Sanctum CLI (sanctum.exe): Eigenständige, hochperformante Userland-Anwendung zur Verwaltung verschlüsselter Ein-Datei-Container unter Windows 10/11.
    • Kryptografie & Schlüsselableitung:
      • Argon2id KDF (M=64\,\text{MB}, T=3, P=4) zur Ableitung des KEK aus dem Master-Passwort.
      • AES-256-GCM DEK-Wrapping mit Nonce und Authentifizierungs-Tag.
      • 1-MB Chunk AEAD-Verschlüsselung mit AAD (node_id || chunk_index) zum vollständigen Schutz gegen Swap- und Block-Vertauschungsangriffe.
      • Speichersicherheit: Verwendung von zeroize::Zeroizing für sensible kryptografische Schlüssel im RAM.
    • Speicherschicht:
      • SQLite3-Container im WAL-Modus (PRAGMA journal_mode = WAL;, PRAGMA synchronous = NORMAL;, PRAGMA page_size = 8192;).
      • Automatische Checkpoints (PRAGMA wal_checkpoint(TRUNCATE)).
      • Dynamisches Wachstum bis über 100 GB in exakt einer Host-Datei (.sanctum).
    • WebDAV & Windows Explorer Integration:
      • Eingebetteter WebDAV-Server auf 127.0.0.1 (dav-server + hyper).
      • Automatisches Einhängen über Windows-Bordmittel (net use <DRIVE>: http://127.0.0.1:<PORT>/ /persistent:no) ohne Administratorrechte und ohne Treiber (kein WinFsp, kein Dokan).
      • Volle Unterstützung für DavFileSystem, DavFile, Metadaten und symlink_metadata für WebDAV MOVE/Rename-Operationen im Explorer.
      • Saubere URL-Decodierung bei Pfaden mit Leerzeichen, Kommas und Umlauten.
    • CLI & UX:
      • Automatische Windows-Konsolen-Initialisierung auf UTF-8 (CP 65001) und Virtual Terminal Processing.
      • Strukturierte Statusausgabe (init, mount, unmount) mit Status-Boxen und Fortschrittsanzeige.
      • Automatischer Shutdown-Handler (Ctrl+C) mit sicherem Aushängen des Netzlaufwerks und WAL-Checkpointing.
    • Release Management:
      • Automatisches Packaging-Skript scripts/package-release.ps1 mit SHA-256 Checksummen.
      • Gitea Actions CI/CD Pipeline (.gitea/workflows/release.yaml).
    Downloads