RSA密钥算法是在数字安全中应用最广泛的一种。然而,根据目前网络趋势移动端是主要应用场景,网络性能站在整个业务的首位。从这个角度来看,密钥的物理尺寸大小是一个主要问题。
DSA 和 RSA 密钥算法需要更大的密钥大小。谈到ECDSA,需要解决椭圆曲线离散对数问题(ECDLP)以破解密钥,而目前在实现这一点方面没有取得重大进展。因此,ECC 证书提供了更好的安全解决方案,并且使用通常的黑客的“蛮力”方法更难破解。
更短的密钥大小肯定也是优势之一。在下表中,我们比较了 RSA 和 ECDSA 密钥大小。
安全强度(位) | RSA 公钥长度(位) | ECDSA 公钥长度(位) |
---|---|---|
80 | 1024 | 160 |
112 | 2048 | 224 |
128 | 3072 | 256 |
192 | 7680 | 384 |
256 | 15360 | 512 |
从表中可以看出,为了在 Web 客户端和 Web 服务器之间建立 256 位安全连接,在标准非对称 RSA 算法中使用 15360 位密钥,而椭圆曲线则需要 512 位密钥为等效连接。键越短,速度越快。为了满足不断增长的加密强度要求 – 密钥和签名的大小也会增加,执行加密操作所花费的时间也会增加。从上表中可以明显看出,RSA 的增长速度比 ECC 快得多。
ECC优势:
- 较低的 CPU 需求;
- ECC SSL 证书占用的物理空间;
- 带宽
- 资源消耗
- 改进了服务器到浏览器的性能;
所有的新奇事物,ECC SSL 证书也不例外,需要一定的时间才能在全球范围内实施、接受和支持。到目前为止,一些旧的网络浏览器版本存在与 ECC 证书的兼容性问题。对于现代和最新的网络客户端,至少有两条椭圆曲线支持,例如 P-256 和 P-384。
下面的 Web 浏览器和操作系统将正确显示带有 ECC SSL 的网站。
网络客户端支持
网络客户端 | 所需的最低版本 |
---|---|
Mozilla Firefox | 2.0 |
Google Chrome | 1.0 on ECC compatible OS |
Microsoft IE | 7 on ECC compatible OS |
Apple Safari | 4 on ECC compatible OS |
操作系统支持
OS | 所需的最低版本 |
---|---|
Microsoft Windows | Windows Vista Windows 7&8 that reply on OS Root Store and Root Update Mechanism |
Apple OS | OS X 10.6 |
Google Android | 4.0 |
Red Hat Enterprise Linux | 6.5 |
服务器支持
服务器 | 所需的最低版本 |
---|---|
Apache HTTP 服务器 | 2.2.26 |
Nginx | 1.1.0 |
Windows Server | 2008 |
Apache Tomcat | 1.1.30 |
Dovecot | 2.2.5 |
IBM HTTP 服务器 | 8.0 w/ PM80235 |
Sun Java System Web 服务器 | 7.0 |