JP4137385B2 - 公開鍵および秘密鍵による暗号化方法 - Google Patents

公開鍵および秘密鍵による暗号化方法 Download PDF

Info

Publication number
JP4137385B2
JP4137385B2 JP2000594220A JP2000594220A JP4137385B2 JP 4137385 B2 JP4137385 B2 JP 4137385B2 JP 2000594220 A JP2000594220 A JP 2000594220A JP 2000594220 A JP2000594220 A JP 2000594220A JP 4137385 B2 JP4137385 B2 JP 4137385B2
Authority
JP
Japan
Prior art keywords
mod
log
data processing
communication
communication device
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
JP2000594220A
Other languages
English (en)
Other versions
JP2002535878A (ja
Inventor
パイエ,パスカル
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Gemplus SA
Original Assignee
Gemplus SA
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 Gemplus SA filed Critical Gemplus SA
Publication of JP2002535878A publication Critical patent/JP2002535878A/ja
Application granted granted Critical
Publication of JP4137385B2 publication Critical patent/JP4137385B2/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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3006Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
    • H04L9/302Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters involving the integer factorization problem, e.g. RSA or quadratic sieve [QS] schemes
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Storage Device Security (AREA)

Description

【0001】
本発明は、公開鍵と秘密鍵による暗号化方法に関するものである。全ての用途分野、即ち任意のチャネル上での伝送メッセージの機密性を保証する必要がある分野、および/またはメッセージを交換する装置を確実に識別する必要がある分野で利用可能である。
【0002】
2つの装置AとBの間の任意の通信チャネル上で伝送されるメッセージの機密性は、伝送情報を暗号化し、受信側以外の人が情報を読めないようにすることによって得られる。装置の確実な識別は、メッセージのデジタル署名の計算に基づいている。
【0003】
実際には、2つのタイプの暗号化方法が利用可能であり、一つは秘密鍵式の対称と呼ばれるもので、その周知の例はDESであり、もう一つは一対の公開鍵および秘密鍵を用いる非対称と呼ばれるものであり、DiffieとHellman著の"New directions in Cryptography" IEEE Transactions on Information Theory, nov. 1976の”Public_key cryptosystem”に記載されている。非対称法の周知の例にはRSAがあり、名前はその発明者に由来する(Ronald Rivest、Adi ShamirとLeonard Adleman)。このRSA法は、米国特許第4,405,829号に記載されている。
【0004】
本発明では、特に非対称暗号化方法に注目する。
【0005】
非対称暗号化方法による暗号化方法は、主として、メッセージを受信側Bに秘密に送信することを望む発信側Aが、例えばアドレス帳の中から受信側Bの公開鍵KBを調べ、伝送されるメッセージmに暗号化方法Eを適用し、結果としての暗号文c:c=EKB(m)を受信側Bに送信することから成る。
【0006】
この方法は主として、受信側Bが暗号文cを受信し、元のメッセージmを得るために、復号化方法Dにおける、受信側だけが知るはずの秘密鍵K’bを暗号文cに適用することで暗号文を復号化する:m=DK'B(c)。
【0007】
この方法によれば、誰でもが暗号化されたメッセージを受信側Bに送信することができるが、受信側だけがそれを復号化することができる。
【0008】
通常、署名の発生/検証には、非対称暗号化方法が使用される。この状況において、自己の身元の証明を望む使用者は、自分だけが知っている秘密鍵を利用して、メッセージmのデジタル署名sを生成し、署名を受信装置に伝送する。受信装置は、使用者の公開鍵を用いて署名の検証を行う。したがって、全ての装置は、この使用者の公開鍵を調べ、かつ検証アルゴリズムにそれを適用して、使用者の署名を検証する能力を有する。しかし、当該使用者だけが、自己の秘密鍵を用いて正しい署名を発生する能力を有する。この方法は、例えば、アクセス制御または銀行取引のシステムに多く使用されている。それは一般的に、伝送前に署名を暗号化する暗号化方法の利用と組み合わされている。
【0009】
このデジタル署名の発生/検証では、実際には、米国標準技術協会(US National Institute of Standards and Technology)が提案した米国標準に対応するDSA(Digital Signature Algorithm)などの、この用途専用の非対称暗号化方法が利用できる。さらに暗号化にも署名発生にも利用できる特性を有するRSAを用いることができる。
【0010】
本発明では、メッセージの暗号化とデジタル署名の発生に利用できる暗号化方法に注目する。従来技術において、実施のための変型が多数存在するRSAだけが、この二重の機能を提供している。
【0011】
RSAは所与の装置について公開鍵Kと秘密鍵K’の発生過程から成り、その過程は以下の通りである:
−相異なる2つの大きな素数pとqを選択する。
−それらの積n=p・qを計算する。
−(p−1)と(q−1)の最小公倍数と互いに素な数eを選択する。実際には、eは3に等しく取ることが多い。
【0012】
このとき、公開鍵Kはパラメータ対(n,e)によって形成され、秘密鍵K’はパラメータ対(p,q)によって形成される。
【0013】
大きな位数のpとqを選択すれば、それらの積nも大きな位数になる。したがって、nは因数分解がきわめて困難となる:nが分かっても、秘密鍵K’=(p,q)を見つけることができないのは確実である。
【0014】
メッセージMを表す数m、0≦m<nの暗号化方法は、公開鍵K=(n,e)を用いて次の計算をすることから成る:
c=EB(m)= me mod n
【0015】
一方、復号化方法は、秘密にされている秘密鍵K’=(p,q)を用いて次の逆計算をすることから成る:
m=cdmod(n)
【0016】
ここで
d= 1/e mod (p−1)(q−1)

【0017】
先に見たごとく、RSAは署名の検証に用いることができるという特性がある。使用者Aによる署名発生に対応する方法は、メッセージを表す数mの署名sを生成するための秘密鍵を用いた復号化方法を利用することから成る。したがって、s=md mod n。
【0018】
この署名sは受信側Bに伝送される。受信側は、m(例えば、Aがsとmを伝送)を知っており、逆演算を実施して、すなわち発信者Aの公開鍵で暗号化方法を用いて署名を検証する。すなわち、v=se mod nを計算して、v=mを検証する。
【0019】
一般的に、かかる署名検証法の機密性を向上させるためには、署名の計算前に、数mに対して、ビットの置換および/または圧縮から成ることができるハッシュ関数を前もって適用する。
【0020】
暗号化する、あるいは署名するメッセージMについて言うとき、それはもちろん、先行するデジタル符号化の結果であるデジタルメッセージのことである。それらは実際には、バイナリ・サイズ(ビット数)が可変のビット列である。
【0021】
ところで、RSAなどの暗号化方法は、0からn−1の間の任意の数を、公開鍵(n,e)で暗号化することを可能にするものである。したがって、任意のサイズのメッセージMにそれを適用するためには、実際にこのメッセージを、条件0≦m<nをそれぞれ満たす一連の数mに分割する必要がある。次に、暗号化方法をこれらの数のそれぞれに適用する。つづいて、メッセージMを表す数mへの暗号化方法の適用に着目する。mはMに等しいことも、その一部にすぎないこともある。したがって、以下においてはメッセージまたはメッセージを表す数を区別なくmで示す。
【0022】
本発明の一つの目的は、RSAに基づくものとは異なる非対称暗号化方法である。
【0023】
本発明の一つの目的は、メッセージの暗号化にも、署名発生にも適用できる、他の特性に基づく方法である。
【0024】
本発明の一つの目的は、特定の構成において、処理時間をより短くすることができる暗号化方法である。
【0025】
特徴づけられたように、本発明は、請求項1に記載の暗号化方法に関するものである。
【0026】
本発明は、付属の図面を参照して、説明のためになされた本発明を一切限定しない下記の説明を読むことによって、よりよく理解できるだろう。
−図1は、非対称型暗号通信システムの機能図である。
−図2は、本発明による暗号通信システムに使用された通信装置の機能図である。
−図3は、本発明による暗号化方法を用いるメッセージの暗号化/復号化におけるセッションの流れ図である。
−図4は、本発明による暗号化方法を用いる署名の発生/検証セッションの流れ図である。
【0027】
本発明をよりよく理解するために、いくつかの数学的前置きをする必要がある。
【0028】
説明において、以下の数学的記号表記を使用する。
【0029】
(1)aが正負の整数、bが正の整数であるとき、a mod b(a モジュロ b)は、bを法とするaの剰余を示し、b未満の一意の整数となり、bは(a−a mod b)を整除する。
【0030】
(2)(Z/bZ)は、bを法とする剰余の集合を示し、加算剰余についてのグループを形成する。
【0031】
(3)(Z/bZ)*は、bを法とする逆数の集合を示し、乗算剰余についてのグループを形成する。
【0032】
(4)(Z/bZ)* の要素aの次数は、aord(a,b)=1 mod bとなるような最小自然数ord(a,b)である。
【0033】
(5)PPCM(a,b)は、aとbの最小公倍数を指す。
【0034】
(6)PGCD(a,b)は、aとbの最大公約数を指す。
【0035】
(7)λ(a)は、aのオイラー表示を指す。
もし、a=p・qならば、λ(a)=PPCM(p−1,q−1)
【0036】
(8)下記の剰余等式系の、周知の中国剰余定理を実施して得られた一意の解を、x=TRC(a1,・・・ak,b1,・・・bk)で表す。
x=a1 mod b1
x=a2 mod b2
・・・
x=ak mod bk
ここで、整数aiとbiは与えられ、また、i≠jである∀i,jについて、PGCD(bi,bj)=1である。
【0037】
(9)数aのバイナリ・サイズは、aが書き込まれているビット数であることに再度触れておく。
【0038】
数nを、任意の大きさの整数とする。集合Un={x<n2 /x=1 mod n}は、(Z/n2Z)*の乗算サブグループである。
【0039】
集合Unに対して、次のように定義された関数をlognとする。
【0040】
logn(x)=(x−1)/n
【0041】
この関数は次の特性を有する。
∀x∈Un,∀y∈Un,logn(xy mod n2)=logn(x)+logn(y)mod n
【0042】
結果として、gがUnに属する任意の整数であるとき、全ての数mに対して、0≦m<nが得られる。
logn(gm mod n2)=m・logn(g)mod n2
【0043】
この数学的特性が、以下に説明する本発明の方法で実施される暗号化方法の基礎となる。
【0044】
図1は非対称暗号化方法を用いる、暗号通信システムを示している。それは通信チャネル1上に、例ではAとBである通信装置を備えている。例において、双方向チャネルを示した。それぞれの装置は、一対の公開鍵Kおよび秘密鍵K’を含んでいる。
【0045】
公開鍵は、アドレス帳のような公開ファイル2内で公開され、それぞれの装置が参照することができる。したがって、装置Aの公開鍵KAと装置Bの公開鍵KBは、この公開ファイル内にある。
【0046】
それぞれの装置の秘密鍵K’は、装置によって秘密の仕方で、典型的には不揮発性メモリの保護領域内に保存される。したがって、装置Aは秘密メモリ内にその秘密鍵K’Aを保存し、また装置Bは秘密メモリ内にその秘密鍵K’Bを保存している。それらは公開鍵も保存しているが、特定のアクセス保護のないメモリ領域内に保存している。
【0047】
かかるシステムでは、装置Aは装置Bの公開鍵KBを用いてメッセージmを暗号文cAに暗号化でき、そして装置Bは秘密に保存されている自己の秘密鍵K’Bを用いてcAを復号化することが出来る。逆に装置Bは装置Aの公開鍵KAを用いてメッセージmを暗号文cBに暗号化でき、装置Aは、秘密に保存している自己の秘密鍵K’Aを用いてcBを復号化できる。
【0048】
典型的に、それぞれの装置は図2に示したごとく、少なくとも処理手段10、すなわち計算のために特に異なるレジスタRを有する中央処理装置(CPU)と、通信チャネルとの通信インターフェース11と、記憶手段を備えている。これらの記憶手段は、一般的にプログラムメモリ12(ROM、EPROM、EEPROM)と、作業メモリ(RAM)13を含んでいる。実際に、それぞれの装置は、それらの秘密データを、プログラムメモリ内に設けられたアクセス保護領域120内に保存し、それらの公開データをこのメモリ内の通常アクセス領域内に保存する。作業メモリは、計算に必要な時間、暗号化するメッセージ、復号化する暗号文、あるいはさらに中間計算結果を一時的に保存することを可能にする。
【0049】
このように、処理および記憶手段は、アプリケーションに関連するプログラムの実行、とくに本発明によるメッセージの暗号化/解読および/または署名の発生/検証のための暗号化方法の実施に対応する計算の実行を可能にする。これらの計算は、以下に詳細に見るごとく、特に、冪乗、剰余、および剰余の逆変換を含んでいる。
【0050】
装置はさらに、特定の変型実施態様において、上記の計算に介入することのある乱数または擬似乱数rの発生器14を含むことができ、該発生器は、本発明による全ての変型実施態様を実現するために必ずしも必要ではなく、図2において点線で囲まれている。
【0051】
装置のこれら全ての手段は、アドレス・データバス15に接続される。
【0052】
本発明に使用されたかかる装置は周知であり、例えば、RSAを用いる従来技術の暗号通信システムに使用されているものに相当する。暗号通信システムの実際の例は、金融取引管理のための銀行サーバーとチップカードで構成されたシステムである。しかし他にも多くの用途分野、例えば電子商取引に関連する用途分野がある。
【0053】
次に、図3に示した流れ図に関連して、本発明の第一の実施態様を詳細に説明する。
【0054】
この流れ図は、通信チャネル20上の装置Aと装置Bの間の通信シーケンスを示している。これらの装置は、図2との関連において説明した処理、記憶、通信手段を少なくとも備えている、
【0055】
本発明による暗号化方法は、公開鍵Kおよび秘密鍵K’の発生法を有する。
【0056】
本発明によれば、この公開鍵および秘密鍵の発生法は、1990年1月に日本にて発行された”Systems & Computers”の”a method for rapid RSA Key generation” (YASUKO GOTHO著,XP000177817,ISSN:0882−1666,21巻8号11−20ページ)にて周知であり、次の過程を有する。
・相異なる隣り合った2つの大きな素数pとqの選択
・積p・qに等しい数nの計算
・数λ(n)=PPCM(p−1,q−1)、すなわち数nのカーマイケル関数の計算
・次の2つの条件を満たす、0≦g<nである数gの決定
a)gはnを法とする逆数になれる。
b)ord(g,n)= mod n。
【0057】
この条件b)は、整数0からn2の集合(Z/n2Z)* 内の数gの次数が、上述の注記に従って、数nのゼロでない倍数であることを示している。
【0058】
このとき公開鍵Kは数nと数gで形成される。秘密鍵は数p,qとλ(n)で形成されるか、あるいは数pとqだけで形成され、λ(n)は秘密鍵を用いる毎に再計算することができる。
【0059】
この方法によって、それぞれの装置の公開鍵および秘密鍵を発生させる。この発生は、当該装置と用途分野によって、装置自体によって、または外部装置によって実施できる。
【0060】
したがって、それぞれの装置、例えば装置Aは、メモリ内に自己の公開鍵KA=(nA,gA)を保存し、自己の秘密鍵K’A=(pA,qA)を秘密に保存する。
【0061】
くわえて、公開鍵は一般にアクセス可能なファイル内に置かれる。
【0062】
本発明によると、以下に示すごとく、本発明はgに特定の値を付与することにある。実際、可能な場合、すなわちg=2が本発明による署名の発生法の条件a)及びb)を満たすとき、g=2を選ぶのが有利である。
【0063】
このとき、装置Aで実施される本発明の暗号化方法の第一の実施態様による暗号化方法は、装置Bにメッセージを送信するために、0≦m<nで、以下の過程を実現する。
・第二の装置Bの公開鍵KBを用いて装置Aが実施する暗号化方法のパラメータnとgの教示:n=nB,g=gB
・暗号文c=gm mod n2の計算
・通信チャネル上での暗号文cの伝送
【0064】
したがって、本発明の第一の実施態様による暗号化方法は、公開鍵のパラメータgを取り、それをm乗し、n2を法とする剰余を計算することから成る。ここで分かるように、RSAにおいては、メッセージmが冪乗されるが、本発明においては、メッセージmが指数として用いられる。
【0065】
暗号化されたメッセージ、すなわち暗号文cを受信する装置Bは、このとき、自己の秘密鍵のパラメータを用いて本発明による復号化方法を実施する。この復号化方法には以下の計算が含まれる。
【0066】
・次のような数mの計算
【数1】
Figure 0004137385
ここで
logn(x)=(x−1)/n
【0067】
g=2のとき、gの冪乗計算が容易になることが分かる。したがって好ましくは、可能な限り常にg=2とする。言い換えれば、鍵の発生法はg=2が条件a)及びb)を満たすかどうかを試すことから始まる。
【0068】
復号化方法の計算の異なる変型を実施することもでき、それにより、装置が多数の暗号文を解読しなければならないときに、特定の量を予め計算して、それを装置内に秘密に保存することが可能になる。反対に、装置の秘密メモリ領域(図2の領域120)はもっと拡張されなければならず、というのも、このとき、パラメータpおよびqに加えて、追加のパラメータを保存しなければならないからである。これはある変型または別の変型の選択に影響しないわけではない。実際、メモリ保護領域の実現は高価であり、したがって、(メモリ)容量は一般的に制限されるが、いわゆる低価格デバイス(例えば、幾つかのタイプのチップカード)の場合は特に制限される。
【0069】
復号化方法の第一の変型実施態様において、装置、この場合はBは、量:
αn,g=logn(gλ (n)mod n2-1 mod n
を1度だけ予め計算して、それをメモリ内に秘密に保存する。
【0070】
このようにして、装置が受信するそれぞれのメッセージの解読に必要な時間を、それだけ短縮する。実際、装置Bがこの変型復号化方法の段階を実行するとき、後は次の計算するだけでよい。
m=logn(cλ (n)mod n2)αn,g mod n
【0071】
本発明による復号化方法の第二の変型実施態様において、効率を高めるために(計算の迅速性)、中国剰余定理の利用を考慮に入れる。
【0072】
復号化方法のこの第二の変型の段階において、装置は下記の(復号化)計算を実行する。
【0073】
1. mp=logp(cp-1 mod p2)logp(gp-1 mod p2-1 mod p
2. mq=logq(cq-1 mod q2)logp(gq-1 mod q2-1 mod q
3. m=TRC(mp,mq,p,q)
ここで
logp(x)=(x−1)/p
logq(x)=(x−1)/q
【0074】
この場合、つまり装置が極めて多数のメッセージを復号化することになる場合、装置は、さらに、下記の量を1回だけ予め計算することになる。
αp,g=logp(gp-1 mod p2-1 mod p
αq,g=logq(gq-1 mod q2-1 mod q
【0075】
このとき装置は、これらの量を秘密データとして保存しなければならない。
【0076】
復号化方法の段階の際に実施された計算は次のようになる。
1. mp=logp(cp-1 mod p2)αp,g mod p
2. mq=logq(cq-1 mod q2)αq,g mod q
3. m=TRC(mp,mq,p,q)
【0077】
先に明らかにしたごとく、復号化計算のこれら全ての変型は、装置が極めて多数のメッセージを復号化するようになる場合、および処理時間の節約が、全ての秘密データを保存するための保護領域の最大メモリ容量を補う場合に有利になる。どの変型を選ぶかは、実際には、対象となる用途分野、およびコストや処理時間の制約との兼ね合いになる。
【0078】
本発明の第二の実施態様は、同一の伝送メッセージmについて計算される暗号文cが毎回異なるように、乱数(または擬似乱数)発生器によって与えられる乱数を暗号化方法において使用することから成る。したがって、通信システムの安全性はより高くなる。復号化方法に変化はない。
【0079】
本発明のこの第二の実施態様には2つの変型が含まれる。
【0080】
第一の変型では、暗号文cは次の計算によって得られる: c=gm+nr mod n2
【0081】
第二の変型では、暗号文cは次の計算によって得られる: c=gm n mod n2
【0082】
この第二の変型は、実際には、第一の変型より長い処理時間を必要とするが、より高い安全性を提供する。
【0083】
本発明の第三の実施態様では、(Z/nZ)* 内のgの次数が、小さな位数の整数になるようにし、それは別の鍵発生法を実施しすることで得られる。
【0084】
パラメータgの次数に対するかかる条件によって、実際には数nの位数に関して2次になる(n2関数)復号化方法の計算の複雑さが減じられる。
【0085】
本発明のこの第三の実施態様では、公開鍵および秘密鍵の発生方法は次のようになる。
・整数uと、uが(p−1)を整除し且つ(q−1)を整除するような相異なる隣り合った2つの大きな素数p及びqとを秘密に選択すること
・積p・qに等しい数nの計算
・数λ(n)=PPCM(p−1,q−1)、すなわち数nのカーマイケル表示の計算
・次の2つの条件を満たす、0≦h<n2である数hの決定
a)hはn2を法とする逆数になれる
b)ord(h,n2)=0 mod n
・数g=hλ (n)/u mod n2 の計算
【0086】
このとき公開鍵Kは数nと数gで形成される。秘密鍵は、装置内に秘密に保存されている整数(p,q,u)で構成される。
【0087】
好ましくは、(gの計算を容易にするため、すなわちh=2が条件a)及びb)を満たすとき)可能な限りh=2を選択する。
【0088】
もし、u=PGCD(p−1,q−1)であるならば、この数は装置によりpとqから求められるので、保存する必要はない。
【0089】
好ましくは、方法の安全性向上のために、最初に位数の小さい、典型的には160ビットのuを選択する。小さな位数のuを選択することによって、復号化計算が容易になることが分かるだろう。
【0090】
この第三の実施態様では、メッセージmを暗号化するための暗号化方法は、本発明の第一の実施態様について先に述べたものと同一であり、暗号文はc=gm mod n2に等しい。
【0091】
先に述べた本発明の第二の実施態様の第一の変型にしたがって、乱数rを用いて暗号文cを計算することもできる。このときrは、uと同じ位数の、ランダム整数であり、暗号文は次の計算によって得られる:c=gm+nr mod n2
【0092】
暗号化方法の前述のいずれかの実施によって計算した暗号文cは、それを解読しなければならない装置Bに送信される。メッセージを受信する装置Bによる復号化方法の実施は、少し異なっている。
【0093】
実際、暗号文cから数mを見つけるために、復号化の段階において装置内で実行される計算は、次のようになる。
【数2】
Figure 0004137385
【0094】
必要な処理時間を早めることができる計算の変型は、先のように適用することができる。
【0095】
したがって、第一の変型では、量:
βn,g=logn(gu mod n2-1 mod n
を1度だけ予め計算して、それをメモリ内に秘密に保存する。
【0096】
受信した暗号文cの復号化の段階の場合には、装置は次の計算を実行するだけでよい。
m=log(cu mod n2)βn,g mod n
【0097】
第二の変型では、復号化計算を実行するために既に見てきた関数logpとlogqを用いて、中国剰余定理を利用する。
【0098】
受信した暗号文cの復号化方法のこの変型の段階の場合、このとき装置は次の計算を実行する。
1. mp=logp(cu mod p2)logP(gu mod p2-1 mod p
2. mq=logq(cu mod q2)logq(gu mod q2-1 mod q
3. m=TRC(mp,mq,p,q)
【0099】
第三の変型では、次の量:
βp,g=log(gu mod p2-1 mod p
βq,g=log(gu mod q2-1 mod q
を予め計算し、それらを装置内に秘密に保存することによって、第二の変型による暗号文cの解読に必要な処理時間をさらに早める。
【0100】
受信した暗号文cの復号化方法のこの第三の変型の段階の場合、このとき装置は次の計算を実行するだけでよい。
1. mp=logp(cu mod p2 βp,g mod p
2. mq=logq(cu mod q2 βq,g mod q
3. m=TRC(mp,mq,p,q)
【0101】
本発明の第四の実施態様では、暗号化方法と復号化方法は、n2を法とする整数グループに対する置換であるという特性を有する。言い換えれば、メッセージmがkビットで表されるとき、mに暗号化方法を適用して得られた暗号文cと、mに復号化方法を適用して得られた署名sは、kビットになる。
【0102】
この特性は、暗号化方法に、暗号化/復号化にも、署名発生/検証にも使えるという追加の特性を与える。この場合、復号化方法は署名発生法として、暗号化方法は署名検証法として用いられる。
【0103】
この第四の実施態様では、公開鍵および秘密鍵の発生法は本発明の第一の実施態様のものと同じである:K=(n,g)およびK’=(p,q,λ(n))またはK’=(p,q)
【0104】
装置Aは、暗号化したメッセージmを装置Bに送信しようとするとき、装置Bの公開鍵(n,g)を取得し、次に暗号化方法の段階において0≦m<n2である数mに適用された下記の計算を、このとき実行する。
1. m1=m mod n
2. m2=(m−m1)/n (ユークリッド分割)
3. C=gm1 2 m mod n2
【0105】
この暗号文cが装置Bに送信される。
【0106】
したがって、装置Bが、m1,m2、最終的にmを見つけるためには、対応する復号化方法を暗号文に適用しなければならない。本発明の第四の実施態様によるこの復号化方法は下記の計算を実施することから成る。
1. m1=logn(cλ (n)mod n2)・logn(gλ (n)mod n2-1 mod n
2. w=cg-m1 mod n
3. m2=w1/n mod λ (n) mod n
4. m=m1+nm2
【0107】
先に述べたごとく、本発明のこの第四の実施態様による復号化方法の変型を適用することができ、それにより、与えられたメッセージの復号化に必要な処理時間を短縮することができる。それは装置が多数のメッセージを復号化しなければならないときに有利である。
【0108】
第一の変型は下記の量を予め計算することから成る。
αn,g=logn(gλ (n) mod n2-1 mod n
γn=1/n mod λ(n)
装置Bは1度だけ予め計算して、それをメモリ内に秘密に保存する。
【0109】
この第一の変型によって受信した暗号文cの復号化の新たな段階ごとに、装置Bは次の計算をすればよい。
1. m1=logn(cλ (n)mod n2)αn,g mod n
2. w=cg-m1 mod n
3. m2=wγ n mod n
4. m=m1+nm2
【0110】
第四の実施態様による復号化方法の第二の変型実施態様では、中国剰余定理を使用する。
【0111】
この第二の変型に従って暗号文cを復号化しようとする装置は、次に、下記の連続する計算を実行する。
1. m1,p=logp(cp-1 mod p2)logp(gp-1 mod p2-1mod p
2. wp=cg-m1,p mod p
3. m2,p=wp 1/q mod p-1 mod p
4. m1,q=logq(cq-1 mod q2)logq(gq-1 mod q2-1 mod q
5. wq=cg-m1,q mod q
6. m2,q=wq 1/p mod q-1 mod q
7. m1=TRC(m1,p,m2,p,p,q)
8. m2=TRC(m1,q,m2,q,p,q)
9. m=m1+pqm2
【0112】
第三の変型では、この第二の変型の復号化の処理時間をさらに向上させるために、装置Bは下記の量を1度だけ予め計算して、それらをメモリ内に秘密に保存する。
αp,g=logp(gp-1 mod p2-1 mod p
αq,g=logq(gq-1 mod q2-1 mod q
γp=1/q mod p−1
γq=1/p mod q−1
【0113】
この第三の変型によって暗号文cを復号化しようとする装置は、次の計算をするだけでよい。
1. m1,p=logp(cp-1 mod p2)αp,g mod p
2. wp=cg-m1,p mod p
3. m2,p=wp γ p mod p
4. m1,q=logq(cq-1 mod q2)αq,g mod q
5. wq=cg-m1,q mod q
6. m2,q=wq γ q mod q
7. m1=TRC(m1,p,m2,p,p,q)
8. m2=TRC(m1,q,m2,q,p,q)
9. m=m1+pqm2
【0114】
上述の本発明の第四の実施態様は、署名の発生/検証を可能にする。図4の流れ図に示したごとく、装置Bが装置Aへのメッセージを表す数mの署名sを発生しなければならないとき、署名発生法として、自己の秘密鍵を用いた復号化方法を適用する:s=DK'B(m)。
【0115】
署名sを受信し、かつメッセージmを知っている装置Aは、署名が正しいことを検証するが、該検証は、公開鍵を用いて署名sに暗号化方法を適用して得られた量vを計算することで行われる:v=EKB(s)。署名が正しいときv=mになる。
【0116】
第四の実施態様の復号化方法の全ての変型実施態様は、処理時間を早めることができるが、この署名の発生/検証においても適用できる。
【0117】
上述の発明は、メッセージの暗号化および/または署名を可能にしたいと望む全てのシステムに適用できる。本発明は、より高い安全性を望むか、あるいは処理速度の高速化を求めるかによって、異なる用途分野への応用可能性が広がることを可能にする。なお、この点に関して、本発明の第三の実施態様は、計算の複雑性が2次(n2関数)にすぎないが、従来技術の全ての方法がもっと高次の複雑性(n3関数)を有する限りにおいて、速度の面で本当の有利さを提供するものである。かかる利点は携帯式の装置、例えば、特にチップカードを用いる全ての用途分野、また低価格の装置に特に有利である。
【0118】
最後に、本発明の技術における当業者には自明なごとく、形状および/または細部の様々な変更が可能である。とくに、署名を暗号化することができ、あるいはさらにメッセージmにハッシュ関数を適用してから、その署名を計算することもできる。これにより、たとえメッセージmが変わらないとしても、毎回署名を変えることが可能となる。
【図面の簡単な説明】
【図1】 図1は、非対称型暗号通信システムの機能図である。
【図2】 図2は、本発明による暗号通信システムに使用された通信装置の機能図である。
【図3】 図3は、本発明による暗号化方法を用いるメッセージの暗号化/復号化におけるセッションの流れ図である。
【図4】図4は、本発明による暗号化方法を用いる署名の発生/検証セッションの流れ図である。

Claims (23)

  1. 信チャネル上でメッセージを交換するのに適した、通信インターフェースと、データ処理手段と、記憶手段とを有する装置による、公開鍵および秘密鍵の発生方法であって、秘密鍵が前記装置のプログラムメモリの保護領域に保存され、公開鍵が一般に流布できるように、公開鍵が前記装置のアクセス保護のないメモリ領域内に保存され、前記装置のデータ処理手段が以下のデータ処理、すなわち、
    ・相異なる隣り合った2つの素数pとqの選択
    ・積p・qに等しい数nの計算
    ・数(p−1)と(q−1)の最小公倍数の計算:λ(n)=PPCM(p−1,q−1)
    ・次の2つの条件を満たす、0≦g<nである数gの決定
    a)gはnを法とする逆数になれる
    b)ord(g,n)= mod n
    実行し、前記装置の公開鍵は、前記データ処理によって導き出されたパラメータnとgから形成され、その秘密鍵は前記データ処理によって導き出されたパラメータp、q、及びλ(n)から、あるいはパラメータpとqから形成されることを特徴とする、公開鍵および秘密鍵の発生方法。
  2. 前記データ処理における数gの決定処理において、g=2が前記条件a)及びb)を満たすならばg=2と決定することを特徴とする、請求項1に記載の公開鍵および秘密鍵の発生方法。
  3. 請求項1または2に記載の発生方法によって発生した公開鍵および秘密鍵による暗号通信システムであって、該システムが通信チャネルと、第一および第二の通信装置(A,B)とを有し、それぞれの通信装置が通信インターフェースと、データ処理手段と、記憶手段とを有し、第一の通信装置(A)のデータ処理手段が、その記憶手段に記憶された数m、0≦m<n(数mはメッセージを表している)に対して次の過程からなる暗号化処理、すなわち
    ・パラメータnとgに第二の通信装置(B)の公開鍵の値(n,g)を割り当てるための、第二の通信装置の公開鍵のパラメータ(n,g)の取得
    ・暗号文c=g mod nの計算
    実行し該暗号化処理によって計算された暗号文cが、第二の通信装置に向けて通信チャネルを介して伝送されることを特徴とする、暗号通信システム。
  4. 第一の通信装置がさらにランダム整数rの発生器を備え、前記第一の通信装置のデータ処理手段が、
    前記発生器からランダム整数r出し
    前記暗号化処理における暗号文c=g mod の計算の代わりに、の計算を実することによって暗号文cを計算する:c=gm+nr mod(n
    ことを特徴とする、請求項に記載の暗号通信システム。
  5. 第一の通信装置がさらにランダム整数rの発生器を備え、前記第一の通信装置のデータ処理手段が、
    前記発生器からランダム整数r出し
    前記暗号化処理における暗号文c=g mod の計算の代わりに、の計算を実することによって暗号文cを計算する:c=g mod(n
    ことを特徴とする、請求項に記載の暗号通信システム。
  6. 第二の通信装置のデータ処理手段が、前記暗号文cを復号化するための次の計算からなる復号化処理を実することを特徴とする、請求項に記載の暗号通信システム。
    m=log(cλ(n) mod n)・log(gλ(n) mod n−1 mod n
    ここで、(x=1 mod n)を満たす任意の整数xに対し、
    log(x)=(x−1)/nである。
  7. 第二の通信装置のデータ処理手段が、次の量α n,g を予め計算し、それをプログラムメモリの保護領域内に保ることを特徴とする、請求項に記載の暗号通信システム。
    αn,g=log(gλ(n) mod n−1 mod n
  8. 前記復号化処理の代わりに第二の通信装置のデータ処理手段が中国剰余定理TRCを用いて下記の計算過程からなる復号化処理を実行することを特徴とする、請求項に記載の暗号通信システム。
    =log(cp−1mod p)・log(gp−1 mod p−1 mod p
    =log(cq−1mod q)・log(gq−1 mod q−1 mod q
    m=TRC(m,m,p,q)
    ここで、(x=1 mod i)を満たす任意の整数xに対し、log およびlogは次のようなものである。
    log(x)=(x−1)/
  9. 第二の通信装置のデータ処理手段が、次の量α p,g およびα q,g を予め計算し、それらをプログラムメモリの保護領域内に保存することを特徴とする、請求項に記載の暗号通信システム。
    αp,g=log(gp−1 mod p−1 mod p
    αq,g=log(gq−1 mod q−1 mod q
  10. 請求項1または2に記載の発生方法によって発生した公開鍵および秘密鍵による暗号通信システムであって、該システムが通信チャネルと、第一および第二の通信装置(A,B)とを有し、それぞれの通信装置が通信インターフェースと、データ処理手段と、記憶手段とを有し、第一の通信装置(A)のデータ処理手段が、その記憶手段に記憶された数m、0≦m<n (数mはメッセージを表している)に対して次の過程からなる暗号化処理、すなわち
    ・パラメータnとgに第二の通信装置の公開鍵の値(n,g)を割り当てるための、第二の通信装置(B)の公開鍵のパラメータK=(n,g)の取得
    ・下記の計算1から3の実行
    1. m=m mod n
    2. m=(m−m1)/n
    3. c=gm1 mod n
    実行し該暗号化処理によって計算された暗号文cが通信チャネルを介して第二の通信装置に向て伝送されることを特徴とする、暗号通信システム。
  11. 第二の通信装置(B)が暗号文cを受信し、第二の通信装置のデータ処理手段が次の計算過程からなる復号化処理を実することを特徴とする、請求項10に記載の暗号通信システム。
    1. m=log(cλ(n) mod n)・log(gλ(n)mod n−1 mod n
    2. w=cg−m1 mod n
    3. m=w1/n mod λ(n) mod n
    4. m=m+nm
  12. 第二の通信装置のデータ処理手段が、次の量α n,g およびγ を予め計算し、それらをプログラムメモリの保護領域内に保存することを特徴とする、請求項1に記載の暗号通信システム。
    αn,g=log(gλ(n) mod n−1 mod n
    γ=1/n mod λ(n)
  13. 前記復号化処理の代わりに第二の通信装置のデータ処理手段が中国剰余定理を用いて下記の計算過程からなる復号化処理を実行することを特徴とする、請求項1に記載の暗号通信システム。
    1. m1,p=log(cp−1 mod p)・log(gp−1 mod p−1 mod p
    2. w=cg−m1,p mod p
    3. m2,p=w 1/q mod p−1 mod p
    4. m1,q=log(cq−1 mod q)・log(gq−1 mod q−1 mod q
    5. w=cg−m1,q mod q
    6. m2,q=w 1/p mod q−1 mod q
    7. m=TRC(m1,p,m2,p,p,q)
    8. m=TRC(m1,q,m2,q,p,q)
    9. m=m+pqm
    ここで、(x=1 mod i)を満たす任意の整数xに対し、log およびlogは次のようなものである。
    log(x)=(x−1) / i
  14. 第二の通信装置のデータ処理手段次の量α p,g 、α q,g 、γ およびγ を予め計算し、それらをプログラムメモリの保護領域内に保存することを特徴とする、請求項1に記載の暗号通信システム。
    αp,g=log(gp−1 mod p−1 mod p
    αq,g=log(gq−1 mod q−1 mod q
    γ=1/q mod p−1
    γ=1/p mod q−1
  15. 前記復号化処理がメッセージmの署名sを計算するために使用され、前記暗号化処理が前記署名を検証するために使用されることを特徴とする、請求項1から1のいずれか一つに記載の暗号通信システム。
  16. 通信チャネル上でメッセージを交換するのに適した、通信インターフェースと、データ処理手段と、記憶手段とを有する装置による、公開鍵および秘密鍵の発生方法であって、秘密鍵が前記装置のプログラムメモリの保護領域内に保存され、公開鍵が一般に流布できるように、公開鍵が前記装置のアクセス保護のないメモリ領域内に保存され、前記装置のデータ処理手段が以下のデータ処理、すなわち、
    ・整数uと、uが(p−1)を整除し且つ(q−1)を整除するような相異なる隣り合った2つの素数pとqの選択、
    ・積p・qに等しい数nの計算、
    ・数(p−1)と(q−1)の最小公倍数の計算:λ(n)=PPCM(p−1,q−1)、
    ・次の2つの条件を満たす、0≦h<n である数hの決定、
    a)hはn を法とする逆数になれる
    b)ord(h,n )=0 mod
    ・数g=h λ(n)/u mod n の計算、
    を実行し、前記装置の公開鍵は、前記データ処理によって導き出されたパラメータnとgから形成され、その秘密鍵は前記データ処理によって導き出されたパラメータp、q、及びuから形成されることを特徴とする、公開鍵および秘密鍵の発生方法。
  17. 前記データ処理における数hの決定処理において、h=2が前記条件a)及びb)を満たすならばh=2と決定することを特徴とする、請求項16に記載の公開鍵および秘密鍵の発生方法。
  18. 請求項16または17に記載の発生方法によって発生した公開鍵および秘密鍵による暗号通信システムであって、該システムが通信チャネルと、第一および第二の通信装置(A,B)とを有し、それぞれの通信装置が通信インターフェースと、データ処理手段と、記憶手段とを有し、第一の通信装置(A)のデータ処理手段が、その記憶手段に記憶された数m、0≦m<n(数mはメッセージを表している)に対して次の過程からなる暗号化処理すなわち、
    ・パラメータnとgに第二の通信装置(B)の公開鍵の値(n,g)を割り当てるための、第二の通信装置(B)の公開鍵のパラメータ(n ,g )の取得
    ・暗号文c=g mod nの計算
    実行し該暗号化処理によって計算された暗号文cが、第二の通信装置に向けて通信チャネルを介して伝送されることを特徴とする、暗号通信システム。
  19. 通信装置がさらにランダム整数rの発生器をえ、前記第一の通信装置のデータ処理手段が、
    前記発生器からuと同じ位数のランダム整数r出し
    前記暗号化処理における暗号文c=g mod の計算の代わりに、の計算を実することによって暗号文cを計算する:c=gm+nr mod(n
    ことを特徴とする、請求項1に記載の暗号通信システム。
  20. 第二の通信装置のデータ処理手段が、次の計算からなる前記受信暗号文cの復号化処理を実することを特徴とする、請求項1または1に記載の暗号通信システム。
    m=log(cmod n)・log (g mod n−1 mod n
  21. 第二の通信装置のデータ処理手段が、次の量β n,g を予め計算し、それをプログラムメモリの保護領域内に保存することを特徴とする、請求項20に記載の暗号通信システム
    βn,g=log(g mod n−1 mod n
  22. 前記復号化処理の代わりに第二の通信装置のデータ処理手段が中国剰余定理を用いて下記の計算過程からなる復号化処理を実行することを特徴とする、請求項20に記載の暗号通信システム。
    1. m=log(c mod p)・log(g mod p−1 mod p
    2. m=log(c mod q)・log(g mod q−1 mod q
    3. m=TRC(m,m,p,q)
    ここで、(x=1 mod i)を満たす任意の整数xに対し、log およびlogは次のようなものである。
    log(x)=(x−1)/
  23. 第二の通信装置のデータ処理手段が、次の量β p,g およびβ q,g を予め計算し、それらをプログラムメモリの保護領域内に保存することを特徴とする、請求項22に記載の暗号通信システム。
    βp,g=log (g mod p−1 mod p
    βq,g=log (g mod q−1 mod q
JP2000594220A 1999-01-14 1999-11-25 公開鍵および秘密鍵による暗号化方法 Expired - Lifetime JP4137385B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR99/00341 1999-01-14
FR9900341A FR2788650B1 (fr) 1999-01-14 1999-01-14 Procede cryptographique a cles publique et privee
PCT/FR1999/002918 WO2000042734A1 (fr) 1999-01-14 1999-11-25 Procede cryptographique a cles publique et privee

Publications (2)

Publication Number Publication Date
JP2002535878A JP2002535878A (ja) 2002-10-22
JP4137385B2 true JP4137385B2 (ja) 2008-08-20

Family

ID=9540854

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000594220A Expired - Lifetime JP4137385B2 (ja) 1999-01-14 1999-11-25 公開鍵および秘密鍵による暗号化方法

Country Status (9)

Country Link
US (1) US7054444B1 (ja)
EP (1) EP1151576B1 (ja)
JP (1) JP4137385B2 (ja)
CN (1) CN1338166A (ja)
AU (1) AU1390200A (ja)
DE (1) DE69935455T2 (ja)
ES (1) ES2286910T3 (ja)
FR (1) FR2788650B1 (ja)
WO (1) WO2000042734A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11849019B2 (en) 2019-02-25 2023-12-19 Nec Corporation Encryption system, key generation apparatus, key generation method, key generation program, and homomorphic operation apparatus

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10061697A1 (de) * 2000-12-12 2002-06-27 Infineon Technologies Ag Verfahren und Vorrichtung zum Ermitteln eines Schlüsselpaars und zum Erzeugen von RSA-Schlüsseln
US7141822B2 (en) * 2001-02-09 2006-11-28 Semiconductor Energy Laboratory Co., Ltd. Semiconductor device and method for manufacturing the same
ITTO20010694A1 (it) * 2001-07-13 2003-01-13 Univ Roma Metodo di crittografia.
GB2391772B (en) * 2002-08-10 2005-05-11 Clive Neil Galley Public-key cryptosystem
US20050157872A1 (en) * 2003-11-12 2005-07-21 Takatoshi Ono RSA public key generation apparatus, RSA decryption apparatus, and RSA signature apparatus
JP4842276B2 (ja) * 2004-11-11 2011-12-21 サーティコム コーポレーション 楕円曲線上の新しいトラップドア1方向性関数と、その、より短い署名及び非対称暗号化への応用
FR2879866B1 (fr) * 2004-12-22 2007-07-20 Sagem Procede et dispositif d'execution d'un calcul cryptographique
JP4758110B2 (ja) * 2005-02-18 2011-08-24 株式会社エヌ・ティ・ティ・ドコモ 通信システム、暗号化装置、鍵生成装置、鍵生成方法、復元装置、通信方法、暗号化方法、暗号復元方法
US7774607B2 (en) * 2006-12-18 2010-08-10 Microsoft Corporation Fast RSA signature verification
US8903090B2 (en) * 2008-04-29 2014-12-02 International Business Machines Corporation Securely classifying data
US8170216B2 (en) * 2008-06-18 2012-05-01 Apple Inc. Techniques for validating and sharing secrets
US8630422B2 (en) * 2009-11-10 2014-01-14 International Business Machines Corporation Fully homomorphic encryption method based on a bootstrappable encryption scheme, computer program and apparatus
US8861716B2 (en) 2010-03-30 2014-10-14 International Business Machines Corporation Efficient homomorphic encryption scheme for bilinear forms
US8903083B2 (en) 2010-08-16 2014-12-02 International Business Machines Corporation Fast evaluation of many polynomials with small coefficients on the same point
US9083526B2 (en) 2011-04-29 2015-07-14 International Business Machines Corporation Fully homomorphic encryption
US9281941B2 (en) 2012-02-17 2016-03-08 International Business Machines Corporation Homomorphic evaluation including key switching, modulus switching, and dynamic noise management
JP5965873B2 (ja) * 2013-08-29 2016-08-10 日本電信電話株式会社 暗号文生成装置、暗号文生成方法およびプログラム
CN103701586A (zh) * 2013-11-07 2014-04-02 金硕澳门离岸商业服务有限公司 获取密钥的方法和装置
US10333696B2 (en) 2015-01-12 2019-06-25 X-Prime, Inc. Systems and methods for implementing an efficient, scalable homomorphic transformation of encrypted data with minimal data expansion and improved processing efficiency
US10690904B2 (en) 2016-04-12 2020-06-23 Stryker Corporation Multiple imaging modality light source
US20190318118A1 (en) * 2018-04-16 2019-10-17 International Business Machines Corporation Secure encrypted document retrieval
US10289816B1 (en) 2018-06-08 2019-05-14 Gsfm Llc Methods, systems, and devices for an encrypted and obfuscated algorithm in a computing environment
CN111683071B (zh) * 2020-05-29 2023-02-28 百度在线网络技术(北京)有限公司 区块链的隐私数据处理方法、装置、设备以及存储介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5199070A (en) * 1990-12-18 1993-03-30 Matsushita Electric Industrial Co., Ltd. Method for generating a public key
JPH10301491A (ja) * 1997-04-28 1998-11-13 Ibm Japan Ltd 暗号通信方法とシステム
DE69840959D1 (de) * 1997-12-17 2009-08-20 Nippon Telegraph & Telephone Verschlüsselungs- und Entschlüsselungsvorrichtungen für Kryptosysteme mit öffentlichem Schlüssel und Aufzeichnungsmedium mit darauf gespeicherten zugehörigen Verarbeitungsprogrammen.
US6345098B1 (en) * 1998-07-02 2002-02-05 International Business Machines Corporation Method, system and apparatus for improved reliability in generating secret cryptographic variables

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11849019B2 (en) 2019-02-25 2023-12-19 Nec Corporation Encryption system, key generation apparatus, key generation method, key generation program, and homomorphic operation apparatus

Also Published As

Publication number Publication date
US7054444B1 (en) 2006-05-30
JP2002535878A (ja) 2002-10-22
ES2286910T3 (es) 2007-12-01
AU1390200A (en) 2000-08-01
FR2788650B1 (fr) 2001-02-16
EP1151576A1 (fr) 2001-11-07
DE69935455D1 (de) 2007-04-19
WO2000042734A1 (fr) 2000-07-20
FR2788650A1 (fr) 2000-07-21
EP1151576B1 (fr) 2007-03-07
DE69935455T2 (de) 2007-11-29
CN1338166A (zh) 2002-02-27

Similar Documents

Publication Publication Date Title
JP4137385B2 (ja) 公開鍵および秘密鍵による暗号化方法
EP0963635B1 (en) Cyclotomic polynomial construction of discrete logarithm cryptosystems over finite fields
EP0503119B1 (en) Public key cryptographic system using elliptic curves over rings
US7912216B2 (en) Elliptic curve cryptosystem optimization using two phase key generation
Fiat Batch RSA.
CN109039640B (zh) 一种基于rsa密码算法的加解密硬件系统及方法
US20100166174A1 (en) Hash functions using elliptic curve cryptography
GB2321834A (en) Cryptographic signature verification using two private keys.
JP2010277085A (ja) Rsaアルゴリズムにおける素数生成の保護
US6404890B1 (en) Generating RSA moduli including a predetermined portion
EP1478121A2 (en) Method and apparatus for ID-based public key generation
US7248692B2 (en) Method of and apparatus for determining a key pair and for generating RSA keys
JPH10500502A (ja) 離散対数をベースとした公開キーによる暗号化方法
EP3352411B1 (en) Method of generating cryptographic key pairs
EP2395698B1 (en) Implicit certificate generation in the case of weak pseudo-random number generators
JP3123820B2 (ja) 有限可換群における演算器
CN1985458A (zh) 增强的自然蒙哥马利指数掩蔽
JP5038868B2 (ja) 鍵共有方法、第1装置、第2装置、及びそれらのプログラム
KR100326226B1 (ko) 행렬그룹공개키생성방법
JP4692022B2 (ja) 楕円曲線暗号におけるスカラー倍計算装置、及び、そのプログラム
JP2001503164A (ja) 暗号化および復号化システムとキー・エスクローシステムを含む暗号システム、および関連機器
US20050123131A1 (en) Cryptographic system comprising an encryption and decryption system and a key escrow system, and the associated equipment and devices
Al-Tuwaijry et al. A high speed RSA processor
Omondi et al. Modular-Arithmetic Cryptosystems
Aboud et al. A New Method for Public Key Cryptosystem and Digital Signature Scheme Based on both Integer Factorizations and Discrete Logarithms

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040831

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20041129

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20041206

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050228

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20050531

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

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4137385

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20110613

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110613

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120613

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20130613

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

S631 Written request for registration of reclamation of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313631

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

Free format text: PAYMENT UNTIL: 20130613

Year of fee payment: 5

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

EXPY Cancellation because of completion of term