麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

【.NET】MD5的用法(對文件、字符串)

2019-11-17 01:26:42
字體:
來源:轉載
供稿:網友
【.NET】md5的用法(對文件、字符串)
using System;using System.IO;using System.Security.Cryptography;using System.Text;namespace ConsoleApp_PReventFileTampering{    class Program    {        static void Main(string[] args)        {            //TestGetFileHash();            TestGetMd5();        }        #region 通過Hash值來驗證文件是否被篡改        public static void TestGetFileHash()        {            string fileHash = "";            while (true)            {                fileHash = GetFileHash(@"C:/error.txt");                Console.WriteLine("文件MD5-HASH值為:{0}", fileHash);                Console.ReadKey();                //手動修改文件試試,HASH值會變化                //手動將剛才的修改恢復,HASH值會還原            }        }        /// <summary>        /// 通過Hash值來驗證文件是否被篡改        /// </summary>        /// <param name="argFilePath">文件路徑</param>        /// <returns>輸出Hash值</returns>        public static string GetFileHash(string argFilePath)        {            using (MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider())            using (FileStream fs = new FileStream(argFilePath, FileMode.Open, Fileaccess.Read, FileShare.Read))            {                return BitConverter.ToString(md5.ComputeHash(fs)).Replace("-", "");            }        }        #endregion        #region 對字符串用MD5加密        public static void TestGetMd5()        {            while (true)            {                Console.WriteLine("輸入要加密的字符串:");                string input = Console.ReadLine();                string md5 = GetMd5Hash2(input);                Console.WriteLine("輸出的加密字符串為:" + md5 + "/r/n");                Console.ReadLine();            }        }        /// <summary>        /// 將字符串轉換成MD5值存儲        /// 【直接使用本方法加密MD5是不安全的,可以通過窮舉法獲得加密前的字符串】        /// </summary>        /// <param name="argInput">輸入的字符串</param>        /// <returns>輸出的MD5值</returns>        public static string GetMd5Hash(string argInput)        {            using (MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider())            {                return BitConverter.ToString(md5.ComputeHash(UTF8Encoding.Default.GetBytes(argInput))).Replace("-", "");            }        }        /// <summary>        /// 多次使用MD5值以及內部拼hashKey法,增加窮舉破解的難度        /// </summary>        /// <param name="argInput">輸入的字符串</param>        /// <returns>輸出特殊處理過的MD5值</returns>        public static string GetMd5Hash2(string argInput)        {            string hashKey = "Kae@#$@!,.Js+{f>.294oE";            using (MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider())            {                string hashCode = BitConverter.ToString(md5.ComputeHash(UTF8Encoding.Default.GetBytes(argInput)))                    .Replace("-", "")                      + BitConverter.ToString(md5.ComputeHash(UTF8Encoding.Default.GetBytes(hashKey)))                    .Replace("-", "");                return BitConverter.ToString(md5.ComputeHash(UTF8Encoding.Default.GetBytes(hashCode))).Replace("-", "");            }        }        #endregion    }}

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 国产一精品久久99无吗一高潮 | 欧洲成人精品 | 香蕉视频1024| 色综合777 | 久久人人爽人人爽人人片av高请 | 欧美成人一区二区视频 | 国产成人精品一区在线播放 | 国产精品资源手机在线播放 | 亚州精品天堂中文字幕 | 国产成视频在线观看 | 久久美女色视频 | av老司机久久 | 87成人免费看片 | 91精品国产乱码久久桃 | 免费在线观看国产精品 | 欧美三级短视频 | 一本色道精品久久一区二区三区 | 91中文在线| 国产亚洲精品久久久久5区 综合激情网 | 狠狠干五月天 | 国产日韩在线观看一区 | 欧美精品黄色 | 国产精品9191 | 成人三级免费电影 | 第一区免费在线观看 | 欧美18videos性处按摩 | 一级一级一级一级毛片 | 青青草成人av | 一级毛片在线观看视频 | 中文字幕爱爱视频 | 成人男女啪啪免费观看网站四虎 | 日韩视频一区二区三区四区 | 成品片a免费直接观看 | 欧美一级美片在线观看免费 | 欧美亚洲国产成人综合在线 | 日韩欧美精品电影 | 久久最新免费视频 | 素人视频在线观看免费 | 中日韩乱码一二新区 | 91青青| 久久精品79国产精品 |