User:RavynousHunter/GEP

Generic Encryption Program (GEP)
I designed this app for anyone who wants to encrypt files so as to hide their contents. It's very simple, consisting of nothing more than a CLI (for now). All files generated by the GEP have a *.RH0 extension, and (obviously) don't overwrite the source file; this is by design, so as to prevent butchering the file due to a botched encryption process (we are talking about computers here, lol).

I've tested it with basic text files and a few other formats, and it seems to work fine, albeit with the occasional hiccup with larger files. There is an upper limit on how large a file you can send into it, currently being upwards of 2GB of data (due to the size constraints of a long variable type in C++).

For those who are wondering, yes, it can decrypt it's own files. /rolleyes

1.1
Released 12/13/2008, GEP v1.1 has some noticeable differences over it's predecessor, the two primary ones being:


 * New Graphical User Interface, easier to get files and encrypt them (multiple files still, as of yet, unsupported).
 * Now requires .Net framework v3.5 to run, as this version of the GEP was written entirely in C#, instead of C++.

There should be, at least as far as I can tell, fewer limitations on file size, thanks to the way C# handles file streams, though I still wouldn't recommend encrypting any file over about 2GB, just to prevent any potential problems. Then again, who's going to encrypt something the size of GW.dat, eh? ^_^

As always, please report any bugs or anomalies to the talk page.

1.2
Released 12/22/2008, GEP v1.2 is a large improvement over v1.1 with two key features:


 * Program has been updated to allow for the encryption of multiple files at once.
 * Encryption form has been altered for more security, encrypted files are now saved as *.RH1 files to denote files encrypted using GEP 1.2.

As always, leave any questions, comments, suggestions, and problems to the talk page.

1.2 Revision 1
Released 1/5/2009, GEP v1.2 R1 is a sort of bug-fix/improvement release of the GEP.


 * Added some run-time checks to help prevent crashes from common user errors.
 * Fixed some inconsistencies in dialogs.
 * Streamlined the interface to make creating/amending the lists easier.
 * To add an entry to either of the "filename" lists, simply type in a name and press Enter.
 * To remove an entry from any of the lists, simply select the entry you wish to remove and hit "Delete."

1.3
Released 1/9/2009, GEP v1.3 introduces a new encryption method for added security, users should note the following:


 * Files encrypted with v1.3 are denoted with a *.RH2 extension.
 * Due to certain limitations introduced with my new encryption method, the size of your encrypted files may grow several bytes, more than v1.2. This is normal.
 * You might notice a bit of lag when encrypting/decrypting files, more so than in v1.2. This, too, is normal, due to increased dependencies and the new encryption method.

1.3 R1
Released 1/11/2009, GEP v1.3 R1 is a bug-fix/improvement release.


 * More run-time error checking to prevent crashes from common user errors.
 * Added "FAQs" menu selection, to answer some basic question about how to make the GEP work.
 * Added "Legal" menu selection, with licensing info and whatnot.

1.4
Released 1/11/2009, GEP v1.4's design is much simpler than that of previous versions, albeit with a small compatibility issue.


 * Files are now encrypted using their original filenames. (ie: BEFORE: "wtf.txt"  || AFTER: "wtf.txt.RH2")
 * Files are also decrypted using their filenames. (ie: BEFORE: "wtf.txt.RH2" || AFTER: "wtf.txt")
 * Due to the new file I/O method, files encrypted with previous versions aren't compatible with v1.4 or after. This is because when a file is encrypted, it's filename includes it's original extension, so that a simple removal of the *.RH2 extension is needed to acquire the original filename.  Files encrypted with the previous versions don't have this by default, thus causing any files decrypted to be decrypted without any extension.

1.5
Released 1/30/2009, GEP v1.5 has a new feature I'm sure many of you will like.


 * You can now tell the program to compress the files you encrypt or decrypt into one convenient *.zip file. Thanks to Ionic for creating his handy (and relatively straightforward [rare in this field]) DotNetZip library.
 * If you choose to compress your files, all you have to do is enter a filename in the appropriate field under the "Zip Options" tab (appropriate checkbox must be checked first) without the .zip extension (it's added on creation).
 * Also, if you decide to compress your files, you don't need to input a destination in the Encrypt or Decrypt tab's "Destination" field, as the destination under the "Zip Options" tab is used instead. Doing so anyway won't cause any problems, however.
 * You may notice the package is bigger, and has more files. That's because I've added a dependency to my project, the "Ionic.Utils.Zip.dll" and "license.txt" files.  The DLL is required for zipping to work, and the text file is for licensing info and whatnot related to the DLL.

1.5 R1
Released 3/26/2009, Revision 1 of GEP 1.5 has a few improvements over its predecessor:


 * Optimized certain areas of the code that badly needed it. The GEP should now be at least somewhat more efficient.
 * Added the option to make a self-extracting EXE file instead of a common ZIP. I had planned to add this to v1.5, but didn't get around to it in that release.

Source

 * v1.0
 * v1.1
 * v1.2 R1