SHA256可以多线程以提高速度

本文关键字:高速度 多线程 SHA256 | 更新日期: 2024-09-22 15:21:49

using (FileStream stream = File.OpenRead(path))
{
    SHA256Managed sha = new SHA256Managed();
    byte[] hash = sha.ComputeHash(stream);
    return RSAEncrypt.GenerateDigitalSignature(hash,privateKey);
}

我的哈希方法创建哈希是否可以使用缓冲区将文件拆分为更小的部分并将结果粘回一个哈希?我问这个是因为散列大文件 (+-1gb( 可能需要长达 20 秒才能在单独的线程上运行。甚至可以像我描述的那样多线程吗?

SHA256可以多线程以提高速度

如果这需要 SHA256 并且没有其他内容,那么您无能为力。

如果你能决定哈希,你可以使用默克尔树结构。两个默克尔级别足以使您的 CPU 最大化。这将很容易实现。

基于 SHA256

的 Merke 哈希不会导致 SHA256 输出。