JP2004279784A - 有限体上演算装置、及び有限体上演算プログラム - Google Patents

有限体上演算装置、及び有限体上演算プログラム Download PDF

Info

Publication number
JP2004279784A
JP2004279784A JP2003071756A JP2003071756A JP2004279784A JP 2004279784 A JP2004279784 A JP 2004279784A JP 2003071756 A JP2003071756 A JP 2003071756A JP 2003071756 A JP2003071756 A JP 2003071756A JP 2004279784 A JP2004279784 A JP 2004279784A
Authority
JP
Japan
Prior art keywords
field
result
finite field
multiplying
finite
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2003071756A
Other languages
English (en)
Inventor
Tetsutaro Kobayashi
鉄太郎 小林
Fumisato Hoshino
文学 星野
Kazumaro Aoki
和麻呂 青木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2003071756A priority Critical patent/JP2004279784A/ja
Publication of JP2004279784A publication Critical patent/JP2004279784A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】有限体上の演算高速化の可能性を広げる。
【解決手段】要素数qの有限体をGF(q)とし、q=pとし、v∈GF(p)とし、αがα+v=0を満たすものとし、基底を〔α,α〕とする。そして、まず、拡大体元入力部10において、有限体GF(p)の元を用いて表される有限体GF(q)の元の入力を受け、入力された有限体GF(q)の元を構成する有限体GF(p)の元を拡大体元演算部20に送る。この有限体GF(p)の元が送られた拡大体元演算部20は、この入力された有限体GF(q)の元を構成する有限体GF(p)の元間の演算を行い、有限体GF(q)上での演算結果を算出し、演算結果出力部30によって、この演算結果を、有限体GF(p)の元を用いて出力する。
【選択図】 図1

Description

【0001】
【発明の属する技術分野】
本発明は、拡大体上の演算を行う有限体上演算装置、及びその機能をコンピュータ上で実現するための有限体上演算プログラムに関し、特に、高速な演算が可能な有限体上演算装置、及び有限体上演算プログラムに関する。
【0002】
【従来の技術】
情報通信ネットワークの進展が進む昨今、電子情報の秘匿や認証に必要な暗号技術は不可欠な要素である。そして、この暗号技術の安全性と高速化の向上が今後の重大な課題となっている。
そのような中、電子商取引の時代を担う次世代暗号として楕円曲線暗号が注目を集めている。楕円曲線暗号は、楕円曲線上の離散対数問題の求解困難性を根拠に安全性を確保する暗号方式の一種であり、素因数分解の困難性を安全性の根拠にするRSA暗号等と比べ、遥かに短い鍵長で同等の安全性強度を実現することができるものである。
【0003】
しかし、この楕円曲線暗号も、処理能力が制限されるスマートカードや、大量の暗号処理が行われるサーバ装置等においては、処理速度や安全性の面で課題があり、その高速化・安全性の研究が世界中で展開されている。
楕円曲線暗号を用いた公開鍵暗号やデジタル署名には、要素数q(素数又は素数のべき乗)の有限体GF(q)上で定義された楕円曲線を用いることが一般的である。従って、有限体GF(q)上での演算を高速に行うことが可能となれば、このような楕円曲線暗号を用いた公開鍵暗号やデジタル署名の処理を高速化することが可能となる。そして、特許文献1では、qが素数のべき乗である場合に、有限体GF(q)上での演算を高速化する方法が提唱されている。
【0004】
また、一般に、楕円曲線暗号の安全性を確保するためには、要素数160以上の有限体が必要であると言われている。そのため、楕円曲線暗号の高速化は、要素数160以上の有限体上での演算の高速化が前提となる。
ここで、例えば、要素数256の有限体GF(256)上での演算をコンピュータ上で行う場合、体の性質を満たす256個の元を独立に用意し、それによって実現される有限体GF(256)上で演算を行うことも可能である。しかし、この方法では、繰り上がり処理等に時間を要し、演算処理を高速化することができないという問題点がある。
【0005】
そのため、このような場合、まず要素数2の有限体GF(2)を用意し、その体を8次拡大して演算を行うことが望ましい。つまり、有限体GF(256)上=GF(2)での演算を、有限体GF(2)上の演算を用いて構成し、有限体GF(2)上の演算を、有限体GF(2)の演算を用いて構成し、有限体GF(2)の演算を有限体GF(2)上の演算を用いて構成する方法をとることで処理を高速化することができる。これにより、コンピュータでの取り扱いが容易な有限体GF(2)上の演算のみによって、実質的に有限体GF(256)上の演算を行うことが可能となるからである。
この体の拡大において、GF(p)の元(a,a)を用いてGF(q)の元aを生成する場合、従来は、GF(p)上で既約な多項式x+ux+v=0,u,v∈GF(p)の根αを用い、基底を[1,α]とおきa=a+aαと表すか(多項式基底表現)、基底を[α,α]とおきa=aα+aαと表す(正規基底表現)ことが一般的であった。
【0006】
【特許文献1】
特開2002−215022号公報。
【0007】
【発明が解決しようとする課題】
しかし、従来の体の拡大方法では、拡大された有限体上の演算コストを十分に低減させることができない場合がある。
従来、基底として[1,α]や[α,α]が用いられてきたわけであるが、これ以外の基底を用いても、それを用いて表される拡大体の元aは数学的に等価となるため、より演算コストを低減できる基底を選択することができれば、有限体上の演算をさらに高速化することができる。
本発明はこのような点に鑑みてなされたものであり、演算コストが小さい基底を用い、有限体上の演算をより高速化する可能性を広げる有限体上演算装置を提供することを目的とする。
【0008】
また、この発明の他の目的は、演算コストが小さい基底を用い、有限体上の演算をより高速化する可能性を広げる機能をコンピュータに実行させるための有限体上演算プログラムを提供することである。
【0009】
【課題を解決するための手段】
本発明では、前記課題を解決するために、要素数qの有限体をGF(q)とし、q=pとし、v∈GF(p)とし、αがα+v=0を満たすものとし、基底を〔α,α〕とする。そして、有限体GF(p)の元を用いて表される有限体GF(q)の元の入力を受け、この入力された有限体GF(q)の元を構成する有限体GF(p)の元間の演算を行い、有限体GF(q)における演算結果を算出し、その演算結果を、有限体GF(p)の元を用いて出力する。
ここで、α+v=0を満たすαを用い、基底を〔α,α〕とすることにより、拡大体元aの演算コストを低減させることができる場合がある。
【0010】
【発明の実施の形態】
以下、本発明における第1の実施の形態を、図面を参照して説明する。
以下では、まず、この形態の概略について説明した後、その詳細を説明していく。
図1は、公知のコンピュータに所定のプログラムを実行させることによって実現される本形態の有限体演算装置1の概略構成を例示した機能ブロック図である。
この形態の有限体演算装置1は自乗装置である。すなわち、元(a,a)∈GF(p)を用いて表される拡大体元a∈GF(q)の自乗演算aを行い、その演算結果を有限体GF(p)の元を用いて出力する。なお、GF(q)は要素数qの有限体を意味し、q=pが成立し、基底を〔α,α〕とおくものとする(α+v=0、v∈GF(p))。
【0011】
この例の有限体演算装置1において自乗演算を行う場合、まず、拡大体元入力部10において、元(a,a)∈GF(p)を用いてa=aα+aαと表される拡大体元a∈GF(q)の入力を受け付ける。次に、拡大体元演算部20において、この入力された拡大体元aを構成する元(a,a)間の演算を行い、自乗演算結果aを算出し、この演算結果を、演算結果出力部30において、有限体GF(p)上の元(c,c)を用いて出力する。
次に、この形態の詳細について説明する。
図2の(a)は、この形態の有限体演算装置1のハードウェア構成を例示したブロック図である。
【0012】
図2の(a)に例示するように、この形態の有限体演算装置1は、キーボード等の入力装置1a、液晶ディスプレイ等の出力装置1b、CPU(Central Processing Unit)1c、ハードディスク等の記憶装置1d、及び入力装置1a、出力装置1b、CPU1c、記憶装置1d間をデータのやり取りが可能なように接続するバス1eを有しており、記憶装置1dに記憶された所定のプログラムをCPU1cで実行することにより、その処理機能を実現する。
図2の(b)は、図1に例示した拡大体元演算部20の詳細機能構成を例示したブロック図であり、図3は、この形態の有限体演算装置1の処理手順を説明するためのフローチャートである。以下、以上の図を用いて、この形態の有限体演算装置1の機能構成及びその処理手順について説明を行っていく。
【0013】
まず、拡大体元入力部10においてa∈GF(q)の入力を受け付ける。ここで、前述のように、a∈GF(q)は、(a,a)∈GF(p)を用いてa=aα+aαと表される。このaが入力された拡大体元入力部10は、このa∈GF(q)を特定する元(a,a)∈GF(p)を拡大体元演算部20に入力する(ステップS1)。
この元(a,a)∈GF(p)が入力された拡大体元演算部20は、例えば、まず、乗算部21において(a)の演算を行い(ステップS2)、その演算結果(a)を加算部22に送る。この演算結果(a)が送られた加算部22は、この演算結果(a)を用いて(a)+(a)を求め、その演算結果(2a)を定数倍部23に送る(ステップS3)。この演算結果(2a)が送られた定数倍部23は、この演算結果(2a)を‐v倍し、その演算結果‐v(2a)をcとする(ステップS4)。なお、この形態のcは、a=cα+cαを満たすGF(p)の元を意味する。
【0014】
次に、自乗部24においてaの自乗を行い(ステップS5)、その演算結果(aを加算部27に送る。また、自乗部25においてaの自乗を行い(ステップS6)、その演算結果(aを定数倍部26に送る。この演算結果(aが送られた定数倍部26は、この演算結果(aを‐v倍し(ステップS7、)その演算結果‐v(aを加算部27に送る。そして、加算部27において、自乗部24による演算結果(aと定数倍部26による演算結果‐v(aを加算し、その演算結果(a‐v(aをcとする(ステップS8)。なお、この形態のcは、a=cα+cαを満たすGF(p)の元を意味する。
【0015】
以上のように演算された(c,c)∈GF(p)は、演算結果出力部30に送られ、そこで出力される(ステップS9)。すなわち、元(c,c)∈GF(p)とし、拡大体元aの自乗をa=cα+cαした場合における、cとして定数倍部23による演算結果‐v(2a)を出力し、cとして第2の加算部27による演算結果((a‐v(a)を出力する。
ここで、a=aα+aαであるため、a=(aα+aα=a α+2aα+a αとなり、α+v=0であるため、a=a α+2a(‐v)α+a (‐v)α=‐v(2a)α+((a‐v(a)αとなる。従って、上述の元(c,c)∈GF(p)を用いて表されるcα+cαは、a∈GF(q)の自乗aと等価であり、この元(c,c)∈GF(p)によって、a∈GF(q)の自乗aが特定されることになる。
【0016】
このように、この形態では、α+v=0を満たすαを用い、従来ほとんど用いられることがなかった〔α,α〕を基底として用いて体の拡大を行うこととしたため、拡大体元aの自乗演算コストを低減できる可能性が広がった。
次に、この発明の第2の実施の形態について説明する。
この形態の有限体演算装置1は逆元装置である。すなわち、元(a,a)∈GF(p)を用いて表される拡大体元a∈GF(q)の逆元a−1を求め、その演算結果を有限体GF(p)の元を用いて出力する。なお、この形態における有限体演算装置の概略構成、及びハードウェア構成は、第1の実施の形態で例示した図1及び図2の(a)と同様であり、この形態においても図1を適宜引用して説明を行う。
【0017】
この例の有限体演算装置1において逆元演算を行う場合、まず、拡大体元入力部10において、元(a,a)∈GF(p)を用いてa=aα+aαと表される拡大体元a∈GF(q)の入力を受け付ける。次に、拡大体元演算部20において、この入力された拡大体元aを構成する元(a,a)間の演算を行い、逆元演算結果a−1を算出し、この演算結果を、演算結果出力部30において、有限体GF(p)上の元(c,c)を用いて出力する。
次に、この形態の詳細について説明する。
図4は、この形態における拡大体元演算部20の詳細機能構成を例示したブロック図であり、図5は、この形態の有限体演算装置1の処理手順を説明するためのフローチャートである。以下、以上の図を用いて、この形態の有限体演算装置1の機能構成及びその処理手順について説明を行っていく。
【0018】
まず、第1の実施の形態と同様、拡大体元入力部10においてa∈GF(q)の入力を受け付け、このa∈GF(q)を特定する元(a,a)∈GF(p)を拡大体元演算部20に入力する(ステップS21)。
この元(a,a)∈GF(p)が入力された拡大体元演算部20は、例えば、まず、自乗部41において元aの自乗を行い(ステップS22)、その演算結果(aを加算部44に送る。また、自乗部42において元aの自乗を行い(ステップS23)、その演算結果(aを定数倍部43に送る。この演算結果(aが送られた定数倍部43は、この演算結果(aをv倍し(ステップS24)、その演算結果v(aを加算部44に送る。
【0019】
次に加算部44では、自乗部41による演算結果(aと定数倍部43による演算結果v(aとを加算し(ステップS25)、その演算結果((a+v(a)を定数倍部45に送る。この演算結果((a+v(a)が送られ定数倍部45は、その演算結果((a+v(a)をv倍し(ステップS26)、その演算結果v((a+v(a)を逆元演算部46に送る。逆元演算部46では、送られたv((a+v(a)の逆元を求め(ステップS27)、その演算結果(v((a+v(a))−1を乗算部47、48に送る。
この演算結果が送られた乗算部47は、この演算結果(v((a+v(a))−1を‐a倍し、その演算結果‐a(v((a+v(a))−1をcとし(ステップS28)、乗算部48は、この演算結果(v((a+v(a))−1をa倍し、その演算結果a(v((a+v(a))−1をcとする(ステップS29)。なお、この形態での(c,c)は、a−1=cα+cαを満たすGF(p)の元を意味する。
【0020】
以上のように演算された(c,c)∈GF(p)は、演算結果出力部30に送られ、そこで出力される(ステップS30)。すなわち、元(c,c)∈GF(p)とし、拡大体元aの逆元をa‐=cα+cαした場合における、cとして乗算部47による演算結果‐a(v((a+v(a))−1を出力し、cとして乗算部48による演算結果a(v((a+v(a))−1を出力する。
ここで、a∈GF(q)、q=pである場合、aをp乗した結果は再びaになるという性質があり、この性質を用いるとa−1=(‐a(v((a+v(a))−1)α+(a(v((a+v(a))−1)αとなることが求められる。従って、上述の元(c,c)∈GF(p)を用いて表されるcα+cαは、a∈GF(q)の逆元a‐と等価であり、この元(c,c)∈GF(p)によって、a∈GF(q)の逆元a‐が特定されることになる。
【0021】
このように、この形態では、α+v=0を満たすαを用い、従来ほとんど用いられることがなかった〔α,α〕を基底として用いて体の拡大を行うこととしたため、拡大体元aの逆元演算コストを低減できる可能性が広がった。
次に、この発明の第3の実施の形態について説明する。
図6は、公知のコンピュータに所定のプログラムを実行させることによって実現される本形態の有限体演算装置100の概略構成を例示した機能ブロック図である。なお、有限体演算装置100のハードウェア構成は、第1の実施の形態で例示した図2の(a)と同様であるため説明を省略する。
【0022】
この形態の有限体演算装置1は乗算装置である。すなわち、元(a,a)∈GF(p)を用いて表される拡大体元a∈GF(q)と、元(b,b)∈GF(p)を用いて表される拡大体元b∈GF(q)との乗算を行い、その演算結果を有限体GF(p)の元を用いて出力する。
この例の有限体演算装置1において逆元演算を行う場合、まず、拡大体元入力部110において、元(a,a)∈GF(p)を用いてa=aα+aαと表される第1の拡大体元a∈GF(q)、及び元(b,b)∈GF(p)を用いてb=bα+bαと表される第2の拡大体元b∈GF(q)の入力を受け付ける。次に、拡大体元演算部20において、この入力された拡大体元a,bを構成する元(a,a,b,b)間の演算を行い、乗算演算結果abを算出し、この演算結果を、演算結果出力部140において、有限体GF(p)上の元(c,c)を用いて出力する。
【0023】
次に、この形態の詳細について説明する。
図7は、この形態における拡大体元演算部120の詳細機能構成を例示したブロック図であり、図8は、この形態の有限体演算装置100の処理手順を説明するためのフローチャートである。以下、以上の図を用いて、この形態の有限体演算装置100の機能構成及びその処理手順について説明を行っていく。
まず、拡大体元入力部110においてa,b∈GF(q)の入力を受け付ける。ここで、前述のように、a,b∈GF(q)は、(a,a),(b,b)∈GF(p)を用いてa=aα+aα,b=bα+bαと表される。このa,bが入力された拡大体元入力部110は、このa,b∈GF(q)を特定する元(a,a),(b,b)∈GF(p)を拡大体元演算部120に入力する(ステップS41)。
【0024】
この元(a,a)∈GF(p)が入力された拡大体元演算部120は、例えば、まず、乗算部121において、元aと元bとの乗算を行い(ステップS42)、その演算結果(a)を減算部126及び加算部130に送る。次に、乗算部122において、元aと元bとの乗算を行い(ステップS43)、その演算結果(a)を減算部127及び定数倍部129に送る。また、加算部123において、元aと元aとの加算を行い(ステップS44)、その演算結果(a+a)を乗算部125に送る。さらに、加算部124において、元bと元bとの加算を行い(ステップS45)、その演算結果(b+b)を乗算部125に送る。
【0025】
これらの演算結果が送られた乗算部125は、加算部123による演算結果(a+a)と、加算部124による演算結果(b+b)との乗算を行い(ステップS46)、その演算結果(a+a)(b+b)を減算部126に送る。この演算結果(a+a)(b+b)が送られた演算部126は、乗算部125による演算結果(a+a)(b+b)から、乗算部121による演算結果(a)を減算し(ステップS47)、その演算結果((a+a)(b+b)‐(a))を減算部127に送る。この演算結果((a+a)(b+b)‐(a))が送られた減算分127は、この演算結果((a+a)(b+b)‐(a))から乗算部122による演算結果(a)を減算し(ステップS48)、その演算結果((a+a)(b+b)‐(a)‐(a))を定数倍部128に送る。この演算結果が送られた定数倍部128は、この演算結果((a+a)(b+b)‐(a)‐(a))を‐v倍し、その演算結果‐v((a+a)(b+b)‐(a)‐(a))をcとする(ステップS49)。なお、この形態でのcは、ab=cα+cαを満たすGF(p)の元を意味する。
【0026】
次に、定数倍部129において、乗算部122による演算結果(a)を‐v倍し(ステップS51)、その演算結果‐v(a)を加算部130に送る。この演算結果‐v(a)を受け取った加算部130は、乗算部121による演算結果(a)に、定数倍部129による演算結果‐v(a)を加算し、その演算結果をcとする(ステップS51)。なお、この形態でのcは、ab=cα+cαを満たすGF(p)の元を意味する。
以上のように演算された(c,c)∈GF(p)は、演算結果出力部140に送られ、そこで出力される(ステップS52)。すなわち、元(c,c)∈GF(p)とし、第1の拡大体元aと第2の拡大体元bとの乗算結果をab=cα+cαした場合における、cとして定数倍部128による演算結果‐v((a+a)(b+b)‐(a)‐(a))を出力し、cとして加算部130による演算結果((a)‐v(a))を出力する。
【0027】
ここで、a=aα+aαであり、b=bα+bαであるため、ab=(aα+aα)(bα+bα)=aα+aα+aα+aαとなり、α+v=0であるため、ab=aα+(a+a)(‐v)α+a(‐v)α=‐v((a+a)(b+b)‐(a)‐(a))α+((a)‐v(a))αとなる。従って、上述の元(c,c)∈GF(p)を用いて表されるcα+cαは、a,b∈GF(q)の乗算結果abと等価であり、この元(c,c)∈GF(p)によって、a,b∈GF(q)の乗算結果abが特定されることになる。
このように、この形態では、α+v=0を満たすαを用い、従来ほとんど用いられることがなかった〔α,α〕を基底として用いて体の拡大を行うこととしたため、拡大体元aの乗算演算コストを低減できる可能性が広がった。
【0028】
なお、この発明は上述の実施の形態に限定されるものではない。例えば、上述した、拡大体元演算部20、120における有限体GF(q)上の演算を構成する有限体GF(p)上の演算を、この拡大体元演算部20、120による演算を再帰的に適用して行う構成としてもよい。すなわち、自乗部24、25等で行われる自乗演算を上述の第2の実施の形態における方法によって、逆元演算部46によって行われる逆元演算を上述の第2の実施の形態における方法によって、乗算部21等の乗算を上述の第3の実施の形態における方法によって、それぞれ行い、さらにそれらの演算の中でさらに上述の実施の形態の方法を適用し、といった演算を繰り返す構成としてもよい。これにより、例えば、q=p=rとできる場合に、GF(q)上の演算をGF(p)上の演算を用いて構成し、GF(p)上の演算をGF(r)上の演算を用いて構成することができ、演算処理をより高速化することが可能となる。
【0029】
また、上述の実施の形態では、有限体上演算装置の処理機能を、コンピュータに所定のプログラムを実行させることにより実現する構成としたが、これらの処理機能の少なくとも一部を電子回路によってハードウェア的に実現することとしてもよい。
また、上述の実施の形態で述べたように、上記の処理機能は、コンピュータによって実現することができる。この場合、有限体上演算装置が有すべき機能の処理内容はプログラムによって記述され、このプログラムをコンピュータで実行することにより、上記処理機能をコンピュータ上で実現することができる。
【0030】
また、この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよいが、具体的には、例えば、磁気記録装置として、ハードディスク装置、フレキシブルディスク、磁気テープ等を、光ディスクとして、DVD(Digital Versatile Disc)、DVD−RAM(Random Access Memory)、CD−ROM(Compact Disc Read Only Memory)、CD−R(Recordable)/RW(ReWritable)等を、光磁気記録媒体として、MO(Magneto−Optical disc)等を、半導体メモリとしてEEP−ROM(Electronically Erasable and Programmable−Read Only Memory)等を用いることができる。
【0031】
また、このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD−ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記録媒体に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASP(Application Service Provider)型のサービスによって、上述の処理を実行する構成としてもよい。
【0032】
なお、上記におけるプログラムとは、電子計算機に対する指令であって、一の結果を得ることができるように組合されたものをいい、その他電子計算機による処理の用に供する情報であってプログラムに準ずるものをも含むものとする。
【0033】
【発明の効果】
以上説明したように、この発明では、要素数qの有限体をGF(q)とし、q=pとし、v∈GF(p)とし、αがα+v=0を満たすものとし、基底を〔α,α〕とした。そして、拡大体元入力手段において、有限体GF(p)の元を用いて表される有限体GF(q)の元の入力を受け、拡大体元演算手段において、この入力された有限体GF(q)の元を構成する有限体GF(p)の元間の演算を行い、有限体GF(q)における演算結果を算出し、演算結果出力手段において、その演算結果を、有限体GF(p)の元を用いて出力することとした。このように、α+v=0を満たすαを用い、従来ほとんど用いられることがなかった〔α,α〕を基底として用いて体の拡大を行うこととしたため、拡大体元aの演算コストを低減できる可能性が広がった。
【図面の簡単な説明】
【図1】有限体演算装置の概略構成を例示した機能ブロック図。
【図2】(a)は、この形態の有限体演算装置1のハードウェア構成を例示したブロック図であり、(b)は、図1に例示した拡大体元演算部の詳細機能構成を例示したブロック図である。
【図3】有限体演算装置の処理手順を説明するためのフローチャート。
【図4】拡大体元演算部の詳細機能構成を例示したブロック図。
【図5】有限体演算装置の処理手順を説明するためのフローチャート。
【図6】有限体演算装置の概略構成を例示した機能ブロック図。
【図7】拡大体元演算部の詳細機能構成を例示したブロック図。
【図8】有限体演算装置の処理手順を説明するためのフローチャート。
【符号の説明】
1、100 有限体演算装置
10、110 拡大体元入力部
20、120 拡大体元演算部
30、140 演算結果出力部

Claims (6)

  1. 要素数qの有限体をGF(q)とし、q=pとし、v∈GF(p)とし、αがGF(p)上で規約な多項式α+v=0を満たし、基底を〔α,α〕とした場合における、有限体GF(p)の元を用いて表される有限体GF(q)の元の入力を受け付ける拡大体元入力手段と、
    前記拡大体元入力手段において入力された前記有限体GF(q)の元を構成する前記有限体GF(p)の元間の演算を行い、前記有限体GF(q)における演算結果を算出する拡大体元演算手段と、
    前記拡大体元演算手段による演算結果を、前記有限体GF(p)の元を用いて出力する演算結果出力手段と、
    を有する有限体上演算装置。
  2. 前記拡大体元入力手段は、
    元(a,a)∈GF(p)を用いてa=aα+aαと表される拡大体元a∈GF(q)の入力を受け付ける手段であり、
    前記拡大体元演算手段は、
    前記元aとaとの乗算を行う乗算手段と、
    前記乗算手段による演算結果(a)を用い、(a)+(a)を求める第1の加算手段と、
    前記第1の加算手段による演算結果(2a)を‐v倍する第1の定数倍手段と、
    前記元aの自乗を行う第1の自乗手段と、
    前記元aの自乗を行う第2の自乗手段と、
    前記第2の自乗手段による演算結果(aを‐v倍する第2の定数倍手段と、
    前記第1の自乗手段による演算結果(aと前記第2の定数倍手段による演算結果‐v(aを加算する第2の加算手段と、
    を有し、
    前記演算結果出力手段は、
    元(c,c)∈GF(p)とし、前記拡大体元aの自乗をa=cα+cαした場合における、cとして前記定数倍手段による演算結果‐v(2a)を出力し、cとして前記第2の加算手段による演算結果((a‐v(a)を出力する手段であること、
    を特徴とする請求項1記載の有限体上演算装置。
  3. 前記拡大体元入力手段は、
    元(a,a)∈GF(p)を用いてa=aα+aαと表される拡大体元a∈GF(q)の入力を受け付ける手段であり、
    前記拡大体元演算手段は、
    前記元aの自乗を行う第1の自乗手段と、
    前記元aの自乗を行う第2の自乗手段と、
    前記第2の自乗手段による演算結果(aをv倍する第1の定数倍手段と、
    前記第1の自乗手段による演算結果(aと前記第1の定数倍手段による演算結果v(aとを加算する加算手段と、
    前記加算手段による演算結果((a+v(a)をv倍する第2の定数倍手段と、
    前記第2の定数倍手段による演算結果v((a+v(a)の逆元を求める逆元演算手段と、
    前期逆元演算手段による演算結果(v((a+v(a))−1を‐a倍する第1の乗算手段と、
    前記第2の定数倍手段による演算結果(v((a+v(a))−1をa倍する第2の乗算手段と、
    を有し、
    前記演算結果出力手段は、
    元(c,c)∈GF(p)とし、前記拡大体元aの逆元をa‐=cα+cαした場合における、cとして前記第1の乗算手段による演算結果‐a(v((a+v(a))−1を出力し、cとして前記第2の乗算手段による演算結果a(v((a+v(a))−1を出力する手段であること、
    を特徴とする請求項1記載の有限体上演算装置。
  4. 前記拡大体元入力手段は、
    元(a,a)∈GF(p)を用いてa=aα+aαと表される第1の拡大体元a∈GF(q)、及び元(b,b)∈GF(p)を用いてb=bα+bαと表される第2の拡大体元b∈GF(q)の入力を受け付ける手段であり、
    前記拡大体元演算手段は、
    前記元aと元bとの乗算を行う第1の乗算手段と、
    前記元aと前記元bとの乗算を行う第2の乗算手段と、
    前記元aと前記元aとの加算を行う第1の加算手段と、
    前記元bと前記元bとの加算を行う第2の加算手段と、
    前記第1の加算手段による演算結果(a+a)と、前記第2の加算手段による演算結果(b+b)との乗算を行う第3の乗算手段と、
    前記第3の乗算手段による演算結果(a+a)(b+b)から、前記第1の乗算手段による演算結果(a)を減算する第1の減算手段と、
    前記第1の減算手段による演算結果((a+a)(b+b)‐(a))から、前記第2の乗算手段による演算結果(a)を減算する第2の減算手段と、
    前記第2の減算手段による演算結果((a+a)(b+b)‐(a)‐(a))を‐v倍する第1の定数倍手段と、
    前記第2の乗算手段による演算結果(a)を‐v倍する第2の定数倍手段と、
    前記第1の乗算手段による演算結果(a)に、前記第2の定数倍手段による演算結果‐v(a)を加算する第3の加算手段と、
    を有し、
    前記演算結果出力手段は、
    元(c,c)∈GF(p)とし、前記第1の拡大体元aと前記第2の拡大体元bとの乗算結果をab=cα+cαした場合における、cとして前記第1の定数倍手段による演算結果‐v((a+a)(b+b)‐(a)‐(a))を出力し、cとして第3の加算手段による演算結果((a)‐v(a))を出力する手段であること、
    を特長とする請求項1記載の有限体上演算装置。
  5. 前記拡大体元演算手段における前記有限体GF(q)上の演算を構成する前記有限体GF(p)上の演算は、
    前記拡大体元演算手段による演算を再帰的に適用して行われる演算であること、
    を特長とする請求項1から4の何れかに記載の有限体上演算装置。
  6. 請求項1から5の何れかに記載された有限体上演算装置としてコンピュータを機能させるための有限体上演算プログラム。
JP2003071756A 2003-03-17 2003-03-17 有限体上演算装置、及び有限体上演算プログラム Pending JP2004279784A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003071756A JP2004279784A (ja) 2003-03-17 2003-03-17 有限体上演算装置、及び有限体上演算プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003071756A JP2004279784A (ja) 2003-03-17 2003-03-17 有限体上演算装置、及び有限体上演算プログラム

Publications (1)

Publication Number Publication Date
JP2004279784A true JP2004279784A (ja) 2004-10-07

Family

ID=33288114

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003071756A Pending JP2004279784A (ja) 2003-03-17 2003-03-17 有限体上演算装置、及び有限体上演算プログラム

Country Status (1)

Country Link
JP (1) JP2004279784A (ja)

Cited By (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008299330A (ja) * 2007-05-31 2008-12-11 Harris Corp 閉ガロア体組合せ
JP2009205535A (ja) * 2008-02-28 2009-09-10 Nippon Telegr & Teleph Corp <Ntt> 多項式乗算装置、多項式乗算方法及びプログラム
US8040937B2 (en) 2008-03-26 2011-10-18 Harris Corporation Selective noise cancellation of a spread spectrum signal
US8064552B2 (en) 2008-06-02 2011-11-22 Harris Corporation Adaptive correlation
US8068571B2 (en) 2008-06-12 2011-11-29 Harris Corporation Featureless coherent chaotic amplitude modulation
US8139764B2 (en) 2008-05-06 2012-03-20 Harris Corporation Closed galois field cryptographic system
US8145692B2 (en) 2008-05-29 2012-03-27 Harris Corporation Digital generation of an accelerated or decelerated chaotic numerical sequence
US8165065B2 (en) 2008-10-09 2012-04-24 Harris Corporation Ad-hoc network acquisition using chaotic sequence spread waveform
US8180055B2 (en) 2008-02-05 2012-05-15 Harris Corporation Cryptographic system incorporating a digitally generated chaotic numerical sequence
US8312551B2 (en) 2007-02-15 2012-11-13 Harris Corporation Low level sequence as an anti-tamper Mechanism
US8320557B2 (en) 2008-05-08 2012-11-27 Harris Corporation Cryptographic system including a mixed radix number generator with chosen statistical artifacts
US8325702B2 (en) 2008-08-29 2012-12-04 Harris Corporation Multi-tier ad-hoc network in which at least two types of non-interfering waveforms are communicated during a timeslot
US8340295B2 (en) 2009-07-01 2012-12-25 Harris Corporation High-speed cryptographic system using chaotic sequences
US8345725B2 (en) 2010-03-11 2013-01-01 Harris Corporation Hidden Markov Model detection for spread spectrum waveforms
US8351484B2 (en) 2008-12-29 2013-01-08 Harris Corporation Communications system employing chaotic spreading codes with static offsets
US8363830B2 (en) 2008-02-07 2013-01-29 Harris Corporation Cryptographic system configured to perform a mixed radix conversion with a priori defined statistical artifacts
US8363700B2 (en) 2009-07-01 2013-01-29 Harris Corporation Rake receiver for spread spectrum chaotic communications systems
US8369376B2 (en) 2009-07-01 2013-02-05 Harris Corporation Bit error rate reduction in chaotic communications
US8369377B2 (en) 2009-07-22 2013-02-05 Harris Corporation Adaptive link communications using adaptive chaotic spread waveform
US8379689B2 (en) 2009-07-01 2013-02-19 Harris Corporation Anti-jam communications having selectively variable peak-to-average power ratio including a chaotic constant amplitude zero autocorrelation waveform
US8385385B2 (en) 2009-07-01 2013-02-26 Harris Corporation Permission-based secure multiple access communication systems
US8406276B2 (en) 2008-12-29 2013-03-26 Harris Corporation Communications system employing orthogonal chaotic spreading codes
US8406352B2 (en) 2009-07-01 2013-03-26 Harris Corporation Symbol estimation for chaotic spread spectrum signal
US8428102B2 (en) 2009-06-08 2013-04-23 Harris Corporation Continuous time chaos dithering
US8428104B2 (en) 2009-07-01 2013-04-23 Harris Corporation Permission-based multiple access communications systems
US8428103B2 (en) 2009-06-10 2013-04-23 Harris Corporation Discrete time chaos dithering
US8457077B2 (en) 2009-03-03 2013-06-04 Harris Corporation Communications system employing orthogonal chaotic spreading codes
US8509284B2 (en) 2009-06-08 2013-08-13 Harris Corporation Symbol duration dithering for secured chaotic communications
US8611530B2 (en) 2007-05-22 2013-12-17 Harris Corporation Encryption via induced unweighted errors
US8848909B2 (en) 2009-07-22 2014-09-30 Harris Corporation Permission-based TDMA chaotic communication systems

Cited By (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8312551B2 (en) 2007-02-15 2012-11-13 Harris Corporation Low level sequence as an anti-tamper Mechanism
US8611530B2 (en) 2007-05-22 2013-12-17 Harris Corporation Encryption via induced unweighted errors
JP2008299330A (ja) * 2007-05-31 2008-12-11 Harris Corp 閉ガロア体組合せ
US8180055B2 (en) 2008-02-05 2012-05-15 Harris Corporation Cryptographic system incorporating a digitally generated chaotic numerical sequence
US8363830B2 (en) 2008-02-07 2013-01-29 Harris Corporation Cryptographic system configured to perform a mixed radix conversion with a priori defined statistical artifacts
JP2009205535A (ja) * 2008-02-28 2009-09-10 Nippon Telegr & Teleph Corp <Ntt> 多項式乗算装置、多項式乗算方法及びプログラム
JP4612698B2 (ja) * 2008-02-28 2011-01-12 日本電信電話株式会社 多項式乗算装置、多項式乗算方法及びプログラム
US8040937B2 (en) 2008-03-26 2011-10-18 Harris Corporation Selective noise cancellation of a spread spectrum signal
US8139764B2 (en) 2008-05-06 2012-03-20 Harris Corporation Closed galois field cryptographic system
US8320557B2 (en) 2008-05-08 2012-11-27 Harris Corporation Cryptographic system including a mixed radix number generator with chosen statistical artifacts
US8145692B2 (en) 2008-05-29 2012-03-27 Harris Corporation Digital generation of an accelerated or decelerated chaotic numerical sequence
US8064552B2 (en) 2008-06-02 2011-11-22 Harris Corporation Adaptive correlation
US8068571B2 (en) 2008-06-12 2011-11-29 Harris Corporation Featureless coherent chaotic amplitude modulation
US8325702B2 (en) 2008-08-29 2012-12-04 Harris Corporation Multi-tier ad-hoc network in which at least two types of non-interfering waveforms are communicated during a timeslot
US8165065B2 (en) 2008-10-09 2012-04-24 Harris Corporation Ad-hoc network acquisition using chaotic sequence spread waveform
US8351484B2 (en) 2008-12-29 2013-01-08 Harris Corporation Communications system employing chaotic spreading codes with static offsets
US8406276B2 (en) 2008-12-29 2013-03-26 Harris Corporation Communications system employing orthogonal chaotic spreading codes
US8457077B2 (en) 2009-03-03 2013-06-04 Harris Corporation Communications system employing orthogonal chaotic spreading codes
US8509284B2 (en) 2009-06-08 2013-08-13 Harris Corporation Symbol duration dithering for secured chaotic communications
US8428102B2 (en) 2009-06-08 2013-04-23 Harris Corporation Continuous time chaos dithering
US8428103B2 (en) 2009-06-10 2013-04-23 Harris Corporation Discrete time chaos dithering
US8385385B2 (en) 2009-07-01 2013-02-26 Harris Corporation Permission-based secure multiple access communication systems
US8379689B2 (en) 2009-07-01 2013-02-19 Harris Corporation Anti-jam communications having selectively variable peak-to-average power ratio including a chaotic constant amplitude zero autocorrelation waveform
US8406352B2 (en) 2009-07-01 2013-03-26 Harris Corporation Symbol estimation for chaotic spread spectrum signal
US8428104B2 (en) 2009-07-01 2013-04-23 Harris Corporation Permission-based multiple access communications systems
US8369376B2 (en) 2009-07-01 2013-02-05 Harris Corporation Bit error rate reduction in chaotic communications
US8363700B2 (en) 2009-07-01 2013-01-29 Harris Corporation Rake receiver for spread spectrum chaotic communications systems
US8340295B2 (en) 2009-07-01 2012-12-25 Harris Corporation High-speed cryptographic system using chaotic sequences
US8369377B2 (en) 2009-07-22 2013-02-05 Harris Corporation Adaptive link communications using adaptive chaotic spread waveform
US8848909B2 (en) 2009-07-22 2014-09-30 Harris Corporation Permission-based TDMA chaotic communication systems
US8345725B2 (en) 2010-03-11 2013-01-01 Harris Corporation Hidden Markov Model detection for spread spectrum waveforms

Similar Documents

Publication Publication Date Title
JP2004279784A (ja) 有限体上演算装置、及び有限体上演算プログラム
JP6629466B2 (ja) 秘密計算システム、秘密計算装置、秘密計算方法、プログラム
US8300810B2 (en) Method for securely encrypting or decrypting a message
JP4682852B2 (ja) 暗号処理装置、および暗号処理方法、並びにコンピュータ・プログラム
WO2018135566A1 (ja) 秘密計算システム、秘密計算装置、秘密計算方法、プログラム
JP2001526416A (ja) 楕円曲線暗号化演算の最適化用変換方法
JP4351987B2 (ja) モンゴメリ変換装置、演算装置、icカード、暗号装置、復号装置及びプログラム
JP3542278B2 (ja) モンゴメリ・リダクション装置及び記録媒体
US20070053506A1 (en) Elliptic curve encryption processor, processing method of the processor using elliptic curves, and program for causing a computer to execute point scalar multiplication on elliptic curves
US7177422B2 (en) Elliptic curve encryption processing method, elliptic curve encryption processing apparatus, and program
JP4184120B2 (ja) 楕円曲線上スカラー倍演算装置、及び楕円曲線上スカラー倍演算プログラム
JP2000293507A (ja) 有限体演算における表現データ生成装置および方法
Graça et al. Computational bounds on polynomial differential equations
KR100974624B1 (ko) 센서 모트에서의 효율적인 타원 곡선 암호 연산 방법, 그장치 및 이를 기록한 기록매체
JP2007218997A (ja) 素数生成装置、プログラム及び方法
JP2004177673A (ja) ペアリング暗号装置、ペアリング暗号演算プログラム
Brüdern Daniel’s twists of Hooley’s Delta function
CN102625298A (zh) 一种基于ecc算法的安全ip核的实现方法及其装置
JP2005258228A (ja) 暗号処理演算方法、および暗号処理装置、並びにコンピュータ・プログラム
US20220239497A1 (en) Digital data management
JP2001194996A (ja) 多項式の除算装置
JP5010508B2 (ja) 楕円曲線暗号演算装置、方法及びプログラム並びに楕円曲線暗号演算システム及び方法
Lloris Ruiz et al. Two Galois Fields Cryptographic Applications
JP2004053814A (ja) 楕円曲線暗号装置及び楕円曲線暗号演算方法
JP2006235416A (ja) 楕円曲線暗号におけるスカラー倍計算装置、及び、そのプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050126

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20061018

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070529

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070712

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070904

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20080108