public void Encrypt(EncryptArgs args) { IFileHandler publicKeyFileHandler = new FileHandler(args.PublicKeyFileName); IFileHandler unEncryptedFileHandler = new FileHandler(args.UnencryptedFileName); IFileHandler encryptedFileHandler = new FileHandler(args.EncryptedFileName); var cryptography = new RsaCrypoProvider(); string publicKey = publicKeyFileHandler.ReadFile(); string unencryptedText = unEncryptedFileHandler.ReadFile(); Byte[] encryptedBytes = cryptography.Encrypt(publicKey, unencryptedText); if (args.ShowKeys) { Console.WriteLine("Public Key: "); Console.WriteLine(publicKey); Console.WriteLine(); Console.WriteLine("Unencrypted: "); Console.WriteLine(unencryptedText); Console.WriteLine(); Console.WriteLine("Encrypted: "); string encryptedText = Encoding.Unicode.GetString(encryptedBytes); Console.WriteLine(encryptedText); return; } encryptedFileHandler.WriteToFile(encryptedBytes, 0, encryptedBytes.Length); }
public void Decrypt(DecryptArgs args) { IFileHandler privateKeyFileHandler = new FileHandler(args.PrivateKeyFileName); IFileHandler unEncryptedFileHandler = new FileHandler(args.UnencryptedFileName); IFileHandler encryptedFileHandler = new FileHandler(args.EncryptedFileName); var cryptography = new RsaCrypoProvider(); string privateKey = privateKeyFileHandler.ReadFile(); Byte[] encryptedBytes = encryptedFileHandler.ReadEncryptedFile(); string decryptedText = cryptography.Decrypt(privateKey, encryptedBytes); if (args.ShowKeys) { Console.WriteLine("Decrypted: "); Console.WriteLine(decryptedText); return; } if (args.ShowKeys) { string encryptedText = Encoding.Default.GetString(encryptedBytes); Console.WriteLine("Encrypted: "); Console.WriteLine(encryptedText); Console.WriteLine(); Console.WriteLine("Decrypted: "); Console.WriteLine(decryptedText); return; } unEncryptedFileHandler.WriteToFile(decryptedText); }
public void GenerateKeys(GenerateKeyArgs args) { IFileHandler publicKeyFileHandler = new FileHandler(args.PublicKeyFileName); IFileHandler privateKeyFileHandler = new FileHandler(args.PrivateKeyFileName); var cryptography = new RsaCrypoProvider(); PrivatePublicKeyPair keyPair = cryptography.GeneratePrivatePublicKeys(); if (args.ShowKeys) { Console.WriteLine("Private Key: "); Console.WriteLine(keyPair.PrivateKey); Console.WriteLine(); Console.WriteLine("Public Key: "); Console.WriteLine(keyPair.PublicKey); return; } publicKeyFileHandler.WriteToFile(keyPair.PublicKey); privateKeyFileHandler.WriteToFile(keyPair.PrivateKey); }