Sicherheitsarchitektur

Wie Snoq Ihre Notizen verschlüsselt

AES-256-CBC mit HMAC-SHA256, Argon2id-Schlüsselableitung, zufällige IVs pro Notiz. Kein Passwort, kein Schlüssel, kein Klartext verlässt Ihr Gerät.

AES-256-CBC
HMAC-SHA256
Argon2id
100% Lokal

Was passiert, wenn Sie eine Notiz tippen

Wenn die Verschlüsselung aktiviert ist und Sie eine Notiz speichern, verschlüsselt Snoq den Inhalt mit AES-256, bevor er die Festplatte berührt. Der zur Verschlüsselung verwendete Schlüssel ist nicht Ihr Passwort – er wird aus Ihrem Passwort durch Argon2id abgeleitet, eine moderne, speicherintensive Schlüsselableitungsfunktion, die speziell entwickelt wurde, um Brute-Force-Angriffe zu erschweren.

Jede Notiz erhält ihren eigenen zufälligen 16-Byte-Initialisierungsvektor (IV), sodass zwei Notizen mit identischem Inhalt völlig unterschiedlichen Geheimtext erzeugen. Jede verschlüsselte Notiz wird dann mit HMAC-SHA256 authentifiziert, damit jede Manipulation – selbst ein einzelnes gedrehtes Bit – erkannt wird, bevor auch nur versucht wird, sie zu entschlüsseln.

Das ist keine Theorie. So wird jede Notiz, jetzt, auf Ihrem Gerät gespeichert. Der Rest dieser Seite beschreibt genau wie – ausführlich genug, dass ein sicherheitsbewusster Leser überprüfen kann, ob der Ansatz korrekt ist.

Was Snoq niemals speichert

Drei Dinge fehlen bewusst auf der Festplatte – und im Arbeitsspeicher, sobald die App gesperrt ist.

  • Ihr Passwort – in jeglicher Form. Nicht im Klartext, nicht als umkehrbaren Hash, nirgendwo. Snoq speichert lediglich einen Argon2id-Prüfer, der bestätigen kann, ob eine Eingabe korrekt ist, aber nicht zur Wiederherstellung des Passworts oder der Verschlüsselungsschlüssel verwendet werden kann.
  • Die abgeleiteten AES- oder HMAC-Schlüssel. Wenn Snoq gesperrt wird, werden beide Schlüsselpuffer im Arbeitsspeicher gelöscht (Array.Clear) und die Referenzen auf null gesetzt. Es wird nichts zwischengespeichert, absichtlich ausgelagert oder dauerhaft gespeichert.
  • Notizinhalt im Klartext. Wenn die Verschlüsselung aktiv ist, enthält die lokale Datenbank ausschließlich Geheimtext. Der Klartext ist kurz im Arbeitsspeicher, während Sie eine Notiz aktiv lesen oder bearbeiten, und wird anschließend verworfen.

Kryptografische Primitive

Die genauen Algorithmen und Parameter, die Snoq verwendet. Alle sind standardisierte, gut geprüfte Konstruktionen.

Zweck Algorithmus Parameter
Passwortprüfung Argon2id 64 MB Speicher, 2 Threads, 3 Iterationen, 32-Byte-Ausgabe
Schlüsselableitung Argon2id 64 MB Speicher, 2 Threads, 3 Iterationen, 32-Byte-Salt, 64-Byte-Ausgabe aufgeteilt in Enc- + MAC-Schlüssel, domainpräfixiertes Passwort
Notizenverschlüsselung AES-256-CBC Zufälliger 16-Byte-IV pro Notiz
Authentifizierung HMAC-SHA256 Deckt IV + Geheimtext ab (Encrypt-then-MAC)
Salt-Generierung RandomNumberGenerator 32 Bytes vom OS-CSPRNG

Argon2id ist der RFC 9106-Standard für passwortbasierte Schlüsselableitung und der Gewinner des Password Hashing Competition.

Aufbau einer einzelnen verschlüsselten Notiz

Jede in der Datenbank gespeicherte Notiz sieht so aus – ein Base64-kodierter Blob aus drei verketteten Teilen.

Geheimtext-Layout (pro Notiz)
IV
16 Bytes
Zufällig pro Notiz
HMAC
32 Bytes
SHA-256-Tag
AES-CBC-Geheimtext
N Bytes
Verschlüsseltes Quill-Delta-JSON

Encrypt-then-MAC. Der HMAC wird über IV || Geheimtext berechnet und vor jedem Entschlüsselungsversuch verifiziert. Stimmt der Tag nicht überein – falscher Schlüssel, Beschädigung, Manipulation – wird die Notiz abgelehnt, ohne dass Klartext preisgegeben wird. Damit werden Padding-Oracle-Angriffe vermieden, die den CBC-Modus betreffen können, wenn Authentifizierung fehlt oder falsch implementiert ist.

Der Entsperrvorgang

Was passiert, wenn Sie Ihr Passwort eingeben, um Ihre Notizen zu öffnen.

  1. 1
    Schnellprüfung. Der Dialog führt Argon2id gegen den gespeicherten Passwort-Prüfer aus. Stimmt er nicht überein, wird der Versuch sofort abgelehnt – sonst passiert nichts.
  2. 2
    Schlüssel ableiten. Argon2id läuft erneut – diesmal mit einem Domain-Präfix (snoq-enc:), um 64 Bytes Schlüsselmaterial zu erzeugen, aufgeteilt in einen 32-Byte-AES-Schlüssel und einen 32-Byte-HMAC-Schlüssel.
  3. 3
    Canary verifizieren. Ein kleiner bekannter Blob – beim ersten Setzen des Passworts mit den echten Schlüsseln verschlüsselt – wird mit den frisch abgeleiteten Schlüsseln entschlüsselt und in konstanter Zeit mit dem erwarteten Wert verglichen. Dies beweist, dass die abgeleiteten Schlüssel mit denen übereinstimmen, die zur Verschlüsselung Ihrer Notizen verwendet wurden.
  4. 4
    Canary schlägt fehl? Die frisch abgeleiteten Schlüssel werden gelöscht und das Entsperren abgelehnt. Eine bestehende entsperrte Sitzung bleibt unberührt.
  5. 5
    Canary besteht? Die Schlüssel werden im Arbeitsspeicher gespeichert (als Byte-Arrays, nirgendwo sonst) und die Notizen werden lesbar. Ab diesem Moment entschlüsselt jeder Lesevorgang auf Anfrage; jeder Schreibvorgang verschlüsselt auf Anfrage.

Warum zwei Argon2id-Durchläufe?

Der Prüfer und die Verschlüsselungsschlüssel werden mit unterschiedlichen Eingaben abgeleitet (beim Verschlüsselungspfad wird dem Passwort vor dem Hashing snoq-enc: vorangestellt). Dies nennt sich Domain-Trennung: Obwohl beide Pfade dasselbe Passwort und denselben Salt verwenden, sind ihre Ausgaben völlig unabhängig voneinander. Ein Angreifer, der den Prüfer erlangte, hätte immer noch nichts, das für die Entschlüsselung von Notizen nützlich wäre.

Sicheres Ändern Ihres Passworts

Die erneute Verschlüsselung eines gesamten Tresors ist ein riskanter Vorgang – falls er auf halbem Weg fehlschlägt, würden einige Notizen mit dem alten Schlüssel und einige mit dem neuen gespeichert. Snoq vermeidet dies durch ein Stage-then-Commit-Muster.

1

Im Arbeitsspeicher vorbereiten

Jede verschlüsselte Notiz wird mit den alten Schlüsseln entschlüsselt und mit den neuen Schlüsseln erneut verschlüsselt – vollständig im Arbeitsspeicher. Ist das alte Passwort falsch, schlägt die HMAC-Verifizierung bei der ersten Notiz fehl, eine Ausnahme wird ausgelöst und nichts wird auf die Festplatte geschrieben.

2

Auf Festplatte übertragen

Nur wenn alle Notizen erfolgreich erneut verschlüsselt wurden, durchläuft Snoq die vorbereitete Liste und schreibt die aktualisierten Notizen in die Datenbank. Ein Fehler während des Vorgangs lässt den ursprünglichen Tresor vollständig intakt.

Sicherheits-FAQ

Es gibt keinen Wiederherstellungsmechanismus – und das ist so gewollt. Ihr Passwort ist die einzige Eingabe, aus der die Verschlüsselungsschlüssel abgeleitet werden können. Snoq speichert es nie, überträgt es nie und hat keine Hintertür. Wenn das Passwort verloren geht, können die Notizen nicht entschlüsselt werden. Bitte bewahren Sie Ihr Passwort an einem sicheren Ort auf, z. B. in einem Passwort-Manager.

Snoq verwendet AES-256-CBC kombiniert mit HMAC-SHA256 in einer Encrypt-then-MAC-Konstruktion. Bei korrekter Implementierung – zufälliger IV pro Nachricht, HMAC über IV+Geheimtext, zeitkonstante Verifizierung vor jeder Entschlüsselung – bietet dies eine authentifizierte Verschlüsselung, die sicherheitstechnisch AES-GCM entspricht, jedoch mit breiterer plattformübergreifender Bibliotheksunterstützung. Die wichtige Eigenschaft ist Authentifizierung, und Snoq authentifiziert jede Notiz.

Nein. Abgeleitete Schlüssel leben nur im Arbeitsspeicher als Byte-Arrays innerhalb des Verschlüsselungsdienstes. Wenn Snoq gesperrt wird (manuell, über das UI-Sperr-Tastaturkürzel oder automatisch), werden sowohl der AES-Schlüssel als auch der HMAC-Schlüssel mit Array.Clear gelöscht und ihre Referenzen auf null gesetzt. Wir können nicht versprechen, dass das Betriebssystem den Arbeitsspeicher unter extremem Druck nie auf die Festplatte auslagert – das kann keine Anwendung im Benutzerbereich –, aber Snoq persistiert Schlüssel niemals absichtlich.

Nein. Der Prüfer und die Verschlüsselungsschlüssel werden durch zwei verschiedene Argon2id-Durchläufe mit unterschiedlichen Eingaben erzeugt (beim Verschlüsselungspfad wird dem Passwort ein Domain-Trennungs-Präfix vorangestellt). Obwohl beide denselben Salt verwenden, sind ihre Ausgaben völlig unabhängig voneinander. Ein Angreifer, der den Prüfer aus Ihrer Einstellungsdatei kopiert, hat keine für die Entschlüsselung nutzbaren Informationen gewonnen – er müsste immer noch das Passwort per Brute-Force herausfinden.

Snoq exportiert Ihren Tresor als verschlüsseltes ZIP-Archiv. Der Export behält die Verschlüsselung bei, sodass eine Sicherungskopie auf einem USB-Stick oder einem Cloud-Laufwerk sicher bleibt. Bei der Wiederherstellung benötigen Sie Ihr Passwort zur Entschlüsselung – dasselbe Sicherheitsmodell wie beim lokalen Tresor.

Nein. Es gibt keine Cloud-Synchronisation, kein Telemetrie, kein Absturzreporting und kein Kontosystem. Snoq prüft auf eigene Updates, aber Notizeninhalt, Passwörter und Nutzungsmuster verlassen Ihren Computer niemals. Sie können dies mit einem beliebigen Netzwerk-Monitor überprüfen.

Bereit, es auszuprobieren?

Snoq ist kostenlos, in Sekunden installiert und fragt nie nach einem Konto.

Snoq für Windows herunterladen