Generar Hash MD5.El MD5 es un algoritmo criptográfico de 128 bits. Por medio del metodo de encriptacion MD5 obtenemos un Hash sobre un conjunto de datos. Un Hash es un conjunto de datos que se obtiene en base a otros.
Este tipo de algoritmos, se usa para verificar que una secuencia de datos no ha sido alterada, ya que si se modifica el valor del hash, implica que esa información ha cambiado. El resultado obtenido de un MD5 es una cadena hexadecimal de 32 dígitos.
Generar un hash MD5 en C# es sencillo, ya que el framework nos proporciona unas clases para hacerlo. Lo único que tenemos que hacer es crear una instancia de la clase MD5 y pasarle un array de byte al método "CompuHash()". Primero agregamos la siguiente librería
using System.Security.Cryptography;
Y les dejo el siguiente método al cual le mandamos la cadena a encriptar y nos regresara el hash
- Código:
-
public static string GetMD5(string texto)
{
MD5 md5 = MD5CryptoServiceProvider.Create();
ASCIIEncoding encoding = new ASCIIEncoding();
byte[] stream = null;
StringBuilder hash = new StringBuilder();
stream = md5.ComputeHash(encoding.GetBytes(texto));
for (int i = 0; i < stream.Length; i++) hash.AppendFormat("{0:x2}", stream[i]);
return hash.ToString();
}
Encriptar nos sirve para esconder datos que no queremos que caigan en manos equivocadas, para poder verificar si efectivamente el hash corresponde a una cadena especifica, tendremos que encriptar tambien dicha cadena y comparar los hash.
Aca les dejo el ejemplo:
[Tienes que estar registrado y conectado para ver este vínculo][Tienes que estar registrado y conectado para ver esa imagen]