.Net SHA256Managed产生无效散列

时间:2011-01-28 16:10:23

标签: .net hash cryptography sha256

我正在编写一个函数来在文件上生成SHA256哈希。 这是我使用的代码

public string ComputeHash(Byte[] inputBytes)
    {
        Byte[] hashedBytes = new SHA256Managed().ComputeHash(inputBytes);
        return BitConverter.ToString(hashedBytes);
    }

很简单。事实上,根据我尝试的一些工具,产生的散列似乎没有效果,实际上,它与我见过的任何其他sha256字符串不同(甚至不是256字节)。 一个结果,例如是

12-10-B2-60-24-75-11-95-B5-F7-F6-64-39-C3-22-9F-E7-E7-D4-13-69-18-99-C5-A7-C5-EC-2F-E2-D6-09-19

即使我删除了每个字符,一切都是大写的,而我总是看到小写的表示。 (这也是一个问题)我想知道我是否以正确的方式使用该库。 请帮忙

1 个答案:

答案 0 :(得分:5)

SHA-256表示256 ,又名32 bytes ,这就是您所看到的。

小写和大写在这里是无关紧要的 - 这只是 bytes 作为字符串的表示。同上字节之间是否有连字符。不同的工具产生不同的十六进制字符串表示,这就是...所以我希望“1210B2”等同于“12-10-b2”等。