JP4580274B2 - ペアリング演算装置、ペアリング演算方法、およびペアリング演算プログラム - Google Patents
ペアリング演算装置、ペアリング演算方法、およびペアリング演算プログラム Download PDFInfo
- Publication number
- JP4580274B2 JP4580274B2 JP2005146556A JP2005146556A JP4580274B2 JP 4580274 B2 JP4580274 B2 JP 4580274B2 JP 2005146556 A JP2005146556 A JP 2005146556A JP 2005146556 A JP2005146556 A JP 2005146556A JP 4580274 B2 JP4580274 B2 JP 4580274B2
- Authority
- JP
- Japan
- Prior art keywords
- finite field
- miller
- pseudo
- operation unit
- pairing
- 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.)
- Active
Links
Images
Description
Tateペアリングによる暗号や署名の概要を図1に示す。有限体GF(p)上で定義される楕円をE/GF(p)とする。楕円E/GF(p)上のGF(p)有理点をP(x、y)、楕円E/GF(p)上のGF(pk)有理点をQ(xQ、yQ)とする。Tateペアリングでは、PとQを入力とし、Millerアルゴリズムによって有限体GF(pk)上の元fを出力し、さらにべき乗演算によってfを(pk−1)/m乗することで有限体GF(pk)上の元eへ写像し、出力する。ここで、pは素数または素数のべき乗、mは素数かつP、Q、eの位数、kはm|(pk−1)を満足する最小の整数、mは(p−1)の約数ではない、かつpとmの最大公約数は1である。
Tateペアリングで90%の計算量を占めるMiller演算装置30の内部構成例を図3に、処理フロー例を図4に示す。Miller演算装置30は、制御部100、代入部200、楕円上点生成部400、楕円加算部500、入出力部600、GF(pk)乗算部700、GF(pk)逆元部850、および記録部190から構成される。制御部100は、以下に示す処理フローに沿った処理を実行するために他の構成部を制御する。また、記録部190はハードディスク等の不揮発性のメモリでもよいし、一連の計算を行う間だけ一時的に記録する揮発性のメモリでもよい。また、組み合わせてもよい。
f’=rf ただし、rは有限体GF(pk/2)上の元 (1)
そこで、本発明ではkが偶数の場合に、この有限体の性質を利用し、Millerアルゴリズムよりも計算量が少ないアルゴリズム(以下、「擬似Millerアルゴリズム」という。)で、元f’を求め、元f’をべき乗演算することで元eを求める。
また、前記のMillerのアルゴリズムの多項式の乗算では、多項式を展開して計算する。具体的には、ステップS810とS880の多項式の乗算には、
l1(Q’)=cXQ’+dYQ’+e、l2(Q’)=gXQ’+h (7)
と表すことができる。ここで、c、d、e、g、hはGF(p)上の元である。さらに、フェルマーの小定理から、
[第1実施形態]
図6に本発明のペアリング演算装置の機能構成例を示す。図2との違いはMiller演算装置30の代わりに、擬似Miller演算装置10が備えられていることである。擬似Miller演算装置10は、前記の擬似逆元を用い、多項式を展開した乗算を行うことで、擬似Millerアルゴリズムを実現する装置である。擬似Miller演算装置10の内部構成例を図7に、擬似Miller演算装置10の処理フローを図8に示す。図7と図3との違いは、図7の記録部150に記録するデータの種類が、図3の記録部190に記録するデータの種類と異なるものがあること、擬似逆元を計算するためにGF(pk)逆元部850が擬似GF(pk)逆元部800に置き換えられたことである。まず、図4の説明中での「記録部190への記録」または「記録部190からの読み取り」は、図8では「記録部150への記録」または「記録部150からの読み取り」と読み替える。その他の図8の処理フローと図4の処理フローとの違いは、以下のとおりである。
ステップS770はステップS120に置き換える。ステップS120では、GF(pk)乗算部700が、Q’、S、T、2Tを記録部150から読み取り、l1(x,y)=0をTと2Tとを結ぶ直線、l2(x,y)=0を2TとOとを結ぶ直線として、l1(S)、l2(S)を計算し、記録部150に記録する。また、多項式l1(x,y)=cx+dy+eとl2(x,y)=gx+hの係数であるc、d、e、g、hとを求め、記録部150に記録する。
ステップS840は、ステップS160に置き換えられる。ステップS160では、GF(pk)乗算部700が、Q’、S、T、P,T+Pを記録部150から読み取り、l1(x,y)=0をTとPとを結ぶ直線、l2(x,y)=0をT+PとOとを結ぶ直線とし、l1(S)、l2(S)を計算して、記録部150に記録する。また、多項式l1(x,y)=cx+dyとl2(x,y)=gx+hの係数であるc、d、g、hとを求め、記録部150に記録する。なお、ステップS160とS120とを比べてみると、ステップS160には多項式l1(x,y)の係数eがない。これは、ステップS160では、e=0となるので、省略できるからである。
なお、本発明でもSを有限体GF(p)の元から選定すると(この場合、残りのk−1個の有限体GF(p)の元は0である。)、l1(S)、l2(S)の計算や演算を省略できる。
このように変更した処理フローによって、Millerアルゴリズムよりも計算量を少なくし、有限体GF(pk)上の元f’を求めることができる。
本発明によれば、擬似逆元を用いることで、演算量の多いGF(pk)の元どうしの乗算を多項式展開できる。また、多項式展開できるため、演算量の多いGF(pk)の元どうしの乗算を、多項式展開した上で、繰り返し計算に共通の項をあらかじめ計算しておくことができる。GF(p)の元どうしの乗算の演算量をO(k)と表現すると、通常GF(pk)の元どうしの乗算の演算量はO(k2)となり、Karatsuba法などを用いた場合でもO(k1.5)の演算量となる。一方、GF(pk)の元とGF(p)の元との乗算の演算量は、O(k)となるため、演算量を削減することができる。特に、kが大きくなると本発明の効果も大きくなる。
Claims (5)
- pは素数または素数のべき乗、kは偶数であって、有限体GF(p)上の楕円曲線上の点Pと有限体GF(pk)上の楕円曲線上の点Qを入力とし、入力された点から有限体GF(pk)上の元f’を求める擬似Miller演算部と、求めた有限体上の元を有限体GF(pk)上の元e(P,Q)に写像し、出力するべき乗演算部とを備えるペアリング演算装置において、
XとYをGF(pk)上の元、X^をXの共役元、c、d、e、g、hをGF(p)上の元とする場合に、
PとQから有限体GF(pk)上の元fを求めるMillerアルゴリズムを、Millerアルゴリズム内で用いる有限体GF(pk)上の元Lの逆元の代わりに
(cX+dY+e)・(gX^+h)の計算を、あらかじめA=XX^、B=YX^を求めて記録手段に記録しておき、cgA+dgB+egX^+chX+dhY+ehにより求めること
を特徴とする前記擬似Miller演算部と、
前記擬似Miller演算部で求めた元f’を有限体GF(pk)上の元e(P,Q)にべき乗演算により写像することを特徴とする前記べき乗演算部と、
を備えるペアリング演算装置。 - pは素数または素数のべき乗、kは偶数であって、有限体GF(p)上の楕円曲線上の点Pと有限体GF(pk)上の楕円曲線上の点Qを入力とし、入力された点から有限体GF(pk)上の元f’を求める擬似Miller演算部と、求めた有限体上の元を有限体GF(pk)上の元e(P,Q)に写像し、出力するべき乗演算部とを備えるペアリング演算装置において、
XとYをGF(pk)上の元、X^をXの共役元、x、y、c、d、g、hをGF(p)上の元とする場合に、
PとQから有限体GF(pk)上の元fを求めるMillerアルゴリズムを、Millerアルゴリズム内で用いる有限体GF(pk)上の元Lの逆元の代わりに
(c(X−x)+d(Y−y))・(gX^+h)の計算を、あらかじめC=(X−x)X^、D=(Y−y)X^を求めて記録手段に記録しておき、cgC+dgD+ch(X−x)+dh(Y−y)により求めること
を特徴とする前記擬似Miller演算部と、
前記擬似Miller演算部で求めた元f’を有限体GF(pk)上の元e(P,Q)にべき乗演算により写像することを特徴とする前記べき乗演算部と、
を備えるペアリング演算装置。 - pは素数または素数のべき乗、kは偶数であって、擬似Miller演算部で、有限体GF(p)上の楕円曲線上の点Pと有限体GF(pk)上の楕円曲線上の点Qを入力とし、入力された点から有限体GF(pk)上の元f’を求め、べき乗演算部で、求めた有限体上の元を有限体GF(pk)上の元e(P,Q)に写像し、出力するペアリング演算方法において、
XとYをGF(pk)上の元、X^をXの共役元、c、d、e、g、hをGF(p)上の元とする場合に、
前記擬似Miller演算部で、PとQから有限体GF(pk)上の元fを求めるMillerアルゴリズムを、Millerアルゴリズム内で用いる有限体GF(pk)上の元Lの逆元の代わりに
前記擬似Miller演算部で、(cX+dY+e)・(gX^+h)の計算を、あらかじめA=XX^、B=YX^を求めて記録手段に記録しておき、cgA+dgB+egX^+chX+dhY+ehにより求める過程と、
前記べき乗演算部で、前記擬似Miller演算部で求めた元f’を有限体GF(pk)上の元e(P,Q)にべき乗演算により写像する過程と、
を有することを特徴とするペアリング演算方法。 - pは素数または素数のべき乗、kは偶数であって、擬似Miller演算部で、有限体GF(p)上の楕円曲線上の点Pと有限体GF(pk)上の楕円曲線上の点Qを入力とし、入力された点から有限体GF(pk)上の元f’を求め、べき乗演算部で、求めた有限体上の元を有限体GF(pk)上の元e(P,Q)に写像し、出力するペアリング演算方法において、
XとYをGF(pk)上の元、X^をXの共役元、x、y、c、d、g、hをGF(p)上の元とする場合に、
前記擬似Miller演算部で、PとQから有限体GF(pk)上の元fを求めるMillerアルゴリズムを、Millerアルゴリズム内で用いる有限体GF(pk)上の元Lの逆元の代わりに
前記擬似Miller演算部で、(c(X−x)+d(Y−y))・(gX^+h)の計算を、あらかじめC=(X−x)X^、D=(Y−y)X^を求めて記録手段に記録しておき、cgC+dgD+ch(X−x)+dh(Y−y)により求める過程と、
前記べき乗演算部で、前記擬似Miller演算部で求めた元f’を有限体GF(pk)上の元e(P,Q)にべき乗演算により写像する過程と、
を有することを特徴とするペアリング演算方法。 - 請求項3または4記載のペアリング演算方法の各過程をコンピュータにより実現するペアリング演算プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005146556A JP4580274B2 (ja) | 2005-05-19 | 2005-05-19 | ペアリング演算装置、ペアリング演算方法、およびペアリング演算プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005146556A JP4580274B2 (ja) | 2005-05-19 | 2005-05-19 | ペアリング演算装置、ペアリング演算方法、およびペアリング演算プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2006323160A JP2006323160A (ja) | 2006-11-30 |
JP4580274B2 true JP4580274B2 (ja) | 2010-11-10 |
Family
ID=37542888
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005146556A Active JP4580274B2 (ja) | 2005-05-19 | 2005-05-19 | ペアリング演算装置、ペアリング演算方法、およびペアリング演算プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4580274B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4630132B2 (ja) * | 2005-05-27 | 2011-02-09 | 日本電信電話株式会社 | ペアリング演算方法、その方法を用いた装置およびプログラム |
WO2009020216A1 (ja) * | 2007-08-09 | 2009-02-12 | National University Corporation Okayama University | 演算方法及び演算装置 |
JP5168649B2 (ja) * | 2008-09-03 | 2013-03-21 | 国立大学法人 岡山大学 | ペアリング演算装置、ペアリング演算方法、及びペアリング演算プログラム |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004177673A (ja) * | 2002-11-27 | 2004-06-24 | Fujitsu Ltd | ペアリング暗号装置、ペアリング暗号演算プログラム |
JP2005316267A (ja) * | 2004-04-30 | 2005-11-10 | Hitachi Ltd | 楕円曲線ペアリング演算装置 |
-
2005
- 2005-05-19 JP JP2005146556A patent/JP4580274B2/ja active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004177673A (ja) * | 2002-11-27 | 2004-06-24 | Fujitsu Ltd | ペアリング暗号装置、ペアリング暗号演算プログラム |
JP2005316267A (ja) * | 2004-04-30 | 2005-11-10 | Hitachi Ltd | 楕円曲線ペアリング演算装置 |
Also Published As
Publication number | Publication date |
---|---|
JP2006323160A (ja) | 2006-11-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Bhardwaj et al. | Power-and area-efficient approximate wallace tree multiplier for error-resilient systems | |
KR101154695B1 (ko) | 암호 처리 연산 장치 | |
JP2006227562A (ja) | 暗号処理演算方法、および暗号処理装置、並びにコンピュータ・プログラム | |
JP4580274B2 (ja) | ペアリング演算装置、ペアリング演算方法、およびペアリング演算プログラム | |
JP6621813B2 (ja) | 難読化された算術を実行するための電子計算装置 | |
Khan et al. | High speed ECC implementation on FPGA over GF (2 m) | |
Nguyen et al. | Efficient algorithm and architecture for elliptic curve cryptographic processor | |
US11502836B2 (en) | Method for performing cryptographic operations on data in a processing device, corresponding processing device and computer program product | |
Mao et al. | High-performance and configurable SW/HW co-design of Post-Quantum Signature CRYSTALS-Dilithium | |
JPWO2006030496A1 (ja) | 楕円曲線暗号演算装置、楕円曲線を用いた演算装置の演算方法および楕円曲線上の点のスカラー倍演算をコンピュータに実行させるプログラム | |
JP4630132B2 (ja) | ペアリング演算方法、その方法を用いた装置およびプログラム | |
KR102184189B1 (ko) | 꼬인 에드워즈 곡선에 대한 4차 아이소제니 계산 방법 | |
JP4585372B2 (ja) | ペアリング演算装置、ペアリング演算方法、およびペアリング演算プログラム | |
JP4644039B2 (ja) | ペアリング演算方法、その方法を用いた装置およびプログラム | |
EP1578054B1 (en) | Cryptography-processing method, cryptography-processing apparatus and computer program | |
Nath et al. | Security and efficiency trade-offs for elliptic curve Diffie–Hellman at the 128-bit and 224-bit security levels | |
KR102184188B1 (ko) | 꼬인 에드워즈 곡선에 대한 3차 아이소제니 계산 방법 | |
KR101707334B1 (ko) | 효율적인 타원곡선 암호화 연산 장치 및 그 방법 | |
JP4630117B2 (ja) | マルチペアリング演算方法、ペアリング比較方法、それらを用いた装置、およびプログラム | |
Karshon et al. | Circle and torus actions on equal symplectic blow-ups of CP^ 2 | |
Inala et al. | Relative performance of multipliers: A fault tolerance perspective for parallel FFTs | |
US9311052B2 (en) | Method of performing multiplication operation in binary extension finite field | |
WO2022009384A1 (ja) | 最終べき計算装置、ペアリング演算装置、暗号処理装置、最終べき計算方法及び最終べき計算プログラム | |
JP6040052B2 (ja) | ペアリング演算装置、ペアリング演算方法、およびプログラム | |
KR100377185B1 (ko) | 암호시스템의 연산속도 개선 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20070323 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070810 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20100728 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20100817 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100827 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130903 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4580274 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |