Aqui una rutina para generar el Hash de una cadena de texto basado en el algoritmo MD5.
public static string GetMD5Hash(string passwordString) { if (string.IsNullOrEmpty(passwordString)) { throw new ArgumentNullException("passwordString"); } MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider(); byte[] data = md5.ComputeHash(Encoding.Default.GetBytes(passwordString)); StringBuilder sb = new StringBuilder(); for (int i = 0; i < data.Length; i++) { sb.Append(data[i].ToString("x2")); } return sb.ToString(); }
static void Main(string[] args) { string result = GetMD5Hash("Hola mundo!"); Console.WriteLine(result); }
El resultado de Hash de Hola mundo! es daaef200ebb921e011e3ae922dd3266b
hola, mira que yo estoy usando ese codigo exactamente, y aunque no modifique el string en nada, cuando lo vuelvo a evaluar, me ha generado un MD5 completamente diferente, lo he comprobado porque lo estoy guardando en una tabla el historial de ejecuciones y se supone que el md5 debería ser el mismo, pero me da uno diferente siempre.. que puedo hacer PRogramo con c# fW 3.5