生成sha1哈希需要多长时间?

时间:2012-08-16 10:27:14

标签: performance hash sha1

生成SHA1哈希需要多长时间(约60个字节?)
和其他哈希相比?

提前致谢。

1 个答案:

答案 0 :(得分:5)

当然,生成哈希所需的实际时间在很大程度上取决于您的硬件,因此无法提供具体的时间。

也就是说,可以指出SHA1哈希算法相对于其他哈希算法的性能。

以下链接提供了许多不同流行哈希算法的性能比较:

Crypto++ 5.6.0 Benchmarks

MD5 vs. SHA-1, Performance & Pedigree

Performance Comparison: Security Design Choices
(检查大约一半,在“ComputeHash”标题下)

从上一个链接:

  

ComputeHash

     

该方法计算存储在文件中的数据的哈希值。我们表演了   数据大小为4 KB,135 KB和1 MB的测试,看看如何   数据大小会影响绩效。

     

enter image description here

     

图4.散列算法(4 KB):RPS和响应时间

     

注意:

     

.NET Framework支持各种哈希算法,包括MD5,SHA1,   SHA256,SHA384和SHA512。各种之间的唯一区别   SHA实现是它们产生的散列大小。我们选择了   在我们的测试中仅包括SHA1和SHA512。我们用了   System.Security.Cryptography,提供各种实现   SHA1和MD5。可用的MD5只有一个实现   System.Security.Cryptography:包装的MD5CryptoServiceProvider   CAPI。 SHA256,SHA384和SHA512目前不提供   CryptoAPI的。这些算法直接在托管代码中实现。   添加了这些算法只是为了支持新密钥   AES的生成要求,不提供更强的算法   比SHA1。目前的信念是SHA1绰绰有余   散列数据。对于SHA1和SHA512,我们使用托管实现,   分别提供SHA1Managed和SHA512Managed   System.Security.Cryptography。如图4所示,所有算法   性能非常相似,SHA512稍稍落后。 MD5   产生大小为128位的散列。 SHA中的计算过程是   非常模仿MD5。它产生160位散列。