-- Specs --
I need a C# wrapper class around the [url removed, login to view] encryption and compression library that will take file names as parameters and de/compress and en/decrypt them.
Encryption Algorithm is always TrippleDes
-Public Key used to encrypt
-Private key with a passphrase used to decrypt
Compression Algorithm is always BZip2 with compression level 9
This class will be used to compress and encrypt PDF files before sending them over the internet, and then decrypt and decompress after the files have been received.
-- Interface --
The wrapper class needs to implement the following interface:
BCWrapper(string PrivateKeyPath, string PassPhrase);
BCWrapper(string PublicKeyPath, string PrivateKeyPath, string PassPhrase);
//Encrypts the file specified in UnencryptedFilePath using TripleDes algorithm and places the encrypted file into the EncryptedFilePath. Uses the public key specified in the constructor.
Encrypt(string UnencryptedFilePath, string EncryptedFilePath);
//Decrypts the file specified in EncryptedFilePath, using the private key and passphrase specified in the constructor.
Decrypt(string EncryptedFilePath, string DecryptedFilePath);
//Compresses the UncompressedFilePath file using BZip2 algorithm and compression level 9 and places the compressed file in CompressedFilePath
Compress(string UncompressedFilePath, string CompressedFilePath);
//Decompresses the CompressedFilePath file, and places it into UncompressedFilePath. CompressedFilePath can be assumed to only contain one file.
Decompress(string CompressedFilePath, string UncompressedFilePath);
-- Files Provided (PM please) --
Public Key file
Private Key File
Sample Pdf file
Sample Compressed and Encrypted file
-Encrypted using the public key and TripleDes and then compressed using Bzip2 at compression level 9
5 freelancers are bidding on average $240 for this job
Understanding BouncyCastle Encryption & Decryption - 8 Hours Applying Triple DES Alogrithm - 8 Hours Applying Compression Algorithm BZip2 with compression level 9 - 16 Hours Testing and Deployment - 8 Hours