我有一个使用以下代码从字符串生成的哈希值:
public static byte[] GetHash(string inputString)
{
HashAlgorithm algorithm = MD5.Create();
return Algorithm.ComputeHash(Encoding.UTF8.GetBytes(inputString));
}
现在,我想取回从其生成哈希值的字符串,我该怎么做? 有没有更好的建议来加密一些数据,以便我可以再次取回它们?
我尝试了此方法,但未返回该字符串:
public string ToHex(byte[] bytes, bool upperCase)
{
StringBuilder result = new StringBuilder(bytes.Length * 2);
for (int i = 0; i < bytes.Length; i++)
result.Append(bytes[i].ToString(upperCase ? "X2" : "x2"));
return result.ToString();
}
另外,我尝试了这个:
public static string GetHashString(string inputString)
{
StringBuilder sb = new StringBuilder();
foreach (byte b in GetHash(inputString))
sb.Append(b.ToString("X2"));
return sb.ToString();
}