Hi sharza,
The short answer:
Due to technical differences in how Boxcryptor works and the greater feature set, it will always have an inferior performance than other encryption software like TrueCrypt and additionally performance has never been (and maybe will never be) a high priority for us.
The long(er) answer:
Boxcryptor operates on an open file and directory structure and must be able to handle external modifications to this structure (e.g. when Dropbox syncs the files in the background). If a software can store all encrypted data in a single file and must not be able to handle external modifications, it is much easier to have a better performance. E.g. the complete directory structure could be loaded into memory so that subsequent requests can be answered much faster. Boxcryptor has to query the underlying file system much more often.
In addition, Boxcryptor features a complex key management to facilitate user and group management and access rights. A power user can easily accommodate 50+ different keys in his account which are used to protect his files - not even to speak about the unique key of every file. In contrast, Truecrypt only uses a single key for all files. (The number of keys itself is not a performance killer, but of course it requires code to determine which keys are used etc.)
The richer feature set of Boxcryptor requires a combination of symmetric (and very fast) AES encryption and asymmetric (and very slow) RSA encryption. While the file content is encrypted with a unique key using AES - the key itself is encrypted using RSA which is (painfully) slow compared to AES - and as we're using a long (and secure) RSA key size of 4096 bit the performance impact is even bigger. Truecrypt does not need this additional RSA operation per file.
Besides that, I'd like to highlight to other important performance "killers":
a) File size calculation
Due to security reasons, encrypted files are bigger than their plaintext version, e.g. because padding ( https://en.wikipedia.org/wiki/Padding_(cryptography) ) is used which is different for each file. As the virtual drive must report the exact plaintext size (down to the last byte), Boxcryptor cannot simply report the encrypted file size and the plaintext size must be stored somewhere. Broadly speaking, Boxcryptor stores it at the beginning of the encrypted file. This means that whenever Boxcryptor is asked for the metadata of a file (which can happen very, very often), it has to read the first bytes and determine the correct plaintext size. I hope I don't need to explain that this has a huge impact on the performance.
b) Filename encryption
"Boxcryptor has to decrypt all encrypted filenames for the directory listing and maybe even all filenames of any parent directory. You won't recognize this operation if you have a small structure in your selected directory. But if the directory has a complex structure, Boxcryptor has to decrypt a lot of filenames and this takes some time."
https://support.boxcryptor.com/display/DOCEN/Filename+Encryption
Due to the reasons outlined above, one file operation on the Boxcryptor drive causes multiple file operations on the real filesystem executed by Boxcryptor which in turn cause the performance to be worse than without Boxcryptor. The smaller the files, the bigger is the performance impact. When writing a single large file, 40-50MB/sec should be realistic using Boxcryptor, when writing thousands of small files, the overhead caused by Boxcryptor is much larger.
In conclusion, comparing Boxcryptor with other encryption software like Truecrypt is like comparing apples and oranges as the feature set differs so much.
But I also want to be honest that performance has never had a high priority for us. Instead of spending weeks of development work on performance, we prefer to create a rich feature set and support the most platforms. We prefer to spend our time implementing the document provider extension on iOS or new important policies for companies than having 80MB/sec instead of 40MB/sec. For every day, regular work the performance should be "good enough". One decision backed by these priorities is e.g. that the Boxcryptor drive is single-threaded, i.e. it uses only a single thread which can only utilize one CPU core. Using multiple threads would result in a better performance but it would also mean that development is much harder and thus requires more time.
I hope I could give you some insights regarding the technical and business reasons why Boxcryptor's performance is inferior to some other encryption products.
Best regards,
Robert