本范例演示了C#如何对一个给定的字符串进行MD5加密
/// <summary> /// Calculates a MD5 hash from the given string and uses the given /// encoding. /// </summary> /// <param name="Input">Input string</param> /// <param name="UseEncoding">Encoding method</param> /// <returns>MD5 computed string</returns> public static string CalculateMD5(string Input, Encoding UseEncoding) { System.Security.Cryptography.MD5CryptoServiceProvider CryptoService; CryptoService = new System.Security.Cryptography.MD5CryptoServiceProvider(); byte[] InputBytes = UseEncoding.GetBytes(Input); InputBytes = CryptoService.ComputeHash(InputBytes); return BitConverter.ToString(InputBytes).Replace("-", ""); } /// <summary> /// Calculates a MD5 hash from the given string. /// (By using the default encoding) /// </summary> /// <param name="Input">Input string</param> /// <returns>MD5 computed string</returns> public static string CalculateMD5(string Input) { // That's just a shortcut to the base method return CalculateMD5(Input, System.Text.Encoding.Default); } //调用例子: // The example below shows how to verify a password // by using a MD5-hash: // Password could be from user input string PlainPassword = "secret password"; string HashedPassword = CalculateMD5(PlainPassword); // This hash may come from the database string StoredPassword = "A584EFAFA8F9EA7FE5CF18442F32B07B"; // Are the hashes equal? if (HashedPassword == StoredPassword) MessageBox.Show("Correct password!"); else MessageBox.Show("Sorry, bad password :-(");