# 楕円曲線2 問題文 楕円曲線E: y^2 = x^3 + ax + b(D := -16(4a^2-27b^2) ≠ 0)の点の座標成分が有限体Fp={0, 1, ..., p-1}の元である場合を考えましょう.ただし,pは2,3以外の素数です. E = E(Fp)をFp上の楕円曲線として,BをE上の点とし,Bをベースポイントと呼びます.このとき,Bを底とする離散対数問題が与えられます. xB = P となり,整数xを求める問題になります. p=5, ベースポイントを(2,4),y^2 = x^3 + 21x + 1とするとき,位数とkBを答えなさい CSL24{Bの位数:kB} 例 B の位数= 4 kB= [(0 : 1 : 0), (4 : 1 : 1), (3 : 0 : 1), (4 : 4 : 1)] ならば, CSL24{4:(0 : 1 : 0), (4 : 1 : 1), (3 : 0 : 1), (4 : 4 : 1)} 解法 問題文1と同様に問題文に合うように修正すればOKです. ``` E=EllipticCurve(GF(p), [21, 1]) B= E(2,4) kB=[] k=0 while k*B not in kB: #k*B== kB kB.append(k*B) k+=1 print("B の位数: ",k) print("kB: ", kB) ``` CSL24{3:(0 : 1 : 0), (2 : 4 : 1), (2 : 1 : 1)}