JP4189828B1 - ペアリング演算装置、ペアリング演算方法、及びペアリング演算プログラム - Google Patents

ペアリング演算装置、ペアリング演算方法、及びペアリング演算プログラム Download PDF

Info

Publication number
JP4189828B1
JP4189828B1 JP2007282487A JP2007282487A JP4189828B1 JP 4189828 B1 JP4189828 B1 JP 4189828B1 JP 2007282487 A JP2007282487 A JP 2007282487A JP 2007282487 A JP2007282487 A JP 2007282487A JP 4189828 B1 JP4189828 B1 JP 4189828B1
Authority
JP
Japan
Prior art keywords
calculation
value
cpu
pairing
storage means
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.)
Expired - Fee Related
Application number
JP2007282487A
Other languages
English (en)
Other versions
JP2009109772A (ja
Inventor
正剛 赤根
保之 野上
良孝 森川
Original Assignee
国立大学法人 岡山大学
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 国立大学法人 岡山大学 filed Critical 国立大学法人 岡山大学
Priority to JP2007282487A priority Critical patent/JP4189828B1/ja
Priority to CN200880114080.6A priority patent/CN101842824B/zh
Priority to US12/740,587 priority patent/US8238550B2/en
Priority to KR1020107011866A priority patent/KR20100094487A/ko
Priority to EP08843368A priority patent/EP2216767A1/en
Priority to PCT/JP2008/069683 priority patent/WO2009057656A1/ja
Application granted granted Critical
Publication of JP4189828B1 publication Critical patent/JP4189828B1/ja
Publication of JP2009109772A publication Critical patent/JP2009109772A/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3066Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
    • H04L9/3073Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves involving pairings, e.g. identity based encryption [IBE], bilinear mappings or bilinear pairings, e.g. Weil or Tate pairing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/60Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers
    • G06F7/72Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers using residue arithmetic
    • G06F7/724Finite field arithmetic
    • G06F7/725Finite field arithmetic over elliptic curves
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • H04L9/3255Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures using group based signatures, e.g. ring or threshold signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/04Masking or blinding
    • H04L2209/046Masking or blinding of operations, operands or results of the operations

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Mathematical Analysis (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Mathematical Physics (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Computational Mathematics (AREA)
  • Algebra (AREA)
  • General Engineering & Computer Science (AREA)
  • Complex Calculations (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Image Processing (AREA)

Abstract

【課題】ペアリング演算を高速に実行可能としたペアリング演算装置、ペアリング演算方法、及びペアリング演算プログラムを提供する。
【解決手段】Ateペアリングe(Q,P)を
【数49】
Figure 0004189828
とし、kが偶数、3の倍数、4の倍数、6の倍数のいずれかである場合に、ミラー関数fs,Q(P)の導出に必要となる有理関数の演算を、このfs,Q(P)の(qk−1)/r乗のべき乗算の演算によって1となる平方非剰余あるいは3乗非剰余なvを用いたツイスト曲線により特定される真部分体上の演算として行う。
【選択図】図3

Description

本発明は、ペアリング演算を高速に実行可能としたペアリング演算装置、ペアリング演算方法、及びペアリング演算プログラムに関する。
昨今、高速な電気通信回線が低価格で利用可能となったことにより、インターネットなどのネットワーク上において、音楽や映像の配信、インターネットバンキング、行政機関への電子申請などのような各種のサービスが提供可能となっている。
また、企業による業務形態も変化しており、ノートパソコンや携帯電話などのいわゆるモバイル端末装置を用いて外出先などから会社のサーバ装置にアクセスして、各種の情報の入力あるいは取得が可能となっている。
特に、日本では、携帯電話をネットワークへの接続装置として利用するサービスが充実しており、いかなる所からでも所要のネットワークにアクセスして各種の情報を入手したり、サービスを利用したりすることができるいわゆるユビキタス社会の到来がいよいよ現実味を帯びてきた。
このように各種の情報を取得したり、サービスを利用したりするためにネットワークにアクセスする際には、所要の認証手段を備えた認証サーバによって認証処理が行われ、ネットワークにアクセスした利用者が、あらかじめ登録されている特定の利用者であることが認証されて、情報の取得あるいはサービスの利用が可能となっている。
特に、最近では、ディジタル署名技術を用いることにより、取り扱っている情報が第三者によって改ざんされていないこと、あるいは第三者に漏洩していないことを保証可能として、秘匿性の高い情報もネットワーク上で安全に取り扱い可能となっていることにより、さらに積極的にネットワークが利用されることとなっている。
ただし、このディジタル署名では、利用者個人が特定されるため、認証サーバにおける認証処理に基づいて認証サーバに利用者の履歴が情報として蓄積されることとなっており、この履歴情報は一種の個人情報であって、個人情報保護の問題があった。
そこで、ディジタル署名を拡張したディジタルグループ署名を用いることが提案されている。ディジタルグループ署名を用いた場合には、利用者は、認証サーバに対して匿名でグループに属していることのみを証明する署名データを送信し、認証サーバでは、受信した署名データから利用者を特定することなく利用者が所定のグループに属していることを認証している。したがって、認証サーバに各利用者の使用の履歴情報が蓄積されることを防止できる一方で、グループに属さない利用者による不正利用を阻止可能としている。
ここで、ディジタルグループ署名における匿名認証には、ペアリング演算が用いられている。ペアリング演算では、2入力1出力の関数を用いた演算を行っており、たとえば、Pを素体Fq上の有理点、Qをk次拡大体Fq k上の有理点として、ペアリングでPとQとを入力して拡大体F* q kの元zが出力されるとき、a倍のPと、b倍のQを入力するとzのab乗が算出されることを利用しているものであり、このような性質のことを双線形性と呼ぶ。なお、ここで、「k」を埋込み次数と呼び、「F* q k」は、正しくは、以下の表示であるが、表示の制限上、「F* q k」と表示している。
Figure 0004189828
一般的に、有理点P,Qはそれぞれ楕円曲線上の点が用いられ、このような楕円曲線のペアリングの演算は、ミラーのアルゴリズムを用いて演算するステップと、最終べきのべき乗演算を行うステップとで構成されている。
たとえば、10,000人のメンバーで構成されるグループのディジタルグループ署名であって、各メンバーのアクセス権の発行と失効とを柔軟に対応可能とするために、ディジタルグループ署名の検証時に失効者分のペアリング演算を行う方式が知られている。この場合、失効者が100人であれば100回のペアリング演算が必要であり、現時点での一般的な電子計算機による1回のペアリングの演算に約0.1秒を要していることから、100回のペアリング演算には10秒を要することとなって、大規模なディジタルグループ署名での利用は実用的とは言えなかった。
そこで、ペアリングの演算速度を向上させるために様々な開発が行われており、たとえば有限体上の楕円曲線上で定義されるTateペアリング演算における高速化の技術が提案されている(例えば、特許文献1参照。)。
特開2005−316267号公報
しかしながら、現在提案されているペアリング演算の高速化技術では、未だに大規模なディジタルグループ署名での利用に適う速度とはなっておらず、ディジタルグループ署名のメンバー数を制限しなければならないという問題があった。
本発明者らは、このような現状に鑑み、ペアリング演算を高速化すべく研究開発を行って、本発明を成すに至ったものである。
本発明のペアリング演算装置では、曲線の式がy2=x3+ax+b,a∈Fq,b∈Fq(q:3より大きい素数のべき乗)で与えられ、埋込み次数が2h次(h:自然数)で、Fq 2hを定義体とするペアリング可能な楕円曲線上の有理点のなす加法群をE、素数位数rの有理点の集合をE[r]とし、φqをフロベニウス自己準同型写像として、
1=E[r]∩Ker(φq−[1])
2=E[r]∩Ker(φq−[q])
により、
e:G2×G1→F* q 2h/(F* q 2h)r
である非退化な双線形写像として定義されるAteペアリングeによって、P∈G1、Q∈G2とし、フロベニウス自己準同型写像φqのトレースtを用いてs=t−1とし、ミラー関数fs,Q(・)を用いて、
Figure 0004189828
としてAteペアリングe(Q,P)を演算するCPUを備えたペアリング演算装置において、
前記s=t−1又は前記tと、P∈E(F q )であるPと、Q'∈E'(F q h )であるQ'と、v -1 の値と、v -3/2 の値とを記憶する記憶手段を備え、
fs,Q(P)の導出に必要となる有理関数の演算を、このfs,Q(P)の(q2h−1)/r乗のべき乗算の演算によって1となる平方非剰余なv∈Fq hを用いて、E(Fq h)のツイスト曲線E'(Fq h):y2=x3+av-2x+bv-3による真部分体上で行うこととした。
特に、前記CPUは、
前記s=t−1又は前記tと、Pと、Q'とを前記記憶手段から読み出して入力する入力手段と、
前記v -1 の値と、前記v -3/2 の値とを前記記憶手段から読み出して、有理点Pの座標(xP,yP)に対して、n←xP-1、m←yP-3/2の代入演算を行うとともに、初期値設定としてf←1、T'←Q'の代入演算を行う代入手段と、
有理点Tを通る接線lT,T(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,T(xP,yP)を演算する代わりに、lT,T(xP,yP)v-3/2をlT',T'(n,m)で演算して、f←f2・lT',T'(n,m)の代入演算を行う第1演算手段と、
T'←2T'の代入演算を行う第2演算手段と、
前記sを2進数表示とした場合の所定のビットの値が1である場合に、有理点TとQを通る直線lT,Q(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,Q(xP,yP)を演算する代わりに、lT,Q(xP,yP)v-3/2をlT',Q'(n,m)で演算して、f←f・lT',Q'(n,m)の代入演算を行う第3演算手段と、
前記sを2進数表示とした場合の所定のビットの値が1である場合に、T'←T'+Q'の代入演算を行う第4演算手段と、
前記第1演算手段から前記第2演算手段までの演算手段による演算を行なう毎に前記sを2進数表示とした場合の所定のビットの値を1ずつ減算するとともに、前記第1演算手段から前記第4演算手段までの演算手段による演算結果のfを前記記憶手段に記憶する手段と、
前記記憶手段に記憶したfを用いて(q2h−1)/r乗のべき乗算を演算する第5演算手段と、
前記第5演算手段による演算結果をペアリング演算の結果として前記記憶手段に記憶する手段と
して機能することにも特徴を有するものである。
また、本発明のペアリング演算装置では、曲線の式がy2=x3+a,a∈Fq(q:3より大きい素数のべき乗)で与えられ、埋込み次数が3h次(h:自然数)で、Fq 3hを定義体とするペアリング可能な楕円曲線上の有理点のなす加法群をE、素数位数rの有理点の集合をE[r]とし、φqをフロベニウス自己準同型写像として、
1=E[r]∩Ker(φq−[1])
2=E[r]∩Ker(φq−[q])
により、
e:G2×G1→F* q 3h/(F* q 3h)r
である非退化な双線形写像として定義されるAteペアリングeによって、P∈G1、Q∈G2とし、フロベニウス自己準同型写像φqのトレースtを用いてs=t−1とし、ミラー関数fs,Q(・)を用いて、
Figure 0004189828
としてAteペアリングe(Q,P)を演算するCPUを備えたペアリング演算装置において、
前記s=t−1又は前記tと、P∈E(F q )であるPと、Q'∈E'(F q h )であるQ'と、v -1/3 の値と、v -1/2 の値とを記憶する記憶手段を備え、
fs,Q(P)の導出に必要となる有理関数の演算を、このfs,Q(P)の(q3h−1)/r乗のべき乗算の演算によって1となる平方剰余かつ3乗非剰余なv∈Fq hを用いて、E(Fq h)のツイスト曲線E'(Fq h):y2=x3+av-1による真部分体上で行うこととした。
特に、前記CPUは、
前記s=t−1又は前記tと、Pと、Q'とを前記記憶手段から読み出して入力する入力手段と、
前記v -1/3 の値と、前記v -1/2 の値とを前記記憶手段から読み出して、有理点Pの座標(xP,yP)に対して、n←xP-1/3、m←yP-1/2の代入演算を行うとともに、初期値設定としてf←1、T'←Q'の代入演算を行う代入手段と、
有理点Tを通る接線lT,T(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,T(xP,yP)を演算する代わりに、lT,T(xP,yP)v-1/2をlT',T'(n,m)で演算して、f←f2・lT',T'(n,m)の代入演算を行う第1演算手段と、
T'←2T'の代入演算を行う第2演算手段と、
前記sを2進数表示とした場合の所定のビットの値が1である場合に、有理点TとQを通る直線lT,Q(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,Q(xP,yP)を演算する代わりに、lT,Q(xP,yP)v-1/2をlT',Q'(n,m)で演算して、f←f・lT',Q'(n,m)の代入演算を行う第3演算手段と、
前記sを2進数表示とした場合の所定のビットの値が1である場合に、T'←T'+Q'の代入演算を行う第4演算手段と、
前記第1演算手段から前記第2演算手段までの演算手段による演算を行なう毎に前記sを2進数表示とした場合の所定のビットの値を1ずつ減算するとともに、前記第1演算手段から前記第4演算手段までの演算手段による演算結果のfを前記記憶手段に記憶する手段と、
前記記憶手段に記憶したfを用いて(q3h−1)/r乗のべき乗算を演算する第5演算手段と、
前記第5演算手段による演算結果をペアリング演算の結果として前記記憶手段に記憶する手段と
して機能することにも特徴を有するものである。
また、曲線の式がy2=x3+ax,a∈Fq(q:3より大きい素数のべき乗)で与えられ、埋込み次数が4h次(h:自然数)で、4がqh−1を割り切るものとし、Fq 4hを定義体とするペアリング可能な楕円曲線上の有理点のなす加法群をE、素数位数rの有理点の集合をE[r]とし、φqをフロベニウス自己準同型写像として、
1=E[r]∩Ker(φq−[1])
2=E[r]∩Ker(φq−[q])
により、
e:G2×G1→F* q 4h/(F* q 4h)r
である非退化な双線形写像として定義されるAteペアリングeによって、P∈G1、Q
∈G2とし、フロベニウス自己準同型写像φqのトレースtを用いてs=t−1とし、ミラー関数fs,Q(・)を用いて、
Figure 0004189828
としてAteペアリングe(Q,P)を演算するCPUを備えたペアリング演算装置において、
前記s=t−1又は前記tと、P∈E(F q )であるPと、Q'∈E'(F q h )であるQ'と、v -1/2 の値と、v -3/4 の値とを記憶する記憶手段を備え、
fs,Q(P)の導出に必要となる有理関数の演算を、このfs,Q(P)の(q4h−1)/r乗のべき乗算の演算によって1となる平方非剰余なv∈Fq hを用いて、E(Fq h)のツイスト曲線E'(Fq h):y2=x3+av-1xによる真部分体上で行うこととした。
特に、前記CPUは、
前記s=t−1又は前記tと、Pと、Q'とを前記記憶手段から読み出して入力する入力手段と、
前記v -1/2 の値と、前記v -3/4 の値とを前記記憶手段から読み出して、有理点Pの座標(xP,yP)に対して、n←xP-1/2、m←yP-3/4の代入演算を行うとともに、初期値設定としてf←1、T'←Q'の代入演算を行う代入手段と、
有理点Tを通る接線lT,T(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,T(xP,yP)を演算する代わりに、lT,T(xP,yP)v-3/4をlT',T'(n,m)で演算して、f←f2・lT',T'(n,m)の代入演算を行う第1演算手段と、
T'←2T'の代入演算を行う第2演算手段と、
前記sを2進数表示とした場合の所定のビットの値が1である場合に、有理点TとQを通る直線lT,Q(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,Q(xP,yP)を演算する代わりに、lT,Q(xP,yP)v-3/4をlT',Q'(n,m)で演算して、f←f・lT',Q'(n,m)の代入演算を行う第3演算手段と、
前記sを2進数表示とした場合の所定のビットの値が1である場合に、T'←T'+Q'の代入演算を行う第4演算手段と、
前記第1演算手段から前記第2演算手段までの演算手段による演算を行なう毎に前記sを2進数表示とした場合の所定のビットの値を1ずつ減算するとともに、前記第1演算手段から前記第4演算手段までの演算手段による演算結果のfを前記記憶手段に記憶する手段と、
前記記憶手段に記憶したfを用いて(q4h−1)/r乗のべき乗算を演算する第5演算手段と
前記第5演算手段による演算結果をペアリング演算の結果として前記記憶手段に記憶する手段と
して機能することにも特徴を有するものである。
また、本発明のペアリング演算装置では、曲線の式がy2=x3+a,a∈Fq(q:3より大きい素数のべき乗)で与えられ、埋込み次数が6h次(h:自然数)で、Fq 6hを定義体とするペアリング可能な楕円曲線上の有理点のなす加法群をE、素数位数rの有理点の集合をE[r]とし、φqをフロベニウス自己準同型写像として、
1=E[r]∩Ker(φq−[1])
2=E[r]∩Ker(φq−[q])
により、
e:G2×G1→F* q 6h/(F* q 6h)r
である非退化な双線形写像として定義されるAteペアリングeによって、P∈G1、Q∈G2とし、フロベニウス自己準同型写像φqのトレースtを用いてs=t−1とし、ミラー関数fs,Q(・)を用いて、
Figure 0004189828
としてAteペアリングe(Q,P)を演算するCPUを備えたペアリング演算装置において、
前記s=t−1又は前記tと、P∈E(F q )であるPと、Q'∈E'(F q h )であるQ'と、v -1/3 の値と、v -1/2 の値とを記憶する記憶手段を備え、
fs,Q(P)の導出に必要となる有理関数の演算を、このfs,Q(P)の(q6h−1)/r乗のべき乗算の演算によって1となる平方非剰余かつ3乗非剰余なv∈Fq hを用いて、E(Fq h)のツイスト曲線E'(Fq h):y2=x3+av-1による真部分体上で行うこととした。
特に、前記CPUは、
前記s=t−1又は前記tと、Pと、Q'とを前記記憶手段から読み出して入力する入力手段と、
前記v -1/3 の値と、前記v -1/2 の値とを前記記憶手段から読み出して有理点Pの座標(xP,yP)に対して、n←xP-1/3、m←yP-1/2の代入演算を行うとともに、初期値設定としてf←1、T'←Q'の代入演算を行う代入手段と、
有理点Tを通る接線lT,T(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した
値lT,T(xP,yP)を演算する代わりに、lT,T(xP,yP)v-1/2をlT',T'(n,m)で演算して、f←f2・lT',T'(n,m)の代入演算を行う第1演算手段と、
T'←2T'の代入演算を行う第2演算手段と、
前記sを2進数表示とした場合の所定のビットの値が1である場合に、有理点TとQを
通る直線lT,Q(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,Q(xP
P)を演算する代わりに、lT,Q(xP,yP)v-1/2をlT',Q'(n,m)で演算して、f←f・l
T',Q'(n,m)の代入演算を行う第3演算手段と、
前記sを2進数表示とした場合の所定のビットの値が1である場合に、T'←T'+Q'の代入演算を行う第4演算手段と、
前記第1演算手段から前記第4演算手段までの演算手段による演算を行なう毎に前記sを2進数表示とした場合の所定のビットの値を1ずつ減算するとともに、その演算結果のfを前記記憶手段に記憶する手段と、
前記記憶手段に記憶したfを用いて(q6h−1)/r乗のべき乗算を演算する第5演算手段と
前記第5演算手段による演算結果をペアリング演算の結果として前記記憶手段に記憶する手段と
して機能することにも特徴を有するものである。
また、本発明のペアリング演算方法では、曲線の式がy2=x3+ax+b,a∈Fq,b∈Fq(q:3より大きい素数のべき乗)で与えられ、埋込み次数が2h次(h:自然数)で、Fq 2hを定義体とするペアリング可能な楕円曲線上の有理点のなす加法群をE、素数位数rの有理点の集合をE[r]とし、φqをフロベニウス自己準同型写像として、
1=E[r]∩Ker(φq−[1])
2=E[r]∩Ker(φq−[q])
により、
e:G2×G1→F* q 2h/(F* q 2h)r
である非退化な双線形写像として定義されるAteペアリングeによって、P∈G1、Q∈G2とし、フロベニウス自己準同型写像φqのトレースtを用いてs=t−1とし、ミラー関数fs,Q(・)を用いて、
Figure 0004189828
としてAteペアリングe(Q,P)を、CPU及び記憶手段を備えた電子計算機で演算するペアリング演算方法において
前記s=t−1又は前記tと、P∈E(F q )であるPと、Q'∈E'(F q h )であるQ'と、v -1 の値と、v -3/2 の値とを前記記憶手段に記憶するステップを有し、
fs,Q(P)の(q2h−1)/r乗のべき乗算の演算によって1となる平方非剰余なv∈Fq h、E(Fq h)のツイスト曲線E'(Fq h):y2=x3+av-2x+bv-3を用いて、
前記電子計算機のCPUを入力手段として機能させて、前記s=t−1又は前記tと、PとQ'とを前記記憶手段から読み出して入力する第1ステップと、
前記電子計算機のCPUを代入手段として機能させて、前記v -1 の値と、前記v -3/2 の値とを前記記憶手段から読み出して、有理点Pの座標(xP,yP)に対して、n←xP-1、m←yP-3/2の代入演算を行う第2ステップと、
前記電子計算機のCPUを代入手段として機能させて、初期値設定としてf←1、T'←Q'の代入演算を行う第3ステップと、
前記電子計算機のCPUを第1演算手段として機能させて、有理点Tを通る接線lT,T(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,T(xP,yP)を演算する代わりに、lT,T(xP,yP)v-3/2をlT',T'(n,m)で演算して、f←f2・lT',T'(n,m)の代入演算を行う第4ステップと、
前記電子計算機のCPUを第2演算手段として機能させて、T'←2T'の代入演算を行う第5ステップと、
前記電子計算機のCPUを第3演算手段として機能させて、前記sを2進数表示とした場合の所定のビットの値が1である場合に、有理点TとQを通る直線lT,Q(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,Q(xP,yP)を演算する代わりに、lT,Q(xP,yP)v-3/2をlT',Q'(n,m)で演算して、f←f・lT',Q'(n,m)の代入演算を行う第6ステップと、
前記電子計算機のCPUを第4演算手段として機能させて、前記sを2進数表示とした場合の所定のビットの値が1である場合に、T'←T'+Q'の代入演算を行う第7ステップと、
前記電子計算機のCPUにより、前記第4ステップから前記第5ステップまでの演算を行なう毎に前記sを2進数表示とした場合の所定のビットの値を1ずつ減算する第8ステップと、
前記第4ステップから前記第7ステップまでの演算結果のfを前記記憶手段に記憶する第9ステップと、
前記電子計算機のCPUを第5演算手段として機能させて、前記記憶手段に記憶したfを用いて(q2h−1)/r乗のべき乗算の演算を行う第10ステップと、
前記電子計算機のCPUにより、第10ステップによる演算結果をペアリング演算の結果として前記記憶手段に記憶する第11ステップとを有することとした。
また、本発明のペアリング演算方法では、曲線の式がy2=x3+a,a∈Fq(q:3より大きい素数のべき乗)で与えられ、埋込み次数が3h次(h:自然数)で、Fq 3hを定義体とするペアリング可能な楕円曲線上の有理点のなす加法群をE、素数位数rの有理点の集合をE[r]とし、φqをフロベニウス自己準同型写像として、
1=E[r]∩Ker(φq−[1])
2=E[r]∩Ker(φq−[q])
により、
e:G2×G1→F* q 3h/(F* q 3h)r
である非退化な双線形写像として定義されるAteペアリングeによって、P∈G1、Q∈G2とし、フロベニウス自己準同型写像φqのトレースtを用いてs=t−1とし、ミラー関数fs,Q(・)を用いて、
Figure 0004189828
としてAteペアリングe(Q,P)を、CPU及び記憶手段を備えた電子計算機で演算するペアリング演算装置において、
前記s=t−1又は前記tと、P∈E(F q )であるPと、Q'∈E'(F q h )であるQ'と、v -1/3 の値と、v -1/2 の値とを前記記憶手段に記憶するステップを有し、
fs,Q(P)の(q3h−1)/r乗のべき乗算の演算によって1となる平方剰余かつ3乗非剰余なv∈Fq h、E(Fq h)のツイスト曲線E'(Fq h):y2=x3+av-1を用いて、
前記電子計算機のCPUを代入手段として機能させて、前記s=t−1又は前記tと、PとQ'とを前記記憶手段から読み出して入力する第1ステップと、
前記電子計算機のCPUを代入手段として機能させて、前記v -1/3 の値と、前記v -1/2 の値とを前記記憶手段から読み出して、有理点Pの座標(xP,yP)に対して、n←xP-1/3、m←yP-1/2の代入演算を行う第2ステップと、
前記電子計算機のCPUを代入手段として機能させて、初期値設定としてf←1、T'←Q'の代入演算を行う第3ステップと、
前記電子計算機のCPUを第1演算手段として機能させて、有理点Tを通る接線lT,T(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,T(xP,yP)を演算する代わりに、lT,T(xP,yP)v-1/2をlT',T'(n,m)で演算して、f←f2・lT',T'(n,m)の代入演算を行う第4ステップと、
前記電子計算機のCPUを第2演算手段として機能させて、T'←2T'の代入演算を行う第5ステップと、
前記電子計算機のCPUを第3演算手段として機能させて、前記sを2進数表示とした場合の所定のビットの値が1である場合に、有理点TとQを通る直線lT,Q(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,Q(xP,yP)を演算する代わりに、lT,Q(xP,yP)v-1/2をlT',Q'(n,m)で演算して、f←f・lT',Q'(n,m)の代入演算を行う第6ステップと、
前記電子計算機のCPUを第4演算手段として機能させて、前記sを2進数表示とした場合の所定のビットの値が1である場合に、T'←T'+Q'の代入演算を行う第7ステップと、
前記電子計算機のCPUにより、前記第4ステップから前記第5ステップまでの演算を行なう毎に前記sを2進数表示とした場合の所定のビットの値を1ずつ減算する第8ステップと、
前記第4ステップから前記第7ステップまでの演算結果のfを前記記憶手段に記憶する第9ステップと、
前記電子計算機のCPUを第5演算手段として機能させて、前記記憶手段に記憶したfを用いて(q3h−1)/r乗のべき乗算の演算を行う第10ステップと
前記電子計算機のCPUにより、第10ステップによる演算結果をペアリング演算の結果として前記記憶手段に記憶する第11ステップとを有することとした。
また、本発明のペアリング演算方法では、曲線の式がy2=x3+ax,a∈Fq(q:3より大きい素数のべき乗)で与えられ、埋込み次数が4h次(h:自然数)で、4がqh−1を割り切るものとし、Fq 4hを定義体とするペアリング可能な楕円曲線上の有理点のなす加法群をE、素数位数rの有理点の集合をE[r]とし、φqをフロベニウス自己準同型写像として、
1=E[r]∩Ker(φq−[1])
2=E[r]∩Ker(φq−[q])
により、
e:G2×G1→F* q 4h/(F* q 4h)r
である非退化な双線形写像として定義されるAteペアリングeによって、P∈G1、Q∈G2とし、フロベニウス自己準同型写像φqのトレースtを用いてs=t−1とし、ミラー関数fs,Q(・)を用いて、
Figure 0004189828
としてAteペアリングe(Q,P)を、CPU及び記憶手段を備えた電子計算機で演算するペアリング演算装置において、
前記s=t−1又は前記tと、P∈E(F q )であるPと、Q'∈E'(F q h )であるQ'と、v -1/2 の値と、v -3/4 の値とを前記記憶手段に記憶するステップを有し、
fs,Q(P)の(q4h−1)/r乗のべき乗算の演算によって1となる平方非剰余なv∈Fq h、E(Fq h)のツイスト曲線E'(Fq h):y2=x3+av-1xを用いて、
前記電子計算機のCPUを入力手段として機能させて、前記s=t−1又は前記tと、Pと、Q'とを前記記憶手段から読み出して入力する第1ステップと、
前記電子計算機のCPUを代入手段として機能させて、前記v -1/2 の値と、前記v -3/4 の値とを前記記憶手段から読み出して、有理点Pの座標(xP,yP)に対して、n←xP-1/2、m←yP-3/4の代入演算を行う第2ステップと、
前記電子計算機のCPUを代入手段として機能させて、f←1、T'←Q'の代入演算を行う第3ステップと、
前記電子計算機のCPUを第1演算手段として機能させて、有理点Tを通る接線lT,T(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,T(xP,yP)を演算する代わりに、lT,T(xP,yP)v-3/4をlT',T'(n,m)で演算して、f←f2・lT',T'(n,m)の代入演算を行う第4ステップと、
前記電子計算機のCPUを第2演算手段として機能させて、T'←2T'の代入演算を行う第5ステップと、
前記電子計算機のCPUを第3演算手段として機能させて、前記sを2進数表示とした場合の所定のビットの値が1である場合に、有理点TとQを通る直線lT,Q(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,Q(xP,yP)を演算する代わりに、lT,Q(xP,yP)v-3/4をlT',Q'(n,m)で演算して、f←f・lT',Q'(n,m)の代入演算を行う第6ステップと、
前記電子計算機のCPUを第4演算手段として機能させて、前記sを2進数表示とした場合の所定のビットの値が1である場合に、T'←T'+Q'の代入演算を行う第7ステップと、
前記電子計算機のCPUにより、前記第4ステップから前記第5ステップまでの演算を行なう毎に前記sを2進数表示とした場合の所定のビットの値を1ずつ減算する第8ステップと、
前記第4ステップから前記第7ステップまでの演算結果のfを前記記憶手段に記憶する第9ステップと、
前記電子計算機のCPUを第5演算手段として機能させて、前記記憶手段に記憶したfを用いて(q4h−1)/r乗のべき乗算の演算を行う第10ステップと
前記電子計算機のCPUにより、第10ステップによる演算結果をペアリング演算の結果として前記記憶手段に記憶する第11ステップとを有することとした。
また、本発明のペアリング演算方法では、曲線の式がy2=x3+a,a∈Fq(q:3より大きい素数のべき乗)で与えられ、埋込み次数が6h次(h:自然数)で、Fq 6hを定義体とするペアリング可能な楕円曲線上の有理点のなす加法群をE、素数位数rの有理点の集合をE[r]とし、φqをフロベニウス自己準同型写像として、
1=E[r]∩Ker(φq−[1])
2=E[r]∩Ker(φq−[q])
により、
e:G2×G1→F* q 6h/(F* q 6h)r
である非退化な双線形写像として定義されるAteペアリングeによって、P∈G1、Q∈G2とし、フロベニウス自己準同型写像φqのトレースtを用いてs=t−1とし、ミラー関数fs,Q(・)を用いて、
Figure 0004189828
としてAteペアリングe(Q,P)を、CPU及び記憶手段を備えた電子計算機で演算するペアリング演算方法において
前記s=t−1又は前記tと、P∈E(F q )であるPと、Q'∈E'(F q h )であるQ'と、v -1/3 の値と、v -1/2 の値とを前記記憶手段に記憶するステップを有し、
fs,Q(P)の(q6h−1)/r乗のべき乗算の演算によって1となる平方非剰余かつ3乗非剰余なv∈Fq h、E(Fq h)のツイスト曲線E'(Fq h):y2=x3+av-1を用いて、
前記電子計算機のCPUを入力手段として機能させて、前記s=t−1又は前記tと、Pと、Q'とを前記記憶手段から読み出して入力するステップと、
前記電子計算機のCPUを代入手段として機能させて、前記v -1/3 の値と、前記v -1/2 の値とを前記記憶手段から読み出して入力する第1ステップと、
前記電子計算機のCPUを代入手段として機能させて、有理点Pの座標(xP,yP)に対して、n←xP-1/3、m←yP-1/2の代入演算を行う第2ステップと、
前記電子計算機のCPUを代入手段として機能させて、初期値設定としてf←1、T'←Q'の代入演算を行う第3ステップと、
前記電子計算機のCPUを第1演算手段として機能させて、有理点Tを通る接線lT,T(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,T(xP,yP)を演算する代わりに、lT,T(xP,yP)v-1/2をlT',T'(n,m)で演算して、f←f2・lT',T'(n,m)の代入演算を行う第4ステップと、
前記電子計算機のCPUを第2演算手段として機能させて、T'←2T'の代入演算を行う第5ステップと、
前記電子計算機のCPUを第3演算手段として機能させて、前記sを2進数表示とした場合の所定のビットの値が1である場合に、有理点TとQを通る直線lT,Q(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,Q(xP,yP)を演算する代わりに、lT,Q(xP,yP)v-1/2をlT',Q'(n,m)で演算して、f←f・lT',Q'(n,m)の代入演算を行う第6ステップと、
前記電子計算機のCPUを第4演算手段として機能させて、前記sを2進数表示とした場合の所定のビットの値が1である場合に、T'←T'+Q'の代入演算を行う第7ステップと、
前記電子計算機のCPUにより、前記第4ステップから前記第5ステップまでの演算を行なう毎に前記sを2進数表示とした場合の所定のビットの値を1ずつ減算する第8ステップと、
前記第4ステップから前記第7ステップまでの演算結果のfを前記記憶手段に記憶する第9ステップと、
前記電子計算機のCPUを第5演算手段として機能させて、前記記憶手段に記憶したfを用いて(q6h−1)/r乗のべき乗算の演算を行う第10ステップと
前記電子計算機のCPUにより、第10ステップによる演算結果をペアリング演算の結果として前記記憶手段に記憶する第11ステップとを有することとした。
また、本発明のペアリング演算プログラムでは、曲線の式がy2=x3+ax+b,a∈Fq,b∈Fq(q:3より大きい素数のべき乗)で与えられ、埋込み次数が2h次(h:自然数)で、Fq 2hを定義体とするペアリング可能な楕円曲線上の有理点のなす加法群をE、素数位数rの有理点の集合をE[r]とし、φqをフロベニウス自己準同型写像として、
1=E[r]∩Ker(φq−[1])
2=E[r]∩Ker(φq−[q])
により、
e:G2×G1→F* q 2h/(F* q 2h)r
である非退化な双線形写像として定義されるAteペアリングeによって、P∈G1、Q∈G2とし、フロベニウス自己準同型写像φqのトレースtを用いてs=t−1とし、ミラー関数fs,Q(・)を用いて、
Figure 0004189828
としてAteペアリングe(Q,P)を、CPU及び記憶手段を備えた電子計算機に演算させるペアリング演算プログラムにおいて、
前記電子計算機の記憶手段を、前記s=t−1又は前記tと、P∈E(F q )であるPと、Q'∈E'(F q h )であるQ'と、v -1 の値と、v -3/2 の値とを記憶する記憶手段として機能させ、
fs,Q(P)の(q2h−1)/r乗のべき乗算の演算によって1となる平方非剰余なv∈Fq h、E(Fq h)のツイスト曲線E'(Fq h):y2=x3+av-2x+bv-3を用いて、
前記電子計算機のCPUを、
前記s=t−1又は前記tと、Pと、Q'とを前記記憶手段から読み出して入力する入力手段
前記v -1 の値と、前記v -3/2 の値とを前記記憶手段から読み出して、有理点Pの座標(xP,yP)に対して、n←xP-1、m←yP-3/2の代入演算を行うとともに初期値設定としてf←1、T'←Q'の代入演算を行う代入手段
有理点Tを通る接線lT,T(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,T(xP,yP)を演算する代わりに、lT,T(xP,yP)v-3/2をlT',T'(n,m)で演算して、f←f2・lT',T'(n,m)の代入演算を行う第1演算手段、
T'←2T'の代入演算を行う第2演算手段、
前記sを2進数表示とした場合の所定のビットの値が1である場合に、有理点TとQを通る直線lT,Q(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,Q(xP,yP)を演算する代わりに、lT,Q(xP,yP)v-3/2をlT',Q'(n,m)で演算して、f←f・lT',Q'(n,m)の代入演算を行う第3演算手段、
前記sを2進数表示とした場合の所定のビットの値が1である場合に、T'←T'+Q'の代入演算を行う第4演算手段、
前記第1演算手段から前記第2演算手段までの演算手段による演算を行なう毎に前記sを2進数表示とした場合の所定のビットの値を1ずつ減算するとともに、前記第1演算手段から前記第4演算手段までの演算手段による演算結果のfを前記記憶手段に記憶する手段、
前記記憶手段に記憶したfを用いて(q2h−1)/r乗のべき乗算の演算を行う第5演算手段
前記第5演算手段による演算結果をペアリング演算の結果として前記記憶手段に記憶する手段
として機能させることとした。
また、本発明のペアリング演算プログラムでは、曲線の式がy2=x3+a,a∈Fq(q:3より大きい素数のべき乗)で与えられ、埋込み次数が3h次(h:自然数)で、Fq 3hを定義体とするペアリング可能な楕円曲線上の有理点のなす加法群をE、素数位数rの有理点の集合をE[r]とし、φqをフロベニウス自己準同型写像として、
1=E[r]∩Ker(φq−[1])
2=E[r]∩Ker(φq−[q])
により、
e:G2×G1→F* q 3h/(F* q 3h)r
である非退化な双線形写像として定義されるAteペアリングeによって、P∈G1、Q∈G2とし、フロベニウス自己準同型写像φqのトレースtを用いてs=t−1とし、ミラー関数fs,Q(・)を用いて、
Figure 0004189828
としてAteペアリングe(Q,P)を、CPU及び記憶手段を備えた電子計算機に演算させるペアリング演算プログラムにおいて、
前記電子計算機の記憶手段を、前記s=t−1又は前記tと、P∈E(F q )であるPと、Q'∈E'(F q h )であるQ'と、v -1/3 の値と、v -1/2 の値とを記憶する記憶手段として機能させ、
fs,Q(P)の(q3h−1)/r乗のべき乗算の演算によって1となる平方剰余かつ3乗非剰余なv∈Fq h、E(Fq h)のツイスト曲線E'(Fq h):y2=x3+av-1を用いて、
前記電子計算機のCPUを、
前記s=t−1又は前記tと、Pと、Q'とを前記記憶手段から読み出して入力する入力手段、
前記v -1/3 の値と、前記v -1/2 の値とを前記記憶手段から読み出して、有理点Pの座標(xP,yP)に対して、n←xP-1/3、m←yP-1/2の代入演算を行うとともに、初期値設定としてf←1、T'←Q'の代入演算を行う代入手段、
有理点Tを通る接線lT,T(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,T(xP,yP)を演算する代わりに、lT,T(xP,yP)v-1/2をlT',T'(n,m)で演算して、f←f2・lT',T'(n,m)の代入演算を行う第1演算手段、
T'←2T'の代入演算を行う第2演算手段、
前記sを2進数表示とした場合の所定のビットの値が1である場合に、有理点TとQを通る直線lT,Q(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,Q(xP,yP)を演算する代わりに、lT,Q(xP,yP)v-1/2をlT',Q'(n,m)で演算して、f←f・lT',Q'(n,m)の代入演算を行う第3演算手段、
前記sを2進数表示とした場合の所定のビットの値が1である場合に、T'←T'+Q'の代入演算を行う第4演算手段、
前記第1演算手段から前記第2演算手段までの演算手段による演算を行なう毎に前記sを2進数表示とした場合の所定のビットの値を1ずつ減算するとともに、前記第1演算手段から前記第4演算手段までの演算手段による演算結果のfを前記記憶手段に記憶する手段、
前記記憶手段に記憶したfを用いて(q3h−1)/r乗のべき乗算の演算を行う第5演算手段、
前記第5演算手段による演算結果をペアリング演算の結果として前記記憶手段に記憶する手段
として機能させることとした。
また、本発明のペアリング演算プログラムでは、曲線の式がy2=x3+ax,a∈Fq(q:3より大きい素数のべき乗)で与えられ、埋込み次数が4h次(h:自然数)で、4がqh−1を割り切るものとし、Fq 4hを定義体とするペアリング可能な楕円曲線上の有理点のなす加法群をE、素数位数rの有理点の集合をE[r]とし、φqをフロベニウス自己準同型写像として、
1=E[r]∩Ker(φq−[1])
2=E[r]∩Ker(φq−[q])
により、
e:G2×G1→F* q 4h/(F* q 4h)r
である非退化な双線形写像として定義されるAteペアリングeによって、P∈G1、Q∈G2とし、フロベニウス自己準同型写像φqのトレースtを用いてs=t−1とし、ミラー関数fs,Q(・)を用いて、
Figure 0004189828
としてAteペアリングe(Q,P)を、CPU及び記憶手段を備えた電子計算機に演算させるペアリング演算プログラムにおいて、
前記電子計算機の記憶手段を、前記s=t−1又は前記tと、P∈E(F q )であるPと、Q'∈E'(F q h )であるQ'と、v -1/2 の値と、v -3/4 の値とを記憶する記憶手段として機能させ、
fs,Q(P)の(q4h−1)/r乗のべき乗算の演算によって1となる平方非剰余なv∈Fq h、E(Fq h)のツイスト曲線E'(Fq h):y2=x3+av-1xを用いて、
前記電子計算機のCPUを、
前記s=t−1又は前記tと、Pと、Q'とを前記記憶手段から読み出して入力する入力手段、
前記v -1/2 の値と、前記v -3/4 の値とを前記記憶手段から読み出して、有理点Pの座標(xP,yP)に対して、n←xP-1/2、m←yP-3/4の代入演算を行うとともに、初期値設定としてf←1、T'←Q'の代入演算を行う代入手段
有理点Tを通る接線lT,T(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,T(xP,yP)を演算する代わりに、lT,T(xP,yP)v-3/4をlT',T'(n,m)で演算して、f←f2・lT',T'(n,m)の代入演算を行う第1演算手段、
T'←2T'の代入演算を行う第2演算手段、
前記sを2進数表示とした場合の所定のビットの値が1である場合に、有理点TとQを通る直線lT,Q(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,Q(xP,yP)を演算する代わりに、lT,Q(xP,yP)v-3/4をlT',Q'(n,m)で演算して、f←f・lT',Q'(n,m)の代入演算を行う第3演算手段、
前記sを2進数表示とした場合の所定のビットの値が1である場合に、T'←T'+Q'の代入演算を行う第4演算手段、
前記第1演算手段から前記第2演算手段までの演算手段による演算を行なう毎に前記sを2進数表示とした場合の所定のビットの値を1ずつ減算するとともに、前記第1演算手段から前記第4演算手段までの演算手段による演算結果のfを前記記憶手段に記憶する手段、
前記記憶手段に記憶したfを用いて(q4h−1)/r乗のべき乗算の演算を行う第5演算手段、
前記第5演算手段による演算結果をペアリング演算の結果として前記記憶手段に記憶する手段
として機能させることとした。
また、本発明のペアリング演算プログラムでは、曲線の式がy2=x3+a,a∈Fq(q:3より大きい素数のべき乗)で与えられ、埋込み次数が6h次(h:自然数)で、Fq 6hを定義体とするペアリング可能な楕円曲線上の有理点のなす加法群をE、素数位数rの有理点の集合をE[r]とし、φqをフロベニウス自己準同型写像として、
1=E[r]∩Ker(φq−[1])
2=E[r]∩Ker(φq−[q])
により、
e:G2×G1→F* q 6h/(F* q 6h)r
である非退化な双線形写像として定義されるAteペアリングeによって、P∈G1、Q∈G2とし、フロベニウス自己準同型写像φqのトレースtを用いてs=t−1とし、ミラー関数fs,Q(・)を用いて、
Figure 0004189828
としてAteペアリングe(Q,P)を、CPU及び記憶手段を備えた電子計算機に演算させるペアリング演算プログラムにおいて、
前記電子計算機の記憶手段を、前記s=t−1又は前記tと、P∈E(F q )であるPと、Q'∈E'(F q h )であるQ'と、v -1/3 の値と、v -1/2 の値とを記憶する記憶手段として機能させ、
fs,Q(P)の(q4h−1)/r乗のべき乗算の演算によって1となる平方非剰余なv∈Fq h、E(Fq h)のツイスト曲線E'(Fq h):y2=x3+av-1xを用いて、
前記CPUを、
前記s=t−1又は前記tと、Pと、Q'とを前記記憶手段から読み出して入力する入力手段
前記v -1/3 の値と、前記v -1/2 の値とを前記記憶手段から読み出して、有理点Pの座標(xP,yP)に対して、n←xP-1/3、m←yP-1/2の代入演算を行うとともに、初期値設定としてf←1、T'←Q'の代入演算を行う代入手段、
有理点Tを通る接線lT,T(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,T(xP,yP)を演算する代わりに、lT,T(xP,yP)v-1/2をlT',T'(n,m)で演算して、f←f2・lT',T'(n,m)の代入演算を行う第1演算手段
T'←2T'の代入演算を行う第2演算手段
前記sを2進数表示とした場合の所定のビットの値が1である場合に、有理点TとQを通る直線lT,Q(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,Q(xP,yP)を演算する代わりに、lT,Q(xP,yP)v-1/2をlT',Q'(n,m)で演算して、f←f・lT',Q'(n,m)の代入演算を行う第3演算手段
前記sを2進数表示とした場合の所定のビットの値が1である場合に、T'←T'+Q'の代入演算を行う第4演算手段
前記第1演算手段から前記第2演算手段までの演算手段による演算を行なう毎に前記sを2進数表示とした場合の所定のビットの値を1ずつ減算するとともに、前記第1演算手段から前記第4演算手段までの演算手段による演算結果のfを前記記憶手段に記憶する手段、
前記記憶手段に記憶したfを用いて(q6h−1)/r乗のべき乗算の演算を行う第5演算手段、
前記第5演算手段による演算結果をペアリング演算の結果として前記記憶手段に記憶する手段
として機能させることとした。
本発明では、ペアリング演算に際して、fs,Q(P)の導出に必要となる有理関数の演算を、ツイスト曲線を用いて低次の真部分体上で行うことにより演算負荷を低減して、ペアリング演算の高速化を図ることができる。
本発明のペアリング演算装置、ペアリング演算方法、及びペアリング演算プログラムでは、ミラーのアルゴリズムを用いて演算するステップと、最終べきのべき乗演算を行うステップとで構成されるペアリング演算において、ミラーのアルゴリズムを用いた演算を高速化することにより、高速演算を可能としているものである。
ミラーのアルゴリズムは、図1に示すアルゴリズムとして知られているものである。曲線の式がy2=x3+ax+b,a∈Fq,b∈Fq(q:3より大きい素数のべき乗)で与えられ、埋込み次数が2h次(h:自然数)で、Fq 2hを定義体とするペアリング可能な楕円曲線上の有理点のなす加法群をE、素数位数rの有理点の集合をE[r]とし、φqをフロベニウス自己準同型写像として、ミラーのアルゴリズムでは、フロベニウス自己準同型写像φqのトレースtを用いたs=t−1と、P∈E(Fq)であるPと、Q∈E(Fq 2h)であるQとが入力されることにより、fs,Q(P)を出力している。
なお、埋込み次数は偶数次に限定されるものではなく、埋込み次数を3の倍数次とする場合には、曲線の式がy2=x3+a,a∈Fq(q:3より大きい素数のべき乗)で与えられ、埋込み次数が3h次(h:自然数)で、Fq 3hを定義体とするペアリング可能な楕円曲線上の有理点のなす加法群を用いることが望ましい。
また、特に、埋込み次数が4の倍数次の場合には、曲線の式がy2=x3+ax,a∈Fq(q:3より大きい素数のべき乗)で与えられ、埋込み次数が4h次(h:自然数)で、4がqh−1を割り切るものとし、Fq 4hを定義体とするペアリング可能な楕円曲線上の有理点のなす加法群を用いることが望ましい。
さらに、特に、埋込み次数が6の倍数次の場合には、曲線の式がy2=x3+a,a∈Fq(q:3より大きい素数のべき乗)で与えられ、埋込み次数が6h次(h:自然数)で、Fq 6hを定義体とするペアリング可能な楕円曲線上の有理点のなす加法群を用いることが望ましい。
図1に示すミラーのアルゴリズムの第1ステップでは、f←1、T←Qの代入演算を行い、第2ステップの繰り返し条件に基づいて以下の演算を繰り返し行っている。第2ステップでは、具体的には、2進数表示したsによって得られるビット数をiの初期値とし、演算の繰り返しのたびにiを1ずつ減算しながら繰り返し回数を管理している。第5ステップのs[i]は、2進数表示したsの最小ビットから数えてi番目のビットの値を示すものであって、s[i]は「0」と「1」のいずれか一方である。
図1に示すミラーのアルゴリズムの第3ステップでは、有理点Tを通る接線lT,T(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,T(xP,yP)の演算を行っており、第4ステップでは、T←2Tとして楕円二倍算を行っている。
図1に示すミラーのアルゴリズムの第5ステップでは、sを2進数表示とした場合の所定のビットの値s[i]が1であるか否かを判定し、1である場合に、第6ステップで有理点TとQを通る直線lT,Q(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,Q(xP,yP)の演算を行い、第7ステップで、T←T+Qとして楕円加算を行っている。
そして、第2ステップの繰り返し条件に基づいて演算を繰り返し行って、図1に示すミラーのアルゴリズムの第10ステップでは、演算結果を出力している。ペアリング演算では、最後に、ミラーのアルゴリズムによって演算されて出力された演算結果のfs,Q(P)に対して(q2h−1)/r乗のべき乗算を行っている。
なお、埋込み次数が3の倍数次の場合には、最終べきのべき乗算は(q3h−1)/r乗のべき乗算であり、埋込み次数が4の倍数次の場合には、最終べきのべき乗算は(q4h−1)/r乗のべき乗算であり、埋込み次数が6の倍数次の場合には、最終べきのべき乗算は(q6h−1)/r乗のべき乗算である。
以下において、第3ステップでのlT,T(xP,yP)の演算、及び第5ステップでのlT,Q(xP,yP)の演算方法を説明する。ここで、埋込み次数を偶数次、すなわち2h(h:自然数)次として、楕円曲線をy2=x3+ax+b,a∈Fq,b∈Fq(q:3より大きい素数のべき乗)とする。
T=(xT,yT),Q=(xQ,yQ)とすると、lT,Q(x,y)の傾きλT,Qは次式で与えられる。
Figure 0004189828
Figure 0004189828
この傾きλT,Qを用いてlT,Q(xP,yP)の値を以下のように計算する。
Figure 0004189828
通常では、この[数26]及び[数27]によってE(Fq 2h)上で演算を行っているのであるが、埋込み次数を偶数次、すなわち2h(h:自然数)次として、楕円曲線をy2=x3+ax+b,a∈Fq,b∈Fq(q:3より大きい素数のべき乗)とした場合には、E(Fq h)のツイスト曲線E'(Fq h):y2=x3+av-2x+bv-3,v∈Fq hが存在して、E'(Fq h)からE(Fq 2h)への準同型写像(x,y)→(xv、yv3/2)が存在する。ここで、新たなパラメータvは、(q2h−1)/r乗のべき乗算の演算によって1となる平方非剰余な元である。
したがって、E(Fq 2h)[r]上の楕円加算を1/2の拡大次数のE'(Fq h)[r]上の楕円加算に置き換えて演算することが可能であり、演算負荷を低減して高速な演算を可能とすることができる。
特に、有理点T、Q∈E(Fq 2h)に対して、T=(xT,yT)=(xT'v、yT'3/2)、Q=(xQ,yQ)=(xQ'v、yQ'3/2)の関係が成り立つ有理点T'、Q'がE'(Fq h)に存在するので、まず、lT,T(x,y)の傾きλT,T、及びlT,Q(x,y)の傾きλT,Qを以下のように変形する。
Figure 0004189828
Figure 0004189828
[数29]と[数30]から、T=Q、T≠Qにかかわらず傾きλT,Qは、以下のようになる。
Figure 0004189828
したがって、[数31]の式から、[数28]の式は以下のようになる。
Figure 0004189828
この[数32]の式の最後のv3/2の部分は、ペアリング演算における(q2h−1)/r乗の最終べきの演算によって1となるので、ミラーのアルゴリズムにおけるlT,Q(xP,yP)を演算する際には、lT,Q(xP,yP)の演算を行うのではなく、lT',Q'(xP-1,yP-3/2)を真部分体上において演算すればよく、演算負荷を大きく低減することができる。
すなわち、曲線の式がy2=x3+ax+b,a∈Fq,b∈Fq(q:3より大きい素数のべき乗)で与えられ、埋込み次数が2h次(h:自然数)で、Fq 2hを定義体とするペアリング可能な楕円曲線上の有理点のなす加法群をE、素数位数rの有理点の集合をE[r]とし、φqをフロベニウス自己準同型写像として、
1=E[r]∩Ker(φq−[1])
2=E[r]∩Ker(φq−[q])
により、
e:G2×G1→F* q 2h/(F* q 2h)r
である非退化な双線形写像として定義されるAteペアリングeによって、P∈G1、Q∈G2とし、フロベニウス自己準同型写像φqのトレースtを用いてs=t−1とし、ミラー関数fs,Q(・)を用いて、
Figure 0004189828
としてAteペアリングe(Q,P)を演算する場合に、fs,Q(P)の導出に必要となる有理関数lT,T(xP,yP)及びlT,Q(xP,yP)の演算を、このfs,Q(P)の(q2h−1)/r乗のべき乗算の演算によって1となる平方非剰余なv∈Fq hを用いて、E(Fq h)のツイスト曲線E'(Fq h):y2=x3+av-2x+bv-3による真部分体上でlT',T'(xP-1,yP-3/2)及びlT',Q'(xP-1,yP-3/2)の演算として行うことにより、演算負荷を低減して高速な演算を可能とすることができる。
埋込み次数を3の倍数次、すなわち3h(h:自然数)次として、曲線の式をy2=x3+a,a∈Fq(q:3より大きい素数のべき乗)とした場合には、E(Fq h)のツイスト曲線E'(Fq h):y2=x3+av-1,v∈Fq hが存在して、E'(Fq h)からE(Fq 3h)への準同型写像(x,y)→(xv1/3、yv1/2)が存在する。ここで、新たなパラメータvは、(q3h−1)/r乗のべき乗算の演算によって1となる平方剰余かつ3乗非剰余な元である。
したがって、E(Fq 3h)[r]上の楕円加算を1/3の拡大次数のE'(Fq h)[r]上の楕円加算に置き換えて演算することが可能であり、演算負荷を低減して高速な演算を可能とすることができる。
特に、有理点T、Q∈E(Fq 3h)に対して、T=(xT,yT)=(xT'1/3、yT'1/2)、Q=(xQ,yQ)=(xQ'1/3、yQ'1/2)の関係が成り立つ有理点T'、Q'がE'(Fq h)に存在するので、まず、lT,T(x,y)の傾きλT,T、及びlT,Q(x,y)の傾きλT,Qを以下のように変形する。
Figure 0004189828
Figure 0004189828
[数34]と[数35]から、T=Q、T≠Qにかかわらず傾きλT,Qは、以下のようになる。
Figure 0004189828
したがって、[数36]の式から、[数28]の式は以下のようになる。
Figure 0004189828
この[数37]の式の最後のv1/2の部分は、ペアリング演算における(q3h−1)/r乗の最終べきの演算によって1となるので、ミラーのアルゴリズムにおけるlT,Q(xP,yP)を演算する際には、lT,Q(xP,yP)の演算を行うのではなく、lT',Q'(xP-1/3,yP-1/2)を真部分体上において演算すればよく、演算負荷を大きく低減することができる。
すなわち、曲線の式がy2=x3+a,a∈Fq(q:3より大きい素数のべき乗)で与えられ、埋込み次数が3h次(h:自然数)で、Fq 3hを定義体とするペアリング可能な楕円曲線上の有理点のなす加法群をE、素数位数rの有理点の集合をE[r]とし、φqをフロベニウス自己準同型写像として、
1=E[r]∩Ker(φq−[1])
2=E[r]∩Ker(φq−[q])
により、
e:G2×G1→F* q 3h/(F* q 3h)r
である非退化な双線形写像として定義されるAteペアリングeによって、P∈G1、Q∈G2とし、フロベニウス自己準同型写像φqのトレースtを用いてs=t−1とし、ミラー関数fs,Q(・)を用いて、
Figure 0004189828
としてAteペアリングe(Q,P)を演算する場合に、fs,Q(P)の導出に必要となる有理関数lT,T(xP,yP)及びlT,Q(xP,yP)の演算を、このfs,Q(P)の(q3h−1)/r乗のべき乗算の演算によって1となる平方剰余かつ3乗非剰余なv∈Fq hを用いて、E(Fq h)のツイスト曲線E'(Fq h):y2=x3+av-1による真部分体上でlT',T'(xP-1/3,yP-1/2)及びlT',Q'(xP-1/3,yP-1/2)の演算として行うことによって、演算負荷を低減して高速な演算を可能とすることができる。
埋込み次数を4の倍数次、すなわち4h(h:自然数)次として、曲線の式をy2=x3+ax,a∈Fq(q:3より大きい素数のべき乗)で、4がqh−1を割り切るとした場合には、E(Fq h)のツイスト曲線E'(Fq h):y2=x3+av-1x,v∈Fq hが存在して、E'(Fq h)からE(Fq 4h)への準同型写像(x,y)→(xv1/2、yv3/4)が存在する。ここで、新たなパラメータvは、(q4h−1)/r乗のべき乗算の演算によって1となる平方非剰余な元である。
したがって、E(Fq 4h)[r]上の楕円加算を1/4の拡大次数のE'(Fq h)[r]上の楕円加算に置き換えて演算することが可能であり、演算負荷を低減して高速な演算を可能とすることができる。
特に、有理点T、Q∈E(Fq 4h)に対して、T=(xT,yT)=(xT'1/2、yT'3/4)、Q=(xQ,yQ)=(xQ'1/2、yQ'3/4)の関係が成り立つ有理点T'、Q'がE'(Fq h)に存在するので、まず、lT,T(x,y)の傾きλT,T、及びlT,Q(x,y)の傾きλT,Qを以下のように変形する。
Figure 0004189828
Figure 0004189828
[数39]と[数40]から、T=Q、T≠Qにかかわらず傾きλT,Qは、以下のようになる。
Figure 0004189828
したがって、[数41]の式から、[数28]の式は以下のようになる。
Figure 0004189828
この[数42]の式の最後のv3/4の部分は、ペアリング演算における(q4h−1)/r乗の最終べきの演算によって1となるので、ミラーのアルゴリズムにおけるlT,Q(xP,yP)を演算する際には、lT,Q(xP,yP)の演算を行うのではなく、lT',Q'(xP-1/2,yP-3/4)を真部分体上において演算すればよく、演算負荷を大きく低減することができる。
すなわち、曲線の式がy2=x3+ax,a∈Fq(q:3より大きい素数のべき乗)で与えられ、埋込み次数が4h次(h:自然数)で、4がqh−1を割り切るものとし、Fq 4hを定義体とするペアリング可能な楕円曲線上の有理点のなす加法群をE、素数位数rの有理点の集合をE[r]とし、φqをフロベニウス自己準同型写像として、
1=E[r]∩Ker(φq−[1])
2=E[r]∩Ker(φq−[q])
により、
e:G2×G1→F* q 4h/(F* q 4h)r
である非退化な双線形写像として定義されるAteペアリングeによって、P∈G1、Q∈G2とし、フロベニウス自己準同型写像φqのトレースtを用いてs=t−1とし、ミラー関数fs,Q(・)を用いて、
Figure 0004189828
としてAteペアリングe(Q,P)を演算する場合に、fs,Q(P)の導出に必要となる有理関数lT,T(xP,yP)及びlT,Q(xP,yP)の演算を、このfs,Q(P)の(q4h−1)/r乗のべき乗算の演算によって1となる平方非剰余なv∈Fq hを用いて、E(Fq h)のツイスト曲線E'(Fq h):y2=x3+av-1xによる真部分体上でlT',T'(xP-1/2,yP-3/4)及びlT',Q'(xP-1/2,yP-3/4)の演算として行うことによって、演算負荷を低減して高速な演算を可能とすることができる。
埋込み次数を6の倍数次、すなわち6h(h:自然数)次として、曲線の式がy2=x3+a,a∈Fq(q:3より大きい素数のべき乗)とした場合には、E(Fq h)のツイスト曲線E'(Fq h):y2=x3+av-1,v∈Fq hが存在して、E'(Fq h)からE(Fq 6h)への準同型写像(x,y)→(xv1/3、yv1/2)が存在する。ここで、新たなパラメータvは、(q6h−1)/r乗のべき乗算の演算によって1となる平方非剰余かつ3乗非剰余な元である。
したがって、E(Fq 6h)[r]上の楕円加算を1/6の拡大次数のE'(Fq h)[r]上の楕円加算に置き換えて演算することが可能であり、演算負荷を低減して高速な演算を可能とすることができる。
特に、有理点T、Q∈E(Fq 6h)に対して、T=(xT,yT)=(xT'1/3、yT'1/2)、Q=(xQ,yQ)=(xQ'1/3、yQ'1/2)の関係が成り立つ有理点T'、Q'がE'(Fp h)に存在するので、まず、lT,T(x,y)の傾きλT,T、及びlT,Q(x,y)の傾きλT,Qを以下のように変形する。
Figure 0004189828
Figure 0004189828
[数44]と[数45]から、T=Q、T≠Qにかかわらず傾きλT,Qは、以下のようになる。
Figure 0004189828
したがって、[数46]の式から、[数28]の式は以下のようになる。
Figure 0004189828
この[数47]の式の最後のv1/2の部分は、ペアリング演算における(q6h−1)/r乗の最終べきの演算によって1となるので、ミラーのアルゴリズムにおけるlT,Q(xP,yP)を演算する際には、lT,Q(xP,yP)の演算を行うのではなく、lT',Q'(xP-1/3,yP-1/2)を真部分体上において演算すればよく、演算負荷を大きく低減することができる。
すなわち、曲線の式がy2=x3+a,a∈Fq(q:3より大きい素数のべき乗)で与えられ、埋込み次数が6h次(h:自然数)で、Fq 6hを定義体とするペアリング可能な楕円曲線上の有理点のなす加法群をE、素数位数rの有理点の集合をE[r]とし、φqをフロベニウス自己準同型写像として、
1=E[r]∩Ker(φq−[1])
2=E[r]∩Ker(φq−[q])
により、
e:G2×G1→F* q 6h/(F* q 6h)r
である非退化な双線形写像として定義されるAteペアリングeによって、P∈G1、Q∈G2とし、フロベニウス自己準同型写像φqのトレースtを用いてs=t−1とし、ミラー関数fs,Q(・)を用いて、
Figure 0004189828
としてAteペアリングe(Q,P)を演算する場合に、fs,Q(P)の導出に必要となる有理関数lT,T(xP,yP)及びlT,Q(xP,yP)の演算を、このfs,Q(P)の(q6h−1)/r乗のべき乗算の演算によって1となる平方非剰余かつ3乗非剰余なv∈Fq hを用いて、E(Fq h)のツイスト曲線E'(Fq h):y2=x3+av-1による真部分体上でlT',T'(xP-1/3,yP-1/2)及びlT',Q'(xP-1/3,yP-1/2)の演算として行うことによって、演算負荷を低減して高速な演算を可能とすることができる。
以下において、埋込み次数が、偶数次、3の倍数次、4の倍数次、及び6の倍数次の最小公倍数である12次の場合におけるペアリング演算のプログラムについて説明する。図2は、図1に対応させた埋込み次数が12次の場合のミラーのアルゴリズムである。ここで、これまで3より大きい素数のべき乗としていたqを、素数pとする。
認証サーバなどのように電子計算機で構成されるペアリング演算装置では、図3に示すフローチャートに基づくプログラムによりペアリング演算を行って、大規模なディジタルグループ署名を実現している。
ここで、ペアリング演算を行う電子計算機は、図2に示したミラーのアルゴリズムに基づくプログラムを内蔵したペアリング演算プログラムを実行可能とした電子計算機であって、図4に示すように、電子計算機10は、演算処理を実行するCPU11と、ペアリング演算プログラムなどの各種プログラム、及びペアリング演算プログラムで使用するデータなどを記憶したハードディスクなどの記憶装置12と、ペアリング演算プログラムを展開して実行可能とするとともに、ペアリング演算プログラムの実行にともなって生成されたデータを一時的に記憶するRAMなどで構成されたメモリ装置13を備えている。図4中、14はバスである。
本発明のペアリング演算プログラムを利用するディジタルグループ署名技術においては、電子計算機10は、インターネットなどの電気通信回線20に接続して、この電気通信回線20に接続されたクライアント装置30から送信されたディジタルグループ署名の署名データを受信可能としている。図4中、15は電子計算機10の入出力制御部である。電子計算機10では、クライアント装置30から送信されたディジタルグループ署名の署名データはメモリ装置13に一次的に記憶している。
電子計算機10では、クライアント装置30からディジタルグループ署名の署名データが送信されると、送信された署名データをメモリ装置13に一旦記憶し、ペアリング演算プログラムを起動させる(ステップS1)。
起動したペアリング演算プログラムによって、電子計算機10は、入力手段として機能して、フロベニウス自己準同型写像φpのトレースtに基づくs=t−1、P∈E(Fp)であるP、Q'∈E'(Fp 2)であるQ'の入力を受け付ける(ステップS2)。メモリ装置13に一旦記憶した署名データはPとQ'のいずれか一方であり、一般的にはPである。Q’及びフロベニウス自己準同型写像φpのトレースtまたはs=t−1は、記憶装置12またはメモリ装置13の所定アドレスに記憶しており、所定アドレスから読み出して入力している。
次いで、電子計算機10は、代入手段として機能して、有理点Pの座標(xP,yP)に対して、n←xP-1/3、m←yP-1/2の代入演算を行う(ステップS3)。ここで、v-1/3の値、及びv-1/2の値は既知であって、記憶装置12またはメモリ装置13の所定アドレスに記憶しており、所定アドレスから読み出して入力してxP-1/3の演算、及びyP-1/2の演算を行っている。
なお、この代入演算は、埋込み次数が12次で、6の倍数次となっているのでn←xP-1/3、m←yP-1/2の代入演算であるが、埋込み次数が偶数次の場合にはn←xP-1、m←yP-3/2の代入演算、埋込み次数が3の倍数次の場合にはn←xP-1/3、m←yP-1/2の代入演算、埋込み次数が4の倍数次の場合にはn←xP-1/2、m←yP-3/4の代入演算となる。
次いで、電子計算機10は、代入手段として機能して、f←1、T'←Q'の代入演算を行う(ステップS4)。これは、いわゆる初期値設定である。
次いで、電子計算機10は、2進数表示したsのビット数をいの初期値として、以下の演算の繰り返しのたびにiを1ずつ減算しながらfの値を演算している(ステップS5)。ここで、上記したのと同様に、s[i]は、2進数表示したsの最小ビットから数えてi番目のビットの値を示すものとする。
ステップS5では、具体的には、電子計算機10は、第1演算手段として機能して、有理点Tを通る接線lT,T(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,T(xP,yP)を演算する代わりに、lT,T(xP,yP)v-1/2をlT',T'(n,m)で演算して、f←f2・lT',T'(n,m)の代入演算を行い、次いで、電子計算機10は、第2演算手段として機能して、T'←2T'の代入演算を行っている。
さらに、2進数表示したsのi番目のビットの値s[i]が1である場合には、電子計算機10は、第3演算手段として機能して、有理点TとQを通る直線lT,Q(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,Q(xP,yP)を演算する代わりに、lT,Q(xP,yP)v-1/2をlT',Q'(n,m)で演算して、f←f・lT',Q'(n,m)の代入演算を行い、次いで、電子計算機10は、第4演算手段として機能して、T'←T'+Q'の代入演算を行っている。
ステップS5での演算後、電子計算機10は、演算結果のfをメモリ装置13に一次的に記憶して、ミラー関数の演算を終了している(ステップS6)。
次いで、電子計算機10は、演算結果のfの値を用いて(p12−1)/r乗のべき乗算を行って、演算結果をペアリング演算の結果としてメモリ装置13に一次的に記憶している(ステップS7)。
電子計算機10では、上記のペアリング演算を失効者の数に応じた回数だけ繰り返し行って、ペアリング演算プログラムを終了している。
電子計算機10が認証サーバである場合には、その後、電子計算機10は、ペアリング演算の結果を用いて認証を行っている。
このように、ペアリング演算を行う電子計算機で構成されたペアリング演算装置では、埋込み次数が12次の場合、E(Fp 12)[r]上の楕円加算ではなく、E'(Fp 2)[r]上の楕円加算として演算を行うことにより、ミラーのアルゴリズムに基づく演算に要する時間を30%程度削減可能であり、より高速にペアリング演算を可能とすることができる。
したがって、より多くのメンバーを対象としたディジタルグループ署名に利用でき、ディジタルグループ署名をより広範囲で利用することができる。
本実施形態では、ディジタルグループ署名に用いるペアリング演算について説明したが、本発明に係るペアリング演算の装置、方法、プログラムは、ディジタルグループ署名に用いる場合に限定するものではなく、必要に応じて適宜のペアリング演算に適用することができる。
従来のミラーのアルゴリズムの説明図である。 本発明に係るミラーのアルゴリズムの説明図である。 本発明に係るペアリング演算プログラムのフローチャートである。 本発明の実施形態に係るペアリング演算装置の概略説明図である。
符号の説明
10 電子計算機
11 CPU
12 記憶装置
13 メモリ装置
14 バス
15 入出力制御部
20 電気通信回線
30 クライアント装置

Claims (12)

  1. 曲線の式がy2=x3+ax+b,a∈Fq,b∈Fq(q:3より大きい素数のべき乗)で与えられ、埋込み次数が2h次(h:自然数)で、Fq 2hを定義体とするペアリング可能な楕円曲線上の有理点のなす加法群をE、素数位数rの有理点の集合をE[r]とし、φqをフロベニウス自己準同型写像として、
    1=E[r]∩Ker(φq−[1])
    2=E[r]∩Ker(φq−[q])
    により、
    e:G2×G1→F* q 2h/(F* q 2h)r
    である非退化な双線形写像として定義されるAteペアリングeによって、P∈G1、Q∈G2とし、フロベニウス自己準同型写像φqのトレースtを用いてs=t−1とし、ミラー関数fs,Q(・)を用いて、
    Figure 0004189828
    としてAteペアリングe(Q,P)を演算するCPUを備えたペアリング演算装置において、
    前記s=t−1又は前記tと、P∈E(F q )であるPと、Q'∈E'(F q h )であるQ'と、v -1 の値と、v -3/2 の値とを記憶する記憶手段を備え、
    fs,Q(P)の導出に必要となる有理関数の演算を、このfs,Q(P)の(q2h−1)/r乗のべき乗算の演算によって1となる平方非剰余なv∈Fq hを用いて、E(Fq h)のツイスト曲線E'(Fq h):y2=x3+av-2x+bv-3による真部分体上で行うべく、
    前記CPUは、
    前記s=t−1又は前記tと、Pと、Q'とを前記記憶手段から読み出して入力する入力手段と、
    前記v -1 の値と、前記v -3/2 の値とを前記記憶手段から読み出して、有理点Pの座標(xP,yP)に対して、n←xP-1、m←yP-3/2の代入演算を行うとともに、初期値設定としてf←1、T'←Q'の代入演算を行う代入手段と、
    有理点Tを通る接線lT,T(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,T(xP,yP)を演算する代わりに、lT,T(xP,yP)v-3/2をlT',T'(n,m)で演算して、f←f2・lT',T'(n,m)の代入演算を行う第1演算手段と、
    T'←2T'の代入演算を行う第2演算手段と、
    前記sを2進数表示とした場合の所定のビットの値が1である場合に、有理点TとQを通る直線lT,Q(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,Q(xP,yP)を演算する代わりに、lT,Q(xP,yP)v-3/2をlT',Q'(n,m)で演算して、f←f・lT',Q'(n,m)の代入演算を行う第3演算手段と、
    前記sを2進数表示とした場合の所定のビットの値が1である場合に、T'←T'+Q'の代入演算を行う第4演算手段と、
    前記第1演算手段から前記第2演算手段までの演算手段による演算を行なう毎に前記sを2進数表示とした場合の所定のビットの値を1ずつ減算するとともに、前記第1演算手段から前記第4演算手段までの演算手段による演算結果のfを前記記憶手段に記憶する手段と、
    前記記憶手段に記憶したfを用いて(q2h−1)/r乗のべき乗算を演算する第5演算手段と、
    前記第5演算手段による演算結果をペアリング演算の結果として前記記憶手段に記憶する手段と
    して機能することを特徴とするペアリング演算装置。
  2. 曲線の式がy2=x3+a,a∈Fq(q:3より大きい素数のべき乗)で与えられ、埋込み次数が3h次(h:自然数)で、Fq 3hを定義体とするペアリング可能な楕円曲線上の有理点のなす加法群をE、素数位数rの有理点の集合をE[r]とし、φqをフロベニウス自己準同型写像として、
    1=E[r]∩Ker(φq−[1])
    2=E[r]∩Ker(φq−[q])
    により、
    e:G2×G1→F* q 3h/(F* q 3h)r
    である非退化な双線形写像として定義されるAteペアリングeによって、P∈G1、Q∈G2とし、フロベニウス自己準同型写像φqのトレースtを用いてs=t−1とし、ミラー関数fs,Q(・)を用いて、
    Figure 0004189828
    としてAteペアリングe(Q,P)を演算するCPUを備えたペアリング演算装置において、
    前記s=t−1又は前記tと、P∈E(F q )であるPと、Q'∈E'(F q h )であるQ'と、v -1/3 の値と、v -1/2 の値とを記憶する記憶手段を備え、
    fs,Q(P)の導出に必要となる有理関数の演算を、このfs,Q(P)の(q3h−1)/r乗のべき乗算の演算によって1となる平方剰余かつ3乗非剰余なv∈Fq hを用いて、E(Fq h)のツイスト曲線E'(Fq h):y2=x3+av-1による真部分体上で行うべく、
    前記CPUは、
    前記s=t−1又は前記tと、Pと、Q'とを前記記憶手段から読み出して入力する入力手段と、
    前記v -1/3 の値と、前記v -1/2 の値とを前記記憶手段から読み出して、有理点Pの座標(xP,yP)に対して、n←xP-1/3、m←yP-1/2の代入演算を行うとともに、初期値設定としてf←1、T'←Q'の代入演算を行う代入手段と、
    有理点Tを通る接線lT,T(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,T(xP,yP)を演算する代わりに、lT,T(xP,yP)v-1/2をlT',T'(n,m)で演算して、f←f2・lT',T'(n,m)の代入演算を行う第1演算手段と、
    T'←2T'の代入演算を行う第2演算手段と、
    前記sを2進数表示とした場合の所定のビットの値が1である場合に、有理点TとQを通る直線lT,Q(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,Q(xP,yP)を演算する代わりに、lT,Q(xP,yP)v-1/2をlT',Q'(n,m)で演算して、f←f・lT',Q'(n,m)の代入演算を行う第3演算手段と、
    前記sを2進数表示とした場合の所定のビットの値が1である場合に、T'←T'+Q'の代入演算を行う第4演算手段と、
    前記第1演算手段から前記第2演算手段までの演算手段による演算を行なう毎に前記sを2進数表示とした場合の所定のビットの値を1ずつ減算するとともに、前記第1演算手段から前記第4演算手段までの演算手段による演算結果のfを前記記憶手段に記憶する手段と、
    前記記憶手段に記憶したfを用いて(q3h−1)/r乗のべき乗算を演算する第5演算手段と、
    前記第5演算手段による演算結果をペアリング演算の結果として前記記憶手段に記憶する手段と
    して機能することを特徴とするペアリング演算装置。
  3. 曲線の式がy2=x3+ax,a∈Fq(q:3より大きい素数のべき乗)で与えられ、埋込み次数が4h次(h:自然数)で、4がqh−1を割り切るものとし、Fq 4hを定義体とするペアリング可能な楕円曲線上の有理点のなす加法群をE、素数位数rの有理点の集合をE[r]とし、φqをフロベニウス自己準同型写像として、
    1=E[r]∩Ker(φq−[1])
    2=E[r]∩Ker(φq−[q])
    により、
    e:G2×G1→F* q 4h/(F* q 4h)r
    である非退化な双線形写像として定義されるAteペアリングeによって、P∈G1、Q∈G2とし、フロベニウス自己準同型写像φqのトレースtを用いてs=t−1とし、ミラー関数fs,Q(・)を用いて、
    Figure 0004189828
    としてAteペアリングe(Q,P)を演算するCPUを備えたペアリング演算装置において、
    前記s=t−1又は前記tと、P∈E(F q )であるPと、Q'∈E'(F q h )であるQ'と、v -1/2 の値と、v -3/4 の値とを記憶する記憶手段を備え、
    fs,Q(P)の導出に必要となる有理関数の演算を、このfs,Q(P)の(q4h−1)/r乗のべき乗算の演算によって1となる平方非剰余なv∈Fq hを用いて、E(Fq h)のツイスト曲線E'(Fq h):y2=x3+av-1xによる真部分体上で行うべく、
    前記CPUは、
    前記s=t−1又は前記tと、Pと、Q'とを前記記憶手段から読み出して入力する入力手段と、
    前記v -1/2 の値と、前記v -3/4 の値とを前記記憶手段から読み出して、有理点Pの座標(xP,yP)に対して、n←xP-1/2、m←yP-3/4の代入演算を行うとともに、初期値設定としてf←1、T'←Q'の代入演算を行う代入手段と、
    有理点Tを通る接線lT,T(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,T(xP,yP)を演算する代わりに、lT,T(xP,yP)v-3/4をlT',T'(n,m)で演算して、f←f2・lT',T'(n,m)の代入演算を行う第1演算手段と、
    T'←2T'の代入演算を行う第2演算手段と、
    前記sを2進数表示とした場合の所定のビットの値が1である場合に、有理点TとQを通る直線lT,Q(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,Q(xP,yP)を演算する代わりに、lT,Q(xP,yP)v-3/4をlT',Q'(n,m)で演算して、f←f・lT',Q'(n,m)の代入演算を行う第3演算手段と、
    前記sを2進数表示とした場合の所定のビットの値が1である場合に、T'←T'+Q'の代入演算を行う第4演算手段と、
    前記第1演算手段から前記第2演算手段までの演算手段による演算を行なう毎に前記sを2進数表示とした場合の所定のビットの値を1ずつ減算するとともに、前記第1演算手段から前記第4演算手段までの演算手段による演算結果のfを前記記憶手段に記憶する手段と、
    前記記憶手段に記憶したfを用いて(q4h−1)/r乗のべき乗算を演算する第5演算手段と
    前記第5演算手段による演算結果をペアリング演算の結果として前記記憶手段に記憶する手段と
    して機能することを特徴とするペアリング演算装置。
  4. 曲線の式がy2=x3+a,a∈Fq(q:3より大きい素数のべき乗)で与えられ、埋込み次数が6h次(h:自然数)で、Fq 6hを定義体とするペアリング可能な楕円曲線上の有理点のなす加法群をE、素数位数rの有理点の集合をE[r]とし、φqをフロベニウス自己準同型写像として、
    1=E[r]∩Ker(φq−[1])
    2=E[r]∩Ker(φq−[q])
    により、
    e:G2×G1→F* q 6h/(F* q 6h)r
    である非退化な双線形写像として定義されるAteペアリングeによって、P∈G1、Q∈G2とし、フロベニウス自己準同型写像φqのトレースtを用いてs=t−1とし、ミラー関数fs,Q(・)を用いて、
    Figure 0004189828
    としてAteペアリングe(Q,P)を演算するCPUを備えたペアリング演算装置において、
    前記s=t−1又は前記tと、P∈E(F q )であるPと、Q'∈E'(F q h )であるQ'と、v -1/3 の値と、v -1/2 の値とを記憶する記憶手段を備え、
    fs,Q(P)の導出に必要となる有理関数の演算を、このfs,Q(P)の(q6h−1)/r乗のべき乗算の演算によって1となる平方非剰余かつ3乗非剰余なv∈Fq hを用いて、E(Fq h)のツイスト曲線E'(Fq h):y2=x3+av-1による真部分体上で行うべく、
    前記CPUは、
    前記s=t−1又は前記tと、Pと、Q'とを前記記憶手段から読み出して入力する入力手段と、
    前記v -1/3 の値と、前記v -1/2 の値とを前記記憶手段から読み出して有理点Pの座標(xP,yP)に対して、n←xP-1/3、m←yP-1/2の代入演算を行うとともに、初期値設定としてf←1、T'←Q'の代入演算を行う代入手段と、
    有理点Tを通る接線lT,T(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,T(xP,yP)を演算する代わりに、lT,T(xP,yP)v-1/2をlT',T'(n,m)で演算して、f←f2・lT',T'(n,m)の代入演算を行う第1演算手段と、
    T'←2T'の代入演算を行う第2演算手段と、
    前記sを2進数表示とした場合の所定のビットの値が1である場合に、有理点TとQを通る直線lT,Q(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,Q(xP,yP)を演算する代わりに、lT,Q(xP,yP)v-1/2をlT',Q'(n,m)で演算して、f←f・lT',Q'(n,m)の代入演算を行う第3演算手段と、
    前記sを2進数表示とした場合の所定のビットの値が1である場合に、T'←T'+Q'の代入演算を行う第4演算手段と、
    前記第1演算手段から前記第2演算手段までの演算手段による演算を行なう毎に前記sを2進数表示とした場合の所定のビットの値を1ずつ減算するとともに、前記第1演算手段から前記第4演算手段までの演算手段による演算結果のfを前記記憶手段に記憶する手段と、
    前記記憶手段に記憶したfを用いて(q6h−1)/r乗のべき乗算を演算する第5演算手段と
    前記第5演算手段による演算結果をペアリング演算の結果として前記記憶手段に記憶する手段と
    して機能することを特徴とするペアリング演算装置。
  5. 曲線の式がy2=x3+ax+b,a∈Fq,b∈Fq(q:3より大きい素数のべき乗)で与えられ、埋込み次数が2h次(h:自然数)で、Fq 2hを定義体とするペアリング可能な楕円曲線上の有理点のなす加法群をE、素数位数rの有理点の集合をE[r]とし、φqをフロベニウス自己準同型写像として、
    1=E[r]∩Ker(φq−[1])
    2=E[r]∩Ker(φq−[q])
    により、
    e:G2×G1→F* q 2h/(F* q 2h)r
    である非退化な双線形写像として定義されるAteペアリングeによって、P∈G1、Q∈G2とし、フロベニウス自己準同型写像φqのトレースtを用いてs=t−1とし、ミラー関数fs,Q(・)を用いて、
    Figure 0004189828
    としてAteペアリングe(Q,P)を、CPU及び記憶手段を備えた電子計算機で演算するペアリング演算方法において
    前記s=t−1又は前記tと、P∈E(F q )であるPと、Q'∈E'(F q h )であるQ'と、v -1 の値と、v -3/2 の値とを前記記憶手段に記憶するステップを有し、
    fs,Q(P)の(q2h−1)/r乗のべき乗算の演算によって1となる平方非剰余なv∈Fq h、E(Fq h)のツイスト曲線E'(Fq h):y2=x3+av-2x+bv-3を用いて、
    前記電子計算機のCPUを入力手段として機能させて、前記s=t−1又は前記tと、PとQ'とを前記記憶手段から読み出して入力する第1ステップと、
    前記電子計算機のCPUを代入手段として機能させて、前記v -1 の値と、前記v -3/2 の値とを前記記憶手段から読み出して、有理点Pの座標(xP,yP)に対して、n←xP-1、m←yP-3/2の代入演算を行う第2ステップと、
    前記電子計算機のCPUを代入手段として機能させて、初期値設定としてf←1、T'←Q'の代入演算を行う第3ステップと、
    前記電子計算機のCPUを第1演算手段として機能させて、有理点Tを通る接線lT,T(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,T(xP,yP)を演算する代わりに、lT,T(xP,yP)v-3/2をlT',T'(n,m)で演算して、f←f2・lT',T'(n,m)の代入演算を行う第4ステップと、
    前記電子計算機のCPUを第2演算手段として機能させて、T'←2T'の代入演算を行う第5ステップと、
    前記電子計算機のCPUを第3演算手段として機能させて、前記sを2進数表示とした場合の所定のビットの値が1である場合に、有理点TとQを通る直線lT,Q(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,Q(xP,yP)を演算する代わりに、lT,Q(xP,yP)v-3/2をlT',Q'(n,m)で演算して、f←f・lT',Q'(n,m)の代入演算を行う第6ステップと、
    前記電子計算機のCPUを第4演算手段として機能させて、前記sを2進数表示とした場合の所定のビットの値が1である場合に、T'←T'+Q'の代入演算を行う第7ステップと、
    前記電子計算機のCPUにより、前記第4ステップから前記第5ステップまでの演算を行なう毎に前記sを2進数表示とした場合の所定のビットの値を1ずつ減算する第8ステップと、
    前記第4ステップから前記第7ステップまでの演算結果のfを前記記憶手段に記憶する第9ステップと、
    前記電子計算機のCPUを第5演算手段として機能させて、前記記憶手段に記憶したfを用いて(q2h−1)/r乗のべき乗算の演算を行う第10ステップと、
    前記電子計算機のCPUにより、第10ステップによる演算結果をペアリング演算の結果として前記記憶手段に記憶する第11ステップと
    を有することを特徴とするペアリング演算方法。
  6. 曲線の式がy2=x3+a,a∈Fq(q:3より大きい素数のべき乗)で与えられ、埋込み次数が3h次(h:自然数)で、Fq 3hを定義体とするペアリング可能な楕円曲線上の有理点のなす加法群をE、素数位数rの有理点の集合をE[r]とし、φqをフロベニウス自己準同型写像として、
    1=E[r]∩Ker(φq−[1])
    2=E[r]∩Ker(φq−[q])
    により、
    e:G2×G1→F* q 3h/(F* q 3h)r
    である非退化な双線形写像として定義されるAteペアリングeによって、P∈G1、Q∈G2とし、フロベニウス自己準同型写像φqのトレースtを用いてs=t−1とし、ミラー関数fs,Q(・)を用いて、
    Figure 0004189828
    としてAteペアリングe(Q,P)を、CPU及び記憶手段を備えた電子計算機で演算するペアリング演算装置において、
    前記s=t−1又は前記tと、P∈E(F q )であるPと、Q'∈E'(F q h )であるQ'と、v -1/3 の値と、v -1/2 の値とを前記記憶手段に記憶するステップを有し、
    fs,Q(P)の(q3h−1)/r乗のべき乗算の演算によって1となる平方剰余かつ3乗非剰余なv∈Fq h、E(Fq h)のツイスト曲線E'(Fq h):y2=x3+av-1を用いて、
    前記電子計算機のCPUを代入手段として機能させて、前記s=t−1又は前記tと、PとQ'とを前記記憶手段から読み出して入力する第1ステップと、
    前記電子計算機のCPUを代入手段として機能させて、前記v -1/3 の値と、前記v -1/2 の値とを前記記憶手段から読み出して、有理点Pの座標(xP,yP)に対して、n←xP-1/3、m←yP-1/2の代入演算を行う第2ステップと、
    前記電子計算機のCPUを代入手段として機能させて、初期値設定としてf←1、T'←Q'の代入演算を行う第3ステップと、
    前記電子計算機のCPUを第1演算手段として機能させて、有理点Tを通る接線lT,T(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,T(xP,yP)を演算する代わりに、lT,T(xP,yP)v-1/2をlT',T'(n,m)で演算して、f←f2・lT',T'(n,m)の代入演算を行う第4ステップと、
    前記電子計算機のCPUを第2演算手段として機能させて、T'←2T'の代入演算を行う第5ステップと、
    前記電子計算機のCPUを第3演算手段として機能させて、前記sを2進数表示とした場合の所定のビットの値が1である場合に、有理点TとQを通る直線lT,Q(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,Q(xP,yP)を演算する代わりに、lT,Q(xP,yP)v-1/2をlT',Q'(n,m)で演算して、f←f・lT',Q'(n,m)の代入演算を行う第6ステップと、
    前記電子計算機のCPUを第4演算手段として機能させて、前記sを2進数表示とした場合の所定のビットの値が1である場合に、T'←T'+Q'の代入演算を行う第7ステップと、
    前記電子計算機のCPUにより、前記第4ステップから前記第5ステップまでの演算を行なう毎に前記sを2進数表示とした場合の所定のビットの値を1ずつ減算する第8ステップと、
    前記第4ステップから前記第7ステップまでの演算結果のfを前記記憶手段に記憶する第9ステップと、
    前記電子計算機のCPUを第5演算手段として機能させて、前記記憶手段に記憶したfを用いて(q3h−1)/r乗のべき乗算の演算を行う第10ステップと
    前記電子計算機のCPUにより、第10ステップによる演算結果をペアリング演算の結果として前記記憶手段に記憶する第11ステップと
    を有することを特徴とするペアリング演算方法。
  7. 曲線の式がy2=x3+ax,a∈Fq(q:3より大きい素数のべき乗)で与えられ、埋込み次数が4h次(h:自然数)で、4がqh−1を割り切るものとし、Fq 4hを定義体とするペアリング可能な楕円曲線上の有理点のなす加法群をE、素数位数rの有理点の集合をE[r]とし、φqをフロベニウス自己準同型写像として、
    1=E[r]∩Ker(φq−[1])
    2=E[r]∩Ker(φq−[q])
    により、
    e:G2×G1→F* q 4h/(F* q 4h)r
    である非退化な双線形写像として定義されるAteペアリングeによって、P∈G1、Q∈G2とし、フロベニウス自己準同型写像φqのトレースtを用いてs=t−1とし、ミラー関数fs,Q(・)を用いて、
    Figure 0004189828
    としてAteペアリングe(Q,P)を、CPU及び記憶手段を備えた電子計算機で演算するペアリング演算装置において、
    前記s=t−1又は前記tと、P∈E(F q )であるPと、Q'∈E'(F q h )であるQ'と、v -1/2 の値と、v -3/4 の値とを前記記憶手段に記憶するステップを有し、
    fs,Q(P)の(q4h−1)/r乗のべき乗算の演算によって1となる平方非剰余なv∈Fq h、E(Fq h)のツイスト曲線E'(Fq h):y2=x3+av-1xを用いて、
    前記電子計算機のCPUを入力手段として機能させて、前記s=t−1又は前記tと、Pと、Q'とを前記記憶手段から読み出して入力する第1ステップと、
    前記電子計算機のCPUを代入手段として機能させて、前記v -1/2 の値と、前記v -3/4 の値とを前記記憶手段から読み出して、有理点Pの座標(xP,yP)に対して、n←xP-1/2、m←yP-3/4の代入演算を行う第2ステップと、
    前記電子計算機のCPUを代入手段として機能させて、f←1、T'←Q'の代入演算を行う第3ステップと、
    前記電子計算機のCPUを第1演算手段として機能させて、有理点Tを通る接線lT,T(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,T(xP,yP)を演算する代わりに、lT,T(xP,yP)v-3/4をlT',T'(n,m)で演算して、f←f2・lT',T'(n,m)の代入演算を行う第4ステップと、
    前記電子計算機のCPUを第2演算手段として機能させて、T'←2T'の代入演算を行う第5ステップと、
    前記電子計算機のCPUを第3演算手段として機能させて、前記sを2進数表示とした場合の所定のビットの値が1である場合に、有理点TとQを通る直線lT,Q(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,Q(xP,yP)を演算する代わりに、lT,Q(xP,yP)v-3/4をlT',Q'(n,m)で演算して、f←f・lT',Q'(n,m)の代入演算を行う第6ステップと、
    前記電子計算機のCPUを第4演算手段として機能させて、前記sを2進数表示とした場合の所定のビットの値が1である場合に、T'←T'+Q'の代入演算を行う第7ステップと、
    前記電子計算機のCPUにより、前記第4ステップから前記第5ステップまでの演算を行なう毎に前記sを2進数表示とした場合の所定のビットの値を1ずつ減算する第8ステップと、
    前記第4ステップから前記第7ステップまでの演算結果のfを前記記憶手段に記憶する第9ステップと、
    前記電子計算機のCPUを第5演算手段として機能させて、前記記憶手段に記憶したfを用いて(q4h−1)/r乗のべき乗算の演算を行う第10ステップと
    前記電子計算機のCPUにより、第10ステップによる演算結果をペアリング演算の結果として前記記憶手段に記憶する第11ステップと
    を有することを特徴とするペアリング演算方法。
  8. 曲線の式がy2=x3+a,a∈Fq(q:3より大きい素数のべき乗)で与えられ、埋込み次数が6h次(h:自然数)で、Fq 6hを定義体とするペアリング可能な楕円曲線上の有理点のなす加法群をE、素数位数rの有理点の集合をE[r]とし、φqをフロベニウス自己準同型写像として、
    1=E[r]∩Ker(φq−[1])
    2=E[r]∩Ker(φq−[q])
    により、
    e:G2×G1→F* q 6h/(F* q 6h)r
    である非退化な双線形写像として定義されるAteペアリングeによって、P∈G1、Q∈G2とし、フロベニウス自己準同型写像φqのトレースtを用いてs=t−1とし、ミラー関数fs,Q(・)を用いて、
    Figure 0004189828
    としてAteペアリングe(Q,P)を、CPU及び記憶手段を備えた電子計算機で演算するペアリング演算方法において
    前記s=t−1又は前記tと、P∈E(F q )であるPと、Q'∈E'(F q h )であるQ'と、v -1/3 の値と、v -1/2 の値とを前記記憶手段に記憶するステップを有し、
    fs,Q(P)の(q6h−1)/r乗のべき乗算の演算によって1となる平方非剰余かつ3乗非剰余なv∈Fq h、E(Fq h)のツイスト曲線E'(Fq h):y2=x3+av-1を用いて、
    前記電子計算機のCPUを入力手段として機能させて、前記s=t−1又は前記tと、Pと、Q'とを前記記憶手段から読み出して入力するステップと、
    前記電子計算機のCPUを代入手段として機能させて、前記v -1/3 の値と、前記v -1/2 の値とを前記記憶手段から読み出して入力する第1ステップと、
    前記電子計算機のCPUを代入手段として機能させて、有理点Pの座標(xP,yP)に対して、n←xP-1/3、m←yP-1/2の代入演算を行う第2ステップと、
    前記電子計算機のCPUを代入手段として機能させて、初期値設定としてf←1、T'←Q'の代入演算を行う第3ステップと、
    前記電子計算機のCPUを第1演算手段として機能させて、有理点Tを通る接線lT,T(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,T(xP,yP)を演算する代わりに、lT,T(xP,yP)v-1/2をlT',T'(n,m)で演算して、f←f2・lT',T'(n,m)の代入演算を行う第4ステップと、
    前記電子計算機のCPUを第2演算手段として機能させて、T'←2T'の代入演算を行う第5ステップと、
    前記電子計算機のCPUを第3演算手段として機能させて、前記sを2進数表示とした場合の所定のビットの値が1である場合に、有理点TとQを通る直線lT,Q(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,Q(xP,yP)を演算する代わりに、lT,Q(xP,yP)v-1/2をlT',Q'(n,m)で演算して、f←f・lT',Q'(n,m)の代入演算を行う第6ステップと、
    前記電子計算機のCPUを第4演算手段として機能させて、前記sを2進数表示とした場合の所定のビットの値が1である場合に、T'←T'+Q'の代入演算を行う第7ステップと、
    前記電子計算機のCPUにより、前記第4ステップから前記第5ステップまでの演算を行なう毎に前記sを2進数表示とした場合の所定のビットの値を1ずつ減算する第8ステップと、
    前記第4ステップから前記第7ステップまでの演算結果のfを前記記憶手段に記憶する第9ステップと、
    前記電子計算機のCPUを第5演算手段として機能させて、前記記憶手段に記憶したfを用いて(q6h−1)/r乗のべき乗算の演算を行う第10ステップと
    前記電子計算機のCPUにより、第10ステップによる演算結果をペアリング演算の結果として前記記憶手段に記憶する第11ステップと
    を有することを特徴とするペアリング演算方法。
  9. 曲線の式がy2=x3+ax+b,a∈Fq,b∈Fq(q:3より大きい素数のべき乗)で与えられ、埋込み次数が2h次(h:自然数)で、Fq 2hを定義体とするペアリング可能な楕円曲線上の有理点のなす加法群をE、素数位数rの有理点の集合をE[r]とし、φqをフロベニウス自己準同型写像として、
    1=E[r]∩Ker(φq−[1])
    2=E[r]∩Ker(φq−[q])
    により、
    e:G2×G1→F* q 2h/(F* q 2h)r
    である非退化な双線形写像として定義されるAteペアリングeによって、P∈G1、Q∈G2とし、フロベニウス自己準同型写像φqのトレースtを用いてs=t−1とし、ミラー関数fs,Q(・)を用いて、
    Figure 0004189828
    としてAteペアリングe(Q,P)を、CPU及び記憶手段を備えた電子計算機に演算させるペアリング演算プログラムにおいて、
    前記電子計算機の記
    憶手段を、前記s=t−1又は前記tと、P∈E(F q )であるPと、Q'∈E'(F q h )であるQ'と、v -1 の値と、v -3/2 の値とを記憶する記憶手段として機能させ、
    fs,Q(P)の(q2h−1)/r乗のべき乗算の演算によって1となる平方非剰余なv∈Fq h、E(Fq h)のツイスト曲線E'(Fq h):y2=x3+av-2x+bv-3を用いて、
    前記電子計算機のCPUを、
    前記s=t−1又は前記tと、Pと、Q'とを前記記憶手段から読み出して入力する入力手段
    前記v -1 の値と、前記v -3/2 の値とを前記記憶手段から読み出して、有理点Pの座標(xP,yP)に対して、n←xP-1、m←yP-3/2の代入演算を行うとともに初期値設定としてf←1、T'←Q'の代入演算を行う代入手段
    有理点Tを通る接線lT,T(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,T(xP,yP)を演算する代わりに、lT,T(xP,yP)v-3/2をlT',T'(n,m)で演算して、f←f2・lT',T'(n,m)の代入演算を行う第1演算手段、
    T'←2T'の代入演算を行う第2演算手段、
    前記sを2進数表示とした場合の所定のビットの値が1である場合に、有理点TとQを通る直線lT,Q(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,Q(xP,yP)を演算する代わりに、lT,Q(xP,yP)v-3/2をlT',Q'(n,m)で演算して、f←f・lT',Q'(n,m)の代入演算を行う第3演算手段、
    前記sを2進数表示とした場合の所定のビットの値が1である場合に、T'←T'+Q'の代入演算を行う第4演算手段、
    前記第1演算手段から前記第2演算手段までの演算手段による演算を行なう毎に前記sを2進数表示とした場合の所定のビットの値を1ずつ減算するとともに、前記第1演算手段から前記第4演算手段までの演算手段による演算結果のfを前記記憶手段に記憶する手段、
    前記記憶手段に記憶したfを用いて(q2h−1)/r乗のべき乗算の演算を行う第5演算手段
    前記第5演算手段による演算結果をペアリング演算の結果として前記記憶手段に記憶する手段
    として機能させるためのペアリング演算プログラム。
  10. 曲線の式がy2=x3+a,a∈Fq(q:3より大きい素数のべき乗)で与えられ、埋込み次数が3h次(h:自然数)で、Fq 3hを定義体とするペアリング可能な楕円曲線上の有理点のなす加法群をE、素数位数rの有理点の集合をE[r]とし、φqをフロベニウス自己準同型写像として、
    1=E[r]∩Ker(φq−[1])
    2=E[r]∩Ker(φq−[q])
    により、
    e:G2×G1→F* q 3h/(F* q 3h)r
    である非退化な双線形写像として定義されるAteペアリングeによって、P∈G1、Q∈G2とし、フロベニウス自己準同型写像φqのトレースtを用いてs=t−1とし、ミラー関数fs,Q(・)を用いて、
    Figure 0004189828
    としてAteペアリングe(Q,P)を、CPU及び記憶手段を備えた電子計算機に演算させるペアリング演算プログラムにおいて、
    前記電子計算機の記憶手段を、前記s=t−1又は前記tと、P∈E(F q )であるPと、Q'∈E'(F q h )であるQ'と、v -1/3 の値と、v -1/2 の値とを記憶する記憶手段として機能させ、
    fs,Q(P)の(q3h−1)/r乗のべき乗算の演算によって1となる平方剰余かつ3乗非剰余なv∈Fq h、E(Fq h)のツイスト曲線E'(Fq h):y2=x3+av-1を用いて、
    前記電子計算機のCPUを、
    前記s=t−1又は前記tと、Pと、Q'とを前記記憶手段から読み出して入力する入力手段、
    前記v -1/3 の値と、前記v -1/2 の値とを前記記憶手段から読み出して、有理点Pの座標(xP,yP)に対して、n←xP-1/3、m←yP-1/2の代入演算を行うとともに、初期値設定としてf←1、T'←Q'の代入演算を行う代入手段、
    有理点Tを通る接線lT,T(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,T(xP,yP)を演算する代わりに、lT,T(xP,yP)v-1/2をlT',T'(n,m)で演算して、f←f2・lT',T'(n,m)の代入演算を行う第1演算手段、
    T'←2T'の代入演算を行う第2演算手段、
    前記sを2進数表示とした場合の所定のビットの値が1である場合に、有理点TとQを通る直線lT,Q(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,Q(xP,yP)を演算する代わりに、lT,Q(xP,yP)v-1/2をlT',Q'(n,m)で演算して、f←f・lT',Q'(n,m)の代入演算を行う第3演算手段、
    前記sを2進数表示とした場合の所定のビットの値が1である場合に、T'←T'+Q'の代入演算を行う第4演算手段、
    前記第1演算手段から前記第2演算手段までの演算手段による演算を行なう毎に前記sを2進数表示とした場合の所定のビットの値を1ずつ減算するとともに、前記第1演算手段から前記第4演算手段までの演算手段による演算結果のfを前記記憶手段に記憶する手段、
    前記記憶手段に記憶したfを用いて(q3h−1)/r乗のべき乗算の演算を行う第5演算手段、
    前記第5演算手段による演算結果をペアリング演算の結果として前記記憶手段に記憶する手段
    として機能させるためのペアリング演算プログラム。
  11. 曲線の式がy2=x3+ax,a∈Fq(q:3より大きい素数のべき乗)で与えられ、埋込み次数が4h次(h:自然数)で、4がqh−1を割り切るものとし、Fq 4hを定義体とするペアリング可能な楕円曲線上の有理点のなす加法群をE、素数位数rの有理点の集合をE[r]とし、φqをフロベニウス自己準同型写像として、
    1=E[r]∩Ker(φq−[1])
    2=E[r]∩Ker(φq−[q])
    により、
    e:G2×G1→F* q 4h/(F* q 4h)r
    である非退化な双線形写像として定義されるAteペアリングeによって、P∈G1、Q∈G2とし、フロベニウス自己準同型写像φqのトレースtを用いてs=t−1とし、ミラー関数fs,Q(・)を用いて、
    Figure 0004189828
    としてAteペアリングe(Q,P)を、CPU及び記憶手段を備えた電子計算機に演算させるペアリング演算プログラムにおいて、
    前記電子計算機の記憶手段を、前記s=t−1又は前記tと、P∈E(F q )であるPと、Q'∈E'(F q h )であるQ'と、v -1/2 の値と、v -3/4 の値とを記憶する記憶手段として機能させ、
    fs,Q(P)の(q4h−1)/r乗のべき乗算の演算によって1となる平方非剰余なv∈Fq h、E(Fq h)のツイスト曲線E'(Fq h):y2=x3+av-1xを用いて、
    前記電子計算機のCPUを、
    前記s=t−1又は前記tと、Pと、Q'とを前記記憶手段から読み出して入力する入力手段、
    前記v -1/2 の値と、前記v -3/4 の値とを前記記憶手段から読み出して、有理点Pの座標(xP,yP)に対して、n←xP-1/2、m←yP-3/4の代入演算を行うとともに、初期値設定としてf←1、T'←Q'の代入演算を行う代入手段
    有理点Tを通る接線lT,T(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,T(xP,yP)を演算する代わりに、lT,T(xP,yP)v-3/4をlT',T'(n,m)で演算して、f←f2・lT',T'(n,m)の代入演算を行う第1演算手段、
    T'←2T'の代入演算を行う第2演算手段、
    前記sを2進数表示とした場合の所定のビットの値が1である場合に、有理点TとQを通る直線lT,Q(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,Q(xP,yP)を演算する代わりに、lT,Q(xP,yP)v-3/4をlT',Q'(n,m)で演算して、f←f・lT',Q'(n,m)の代入演算を行う第3演算手段、
    前記sを2進数表示とした場合の所定のビットの値が1である場合に、T'←T'+Q'の代入演算を行う第4演算手段、
    前記第1演算手段から前記第2演算手段までの演算手段による演算を行なう毎に前記sを2進数表示とした場合の所定のビットの値を1ずつ減算するとともに、前記第1演算手段から前記第4演算手段までの演算手段による演算結果のfを前記記憶手段に記憶する手段、
    前記記憶手段に記憶したfを用いて(q4h−1)/r乗のべき乗算の演算を行う第5演算手段、
    前記第5演算手段による演算結果をペアリング演算の結果として前記記憶手段に記憶する手段
    として機能させるためのペアリング演算プログラム。
  12. 曲線の式がy2=x3+a,a∈Fq(q:3より大きい素数のべき乗)で与えられ、埋込み次数が6h次(h:自然数)で、Fq 6hを定義体とするペアリング可能な楕円曲線上の有理点のなす加法群をE、素数位数rの有理点の集合をE[r]とし、φqをフロベニウス自己準同型写像として、
    1=E[r]∩Ker(φq−[1])
    2=E[r]∩Ker(φq−[q])
    により、
    e:G2×G1→F* q 6h/(F* q 6h)r
    である非退化な双線形写像として定義されるAteペアリングeによって、P∈G1、Q∈G2とし、フロベニウス自己準同型写像φqのトレースtを用いてs=t−1とし、ミラー関数fs,Q(・)を用いて、
    Figure 0004189828
    としてAteペアリングe(Q,P)を、CPU及び記憶手段を備えた電子計算機に演算させるペアリング演算プログラムにおいて、
    前記電子計算機の記憶手段を、前記s=t−1又は前記tと、P∈E(F q )であるPと、Q'∈E'(F q h )であるQ'と、v -1/3 の値と、v -1/2 の値とを記憶する記憶手段として機能させ、
    fs,Q(P)の(q4h−1)/r乗のべき乗算の演算によって1となる平方非剰余なv∈Fq h、E(Fq h)のツイスト曲線E'(Fq h):y2=x3+av-1xを用いて、
    前記CPUを、
    前記s=t−1又は前記tと、Pと、Q'とを前記記憶手段から読み出して入力する入力手段
    前記v -1/3 の値と、前記v -1/2 の値とを前記記憶手段から読み出して、有理点Pの座標(xP,yP)に対して、n←xP-1/3、m←yP-1/2の代入演算を行うとともに、初期値設定としてf←1、T'←Q'の代入演算を行う代入手段、
    有理点Tを通る接線lT,T(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,T(xP,yP)を演算する代わりに、lT,T(xP,yP)v-1/2をlT',T'(n,m)で演算して、f←f2・lT',T'(n,m)の代入演算を行う第1演算手段
    T'←2T'の代入演算を行う第2演算手段
    前記sを2進数表示とした場合の所定のビットの値が1である場合に、有理点TとQを通る直線lT,Q(x,y)=0の左辺に有理点Pの座標(xP,yP)を代入した値lT,Q(xP,yP)を演算する代わりに、lT,Q(xP,yP)v-1/2をlT',Q'(n,m)で演算して、f←f・lT',Q'(n,m)の代入演算を行う第3演算手段
    前記sを2進数表示とした場合の所定のビットの値が1である場合に、T'←T'+Q'の代入演算を行う第4演算手段
    前記第1演算手段から前記第2演算手段までの演算手段による演算を行なう毎に前記sを2進数表示とした場合の所定のビットの値を1ずつ減算するとともに、前記第1演算手段から前記第4演算手段までの演算手段による演算結果のfを前記記憶手段に記憶する手段、
    前記記憶手段に記憶したfを用いて(q6h−1)/r乗のべき乗算の演算を行う第5演算手段、
    前記第5演算手段による演算結果をペアリング演算の結果として前記記憶手段に記憶する手段
    として機能させるためのペアリング演算プログラム。
JP2007282487A 2007-10-30 2007-10-30 ペアリング演算装置、ペアリング演算方法、及びペアリング演算プログラム Expired - Fee Related JP4189828B1 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2007282487A JP4189828B1 (ja) 2007-10-30 2007-10-30 ペアリング演算装置、ペアリング演算方法、及びペアリング演算プログラム
CN200880114080.6A CN101842824B (zh) 2007-10-30 2008-10-29 配对计算装置、配对计算方法
US12/740,587 US8238550B2 (en) 2007-10-30 2008-10-29 Pairing computation device, pairing computation method and recording medium recording pairing computation program
KR1020107011866A KR20100094487A (ko) 2007-10-30 2008-10-29 페어링 연산 장치, 페어링 연산 방법, 및 페어링 연산 프로그램을 기록한 기록 매체
EP08843368A EP2216767A1 (en) 2007-10-30 2008-10-29 Pairing computation device, pairing computation method, and recording medium where pairing computation program is recorded
PCT/JP2008/069683 WO2009057656A1 (ja) 2007-10-30 2008-10-29 ペアリング演算装置、ペアリング演算方法、及びペアリング演算プログラムを記録した記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007282487A JP4189828B1 (ja) 2007-10-30 2007-10-30 ペアリング演算装置、ペアリング演算方法、及びペアリング演算プログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2008226527A Division JP5168649B2 (ja) 2008-09-03 2008-09-03 ペアリング演算装置、ペアリング演算方法、及びペアリング演算プログラム

Publications (2)

Publication Number Publication Date
JP4189828B1 true JP4189828B1 (ja) 2008-12-03
JP2009109772A JP2009109772A (ja) 2009-05-21

Family

ID=40174672

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007282487A Expired - Fee Related JP4189828B1 (ja) 2007-10-30 2007-10-30 ペアリング演算装置、ペアリング演算方法、及びペアリング演算プログラム

Country Status (6)

Country Link
US (1) US8238550B2 (ja)
EP (1) EP2216767A1 (ja)
JP (1) JP4189828B1 (ja)
KR (1) KR20100094487A (ja)
CN (1) CN101842824B (ja)
WO (1) WO2009057656A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120014254A (ko) * 2009-04-21 2012-02-16 고꾸리츠 다이가꾸 호우징 오까야마 다이가꾸 페어링 연산 장치, 페어링 연산 방법, 및 페어링 연산 프로그램을 기록한 기록 매체

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100169658A1 (en) * 2008-12-30 2010-07-01 Lahouari Ghouti Elliptic curve-based message authentication code
US8705740B2 (en) 2008-12-30 2014-04-22 King Fahd University Of Petroleum And Minerals Elliptic curve-based message authentication code system and method
WO2012046805A1 (ja) * 2010-10-08 2012-04-12 国立大学法人岡山大学 有理点情報圧縮装置、有理点情報圧縮方法及び有理点情報圧縮プログラム
JP2015022167A (ja) * 2013-07-19 2015-02-02 株式会社東芝 ペアリング演算装置、方法およびプログラム
JP6610277B2 (ja) * 2016-01-15 2019-11-27 富士通株式会社 共有鍵生成プログラム、共有鍵生成方法および情報処理端末
WO2018135511A1 (ja) * 2017-01-18 2018-07-26 日本電信電話株式会社 秘密計算方法、秘密計算システム、秘密計算装置、およびプログラム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005316267A (ja) 2004-04-30 2005-11-10 Hitachi Ltd 楕円曲線ペアリング演算装置
CN101031944A (zh) * 2004-09-30 2007-09-05 索尼株式会社 加密计算方法、加密系统和计算机程序

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120014254A (ko) * 2009-04-21 2012-02-16 고꾸리츠 다이가꾸 호우징 오까야마 다이가꾸 페어링 연산 장치, 페어링 연산 방법, 및 페어링 연산 프로그램을 기록한 기록 매체
CN102405469A (zh) * 2009-04-21 2012-04-04 国立大学法人冈山大学 配对运算装置、配对运算方法以及记录有配对运算程序的记录介质
KR101633148B1 (ko) 2009-04-21 2016-06-23 고꾸리츠 다이가꾸 호우징 오까야마 다이가꾸 페어링 연산 장치, 페어링 연산 방법, 및 페어링 연산 프로그램을 기록한 기록 매체

Also Published As

Publication number Publication date
KR20100094487A (ko) 2010-08-26
US20100260333A1 (en) 2010-10-14
CN101842824B (zh) 2013-03-27
US8238550B2 (en) 2012-08-07
JP2009109772A (ja) 2009-05-21
CN101842824A (zh) 2010-09-22
WO2009057656A1 (ja) 2009-05-07
EP2216767A1 (en) 2010-08-11

Similar Documents

Publication Publication Date Title
JP4189828B1 (ja) ペアリング演算装置、ペアリング演算方法、及びペアリング演算プログラム
JP4067818B2 (ja) 楕円曲線暗号装置、楕円曲線暗号プログラム及び楕円曲線暗号の演算方法
WO2020181822A1 (zh) 加密数据一致性校验方法、装置、计算机设备及存储介质
JP5360836B2 (ja) ペアリング演算装置、ペアリング演算方法、及びペアリング演算プログラム
JP2009537025A (ja) サイドチャネル攻撃からの保護
KR102550812B1 (ko) 동형 암호를 이용한 암호문 비교 방법 및 이를 수행하기 위한 장치
JPWO2005015526A1 (ja) 楕円曲線暗号装置,楕円曲線暗号方法および楕円曲線暗号プログラム
JP5549018B2 (ja) ペアリング演算装置、ペアリング演算方法、及びペアリング演算プログラムを記録した記録媒体
JP6610277B2 (ja) 共有鍵生成プログラム、共有鍵生成方法および情報処理端末
JP5403630B2 (ja) スカラ倍算器及びスカラ倍算プログラム
JPWO2006030496A1 (ja) 楕円曲線暗号演算装置、楕円曲線を用いた演算装置の演算方法および楕円曲線上の点のスカラー倍演算をコンピュータに実行させるプログラム
CN111262707B (zh) 数字签名方法及验证方法、设备、存储介质
JP5168649B2 (ja) ペアリング演算装置、ペアリング演算方法、及びペアリング演算プログラム
CN117118637B (zh) 数据处理方法、装置、设备及计算机可读存储介质
CN114614992B (zh) 签名值输出及验证方法、装置、计算机设备、存储介质
CN114650135B (zh) 一种软硬件协同的sm2椭圆曲线密码算法实现方法
JP5179933B2 (ja) データ処理装置
JP2022146493A (ja) 演算装置
JP2004053814A (ja) 楕円曲線暗号装置及び楕円曲線暗号演算方法
CN116846557A (zh) 数据加密方法、装置、计算机设备和存储介质
JP2014178506A (ja) 楕円曲線暗号装置
CN114726516A (zh) 一种卡号和密码融合的加密方法、系统、终端设备及存储介质
JP2008141385A (ja) 暗号方法、暗号装置および暗号プログラム
CN115603911A (zh) 一种属性基加密方法、装置、电子设备及存储介质
KR20010062971A (ko) 암호시스템의 연산속도 개선 방법

Legal Events

Date Code Title Description
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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080904

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110926

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4189828

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110926

Year of fee payment: 3

S201 Request for registration of exclusive licence

Free format text: JAPANESE INTERMEDIATE CODE: R314201

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110926

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110926

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120926

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S804 Written request for registration of cancellation of exclusive licence

Free format text: JAPANESE INTERMEDIATE CODE: R314803

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120926

Year of fee payment: 4

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120926

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130926

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees