ファイルは、文書を暗号化するために、アカウントのパスワードを削除するファイルを作成するために、C#のコンソール

--- ---復元コンテンツ始まります

静的な無効メイン(文字列[] args)
{

文字列のパス= @ :; "C \ユーザがEDZ \デスクトップ\ Test1と\ userData11.luxin \" //ファイルパス
#regionのでmyRegion
のIF(!File.Exists(パス))
{
Console.WriteLineをが( "ファイルが現在含まれていません" );
File.Create(パス);
}
//ストリームファイルにファイルをロード
FILESTREAM新しい新しいFSを=ファイルストリーム(パス、FileMode.Open);
StreamReaderをStreamReaderを新しい新しいSR =(FS);
リストの<string> = allStr新しい新しいリスト<文字列>();
文字列STR = String.Emptyを、
一方(真の)
{
STR = sr.ReadLine();
IF(String.IsNullOrEmpty(STR)!)
{
Console.WriteLineを(STR + "\ R&LT \ N-")。
allStr.Add(STR);
}

{
sr.Close();
fs.Close();
BREAK;
}
}
//構文解析テキスト
foreachの(allStrにおけるVARアイテム)
{
文字列[] strSpl = item.Split( '|')。
int型strSplLen = strSpl.Length。
以下のために(INT i = 0; iはstrSplLenを<; iは++)
{
IF(I == 0)
{
Console.WriteLineを( "账号" + strSpl [0])。
}
そうなら(I == 1)
{
Console.WriteLineを( "密码" + strSpl [1])。
}
}
}
#endregion
IF(File.Exists(パス)!)
{
Console.WriteLineを( "文件不包含")。
}
のFileStream FS1 =新しいFileStreamを(パスをFileMode.APPEND)。
StreamWriter SW =新しいのStreamWriter(FS1)。
(; iが2 <I ++は、I = 0の整数)のための
{
Console.WriteLineをが( "账号用户输入请:")。
文字列名= Console.ReadLine();
Console.WriteLineを( "用户输入密码请:");
文字列のパスワード= Console.ReadLine();
文字列writeCon =ユーザ名+ "|" +パスワード;
sw.WriteLine(Md5Encrypt(writeCon))。
}



sw.Close();
fs.Close();
Console.WriteLineを( "完了を書く");
読ん//

(File.Exists(パス))なら
、{
のFileStream FS_ =新しいFileStreamを(パス、FileMode.Open)。
StreamReaderをsr_ =新しいStreamReaderを(FS_)。
文字列str_ = String.Emptyを。
一方、(TRUE)
{
str_ = sr_.ReadLine()。
IF(string.IsNullOrEmpty(str_))
{
ブレーク。
}

{
//解析
ストリングNewStrによってすでに= Md5Decrypt(str_)。
文字列[] newStrSpl = newStr.Split( '|');
foreachの(newStrSplにおけるVARアイテム)
{
Console.WriteLineを(アイテム)。
}
}
}

}

Console.ReadKey();
}
静的Md5Encryptストリング(文字列strSource){
//バイト配列に文字列を 
バイト[] = bytIn System.Text.Encoding.Default.GetBytes(strSource);
//は、秘密暗号化目標を確立しますキーオフセット 
バイト[] IV = {102、 16、93、156、78、4、218、32}; // 定義オフセット 
バイト[] = {キー55、 103、246、79、36、 99、167、3}; //キーを定義する 
クラスのインスタンスは、DES暗号化// 
DESCryptoServiceProvider mobjCryptoServiceをDESCryptoServiceProvider新しい新=();
mobjCryptoService.Key = IV;
mobjCryptoService.IV =キー;
; ICryptoTransform encrypto mobjCryptoService.CreateEncryptor =()の
//例MemoryStreamをストリームファイルの暗号化 
System.IO.MemoryStream新しい新しいSystem.IO.MemoryStream MS =();
CryptoStream新しい新しいCSはCryptoStream(MS、encrypto、CryptoStreamMode.Write)を=。
cs.Write(bytIn、0、bytIn.Length)。
cs.FlushFinalBlock();

ストリングstrOut = System.Convert.ToBase64String(ms.ToArray())。
strOutを返します。

}

Md5Decryptストリングのpublic static(ソース文字列)
{
//はバイト配列に復号化された文字列を変換する 
バイト[] = bytIn System.Convert.FromBase64String(ソース);
//オフセット指定された鍵と復号鍵、及びキーは、オフセット量と同一である暗号化オフセットしなければならない 
バイト[] IV = {102、 16、93、156、78、4、218、32}; // 定義オフセット 
バイト[]キー= { 55、103、246、79、36、99、167、3}; //キー定義 
DESCryptoServiceProvider mobjCryptoService DESCryptoServiceProvider新しい新=();
mobjCryptoService.Key = IVと、
mobjCryptoService.IV =キー、
ストリーム復号化の//例 
システム。 MS =新しい新しいSystem.IO.MemoryStream IO.MemoryStream(bytIn、0、bytIn.Length)
のICryptoTransform encrypto mobjCryptoService.CreateDecryptor =();
CryptoStream新しい新しいCSはCryptoStream(MS、encrypto、CryptoStreamMode.Read)を=。
StreamReaderをSTRD =新しいStreamReaderを(CS、Encoding.Default)。
strd.ReadToEndを返します();
}
}

---終わり---コンテンツを復元

おすすめ

転載: www.cnblogs.com/chenquanxi213356/p/11257869.html