Algorithms Supported by CryptoCollaboration
Some people have emailed me expressing an interest in CryptoCollaboration, wanting to know the specific encryption algorithms that are going to be supported. For the time being, in order to satisfy the requirements for my dissertation, only secret-key encryption (symmetric) algorithms are going to be in the initial release.
FOR THIS VERSION ONLY DOCUMENTS ARE ENCRYPTED. NOT LIST ITEMS!
String support will be added shortly afterwords, however it is currently beyond my workload in order to support it.
The following I have already finished coding to compensate for, and are included in the bundled release:
Data Encryption Standard (DES) – 64-bit encryption
RC2 – 128-bit encryption
Rijndael – 256-bit encryption
TripleDES – 192-bit TripleDES encryption
I might be adding others in future releases, but for the time being those are the ones that are going to be supported. If there are situational benefits that mandate other schemes, I would be interested to hear the business case.
I also finished the multi-threading for the encryption/decryption routines in order to optimize file IO operations, which was a pain in the butt. I am probably going to release this source before the actual solution source to get feedback since threading isn’t one of my strong suits. If you know threading pretty well, and have 45 minutes, I would love to run some code by you.
It would also be interesting to see how the general population thinks that the encryption should be invoked. I am using it as a context menu item right now that pops up a progress window post encryption event capture. Here are two little screenshots, even though they really don’t give much away about the actual functionality:
Starting the encryption process on a document:
Encryption Complete Window:
(Yeah, I haven’t gotten it to encrypt the actual filename yet :-) )
The actual settings for encryption are maintained in a hidden menu. I really hate this approach so will be changing it shortly to something else once I think of something that is more clever.