ConsEco/Sources/Modele/Hash.cs

46 lines
1.2 KiB

using System;
using System.Collections;
using System.Diagnostics;
using System.Runtime.CompilerServices;
using System.Security.Cryptography;
using System.Text;
namespace Model
{
public class Hash
{
public string CreateHashCode(string mdp)
{
string hashString = "";
byte[] hash;
using (SHA512 shaM = new SHA512Managed())
{
hash = shaM.ComputeHash(Encoding.UTF8.GetBytes(mdp));
}
foreach (byte b in hash)
{
hashString = hashString + b;
}
return hashString;
}
public bool IsEqualHash(string mdpBdd, string mdpSent)
{
string hashedMdpSent = CreateHashCode(mdpSent);
return hashedMdpSent.Equals(mdpBdd);
}
private string ByteArrayToString(byte[] arrInput)
{
int i;
StringBuilder sOutput = new StringBuilder(arrInput.Length);
for (i = 0; i < arrInput.Length; i++)
{
sOutput.Append(arrInput[i].ToString("X2"));
}
return sOutput.ToString();
}
}
}