JP2001503164A - 暗号化および復号化システムとキー・エスクローシステムを含む暗号システム、および関連機器 - Google Patents
暗号化および復号化システムとキー・エスクローシステムを含む暗号システム、および関連機器Info
- Publication number
- JP2001503164A JP2001503164A JP10536319A JP53631998A JP2001503164A JP 2001503164 A JP2001503164 A JP 2001503164A JP 10536319 A JP10536319 A JP 10536319A JP 53631998 A JP53631998 A JP 53631998A JP 2001503164 A JP2001503164 A JP 2001503164A
- Authority
- JP
- Japan
- Prior art keywords
- mod
- encryption
- key
- decryption
- bits
- 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.)
- Ceased
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
- H04L9/0897—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage involving additional devices, e.g. trusted platform module [TPM], smartcard or USB
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3006—Public 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/302—Public 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
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)
- Computer And Data Communications (AREA)
Abstract
(57)【要約】
本発明は、暗号化および復号化システム、キー・エスクローシステムと関連機器を含む、いわゆる離散対数および因数分解の原理を組み合わせる暗号システムに関するものである。それは特に、チップカード、PCMCIAカード、バッヂ、非接触型カードあるいはその他いっさいの携帯装置のタイプの電子システムにおいて使用されるためのものである。
Description
【発明の詳細な説明】
暗号化および復号化システムとキー・エスクローシステムを含む暗号システム
、および関連機器
本発明は暗号化および復号化システムとキー・エスクローシステムを含む暗号
システム、および関連機器に関するものである。
それは特に、チップカード、PCMCIAカード、バッヂ、非接触型カードあ
るいはその他いっさいの携帯装置の電子システムにおいて利用されるためのもの
である。
今日存在する公開鍵暗号(非対称暗号とも呼ばれる)システムの大部分は、1
978年にR.Rivest、A.ShamirとL.Adlemanによって公開され、ついで≪Cryp
tographic Communications System and Method≫の標題の、参照番号US4,405,
829で特許となった、RSA暗号化アルゴリズムを実施する。
RSAシステムのほかには、公開鍵暗号化の実用的な方法およびシステムはほ
とんど存在しない。しかしながら、あまり知られておらず、相対的にほとんど使
用されないシステムが存在する:≪A public-key cryptosystem and a signatur
escheme based on discrete logarithms≫の標題で知られた、IEEE Transaction
s on Information Theory誌,vol.IT-31,no.4,1985,pp.469-472において公開
されているEl−Gamalシステムである。
RSAまたはEl−Gamalの暗号文は、実際、2進法あるいは16進法の
数字のストリングによって大きな数でコンピュータに表されている。暗号文は、
処理されるデータの内容を隠すために、すべてにアクセス可能なパラメータセッ
ト
の処理の際に適用される一連の計算規則(暗号化のアルゴリズム)を実施するソ
フト(プログラム)および/またはハード(電子回路)の計算の資源を用いて、
計算される。暗号文は、秘密および公開パラメータセットと暗号文に(暗号文の
受信器によって)適用される一連の計算規則(復号化のアルゴリズム)を実施す
るソフトまたはハードの計算の資源を用いて、似通った方法で復号化される。
暗号化のシステムまたは方法は、暗号文を作成するために、公開鍵を用いる。
復号化の方法では、秘密鍵に対応するが同一ではないプライベート鍵を使用する
。携帯電子装置、例えばチップカードの使用者は一対の鍵(公開鍵および秘密鍵
と呼ばれる)を所有する。公開鍵はすべての使用者に知られている一方で、秘密
鍵は決して明かされることはないとされている。いかなる人でもある使用者のた
めのメッセージをその人の公開鍵を用いて暗号化する能力を持つが、暗号文は使
用者の秘密鍵を用いなければ復号化され得ない。
説明として、以下において、よく知られているRSAのアルゴリズムの作動を
記述する。
RSAアルゴリズムのパラメータは次のとおりである。
256ビット以上のサイズの2つの秘密の素数pとq。これらの素数は、特殊
な方法で生成されるが、詳細は本発明の理解には必要不可欠ではなく、著作≪
Schneier著(Marc Vauclair翻訳),Editions Thomson Publishingに見出される。
一つの公開の法 n=pq
{e,d}と記される一対の指数、eは公開指数、dは秘密指数であり、以下の
ようになる。
ed=1mod (p−1) (q−1)
≪暗号化指数≫と呼ばれる指数eはすべてにアクセス可能であるが、一方、
≪復号化指数≫dは秘密にされていなければならない。
メッセージmを暗号化するために、送信器は暗号文c=memod nを計算
し、受信器または検証装置はm=cdmod nを計算してcを復号化する。
一方、El−Gamalのアルゴリズムの作動に関しては、もう少し複雑であ
り、本発明の理解のためには特に利点はない。
本発明は、RSA方式とEl−Gamal方式に代替案を提供する代替の公開
鍵暗号化・復号化システムとキー・エスクロー(一般に英語で≪key escrow≫と
呼ばれる)システムを含む暗号システムに関するものである。
本発明によると、いわゆる離散対数および因数分解の原理を組み合わせる暗号
システムは中でも特に複数の公開鍵と一つの秘密鍵を有し、前記公開鍵が少なく
とも以下のものを含むことを特徴とすることが想定される。
a.640ビットを超えるサイズであり、以下の特性をもつRSAの法n:
n=(ApA+1)×(BpB+1)
ここで:
pAとpBは320ビットを超えるサイズの素数であり、
(ApA+1)はpと記されたRSAの素数、
(BpB+1)はqと記されたRSAの素数であり、
Aは、比較的小さいサイズ(2と16ビットの間)である、k/2個(kは1
0と120の間に含まれる偶数の整数である)の素数(p[i]と記され、i=1
〜k/2)の積、
Bは、k/2個の素数(同様にp[i]と記され、i=k/2+1〜k)の積で
あり;
p[i]は、比較的小さいサイズ(2と16ビットの間)であり、また互いに素
であることもできる;
b.φ(n)/4次(ここではφ(n)がオイラーのファイ関数を示す)の累
乗の底g、gはしたがっていかなる数nを法とするp[i]乗にもなり得ない。
より正確には、本発明は、m<ABで、メッセージmの暗号化が以下の演算に
よって成り立つことを特徴とする、少なくとも一つの暗号化・復号化システムを
含む暗号システムに関するものである:
c=gmmod n
ここで、cは暗号文(暗号化されたメッセージ)を示す。
好ましくは、本発明による暗号システムは、mの完全性がm|h(m)(hは
ハッシュ関数、|は連接を表す)の暗号化、または、≪鍵≫がすべてにアクセス
可能な鍵であるDES(鍵、m)の暗号化によって保証されることを特徴とする
。
本発明はまた、キー・エスクローシステムの説明も目的とする。本発明による
と、復号化器、またはキー・エスクローセンターの前記秘密鍵は、数φ(n)で
あり、復号化または使用者の識別名の再生の演算は以下の過程から成り立つ:
a.1〜kであるiについて:y[i]=cφ(n)p[i]mod nを計算する;
b.1〜kであるiについて
1〜p[i]であるjについて
y[i]を、mから独立したgj φ(n)/p[i]mod nの値と比較する;
gj φ(n)/p[i]mod n=y[i]の場合、μ[i]=jを割り当てる
c.中国剰余定理TRCおよびμ[i]値からメッセージmを再構成する。
実施態様の変型の一つによると、前記の復号化器は:
a)z=crmod n ここで r=pApB
b)1〜kであるiについて:y[i]=zAB/p[i])mod n
を計算して、y[i]量の計算を速め、計算を速めるためにAB/p[i])と、φ
(n)/p[i]の間のサイズの違いを利用する。
本発明の実施態様の別の変型によると、復号化器は一度限り、1≦i≦kおよ
び1≦j≦p[i]において、gj φ(n)/p[i]mod nの値の表
または
より特徴的には、以下の特性:
j≠j’の場合、h(gj φ(n)p[i]mod n)≠h(gj φ(n)p[i]mod n
)
をもつこれらの値の切断あるいはハッシング(hと記される)を予め計算し、保
存する。
このように、まず、それぞれのiについてgj φ(n)p[i]mod n量の再計算
が、また、過大なサイズの値の保存が避けられる。
本発明の別の好ましい態様によると、復号化器は、法pついで法qのメッセー
ジを個別に復号化し、そしてmを見出すために中国剰余定理を用いて法の結果を
構成して、その計算を速める。
エスクローシステムは以下の作動過程によって実現される:
a.エスクローの当局が、e(ID)=Πp[i]ID[i](1〜kであるiにつ
いてとられる積)を計算して、ID[i]が前記システム使用者の識別名のビット
である使用者の識別名ID=Σ2i-1ID[i](1〜kであるiについてとられ
る合計)を符号化する;
b.当局は使用者にEl−Gamal鍵(つまり累乗の底)c=ge(ID)umo
d n、を交付する。
ここで、uは乱数である大きな素数またはφ(n)をともなう素数である;
c.当局はまた、乱数xを選択し、nを法としてcをx乗して、使用者がcか
らそのEl−Gamal公開鍵を派生させることを可能にする。
d.使用者の跡を見出す目的で、当局は暗号化器のEl−Gamal暗号文か
ら、前記暗号文は常に2つの部分を含んでいるのだが、以下の部分を求める:
v=crmod n
ここでrは暗号化器によって選択された暗号化の乱数である。
e.φ(n)を知っているので、前記当局は以下のアルゴリズムによってID
[i]のビットを見出す:
1〜kであるiについて:y[i]=vφ(n)/p[i]mod nを計算する
y[i]=1の場合、μ[i]=1,それ以外はμ[i]=0
ID’=Σ2i-1μ[i]
を計算する
ID=CCE(ID’)を見出す
ここで、CCEは、合成数rの不正な使用の場合に起こる乱れを訂正するための
、(著作≪Codes Correcteurs,Theorie et Pratique≫A.PoliおよびL.Huguet著
、Editions Massonに記載されているもののタイプの)エラー訂正の(選択的)
メカニズムを表記する。
提案される別のエスクローシステムは、部分のうちの一つによってgをnを法
として無作為にa乗することによって得られる数cが前記エスクロー当局によっ
て傍受されている、鍵交換、いわゆるDiffie-Hellmanメカニズムに基づくもので
ある。
c=gamod n
前記エスクロー当局は以下の方法でaを見出す:
a.nの因数分解を知っているので、前記当局は、復号化アルゴリズムを用い
て、値
α=a mod AB
すなわち、a=α+βAB;
を見出す。
b.前記当局は:λ=c/gα mod n=gβABmod nを計算する
c.暗号分析のアルゴリズム(その実行を速めるために場合によっては2回(
法pおよび法q)実行される、離散対数計算アルゴリズム)を使用して、当局は
離散対数βを計算する
λ=(gAB)βmod n
d.前記当局は
a=α+βAB
を見出し、aの使用に基づく通信を復号化する。
本発明の別の実施態様によると、RSAの法nは3つの因数の積である:
n=(ApA+1)×(BpB+1)×(CpC+1)
ここで:PA,PB,PCは320ビットを超えるサイズの素数であり、
(ApA+1),(BpB+1),(CpC+1)は、それぞれp
,q,rと記されるRSAの素数であり、
A,BおよびCはそれぞれk/3個の素数(p[i]と記され、i
=1〜k)の積であり、積ABCが少なくとも160ビットとなるように、p[
i]は比較的小さいサイズ(2と16ビットの間)で、互いに素であることがあ
り、kは10と120の間に含まれる整数である。
この実施態様は復号化の実行を速めることにおいて利益がある。復号化器は、
その計算を速めるために演算mod p mod q mod rを実行する。
nが640ビットである場合、それを3つの因数に分けることによって、因数の
サイズはより小さなものになる。
本発明は、好ましくは、例えばコンピュータ、チップカード、PCMCIAカ
ード、バッヂ、非接触型カードあるいはその他いっさいの携帯装置である暗号化
、復号化およびキー・エスクロー装置に備えられるためのものである。
本発明はまた、暗号化システムおよび/または復号化システムおよび/または
キー・エスクローシステムを備え、前記システムは電子信号交換によってまたは
ラジオ波または赤外線信号の交換によって相互に通信することを特徴とする暗号
システムを含む装置にも関する。
本発明をよりよく理解するために、以下のコメントを提供することが必要であ
る。
本発明の暗号化の方法は3つの別個の局面に分割される:
鍵の生成
暗号文の生成
さらに、暗号文の復号化
以下において、次の(表記法の)慣例を使用する:
φ(n)はオイラーのファイ関数を示す。
φ(n)は次のように定義される:
n1,n2,n3,…,nk-1,nkが素数であって、
n=n1×n2×n3×…×nk-1×nkの場合:
φ(n)=(n1−1)×(n2−1)×(n3−1)×…×(nk-1−1)×(nk
−1)
まず第一に、そして本発明をよく理解するために、鍵の生成を説明することが
必要である。
鍵を生成するために、暗号文の受信器は無作為に、およそk/2次の別個の小
さい素数p[i](kは10〜120程度のシステムパラメータである)の2つの
グループGAおよびGBを選択し、以下の(ほぼ同じサイズの)2つの数を形成す
る:
A=集合GAに属するp[i]の積
B=集合GBに属するp[i]の積
安全面での理由から、GAおよびGBを次のように義務づけることが適切であると
思われる:
1.GA∩GBは零集合である
2.p[i]のいくつかはGA∪GBに存在しない。
条件2が満たされなくても、(幾分複雑な説明にもかかわらず)発明方法は確
実であることが証明される。この方法は、条件1が満たされなくても同様に確実
なままであるが、その結果、鍵生成および復号化のアルゴリズムは修正されなけ
ればならず、著しく複雑になる。したがって、p[i]は互いに素でありながら(
例えば、2または3バイトの素数の整数乗)、非素数であり得る。
説明を簡潔にするために、i番目の奇数の素数をp[i]と記す;例えば:
p[1]=3,p[2]=5,p[3]=7…
以下において、Aは、1〜k/2であるiについて、p[i]の積から単に形成
され、Bはk/2+1〜kであるiについて、p[i]の積から形成されると考え
られるだろう。しかし、この選択は最良なものではなく、表記法の慣例としての
み解釈されるべきである。
次に、暗号文の受信器は、p=ApA+1およびq=BpB+1がRSA素数(
RSA素数は、乗ぜられると、積n=pqが因数分解されにくいというものであ
る)であるような、pAおよびpBと記される2つの大きな素数(典型的には20
0〜512ビット程度)を生成する。
安全を確保するために、最少サイズの各種パラメータを次のように義務づける
ことが好ましい:
1−積ABは最少でも160ビット程度の数でなければならない;
2−数pA,pBのそれぞれのサイズは積ABのそれよりも少なくとも160ビ
ット上回らなければならない;
3−数n=p×qのサイズは少なくとも640ビットでなければならない。
このような素数の生成手順は本発明の枠内に入らず、当業者には明白なことで
ある。
結局、メッセージの受信器は、φ(n)/4次の要素gを生成し、公にする。
このようなgは絶対に以下の条件を検証しなければならない:
あらゆるiについては、g=xp[i]mod nのようなxは存在しない。
gは以下の方法の一つを用いて計算されることができる:
*gの第一の計算方法(迅速なもの):
メッセージの受信器は2つの整数を生成する:
pを法とする(p−1)/2次のgp
qを法とする(q−1)/2次のgq
上述のように、gpの生成は、実際、k/2未満のあらゆるiについてp[i]
乗でない数の創出に相当する;明白な修正とともに、gqに関しても同様である
:
1.x0=1
t1=1
を固定する
ti=1〜i−1であるjについてのp[i]の積
2.1〜k/2であるすべてのiについて
無作為のxをとる
xをti乗する
x(p-1)/p[i]=1の場合
別のxを試す
それ以外では
xi=x(xi-1)p[i]を計算する
3. gp=xk/2を固定する
4. x0=1
t1=1
を固定する
ti=1〜i−1であるjについてのp[i]の積
5.1〜k/2であるすべてのiについて
無作為のxをとる
xをti乗する
x(q-1)/p[i]=1の場合
別のxを試す
それ以外では
xi=x(xi-1)p[i]を計算する
6.gq=xkを固定する
7.著作≪A course in number theory and cryptography≫、Neal Koblitz
著、第2版、Editions Springer-Verlagに記載の方法、中国剰余方式(以下の説
明においてTRCと記される)を応用して、gpおよびgqからgを構築する。最
終的にgを得るために、生成された数を2乗することが必要であり得る。
(このような証明の詳細は本発明の理解には必要ではないが)アルゴリズムの
各過程は、i以下のjについて、p[i]乗ではない要素を規定する。
*gの第2の計算方法(単純なもの)
代案としてのアプローチは、gを無作為に選択し、このようなgがnを法とし
、p[i]乗ではないことをテストすることから成る。厳密な計算によって、この
ようなgは1n(k)回の無作為抽出(k=120についてはおよそ5分の1の
確率があるとする)の後に見つけ出されることが(平均的に)示される。
本発明をよく理解するために、ここで、暗号文の生成を説明することが必要で
ある。
積AB未満のメッセージの暗号文cは次の式によって計算される:
c=gmmod n
本発明の説明は、ここで暗号文の復号化の説明に向けられる。
mを見出すために、復号化器は以下の演算を行う:
1〜kであるiについて:y[i]=cφ(n)/p[i]mod nを計算する
すなわち、m[i]=m mod p[i]およびm’=(m−m[i])/p[i]代
入によって、以下のようになることが容易に考えられる:
y[i]=cφ(n)/p[i] mod n
=gm φ(n)/p[i] mod n
=g(m[i]+m'p[i]) φ(n)/p[i] mod n
=gm[i] φ(n)/p[i]gm' φ(n) mod n
=gm[i] φ(n)/p[i] mod n
1〜kであるiについて実行する:
1〜p[i]であるjについて実行する:
gj φ(n)/p[i]mod n=y[i]の場合、mi=jを割り当てる
m=TRC(m1,m2,…,mk)
を見出す
復号化のアルゴリズムは様々な方法で改良することができる:
典型的に、復号化の進行に必要な変数iおよびjのすべての値について、gj φ(n)/p[i]
mod nの値を予め計算し、表に作る。したがって、このような表
は切断またはハッシング(hと記される)方法が:
j≠j’の場合、h[gj φ(n)/p[i]mod n]≠h[gj' φ(n)/p[i]mod
n]
を保証する限り、切断またはハッシングされ得る。
このような実施態様によって、k=30(このとき積ABは160ビット、80
バイトの法n、4キロバイトの表である)で、20バイトのメッセージを復号化
することが可能であることがわかる。
≪鍵の生成≫の部分で述べられたように、30個の素数p[i](このときkは
16に相当する)の代わりに、10ビットの16個の素数を選択するのがより賢
明であることがある。このような素数が75個存在するため、およそ252.9の選
択が可能である。安全性が補強されるわけではないが、選択された素数を公開す
る必要はない。
互いに素である数を選択することさえ可能である;例えば、これらのパラメー
タの選択の幅をさらに広げることになる素数の累乗である。
第2の実施態様は、暗号文が受信されるとすぐ、量を計算して、復号化を速め
ることを可能にする:
z=crmod n、ここで、r=pApB
このとき、量y[i]は、以下の計算のショートカットを使うことによって、よ
り簡単に計算される:
y[i]=zAB/p[i]mod n
このように累乗を速めるAB/p[i]とφ(n)/p[i]のサイズの違いを利用
する。
第3の実施態様は、法pついで法qで(pおよびqはnのサイズの半分であり、
復号化は2倍速くなる)メッセージを別個に復号化することによって、そして法
φ(n)の結果を構成して、復号化を速めることを可能にする。
この代替の復号化の方法はこのように説明される:
1〜k/2であるiについて:y[i]=cφ(p)/p[i]mod pを計算する
m[i]=m mod p[i]およびm’=(m−m[i])/p[i]であるとする
代入によって、以下のようになることが容易に考えられる:
y[i]=cφ(p)/p[i] mod p
=gm φ(p)/p[i] mod p
=g(m[i]+m'p[i]) φ(p)/p[i] mod p
=gm[i] φ(p)/p[i]gm' φ(p) mod p
=gm[i] φ(p)/p[i] mod p
1〜k/2であるiについて実行する:
1〜p[i]であるjについて実行する:
gj φ(p)/p[i]mod p=y[i]の場合、μ[i]=jを割り当てる
mmodφ(p)=TRC(μ[1]mod p[1],…,μ[k/2]mod p
[k/2])
を見出す
pの代わりにqで、過程{,,}を再実行する
m=TRC(m mod φ(p),m mod φ(q))を計算する
本発明において提案された方法によって、パラメータ≪鍵≫がすべてにアクセ
ス可能であり、fが対称暗号化関数(例えばDESアルゴリズム)であるf(鍵
、m)を暗号化することによって、メッセージmを操作から保護することが必要
であり得る。代案として、暗号化方法は、得られたメッセージmが確かにその暗
号、つまりcであることを検証することができる。mを保護する別の方法として
、提案された方法による、hash(m)がメッセージmのハッシングであり、
|が連接を示す、m|hash(m)、(つまりc=gm|hash(m) mod n
)の暗号化がある(この場合、復号化はそのハッシュの計算によって得られたメ
ッセージの完全性を検証する)。
法nが2つではなく、3つの因数から成る場合、上述の暗号化システムを広げ
ることが可能である。そのとき:
n=pqr
p=ApA+1,q=BpB+1,r=Cpp+1であり、pA,pB,pCは3つの
大きな素数(200〜512ビット)で、A,B,Cはそれぞれ、集合GA,GB
,GCに由来する、別個の小さな奇数の素数の積である。
当業者にはもたらされる修正は明白である。
さらに、鍵の生成に関する前出の説明部分の条件2(ここでは次のようになる
:《p(i)のいくつかはGA∪GB∪GCに存在しない》)をややゆるめること
が可能に思われる。nが640ビットを有し、積ABCは160ビットを有し、
それぞれのp[i]が相関的に160ビットを有するパラメータセットが、このよ
うにして、適切な安全性を確保するのである。
本発明の第2の目的は、Y.Desmedtによつて≪Securing the traceability of
ciphertexts-Towards a secure software key escrow system≫(Proceedingso E
urocrypt'95,Lecture Notes in Computer Science 921)において記載され、記
事≪On the difficulty of software key escrow≫(Proceedings of Eurocrypt'
96,Lecture Notes in Computer Science 1070)においてL.KnudsenおよびT.Peder
senによって作成された所見によって補足されている方法を改良する、キー・エ
スクローシステムを説明することである。
Y.Desmedtによって提案されたキー・エスクロー機能を大幅に向上させるため
に、我々は暗号化方法の一つの変型を考える:
すなわち、2進法で符号化された、それぞれの使用者の識別名、ID;
ID=Σ2i-1ID[i]
ここで、ID[i]はキー・エスクローシステムの使用者の識別名のビット(1〜
kであるiについてとられる合計)であり、すなわち、e(ID)=Πp[i]ID [i]
である(1〜kであるiについてとられる積)。
すなわち、従って、uが無作為の大きな素数である、c=ge(ID)umod n
。
cはEl−Gamal暗号化のための累乗の底として使用者に与えられる。使
用者は、乱数xを選択し、法をnとしてcをx乗して、cからそのEl−Gam
al公開鍵を派生させる。
使用者の跡を見出す目的で、前記キー・エスクローのセンターは暗号化器のE
l−Gamal暗号文から、以下の部分を求める:
v=crmod n
ここでrは使用者によって選択された暗号化の乱数である。
φ(n)を知っているので、前記センターは以下のアルゴリズムによってID
[i]のビットを見出す:
1〜kであるiについて:y[i]=vφ(n)/p[i]mod nを計算する
1〜kであるiについて実行:
1〜p[i]であるjについて実行:
y[i]=1の場合、1にμ[i]を割り当てる、それ以外は0をμ[i]に割り当
てる
ID’=Σ2i-1μ[i]
を計算する
ID=CCE(ID’)を見出す
ここで、CCEは、合成数rの不正な使用の場合に起こる乱れを訂正するため著,Editions Massonに記載されているもののタイプの)エラー訂正のメカニズ
ムを示す。訂正メカニズムは省かれることもできる;使用者の跡を追跡すること
のできるアルゴリズムは、その場合、当業者には明白である修正を受けなければ
ならず、crmod nに類似で、El Gamalの暗号化アルゴリズムの複
数の実行に対応する量を複数使用しなければならない。
本発明の第3の目的は、US4,200,770号で特許となっているメカニ
ズム、鍵交換の、いわゆるDiffie-Hellmanのメカニズムに基づく、第2のキー・
エスクローシステムを呈示することである。
このようなシステムでは、部分のうちの一つによってgをnを法として無作為
にa乗することによって得られる数cがエスクロー当局によって傍受される。
c=gamod n
前記エスクロー当局は以下の方法でaを見出す:
1.nの因数分解を知っているので、前記当局は、復号化アルゴリズムを用いて
、値
α=a mod AB
すなわち、a=α+βAB
を見出す。
2.当局は:
λ=c/gα mod n=gβABmod nを計算する
(なぜならば、gαmod n=gα+βABmod n=gαgβABmod n
)
3.暗号分析のアルゴリズム(その実行を速めるために場合によっては2回(法
pおよび法q)実行される、離散対数計算アルゴリズム)を使用して、当局は離
散対数βを計算する。
λ=(gAB)βmod n
4.当局は
a=α+βAB
を見出し、aの使用に基づく通信を復号化する。
本発明の実施態様は、詳細な説明と以下の図面を読むことによって、よりよく
理解されるであろう;付属の図面において:
・図1は本発明によって提案されるシステムを使用する暗号化システムのフロ
ーチャートを示す。
・図2は本発明によって提案されるシステムを使用する復号化システムのフロ
ーチャートを示す。
・図3は、メッセージmの安全が保障された伝送の間の、暗号化システムと復
号化システムの間で伝送されるデータを示す。
提案された本発明によると、それぞれの暗号化装置(典型的にはコンピュータ
またはチップカード)は、処理装置(CPU)、通信インターフェース、ランダ
ムアクセスメモリ(RAM)および/またはリードオンリーメモリ(ROM)お
よび/または書き込み可能メモリ(一般的に再書き込み可能)(ハードディスク
、フロッピーディスク、EPROMまたはEEPROM)から成る。
暗号化装置のCPUおよび/またはROMは暗号文生成の規則(乗法、2乗、
モジュラ簡約)に対応する計算プログラムまたは資源を有する。これらの演算の
いくつかはグループ化することができる(例えば、モジュラ簡約は直接、乗法に
組み込まれる)。
RSAの実行に関しても同様で、RAMは典型的に、暗号文生成のために暗号
化および計算規則が適用されるメッセージmを含む。ディスク、E(E)PRO
Mは少なくとも、以下の説明において明確にされるように生成され、使用される
パラメータnおよびgを含む。
CPUは、アドレスおよびデータのバスを介して、通信インターフェース、メ
モリの読み込みおよび書き込みの演算を制御する。
それぞれの復号化装置(キー・エスクロー装置と同一)は必然的に、物理的お
よびソフトウェアの保護によって、外界から保護される。これらの保護は、nの
秘密因数で構成される秘密鍵を得ようとするいかなる無許可の存在をも阻止する
のに十分であろう。その分野において今日最もよく使用される技術は、チップを
安全モジュールに組み込むことと、温度、光の変化や異常な電圧およびクロック
周波数を検出することのできる装置のチップを備えることである。メモリアクセ
スのスクランブルのような特有の設計技術もまた使用される。
提案された本発明によると、復号化装置は、少なくとも、処理装置(CPU)
と、メモリ資源(RAM、ROM、EEPROMまたはディスク)とから成る。
CPUは、アドレスおよびデータのバスを介して、通信インターフェース、メ
モリの読み込みおよび書き込みの演算を制御する。RAM、EEPROMまたは
ディスクはパラメータφ(n)、または、少なくともφ(n)の因数を含む。
復号化装置のCPUおよび/またはROMは、前述の復号化プロセスの各種の
過程(乗法、累乗およびモジュラ簡約)を実行することのできる計算プログラム
または資源を有する。これらの演算のいくつかはグループ化することができる(
例えば、モジュラ簡約は直接、乗法に組み込まれる)。
提案される本発明の枠内において、メッ七−ジmの暗号化は少なくともデータ
cを、カード、署名装置および検証装置の間で交換することによって、実現され
る。
【手続補正書】特許法第184条の8第1項
【提出日】平成11年1月21日(1999.1.21)
【補正内容】
請求の範囲
1.少なくとも1つの暗号化・複合化システムと、複数の公開鍵と一つの秘密
鍵を有する、いわゆる離散対数および因数分解の原理を組み合わせる暗号システ
ムであって、前記公開鍵が少なくとも以下のものを含むことを特徴とする暗号シ
ステム。
a.640ビットを超えるサイズであり、以下の特性をもつRSAの法n:
n=(ApA+1)×(BpB+1)
ここで:
pAとpBは320ビットを超えるサイズの素数であり、
(ApA+1)はpと記されたRSAの素数、
(BpB+1)はqと記されたRSAの素数であり、
Aは、2と16ビットの間の比較的小さいサイズであり、kが10と120の
間に含まれる偶数の整数であるk/2個の、p[i]と記されるi=1〜k/2の
素数の積、
Bは、同様にp[i]と記されるi=k/2+1〜kのk/2個の素数の積であ
り、
p[i]は、2と16ビットの間の比較的小さいサイズであり、また互いに素で
あることができる;
b.φ(n)がオイラーのファイ関数を示し、φ(n)/4次の累乗の底g、
gはしたがっていかなる数nを法とするp[i]乗にもなり得ない
2.m<ABである、メッセージmの暗号化が以下の演算によって成り立つこと
を特徴とする、少なくとも一つの暗号化・復号化システム1を含む請求項1に記
載の暗号システム。
c=gmmod n
ここで、cは暗号文、即ち暗号化されたメッセージを示す。
3.mの完全性がm|h(m)(hはハッシュ関数、・・・・)の暗号化によっ
て、・・・・保証され、・・・・とを特徴とする、暗号化・復号化システムを含
む請求項2に記載の暗号システム。
─────────────────────────────────────────────────────
フロントページの続き
(72)発明者 ステルン,ジャック
フランス共和国,エフ―75013 パリ,リ
ュ ヴァンドゥレザンヌ,16
Claims (1)
- 【特許請求の範囲】 1.特に複数の公開鍵と一つの秘密鍵を有する、いわゆる離散対数および因数 分解の原理を組み合わせる暗号システムであって、前記公開鍵が少なくとも以下 のものを含むことを特徴とする暗号システム。 a.640ビットを超えるサイズであり、以下の特性をもつRSAの法n: n=(ApA+1)×(BpB+1) ここで: pAとpBは320ビットを超えるサイズの素数であり、 (ApA+1)はpと記されたRSAの素数、 (BpB+1)はqと記されたRSAの素数であり、 Aは、比較的小さいサイズ(2と16ビットの間)である、k/2個(kは1 0と120の間に含まれる偶数の整数である)の素数(p[i]と記され、i=1 〜k/2)の積、 Bは、k/2個の素数(同様にp[i]と記され、i=k/2+1〜k)の積で あり; p[i]は、比較的小さいサイズ(2と16ビットの間)であり、また互いに素 であることができる; b.φ(n)/4次(φ(n)がオイラーのファイ関数を示す)の累乗の底g 、gはしたがっていかなる数nを法とするp[i]乗にもなり得ない 2.m<ABである、メッセージmの暗号化が以下の演算によって成り立つこと を特徴とする、少なくとも一つの暗号化・復号化システム1を含む請求項1に記 載の暗号システム。 c=gmmod n ここで、cは暗号文(暗号化されたメッセージ)を示す。 3.mの完全性がm|h(m)(hはハッシュ関数、|は連接を表す)の暗号化 によって、または、DES(鍵、m)によって保証され、前記鍵がすべてにアク セス可能な鍵であることを特徴とする、暗号化・復号化システムを含む請求項2 に記載の暗号システム。 4.復号化者、またはキー・エスクローセンターの前記秘密鍵が、数φ(n)で あり、復号化または使用者の識別名の再生の演算は以下の過程によって成り立つ ことを特徴とする、暗号化・復号化システムおよびキー・エスクローシステムを 含む請求項1に記載の暗号システム。 a.1〜kであるiについて:y[i]=cφ(n)/p[i]mod nを計算する; b.1〜kであるiについて 1〜p[i]であるjについて y[i]をmから独立した gj φ(n)/p[i]mod nの値と比較する; gj φ(n)/p[i]mod n=y[i]の場合、μ[i]=jを割り当てる c.中国剰余定理TRCおよびμ[i]値からメッセージmを再構成する。 5.前記復号化器が a)z=crmod n ここでr=pApB b)1〜kであるiについて:y[i]=zAB/p[i])mod n を計算して、y[i]量の計算を速め、計算を速めるためにAB/p[i])とφ( n)/p[i]の間のサイズの違いを利用することを特徴とする、暗号化・復号化 システムおよびキー・エスクローシステムを含む請求項4または5に記載の暗号 システム。 6.復号化器は、一度限り、1≦i≦kおよび1≦j≦p[i]において、 gj φ(n)/p[i]mod nの値の表 または より特徴的には、以下の特性: j≠j’の場合、h(gj φ(n)/p[i]mod n)≠h(gj φ(n)/p[i]mod n ) をもつこれらの値の切断あるいはハッシング(hと記される)を予め計算し、保 存することを特徴とする、暗号化・復号化システムおよびキー・エスクローシス テムを含む請求項4、または5に記載の暗号システム。 7.復号化器が、法pついで法qのメッセージを個別に復号化し、そしてmを見 出すために中国剰余定理を用いて法の結果を構成して、その計算を速めることを 特徴とする、暗号化・復号化システムおよびキー・エスクローシステムを含む請 求項4〜6のいずれか1つに記載の暗号システム。 8.キー・エスクローの当局またはセンターが以下の過程を実現することを特 徴とする、請求項4〜7のいずれか1つに記載の暗号システム。 a.当局またはセンターが、e(ID)=Πp[i]ID[i](1〜kであるiに ついてとられる積)を計算して、ID[i]が前記システム使用者の識別名のビッ トである使用者の識別名ID=Σ2i-1ID[i](1〜kであるiについてとら れる合計)を符号化する; b.当局またはセンターは、使用者にEl−Gamal鍵(つまり累乗の底) c=ge(ID)umod n,を交付する。 ここで、uは乱数である大きな素数またはφ(n)をともなう素数である; c.当局またはセンターはまた、乱数xを選択し、nを法としてcをx乗して 、使用者がcからそのEl−Gamal公開鍵を派生させることを可能にする。 d.使用者の跡を見出す目的で、当局は暗号化器のEl−Gamal暗号文か ら、前記暗号文は常に2つの部分を含んでいるが、以下の部分を求める: v=crmod n ここでrは暗号化器によって選択された暗号化の乱数である。 e.φ(n)を知っているので、前記当局は以下のアルゴリズムによってID [i]のビットを見出す: 1〜kであるiについて:y[i]=vφ(n)/p[i]mod nを計算する y[i]=1の場合、μ[i]=1,それ以外はμ[i]=0 ID’=Σ2i-1μ[i] を計算する 4ID=CCE(ID’)を見出す ここで、CCEは、エラー訂正メカニズムを示す。 9.部分のうちの一つによってgをnを法として無作為にa乗することによって 得られる数cが前記エスクロー当局によって傍受されている、鍵交換、いわゆる Diffie-Hellmanメカニズムに基づくことを特徴とする、キー・エスクローシステ ムを含む請求項4〜7のいずれか1つに記載の暗号システム。 c=gamod n 前記エスクロー当局は以下の方法でaを見出す。 a.nの因数分解を知っているので、前記当局は、復号化アルゴリズムを用い て、値 α=a mod AB すなわち、a=α+βAB を見出す。 b.前記当局は:λ=c/gαmod n=gβABmod nを計算する c.暗号分析のアルゴリズムを使用して、当局は離散対数βを計算する λ=(gAB)β mod n d.前記当局は a=α+βAB を見出し、aの使用に基づく通信を復号化する。 10.RSAの法nは3つの因数の積であることを特徴とする、暗号化・復号化 システムおよびキー・エスクローシステムを含む請求項2〜9のいずれか1つに 記載の暗号システム。 n=(ApA+1)×(BpB+1)×(CpC+1) ここで:PA,PB,PCは320ビットを超えるサイズの素数であり、 (ApA+1),(BpB+1),(CpC+1)は、それぞれp ,q,rと記されるRSAの素数であり、 A,BおよびCはそれぞれk/3個の素数(p[i]と記され、i=1〜k)の 積であり、積ABCが少なくとも160ビットとなるように、p[i]は比較的小 さいサイズ(2と16ビットの間)で、互いに素であることができ、kは10と 120の間に含まれる整数である。 11.暗号化、復号化およびキー・エスクロー装置がコンピュータ、チップカー ド、PCMCIAカード、バッヂ、非接触型カードあるいはその他いっさいの携 帯装置であることを特徴とする、暗号化・復号化システムまたはキー・エスクロ ーシステムを含む請求項1〜10のいずれか1つに記載の暗号システム。 12.暗号化システムおよび/または復号化システムおよび/またはキー・エス クローシステムを備え、前記システムは電子信号交換またはラジオ波または赤外 線信号交換手段によって相互に通信することを特徴とする、請求項1〜11のい ずれか1つに記載の暗号システム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR9702244A FR2759806B1 (fr) | 1997-02-19 | 1997-02-19 | Systeme cryptographique comprenant un systeme de chiffrement et dechiffrement et un systeme de sequestre de cles, et les appareils et dispositifs associes |
FR97/02244 | 1997-02-19 | ||
PCT/FR1998/000304 WO1998037662A1 (fr) | 1997-02-19 | 1998-02-17 | Systeme cryptographique comprenant un systeme de chiffrement et de dechiffrement et un systeme de sequestre de cles, et les appareils et dispositifs associes |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2001503164A true JP2001503164A (ja) | 2001-03-06 |
Family
ID=9504156
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP10536319A Ceased JP2001503164A (ja) | 1997-02-19 | 1998-02-17 | 暗号化および復号化システムとキー・エスクローシステムを含む暗号システム、および関連機器 |
Country Status (8)
Country | Link |
---|---|
EP (1) | EP0962069B1 (ja) |
JP (1) | JP2001503164A (ja) |
CN (1) | CN1248366A (ja) |
CA (1) | CA2280952A1 (ja) |
DE (1) | DE69821091T2 (ja) |
ES (1) | ES2216276T3 (ja) |
FR (1) | FR2759806B1 (ja) |
WO (1) | WO1998037662A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101447792A (zh) * | 2006-02-17 | 2009-06-03 | 法国电信公司 | 数字信号的改良编码/解码,尤其是用置换码进行矢量量化的编码/解码 |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
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. |
US6959091B1 (en) * | 2000-07-28 | 2005-10-25 | Atmel Corporation | Cryptography private key storage and recovery method and apparatus |
CN100431294C (zh) * | 2002-11-05 | 2008-11-05 | 管海明 | 基于亚群上离散对数问题的密钥分配及加解密协议的方法 |
CN101631025B (zh) * | 2009-08-07 | 2012-07-04 | 彭艳兵 | 一种加速rsa加解密的方法 |
-
1997
- 1997-02-19 FR FR9702244A patent/FR2759806B1/fr not_active Expired - Fee Related
-
1998
- 1998-02-17 CN CN 98802673 patent/CN1248366A/zh active Pending
- 1998-02-17 WO PCT/FR1998/000304 patent/WO1998037662A1/fr active IP Right Grant
- 1998-02-17 EP EP98909555A patent/EP0962069B1/fr not_active Expired - Lifetime
- 1998-02-17 CA CA002280952A patent/CA2280952A1/fr not_active Abandoned
- 1998-02-17 JP JP10536319A patent/JP2001503164A/ja not_active Ceased
- 1998-02-17 DE DE69821091T patent/DE69821091T2/de not_active Expired - Lifetime
- 1998-02-17 ES ES98909555T patent/ES2216276T3/es not_active Expired - Lifetime
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101447792A (zh) * | 2006-02-17 | 2009-06-03 | 法国电信公司 | 数字信号的改良编码/解码,尤其是用置换码进行矢量量化的编码/解码 |
CN101447792B (zh) * | 2006-02-17 | 2012-10-10 | 法国电信公司 | 使用置换码对数字信号进行编码/译码的方法 |
CN101447791B (zh) * | 2006-02-17 | 2012-11-28 | 法国电信公司 | 使用置换码对数字信号进行编码/译码的方法 |
Also Published As
Publication number | Publication date |
---|---|
DE69821091T2 (de) | 2004-09-02 |
FR2759806B1 (fr) | 1999-04-23 |
ES2216276T3 (es) | 2004-10-16 |
FR2759806A1 (fr) | 1998-08-21 |
DE69821091D1 (de) | 2004-02-19 |
CA2280952A1 (fr) | 1998-08-27 |
EP0962069A1 (fr) | 1999-12-08 |
EP0962069B1 (fr) | 2004-01-14 |
WO1998037662A1 (fr) | 1998-08-27 |
CN1248366A (zh) | 2000-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1710952B1 (en) | Cryptographic Applications of the Cartier Pairing | |
EP0963635B1 (en) | Cyclotomic polynomial construction of discrete logarithm cryptosystems over finite fields | |
US6259790B1 (en) | Secret communication and authentication scheme based on public key cryptosystem using N-adic expansion | |
JP4137385B2 (ja) | 公開鍵および秘密鍵による暗号化方法 | |
US6307938B1 (en) | Method, system and apparatus for generating self-validating prime numbers | |
US7469048B2 (en) | Methods for point compression for jacobians of hyperelliptic curves | |
JP2006340347A (ja) | データに署名するための楕円曲線デジタル署名暗号プロセスを実行する認証システム | |
US6718468B1 (en) | Method for associating a password with a secured public/private key pair | |
US20070206789A1 (en) | Elliptic curve cryptosystem optimization using two phase key generation | |
Khan et al. | Analysis of asymmetric cryptography in information security based on computational study to ensure confidentiality during information exchange | |
US20110200186A1 (en) | Method of cipher block chaining using elliptic curve cryptography | |
Mohan et al. | Homomorphic encryption-state of the art | |
US8331556B2 (en) | Asymmetrical method of encryption or signature verification | |
JP4563037B2 (ja) | 暗号化装置および復号化装置、並びにこれらを備えた暗号システム、暗号化方法および復号化方法 | |
CN109361506B (zh) | 信息处理方法 | |
JP2001503164A (ja) | 暗号化および復号化システムとキー・エスクローシステムを含む暗号システム、および関連機器 | |
US20050123131A1 (en) | Cryptographic system comprising an encryption and decryption system and a key escrow system, and the associated equipment and devices | |
JP3706398B2 (ja) | 楕円曲線による署名、認証及び秘密通信方式 | |
JP2001507479A (ja) | ランダム抽出を必要とする暗号システムのためのハッシュ関数に基づく疑似ランダム生成器 | |
Ghadi | Improving the Robustness of RSA Encryption Through Input-Based Key Generation. | |
JP2001503162A (ja) | 電子メッセージの署名および/または認証方法 | |
CN116415265A (zh) | 加密、加密签名处理、解密方法及相关设备 | |
JP2004139125A (ja) | 楕円曲線による署名、認証及び秘密通信方式 | |
US20060147039A1 (en) | Data encryption method cryptographic system and associated component | |
JP2004159043A (ja) | 暗号通信システム、情報処理装置、および方法、並びにコンピュータ・プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A313 | Final decision of rejection without a dissenting response from the applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A313 Effective date: 20040330 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20040914 |