9
代数曲線とその応用論文小特集 素数位数を有する楕円曲線の構成とその計算量評価 堀内 啓次† 笠原 正雄† 布田 裕一†† 隆一・††† 金子 昌信†††† Construction of Elliptic Curves with Prime Order and Comprexity Keiji HORIUCHIt, Yuichi FUTAtt, Ryuichi SAKAIttt, M and Masao KASAHARAt あらまし 楕円暗号において,楕円曲線の群の位数は重要なパラメータである.特に,その位数が素数であ ることが望ましい.楕円曲線の位数を計算する方法としてSchoofのアルゴリズム及びそれを改良したElkies, Atkinのアルゴリズムが知られている.本論文ではSchoofの改良アルゴリズムを用いた素数位数を有する楕円 曲線の効率的な構成法を示す.更に,楕円曲線の位数分布及び位数が素数である確率を導出した後,素数位数を 有する楕円曲線の構成に必要な計算量を評価する.また,法pの条件による計算:時間の違いについて考察する. キーワード 楕円曲線,素数位数,計算量 1.まえがき 近年における情報化社会の急速な発展により,情報 通信システムを介した情報交換の重要性がますます高 まっている.これに伴い,情報内容や個人情報の保護 を目的とした情報セキュリティ技術の研究が活発にな われている.こうした流れの中,昨今,特に注目され ている方式として楕円曲線を利用した暗号方式(楕円 暗号)を挙げることができる.楕円曲線を利用するこ とによる有利な点はその離散対数問題を解く準指数時 間のアルゴリズムが存在しないことである. 楕円暗号に対する攻撃法として,Baby-Step Giant- Stepを用いた攻撃M.0.V Reductionを用いた攻 撃[1],及び,anomalousな楕円曲線に対する攻撃[2] †京都工芸繊維大学工芸学部電子情報工学科,京都市 Department of Electronics and lnformation Science, Kyoto Institute of Technology, Matsugasaki, Sakyo-ku, Kyoto-shi, 606-8585 Japan ††松下電器産業株式会社マルチメディア開発センター,門真市 Multimedia Development Center, Matsushita Electric ln- dustrial Co., Ltd., 1006 Kadoma, Kadoma-shi, 571-8501 Japan †††大阪電気通信大学工学部,寝屋川市 Department of Applied Electronics, Osaka Electro Commu- nication University, Neyagawa-shi, 572-8530 Japan ††††九州大学大学院数理学研究科,福岡市 Graduate School of Mathematics, Kyushu University, 6-10- 1 Hakozaki, Higashi-ku, F’ukuoka-shi, 812-8581 Japan が挙げられる.素体Fp上の楕円曲線のFp有理点を 考える場合,これらの攻撃に対して安全であるための 条件は,#E(Fp)がp, p+1でないこと,及び,その 最大素因数が十分大きいことである.一方,楕円暗号 の効率を上げるためには,法pのサイズを小さくする ことが効果的である.したがって,一定の安全性を保 ちつつ暗号化及び復号の計算効率を上げるためには素 数位数の楕円曲線がより好ましい.素対]Fp上の楕円 曲線の位数を求める方法として,Schoofのアルゴリズ ム[3]が知られており,Elkies, Atkinらはこのアルゴ リズムを改良している[4]~[司.このアルゴリズムは SEAのアルゴリズムと呼ばれており,実用的な時間で の位数計算が可能である.最近,伊豆,小暮らはSEA アルゴリズムで用いるパラメータを適切に設定するこ とにより,高速な位数計算を実装している[7]. 本論文では,2.でSEAのアルゴリズムに基づいて, 素数位数を有する素体IFp上の楕円曲線を効率的に構 成する手法を考察する.2.2ではアルゴリズムの分岐 点での分岐確率を導出し,その証明を与える.また, 3.で楕円曲線の位数分布を明らかにし,位数が素数で ある確率を導出する.更に,4.で素数位数を有する楕 円曲線の構成に必要な計算量を求め考察する.また, 法pの条件による計算:時間の変化を2.及び3.での解 析結果に基づいて調べる. 電子情報通信学会論文誌 A Vol. j82-A No.8 pp.1269-1277 1999年8月 1269

素数位数を有する楕円曲線の構成とその計算量評価mkaneko/papers/21素数...SEAのアルゴリズムと呼ばれており,実用的な時間で の位数計算が可能である.最近,伊豆,小暮らはSEA

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 素数位数を有する楕円曲線の構成とその計算量評価mkaneko/papers/21素数...SEAのアルゴリズムと呼ばれており,実用的な時間で の位数計算が可能である.最近,伊豆,小暮らはSEA

代数曲線とその応用論文小特集

素数位数を有する楕円曲線の構成とその計算量評価

堀内 啓次†

笠原 正雄†

布田 裕一†† 境 隆一・††† 金子 昌信††††

Construction of Elliptic Curves with Prime Order and Estimation of lts

Comprexity

Keiji HORIUCHIt, Yuichi FUTAtt, Ryuichi SAKAIttt, Masanobu KANEKOtttt,

and Masao KASAHARAt

 あらまし 楕円暗号において,楕円曲線の群の位数は重要なパラメータである.特に,その位数が素数であ

ることが望ましい.楕円曲線の位数を計算する方法としてSchoofのアルゴリズム及びそれを改良したElkies,

Atkinのアルゴリズムが知られている.本論文ではSchoofの改良アルゴリズムを用いた素数位数を有する楕円

曲線の効率的な構成法を示す.更に,楕円曲線の位数分布及び位数が素数である確率を導出した後,素数位数を

有する楕円曲線の構成に必要な計算量を評価する.また,法pの条件による計算:時間の違いについて考察する.

 キーワード 楕円曲線,素数位数,計算量

1.まえがき

 近年における情報化社会の急速な発展により,情報

通信システムを介した情報交換の重要性がますます高

まっている.これに伴い,情報内容や個人情報の保護

を目的とした情報セキュリティ技術の研究が活発にな

われている.こうした流れの中,昨今,特に注目され

ている方式として楕円曲線を利用した暗号方式(楕円

暗号)を挙げることができる.楕円曲線を利用するこ

とによる有利な点はその離散対数問題を解く準指数時

間のアルゴリズムが存在しないことである.

 楕円暗号に対する攻撃法として,Baby-Step Giant-

Stepを用いた攻撃M.0.V Reductionを用いた攻

撃[1],及び,anomalousな楕円曲線に対する攻撃[2]

 †京都工芸繊維大学工芸学部電子情報工学科,京都市

  Department of Electronics and lnformation Science, Kyoto

  Institute of Technology, Matsugasaki, Sakyo-ku, Kyoto-shi,

  606-8585 Japan ††松下電器産業株式会社マルチメディア開発センター,門真市

  Multimedia Development Center, Matsushita Electric ln-

 dustrial Co., Ltd., 1006 Kadoma, Kadoma-shi, 571-8501

  Japan†††大阪電気通信大学工学部,寝屋川市

  Department of Applied Electronics, Osaka Electro Commu-

  nication University, Neyagawa-shi, 572-8530 Japan

††††九州大学大学院数理学研究科,福岡市

 Graduate School of Mathematics, Kyushu University, 6-10-

  1 Hakozaki, Higashi-ku, F’ukuoka-shi, 812-8581 Japan

が挙げられる.素体Fp上の楕円曲線のFp有理点を

考える場合,これらの攻撃に対して安全であるための

条件は,#E(Fp)がp, p+1でないこと,及び,その

最大素因数が十分大きいことである.一方,楕円暗号

の効率を上げるためには,法pのサイズを小さくする

ことが効果的である.したがって,一定の安全性を保

ちつつ暗号化及び復号の計算効率を上げるためには素

数位数の楕円曲線がより好ましい.素対]Fp上の楕円

曲線の位数を求める方法として,Schoofのアルゴリズ

ム[3]が知られており,Elkies, Atkinらはこのアルゴ

リズムを改良している[4]~[司.このアルゴリズムは

SEAのアルゴリズムと呼ばれており,実用的な時間で

の位数計算が可能である.最近,伊豆,小暮らはSEA

アルゴリズムで用いるパラメータを適切に設定するこ

とにより,高速な位数計算を実装している[7].

 本論文では,2.でSEAのアルゴリズムに基づいて,

素数位数を有する素体IFp上の楕円曲線を効率的に構

成する手法を考察する.2.2ではアルゴリズムの分岐

点での分岐確率を導出し,その証明を与える.また,

3.で楕円曲線の位数分布を明らかにし,位数が素数で

ある確率を導出する.更に,4.で素数位数を有する楕

円曲線の構成に必要な計算量を求め考察する.また,

法pの条件による計算:時間の変化を2.及び3.での解

析結果に基づいて調べる.

電子情報通信学会論文誌 A Vol. j82-A No.8 pp.1269-1277 1999年8月 1269

Page 2: 素数位数を有する楕円曲線の構成とその計算量評価mkaneko/papers/21素数...SEAのアルゴリズムと呼ばれており,実用的な時間で の位数計算が可能である.最近,伊豆,小暮らはSEA

2.素数位数をもつ楕円曲線の構成法

 本章では,楕円曲線の位数計算法であるSch◎ofの

アルゴリズム,及びその改良アルゴリズムであるSEA

アルゴリズムについて,必要最小限の概要を2.1で紹

介する.また,2。2でSEAアルゴリズムの分岐点での

分鼓確率を導出し証明を与える.更に,2. 3で素数位

数を有する楕円曲線の効率的な構成法を示す。Sch◎of

のアルゴリズム及びSEAアルゴリズムの詳細に関し

ては付録を参照されたい.なお,以下において,素

数位数を有する楕円曲線をEPO(elliptic curve with

prime order)と略記する.

 2.1 Schoof及びSEA改良アルゴリズム

 Schoofのアルゴリズムは,固有方程式暢一麺ρ+T}・=

0のトレースtを楕円導線の9等分多項式を用いて,

t(med 1)を求めることによりt(ltl≦2v効を求

め,楕円曲線の位数#E(Fp)=p十1-tを求める

アルゴリズムである.ただし,t mod 9の算出は素数

1=2,3,5, 7,…の順に行う。

 SEAアルゴリズムは, t (mod 1)を求める部分に,

ω(学)一・のとき脳・・のア・レゴリズム

(2)(孕)一一1のときAtkinのア/レゴリズム

を適用する.また,t(m◎d 9)が確定した時点で

Isogeny Cycle法[8]を適用し, t (mod 12,13,…)を

       ま求める.以下(が一4ρ 暑)が1,◎,一1の場合をそれぞれ

Case一一Elkies, Case-Schoof, Case-Atkinと呼ぶことに

する.なお,Case-Atkinの手法はt (mod 1)の候補

を求めるものであり,t (m◎d 1)は確定しない.

 2.2 SEAアルゴリズムにおける分岐確率の導出

 ここで,SEAアルゴリズムにおいてCase-Elkies,

Case-Schoofへ分岐し, t (modのが確定する確率を

求めておく.各1においてCase-Elkies,及びCase-

Sch◎◇fへの分岐確率をPEξ(9)と表記する.トレース

t及び素数pをランダムに与えたとき,次の定理が成

立する。

[定理1】SEAアルゴリズムにおいて,9=2の場合,

すべての素数pに対してPEI(の:1となる.1が奇

素数の場合,ランダムに与えたt及び素数pに対し

て,PEt(のニ1/2である.         口

(証明)

i)‘=2のとき

(≒4P)(写)一・または・(t一・のとき)

1270

電子情報通信学会論文誌ラ99/8 Vel.」82-A N◎.8

より,確率は1である.

ii)♂が奇素数のとき

 tを固定,p=◎,1,…,1 一1(mod 1)とすると

t2-4Pは◎,1,…メー1 (mod 1)のすべての値を

とり得る・it2 一 4p   l)一・または◎となる雛

の数は(9 +1)/2である、p半0 (mod 9)であるの

で,それを除くと(i一・・一 1)/2である.したがって,pを

1,2,…,9-1 (m◎dt)の中でランダムに選ぶとき,

(t2 一一 4p l)一・または◎となる鰍掛一1

である.これは任意のtに対して成り立つ.  m

 tをランダムに与え,pを固定した場合の確率はp

の条件により変わる.このとき,次の定理が成立する。

[定理2](¥)=1のとき,ランダムに与えたtに対

して・禰一睾となる・

(¥) :一1のとき,ランダムに与えたtに対して,

(証明)

 分岐確率p蝋のを求めるためには,(の =1とな

る素数p,1に対し,

#{tEFi 1 (!i2r...ylz2ww4p)・ 1 or・}(ユ)

を評価すればよい.

 (¥)=1.であるから,4p ・・ $2 (m◎d 9)を満たす

$蔓躍が存在する.任意のSl,s2∈職(Sl≠s2>に

対し,r∈恥をrs1…wr s2 (mod 9)とすると,

(≒り一(≒り(ギ)一((鴎一謬)

                     (2)

と変形される.ゆえに,s1,、s2∈Fl(Sl≠s2)に対し,

孝個(≒り一1}

一#{t ff ■1(≒り一・}

が成り立つ.一方Zt ・t+s,v ・・t一一sとおくと,

           t2 一 s2

             t

#{t∈F・・ s∈畷

・・ #{耀∈畷号)G)

(1 一 1)2

    一 (1 一 1)

 2

)}

一・ 戟i∫・)

(3)

Page 3: 素数位数を有する楕円曲線の構成とその計算量評価mkaneko/papers/21素数...SEAのアルゴリズムと呼ばれており,実用的な時間で の位数計算が可能である.最近,伊豆,小暮らはSEA

論文/素数位数を有する楕円懸線の構成とその計算量評懸

したがって,任意のs∈Frに対して,

#{妊畷≒82)一・}

   g-1        ご一3  :一’ 一1=   2  ”  2

(4)

となり,これより,(2t)=1となる素数‘,pに対し,

#{tffm 1 (g:2 f:’ s2) ,,,ioro}

   g-3         g十1                     (5)  = 一’ 十2=    2 ’一 2

が成り立つ・したがって二一睾となる洞門

にω司のとき・馴一場となる・□ 2.3 E:POの構成法

 本節では,SEAアルゴリズムを用いたEPOの効率

的な構成法を示す.EPOの構成法の概要は次のとお

りである,まず,ランダムに選んだ楕円曲線に対して,

SEAアルゴリズムを適用する.ここで, SEAアルゴリ

ズムの各ZにおいてCase-ElkiesまたはCase-Schoof

へ分岐し,t(mod 1)が確定した場合,この時点で,

位数が9を因数にもっか否かの判定が可能である.位

数がεを因数にもっと戦定されれば,即座に楕円曲

線を選び直し.これをEPOが得られるまで繰り返す(注1>.なお,twistされた楕円曲線も同時に判定を行

う.以下にアルゴリズムの詳細を示す.

[アルゴリズム3](EPOの構成アルゴリズム)

入力:素体軸

出力:楕円曲線E/Fp:#E(葦㌔〉:素数

[Step 1]適当な素数pを選ぶ.

[Step 2]楕円曲線E(IFp)をランダムに選ぶ.

[Step 3]Eの位数#EをSEAアルゴリズムによ。

て求めるがt (m◎d 9)が求まるたびにll#Eを平

定する.この際,twistされた楕円曲線E’に対しても

同様の判定を行う.

[Step 4]#E,#Efの両者がStep 3で合成数と判定

されればStep 2へ戻る。

[Step 5]#Eまたは#E’が素数(十P)であれば終

了.そうでなければStep 2へ戻る.

3。楕円曲線の位数分布及びEPOの存在  確率

 楕円曲線を構成する上で,楕円曲線の位数がHasse

の範囲内でどのように分布しているかは,基本的かつ

重要な問題である.本章では,楕円曲線の位数分布を

導出し,更に,位数が素数である曲線EPOの存在確

率を見積もる.なお,個数を表すときは互いに同型な

楕円曲線を同一ecする.

 3.1 楕円曲線の位数分布

 本節では,楕円曲線の位数分布を導出する.

 判別式D:VZ[i5’:’iiである位数x=p+1-t

を有する楕円曲線の個数は,Kroneckerの忌数H(D)

に一致する.また,H(D)及び楕円曲線の総数は,次

式のように表せる{11].

     面ff(D)一 X h(f.;,)

    幅1,妊21D

    2>/す

(6)

総数一

更に,虚2次体の類tw h(D)はあたかも,

  Σん(の一、8表3)D3/2

 -D<dく0

       ユ h(D)~OIDIs

(8)

(9)

のように振る舞うことが知られている[1◎!.ここで,

位数分布の平均値を求める.式(6)と式(9)より      ユH(D)~0’P蒼とし,Hasseの範囲で積分した値が楕

円曲線の総数2(p-1)ty 2pであることからH(D)の

平均値は,主D亮なる叫したがって請円曲線の

     π               4P一(P十1-x)2位数が¢となる確率密度関数は,                  2πPとなり,ここで,

    p十1-x cos e =

      2>歴

なる変数変換を行うと,確率密度関数は,

2 sifi2 e

 T

(10)

(ll)

となり,佐藤予想との類似関係が得られる[12].

 素体Fp上での楕円曲線の位数分布と,その平均値

を図1に示す.これによると位数はHasseの範囲でほ

ぼ一様に分布していることが確かめられる.この結果

より,EPOも偏りなく存在していることが予想でき

るが,避寒でEPOの存在確率を導出する.

(注1):Lercierによっても独立に提案されている[151.しかし,筆者

らの手法は,更に,計算時間を短縮するためにCase-Atikin, Isogeny

Cycleの計算は可能な限り後回しにするという拳法である,

1271

Page 4: 素数位数を有する楕円曲線の構成とその計算量評価mkaneko/papers/21素数...SEAのアルゴリズムと呼ばれており,実用的な時間で の位数計算が可能である.最近,伊豆,小暮らはSEA

器≧きO置一一20」2∈コZ

10000

1OOO

100

top+1-2sclrt{P)

Number of ell. curves

     D/pi 一一一

、黛.導、一バ。

、. ~

・さ

  p+tNumber of Point

p+t+2sqrt(p>

図i 素体璽雪 (p = 524287)での楕円懸線の位数分霧

晦1Di・t・ib・ti…f・rd…f・IL….・v・・F。.

 3.2 EPOの存在確率

 本節では,EPOの存在確率を導出する.素体Fp上

定義された楕円曲線E(Fpの位数#E(Fp)が素数1

で割り切れる確率をP(1),割り切れない確率をPa。(9)

とする.文献[13]によると,

                     (12)

である.ここで,誤差項0(毒)は十分小さい値であ

る.式(12)より,

     t-2            1P・・(1) N fi. ew +R-1)・(9+1) (13)

となる.楕円曲線の位数が素数となる平均確率をPp,

任意に与えた正整数が素数となる確率をPp。i,neとし,

これらの比をとる。

なお,この値は1≦IO12において計算すると0.50516..に収束するように振る舞う.したがって,

瑞はPp[,t O.50517/leg pと近似する.図2に,1◎

進数9けた(32ビット)の素数標数の素体上において,

EPOの存在確率を示す.図2より明らかに瑞に対

し,EPOの存在確率は上下にばらつきがある.これ

は,表1のようにp (mod 1)の値によってEPOの

存在確率が変化することによるものと考えられる。し

たがって,EPOを構成する場合,特に小さな素数9に

対しp≡1 (mod 1)を満たす素数を法とする素体を

選べば効率が良いことがわかる.

1272

電子情報通信学会論文誌’99/8 Vo1. J82-A No,8

」①O」OΦ一ヒ=α↑OΦO仁邸一〇う一XφいO診[需ΩσρO」血

O.028

0.027

0.026

g.e2s

O.024

0.023

e.022

§.02壕

O.02

0.019

α創8

0.0唯7

   巴コ

岱 峯 田 男

 ・:+.;

  買       十     昏

   十

 p:nonsquare(mod 3,5,7,11} e

     p=1(mod 3) 一   薗.・雰:{躍亨1隻

許、、轟搬溢十壱  亀            壱

   ロ《・略・チ・㌦  ・.。,・

o  ““ o e e““ ?@.... r @e“e  v eee

4,29497e+09’ 4.29497e+09 4.29497e+09 4.29497e+oo

         Prime

       図2 EPOの存在確率Fig.2 Probability of existance of ell. cur. with prime

   order.

表1p騰1(mod i)である場合の素数位:数となる確率

  Ppとの比Table 1 Ratio of probability of existance of ell. cur.

    with prime order aRd its avarage probability

    Pp’

P…1 (modの P≠1 (modの」雛3 1ユ11 0,889

5 ユ。◎41 O.986

7 1,◎21 0,996

11 LOO8 0,999

4.計算量評価

 2.3で示したEPOの構成法の計算量評価を行う.

また,法pの種類によりSEAアルゴリズムでのCase一

:Elkies, Case-Schoofへの分岐確率及びEPOの存在

確率が異なることを示したが,その計算時悶の違いに

ついて考察する.

 4.1 SEAのアルゴリズムの計算量

 本論文では多項式乗算にKaratsuba法を用いる.

このことを考慮すると,最高次数Zの多項式乗算に

要する計算時間は0(12’6(log p)1’6)である. SEAア

ルゴリズムで用いる最大の9をしとする.法pが

160 bitの場合, Lは53となることをSEAアルゴリ

ズムの平均値より確かめており,これを1◎gρで表す

とし=e.48 10g pと表すことができる.したがって,

本論文では,L =・ O.48 logpと仮定した.

 4.2 EPOの構成に要する計算量

 本節では,EPOの構成に要する計算量を求める.

EPOの構成に必要な計算量を求めるにあたって,考

慮すべき点は以下のとおりである.

Page 5: 素数位数を有する楕円曲線の構成とその計算量評価mkaneko/papers/21素数...SEAのアルゴリズムと呼ばれており,実用的な時間で の位数計算が可能である.最近,伊豆,小暮らはSEA

論文/素数位数を有する楕円曲線の構成とその計算量評価

 (1)各Zに対してt (mod 1)を求める計算量.

 (2)位数が素数1で割り切れる確率几。(の,及び

EPOの存在確率」ら.

 (3)t(m◎d 9)の確定する確率P藤り.

 (4)Schoofのオリジナルアルゴリズムを適用する

最大の素数Ls。h.

 (5)SEAアルゴリズムで用いる最大の素数L.

 まず,(1)に関して4。1より係数Kを用い,計算時間をK(12’6 (log p)1’6)とする.〈3>については,

法pはランダムに与えるものとし確率を1/2とする.

(5)については,Ls。h・5とし,以上より,EPOを

構成する計算量は,

1=tLII;i3iSlntPav(s)

1・6@2 k2-6

 2SleSL

   (15)

で与えられる.ただし,Σ,nは素数の範囲を動く.

これをSEAアルゴリズムの計算量

K(legp)”6 2 k2’6

     2SkSL

(16)

で割るとSEAアルゴリズムに換算した回数が導出で

きる。すなわち,EPOを構成する計算量はSEAアル

ゴリズムをこの回数分計算した計算時間と等しい、以

降,この國数をSEA相当園数と呼ぶ.この値は,式(15), (烹6>より,

歳Σり→_{1一瑞α    2)

  2≦s≦五

+歳蕊1+争(の

・(   1 + Pav(Sll 1.t-15r・〉)避}

(17)

で与えられる.法pが10進数1感けた(50ビット〉

から28けた(85ビット)の範囲で計算結果と式(17)

O篇而

12

11

9

8

7

6

5

一て.     ・e            “

 e

         Data e e        Theory 璽『’『冒一

       e       e

      シ/     シ〆    。。  ン/ンx

    e

4

50 55 60 65 70 75 80 85 90        Prime (bit)

   図3EPOの構成時潤のSEA相当園数F圭9.3Raもめ◎f c◇mputati◎難a玉も漁¢s f◎r fii}diRg e歪L

   cur. witk prime order and SEA algorithm.

表2大きなビットサイズの標数pでのEPO構成時間の  SEA相当回数Irable 2 Ratio of computational times for finding ell.

    cur. wkh higk prime order and SEA algo-

    rithm.

法P SEA相轟回数(実測値〉 SBA相当回数(理論値)

160bit 15.87回 17.03回

170bit 16.94回 17.93回

とを比較して図3に示す.高位ビットに関する比較は

表2に示す.なお,各法pに対してアルゴリズム100

回の平均値をとっている.多少のばらつきはあるが,

式(17)と実測値はほぼ一致しているといえる.

 図3より,SEA相当回数は法pのビットサイズに

対し,ほぼ比例の関係があり,法pのサイズが92ビッ

トならばSEA相当回数は10.4回,160 bitであれば

SEA相当回数は17.0回と十分実用的な値となってい

る.

 4.3 EPOの構成に適した標数p

 以下の二つの確率

 (1)EPOの存在確率 (2)Case-Elkies, Schoofへの分岐確率

は,法pの条件によって変化する.本節では,これら

の確率がEPOの構成アルゴリズムにどのような影響

を与えるのかを調べる.2.2で示したように,法pが

p≡1 (mod 1)の条件を満たすとき,(1)の確率が

高くなる.3.2で示したように,(V)=1の条件を満

たすとき,(2)の確率が高くなる磁).ランダムに楕円

(注2>:法pに条件を与えることによ珍,楕円暗号の安全性に差を生ず

るという研究報告は,筆者らの知る限りではなされていない.この問題

の解明は今後に残された課題の一つである.

1273

Page 6: 素数位数を有する楕円曲線の構成とその計算量評価mkaneko/papers/21素数...SEAのアルゴリズムと呼ばれており,実用的な時間で の位数計算が可能である.最近,伊豆,小暮らはSEA

>0⊆ΦコσΦ」」

350

3eo

250

200

t50

100

50

og

」…しi亀茎一羊

kx

㌧/こ黙、

  t 都”【セ

 x

臼kies Prime(p=1 mod3,5,7)ゆ一

    Atkin Prime 一一一一

㌻一唯、

一y.rAkh

.一

 、  メ十, letrtT一

目 20 3e 4g X醗e{sec◎轟d}se

6g

    図4EPOの構成に要する時間の分布F圭暮.4D三§願も疑も董。登◎f c◎mputation time{for find圭窺9

   e}1. eur. with prime order.

曲線を選ぶ際EPOでなければ,楕円曲線を選び直す

必要がある.しかしCase-Atkinでは,位数が素数で

あるか否かの判定が行えないためCase-Elkies, Sch◎◎f

へ多く分岐させた方が効率が良い.また,Case-Elkies

へ分岐した場合のみIsogeny Cycleが使用できるため,

これによる効率の向上も可能である.

 図4に法p = 260+7035≡1 (mod 3,5,7)及び

p=26⑪+7081≠1 (mod 3,5,7)としたときの素

数位数を有する楕円曲線の構成アルゴリズムを2◎0◎

回実行した場合の計算時間の分布を示す.図4より,

法pのタイプでの計算:時間の分布の差が確認できる.

また,平均時間はそれぞれ15.57(s),18.91(s)であり,

法pを変えるだけで約20%の計算時間の短縮が可能

である.

5.む す び

 本論文で提案したEPOの効率的な構成法に関し,楕

円曲線の位数分布,EPOの存在確率を導出し, EPO

構成に必要な計算量の評価を行った.その結果,計算

量的に十分実用的であることがわかった。また,法p

の条件を選択することにより,計算時間が20%程度短

縮された.

           文   献

{1] A.」. MeRezes, T. Okarnoto, a!}d S.A. Vanseene, “Re-

  ducing e盗ptic curve藍ogar玉thmsも。歪◎菖ariもh田s in

  a finite field,” IEEE Trans. lnfo. Theory, vol,39,

  pp.1639-1646, 1993.

[2} T.Saも◎k ak(i K。 A臓k圭,“FermaもQ疑◎も壼e捻もs a捻(iもhe

  Polynomial Time Discrete Log Algorithm for Anoma-

  lous Elliptic Curves,” Public Release Ver.2 (97-10・一

1274

電子情報通信学会論文誌’99/8 Vol, J82-A No.8

】3{

】4[

】5[

}6[

達ア{

ユ8〔

】9【

[10]

[121

1綱

118]

21),1997.

R.Schoof,“Elliptic curves over finite fields and the

c◎mputat沁R◎f square r◎ots m◎(圭P,”Mathemaも三cs◎f

Computation voL44, no.170, pp.483-494,1985.

R.Schoof,“Counting points on elliptic curve over丘.

Rite fields,”」◎uma茎de Th6◎r量e des N◎憩bごes de 8◎r-

deux 7, pp219-254,1995.

N.D。 Elkies,“Elliptic and modular curves over丘一

nite fields and re韮ated c◎mputational issues,”Arner.

Math. S◎c./夏P St疑(達, A(達v. Math., 7,21-76警Prr◎v圭一

dence RI:Amer. Math. Soc.,1998。

F.Morain,“Calcul du no㎜bre de points sur une

c◎urbe e1引戸P型置eδa籍§UR・COTP§611量:Aspects algor圭癒一

miques,”Journal de Th60rie des Nombres de Bordeux

7,pp.255-282,1995.

{弄豆哲也,小暮 淳,野呂正行,横平和弘,“安全な楕円

曲線暗号パラメーター設計(Sch◎ofアル:“ ijズム改良〉,”

SCIS,98,1998.

」”M.C◎uveignes and F. M◎rain,“Schoof,s algorithm

and isogeRy cyc茎es,,I Lect秘re N◎乞es泌C◎mpuもe Sc蚤一

ence 877, pp.43-58, Springer-Verlag,1994,

J.一M.Couveignes, L Dewaghe, and F. MQrain,

“ls◎g¢総y cycles and旗e Sch◎of-E王kies-Aもk拠alg◎一

rithm,”LIX Research Report LIX/RR/96/03,1996.

D.B. Zagier,片山孝次訳,数論入門,岩波書店,1990.

境 隆一,笠原正雄,“楕円懸線の位数分布と素数鍾数を

有する楕円繭線について,”S1τA96,1996.

三井孝美編,“佐藤の予想,”岩波数学辞典(第3版),205S,

P.550.

H.W. Lenstra,甑,‘‘FactOring In毛egers witk£蟻ひ

tic Curves,”Annals of Mathematics 126, pp.649-673,

1987.

R.Lerc韮er aRd F. M◎ra圭篤‘℃ountiR菖the fiumber

of points on elliptic curve◎ver finite盒e藍(圭s=Strate-

gies and performances,”EUROCRYPT,95, pp.79-

94,1995,

R.Lercier,“Alg◎rithmique des courbes elliptiques

               ノdans les corps finis,,, Th6se, Ecole Polytechnique-

LIX,1997。

」.一M.C◎uveignes, L. Dewaghe, and F. M◎rain,

“lsogeny cycles and the Schoof-Elkies-Atkin algo-

rithm,”LIX Research Report LIX/RR/96/03,1996.

布田裕特境隆一一・・,笠療正雄,“Scho◎fのアルゴリズム

に関する基礎的考察,”第19回情報理論とその応幣シン

ポジウム,pp.649-652,1996,

堀内啓次,叡B裕一,境 隆一,笠原正雄,“素数位数を

有する楕円蕗線の携成とその計算量評癒について,”第二

回代数曲線とその応用シンポジウム,1998

付 録

 1.SEAアルゴリズム

 Elkies, Atkinによって改良されたScheofのアル

ゴリズムを示す.文献[6],[14]にこのアルゴリズムを

Page 7: 素数位数を有する楕円曲線の構成とその計算量評価mkaneko/papers/21素数...SEAのアルゴリズムと呼ばれており,実用的な時間で の位数計算が可能である.最近,伊豆,小暮らはSEA

論文/素数位数を有する楕円曲線の構成とその計算量評価

Schoof, Elkies, Atkinの頭文字をとって, SEAアル

ゴリズムとある.ここでもそれにならってそのように

記述する.

 1.1準   備

 必要となる定義,定理をまとめる.本論文では以下

の式で定義される楕円曲線を用いる.

 E;y2=X3十AX十B (A,BEFp) (A’1)

[定義3](フロベニウス霞己準同型写像φρ〉

 フロベニウス自己準同型写像晦を以下のように定

義する.

 ¢,:(X, Y)一(XP, YP) (A・2)

                      B

このフロベニウス自己準同型写像は,以下の固有方程

式と呼ばれる方程式を満たす.

ip;一tr(gb,)・ip,+n(di,) ex O (tr(ip,)EZ)

                    (A・3)

ここで,tr(φp),n(φp)はそれぞれ,φpのトレース及

び,ノルムであり,n(φp):pである.簡単のため,

以降tr(φp)をtで表すことにする.

[定理4] (Hasse-Weilの定理)

 Eを素体!Fp上定義された楕円懸線とする.このと

き,E上のFpに座標成分を有する点の個数 #E (Fp)

 #E (Fp) =p十1-t (A’4)

 一2v〈i5 St$ 2v(P (A・5)

を満たす.                [1

[定義5](チ不変量)

 式(A・1)の楕円曲線に対して,チ不変量を以下の式

で定義する.

       4a3                    (A・6)o’ = 1728

     4a3 十 27b2

楕円曲線Eのチ不変量を」(E)で表す.   [コ

 あ不変量に対応する楕円曲線は以下のようになる.

鴫ず一詔3+3王72島+2ユ721-5

                    (A・7)

ただし,p>3とする.

[定義6](twistされた楕円曲線)

 式(A・1)のような楕円曲tw E/Fpに対して以下の方

程式で定義される楕円曲*X E’をtwistされた楕円曲

線と呼ぶ.

 E’:y2=x3十ac2x十bc3 (A・8)

ただし・

[定理7]twisもされた楕円曲線の欝が有理点の綱

数は,

 #E’(pt.)=p十1十t (A’9)

である.                  目

 上の定理よil ,1回のSchoofのアルゴリズムを行う

ことで=:つの楕円曲線の位数を求めることができる.

等分多項式は以下の磁化式により定義される.

[定義8](等分多項式)

  g12n (X, Y) = Wn (Wn+2WZ-1 一 Wn-2WZ+i)

          /2Y

  W,n+、(X,γ)瓢Ψ曜輔一鴫+、Ψ。一、

                    (A・10)

 pt.i(X, Y)=一i, Wo(X, Y) :O

 pt,(X, Y)=1, pt2(X, Y)=21Y

重、(X,y)=3X解6蓋X2+12βX一蓋2

pt4 (X, Y) = 4Y (X6 + sAx‘ + 2gBx3

        -sA2x2 一 4ABx 一 sB2 一 A3)

                      o

また,等分多項式を

fn(X)=Wn(X, Y) (n:odd)                    (A・11)fn(X)==Wn(X, Y)/Y (n:even)

と記述することにより,以下の定理が成立する.

[定理9]P=(X,y)6E(IFI;)でP¢E[2]の点

に対し

 nP =OO fn (X) rm:O (A42)

ここでFpは恥の代数閉包,8回は位数がnあるいはその約数である点全体の集合を表し,この集合の

任意の要素のn倍点は無限遠点となる。    9

[定理IO}点P=(x, y)EE(Fp)をn倍した点

                     1275

Page 8: 素数位数を有する楕円曲線の構成とその計算量評価mkaneko/papers/21素数...SEAのアルゴリズムと呼ばれており,実用的な時間で の位数計算が可能である.最近,伊豆,小暮らはSEA

nP(nP≠0)はΨnを用いて,

篇P

と表される.

 1.2 アルゴリズムの主要部

(A・13)

[アルゴリズム1](SEAアルゴリズム)

入力:楕円曲線E/IFp:y2=X3+.4X+B

出力:#E(Fp)

[Step l}ε←2,五←1とする.

[Step 2]Φ1(X,」(E))=Φ(X)=0のIFp上の解

を求める.その解の個数が2,1のとき,Case-Elkies

として,L←Lxごとし, STEP 3日目0のとき,

Case-Atkinとして, STEP 4へ.

[Step 3]Elkiesのアルゴリズムを行う.(Case-

Elkies)

[Step 4]1≦LSchのときは, Schoofのオリジナル

アルゴリズムを行う.それ以外は,Atkinのアルゴリ

ズムを行う.(Case-Atkin)

[Step 5]L>4>「pであればSTEP 7へ.

[Step 6]Z←(tの次の素数)とし, STEP 2へ.

[Step 7]素tw 1に対するトレースt (mcd 9)のす

べてのデータから,Inatch and sortアルゴリズムを

行い,位数#E(Fp)を求める.終了.

                       u

 1.3 モジュラー多項式

 SEAアルゴリズムでは,モジュラー多項式軌(E J)

を用いる.これはSEAアルゴリズムとは独立にあら

かじめ求めることができる.一般にはモジュラー多

項式は二つのゴー不変量の関係式を表すが,ここでは,

Atkinによって定義されたもの[6]を表す.こちらのほ

うが係数が小さくなる.詳しい特性,求める方法など

については文献[6]の2節を参照されたい.本論文で

はX。①上とXδ(1)上のモジュラー多項式もともに

Φt(瓦 」)で表す.

 1.4 Atkinのアルゴリズム

 ここではAもk盈のアルゴリズム[14!について述べ

る.Atkinのアルゴリズムではt (mQd 1)の値が数

個の候補値として求まる.

[アルゴリズム2](Atkinのアルゴリズム)

入力:楕円曲線E/Fp:y2=X3+AX+B,♂¢i(X,2’(E)) :¢(X)

出力:t (mod l)の候補値

1276

電子情報通信学会論文誌’99/8 Vol, J82-A No.8

[Step i] (XP-X,Φ(X))が1でないrを求める.

[Step 2]1の原始r乗根をζとし, t=[(ζ+ぐ1+

2)・p}i/2 (mod 9)からt (m◎d 9)を求める.

1の原始r乗根はφ(r)個あり,可能な値の個数もそ

れと等しい.tがとり得る値の個数はCase・Atkinが

多くなるほど大きくなる.この候補の値から正しい値

を見つけるアルゴリズムはmatch aRcl s◎rtアルゴリ

ズムと呼ばれる.Baby steps and Giant stepsのアル

ゴリズムと中国人の剰余定理に基づいて構成される.

詳しくは[15】を参照されたい.

 1.5 Elkiesのアルゴリズム

 Elkiesはフmベニウス写像φpの固有方程式を解く

際に用いる等分多項式fi(X)の代わりにそのファク

ター9t(X)を用いることによって,アルゴリズムを高

速化している[5】.以下では91(X)について簡単に説

明する。求める方法など詳しくは文献[6]の3.を参照

されたい.

 楕円曲線E =: C/(ωIZ+ω2Z)一に対して,

     〈S-1)/2

gi(X)=fi(X-ge(kwi/1)) (A・14)

      k =1

とおく.この式は1等分点の一部のX座標を解とし

てもつ多項式である.」がElkies素数(Case-Elkies

となる素数)であるとき,この式はFp(X)に還元で

きる(係数をFpに属するようにできる〉.更に,9等

分点は固有方程式の解(フロベニウス写像の固有値)

に対する解空間に対応する.このことにより,等分多

項式f‘(X)の代わりにこの91(X)を用いて固有方程

式の解を求めることが可能になる.

 等分多項式ゐ(X)の次数が(12 一1)/2であるのに

対し,91(X)のそれは(1-1)/2である.g1(X)を用

いることにより,アルゴリズムの高速化が可能になる.

 以下にElkiesのアルゴリズムを示す.

[アルゴリズム6](E}kiesのアルゴリズム)

入力:楕円曲線E/Fp:γ2=X3 + AX +B,ε,ゴ(E>

出力:t (mod l)

[Step 1]9i(X)を求める.

[Step 2]iPpP =kPが成立するような1≦k<ε

を求める.そのため以下の式の値を調べる.この値が

1となるときのkがφpの固有値である.

Page 9: 素数位数を有する楕円曲線の構成とその計算量評価mkaneko/papers/21素数...SEAのアルゴリズムと呼ばれており,実用的な時間で の位数計算が可能である.最近,伊豆,小暮らはSEA

論文/素数位数を有する楕円曲線の構成とその計算量評価

gcd((XP 一 X)fg(X3 十 AX 十 B)

 +fk-ifk+i,9i(X)) (k:even)

gcd((xP 一 x)fk2 十 fh-ifk+i(x3

 十AX十B),gi(X)) (k:odd)

(A・15)

[Step 3]t……(k2+p)/k (modのを求める.

                         o

 MorainらはIsogeny cycle法により, Case-Elkies

をより効果的に用いることに成功した.同種写像の連

鎖を考えることにより,t (mod t2), t (mod t3…)

を求める多項式の次数を抑え,短時間で計算可能にす

るものである.これにより,SEAアルゴリズムで用い

る最大の素数Lを小さくでき,全体の計算時間が短

縮される.詳しくは文献[8】,[15],[16]を参照されたい.

 1.6 Schoofのオリジナルアルゴリズム

 Case-Atkinが多いとき,match and sortアルゴ

リズムの計算時間が増大する.そのため可能な限り,

Atkin Caseを減らす必要がある.ここではSchoofの

オリジナルアルゴリズムについて説明する.これは,

改良前のSchoofのアルゴリズムである.計算量のオー

ダが大きいが1が小さいときは計算時間も小さいため,

Case-Atkinに代わって行う.これにより,match and

sortアルゴリズムの計算時間を短縮できる.

 以下にそのアルゴリズムを示す.

[アルゴリズム5](Schoofのオリジナルアルゴリズ

ム)

入力:楕円曲線E/Fp:Y2=X3+AX+B, Z,」(E)

出力:t (mod l)

[Step 1](φ2十P)(X)=t’tO(X) (mod.飢X))が

成立する1≦t’≦(1-1)/2を求める.

[Step 2](φ2+p)(Y)ニt’φ(y)が成立するとき, t’,

しないとき,一t’を出力する.終了.

                         D

   (平成10年12月28日受付,11年3月23日再受付)

堀内 啓次 (学生員)

 平10京都工繊大・工芸・電子情報卒.楕

円曲線暗号などの研究に従事.

に従事.

布田 裕一

 平8京都工繊大・工芸・電子情報卒.平

10同大大学院工芸科学研究科電子情報工

学専攻博士前期課程了.楕円曲線暗号など

の研究に従事.

境  隆一 (正員)

 平2京都工二大・工芸・電子卒.平4同

大大学院工芸科学研究科電子情報工学専攻

博士前期課程了.平7工芸科学研究科情

報・生産科学専攻博士後期課程了.工博.

同年阪電通大講師として現在に至る,主に

暗号と情報セキュリティ,符号理論の研究

金子 昌信

 昭58東大・理・数学卒.昭60同大大学

院理学研究科数学専攻修士課程了.昭63

同博士課程了.理博.同年阪大・理・助手.

平2京都工繊大・工芸・助教授.平8九大・

数理学研究科・助教授として現在に至る.

平5~6ドイツケルン大数学教室客員教授,

ドイツマックスプランク数学研究所客員研究員.整数論,特に

ガロア表現,楕円曲線,モジュラー関数,ベルヌーイ数,ゼー

タ関数などの研究に従事.平9より日本数学会誌「数学」編集

委員.日本数学会,アメリカ数学会各会員.

笠原 正雄  (正員)

 昭35阪府大・工・電気卒.昭37阪大大

学院工学研究科通信工学専攻修士課程了.

昭40同博士課程了.工博.同年阪大・工・

助手.昭45同講師.昭47同助教授.昭62

京都工面大・工芸・教授として現在に至る.

昭42~44米国ベル電話研究所客員研究員。

情報理論,符号理論,ディジタル通信システム,情報セキュリ

ティ,音声・画像符号化,技術倫理などの研究に従事.昭60

本会情報理論研究専門委員会委員長.昭60本会評議員.昭61

本会通信グループ副委員長.平1本会情報セキュリティ研究専

門委員会委員長.平7情報理論とその応用学会長.平8本会基

礎・境界ソサイエティ会長.平9本会代数曲線とその応用研究

専門委員会委員長.平10本会基礎・境界ソサイエティ編集長.

IEEE SIT東京支部チェアマン.昭41年度本会稲田賞,昭59

年度本会論文賞.昭61年度本会著述賞.平6年度本会小林記念

特別賞,業績賞.著書「情報理論」(共著)など.IEEE(フェ

ロー),情報処理学会,テレビジョン学会,システム制御情報

学会各会員.

1277