ECC算法与RSA算法的优劣
ecc优势在于密钥位数短,一般认为160位密钥的ecc安全性相当于1024位密钥的rsa,256位相当于3072位,所以它在嵌入式内存受限的环境下有优势。但ecc的基本运算比rsa复杂很多。要比较性能得看具体怎样的实现,比如软件实现的话可以看看这个:http://nicj.net/files/performance_comparison_of_elliptic_curve_and_rsa_digital_signatures.pdf
■网友
A (relatively easy to understand) primer on elliptic curve cryptography有提到,这里是一个翻译得不是特别好的中文版本:一个关于椭圆曲线密码学的初级读本(相当容易懂)
■网友
RSA算法:国际标准算法,应用较早,最为普及,比ECC算法的适用范围更广,兼容性更好,一般采用 2048 位的加密长度,但是对服务端性能消耗高。
ECC算法:中文名称为椭圆加密算法,新一代算法趋势主流,一般采用 256 位加密长度,加密速度快,效率更高,对服务器资源消耗低,而且最重要的是更安全,抗攻击型更强。
ECC 和 RSA 相比,在许多方面都有对绝对的优势,主要体现在以下方面:
抗攻击性强CPU 占用少内容使用少网络消耗低加密速度快随着安全等级的增加,当前加密法的密钥长度也会成指数增加,而 ECC 密钥长度 却只是成线性增加。例如,128 位安全加密需要 3,072 位 RSA 密钥,却只需要一 个 256 位 ECC 密钥。增加到 256 位安全加密需要一个 15,360 位 RSA 密钥,却只需要一个 512 位 ECC 密钥。ECC 具有如此卓越的按位比率加密的性能,预计其特点将成为安全系统关注的重点。
ECC 的这些特点使它必将取代 RSA,成为通用的公钥加密算法。比如 SET 协议的制定者已把它作为下一代 SET 协议中缺省的公钥密码算法。
■网友
一张图给你解释啦
■网友
ECC的算法复杂度是所使用素数的位长度t的立方:1)底层的主要操作模乘法是位长度的平方;2)标量乘法又贡献了一个t。
RSA的算法复杂度也是O(t^3):1)模乘法是位长度的平方;2)指数快速运算也贡献一个t
同样的位长度,ECC的安全性要高于RSA;换而言之,同样的安全性,由于ECC密钥只需要更短的密钥(一般认为160位密钥的ecc安全性相当于1024位密钥的rsa),ECC的计算量要少于RSA。
应用场景
1)密钥交换
ECDH优于RSA,RSA有前向安全性问题。
2)数字签名
为什么RSA还在广泛使用?ECC还没有取代RSA?ECC有什么不足?
【ECC算法与RSA算法的优劣】
■网友
ECC快,RSA简单
推荐阅读
- 纯电|实力大增,更新后沃克斯豪尔Corsa水平如何?
- 为啥这个算法误差的看起来这么小
- 使用算法帮助人们筛选reader的信息是否存在可能
- 请问如果想成为算法工程师的话,大学选专业是选软件工程好还是计算机科学与技术好。
- 神经网络算法是否真的属于人工智能范畴
- 以算法为例,是否存在讲解者认为“懂得自然懂了,不懂的我说再多也白搭”的心理
- 豆瓣FM的推荐算法还有哪些可以改进的地方
- 如果已确定图像中物体的位置, 常用的目标分割和提取算法有哪些
- 请问只靠优化软件可以提高手机信号质量吗就是说不改变基带芯片和天线设计,信号质量可以靠算法优化吗
- 网络台球的动量算法规则是咋写的
