coolpeople 发表于 2007-2-10 17:02:32

c# MD5加密算法的实例

环境:vs.net2005/sql server2000/xp测试通过
1.MD5 16位加密实例
   using System;
using System.Collections.Generic;
using System.Text;
using System.Security.Cryptography;
   
namespace md5
{
   class Program
   {
   static void Main(string[] args)
   {
   Console.WriteLine(UserMd5("8"));
   Console.WriteLine(GetMd5Str("8"));
   }
   /**//// <summary>
   /// MD5 16位加密
   /// </summary>
   /// <param name="ConvertString"></param>
   /// <returns></returns>
   public static string GetMd5Str(string ConvertString)
   {
   MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider();
   string t2 = BitConverter.ToString(md5.ComputeHash(UTF8Encoding.Default.GetBytes(ConvertString)), 4, 8);
   t2 = t2.Replace("-", "");
   return t2;
   }
http://www.cnblogs.com/sopper/archive/2007/01/08/615111.html
   /**//// <summary>
   /// MD5 32位加密
   /// </summary>
   /// <param name="str"></param>
   /// <returns></returns>
   static string UserMd5(string str)
   {
   string cl = str;
   string pwd = "";
   MD5 md5 = MD5.Create();//实例化一个md5对像
   // 加密后是一个字节类型的数组,这里要注意编码UTF8/Unicode等的选择 
   byte[] s = md5.ComputeHash(Encoding.UTF8.GetBytes(cl));
   // 通过使用循环,将字节类型的数组转换为字符串,此字符串是常规字符格式化所得
   for (int i = 0; i < s.Length; i++)
   {
   // 将得到的字符串使用十六进制类型格式。格式后的字符是小写的字母,如果使用大写(X)则格式后的字符是大写字符
   
   pwd = pwd + s.ToString("X");
   
   }
   return pwd;
   }
   }
}
转自:中国IT实验室

wyh1983 发表于 2007-2-10 17:44:53

不错!这方面的东东兄弟们应该多了解一下!!!
转自这里么?
http://www.cnblogs.com/sopper/archive/2007/01/08/615111.html

coolpeople 发表于 2007-2-10 18:09:57

回复 #2 wyh1983 的帖子

在中国IT实验室看的。。。:lol:
页: [1]
查看完整版本: c# MD5加密算法的实例