C#实现对文件进行加密解密的方法
本文实例讲述了C#实现对文件进行加密解密的方法。分享给大家供大家参考。具体如下:
usingSystem;
usingSystem.IO;
usingSystem.Security.Cryptography;
publicclassExample19_9
{
publicstaticvoidMain()
{
//Createanewfiletoworkwith
FileStreamfsOut=File.Create(@"c:\temp\encrypted.txt");
//Createanewcryptoprovider
TripleDESCryptoServiceProvidertdes=
newTripleDESCryptoServiceProvider();
//Createacryptostreamtoencrypttothefilestream
CryptoStreamcs=newCryptoStream(fsOut,tdes.CreateEncryptor(),
CryptoStreamMode.Write);
//CreateaStreamWritertoformattheoutput
StreamWritersw=newStreamWriter(cs);
//Andwritesomedata
sw.WriteLine("'Twasbrillig,andtheslithytoves");
sw.WriteLine("Didgyreandgimbleinthewabe.");
sw.Flush();
sw.Close();
//savethekeyandIVforfutureuse
FileStreamfsKeyOut=File.Create(@"c:\\temp\encrypted.key");
//useaBinaryWritertowriteformatteddatatothefile
BinaryWriterbw=newBinaryWriter(fsKeyOut);
//writedatatothefile
bw.Write(tdes.Key);
bw.Write(tdes.IV);
//flushandclose
bw.Flush();
bw.Close();
}
}
解密代码如下:
usingSystem;
usingSystem.IO;
usingSystem.Security.Cryptography;
publicclassExample19_10
{
publicstaticvoidMain()
{
//Createanewcryptoprovider
TripleDESCryptoServiceProvidertdes=
newTripleDESCryptoServiceProvider();
//openthefilecontainingthekeyandIV
FileStreamfsKeyIn=File.OpenRead(@"c:\temp\encrypted.key");
//useaBinaryReadertoreadformatteddatafromthefile
BinaryReaderbr=newBinaryReader(fsKeyIn);
//readdatafromthefileandcloseit
tdes.Key=br.ReadBytes(24);
tdes.IV=br.ReadBytes(8);
//Opentheencryptedfile
FileStreamfsIn=File.OpenRead(@"c:\\temp\\encrypted.txt");
//Createacryptostreamtodecryptfromthefilestream
CryptoStreamcs=newCryptoStream(fsIn,tdes.CreateDecryptor(),
CryptoStreamMode.Read);
//CreateaStreamReadertoformattheinput
StreamReadersr=newStreamReader(cs);
//Anddecryptthedata
Console.WriteLine(sr.ReadToEnd());
sr.Close();
}
}
希望本文所述对大家的C#程序设计有所帮助。
热门推荐
10 过生日祝福语简短爸爸
11 紫玫瑰生日祝福语简短
12 获奖评语简短祝福语大全
13 朋友新工作祝福语简短
14 中考祝福语 简短 签状
15 小学同学简短祝福语
16 妈妈的祝福语简短优美
17 给孩子祝福语简短创意
18 生日祝福语宿舍舍友 简短