JP3640331B2 - 2フェーズ暗号キー回復システム - Google Patents

2フェーズ暗号キー回復システム Download PDF

Info

Publication number
JP3640331B2
JP3640331B2 JP26336797A JP26336797A JP3640331B2 JP 3640331 B2 JP3640331 B2 JP 3640331B2 JP 26336797 A JP26336797 A JP 26336797A JP 26336797 A JP26336797 A JP 26336797A JP 3640331 B2 JP3640331 B2 JP 3640331B2
Authority
JP
Japan
Prior art keywords
key
recovery
value
secret
encryption
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP26336797A
Other languages
English (en)
Other versions
JPH10126404A (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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH10126404A publication Critical patent/JPH10126404A/ja
Application granted granted Critical
Publication of JP3640331B2 publication Critical patent/JP3640331B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related 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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • 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/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • H04L9/0841Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols
    • 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/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/085Secret sharing or secret splitting, e.g. threshold 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/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
    • H04L9/0897Escrow, 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
    • 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

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】
【従来の技術】
データ暗号化システムは、データ処理技術においては周知である。一般に、こうしたシステムは、平文入力ブロックに暗号キーを用いて暗号化操作を実行し、暗号文出力ブロックを生成することにより、作用する。暗号化メッセージの受信者は、解読キーを用いて、対応する解読操作を実行し、平文ブロックを回復する。
【0003】
暗号化システムは、2つの一般的なカテゴリに分類される。データ暗号化規格(DES)システムなどの、対称(すなわち秘密キー)暗号化システムは、メッセージの暗号化及び解読の両方のために同一の秘密キーを用いる。DESシステムでは、独立に指定可能な56ビットを有するキーが、64ビットの平文ブロックを暗号文ブロックに変換するために、或いはその逆の変換のために使用される。
【0004】
一方、非対称(すなわち公開キー)暗号化システムは、暗号化及び解読のために、互いに容易に導出できない異なるキーを用いる。メッセージの受信を希望する人が、1対の対応する暗号化キー及び解読キーを生成する。暗号化キーは公開されるが、対応する解読キーは秘密にされる。受信者との通信を希望する人は、受信者の公開キーを用いて、メッセージを暗号化し得る。しかしながら、受信者だけが秘密キーを有するので、受信者だけがメッセージを解読し得る。おそらく、最も知られた非対称暗号化システムは、その創作者であるRivest、Shamir及びAdlemanに因んで命名されたRSA暗号化システムであろう。
【0005】
非対称暗号化システムは一般に、対称暗号化システムよりも、計算集中型であるが、暗号化キーの伝送のために、安全なチャネルを要求しないという利点を有する。この理由から、非対称暗号化システムは、対称暗号化キーなどの機密度の高いデータの1度だけの伝送のために、しばしば使用される。
【0006】
全てのタイプのデータ暗号化システムは、政府情報機関及び法執行機関の注目を集めてきた。なぜなら、無許可の第3者による解読を阻止するための同一の暗号化効力が、平文データをアクセスしたい合法的理由を有する情報機関の役人、または法執行機関の役人による解読をも阻止するからである。こうした問題から、政府は強力な暗号化システムの使用または輸出を禁止するか、或いはキーの徹底的攻撃(すなわち、正解が見出されるまで、全ての可能なキーを体系的にテストする)を受けやすい弱体化したキーの使用だけを承認してきた。こうした軟弱な暗号化システムは、公認の政府役人に対するのと同様に、無許可の第3者にもさらされやすいという明らかな欠点を有する。
【0007】
電子通信における通信当事者のプライバシーに対する要求と、国家安全保障に対する犯罪または脅迫を明かすことが必要な場合に法執行機関がこうした通信をアクセスする要求との間の妥協点として、様々な暗号キー回復システムが最近提案されている。一般に、こうしたキー回復システムでは、実際にキー部分をキー回復エージェント・システムに提供するか(この場合、キー部分はエスクロウと呼ばれる条件付き捺印証書或いは第3者預託証書としての性格を持つ)、或いはキー回復エージェント・システムがキー部分を再生することを可能にする十分な情報を、(キー部分を暗号化することにより)通信自体に提供することにより、通信当事者のコンピュータにより使用されるキーの全体または一部が、キー回復エージェント・システムにとって利用可能になる。キー回復エージェント・システムは、例えば傍受を許可する法廷指令などの正当な権限の証明が提示される場合に限り、エスクロウとして預託されたまたは再生されたキー部分を、要求元の法執行エージェントに明かす。複数のキー回復エージェント・システムを使用する場合、これら全てがキーを回復するために協動しなければならず、法執行エージェント・システムが不正なキー回復エージェント・システムを使用することにより、不正にキーを回復する可能性を最小化する。
【0008】
キー回復システムは、プライバシーに関する通信者の関心に応える。なぜなら、それらの暗号化システムは、第3者に対するその完全な効力を保持し、暗号化に関する国内の制限に従ったり輸出条件に適合するように、弱体化される必要がないからである。同時に、キー回復システムは、非暗号化通信が以前に傍受された状況において(法廷指令が獲得された状況など)、暗号化された通信の傍受を許可することにより、法執行の合法的ニーズに応える。
【0009】
法執行のニーズに応えることに加えて、キー回復システムは、純粋に私的な状況においてもアプリケーションを見い出す。従って、組織は重大なファイルの強力な暗号化により従業員に関わることができ、そこではキーが回復可能でない。キーの損失は、重要な記憶済みデータの損失を招き得る。
【0010】
キー回復システムの数多くの望ましい特徴が、確認されてきた。従って、最初に高い優先順位の特徴を考慮すると、キー回復システムは、ソフトウェアまたはハードウェアにより実現され得るべきである。キー回復システムはその導入のために、第3者との通信を要求すべきではなく、またメッセージの作成または接続の確立の間に、第3者との通信を要求すべきではない。また、キー回復システムは異なる国のユーザ間で、共通運用性を提供すべきである。更に、使用されるアルゴリズムは公知であるべきであり、機構はアルゴリズムに独立であるべきである。設計は公開されるべきであり、公開された仕様にもとづき、複数のベンダにより実現され得るべきである。各国に対して、キー回復能力を独立に提供すべきである。単一のシステムにおいて、異なる環境での異なるレベルのセキュリティに対する柔軟性を提供すべきであり、法律により許可される最高レベルの暗号化セキュリティを提供すべきである。既存の暗号化システムに対するモジュール式拡張(アドオン)であるべきである。任意のキー交換機構の使用を可能にする一方で、任意的に、キー回復に従うように強要する制御ポイントを保持するべきである。回復を許容する以外は、交換キーのセキュリティ特性が維持されるべきである。
【0011】
低い優先順位の他の特徴も、大いに望ましい。キー回復システムは、蓄積・交換(すなわち非対話型)環境及び対話型環境の両方をサポートすべきである。また、キーを回復するために、複数のキー回復エージェント・システムが協動することを要求する処理選択をサポートすべきである(不正なキー回復エージェント・システムからの保護を提供する)。更に、選択的に、パッチ技法が、非パッチ技法と共通運用されないようにすべきである。
【0012】
様々なタイプのキー回復システムが、D.E.Denning及びD.K.Branstadによる"A Taxonomy for Key Escrow Encryption Systems"、Communications of the ACM、vol.39、No.3、Mar.1996、pp.34-40に述べられている。
【0013】
幾つかの特定のキー回復システムについて、以下に紹介する。
【0014】
Micaliらによる米国特許第5276737号("Micali I")及び同5315658号("Micali II")は、"公正な"公開キー暗号化システムについて述べている。公開/秘密キー対の秘密キーが複数の"シェア(share)に分割され、受託機関(trustee)に与えられる。分割は次のように実行される。すなわち、(1)全ての受託機関のシェア(または所定の定足数)が、キーを復元するために要求される。(2)各受託機関は、個々に自身のシェアの正当性を確認することができる。全ての受託機関が彼らのシェアの正当性を証明すると、ユーザの公開キー(エスクロウとして預託される秘密キーに対応)が、キー管理局により証明される。所定の要求に際して、受託機関は彼らのシェアを法執行エージェントまたは他の回復エージェントに提供し、そうしたエージェントが次に、シェアから秘密キーを復元し、秘密キーによりユーザとの通信をモニタすることができる。
【0015】
Micaliシステムは、有利にキーを複数のエスクロウ・エージェント間で分割するが、このシステムは幾つかの欠点を有する。Micaliシステムは、通信がユーザと別の当事者との間で開始する以前に、受託機関の積極的な参加を要求する。また、受託機関が実際に、エスクロウとして預託されるシェアを保持しなければならないので(またはそれらを外部的に暗号化形式で記憶する)、各受託機関は、決して回復要求の主体でないキーの多数のシェアを保持または記憶するのを止め得る。
【0016】
D.B.Johnsonらによる係属中の米国特許出願番号第08/629815号(1996年4月10日出願)、"Cryptographic Key Recovery System"(以下、"Johnsonらによる出願I"として参照)は、複数のキー回復エージェント・システムを用いる部分キー回復システムについて述べている。この出願で述べられるシステムの1つの態様では、送信側がキー回復値(またはキー要素)P、Q、及び(任意選択の)Rのセットを生成する。P及びQ値をXOR加算により結合し、結果をRと連結し、連結結果をハッシュしてキーを生成することにより、セッション・キーが生成される。P及びQ値が次に、それぞれのキー回復エージェント・システムの公開キーを用いて暗号化され、暗号化されたP及びQ値が(他の回復情報と一緒に)、暗号化メッセージを伴うセッション・ヘッダに含まれる。R値が生成される場合、それはいずれの回復エージェントに対しても利用可能にされず、キーを回復しようとする法執行エージェントのための、重要な作業要素を提供するために、秘密にされる。
【0017】
受信側は、自身のデータを用いて回復情報を再生し、結果を比較することにより、その回復情報の正当性を確認する。再生された回復情報が、セッション・ヘッダ内のものと合致する場合、受信側は暗号化メッセージの解読に移行する。
【0018】
暗号化メッセージを傍受する当事者(法執行者など)は、暗号化されたP及びQ値、並びに他の回復情報を、付随するセッション・ヘッダから獲得する。セッション・キーを回復するために、当事者のコンピュータは暗号化されたP及びQ値を、セッション・ヘッダからキー回復エージェント・システムに提供し、後者がP及びQ値を解読し、回復を要求する当事者のコンピュータに解読値を返却する。その当事者のコンピュータは次にセッション・キーを復元し(必要に応じて、力任せにR値を生成する)、暗号化メッセージを解読する。
【0019】
Lipnerらによる米国特許第5557346号で述べられる別のキー回復システムでは、送信側がセッション・キーを第1のセッション・キー部分及び第2のセッション・キー部分に分割し、第1のセッション・キー部分を乱数に等しくセットし、第2のセッション・キー部分を、前記乱数とセッション・キーとのXOR結果に等しくセットする。送信側は、それぞれのセッション・キー部分を、第1及び第2のキー回復エージェント・システムの公開暗号キーにより暗号化し、2つの暗号結果を連結することにより、法執行アクセス・フィールド(LEAF)を生成する。送信側はまた、元のセッション・キー部分を連結することにより、LEAF確認ストリング(LVS)を生成し、これをセッション・キーを用いて暗号化し、暗号化されたLEAF確認ストリング(ELVS)を生成する。最後に、送信側は暗号化されたメッセージを、LEAF及びELVSと一緒に、受信側に伝送する。
【0020】
暗号化メッセージを解読する以前に、受信側はLEAFを再生して、送信側が正当なLEAF、すなわち、キー回復エージェント・システムを通じ、セッション・キーの回復を実際に可能にするLEAFを生成したことを確認する。この確認は、ELVSを解読してセッション・キー部分を獲得し、次にそれぞれのセッション・キー部分を、第1及び第2のキー回復エージェント・システムの公開暗号キーにより暗号化することにより、達成される。このようにして、受信側が伝送されたLEAFの再生に成功すると、受信側はLEAFが本物であると結論し、メッセージの解読に移行する。それ以外では、受信側は、LEAFが不正であると結論し、解読ステップには移行しない。
【0021】
D.B.Johnsonらによる係属中の米国特許出願番号第08/681679号(1996年7月29日出願)、"Interoperable Cryptographic Key Recovery System"(以下、"Johnsonらによる出願II"として参照)は、"エントロピー保存"プロシジャを用いて、キー回復値を生成するキー回復システムについて述べている。前記Johnsonらによる出願IIで開示されるように、P、Q及びRキー回復値(P及びQは、それぞれのキー回復エージェント・システムに暗号化形式で提供され、Rは前記Johnsonらによる出願Iの場合同様、秘密にされる)が、キー逆変換関数を用いて生成される。この関数は、入力として、回復されるセッション・キーK、並びに回復プロセスを支援する受信者及び当事者のコンピ ュータにとって利用可能な非秘密情報を有する。こうしたエントロピー保存キー逆変換関数を使用することにより、単に受信側が回復情報を確認するために、追加の秘密情報を受信側に伝達しなければならない必要性を回避する。
【0022】
【発明が解決しようとする課題】
Micaliシステムに比較して、前記Johnsonらによる出願I及びII、並びにLipnerらによるシステムは、キーが実際に回復されるときまで、キー回復エージェント・システムの関与を要求しない。しかしながら、Johnsonらのシステム及びLipnerらのシステムの両者は、各新たなセッション・キーに対して、キー回復エージェント・システムの公開キーによる、新たなキー回復値の暗号化を要求する。公開キー暗号化は、計算的に高価な演算であり、各新たなセッション・キーに対してこの演算を実行することは、キー回復システムの計算オーバヘッドを多大に増加させる。
【0023】
【課題を解決するための手段】
本発明は、キー回復を処理するシステムを考慮する。これはキー回復情報の一部を1度だけ生成し、次に複数の暗号化データ通信セッション及び暗号化ファイル・アプリケーションのために使用することにより、Johnsonらによる上述の出願で述べられるシステムを改良する。特に、1度だけ生成されるキー回復情報の前記部分が、公開キー暗号化操作を要求する部分である。従って、本発明は、前記Johnsonらによる出願で要求される高価な公開キー暗号化操作を低減する方法を提供する。
【0024】
従来技術と異なり、本発明は、キー回復エージェント・システムの公開キーに従い、キーを暗号化する(すなわち、キー回復プロトコルを介して、キーが保護され、回復される)ことを考慮せず、更にキーを要素若しくは断片、またはシェアに分割し、これらの秘密のキーの要素若しくは断片、またはシェアを、キー回復エージェント・システムの公開キーに従い暗号化することを考慮しない。
【0025】
本発明では、キー回復エージェント・システムの公開キーに従い暗号化され、キー回復のステップを実行するために、要求元当事者のコンピュータが結局キー回復エージェント・システムに提供する情報が、ランダムに生成されるキー(キー生成キーと呼ばれる)のセットを含む。これらのキーは、キー回復プロトコルを用いて保護及び回復されるように意図されるキーとは独立であり、無関係である。実際、生成されるキー生成キーは、キー回復プロトコルに従い保護されるキーの値またはキーを知る以前に、キー回復エージェント・システムの公開キーにより暗号化され得る。従って、本発明は、高価な公開キー操作が、(潜在的に)装置またはシステムの処理負荷が軽いときに、実行されることを可能にするか、或いはこれらの操作が、保護されるキーがキー回復システムにより処理されるときに実行されなければならない場合、要求処理が期待されるよりも潜在的に長い時間に及ぶようにする。そして、本発明は、高価な公開キー操作が1度だけ実行されるようにし、次にキー回復プロセスにおいて、潜在的に長い期間にわたり、複数のキーの回復を可能にするために使用されるようにする。
【0026】
本発明のキー回復方法と、従来方法との1つの違いについて説明する。本発明のキー回復方法は、Giffordにより提案された暗号封印(cryptographic sealing)と呼ばれる保護機構にもとづく(D.K.Giffordによる"Cryptographic Sealing for Information Secrecy and Authentication"、Communications of the ACM、vol.25、No.4、pp.274-286、April 1982参照)。Giffordによれば、保護機構がオブジェクトをキーにより封印する思想にもとづく。この保護機構は、封印済みのオブジェクトが、そのオブジェクトを封印するために使用されたキーを開封するためのキーのセットを有さない者にとって、無益なものであることを示す秘密性の特性を提供する。暗号封印はDenningにより、更に詳細に述べられる(D.E.Denningによる"Cryptography and Data Security"、Addison-Wesley Publishing Company、Reading、Massachusetts、1982、pp.229-230参照)。Denningは、暗号封印は、"ロック・アンド・キー機構"の例であると言っている。Denningによれば、データの暗号化は、"それにロックを掛けることであり、これは解読キーによってのみロック解除され得る"。XがキーKにより暗号化されるオブジェクトである場合、Xへのアクセスは、Kを要求する。Kへのアクセスは、"オープナ(opener)"をXに関連付けることにより制御され得る。オープナは、異なる種類のシェアリング(分配方式)、すなわちORアクセス、ANDアクセス、及び定足数アクセスを提供し得る。異なる種類のオープナの各々について、述べることにする。
【0027】
ORアクセスでは、Kはn個の解読変換D1、D2、...、Dnのリスト内の任意のDiにより、回復され得る。オープナRは、リストR=(E1(K)、E2(K)、...、En(K))により定義される。ここでEiは、Diに対応する暗号変換である。例えば、(Ei、Di)はRSA公開及び秘密キー対である。KはEiの各々に従い別々に暗号化されるので、Diを有する任意の人間またはプロセスが、Kを解読し、獲得することができる。
【0028】
ANDアクセスでは、解読変換D1、D2、...、Dnのリスト内のあらゆるDiが、Kを回復するために存在しなければならない。ここではオープナRは、R=En(En−1(...E2(E1(K))...))により定義される。あらゆるDiが、Kを解読し、回復するために存在しなければならない。
【0029】
定足数アクセスでは、KがリストD1、D2、...、Dn内のt個のDiの任意のサブセットから回復され得る。ここでRは、リストR=(E1(K1)、E2(K2)、...、En(Kn))により定義され、各Kiは、(t、n)しきい値機構またはキー・シェアリング機構におけるKの秘密シェアである。t=nの場合、キーKを復元するために、全てのKiが回復されなければならず、従って、Kを回復するために、リストD1、D2、...、Dn内のあらゆるDiが存在しなければならない。
【0030】
本発明のキー回復保護機構は、GiffordのANDアクセス暗号封印機構にもとづく。Kがキー回復機構により保護されるキーを表す場合、Kが1つ以上の擬似乱数的に生成されるキー暗号化キーKK1、KK2などに従い暗号化される。キー暗号化キー(KK1、KK2など)は、特定のプロセスを介して、前述のキー生成キー(KG1、KG2など)から導出される。このプロセスは、任意のKKキーの知識がKGキーの算出を可能にしないことを保証し、キー回復エージェント・システムが1つ以上のキー暗号化キーを開示することを可能にすると同時に、残りの開示されないキー暗号化キーの秘密性を防御する。従って、本発明は、キー回復エージェント・システムに提供されるキー生成キー、及び単一のキー生成キー及び他の情報から、1方向ハッシュ関数を用いて導出される複数のキー暗号化キーを含むキー階層を考慮する。従って、本発明では、キー生成キーから導出される異なるキー暗号化キーが、キー回復機構を介して保護されるキーを暗号化するために使用される。このことは、公認の要求にもとづき、保護されたキーを解読及び回復するために必要な適切なキー暗号化キーだけを解放することにより、キー回復エージェント・システムに、保護されたキーに対する細分アクセスを与える手段を提供する。
【0031】
本発明では、暗号化値Kが、伝送される暗号化メッセージまたは記憶される暗号化データ・ファイルに付加される。それにより、(必要に応じて)それがキー回復を容易にするために使用可能なように保証する。例えば、KがKK1及びKK2により暗号的に封印(暗号化)され、暗号化値eKK1(eKK2(K))が暗号化メッセージまたはファイルに付加される場合、暗号化データをアクセスしたい要求元当事者のコンピュータは、キー回復エージェント・システム1からKK1を、またキー回復エージェント・システム2からKK2を獲得することにより、最初にKを回復し(すなわちキー回復のステップを実行する)、次にKK1及びKK2を用いて、eKK1(eKK2(K))を解読し、最後に回復されたK値により、暗号化データを解読する。キー暗号化キーKK1、KK2などは擬似乱数的に生成されるので、KK1、KK2などをサポートするキー管理及びキー構造基盤が、キー回復機構により回復されるように意図されるキーKと独立にされ得ることが、明らかである。
【0032】
それに対して、Micaliにより述べられるキー回復の方法(米国特許第5276737号及び同5315658号)は、キー・シェアリングにもとづく。キー・シェアリングにより、キーKが最初に秘密シェアのセットに分割される。秘密シェアは、受託機関の対応セットにエスクロウすなわち提供される。公認の当事者のコンピュータは、(1)最初に、必要な数の秘密シェアを要求し、それらを受諾者から獲得し、次に(2)秘密シェアを結合し、Kを再生することにより、オリジナル・キーKを回復することができる。
【0033】
同様に、Lipnerらにより述べられるキー回復方法(米国特許5557346号及び同5557765号)は、キー分割にもとづき、キーの"半分"を乱数に等しくセットし、他の"半分"を乱数とキーとのXOR結果に等しくセットすることにより、達成される。
【0034】
Schneierは、秘密の分割を、メッセージを断片に分割することとして定義する(Bruce Schneierによる"Applied Cryptography"、Second Edition、John Wiley & Sons、Inc、New York、1996、pp.70-71参照)。Schneierにより提供される例は、3つのランダム・ビット・ストリングR、S、Tを生成し、次に従属ビット・ストリングU=M xor R xor S xor Tを計算することにより、メッセージMが分割され得ることを示す。ここでMは、R、S、T及びUを排他的論理和することにより、再生され得る。また、Lipnerら、及びSchneierによる後の教示から、一般的で好適な分割方法は、分割される量に等しいサイズの1つ以上の乱数の生成、並びに、等しいサイズの1つの従属値の計算(例えば、乱数と分割される量との排他的論理和結果)を含む。従って、Lipnerら並びにSchneierは、キーまたはメッセージの分割が、少なくとも1つの従属値の計算を含み、これが分割されるべき量が知られた後にのみ、計算され得ることを示す。そのため、キー分割の場合、キーの割振りまたは部分は、Kが知れるまで、受託機関すなわちキー回復エージェント・システム)の公開キーに従い暗号化され得ない。
【0035】
同様に、前記Johnsonらによる出願IIにより生成されるP及びQ値は従属値であり、これはK値が知られた後にのみ、生成され得る。従って、前記Johnsonらによる出願IIは、キー回復を容易にするために必要とされるP及びQ値が、K値が知れるまで暗号化されないという欠点を有する。
【0036】
前記Johnsonらによる出願Iにより生成されるP及びQ値は、全くランダムに生成される値であり、従って、Kの値が知れる以前に生成され得り、またKの値が知れる以前に、キー回復エージェント・システムの公開キーに従い暗号化され得る。しかしながら、前記Johnsonらによる出願Iで述べられるキー回復方法は、キーKが独立なキー値でないという欠点を有する。代わりに、キーKが独立に生成されるP及びQ値から計算され、このことは、キー回復方法が全ての形態のキー分配をサポートしないことを意味する。この場合、キーがキー回復によりサポートされるキー分配プロトコルを介して分配される場合に限り、キー回復機構を使用できる。それに対して、本発明は、キーKが任意のキー分配プロトコルにより分配され得るという利点を有する一方で、Micaliにより述べられるキー・シェアリングにもとづくキー回復機構、或いはLipnerらにより述べられるキー分割にもとづくキー回復機構の欠点を回避する。
【0037】
データへのアクセスを制御する目的で、2つ以上のキーに従いデータ(この場合、キーの変わりにメッセージ)を暗号化する方法が、Chaumにより述べられる(D.L.Chaumによる"Untraceable Electronic Mai、 Return Address、and Digital Pseudonyms"、Communications of the ACM、Vol.24、No.2、pp.84-88、Feb.1981参照)。Chaumは、各ユーザが公開キー及び秘密キー対を有するメール・システムについて述べており、そこではKaがアドレスAを有する受信人の公開キーである。このメール・システムはまた、"ミックス"と呼ばれるコンピュータを含み、これはメールの各項目を、それが配送される以前に処理する。関係者は、アドレスAの関係者に配送するメッセージMを、受信人の公開キーKaにより封印し、アドレスAを付加し、次に結果をミックスの公開キーK1により封印することにより、準備する。従って、各メッセージMが2重に暗号化される。すなわち、これは受信人の公開キーKa、及びミックス・コンピュータの公開キーK1により暗号化される。ミックスは各入力を解読し、受信人Aの公開キーKaに従い暗号化されたメッセージを、受信人に転送する。ミックスの目的は、ミックスへの入力のメッセージと、ミックスの出力のメッセージとの間の対応を隠すことである。
【0038】
Meyer及びMatyasは、キー(KSTR)が2つのキー(KTR1及びKnode)に従い暗号化され、2重に暗号化されたキー値eKnode(eKTR1(KSTR))を形成する教示を提供する(C.H.Meyer及びS.M.Matyasによる"Cryptography"、John Wiley and Sons、Inc.、New York、1982、p.558参照)。この方法はまた、Brachtlらによる米国特許第4755940号"Transaction Security System"でも述べられている。電子資金(electronic funds)ネットワーク内では、時間変化キーKSTRがランダムに生成され、最初にキーKTR2に従い暗号化され、2番目にキーKnodeに従い暗号化される。ここでKnodeは時間変化システム・キーであり、KTR1は、利用者にだけ知れる個人キーから導出されるキーであり、利用者にだけ知れる秘密のPIN(個人識別番号)である。従って、秘密のキーKSTRを回復するためには、システムが保持するキーKnode、並びにユーザ保持情報から導出されるユーザ・キーKTR1を知る必要がある。
【0039】
更に議論され得る秘密シェアリングの2つの場合、すなわち(1)Kが従属キーである場合、または(2)Kが独立キーである場合が存在する。Kが従属キーの場合、秘密のシェアの各々が独立に生成されるランダム値である、単純なキー・シェアリング機構が考案され得る。例えば、Micaliによる米国特許第5276737号で述べられるように、インタバル[1,p−1]内で5つのランダム整数RN1、RN2、..、RN5を生成し、Kをそれらの合計をp(pは素数)で除算した剰余として定義することができる。値RN1、RN2、..、RN5は、秘密シェアである。しかしながら、本発明は、単純キー回復(SKR)(本発明のキー回復を指す)により保護されるキーKが、独立のキー・トランスポートまたはキー同意プロトコルを用いて得られる任意のキーである回復機構を提供しようとする。そのため、本発明は、Kが従属キー値であることを許可しない。従って、秘密シェアリング機構が使用される場合、Kが独立キー値である秘密シェアリング機構を使用する必要がある。しかしながら、Kが従属キーである秘密シェアリング機構では、秘密シェアの少なくとも1つが、従属値でなければならない。例えば、3つの秘密シェアが存在する場合、秘密シェアの多くて2つが、独立なランダムに生成される値であり得る。値の1つは、2つの独立なシェア及びキーKから計算されなければならない。例えば、インタバル[1,p−1]内で、4つのランダム整数RN1、RN2、..、RN4を生成することができる。更に、Kがインタバル[1,p−1]内の整数であり、RN5をRN1、RN2、RN3、RN4及びKの合計を、pで除算した剰余として定義するものと仮定する。従って、Kが独立キー値である場合、秘密シェアリングにおいて、次のことが言える。
1.秘密シェアの少なくとも1つは、Kの値が知られた後に計算されなければならない。
2.全ての秘密シェアは保護されなければならない(すなわち、秘密にされなければならない)。暗号化が使用される場合、少なくとも1つの暗号化は、Kが知られた後にだけ、実行され得る。
【0040】
キー分割は、キーを割振りまたは部分に分割する技法であり、そこではキーが入力として指定される。すなわち、Kは独立キー値である。従って、キー分割は、秘密シェアリングまたはキー・シェアリングと同じ欠点を有する。すなわち、少なくとも1つの秘密シェア若しくは割振りまたは部分が、Kが知られた後にだけ暗号化され得る。そして、シェア若しくは割振りまたは部分が、公開キーにより暗号化される場合、高価な公開キーの全ての暗号化が、Kを知る以前に実行され得る訳ではない。
【0041】
従って、本発明は、暗号封印により、キー・シェアリングまたはキー分割の欠点を回避しようとする。そこでは独立なランダム秘密値またはキーから計算される従属値が、秘密のシェアではなく、暗号化されたKであり、またKが公開キー・アルゴリムではなく、対称キー・アルゴリズムにより暗号化される。その場合、暗号化操作は公開キー暗号化操作よりも大いに高速であり、暗号化されたKが秘密シェアと違って、公開値として処理され、暗号化データと一緒に伝送または記憶されるSKR情報内で、"利用可能にされる"。
【0042】
1つのキー生成キー(KG)から、複数のキー暗号化キー(KK1、KK2など)などの複数のキーを生成する概念は、既知である。例えば、Working Draft American National Standard X9.42-1995の"Public Key Cryptography For The Financial Services Industry:Establishment Of Symmetric Algorithm Keys Using Diffie-Hellman"、October 26、1995は、1つの共用秘密番号から複数のキーを生成する、暗号キー導出と呼ばれる方法について述べている。これは入力を1方向関数によりハッシュすることにより達成され、そこでは入力が、共用秘密番号及び、少なくとも当事者のコンピュータ当たりのデータ(PerPartyData)を含む公開情報の連結として定義される。当事者のコンピュータ当たりのデータ内容は、キー管理プロトコルにより定義される。例えば、当事者のコンピュータ当たりのデータは公開キー回復情報を含み得り、それにより特定のデータ・キーに関連する情報(キー回復機構により保護される)を、生成される特定のキー暗号化キーに関連付ける。
【0043】
本発明では、既に述べたように、複数のキー暗号化キー(KK)が1つのキー生成キー(KG)から生成される。従って、本発明のキー回復プロセスは、複数のキー(K1、K2など)、例えば複数のデータ・キー(セッション・キーまたはファイル・キー)が、キー回復機構を介して保護されることを可能にする。これは、異なるキー暗号化キーを用いて、各キー(K1、K2など)を暗号化することにより、達成される。キー暗号化キーは、関連する安定で長寿命のキー生成キーから生成される。本発明では、キー生成キーがキー回復エージェント・システムの公開キーに従い、暗号化される。従って、キー回復を達成するために、そのように暗号化されたキー生成キーがキー回復エージェント・システムに提供され、キー回復エージェント・システムがキー生成キーを解読し、回復されたキー生成キーを用いて、適切なキー暗号化キーを生成し、キー暗号化キーが公認の要求元当事者のコンピュータに返却される。要求元当事者のコンピュータは次に、暗号化データに付加された暗号化キー値を解読する。従って、本発明のキー回復機構は、高価な公開キー暗号化操作(すなわちキー生成キーを暗号化する)が1度だけ実行され、複数のキーの回復を可能にするために必要とされるキー暗号化キーを生成するために、潜在的に長期間にわたり、複数回使用されることを可能にする。従って、本発明では、キー回復エージェント・システムに提供される秘密値が、潜在的に長寿命のキー生成キーであり、またキーがキー回復機構により保護されるようにキーを暗号式に封印するために使用される秘密値が、キー暗号化キーである。そして、キー暗号化キーが、これらのキー生成キーから、キー導出プロシジャにより導出される。キー導出プロシジャは、導出されるキー暗号化キーを、キー回復機構により保護されるキーに関連付けられる固有の公開キー回復情報に、強く結合する。
【0044】
それに対して、Micaliのキー回復機構(米国特許第5276737号及び同5315658号)は、受託機関に提供されるキーの秘密シェアが、受託機関により公認の要求元当事者のコンピュータに返却される秘密シェアと、同一であることを示す。同様に、Lipnerらのキー回復機構(米国特許第5557346号及び同5557765号)は、エスクロウ・エージェントに提供されるキーの秘密部分または割振りが、エスクロウ・エージェントにより公認の要求元当事者のコンピュータに返却されるキーの秘密部分または割振りと、同一であることを示す。更に、Micali及びLipnerらは、秘密シェア及び秘密キーの部分または割振りが、受託機関またはエスクロウ・エージェントの公開キーに従い、それらを暗号化することにより保護され得ることを示す。その場合、Micali及びLipnerらにより開示される方法は、各秘密キーがキー回復機構により保護されるために、高価な公開キー暗号化の実行を要求する。
【0045】
本発明はまた、各キー回復エージェント・システムが少なくとも1対の公開キー及び秘密キーを有することを考慮する(公開キー暗号化を使用する)。しかしながら、キー回復エージェント・システムは、分離の特定の細分性を提供するために、こうした公開キー及び秘密キーを2対以上有し得る。これらのキーは、キーの弱体化のために、若しくはキーの懐疑的な弱体化のために、またはキーの新鮮さを維持するキーの自動的ロールオーバのために、変更され得る。
【0046】
本発明はまた、キー回復エージェント・システムが国境などの管轄権範囲、または1国若しくはより大きなグループを形成するように結合される複数の国の定義領域を含む管轄権を有するように考慮する。
【0047】
本発明はまた、組織がそれら自身のキー回復エージェント・システムとして機能するように考慮する。その場合、組織は随意に、キー回復サービスの公認ユーザを、自身の組織の従業員または特定の他のユーザの定義セットに制限し得る。
【0048】
本発明はまた、ユーザが自身のキー回復エージェント・システムとして機能したい場合を考慮する。
【0049】
本発明は更に、組織及びユーザが自身の公開及び秘密キー対を生成したいが、キーの秘密部分を特定の他のキー回復エージェント・システムに提供したい場合を考慮する。この場合、キー・エージェントはそれらの組織またはユーザのために、提供されたキーの秘密部分を用いて、キー回復の要求ステップを実行することができる。この後者の場合では、キー回復エージェント・システムが組織またはユーザのキーの秘密部分を保持することが考慮され、キー回復の必要ステップを容易にするために、キーのその秘密部分を使用する能力を有するが、秘密キー部分自体の値を知らなくてもよい。本発明により述べられるキー回復機構は、上述の各々の及び全ての環境において、機能することができる。
【0050】
本発明では、回復エージェントの集合と回復サービス(または法執行)との間に、知識の強い区分が存在する。知識のこの区分は、決して橋渡しされない。すなわち、回復エージェントは決して回復サービスに彼らの完全な秘密を漏らさず、また回復サービスは決して回復エージェントに、Kに関する情報を漏らさない。従って、任意のキーKの回復のために、全ての回復エージェント並びに回復サービスが協動しなければならない。特に、
1.法執行がKKx(KKy(K))を保持するので、集合的に回復エージェントは、Kに関する知識を有さない。ここで前記表記は、KがKKyにより暗号化され、結果がKKxにより暗号化され、それをいずれのエージェントにも明かさないということを意味する。従って、全てのエージェントが協動したとしても、彼らはKを回復することができない。それに対して、Micali及びLipnerらによる方法では、エージェントが集合的に、キーを回復するために十分な情報を有する。
2.法執行は、所与のKの合法的回復の後でさえも、決してSまたは任意の導出されるKGを習得しない。エージェントは、あるセッションに特定のKKだけを返却する。上述のように、このことは暗号化されたKGが再利用されるために必須であるが、より一般的には、エージェントは決して彼らのKGを明かさないので、エージェントの協動無しには、回復が達成され得ないことを保証する。
【0051】
本発明は、キー回復エージェント・システムに提供される秘密情報、またはキー回復エージェント・システムに提供される秘密情報から導出される秘密情報へのアクセスを許可する、新たな方法を考慮する。例えば、本発明では、秘密のキー生成キーが、キー回復エージェント・システムの公開キーに従い暗号化される。そして次に、キー生成キーが、キー暗号化キーを生成するために使用される。セッション通信または蓄積・交換電子メール・アプリケーションでは、キー暗号化キーが、個々のデータ・キー(セッション・キーまたはデータ暗号化キー)を暗号化するために使用され得る。更に、法執行が、有効な法廷指令または令状により、キー回復エージェント・システムから、必要なキー暗号化キーを獲得できるように考慮され、それにより、彼らが暗号化メッセージに付加される暗号化されたデータ・キーを解読し、次に暗号化された通信またはメールを解読できるようにする。同様に、暗号化されたファイルが伝送されるか、システム内に記憶される場合、こうした暗号化ファイルの送信者または受信者が、ファイル・キーの自身のコピーが損傷されたり、偶然消去されたことを発見できるように考慮される。その場合、送信者または受信者は、本発明のキー回復機構を用いて、キーを回復しようとするであろう。暗号化ファイルの送信者または受信者がデータを回復することを可能にするため、本発明は、キー回復エージェント・システムが、情報を受信する資格のある正当な当事者のコンピュータ以外の者に、秘密情報(例えば、キー生成キーから生成されるキー暗号化キー)を明かさないで済むようにする、新たな機構を提供する。
【0052】
受託機関による、エスクロウとして預託されたデジタル秘密の不注意な露呈を防止する方法が、Fischerにより示される(米国特許第5436972号)。Fischerの機構では、ユーザは秘密のパスワードを有し、これがエスクロウとして預託される。このパスワードが、対称DESキーを導出するために使用され、これがユーザの秘密(すなわち、ユーザが保護したい秘密)を暗号化するために使用される。しかしながら、任意の秘密がエスクロウとして預託され得、本発明は、パスワードだけの預託に限るものではない。本発明では、ユーザが、パスワードと一緒に自己識別データを含むエスクロウ記録を定義し、情報のこの組み合わせが受託機関の公開キーにより暗号化される。この暗号化記録が、エスクロウ・セキュリティ記録として、ユーザのコンピュータに記憶される。ユーザのパスワードから導出されるキーが、次にユーザのディスク上の全てのデータを暗号化するために使用される。ユーザが自身のパスワードを忘れた場合、本発明の検索フェーズが実行される。この場合、ユーザはエスクロウ・エージェントと連絡し、自身の識別を明確に確立するのに十分な証明書を提供する。また、自己識別データ及びパスワードを含む暗号化エスクロウ記録が、エスクロウ・エージェントに提供される。エスクロウ・エージェントはエスクロウ記録を、キーの秘密部分により解読し、証明書を自己識別データと検証し、ユーザが適正に確認される場合だけ、パスワードをユーザに提供する。
【0053】
しかしながら、Fischer機構の欠点は、秘密パスワード及び自己識別データの結合が、これらの2つの情報片をエスクロウ・エージェントの公開キーにより、1つの単位として暗号化することにより、実行されることである。本発明において、これと同種の検証シーケンスを実行することは、不利である。なぜならその場合、受信者(Bob)が、送信者(Alice)から受信され、キー回復エージェント・システムの公開キーに従い暗号化された情報を、確認できないからである。これは、BobがAliceの自己識別データを知らず、更にAliceが通常その自己識別データをBobに知られたくないということによる。従って、Bobが、Aliceから受信され、キー回復エージェント・システムの公開キーに従い暗号化された情報を確認するステップを実行するために、Aliceが、Bobに彼女の自己識別データをBobに知られたキーに従う暗号化形式で送信するということは、意味をなさない。
【0054】
従って本発明では、自己識別データを秘密、すなわちキー生成キーKGから導出される秘密値と結合するために、別の手段が使用される。本発明では、キー生成キー及び、受信者(Bob)に知れる、或いはキー回復プロトコルに従い受信者が知ることのできる他の情報(秘密または公開される)が、キー回復エージェント・システムの公開キーに従い、暗号化される。このことは、受信者(Bob)が、彼が知るデータから入力を再生し、入力を彼が知るキー回復エージェント・システムの公開キーにより暗号化し、このようにして生成された暗号化値を、送信者(Alice)から受信される暗号化値と比較することにより、受信される暗号化量を確認することを可能にする。従って、Bobは2つの暗号化値が等しければ、送信者(Alice)から受信される値が妥当と検証することができる。
【0055】
本発明では、秘密(例えばキー生成キーから導出される値)が自己識別データと結合され(例えばこれらの値を連結することによる)、結果のデータ・ブロックを強力な1方向ハッシュ関数(例えば連邦情報処理標準(Federal Information Processing Standard)、FIPS PUB 180−1セキュア・ハッシュ規格(1995年4月)で述べられるセキュア・ハッシュ・アルゴリズムSHA−1を使用)によりハッシュする。この結果のハッシュ値が、次に暗号化データと一緒に、例えば暗号化ファイルのヘッダ記録に記憶される。AliceからBobに送信される暗号化ファイルの場合、Bobもまた彼自身の自己識別データ及び、彼が知る秘密(KGから導出される秘密)を使用することにより、類似のハッシュ値を生成し、それをファイル・ヘッダ記録に記憶する。
【0056】
AliceまたはBobが後に、KGから導出されるキーの1つを回復したい場合、彼らは証明書のセットを適切なハッシュ値と一緒に、キー回復エージェント・システムに提供しなければならない。キー回復エージェント・システムはこの証明書を、ユーザにより提供される自己識別データに対して検証する。キー回復エージェント・システムは次に、ハッシュ値を生成するために、SKRシステムにより使用されたのと同じプロシジャを用いて、自己識別データ及び、KGから導出される秘密値を含む入力ブロックを形成する。結果のデータ・ブロックが次に、SKRシステムにより使用されたのと同じハッシュ・アルゴリズムによりハッシュされ、結果のハッシュ値が、ユーザにより提供されるハッシュ値と等しいかどうか比較される。2つの値が等しい場合、キー回復エージェント・システムは、ユーザが有効であり、従って所望の秘密(例えばキー生成キーから導出されるキー暗号化キー)を受信する資格を有すると結論する。
【0057】
本発明はまた後述のように、キー処理シャッフラ関数(keyed shuffler function)を用いる、新たな形式の暗号化を考慮する。
【0058】
【発明の実施の形態】
本発明で考慮されるキー回復システムは、ここでは単純キー回復(SKR)システムとして参照される。SKRキー回復情報が生成されたキーは、SKR保護キーとして参照される。SKR保護キーは任意のタイプの保護キーであるが、議論は主にデータ・キーに限られよう。データ・キーは、セッションまたは電子メール・アプリケーションにおいて伝送されるメッセージを暗号化するために使用されキーであるか、或いは、データ・ファイルを暗号化するために使用されるキーである。任意的に、ユーザは所与のSKR保護キーの一部だけを明かし得る。
【0059】
通信は2つ以上の当事者のコンピュータ間で可能であるが、議論は主に2つの当事者のコンピュータ間通信に限られよう。しかしながら、当業者には、SKRプロトコルが3つ以上の当事者のコンピュータにも容易に拡張され得ることが理解されよう。SKRプロトコルは、送信者と受信者がリアルタイムに対話するセッション通信、並びに、電子メール及びファイル転送アプリケーションなどの、送信者と受信者がリアルタイムに対話しない蓄積・交換通信をサポートする。また、SKRプロトコルは、単一のユーザまたはアプリケーションに関連するファイル・アプリケーションをサポートする。後者の場合、データ・ファイルを生成するアプリケーションまたはユーザが、データ・ファイルを検索するアプリケーションまたはユーザと同一である。
【0060】
一般的環境:
図1は、本発明のキー回復システムが使用され得る通信システム100を示す。システム100では、国Xの送信者102("Alice")が、国Yの受信者104("Bob")と、通信チャネル106を通じ、1つ以上の暗号化メッセージを伝送するか(通信セッションまたは電子メール・アプリケーションを構成する)、1つ以上の暗号化ファイルを伝送する(ファイル転送アプリケーションを構成する)ことにより通信する。送信者102及び受信者104は各々、コンピュータ・ワークステーションを含み得り、これは好適には、後述の暗号化機能及びキー回復機能を提供するようにプログラムされる。図1の例は、送信者102及び受信者104が異なる国(X及びY)に居るように仮定されるが、本発明は1つの国の中でも使用され得る。
【0061】
図1の例は特に、2つの異なる通信当事者(Alice及びBob)のコンピュータが存在する場合を扱う。しかしながら、この2つの当事者のコンピュータモデルは、Aliceがファイルを暗号化する1当事者のコンピュータモデルについても(ある程度)説明する。その場合、ファイル暗号化アプリケーションが蓄積・交換アプリケーションとして見なされ、そこではBob=Aliceであり、ファイル送信操作(Aliceが送信者として振る舞う)とファイル受信操作(Aliceが受信者として振る舞う)との間に、長い時間が存在する。しかしながら、これらの各々の場合において、プロトコルに影響する明らかな違いについては、説明の中で指摘する。
【0062】
図1の説明を続けると、伝送メッセージが送信者102により、データ暗号化キーを用いて暗号化され、受信者104により、対応するデータ解読キーを用いて解読される。対称暗号化機構(例えばDES)が使用される場合、データ暗号化キー(データ解読キーでもある)は、キー回復の目的のための"秘密の"データ・キー(すなわちSKR保護データ・キー)である。しかしながら、本発明はデータ・キーの保護に制限されるものではない。SKRシステムはまた、任意の秘密キーに対するキー回復サービスを提供するためにも使用され得る。例えば、非対称の暗号化機構(例えばRSA)が使用される場合、後述のように、キーの秘密部分が、キー回復の目的のための"秘密の"SKR保護キーである。
【0063】
(この特定の例では)1対のキー回復エージェント・システム108及び110が、国Xにおいて選択され、1対のキー回復エージェント・システム112及び114が、国Yにおいて選択される。キー回復エージェント・システムの確立は、汎用公開キー構造基盤の確立の一部として実施されよう。各キー回復エージェント・システムは、少なくとも1対の公開及び秘密キー(PU、PRで表される)を有する。国XにおけるAliceの2つのキー回復エージェント・システムのキーの公開部分及び秘密部分は、(PUx1、PRx1)及び(PUx2、PRx2)であり、国YにおけるBobの2つのキー回復エージェント・システムのそれらは、(PUy1、PRy1)及び(PUy2、PRy2)である。これはAliceとBobが、公開キー暗号手法(例えばRSA、Diffie-Hellmanまたは楕円曲線アルゴリズムを使用する)を使用し、特定のSKR情報を暗号化及び保護することを可能にし、これは例えば、キー回復エージェント・システムによるこの情報の解読を要求することが必要になるまで、継続される。
【0064】
通信チャネル106を介する通信は、国X及びYのそれぞれ法執行エージェント116及び118を含む第3者により、傍受にさらされると想定される。暗号化通信を傍受する政府以外の第3者は、1つ以上の暗号解読技術を成功裡に使用しない限り、通信を解読できない。一方、正当な権限を有する法執行機関116または118は、後述のように、その国のキー回復エージェント・システム108、110または112、114を利用して、SKR保護キーを回復することができ、送信者(Alice)または受信者(Bob)も、類似のプロシジャにより、SKR保護キーを回復することができる。
【0065】
2フェーズ・プロトコル:
本発明は、暗号化通信が実施される、または暗号化ファイルが生成される国または国々の法及び規制に従い、暗号化通信または暗号化ファイル内に、キー回復情報を埋め込む2フェーズ・システムを要求する。
【0066】
図2はSKR通信プロセス120の2つのフェーズ、すなわちフェーズ1 122及びフェーズ2 128を示す。フェーズ1 122では、通信当事者(Alice及びBob)のコンピュータが共通のランダム・シード(S)124を確立し、そこから各回復エージェント(図2では示されない)に特定のランダムなキー生成キー(KG)が導出される。KGは、それらをそれぞれのエージェント(図2では同様に示されない)の公開キーにより暗号化することにより、彼らにとって利用可能となる。暗号化されたKGは、Aliceにより準備され、Bobに送信されるSKRブロック1(B1)126内に含まれる。
【0067】 ランダム・シード(S)124が確立される態様は、通信環境に依存する。対話セッションでは、AliceとBobがSを対話により確立するか(例えば、Diffie-Hellman2パス・プロトコルを使用する)、或いはAliceがSを生成し、それをBobに送信する(例えば、RSAキー・トランスポート・プロトコルまたはDiffie-Hellman1パス・プロトコルを使用する)。蓄積・交換アプリケーションでは、上述のようにAliceがSをBobに送信するが、Alice及びBobが、Sを対話式に確立するための特殊なセッションをセットアップすることが可能である。ファイル暗号化アプリケーションでは、Bob=Aliceであり、Aliceが単にSを生成して記憶し、次に暗号化されたKが、Aliceにより準備され記憶されるSKRブロック1に含まれることにより、後にそれが回復プロセスにより必要とされるまで、利用可能になる(すなわち、これはAliceからAliceに長い時間遅延を伴って送信される)。
【0068】
フェーズ2 128では、通信当事者(Alice及びBob)のコンピュータが秘密データ・キーK130を確立する。Kを確立するために、任意のキー・トランスポートまたはキー同意機構が使用され得る。なぜなら、Kを確立する手段は、SKRシステムとは独立であるからである。暗号化された通信セッションまたは蓄積・交換伝送が所望される場合、(階層的キー導出プロシジャを介して)記憶済みKGから導出されるキー暗号化キー(KK)に従う対称暗号化により、データ・キー(K)が回復のために利用可能になる。可能であれば、暗号化されたKの一部Rを隠すことにより、データ・キーの一部だけが、回復情報内で利用可能になる。暗号化されたKまたはその一部(部分Rが保存される場合)が、Aliceにより準備されたSKRブロック2(B2)132内に含まれ、彼女はこれをBobに送信する。ファイル暗号化アプリケーションでは、Bob=Aliceであり、Aliceが単にKを生成して記憶し、暗号化されたKが、Aliceにより準備され記憶されたSKRブロック2に含まれることにより、後に回復プロセスにより必要とされるまで、利用可能になる(すなわち、これはAliceからAliceに長い時間遅延を伴って送信される)。最後に、K134により暗号化されたデータが通信されるか、またはファイルに記憶される。
【0069】
図2を参照すると、キー回復生成プロセスを2つのフェーズに分割することにより、"S確立"操作124及びSKRブロック1 126の準備において要求される関連する公開キー暗号化(フェーズ1)と、セッション当たりのK交換及び関連するセッション・キー回復情報の計算及び確認(フェーズ2)との分離を可能にする。フェーズ1で提供される情報、すなわち(a)Sの確立124、及び(b)SKRブロック1 126は、いずれにしろ、通信当たりまたはファイル情報当たりの情報にもとづくものではなく、従って、複数の通信または生成ファイルにわたり使用され得る。情報(S及びSKRブロック1)がキャッシュされる場合、フェーズ1 122で実行される高価な公開キー暗号化が、当事者のコンピュータ間の最初の通信または最初に生成されるファイルを除いて回避され、従って、全ての面(2当事者のコンピュータ間の暗号化通信及び1当事者のコンピュータの暗号化ファイル・アプリケーション)において必要とされる計算処理を多大に低減する。
【0070】
図3は、SKR保護キーの回復を可能にするSKR回復プロセス140を示す。回復サービス146が、キー回復エージェント・システム1 142及びキー回復エージェント・システム2 144と対話し、キーK158を回復する。回復サービス146は、損傷または失われたキーの回復を切望するユーザまたは会社のために、独立なサービス・プロバイダ当事者のコンピュータにより操作されたり、或いは傍受された通信や、犯罪に関わると判明したまたはその疑いのある個人のファイルを読出すために、キーの回復を切望する法執行のために、法執行により操作され得る。
【0071】
キーの回復を切望する当事者のコンピュータは、最初に、必要とされるSKRブロック(1及び2)を、回復サービス146に提供する。回復サービス146は次に、SKRブロック1 148及びSKRブロック2 150を、キー回復エージェント・システム1 142に提供する。そして次に、キー回復エージェント・システム1 142が、提供された情報を自身のキーの秘密部分と一緒に用いて、暗号化されたKGを解読し、次にKGからキー暗号化キー(KK)を計算し、それが回復サービス146に解読情報150Aとして返却される。同様に、回復サービス146は、SKRブロック1 152及びSKRブロック2 154をキー回復エージェント・システム2 144に提供する。すると、キー回復エージェント・システム2 144は、提供された情報を自身のキーの秘密部分と一緒に用いて、暗号化されたKG値を解読し、次にKGからキー暗号化キー(KK)を計算し、それが回復サービス146に解読情報156として返却される。このようにして計算された2つのキー暗号化キーは異なり、回復サービス146により、SKRブロック2内の暗号化されたKを解読するために使用され、Kのクリア値158が要求元当事者のコンピュータに返却される。
【0072】
図3には示されないが、法執行は、回復サービス146によりキー回復エージェント・システム1及び2に提供され得る有効な令状または法廷指令を有する場合のみ、キーKを獲得することができる。同様に、ユーザまたは会社は、それらが正しい確認情報を回復サービス146に提供する場合のみ、Kを回復することができ、回復サービスは、この確認情報を各キー回復エージェント・システムに提供する。各キー回復エージェント・システムは、この確認情報を用いて、ユーザのまたは会社のK回復のための権利を確認する。
【0073】
対話型通信のためのSKR最上級設計:
以下では、1送信者(Alice)、1受信者(Bob)、及び各々に対して2つの回復エージェントを想定する場合の、名目データ・フローが提供される。更に、説明では、既存の機構によるS及びKの安全な交換のための対話セッションの場合を想定する。SKRは対話型通信の場合だけでなく、任意の数の通信当事者のコンピュータ、1当事者のコンピュータ当たり任意の数のエージェント、及び非対話型通信の場合にも機能する。SKRはまた必要に応じて、デフォルト指定のキー交換機構を提供し得る(すなわち、S及びKが、SKRにより提供される機構を用いて確立され得る)。単純化のため、ここでは名目的な場合についてだけ述べるが、他の場合も詳細な設計セクションにおいて、カバーされ得る。
【0074】
キー生成階層:
SKRは主に、対称キー管理における運用である。対称キーは、所与のSKR保護データ・キー(セッション・キー)に対する回復情報を保護するために使用され、任意的に、所与のSKR保護データ・キー(セッション・キー)に関連する回復要求を確認するために使用される。
【0075】
図4は、SKRキー階層160を示す。SKRキー階層は、キーをそれらの使用及び導出関係に従いレベル化する編成であり、SKRシステムの機能が編成される基本となる。
【0076】
図4のSKRキー階層160内のキーは、初期ランダム・シードS162から階層的に生成される。Sから、キー回復エージェント・システムにつき1つの割当てで、擬似ランダム・キー生成キーKG164、165、166及び167が生成され、これらが所与のエージェントの公開キーに従う暗号化により、そのエージェントにだけ利用可能にされる。KGa1 164及びKGa2 165は、Aliceのそれぞれ第1及び第2のキー回復エージェント・システムに関連付けられるKGである。KGb1 166及びKGb2 167は、Bobのそれぞれ第1及び第2のキー回復エージェント・システムに関連付けられるKGである。
【0077】
KGキー生成キーは、次に図4の下位の擬似ランダム・キー生成キーKH及びKI(168乃至175)を導出するために使用される。例えば、KGa1 164は、KHa1 168及びKIa1 169を生成するために使用され、KGa2 165は、KHa2 170及びKIa2 171を生成するために使用される。最後に、KHキー生成キー(168、170、172、174)は、それぞれ下位の擬似ランダム・キー暗号化キーKK(176、178、180、182)のセットを導出するために使用される。同様に、KIキー生成キー(169、171、173、175)は、それぞれ下位の擬似ランダム・キー暗号化キーKA(177、179、181、183)のセットを導出するために使用される。キー暗号化キーKKは、データ・キー(すなわちSKRにより保護されるセッション・キー)を暗号化/解読するために使用され、その際、固有のKKが各セッションに対して使用される。キー暗号化キーKAは、任意選択の確認情報(AI)フィールドの保護のために使用される。しかしながら、本発明は、KAキーの使用をキー暗号化キーだけに制限するものではなく、KAキーを使用する他の方法についても、後述される。
【0078】
図4のSKRキー階層160内のキーを導出する1つの方法は、Working Draft American National Standard X9.42で述べられる暗号キー導出プロシジャを利用する。
【0079】
図4の例は、2セットのエージェントの場合を説明する。1つのセットはAlice(a)に対応し、別のセットはBob(b)に対応する。各セットは2つのエージェント(1)及び(2)を含む。一般に、任意のセット数のエージェント(a、b、cなど)、及び所与のセット内の任意の数のエージェント(1、2、3など)が存在し得る。
【0080】
Sはここでは乱数として指定されるが、当業者には、本発明がSを乱数に制限するものではなく、より一般的には、本発明が1つのSにより保護され得るセッションの最小または最大数を制限または指定するものではなく、またSが確立または計算され得る方法を制限または規定するものではないことが理解されよう。すなわち、Sの値の決定において、特定のサイズのSまたは情報が使用されても、そうでなくてもよい。
【0081】
フェーズ1:
フェーズ1は、1つ以上の暗号化通信セッションの開始以前に、少なくとも1度発生しなければならない。通常の場合では、これは当事者のコンピュータ間の第1のセッションの開始以前に、1度実行される。そして情報が、フェーズ1が繰り返される時期まで、当事者のコンピュータ間の続くセッションにおいて再利用される。必要に応じて、フェーズ1は毎セッションごとに実行され得る。しかしながら、これは公開キー操作を再利用する性能的な利点を排除する。
【0082】
フェーズ1では、AliceとBobが外部キー交換機構を用いて、ランダム値Sを交換する。交換機構が使用可能でない場合、Aliceが単にランダムSをピックし、SKRにそれをフェーズ1SKRデータ・ブロックの一部として、Bobに移送させる。AliceはこのSを用いて、擬似ランダムKG値を生成する。これらのKG値は、図2の"キー導出階層"セクションで示されるように、AliceとBobの両者に対して、回復エージェント・システムの各々につき1つが生成される。これらのKGa1、KGa2、KGb1、及びKGb2値は、それぞれの回復エージェントの公開キーに従い暗号化され、Bobに送信されるSKRフェーズ1データ・ブロック(B1)内に配置される。
【0083】
AliceとBobの両者は、少なくともSをB1のハッシュと一緒に、将来の使用のためにキャッシュし得る。
【0084】
図9及び図11を参照すると、単純化されたデータ・フローにおいて、フェーズ1は、次のステップを含む。
1.AliceとBobがランダムSを交換する(ステップ902)。
2.Aliceが、S及びそれぞれのエージェント・システムのIDをハッシュすることにより、Sから各エージェント・システムのKG値を導出する(ステップ904)。
3.Aliceがそれぞれのエージェント・システムの公開キーに従い、KG値を暗号化する(ステップ906)。
4.AliceがBobにSKRフェーズ1データ・ブロックB1(図11)を送信する。これはT1、ePUa1(KGa1)、ePUa2(KGa2)、ePUb1(KGb1)、及びePUb2(KGb2)を含む(ステップ908)。
【0085】
ここで前記量は次のように定義される。
T1:Alice、Bob、及び全てのキー回復エージェント・システムのIDを含む公開ヘッダ
e:公開キー暗号化
PUa1:Aliceの第1のエージェント・システムの公開キー
PUa2:Aliceの第2のエージェント・システムの公開キー
PUb1:Bobの第1のエージェント・システムの公開キー
PUb2:Bobの第2のエージェント・システムの公開キー
KGa1:Aliceの第1のエージェント・システムのキー生成キー
KGa2:Aliceの第2のエージェント・システムのキー生成キー
KGb1:Bobの第1のエージェント・システムのキー生成キー
KGb2:Bobの第2のエージェント・システムのキー生成キー
【0086】
フェーズ2:
フェーズ2は、各暗号化セッションに対する暗号化の開始以前に発生する。フェーズ2では、AliceとBobがデータ・キーK(セッション・キー)を特定の外部キー交換機構と交換する。必要に応じて、AliceがランダムKをピックし、SKRフェーズ2データ・ブロックがそれをBobに移送できる。エージェントの各セットに対して、Aliceは、キー暗号化キー(KK)のそれぞれのセットに従い、Kを2重に暗号化し、これらの値を対応するフェーズ1ブロック(B1)のハッシュと一緒に、フェーズ2データ・ブロックによりBobに送信する。
【0087】
図10及び図12を参照すると、単純化されたデータ・フローにおいて、フェーズ2は、次のステップを含む。
1.AliceとBobがランダム・データ・キーK(セッション・キー)を交換する(ステップ1002)。
2.Aliceが、各エージェント・システムのキー生成KH値を、それぞれのKG値及び公開キー生成ヘッダのハッシュとして導出する(ステップ1004)。
3.Aliceが、各エージェント・システムのセッション特定のKKを、それぞれのKH値及びセッションの公開ヘッダT2のハッシュとして導出する(ステップ1006)。
4.Aliceがセッション特定のKKキー暗号化キーのセットに従い、Kを2重に暗号化する(ステップ1008)。
5.AliceがBobにSKRフェーズ2データ・ブロックB2(図12)を送信する。これはT2、Hash(B1)、fKKa1.1(fKKa2.1(K))、及びfKKb1.1(fKKb2.1(K))を含む(ステップ1010)。
【0088】
ここで前記量は次のように定義される。
T2:T1、セッションID、タイムスタンプなどを含む公開ヘッダ
f:対称キー暗号化
Hash(B1):ブロックB1のハッシュ
KKa1.1:Aliceの第1のエージェント・システムの第1のキー暗号化キー
KKa2.1:Aliceの第2のエージェント・システムの第1のキー暗号化キー
KKb1.1:Bobの第1のエージェント・システムの第1のキー暗号化キー
KKb2.1:Bobの第2のエージェント・システムの第1のキー暗号化キー
【0089】
回復フェーズ:
回復フェーズでは、エージェント・システムのセットがブロック1の全て、及びブロック2のT2を与えられる。彼らは2重に暗号化されたfKK1(fKK2(K))を与えられず、従ってたとえ彼らのそれぞれのKG情報をプールしたとしても、キーを回復することができない。適切なSKR情報が与えられると、彼らはそれぞれのブロックを解読し、彼らのそれぞれのKG値を獲得する。彼らのKG値並びにT1及びT2ヘッダが与えられると、彼らはT2ヘッダによりカバーされるセッションに対して、KK及びKA値を生成できる。確認情報フィールド(AI)が存在する場合、回復要求を確認するために、秘密KAキーが使用され得る。回復要求が有効な場合、各エージェント・システムは計算されたKK値だけを回復サービスに返却し、次に回復サービスは、2重に暗号化された回復フィールドfKK1(fKK2(K))から、データ・キーK(セッション・キー)を回復することができる。
【0090】
重要な点は、エージェント・システムが生成するKG値を返却せずに、KGから導出される特定の値だけを返却することである。例えば、エージェントシステムは特定のキー暗号化キー(KK)だけを、法執行に返却する。従って、長期間の秘密KG情報が弱体化されずに、有効に維持される。なぜなら、1つのKK値が与えられても、他のデータ・キー(セッション・キー)が回復可能でないからである。
【0091】
ユーザがより便利にセッションのセットを回復できるように、ユーザが十分なAI確認を提供する場合、ユーザ及びエージェント・システムは、ユーザがエージェントにKHの返却を欲していると判断し得る。この判断は、アプリケーション、ユーザ及びエージェント・システム・システムに委ねられる。しかしながら、本発明では、回復サービスとエージェント間の知識の分離が、SKRの基本的な特徴であるので、エージェント・システムに誰かにKGを漏らすように要求する状況のセットを考慮しない。このことは、KG秘密の公開キー暗号化の安全な再利用にとって重要である。
【0092】
SKR設計詳細:
本発明がどのように実施されるかについて、更に詳細に述べることにする。
【0093】
SKR内の暗号化アルゴリズムの選択:
SKRは、BobとAlice間で使用されるセッション・レベルの暗号化には独立である。しかしながら、SKR自身は、対称及び非対称の両方の暗号化を用いて、SKRブロック内の値を計算する。SKR内で使用される暗号化アルゴリズムも自由に選択され得り、選択がT1及びT2ヘッダ内のパラメータとして示される。デフォルト指定により、RSAが公開キー暗号化として使用され、キー処理シャッフラ(後述)が対称暗号化として使用される。キー処理シャッフラは、任意のサイズの暗号化キー、及び任意のサイズのデータ・ブロックを受諾する有用な特性を有するので、デフォルト指定により使用される。SKR内で使用される対称暗号化としての別の可能な選択は、セッション・レベルの暗号化のためのアプリケーションにより使用されるのと同じ、暗号化アルゴリズムを使用することである。この場合、アプリケーションが既にそれを実現しているので、可用性の利点を提供し、従って、SKR内の対称キー暗号化が、セッション・データを保護するために使用される暗号化と同一の効力を有する。
【0094】
SまたはKの任意選択伝送:
必要に応じて、SKRはSまたはKの一方または両方を伝送できる。Bobがキー分配を実行するために公開キー対を有すると仮定すると、これはBobの公開キーに従いSまたはK値を暗号化し、暗号化された値を、Bobに送信されるSKR情報に加算することにより実行される(例えば、それがフェーズ1またはフェーズ2のSKRデータ・ブロックに含まれる)。
【0095】
回復確認ハッシュ及びR:
最上級の設計では、単純化されたデータ・フローは、データ・キーK(セッション・キー)の2重暗号化の完全な値の伝送を示した。部分Rが回復フィールドから隠される場合、これはfKKa1.1(fKKa2.1(K))−Rの如く、結果の暗号化されたKから、Rを除去することにより達成される。例えば、セッション・キーKが168ビット(トリプルDES)であり、隠される部分Rが40ビットの場合、2重に暗号化されるKの最下位40ビットが除去され、最上位の128ビットだけがSKRブロックに含まれる。
【0096】
回復プロセスの間に、試験的なR値を確認するために、追加の回復確認フィールドHa及びHb(エージェント・セットにつき1つ)が、フェーズ2のSKRブロックに追加される。Ha及びHbは次のように定義される。
Ha=Hash(確認ヘッダ、カウンタ、fKKa1.1(fKKa2.1(K))、T2、KKa1.1、KKa2.1)
Hb=Hash(確認ヘッダ、カウンタ、fKKb1.1(fKKb2.1(K))、T2、KKb1.1、KKb2.1)
ここでHash()はリストされるデータ項目の連結のハッシュである。
【0097】
ハッシュは、増分カウンタにより、必要なだけ多くの回数実行される。従って、確認ハッシュは、衝突の確率(すなわちRの誤った確認)が十分に小さいことを保証するように、十分に長い。例えば、rがR内のビット数を表し、Haの長さが(tの任意の値に対して)2r+tの場合、Rの2つの値が同一のハッシュ値となる確率は、約e-tである(ここでeは自然対数の底すなわち2.7182818...である)。t≧20の値が恐らく十分であろう。
【0098】
これらの追加のフィールドにより、Rの試験的な値がfKKa1.1(fKKa2.1(K))の試験的な値を構成するために使用され、次にハッシュが取られ、試験的Rが正しかったかどうかを確認するために比較される。ここでこの探索は、セット内の両方のエージェント・システムが、フェーズ1SKRブロックからそれぞれの暗号化されたKGフィールドを解読し、それぞれのKKキー暗号化キー(例えばKKa1.1及びKKa2.1)を計算し、それらを回復プロセスに返却しないと、進行しない点に注意されたい。
【0099】
非対話型通信:
SKRのために提供される設計は、AliceとBobとの間の対話型セッションについて述べる。ここで用語"対話型セッション"は、AliceとBobの末端上のプロセスが、同一の時間フレームにおいて発生し、従ってプロセスがプロトコルの実行の間に対話し、情報を交換することを意味する。より一般的な状況では、通信が非対話型であり、その場合、両末端上のプロセスは、異なる時刻に発生し、従って、彼らはプロトコルの実行の間に情報を交換することができない。非対話型通信の例には、(1)電子メール(この場合、Aliceによるメールの作成、及びBobによるメールの読出しが異なる時刻に発生する)、及び(2)データ保管(この場合、Aliceによりデータの保管がある時実行され、保管データの取り出し(同様にAliceによると思われる)が後に実行される)が含まれる。(データ保管は1ユーザだけに関わると思われるが、実際には送信ユーザと受信ユーザとが関わり、これらのユーザはしばしば同一人物である。)
【0100】
SKR設計は、変更無しに非対話型通信を処理する。非対話型通信は、SKRプロトコルの実行の間に情報を交換できないので、S及びKキーの交換のために使用される方法を制限し得るが、これは名目的にはSKRプロセス外で発生する。S及びKを交換するためにSKRが使用される場合、これは対話型または非対話型のいずれかの状況に好適な方法を使用する(すなわち、受信者の公開キーに従う暗号化)。
【0101】
SKRブロック1及び2の確認:
従来提供された設計は、SKRブロック1及び2の確認を有さない。これは一部のアプリケーションでは受け入れることができるが、一般的には、一部のアプリケーションは、会話の両方の側が適正な回復情報が提供されたことを保証できるように、特定の様式による回復情報の確認を希望する。
【0102】
確認の1つの方法は、Aliceが上述のようにSKRブロックを生成することであり、Bobがそれらを確認することである。Bobによる確認は直接的である。なぜなら、Bobが秘密値S及びKを知るからであり、従って、Bobがブロックの生成を重複し、彼の結果をAliceから送信される値と比較する。(この確認の問題は、通常の公開キー暗号化方法において、ランダム情報を使用することである。本発明のこの面については、次のサブセクションにおいてカバーされる。)
【0103】
この方法の1つの問題は、AliceがBobの回復要求の完全な知識を有さねばならないことであり、これにはBobが希望するあらゆる任意選択の回復フィールドが含まれる。更に、BobはAliceの情報を事前に知るか、或いは確認を開始する以前に、T1及びT2ヘッダ情報のチェックを待機する必要があり、SKR開始遅延を2倍にする。
【0104】
全ての回復情報が正しく提供されたことを保証する、異なるそして多分好適な方法は、AliceとBobが各々SKR回復ブロックを独立に生成し、Alice及びBobがお互いのそのように生成されたブロックをチェックしないことである。このモードでは、少なくとも一方の側が正しく構成されると、要求される全ての回復情報が正しく生成される。更に、AliceとBobの両者が、相手が送信したものに対する誤った無効化を生じること無く、あらゆる任意選択の回復フィールドを自由に含むことができる。この方法の1つの制限は、非対話型通信において使用できないことである。
【0105】
SKRは使用される生成−確認の方法を指定しない。全ての場合において、AliceがSKRブロックを生成する。所与のアプリケーションは、その必要性及びローカルの法または規制に依存して、BobにAliceのブロックをチェックさせて彼自身のブロックを生成させるか、またはチェックを行わない。
【0106】
確認の方法を変更することに加えて、チェックのレベルも変化し得る。BobがAliceのSKRブロックを確認している場合には、彼はブロック内の全てのエントリの完全な確認を実行してもよいし(エージェントのために暗号化された部分の確認を含む)、或いはメッセージの部分だけをチェックしてもよい。例えば、Bobは、公開キー暗号化に関わる計算労力のために、公開キー暗号化部分を確認したくないかもしれない。しかしながら、彼は他の全ての部分を確認することができる。これはAliceが暗号化を正しく実行したことを保証しないが、彼女のエージェントの選択及び彼らのそれぞれのR値が正しかったことを確認する。この種の部分チェックは、通信待ち時間に敏感なアプリケーションにとって重要である。AliceがSKRブロックを事前に計算できる場合、Bobは部分チェックだけを実行し、公開キー操作が含まれないので、開始待ち時間が多大に速くなり、AliceのSKRプロセスの一部の重要部分を確認する。これは特に、BobとAliceの両者が独立なSKR情報を生成しているときに有用である。なぜなら、部分確認が、公開キー暗号化の完全な確認に対して必要とされる追加の時間無しに、適正な回復の大きな確率を提供するからである(例えば、他のシステムが正しく構成されており、正しく動作している)。
【0107】
追加のキャッシング:
従来提供された設計では、Bob及びAliceが、彼らの共用秘密シードSから導出される公開キー暗号化KG値をキャッシュすることができる。一般的には、これらの暗号化KG値は、AliceとBobとの間の続く会話においてのみ再利用され得る。従って、他の当事者のコンピュータとの会話では再利用されない。なぜなら、SがAliceとBobにのみ知れており、別の受信者が回復情報の完全な確認を行うためには、Sを知らなければならないからである。
【0108】
暗号化KG値は、他の当事者のコンピュータとの会話において、2つの異なる状態の下で再利用され得る。第1に、これらはSの値が明示的に新たな当事者のコンピュータに伝送される場合、再利用され得る。第2に、これらは受信者によりB1の部分確認が実行されるか、或いはB1の確認が実行されない場合、再利用され得る。例えば、AliceがBobとのセッションの開始時に、彼女のエージェント・システムの暗号化KGのセットを生成する場合、彼女はSをTedに送信するか、或いはTedが伝送されたB1内の暗号化KG値を確認するために、Sを使用しないならば、彼女はTedとの会話のために、これらの暗号化KGを再利用できる。こうした再利用をサポートするための、フェーズ1における名目データ・フローの唯一の問題は、KGの所与の暗号化が所与のT1のハッシュも暗号化し、従って、暗号化が新たなフェーズ1ブロック(新たなT1を有する)で再利用される場合、エージェント・システムが後にT1の暗号化ハッシュを公開される旧T1と一致できるように、旧T1も暗号化KGフィールドと一緒に送信される必要があることを、認識することである。
【0109】
好適な場合では、AliceとBobが対話セッションを有し、各々がSKRブロックを独立に生成し、お互いのSKRブロックの部分チェックだけを実行する。この状況では、AliceとBobはSを全く交換する必要がなく、以前に計算されたSを自由に再利用できる。ここでSは他の当事者のコンピュータとのセッションから計算されたものであってもよい。関連するエージェント・システムが同一の場合、Sの再利用は、追加の公開キー暗号化を回避する。Aliceは同一セットの回復エージェント・システムを介して多くの当事者のコンピュータと通信し得るので、所与のセットのエージェント・システムの暗号化KGを再利用する能力は、各エージェント・システムのKG値を暗号化するために使用される公開キー操作に要求される計算の、多大な低減を提供する。
【0110】
暗号化Salt:
一般に、公開キー暗号化は、次の形式で表現される。
c=K(D,X)
ここで、暗号文cは、データD及びランダム値XのキーKに従う暗号化として導出される。幾つかの公開キー暗号化アルゴリズムの任意の1つが、使用され得る。これらには、RSA PKCS−1暗号化、拡張最適非対称暗号化(EOAE)によるRSA暗号化、及びDiffie-Hellman暗号化が含まれる。これらの最初と最後のアルゴリズムはよく知られており、従ってここでは述べないことにする。
【0111】
改良された最適非対称暗号化(EOAE)によるRSA暗号化は、複数のマスキング・ラウンド(ハッシュがキー処理されない以外は、後述のキー処理シャッフラのそれらと類似)の結果を、RSA暗号化により暗号化する以前に、フォーマット済みのブロック(データと追加の値を含む)が、マスキング・ラウンドにさらされる暗号化プロシジャである。このプロシジャは、Johnsonらによる係属中の米国特許出願第08/681679号、並びにANSI X9.44 RSAキー・トランスポート草案規格、及びD.B.Jonhson及びS.M.Matyasによる"Enhanced Optimal Asymmetric Encryption:Reverse Signatures and ANSI X9.44"、Proceedings of the 1966 RSA Data Security Conference、San Francisco、CA、1966で述べられている。
【0112】
RSA PKCS−1暗号化では、ブロック・サイズまでデータをランダムにパッドするために使用される乱数発生器をシードするために、Xが使用される。改良された最適非対称暗号化(EOAE)によるRSA暗号化(後述)では、Xがデータに明示的に付加されるsaltに対応し、他のランダム・パッディングは実行されない。Diffie-Hellman暗号化では、XがAliceの短命(ephemeral)のキー対を生成するために使用されるランダム値を表現し得り、これがエージェント・システムの公開Diffie-Hellmanキーと一緒に、データのマスクとして通常使用される共通キーを生成するために使用される。
【0113】
例えば、AliceがDiffie-Hellmanを用いてKGaをエージェント"a"に送信したい場合、彼女はXを用いて、短命のDiffie-Hellmanキー対(KPx、KSx)を生成する。ここでKPxは公開部分であり、KSxは秘密部分である。エージェント・システム"a"の公開キー部分(KPa)が与えられると、Aliceは共通キーKC=KSx**KPa(ここで**は累乗を表す)を計算する。そして暗号分cが複合セット{KPx、KC(M)}、すなわち、彼女の短命の公開キー、及び共通キーKCにより暗号化されるオリジナル・データDとなる。(この暗号化は、単にKCを、DとXORされるマスクを導出するために使用するか、或いはより一般的な対称暗号化法では、KCをキーとして使用する。){KPx、KC(M)}が提供されると、エージェント・システムはKC=KSa**KPxを計算し、これを用いてDを解読する。
【0114】
要するに、Diffie-Hellmanは、ランダムXが短命のキー対を生成するために使用され、短命の公開キーKPxが暗号文の一部として含まれる限り、SKRにおいて容易に使用され得る。
【0115】
全ての場合において、Bobは、SKRフェーズ1ブロック内の公開キー暗号化フィールドを再生し、従って確認するために、値Xを知る必要があろう。Bob及びAliceが、使用されるランダムsaltに同意するためには、交換されるSから、saltが擬似ランダムに導出されなければならない。そして、これがまた、KG値の生成源として使用される。従って、Sは、SKRプロセスにおいて使用される全ての必要なランダム性の源である。特に、KG及びsalt値は次のように生成される。
KGx=Hash(KG生成ヘッダ、カウンタ、T1、エージェントxのID、S)
saltx=Hash(salt生成ヘッダ、カウンタ、T1、エージェントxのID、S)
ここで、Hash(x)はxのハッシュを表す。KG生成ヘッダ及びsalt生成ヘッダは、定義される定数である。カウンタは、単純な整数カウンタである。T1は、Alice、Bob、及び全てのキー回復エージェント・システムのIDを含む公開ヘッダである。Sは交換されるランダムSである。
【0116】
eに関するHash(T1)結合: 暗号化KG値の詳細設計は、次のようである。
ePUa1(Hash(T1)、KGa1、salt1)
【0117】
前記PUa1により暗号化されるデータ・ブロックは、公開ヘッダT1のハッシュ及びsaltを含むことを示す。T1のハッシュの包含は、エージェントが暗号化KGを、示される当事者のコンピュータのセットと、公開ヘッダT1内で指定されるエージェントとに関連付けれるように、KG値を特定のヘッダに結合する。saltの包含は、暗号化KG値の保護を更に提供する。
【0118】
AI伝送:
AliceとBobは任意的に、SKR情報(例えばフェーズ2SKRブロック)内にキー回復確認情報(AI)を含み得る。実際の目的上、本発明でのAI情報は、Fischer(米国特許第5436972号)により述べられる自己識別データの定義済みの使用、並びにここで述べられるAIを用いる方法を含む。しかしながら、本発明は、AI情報が秘密KGキーに結合される方法に関して、Fischerとは異なる。
【0119】
AI情報(識別情報、確認情報、または権限情報)は、続くキー回復要求を確認するために使用される。SKRフレームワークは、こうした回復許可記録の正確な内容が、アプリケーション及びユーザのニーズに依存して、変化することを可能にする。各SKRフェーズ2ブロックは、エージェント・システムのKIから導出される値(KAa1.1、KAa1.2など)を定義する。これらのKA値は、AIデータを保護するために、特定の方法で使用される。名目的な方法では、AI情報は単にそれぞれのKAキーと一緒にハッシュされ、Hash(AI、KA、T2)形式のキー処理ハッシュが生成される。このモードでは、AliceがAI(通常パス・フレーズ)をエージェントに提供することにより、回復要求を確認でき、エージェント・システムは次にハッシュを確認し、それにより対応するKKの返却を求める。この例では、KAがシードされるハッシュ操作において、キーとして使用される。
【0120】
AIデータを保護するために、他の方法も使用され得る。例えば、Aliceはパス・フレーズを用いて、KAをAI(KA、T2)のように暗号化できる。回復時に、Aliceはパス・フレーズを用いてフィールドを解読し、KAを回復し、回復許可のために提出する。この場合、KAはコードワードまたは許可トークンとして使用される。Alice及びエージェント・システム、そして場合によってBob(AliceとBobがSを共用する場合)だけがKAを知るので、これはAliceのパス・フレーズを転送攻撃から保護する。このモードでは、Aliceが彼女のパス・フレーズをエージェント・システムに明かさずに済む追加の利点を有する。
【0121】
デフォルト指定により、AI情報はブロック2に平文で、次の形式で含まれる。
Hash(許可ヘッダ、カウンタ、AIa1、KAa1.i、i番目のセッションのT2)
Hash(許可ヘッダ、カウンタ、AIa2、KAa2.i、i番目のセッションのT2)
Hash(許可ヘッダ、カウンタ、AIb1、KAb1.i、i番目のセッションのT2)
Hash(許可ヘッダ、カウンタ、AIb2、KAb2.i、i番目のセッションのT2)
【0122】
AIはエージェント及びセッション、または希望に応じてそれらの組み合わせにわたり、全てのエージェント・システム及びセッションに対して同一である。AIの値は、単に特定の秘密のパスワードまたはパス・フレーズであるが、ユーザ及びエージェント・シス テムはあらゆる標準の内容に同意し得る。
【0123】
SKR機構内でAIを処理する方法は、Fischerにより述べられる方法とは異なる。Fischerは、最初に秘密(ここではKGに相当)及び自己識別データ(ここではAIに相当)を結合し、次にこの結合の少なくとも一部を、受託機関(ここではキー回復エージェント・システム)の公開キーにより暗号化することにより、秘密を自己識別データに結合する。しかしながら、本発明では、AIがKGに結合されず、キー回復エージェント・システムの公開キーに従い暗号化されない。なぜなら、その場合、AI情報を知らないBobが、暗号化KG値を確認することができないからである。
【0124】
本発明の1つの実施例では、BobがAliceからの暗号化KG値を確認する。その場合、暗号化値はAIを含むことができない。従って、本発明は、AI及びKGを結合する方法を要求し、これらはBobがAliceからの暗号化KGを確認する場合を含む、本発明の全ての実施例において作用する。これを可能にするため、最初にKGからKIを、次にKAを導出し、従って、結合操作において使用される秘密はKGではなく、それにより確認コード生成プロセスにおいて、KGを繰り返し明かさない。次にAI及びKAが(恐らく他の情報と一緒に)結合され、結合がハッシュされて、確認コードが生成される。Aliceは確認コードを生成することができる。なぜなら、彼女はSを知っているので、キー階層内の任意のキーを生成でき、また秘密を含み得る彼女自身のAIを知るからである。
【0125】
回復エージェントがHash(AI、KA、T1)を確認するために、AliceはAIをキー回復エージェント・システムに提供しなければならない。これを実行する異なる任意選択方法が存在し、それらには、出向いて証明書を手渡す方法、ユーザの証明書を確認するエージェント・システムを用いる方法、AI記録を用意し、それを安全にキー・エージェント・システムに送る方法、或いはAliceが彼女自身のAI記録を用意し、それをキー回復エージェント・システムに知られるキーに従い暗号化し、暗号化AIをエージェント・システムに電子的に送信する方法などが含まれる。例えば、AIはエージェント・システムの公開キーに従い暗号化され、エージェント・システムに送信される。
【0126】
AI及びKGを上述のように結合解除することにより、キー回復エージェント・システムに提供されるかまたは利用可能にされたAIが、長期間にわたり繰り返し使用可能になる。通常、AIは多くの異なるKGにわたり一定に維持される。また、AIは大量のデータを含み得り、従って複数の公開キー暗号化を要求し得る。その場合、AIを各KGと一緒に繰り返し送信することは、不利である。
【0127】
図5はSKR確認コード生成220のプロセスを示す。ユーザは確認情報AI227を用意し、これがステップ232で、(例えばキー回復エージェント・システムに知れるキーに従う暗号化を介して)保護される。結果の保護AI233がステップ234で、キー回復エージェント・システムにとって利用可能にされる。これらのステップは、AIをキー回復エージェント・システムの公開キーにより暗号化し、次に暗号化されたAIをキー回復エージェント・システムに送信することにより、達成される。このステップは、SKRシステムを使用する以前に実行される。後に、KG221がステップ222で、キー回復エージェント・システムの公開キーにより暗号化され、暗号化KG223が生成され、これがステップ224で、キー回復エージェント・システムにとって利用可能にされる。この場合、暗号化KG223は、SKRブロック1に含まれることにより、利用可能にされる。各セッションに対して、キー導出ステップ225が実行され、KG221からKA226が導出される。そのようにして生成されたKA226及びAI227、並びに恐らく他の情報(例えば、KKが有効なキー回復要求に応答して返却されるように指定する制御情報)が、ステップ228で(例えば値を連結することにより)結合され、結合がステップ229でハッシュされ、確認コード230が生成される。確認コード230は、SKRブロック2に含まれることにより、キー回復エージェント・システムにとって利用可能にされる。
【0128】
図5の確認コード生成220のための上述の方法の結果、KKに対するユーザ要求が次のように確認される。すなわち、ユーザは最初に、キー回復エージェント・システムが記憶済みAIの彼のコピーに対して確認できる情報を提供することにより、彼の識別または要求されたキーをアクセスする権利を証明しなければならない。これを達成するための多くの異なる方法が知られており、従って、ここでは述べないことにする。確認ステップの一部は、KAの計算を要求する。例えば、ユーザの要求がi番目のKKに対する場合、キー回復エージェント・システムは最初に、対応するi番目のKAを計算する。キー回復エージェント・システムは次に、(AI、KA、T2)を含む入力値のハッシュを計算する。ここでT2は、ユーザにより提供されるセッション回復情報から獲得される。計算されたハッシュ値が、提供されるSKRブロック1に含まれる対応する参照のハッシュ値に一致する場合、要求は有効と見なされ、要求されたKKがキー回復エージェント・システムにより計算され、返却される。
【0129】
ID及びネーム空間:
ユーザ及びエージェント・システムのIDには、多くのタイプがあり、例えばX.509識別名、PGPアスキー・ネーム、PGPキーID、IPアドレス、DNSホスト・ネーム、電子メール・アドレスなどが含まれる。SKRでは、全てのIDは、草案RFC draft-ietf-ipsec-cdp-00に従い、ネーム空間識別子、及び示されるネーム空間内のアスキー・ネームを含む組(tuple)として表現され得る。この草案はアプリケーションが専用に使用するために、250乃至255のネーム空間指標を確保する。SKRはネーム空間250を、アプリケーション専用として処理し得るので、アプリケーションが、このタイプの全てのIDに関する全ての問い合わせ、例えば公開キーに対する要求や、国情報に対する要求などを処理することを期待する。国IDに対して定義されるネーム空間は存在しないので、SKRはSKR特定の国名に対して、ネーム空間251を使用し得る。
【0130】
ユーザ登録公開キー:
名目設計においては、KG値がそれぞれのエージェント・システムの公開キーに従い暗号化される。この暗号化は、各エージェント・システムが1つの公開キーだけを有することを意味する。DKRデータ形式は、所与のエージェント・システムに対して使用されるキーIDを指定するので、エージェント・システムは任意の数のキーを有し得る。これは重要な特徴である。なぜなら、単一のキーの使用は、対応する秘密キーの長期間の秘密保護に関して、問題を生じるからである。1エージェントにつき複数のキーを許容することにより、エージェント・システムは単に全てのユーザに対するキーのセットを有することも、或いはユーザのセット("1ユーザ"と見なされる特定の組織のユーザなど)に特定のキーを有することも、或いは各個々のユーザに対する別々のキーを有することもできる。ユーザはキー対を生成し、それらをエージェント・システムに登録することができ、キーが的確に生成されるように保証し、それらを所望の頻度で変更する。
【0131】
ユーザ生成される回復キーをキー回復エージェント・システムに登録するために、幾つかの異なる方法の任意の1つが使用され得る。1つの方法では、各ユーザは、キー回復プロシジャで使用される彼または彼女自身の公開及び秘密キー対を、1つ以上のキー回復エージェント・システムに登録する。各ユーザは次に、彼または彼女の登録キーの公開部分を使用し、キー回復値を暗号化する。この細分性により、ユーザは、秘密回復キーが何らかの理由により弱体化される場合に備え、明かされることを制限するために、周期的に回復キー対を変更する柔軟性を有する。
【0132】
この第1の方法は、キー回復エージェント・システムが、サインのための公開/秘密サイン(証明)キー、及びキーの暗号化並びに分配のために使用される公開/秘密キーを有する、公開キー構造基盤の存在を想定する。これはまた、これらのキーの生成及び分配のための手段、並びに、ユーザがこれらのキーの公開部分を確認するための手段の存在を仮定する。こうした構造基盤を確立するための手段は、周知である。
【0133】
この第1の方法では、ユーザは回復キー対の秘密部分を、それをキー回復エージェント・システムの公開暗号化キーにより暗号化することにより、登録する。このことは、キー回復エージェント・システムへの回復キーのオンライン登録を可能にする。登録プロセスの一部として、キー回復エージェント・システムは、公開及び秘密キーが有効なキー対であることを確認する。そのようにして、キー回復エージェント・システムは、公開キーにより暗号化された情報を解読するための正しい秘密キーを有することを知る。
【0134】
この第1の方法では、キー回復エージェント・システムは任意的に、ユーザが利用可能なサイン(証明)キーを利用する。ユーザの登録済みキー対を確認後、キー回復エージェント・システムは登録済み公開キーに、そのサイン(証明)キーでサイン(証明)する。サイン済み(証明済み)公開キーがユーザに返却され、ユーザはサイン(証明書)を、キー回復エージェント・システムのサイン(証明)キーの公開部分により確認する。このようにして、ユーザは、キー回復エージェント・システムがキー回復値を解読する手段を有する、従って、キー回復プロシジャが実行され得ることを知る。
【0135】
非常に多数の個人ユーザが存在する場合、あらゆるユーザが彼または彼女の回復キーをキー回復エージェント・システムに登録することは、容易に非現実的となることが理解されよう。従って、第1の方法の変形は、個人ューザのレベルではなく、組織レベルにおける回復キーの細分性を提供する。共通の組織に属するユーザのグループ、例えば同じ会社の従業員が、同一の回復キーを有する。
【0136】
この変形では、各組織が回復プロシジャで使用されるそれ自身の公開及び秘密キー対を、1つ以上のキー回復エージェント・システムに登録する。例えば、ある会社がそれ自身の回復キー対を生成し、これらのキーを1つ以上のキー回復エージェント・システムに登録する。この場合、その会社は、第1の回復キー対を生成し、それを第1のキー回復エージェント・システムに登録し、また第2の回復キー対を生成して、それを第2のキー回復エージェント・システムに登録する。この時、会社の従業員は、会社により生成される回復キーの公開部分を用いて、回復プロシジャに従い、キー回復値を暗号化する。
【0137】
上述したことを除き、この変形は個人ユーザ変形版と同一である。しかしながら、組織にゆきわたる回復キーにより、登録(またはエスクロウ)される回復キーの数が多大に低減される。なぜなら、この変形に従いキーを登録し得る潜在的な組織の数は、この第1の方法の個人ユーザ変形版に従い、キーを登録し得る潜在的なユーザの数よりも、遥かに少ないからである。
【0138】
しかしながら、この第1の方法のいずれの変形の欠点は、回復キーの秘密部分が、それをキー回復エージェント・システムに属するキーにより暗号化することにより、オンラインでキー回復エージェント・システムにとって利用可能にされることである。従って、複数の回復キーを有し、これらの複数のキーにわたり明かすことを広げる利点は、これらのキーの秘密部分を、キー回復エージェント・システムに属する単一のキーに従い暗号化することにより、無効にされる。
【0139】
従って、回復キー登録の別の方法では、回復キーの秘密部分が、それをキー回復エージェント・システムに属するキーにより暗号化することにより、オンラインで登録されない。代わりに、キー登録が安全で厳格な方法で実現され、ユーザ及び会社はキー回復エージェント・システムに対する絶対的な信頼を有する。
【0140】
この別の方法では、ユーザは干渉防止のハードウェア公開キー・トークン(例えばスマート・カードまたはPCMCIAカード)を、エージェントに登録する。このトークンは、内部ハードウェア乱数にもとづき、その公開キー対を生成するように設計され、公開キー対の公開部分だけを明かす。キーの秘密部分は決して明かさないが、代わりに、あらゆる提示される回復要求の解読のために、秘密部分だけを使用する。(或いは、使用キーが外部的に生成され、トークンに記憶されるか、回復キーの公開部分が他の方法で提供されてもよい。)従って、ユーザは彼らの回復秘密キーが決して弱体化されず、キーの使用が厳格であることを確信する。
【0141】
カードは、公開キーを取り出すために、またカードが新たに提示された公開キーに合致する秘密キーを含むか否かを確認するために、キー回復エージェント・システムの読取り装置に挿入される。トークンが回復キーの正しい秘密部分を含むことを確認するプロセスは、周知である。これは一連のランダム値をトークンに送信するステップ、及びその値を秘密キーに従い(1度に1つずつ)暗号化するために、トークンを要求するステップを含む。次に公開キーを用いて、出力を解読し、既知の入力と比較する。これらの値が等しい場合、トークン上の秘密キーが有効である。それ以外では、トークンは拒絶される。確認されると、トークンがプラグ解除され、安全な保管場所に格納される。トークンが保管場所から取り出され、令状または法廷指令にもとづいてのみ使用され、その時でさえ、秘密キーを明かさない。これは単に、提供される暗号化キー回復値を解読するだけである。
【0142】
この別の方法では、回復キーの秘密部分が、それをキー回復エージェント・システムに属するキーにより暗号化することにより、決して明かされない。この場合には、キーがトークン上に記憶され、キー回復エージェント・システムでさえ、回復キーの秘密部分の値を判定できない。
【0143】
この別の方法ではまた、トークンが監査され得る利点を有する。この場合、回復キーの秘密部分が、不正の証明のために検査され得る物理装置内に記憶される。これはマーク付けまたはタグ付けされ、誤用されなかったことを保証するように、周期的に監査され得る。トークンはまた、全ての使用例を記録することができ、この情報が監査の間に"ダンプ"され、カード情報がトークンの監査ログに一致することを保証する。
【0144】
この別の方法では、組織は、その従業員の一人が調査の主体の場合にだけ、キー及びトークンの使用がキー回復エージェント・システムによって要求されることを確信できる。組織外の従業員に属する法執行による他のキーの回復は、組織により提供される回復キーを含み、組織により提供されるトークンの使用を要求しない。従って、回復キーの保護が、より多大に保証される。
【0145】
これらの方法では、キー回復システム・ソフトウェアまたはハードウェアが、公開証明キーのリストを含む。これらの公開証明キーは、キー回復エージェント・システムの他に、証明当局(CA)の公開証明キーを含み得る。この場合、回復キーの公開部分が証明キーによりサイン(証明)される、2つのレベルの階層が存在し、そこでは回復キーの公開部分を含む証明が、回復システム・ソフトウェアまたはハードウェアに"ハード・コード化"される公開証明キーの1つを用いて、動的に確認される。
【0146】
このタイプの機構が提供される場合、ユーザは彼らの回復セキュリティのレベル対費用の関係を選択できる。大部分のユーザは、恐らく単に、彼らの選択によるエージェントの認可済みの公開暗号化キーを使用する。追加の費用により、彼らはオンライン方法により、彼ら自身の回復キーを周期的に登録できる。また、より高い費用により、彼らは彼らのキーをスマート・カード上に物理的に登録できる。スマート・カードの監査済みの物理記憶に関連付けられる高い費用は、恐らくその使用を大企業、または特別に貴重な通信を有する業務に制限するであろう。しかしながら、ユーザはキー更新のレベル及び頻度の両方を選択することができる。
【0147】
回復エージェントは恐らくスマート・カードによる登録を歓迎するであろう。なぜなら、提供される監査可能な物理的なセキュリティにより、ユーザが彼らのキーが回復エージェント・システムにより危うくされたと主張することが困難になるからである。
【0148】
これらの代替方法により、ユーザはセキュリティ範囲から、以前の形態のエージェント・システムへの登録の不都合を、より優れたセキュリティと交換するものを選択できる。
【0149】
ハッシュ特性及びキー生成:
SKRはキー及びsaltの導出、回復許可情報の生成、及び対称暗号化のキー処理シャッフラ法の一部として、ハッシュを使用する。名目上、SKRはハッシュとしてSHA−1を使用するが、任意の暗号ハッシュが使用され得る。ハッシュは主に、ある値のハッシュの知識がオリジナル値を決定する扱い易い方法を提供しないように、非可逆である必要がある。更に、ハッシュは、回復確認及び回復許可におけるその使用が信頼できるように、全ての入力ビットに依存する必要がある。ハッシュは耐衝突の強い特性を必要としないが、耐衝突ハッシュ関数が、先の2つの要求を満足する限り、使用され得る。
【0150】
この文書では、ハッシュはH(a、b、c、...)の形式で使用される。"優れた"ハッシュにより、入力値の順序は問題とならず、任意に順序で指定され得る。現実的な問題として、順序は重要であり、特にキー処理ハッシュ内のキーの処理に関して、そのことが当てはまる。この指定で示される順序は、単に可能な順序であり、本発明は、SKRシステムを記述する任意のハッシング操作において、入力の特定の順序に制限されるものではない。異なるハッシュ・アルゴリズムによる実施例では、適宜順序が変化し得る。
【0151】
S=Kの退化した場合:
一部のアプリケーションでは、Sを交換すること、或いはSKRにフェーズ1においてそれを交換させることが、困難であったり若しくは望ましくなかったりする。例えば、アプリケーションがSの追加の交換をサポートできず、Bobの公開キーが知れていない、或いはBobが公開キーを有さない場合、ランダムSをBobと通信する方法が存在しない。この場合、2つの可能性が存在する。すなわち、AliceとBobが彼ら自身の独立のS値を生成できるが、お互いのパケットの完全なチェックを実行できないか(彼らは部分チェックを実行できるが、暗号化KG値を確認できない)、或いは彼らがS=Kにすることである。
【0152】
Sが単にKにセットされる場合、SKRブロックが以前と同じに定義されるが、幾つかの欠点を有する。第1に、Kが知れなければならないので、フェーズ1SKRブロックを予め計算することができない。(但し、フェーズ1SKRブロックがKから計算されると、それはキャッシュされ得る。)第2に、所与のS(特定のKに等しくセットされる)がキャッシュされる場合、Kの合法的回復がSを法執行に明かすので、エージェント・システムと法執行との間の知識の分離が違反され、従って、そのSに従い回復可能な全てのキーの回復が、法執行によっても回復可能になる。第3に、キーKの意味上のセキュリティが失われる。すなわち、Kの推測が提供されると、SKRブロックを前方計算(forward calculate)し、それらが等しいかどうか比較することにより、誰もがその推測をテストすることができる。
【0153】
S=Kの設定はセキュリティを低減し、性能的な不利を課するので、これは代替手段がない場合、すなわち、1)アプリケーションがSを交換できない場合、2)Bobの公開キーが知れていないか、利用可能でない場合、及び、3)通信が非対話型である場合に限り、実施されるべきである。ファイル・アプリケーションでは、Bob=Aliceであり、S=Kにセットする必要がない。
【0154】
詳細SKRプロトコル:
次に、名目SKRプロトコル仕様の詳細を示す。これは対話型または非対話型通信の場合、1当事者のコンピュータにつき、1つ以上のエージェントを有する1つ以上の通信当事者のコンピュータの場合、及びSKRフェーズ1ブロックにつき、1つ以上の通信の場合を許容するように、できる限り一般的に適用されるように試みられる。このプロトコル仕様は、SKR法が所与のアプリケーションに対して個別に適応化され得るので、1仕様例に過ぎない。例えば、アプリケーションが国内の暗号化データの保管だけを扱う場合、アプリケーションは実質的に、より小さく、しかも単純なプロトコルを使用できる。
【0155】
フェーズ1:
1.可能であれば、AliceとBobがランダムSKRシードSを交換する。
2.AliceがBobにSKRフェーズ1データ・ブロック(B1)を送信し、B1が、
M1(SKRブロック1を示すマジック識別子)
T1(SKRフェーズ1公開ヘッダ)
PR1(通信当事者のコンピュータ1の当事者記録)
・・・
PRk(通信当事者のコンピュータkの当事者記録)
RAR1(エージェント・システム1の回復エージェント記録)
・・・
RARn(エージェント・システムnの回復エージェント記録)
を含む。ここで、
1.T1は、次のものを含む。
SKRバージョン番号
SKR公開キー暗号化方法(名目上RSA)
SKR秘密キー暗号化方法(名目上キー処理シャッフラ)
SKRハッシュ方法(名目上SHA−1)
SKRがSを当事者のコンピュータに伝送するか否かを示すフラグ
当事者のコンピュータの数
エージェントの数
提供されるKGのビット・サイズ
KG情報の暗号期間
SKRブロック1のタイムスタンプ
SKRブロック1のID
2.各PRiブロックは、次のものを含む。
当事者ID(ネーム空間番号及び通信ユーザの名前)
国ID(ネーム空間番号及び国名)
キーID(当事者の公開キーのID)
ePUi(S,Ri)(SKRがSの交換を実行している場合)
3.各RARiブロックは、次のものを含む。
セット番号(このエージェント・システムが属するエージェント・・システム・セットを示す番号)
エージェント番号(セット内のエージェント・システムを示す番号)
エージェントID(ネーム空間、名前)
エージェントのキーID(使用されるエージェント・システムの公開キー)
エージェントのキー・サイズ(ビットで示される)
ePUx(T1||KGx、saltx)
4.ここで、
KGx=Hash(キー生成ヘッダ、カウンタ、T1、エージェント・システムxのID、S)
saltx=Hash(salt生成ヘッダ、カウンタ、T1、エージェント・システムxのID、S)
である。
【0156】
フェーズ2:
1.可能であれば、AliceとBobはランダム・セッション・キーKを交換する。
2.AliceがBobにSKRフェーズ2データ・ブロック(B2)を送信し、B1が、
M2(SKRブロック2を示すマジック識別子)
T2(SKRフェーズ2公開ヘッダ)
Hash(B1)
PR1(当事者のコンピュータ1の任意選択の当事者記録)
・・・
PRk(当事者のコンピュータkの任意選択の当事者記録)
RAR1(エージェント・システム1の任意選択の回復許可記録)
・・・
RARn(エージェント・システムnの任意選択の回復許可記録)
KRR1(エージェント・システムのセット1のキー回復記録)
・・・
KRRm(エージェント・システムのセットmのキー回復記録)
を含む。ここで、
1.T2は、次のものを含む。
T1
PR記録がKを交換するために使用されるか否かを示すフラグ
任意選択のRAR記録が含まれるか否かを示すフラグ
セッションID
セッション・タイムスタンプ
セッション・キー・タイプ(すなわち、暗号化アルゴリズム−−DES、IDEA、...)
セッション・キー・サイズ(ビットで示される)
セッション・キー暗号期間
2.任意選択のPRiは、次のものを含む。
当事者ID(ネーム空間番号及び通信ユーザの名前)
キーID(当事者の公開キーのID)
ePUi(K,Ri)(SKRがSの交換を実行している場合)
3.任意選択のRARiは、次のものを含む。
セット番号s(エージェント・システムのセットを示す番号)
エージェント・システム番号a(セット内のエージェント・システムを示す番号)
Hash(許可ヘッダ、カウンタ、AIsa、KAsa.i、i番目のKのT2)
4.KRRiは、次のものを含む。
セット番号i(エージェント・システムのセットを示す番号)
Rのサイズ(ビットで示される)
fKKi1.1(fKKi2.1(K))−R
Hi=Hash(確認ヘッダ、カウンタ、fKKi1.1(fKKi2.1(K)))、T2、KKi1.1、KKi2.1)
5.KGx=Hash(G生成ヘッダ、カウンタ、T1、エージェント・システムxのID、S)
6.KHx=Hash(H生成ヘッダ、カウンタ、T1、エージェント・システムxのID、KGx)
7.KIx=Hash(I生成ヘッダ、カウンタ、T1、エージェント・システムxのID、KGx)
8.KKx=Hash(KK生成ヘッダ、カウンタ、T2、エージェント・システムxのID、KHx)
9.KAx=Hash(KA生成ヘッダ、カウンタ、T2、エージェント・システムxのID、KIx)
【0157】
大域通信処理テーブル:
図8を参照すると、本発明のキー回復システムにより要求される情報は、大域通信処理テーブルと呼ばれるテーブル800内に記憶される。テーブル800は説明上示されるものである。実際の実施例では、データが例えば別々のテーブルに適切に記憶され、一方がキー回復エージェント・システムの公開キーを、他方が規則を指定したりする。テーブル800は、システムが、特定のアルゴリズム及び異なる国のユーザに対応して、キーのサイズ並びにキー回復値を計算することを可能にする情報を含む。テーブル800はまた、各国で許可されたキー回復エージェント・システムの公開キーを含む。テーブル内の数は、本発明が可能にする柔軟性を説明するための例に過ぎない。変形は事実上、制限されない。特に、各国は多くのキー回復エージェント・システムを有し得る。
【0158】
国相互間の通信では、キー回復システムは、受信者の公開キー証明または匹敵するシステム構成情報から、受信者の国IDを決定できる。送信者のオリジナル国ID及び受信者の宛先国ID、更に送信者及び受信者により使用される意図された暗号化アルゴリズムのアルゴリズムIDを用いることにより、キー回復システムは、(1)送信者及び受信者が使用可能なキーの最大長、(2)可能なR値(これは送信者及び受信者で異なり得る)、及び(3)キー逆変換関数により必要とされるキー回復エージェント・システムIDを決定する。キー回復システムは次に、この情報をキー逆変換関数に渡す。キーの長さは2つのキーの長さ値の小さい方に相当する。例えば、国X及びYに対して、DESのキーの値が64ビット及び128ビットの場合、64が使用される値となる。
【0159】
キー処理シャッフラ:
キー処理シャッフラ関数(以降では"シャッフラ関数"または単に"シャッフラ"として参照される)は、nビットの入力Xを"シャッフル化"nビット出力Yに変換する可逆関数である。シャッフラ関数は、シャッフリングをi≧3(iは変数)度繰り返して実行し、完全なミキシングを保証する。すなわち、出力内の各ビットは、入力内の各ビットに依存する。ここでの例では、i=3を選択する。シャッフラの仕様は、iに対して特定の値を規定しない。
【0160】
図6は、シャッフラ関数のハイレベル・ブロック図を提供する。単純化のため、ここでは入力が2つの160ビット部分(XL及びXR)を含むと仮定する。(シャッフラ関数の一般的仕様は、関数が任意の長さの入力を処理することを要求する。)ハッシュ繰り返し1では、XRがハッシュされ、160ビットのハッシュ値H(XR)が生成され、これがXLと排他的論理和され、マスク済み出力mXLが生成される。ハッシュ繰り返し2では、mXLがハッシュされ、160ビットのハッシュ値H(mXL)が生成され、これがXRと排他的論理和され、マスク済み出力mXRが生成される。ハッシュ繰り返し3では、mXRがハッシュされ、160ビットのハッシュ値H(mXR)が生成され、これがmXLと排他的論理和され、マスク済み出力mmXLが生成される。
【0161】
図7は、mmXL||mmXRをシャッフラ関数により"シャッフル解除"(unshuffling)し、オリジナル入力XL||XRを回復するプロセスを示す。ハッシュ繰り返しが逆の順序(3、2、1)で実行される。ハッシュ繰り返し3では、mXRがハッシュされ、160ビットのハッシュ値H(mXR)が生成され、これがmmXLと排他的論理和され、mXLが回復される。ハッシュ繰り返し2では、mXLがハッシュされ、160ビットのハッシュ値H(mXL)が生成され、これがmXRと排他的論理和され、オリジナル入力XRが回復される。ハッシュ繰り返し1では、XRがハッシュされ、160ビットのハッシュ値H(XR)が生成され、これがmXLと排他的論理和され、オリジナル入力XLが回復される。
【0162】
シャッフラ関数の一般定義:
nビットの入力Xがシャッフラ関数により、次のように処理される。
1.Xが左部分(XL)と右部分(XR)とに分割され、XL及びXRの長さが次のように定義される。すなわち、a)nが偶数の場合、XL及びXRの各々はn/2ビットを含み、b)nが奇数の場合、XLは(n−1)/2ビットを含み、XRは(n+1)/2ビットを含む。
2.XRがXLをマスクするために使用される。次にマスク済みXLが、XRをマスクするために使用される。そして最後に、マスク済みXRが、更にマスク済みXLをマスクするために使用される。マスク演算は下記のように別々に定義される。
【0163】
XLのマスキング:
XLがXRを用いてマスクされる。
【0164】
XLが最初にkビットのブロックに分割される。XLの長さがkの倍数の場合、各部ロックはkビットを含む。XLの長さがkの倍数でない場合には、XLは1つの短ブロック(<kビット)、及び任意的に、kビットの1つ以上のブロックを含む。短ブロックが存在する場合、これはXLの最上位ビットから構成される。
【0165】
kは、ハッシュ・アルゴリズムのブロック・サイズとして定義される。例えば、SHA−1がハッシュ・アルゴリズムの場合、k=160である。MD5がハッシュ・アルゴリズムの場合、k=128である。この指定に関して特に述べられない場合には、SHA−1がシャッフラ関数により使用されるハッシュ・アルゴリズムである。
【0166】
XL内のブロックは、次のように分割される。
Figure 0003640331
【0167】
ハッシュされる入力は、次のように定義される。
入力=XR||公開ヘッダ
ここで、公開ヘッダは次のような10バイトの符号化構造である。
1バイト 識別子:"シャッフラ"ID
4ビット 繰り返し:1=1度目の繰り返し
4ビット アルゴリズム:ハッシング・アルゴリズムのID
4バイト カウンタ:1、2など。カウンタが、マスクされるXL内のブロック番号に一致する。
4バイト 長さ:シャッフルされるデータの長さ(ビット)
【0168】
マスキング演算は次のステップを含む。
1.カウンタ=1にセットする。入力(公開ヘッダ||キー||XR)をハッシュ・アルゴリズムによりハッシュし、kビットのハッシュH1を生成する。ここで"キー"は、キー処理シャッフル関数に指定される秘密キーである。H1をXLからのブロック1と排他的論理和し、マスク済みブロック1(mブロック1と示される)を生成する。
2.カウンタ=2にセットする。入力(公開ヘッダ||キー||XR)をハッシュ・アルゴリズムによりハッシュし、kビットのハッシュH2を生成する。ここで"キー"は、キー処理シャッフル関数に指定される秘密キーである。H1をXLからのブロック2と排他的論理和し、マスク済みブロック2(mブロック2と示される)を生成する。
3.最後のブロック(ブロックi)がマスクされるまで、演算が継続する。最後のブロックがjビット(j<k)を含む短ブロックの場合、Hiの最下位jビットをブロックiと排他的論理和することにより、ブロックiがマスクされ、マスク済みブロックi(mブロックiと示される)が生成される。
【0169】
マスク済みXLは、mXLと示される。
【0170】
XRのマスキング:
XRがマスク済みXLを用いてマスクされる(mXLと示される)。
【0171】
XR内のブロックが、XL内のブロックが分割された時と同様に、次のように分割される。
Figure 0003640331
【0172】
XRが、公開ヘッダ内の繰り返し数が2にセットされる("2度目の繰り返し"を示す)以外は、XLがXRによりマスクされた時と同様に、mXLによりマスクされる。この場合、公開ヘッダがmXLの後に付加にされる。
【0173】
ハッシュされる入力は、公開ヘッダ内の繰り返し数が2にセットされ、"2度目の繰り返し"を示す以外は、
入力=公開ヘッダ||キー||mXL
である。カウンタがリセットされ、前述のように、1、2、...と増分する。マスキング演算は、入力をハッシュするステップと、そのようにして生成されたハッシュ値を、XR内のブロックと排他的論理和するステップとを含む。
【0174】
マスク済みXRは、mXRと示される。
【0175】
mXLのマスキング:
mXLは、公開ヘッダ内の繰り返し数が3にセットされる("3度目の繰り返し"を示す)以外は、XLがXRによりマスクされた時と同様に、mXRによりマスクされる。マスク済みmXLはmmXLと示される。
【0176】
シャッフラの出力は、mmXL||mXRである。
【0177】
シャッフラに指定されるキー:
本発明は、シャッフラを"キー処理"(key)する様々な方法が存在し得ることを考慮する。1つの方法は、キーをハッシュされる残りの入力と結合する、すなわち、入力=(公開ヘッダ||キー||データ)であり、ここでデータはXL、XR、mXL、mXRなどである。例えば、キーは前置(prepend)されたり(入力の前)、付加され得る(入力の後)。しかしながら、単にキーを前置または付加するだけでは、判別子(distinguisher)(すなわち、関数がランダム関数として振る舞っていないことを検出する統計的テスト)を構成できるほど、必ずしも十分ではない。しかしながら、キーの一部をデータに付加及び前置することは、この問題を回避する。M.Luby、C.Rackoffによる"How to construct pseudo-random permutations from pseudo-random functions"、SIAM Journal of Computing、vol.17、pp.373-386、1988を参照されたい。この論文は、内部で使用される関数が擬似ランダム関数の場合、シャッフラのような構造が擬似ランダム順列であることを証明する。FOCS 96で現れるM.Bellare、R.Canetti、及びH.Krawczykによる"Pseudo-random functions revisited、the cascade construction"を参照されたい。この論文は、ハッシュ・アルゴリズムHの衝突関数が擬似ランダムの場合、データへのキーの一部の付加及び前置が、擬似ランダム関数であることを証明する。
【0178】
従って、本発明は、キーを分割し、ある部分を前置し、他の部分を付加することが望ましいことを考慮する。しかしながら、本発明は、キーをシャッフラ内のハッシュされるデータに結合するこの方法に限られるものではない。キーを小部分に分割し、これらの部分をインタリーブしたり、或いはハッシング演算を実行する以前に、単純なまたは複雑な他の結合関数を用いて、キーをデータと結合してもよい。
【0179】
まとめとして、本発明の構成に関して以下の事項を開示する。
【0180】
(1) キー回復エージェント・システムを用いて秘密値の回復を提供する装置であって、
前記キー回復エージェント・システム用のジェネレータ値を生成する手段であって、前記ジェネレータ値を生成する手段が、秘密値を確立する手段と、前記ジェネレータ値を前記秘密値の1方向関数として生成する手段とを含む、前記生成する手段と、
前記生成されたジェネレータ値を前記キー回復エージェント・システムにとって利用可能にする手段であって、前記キー回復エージェント・システムにとって利用可能にする手段が、前記ジェネレータ値を前記キー回復エージェント・システムの公開キーにより暗号化して、暗号化されたジェネレータ値を生成する暗号化手段を含む、前記利用可能にする手段と、
暗号化キーを前記利用可能にされたジェネレータ値の1方向関数として生成する手段と、
前記秘密値を前記生成された暗号化キーにより暗号化して、暗号化された秘密値を生成する暗号化手段であって、前記キー回復エージェント・システムに前記暗号化されたジェネレータ値を前記公開キーに対応する秘密キーにより解読させ、前記暗号化キーを前記解読させたジェネレータ値の前記1方向関数として生成させ、そして前記暗号化された秘密値を該生成された暗号化キーにより解読することにより、前記秘密値が前記暗号化された秘密値から回復可能である、前記暗号化手段と
を含む、装置。
) 前記秘密値を暗号化キーとして使用することにより、データを暗号化して、暗号化データを生成する暗号化手段を含む、(1)記載の装置。
) 前記暗号化データが回復フィールドに関連付けられる、()記載の装置。
) 前記回復フィールドが、前記キー回復エージェント・システムの公開キーにより暗号化される前記ジェネレータ値を含む、()記載の装置。
) 前記回復フィールドが、前記暗号化された秘密値と前記キー回復エージェント・システムの公開キーにより暗号化される前記ジェネレータ値とを含む、()記載の装置。
) 前記暗号化キーが、前記ジェネレータ値及び動的値の1方向関数として生成される、(1)記載の装置。
) 複数のキー回復エージェント・システムを用いて、秘密値の回復を提供する装置であって、
前記キー回復エージェント・システム用の各々のジェネレータ値を生成する手段と、
前記キー回復エージェント・システムの各々に対して生成された前記ジェネレータ値を、当該キー回復エージェント・システムにとって利用可能にする手段と、
それぞれの暗号化キーを前記ジェネレータ値の1方向関数として生成する手段と、
前記秘密値を前記暗号化キーにより暗号化して、暗号化された秘密値を生成する暗号化手段であって、前記キー回復エージェント・システムに前記暗号化キーを前記ジェネレータ値の前記1方向関数として生成させ、そして前記暗号化された秘密値を前記暗号化キーにより解読することにより、前記秘密値が前記暗号化された秘密値から回復可能である、前記暗号化手段と、
を含む、(1)記載の装置。
) 前記暗号化手段が、前記秘密値を前記暗号化キーにより連続的に暗号化し、前記暗号化された秘密値を生成する暗号化手段を含む、()記載の装置。
) 前記ジェネレータ値を生成する前記手段が、
秘密値を確立する手段と、
前記ジェネレータ値を前記秘密値のそれぞれ1方向関数として生成する手段であって、前記1方向関数が互いに異なる、前記生成手段と、
を含む、()記載の装置。
10) 前記ジェネレータ値を生成する前記手段が、
前記キー回復エージェント・システムの各々に対して、前記秘密値及び当該システムに固有の値の関数として、中間値を生成する手段と、
前記ジェネレータ値の各々を、対応する中間値の1方向関数として生成する手段と、
を含む、()記載の装置。
11) a)要求当事者のコンピュータから秘密値を受信する手段と、
b)所定の要求に応じて、前記キー回復エージェント・システムが少なくとも前記秘密値から従属値を計算して、前記従属値を前記要求当事者のコンピュータに提供する手段と、
をさらに含む、(1)〜(10)のいずれか一項に記載のキー回復エージェント・システム。
12) 前記キー回復エージェント・システムが前記秘密値と前記キー回復エージェント・システムにとって利用可能な追加の情報とから前記従属値を計算する手段を含む、(11)記載のキー回復エージェント・システム。
13) 前記計算される従属値が、前記秘密値に対して計算されるハッシュ値として計算される、(11)記載のキー回復エージェント・システム。
14) 前記計算される従属値が、前記秘密値と前記要求当事者のコンピュータにより提供される非秘密データに対して計算されるハッシュ値として計算される、(11)記載のキー回復エージェント・システム。
15) 前記非秘密データが特定のキーに固有のキー回復情報を含む、(14)記載のキー回復エージェント・システム。
16) 前記キー回復エージェント・システムに提供される前記秘密値が、複数の従属値を計算するために使用される、(11)記載のキー回復エージェント・システム。
17) 前記従属値が、異なる要求当事者のコンピュータに対して計算される、(16)記載のキー回復エージェント・システム。
18) 前記従属値が、異なる時刻に計算される、(16)記載のキー回復エージェント・システム。
19) 前記暗号化が、暗号化キーにより平文ブロックを暗号化する方法を含み、前記方法は、
a)前記平文ブロックを第1の部分及び第2の部分に区分するステップと、
b)前記平文ブロックを複数の繰り返しにさらすステップであって、前記繰り返しは、前記第1の部分及び第2の部分が、第1の出力部分及び第2の出力部分を生成するための入力部分として処理され、前記繰り返しの各々が、
1)前記入力部分の一方を前記キーに結合し、複合部分を生成するステップと、
2)前記複合部分のハッシュを生成するステップと、
3)前記複合部分の前記ハッシュを他方の前記入力部分と結合し、前記出力部分の一方を生成するステップと、
4)他方の前記出力部分を前記他方の入力部分から生成するステップと、
を含む、前記繰り返しにさらすステップと、
c)最後の前記繰り返しにより生成される前記出力部分を結合し、暗号化平文ブロックを生成するステップと
を含む、(1)〜(10)のいずれか一項に記載の装置。
20) 暗号回復システムにおいて、ユーザのコンピュータ・システムが公開回復キーにより回復値を暗号化し、該暗号化回復値を(1)に記載のキー回復エージェント・システムに提供し、前記キー回復エージェント・システムが前記公開回復キーに対応する秘密回復キーを用いて、前記暗号化回復値から前記回復値を回復でき、前記ユーザ及び前記キー回復エージェント・システムに対して、前記公開回復キー及び前記秘密回復キーを確立でき、
前記ユーザに対して、前記公開回復キー及び対応する前記秘密回復キーを含む回復キー対を生成する手段を含み、
前記回復キー対を該ユーザのコンピュータ・システムから前記キー回復エージェント・システムに安全に伝送する手段と
を含む、暗号回復システム。
21) 前記ユーザのコンピュータ・システムが、それぞれの前記キー回復エージェント・システムにとって利用可能な複数の回復値を生成する手段を含み、前記各手段が前記キー回復エージェント・システムの各々に対して実行される、(20)記載の暗号回復システム。
22) 前記キー回復エージェント・システムが、前記回復キー対の受信に際して、前記公開回復キー及び前記秘密回復キーが有効なキー対であることを確認する手段を含む、(20)記載の暗号回復システム。
23) 前記キー回復エージェント・システムが、前記公開回復キー及び前記秘密回復キーが有効なキー対であることを確認する時、秘密サイン・キーを用いて公開確認キー上にサインを生成し、前記サインを有する前記公開回復キーを前記ユーザのコンピュータ・システムに返却する手段を含む、(22)記載の暗号回復システム。
24) 前記ユーザのコンピュータ・システムが、前記サインを有する前記公開回復キーの受信時に、前記サイン・キーに対応する公開確認キーを用いて前記サインを確認する手段を含む、(23)記載の暗号回復システム。
25) 前記キー回復エージェント・システムが公開暗号化キーを有し、前記伝送する手段が、
前記回復キー対の前記秘密キーを、前記キー回復エージェント・システムの前記公開暗号化キーを用いて暗号化する手段と、
前記回復キー対の前記公開キー及び前記暗号化された秘密キーを、該ユーザのコンピュータ・システムから前記キー回復システムエージェント・に伝送する手段と
を含む、(20)記載の暗号回復システム。
26) 前記キー回復エージェント・システムが、前記回復キー対の受信時に、前記公開暗号化キーに対応する秘密解読キーを用いて、前記回復キー対の前記秘密キーを解読する手段を含む、(25)記載の暗号回復システム。
27) (25)に記載の前記キー回復エージェント・システムに伝送する前記手段が、
前記回復キー対の前記秘密キーを装置に埋め込む手段であって、前記装置が前記秘密キーを用いて値を暗号化できるが、前記秘密キーを明かすことができない、前記埋め込み手段と、
前記回復キー対の前記公開キー、及び前記回復キー対の前記秘密キーを含む前記装置を、前記キー回復エージェント・システムに用意する手段と
を含む、(25)記載の暗号回復システム。
28) (1)に記載のキー回復エージェント・システムが要求当事者のコンピュータに秘密情報を選択的に明かせるように、暗号システムを操作する暗号回復システムであって、
第1の秘密値から第2の秘密値を導出する手段と、
前記第2の秘密値を許可情報と結合し、前記結合の第1のハッシュ値を計算する手段と、
前記秘密情報の回復のために、前記許可情報、前記第1のハッシュ値、及び前記第1の秘密値を、前記キー回復エージェント・システムに提供する手段と
を含む、暗号回復システム。
29) 前記キー回復エージェント・システムが、前記要求当事者のコンピュータからの回復要求の受信することに応答して、
前記第1の秘密値から第2の秘密値を導出する手段と、
前記第2の秘密値を前記許可情報と結合し、前記結合の第2のハッシュ値を計算する手段と、
前記第1のハッシュ値と前記第2のハッシュ値とが等しいか否か比較する手段と、
証明書が前記許可情報と一致し、前記第1のハッシュ値及び第2のハッシュ値が等しい場合、前記秘密情報を明かす手段と
を実行する手段を含む、(28)記載の暗号回復システム。
30) 前記認可情報が、それを暗号化することによって前記キー回復エージェント・システムに提供される、または前記第1の秘密値がそれを暗号化することによって前記キー回復エージェント・システムに提供される、(28)記載の暗号回復システム。
【図面の簡単な説明】
【図1】 本発明のキー回復システムが使用され得る通信システムを示す図である。
【図2】 本発明の通信プロセスの2つのフェーズを示す図である。
【図3】 保護されたキーの回復を可能にする、本発明の回復プロセスを示す図である。
【図4】 本発明のキー階層を示す図である。
【図5】 確認コードの生成プロセスを示す図である。
【図6】 本発明のシャッフラ関数のハイレベル・ブロック図である。
【図7】 シャッフラ値をシャッフル解除する本発明の逆シャッフラ関数のハイレベル・ブロック図である。
【図8】 本発明のキー回復システムにより使用される情報を記憶する大域通信処理テーブルを示す図である。
【図9】 回復プロシジャのフェーズ1の間に、送信者により実行されるステップを示す図である。
【図10】 回復プロシジャのフェーズ2の間に、送信者により実行されるステップを示す図である。
【図11】 フェーズ1データ・ブロックの構成を示す図である。
【図12】 フェーズ2データ・ブロックの構成を示す図である。
【符号の説明】
100 通信システム
102 送信者
104 受信者
106 通信チャネル
108、110、112、114、142、144 キー回復エージェント・システム
116、118 法執行機関
120 SKR通信プロセス
122 フェーズ1
128 フェーズ2
140 SKR回復プロセス
146 回復サービス
150A、156 解読情報
160 SKRキー階層
162 初期ランダム・シードS
164、165、166、167 擬似ランダム・キー生成キーKG
168、170、172、174 擬似ランダム・キー生成キーKH
169、171、173、175 擬似ランダム・キー生成キーKI
176、178、180、182 擬似ランダム・キー生成キーKK
177、179、181、183 擬似ランダム・キー生成キーKA
800 テーブル

Claims (30)

  1. キー回復エージェント・システムを用いて秘密値の回復を提供する装置であって、
    前記キー回復エージェント・システム用のジェネレータ値を生成する手段であって、前記ジェネレータ値を生成する手段が、秘密値を確立する手段と、前記ジェネレータ値を前記秘密値の1方向関数として生成する手段とを含む、前記生成する手段と、
    前記生成されたジェネレータ値を前記キー回復エージェント・システムにとって利用可能にする手段であって、前記キー回復エージェント・システムにとって利用可能にする手段が、前記ジェネレータ値を前記キー回復エージェント・システムの公開キーにより暗号化して、暗号化されたジェネレータ値を生成する暗号化手段を含む、前記利用可能にする手段と、
    暗号化キーを前記利用可能にされたジェネレータ値の1方向関数として生成する手段と、
    前記秘密値を前記生成された暗号化キーにより暗号化して、暗号化された秘密値を生成する暗号化手段であって、前記キー回復エージェント・システムに前記暗号化されたジェネレータ値を前記公開キーに対応する秘密キーにより解読させ、前記暗号化キーを前記解読させたジェネレータ値の前記1方向関数として生成させ、そして前記暗号化された秘密値を該生成された暗号化キーにより解読することにより、前記秘密値が前記暗号化された秘密値から回復可能である、前記暗号化手段と
    を含む、装置。
  2. 前記秘密値を暗号化キーとして使用することにより、データを暗号化して、暗号化データを生成する暗号化手段を含む、請求項1記載の装置。
  3. 前記暗号化データが回復フィールドに関連付けられる、請求項記載の装置。
  4. 前記回復フィールドが、前記キー回復エージェント・システムの公開キーにより暗号化される前記ジェネレータ値を含む、請求項記載の装置。
  5. 前記回復フィールドが、前記暗号化された秘密値と前記キー回復エージェント・システムの公開キーにより暗号化される前記ジェネレータ値とを含む、請求項記載の装置。
  6. 前記暗号化キーが、前記ジェネレータ値及び動的値の1方向関数として生成される、請求項1記載の装置。
  7. 複数のキー回復エージェント・システムを用いて、秘密値の回復を提供する装置であって、
    前記キー回復エージェント・システム用の各々のジェネレータ値を生成する手段と、
    前記キー回復エージェント・システムの各々に対して生成された前記ジェネレータ値を、当該キー回復エージェント・システムにとって利用可能にする手段と、
    それぞれの暗号化キーを前記ジェネレータ値の1方向関数として生成する手段と、
    前記秘密値を前記暗号化キーにより暗号化して、暗号化された秘密値を生成する暗号化手段であって、前記キー回復エージェント・システムに前記暗号化キーを前記ジェネレータ値の前記1方向関数として生成させ、そして前記暗号化された秘密値を前記暗号化キーにより解読することにより、前記秘密値が前記暗号化された秘密値から回復可能である、前記暗号化手段と、
    を含む、請求項1記載の装置。
  8. 前記暗号化手段が、前記秘密値を前記暗号化キーにより連続的に暗号化し、前記暗号化された秘密値を生成する暗号化手段を含む、請求項記載の装置。
  9. 前記ジェネレータ値を生成する前記手段が、
    秘密値を確立する手段と、
    前記ジェネレータ値を前記秘密値のそれぞれ1方向関数として生成する手段であって、前記1方向関数が互いに異なる、前記生成手段と、
    を含む、請求項記載の装置。
  10. 前記ジェネレータ値を生成する前記手段が、
    前記キー回復エージェント・システムの各々に対して、前記秘密値及び当該システムに固有の値の関数として、中間値を生成する手段と、
    前記ジェネレータ値の各々を、対応する中間値の1方向関数として生成する手段と、
    を含む、請求項記載の装置。
  11. a)要求当事者のコンピュータから秘密値を受信する手段と、
    b)所定の要求に応じて、前記キー回復エージェント・システムが少なくとも前記秘密値から従属値を計算して、前記従属値を前記要求当事者のコンピュータに提供する手段と、
    をさらに含む、請求項1〜10のいずれか一項に記載のキー回復エージェント・システム。
  12. 前記キー回復エージェント・システムが前記秘密値と前記キー回復エージェント・システムにとって利用可能な追加の情報とから前記従属値を計算する手段を含む、請求項11記載のキー回復エージェント・システム。
  13. 前記計算される従属値が、前記秘密値に対して計算されるハッシュ値として計算される、請求項11記載のキー回復エージェント・システム。
  14. 前記計算される従属値が、前記秘密値と前記要求当事者のコンピュータにより提供される非秘密データに対して計算されるハッシュ値として計算される、請求項11記載のキー回復エージェント・システム。
  15. 前記非秘密データが特定のキーに固有のキー回復情報を含む、請求項14記載のキー回復エージェント・システム。
  16. 前記キー回復エージェント・システムに提供される前記秘密値が、複数の従属値を計算するために使用される、請求項11記載のキー回復エージェント・システム。
  17. 前記従属値が、異なる要求当事者のコンピュータに対して計算される、請求項16記載のキー回復エージェント・システム。
  18. 前記従属値が、異なる時刻に計算される、請求項16記載のキー回復エージェント・システム。
  19. 前記暗号化が、暗号化キーにより平文ブロックを暗号化する方法を含み、前記方法は、
    a)前記平文ブロックを第1の部分及び第2の部分に区分するステップと、
    b)前記平文ブロックを複数の繰り返しにさらすステップであって、前記繰り返しは、前記第1の部分及び第2の部分が、第1の出力部分及び第2の出力部分を生成するための入力部分として処理され、前記繰り返しの各々が、
    1)前記入力部分の一方を前記キーに結合し、複合部分を生成するステップと、
    2)前記複合部分のハッシュを生成するステップと、
    3)前記複合部分の前記ハッシュを他方の前記入力部分と結合し、前記出力部分の一方を生成するステップと、
    4)他方の前記出力部分を前記他方の入力部分から生成するステップと、
    を含む、前記繰り返しにさらすステップと、
    c)最後の前記繰り返しにより生成される前記出力部分を結合し、暗号化平文ブロックを生成するステップと
    を含む、請求項1〜10のいずれか一項に記載の装置。
  20. 暗号回復システムにおいて、ユーザのコンピュータ・システムが公開回復キーにより回復値を暗号化し、該暗号化回復値を請求項1に記載のキー回復エージェント・システムに提供し、前記キー回復エージェント・システムが前記公開回復キーに対応する秘密回復キーを用いて、前記暗号化回復値から前記回復値を回復でき、前記ユーザ及び前記キー回復エージェント・システムに対して、前記公開回復キー及び前記秘密回復キーを確立でき、
    前記ユーザに対して、前記公開回復キー及び対応する前記秘密回復キーを含む回復キー対を生成する手段を含み、
    前記回復キー対を該ユーザのコンピュータ・システムから前記キー回復エージェント・システムに安全に伝送する手段と
    を含む、暗号回復システム。
  21. 前記ユーザのコンピュータ・システムが、それぞれの前記キー回復エージェント・システムにとって利用可能な複数の回復値を生成する手段を含み、前記各手段が前記キー回復エージェント・システムの各々に対して実行される、請求項20記載の暗号回復システム。
  22. 前記キー回復エージェント・システムが、前記回復キー対の受信に際して、前記公開回復キー及び前記秘密回復キーが有効なキー対であることを確認する手段を含む、請求項20記載の暗号回復システム。
  23. 前記キー回復エージェント・システムが、前記公開回復キー及び前記秘密回復キーが有効なキー対であることを確認する時、秘密サイン・キーを用いて公開確認キー上にサインを生成し、前記サインを有する前記公開回復キーを前記ユーザのコンピュータ・システムに返却する手段を含む、請求項22記載の暗号回復システム。
  24. 前記ユーザのコンピュータ・システムが、前記サインを有する前記公開回復キーの受信時に、前記サイン・キーに対応する公開確認キーを用いて前記サインを確認する手段を含む、請求項23記載の暗号回復システム。
  25. 前記キー回復エージェント・システムが公開暗号化キーを有し、前記伝送する手段が、
    前記回復キー対の前記秘密キーを、前記キー回復エージェント・システムの前記公開暗号化キーを用いて暗号化する手段と、
    前記回復キー対の前記公開キー及び前記暗号化された秘密キーを、該ユーザのコンピュータ・システムから前記キー回復システムエージェント・に伝送する手段と
    を含む、請求項20記載の暗号回復システム。
  26. 前記キー回復エージェント・システムが、前記回復キー対の受信時に、前記公開暗号化キーに対応する秘密解読キーを用いて、前記回復キー対の前記秘密キーを解読する手段を含む、請求項25記載の暗号回復システム。
  27. 請求項25に記載の前記キー回復エージェント・システムに伝送する前記手段が、
    前記回復キー対の前記秘密キーを装置に埋め込む手段であって、前記装置が前記秘密キーを用いて値を暗号化できるが、前記秘密キーを明かすことができない、前記埋め込み手段と、
    前記回復キー対の前記公開キー、及び前記回復キー対の前記秘密キーを含む前記装置を、前記キー回復エージェント・システムに用意する手段と
    を含む、請求項25記載の暗号回復システム。
  28. 請求項1に記載のキー回復エージェント・システムが要求当事者のコンピュータに秘密情報を選択的に明かせるように、暗号システムを操作する暗号回復システムであって、
    第1の秘密値から第2の秘密値を導出する手段と、
    前記第2の秘密値を許可情報と結合し、前記結合の第1のハッシュ値を計算する手段と、
    前記秘密情報の回復のために、前記許可情報、前記第1のハッシュ値、及び前記第1の秘密値を、前記キー回復エージェント・システムに提供する手段と
    を含む、暗号回復システム。
  29. 前記キー回復エージェント・システムが、前記要求当事者のコンピュータからの回復要求の受信することに応答して、
    前記第1の秘密値から第2の秘密値を導出する手段と、
    前記第2の秘密値を前記許可情報と結合し、前記結合の第2のハッシュ値を計算する手段と、
    前記第1のハッシュ値と前記第2のハッシュ値とが等しいか否か比較する手段と、
    証明書が前記許可情報と一致し、前記第1のハッシュ値及び第2のハッシュ値が等しい場合、前記秘密情報を明かす手段と
    を実行する手段を含む、請求項28記載の暗号回復システム。
  30. 前記認可情報が、それを暗号化することによって前記キー回復エージェント・システムに提供される、または前記第1の秘密値がそれを暗号化することによって前記キー回復エージェント・システムに提供される、請求項28記載の暗号回復システム。
JP26336797A 1996-10-02 1997-09-29 2フェーズ暗号キー回復システム Expired - Fee Related JP3640331B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/725102 1996-10-02
US08/725,102 US5937066A (en) 1996-10-02 1996-10-02 Two-phase cryptographic key recovery system

Publications (2)

Publication Number Publication Date
JPH10126404A JPH10126404A (ja) 1998-05-15
JP3640331B2 true JP3640331B2 (ja) 2005-04-20

Family

ID=24913165

Family Applications (1)

Application Number Title Priority Date Filing Date
JP26336797A Expired - Fee Related JP3640331B2 (ja) 1996-10-02 1997-09-29 2フェーズ暗号キー回復システム

Country Status (3)

Country Link
US (1) US5937066A (ja)
JP (1) JP3640331B2 (ja)
KR (1) KR100233979B1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11888983B1 (en) * 2018-03-09 2024-01-30 Wells Fargo Bank, N.A. Derived unique recovery keys per session

Families Citing this family (239)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6272632B1 (en) * 1995-02-21 2001-08-07 Network Associates, Inc. System and method for controlling access to a user secret using a key recovery field
US8225089B2 (en) 1996-12-04 2012-07-17 Otomaku Properties Ltd., L.L.C. Electronic transaction systems utilizing a PEAD and a private key
US6249585B1 (en) * 1998-04-08 2001-06-19 Network Associates, Inc Publicly verifiable key recovery
US6289451B1 (en) * 1997-04-18 2001-09-11 Sun Microsystems, Inc. System and method for efficiently implementing an authenticated communications channel that facilitates tamper detection
US6335972B1 (en) * 1997-05-23 2002-01-01 International Business Machines Corporation Framework-based cryptographic key recovery system
US6202150B1 (en) * 1997-05-28 2001-03-13 Adam Lucas Young Auto-escrowable and auto-certifiable cryptosystems
US6389136B1 (en) * 1997-05-28 2002-05-14 Adam Lucas Young Auto-Recoverable and Auto-certifiable cryptosystems with RSA or factoring based keys
EP0881559B1 (en) * 1997-05-28 2003-08-20 Siemens Aktiengesellschaft Computer system for protecting software and a method for protecting software
US6314190B1 (en) 1997-06-06 2001-11-06 Networks Associates Technology, Inc. Cryptographic system with methods for user-controlled message recovery
US6185308B1 (en) * 1997-07-07 2001-02-06 Fujitsu Limited Key recovery system
JPH1127253A (ja) * 1997-07-07 1999-01-29 Hitachi Ltd 鍵回復システム、鍵回復装置、鍵回復プログラムを記憶した記憶媒体、および鍵回復方法
US6223285B1 (en) 1997-10-24 2001-04-24 Sony Corporation Of Japan Method and system for transferring information using an encryption mode indicator
US7107246B2 (en) * 1998-04-27 2006-09-12 Esignx Corporation Methods of exchanging secure messages
US7110984B1 (en) * 1998-08-13 2006-09-19 International Business Machines Corporation Updating usage conditions in lieu of download digital rights management protected content
JP2000165373A (ja) * 1998-11-25 2000-06-16 Toshiba Corp 暗号装置、暗号通信システム及び鍵復元システム並びに記憶媒体
US6396929B1 (en) * 1998-12-31 2002-05-28 International Business Machines Corporation Apparatus, method, and computer program product for high-availability multi-agent cryptographic key recovery
US7599491B2 (en) 1999-01-11 2009-10-06 Certicom Corp. Method for strengthening the implementation of ECDSA against power analysis
US7092523B2 (en) * 1999-01-11 2006-08-15 Certicom Corp. Method and apparatus for minimizing differential power attacks on processors
CA2267395C (en) * 1999-03-30 2002-07-09 Ibm Canada Limited-Ibm Canada Limitee Method and system for managing keys for encrypted data
JP3816689B2 (ja) * 1999-03-31 2006-08-30 株式会社東芝 情報配信装置、情報受信装置及び通信方法
US6947560B1 (en) * 1999-04-26 2005-09-20 Telefonaktiebolaget L M Ericsson (Publ) Method and device for effective key length control
JP4362888B2 (ja) * 1999-05-18 2009-11-11 ソニー株式会社 情報処理装置および方法、並びに記録媒体
CA2374968C (en) * 1999-05-26 2010-11-16 Ascom Hasler Mailing Systems, Inc. Technique for split knowledge backup and recovery of a cryptographic key
GB2353682B (en) * 1999-07-15 2004-03-31 Nds Ltd Key management for content protection
IL130963A (en) * 1999-07-15 2006-04-10 Nds Ltd Key management for content protection
DE19935286A1 (de) * 1999-07-27 2001-02-01 Deutsche Telekom Ag Verfahren zur sicheren verteilten Generierung eines Chiffrierschlüssels
DE19935285B4 (de) * 1999-07-27 2012-07-05 Deutsche Telekom Ag Verfahren zur Generierung/Regenerierung eines Chiffrierschlüssels für ein Kryptographieverfahren
CN1327566A (zh) * 1999-08-12 2001-12-19 松下电器产业株式会社 电子信息备份系统
AU6640500A (en) * 1999-08-13 2001-03-19 Microsoft Corporation Methods and systems of protecting digital content
US6886098B1 (en) * 1999-08-13 2005-04-26 Microsoft Corporation Systems and methods for compression of key sets having multiple keys
US7065216B1 (en) 1999-08-13 2006-06-20 Microsoft Corporation Methods and systems of protecting digital content
US7391865B2 (en) 1999-09-20 2008-06-24 Security First Corporation Secure data parser method and system
KR100373669B1 (ko) * 1999-09-29 2003-02-26 가부시키가이샤 히타치세이사쿠쇼 비밀 정보의 처리 장치, 비밀 정보의 처리 프로그램을 기록한 기록 매체 및 처리 시스템
US7461022B1 (en) 1999-10-20 2008-12-02 Yahoo! Inc. Auction redemption system and method
US6961849B1 (en) * 1999-10-21 2005-11-01 International Business Machines Corporation Selective data encryption using style sheet processing for decryption by a group clerk
US6931532B1 (en) * 1999-10-21 2005-08-16 International Business Machines Corporation Selective data encryption using style sheet processing
US6978367B1 (en) * 1999-10-21 2005-12-20 International Business Machines Corporation Selective data encryption using style sheet processing for decryption by a client proxy
US6941459B1 (en) * 1999-10-21 2005-09-06 International Business Machines Corporation Selective data encryption using style sheet processing for decryption by a key recovery agent
TW548940B (en) * 1999-11-29 2003-08-21 Gen Instrument Corp Generation of a mathematically constrained key using a one-way function
US7213005B2 (en) * 1999-12-09 2007-05-01 International Business Machines Corporation Digital content distribution using web broadcasting services
FR2804561B1 (fr) * 2000-01-31 2002-03-01 France Telecom Procede de communication avec sequestre et recuperation de cle de chiffrement
US6865550B1 (en) * 2000-02-03 2005-03-08 Eastman Kodak Company System for secure distribution and playback of digital data
AU2001241972A1 (en) 2000-03-02 2001-09-12 Tivo, Inc. Conditional access system and method for prevention of replay attacks
US6823070B1 (en) 2000-03-28 2004-11-23 Freescale Semiconductor, Inc. Method for key escrow in a communication system and apparatus therefor
EP1143658A1 (en) * 2000-04-03 2001-10-10 Canal+ Technologies Société Anonyme Authentication of data transmitted in a digital transmission system
US8602874B2 (en) * 2003-04-02 2013-12-10 Igt Cashless instrument based table game promotional system and methodology
US6866586B2 (en) * 2000-04-28 2005-03-15 Igt Cashless transaction clearinghouse
US20070060274A1 (en) * 2000-04-28 2007-03-15 Igt Player loyalty across a gaming enterprise
US7419428B2 (en) * 2000-04-28 2008-09-02 Igt Cashless transaction clearinghouse
US7493486B1 (en) * 2000-06-09 2009-02-17 Verizon Laboratories, Inc. Method and apparatus for supporting cryptographic-related activities in a public key infrastructure
WO2001095068A2 (en) * 2000-06-09 2001-12-13 Certicom Corp. A method for the application of implicit signature schemes
US20040073617A1 (en) 2000-06-19 2004-04-15 Milliken Walter Clark Hash-based systems and methods for detecting and preventing transmission of unwanted e-mail
US7587368B2 (en) * 2000-07-06 2009-09-08 David Paul Felsher Information record infrastructure, system and method
US20020091935A1 (en) * 2000-08-11 2002-07-11 Sony Corporation, A Corporation Of Japan Storage and retrieval of encrypted content on storage media
WO2002015081A1 (en) * 2000-08-14 2002-02-21 Yahoo! Inc. Offline-online incentive points system and method
US6775668B1 (en) * 2000-09-11 2004-08-10 Novell, Inc. Method and system for enhancing quorum based access control to a database
US7362868B2 (en) * 2000-10-20 2008-04-22 Eruces, Inc. Hidden link dynamic key manager for use in computer systems with database structure for storage of encrypted data and method for storage and retrieval of encrypted data
US20030021417A1 (en) * 2000-10-20 2003-01-30 Ognjen Vasic Hidden link dynamic key manager for use in computer systems with database structure for storage of encrypted data and method for storage and retrieval of encrypted data
US7224806B2 (en) * 2000-11-13 2007-05-29 Thomson Licensing Threshold cryptography scheme for conditional access systems
US7281010B2 (en) * 2000-11-15 2007-10-09 Lenovo (Singapore) Pte. Ltd. Trusted computing platform with dual key trees to support multiple public/private key systems
KR100377196B1 (ko) * 2000-12-05 2003-03-26 한국전자통신연구원 다중 에이전트를 이용한 키 복구 시스템 및 그 방법
US20080214300A1 (en) * 2000-12-07 2008-09-04 Igt Methods for electronic data security and program authentication
US7412519B2 (en) * 2000-12-08 2008-08-12 Xerox Corporation Authorized document usage including rendering a protected document
GB2372595A (en) 2001-02-23 2002-08-28 Hewlett Packard Co Method of and apparatus for ascertaining the status of a data processing environment.
GB2372592B (en) * 2001-02-23 2005-03-30 Hewlett Packard Co Information system
US7711122B2 (en) * 2001-03-09 2010-05-04 Arcot Systems, Inc. Method and apparatus for cryptographic key storage wherein key servers are authenticated by possession and secure distribution of stored keys
US7359518B2 (en) * 2001-04-05 2008-04-15 Intel Corporation Distribution of secured information
US20020152261A1 (en) * 2001-04-17 2002-10-17 Jed Arkin Method and system for preventing the infringement of intellectual property rights
US20020152262A1 (en) * 2001-04-17 2002-10-17 Jed Arkin Method and system for preventing the infringement of intellectual property rights
US6966837B1 (en) 2001-05-10 2005-11-22 Best Robert M Linked portable and video game systems
GB2378013A (en) * 2001-07-27 2003-01-29 Hewlett Packard Co Trusted computer platform audit system
GB2378856A (en) * 2001-08-17 2003-02-19 Nokia Corp Security in communication networks
US8117450B2 (en) * 2001-10-11 2012-02-14 Hewlett-Packard Development Company, L.P. System and method for secure data transmission
US7333616B1 (en) 2001-11-14 2008-02-19 Omniva Corp. Approach for managing access to messages using encryption key management policies
US7085386B2 (en) * 2001-12-07 2006-08-01 Activcard System and method for secure replacement of high level cryptographic keys in a personal security device
US6996715B2 (en) * 2002-01-03 2006-02-07 Lockheed Martin Corporation Method for identification of a user's unique identifier without storing the identifier at the identification site
US20030221131A1 (en) * 2002-03-08 2003-11-27 Toshifumi Mori Data processing device
AUPS169002A0 (en) 2002-04-11 2002-05-16 Tune, Andrew Dominic An information storage system
US7350081B1 (en) 2002-04-29 2008-03-25 Best Robert M Secure execution of downloaded software
KR100477645B1 (ko) * 2002-05-25 2005-03-23 삼성전자주식회사 일련번호 발생 방법 및 그 장치
US7317799B2 (en) * 2002-07-19 2008-01-08 Vadium Technology, Inc. Cryptographic key distribution using key folding
US20040136537A1 (en) * 2002-07-19 2004-07-15 Hammersmith Wolfgang S. Cryptographic key distribution using key unfolding
WO2004010637A1 (en) * 2002-07-19 2004-01-29 Vadium Technology, Inc. Cryptographic key distribution using key folding
AU2003227325B2 (en) * 2002-08-02 2009-05-28 Scientific Games, Llc Lottery ticket security method
GB0218716D0 (en) * 2002-08-12 2002-09-18 Mitel Knowledge Corp Privacy and security mechanism fo presence systems with tuple spaces
US8083585B2 (en) * 2002-09-10 2011-12-27 Igt Apparatus and method for copying gaming machine configuration settings
US7136489B1 (en) * 2002-09-12 2006-11-14 Novell, Inc. Method and system for enhancing network security using a multilateral authorization mechanism
US7818678B2 (en) 2002-10-31 2010-10-19 Litera Technology Llc Collaborative document development and review system
EP1569378A4 (en) * 2002-12-03 2006-08-02 Matsushita Electric Ind Co Ltd TOGETHER FOR USING KEYS, PRODUCING EQUIPMENT FOR SHARED KEYS, AND RESTORING KEYS TO SHARED KEYS
CN1692598A (zh) * 2002-12-03 2005-11-02 松下电器产业株式会社 密钥共享系统、共享密钥生成装置及共享密钥复原装置
DE10328328B4 (de) * 2003-06-25 2015-06-03 TÜV Rheinland Holding AG Produktschutz-Portal und Verfahren zur Echtheitsprüfung von Produkten
US8085938B2 (en) * 2004-02-10 2011-12-27 Ntt Communications Corporation Secret information management scheme based on secret sharing scheme
US7437551B2 (en) * 2004-04-02 2008-10-14 Microsoft Corporation Public key infrastructure scalability certificate revocation status validation
US7379551B2 (en) * 2004-04-02 2008-05-27 Microsoft Corporation Method and system for recovering password protected private data via a communication network without exposing the private data
US7594234B1 (en) * 2004-06-04 2009-09-22 Sun Microsystems, Inc. Adaptive spin-then-block mutual exclusion in multi-threaded processing
US7644409B2 (en) * 2004-06-04 2010-01-05 Sun Microsystems, Inc. Techniques for accessing a shared resource using an improved synchronization mechanism
US7681042B2 (en) * 2004-06-17 2010-03-16 Eruces, Inc. System and method for dis-identifying sensitive information and associated records
US7475397B1 (en) 2004-07-28 2009-01-06 Sun Microsystems, Inc. Methods and apparatus for providing a remote serialization guarantee
CA2922172A1 (en) 2004-10-25 2006-05-04 Security First Corp. Secure data parser method and system
US7454021B2 (en) * 2004-10-29 2008-11-18 Hewlett-Packard Development Company, L.P. Off-loading data re-encryption in encrypted data management systems
WO2006051404A2 (en) * 2004-11-11 2006-05-18 Certicom Corp. Secure interface for versatile key derivation function support
US7536016B2 (en) * 2004-12-17 2009-05-19 Microsoft Corporation Encrypted content data structure package and generation thereof
US8467535B2 (en) * 2005-01-18 2013-06-18 Certicom Corp. Accelerated verification of digital signatures and public keys
JP5068176B2 (ja) 2005-01-18 2012-11-07 サーティコム コーポレーション デジタル署名と公開鍵の促進された検証
JP4714482B2 (ja) * 2005-02-28 2011-06-29 株式会社日立製作所 暗号通信システムおよび方法
US8062121B2 (en) 2005-03-09 2011-11-22 Igt Printer interpreter for a gaming machine
US7430607B2 (en) * 2005-05-25 2008-09-30 Microsoft Corporation Source throttling using CPU stamping
EP1742475A1 (fr) * 2005-07-07 2007-01-10 Nagravision S.A. Méthode de contrôle d'accès à des données chiffrées
US7730309B2 (en) * 2005-07-27 2010-06-01 Zimmermann Philip R Method and system for key management in voice over internet protocol
KR20080039497A (ko) * 2005-08-19 2008-05-07 엔엑스피 비 브이 역 연산을 수행하는 회로 장치와 이를 포함하는 마이크로제어기, 데이터 처리 장치, 역 연산 수행 방법 및 컴퓨터 판독가능한 저장 매체
US8009830B2 (en) 2005-11-18 2011-08-30 Security First Corporation Secure data parser method and system
US20070143216A1 (en) * 2005-12-16 2007-06-21 Benaloh Josh D Data Signal with a Database and a Compressed Key
US8296827B2 (en) * 2005-12-29 2012-10-23 International Business Machines Corporation Method for enabling an administrator to configure a recovery password
US20070168656A1 (en) * 2005-12-29 2007-07-19 Paganetti Robert J Method for enabling a user to initiate a password protected backup of the user's credentials
US7499552B2 (en) * 2006-01-11 2009-03-03 International Business Machines Corporation Cipher method and system for verifying a decryption of an encrypted user data key
US7818660B2 (en) * 2006-01-29 2010-10-19 Litera Technology Llc Method of compound document comparison
DE102006004237A1 (de) * 2006-01-30 2007-08-16 Siemens Ag Verfahren und Vorrichtung zur Vereinbarung eines gemeinsamen Schlüssels zwischen einem ersten Kommunikationsgerät und einem zweiten Kommunikationsgerät
US7703673B2 (en) 2006-05-25 2010-04-27 Buchheit Brian K Web based conversion of non-negotiable credits associated with an entity to entity independent negotiable funds
US10062062B1 (en) 2006-05-25 2018-08-28 Jbshbm, Llc Automated teller machine (ATM) providing money for loyalty points
US9704174B1 (en) 2006-05-25 2017-07-11 Sean I. Mcghie Conversion of loyalty program points to commerce partner points per terms of a mutual agreement
US8684265B1 (en) 2006-05-25 2014-04-01 Sean I. Mcghie Rewards program website permitting conversion/transfer of non-negotiable credits to entity independent funds
US8668146B1 (en) 2006-05-25 2014-03-11 Sean I. Mcghie Rewards program with payment artifact permitting conversion/transfer of non-negotiable credits to entity independent funds
US7818255B2 (en) * 2006-06-02 2010-10-19 Microsoft Corporation Logon and machine unlock integration
US8180741B2 (en) 2006-06-06 2012-05-15 Red Hat, Inc. Methods and systems for providing data objects on a token
US7822209B2 (en) 2006-06-06 2010-10-26 Red Hat, Inc. Methods and systems for key recovery for a token
US8332637B2 (en) 2006-06-06 2012-12-11 Red Hat, Inc. Methods and systems for nonce generation in a token
US8364952B2 (en) 2006-06-06 2013-01-29 Red Hat, Inc. Methods and system for a key recovery plan
US8098829B2 (en) * 2006-06-06 2012-01-17 Red Hat, Inc. Methods and systems for secure key delivery
US8495380B2 (en) 2006-06-06 2013-07-23 Red Hat, Inc. Methods and systems for server-side key generation
US8412927B2 (en) 2006-06-07 2013-04-02 Red Hat, Inc. Profile framework for token processing system
US8099765B2 (en) 2006-06-07 2012-01-17 Red Hat, Inc. Methods and systems for remote password reset using an authentication credential managed by a third party
US8707024B2 (en) 2006-06-07 2014-04-22 Red Hat, Inc. Methods and systems for managing identity management security domains
US9769158B2 (en) 2006-06-07 2017-09-19 Red Hat, Inc. Guided enrollment and login for token users
US8589695B2 (en) 2006-06-07 2013-11-19 Red Hat, Inc. Methods and systems for entropy collection for server-side key generation
US20070300080A1 (en) * 2006-06-22 2007-12-27 Research In Motion Limited Two-Factor Content Protection
US20080126808A1 (en) * 2006-07-05 2008-05-29 Cms Products, Inc. Encrypted dataset access by custodians
US7865741B1 (en) * 2006-08-23 2011-01-04 Netapp, Inc. System and method for securely replicating a configuration database of a security appliance
US8787566B2 (en) * 2006-08-23 2014-07-22 Red Hat, Inc. Strong encryption
US8806219B2 (en) 2006-08-23 2014-08-12 Red Hat, Inc. Time-based function back-off
US8074265B2 (en) 2006-08-31 2011-12-06 Red Hat, Inc. Methods and systems for verifying a location factor associated with a token
US8977844B2 (en) 2006-08-31 2015-03-10 Red Hat, Inc. Smartcard formation with authentication keys
US9038154B2 (en) 2006-08-31 2015-05-19 Red Hat, Inc. Token Registration
US8356342B2 (en) 2006-08-31 2013-01-15 Red Hat, Inc. Method and system for issuing a kill sequence for a token
US8116455B1 (en) 2006-09-29 2012-02-14 Netapp, Inc. System and method for securely initializing and booting a security appliance
US7624276B2 (en) * 2006-10-16 2009-11-24 Broadon Communications Corp. Secure device authentication system and method
US7925890B2 (en) * 2006-10-23 2011-04-12 Harris Corporation Network centered recovery process for cryptographic processing modules
US8693690B2 (en) 2006-12-04 2014-04-08 Red Hat, Inc. Organizing an extensible table for storing cryptographic objects
CA2670597A1 (en) * 2006-12-05 2008-06-12 Don Martin Improved tape backup method using a secure data parser
US8607070B2 (en) * 2006-12-20 2013-12-10 Kingston Technology Corporation Secure storage system and method of use
US7822207B2 (en) * 2006-12-22 2010-10-26 Atmel Rousset S.A.S. Key protection mechanism
WO2008147577A2 (en) * 2007-01-22 2008-12-04 Spyrus, Inc. Portable data encryption device with configurable security functionality and method for file encryption
US7895276B2 (en) 2007-01-29 2011-02-22 Litera Technology Llc Method of managing metadata in attachments to e-mails in a network environment
US8813243B2 (en) 2007-02-02 2014-08-19 Red Hat, Inc. Reducing a size of a security-related data object stored on a token
US8639940B2 (en) 2007-02-28 2014-01-28 Red Hat, Inc. Methods and systems for assigning roles on a token
US8832453B2 (en) 2007-02-28 2014-09-09 Red Hat, Inc. Token recycling
US9081948B2 (en) 2007-03-13 2015-07-14 Red Hat, Inc. Configurable smartcard
US7779220B1 (en) * 2007-03-15 2010-08-17 Quantum Corporation Password-based media cartridge authentication
KR20080084480A (ko) * 2007-03-16 2008-09-19 삼성전자주식회사 매개 모듈을 이용한 디바이스간의 상호 인증 방법 및 그시스템
US8744076B2 (en) * 2007-04-04 2014-06-03 Oracle International Corporation Method and apparatus for encrypting data to facilitate resource savings and tamper detection
US8499168B2 (en) * 2007-05-09 2013-07-30 Kingston Technology Corporation Secure and scalable solid state disk system
US8527781B2 (en) * 2007-05-09 2013-09-03 Kingston Technology Corporation Secure and scalable solid state disk system
US8010768B2 (en) * 2007-05-09 2011-08-30 Kingston Technology Corporation Secure and scalable solid state disk system
JP5138775B2 (ja) 2007-07-17 2013-02-06 サーティコム コーポレーション Idベース暗号化(ibe)に対して暗黙の証明証およびアプリケーションを生成する方法およびシステム
US8681996B2 (en) * 2007-07-31 2014-03-25 Lsi Corporation Asymmetric key wrapping using a symmetric cipher
CN103281190B (zh) 2008-02-22 2018-03-09 安全第一公司 安全工作组管理和通信的系统和方法
US20100146294A1 (en) * 2008-03-17 2010-06-10 Anthony Sneed BEST2000C: platform-independent, acrostic database encryption of biometrically-inert transgression-ciphers for up to 90% reduction of the $50 billion annual fictitious-identity transgressions
US8989388B2 (en) * 2008-04-02 2015-03-24 Cisco Technology, Inc. Distribution of storage area network encryption keys across data centers
US8565436B2 (en) * 2008-12-15 2013-10-22 Ebay Inc. Secure self managed data (SSMD)
US10685177B2 (en) * 2009-01-07 2020-06-16 Litera Corporation System and method for comparing digital data in spreadsheets or database tables
US8136031B2 (en) * 2009-03-17 2012-03-13 Litera Technologies, LLC Comparing the content of tables containing merged or split cells
EP2433409A2 (en) 2009-05-19 2012-03-28 Security First Corporation Systems and methods for securing data in the cloud
EP3139571A1 (en) 2009-11-25 2017-03-08 Security First Corp. Systems and methods for securing data in motion
US8621220B2 (en) * 2010-03-11 2013-12-31 Ebay Inc. Systems and methods for identity encapsulated cryptography
JP2013524352A (ja) 2010-03-31 2013-06-17 セキュリティー ファースト コーポレイション 移動中のデータをセキュア化するためのシステムおよび方法
EP2577936A2 (en) 2010-05-28 2013-04-10 Lawrence A. Laurich Accelerator system for use with secure data storage
CN106100852A (zh) 2010-09-20 2016-11-09 安全第公司 用于安全数据共享的系统和方法
US8769288B2 (en) * 2011-04-22 2014-07-01 Alcatel Lucent Discovery of security associations
US8615081B2 (en) * 2011-06-01 2013-12-24 International Business Machines Corporation Secure key creation
US8745376B2 (en) 2011-10-14 2014-06-03 Certicom Corp. Verifying implicit certificates and digital signatures
US9348802B2 (en) 2012-03-19 2016-05-24 Litéra Corporation System and method for synchronizing bi-directional document management
US9054863B2 (en) * 2012-09-04 2015-06-09 Rockwell Automation Asia Pacific Business Center Pte. Ltd. Industrial protocol system authentication and firewall
US9087459B2 (en) 2012-11-30 2015-07-21 The Nielsen Company (Us), Llc Methods, apparatus, and articles of manufacture to encode auxilary data into text data and methods, apparatus, and articles of manufacture to obtain encoded data from text data
US9042554B2 (en) 2012-11-30 2015-05-26 The Nielsen Company (Us), Llc Methods, apparatus, and articles of manufacture to encode auxilary data into text data and methods, apparatus, and articles of manufacture to obtain encoded data from text data
US9990478B2 (en) 2012-11-30 2018-06-05 The Nielsen Company (Us), Llc Methods, apparatus, and articles of manufacture to encode auxiliary data into relational database keys and methods, apparatus, and articles of manufacture to obtain encoded data from relational database keys
EP2956887A1 (en) 2013-02-13 2015-12-23 Security First Corp. Systems and methods for a cryptographic file system layer
US9483451B2 (en) 2013-03-14 2016-11-01 Scribestar Ltd. System and method for handling user editing history based on spawning, merging data structures of directed acyclic graph
US9305172B2 (en) 2013-03-15 2016-04-05 Mcafee, Inc. Multi-ring encryption approach to securing a payload using hardware modules
US9735959B2 (en) * 2013-04-24 2017-08-15 Nec Corporation Method and system for enforcing access control policies on data
US10025782B2 (en) 2013-06-18 2018-07-17 Litera Corporation Systems and methods for multiple document version collaboration and management
US9639710B2 (en) * 2013-12-23 2017-05-02 Symantec Corporation Device-based PIN authentication process to protect encrypted data
JP6313074B2 (ja) * 2014-03-07 2018-04-18 株式会社東芝 データ管理装置、システム、データ共有装置及びプログラム
US9756002B2 (en) 2014-03-21 2017-09-05 Litera Technologies, LLC Systems and methods for email attachments management
AU2015256293B2 (en) * 2014-05-06 2017-05-04 Okta, Inc. Facilitating single sign-on to software applications
US9703979B1 (en) * 2014-06-13 2017-07-11 BicDroid Inc. Methods and computer program products for encryption key generation and management
CN106664202B (zh) * 2014-06-13 2020-04-03 百可德罗德公司 提供多个设备上的加密的方法、系统和计算机可读介质
US10225087B2 (en) * 2014-09-12 2019-03-05 Tata Consultancy Services Limited Methods and systems for randomized message generation for cryptographic hash functions
US10061914B2 (en) 2014-11-14 2018-08-28 Mcafee, Llc Account recovery protocol
WO2016081942A2 (en) 2014-11-21 2016-05-26 Security First Corp. Gateway for cloud-based secure storage
US9413754B2 (en) * 2014-12-23 2016-08-09 Airwatch Llc Authenticator device facilitating file security
WO2016118523A1 (en) 2015-01-19 2016-07-28 InAuth, Inc. Systems and methods for trusted path secure communication
US10360558B2 (en) * 2015-03-17 2019-07-23 Ca, Inc. Simplified two factor authentication for mobile payments
US10536408B2 (en) 2015-09-16 2020-01-14 Litéra Corporation Systems and methods for detecting, reporting and cleaning metadata from inbound attachments
US10511581B2 (en) * 2015-11-17 2019-12-17 International Business Machines Corporation Parallelizable encryption using keyless random permutations and authentication using same
US10355854B2 (en) * 2015-12-17 2019-07-16 Intel Corporation Privacy preserving group formation with distributed content key generation
US11121867B2 (en) 2016-02-19 2021-09-14 Micro Focus Llc Encryption methods based on plaintext length
US20190073646A1 (en) * 2016-02-23 2019-03-07 nChain Holdings Limited Consolidated blockchain-based data transfer control method and system
US10476672B2 (en) 2016-03-14 2019-11-12 Callware Technologies, Inc Fragmented encryption of a secret
DE112016007301T5 (de) * 2016-09-30 2019-06-19 Intel Corporation Technologien zur authentifizierung mehrerer vorrichtungen in einem heterogenen netzwerk
US11398906B2 (en) * 2016-11-10 2022-07-26 Brickell Cryptology Llc Confirming receipt of audit records for audited use of a cryptographic key
US10855465B2 (en) * 2016-11-10 2020-12-01 Ernest Brickell Audited use of a cryptographic key
US11405201B2 (en) * 2016-11-10 2022-08-02 Brickell Cryptology Llc Secure transfer of protected application storage keys with change of trusted computing base
US10841337B2 (en) 2016-11-28 2020-11-17 Secureworks Corp. Computer implemented system and method, and computer program product for reversibly remediating a security risk
US11128452B2 (en) * 2017-03-25 2021-09-21 AVAST Software s.r.o. Encrypted data sharing with a hierarchical key structure
US10447671B1 (en) * 2017-03-29 2019-10-15 Symantec Corporation Systems and methods for recovering encrypted information
US10652245B2 (en) 2017-05-04 2020-05-12 Ernest Brickell External accessibility for network devices
US10470040B2 (en) 2017-08-27 2019-11-05 Okta, Inc. Secure single sign-on to software applications
US10735470B2 (en) 2017-11-06 2020-08-04 Secureworks Corp. Systems and methods for sharing, distributing, or accessing security data and/or security applications, models, or analytics
US10594713B2 (en) * 2017-11-10 2020-03-17 Secureworks Corp. Systems and methods for secure propagation of statistical models within threat intelligence communities
US11003718B2 (en) 2018-06-12 2021-05-11 Secureworks Corp. Systems and methods for enabling a global aggregated search, while allowing configurable client anonymity
US10785238B2 (en) 2018-06-12 2020-09-22 Secureworks Corp. Systems and methods for threat discovery across distinct organizations
US11138308B2 (en) 2018-09-19 2021-10-05 International Business Machines Corporation System for preventing single point of failure in accessing encrypted data
US11822489B2 (en) * 2018-12-21 2023-11-21 Micron Technology, Inc. Data integrity protection for relocating data in a memory system
EP3883279A4 (en) 2018-12-29 2021-12-15 Huawei Technologies Co., Ltd. COMMUNICATION PROCEDURE AND RELATED PRODUCT
US11205194B2 (en) 2019-04-30 2021-12-21 Advanced New Technologies Co., Ltd. Reliable user service system and method
US11310268B2 (en) 2019-05-06 2022-04-19 Secureworks Corp. Systems and methods using computer vision and machine learning for detection of malicious actions
US11418524B2 (en) 2019-05-07 2022-08-16 SecureworksCorp. Systems and methods of hierarchical behavior activity modeling and detection for systems-level security
CN110430042B (zh) * 2019-06-28 2022-11-22 中国人民解放军战略支援部队信息工程大学 一种在异构冗余系统中存储秘钥的装置及方法
US11381589B2 (en) 2019-10-11 2022-07-05 Secureworks Corp. Systems and methods for distributed extended common vulnerabilities and exposures data management
CN111008855B (zh) * 2019-12-10 2024-02-13 上海信联信息发展股份有限公司 一种基于改进代理重加密的追溯数据访问控制方法
US11522877B2 (en) 2019-12-16 2022-12-06 Secureworks Corp. Systems and methods for identifying malicious actors or activities
FR3107414A1 (fr) * 2020-02-19 2021-08-20 Orange Procédé de calcul d’une clé de session, procédé de récupération d’une telle clé de session
US11588834B2 (en) 2020-09-03 2023-02-21 Secureworks Corp. Systems and methods for identifying attack patterns or suspicious activity in client networks
US11664988B2 (en) * 2020-11-30 2023-05-30 EMC IP Holding Company LLC Method and system for encrypting and decrypting secrets using escrow agents
US11528294B2 (en) 2021-02-18 2022-12-13 SecureworksCorp. Systems and methods for automated threat detection
US12034751B2 (en) 2021-10-01 2024-07-09 Secureworks Corp. Systems and methods for detecting malicious hands-on-keyboard activity via machine learning
US12034718B2 (en) 2022-02-23 2024-07-09 Bank Of America Corporation Secure user authentication leveraging quantum key and steganography
US12015623B2 (en) 2022-06-24 2024-06-18 Secureworks Corp. Systems and methods for consensus driven threat intelligence
US11991400B2 (en) 2022-07-15 2024-05-21 Bank Of America Corporation Device for executing audio cryptology in real-time for audio misappropriation prevention
CN117353919B (zh) * 2023-12-01 2024-03-26 卓望数码技术(深圳)有限公司 基于秘钥分享算法的数据安全存储方法、系统

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5276737B1 (en) * 1992-04-20 1995-09-12 Silvio Micali Fair cryptosystems and methods of use
US5315658B1 (en) * 1992-04-20 1995-09-12 Silvio Micali Fair cryptosystems and methods of use
US5436972A (en) * 1993-10-04 1995-07-25 Fischer; Addison M. Method for preventing inadvertent betrayal by a trustee of escrowed digital secrets
US5557346A (en) * 1994-08-11 1996-09-17 Trusted Information Systems, Inc. System and method for key escrow encryption
US5557765A (en) * 1994-08-11 1996-09-17 Trusted Information Systems, Inc. System and method for data recovery
US5815573A (en) * 1996-04-10 1998-09-29 International Business Machines Corporation Cryptographic key recovery system
US5796830A (en) * 1996-07-29 1998-08-18 International Business Machines Corporation Interoperable cryptographic key recovery system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11888983B1 (en) * 2018-03-09 2024-01-30 Wells Fargo Bank, N.A. Derived unique recovery keys per session

Also Published As

Publication number Publication date
KR19980032357A (ko) 1998-07-25
KR100233979B1 (ko) 1999-12-15
JPH10126404A (ja) 1998-05-15
US5937066A (en) 1999-08-10

Similar Documents

Publication Publication Date Title
JP3640331B2 (ja) 2フェーズ暗号キー回復システム
US6052469A (en) Interoperable cryptographic key recovery system with verification by comparison
US5815573A (en) Cryptographic key recovery system
US5907618A (en) Method and apparatus for verifiably providing key recovery information in a cryptographic system
US5481613A (en) Computer network cryptographic key distribution system
CA2213096C (en) Key management system for mixed-trust environments
US5764772A (en) Differential work factor cryptography method and system
US6535607B1 (en) Method and apparatus for providing interoperability between key recovery and non-key recovery systems
US20110145576A1 (en) Secure method of data transmission and encryption and decryption system allowing such transmission
MacKenzie et al. Delegation of cryptographic servers for capture-resilient devices
KR20050065978A (ko) 암호화/복호화 키를 이용한 메시지 송수신 방법
Zimmermann A proposed standard format for RSA cryptosystems
Gennaro et al. Two-phase cryptographic key recovery system
CZ9904106A3 (cs) Autoobnovitelné a autoověřitelné kryptosystémy
JP2004515160A (ja) メッセージ認証システムのためのしきい値暗号方法およびシステム
JPH0969831A (ja) 暗号通信システム
KR100388059B1 (ko) 비대칭키 암호 알고리즘을 이용한 데이터 암호화 시스템및 그 방법
Gennaro et al. Secure key recovery
Rath et al. Cryptography and network security lecture notes
Sarkar 1 Overview of Cryptographic Primitives for Secure Communication
JP2001237822A (ja) 鍵供託装置
Ho Hybrid cryptosystem using symmetric algorithms and public-key algorithms
Wilbur Distributed Systems Security
Piper Recent Developments in Cryptography
Bleumer Cryptography Primer

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20040402

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20040701

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040701

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20040707

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20041216

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20041216

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20041216

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050114

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees