Csharp/CSharp Tutorial/File Directory Stream/Encrypt Decrypt File

Материал из .Net Framework эксперт
Версия от 15:20, 26 мая 2010; Admin (обсуждение | вклад) (1 версия)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск

Decrypting a file

<source lang="csharp">using System; using System.IO; using System.Security.Cryptography; class MainClass {

 public static void Main() 
 {
   TripleDESCryptoServiceProvider tdes = new TripleDESCryptoServiceProvider();
   FileStream fsKeyIn = File.OpenRead(@"c:\encrypted.key");
   
   BinaryReader br = new BinaryReader(fsKeyIn);
   tdes.Key = br.ReadBytes(24);
   tdes.IV = br.ReadBytes(8);
   FileStream fsIn = File.OpenRead(@"c:\encrypted.txt");
   CryptoStream cs = new CryptoStream(fsIn, tdes.CreateDecryptor(),CryptoStreamMode.Read);
   StreamReader sr = new StreamReader(cs);
   Console.WriteLine(sr.ReadToEnd());
   sr.Close();
 }

}</source>

str

Encrypting a file

<source lang="csharp">using System; using System.IO; using System.Security.Cryptography; class MainClass {

 public static void Main() 
 {
   FileStream fsOut = File.Create(@"c:\encrypted.txt");
   TripleDESCryptoServiceProvider tdes = new TripleDESCryptoServiceProvider();
   CryptoStream cs = new CryptoStream(fsOut, tdes.CreateEncryptor(), CryptoStreamMode.Write);
   StreamWriter sw = new StreamWriter(cs);
   sw.WriteLine("str");
   sw.Flush();
   sw.Close();
   FileStream fsKeyOut = File.Create(@"c:\encrypted.key");
   
   BinaryWriter bw = new BinaryWriter(fsKeyOut);
   bw.Write( tdes.Key );
   bw.Write( tdes.IV );
   bw.Flush();
   bw.Close();
 }

}</source>