公開鍵暗号(4): 楕円曲線における離散対数問題

9

Click here to load reader

Upload: joe-suzuki

Post on 04-Jul-2015

276 views

Category:

Documents


1 download

DESCRIPTION

実験数学3 (大阪大学理学部数学科 3年・4年) 鈴木 譲 2014年5月15日

TRANSCRIPT

Page 1: 公開鍵暗号(4): 楕円曲線における離散対数問題

.

.

楕円曲線

実験数学 3(大阪大学理学部数学科 3年・4年)第 4回: 楕円曲線における離散対数問題

鈴木 譲

大阪大学

2014年 5月 15日

.

.

.

.

1 / 9

.

実験数学 3, (大阪大学理学部数学科 3 年・4 年), 第 4 回: 楕円曲線における離散対数問題

Page 2: 公開鍵暗号(4): 楕円曲線における離散対数問題

.

.

楕円曲線

楕円曲線

K : 体a, b ∈ K (4a2 + 27b3 ̸= 0 ⇐⇒ x3 + ax + b = 0が重解なし)

E0(K ) := {(x , y) ∈ K 2|y2 = x3 + ax + b}

例: K = Q, a = 1, b = 2 (4 · 23 + 27 · 22 ̸= 0)

x = 1 =⇒ y = ±2 ∈ Q =⇒ (1,±2) ∈ E0(Q)

x = 0 =⇒ y = ±√2 ̸∈ Q =⇒ (0,±

√2) ̸∈ E0(Q)

K = F11, a = 1, b = 6 (4 · 13 + 27 · 62 = 8 ̸= 0)

x = 2 =⇒ y2 = 5 =⇒ (2, 4), (2, 7) ∈ E0(F11)

x = 3 =⇒ y2 = 3 =⇒ (3, 5), (3, 6) ∈ E0(F11)

x = 0, 1, 4, 6, 9では、F11で、y の値 (平方根)が存在しない

.

.

.

.

2 / 9

.

実験数学 3, (大阪大学理学部数学科 3 年・4 年), 第 4 回: 楕円曲線における離散対数問題

.

Page 3: 公開鍵暗号(4): 楕円曲線における離散対数問題

.

.

楕円曲線

P(xP , yP),Q(xQ , yQ) ∈ E0(K )の演算を以下で定義:

.

..

1 xP ̸= xQ のとき、P,Q を結ぶ直線と y2 = x3 + ax + bとの交点がR(xR , yR)であれば、P + Q = (xR ,−yR)

.

.

.

2 P = Q のとき、直線を接線と考えて、P + Q = (xP+Q , yP+Q) = (xR ,−yR)を計算

.

.

.

3 xP = xQ , yP ̸= yQ(⇐⇒ xP = xQ , yP = −yQ)のとき (P = −Q とかく)、xP ∈ K によらず O ̸∈ E0(K ) (無限遠点)

.

.

.

.

3 / 9

.

実験数学 3, (大阪大学理学部数学科 3 年・4 年), 第 4 回: 楕円曲線における離散対数問題

.

Page 4: 公開鍵暗号(4): 楕円曲線における離散対数問題

.

.

楕円曲線

xP , yP , xQ , yQ ∈ K =⇒ xP+Q , yP+Q ∈ K

P ̸= ±Q のとき、

k =yQ − yPxQ − xP

Y = yP + k(X − xP)

(yP + k(X − xP))2 = X 3 + aX + b

X 3 − k2X 2 + · · · = 0

xP + xQ + xR = k2{xP+Q = xR = k2 − xP − xQ ∈ KyP+Q = −yR = −{k(xR − xP) + yP} ∈ K

P = Q のとき、xP = xQ

2YY ′ = 3X 2 + a , k =3x2P + a

2yP

2yP = 0 ⇐⇒ yP = −yP ⇐⇒ P = −Q

.

.

.

.

4 / 9

.

実験数学 3, (大阪大学理学部数学科 3 年・4 年), 第 4 回: 楕円曲線における離散対数問題

.

Page 5: 公開鍵暗号(4): 楕円曲線における離散対数問題

.

.

楕円曲線

例: K = F11, a = 1, b = 6E0(K ) = {(2, 4), (2, 7), (3, 5), (3, 6), (5, 2), (5, 9), (7, 2), (7, 9),(8, 3), (8, 8), (10, 2), (10, 9)}

(2, 4) + (2, 7) = O

(2, 4) + (3, 5) = (7, 2)

(2, 4) + (2, 4) = (5, 9)

.

.

.

.

5 / 9

.

実験数学 3, (大阪大学理学部数学科 3 年・4 年), 第 4 回: 楕円曲線における離散対数問題

.

Page 6: 公開鍵暗号(4): 楕円曲線における離散対数問題

.

.

楕円曲線

E (K ) := E0(K ) ∪ {O}は可換群

O +O = O , P ∈ E0(K ) =⇒ P +O = O + P = P

(結合法則の証明は、計算が膨大のため省略)

.

.

.

.

6 / 9

.

実験数学 3, (大阪大学理学部数学科 3 年・4 年), 第 4 回: 楕円曲線における離散対数問題

.

Page 7: 公開鍵暗号(4): 楕円曲線における離散対数問題

.

.

楕円曲線

有限巡回群< P >, P ∈ E (Fp)

m ∈ N+として、

[m]P := P + · · ·+ P︸ ︷︷ ︸m

[0]P := O

[−m]P := −(P + · · ·+ P︸ ︷︷ ︸m

)

E (Fp)は一般には巡回群ではないが、有限群なので、各P ∈ E (Fp)で [m]P = Oなるm ∈ Zが存在 (正の最小のmが位数)例: K = F11, a = 1, b = 6

[3](2, 4) = [2](2, 4) + (2, 4) = (5, 9) + (2, 4) = (8, 8)

E (K ) = E0(K ) ∪ {O}が 13個の元をもつので、巡回群

[13](2, 4) = O

.

.

.

.

7 / 9

.

実験数学 3, (大阪大学理学部数学科 3 年・4 年), 第 4 回: 楕円曲線における離散対数問題

.

Page 8: 公開鍵暗号(4): 楕円曲線における離散対数問題

.

.

楕円曲線

離散対数問題

β ∈< α >= G について、αx = βなる 1 ≤ x ≤ |G |を見出す

.

.

.

1 G = F∗p = {1, · · · , p − 1} (mod pでの乗算)

.

.

.

2 P ∈ E (Fp)として、G =< P >

.

楕円曲線の離散対数問題

.

.

.

. ..

.

.

Index Calculusが適用できないため、計算量の多い方法を使わないと、解読できないので安全

.

.

.

.

8 / 9

.

実験数学 3, (大阪大学理学部数学科 3 年・4 年), 第 4 回: 楕円曲線における離散対数問題 .

Page 9: 公開鍵暗号(4): 楕円曲線における離散対数問題

.

.

楕円曲線

参考: E (Fp)の群としての性質

.

E (Fp)は階数が 1または 2

.

.

.

. ..

.

.

E (Fp) ∼= Z/mZ⊕ Z/nZ

n|m, n|p − 1

例: K = F11, a = 1, b = 6は、巡回群 (階数 1)。

.

Hasse-Weil

.

.

.

. ..

.

.

p + 1− 2√p ≤ |E (Fp)| ≤ p + 1 + 2

√p

例: K = F11, a = 1, b = 6のとき、p = 11, |E (Fp)| = 13

< P >の位数を大きくするために、E (Fp)が巡回群となるような楕円曲線を選ぶ

< P >の位数を計算して、大きな素因数を含んでいることを確認。

.

.

.

.

9 / 9

.

実験数学 3, (大阪大学理学部数学科 3 年・4 年), 第 4 回: 楕円曲線における離散対数問題 .