解密md5哈希混淆

时间:2019-02-27 16:28:17

标签: c# md5

我已经开发了一个简单的MD5哈希,如下所示:

public static string Hash(string value)
{
    byte[] valueBytes = new byte[value.Length * 2];

    Encoder encoder = Encoding.Unicode.GetEncoder();
    encoder.GetBytes(value.ToCharArray(), 0, value.Length, valueBytes, 0, true);

    MD5 md5 = new MD5CryptoServiceProvider();
    byte[] hashBytes = md5.ComputeHash(Encoding.UTF8.GetBytes("123456"));

    StringBuilder stringBuilder = new StringBuilder();

    for (int i = 0; i < hashBytes.Length; i++)
    {
        stringBuilder.Append(hashBytes[i].ToString("x2"));
    }

    return stringBuilder.ToString();
}

但是现在,我想将此代码的结果解密为原始文本。但是我不知道应该使用哪个功能?

我的哈希函数是:

byte[] hashBytes = md5.ComputeHash(Encoding.UTF8.GetBytes("123456"));

1 个答案:

答案 0 :(得分:1)

您不(无法)解密哈希,而是针对给定的值再次执行加密,以验证该值是否与哈希所伪装的值相同。