-y_Qの場合、加算は無限遠点に。caseは無視できる。1である5回additionsを計算することで、mPが計算できる。fieldはほぼ同じセキュリティ。spaceで計算する。curveだと加算と2倍算の公式が同じになり、3倍算の公式も存在する。dx^2y^2以下のパラメータでcurveの種類が変わる。order):群のある元を生成元として有限部分巡回群が作れるとき、その部分巡回群の位数。(非自明な部分群)ラグランジェの定理:群Gの部分群の位数は、Gの位数の約数になる。105}のいずれかになる。pointに群の位数をかけるとkilledされ無限遠点に送られる。C複素数全体や位数が2か3ではない有限体の代数的閉体で考える。1では因数分解できないので代数的閉体ではない。有限体にも元を追加していくことで代数的閉体にできる。3番目までのLSBを全てゼロにする。pointを乗算した時にOになるようにしている。shareは0になる。1}の場合はkilledされ無限遠点になる。逆に素数群上であれば8をかけてもゼロにはならない。これらは、楕円曲線上の点に対してその群の位数をかけると無限遠点に飛ばされる性質を利用している。fieldで実装されることが多い。m_1m_2)が成立する。https://qiita.com/drken/items/ae02240cd1f8edfc86fdECDLPの攻撃ベクタは楕円曲線の最も大きな素数subgroupのサイズに依存するので群の位数はできるだけ素数に近くなるようにすべき。QのECDLPを攻撃するためにはナイーブにはMAX位数回分、繰り返しかけてi=kとなるようなiを見つけること。subgroupにマップし、そのsubgroup位数内でかけて解くことができる。群の位数に対して元の位数が大きくなるほどcofactorが大きくなる。20で成り立つことがわかる。これをそれぞれに対して行い中国剰余定理を用いることでk=687が求まり、j=23が計算のボトルネックになっていることがわかる。2\sqrt{q}の間に存在する。PのときにPは楕円曲線上の点になる。要は、楕円曲線上の点のx、y座標をそれぞれ有限体巾乗すると元の点に移る。tをフロベニウス自己準同型写像のトレースと呼ぶ。(modp)を高速に求める計算アルゴリズム。O(log(p))で計算できるので有限体の逆数の求め方としてFermatの小定理は拡張Euclidの互除法と同程度の計算量になる。iを加えて複素数体(二次拡大体)できるのと同様に有限体に対しても拡大体を作る。複素数体は代数的閉包であり複素数係数のどんな多項式も一次式の積に因数分解できる。F_{7^2}になるベクトル空間は体におけるスカラー積の演算が外部算法(他の集合の元との演算)である構造。F上のベクトル空間F上の多項式:多項式の係数が体Fに含まれる数。解がなす体は係数体の拡大体となることが多い。代数学の基本定理より複素数体まで拡大すればn次方程式においてn個全ての解が見つかる。体F上のn方程式がF上に全ての解を持つとき、一次式の積の形に式変形することができ「F上で因数分解可能である」と言える。これは解の存在性を保証するだけで代数的に解けるかどうかはガロア理論。「体F上の方程式が解けるかどうか」と「FとCの間の方程式の解を全て含む体にFをうまく拡大することができるか」という問題が同値。Dはcurve上の点の有限和。E(\overline{F_q})}n_p(P)curveの零点(zeroes)と関数の極(poles)の関係性を定義する。ord_a(g)2つの関数の積の位数はそれぞれの関数の位数の和になる2つの関数の和の位数は小さい方の位数になる。対してそのy座標を返す関数を考えると零点の位数は1になり、極の位数は-3になる。\Sigma_in_i(P_i)とすると以下が成り立つ。\Sigma_in_iP_i=Oつまり、関数の零点や極がn個ある時、n-1個の点の位置を決めると、残りの位置が一意に決まる。通常の楕円曲線はgenus(種数)が1でトーラスの穴が一つ。f(div(g))=g(div(f))が成立する。reciprocityを利用できず、P,Qが同じ集合だとdivisorが衝突してしまう。Qは互いに素集合で同じ素数位数rのsubgroup上である必要。r-torsionは位数rのr+1個subgroupから成る。mapは以下のように定義。7-torsionはこの3次拡大体のcurveに含まれている。7-torsionは下図のように49点あり、位数7の8個のsubgroupから成る。mapはkの乗算として作用する。Trはtorsion内に移す。F_q上に定義されたr-torion内の位数rのsubgroupが存在。subgroupを定義できる。mapは常に他のsubgroupに写像する訳ではない。mapを用いて移すことができる。G_2の定義によって異なる。