JP2002500842A - 自働回復及び自働認証可能暗号システム - Google Patents

自働回復及び自働認証可能暗号システム

Info

Publication number
JP2002500842A
JP2002500842A JP50076699A JP50076699A JP2002500842A JP 2002500842 A JP2002500842 A JP 2002500842A JP 50076699 A JP50076699 A JP 50076699A JP 50076699 A JP50076699 A JP 50076699A JP 2002500842 A JP2002500842 A JP 2002500842A
Authority
JP
Japan
Prior art keywords
key
public key
party
public
authority
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.)
Pending
Application number
JP50076699A
Other languages
English (en)
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 US08/864,839 external-priority patent/US6202150B1/en
Priority claimed from US08/878,189 external-priority patent/US6122742A/en
Priority claimed from US08/920,504 external-priority patent/US6243466B1/en
Priority claimed from US08/932,639 external-priority patent/US6389136B1/en
Priority claimed from US08/959,351 external-priority patent/US6282295B1/en
Application filed by ルーカス ヤング,アダム, モードチェイ ユング,マーセル filed Critical ルーカス ヤング,アダム
Publication of JP2002500842A publication Critical patent/JP2002500842A/ja
Pending legal-status Critical Current

Links

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
    • 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/3263Cryptographic 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 certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • 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/3013Public 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 discrete logarithm problem, e.g. ElGamal or Diffie-Hellman systems

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)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

(57)【要約】 通信オーバヘッドが無く、暗号改ざん防止ハードウェアの実装を必要としない(即ち,ソフトウェアで実装することが出来)、公に検証が可能で、シャドウ公開鍵システムを可能にするようなしきい値以下では使用できない寄託暗号システム(図1)に係る方法が提供される。シャドウ公開鍵システムとは、変換態様で公に表明される非寄託の公開鍵システムである。本暗号システムは,通常の公開鍵証明システムに於いて公開鍵自体を提出する必要のあるものと比べて,自らの鍵を生成するユーザと,及び認証機関又は寄託利用(11,12,13)との間の追加的プロトコルの対話が無いので,通信オーバヘッドがない。

Description

【発明の詳細な説明】 自働回復及び自働認証可能暗号システム 技術分野 本発明の技術分野は暗号技術であって、本発明は、暗号システムに関し、とり わけ暗号化鍵と、それを用いて暗号化されたデータとの寄託(エスクロー)と回 復(リカバリー)に関する。この寄託及び回復過程は、権能を有する法執行機関 、政府、ユーザ、及び組織等のエンティティが許可時や要求時に暗号化データを 解読するのを確実なものにする。本発明はソフトウェアで実装される暗号システ ムに関するが、ハードウェアで実装される暗号システムにも適用可能である。 背景技術 公開鍵暗号(以下、適宜PKCと称する)は、会ったこともない当事者同志の 間の機密通信を可能にする。PKCの概念は文献(W.Diffie,M.He llman,“New directions in cryptograph y”IEEE Transactions on Information T heory 22号644−654頁,1976)に公表された。安全でない通 信路上でこの様な機密通信が行なわれ得る。PKCに於いて各ユーザは公開鍵( public Key)Eと秘密鍵(private key)Dを所有し、公 開鍵Eは、登録機関がユーザの正当性(身元等)を証明した後、鍵配付センター (認証機関CAとも呼ばれる)から公に入手できる様になっている。尚、登録機 関は認証機関の一部である。秘密鍵Dはユーザによって秘密に保持され、公開鍵 Eはメッセージを暗号化するのに使用され、秘密鍵Dのみがメッセージを復号す るのに使用され、公開鍵Dを秘密鍵Eから導くことは計算量的に不可能である。 PKC方式を使用する為に、当事者Aは鍵配付センターから当事者Bの公開鍵E を入手する。当事者Aはメッセージを公開鍵Eで暗号化して、その結果生成物を 当事者Bに送信する。他方、当事者Bは秘密鍵を用いて復号することによってメ ッセージを復元する。鍵配付センターは、当事者双方から信用されており、求め に応じて正しい公開鍵を提供している。離散対数の計算の困難性に基づくPKC は文献(T.ElGamal“A Public−key Cryptosys tem and a Signature Scheme Based on Discrete Logarithms”CRYPTO’84,10−18頁 ,Springer−Verlag 1985)で公表された。 PKC方式は使用に関して大変便利で、安全でない通信路上をユーザが機密通 信を行うことを可能にし、DES(Data Encryption Stan dard)の様な対称鍵暗号を取り入れて使用することもできる。しかし、PK Cは欠点を有する。即ち、法執行機関に対して必要な復号鍵を提出すべき旨の法 規定がないので、犯罪者が犯罪行為の過程でPKCを利用でき、結果的に傍受不 能な通信として悪用されることが有り得る。それ由、機密通信を順法的市民に対 してのみに許すことが望ましい。この問題に対する一般的解決策は、信用できる 寄託(エスコー)機関つまり、信用機関(trustee)にユーザをして自ら の秘密鍵の表象(representation)を提出させることである。裁 判所から許可された合法な傍受の場合には、当該割り当て鍵(share)が寄 託から取り出される。或いは、鍵の寄託は、組織内で失われた秘密鍵又はファイ ルシステムの鍵を回復する方策を提供する。 以下に鍵寄託システムを検討し、公開鍵暗号方式単独よりも多くのことが必要 とされていることを示す。Micaliの米国特許5,276,737と5,3 15,658(1994)は、順法的市民や法執行機関の要求を満たすと共に、 P.Feldman,28th annual FOCSに基づく公平な公開鍵 暗号(FPKC)方式を開示する。(S.Micaliの文献“Fair Pu blic−Key Cryptosystem”CRYPTO’92,113− 138頁,Springer−Verlag 1992をも参照)。Mical iの好ましい実施例には、Diffie−Hellman公開鍵暗号方式、及び RSAの公開鍵暗号方式をFPKC方式に転用する方法が開示され、Diffi e−Hellmanのそれに適用したFPKC方式の好適実施例では各ユーザは 、公開鍵を登録する為に5つの中央の信用機関(「信用できる第三者」としても 知られている)にそれぞれ割当て鍵を提出する。それ由、この解決策は、限られ た信用機関の利用を必要とし、この為極めて中央集極化される為、拡張性が無い 。本発明に於いては、秘密鍵が立証可能に自働的に寄託されるように、ユーザは 鍵ペアーを作成する。従って、信用できる第三者は何ら必要としない。寄託され た情報は、多数の分散された認証機関の一つに送られ得る。Micaliの構成 では,各信用機関は、それぞれの割当て鍵を検証する。割当て鍵が有効であれば 、データベースに保存される。その後、各信用機関は受理した値に署名を加えて 、鍵管理センターに提供する。5つの信用機関は夫々の割当て鍵機密データベー スを保守管理する責任を有す。他方、本発明の実施例では、鍵情報は一つの認証 機関によって検証され、正しい形態を有するならば、鍵は署名を受け、直ちに公 開鍵データベースの中に置かれる。ここでは、一つの機密データベースのみを必 要とされるに過ぎない。ユーザの鍵を管理するのに認証機関だけが必要とされる ので、起り得る通信オーバヘッド量が最小限にされる。これに対し、FPKC方 式では、鍵が適切に寄託されたことを信用機関のみが検証できる。検証は、それ がなければ回復不可能な鍵をユーザが容易に生成し得るので、必要とされる。本 発明では誰もが寄託されたことを検証できる。このことは、例えば自分の鍵が適 宜に寄託されたことを認証機関が保証しようとしないと市民が疑う場合にとりわ け有益である。 RSAに適用されたFPKC方式は、その内部にシャドウ(shadow)公 開鍵暗号システムが埋め込まれるので、法執行機関の要求に沿わないことが明ら かになった(J.Kilian,F.Leighton”Fair Crypt osystem Revisited”,CRYPTO’95,208−221 頁,Springer−Verlag,1995),シャドウ公開鍵暗号システ ムとは陰謀に係わるユーザによる傍受不能な通信を許容する鍵寄託システムに内 蔵され得るシステムのことである。 RSAに係るFPKC方式の欠点は、寄託機関に提供されたのと同一の秘密鍵 を犯罪者が使用すると仮定していることに存する。シャドウ暗号システムは、P KCの公開鍵中に存在するしきい値以下(subliminal)の経路として 従来から知られるものを利用している。これらの経路は、シャドウPKCの公開 鍵を表示するのに使用される。上掲のKilianとLeightonの文献は 、PKCをフェイルセーフ鍵寄託(FKE)システムに転用する方法を開示し、 具体的にはDiffie−Hellman及びDSSの様な離散対数に基づくP KCに対してFKEシステムを構築する方法が開示されている。それらの高価な プロトコルに於いてユーザと信用機関はユーザの公開鍵と秘密鍵を生成するプロ トコルに参加する。その際、信用機関は最終的な公開鍵の中にしきい値以下の情 報が含まれていないと確信する。又、ユーザは鍵が適切に寄託されていることを 確信する。このFKEシステムは、Diffie−Hellmanに係るFPK C方式と類似するが、但しプロトコルの追加通信オーバヘッドが存在する。この 為、FKEシステムはDiffie−Hellmanに係るFPKC方式と同じ 不効率性を被る。シャドウPKCシステムの脅威に関連して、本発明は、有限体 に於いて法指数演算内に意味の有るいくつかのビットを目立つことなく内蔵する 方法は知られていない事実に存在する。それ故、シャドウ暗号システムを離散対 数に基づくPKCに活用することは縁遠いように思われる。 De Santisら提案する寄託方式に於いては、信用機関は、犯罪活動の 疑いのある当事者の鍵を明らかにすると言うよりもむしろセッションのメッセー ジのみを明らかにすることが出来る。これは、公平暗号システムの概念を洗練し たものである。ユーザの恒久的な公開鍵と言うよりもむしろユーザのセッション 鍵を明らかにする方法を唱える他の技術は、Walkerや5Winston( TIS)及びIBMの“Secure Way”に見られる。これらの鍵リカバ リー技術では、セッション初期化に於いて、一団の信用機関の鍵に関してユーザ が認識していて、その鍵を使用することが求められる。これらの技術は、どの通 信セッションでも使用される新しいプロトコルの拡張を必要とし、更に公開鍵イ ンフラ(基盤)に必要とされる以上の多くの鍵をユーザが保管することを必要と するので、どのユーザにも過度の負担を与えることになる。 ElGamal暗号法に根拠を置く“鍵寄託案に代わる詐欺探知可能方策が文 献(E.Veheul,H.van Tilborg,“Binding El Gamal:A Fraud−Detectable Altermative to Key−Escrow Proposals”,Eurocypt’9 7,119−133頁Springer−Verlag,1997)に記載され ている。この方策は、ユーザが暗号化情報を、(暗号化情報が一団の信用機関に より回復され得る旨の)短いプルーフ(証明)と共に送信するのを可能にする。 この為、この方策は、信用できる第三者機関に依存しない利点を有するが、既存 の公開鍵インフラ(PKI)を必要とする。そこには、ElGamal法連係ア プローチに於ける欠点が横たわる。即ち、公開鍵インフラが寄託を受けなければ 、ユーザAはユーザBの公開鍵を用いてメッセージを暗号化でき、その後ElG amal連係方策を用いて最終的暗文メッセージを送信する。この場合、プルー フは、信用機関が当該暗文を回復できることを単に示すのに役立つに過ぎず、そ れ由犯罪行為の疑いのあるユーザの通信を法執行機関がモニターするのを妨げる 。悪用された場合には詐欺行為を探知できない。この様な悪用は、ユーザBの秘 密鍵が寄託されていないので起こり得る。ElGamal法連係スキームを悪用 するソフトウェアは、容易に配付でき、法執行機関の大規模な試みを著しく阻害 する。本発明は、公開鍵寄託インフラを確立する方法を開示するもので、上記の 欠点を被ることがない。ElGamal連係方策法に於ける様に、本発明は、非 対話型ゼロ知識証明の一般的技術を採用する。但し、本発明のプルーフは新しい 技術を内包する。この種プルーフの作成方法は、文献(A.Fiat,A.Sh amir,“How to Prove Yourself:Practica l Solutions to Identification and Si gnature Problems”,CRYPTO ’86 186−194 頁,Springer−Verlag,1987)に開示された。 鍵寄託スキームの全体像は文献(D.Denning,D.Branstad ,“A Taxonomy for Key Escrow Encrypti on Systems,”Communications of the AC M,v.39,n.3,1996)に表されている。文献(N.Jefferi es,C.Mitchell,M.Walker,“A Proposed A rchitecture for Trusted Third Party Services”,Cryptography:Policy and A lgorithms,LNCS 1029,Springer,1996)及び 文献(R.Anderson,“The GCHQ Protocol and Its Problems”,Eurocrypt ’97 134−148 頁,Springer−Verlag,1997)に於いては、関係ユーザの信 用できる第三者機関が各セッション鍵の設定段階に係わっている場合に於ける信 用できる第三者機関の寄託アプローチが記載されている。 今迄に知られる総ての鍵寄託解決策は、以下に示す不都合の幾つか又は大部分 遭遇する: (a)改ざん防止の実装を必要とするか、さもなければハードウェアの実装を 必要とする。これは実装コストを上昇させ、目的達成が遅くなる。 (b)機密扱いの或いは排他的独占なアルゴリズムの使用を必要とする。これ は、当該装置の機密性又は操作に懐疑的なユーザに受け入れ難い虞れがある。 (c)ソフトウェアで実装されているので、変更を受ける。この結果として操 作の不手際に陥ったり、多分に通信の傍受を不能にする。しかし、このことは、 ソフトウェア解決策の固有の問題である(この場合に求め得ることは、もしユー ザが機密性の達成の為のみにソフトウェアプログラムを採用する場合に、せいぜ い平文または鍵を復元できることである)。 (d)鍵生成及び/又は一般的用法に於いて過度のプロトコルの対話を必要と する。加えて、この対話は、小さい一団の集極化されたエンティティに対し行わ れ、この為通信量及び通信の遅滞が潜在的ボトルネックになる。ユーザには、信 用機関の鍵を所有して、各セッション初期化にそれを使用することが求められる 。更に、総ての通信プロトコルの改良を必要とする。 (e)信用できる過多の第三者機関(TTP)がシステム操作に関与すること が必要とされる。余りにも多くの当事者に信用を拡めることは、セキュリティの 侵害の危険を増大し、拡張性を狭める。 (f)TTPの数だけの暗号鍵の生成を必要とする。不正な又は信用失墜した TTPがユーザ鍵を改ざんしたり公開することによりユーザのセキュリティを危 険に陥れる虞れがある。 (g)秘密鍵や秘密割当て鍵のデータベースをユーザに代わって保守管理する ことが必要とされる。 (h)シャドウの公開鍵インフラを確立するのに使用できるが、寄託システム の目的を尽く無に帰す。 自働回復及び自働認証可能暗号システム 上記不都合により必要とされるものは以下に示す利点を備える新しい仕組みで ある: (a)安全性を喪失せずにソースコードの形態で配付することが出来る鍵寄託 システムであって、それ由適切な作動を確実ならしめる為に公に吟味し得るシス テムを提供する鍵寄託システム。加えて、本鍵寄託システムは、ソフトウェアで 利用できるので、大規模かつ迅速に、コスト効率良く実装され得る。つまり、当 システムを早期に配付できる。 (b)本発明の改良の可能性によりソフトウェア解決手段を受入れられないと 考えられる場合、改ざん防止ハードウェアに直接に実装することが可能である。 しかし、このことは:(a)の利点(例えば早期の配付)に逆影響を与える。 (c)本寄託システムは寄託機関、認証機関及びユーザの間に於ける理論的に 起こり得る通信プロトコルの対話の量を最小限しか要しない。鍵の登録の為には 、メッセージは多数の認証機関のうち一つに送信する必要があるに過ぎない。こ の仕組みは、鍵登録に基づき寄託システムと呼ばれている。比較の為、FPKC 方式の好適実施例では5つのメッセージがユーザから信用機関に送られ、その後 6つ以上のメッセージが鍵管理センターに送られる。 (d)本寄託システムを実装するのに、僅か一つだけの機密データベースを必 要とするに過ぎない。このデータベースは、認証を受ける必要があるに過ぎず、 シャドウ暗号システムの確立を防止する為に秘密に保てることが出来る。ユーザ の秘密鍵は、例え当該データベースが露見しても暴かれることがない。この点は FPKCと対称的である(即ちFPKCでは幾つかのデータベースの管理を必要 とし、データベースが危うくされたら、ユーザ鍵も危なくなる)。新しい本シス テムの上記利点は、通常の公開鍵方式に於ける如くユーザ鍵の確定及び検証に於 いて検証機関にのみ依拠していることになる。 (e)本寄託システムは、ユーザの秘密鍵が何人によっても検証されるのを可 能にする。この検証は、ユーザの対応公開鍵、証明書及び公開パラメータを前提 として、秘密鍵が寄託機関によって回復され得ることを、確かなものとする。比 較上、FPKC方式では信用機関のみがこの様な検証を行う。新しい本システム の上記利点は、普遍的検証可能性と呼ばれる。 (f)本寄託システムは、シャドウ公開鍵に対する抵抗性を有するように構成 され得る。他方、FPKCはシャドウ公開鍵に対する抵抗性を有さないことが明 らかにされている、つまり別のPKCスキームを表示させる為に誤用され得る。 本発明は、充分に万能的であって、上記(a)又は(b)の何れか(即ち、ソ フトウェア又はハードウェアでの実装)を選択できる。何れの場合も上記利点( c)乃至(f)の利点を充足できる。 発明の開示 後記されるべきことを含めて上記した目的や特徴の為に、本発明は暗号技術に 於いて新しいパラダイムを導入する。本発明は、ユーザ作成の秘密鍵が、寄託機 関の公開鍵を用いた暗号内にされたものの中に超過オーバヘッドなしに含まれて いることを、検証する方法を提供する。更にこの様な検証は、寄託機関の公開鍵 を所有している何人によっても行うことが可能である。本発明は、初動過程と、 信号を別々に処理する3つの基本的機能から成る。基本的機能とは鍵生成、鍵検 証、及び鍵リカバリー(回復)である。好適実施例の初動過程では、関係者は一 組のイニシャル公開パラメータにつき了承しあっており、そしてオーソリティ( 機関)が寄託公開鍵と対応秘密鍵を作成する。イニシャルパラメータと寄託公開 鍵は本システムの公開パラメータである。本システムの寄託機関、認証機関(C A)及びユーザの総ては公開パラメータにアクセスする。鍵生成過程に於いて、 本方法は、ユーザの公開/秘密鍵ペアを生成すると共に、寄託公開鍵を用いてユ ーザ秘密鍵の暗示的に暗号化したものを含む情報のストリングである回復可能性 証明書を生成する。ユーザの公開鍵と、回復可能性証明書とを含む信号情報が何 れかのエンティティに伝送され得る。検証過程に於いてユーザはその信号を検証 者に伝送する。検証過程は入力信号を取り入れて、処理して、真(true)又 は偽(false)を出力する。真の場合は、ユーザの秘密鍵は、回復可能性証 明書から、寄託機関によって回復できることを意味する。偽の場合は、秘密鍵は 回復できないことを意味する。本発明は公開鍵が寄託されることのない様に又公 開鍵が検証過程を及第して真の結果を得る様にユーザが公開鍵及び回復可能性証 明書を生成することが困難であるように、構成されている。好適実施例に於いて ユーザは認証機関(CA)の登録機関に対し自分の公開鍵を証明する(その後C Aは、検証の及第後、ユーザの公開鍵に署名を加える)。公開鍵を含むストリン グに関するCAの署名と共に公開鍵は、認証公開鍵になる。詳しくは、CAは、 ユーザの公開鍵及び回復可能性証明書を受取った際に、対応秘密鍵が回復できる かどうか検証する。回復可能ならば(即ち、検証過程で真が出力されれば)、公 開鍵はCAによって認証され、かつ/又は公の利用に供せられる。ユーザは、自 分の公開鍵を保持すること、典型的PKIに於ける如く(他のユーザの公開鍵を 含む)公開鍵データベースにアクセスすることが求められるに過ぎない。回復過 程に於いて、寄託機関は、ユーザの回復可能性証明書を使用するこの証明はCA から入力信号として得られる。寄託機関がその回復可能性証明書を処理し、又対 応公開鍵を用いて暗号化されたユーザの対応秘密鍵やデータは最終的出力信号で ある。 本発明は、ハードウェアとソフトウェアの両方で実装し得るので、基礎的技術 面で頑強性がある。ソフトウェアで実装される場合、所望通り機能するか、又ユ ーザのセキュリティを危うくしないか確認する為の吟味を容易に行うことが出来 る。ソフトウェア実装は、ソースコードの形態でディスケット又はコンピュータ 通信ネットワークを介して普及し得るので、本発明の速やかな普及を可能にする 。又、本発明は理論上有り得る通信を免れる。唯一の通信は、ソフトウェア自体 (又はハードウェア装置自体)を普及される行為と、(ユーザの公開鍵、回復可 能性証明書及び追加情報の)一度だけの転送である。信号は迅速に処理でき、信 号自体は若干量の情報からになる。本発明は、寄託を受けない典型的なPKIに 於いて使用される通信プロトコル(例えば、セッション鍵の確立、鍵配付や機密 メッセージの伝送など)に於ける変更を必要としない。この為、本発明は典型的 なPKIと両立できる。それ由、本発明は、暗号鍵の寄託及び回復の非常に効率 的な方法を提供する。添付図面の図1乃至7を参照して本発明を説明することと する。 図面の簡単な説明 図1は、m個の寄託機関で以って用いられた本発明の方法の初動過程を示すデ ータの流れの模式図である; 図2は、本発明を用いて公開/秘密鍵ペアと回復可能性証明書を生成する過程 に於ける各基本的ステップを示す流れ図である; 図3は、秘密鍵の回復可能性を検証する過程に於けるデータの流れの模式図で ある; 図4は、本発明を用いて鍵を登録する過程に於けるデータの流れの模式図であ る; 図5は、寄託機関による秘密鍵の回復の過程に於けるデータの流れの模式図で ある; 図6は、包括的な公開鍵システムとその主要構成要素及び動作を示す; 図7は、本発明の採用による寄託可能公開鍵システムと、その構成要素及び動 作を示す。 発明を実施するための最良の形態 〔第1実施例〕 以下に本発明の好ましい第1実施例を説明する。この実施例の変更態様は後ほ ど説明することにする。前以って言及しておくと、選ばれたハッシュアルゴリズ ムはSHA(Schneier 2nd edition 442−445頁) である。但し、いずれの暗号ハッシュアルゴリズムも然るべく適用できる。実施 例に於けるパラメータはそれぞれの群から無作為均等に選ばれた。別の実施例で は、値を選び取るのに別の確立分布が用いられる。 図1に示す実施例のシステム初動は、本暗号システム初期化する。実施例では 関係当事者は、大きな素数rにつきq=2r+1と、p=2q+1に於けるq, pも素数であることを互いに了承している。この関係を満たすrの値は、例とし て小さい値であるが5と11がある。以下は16進数で表した1024ビット長 のrの値である: fd90e33af0306c8b1a9551ba0e536023b4d2 965d3aa813587ccf1aeb1ba2da82489b8945 e8899bc546dfded24c861742d2578764a9e7 0b88a1fe9953469c7b5b89b1b15b1f3d7759 47a85e709fe97054722c78e31ba202379e1e 16362baa4a66c6da0a58b654223fdc484496 3478441afbbfad7879864fe1d5df0a4c4b64 6591 1024ビット長のrは暗号システムで使用するには充分に大きな値である。 r,q,pの値は、単にある素数を見つけるのと同程度に容易に見つけられるも のでないが、見つけるのに手に負えないほどでない。必要とされるのは例えば多 重精度(multiprecision)ライブラリー関数を用いて実装可能な 効率性の高いアルゴリズムである。この種アルゴリズムにはKaratsuba 掛算法、Mongomery通分法、足し算連鎖法、及びRabin−Mill erの確率的素数性(primality)テスト(J.Lacy,D.Mit chell,W.Schell,“CryptoLib:Cryptograp hy in Software,”AT&T Bell Laboratori es,cryptolib@research.att.com)がある。 以下の方法は、r,q,pに対する大きな値を効率良く見つけるのに使用する ことができる。但し、r mod 3は2(即ち、r mod 3=2)でなけ ればならないものとする。このとき、rが素数でなければ、r mod 3は0 であり得ず、qが3で割り切れれば、r mod 3 は1である。更に、r mod 5は、1又は4(即ち、r mod 5=1又はr mo d 5=4)でなければならないものとする。このとき、rが5で割り切れれは 、r mod 5 は2であり得ず、qが5で割り切れればr mod 5は2 であり得ず、pが5で割り切れれば、3であり得ない。この方法を「試行剰余演 算(trial remaindering)」と呼ぶことにする。試行剰余演 算を実行することにより、試行割算法、及び確率的素数性テストを行う前に、r ,q,pに対する値を速やかに算出できる。例えば251までの試行剰余演算を 一旦実行し終えたら、r,q,pにつき試行割算法を実行する。r,q,pが算 出されないときは、r,q,p,r,q・・・の順に代わる代わるRabin− Millerの確率的素数性テストを実行する。予め定められた小さい潜在的合 成証明(small potential witness of compo siteness)を用いて素数性テストを実行した。r,q,pの何れかが合 成数であると判断されたときは、rをr+2×3×5×・・・×251に等しい rを定め、先ず試行割算法を次に潜在的証明の同一集合を繰り返す。斯くして、 rに関する先行条件が確認されているので、再度、試行剰余演算を実行する必要 がない。一旦r,q,pが見い出されれば、強い乱数生成器を用いて見つけられ る潜在的証明を使用して追加の素数性テストを実行する。これらのテストにr, q,pが及第したならば、それらは素数であると推定され、システムパラメータ として宣言される。 関係当事者が或る値gと奇数値glとを互いに了承しているか、CAはそれら の値を選ぶ。値gは、集合{1,2,3,・・・,p−1}内の要素を生成する 。他方奇数値g1は2g以下で、2gと互いに素な値の外総てを生成する。但し 、2gは一つの乗法群で、生成器を具備する。gとsは実施例では奇数である。 値r,q,p,q及びg1は、システムのイニシャルパラメータであって、機密 性を損なうことなく公の便に供されている。これらの値は当該機関自身、かつ/ 又は他の者によって選び出すことができる。一旦g1とqが特定されれば、m個 (m≧1)の寄託機関は、(寄託公開鍵とも呼ばれる)寄託機関公開鍵(Y,g 1,2q)と、寄託機関秘密鍵(z_1,z_2, ・・・,z_m)とを一括 的に計算し始める。その際、一つの寄託機関i(1乃至mの間の一つ)は、{1 ,2,・・・,2r−1}から無作為に一つの値z_iを選び出し、その後、2 q を法とするg1のその値z_iの累乗であるY_i(、即ちY−i=g1(z_i) mod 2q)を定める。その後、少なくとも一つの寄託機関が(m−1)個の 他の寄託機関からY_iの情報の総てを受け取る。実施例では寄託機関i(2乃 至mの間の一つ)が寄託機関1にY_iを送信する。Y_iの送信は、図1のス テップ11により示されている。Yは、2qを法とするY_iの積であると、少 なくとも機関の一つによって計算される。実施例ではYは寄託機関1によって計 算される。次に寄託機関1は、(g1/Y)が2q以下で、2qと互いに素な値 の総ての生成元であることを検証する。生成器でなければ、ステップ12が実行 される。ステップ12では、他のm−1個の機関は、Zに対する新しい値を選び 出したことが伝えられ、これにより手続がステップ11の最初から再開される。 実施例では、寄託機関1がもう一度z_1を選び出す。他の実施例では、少なく とも1個かm以下の個数の寄託機関がzに対する新しい値を生成する。本過程は 、(g1/Y)が2q以下で2qと互いに素な値の総ての生成元である迄、必要 なだけ何度も継続される。その後Yは、一つ又はそれ以上の寄託機関によって公 開されるか、ユーザ及びCAの利用に供される。 図2は、ユーザのシステムがどの様にして公開/秘密鍵ペア及び回復可能性証 明書を生成するのかの過程を示す。(寄託機関によってユーザの利用に供される )信号Yを得たならば、ユーザのシステムはユーザの為にElgamal暗号鍵 (y,g,p)の生成を始める。信号Yはアプリオリに本発明に含められてもよ い。本発明は{1,2,・・・,2r−1}からの値kを無作為に選び出すこと によって進められる。このことは図2のステップ2004で表される。ステップ 2005に於いて、本発明はC=(g1のk乗,つまりg1k)mod 2qを 計算する。ステップ2006に於いて、((g1/Y)の4乗,つまり(g1/Y)4 )mod 2qであるユーザの秘密鍵xが計算される。 次いで、ユーザシステムはステップ2007に進み、ユーザの秘密鍵がC内で 適切に暗号化されたことを検証する為に利害関係者によって使用され得る証明書 を計算する。この証明書には値vが含まれ、この値はpを法とするgのw乗(つ まりgwmodp)からシステムによって計算される(但し、wは2qを法とす る(1/Y)のk乗である、つまりw=(1/Y)k mod 2q)。公開鍵パ ラメータは、vc mod pを計算することによって、gとvから回復され得る システムは、いわゆる3つの非対話型(non−interactive)ゼロ 知識証明も処理し、それらを証明書に含める。各非対話型証明に於ける反復数を nとする。実施例ではnを40と定めている。第1の証明は、ユーザがCに於け るkを知っていることを自ら証明できるように構成されている。第2の証明は、 ユーザがvに於けるkを知っていることを自ら証明できるように構成されている 。最後の証明は、pを法とするvのC乗(つまりvc mod p)に於けるkを ユーザが知っていることを自ら証明できるように構成されている。「ユーザが値 xを知っている」との表現は、システムが自らのステートに値xを有することを 、意味する。 より詳しくは、非対話型証明を確立する為にシステムは次の如く進行する。シ ステムは、{1,2,・・・,2r-1}から無作為に値e_1,1,e_1,2,・・ ・,e_1,n,e_2,1,e_2,3,・・・,e_2,n,及びe_3,1,e_3,2,e_3, 3,・・・,e_3,nを選び出す。1乃至nに亘るiに関し、当システムは、2q を法とするg1の(e_1,i)乗である(つまり、gIe 1,i mod 2q)で あるI_1,iを定める。1乃至nに亘るiに関し、本発明は、pを法とするvの d_i乗である(つまり、i=vd_i mod p)であるI_2,iを定める。但 し、d_iは2qを法とするYの−e_2,i乗である(つまり、d_i=Y(-ez ,i) mod 2q)。1乃至nのiに関し、本発明は、pを法とするyのt_ i乗である(つまり、i=yt-imod p)であるI_3,iを定める。但し、 t_iは2qを法とする(g1/Y)のe_3,i乗である(つまり、t_i=( g1/Y)(e-3,i) mod 2q)。その後、本発明は、1乃至nに亘るiに 関しタプル(I_1,i,I_2,i,I_3,i)を共に連結することによって形成さ れる集合のSHAハッシュである、値rndを計算する。但し、rndは、適宜 強さの暗号ハッシュ関数を用いる、Iの値の総ての関数である。他の実施例では 、ハッシュ関数は160ビットと相違する効果的範囲の大きさを有することが出 来る。ハッシュ関数のもっと大きな範囲はnに対する意味の有るより大きな値を 可能にする。当システムは、rndの対応3nの最小ビットの各々である当該ビ ットサイズの値b_1,1,b_1,2,・・・,b_1,n,b_2,1,b_2,2 ,・・・,b_2,n,b_3,1,b_3,2,・・・,b_3,nの各々を定める。b に対する値はチャレンジ(質疑)ビットであって、それらを見つける方法はFi at−Shamir Heuristic法として知られている。その後、当シ ステムは、それらのチャレンジビットに対するレスポンス(応答)の計算に進む 。1乃至3のiと、1乃至nのjとに関して、本発明は、2rを法とするe_i ,j+(b_i,j)k(つまり、e_i,j+(b_i,j)k mod 2 r)であるz_i,jを定める。以上で図2のステップ2007の説明を尽くし た。 システムはステップ2008に進む。ステップ2008に於いて、本発明は、 1乃至nに亘るiに関し、パラメータC,v,y(I_1,i,I_2,i,I_3, i),及び(z_1,i,z_2,i,z_3,i)を出力する。別の実施例では、値k は本発明によってユーザに対して出力される。その後、ユーザは、自分の秘密鍵 が寄託機関によって回得され得ることを後ほど対話的に証明するオプションを有 する。このことは後で詳しく説明する。値bを証明書の一部とすることもできる か、bに対する値はIに対する値からのみ導かれ得るので、必ずしもそうしなく とも良い。 今までの実施例の説明によって、CA及びオーソリティによって使用される為 にシステムがどの様に初動させられるか、又公開/秘密鍵ペアと回復可能性証明 書を生成する為にシステムがユーザ(潜在的受信者)によってどの様に使用され るかを明らかにした。回復可能性証明書は、提出された者に対して、公に特定さ れる属性を生成鍵が有することを示すストリングである。以下に、xがCから回 復され得ることを検証者に対して証明する為に、本発明がユーザにとってどの様 に使用されるか説明する。この過程は図3に示される。検証者は、CA、寄託機 関、或いはシステムの一部である他のもので在り得る。 図3の検証過程は次の通りである。ステップ3009に於いて、ユーザは、上 記した如く本発明を用いる公開/秘密鍵ペア,xの暗号,及び証明書を生成する 。ステップ3010に於いて、ユーザは検証者に対して、それらのパラメータを 含む信号を伝送する。ステップ3011に於いて、検証者はこの信号を用いて、 ユーザの秘密鍵が寄託機関によって回復され得るかどうか検証する。その際に、 検証者は、ユーザの公開鍵、暗号C、対応証明書、及び寄託公開鍵Yを用いる。 ユーザの信号が処理される態様をここで詳細に説明する。検証システムは、公 開鍵かつ/又は証明書が無効ならば、0を出力し、又無効でなければ1を出力す る。本発明は、2次的処理を用いて、検証者に対して0が戻された場合公開鍵が 無効であることを示す様にしてもよい。同様に、検証システムは、及第する有効 性について検証者に通知する様にしてもよい。 検証を遂行する為に、検証システムは、最初にy=(vのC乗、つまりvc) mod pであることを検証する。もしyがvc mod pに等しくなければ、 検証システムは0の値を戻す。その後、検証システムは、ユーザの証明書内に含 まれる3つの非対話型ゼロ知識証明を検証する。本発明は、証明書生成過程で遂 行された(この過程は図2に関連して説明した)のと同じ態様で、1乃至nに亘 るiに関して(b_1,i,b_2,i,b_3,i)を計算する。 第1の非対話型証明に関して、検証システムは、1乃至nに亘るiに関してb _1,i=0ならば、g1のz_1,i乗はI_1,i mod 2qに等しい(つま り、g1(z 1,i)=I_I,i mod 2q)ことを調べる。もしこれらの等 式の何れかが成立しなければ、検証システムは0の値を戻す。以上で第1の非対 話型証明の説明を尽くした。 第2の非対話型証明に関し、検証システムは、1乃至nに亘るiに関してb_ 2,i=1ならば、gのw_i乗はI_2,i mod pに等しい(つまり、gw i =I_2,i mod p)ことを調べる。ここでw_iは、2qを法とする1/ Yの2乗である(つまり、w_1=(1/Y)z 2mod 2q)。又、検証シ ステムは、1乃至nのiに関し、b_2,i=0であるならば、vのv_i乗は、 I_2,i mod pに等しい(つまり、vv i=I_2,i mod p)こと も検証する。ここでv_iは、2qを法とする(1/Y)のz_2,i乗である( つまり、v_i=(1/Y)z 2,i mod 2q)。もしこれらの等式の何れか が成立しなければ、検証システムは0の値を戻す。以上で第2の非対話型証明の 説明を尽くした。 第3の非対話型証明に関し、本発明は、1乃至nに亘るiに関してb_3,i= 1ならば、gのw_i乗はI_3,i mod pに等しい(つまり、gw i=I _3,i mod p)ことを調べる。ここでw_iは、2qを法とする1/Yのz _3乗である(つまり、w_i=(1/Y)z 3,i mod 2q)。又、検証シ ステムは、1乃至nに亘るiに関しb_3,i=0であるならば、vのv_i乗は 、I_3,i mod pに等しい(つまり、vv i=I_3,i mod p)こ とも調べる。ここでv_iは、2qを法とする(1/Y)のz_3,i乗である( つまり、v_i=(1/Y)z 3,i mod 2q)。もしこれらの等式の何れか が成立しなければ、検証システムは0の値を戻す。検証の総てにパスしたならば 、値1が検討システムによって出力される。 図4に於いて、ユーザは自分の公開鍵をCAに対し証明する。この過程のステ ップ4012に於いて、ユーザは自分の公開鍵及び回復可能性証明書を、既に説 明した如く生成する。この信号をユーザはCAに伝送する。これは図4のステッ プ4013に対応する。ステップ4014に於いて、CAは検証者として振る舞 い、ユーザの秘密鍵が寄託機関によって回復され得ることを検証する。ここまで ステップ4012乃至4014は、図3の鍵検証過程に於けるステップ3009 乃至3011と同じである。しかし、CAは、更に要求に応じて、他の者の利用 に供せられる検証過程を及第する鍵を生成し、かつ/又はその鍵を証明すること になる。もしユーザの公開鍵が検証過程を損なった場合は、証明の試みは無視さ れるか、ユーザに対して証明の試みの失敗が通知される。 本発明が使用される環境の要求に応じて、公開鍵の登録の為に、又ユーザが秘 密鍵の一部を明らかにせずに知っていることを証明する為に、ユーザは正確な情 報の提出が求められる。その種の情報はパスワード、社会保険証番号、過去に使 用された秘密鍵などであったりする。CAが信用できるエンティティである場合 には、CAは単純にユーザの公開鍵にデジタル署名して、そのCAの署名と共に 、要求に応じて利用に供される鍵を作成することができる。もしCAが信用でき なければ、証明書は公開ファイルに保存されるべきで、その証明書を回復可能性 証明書と一緒に寄託機関に提供すべきである。寄託機関が代わって回復可能性を 保証する。以上で公開鍵証明過程の説明を尽くした。 最後に説明する過程は秘密鍵回復過程である。この過程は図5に示される。こ の過程に於いて本発明は、Cに基づくユーザの秘密鍵を回復する為にn個の寄託 機関によって使用される。全部でm個の寄託機関は、図5のステップ5015に 示す如く、Cを入手する。他の実施例では、CAは、一つ又はそれ以上の寄託機 関に対してCかつ/又はパラメータを伝送する。それ由、寄託機関は既にCを所 有している。この時、寄託機関iは2qを法とするCのz_i乗(つまり、t_ i=Cz imod 2q)であるt_iを計算する。但し、z_iはi番目の寄 託機関の秘密鍵である。1乃至mに亘るiに対し成される。その後、寄託機関2 乃至mは、ステップ5016に示されている如く、寄託機関1に対してtに対す るそれぞれの値を送信する。その後、寄託機関1は、t_iに対する複数の値の 積である2qを法とするYのk乗(つまりYk mod 2q)を計算する(iは 1乃至mの範囲)。その後、寄託機関1は、x=(C/(Yのk乗、つまりYk )mod 2q)を計算することによって、ユーザの秘密鍵を入手する。本技術 分野に於ける別の方法として、xが機関の間に別々に表象されるように、xを計 算する方法がある。この方法もx自体を明らかにすることなしにxに対応する公 開鍵を用いて暗号化されたメッセージを機関が復号することを可能にする。 以上に説明したものは自働回復及び自働認証可能な(ARC)暗号システムで ある。この暗号システムのユーザは、機密通信の為の典型的なPKI(公開鍵イ ンフラ)と同じ様に、公開鍵システムを採用する。これを図6及び7に図式して 示す。図6は、PKI環境に於ける典型的公開鍵暗号システムである。ユーザが 従うべきステップを次に示す。 (1)ユーザは先ずCAの情報とアドレスを読む。 (2)ユーザは公開/秘密鍵ペアを生成し、公開鍵をCAに送る。CAに於ける 機関の登録はユーザの同一性を検証し、ユーザを公開鍵の所有者として特定する (公開鍵に関する)CAの証明書と一緒に、公開鍵を公開する。 (3)そのユーザに対してメッセージを送ろうとする別のユーザに関しては、C Aのデータベースから公開鍵が読み取られ、証明書が検証される。 (4)その後、新しい公開鍵を用いてメッセージが暗号化されて、送信される。 図7は、自働回復及び自働認証可能(ARC)暗号システムを図式して示す。追 加的動作は次の通りである。 (O)オーソリティ(機関)は寄託公開鍵を生成し、それをCAに提供する。 ス テップ1と2は、プルーフが公開鍵と一緒に送られる点を除き、類似する。ステ ップ3と4はシステムの動作であって、同じである。ステップ5と6は鍵が寄託 から回復された場合を示す。 (5)寄託機関がCAから情報を得る。 (6)寄託機関がユーザの秘密鍵を回復する。 第1実施例の変更態様では、それ自体を明らかにすることなしに、xに対応す る公開鍵を用いて暗号化された秘密鍵又はメッセージを、機関の充分に大きなサ ブセットが回復することができる。これは、独立してtに対する適当な値を受取 ることによって他の機関により行われる。機関の一部又は総てが全く信用できな いか利用不能な場合に頑強性を加えることになる。又、ユーザのパラメータが検 証過程を用いて最初に検証され得る様に、公開鍵と暗号文と一緒に回復可能性証 明書が送られるように機関は、要求することができる。以上で秘密鍵の回復過程 を説明し尽くした。 以下は、本発明の第1実施例の幾つかの変更態様である。一つの変更態様は、 フォーム(Y,g,2(qのt乗、つまりqt))のオーソリティ公開鍵の使用を含 む。但し、フォームのtは1より大きい整数である。ここではtが1であるよう に決めたが、原始根に基づき他の値も使用でき、動作する。別の変更態様は、公 開パラメータの一部として2つ又はそれ以上の大きな素数の積を使用する。明ら かに、使用した法指数演算の正確な構成は、本発明の範囲から脱することなしに 意味を有するように変化させることができる。別の変更態様として3つのゼロ知 識証明に関し、対話型のものを使用することができる。この場合、鍵生成中のシ ステムはユーザに対してkを出力することが求められる。その値kは対話型プロ トコル間で使用され、その結果として検証者は、ユーザの秘密鍵が寄託機関によ って回復されたと、確信することができる。但し、kの出力によって結果的にシ ャドウ公開鍵暗号システムになる虞れがある。これは、((g1,C,2q),k)か2q を法とする有効なElGamal公開/秘密鍵ペアである事実から来る。 更に別の変更態様では、CA又は他の信用されたエンティティがユーザの公開 鍵を見えなくする更なる処理を行う。CAは、k s・tを選択する。g’=( gのk乗、つまりgk)mod pは生成器であって、ユーザに対して(g’( yのk乗、つまりyk)mod p)を送る。g’は、ユーザのElGamal 生成器で、y’=(yのk乗、つまりyk)mod pはユーザの最終鍵(g',y ’ ,p')の一部である。これによってユーザがyに於けしきい値以下チャンネ ルを利用することを防ぐ。 別の変更態様では、ユーザは、Diffie−Hellmanの鍵交換の為に 使用される自らの公開鍵を公開する。例えば、次の方法が使用できる。aをユー ザAの秘密鍵とし、又、bをユーザBの公開鍵とする。y_a=(gのa乗、つ まりga)mod pをユーザAの公開鍵とし、又、y_b=(gのb乗、つま りgb)mod pをユーザBの公開鍵とする。この場合、ランダムセッション 鍵を確定する為に、ユーザBはランダムストリングsを選ぶ。その後、ユーザA はユーザBに対してm=(y_bのa乗、つまり(y_b)a)smod pを 送る。ユーザBは、m/(y_aのb乗、つまり(y_a)b)mod pを計算 することにより、sを回復する。ユーザAとBは、公知の公開関数を用いて(例 えば一方向ハッシュ関数を適用して)sからセッション鍵を導く。その後、セッ ション鍵を寄託から取り出すごとが求められたときには、信用機関は、s延いて はセッション鍵を回復する為に、a又はbを使用することができる。 以下に本発明の第2実施例を説明する。選ばれたハッシング・アルゴリズムは SHA(Schneier 2nd edition,442−445頁)であ るが、何れの暗号ハッシング・アルゴリズムも然るべく適用できる。便宜上ハッ シュ結果の最小の意味の有るビットを用いたが、サブセット・ビットも使用可能 である。本実施例に於けるパラメータはそれぞれの群又はドメインから無作為均 等に選ばれた。別の実施例では、値を選び出すのに別の確率分布が用いられる。 乱数生成器や疑似乱数生成器に基づくその種の選出は本技術分野で利用可能であ る。 図1に示す本実施例のシステムの初動は本暗号システムを初期化する。実施例 では、1≦i≦mとして寄託機関iは秘密割当て鍵(private shar e)D_i,及び対応公開割当て鍵(public share)E_iを生成 する。複数の秘密分割鍵D_iは、共有秘密鍵D(shared privat e key)を形成する。寄託機関2乃至mは自らのE_iを寄託機関1に送る 。これはステップ11により示されている。寄託機関1は総ての公開割当て鍵E _iを結合して、共有公開鍵Eを計算する。Eに対する値は、ステップ13で示 す如く寄託機関1から公開提供される。各寄託機関iは、D_iを秘密に保持す る。具体的な例として、寄託機関は強い素数pと、({1,2,・・・,p−1 }を生成する)値gとを生成可能である。割当て鍵D_iは{1,2,・・・, p−1}及びE_i=(gのD_i乗、つまりgD i)mod p)から無作為 均等に選び出され得る。Eはpを法とするE_iの値の総ての積である。鍵の結 合生成の変更態様、及び単一の寄託機関に対する実装も可能である。 図2と類似する過程は、ユーザのシステムが公開/秘密鍵ペアと、回復可能性 証明書を生成する。寄託機関によってユーザの利用の便に供される公開鍵Eを入 手し(出来る限り検討され)たならば、ユーザのシステムはユーザの為にEIG amal公開鍵(y,g,p)の生成を開始する(T.ElGamal,“A Public−Key Cryptosystem and a Signat ure Scheme Based on Discrete Logarit hms”,CRYPTO’84,10−18頁,Springer−Verla g,1985)。ユーザのシステムは{1,2,・・・,p−1}から無作為均 等に秘密鍵Xを選び出して、gx modpであるY(つまりY=gx modp) を計算する。この鍵生成プロセスはステップ2006に対応する。 その後、システムはステップ2007に進んで、(利害関係者、とりわけCA によって使用され得る)証明書を計算する。その証明書により、ユーザの秘密鍵 xが回復可能性証明書Pから回復され得ることを検証する。いま、乱数sを用い て公開鍵Eによるメッセージaの暗号をENC(a,s,E)とする。このEN Cは、意味論的に安全な確率公開鍵暗号であって、確率暗号中には乱数の為のス トリングが用いられている。例えば、ENCはElGamal暗号であってもよ いし、最適非対称暗号であってもよい(Bellare−Rogaway,“O ptimal Asymmetric Encryption”,Eurocr ypt’94)。いま、共有形態で実行される対応公開鍵の復号関数をDECと すると、DEC(ENC(a,s,E),D_1,D_2,・・・,D_m)=a。 Pは以下のアルゴリズムに従って形成される。 1.P=() 2.i=1乃至Mに関して演算する 3.r_iを無作為にドメイン{1,2,・・・,p−1}から選び出す 4.ENCでの使用の為に2つのランダム・ストリングs_i1,とs_i,2を 選び出す 5.Q_i=(gのr_i乗)mod p 6.C_i,1=ENC(r_i,s_i,1,E) 7.C_i,2=ENC(r_i−x mod p−1,s_i,2,E) 8.(Q_i,C_i,1,C_i,2)をPの末に加える 9.val=H(P) 10.Mの最小の有意義なvalのビットであるb_1,b_2,・・・,b_M を定める 11.i=1乃至Mに関して演算する 12.w_i=r_i−(b_i)x 13.Z_i=((w_i),(s_i,j)。但し、j=1+b_i 14.Z_iをPの末に加える 斯くして、p=((Q_1,C_1,1,C_1,2),・・・,(Q_M,C_M,1,C_ M,2),Z_1,・・・,Z_M)。Hは、適当な公開一方向にハッシュ関数(例え ば、SHA)である。それ由、b_iはPから回復され得る。bに対する値はチ ャレンジ・ビットであって、その値を見つけたり、使用する方法はFiat−S hamir Heuristicと同じである。ユーザのシステムはステップ2 008に於いて(y,x,p)を出力する。尚、ユーザは、自分の秘密鍵xが寄 託機関によって回復され得ることを対話的に証明するオプションを有している。 このことは、後ほど詳細に説明する。Mは安全性の大きな充分なパラメータ(例 えば、M=50)である。 今までの実施例の説明にによって、CA及びオーソリティによって使用される 為にシステムがどの様に初動させられるか、又公開/秘密鍵ペアと回復可能性証 明書を生成する為にシステムがユーザ(潜在的受信者)によってどの様に使用さ れるかを明らかにした。回復可能性証明書は、生成公開鍵に対応する秘密鍵が寄 託機関によって、回復され得ることをPを用いて提出された者に対して示すスト リングである。以下に、xがPから回復され得ることを検証者に対して証明する 為に、本発明がユーザにとってどの様に使用されるか説明する。この過程は図3 に示される。検証者は、CA、寄託機関、或いはシステムパラメータを知る他の もので在り得る。 図3の検証過程は次の通りである。ステップ3009に於いて、ユーザは、上 記した如く本発明を用いる公開/秘密鍵ペア,及び証明書を生成する。ステップ 3010に於いて、ユーザは検証者に対して、それらのパラメータを含む信号を 伝送する。ステップ3011に於いて、検証者はこの信号を用いて、ユーザの秘 密鍵が寄託機関によって回復され得るかどうか検証する。この過程に於いて、検 証システムは、y,対応証明書P,及び寄託公開鍵Eを用いる。検証システムは 、先ずy<pであることを調べる。検証システムは、P中の値の総てが正しい集 合内に在るか調べる。又、検証システムは、総てのiとjに対する値C_i,j が何らの反復を含んでいないことも調べる。検証システムは、総てのiに対する Q_iの何れも反復していないことを調べる。これらの検証の何れかが失敗した 場合、偽(false)を戻す。その後、検証システムは、証明書生成過程に於 けるのと同様にb_1,b_2,・・・,b_Mを計算する。1乃至Mのiに関して 、検証システムは次のことを検証する。 1.ENC(w_i,s_i,j,E)=C_i,jo但し、j=1+b_i 2.(Q_i/yのb_i乗、つまりyb i)) mod p=(gのw_i乗 、つまりgw i mod p 検証システムは、総ての検証が及第し、かつ上記1と2が1≦i≦Mに対し満 たされる限り、真(true)を戻す。本発明は、2次的処理を用いて、検証者 に対して偽(false)が戻された場合公開鍵が無効であることを示す様にし てもよい。同様に、検証システムは、及第の有効性について検証者に通知する( 検証システムが真(true)を戻す)様にしてもよい。 図4に於いて、ユーザは自分の公開鍵をCAに対し証明する。この過程のステ ップ4012に於いて、ユーザは自分の公開鍵及び回復可能性証明書を、既に説 明した如く生成する。この信号をユーザはCAに伝送する。これは図4のステッ プ4013に対応する。ステップ40145に於いて、CAは検証者として振る 舞い、ユーザの秘密鍵が寄託機関によって回復され得ることを検証する。 ここまでステップ4012乃至4014は、図3の鍵検証過程に於けるステッ プ3009乃至3011と同じである。しかし、CAは、更に要求に応じて他の 者の利用に供せられる検証過程を及第する鍵を生成し、かつ/又はその鍵を証明 することになる。もしユーザの公開鍵が検証過程を損なった場合は、証明の試み は無視されるか、ユーザに対して証明の試みの失敗が通知される。 本発明が使用される環境の要求に応じて、公開鍵の登録の為に、又ユーザが秘 密鍵の一部を明らかにせずに知っていることを証明する為に、ユーザは正確な情 報の提出が求められる。その種の情報はパスワード、社会保険証番号、過去に使 用された秘密鍵などであったりする。CAが信用できるエンティティである場合 には、CAは単純にユーザの公開鍵にデジタル署名して、そのCAの署名と共に 、要求に応じて利用に供される鍵を作成することができる。もしCAが信用でき なければ(これはPK1に於ける典型的な仮定でない)、証明書は公開ファイル に保存されるべきで、その証明書を回復可能性証明書と一緒に寄託機関に提供す べきである。寄託機関が代わって回復可能性を保証する。以上で公開鍵証明過程 の説明を尽くした。尚、CAは、完全性の為の認証情報と共に、おそらくCA自 身の鍵を用いた暗号化形態での回復可能性証明書を保持している。 最後に説明する過程は秘密回復過程である。この過程は図5に示される。この 過程に於いて本発明はPに基づくユーザの秘密鍵を回復する為にm個の寄託機関 によって使用される。全部でm個の寄託機関は、図5のステップ5015に示す 如く、Pを入手する。他の実施例では、CAは、一つ又はそれ以上の寄託機関に 対してyとPかつ/又はパラメータを伝送する。それ由、寄託機関は既にyとP を所有している。この時、寄託機関は、Pを復号するのに自分の割当て鍵D_1 ,D_2,・・・,D_mのサブセットを用いて、(例えばDECを用いて)未開 封(unopened)なC_i,jの総てを開ける。これは寄託機関iをして ユーザの秘密鍵のi番目の割当鍵を回復させることによって達成される。本過程 に於いて、寄託機関iは未開封なC_i,jに対するM値をPから抜き出し、そ れらの値をD_iを用いて復号する。最終的な値は、図5のステップ5016で 示される如く他の寄託機関からの値と一緒にされる。その後一緒にしたものは、 未開封な値C_i,jの総てをPから復号する為に、機関によって使用される。 従って、総てのC_i,jに対応する平文の総ては寄託機関に知られる。本技術 分野に於いては、未開封なC_i,jに対応する平文を回復する為の別の方法が 存在し、その結果、未開封な平文は、機関の間で別々に表象される。p−1を法 として各々差し引かれたときに、y=(gのx乗、つまりgx)mod pに於 ける指数xに等しい一対の値に関して、各ペアC_i,1とC_i,2の平文を 、寄託機関は調べる。又、(gのx乗、つまりgx)mod pの量は、正しさ を確認する為に、公開のyと照合され得る。一旦その種のペアが見い出されれば 、ユーザの秘密鍵は見い出される。 以下に本発明の第3実施例を説明する。この実施例では、本システムのユーザ は混成公開鍵(composite public keys)を生成する。ユ ーザのシステムは、係属中の米国特許出願08/920,504(Youngと Yung名義)に記載されているのと同様に、nとsを生成する。但し、nは2 つ(好ましくは強い)素数pとqの積であって、sは(nの上位オーダ・ビット (upper order bits)を導く為に、公開の一方向関数との関連 で使用され得る)ストリングである。eとdをそれぞれ公開指数と秘密指数(例 えば,RSAに関する如く)を示すものとする。以下にPがどのように形成され るかを示す。 1.P=() 2.mを法としてストリングt_0を無作為に選び出す 3.t_0をPの末に加える 4.i=1乃至Mに関して演算する 5.a_i,1を集合{1,2,・・・,(p−1)(q−1)−1}から無作為に 選び出す 6.a_i,2=d−a_i,1 mod(p−1)(q−1)を計算する 7.2つのランダムストリングs_i,1とs_i,2をENCで使用させる為に 選び出す 8.t_i=H(t_(i_i)) 9.v_i,1(t_iのa_i,1乗)mod n 10.v_i,2=(t_iのa_i,2乗)mod n 11.Q_i=(t_i,v_i1,v_i,2) 12.C_i=ENC(a_i,1,s_i,1,E) 13.C_i,2=ENC(a_i,2,s_i,2,E) 14.(Q_i,C_i,1,C_i,2)をPの末に加える 15.val=H(P) 16.Mの最小の有意義なvalのビットであるb_1,b_2,・・・,b_M を定める。但し、b_iは{0,1}に属す 17.i=1乃至Mに関して演算する。 18.Z_i=(a_i,j,s_i,j),但しj=1+b_i 19.Z_iをPの末に加える 20.sをPの末に加える 斯くして、P=(t_0,(Q_1,C_1,1,C_1,2),・・・,(Q_M,C_ M,1,C_M,2),Z_1,・・・,Z_M,s)。上に表われたHは、適度なサ イズのt_iを生成する為に、SHAに、又は幾つかのSHA応用例を連結した ものに基づかせることが出来る。ほぼt_iはn以下で、nと互いに素な要素の 集合に属する。 検証システムは従来と若干相違する。検証システムは、最初にnが値の正しい 集合からnが選び出されたかどうか調べる。nのk/2上位オーダ・ビットに対 応する整数をuと措定する。検証システムは、係属米国特許出願08/920, 504に記載されている様に、H(s)=u又はH(s)=u+1の何れかを確 認する。検証機関は、Pに於ける値の総てを正しい集合内に存在しているか調べ る。例えは、検証機関はt_iがHの範囲内に入るか,又a_i,j<n(又は nの或る関数)であるか調べる(但し,jは1又は2)。又、検証システムは、 1乃至Mに亘るiに関しt_i=H(t_(i_1))であるか調べる。検証システ ムは、iの各々に対しタプル(tuple)Q_iの要素が反復を含んでいない か、又総てのiに対するペアZ_iに於ける要素が反復を含んでいないか調べる 。これらの検証の何れかに失敗した場合には,偽(false)が戻される。 その後,検証システムは、証明書生成プロセスに於けるのと同様にb_1,b_2, ・・・,b_Mを計算する。I乃至Mのiに関して検証システムは以下のことを 検証する。 1.((v−i,1掛けるv_i,2)のe乗 mod n=t_i 2.(t_iのa_i,j乗)mod n=v_i, jo但し、j=1+b _i 検証システムは,総ての検証が及第し、かつ1≦i≦Mに関し両判断基準とも 満たされる限り真(true)を戻す。 寄託機関は、ユーザの秘密鍵を次の如く回復する。1乃至Mに亘るiに関して 、寄託機関はC_i,1とC_i,2に対応する平文の全体であるw_iを計算する 。もし(t_iのe(w_i)乗)mod n=t_iであるような一つの値w _iが見つけ出された場合にはw_iはeに対応する有効なRSA公開鍵を構成 する。尚,RSA関数は準同形関数(homonorphic functio n)であり、上記の本実施例はRSAと同様な準同形関数に対して適用できる。 一つの値が寄託機関によって回復され得ることを示す為の「証明技術」は、何れ の準同形関数に対して一般化し得ることにつき,上記実施例から明白であること を記しておく。 本発明の一応用例は,各寄託機関が自らのCAとユーザを有するマルチ寄託機 関システムである。2つの異なる寄託機関の一方のユーザと他方のユーザと機密 通信を行う際に,当の両寄託機関は双務取決め介してユーザのメッセージ又は鍵 を回復して交換することができる。以上のことは多数の国に亘る国際的規模にも 適用できる。 鍵寄託システムのもう一つの応用例は回復可能鍵を備えた安全ファイルシステ ム又はファイル保存システムである。この様なシステムは上記した実施例、とり わけ上の段落に基づき実装され得る。例えは、ユーザAはファイルの所有者で、 ユーザBはファイルサーバで、信用機関はファイル回復エージェントであり得る 。ファイルの一例はパスワードであり得る。この場合、ファイル回復エージェン トはパスワード回復エージェントである。 上記した本暗号システムの第1実施例の説明は暗号技術に於ける整数論を新た に利用している。そこでは,相互間に直接的四則関係をもつ3つの素数に基づく 暗号システムをどの様に形成するかが示されている。r,q,pは、素数で、q =2r+1かつp=2q+1のの関係を有す。3つ又はそれ以上の素数の使用す ることにより,上記のものと類似する性質を有する様々な暗号システムを作り出 すことができる。別の関係式はp=2q+1かつq=2rs+1も可能だ(そこ でもp,q,r,sは総て素数で、rは160ビット長である。)。別の例は, p=2q+1,q=2r+1かつr=2s+1(ここでのp,q,r,sは総て 素数である)。又,整数論のもう一つの新式の使用は、暗号化指数演算を行うこ とである。その演算とは例えば法指数演算である。例えは、第1実施例のステッ プ2007に於ける第2のゼロ知識証明は、v=gw mod p(但し、w=Y-k mod 2q)の場合、vに於けるkの知識を証明することを含む。法指数 演算に於いて3つ又はそれ以上のドメインを使用すると、暗号システムに対し柔 軟性及び頑強性を増す。この事実を本発明の趣旨に沿って応用することは、本技 術分野の知識をもつ者にとって容易に行える。 本発明の一応用例として,階層構造的公開鍵寄託システムがある。これはツリ ー型データ構造の形態をとる。ツリーのルート部に在る寄託機関は、ルート部か ら延びるノード部に存在するエンティティ総ての通信の復号が可能である。繰返 り、所定ノード部i在る寄託機関は、そのノード部iをサブツリーのルートとし て枝分かれする子ノード部に存在するエンティティ総ての通信を復号することが できる。いつでも、サブツリーを作って寄託機関を増設できる。のサイズを適度 に等級化することによって、ツリーのノード部に複数の寄託機関を配設すること ができる。必要なことは、最小のモジュールで始まり、最大のモジュールで終わ るルートの責任を果たすことである。 同様に、等級の決まった所定のツリーよりむしろ、ユーザは寄託エージェント のサブセットに決めることができ、 本発明のもう一つの応用例は,電子メール認証システムである。 そのシステムにユーザ登録される際に、ユーザは、CAに対して自働回復可能 暗号公開鍵、及び回復可能性証明書を登録する。又、署名公開鍵も登録する。証 明書付きメールを送るには、次のことが行われる。送り手は次のものを含むパケ ットを送信する。即ち、パケットは、自分の自働回認証公開鍵,受取人の名前, 証明書付き電子メールのメッセージを示すヘッダー,自分の認証済み公開鍵及び これについてのCAの証明書,及び他の情報が含む。パケットは,送り手の署名 秘密鍵を用いて署名される。パケット及び付加された署名との両方が受取人に送 られる。受取人は戻し受取りパケットを形成する。この受取りパケットは、固定 長の戻し受取りヘッダー,受取りメッセージ(又はそれのハッシュ),及び追加 情報から成り、受取人の秘密署名鍵を用いて署名され、元の送り手に返送される 。元の送り手は、戻し受取りパケット上の署名を検証する。この署名が有効なら ば、元の送り手は、受取人の認証済み公開鍵を用いて暗号化した電子メール鍵を 受取人に送る。電子メールのメッセージは、元の送り手の秘密署名鍵を用いた署 名と一緒に送られる。受取人は、暗号化電子メール鍵に関する署名を検証する。 この署名が有効なら、受取人は、自分の秘密復合鍵を用いて電子メール鍵を復号 する。その後、受取人は、元の送り手の認証済み公開鍵を用いて、復号結果を暗 号化する。この暗号結果と、元の送り手により送られた暗号文とが一致した場合 には、電子メール鍵は本物と見做される。この鍵は、元の送り手により送られた 実際のメッセージに復号して解読するのに使用される。受取人が最初のパケット を受取った後、或る理由で受取人が元の送り手と接触できないときは、受取人は 寄託機関に対して戻し受取りと最初のパケットとを送る。それらのパケットと戻 し受取りが本物で、かつパケットが正しい受取人名を含んでいるならば、寄託機 関は、電子メール鍵を回復する。寄託機関は戻し受取りとパケットを保持する。 もしチェックを及第したならば、電子メール鍵は受取人に送られる。以上は、自 働回復可能鍵と署名鍵とに基づく電子メール認証システムの構成である。このシ ステムに於けるユーザ登録は、CAを備える典型的公開鍵システムに於けるユー ザ登録と同じである。又、上記した電子メール認証システムを当事者間の契約の 署名に対して採用する方法は本技術分野で知られている。上記応用例は、その様 なことに使用できる。 斯くして、新しい改良鍵寄託システム、その変更態様及び応用例が説明された 。好ましい実施例は、本発明の原理及ひ原型の具体例を表す多くの個々の実施例 の単なる一部を示したものであることを理解すべきである。明らかに、数多くの 他の構成は、本技術分野に於ける知識を有する者にとって案出できるが、本発明 の範囲に属する。
───────────────────────────────────────────────────── フロントページの続き (31)優先権主張番号 08/920,504 (32)優先日 平成9年8月29日(1997.8.29) (33)優先権主張国 米国(US) (31)優先権主張番号 08/932,639 (32)優先日 平成9年9月17日(1997.9.17) (33)優先権主張国 米国(US) (31)優先権主張番号 08/959,351 (32)優先日 平成9年10月28日(1997.10.28) (33)優先権主張国 米国(US) (81)指定国 EP(AT,BE,CH,CY, DE,DK,ES,FI,FR,GB,GR,IE,I T,LU,MC,NL,PT,SE),OA(BF,BJ ,CF,CG,CI,CM,GA,GN,ML,MR, NE,SN,TD,TG),AP(GH,GM,KE,L S,MW,SD,SZ,UG,ZW),EA(AM,AZ ,BY,KG,KZ,MD,RU,TJ,TM),AL ,AM,AU,BA,BB,BG,BR,CA,CN, CU,CZ,EE,GE,GW,HU,ID,IL,I S,JP,KP,KR,LC,LK,LR,LT,LV ,MG,MK,MN,MX,NO,NZ,PL,RO, SG,SI,SK,SL,TR,TT,UA,UZ,V N,YU (72)発明者 ユング,マーセル モードチェイ アメリカ合衆国,10025 ニューヨーク州, ニューヨーク,ウェスト 112ス ストリ ート 605,アパートメント 4エッチ

Claims (1)

  1. 【特許請求の範囲】 1.暗号化鍵の生成,検証,使用及び回復の為に使用され得る暗号システムを構 成し,少なくとも4つのエンティティ(エージェント,機関たるオーソリティ, 登録パーティ,及び他のパーティ)が関係し、以下のステップから成る方法であ って, (1)前記エンティティをして、一組のシステムパラメータを確立させるステッ プ, (2)前記エージェントをして,エージェント・パラメータを生成させ,更に該 エージェント・パラメータの少なくとも一つを公にさせるステップ, (3)前記オーソリティをして、一組のオーソリティ・パラメータを生成させ、 該オーソリティ・パラメータの少なくとも一つを提供させるステップ, (4)前記登録パーティをして、前記エージェント・パラメータの少なくとも一 つと前記オーソリティ・パラメータとを使用する特定公開プロシージャを採用す ることによって、登録パーティ公開鍵と登録パーティ秘密鍵を生成させるステッ プ, (5)前記登録パーティをして,前記登録パーティ秘密鍵が前記特定公開プロシ ージャの採用によって生成されたことを認証する有効性プルーフを生成させるス テップ, (6)前記登録パーティをして,前記登録パーティ公開鍵と、前記有効性プルー フとを、前記オーソリティに対して送信させるステップ, (7)前記オーソリティをして,前記登録公開鍵の正しさを,前記有効性プルー フと共に検証させるステップ, (8)ステップ(7)に於ける検証が成功すれば,前記オーソリティをして,登 録パーティ公開鍵提供過程を行わしめ,その際登録パーティを登録済パーティと させるステップ, (9)前記他のパーティをして,前記公開過程後の登録済パーティの公開鍵を入 手させて,利用させるステップ, から成る上記方法。 2.前記暗号システムは、前記エージェントの少なくとも一つ及び前記オーソリ ティをして、前記登録済パーティ公開鍵を用いて暗号化された平文データを回復 させる追加ステップを含む請求項1の方法。 3.前記暗号システムは,前記エージェントの少なくとも一つ及び前記オーソリ ティをして、前記登録済パーティ秘密鍵を回復させる追加ステップを更に含む。 4.請求項1のテスップ(2)に於いて生成された前記エージェント・パラメー タは公開/秘密鍵ペアであって,該公開鍵のみが提供されて成る請求項1の方法 。 5.請求項1のステップ(3)に於いて生成された前記オーソリティ・パラメー タは公開/秘密鍵ペアを含み、そのうち公開鍵のみが提供されて成る請求項1の 方法。 6.前記有効性プルーフは,少なくとも一つの非対話型ゼロ知識証明ストリング から成り、前記有効性プルーフは少なくとも又前記オーソリティは、少なくとも 一つの前記非対話型ゼロ知識証明ストリングを検証することによって、前記有効 性証明を検証することから成る請求項1の方法。 7.請求項1のステップ(6)と(7)に於ける前記有効性プルーフの生成送信 及び検証はゼロ知識非対話型証明プロトコルの実行を含み、そこでは前記登録ユ ーザは証明者であって、前記オーソリティは検証者であることから成る請求項1 の方法。 8.前記公開鍵提供過程は,前記登録パーティに代わって公開鍵証明書を生成す ることを含み、該証明書には,前記登録パーティ公開鍵に関する前記オーソリテ ィのデジタル署名と、前記オーソリティ秘密鍵を用いて成る他の情報とか含まれ 、又前記公開鍵証明書は、前記オーソリティにより提供された少なくとも一つの パラメータを用いて検証可能であって成る請求項1の方法。 9.前記公開鍵提供過程は、前記登録パーティに代わって公開鍵証明書を生成す ることを含み、該証明書には、前記登録パーティ公開鍵の変更に関する前記オー ソリティのデジタル署名と、前記オーソリティ秘密鍵を用いて成る他の情報とか 含まれ、又前記公開鍵証明書は、前記オーソリティにより提供された少なくとも 一つのパラメータを用いて検証可能であって成る請求項1の方法。 10.前記公開鍵提供過程は、前記登録パーティ公開鍵を、或るファイルに於け る有効鍵として印すことを含んで成る請求項1の方法。 11.前記登録パーティ公開鍵の使用は、公開鍵による暗号化,公開鍵による復 号,デジタル署名,デジタル署名検証,鍵交換及び同一性確認のうち、少なくと も一つの実行を含んで成る請求項1の方法。 12.請求2の追加テステップは、政府又は政府グループ内のエージェンシに代 わってエージェントに対し与えられる適切な認証であることから成る請求項2の 方法。 13.平文データの回復の目的とするところは、一般人のプライバシーを保護し ながら犯罪活動の疑いのある登録済パーティの通信をモニターすることから成る 請求項2の方法。 14.エージェンシが登録済パーティの通信をモニターできない場合、登録済パ ーティめの活動を違法として特徴付ける追加ステップを含んで成る請求項2の方 法。 15.請求項1の少なくとも一つのステップに於いて、エージェンシ,登録済パ ーティ及びオーソリティのうち少なくとも一つの機能性はハードウェアで実装さ れて成る請求項1の方法。 16.前記登録パーティ公開鍵の使用は、ファイルの暗号化の為である請求項1 の方法。 17.前記他のパーティには前記登録済パーティが含まれて成る請求項1の方法 。 18.請求項2の追加テスップは,2つのパーティであるユーザ1とユーザ2と の間で送信された平文情報の回復であり、この際次の2つのステップ、即ち (1)ユーザ1の秘密鍵,又はその秘密鍵に対応する公開鍵を用いて暗号化され た情報を前記エージェンシの第一のサブセットが回復すること, (2)ユーザ2の秘密鍵、又はその秘密鍵に対応する公開鍵を用いて暗号化され た情報を前記エージェンシの別のサブセットが回復すること, のうち少なくとも一つが生じることから成る請求項2の方法。 19.請求項2の追加ステップは、前記登録済パーティの組織内に於ける適切な 過程の後に行われて成る請求項2の方法。 20.請求項1の方法は暗号鍵の生成,使用,検証及び回復の為に使用すること ができ、前記の一組のシステム・パラメータは少なくとも3つのドメインF1, F2及びF3を含み、F1はF2の指数ドメインで,F2はF3の指数ドメイン の関係から成る請求項1の方法。 21.請求項1の方法は暗号鍵の生成,使用,検証及び回復の為に使用すること ができ、前記の一組のシステム・パラメータは、r,p,qに基づく少なくとも 3つのドメインを含み、p,r,qは素数であって、p=2q+1=4r+3の 関係を満たすことから成る請求項1の方法。 22.前記登録パーティの鍵をkとすると、y=(gのx乗)modpが成立し 、但し、gは素数pを法とする生成器で、xは前記登録パーティ秘密鍵であるこ とから成る請求項1の方法。 23.前記登録パーティ公開鍵は数nに基づき、前記登録パーティのみがnの素 数への因数分解を知って成る請求項1の方法。 24.前記登録パーティの鍵は、準同形関数であることから成る請求項1の方法 。 25.前記登録パーティ公開鍵は、RSAに基づく鍵であることから成る請求項 1の方法。 26.前記登録パーティ公開鍵はElGama1に基づく特定ドメインに係る鍵 であることから成る請求項1の方法。 27.前記有効性プルーフは、前記エージェントから提供されたパラメータを用 いた暗号を含んで成る請求項1の方法。 28.前記有効性証明は、落し戸付き一方向関数による暗号を採用してなる請求 項1の方法。 。 29.前記有効性証明は次のことを主張する、即ちエージェンシは、前記登録パ ーティ公開鍵を用いて暗号化された、前記登録パーティの秘密鍵と情報とを回復 することができることを、主張することから成る請求項1の方法。 30.請求項1のステップ(6)に於いて,登録一般ユーザは最初に前記登録パ ーティ公開鍵を送信し、いくらか遅れて前記有効性プルーフを送信することから 成る請求項1の方法。 31.前記登録パーティをして,テスップ(4)の公開/秘密鍵ペアと相違する 、署名鍵を構成する公開/秘密鍵を生成させ;又前記オーソリティをして,前記 署名鍵の公開鍵を検証させる追加ステップを含む請求項1の方法。 32.前記暗号システムの使用は配信の保証を伴う電子メールの為であることか 成る請求項1の方法。 33.前記エージェンシにより提供されたパラメータと、登録パラメータにより 生成された前記公開鍵とは、相違する鍵ドメインからのものであることから成る 請求項1の方法。 34.エージェンシは多数要素として構成され;請求項1のテスップ(5)に於 ける前記登録パーティは,登録パーティ公開鍵を用いて暗号化された前記登録パ ーティの平文データが部分集合のエージェンシによって回復可能であることを内 容とする有効性プルーフを生成することから成る請求項1の方法。 35.エージェンシは階層構成に組織される多数要素として構成され、エージェ ンシの各構成要素は、階層構成のサブ階層構成に於ける鍵を用いて暗号化される 平文データを回復することができることから成る請求項2の方法。 36.請求項1のステップ(5)に於ける前記登録パーティは、登録パーティ公 開鍵を用いて暗号化された前記登録パーティの平文データが部分集合のエージェ ンシによって回復可能である旨を主張する有効性プルーフを、生成することから 成る請求項35の方法。
JP50076699A 1997-05-28 1998-05-21 自働回復及び自働認証可能暗号システム Pending JP2002500842A (ja)

Applications Claiming Priority (11)

Application Number Priority Date Filing Date Title
US08/864,839 US6202150B1 (en) 1997-05-28 1997-05-28 Auto-escrowable and auto-certifiable cryptosystems
US08/864,839 1997-05-28
US08/878,189 US6122742A (en) 1997-06-18 1997-06-18 Auto-recoverable and auto-certifiable cryptosystem with unescrowed signing keys
US08/878,189 1997-06-18
US08/920,504 1997-08-29
US08/920,504 US6243466B1 (en) 1997-08-29 1997-08-29 Auto-escrowable and auto-certifiable cryptosystems with fast key generation
US08/932,639 US6389136B1 (en) 1997-05-28 1997-09-17 Auto-Recoverable and Auto-certifiable cryptosystems with RSA or factoring based keys
US08/932,639 1997-09-17
US08/959,351 1997-10-28
US08/959,351 US6282295B1 (en) 1997-10-28 1997-10-28 Auto-recoverable and auto-certifiable cryptostem using zero-knowledge proofs for key escrow in general exponential ciphers
PCT/US1998/010392 WO1998054864A2 (en) 1997-05-28 1998-05-21 Auto-recoverable auto-certifiable cryptosystems

Publications (1)

Publication Number Publication Date
JP2002500842A true JP2002500842A (ja) 2002-01-08

Family

ID=27542270

Family Applications (1)

Application Number Title Priority Date Filing Date
JP50076699A Pending JP2002500842A (ja) 1997-05-28 1998-05-21 自働回復及び自働認証可能暗号システム

Country Status (13)

Country Link
EP (1) EP0997017A2 (ja)
JP (1) JP2002500842A (ja)
KR (1) KR20010013155A (ja)
CN (1) CN1241353C (ja)
AU (1) AU737037B2 (ja)
BR (1) BR9809664A (ja)
CA (1) CA2290952A1 (ja)
CZ (1) CZ9904106A3 (ja)
IL (1) IL132961A0 (ja)
NO (1) NO995811L (ja)
NZ (1) NZ501273A (ja)
PL (1) PL338018A1 (ja)
WO (1) WO1998054864A2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002535740A (ja) * 1999-01-29 2002-10-22 ジェネラル・インストルメント・コーポレーション デジタル情報を転送するデバイスにおける、セキュアなマイクロプロセッサを用いた証明書の自己生成

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6473508B1 (en) * 1998-12-22 2002-10-29 Adam Lucas Young Auto-recoverable auto-certifiable cryptosystems with unescrowed signature-only keys
AU6816101A (en) * 2000-06-05 2001-12-17 Phoenix Tech Ltd Systems, methods and software for remote password authentication using multiple servers
US7577659B2 (en) * 2003-10-24 2009-08-18 Microsoft Corporation Interoperable credential gathering and access modularity
US7721340B2 (en) * 2004-06-12 2010-05-18 Microsoft Corporation Registry protection
CN102013983B (zh) * 2010-11-26 2012-08-22 中国科学院软件研究所 一种基于强rsa假设的数字签名方法
MX2018010050A (es) 2016-02-23 2019-01-21 Nchain Holdings Ltd Transacciones turing completas basadas en agente que integran retroalimentacion dentro de un sistema de cadena de bloques.
AU2017223133B2 (en) 2016-02-23 2022-09-08 nChain Holdings Limited Determining a common secret for the secure exchange of information and hierarchical, deterministic cryptographic keys
CN109417465B (zh) 2016-02-23 2021-01-15 区块链控股有限公司 区块链执行的智能合约的注册和自动化管理方法
EP3259724B1 (en) * 2016-02-23 2021-03-24 Nchain Holdings Limited Secure multiparty loss resistant storage and transfer of cryptographic keys for blockchain based systems in conjunction with a wallet management system
CN113641986B (zh) * 2021-08-27 2024-04-02 上海金融期货信息技术有限公司 基于SoftHSM实现联盟链用户私钥托管方法与***

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
UA41387C2 (uk) * 1994-01-13 2001-09-17 Сертко, Інк Спосіб установлення вірогідного перевірюваного зв'язку, спосіб захищеного зв'язку, спосіб оновлення мікропрограмного забезпечення, спосіб здійснення шифрованого зв'язку та спосіб надання перевіреному на справжність пристрою права на проведення електронної транзакції
US5481613A (en) * 1994-04-15 1996-01-02 Northern Telecom Limited Computer network cryptographic key distribution system
US5745574A (en) * 1995-12-15 1998-04-28 Entegrity Solutions Corporation Security infrastructure for electronic transactions
US5666414A (en) * 1996-03-21 1997-09-09 Micali; Silvio Guaranteed partial key-escrow
US5815573A (en) * 1996-04-10 1998-09-29 International Business Machines Corporation Cryptographic key recovery system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002535740A (ja) * 1999-01-29 2002-10-22 ジェネラル・インストルメント・コーポレーション デジタル情報を転送するデバイスにおける、セキュアなマイクロプロセッサを用いた証明書の自己生成
JP4651197B2 (ja) * 1999-01-29 2011-03-16 ジェネラル・インストルメント・コーポレーション デジタル情報を転送するデバイスにおける、セキュアなマイクロプロセッサを用いた証明書の自己生成

Also Published As

Publication number Publication date
AU737037B2 (en) 2001-08-09
AU8656498A (en) 1998-12-30
NZ501273A (en) 2001-09-28
NO995811L (no) 2000-01-27
EP0997017A2 (en) 2000-05-03
WO1998054864A3 (en) 1999-05-14
IL132961A0 (en) 2001-03-19
WO1998054864A2 (en) 1998-12-03
CA2290952A1 (en) 1998-12-03
CN1262007A (zh) 2000-08-02
KR20010013155A (ko) 2001-02-26
NO995811D0 (no) 1999-11-26
BR9809664A (pt) 2000-09-05
PL338018A1 (en) 2000-09-25
CN1241353C (zh) 2006-02-08
CZ9904106A3 (cs) 2001-08-15

Similar Documents

Publication Publication Date Title
US6282295B1 (en) Auto-recoverable and auto-certifiable cryptostem using zero-knowledge proofs for key escrow in general exponential ciphers
US6389136B1 (en) Auto-Recoverable and Auto-certifiable cryptosystems with RSA or factoring based keys
US5907618A (en) Method and apparatus for verifiably providing key recovery information in a cryptographic system
Ateniese et al. Identity-based chameleon hash and applications
JP4588874B2 (ja) 内在的証明書方式
US8108678B1 (en) Identity-based signcryption system
US6202150B1 (en) Auto-escrowable and auto-certifiable cryptosystems
US5796833A (en) Public key sterilization
USRE35808E (en) Fair cryptosystems and methods of use
JP3560439B2 (ja) 暗号キーの回復を実行する装置
JP4639084B2 (ja) セキュア認証の暗号方法および暗号装置
US6473508B1 (en) Auto-recoverable auto-certifiable cryptosystems with unescrowed signature-only keys
US6249585B1 (en) Publicly verifiable key recovery
Kilian et al. Fair cryptosystems, revisited: A rigorous approach to key-escrow
US6122742A (en) Auto-recoverable and auto-certifiable cryptosystem with unescrowed signing keys
Desmedt Abuses in cryptography and how to fight them
JP2010093860A (ja) 鍵認証方式
Syverson Limitations on design principles for public key protocols
US20040073790A1 (en) Intermediated delivery scheme for asymmetric fair exchange of electronic items
US6243466B1 (en) Auto-escrowable and auto-certifiable cryptosystems with fast key generation
JP2002500842A (ja) 自働回復及び自働認証可能暗号システム
CN114978622A (zh) 一种基于区块链和零知识证明的匿名凭证验证方法及***
Persiano et al. A secure and private system for subscription-based remote services
CN112950356A (zh) 基于数字身份的个人贷款处理方法及***、设备、介质
JP4629889B2 (ja) 検証可暗号方法、その装置、そのプログラム及びその記録媒体