【密碼學競賽】橢圓曲線上的計算(多倍點問題)

我們現在所要解決的問題是實數域上的橢圓曲線問題,故方程式爲:y2y^2=x3x^3+axax+b

1、已知點G=(2,7)在橢圓曲線E11(1,6)上,計算2G的值。
(1)已知橢圓曲線方程E11爲:y2y^2=x3x^3+xx+6(mod 11)
(2)求G與曲線相切時的斜率(即求導),得到直線方程
(3)將直線方程代入曲線方程,解一個三次方程

具體步驟及推導過程如下圖所示:

在這裏插入圖片描述
關於分數求模的具體做法可以參考這篇文章。

在推導的時候我弄錯了一件事,以致於怎麼推導,y3y_3的符號都不對,那就是P+Q並不在PQ上,而是在-PQ上,即P+Q關於x軸的對稱點在PQ上。

直線PQ的斜率爲k。
k={y2y1x2x1,PQ3x2+a2y,P=Q k=\left\{ \begin{array}{l} \frac {y_2-y_1}{x_2-x_1},P \neq Q \\ \frac{3x^2+a}{2y},P = Q \end{array} \right.

P+Q的座標(x3,y3)(x_3,y_3)
{x3=k2x1x2y3=k(x1x3)y1 \left\{ \begin{array}{l} {x_3}=k^2-x_1-x_2 \\ {y_3}=k(x_1-x_3)-y_1 \end{array} \right.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章