软件编程
位置:首页>> 软件编程>> C#编程>> C#实现对文件进行加密解密的方法

C#实现对文件进行加密解密的方法

作者:heishui  发布时间:2023-05-28 14:02:44 

标签:C#,加密,解密

本文实例讲述了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();
}
}

希望本文所述对大家的C#程序设计有所帮助。

0
投稿

猜你喜欢

手机版 软件编程 asp之家 www.aspxhome.com