当前位置:首页 > 网络编程 > 软件语言 > .NET > C#加密与解密

C#加密与解密

点击次数:76 次 发布日期:2008-11-06 07:54:34 作者:源代码网
源代码网推荐
广告载入中
using System;
using System.IO;
using System.Security.Cryptography;
using System.Text;

class FileEncrypt {

public static Byte[] ConvertStringToByteArray(String s)
{
return (new UnicodeEncoding()).GetBytes(s);
}

public static void Main()
{
//创建文件流
FileStream fs = new FileStream("EncryptedFile.txt",FileMode.Create,FileAccess.Write);

Console.WriteLine("输入一些要存储在加密文件中的文本::");
String strinput = Console.ReadLine();

Byte[] bytearrayinput=ConvertStringToByteArray(strinput);

//具有随机密钥的 DES 实例
DESCryptoServiceProvider des = new DESCryptoServiceProvider();
//从此实例创建 DES 加密器
ICryptoTransform desencrypt = des.CreateEncryptor();

//创建使用 des 加密转换文件流的加密流


CryptoStream cryptostream = new CryptoStream(fs,desencrypt,CryptoStreamMode.Write);

//写出 DES 加密文件
cryptostream.Write(bytearrayinput,0,bytearrayinput.Length);

cryptostream.Close();

//创建文件流以读回加密文件
FileStream fsread = new FileStream("EncryptedFile.txt",FileMode.Open,FileAccess.Read);

//从此 des 实例创建 DES 解密器
ICryptoTransform desdecrypt = des.CreateDecryptor();

//创建加密流集合以便对传入的字节进行读取并执行 des 解密转换
CryptoStream cryptostreamDecr = new CryptoStream(fsread,desdecrypt,CryptoStreamMode.Read);
//输出已解密文件的内容
Console.WriteLine( (new StreamReader(cryptostreamDecr, new UnicodeEncoding())).ReadToEnd() );

Console.WriteLine ();
Console.WriteLine ("按 Enter 键继续...");
Console.ReadLine();
}
}

源代码网推荐

源代码网供稿.
网友评论 (0)
会员中心
网络编程
本站推荐
网络编程之精华