椭圆曲线密码学
椭圆曲线密码学(ECC)在有限域椭圆曲线上实现公钥密码。椭圆曲线群目前没有经典亚指数级离散对数算法,故 ECC 以远小于 RSA 的密钥达到同等安全强度(256 位 ECC ≈ 3072 位 RSA),是移动设备与区块链常用的公钥密码。它是有限域几何结构对离散对数问题的直接移植。
有限域上的椭圆曲线
设素数 ,曲线 ()上的点连同无穷远点 构成加法群:
- 为单位元; 的逆元为
- 加法法则:过 的直线与曲线交于第三点,关于 轴对称得 ; 时取切线
- 群阶 满足 Hasse 界 ;密码学使用其大素数阶循环子群
ECDLP 与协议
椭圆曲线离散对数问题(ECDLP):给定 与 求 ,目前无经典亚指数算法(见离散对数问题)。
- ECDH:Alice 发 、Bob 发 ,共享密钥 (见Diffie-Hellman密钥交换)
- ECDSA:椭圆曲线版数字签名
示例
取 于 , 为素数, 生成整个群。Alice 选 ,Bob 选 :
共享密钥 。
安全与应用
- 密钥长度:256 位 ECC 提供约 128 位安全强度,与 3072 位 RSA 相当
- 须选用标准曲线(P-256、Curve25519 等),避免异常曲线攻击
- 椭圆曲线同时是数论研究对象:费马大定理证明中的弗赖曲线、以及 ECM 因子分解都用到它
应用
ECC 广泛用于 TLS、比特币/以太坊签名(secp256k1)与身份认证;与解析数论中的椭圆曲线从不同视角研究同一对象。