扭曲爱德华曲线
0、摘要
1、原文摘要
本文主要介绍了扭曲爱德华兹曲线,它是对最近引入的爱德华曲线的一般化。扭曲爱德华兹曲线包含了更多有限域上的曲线,特别是蒙哥马利椭圆曲线。本文讲介绍如何通过同源覆盖更多曲线,给出了投影和倒置坐标中扭曲 Edwards 曲线的显式公式;并会说明扭曲爱德华兹曲线为爱德华曲线节省了时间。
(同源是指两条椭圆曲线之间的同态)
2、写在前面
由于最近比赛有很多扭曲爱德华曲线的题目,并且目前国内也没有什么关于扭曲爱德华曲线的详细介绍,就把这篇详细介绍扭曲曲线的文章做了一下翻译。鉴于本人水平、时间有限,译文难免有一些问题,欢迎各位师傅和我交流。原文链接:https://eprint.iacr.org/2008/013.pdf
1、引入
Edwards 在 [13] 中推广了欧拉和高斯的一个例子,给非二进制域
Bernstein 和 Lange 在 [4] 中提出用坐标
在本文中,我们进一步推广 Edwards 加法法则以覆盖所有曲线
在第 2 节中,我们会回顾 Edwards 曲线,介绍扭曲 Edwards 曲线,并说明每条扭曲 Edwards 曲线是 Edwards 曲线的扭曲。在第 3 节中,我们会说明每条蒙哥马利曲线都可以表示为扭曲爱德华兹曲线,反之亦然。在第 4 节中,我们会介绍椭圆曲线(在各种素数域上)可以表示为 Edwards 曲线、扭曲 Edwards 曲线、“4 倍奇数”扭曲 Edwards 曲线等的百分比。在第 5 节中,我们使用同源覆盖更多曲线:具体的,它表明每条群阶为 4 的倍数且没有阶为 4 的点的曲线与扭曲 Edwards 曲线是 2 - 同源的。在第 6 节中,我们把 Edwards 加法定律、[4] 中的显式公式和 [5] 中的“逆”公式推广到扭曲 Edwards 曲线。在第 7 节中,我们分析了这种推广对密码应用的好处。
2、爱德华曲线和扭曲爱德华曲线
本节,我们将在 [4] 的推广下简要回顾爱德华曲线及其加法定律。然后,我们会引入扭曲爱德华曲线并讨论它和爱德华曲线之间的关系。
Review of Edwards Curves.
在整篇文章中,我们讨论的椭圆曲线都定义在非二进制域
点
Twisted Edwards Curves.
4 阶点的存在限制了
定义 2.1(扭曲爱德华曲线) 选择一个域
( ),选择两个不同的非零常数 ,扭曲爱德华曲线定义为 当
时,此曲线为爱德华曲线。
在第三节中,我们将证明每条扭曲爱德华曲线等价于蒙哥马利曲线,反之亦然。椭圆曲线具有
Twisted Edwards Curves as Twists of Edwards Curves.
扭曲爱德华曲线
更一般的,对于任何满足
此外,对于扭曲爱德华曲线
3、蒙哥马利曲线和爱德华曲线
选择一个域
如果可以,将 Weierstrass 曲线转换为蒙哥马利曲线的标准算法(e.g.,参见 [11,第 13.2.3.c 节])可以与我们从蒙哥马利曲线到扭曲爱德华兹曲线的显式转换相结合。
定义 3.1(蒙哥马利曲线) 选择一个域
( ),确定常数 与 。蒙哥马利曲线定义为
定理 3.2 选择一个域
( )
对于每个
中的扭曲爱德华曲线和在 中的蒙哥马利曲线等价。 特别的,对于两个不同的常数
,若 ,扭曲爱德华曲线 和蒙哥马利曲线 等价。映射 是从 到 的双有理等价,其逆变换为 。 相反,
上的每条蒙哥马利曲线都双有理地等价于在 上的扭曲 Edwards 曲线。 特别的,确定常数
与 ,当 , 蒙哥马利曲线 和扭曲爱德华曲线 等价。
证明:
-
注意到
有定义,且 。若 ,那么 则 ,矛盾;若 ,那么 则 ,矛盾。因此曲线 是蒙哥马利曲线。 以下Sage程序验证了定理 3.2中的映射
R.<a,d,x,y>=QQ[] A=2*(a+d)/(a-d) B=4/(a-d) S=R.quotient(a*x^2+y^2-(1+d*x^2*y^2)) u=(1+y)/(1-y) v=(1+y)/((1-y)*x) 0==S((B*v^2-u^3-A*u^2-u).numerator())
例外情况
仅发生在 上的有限多个点 上。相反,对于 ,例外情况 仅发生在 上的有限多个点 上。 -
注意到
,所以 有定义, 且 那么 ,因此 是扭曲爱德华曲线。 进一步:
因此,通过 1 ,
双有理等价于 。
双有理等价中的特殊点。
定理3.2中,对于从
上的点 对应 上的二阶映射点 。该点和 是逆映射 的唯一例外点,其中 映射到无穷远点。 - 如果
是二次幂 (即 是二次幂),那么还有两个 的点,即 。这些点的阶为2,对应 中去奇异化的阶为2的无穷远点。 - 如果
是二次幂 (即 是二次幂),那么将有两个 的点,即 。这些点的阶为4,对应 中去奇异化的阶为4的无穷远点。
去扭曲。
根据定理 3.2,每条蒙哥马利曲线
我们现在陈述两种不需要扭曲的情况。定理 3.3 指出,每条具有 4 阶点的椭圆曲线双有理等价于 Edwards 曲线。定理 3.4 指出,在
定理3.3 选择一个域
( ),令 是 上的曲线。群 有一个阶为4的元素,当且仅当 双有理等价于 上的一条爱德华曲线。
证明:假设
相反,假设
下面的Sage程序验证了,当
R.<u,v,u4,v4>=QQ[]
d=1-4*u4^3/v4^2
S=R.quotient((v^2-u^3-(v4^2/u4^2-2*u4)*u^2-u4^2*u).numerator())
x=v4*u/(u4*v)
y=(u-u4)/(u+u4)
0==S((x^2+y^2-1-d*x^2*y^2).numerator())
例外情况
因此,有理映射
定理3.4 如果
,在有限域 k 上,每条蒙哥马利曲线双有理等价于爱德华曲线。
证明:确定
情况1:
情况2:
情况3:
在每种情况下,
这个定理不能推广到
定理3.5 有限域
满足 ,令 为蒙哥马利曲线,使 为二次幂,令 为非二次幂。
和它的非平凡二次扭曲 中的一个,恰好等价于 Edwards 曲线。 特别的,
双有理等价于 Edwards 曲线。
证明。因为
第二个陈述也遵循定理 3.3,因为
4、数据
众所周知,当
我们通过枚举所有完整的 Edwards 曲线、所有 Edwards 曲线、所有扭曲 Edwards 曲线(涵盖所有同构类的有限
这些实验的某些部分以前已经进行过。参见如,[15]。然而,文献中的信息不足以我们将 Edwards 曲线(和完整的 Edwards 曲线)与扭曲 Edwards 曲线进行比较。
对于 的素数的结果
- 对于原始爱德华曲线,有43对不同的
- 对于完整爱德华曲线,有504对不同的
- 对于爱德华曲线,有673对不同的
- 对于扭曲爱德华曲线,有842对不同的
- 对于群阶能被4整除的曲线,有842对不同的
- 对于椭圆曲线,有2014对不同的
我们更仔细地观察了
Cureves | Total | odd | 2*odd | 4*odd | 8*odd | 16*odd | 32*odd | 64*odd |
---|---|---|---|---|---|---|---|---|
original Edwards | 43 | 0 | 0 | 0 | 0 | 23 | 6 | 6 |
complete Edwards | 504 | 0 | 0 | 252 | 130 | 66 | 24 | 16 |
Edwards | 673 | 0 | 0 | 252 | 195 | 122 | 42 | 30 |
twisted Edwards | 842 | 0 | 0 | 421 | 195 | 122 | 42 | 30 |
4 divides group order | 842 | 0 | 0 | 421 | 195 | 122 | 42 | 30 |
all | 2014 | 676 | 496 | 421 | 195 | 122 | 42 | 30 |
通过测试一千多个
Curves | Total | odd | 2*odd | 4*odd | 8*odd |
---|---|---|---|---|---|
original Edwards | 0 | 0 | 0 | 0 | |
complete Edwards | 0 | 0 | |||
Edwards | 0 | 0 | |||
twisted Edwards | 0 | 0 | |||
4 divides group order | 0 | 0 | |||
all |
我们不认可关于蒙哥马利曲线集(或者,扭曲爱德华兹曲线集)和所有椭圆曲线集的统计数据的新颖性;所有这些统计数据都曾被观察过,其中一些已被证实。此外,[4, Abstract] 中指出了完整 Edwards 曲线的
对于 的素数的结果
对于
Cureves | Total | odd | 2*odd | 4*odd | 8*odd | 16*odd | 32*odd | 64*odd |
---|---|---|---|---|---|---|---|---|
original Edwards | 254 | 0 | 0 | 0 | 127 | 68 | 33 | 10 |
complete Edwards | 490 | 0 | 0 | 236 | 127 | 68 | 33 | 10 |
Edwards | 744 | 0 | 0 | 236 | 254 | 136 | 66 | 20 |
twisted Edwards | 744 | 0 | 0 | 236 | 254 | 136 | 66 | 20 |
4 divides group order | 822 | 0 | 0 | 314 | 254 | 136 | 66 | 20 |
all | 2012 | 680 | 510 | 314 | 254 | 136 | 66 | 20 |
通过测试一千多个
Curves | Total | odd | 2*odd | 4*odd | 8*odd |
---|---|---|---|---|---|
original Edwards | 0 | 0 | 0 | ||
complete Edwards | 0 | 0 | |||
Edwards | 0 | 0 | |||
twisted Edwards | 0 | 0 | |||
4 divides group order | 0 | 0 | |||
all |
和上面一样,我们不认可关于蒙哥马利曲线集和所有椭圆曲线集的统计数据的新颖性;我们将这些统计数据作为对比基础。
近素数群阶
我们还观察了
Cureves | prime | 2*prime | 4*prime | 8*prime | 16*prime | 32*prime |
---|---|---|---|---|---|---|
original Edwards | 0 | 0 | 0 | 25 | 22 | 9 |
complete Edwards | 0 | 0 | 48 | 25 | 22 | 9 |
Edwards | 0 | 0 | 48 | 50 | 44 | 18 |
twisted Edwards | 0 | 0 | 48 | 50 | 44 | 18 |
4 divides group order | 0 | 0 | 64 | 50 | 44 | 18 |
all | 148 | 100 | 64 | 50 | 44 | 18 |
当然,较大的素数 p 产生素数
5、同源:更多曲线
一条不与 Edwards 曲线同构的曲线,甚至与扭曲 Edwards 曲线也不同构的曲线,可能仍与扭曲 Edwards 曲线同源。本节特别表明,每条具有三个 2 阶点的曲线对于扭曲 Edwards 曲线都是 2-同源的。本节给出了一个曲线作为例子,它并不双理等价于扭曲 Edwards 曲线,但与扭曲 Edwards 曲线是 2-同源的。本节还讨论了在原始曲线的奇次子群中使用 2-同源进行标量乘法。
我们使用同源扩大扭曲爱德华曲线的覆盖范围,类似于Brier 和 Joye 在 [9] 中用同源扩大 “
定理 5.1 选择一个域
( )。在 k 上具有三个 2 阶 - 有理点的每条椭圆曲线在 上与扭曲 Edwards 曲线是 2 同源的。
证明。令
多项式
因此
参见 [22, Chapter III, Example 4.5]的例子。
由
椭圆曲线
一个数值例子。
在
例如,考虑 [7,附录 A.1,示例 11] 中给出的椭圆曲线。这是一条 Weierstrass 形式的曲线
椭圆曲线密码学中最重要的操作是椭圆曲线的素数阶子群中的标量乘法。考虑上面所示椭圆曲线的
- 计算
,其中 是这个曲线到扭曲 Edwards 曲线的 2 - 同源(在定理 5.1 证明中明确给出) - 在扭曲爱德华曲线上计算
。 - 计算
,其中 是对偶同源。
同源和对偶同源很容易计算,因此大部分时间花费在扭曲爱德华兹曲线上的标量乘法。
6、扭曲爱德华曲线的计算
选择一个域
扭曲爱德华曲线加法法则
令
中性元素为
对于加法定律的正确性,可以发现它与
这些公式也适用于加倍。如果
投影扭曲爱德华兹坐标
为了避免反演,我们研究扭曲爱德华兹曲线的投影。
对于
我们在 Sage 的帮助下,按照 Explicit-Formulas Database 的方法检验了以下加法和倍点公式。
投影扭曲坐标的加法
下面的公式用10M + 1S + 2D + 7add,计算出
- 注:此处的 M 表示乘法,S表示平方,D表示倍点,add表示加法,也就是说这次加法运算需要10次乘法,1次平方,2次倍点,7次加(减)法
投影扭曲坐标的倍点
下面的公式用3M + 4S + 1D + 7add,计算出
消去投影坐标中的分母
当 a 是 k 中的二次幂时,这是扭曲 Edwards 曲线
当
使用 [4, Section 4] 中的公式,可以用 3M + 4S + 6add 在
我们给出的
反转扭曲爱德华兹坐标
避免反演的另一种方法是让曲线
Bernstein 和 Lange 在 [5] 中针对 a = 1 的情况介绍了这些倒置坐标,并观察到坐标会更节省时间。我们将其推广到任意
反转扭曲坐标中的加法
下面的公式用 9M + 1S + 2D + 7add,计算出
反转扭曲坐标中的倍点
下面的公式用3M + 4S + 2D + 6add,计算出
消去反转坐标中的分母
以下公式用 9M + 1S + 3D + 7add 计算了在
以下公式用 3M + 4S + 3D + 5add 计算了在
更多参数
可以考虑更一般的曲线方程
其加法法则为:
我们没有为这种推广提供明确的公式;这些曲线总是与扭曲 Edwards 曲线同构。然而,我们认为,存在这样的曲线,它的额外参数可以节省一点点计算时间。
7、爱德华与扭曲爱德华
我们引入了扭曲 Edwards 曲线作为 Edwards 曲线的推广。这种推广对实际的加密用途有用吗?
第 4 节表明,在
即使椭圆曲线可以用 Edwards 形式表示,以扭曲 Edwards 形式表示相同的曲线通常也可以节省算术时间。在本节中,我们回顾了以最快速度为目标的实现者所面临的问题。我们举例说明扭曲 Edwards 曲线对面临外部指定曲线的实现者的效果,以及对自由选择自己曲线的实现者的效果。
扭曲如何节省时间
下表总结了 Edwards 曲线上的标准(投影)坐标、扭曲 Edwards 曲线上的标准坐标、Edwards 曲线上的倒置坐标和扭曲 Edwards 曲线上的倒置坐标中的加法和倍点速度。
Coordinates | Source of algorithms | Addition | Doubling |
---|---|---|---|
Edwards | [4, §4] | 10M+1S+1D (mult by d/a) | 3M+4S |
Edwards | this paper (clearing denoms) | 10M+1S+3D (mult by a, a, d) | 3M+4S |
Twisted Edwards | this paper | 10M+1S+2D(mult by a, d) | 3M+4S+1D(mult by a) |
Inverted Edwards | [5, §§4–5] | 9M+1S+1D(mult by d/a) | 3M+4S+1D(mult by d/a) |
Inverted Edwards | this paper(clearing denoms) | 10M+1S+3D(mult by a, a, d) | 3M+4S+3D(mult by a, a, d) |
Inverted twisted Edwards | this paper | 9M+1S+2D(mult by a, d) | 3M+4S+2D(mult by a, d) |
如果曲线 E 可表示为 Edwards 曲线,我们有没有理由将 E 的更一般表达式视为扭曲 Edwards 曲线?看一眼上表,答案可能是否定的:扭曲似乎在每个坐标系和每个组操作中都失去一维,而没有获得任何东西。但是,有很多情况答案是肯定的!
具体来说,不是对
例如, 在 Edwards 曲线出现之前,[1] 中使用的曲线 “Curve25519” 来记录 Diffie-Hellman 在椭圆曲线上的速度。Curve25519 是
这种现象并非偶然。蒙哥马利曲线
Edwards 曲线和扭曲 Edwards 曲线之间的选择,与标准 Edwards 坐标和反 Edwards 坐标之间的选择相互联系。频繁的加法使反转 Edwards 坐标的表现更好。大的
选择扭曲 Edwards 曲线
通常,实现者可以自由选择自己的曲线以获得最佳速度。为了说明这种灵活性的好处,我们研究了几个模数大小在:
对于
对于
如果以其他方式防止主动小子群攻击,则可以找到更小的
References
- Daniel J. Bernstein, Curve25519: new Diffie-Hellman speed records, in PKC 2006[25] (2006), 207–228. URL: http://cr.yp.to/papers.html#curve25519. Citations in this document: §7, §7, §7.
- Daniel J. Bernstein, Peter Birkner, Tanja Lange, Christiane Peters, ECM using Edwards curves (2007). URL: http://eprint.iacr.org/2008/016. Citations in this document: §1.
- Daniel J. Bernstein, Tanja Lange, Explicit-formulas database (2007). URL: http://hyperelliptic.org/EFD. Citations in this document: §5, §6.
- Daniel J. Bernstein, Tanja Lange, Faster addition and doubling on elliptic curves, in Asiacrypt 2007 [19] (2007), 29–50. URL: http://cr.yp.to/papers.html#newelliptic. Citations in this document: §1, §1, §2, §2, §2, §3, §3, §3, §3, §3,§3, §4, §6, §6, §6, §7, §7.
- Daniel J. Bernstein, Tanja Lange, Inverted Edwards coordinates, in AAECC 2007 [8] (2007), 20–27. URL: http://cr.yp.to/papers.html#inverted. Citations in this document: §1, §6, §7.
- Olivier Billet, Marc Joye, The Jacobi model of an elliptic curve and side-channel analysis, in AAECC 2003 [14] (2003), 34–42. MR 2005c:94045. URL: http://eprint.iacr.org/2002/125. Citations in this document: §5.
- Ian F. Blake, Gadiel Seroussi, Nigel P. Smart, Elliptic curves in cryptography, Cambridge University Press, 2000. ISBN 0–521–65374–6. MR 1 771 549. Citations in this document: §5.
- Serdar Boztas, Hsiao-Feng Lu (editors), Applied algebra, algebraic algorithms and error-correcting codes: 17th international symposium, AAECC-17, Banga-lore, India, December 2007, proceedings, Lecture Notes in Computer Science, 4851, Springer, 2007. See [5].
- ́Eric Brier, Marc Joye, Fast point multiplication on elliptic curves through isogenies,in AAECC 2003 [14] (2003), 43–50. Citations in this document: §5.
- Henri Cohen, Gerhard Frey (editors), Handbook of elliptic and hyperelliptic curve cryptography, CRC Press, 2005. ISBN 1–58488–518–1. MR 2007f:14020. See [11].
- Christophe Doche, Tanja Lange, Arithmetic of elliptic curves, in [10] (2005), 267–\302. MR 2162729. Citations in this document: §3.
- Sylvain Duquesne, Improving the arithmetic of elliptic curves in the Jacobi model,Information Processing Letters 104 (2007), 101–105. Citations in this document:§5.
- Harold M. Edwards, A normal form for elliptic curves, Bulletin of the American Mathematical Society 44 (2007), 393–422. URL: http://www.ams.org/bull/2007-44-03/S0273-0979-07-01153-6/home.html. Citations in this document: §1.Twisted Edwards Curves 17
- Marc Fossorier, Tom Høholdt, Alain Poli (editors), Applied algebra, algebraic al-gorithms and error-correcting codes: 15th international symposium, AAECC-15,Toulouse, France, May 2003, proceedings, Lecture Notes in Computer Science,2643, Springer, 2003. ISBN 3–540–40111–3. MR 2004j:94001. See [6], [9].
- Steven D. Galbraith, James McKee, The probability that the number of points on an elliptic curve over a finite field is prime, Journal of the London Mathematical Society 62 (2000), 671–684. URL: http://www.isg.rhul.ac.uk/~sdg/pubs.html. Citations in this document: §4.
- Huseyin Hisil, Gary Carter, Ed Dawson, New formulae for efficient elliptic curve arithmetic, in [23] (2007). Citations in this document: §5.
- Huseyin Hisil, Kenneth Wong, Gary Carter, Ed Dawson, Faster group operationson elliptic curves, 25 Feb 2008 version (2008). URL: http://eprint.iacr.org/2007/441. Citations in this document: §5.
- Hideki Imai, Yuliang Zheng (editors), Third international workshop on practice and theory in public key cryptosystems, PKC 2000, Melbourne, Victoria, Aus-tralia, January 18–20, 2000, proceedings, Lecture Notes in Computer Science, 1751,Springer, 2000. ISBN 978–3–540–66967–8. See [21].
- Kaoru Kurosawa (editor), Advances in cryptology — ASIACRYPT 2007, Lecture Notes in Computer Science, 4833, Springer, 2007. See [4].
- Peter L. Montgomery, Speeding the Pollard and elliptic curve methods of factor-ization, Mathematics of Computation 48 (1987), 243–264. ISSN 0025–5718. MR 88e:11130. URL: http://links.jstor.org/sici?sici=0025-5718(198701)48:177243:STPAEC2.0.CO;2-3. Citations in this document: §3, §7.
- Katsuyuki Okeya, Hiroyuki Kurumatani, Kouichi Sakurai, Elliptic curves with the Montgomery-form and their cryptographic applications, in PKC 2000 [18] (2000), 238–257. Citations in this document: §3, §3.
- Joseph H. Silverman, The arithmetic of elliptic curves, Graduate Texts in Mathe-matics, 106, Springer, 1986. Citations in this document: §5.
- Kannan Srinathan, C. Pandu Rangan, Moti Yung (editors), Progress in cryptology—INDOCRYPT 2007: 8th international conference on cryptology in India, Chennai, India, December 2007, proceedings, Lecture Notes in Computer Science, 4859, Springer, 2007. See [16].
- William Stein (editor), Sage Mathematics Software (Version 2.8.12), The Sage Group, 2008. URL: http://www.sagemath.org. Citations in this document: §3.
- Moti Yung, Yevgeniy Dodis, Aggelos Kiayias, Tal Malkin (editors), 9th international conference on theory and practice in public-key cryptography, New York, NY, USA, April 24–26, 2006, proceedings, Lecture Notes in Computer Science, 3958, Springer, 2006. ISBN 978–3–540–33851–2. See [1]
Comments NOTHING