Known limitations

File metadata

Kryptor files are identifiable by looking at the magic bytes. You cannot hide the fact that a file was encrypted by Kryptor since the magic bytes are authenticated, meaning they cannot be tampered with.

Kryptor does not strip file access, modification, and creation timestamps from encrypted files. This means that if you do not overwrite the input files, someone can compare the accessed time of the input file and the creation time of the output file.

The accessed time cannot be modified if you want to mark a file as read-only. Furthermore, this information may be useful for cloud synchronisation.

Directory encryption

If a password and/or keyfile was used for directory encryption, then an attacker can determine whether multiple encrypted files were encrypted using the same password and/or keyfile by looking at the salt of each encrypted file. This is unavoidable when allowing the user to decrypt files individually from an encrypted directory.

Another quick way of identifying whether a directory was encrypted using a password and/or keyfile is by looking for the kryptor.salt file. Directories encrypted using asymmetric keys do not have this file.

Finally, the number of files in an encrypted directory is also not a secret.​

Compromised machine

If an attacker has physical access to your machine or your machine is infected with malware, then they could retrieve sensitive data whilst Kryptor is running.

Note that Kryptor does attempt to zero out sensitive data as soon as possible from memory. However, this cannot be guaranteed due to garbage collection in .NET.

Post-quantum security

The asymmetric algorithms in Kryptor are not post-quantum secure. However, this should not concern you yet because such quantum computers are hopefully a long way off.