First of all, this is not supposed to be a criticism. I am aware encryption costs performance. I just want to know whether the performance I experience is the one to be expected.
My setup: I use Windows 10 Pro. I have a lot of files (120 GB with roughly 337.000 files in 33.000 directories). I want to use Cryptomator to encrypt the data before uploading to an OwnCloud server. Regarding Cryptomator, I use version 1.4.2 with Dokany. I have no previous experience with earlier versions of Cryptomator nor with WebDAV access. If I understood correctly, Dokany is more suitable for this purpose than WebDAV.
It took me some time to encrypt all files and specially to upload the Cryptomator vault to the OwnCloud server. But this is something you do once. The everyday job is the daily syncing of several hundreds files with several hundred MB, so nothing big. To do that, I compare and read all files on source and destination:
Comparing SSD and USB 3.0 flash drive: 1 min 30 sec
Comparing SSD and Home-NAS across 1 GBit network: 3 min
Comparing SSD and Cryptomator vault on the same SSD disk: 15 min
Cryptomator is perfectly usable and I do not have any CPU issues as described here, but comparing files in the Cryptomator vault is roughly 10 times slower than comparing them to a USB 3.0 flash drive.
Is this to be expected? Is encrypting so costly in performance terms? Or can/will performance be optimized? overheadhunter writes here about “the potential performance it can have if it is fully optimized” and in the roadmap for 2019 it says: “We have successfully moved to FUSE (Linux and macOS) and Dokany (Windows). Now it is time to improve the file systems.”
I would be very grateful if the developers could briefly say what to expect and thank you again for developing Cryptomator and for making it OSS - this is the best way to generate trust in your source.
I would say that is too slow. While encryption does cost time to decrypt inversely proportional to your computer power (slower computer = longer time), from my personal experience, syncing files to the cloud is crippled using Cryptomator unless you have a local copy of the files.
My computer slugged to a crawl and Explorer no longer worked period, icons were plain white and unresponsive until I made all files available offline, an option on OneDrive. As soon as I did that, all problems went away. I was seriously considering paying for another program until I did this and now all is good.
Hope this helps…
thank you for your reply. Apologies if I did not explain my setup clearly. I also thought that applying Cryptomator to files to the cloud would be problematic, I have a local copy of the files, all encryption is done locally.
I have 120 GB with roughly 337.000 files in 33.000 directories. When I compare this amount of files to the backup on a USB 3.0 flash drive, it takes 1 min 30 sec. Comparing the same amount of files to local Cryptomator vault on the same SSD disk takes 15 min, so more than 10 times longer. And I am only talking about reading when comparing / synchronizing, the files are already encrypted.
I will wait for newer versions with improved file systems, and I hope the performance improves. In any case, thank you very much to the Cryptomator team!
I am experiencing similar performance issues using the Dokany file system. Try switching to WebDAV, which is transparent, i.e. you don’t need to recreate your vault, just select WebDAV and restart cryptomator. With WebDAV the performance is still somewhat slower (estimated a factor of 2 or 3 compared to a local non-encrypted file system), but in my opinion tolerable. I am hoping the performance with Dokany will improve with time, so I can switch over eventually.
In any case: I love Cryptomator - great work and thanks to the developers!
thank you for your suggestion.
When I “mount” the vault using WebDAV, I get consistently reading errors. When I switch back to Dokany, everything is fine. So I suspect the reading errors are due to WebDAV and not to the files.
Also, I thought WebDAV changes the date of files, so it is not very useful to keep two file sets synchrnized, but maybe I am wrong on this.