在常规的C#应用程序中,哪个类用于散列:xxxManaged或xxx(即SHA1Managedvs SHA1)以及为什么?
我需要独立计算多个数据块的哈希值.像这样的东西:
using( HashAlgorithm hasher = new ActualHashAlgorithm() ) {
for( int i = 0; i = numberOfBlocks; i++ ) {
byte[] block = getBlock( i );
byte[] hash = hasher.ComputeHash( block );
// use hash
}
}
Run Code Online (Sandbox Code Playgroud)
我可以HashAlgorithm在块之间重用相同的对象吗?将HashAlgorithm在调用之间重置状态ComputeHash()还是我需要处理HashAlgorithm对象并为每个新数据块创建新对象?