本文给大家分享的是使用C#对文件进行加密解密的代码,十分的简单实用,有需要的小伙伴可以参考下。
加密代码
- using System;
- using System.IO;
- using System.Security.Cryptography;
- public class Example19_9
- {
- public static void Main()
- {
- // Create a new file to work with
- FileStream fsOut = File.Create(@"c:/temp/encrypted.txt");
- // Create a new crypto provider
- TripleDESCryptoServiceProvider tdes =
- new TripleDESCryptoServiceProvider();
- // Create a cryptostream to encrypt to the filestream
- CryptoStream cs = new CryptoStream(fsOut, tdes.CreateEncryptor(),
- CryptoStreamMode.Write);
- // Create a StreamWriter to format the output
- StreamWriter sw = new StreamWriter(cs);
- // And write some data
- sw.WriteLine("'Twas brillig, and the slithy toves");
- sw.WriteLine("Did gyre and gimble in the wabe.");
- sw.Flush();
- sw.Close();
- // save the key and IV for future use
- FileStream fsKeyOut = File.Create(@"c://temp/encrypted.key");
- // use a BinaryWriter to write formatted data to the file
- BinaryWriter bw = new BinaryWriter(fsKeyOut);
- // write data to the file
- bw.Write( tdes.Key );
- bw.Write( tdes.IV );
- // flush and close
- bw.Flush();
- bw.Close();
- }
- }
解密代码如下
- using System;
- using System.IO;
- using System.Security.Cryptography;
- public class Example19_10
- {
- public static void Main()
- {
- // Create a new crypto provider
- TripleDESCryptoServiceProvider tdes =
- new TripleDESCryptoServiceProvider();
- // open the file containing the key and IV
- FileStream fsKeyIn = File.OpenRead(@"c:/temp/encrypted.key");
- // use a BinaryReader to read formatted data from the file
- BinaryReader br = new BinaryReader(fsKeyIn);
- // read data from the file and close it
- tdes.Key = br.ReadBytes(24);
- tdes.IV = br.ReadBytes(8);
- // Open the encrypted file
- FileStream fsIn = File.OpenRead(@"c://temp//encrypted.txt");
- // Create a cryptostream to decrypt from the filestream
- CryptoStream cs = new CryptoStream(fsIn, tdes.CreateDecryptor(),
- CryptoStreamMode.Read);
- // Create a StreamReader to format the input
- StreamReader sr = new StreamReader(cs);
- // And decrypt the data
- Console.WriteLine(sr.ReadToEnd());
- sr.Close();
- }
- }
以上所述就是本文的全部内容了,希望大家能够喜欢。
新闻热点
疑难解答