第十一讲 椭圆曲线
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第十一讲 椭圆曲线
1984年,Hendrik Lenstra提出了依靠椭圆曲 线性质分解整数的精妙算法。这一发现激 发了学者进一步研究椭圆曲线在密码和计 算数论的其它应用。
椭圆曲线密码在 1985 年分别由 Neal Koblitz 和 Victor Miller 提出。椭圆曲线密码方案为 公钥机制,提供如同RSA一样的功能。但是, 它的安全性依赖不同的困难问题,也就是椭 圆曲线离散对数问题(ECDLP)。
2.2 实域上的椭圆曲线
(a) E1 : y x x; (b) E2 : y x 73
2 3 2 3
2.3 加法法则
2.3 加法法则(续) 弦和切线法则
(1) 加法法则最好用几何方 法说明。令P = ( x1, y1 ) 和 Q = ( x2,y2 )是Baidu Nhomakorabea圆曲线E上的两个不同的点。 则 P 与Q的和R按如下方法求出。首先 画一条连接P 和 Q的直线,这条直线与椭 圆曲线相交于第三点, 则这个交点关于 x轴的对称点就是 R点。这一几何 表示如上图 (a)。
2 实域上的椭圆曲线
2.1 简化Weierstrass方程
E : y 2+a1 xy+a3 y=x3+a2 x 2+a4 x+a6 x 3a12 12a2 y 3a1 x a13 4a1a2 12a3 ( x, y ) , 36 216 24 E : y 2=x 3+ax+b 这里 16(4a 3 27b 2 )
本讲提要
Weierstrass方程 实域上的椭圆曲线 有限域上的椭圆曲线 椭圆曲线密码 椭圆曲线在分解中的应用
1 Weierstrass方程
定 义 1域K上的椭圆曲线E由下述方程定义: E : y 2+a1 xy+a3 y=x3+a2 x 2+a4 x+a6, 其中a1,a2,a3,a4,a6 K且 0, 是E的判别式,具体定义如 下:
2.3 加法法则(续)
评述. (1) P P。 (2) 由于( x,y ) ( x, y ) , 起到了加法单位元的作 用(如同整数加法中的 0)。因此,我们定义 ( x,y ) ( x, y )。 两个点相减P Q,也可以简化为相加P ( Q)。 (3) P Q G P,Q,G共线。
2.3 加法法则(续) 代数公式
加法法则. 令椭圆曲线E由方程y 2 x 3 ax b确定并令 P ( x1,y1 ), Q ( x2,y2 )。 则 P Q R ( x3,y3 ), 这里 x3 m 2 x1 x2 y3 m( x1 x3 ) y1 并且 ( y2 y1 ) /( x2 x1 ) m 2 (3x1 a) /(2 y1 ) 如果P Q 如果P Q。
2 dy 3 x 2 ydy 3x 2 dx,因此, 8。 dx 2 y
在这种情况下,直线 L是y 8( x 4) 3。代入E的方程可以 得到(8( x 4) 3) 2 x 3 73 。 4是重根。椭圆曲线与直 线相交 的第三点有x 72。我们有y 611 。因此,R (72, 611)。
我们知道解决分解整数问题需要亚指数时间 复杂度的算法,而目前已知计算 ECDLP 的 最好方法都需要全指数时间复杂度。这意味 着在椭圆曲线系统中我们只需要使用相对于 RSA 短得多的密钥就可以达到与其相同的 安全强度。例如,一般认为 160 比特的椭圆 曲线密钥提供的安全强度与1024比特RSA密 钥相当。使用短的密钥的好处在于加解密速 度快、节省能源、节省带宽、存储空间。
评述. (1) 定 义 1 中的方程称为Weierstras s方程。 (2) 我们称 E 是域 K上的椭圆曲线,这是因 为系数a1,a2, a3,a4,a6均为域 K的元素。 K为E的基础域。 (3) 条件 0确保椭圆曲线是“光滑 ”的,即曲线的所 有点都没有两个或两个 以上不同的切线。 (4)点是曲线唯一的一个无穷 远点。 (5)曲线E的L有理点是满足曲线方程 且坐标x和y属于L的 点 ( x, y ),并认为无穷远点是 K的所有扩域L上的L有理点。
2 3 3 d 2 d8 8d 4 27d 6 9d 2 d 4 d 6
d 2 a12 4a2
2 d 6 a3 4 a6
d 4 2a4 a1a3
2 2 d8 a12 a6 4a2 a6 a1a3a4 a2 a3 a4 。
若L是K的扩域,则E上的L有理点的集合是 E ( L) = {( x, y) L L: y 2+a1 xy+a3 y x 3 a2 x2 a4 x a6 0} {}, 其中是无穷远点。
2.3 加法法则(续)
弦和切线法则(续)
(2) 按如下方法求出 P的倍点R。首先,在P点做椭 圆曲线的切线,这条切 线与椭圆曲线相交于第 二 点,这个交点关于 x轴的对称点就是 R点。这一几 何表示如上图 (b)。
2.3 加法法则(续)
例 子 1假定一条椭圆曲线 E被定义为 y 2 x 3 73 。令P (2, 9) 和Q (3, 10) 。通过 P 和Q的直线 L是 y x 7。代入E的方程 得到( x 7)2 x 3 73 。因此,椭圆曲线与直 线相交于第三点 有x 4。由于y x 7,我们有y 3。因此,R (4, 3)。 假定我们做 R倍点(自加)。R点的椭圆曲线E的斜率可以通过 对E的方程求导数得到:
有一条附加法则:对于 任意点P,有 P P。
2.3 加法法则(续) 评述.
(1) 加法法则符合结合律: ( P Q ) R P (Q R )。 (2) 加法法则符合交换律: P Q Q P。 (3) 椭圆曲线E上的点构成阿贝尔群。
1984年,Hendrik Lenstra提出了依靠椭圆曲 线性质分解整数的精妙算法。这一发现激 发了学者进一步研究椭圆曲线在密码和计 算数论的其它应用。
椭圆曲线密码在 1985 年分别由 Neal Koblitz 和 Victor Miller 提出。椭圆曲线密码方案为 公钥机制,提供如同RSA一样的功能。但是, 它的安全性依赖不同的困难问题,也就是椭 圆曲线离散对数问题(ECDLP)。
2.2 实域上的椭圆曲线
(a) E1 : y x x; (b) E2 : y x 73
2 3 2 3
2.3 加法法则
2.3 加法法则(续) 弦和切线法则
(1) 加法法则最好用几何方 法说明。令P = ( x1, y1 ) 和 Q = ( x2,y2 )是Baidu Nhomakorabea圆曲线E上的两个不同的点。 则 P 与Q的和R按如下方法求出。首先 画一条连接P 和 Q的直线,这条直线与椭 圆曲线相交于第三点, 则这个交点关于 x轴的对称点就是 R点。这一几何 表示如上图 (a)。
2 实域上的椭圆曲线
2.1 简化Weierstrass方程
E : y 2+a1 xy+a3 y=x3+a2 x 2+a4 x+a6 x 3a12 12a2 y 3a1 x a13 4a1a2 12a3 ( x, y ) , 36 216 24 E : y 2=x 3+ax+b 这里 16(4a 3 27b 2 )
本讲提要
Weierstrass方程 实域上的椭圆曲线 有限域上的椭圆曲线 椭圆曲线密码 椭圆曲线在分解中的应用
1 Weierstrass方程
定 义 1域K上的椭圆曲线E由下述方程定义: E : y 2+a1 xy+a3 y=x3+a2 x 2+a4 x+a6, 其中a1,a2,a3,a4,a6 K且 0, 是E的判别式,具体定义如 下:
2.3 加法法则(续)
评述. (1) P P。 (2) 由于( x,y ) ( x, y ) , 起到了加法单位元的作 用(如同整数加法中的 0)。因此,我们定义 ( x,y ) ( x, y )。 两个点相减P Q,也可以简化为相加P ( Q)。 (3) P Q G P,Q,G共线。
2.3 加法法则(续) 代数公式
加法法则. 令椭圆曲线E由方程y 2 x 3 ax b确定并令 P ( x1,y1 ), Q ( x2,y2 )。 则 P Q R ( x3,y3 ), 这里 x3 m 2 x1 x2 y3 m( x1 x3 ) y1 并且 ( y2 y1 ) /( x2 x1 ) m 2 (3x1 a) /(2 y1 ) 如果P Q 如果P Q。
2 dy 3 x 2 ydy 3x 2 dx,因此, 8。 dx 2 y
在这种情况下,直线 L是y 8( x 4) 3。代入E的方程可以 得到(8( x 4) 3) 2 x 3 73 。 4是重根。椭圆曲线与直 线相交 的第三点有x 72。我们有y 611 。因此,R (72, 611)。
我们知道解决分解整数问题需要亚指数时间 复杂度的算法,而目前已知计算 ECDLP 的 最好方法都需要全指数时间复杂度。这意味 着在椭圆曲线系统中我们只需要使用相对于 RSA 短得多的密钥就可以达到与其相同的 安全强度。例如,一般认为 160 比特的椭圆 曲线密钥提供的安全强度与1024比特RSA密 钥相当。使用短的密钥的好处在于加解密速 度快、节省能源、节省带宽、存储空间。
评述. (1) 定 义 1 中的方程称为Weierstras s方程。 (2) 我们称 E 是域 K上的椭圆曲线,这是因 为系数a1,a2, a3,a4,a6均为域 K的元素。 K为E的基础域。 (3) 条件 0确保椭圆曲线是“光滑 ”的,即曲线的所 有点都没有两个或两个 以上不同的切线。 (4)点是曲线唯一的一个无穷 远点。 (5)曲线E的L有理点是满足曲线方程 且坐标x和y属于L的 点 ( x, y ),并认为无穷远点是 K的所有扩域L上的L有理点。
2 3 3 d 2 d8 8d 4 27d 6 9d 2 d 4 d 6
d 2 a12 4a2
2 d 6 a3 4 a6
d 4 2a4 a1a3
2 2 d8 a12 a6 4a2 a6 a1a3a4 a2 a3 a4 。
若L是K的扩域,则E上的L有理点的集合是 E ( L) = {( x, y) L L: y 2+a1 xy+a3 y x 3 a2 x2 a4 x a6 0} {}, 其中是无穷远点。
2.3 加法法则(续)
弦和切线法则(续)
(2) 按如下方法求出 P的倍点R。首先,在P点做椭 圆曲线的切线,这条切 线与椭圆曲线相交于第 二 点,这个交点关于 x轴的对称点就是 R点。这一几 何表示如上图 (b)。
2.3 加法法则(续)
例 子 1假定一条椭圆曲线 E被定义为 y 2 x 3 73 。令P (2, 9) 和Q (3, 10) 。通过 P 和Q的直线 L是 y x 7。代入E的方程 得到( x 7)2 x 3 73 。因此,椭圆曲线与直 线相交于第三点 有x 4。由于y x 7,我们有y 3。因此,R (4, 3)。 假定我们做 R倍点(自加)。R点的椭圆曲线E的斜率可以通过 对E的方程求导数得到:
有一条附加法则:对于 任意点P,有 P P。
2.3 加法法则(续) 评述.
(1) 加法法则符合结合律: ( P Q ) R P (Q R )。 (2) 加法法则符合交换律: P Q Q P。 (3) 椭圆曲线E上的点构成阿贝尔群。