Note that I will probably not implement your feature if it makes user input more complicated, if it makes the code significantly less readable, or if it is unnecessary/satisfies a rare use case.
Remove error logging. It is not needed, and the log file never gets shared in bug reports.
Consider not chunking files less than 16 KiB. This will reduce storage overhead but reveal the size of small files. This requires a breaking change.
Investigate specifying multiple recipients for hybrid file encryption.
Add a private key encryption example (
--encrypt -x [file]) to
-h|--help to clarify that you do not need to specify a public key when encrypting files for yourself.
Wait for user feedback.
Fixed the UnauthorizedAccessException when overwriting read-only files.
Fixed the UnauthorizedAccessException when storing the file name if the file is read-only.
-o|--overwrite setting if an exception occurs during directory encryption.
Display the copied/backup directory name when encrypting a directory without the
Rename the copied/backup directory to the original directory name if possible (if
-f|--obfuscate is specified and
-o|--overwrite is not). The directory cannot be renamed otherwise because two directories cannot have the same path.
Fixed Visual C++ runtime issues on Windows.
Chunked AEAD for encryption.
New KEK/DEK design.
Fixed Argon2 parameters.
Faster directory encryption.
Authenticated hybrid file encryption.
Masked password entry with support for random passphrase generation.
Separate encryption and signing asymmetric keys.
Private key encryption.
Export asymmetric key pairs.
Code improvements due to a rewrite.
New GitBook documentation.
No longer working on a GUI version - not enough time to work on two different versions, tricky to implement in a GUI format, not cross-platform, and more confusing for the user downloading the software.