什么是DSA复杂性?

时间:2012-09-26 04:59:06

标签: rsa complexity-theory dsa

我做了一些测试,结果发现RSA比DSA慢很多。

通常DSA时间复杂度是多少?

RSA[ms] DSA [ms]    
1125    218 1KiB
1047    188 2KiB
594     17  4KiB
641     234 8KiB
2938    406 16KiB
9063    937 32KiB
39344   3406    64KiB

1 个答案:

答案 0 :(得分:1)

RSA和DSA使用指数生成签名。这是花费最多时间的成本,因此它们基本上具有相同的复杂性。但不同的是关键长度。

在加密中,您尝试选择尽可能小的密钥,但要足够大以获得所需的安全性。

RSA需要很长的密钥,某事。像2048位或更大。
DSA有一个短(大约256位)和一个长键(大约2048位)。指数不会大于短键。

因此,对于DSA,您必须计算一个2048位数到256位数的模数(模数为另一个数),对于RSA,您必须计算一个2048位数到另一个2048位数的幂。 这就是RSA比DSA慢得多的原因。

注意:如果您为DSA选择长度为2048位的短密钥,它将与RSA一样慢。