对于椭圆曲线y^2 = x^3 +3x+7,我发现了有限群E(\mathbb{F}_{11})= \left\{ \mathcal{O}, (1,0),(5,2),(5,9),(8,2),(8,9),(9,2),(9,9),(10,5),(10,6) \right\}。
我必须找到一个E(\mathbb{F}_{11})子群的生成器,但是对于E(\mathbb{F}_{11})中的每一点P,当我试图计算[2]P时,我得到一个有理数。我做错什么了吗?
例如,如果P=(5,2)用公式x([2]P)={(\frac{3x_1^2+a}{2y_1})}^2-2x_1,其中a是椭圆曲线中x旁边的系数,x_1是P的第一个坐标,y_1是第二个坐标。但我得到了x([2]P) = (\frac{3*25+3}{2*2})^2-2*5 =(\frac{39}{2})^2-10 。我应该忽略分母,使用(\frac{39}{2})^2-10 =\frac{1521-10*16}{16}=\frac{1361}{16},x的答案是1361 mod 11= 8吗?
发布于 2020-01-07 18:23:06
在椭圆曲线代数中,运算是在字段字段上计算的。在您的例子中,字段是\mathbb{F}_{11}。
\mathbb{F}_{11}是一个包含11个元素(\{0,1,2,...,10\})的有限域,与每个域一样,也存在加法和乘法律。这两个定律在模11整数环上起作用(通常是\mathbb{Z}/11\mathbb{Z})。
在\mathbb{F}_{11}中,当我们编写{(\frac{39}{2})}^2 - 10 = \frac{1481}{4} = \frac{7}{4}时,它实际上是4模11的7倍,这是3,因为3*4 = 1模块11。
计算一个逆模--一个整数可以用扩展欧氏算法完成。下面是反表;
在您的示例中,[2]P的x坐标是7*3 = 10 ( \mathbb{F}_{11}的一个元素)。
https://crypto.stackexchange.com/questions/76862
复制相似问题