c# - 如何在 C# 中执行 SHA1 文件校验和?

标签 c# .net sha1 checksum

如何在文件上使用 SHA1CryptoServiceProvider() 创建文件的 SHA1 校验和?

最佳答案

using (FileStream fs = new FileStream(@"C:\file\location", FileMode.Open))
using (BufferedStream bs = new BufferedStream(fs))
{
    using (SHA1Managed sha1 = new SHA1Managed())
    {
        byte[] hash = sha1.ComputeHash(bs);
        StringBuilder formatted = new StringBuilder(2 * hash.Length);
        foreach (byte b in hash)
        {
            formatted.AppendFormat("{0:X2}", b);
        }
    }
}

formatted 包含 SHA-1 散列的字符串表示形式。此外,通过使用 FileStream 而不是字节缓冲区,ComputeHash 以 block 的形式计算散列,因此您不必一次加载整个文件,这是对大文件很有帮助。

关于c# - 如何在 C# 中执行 SHA1 文件校验和?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1993903/

相关文章:

c# - 我们如何以及在哪里编写 try catch block 来处理异常

c# - 显示在引用程序集中运行的任务的进度

database - 我应该将密码编码为什么?

delphi - 寻求 FOSS SHA1

bash - Git 哈希对象在 Powershell、CMD 和 Bash 中产生不同的 SHA1?

c# - 检查标签的类型

c# - 如何增加命名管道的MaxStringContentLength?

C# 的默认关键字在 C++ 中是否等效?

c# - 对 MSIL 感到困惑

c# - 如何在 C# 中从 StreamReader 获取文本