ECC椭圆曲线加密扫盲贴

本文深入解析椭圆曲线密码体制(ECC),探讨其在密码学中的应用优势,包括短密钥的安全性、加法运算规则及有限域上的椭圆曲线特性。适合密码学初学者及需要复习相关知识的专业人士。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

椭圆曲线密码体制ECC(Elliptic Curve Cryptography)可用短的多的密钥获得同样的安全性,因此具有广泛的应用前景。ECC已被IEEE公钥密码标准P1363采用。

其实我本科的时候是学过椭圆曲线加密的,也用Openssl玩过一段时间,但是经不住时间的摧残,现在已经完全忘记了。这篇博客旨在帮助自己复习,同时给需要的朋友提供一点参考资料


椭圆曲线方程

椭圆曲线并非椭圆,而是因为其曲线方程和计算椭圆周长的方程类似。一般地,椭圆曲线的曲线方程是以下形式的三次方程:

y2+axy+by=x3+cx2+dx+e y^2+axy+by = x^3 +cx^2+dx+ey2+axy+by=x3+cx2+dx+e
其中a、b、c、d、ea、b、c、d、eabcde都是满足某些简单条件的实数。定义包括一个称为无穷远点的元素OOO。椭圆曲线的具体例子如下图所示。在这里插入图片描述
由图可见:椭圆曲线关于x轴对称。
椭圆曲线上的加法定义:如果其上的3个点位于同一直线上,那么它们的和为O.进一步可如下定义椭圆曲线的加法律:
1、O为加法单位元,即对椭圆曲线上的任意一点P,有P+O=P
2、设P=(x,y)是椭圆去线上的一点,他的加法逆元定义为P2=−P1=(x,−y)P_2=-P_1=(x,-y)P2=P1=(x,y)
3、设Q和R是椭圆曲线上x坐标不同的两点,Q+R的定义如下:画一条通过Q、R的直线,与椭圆曲线交于P1P_1P1(这一交点是唯一的,除非所做的直线是Q点或R点的切线,此时分别取P1=Q和P1=RP_1=Q和P_1=RP1=QP1=R)。由Q+R+P1=O,得Q+R=−P1Q+R+P_1=O,得Q+R=-P_1Q+R+P1=OQ+R=P1
4、点Q得倍数定义如下,在点Q做椭圆曲线得一条切线,设切线与椭圆曲线交于S,定义2Q=Q+Q=-S。类似地,可定义3Q=Q+Q+Q,···,等。
以上定义具有加法地一般性质,包括交换律和结合律等。


有限域上的椭圆曲线

密码学中普遍采用的是有限域上的椭圆曲线,在式1-1中所有系数都是有限域GF§中的元素(p为大素数)。其中最常用的是由方程:
y2=x3+ax+b(a,b∈GF(p),4a3+27b2≠0)y^2=x^3+ax+b(a,b\in GF(p),4a^3+27b^2\ne 0)y2=x3+ax+b(a,bGF(p),4a3+27b2=0)
椭圆曲线Ep(a,b)E_{p}(a,b)Ep(a,b)表示系数分别为a,b,p的椭圆曲线方程。
一般而言,Ep(a,b)E_{p}(a,b)Ep(a,b)由以下方式产生:
(1)对每一x(0≤x<p且x为整数)x(0\le x \lt p且x为整数 )x0x<px,计算x3+ax+b(modp)x^3+ax+b(mod p)x3+ax+b(modp)
(2)决定(1)中求得的值在模p下是否有平方根,如果没有,则曲线上没有与这一相对应的点。如果有,则求出两个平方根(y=0时只有一个平方根)。
Ep(a,b)E_{p}(a,b)Ep(a,b)上的加法定义如下:
P,Q∈Ep(a,b)P,Q\in E_{p}(a,b)P,QEp(a,b),则
(1)P+O=P
(2)如果P=(x,y),那么(x,y)+(x,-y)=O,即(x,-y)是P的加法逆元,表示为-P

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值