JP4772189B2 - エンティティの真正性および/または特殊素因子を使用するメッセ−ジの完全性および/または真正性を証明するための方法、システム、及び装置 - Google Patents

エンティティの真正性および/または特殊素因子を使用するメッセ−ジの完全性および/または真正性を証明するための方法、システム、及び装置 Download PDF

Info

Publication number
JP4772189B2
JP4772189B2 JP2000597915A JP2000597915A JP4772189B2 JP 4772189 B2 JP4772189 B2 JP 4772189B2 JP 2000597915 A JP2000597915 A JP 2000597915A JP 2000597915 A JP2000597915 A JP 2000597915A JP 4772189 B2 JP4772189 B2 JP 4772189B2
Authority
JP
Japan
Prior art keywords
mod
value
integer
equal
memory unit
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 - Lifetime
Application number
JP2000597915A
Other languages
English (en)
Other versions
JP2002540653A5 (ja
JP2002540653A (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
Priority claimed from FR9901065A external-priority patent/FR2788910A1/fr
Priority claimed from FR9903770A external-priority patent/FR2788911A1/fr
Application filed by ファンタム・ダイアー・エヌヴェー・エルエルシー filed Critical ファンタム・ダイアー・エヌヴェー・エルエルシー
Publication of JP2002540653A publication Critical patent/JP2002540653A/ja
Publication of JP2002540653A5 publication Critical patent/JP2002540653A5/ja
Application granted granted Critical
Publication of JP4772189B2 publication Critical patent/JP4772189B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

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/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/3218Cryptographic 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 using proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Complex Calculations (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Peptides Or Proteins (AREA)
  • Error Detection And Correction (AREA)
  • Agricultural Chemicals And Associated Chemicals (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Storage Device Security (AREA)

Description

【0001】
本発明は、エンティティの真正性(authenticity)および/またはメッセ−ジの完全性(integrity)および/または真正性を証明するように設計されている方法、システムおよびデバイスの技術分野に関する。
【0002】
発明者がLouis−GuillouおよびJean−Jacques Quisquaterである特許EP第0311470B1号公報がこのような方法を説明する。これ以降、彼らの研究を、用語「GQ特許」または「GQ方法」によって引用するものとする。これ以降、表現「GQ2」または「QG2発明」あるいは「GQ2技術」を、フランステレコム(France Telecom)とTDFと企業Mathrizkとによって、本出願と同日に登録され、発明者がLouis GuillouおよびJean−Jacques Quisquaterである係属出願の対象であるGQ技術の新しい開発を記述するために使用するものとする。これらの係属中の出願の特徴的な特色は、以下の説明の中で必要なときに想起する。
【0003】
GQ方法に従って、「信頼される当局(trusted authority)」として知られているエンティティは、「証人(witness)」と呼ばれているエンティティ(entity)に対しアイデンティティ(identity)を割り当て、それのRSA符号を計算する。顧客イズ化したプロセスでは、信頼される当局は、証人にアイデンティティおよび符号を与える。その後に証人は以下を宣言する。つまり、「ここに私のアイデンティティがある。私は、そのRSA符号を知っている。」証人は、事実を明らかにすることなく、自分が自らのアイデンティティのRSAを知っていることを証明する。RSA公開識別鍵(RSA public identification key)は、信頼される当局により配布されるが、「監査官(controller)」として知られるエンティティが、その知識を得ずに、RSA符号が宣言されたアイデンティティに一致することを確かめる。GQ方法を使用する機構は、「知識の移管(without transfer of knowledge)」を行わずに起こる。GQ方法に従って、証人は、信頼される当局がそれを使って大多数のアイデンティティに署名するRSA秘密鍵(RSA private key)を知らない。
【0004】
前記GQ技術はRSA技術を利用している。しかしながら、RSA技術は真に係数nの因数分解に依存しているが、RSA技術を実現しているデジタル符号の多様な規格に対するいわゆる倍数的に増加する攻撃(multiplicative attacks)においてみられるように、この依存は等価でなく実際にはそれとはかなり異なっている。
【0005】
GQ2技術の目標は2つの部分を有する。つまり、第1に、RSA技術の性能特徴を改善すること、第2にRSA技術に固有の問題を回避することである。GQ2秘密鍵を知っていることは、係数nの因数分解を知っていることに等価である。三つ組のGQ2に対する攻撃は、係数nの因数分解につながる。このときには等価性がある。GQ2技術を用いると、署名をするあるいは自己認証するエンティティにとっての、および、監査するエンティティにとっての作業量は削減される。機密保護と性能の両方の点での因数分解の問題をさらにうまく使用することにより、GQ2技術はRSA技術の欠点を回避する。
【0006】
GQ方法は、512ビット以上を備える数のモジュロ計算を実現する。これらの計算は、約216+1乗まで累乗されたのと実質的に同じ大きさを有する数に関する。現在では、特に、銀行カ−ドの分野における既存のマイクロエレクトロニクス・インフラストラクチャは、演算コプロセッサを使用しないで一体式の自己プログラム可能なマイクロプロセッサを利用する。GQ方法などの方法に関係する複数の演算アプリケ−ションに関する作業量は、一定の場合には、顧客が購入物を支払うために銀行カ−ドを使用するには不利であることを判明する計算時間に通じている。ここでは、支払カ−ドの安全性を高めるため、銀行当局が、特に解決が困難な問題を引き起こしたことを想起することができる。実際、2つの明らかに矛盾する問題を解決しなければならない。つまり、一方では、各カ−ドのますます長いかつ識別可能な鍵を使用することにより安全性を高めつつ、他方では、作業量がユ−ザに対して過剰な計算時間に通じることを妨げるのである。この問題は、既存のインフラストラクチャおよび既存のマイクロプロセッサ構成要素を考慮に入れることも必要となるため、特に急を要する。
【0007】
GQ2技術は、安全性を高めつつ、この問題に対する解決策を提供する。
【0008】
GQ2技術は、特殊な特性を有する素因数を実現する。これらの素因数を作り出すには多様な既存の技法がある。本発明の目的とは、このような素因数の組織的な生産のための方法である。それは、特にGQ2技術の実施によりこれらの因数から作り出すことができるアプリケ−ションにも関する。これらの特殊な素因数およびそれらを得るための方法が、Q2技術の分野を超えて適用可能であることをいま強調しなければならない。
【0009】
本発明は、コントロ−ラエンティティに以下を証明するように作られた方法(GQ2方法)に適用できる。
エンティティの真正性、および/または、
このエンティティに関連付けられたメッセ−ジMの完全性
【0010】
この証明は、以下のパラメ−タまたはその派生物のすべてまたは一部によって確立される。
f個の素因数p1,p2,…pf(fは2に等しいまたは大きい)の積により構成されている公開モジュラス(public modulus)nと、
公開指数(public exponent)vと、
m個の別個の整数基数(integer base number)g1,g2,…gm(mは、1以上)。
【0011】
基数giは、2つの等式(1)と(2)である
2≡gimod nおよびx2≡−gimod n
が、モジュロnの整数環(the ring of integers modulo n)においてxについて解くことができないほどであり、等式(3)
v≡gi 2mod n
は、モジュロnの整数環においてxについて解くことができるほどである。
【0012】
本発明に従った方法は、等式(1)、(2)および(3)が満たされるような方法でf個の素因数p1,,p2,,…pf.を作り出すために使用される。本発明に従った方法は、最初に、
m個の基数g1,,g2,,…gm,と、
係数nのサイズと、
f個の素因数p1,,p2,,…pfのサイズと
を選ぶステップを含んでなる。
【0013】
該方法は、公開指数vが、v=2kの形を持つ場合に関し、ここで、kは1より大きい機密保護パラメ−タ(security parameter)である。機密保護パラメ−タkは、素数としても選択される。指数vのこの特殊な値は、GQ2技術の必須な特色の1つである。
【0014】
好ましくはm個の基数 g1,,g2,,…gmは、第1の整数の間で少なくとも部分的に選択される。また好ましくは、機密保護パラメ−タkは、小さい整数、特に100以下である。有利には、係数nのサイズは、数百ビットより大きい。また有利には、f個の素因数p1,,p2,,…pfは、因数の数fで除算された係数nのサイズに近いサイズである。
【0015】
本発明の特徴に従った主要な特徴に従い、f個の素因数p1,,p2,,…pfは、明記されていない方法では選択されない。f個の素因数p1,,p2,,…pfの内、それらの一定数eが、モジュロ4の1に一致するように選択される。素因数のこのeは、ゼロであってよい。eがゼロである場合には、係数nは、これ以降、基本係数と呼ばれる。e>0である場合には、係数nは、これ以降、結合係数と呼ばれる。f−e個のそれ以外の素因数は、モジュロ4の3に一致するように選択される。素因数のこのf−eは、少なくとも2に等しい。
【0016】
(モジュロ4の3に一致するf−e個の素因数の選択)
モジュロ4の3に一致するf−e個の素因数p1,,p2,,…pf-eを繰り出すためには、以下のステップを実施する。
モジュロ4の3に一致する第1素因数p1を選択してから、
第2の素因数p2を、p2が基数g1に関してp1に相補的(conplementary)となるように選択する。
【0017】
因数pi+1を選択するためには、2つの場合を区別する上で以下の手順を使用する。
(1)i>mの場合には、
i>mであるならば、モジュロ4の3に一致する因数pi+1を選択する。
(2)i≦mの場合には、
i≦mであるならば、i個の第1素因数piに関してgiのプロファイル(Profilei(gi))を計算する。
Profilei(gi)が平坦(flat)である場合には、因数pi+1を、pi+1がgiに関してp1に相補的となるように選択する。
それ以外の場合には、i−1個の基数g1,g2,…gi-1 およびそのすべての乗法の組み合わせの中で、これ以降gと呼ばれる数を、Profilei(g)=Profilei(gi)となるように選択し、したがってpi+1を、Profilei+1(gi) ≠ Profilei+1(g)となるように選択する。
【0018】
用語「相補的(conplementary)」、「プロファイル(profile)」、「平坦なプロファイル(flat profile)」は、本明細書の記述において定義される意味を有する。
【0019】
最後の素因数pf-eを選択するためには、3つの場合区別する上で、以下の手順を使用する。
(1)f−e−1 > mである場合
f−e−1>mである場合、pf-eを、モジュロ4の3に一致して選択する。
(2)f−e−1=mである場合
f−e−1=mである場合、Profilef-e-1(gm)を、p1からpf-e-1,というf−e−1個の第1素因子に関して計算する。
もし、Profilef-e-1(gm)が平坦である場合には、pf-e-1を、それがgmに関してp1に相補的となるように選択する。
それ以外の場合には、以下に規定されている手順に従う。
1からgm-1というm−1個の基数およびすべてのその乗法の組み合わせの中で、これ以降gと呼ばれる数をProfilei(g)=Profilei(gi)となるように選択し、そして、pf-eをProfilef-e(g) ≠ Profilef-e(gm)となるように選択する。
(3)f−e−1<mである場合
f−e−1<mである場合には、pf-eが、以下の2つの条件を満たすと選択される。
(3.1) 第1条件
Profilef-e-1(gf-e-1)が、p1からpf-e-1のf−e−1個の第1素因数に関して計算される。その場合に2つの場合が考えられる。これらの2つの場合のどちらかに応じて、第1条件が異なる。
もし、Profilef-e-1(gf-e-1)が平坦である場合には、pf-eを、それがgf-e-1に関してp1に相補的であるという第1条件を満たすように選択する。それ以外の場合には、g1からgm-1というf−e−1個の基数およびそのすべての乗法組み合わせの中では、これ以降gと呼ばれる数を、Profilei(g)=Profilef-e-1(gf-e-1) となるように選択してから、それがProfilef-e(g) ≠ Profilef-e(gm)(第2場合に従った第1条件)となるという条件を満たすように、pf-eを選択する。
(3.2)第2条件
f-eからgmというすべての最後の基数の間で、プロファイルProfilef-e-1(gi)が平坦であるそれらの数を選択してから、pf-eを、それがこのようにして選択された基数のそれぞれに関してp1に相補的であるという条件(第2条件)を満たすように選択する。
【0020】
(モジュロ4の1に一致するe個の素因数の選択)
モジュロ4の1に一致するe個の素因数を作り出すためには、以下の2つの連続試験にさらされる上で、pf-eからpfのそれぞれの素因数候補pを評価する。
(1)第1試験
ルジャンドル記号を、候補素因数pに関してg1からgmまでそれぞれの基数giに関してして計算する。
ルジャンドル記号が−1に等しい場合には、候補pを拒絶し、
ルジャンドル記号が+1に等しい場合には、候補pの評価を続く基数に移る際に続行し、そして、最後の基数が考慮に入れられると、第2試験へと通過する。
(2)第2試験
整数tを、p−1が2t+1によってではなく2tによって除算可能であるように計算し、そして、整数sを、s=(p−1+2t)/2t+1となるように計算する。
鍵<s,p>は、結果rを得るためにそれぞれの公開値Gi+1適用される。
r≡Gi smod p
もし、rがgi または−giに等しい場合には、第2試験を以下の公開値Gi+1に移る際に続行する。
もし、rがgi または−giとは異なる場合には、因数uを、1からt−2の範囲までCG(p)の添数iiに指定される以下のアルゴリズムを適用する上で計算する。該アルゴリズムは2つの変数を実行する。つまり、rによって初期化されるwと、CG(p)の非平方剰余に鍵<(p−1)/2t,p>を適用することによって得られる数bだけではなく、2から2t-2の範囲の値を想定したjj=2iiとである。該アルゴリズムは、必要な限り何回でも以下のシ−ケンスを繰り返す。
ステップ1では、w2/Gi(mod p)を計算する。
ステップ2では、結果を2t-ii-1乗まで累乗する。2つの場合を考慮すべきである。
第1場合
+1が得られる場合には、以下の公開値Gi+1への通過があり、第2試験をこの公開値に関して実行する。
第2場合
−1が得られる場合には、jj=2iiを計算されてから、wをw.bjj(mod p)によって置換する。そして、アルゴリズムを添数iiを有する以下の値に関して続行する。
該アルゴリズムの最後では、変数jj内の値を、関係jj=2t-u によって整数uを計算するために使用し、そして、表記t−uを計算する。2つの場合が生じる。
t−u<kの場合には、候補pを拒絶する。
t−u>kの場合、以下の公開値Gi+1に移り、第2試験で続行される際に候補pの評価を続行する。
候補pは、第2試験の最後にm個の公開値Giに関して、それが拒絶されなかった場合に、モジュロ4の1に一致する素因数として受け入れられる。
【0021】
(GQ2の公開値および秘密値に対する適用)
本発明は、上記に説明された方法を適用し、それを可能にする方法(GQ2)にも関し、特別な特性を有するf個の素因数p1,,p2,,…pfを作り出すことを想起することができる。上記に説明された方法の適用のための方法は、コントロ−ラエンティティに対して、以下を証明するように設計される。
エンティティの真正性、および/または、
このエンティティに関連付けられたメッセ−ジMの完全性であり、
この証明を、以下のパラメ−タまたはこれらのパラメ−タの派生物のすべてまたは一部によって確立する。
m組の秘密値Q1,Q2,…Qmおよび公開値G1,G2,…Gm(mは、1以上)と、
前記素因数fp1,p2,…pf(fは2以上)の積によって構成される公開モジュラスnと、
公開指数vと、
前記係数と前記指数と前記値とは、以下の型の関係によってリンクされる。
i.Qi v≡1.mod n、または、Gi≡Qi v mod n .
前記指数vは、v=2kであり、ここで、kは、1より大きい機密保護パラメ−タである。
前記公開値Giは、f個の素因数p1,p2,…pfより小さい基数giの平方根gi 2である。基数giは、以下の2つの等式
2 ≡ gi mod n、および、x2 ≡ −gi mod n
が、モジュロnの整数環においてxについて解くことができず、以下の等式
v ≡ gi 2 mod n
が、モジュロnの整数環においてxについて解くことができる。
前記方法は、以下のステップで証人と呼ばれるエンティティを実行する。前記証人エンティティは、f個の素因数piおよび/または該素因数のチャイニ−ズの剰余(Chinese remainder)のおよび/または公開モジュラスnのパラメ−タおよび/またはm個の秘密値Qiおよび/または該秘密値Qiおよび公開指数vのf.m個の構成要素Qi,j(Qi,j ≡ Qi mod pj)を有する。
証人は、整数モジュロnの環内のコミットメントRを計算する。各コミットメントは、
R≡rv mod nの型の演算を実行することによって、ここで、rは、0<r<nとなるようにランダムな因数である。
あるいは、
i≡ri vmod piの型の演算を実行することによって、ここで、riは、0<ri<piとなるように素数piに関連付けられたランダムな値であり、各riはランダムな因数{r1,r2,…rf}の集合体に属し、そして、チャイニ−ズの剰余の方法を適用することのどちらかによって計算される。
証人は、1以上のチャレンジdを受け取る。それぞれのチャレンジdは、これ以降初歩チャレンジと呼ばれるm個の整数diを備える。証人は、各チャレンジdに基づき、応答 Dを、
D≡r.Q1 d1.Q2 d2.…Qm dmmod nの型の演算を実行することによって、
あるいは、
i≡ri.Qi,1 d1.Qi,2 d2.…Qi,m dmmod piの型の演算を実行し、そして、チャイニ−ズの剰余方法(Chinese remainders method、孫氏剰余としても知られている)を適用することによって計算する。
【0022】
方法は、コミットメントRがあるため、チャレンジdがあるほど多くの応答Dがあるほどであり、R,d,D のそれぞれのグル−プは三つ組の参照された {R,d,D}を形成する。
【0023】
好ましくは、上述したように秘密値Q1,Q2,…Qmおよび公開値G1,G2,…Gmの組を実現するために、方法は、チャイニ−ズの剰余の素因数p1,p2,…pfおよび/またはパラメ−タ、基数g1,g2,…gmおよび/または公開値G1,G2,…Gmを使用して、以下のどちらかを計算する。
iのモジュロnのk番目の平方根を抽出することによって、またはGiのモジュロnのk番目の平方根の逆数を取ることによって秘密値Q1,Q2,…Qmか、 あるいは、Qi,j ≡Qi(mod pj)となるように、秘密値Q1,Q2,…Qmのf.m個の秘密構成要素Qi,j
のどちらかを計算する。
【0024】
さらに特定すると、秘密値Q1,Q2,…Qm のf.m個の秘密構成要素Qi,jを計算するために、
鍵<s,pj>を、z ≡ Gi s(mod pj)となるようにzを計算するために適用し、
値tとuを使用する。
【0025】
値tおよびuは、pjを、モジュロ4の1に一致するときにここに示されるように計算する。値tおよびuは、それぞれ1(t=1)および0(u=0)であると解釈され、ここではpjは、モジュロ4の3に一致する。
もし、値uがゼロである場合には、以下となるようにすべての数zzを考える。
zzがzに等しい、または、
zzが単位の2ii-tii番目の原始根のそれぞれによってzの積(mod pj)に等しく、iiが1からmin(k,t)の範囲である。
【0026】
uが正である場合には、zzが単位の2kk番目の累乗根のそれぞれによってzaの積(mod pj)に等しくなり、zaが前述されたアルゴリズムの最後で変数wの値を指定するように、すべての数zzを考えることができる。
【0027】
構成要素Qi,jの少なくとも1つの値をそれから推論する。それは、等式Gi ≡ Qi vmod nを使用するときにzzに等しいか、またはさもなければ、それは等式Gi.Qi v≡1.mod nを使用するときにzzのモジュロpjのzz逆数に等しい。
【0028】
(説明)
GQ技術の目標を想起することができる。つまり、それは、エンティティのデジタル符号だけではなく、エンティティおよび関連付けられたメッセ−ジの動的な認証でもある。
【0029】
GQ技術の標準的なバ−ジョンは、RSA技術を利用する。しかしながら、RSA技術は真に因数分解に依存しているが、この依存は等価ではなく、RSA技術を実現する多様なデジタル符号規格に対する倍数的に増加する攻撃として知られる攻撃から見られるように、それとはかなり異なっている。
【0030】
GQ2技術という状況では、本発明のこの部分は、さらに特に、動的な認証およびデジタル符号に備えるように作られるGQ2鍵の集合の生産に関する。GQ2技術は、RSA技術を使用しない。目標は2つの部分を持つ目標である。つまり、第1に、RSA技術に関して性能を改善すること、および第2にRSA技術に固有な問題を防止することである。GQ2秘密鍵は、係数nの因数分解である。GQ2の三つ組に対する任意の攻撃は係数nの因数分解に相当する。つまり、この時点では等価性がある。GQ2技術を使用すると、署名をする、あるいは認証されるエンティティにとって、および監査(コントロ−ル)するエンティティの両方にとって作業量は削減される。機密保護および性能という両方の点での因数分解の問題の改善された使用を通して、GQ2技術はRSA技術に匹敵する。
【0031】
GQ2技術は、例えば、基数と呼ばれ、giと参照される、m個の小さい整数(m≧1)1より大きい1以上の小さい整数を使用する。そして、公開認証鍵<v,n>を以下のように選択する。公開認証指数(public velification exponent)vは 2kであり、この場合kは、(k≧2)より大きい、小さい整数である。公開モジュラスnは、例えば、p1 …pfのpjによって参照されるf個の素因数(f≧2)である、基数より大きい少なくとも2つの素因数の積である。f個の素因数は、公開モジュラスnが、g1からgmへのm個の基数のそれぞれに関して以下の特性を有する。
第1に、(数1)および(数2)は、整数モジュロnの環においてxについて解くことができない。つまり、giおよび−giは2つの非平方剰余(non−quadratic residues)(mod n)である。
【数1】
Figure 0004772189
【数2】
Figure 0004772189
第2に、(数3)は、モジュロnの整数モジュロnの環においてxについて解くことができる。
【数3】
Figure 0004772189
これ以降、これらの特性もGQ2原則と呼ばれる。
【0032】
公開認証鍵<v,n>は、m≧1である場合のg1からgmという基数に従って固定されるため、それぞれの基数giが、公開値Giおよび秘密値QIを備える値GQ2の組を決定する。つまり、m組の参照されたG11からGmmを与える。公開値Giは基数gIの平方でありGi=gi 2を与える。秘密値Qiは、等式(3)に対する解の1つであるか、それ以外の場合にはこのような解の逆数(mod n)である。
【0033】
係数nがf個の素因数に分解されるように、整数モジュロnの環は、CG(p1)からCG(pf)までのf個のガロア体(Galois field)に分解される。ここでは、CG(pj)内に(数1)、(数2)および(数3)の投射がある。
【数4】
Figure 0004772189
【数5】
Figure 0004772189
【数6】
Figure 0004772189
【0034】
各秘密値Qiは、1つの素因数あたり1個の、f個の秘密構成要素によって一意に表される。つまり、Qi,j≡Qi(mod pj)である。各秘密構成要素Qi,jは、等式(数6)に対する解であるか、それ以外の場合には、このような解の逆数(mod pj)である。各等式(数6)に対するすべての考えられる解が計算された後に、チャイニ−ズの剰余の技法が、等式(数3)に対するすべての考えられる解を得るために、このような解のQi,1からQi,f:Qi=チャイニ−ズの剰余(Qi,1,Qi,2,…Qi,f) のf個の構成要素に基づいて、秘密値Qiごとにすべての考えられる値をセットアップする。
【0035】
以下はチャイニ−ズの剰余の技法(Chinese remainders technique)である。つまり、0<a<bとなるように、相互に素数aおよびbである2つの正の整数、および0からa−1、および0からb−1までの2つの構成要素XaおよびXbを存在させる。X=チャイニ−ズの剰余(Xa,Xb)、つまりXa≡X(mod a)およびXb≡X(mod b)となるように、0からa.b−1という単一数Xを求めることが必要とされる。以下がチャイニ−ズの剰余パラメ−タである。つまり、α≡{b(mod a)}-1(mod a)である。以下はチャイニ−ズの剰余演算である。つまり、ε≡ Xb(mod a)、δ= Xa-ε、δが負である場合には、δをδ+aと、γ≡α .δ(mod a)と、X=γ.b+Xbとに置換する。
【0036】
素因子が最小のp1から最大のpfへと昇順で並べられるとき、チャイニ−ズの剰余パラメ−タは以下(f−1、つまり素因数の内の少なくとも1つがある)である場合がある。第1のチャイニ−ズの剰余パラメ−タは、α≡{p2(mod p1)}-1(mod p1)である。第2のチャイニ−ズの剰余パラメ−タは、β≡{p1.p2(mod p3)}-1(mod p3)である。i番目のチャイニ−ズの剰余パラメ−タは、λ≡{p1.p2.…pi-1(mod pi)}-1(mod pi)のようになる。最後に、f−1個のチャイニ−ズの剰余演算では、第1結果(mod p2 × p1)が第1パラメ−タで得られ、そして、第2結果(modp1.p2 × p3)が第2パラメ−タで得られ、結果(mod p1.…pf(1 × pf)、つまり(mod n)まで等々である。
【0037】
本発明の目的とは、考えられるすべての集合の中での任意のGQ2鍵の集合のランダムな生成のための方法である。すなわち、
すべての考えられるGQ2係数の中での任意の係数、つまりm個の基数gIごとに、等式(数1)および(数2)がモジュロnの整数環のxの中で解決できないが、等式(数3)がそれらの内の1つを有することを保証する係数のランダムな生成と、
等式(数6)のそれぞれにすべての考えられる解決策を計算することである。チャイニ−ズの剰余技法によりすべての考えられるht等式の中で等式(数3)に対するx内の任意の解を得るために、Qi,1からQi,fのf個の構成要素の各集合から秘密値Qiを得ることを可能にする。
i=チャイニ−ズの剰余(Qi,1,Qi,2,…Qi,f
【0038】
問題を把握し、それから問題に与えられるべき解、つまり本発明を理解するために、最初にGQ2技術の原理の適用可能性を分析するものとする。「CG(p)の平方まで累乗される」関数を研究し、「CG(p)の平方剰余の平方根を取る」ために、ガロア体CG(p)内での階数の概念を思い出すことによって始めよう。それから、私達は、等式(数4)と(数5)と(数6)とに対するCG(p)内のxでの解の存在および数を分析するものとする。
【0039】
(CG(p)内の元(element)の階数(Rank))
奇数の素数pおよびpより小さい正の素数aを取ってみよう。その後に {X}を定義してみよう。
【数7】
Figure 0004772189
添数i+pの項を計算し、フェルマの定理(Fermat's theorem)を使用してみる。ここで、
【数8】
Figure 0004772189
である。
【0040】
その結果、シ−ケンス{X}の期間は、p−1またはp−1の割り算器である。この期間はaの値に依存する。定義によって、この期間は「a(mod p)の階数」と呼ばれる。それは、シ−ケンス{X}内の単位の出現の添数である。
ここで、
【数9】
Figure 0004772189
である。
【0041】
例えば、(p−1)/2が奇数の素数p'であるとき、ガロア体CG(p)は、階数1が指定される単一元を備える。つまり、それは1であり、階数2が指定された単一元である。それは−1、階数p'のp'−1元、階数2.p'、つまり階数 p−1のp'−1元である。
【0042】
その階数がp−1であるCG(p)の元は、原始元、あるいはまた、CG(p)の生成器と呼ばれる。名前は、CG(p)内のその連続する累乗、つまり1からp−1まで進む添数の{X}シ−ケンスの項が、CG(p)のすべての非零元の順列を形成するという事実による。
【0043】
CG(p)の原始元yに従って、iおよびp−1の関数として元yi(mod p)の階数を評価してみる。iがp−1が指定される素数であるとき、それはp−1である。iがp−1を割ると、それは(p−1)/iである。すべての場合で、それは(p−1)/pgcd(p−1,i)である。
【0044】
オイラ−関数(Euler function)はψで参照される。定義により、nが正の整数であるため、ψ(n)はnが指定される素数であるnより小さい正の整数の数である。したがって、体CG(p)には、ψ(p(1)個の原始元がある。
【0045】
例証によって、ここにRSA技術の基礎がある。公開モジュラスnは、f≧2がであるp1からpfのf個の素数の積であり、その結果、素因数pjごとに、公開指数vは、pj−1である素数である。鍵<v,pj>は、CG(pj)の元の階数と準拠する。それが、それらを並べ替える逆置換は、pj−1がv.sj−1を割るように、鍵<sj,pj>を用いて得られる。
【0046】
(CG(p)内の累乗および平方根)
元xおよびp−xは、CG(p)内に同じ平方を有する。鍵<2,p>は、p−1が偶数値であるため、CG(p)を並べ替えない。素数pごとに、以下のように整数tを定義しよう。p−1は、2t+1によってではなく2tによって除算可能であり、つまりpは、2t+1(mod 2t+1)に一致している。例えば、 pが3(mod 4)に一致するときt=1である。pが5(mod 8)に一致するときt=2である。pが9(mod 16)に一致するときt=3である。pが17(mod 32)に一致するときt=4である、等々。それぞれの奇数の素数は、1つのおよび唯一のカテゴリに見られる。つまり、pはt番目のカテゴリ内で見られる。実際に、かなり多数の連続する素数を考える場合には、あらゆる2の内のほぼ1が第1カテゴリで見つかり、4の内の1が第2カテゴリで見つかり、8の内の1が第3カテゴリで見つかり、16の内の1が第4カテゴリで見つかる、等々。要約すると、平均して2tの内の1つがt番目のカテゴリに見つけられる。
【0047】
引数の階数のパリティに従って関数の動作、「CG(p)の平方まで累乗する」を考えてみよう。
唯一の固定された元がある。それが1である。奇数パリティ階数の他の任意の元の平方は、同じ回数を有する別の元である。その結果、鍵<2,p>がすべてのその(p−1)/2t奇数パリティ階数元を並べ替える。順列サイクルの数は、(p−1)/2tの因数分解に依存する。例えば、(p−1)/2tが素数p'であるときには、p'−1個の元を備える大きな順列サイクルがある。
任意の奇数パリティ階数元の平方は、その階数が2によって除算される別の元である。その結果、奇数パリティ奇数元は、(p−1)/2t個の分岐上で分散される。奇数パリティ階数が指定される各非零元は2t−1個の元、つまり4によってではなく、2によって除算可能な階数の元、それからt≧2の場合には8によってではなく4によって除算可能な階数の2個の元、およびt≧3の場合には16によってではなく8によて除算可能な階数の4個の元、およびt≧4の場合には32によってではなく16によって除算可能な階数の8個の元等々、を備える長さtの分岐を生み出す。各分岐の2t-1個の末尾は非平方剰余である。つまり、その階数は2tによって除算可能である。
【0048】
図1Aから図2Bは、体のp−1個の非零元のそれぞれがその場所を見つける指向型グラフによって関数「CG(p)の平方まで累乗する」を図解する。非平方剰余は白であり、平方剰余は黒である。平方剰余の中、奇数パリティ階数元は円の中にある。
【0049】
これらの図は、それぞれ以下を示す。
図1Aは、pが3(mod 4)に一致する場合を示す。
図1Bは、pが5(mod 8)に一致する場合を示す。
図2Aは、pが9(mod 16)に一致する場合を示す。
図2Bは、pが17(mod 32)に一致する場合を示す。
【0050】
今回は、aがCG(p)の平方剰余であることが既知であるので、等式x2 ≡ a(mod p)に従って、xについての解を計算する方法、つまり「CG(p)内で平方根を取る」方法を見てみよう。言うまでもなく、同じ結果を得る複数の方法がある。つまり、読者は、有利なことに「Graduate Texts in Mathematics」, vol.138 (GTM138)だけではなく、1993年にBerlin,Springer出版のHenri Cohenの「A Coursein Computational Algebraic Number Theory」の31〜36頁も参照することができる。
【0051】
鍵<s,p>を確立するために整数s=(p−1+2t)/2t+1を計算してみよう。つまりpが3(mod 4)に一致するときには、<(p+1)/4,p>である。pが5(mod 8)に一致するときには、<(p+3)/8,p>である。pが9(mod 16)であるときには<(p+7)/16,p>である。pが17(mod 32)であるときには<(p+15)/32,p>である、等々。
鍵<s,p>は、任意の奇数パリティ階数元の奇数階数平方根を与える。実際に、CG(p)では、r2/aは累乗(2.(p−1+2t)/2 t+1)−1 =(p−1)/2t乗まで累乗されるaに等しい。その結果、aがサイクル(cycle)にあるとき、鍵<s,p>が、aを、wと呼ばれる解へと変換する。他の解はp−wである。
一般的には、鍵<s,p>は、任意の平方剰余aをrと呼ばれる解の第1近似へと変換する。以下は、平方根aまでの近似のステップごとの改善の方法の大まかな略図が続く2個の鍵ポイントである。
第1に、aは平方剰余であるため、鍵<2t-1,p>は、確かにr2/aを1へと変換する。
第2に、私達が、yと命名されるCG(p)の非平方剰余を知っていると仮定することができる。鍵<(p−1)/2t,p>は、yをbと呼ばれる元へと変換する。これが、−1の根2t-1番目である。実際に、y(p-1)/2 ≡ −1(mod p)である。その結果、CG(p)では、単位の2tの2t番目の根の乗法群は、1から2tまの指数のb乗の乗法群に同形である。
aの平方根に近づくためには、r2/aを2t-2(mod p)乗まで累乗しよう。その結果は+1または−1である。新しい近似は、結果が+1である場合にはrのままであるか、さもなければ結果−1である場合には、それはb.r(mod p)になる。その結果、鍵<2t-2,p>は、確かに新規近似を1に変換する。必要とされる値に近づき続けることが可能である。次の段階では、必要な場合に、b2(mod p)等で乗算することにより、調整が行われるだろう。
【0052】
以下のアルゴリズムは、前記に定義された整数rおよびbからaの平方根に達するために連続近似を行う。それは、以下の2つの変数を使用する。つまり、連続近似を表すためにrによって初期化されるw、および2から2t-2の2乗の間の値を想定するjjである。
【0053】
1からt−2までの範囲のiの場合には、以下のシ−ケンスを反復する。
2/a(mod p)を計算してから、結果を2t-i-1(mod p)乗まで累乗する。つまり、+1または−1が得られるべきである。−1が得られると、 jj=2iを計算し、そして、wをw.bjj(mod p)で置換する。+1が得られるときには何もしない。
【0054】
計算の最後では、wおよびp−wはCG(p)内のaの2つの平方根である。さらに、私達は、CG(p)内の階数aが2t+1/jjによってではなく、2t/jjによって除算可能であることを学ぶ。この観察の関連性は、以下に理解されるだろう。
【0055】
(CG(p)内でのGQ2技術の原理の分析)
1より大きい2つの整数gとkおよびgより大きい素数pを取ってみよう。等式(数4),(数5)および(数6)内でのCG(p)のxの中の解の存在および数を分析してみよう。
【0056】
ガロア体CG(p)においては、tの値に応じて、つまりp−1を除算する2の累乗に従って、さまざまな場合を区別してみよう。p−1が2t+1によってではなく、2tによって除算可能である、つまりpが2t+1(mod 2t+1)に一致していることを想起することができる。過去の分析は、私達に、大まかな解だけではなく問題に関するかなり正確な考えも与えてくれる。
【0057】
t=1のとき、pは3(mod 4)に一致している。pに関するgおよび−gというルジャンドル記号は異なる。つまり、CG(p)の任意の平方剰余はCG(p)内に2つの平方根を有する。つまり、一方は平方剰余であり、他方は非平方剰余である。第1に、2つの等式(数4)または(数5)の一方はCG(p)内のxの中に2つの解を有し、他方は何も有さない。第2に、等式(数6)には、kの値が何であれ、CG(p)のxの中に2つの解を有する。
【0058】
t=2のとき、pは5(mod 8)に一致している。2つの場合は、pに関するgのルジャンドル記号に応じて発生する。記号が−1に等しいとき、gおよび−gは、ともにCG(p)の非平方剰余である。3つの等式(数4)と(数5)と(数6)とは、CG(p)のxの中に解を有していない。記号が+1に等しいとき、gおよび−gはCG(p)の2つの平方剰余であり、各等式(数4)および(数5)はCG(p)内のxの中に2つの解を有する。さらに、CG(p)内のg2の階数は、kの値が何であれ、等式(数6)にはCG(p)内のxの中に4つの解があり、その内の1つだけが奇数パリティ階数を有することを暗示する奇数パリティ値である。
【0059】
図3は、k=6およびpが5(mod 8)に一致し、t=2を示す等式(数6)に対する解を図解する。5(mod 8)に等しいpに関する2のルジャンドル記号は、−1.2(p-1)/4(mod p)に等しく、そして、−1という平方根に等しい。したがって、私達は、以下を有する。
【数10】
Figure 0004772189
【数11】
Figure 0004772189
【0060】
t=3のとき、pは9(mod 16)に等しい。Pに関するgのルジャンドル記号を考慮してみよう、記号が−1に等しいとき、gおよび−gはCG(p)の2つの非平方剰余である。つまり、3つの等式(数4)、(数5)、(数6)は、CG(p)のxの中に解がない。記号が+1に等しいとき、gおよび−gはCG(p)の2つの平常剰余である。つまり、各等式(数4)および(数5)にはCG(p)内xの中に2つの解がある。xについての等式(数6)に対する解の存在はCG(p)内のg2の階数に依存する。この階数は、奇数パリティ値であるか、または4によってではなく2によって除算可能である。CG(p)のg2の階数が4によってではなく2によって除算可能であるとき、等式(数6)には、k=2の場合、CG(p)内のxについて4つの解がある。つまり、それはk≧3を超えることはできない。CG(p)内のg2の階数が奇数パリティ値であるとき、等式(数6)はk=2の場合CG(p)内のxの中に4つの解を有し、k≧3の場合には8つの解を有する。両方の場合とも、唯一の値は奇数パリティ値である。
【0061】
t=4のとき、pは17(mod 32)に一致している。Pに関してgのルジャンドル記号を考えてみよう。記号が−1に等しいとき、gおよび−gはCG(p)の2つの非平方剰余である。つまり、3つの等式(数4)、(数5)、(数6)は、CG(p)内のxについて解がない。記号が+1に等しいとき、gおよび−gはCG(p)の2つの平方剰である。各等式(数4)および(数5)はCG(p)内のxの中に2つの解を有する。等式(数6)に対するxについて解の存在は、CG(p)内のg2の階数に依存する。この階数は、奇数パリティ値であるか、または8によってではなく、2または4によって除算可能である。CG(p)内のg2の階数が8によってではなく2によって除算可能である場合には、等式(数6)は、k=2の場合、CG(p)内のxについて4つの解を有する。つまり、それはk≧3を超えることはできない。CG(p)内のg2の階数が4によってではなく2によって除算可能であるとき、等式(数6)は、k=2の場合CG(p)内のxについて4つの解、またはk=3の場合8つの解を有する。それは、k≧4の場合にはまったく解を有さない。CG(p)内のg2の階数が奇数パリティ値であるとき、等式(数6)は、k=2の場合CG(p)内のxの中で4つの解を、k≧3の場合8つの解を、およびk≧4のときには16個の解を有する。3つすべての場合において、唯一の値は奇数パリティ値である。
【0062】
pが1(mod 4)に一致している場合を、以下のように要約できるように等々である。
【0063】
pが1(mod 4)に等しいとき、pに関するgのルジャンドル記号を考えてみよう。記号が−1に等しいとき、gおよび−gはCG(p)の2つの非平方剰余である。つまり、3つの等式(数4)、(数5)、(数6)は、CG(p)のxについて解がない。記号が+1に等しいとき、gおよび−gは、CG(p)の2つの平方剰余である。各等式(数4)および(数5)は、CG(p)のxについて2つの解を有する。整数uを定義してみよう。CG(p)内のg2の階数は、2u+1によってではなく、2uによって除算可能である。u の値は0からt−2の考えられるt−1値の中にある。等式(数6)に対するCG(p)のxの中の解の存在および数は、k、tおよびuの値に依存する。uが正であり、kがt−uより大きい場合には、等式(数6)は、CG(p)のxについて解を有していない。uがゼロであり、kがtより大きいとき、等式(数6)はCG(p)のxについて2t個の解を有する。kがt−uより小さいとき、等式(数6)は、CG(p)内のxの中に2k個の解を有する。
【0064】
(整数係数の環内でのGQ2原理の適用可能性)
等式(数1)および(数2)がそれぞれモジュロnの整数環のxの中で解を有さないためには、p1からpf,という素因数pの少なくとも1つにとって、等式(数4)および(数5)がそれぞれCG(p)内のxに解を有さないことが必要であり十分である。
【0065】
等式(数3)がモジュロnの整数環のxの中で解を有するためには、p1からpf,という素因数pのそれぞれにとって、等式(数6)がCG(p)内のxに解を有さなければならないことが必要であり、十分である。
【0066】
等式(数3)は、1(mod 4)に一致する素因数pが、可能な限りはやく基数gの1つに関してg1からgmになるのを禁止する。つまり、pに関するgというルジャンドル記号が−1に等しいか、あるいはさもなければpに関するgというルジャンドル記号は以下の条件付きで+1に等しい。つまり、uが正であり、t−kより大きい。1(mod 4)に等しい素因数pが考えられる可能性があるためには、ここに前述された2つの整数tおよびuに従って、g1からgmの基数gのそれぞれに対する次の2つの条件の内の1つを満たすことが必要である。G=g2の階数は、kの値が何であれ、CG(p)内の奇数パリティ階数である、つまりu=0である。または、さもなければG=g2の階数はCG(p)内の奇数パリティ階数値、つまりu>0であり、それがu+k≦tという条件を満たす。
【0067】
1(mod 4)に一致する素因数の積は、GQ2技術のすべての原理を満たすことはできない。各GQ2係数は、基数gごとに、これらの因数の一方に関するgのルジャンドル記号が、他方に関するgのルジャンドル記号と異なるように、3(mod 4)に一致している少なくとも2個の素因数を有さなければならない。すべての素因数が3(mod 4)に一致しているとき、GQ2係数は基本(basic)であるといわれる。3(mod 4)に一致している少なくとも2つの素因数に加えて、係数は、1(mod 4)に一致している1以上の素因数を含み、係数GQ2は 結合されていると言われる。
【0068】
(係数GQ2の体系的な構築)
最初に、係数nに関して規定されなければならない全体的な制約を固定する必要がある。つまり、1のときの最上位ビットの数(少なくとも1つ、言うまでもなく、典型的には16ビットまたは32ビット)、素因数の数fと1(mod 4)に一致しなければならない素因数の数e(おそらくゼロ)だけではなく、ビット単位で表されるサイズ(例えば、512ビットまたは1024ビット)、その他の素因数、すなわちf−e因数、少なくとも2つが3(mod 4)に一致していなければならない。係数nは、類似したサイズのf個の素因数の積となる。e=0のとき、基本係数GQ2が得られる。e>0のとき、結合係数GQ2が得られる。基本係数は、すべて3(mod 4)に等しい素因数の積である。したがって、結合係数GQ2は、1(mod 4)に一致している1以上のその他の素因数によって乗算される基本係数GQ2の積として出現する。最初に、3(mod 4)に一致している素因数が作成される。そして、e>0であると、1(mod 4)に一致している素因数が作成される。
【0069】
係数の構築の効力のため、それが素数値であるかどうかを突き止めようとする前に各候補を選択するのが確かによいであろう。
【0070】
12 …によって参照されるとき、基数は、典型的には第1素数、つまり2、3、5、7...の中で見つけられる。逆の表示がない場合には、m個の基数はm個の第1素数である。つまり、g1=2、g2=3、g3=5、g4=7、…。しかしながら、以下の点を注記しなければならない。5(mod 8)に一致する係数が予想される場合には2は回避しなければならない。公開鍵<3,n>をRSA公開認証鍵として使用しなければならない場合には、3は回避しなければならない。
【0071】
(3(mod 4)に一致するf−e個の素因数の選択)
第2因数に基づき、プログラムは、因数ごとに1つの基数を要求、使用する。3(mod 4)に一致する最後の因数を選択するためには、プログラムは、他の基数があるかどうか、すなわちmがf−eに等しい、またはそれより大きいかどうかを突き止め、それからこれが当てはまる場合には、gf-eからgmという最後の基数を要求し、考慮に入れる。3(mod 4)と一致する最後の基数の選択を形式化するために、私達はプロファイルという概念を導入した。プロファイルは、gより大きく、3(mod 4)に一致する素因数の集合に関して整数gを特徴付ける。
整数gに2つの素因数に関して同じルジャンドル記号が付く場合には、素因数は、gに関して等価であるといわれる。さもないと、それらはgに関して相補的である。
プロファイル(g)によって参照され、f個の素因数p12 …pfに関する整数gのプロファイルは、素因数あたり1ビットのf個のビットのシ−ケンスである。第1ビットは1に等しい。それぞれの続くビットは、次に因数がgに関してp1に等価であるのか、または相補的であるのかに応じて1または0に等しい。
プロファイルのすべてのビットが1に等しいとき、プロファイルは平坦であると言われる。このような場合には、gに関するすべてのルジャンドル記号は+1に等しいか、さもなければ−1に等しい。gのプロファイルが平坦ではないとき、等式(数1)および(数2)は、モジュロnの整数環のxの中で解くことはできない。
定義によって、3(mod 4)に一致する単一素数に関するgのプロファイルはつねに平坦である。この拡張は、3(mod 4)に一致する素因数の選択のアルゴリズムを汎用化するために使用される。
【0072】
2つの基数g1とg2のプロファイルが異なるとき、それは3(mod 4)に一致する少なくとも3つの素因数を暗示し、2つの秘密値Q1とQ2の情報が、係数nの2つの異なる分解の情報を引き出す。基数が小さい素数であるとき、プログラムは、f−e−1個の基本素数の2f-e-1−1個の乗法の組み合わせのプロファイルがすべて異なることを保証する。それらは、すべての考えられる値を取る。プロファイルという概念は、1(mod 4)に一致する素因数まで拡張しない。
【0073】
3(mod 4)に一致する第1素因数p1は、各候補が他の特定の制約なしに3(mod 4)に一致しなければならない。
【0074】
第1基数g1が考慮に入れられている3(mod 4)に一致する第2素因数p2は、各候補がg1に関してp1に相補的でなければならない。
【0075】
第2基数g2が考慮に入れられている3(mod 4)に一致する第3素因数p3は、2つの第1素因数p1およびp2に関するg2のプロファイルに従って、2つの場合が発生する。Profile2(g2)が平坦であるとき、各候補はg2に関してp1に相補的でなければならない。さもなければ、Profile2(g1)=Profile2(g2)を有する。そして、各候補は、Profile3(g1)≠Profile3(g2)を保証しなければならない。
【0076】
基数giが考慮に入れられている3(mod 4)に一致するi番目の素因数pi+1の選択は、i個の第1素因数p1,p2,…piに関するgiのプロファイルに従って、2つの場合が発生する。Profilei(gi)が平坦であるとき、各候補はgiに関してp1に対し相補的でなければならない。さもなければ、i−1番目の基数g1,g2,…gi-1およびその乗法の組み合わせg1.g2,…,g1.g2.…gi-1、つまり、すべての中で2i-1−1個の整数の中では、Profilei(gi)=Profilei(g)であるように、1つおよび唯一の整数gがある。そして、各候補は、Profilei+1(gi)≠Profilei+1(g)を保証しなければならない。
【0077】
基数gf-e-1およびgf-eからgmというそれ以外の基数が考慮に入れられている3(mod 4)に一致する最後の素因数pf-eは、基数gf-e-1のための制約が前述されたように考慮に入れられる。さらに、mがf−eに等しい、またはそれより大きいとき、各候補はf−e個の素因数に関してgf-eからgmという最後の基数の非平坦プロファイルに備えなければならない。各候補は、Profilef-e-1(gi)が平坦であるg iのすべての値に関してp1に相補的でなければならない。
【0078】
要約すると、3(mod 4)に一致する素因数は、互いの関数として選択される。
【0079】
0からf−e−1の範囲のiの場合には、3(mod 4)に一致するi+1番目の素因数を選択するには、候補pi+1は、無事に以下の試験に合格しなければならない。
i>mまたはi=0の場合には、候補pi+1にはそれ以外の制約はない。したがって、それは受け入れられている。
0<i≦mの場合には、候補pi+1はi番目の基数giを考慮に入れなければならない。p1からpiのi個の素因数に関する基数gIのプロファイルProfilei(gi)を計算する。結果に応じて、以下の2つの場合の内の1つおよび1つだけが発生することができる。
プロファイルが平坦である場合には、候補pi+1は、giに関してp1に相補的でなければならない。さもなければ、それは拒絶されなければならない。
さもなければ、i−1個の基数およびすべてのその乗法組み合わせの中で、Profilei(g)=Profilei(gi)となるようにgと呼ばれる1つのおよび唯一の数がある。そして、候補pi+1は、Profilei+1(g) ≠ Profilei+1(gi)となるようでなければならない。さもなければ、それは拒絶されなければならない。
i+1=f−eであり、i<mの場合、つまりまだ考慮に入れられていない、基数gf-eからgmが残るときには、3(mod 4)に一致する最後の素因数を選択するために、候補pf-eはそれらを考慮に入れなければならない。これらの基数の中で、そのプロファイルProfilef-e-1(gi)が平坦であるそれらの数が選択される。候補pf-eは、このようにして選択された基数のそれぞれに関してp1に相補的でなければならない。さもなければ、それらは拒絶されなければならない。
【0080】
候補は、それが無事に適切な試験を受けたため受け入れられる。
【0081】
(1(mod 4)に一致するe個の素因数の選択)
許容できるためには、1(mod 4)に一致する各候補pは、g1からgmという各基数に関して以下の条件を満たさなければならない。
pに関する各基数giのルジャンドル記号を評価してみよう。もし、記号が−1に等しい場合には、候補pを拒絶し、別の候補に移動しよう。記号が+1に等しい場合には、候補の評価を続行しよう。整数2が基数として使用される場合には、5(mod 8)に一致するすべての候補が削除されなければならない。基数2は5(mod 8)に一致する係数とは相容れない。
鍵<s,p>を確立するために、整数s=(p−1+2t)/2t+1を計算しよう。結果rを得るために、各公開値Giに鍵<s,p>を適用しよう。
もし、rがgiまたは−giに等しい場合には、u=0である。この場合およびこの場合だけ、Giはサイクル内にある。自明な場合を注記することができる。つまり、Giは、pが5(mod 8)に一致し、pに関するgiというルジャンドル記号が+1に等しいならばサイクル内にある。Gi=4が、この場合では不可能であることを想起することができる。
もし、rがgiにも−giにも等しくない場合には、u>0である。鍵<(p−1)/2t,p>が、あらゆる非平方剰余yを、単位の2t番目の根であるbに変換することを注記しなければならない。以下のアルゴリズムは、2つの整数変数を使用することにより、rおよびbからuを計算する。つまり、rによって初期化されたwおよび2から2t-2の値を取るjjである。
1からt−2の範囲のiの場合には、以下のシ−ケンスを繰り返す。
2/Gi(mod pj)を計算してから、累乗2t-i-1(mod pj)まで結果を累乗する。つまり、私達は、+1または−1を得なければならない。−1が得られたら、jj=2iを計算し、それからw.bjj(mod pj)で w を置換する。+1が得られたら何も行わない。
【0082】
計算の最後に、変数wは、値giまたは−giを有する。さらに、CG(pj) 内のGi の階数が、2t+1/jjによってではなく、 2t/jjによって除算可能である、つまり、jjがjj=2t-uによるuの値を決定することを知っている。vがjjより大きいとき、つまりk>t−uであるときには、候補を拒絶し、別の候補に移動する。vがjjより小さい、または等しいとき、つまりk≦t−uには、候補の評価を続行する。
【0083】
f個の素因数が作成されると、公開モジュラスnは、f個の素因数p1,p2,…pfの積である。符号なし整数nは、バイナリシ−ケンスによって表すことができる。つまり、このシ−ケンスは、ビットのサイズに関して、および1での連続最上位ビットの数に関してプログラムの始めに課された制約に準拠している。素因数の選択は、m個の基数g1,g2,…gm のそれぞれに関しての係数nの以下の特性に備える。さらに、等式(数1)および(数2)は、モジュロnの整数環のxの中に解を有さない。第2に、等式(数3)は、モジュロnの整数環のxの中に解を有する。
【0084】
要約すると、1(mod 4)に一致する素因数は、互いとは無関係に選ばれる。3(mod 4)に一致する因数は徐々に基数を考慮に入れるが、1(mod 4)に一致する各素因数は基数のそれぞれによって規定されているすべての制約を考慮に入れなければならない。pf-eからpfまでの1(mod 4)に一致する各素因数、つまりpは、2つのステップで以下の試験を無事に受けるべきであった。
1)ステップ(1)は、g1からgmへm個の基数のそれぞれに連続して実行される。
候補pに関する現在の基数gのルジャンドル記号が計算される。以下の2つの場合の内の1つおよび1つだけが発生する。つまり、記号が−1に等しい場合には、候補は拒絶される。さもなければ(記号が+1に等しい)、試験は、ステップ(1)の後の基本数gに移る際に続行される。
候補がすべてのm個の基数に関して許容できるときには、演算はステップ(2)に移る。
2)ステップ(2)は、G1からGmまでm個の公開値のそれぞれに連続して実行される。
整数tは、p−1が2t+1によってではなく、2tによって除算可能であるように計算され、それから鍵<s,p>をセットアップするために、整数s=(p−1+2t)/2t+1である。鍵<s,p>は、結果r、つまり、
【数12】
Figure 0004772189
を得るために、現在の公開値G=g2に適用される。結果に応じて、以下の状態の1つおよび1つだけが発生する。
a)rがgまたは−gに等しい場合には、u=0である。候補の試験はステップ(2)で以下の公開値Gに移る際に続行される。
b)さもなければ、正の数uが、2つの変数を実現する以下のアルゴリズムを適用する際に、1からt−2の値の1つを取って計算される。つまり、2から2t-2という範囲の値を取るjjおよびCG(p)の非平方剰余に鍵<(p−1)/2t,p>を適用することによって得られる整数bだけではなく、rによって初期化されるwである。
1からt−2の添数iiの場合、以下の演算が繰り返される。
2/G(mod p)を計算してから、鍵<2t-ii-1,p>が、+1または−1を得るために結果に適用される(さもなければ、候補が素因数ではないという証拠がある)。−1が得られる場合には、jj=2iiが計算されてから、c≡bjj(mod p)を計算し、wをw.c(mod p)によって置換し、そして、次の添数iiへの通過がある。+1が得られると、次の添数iiへの通過がある。
アルゴリズムの最後では、変数jjの値が、関係性jj=2t-uによってuを定義する。変数w の値はGの平方根、つまりgまたは−gである(さもなければ、候補が素因数ではないという証拠がある)。2つの場合が発生する。
t−u<kの場合には、候補pは、Gが発生する分岐が十分に長くないために拒絶される。
(t−u≧k)の場合には、候補の評価は、ステップ(2)の後に次の公開値 Gに移動する上で続行される。
候補がすべてのm個の公開値にとって許容できるときには、それは1(mod 4)と一致する素因数として受け入れられる。
【0085】
(関連付けられる値の計算)
秘密構成要素を得るために、一般的な場合を取り上げる前に、まず2つの最も簡略かつ最新の場合での等式(数6)に対するすべての解を計算しよう。
【0086】
3(mod 4)に一致する各素因数pjに対しては、鍵<(pj+1)/4,pj>は任意の平方剰余の平方剰余根を与える。このことから、等式(数6)に対する解を計算するための方法を推論する。つまり、
j ≡((pj+1)/4)k(mod(pj−1)/2)であれば、Qi,j ≡ Gi sj(mod pj)であり、
または、さもなければ、むしろこのような解の逆数(mod pj)である。
j ≡(pj−1)/2−((pj+1)/4)k(mod(pj−1)/2)であれば、Qi,j ≡ Gi sj(mod pj)である。
【0087】
CG(pj)においては、その場合、単位の2つのおよび2つだけの平方根がある。つまり、+1と−1である。したがって、等式(数6)に対するx内の2つの解がある。つまり、2つの数Qi,jおよびpj−Qi,jは、同じ平方Gi(mod pj)である。
【0088】
5(mod 8)に一致する各素因数pjに対しては、鍵<(pj+1)/4,pj>は、任意の奇数パリティ階数元の奇数パリティ階数平方根を与える。このことから、等式(数6)に対する解を推論する。つまり、
j ≡((pj+3)/8)k(mod(pj−1)/4)であれば、Qi,j ≡ Gi sj(mod pj)であり、
または、さもなければ、むしろこのような解の逆数(mod pj)である。
j ≡(pj−1)/4−((pj+3)/8)k(mod(pj−1)/4)であれば、Qi,j ≡ Gi sj(mod pj)である。
CG(pj)においては、単位の4つおよび4つだけの第4根がある。したがって、等式(数6)に対するxの中に4つの解がある。2(pj-1)/4(mod pj)が、5(mod 8)に一致するpに関する2のルジャンドル記号が−1に等しいため、−1という平方根であることを注記しよう。Qi,jが解である場合には、−1という平方根によるQi,jの積(mod pj)だけではなく、pj−Qi,jも別の解である。
【0089】
t+1(mod2t+1)に一致する素因数pjに対しては、鍵<(pj−1+2t)/2t+1,pj>は、任意の奇数パリティ次数元の奇数パリティ平方根を与える。したがって、等式(数6)に対する解を計算することが可能である。
最初に、整数sj≡((pj−1+2t)/2t+1k(mod(pj−1)/2t)を計算して、鍵<sj,pj>をセットアップしよう。
鍵<(pj−1+2t)/2t+1,pj>が、Giをgiまたは−giに変換するとき、Giの階数はCG(pj)(u=0)内の奇数パリティ値である。それから、鍵<sj,pj>は、Giを数zへと変換する。これは、等式(数6)に対する奇数パリティ階数解である。tおよびkの値に従って、依然として1以上の分岐上にmin(2k−1,2t−1)のその他の解がある。z2の分岐は別の解を運ぶ。これがpj−zである。t≧2のとき、z4の分岐には2つのそれ以外の解がある。それは、−1の2つの平方根のそれぞれ、つまり単位の2つの原始第4元のそれぞれによるzの積である。いま、yがCG(pj)の非平方剰余である場合には、 y(pj-1)/4(mod pj)は、−1の平方根である。一般的には、1からmin(k,t)の各値を取るiの場合には、zの2i番目の累乗の分岐が2i-1個の解を生じさせる。これらは、単位の2i-1個の原始2i番目の元のそれぞれによるzの(mod pj)である。いまyがCG(pj)の非平方剰余である場合には、累乗(pj−1)/2iに対するyは、私達がcと呼ぶ単位の2i番目の原始根である。単位の2i-1番目から2i番目の原始根は、cの奇数パリティ累乗である。つまり累乗2i−1(mod pj)までのc,c3(mod pj),c5(mod pj),…cである。
鍵<(pj−1+2t)/2t+1,pj>が、giでもなく−giでもないGiを整数 rに変換するとき、Giの階数はCG(pj)(u>0)内の奇数パリティ値である。その場合には、Giが適切にかなり冗長な分岐、つまりt≧k+uに置かれる場合、Giが位置している分岐上に2k個の解がある。2k番目の根を計算するために解zまでの連続結果の平方根を計算するには、前述された平方根計算アルゴリズムkを階数分反復することで十分である。この計算は、言うまでもなく、2k番目の根に直接的に近づいてから、解zを達成するために単一演算で2k番目の根の近似を調整するために最適化することができる。すべてのそれ以外の解を得るために、まず第1に、yがCG(pj)の非平方剰余である場合には、(pj−1)/2k乗までのyが、dと呼ばれる単位の原始2k番目の根であることを注記することができる。単位2kの2k番目の根は、dの連続累乗である。つまり、2k−1(mod pj)乗までのd,d2(mod pj),d3(mod pj),…d、2k(mod pj)乗までのdは1に等しい。Giが位置している分岐上の2k個の解は、これらの根のそれぞれのzの積(mod pj)である。
【0090】
要約すると、k,tおよびuが既知の状態で素因数pの構成要素および基数gを計算するには、以下の手順を使用する。
1)鍵<s,p>をセットアップするために、整数を計算する。s≡((p−1+2t)/2t+1k(mod(p−1)/2t)。そして、鍵<s,p>を、z≡Gs(mod p)を得るために、Gに適用する。Uの値に従って、ステップ(2)または(3)への通過がある。
2)u=0である場合には、zは等式(数6)に対する奇数パリティ解である。依然として、1以上の分岐上に、非常に正確にはmin(k,t)の他の分岐上に、min(2k−1,2t−1)のその他の奇数パリティ階数解がある。1からmin(k,t)の範囲のiの場合には、zの2i番目の累乗の分岐が2i-1 の解を有する。これらは、単位2i-1 の2i番目の原始元のそれぞれによるzの(mod p)である。等式(数6)に対する総称的な解は、zzによって示される。演算はステップ(4)に移動する。
3)u>0の場合には、等式(数6)に対するすべての解は、奇数パリティ解である。それらの内の2kがあり、それらはすべてGが位置している分岐内にある。実際には、t−u≧kである。解を計算するには、以下のアルゴリズムが2つの変数を実行する。つまり、鍵<(p−1)/2t,p>をCG(p)の非平方剰余に適用することによって得られる整数bだけではなく、2から2t-2の範囲の値を想定するjjおよびzによって初期化されるwである。
以下のシ−ケンスはk階数回繰り返される。
1からt−2の範囲の添数iiの場合には、以下の演算が繰り返される。つまり、w2/G(mod p)を計算し、そして、鍵<2t-ii-1,p>を、+1または−1を得るために結果に適用する(さもなければ、pが素数であるという証拠がある)。−1が得られると、jj=2ii を計算し、そして、c≡bjj(mod p)を計算してから、wをw.c(mod p)によって置換し、次の添数iiへの通過がある。+1が得られると、次の添数iiへの通過がある。
アルゴリズムの最後では、変数wが値zaを有する。Gが位置する分岐上の 2k の解は、単位の2k番目の根のそれぞれによるzaの(mod p)である。等式(数6)に対する総称的な解は、zzによって表される。演算はステップ(4)に移る。
4)zzが既知である状態で、構成要素値は、そこから推論される。つまり、それは、等式G≡Qv(mod n)が使用されるときにモジュロpのzzの逆数であり、等式G.Qv≡1(mod n)が使用されるとき、zzである。
(注記) 秘密構成要素および秘密値を得るには多様な方法がある。f個の構成要素、つまり指定された基数に対してf個の構成要素が既知である場合には、対応する秘密値を計算するために、チャイニ−ズの剰余技法が使用される。指定された公開値G および係数nの場合に、複数の考えられる秘密値Qを有することが可能である。nが3(mod4)に一致する2つの素因数の積であるときには、それらの内の4つがある。3(mod 4)に一致する3つの素因数ではそれらの内の8つがある。3(mod 4)に一致する2つの素因数および5(mod 8)に一致する1つの素因数ではそれらの内の16がある。これらの複数の値の賢明な使用は、GQ2を使用するチップカ−ドの電気的な消費の分析による攻撃を複雑にする可能性がある。
【0091】
このようにして、tが増加するので、および増加するとき、プログラムは、ますます珍しい場合に関して複雑になる。実際に、素数は以下のように平均して分散される。つまり、2つの内の1つの場合、t=1、4つの内の1つ、t=2、および8つの内の1つの場合、t=3等々である。さらに、m個の基数のための制約が立候補をますます許容できないものとする。どのような場合であっても、結合された係数は、決定的にGQ2技術の部分を形成する。つまり、GQ2係数の型は、決して動的認証およびデジタル符号プロトコルに影響を及ぼさない。
【0092】
図4は、素因数pが9(mod 16)に一致する、つまりk≧3だけではなく、t=3、u=0でもあるサイクル内のGi=gi 2 を図解する。
【数13】
Figure 0004772189
【数14】
Figure 0004772189
【数15】
Figure 0004772189
に注意する。
【0093】
図5は、素因数pが65(mod 128)に一致する、つまりk=4および
u=2だけではなく、t=6でもある分岐上のGi=gi 2を図解する。
【0094】
ここでは、v=64,m=3を示し、3つの基数g1=3,g2=5、g3=7を示すk=6、および、2つが3(mod 4)に一致し、1つが5(mod 8)に一致する3つの素因数が指定される係数であるf=3である鍵GQ2の第1の集合がある。g=2が5(mod 8)に一致する素因数とは相容れないことを注意しなければならない。
【表1】
Figure 0004772189
【0095】
以下は、5(mod 8)に一致するp3に関係する構成要素のそれ以外に考えられる値である。
【0096】
以下は、CG(p3)内の−1の平方根である。つまり、c=2(p3-1)/4(mod p3)=
【表2】
Figure 0004772189
【0097】
以下は、k=9、つまりv= 512、m=2、つまり2つの基数 g1=2 およびg2=3、および3(mod 4)に一致する3つの素因数のある係数を示すf=3のある鍵GQ2の第2集合である。
【表3】
Figure 0004772189
【0098】
本発明は、GQ鍵の集合、つまり係数nおよび指数vが2kに等しい、それぞれ公開値Gと秘密値Qの組の生産のための方法を説明してきた。鍵のこれらの集合は、エンティティの真正性、および/または説明されたようにメッセ−ジの完全性および/または真正性を証明するように作られる方法を実現するために使用される。フランステレコム、TDFおよびMath RiZK社によって同日に提出され、その発明者がLouis GuillouおよびJean−Jacques Quisquaterである係属出願において、エンティティの真正性、および/またはメッセ−ジの完全性および/または真正性を証明するように設計された方法、システムおよびデバイスの特徴的な特色が主張された。これらの2つの出願は、引用することにより本明細書の一部をなすものとする。

Claims (12)

  1. 非対称ないくつかの暗号鍵を生成するためのシステムであって、該いくつかの暗号鍵は、m個の秘密値Q1,Q2,…Qmとm個の公開値G1,G2,…Gm(mは1以上)とを含んでおり、
    プロセッサと、
    前記プロセッサに接続されたメモリユニットとを備え、
    前記プロセッサは、
    1より大きい整数である機密保護パラメータkを選択して前記メモリユニットに格納し、
    1より大きい整数であるm個の基数g1,g2,…gmを選択して前記メモリユニットに格納し、
    1およびp2がp1≡3mod4およびp2≡3mod4であり、前記基数の1つがp1およびp2に関して異なるルジャンドル記号を有するように、前記メモリユニットに格納されている前記基数に基づいて少なくとも2つの素因数p1,p2,…pfを選択して前記メモリユニットに格納し、
    前記メモリユニットに格納されている前記素因数の積に等しい公開値としてモジュロnを決定して前記メモリユニットに格納し、
    前記メモリユニットに格納されている前記基数およびnに基づいて、Gi≡gi 2mod nである前記公開値Giを、i=1からi=mまで計算して前記メモリユニットに格納し、
    前記メモリユニットに格納されているk、nおよびGiに基づいて、方程式Gi・Qi v≡1mod nまたは方程式Gi≡Qi vmod n(ここで、公開指数vはv=2kである)のいずれかを解くことによって、i=1からi=mまでについての秘密値Qiを計算して前記メモリユニットに格納する
    ように構成されている、システム。
  2. 3mod4に合同のe≧0である前記モジュロnの素因数の数(f−e)が2より大きいものであり、3mod4に合同の2≦j≦mについてのこれらの素因数pj+1が、
    前記プロセッサが、前記素因数p1,p2,…pjに関するgjのProfilej(gj)を計算して前記メモリユニットに格納することであって、f個の素因数p1,p2,…pfに関するgiのProfilef(gi)は、素因数あたり1ビットのfビットのシーケンスであり、第1ビットは一方の論理値に等しく、後続の各ビットは、p1および次の素因数に関してgiが同じルジャンドル記号を有する場合は前記一方の論理値に等しく、p1および次の素因数に関してgiが異なるルジャンドル記号を有する場合は他方の論理値に等しいものであることと、
    前記メモリユニットに格納されているプロファイル(Profilej(gj))の全ビットが前記一方の論理値である場合には、前記プロセッサが、p1およびpj+1に関してgjが異なるルジャンドル記号を有するように素因数pj+1を選択して前記メモリユニットに格納し、さもなければ、前記プロセッサが、j−1個の基数g1,g2,…gj-1およびそのすべての乗法の組み合わせの中で、Profilej(g)=Profilej(gj)となるようにgという数を選択し、Profilej+1(gj)≠Profilej+1(g)となるようにpj+1を選択してpj+1を前記メモリユニットに格納することと
    によって反復的に決定されるものであり、ここで、前記プロセッサは、f−e≦mのときに、f−e≦i≦mであってProfilef-e-1(gi)の全ビットが前記一方の論理値となり、前記基数giのすべてがp1およびpf-eに関して異なるルジャンドル記号を有するように、3mod4に合同の最後の素因数pf-eを選択して前記メモリユニットに格納する、請求項1に記載のシステム。
  3. 1mod4(4を法にして1)に合同の、前記モジュロnの素因数の数eが少なくとも1に等しいものであり、
    前記プロセッサが、
    pについてg1からgmまでの基数giのルジャンドル記号が+1に等しくなるように、候補素因数pを選択することと、
    p−1が2t+1によって除算可能ではなく2tによって除算可能となるように、整数tを計算することと、
    s=(p−1+2t)/2t+1となるように整数sを計算することと、
    hがモジュロpの整数環についての非平方剰余であり、b≡hp-1/2tmod pとなる整数bを計算することと、
    i=1からmまでについてm個の整数ri≡gi 2smod pを計算することと、
    整数uをu=0に初期化することと、
    iが1に初期化されているときには、以下の手順、すなわち、
    整数wをw=0に初期化することと、
    i=±giであって、i<mであれば、iの値を増加し、iの新たな値について手順をi<mの間続行し、i=mであれば、候補素因数pをモジュロnの因数として受け入れ、
    i≠±giであれば、
    整数jjを1に初期化することと、
    iiが1に初期化されているときには、以下の手順、すなわち、
    x≡w2/gi 2mod pとなるxを計算することと、
    y≡[x2(t-ii-1)を計算することと、
    y=+1であれば、そのときの値iiで前記手順を終了し、
    y=−1であれば、jj=2iiとなる値jjを割当て、古い値にbjjモジュロpを乗算したものに等しい新たな値をwに割当て、
    ii<t−2については、前記iiの値を増加し、新たな反復を続行し、
    ii=t−2については、jj=2t-uまで前記uの値を更新し、
    t−u<kであれば、モジュロnの因数としての候補素因数pを拒絶し、
    t−u>kであって、i<mであれば、前記iの値を増加し、値iの新たな値について一連の手順を続行し、i=mであれば、候補素因数pを前記モジュロnの因数として受け入れることと
    を反復的に実行することによって各素因数が決定されるものである、請求項1に記載のシステム。
  4. m個の秘密値Q1,Q2,…Qmのf.m個の秘密構成要素Qi,jを計算するために、各組(i,j)について以下の手順、すなわち、
    前記プロセッサが、
    jが3mod4に合同の場合には、1に等しい整数tを決定し、pjが1mod4に合同の場合には、請求項3に従うtについて得られた値に整数tを決定することと、
    jが3mod4に合同の場合には、0に等しい整数uを決定し、pjが1mod4に合同の場合には、請求項3に従うtについて得られた値に整数uを決定することと、
    s=(p−1+2t)/2t+1である、整数z≡Gi smod pjを計算することと、
    u=0であれば、zzがzに等しいか、または、zzが単位の2ii-tii番目の原始根のそれぞれによってzの積(mod pj)に等しくなり、iiが1からmin(k,t)の範囲となるようにすべての数zzを考慮し、u>0であれば、zzが、単位の2kk番目の根のそれぞれによってzaの(mod pj)に等しくなるように、すべての数zzを考慮することと、ここで、zaは、請求項3に従うwについて得られた値であり、
    そのようなそれぞれの数zzについて、iの値について前記方程式Gi=Qi vmod nを用いた場合には、Qi,jがzzに等しいことを考慮して前記構成要素Qi,jについての値を得て、iの値についてGi.Qi v≡1mod nを使用する場合には、zzのモジュロpjのzzの逆数に等しいことを考慮して前記構成要素Qi,jについての値を得ることと
    を実行するものである、請求項3に記載のシステム。
  5. 非対称ないくつかの暗号鍵を生成するための命令を記憶しているコンピュータ読み取り可能な記録媒体であって、該いくつかの暗号鍵は、m個の秘密値Q1,Q2,…Qmとm個の公開値G1,G2,…Gm(mは1以上)とを含んでおり、前記媒体は、プロセッサに対して、
    1より大きい整数である機密保護パラメータkを選択してメモリユニットに格納することと、
    1より大きい整数であるm個の基数g 1 ,g 2 ,…g m を選択して前記メモリユニットに格納することと、
    1およびp2がp1≡3mod4およびp2≡3mod4であり、前記基数の1つがp1およびp2に関して異なるルジャンドル記号を有するように、前記メモリユニットに格納されている前記基数に基づいて少なくとも2つの素因数p1,p2,…pfを選択して前記メモリユニットに格納することと、
    前記メモリユニットに格納されている前記素因数の積に等しい公開値としてモジュロnを決定して前記メモリユニットに格納することと、
    前記メモリユニットに格納されている前記基数およびnに基づいて、Gi≡gi 2mod nである前記公開値Giを、i=1からi=mまで計算して前記メモリユニットに格納することと、
    前記メモリユニットに格納されているk、nおよびGiに基づいて、方程式Gi・Qi v≡1mod nまたは方程式Gi≡Qi vmod n(ここで、公開指数vはv=2kである)のいずれかを解くことによって、i=1からi=mまでについての秘密値Qiを計算して前記メモリユニットに格納することと
    を実行させるものである、コンピュータ読み取り可能な記録媒体。
  6. 3mod4に合同のe≧0である前記モジュロnの素因数の数(f−e)が2より大きいものであり、3mod4に合同の2≦j≦mについてのこれらの素因数pj+1が、
    前記プロセッサが、前記素因数p1,p2,…pjに関するgjのProfilej(gj)を計算して前記メモリユニットに格納することであって、f個の素因数p1,p2,…pfに関するgiのProfilef(gi)は、素因数あたり1ビットのfビットのシーケンスであり、第1ビットは一方の論理値に等しく、後続の各ビットは、p1および次の素因数に関してgiが同じルジャンドル記号を有する場合は前記一方の論理値に等しく、p1および次の素因数に関してgiが異なるルジャンドル記号を有する場合は他方の論理値に等しいものであることと、
    前記メモリユニットに格納されているプロファイル(Profilej(gj))の全ビットが前記一方の論理値である場合には、前記プロセッサが、p1およびpj+1に関してgjが異なるルジャンドル記号を有するように素因数pj+1を選択して前記メモリユニットに格納し、さもなければ、前記プロセッサが、j−1個の基数g1,g2,…gj-1およびそのすべての乗法の組み合わせの中で、Profilej(g)=Profilej(gj)となるようにgという数を選択し、Profilej+1(gj)≠Profilej+1(g)となるようにpj+1を選択してpj+1を前記メモリユニットに格納することと
    によって反復的に決定されるものであり、ここで、前記プロセッサは、f−e≦mのときに、f−e≦i≦mであってProfilef-e-1(gi)の全ビットが前記一方の論理値となり、前記基数giのすべてがp1およびpf-eに関して異なるルジャンドル記号を有するように、3mod4に合同の最後の素因数pf-eを選択して前記メモリユニットに格納する、請求項5に記載のコンピュータ読み取り可能な記録媒体。
  7. 1mod4に合同であり、前記モジュロnの素因数の数eが少なくとも1に等しいものであり、
    前記プロセッサが、
    pについてg1からgmまでの基数giのルジャンドル記号が+1に等しくなるように、候補素因数pを選択することと、
    p−1が2t+1によって除算可能ではなく2tによって除算可能であるように、整数tを計算することと、
    s=(p−1+2t)/2t+1となるように整数sを計算することと、
    hがモジュロpの整数環についての非平方剰余であり、b≡hp-1/2tmod pとなる整数bを計算することと、
    i=1からmまでについてm個の整数ri≡gi 2smod pを計算することと、
    整数uをu=0に初期化することと、
    iが1に初期化されているときには、以下の手順、すなわち、
    整数wをw=0に初期化することと、
    i=±giであって、i<mであれば、iの値を増加し、iの新たな値について手順をi<mの間続行し、i=mであれば、候補素因数pをモジュロnの因数として受け入れ、
    i≠±giであれば、
    整数jjを1に初期化することと、
    iiが1に初期化されているときには、以下の手順、すなわち、
    x≡w2/gi 2mod pとなるxを計算することと、
    y≡[x2(t-ii-1)を計算することと、
    y=+1であれば、そのときの値iiで前記手順を終了し、
    y=−1であれば、jj=2iiとなる値jjを割当て、古い値にbjjモジュロpを乗算したものに等しい新たな値をwに割当て、
    ii<t−2については、前記iiの値を増加し、新たな反復を続行し、
    ii=t−2については、jj=2t-uまで前記uの値を更新し、
    t−u<kであれば、前記モジュロnの因数としての前記候補素因数pを拒絶し、
    t−u>kであって、i<mであれば、前記iの値を増加し、値iの新たな値について一連の手順をi<mとなるまで続行し、i=mであれば、候補素因数pをモジュロnの因数として受け入れること
    を反復的に実行することによって各素因数が決定されるものである、請求項5に記載のコンピュータ読み取り可能な記録媒体。
  8. 秘密値Q1,Q2,…Qmのf.m個の秘密構成要素Qi,jを計算するために、各組(i,j)について以下の手順、すなわち、
    前記プロセッサが、
    jが3mod4に合同の場合には、1に等しい整数tを決定し、pjが1mod4に合同の場合には、請求項7に従うtについて得られた値に整数tを決定することと、
    jが3mod4に合同の場合には、0に等しい整数uを決定し、pjが1mod4に合同の場合には、請求項7に従うtについて得られた値に整数uを決定することと、
    s=(p−1+2t)/2t+1である、整数z≡Gi smod pjを計算することと、
    u=0であれば、zzがzに等しいか、または、zzが単位の2ii-tii番目の原始根のそれぞれによってzの積(mod pj)に等しくなり、iiが1からmin(k,t)の範囲となるようにすべての数zzを考慮し、u>0であれば、zzが、単位の2kk番目の根のそれぞれによってzaの(mod pj)に等しくなるように、すべての数zzを考慮することと、ここで、zaは、請求項7に従うwについて得られた値であり、
    そのようなそれぞれの数zzについて、iの値について前記方程式Gi=Qi vmod nを用いた場合には、Qi,jがzzに等しいことを考慮して前記構成要素Qi,jについての値を得て、iの値についてGi.Qi v≡1mod nを使用する場合には、zzのモジュロpjのzzの逆数に等しいことを考慮して前記構成要素Qi,jについての値を得ることと
    を実行するものである、請求項7に記載のコンピュータ読み取り可能な記録媒体。
  9. 非対称ないくつかの暗号鍵を生成するための方法であって、該いくつかの暗号鍵は、m個の秘密値Q1,Q2,…Qmとm個の公開値G1,G2,…Gm(mは1以上)とを含んでおり、プロセッサに対して、
    1より大きい整数である機密保護パラメータkを選択してメモリユニットに格納することと、
    1より大きい整数であるm個の基数g 1 ,g 2 ,…g m を選択して前記メモリユニットに格納することと、
    1およびp2がp1≡3mod4およびp2≡3mod4であり、前記基数の1つがp1およびp2に関して異なるルジャンドル記号を有するように、前記メモリユニットに格納されている前記基数に基づいて少なくとも2つの素因数p1,p2,…pfを選択して前記メモリユニットに格納することと、
    前記メモリユニットに格納されている前記素因数の積に等しい公開値としてモジュロnを決定して前記メモリユニットに格納することと、
    前記メモリユニットに格納されている前記基数およびnに基づいて、Gi≡gi 2mod nである前記公開値Giを、i=1からi=mまで計算して前記メモリユニットに格納することと、
    前記メモリユニットに格納されているk、nおよびGiに基づいて、方程式Gi・Qi v≡1mod nまたは方程式Gi≡Qi vmod n(ここで、公開指数vはv=2kである)のいずれかを解くことによって、i=1からi=mまでについての秘密値Qiを計算して前記メモリユニットに格納することと
    を実行させるものである方法。
  10. 3mod4に合同であり、e≧0である前記モジュロnの素因数の数(f−e)が2より大きいものであり、3mod4に合同であり、2≦j≦mについてのこれらの素因数pj+1が、
    前記プロセッサが、前記素因数p1,p2,…pjに関するgjのProfilej(gj)を計算して前記メモリユニットに格納することであって、f個の素因数p1,p2,…pfに関するgiのProfilef(gi)は、素因数あたり1ビットのfビットのシーケンスであり、第1ビットは一方の論理値に等しく、後続の各ビットは、p1および次の素因数に関してgiが同じルジャンドル記号を有する場合は前記一方の論理値に等しく、p1および次の素因数に関してgiが異なるルジャンドル記号を有する場合は他方の論理値に等しいものであることと、
    前記メモリユニットに格納されているプロファイル(Profilej(gj))の全ビットが前記一方の論理値である場合には、前記プロセッサが、p1およびpj+1に関してgjが異なるルジャンドル記号を有するように素因数pj+1を選択して前記メモリユニットに格納し、さもなければ、前記プロセッサが、j−1個の基数g1,g2,…gj-1およびそのすべての乗法の組み合わせの中で、Profilej(g)=Profilej(gj)となるようにgという数を選択し、Profilej+1(gj)≠Profilej+1(g)となるようにpj+1を選択してpj+1を前記メモリユニットに格納することと
    によって反復的に決定されるものであり、ここで、前記プロセッサは、f−e≦mのときに、f−e≦i≦mであってProfilef-e-1(gi)の全ビットが前記一方の論理値となり、前記基数giのすべてがp1およびpf-eに関して異なるルジャンドル記号を有するように、3mod4に合同の最後の素因数pf-eを選択して前記メモリユニットに格納する、請求項9に記載の方法。
  11. 1mod4(4を法にして1)に合同であり、前記モジュロnの素因数である数eが少なくとも1に等しいものであり、
    前記プロセッサが、
    pについてg1からgmまでの基数giのルジャンドル記号が+1に等しくなるように、候補素因数pを選択することと、
    p−1が2t+1によって除算可能ではなく2tによって除算可能であるように、整数tを計算することと、
    s=(p−1+2t)/2t+1となるように整数sを計算することと、
    hがモジュロpの整数環についての非平方剰余であり、b≡hp-1/2tmod pとなる整数bを計算することと、
    i=1からmまでについて整数ri≡gi 2smod pとなるmを計算することと、
    整数uをu=0に初期化することと、
    iが1に初期化されているときには、以下の手順、すなわち、
    整数wをw=0に初期化することと、
    i=±giであって、i<mであれば、iの値を増加し、iの新たな値について手順をi<mの間続行し、i=mであれば、候補素因数pをモジュロnの因数として受け入れ、
    i≠±giである場合には、
    整数jjを1に初期化することと、
    iiが1に初期化されているときには、以下の手順、すなわち、
    x≡w2/gi 2mod pとなるxを計算することと、
    y≡[x2(t-ii-1)を計算することと、
    y=+1であれば、そのときの値iiで前記手順を終了し、
    y=−1であれば、jj=2iiとなる値jjを割当て、古い値にbjjモジュロpを乗算したものに等しい新たな値をwに割当て、
    ii<t−2については、前記iiの値を増加し、新たな反復を続行し、
    ii=t−2については、jj=2t-uまで前記uの値を更新し、
    t−u<kであれば、前記モジュロnの因数としての前記候補素因数pを拒絶し、
    t−u>kであって、i<mであれば、前記iの値を増加し、値iの新たな値について一連の手順をi<mとなるまで続行し、i=mであれば、候補素因数pをモジュロnの因数として受け入れること
    を反復的に実行することによって各素因数が決定されるものである、請求項9に記載の方法。
  12. 秘密値Q1,Q2,…Qmのf.m個の秘密構成要素Qi,jを計算するために、各組(i,j)について以下の手順、すなわち、
    前記プロセッサが、
    jが3mod4に合同であれば、1に等しい整数tを決定し、pjが1mod4に合同であれば、請求項11に従うtについて得られた値に整数tを決定することと、
    jが3mod4に合同であれば、0に等しい整数uを決定し、pjが1mod4に合同であれば、請求項11に従うtについて得られた値に整数uを決定することと、
    s=(p−1+2t)/2t+1である、整数z≡Gi smod pjを計算することと、
    u=0であれば、zzがzに等しいか、または、zzが単位の2ii-tii番目の原始根のそれぞれによってzの積(mod pj)に等しくなり、iiが1からmin(k,t)の範囲となるようにすべての数zzを考慮し、u>0であれば、zzが、単位の2kk番目の根のそれぞれによってzaの(mod pj)に等しくなるように、すべての数zzを考慮することと、ここで、zaは、請求項11に従うwについて得られた値であり、
    そのようなそれぞれの数zzについて、iの値について前記方程式Gi=Qi vmod nを用いた場合には、Qi,jがzzに等しいことを考慮して前記構成要素Qi,jについての値を得て、iの値についてGi.Qi v≡1mod nを使用する場合には、zzのモジュロpjのzzの逆数に等しいことを考慮して前記構成要素Qi,jについての値を得ることと
    を実行するものである、請求項11に記載の方法。
JP2000597915A 1999-01-27 2000-01-27 エンティティの真正性および/または特殊素因子を使用するメッセ−ジの完全性および/または真正性を証明するための方法、システム、及び装置 Expired - Lifetime JP4772189B2 (ja)

Applications Claiming Priority (11)

Application Number Priority Date Filing Date Title
FR99/01065 1999-01-27
FR9901065A FR2788910A1 (fr) 1999-01-27 1999-01-27 Procede, systeme, dispositif pour diminuer la charge de travail pendant une session destinee a prouver l'authenticite d'une entite et/ou l'origine et l'integrite d'un message
FR9903770A FR2788911A1 (fr) 1999-01-27 1999-03-23 Procede, systeme, dispositif pour diminuer la charge de travail pendant une session destinee a prouver l'authenticite d'une entite et/ou l'origine et l'integrite d'un message
FR99/03770 1999-03-23
FR99/12467 1999-10-01
FR99/12468 1999-10-01
FR99/12465 1999-10-01
FR9912468A FR2824974B1 (fr) 1999-01-27 1999-10-01 Procede destine a prouver l'authenticite d'une entite ou l'integrite d'un message au moyen d'un exposant public egal a une puissance de deux.
FR9912465A FR2788908B1 (fr) 1999-01-27 1999-10-01 Procede, systeme, dispositif destines a prouver l'authenticite d'une entite et/ou l'integrite et/ou l'authenticite d'un message
FR9912467A FR2788912B1 (fr) 1999-01-27 1999-10-01 Procede, systeme, dispositif destines a prouver l'authenticite d'une entite et/ou l'integrite et/ou l'authenticite d'un message aux moyens de facteurs premiers particuliers
PCT/FR2000/000189 WO2000046947A2 (fr) 1999-01-27 2000-01-27 Procede, systeme, dispositif destines a prouver l'authenticite d'une entite et/ou l'integrite et/ou l'authenticite d'un message aux moyens de facteurs premiers particuliers

Publications (3)

Publication Number Publication Date
JP2002540653A JP2002540653A (ja) 2002-11-26
JP2002540653A5 JP2002540653A5 (ja) 2007-04-05
JP4772189B2 true JP4772189B2 (ja) 2011-09-14

Family

ID=27515634

Family Applications (3)

Application Number Title Priority Date Filing Date
JP2000597914A Withdrawn JP2003519447A (ja) 1999-01-27 2000-01-27 エンティティの真正性および/またはメッセージの完全性および/または真正性を証明するための方法、システム、および装置
JP2000596696A Expired - Lifetime JP4772965B2 (ja) 1999-01-27 2000-01-27 エンティティの真正性および/またはメッセージの完全性を証明するための方法
JP2000597915A Expired - Lifetime JP4772189B2 (ja) 1999-01-27 2000-01-27 エンティティの真正性および/または特殊素因子を使用するメッセ−ジの完全性および/または真正性を証明するための方法、システム、及び装置

Family Applications Before (2)

Application Number Title Priority Date Filing Date
JP2000597914A Withdrawn JP2003519447A (ja) 1999-01-27 2000-01-27 エンティティの真正性および/またはメッセージの完全性および/または真正性を証明するための方法、システム、および装置
JP2000596696A Expired - Lifetime JP4772965B2 (ja) 1999-01-27 2000-01-27 エンティティの真正性および/またはメッセージの完全性を証明するための方法

Country Status (7)

Country Link
US (2) US7386122B1 (ja)
EP (3) EP1145473B1 (ja)
JP (3) JP2003519447A (ja)
CN (3) CN1322700C (ja)
AU (3) AU769446C (ja)
CA (3) CA2361627A1 (ja)
WO (3) WO2000046947A2 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2822002B1 (fr) * 2001-03-12 2003-06-06 France Telecom Authentification cryptographique par modules ephemeres
FR2841411B1 (fr) * 2002-06-19 2004-10-29 Gemplus Card Int Procede de generation de cles electroniques pour procede de crytographie a cle publique et objet portatif securise mettant en oeuvre le procede
FR2865590A1 (fr) * 2004-01-23 2005-07-29 France Telecom Procede pour etablir, a partir d'un jeu de grands nombres premiers, un jeu de cles destine a prouver l'authenticite d'une entite ou l'integrite d'un message
CN101243513A (zh) * 2005-08-23 2008-08-13 皇家飞利浦电子股份有限公司 使用物理单向函数的信息载体鉴别
JP4968622B2 (ja) * 2006-11-02 2012-07-04 日本電気株式会社 グループメンバー確認システム、及びグループメンバー確認方法、及びプログラム
US8159965B2 (en) * 2007-05-18 2012-04-17 Innovative Sonic Limited Method of comparing state variable or packet sequence number for a wireless communications system and related apparatus
US8832110B2 (en) 2012-05-22 2014-09-09 Bank Of America Corporation Management of class of service
US9961059B2 (en) * 2014-07-10 2018-05-01 Red Hat Israel, Ltd. Authenticator plugin interface
EP2966803A1 (en) * 2014-07-11 2016-01-13 Thomson Licensing Method and device for cryptographic key generation

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0520344A (ja) * 1991-07-10 1993-01-29 Nippon Telegr & Teleph Corp <Ntt> 電子現金方式

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2620248B1 (fr) * 1987-09-07 1989-11-24 France Etat Procedes d'authentification d'accreditations ou de messages a apport nul de connaissance et de signature de messages
US5218637A (en) * 1987-09-07 1993-06-08 L'etat Francais Represente Par Le Ministre Des Postes, Des Telecommunications Et De L'espace Method of transferring a secret, by the exchange of two certificates between two microcomputers which establish reciprocal authorization
US5140634A (en) * 1987-09-07 1992-08-18 U.S Philips Corporation Method and apparatus for authenticating accreditations and for authenticating and signing messages
WO1989011706A1 (en) 1988-05-19 1989-11-30 Ncr Corporation Method and device for authentication
US5046094A (en) * 1989-02-02 1991-09-03 Kabushiki Kaisha Toshiba Server-aided computation method and distributed information processing unit
EP0381523A3 (en) * 1989-02-02 1993-03-03 Kabushiki Kaisha Toshiba Server-aided computation method and distributed information processing unit
US5224162A (en) * 1991-06-14 1993-06-29 Nippon Telegraph And Telephone Corporation Electronic cash system
US5299262A (en) * 1992-08-13 1994-03-29 The United States Of America As Represented By The United States Department Of Energy Method for exponentiating in cryptographic systems
US5442707A (en) * 1992-09-28 1995-08-15 Matsushita Electric Industrial Co., Ltd. Method for generating and verifying electronic signatures and privacy communication using elliptic curves
US5414772A (en) * 1993-06-23 1995-05-09 Gemplus Development System for improving the digital signature algorithm
US5604805A (en) * 1994-02-28 1997-02-18 Brands; Stefanus A. Privacy-protected transfer of electronic information
FR2733379B1 (fr) * 1995-04-20 1997-06-20 Gemplus Card Int Procede de generation de signatures electroniques, notamment pour cartes a puces
DE69704684T2 (de) * 1996-02-23 2004-07-15 Fuji Xerox Co., Ltd. Vorrichtung und Verfahren zur Authentifizierung von Zugangsrechten eines Benutzers zu Betriebsmitteln nach dem Challenge-Response-Prinzip
IL120303A0 (en) * 1996-03-27 1997-06-10 Pfizer Use of alpha1-adrenoreceptor antagonists in the prevention and treatment of cancer
EP0977165B1 (en) * 1997-01-28 2008-08-20 Matsushita Electric Industrial Co., Ltd Message reproducing type signature device
US6389136B1 (en) * 1997-05-28 2002-05-14 Adam Lucas Young Auto-Recoverable and Auto-certifiable cryptosystems with RSA or factoring based keys
WO1998054633A1 (en) * 1997-05-29 1998-12-03 Sun Microsystems, Inc. Method and apparatus for signing and sealing objects
US7246098B1 (en) * 1997-07-15 2007-07-17 Silverbrook Research Pty Ltd Consumable authentication protocol and system
JP3671611B2 (ja) * 1997-08-05 2005-07-13 富士ゼロックス株式会社 アクセス資格認証装置および方法
JP3562262B2 (ja) * 1997-10-17 2004-09-08 富士ゼロックス株式会社 認証方法および装置
CA2253009C (en) * 1997-11-04 2002-06-25 Nippon Telegraph And Telephone Corporation Method and apparatus for modular inversion for information security and recording medium with a program for implementing the method
US7280663B1 (en) * 2000-05-22 2007-10-09 University Of Southern California Encryption system based on crossed inverse quasigroups

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0520344A (ja) * 1991-07-10 1993-01-29 Nippon Telegr & Teleph Corp <Ntt> 電子現金方式

Also Published As

Publication number Publication date
WO2000046947A2 (fr) 2000-08-10
EP1145472A2 (fr) 2001-10-17
AU769464B2 (en) 2004-01-29
JP2003519447A (ja) 2003-06-17
CA2360887C (fr) 2009-03-24
EP1145482B1 (fr) 2019-01-02
AU2298500A (en) 2000-08-25
WO2000046946A2 (fr) 2000-08-10
JP4772965B2 (ja) 2011-09-14
WO2000045550A3 (fr) 2002-04-25
AU769446C (en) 2007-09-20
CA2360954A1 (en) 2000-08-03
CN1468479A (zh) 2004-01-14
EP1145473B1 (fr) 2019-04-17
CN1322700C (zh) 2007-06-20
CN1372739A (zh) 2002-10-02
AU769444B2 (en) 2004-01-29
CA2361627A1 (en) 2000-08-10
WO2000046946A3 (fr) 2002-10-10
EP1145472A3 (fr) 2002-11-27
WO2000045550A2 (fr) 2000-08-03
EP1145473A3 (fr) 2002-05-29
JP2002540653A (ja) 2002-11-26
AU2298400A (en) 2000-08-25
EP1145482A3 (fr) 2002-06-26
EP1145482A2 (fr) 2001-10-17
CN100377520C (zh) 2008-03-26
CN1408154A (zh) 2003-04-02
EP1145473A2 (fr) 2001-10-17
AU2298600A (en) 2000-08-18
JP2003513480A (ja) 2003-04-08
AU769446B2 (en) 2004-01-29
US7386122B1 (en) 2008-06-10
CA2360887A1 (fr) 2000-08-10
US7266197B1 (en) 2007-09-04
WO2000046947A3 (fr) 2002-04-04

Similar Documents

Publication Publication Date Title
Shamir et al. Improved online/offline signature schemes
EP1889391B1 (en) Scalar recoding for elliptic curve point multiplication
Gennaro et al. Secure hash-and-sign signatures without the random oracle
US8184803B2 (en) Hash functions using elliptic curve cryptography
KR101089121B1 (ko) 빠른 집합 검증 방법 및 그 장치
US4759064A (en) Blind unanticipated signature systems
US6144740A (en) Method for designing public key cryptosystems against fault-based attacks with an implementation
KR20050023326A (ko) 암호와 응용을 위한 가능성있는 솟수들의 테스팅
US6496929B2 (en) Generating RSA moduli including a predetermined portion
WO2005081451A1 (en) Method to generate, verify and deny an undeniable signature
JP4772189B2 (ja) エンティティの真正性および/または特殊素因子を使用するメッセ−ジの完全性および/または真正性を証明するための方法、システム、及び装置
JP2008048451A (ja) エンティティの真正性又はメッセージの完全性を証明するための方法、システム、デバイス
Seo et al. Peregrine: toward fastest FALCON based on GPV framework
US7346637B2 (en) Polynomial time deterministic method for testing primality of numbers
Monnerat et al. Undeniable signatures based on characters: How to sign with one bit
CN112887096B (zh) 用于签名和密钥交换的素数阶椭圆曲线生成方法及系统
Chen et al. Tropical cryptography III: digital signatures
Joye RSA moduli with a predetermined portion: Techniques and applications
KR100676461B1 (ko) 특정 소인수를 이용한 엔티티 인증성, 및 메시지의 무결성및(또는) 인증성 검증방법, 시스템 및 장치
Maximov On Roots Factorization for PQC Algorithms
RU2325767C1 (ru) Способ формирования и проверки подлинности электронной цифровой подписи, заверяющей электронный документ
Metzgar RSA cryptosystem: an analysis and python simulator
KR20020060189A (ko) 엔티티의 인증성 또는 메시지의 무결성을 검증하기 위한특수 키 세트
Liu et al. eMLE-Sig 2.0: A Signature Scheme based on Embedded Multilayer Equations with Heavy Layer Randomization
Gorbenko et al. Post-quantum algorithm of asymmetric encryption and its basic properties

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070129

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070129

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100528

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100825

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100901

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20101014

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101015

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110302

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110525

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: 20110614

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: 20110622

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

Free format text: PAYMENT UNTIL: 20140701

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4772189

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

EXPY Cancellation because of completion of term