ASP.NETÖÐMD5ºÍSHA1¼ÓÃܵļ¸ÖÖ·½·¨

¿ª·¢ÕßÔÚÏß Builder.com.cn ¸üÐÂʱ¼ä:2007-11-19×÷ÕߣºØýÃû À´Ô´:ÖйúITʵÑéÊÒ

±¾ÎĹؼü´Ê£º ASP.NET MD5 SHA1 ¼ÓÃÜ

MD5µÄÈ«³ÆÊÇMessage-Digest Algorithm 5(ÐÅÏ¢-ÕªÒªËã·¨)£¬ÔÚ90Äê´ú³õÓÉMit Laboratory for Computer ScienceºÍRsa data security incµÄRonald l. rivest¿ª·¢³öÀ´£¬¾­md2¡¢md3ºÍmd4·¢Õ¹¶øÀ´¡£ËüµÄ×÷ÓÃÊÇÈôóÈÝÁ¿ÐÅÏ¢ÔÚÓÃÊý×ÖÇ©ÃûÈí¼þÇ©Êð˽ÈËÃܳ×ǰ±»¡°Ñ¹Ëõ¡±³ÉÒ»ÖÖ±£Ãܵĸñʽ(¾ÍÊǰÑÒ»¸öÈÎÒⳤ¶ÈµÄ×Ö½Ú´®±ä»»³ÉÒ»¶¨³¤µÄ´óÕûÊý)¡£²»¹ÜÊÇmd2¡¢md4»¹ÊÇmd5£¬ËüÃǶ¼ÐèÒª»ñµÃÒ»¸öËæ»ú³¤¶ÈµÄÐÅÏ¢²¢²úÉúÒ»¸ö128λµÄÐÅÏ¢ÕªÒª¡£

¼ÓÃܹþÏ£º¯Êý½«ÈÎÒⳤ¶ÈµÄ¶þ½øÖÆ×Ö·û´®Ó³ÉäΪ¹Ì¶¨³¤¶ÈµÄСÐͶþ½øÖÆ×Ö·û´®¡£¼ÓÃܹþÏ£º¯ÊýÓÐÕâÑùÒ»¸öÊôÐÔ£ºÔÚ¼ÆËãÉϲ»´ó¿ÉÄÜÕÒµ½É¢ÁÐΪÏàͬµÄÖµµÄÁ½¸ö²»Í¬µÄÊäÈ룻Ҳ¾ÍÊÇ˵£¬Á½×éÊý¾ÝµÄ¹þÏ£Öµ½öÔÚ¶ÔÓ¦µÄÊý¾ÝҲƥÅäʱ²Å»áÆ¥Åä¡£Êý¾ÝµÄÉÙÁ¿¸ü¸Ä»áÔÚ¹þÏ£ÖµÖвúÉú²»¿ÉÔ¤ÖªµÄ´óÁ¿¸ü¸Ä¡£ËùÒÔÄãºÜÄÑ´Ó¼ÓÃܺóµÄÎÄ×ÖÖÐÕÒµ½ÖëË¿Âí¼£¡£

SHA1µÄÈ«³ÆÊÇSecure Hash Algorithm(°²È«¹þÏ£Ëã·¨)

MD5Ëã·¨µÄ¹þÏ£Öµ´óСΪ128λ¡£¶øSHA1Ëã·¨µÄ¹þÏ£Öµ´óСΪ160λ¡£Á½ÖÖËã·¨¶¼ÊDz»¿ÉÄæ¡£

Ëä˵2004Äê8ÔÂ17ÈÕµÄÃÀ¹ú¼ÓÖÝÊ¥°Í°ÍÀ­µÄ¹ú¼ÊÃÜÂëѧ»áÒé(Crypto¡¯2004)ÉÏ£¬À´×ÔÖйúɽ¶«´óѧµÄÍõÐ¡ÔÆ½ÌÊÚ×öÁËÆÆÒëMD5¡¢HAVAL-128¡¢MD4ºÍRIPEMDËã·¨µÄ±¨¸æ£¬¹«²¼ÁËMDϵÁÐËã·¨µÄÆÆ½â½á¹û¡£Ðû¸æÁ˹ÌÈô½ðÌÀµÄÊÀ½çͨÐÐÃÜÂë±ê×¼MD5µÄ±¤ÀݺäÈ»µ¹Ëú£¬Òý·¢ÁËÃÜÂëѧ½çµÄÐùÈ»´ó²¨¡£µ«ÊÇÎÒ¾õµÃ¶ÔÓÚÎÒÃÇ×öÆÕͨµÄÈí¼þÀ´Ëµ£¬Õâ¸ö¼ÓÃܰ²È«³Ì¶ÈÒѾ­×㹻ʹÓÃÁË¡£

ÎÒÃÇÆ½³£ÓõÄ×î¶àµÄÎ޷ǾÍÊǼÓÃÜÓû§ÃÜÂ룬°Ñ¼ÓÃܺõÄÃÜÂë´æ´¢µ½Êý¾Ý¿âÖУ¬½øÐÐÃÜÂë±È½ÏµÄʱºò£¬°ÑÓû§ÊäÈëµÄÃÜÂëÔÙ½øÐмÓÃÜ£¬È»ºóÓëÊý¾Ý¿âÖеÄÃÜÎĽøÐбȽϡ£ÖÁÓÚasp.netÀàÖÐÊÇÈçºÎʵÏÖ¼ÓÃÜËã·¨µÄ£¬Õâ¸öÎÒÃDz»ÐèÒª¹ØÐÄ£¬»áÓþÍÐÐÁË¡£

ÏÂÃæ¾ÍÊÇAsp.netÖм¸ÖÖ¼ÓÃÜ·½·¨¡£¼ÓÃÜËã·¨ÓÐÁ½ÖÖ£¬Ò²¾ÍÊÇÉÏÃæÌáµ½µÄMD5ºÍSHA1,ÕâÀïÎÒ¾ÙµÄÀý×ÓÊÇÒÔMD5ΪÀý£¬SHA1´óÖÂÏàͬ£¬Ö»ÊÇʹÓõÄÀ಻һÑù¡£

MD5Ïà¹ØÀࣺ

System.Security.Cryptography.MD5
System.Security.Cryptography.MD5CryptoServiceProvider()
System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(strSource, "MD5")

SHA1Ïà¹ØÀࣺ

System.Security.Cryptography.SHA1
System.Security.Cryptography.SHA1CryptoServiceProvider()
System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(strSource, "SHA1")

·½·¨ÈçÏ£º(ÓõÄvs 2005)

1/**//// <summary>
2 /// ·½·¨Ò»:ͨ¹ýʹÓà new ÔËËã·û´´½¨¶ÔÏó
3 /// </summary>
4 /// <param name="strSource">ÐèÒª¼ÓÃܵÄÃ÷ÎÄ</param>
5 /// <returns>·µ»Ø16λ¼ÓÃܽá¹û£¬¸Ã½á¹ûÈ¡32λ¼ÓÃܽá¹ûµÄµÚ9λµ½25λ</returns>
6 public string Get_MD5_Method1(string strSource)
7 {
8 ¡¡//new
9 ¡¡System.Security.Cryptography.MD5 md5 =

new System.Security.Cryptography.MD5CryptoServiceProvider();
10
11 ¡¡//»ñÈ¡ÃÜÎÄ×Ö½ÚÊý×é
12 ¡¡byte[] bytResult = md5.ComputeHash(System.Text.Encoding.Default.GetBytes(strSource));
13
14 ¡¡//ת»»³É×Ö·û´®£¬²¢È¡9µ½25λ
15 ¡¡string strResult = BitConverter.ToString(bytResult, 4, 8);
16 ¡¡//ת»»³É×Ö·û´®£¬32λ
17 ¡¡//string strResult = BitConverter.ToString(bytResult);
18
19 ¡¡//BitConverterת»»³öÀ´µÄ×Ö·û´®»áÔÚÿ¸ö×Ö·ûÖмä²úÉúÒ»¸ö·Ö¸ô·û£¬ÐèҪȥ³ýµô
20 ¡¡strResult = strResult.Replace("-", "");
21 ¡¡return strResult;
22 }
23
24 /**//// <summary>
25 /// ·½·¨¶þ:ͨ¹ýµ÷ÓÃÌØ¶¨¼ÓÃÜËã·¨µÄ³éÏóÀàÉ쵀 Create ·½·¨£¬´´½¨ÊµÏÖÌØ¶¨¼ÓÃÜËã·¨µÄ¶ÔÏó¡£
26 /// </summary>
27 /// <param name="strSource">ÐèÒª¼ÓÃܵÄÃ÷ÎÄ</param>
28 /// <returns>·µ»Ø32λ¼ÓÃܽá¹û</returns>
29 public string Get_MD5_Method2(string strSource)
30 {
31 ¡¡string strResult = "";
32
33 ¡¡//Create
34 ¡¡System.Security.Cryptography.MD5 md5 = System.Security.Cryptography.MD5.Create();
35
36 ¡¡//×¢Òâ±àÂëUTF8¡¢UTF7¡¢UnicodeµÈµÄÑ¡Ôñ¡¡
37 ¡¡byte[] bytResult = md5.ComputeHash(System.Text.Encoding.UTF8.GetBytes(strSource));
38
39¡¡ //×Ö½ÚÀàÐ͵ÄÊý×éת»»Îª×Ö·û´®
40 ¡¡for (int i = 0; i < bytResult.Length; i++)
41 ¡¡{
42 //16½øÖÆ×ª»»
43 strResult = strResult + bytResult[i].ToString("X");
44 ¡¡}
45 ¡¡return strResult;
46 }
47
48 /**//// <summary>
49 /// ·½·¨Èý:Ö±½ÓʹÓÃHashPasswordForStoringInConfigFileÉú³É
50 /// </summary>
51 /// <param name="strSource">ÐèÒª¼ÓÃܵÄÃ÷ÎÄ</param>
52 /// <returns>·µ»Ø32λ¼ÓÃܽá¹û</returns>
53 public string Get_MD5_Method3(string strSource)
54 {
55 ¡¡return System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(strSource,

"MD5");
56 }

ÕâЩ¼ÓÃܺ¯Êý¶¼ÊÇÔÚ·þÎñÆ÷¶ËÖ´ÐУ¬Ò²¾ÍÊÇ˵£¬µ±Óû§ÊäÈëÃÜÂëºó£¬´Ó¿Í»§¶Ëµ½·þÎñÆ÷¶Ë´«Êäʱ£¬Óû§µÄÃÜÂëûÓÐÈκα£»¤£¬ºÜΣÏÕ¡£ÒøÐеÄ×ö·¨ÊÇÔÚ¿Í»§¶Ë°²×°ActiveX¿Ø¼þ£¬ÔÚ¿Í»§¶Ë¾Í°ÑÒ»Ð©ÖØÒªÐÅÏ¢½øÐмÓÃÜ£¬ÔÙ·¢ËÍ¡£

²é¿´±¾ÎÄÀ´Ô´

Óû§ÆÀÂÛ

  • Óû§Ãû
  • ÆÀÂÛÄÚÈÝ