-
-
Notifications
You must be signed in to change notification settings - Fork 1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Built-in Diagnostic Tool (formerly known as Sanitizer) #1224
Comments
I'd split this up, as we don't want a monolithic vault check. Instead I'd propose a way to hook up a variety of checks into a traverser. Each of them being a separate issue. |
Related to this FR is the quite old issue #312. |
I see that this closed issue mentions:
But yet I do not see in the current version of Cryptomator on desktop that feature. Health Check does not check files. I have one file broken:
And I can discover it by reading plaintext file and get this error:
Are there any plans to add files check into the "Health Check" feature? And especially the ability to repair the file when one of the blocks is broken? |
Yes, we'll add further checks over time. Feel free to create a feature request to add a Health Check for checking the integrity of file contents. Note that reparing might be impossible depending on what exactly is broken in the chunk. |
Summary
With a diagnostic tool, Cryptomator will be able to check the "health" of a vault. This works similarly to the Sanitizer project but will be built-in for more convenience.
Motivation
The location of a Cryptomator vault is not a controlled environment. Basically, "anything" could happen to the encrypted files. Files and/or folders could be renamed due to sync conflicts. Even file contents could be malformed without Cryptomator's control that make encrypted contents unreadable. Of course, if users deliberately changes these files, they will expect that the decryption is erroneous. But in most cases, changes happen without the users' awareness.
A diagnostic tool should be able to guide users to detect or even solve problems with the vault. If users are unable to solve these problems on their own, they at least would have a diagnostic report at hand so that others could have a look at it.
Proposal
To keep things easy as a first step, the diagnostic tool should only be able to perform a check on the vault without solving any problems or other specific commands. Therefore, the feature set is smaller than Sanitizer in the initial implementation.
Check Vault
This command should detect problems in Cryptomator vaults that are related to the directory structure and filenames.
masterkey.cryptomator
and confirm the password before proceeding.d
andmasterkey.cryptomator(.*)
. Check the existence ofd
before proceeding.d (1)
that could exist due to sync conflicts.d
from a cleartext perspective. Begin with cleartext root/
..c9r
directory, make a directory listing, log any unexpected items, and check if it's only a directory or only a symlink..c9s
directory, check its consistency as well.d
from a ciphertext perspective. Log the folders that have not been checked in step 3.The purpose of step 3 is to check if everything is consistent based on what Cryptomator would actually "see".
The purpose of step 4 is to check if there are any other items inside the vault that would be ignored by Cryptomator but may still contain encrypted data that a user would like to access.
Check Vault (Deep)
This command should extend the previous command in step 3.3 by also checking the file contents' integrity.
The text was updated successfully, but these errors were encountered: