aboutsummaryrefslogtreecommitdiff
path: root/docs/comparison.md
diff options
context:
space:
mode:
Diffstat (limited to 'docs/comparison.md')
-rw-r--r--docs/comparison.md50
1 files changed, 38 insertions, 12 deletions
diff --git a/docs/comparison.md b/docs/comparison.md
index 2a4eeb7..794ccc5 100644
--- a/docs/comparison.md
+++ b/docs/comparison.md
@@ -55,10 +55,11 @@ it seems to describe the used crypto.
File Contents
-------------
-| | gocryptfs | encfs default | encfs paranoia | ecryptfs | cryptomator |
-| ---------- | --------- | --------------------------- | --------------------------- | -------- | ------------------ |
-| Encryption | GCM | CBC; CFB for last block [1] | CBC; CFB for last block [1] | CBC | CTR with random IV |
-| Integrity | GCM | none | HMAC | none | HMAC |
+| | gocryptfs | encfs default | encfs paranoia | ecryptfs | cryptomator |
+| --------------------- | --------- | --------------------------- | --------------------------- | --------------------- | -------------------- |
+| Encryption | GCM | CBC; CFB for last block [1] | CBC; CFB for last block [1] | CBC | CTR with random IV |
+| Integrity | GCM | none | HMAC | none | HMAC |
+| File size obfuscation | no | no | no | yes (4 KB increments) | yes (random padding) |
References:
[[1]](https://github.com/vgough/encfs/issues/9)
@@ -77,17 +78,42 @@ References:
[[2]](https://gist.github.com/rfjakob/61a17bf3c7eb9932d791)
[[3]](https://github.com/cryptomator/cryptomator/issues/128)
+Performance
+-----------
+
+All tests are run on tmpfs rule out any influence of the hard disk.
+The CPU is an Intel Pentium G630 with 2 x 2.7GHz.
+
+| | gocryptfs | encfs default | encfs paranoia | ecryptfs | cryptomator |
+| ------------------------ | --------- | ------------- | -------------- | -------- | ------------- |
+| Streaming write | 84 MB/s | 104 MB/s | 56 MB/s | 130 MB/s | 55 MB/s |
+| Extract linux-3.0.tar.gz | 48 s [4] | 20 s | 23 s | 8.4 s | 468 s [1] [2] |
+| ls -lR linux-3.0 | 1.9 s | 2.8 s | 2.8 s | 0.5 s | 127 s [3] |
+| Delete linux-3.0 | 4.5 s | 3.9 s | 4.1 s | 0.5 s | 376 s [3] |
+
+
+Notes:
+
+[1] All file acesses to cryptomator go through the WebDAV protocol, which is less performance-oriented than FUSE.
+However, an optimized WebDAV client may be able to significantly speed up small-file workloads.
+
+[2] Tested with the dave cli WebDAV client, which gave better speed than gvfs (Gnome built-in) and davfs2
+
+[3] Tested with gvfs in the `/run/user/.../gvfs/dav:...` mount
+
+[4] See [gocryptfs ticket#16](https://github.com/rfjakob/gocryptfs/issues/16)
+
+
Disk Space Efficiency
---------------------
(all file sizes in bytes)
-| | gocryptfs | encfs default | encfs paranoia | ecryptfs | cryptomator |
-| ----------------- | --------- | ------------- | -------------- | -------- | ------------------ |
-| Empty file | 0 | 0 | 0 | 8192 | ~104 - 4231 |
-| 1 byte file | 51 | 9 | 17 | 12288 | ~104 - 4231 |
-| 1000000 byte file | 1007858 | 1000008 | 1007888 | 1011712 | ~1001161 - 1100936 |
-| | | | | | |
+| | gocryptfs | encfs default | encfs paranoia | ecryptfs | cryptomator |
+| -------------------- | --------- | ------------- | -------------- | -------- | ----------------- |
+| Empty file | 0 | 0 | 0 | 8192 | 104 - 4231 |
+| 1 byte file | 51 | 9 | 17 | 12288 | 104 - 4231 |
+| 1,000,000 bytes file | 1007858 | 1000008 | 1007888 | 1011712 | 1001161 - 1100936 |
+| | | | | | |
-Note: cryptomator obfuscates the real file size by adding a random padding which
-is why the resulting size is non-deterministic. \ No newline at end of file
+Note: cryptomator adds a random padding which is why the resulting size is non-deterministic.