本帖最后由 keer_zu 于 2022-5-25 23:11 编辑
ECC椭圆曲线加密算法:介绍
这是一篇翻译的/文/章:原文链接
现在我们听说过的公钥加密有ECC,ECDH 或者 ECDSA。第一个是椭圆曲线加密(Elliptic Curve Cryptography)的缩写,后两个算法是基于它的算法。 今时今日,我们可以在TLS(Transport Layer Security安全传输层协议),PGP(Pretty Good Privacy基于RSA的邮件加密系统)和SSH(Secure Shell安全外壳协议)中找到椭圆曲线加密系统,这是三项构建了现代Web和IT世界的重要技术,更不用提比特币和其他数字货币加密技术了。 在ECC盛行之前,基本上所有的公钥加密算法都是基于RSA,DSA和DH的,其他的加密系统也都是基于模运算的。RSA和他的小伙伴们在今天仍然很重要,而且经常和ECC一起伴随使用。但是RSA和他的小伙伴们很容易被解释,也被广泛的理解了,况且看上去很难实现的东西写起来还是很容易的,但是ECC对大多数人来说仍旧是个谜。 在这篇wen章中,我的目的并不是提供关于ECC完整且细节的指导,我是想提供一个简单的概略:为什么ECC被认为是安全的?这里也不涉及冗长的数学证明或者实现细节。 接下来我会涉及到的**有: - 实数域上的椭圆曲线和群论(本文)。
- 有限域上的椭圆曲线和离散对数问题。
- 密钥对的生成和两种ECC算法:ECDH和ECDSA。
- 破/解ECC安全性的算法,以及和RSA的对比。
为了理解上述*文*章,你需要先了解一下基础的集合论,几何和模运算,而且要熟悉对称和非对称加密算法。最后,你需要很清楚,什么是“简单”的问题,什么是“困难”的问题,以及他们在加密中所扮演的角色。 开始了!
|