Advertisement
Guest User

Untitled

a guest
Sep 22nd, 2018
210
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.26 KB | None | 0 0
  1. Step 1 - Read the bytes of the file to encrypt:
  2. var fileBytes = File.ReadAllBytes(PathOfFileToEncrypt);
  3.  
  4. Step 2 - Call Method to Encrypt File
  5. var finalFile = EncryptFile(fileBytes, string.Format("{0}-Encrypted", Path.Combine(encryptionOutDirectory, cpiFileName)));
  6.  
  7. Here is the Method
  8. private static FileInfo EncryptFile(byte[] fileBytes, string outFileName)
  9. {
  10. string keyString = "KEY";
  11.  
  12. byte[] keyBytes = ASCIIEncoding.UTF8.GetBytes(keyString);
  13.  
  14. KeyParameter sk = ParameterUtilities.CreateKeyParameter("AES", keyBytes);
  15. RNGCryptoServiceProvider rngCsp = new RNGCryptoServiceProvider();
  16. byte[] iv = new byte[16];
  17. rngCsp.GetBytes(iv);
  18.  
  19. var c = CipherUtilities.GetCipher("AES/CTR/NoPadding");
  20.  
  21. c.Init(true, new ParametersWithIV(sk, iv));
  22. var encryptedData = c.DoFinal(fileBytes);
  23.  
  24. string base64EncryptedOutputString = Convert.ToBase64String(encryptedData);
  25.  
  26. string encryptedFileName = outFileName.Replace("-Encrypted", "_" + BitConverter.ToInt64(iv, 0).ToString());
  27.  
  28. File.WriteAllText(encryptedFileName, base64EncryptedOutputString);
  29.  
  30. return new FileInfo(encryptedFileName);
  31. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement