.Net SHA256Managed 产生无效散列

发布于 2024-10-14 16:06:37 字数 555 浏览 5 评论 0原文

我正在编写一个函数来在文件上生成 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

即使我修剪掉每个 - 字符,所有内容都是大写的,而我总是看到小写的 rappresentation。 (这也是一个问题)我想知道我是否以正确的方式使用该库。 请帮忙

I'm writing a function to produce a SHA256 hash on a file.
Here is the code I use

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

Very simple. The fact is that the hashing produced seems not to be valid, according on a couple of tool I tried and, in effect, is different from any other sha256 string I ever seen (and is not even 256 byte).
One result, for example is

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

Even if I trim out every - char, everything is uppercase, while I always saw lowercase rappresentation. (Is that a problem too) I'm wondering if I'm using the library in a correct way.
please help

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

萌︼了一个春 2024-10-21 16:06:37

SHA-256 表示 256 位,即 32 字节,这就是您所看到的。

小写和大写在这里无关紧要 - 这只是将字节表示为字符串。无论字节之间是否有连字符,也是如此。不同的工具会产生不同的十六进制字符串表示形式,仅此而已......所以我希望“1210B2”相当于“12-10-b2”等。

SHA-256 means 256 bits, aka 32 bytes which is what you're seeing.

Lower-case and upper-case are irrelevant here - that's just the representation of the bytes as a string. Ditto whether or not there are hyphens between the bytes. Different tools produce different hex string representations, that's all... so I'd expect "1210B2" to be equivalent to "12-10-b2" etc.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文