C#的加密与解密

番茄系统家园 · 2021-12-20 05:46:38

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();

}

}

免责声明: 凡标注转载/编译字样内容并非本站原创,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如果你觉得本文好,欢迎推荐给朋友阅读;本文链接: https://m.nndssk.com/wlaq/172402YGW9mM.html
猜你喜欢
最新应用
热门应用