首页 > 编程 > C# > 正文

C#对文件进行加密解密代码

2019-10-29 21:41:44
字体:
来源:转载
供稿:网友

本文给大家分享的是使用C#对文件进行加密解密的代码,十分的简单实用,有需要的小伙伴可以参考下。

加密代码

 

 
  1. using System; 
  2. using System.IO; 
  3. using System.Security.Cryptography; 
  4.  
  5. public class Example19_9 
  6. public static void Main() 
  7.  
  8. // Create a new file to work with 
  9. FileStream fsOut = File.Create(@"c:/temp/encrypted.txt"); 
  10.  
  11. // Create a new crypto provider 
  12. TripleDESCryptoServiceProvider tdes = 
  13. new TripleDESCryptoServiceProvider(); 
  14.  
  15. // Create a cryptostream to encrypt to the filestream 
  16. CryptoStream cs = new CryptoStream(fsOut, tdes.CreateEncryptor(), 
  17. CryptoStreamMode.Write); 
  18.  
  19. // Create a StreamWriter to format the output 
  20. StreamWriter sw = new StreamWriter(cs); 
  21.  
  22. // And write some data 
  23. sw.WriteLine("'Twas brillig, and the slithy toves"); 
  24. sw.WriteLine("Did gyre and gimble in the wabe."); 
  25. sw.Flush(); 
  26. sw.Close(); 
  27.  
  28. // save the key and IV for future use 
  29. FileStream fsKeyOut = File.Create(@"c://temp/encrypted.key"); 
  30.  
  31. // use a BinaryWriter to write formatted data to the file 
  32. BinaryWriter bw = new BinaryWriter(fsKeyOut); 
  33.  
  34. // write data to the file 
  35. bw.Write( tdes.Key ); 
  36. bw.Write( tdes.IV ); 
  37.  
  38. // flush and close 
  39. bw.Flush(); 
  40. bw.Close(); 
  41.  
  42.  

解密代码如下

 

 
  1. using System; 
  2. using System.IO; 
  3. using System.Security.Cryptography; 
  4.  
  5. public class Example19_10 
  6. public static void Main() 
  7.  
  8. // Create a new crypto provider 
  9. TripleDESCryptoServiceProvider tdes = 
  10. new TripleDESCryptoServiceProvider(); 
  11.  
  12. // open the file containing the key and IV 
  13. FileStream fsKeyIn = File.OpenRead(@"c:/temp/encrypted.key"); 
  14.  
  15. // use a BinaryReader to read formatted data from the file 
  16. BinaryReader br = new BinaryReader(fsKeyIn); 
  17.  
  18. // read data from the file and close it 
  19. tdes.Key = br.ReadBytes(24); 
  20. tdes.IV = br.ReadBytes(8); 
  21.  
  22. // Open the encrypted file 
  23. FileStream fsIn = File.OpenRead(@"c://temp//encrypted.txt"); 
  24.  
  25. // Create a cryptostream to decrypt from the filestream 
  26. CryptoStream cs = new CryptoStream(fsIn, tdes.CreateDecryptor(), 
  27. CryptoStreamMode.Read); 
  28.  
  29. // Create a StreamReader to format the input 
  30. StreamReader sr = new StreamReader(cs); 
  31.  
  32. // And decrypt the data 
  33. Console.WriteLine(sr.ReadToEnd()); 
  34. sr.Close(); 
  35.  
  36.  

以上所述就是本文的全部内容了,希望大家能够喜欢。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表