Master-Key in der Cloud?!

Ich finde das Argument, dass eine lokale masterkey-Datei verloren gehen könnte, ehrlich gesagt nicht überzeugend. Diese Entscheidung sollte dem Benutzer überlassen werden, d.h. wenn der Benutzer diese Datei nicht in der Cloud speichern möchte (unabhänging, ob mit einem starken Kennwort geschützt oder nicht), sollte er die Möglichkeit dafür haben, sofern er das Risiko dafür trägt.

Ich habe den Architekturteil nur kurz überflogen, weil er ähnlich aussieht zu anderen Lösungen, aber meine Frage wäre: Sofern ein Angreifer nicht im Besitz der masterkey-Datei wäre, könnte er weder diese trivial erstellen noch den Zugriff auf den Container direkt erhalten, da er dafür jeweils den zufällig gewählten encryptionMasterKey und das Salt ableiten müsste. Ist das korrekt?

Es ist richtig, dass ein starkes Kennwort prinzipiell die masterkey-Datei schützt, aber gerade das Fehlen eines zweiten Faktors sehe ich hier als kritisch. Ich würde deswegen bevorzugen, die entsprechende Datei getrennt von den verschlüsselten Daten aufzubewahren, d.h. verschlüsselte Daten in der Cloud und den masterkey lokal, da der Besitz der entsprechenden Datei (und damit des encryptionMasterKey und des Salts) einen weiteren Schutzaspekt darstellt zu der Wahl eines starken Kennwortes (das u.U. auch durch Social-Engineering oder andere Verfahren erlangt werden kann).

Ist das korrekt, oder übersehe / missinterpretiere ich diesbezüglich etwas? Vielen Dank!

Edit: Ich hatte ursprünglich übersehen, dass es sich hierbei um einen Thread handelte, der schon vorJahren erzeugt wurde. Ich bitte um Verzeihung, dass ich diesen wieder aus der Versenkung holte.
Ich habe auch gesehen, dass diese Diskussion auch schon an weiteren Stellen geführt wurde (z.B. Is it possible to keep the masterkey.cryptomator file offline?).

Ich kann die Designargumente und das Prinzip “möglichst einfache Benutzung” nachvollziehen, aber ich finde, hier wurde ein Trade-Off zwischen Sicherheit und Benutzerfreundlichkeit gewählt, den ich für mich persönlich eigentlich nicht ideal finde bzw. idealerweise gerne selbst bestimmen wollen würde.

Mit dem ursprünglichen Argument könnte ich z.B. auch einen Kennwort-gesicherten SSH-Private-Key verteilen. Dies kann man machen, aber ich würde dies für meine Schlüssel nicht machen, weil nun die Zugriffsbeschränkung mehrheitlich von der Stärke des jeweiligen Kennwortes abhängt.

Frage: Wenn ich es richtig sehe, werden die verschlüsselten Daten im Verzeichnis d gespeichert. Würde hier ein Softlink (unter Windows) ) funktionieren, d.h., masterkey bleibt lokal, während d ein Softlink ist, der auf den Cloud-Speicher zeigt? Theoretisch sollte das klappen, aber hat jemand Erfahrung damit?

Edit2: Scheint nicht zu klappen und führt zu einem Fehler :frowning:

Edit3: Man kann die masterkey-Datei aus dem Originalverzeichnis entfernen und separat (lokal) speichern. Die Vault-Datei wird in die Cloud synchronisiert und kann korrekt geöffnet werden. Man muss anschließend die korrekte masterkey-Datei (von der lokalen Festplatte) auswählen.
Ich sehe jedoch nicht, dass ein Backup der masterkey erzeugt wird? - Das wäre in diesem Fall ja auch das gewünschte Verhalten, d.h. alles sensiblen Inhalte verbleiben ausschließlich lokal.