JPH05224604A - パスフレーズを用いて公用および私用キーペアを生成する方法およびその装置 - Google Patents

パスフレーズを用いて公用および私用キーペアを生成する方法およびその装置

Info

Publication number
JPH05224604A
JPH05224604A JP4231284A JP23128492A JPH05224604A JP H05224604 A JPH05224604 A JP H05224604A JP 4231284 A JP4231284 A JP 4231284A JP 23128492 A JP23128492 A JP 23128492A JP H05224604 A JPH05224604 A JP H05224604A
Authority
JP
Japan
Prior art keywords
key
generating
public key
control vector
private key
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.)
Granted
Application number
JP4231284A
Other languages
English (en)
Other versions
JP2690004B2 (ja
Inventor
Stephen M Matyas
スティーブン、エム、マティアス
Donald B Johnson
ドナルド、ビー、ジョンソン
An V Le
アン、ブイ、リ
C Martin William
ウィリアム、シー、マーティン
Prymak Rostislaw
ロスティスロー、プリマク
D Wilkins John
ジョン、ディー、ウィルキンズ
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 JPH05224604A publication Critical patent/JPH05224604A/ja
Application granted granted Critical
Publication of JP2690004B2 publication Critical patent/JP2690004B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • 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/088Usage controlling of secret information, e.g. techniques for restricting cryptographic keys to pre-authorized uses, different access levels, validity of crypto-period, different key- or password length, or different strong and weak cryptographic 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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3006Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
    • H04L9/302Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters involving the integer factorization problem, e.g. RSA or quadratic sieve [QS] schemes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/26Testing cryptographic entity, e.g. testing integrity of encryption key or encryption algorithm

Landscapes

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

Abstract

(57)【要約】 (修正有) 【目的】 パスフレーズを用いて公用、私用のキーを生
成し、機密保護を高める。 【構成】 ユーザに知られた第1のシード値を用いて第
1の公用キー、私用キーペアを生成し、第1の公用キ
ー、私用キーペアの第1の使用を定義する第1の制御ベ
クトルを生成する。次に、ユーザに知られない第2のシ
ード値を用いて第2の公用キー、私用キーペアを生成す
るステップを継続し、第2の公用キー、私用キーペアの
第2使用を定義する第2の制御ベクトルを生成する。次
に、第1の制御ベクトルを用いて第2の公用キー、私用
キーペアの使用を制御し、また第2の制御ベクトルによ
って第2公用キー、私用キーペアの使用を制御する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、広くはデータ処理のシ
ステムと方法、更に詳しくは機密保護を高めるためデー
タ処理システムに於て使用する暗号システムおよび方法
に関する。
【0002】
【従来の技術およびその課題】以下の特許および同時系
属出願の特許明細書は本発明に関連し参考としてここに
記載する。
【0003】B.Brachtl 等の「生成ステーション設定制
御値を経由する暗号キーの制御的使用」USP 4,8
50,017(1989年7月18日、譲受人 IBM
Corporation ) S.M. Matyas 等の「制御ベクトルを用いるキーの機密保
護管理」USP 4,941,176(1990年7月
10日、譲受人 IBM Corporation ) S.M. Matyas 等の「制御ベクトルを用いるデータ暗号演
算」USP 4,918,728(1990年4月17
日、譲受人 IBM Corporation ) S.M. Matyas 等の「制御ベクトルを用いる個人識別番号
処理」USP 4,924,514(1990年5月8
日、譲受人 IBM Corporation ) S.M. Matyas 等の「拡張制御キーを用いるキーの機密保
護管理」USP 4,924,515(1990年5月
8日、譲受人 IBM Corporation ) S.M. Matyas 等の「制御ベクトル変換を用いる機密保護
キー管理」USP 4,993,069(1991年2
月12日、譲受人 IBM Corporation ) S.M. Matyas 等の「プログラム可能な制御ベクトル検査
を用いる機密保護キー管理」USP 5,007,08
9(1991年4月9日、譲受人 IBM Corporatio
n ) B.Brachtl 等の「公用一方向暗号化機能に基く修正検出
コードを用いるデータ認証」USP 4,908,86
1(1990年3月3日、譲受人 IBM Corporatio
n ) D.Abraham 等「外部プログラム能力を有するスマートカ
ードおよび同じくつくる方法」出願番号004,501
(1987年1月19日ファイル、譲受人 IBM Co
rporation ) S.M. Matyas 等の「RSA暗号変数記憶装置を圧縮する
手法」USP 4,736,423(1988年4月5
日、譲受人 IBM Corporation ) S.Schulzの「乱数発生器回路」USP 4,905,1
76(1990年2月27日、譲受人 IBM Corpor
ation ) S.M. Matyas 等の「多重パス検査により制御ベクトルを
用いるキーの機密保護管理」出願番号07/596,6
37(1990年10月12日ファイル、譲受人 IB
M Corporation ) S.M. Matyas 等の「制御ベクトル実施の代替モードを用
いる安全な暗号演算」出願番号07/574,012
(1990年8月22日ファイル、譲受人 IBM Co
rporation ) S.M. Matyas 等の「キーに対するインポート完全性レベ
ルに基き、公用キーの使用を制御する方法および装置」
出願番号07/602,989(1990年10月24
日ファイル、譲受人 IBM Corporation ) S.M. Matyas 等の「制御ベクトルに基づくハイブリッド
公用キーアルゴリズム/データ暗号化アルゴリズムキー
分散法」出願番号07/748,407(1991年8
月22日ファイル、譲受人 IBM Corporation ) S.M. Matyas 等の「制御ベクトルに基づく公用キー暗号
システムキー管理」(本特許出願と同日出願、譲受人
IBM Corporation ) 引用したS.M. Matyas 等による特許に述べられている暗
号体系は暗号キーとキーの創案者が意図するキーの使用
に対し認証を与える制御ベクトルとの連繋に基づいてい
る。S.M. Matyas 等による引用特許に述べられている暗
号体系はデータ暗号化アルゴリズム(DEA)(米国標
準規格×3.92−1981、データ暗号化アルゴリズ
ム、米国標準規格協会、New York(1981年12月3
1日)参照)に基づいているのに対し、本発明はDEA
等の機密キーと公用キーアルゴリズムの両方に基づいて
いる。本発明に従って、各種キー管理機能、データ暗号
機能、その他データ処理機能が制御ベクトルを用いて可
能である。システム管理者は本発明に従う適当な制御ベ
クトルを選択することにより、その機密保護方針の実施
に当って柔軟性を発揮することが出来る。暗号体系中の
暗号ファシリティ(CF)は前に引用したS.M. Matyas
等の特許中に述べられている。CFは暗号命令の集合に
対する命令処理装置であって、暗号化方法およびキー生
成方法を実行する。暗号ファシリティにおける記憶装置
が内部暗号変数の集合を記憶する。各暗号命令は入力パ
ラメータの集合を出力パラメータの集合に変換するのに
必要な一連の処理ステップに関し述べられている。暗号
ファシリティアプリケーションプログラム(CFAP)
もまた参照された特許および出願明細書中に述べられて
おり、これは対応する入力および出力パラメータと共に
命令略号およびアドレスからなる各暗号命令に対する呼
び出し方法を(呼び出し順序として)定義する。
【0004】公用キー暗号化アルゴリズムはW.Diffie、
M.E.Hellman 共著の「プライバシーーと認証:暗号入門
“Privacy and Authentication:An Introduction to Cr
yptography”」米国電気電子学会誌(IEEE)、67
巻3号、1979年3月、pp.397〜427に述べら
れている。公用キーシステムは、機密分散チャネルが充
分な完全性レベルを有する限り、そのチャネルなしです
ますことを基にしている。公用キー暗号システムでは、
2種のキーが使用され、その1は暗号化用であり他の1
は解読用である。公用キーアルゴリズムは(1) インバー
スキーPU(暗号化用)およびPR(解読用)の無作為
ペアを生成するのが容易であり、(2) PU、PRによる
演算が容易であるが、(3) PUからPRを計算すること
は計算上は実行不可能であるように設計されている。ユ
ーザは解読変換PRを機密に保ち、暗号化変換PUは、
それを公用辞書におくことで公用する。誰でもメッセー
ジを暗号化してそれをユーザに送信できるが、他の誰も
彼に向けられたメッセージを解読は出来ない。PUでも
って暗号化し、PRでもって解読することが可能であ
り、屡々望まれる。この理由で、PUは一般に公用キー
と呼び、PRを一般に私用キーと呼ぶ。公用キー暗号シ
ステムの系特徴はメッセージの送信者を独特に識別する
ディジタル署名を提供することである。もしユーザAが
署名ずみのメッセージMをユーザBに送信しようと思う
と、彼は彼の私用キーPRでその上に操作し、署名ずみ
メッセージSを作成する。PRは機密が望ましい時はA
の解読キーとして用いられたが、ここでは彼の「暗号
化」キーとして用いる。ユーザBがメッセージSを受信
すると、彼はAの公用PUでもって暗号文Sに操作して
メッセージMを回復できる。Aのメッセージを連続的に
解読することにより、受信者Bはそれが送信者Aから来
たという確証を得る。公用キー暗号の例は次の米国特
許、Hellman 等のUSP 4,218,582「公用キ
ー暗号装置および方法」、Hellman 等のUSP 4,2
00,770「暗号装置および方法」、Rivest等のUS
P 4,405,829「暗号通信システムおよび方
法」に与えられている。
【0005】たいていの暗号システムにおいては、一旦
暗号キーが生成されると、暗号キーデータセットの中に
暗号化した形で記憶することが出来るし、または生成装
置から受信装置に暗号化した形で伝送し、そこで受信装
置での記憶および使用に適当な形に再暗号化することも
出来る。適当な媒体(例えばディスケット、磁気テー
プ、メモリカード、スマートカード)にキーを書き込
み、その媒体を移送することにより、またはキーを電子
的に伝送することによりある装置から他の装置にキーは
ポートされる。しかし、移送または伝送されているキー
が対称キー暗号化アルゴリズム(例:データ暗号化アル
ゴリズム)と共に用いられる機密キーのような機密キー
であるか、または非対称キー暗号アルゴリズムと共に用
いる公用および私用キーペアの私用キーである時には、
キーが敵により傍受されるかも知れない危険が常に存在
する。機密または私用キーを安全に移送または伝送する
一つの方法は、送信装置と受信装置間で共有するキー
で、それらを暗号化することである。しかし、送信、受
信装置がかかる機密保護暗号化チャネルを容易にするで
あろうキーを共有していない場合、または送信、受信装
置がかかる機密保護チャネルを容易化するためにかかる
キーイング関係を設定するのが不便あるいは不可能な場
合がある。従って機密キーをある装置から他の装置にポ
ートする唯一の便利な方法はクリアキーをポートするこ
としかないことがたびたびある。
【0006】
【課題を解決するための手段】本発明の目的 本発明の目的は、ユーザが公用および私用キーをある暗
号システムから別の暗号システムにポートする改良され
た方法を提供することにある。
【0007】本発明の別の目的はディスケット、磁気テ
ープ、メモリカード、またはスマートカード等の分離し
た記憶媒体を必要とすることなく、ユーザがある暗号シ
ステムから別の暗号システムに公用および私用キーをポ
ートすることが出来るようにすることにある。
【0008】本発明の更に別の目的はユーザの公用およ
び私用キーを生成し、ユーザが暗号装置を実際に使用中
の期間に使用することができ、また、ユーザが暗号装置
を不使用中はそのキーを暗号装置からパージすることが
できるようにすることにある。
【0009】本発明の更に別の目的はユーザが暗号サー
ビスを必要とする期間中は暗号能力を有するポータブル
コンピュータ内で、ユーザの公用および私用キーを初期
化し、また暗号システムが必要とされない時はそのキー
をポータブルコンピュータからパージさせることにあ
る。
【0010】本発明の更に別の目的はパスフレーズ等の
ユーザが記憶している事柄だけから、ユーザの公用およ
び私用キーペアを暗号装置ネットワーク内のいかなる暗
号装置においても生成または再生成できる方法を提供す
ることにある。
【0011】本発明の更に別の目的はパスフレーズ組合
わせ数が2の128べき乗よりも大きく、なおそのパス
フレーズがユーザが容易にそれを記憶できるような充分
な冗長性を有することを保証するパスフレーズの構成法
を提供することにある。
【0012】本発明の更に別の目的はキー生成アルゴリ
ズムがRivest-Shamir-Adelman (RSA)公用キー暗号
アルゴリズムに基づいているところで、入力パスフレー
ズから公用キーペアおよび私用キーペアを生成および再
生成するための方法を提供することにある。
【0013】本発明の更に別の目的はキー生成アルゴリ
ズムがいかなる公用キー暗号アルゴリズムに基づいてい
るところでも、入力パスフレーズから公用キーおよび私
用キーペアを生成および再生成するための方法を提供す
ることにある。
【0014】本発明の更に別の目的はキー生成アルゴリ
ズムにパスフレーズに基づかない第1のタイプ、および
パスフレーズに基づく第2のタイプの公用キーおよび私
用キーペアを作成させるキー管理システムを提供するこ
とにある。
【0015】本発明の別の目的はパスフレーズに基づか
ない第1のタイプの公用および私用キーペアには、第1
のキー使用法が許されたキー使用法の第1の集合に基づ
くようにせしめ、またパスフレーズに基づく第2タイプ
の公用キーおよび私用キーペアには、第1のキー使用法
が許されたキー使用法の第2の集合に基づくようにせし
めるキー管理システムを提供することにある。
【0016】本発明の別の目的はパスフレーズから生成
される公用キーおよび私用キーは、パスフレーズから生
成されない公用キーおよび私用キーとは暗号的に分離す
ることができ、従ってパスフレーズから生成される公用
キーおよび私用キーにより両タイプの生成される公用キ
ーおよび私用キーを利用する暗号システムの全体機密保
護を弱めることの起り得ないようなキー管理システムを
提供することにある。本発明の概要 上記その他の目的、特徴および効果はこゝに開示する本
発明により達成される。本発明は暗号装置のネットワー
クにおいて、ある装置から他の装置に機密または公用キ
ーをポートする代替手段を提供する。本発明はまた暗号
装置のユーザが実際には暗号装置を使用していない間は
その機密キーをパージし、また実際に暗号装置を使用し
ている間は機密キーを再生成するための手段を提供す
る。これはユーザによりキー生成アルゴリズムに提供さ
れるパスフレーズから公用キーおよび私用キーペアを先
づ生成することにより達成される。その後同じキーペア
の再生成が必要になるたびに、ユーザは同じパスフレー
ズを入力し、それからキー生成アルゴリズムが同じ公用
キーおよび私用キーペアを導出する。かゝる手続きは暗
号能力を有するポータブルのプログラマブルコンピュー
タ(PC)を所有する単一ユーザにより用いられる。ユ
ーザが移動中はそのキーはシステムからパージされる。
ユーザが暗号システムを使用中は、そのキーは再生成さ
れる。パスフレーズも、例えば80文字以上と長いこと
がある点を除けば、考え方はパスワードと類似である。
パスフレーズはより多くの文字を含みうるので、パスワ
ードより多くの変異性を包含することができるが、ユー
ザがパスフレーズを記憶するのは容易である。
【0017】図1は装置を使用中は公用キーおよび私用
キーを生成し、不使用中はそのキーをパージしている2
人のユーザi,jにより共有されている暗号システムA
のブロック図を示したものである。こゝで図1を参照
し、時刻t1に第1のユーザ(ユーザi)は自己のパス
フレーズを入力しキー生成機能を呼び出すことにより自
身の公用キーおよび私用キーPUi,PRiが暗号シス
テムAに再生成されるようにする。時刻t0から時刻t
1まで、ユーザiは暗号キーを実際に使用する。時刻t
1にユーザiはキーパージ機能を呼び出して、公用キー
および私用キーPUi,PR1をパージする。時刻t2
に、第2のユーザ(ユーザj)が自己のパスワードを入
力しキー生成機能を呼び出すことにより、彼の公用キー
および私用キーPUj,PRjが暗号システムAに再生
成されるようにする。時刻t2から時刻t3まで、ユー
ザjは実際に自己の暗号キーを使用する。時刻t3に、
ユーザjはキーパージ機能を呼び出して自己の公用キー
および私用キーPUj,PRjをパージする。こゝで述
べるキーパージ機能は公用キーおよび私用キーの両方と
もパージしている。現実には、私用キーのみをパージす
ることで充分であろう。
【0018】図2は単一ユーザiがある装置使用を望む
ときは自己の公用キーおよび私用キーペアを生成し、そ
の装置使用を終了すると自己のキーをパージする単一ユ
ーザiにより共用される暗号システムAおよびBのブロ
ック図による説明である。こゝで図2を参照し、時刻t
0に、ユーザiは自己のパスフレーズを入力しキー生成
機能を呼び出すことにより、自己の公用キーおよび私用
キーPUi,PRiが暗号システムAに再生成されるよ
うにする。時刻t0から時刻t1まで、ユーザiは実際
に暗号キーを使用する。時刻t1に、ユーザiはキーパ
ージ機能を呼び出すことにより、彼の公用キーおよび私
用キーPUi,PRiをパージする。時刻t1から時刻
t2まで、ユーザは暗号システムAから暗号システムB
に移動する。時刻t2に、ユーザiは自己のパスフレー
ズを入力し、キー生成機能を呼び出すことにより自己の
公用キーおよび私用キーPUi,RViが暗号システム
Bに再生成されるようにする。時刻t2から時刻t3ま
では、ユーザiは暗号キーを実際に使用する。時刻t3
に、ユーザiはキーパージ機能を呼び出すことにより公
用キーおよび私用キーPUi,RViをパージする。
【0019】パスフレーズは自然言語例えば英語からと
ったワードまたはフレーズからなる。「時は風の如く、
果実はバナナの如く飛ぶ」、「心配するな、悪いことな
ど起らない」、「父は弟に犬を買ってやった、弟はまだ
子供だから」といったのがパスフレーズの例(必ずしも
良い例ではないが)である。
【0020】パスフレーズは意味をもったワードの列で
あるから、たとえパスフレーズが(空白を含み)80文
字以上を含んでいたとしても、ユーザがそのパスフレー
ズで記憶し思い出すことが出来る。こういう訳で、パス
フレーズ組合せの数は容易に2の128べき乗(すなわ
ち倍長DEAキーの組合せ数以上)を越えることができ
る。ユーザにはパスフレーズを作るための命令の集合ま
たはガイドラインも同時に提供する。これによりユーザ
が不注意により敵が容易に推測できるようなパスフレー
ズを使用することがないようにする。例えば「メアリー
は小羊をもっていて…」といったパスフレーズは長くて
も、最初の2ワードを知られると、残りは分ってしま
う。「ドナルドダック,ジャックベニィ,アルフレッド
大王がゴルフボールを食べながらチェスをした」といっ
たパスフレーズは敵が推測できないことは、これを読め
ば容易に理解できる。キー生成中、キーを生成する過程
でキー生成アルゴリズムが用いる所要の乱数を生成する
シード値として、パスフレーズが用いられる。パスフレ
ーズから生成する乱数以外には、いかなる乱数をもキー
生成アルゴリズムは使用しない。生成された公用キーお
よび私用キーペア(PU,PR)はパスフレーズのみに
依存するので同じキー生成アルゴリズムを実行する暗号
装置ネットワークの中ならばどの暗号装置でも(PU,
PR)を再生成できる。ネットワークが単一の販売会社
から購入した暗号装置から成立している場合、またはキ
ー生成の方法が標準化されており、違う販売会社から入
手する数種の製品に実行されている場合がこういった場
合である。
【0021】
【実施例】暗号システムのユーザが与える文字列からキ
ーを生成するという概念はIBM社情報保護システム
(IPS)で実行してきたものであって、VM/CMS
ユーザガイド,Order No.SH20−262
1,IBM Corporation(1982年8
月)の情報保護システム暗号プログラムを参照された
い。この情報保護システムは、データファイルを暗号化
したり解読したりするのに用いるキーを暗号システムの
ユーザが制御,管理するという概念に基いて設計された
ファイル保護システムである。システム自身のキーは一
切ない。データの暗号化または解読が必要となった時
に、ユーザが暗号システムにキーを規定してやらなけれ
ばならない。ユーザは16進数字キーまたは80文字ま
での文字列のいずれかを規定すればよい。文字列が入力
された場合は、IPSは次の方法により入力文字列を5
6ビットキーに「クランチ」(なすわちハッシュ)す
る。入力文字列は80文字の長さに空白つき右側に埋込
まれる。次に入力文字列は8文字のブロックに分割され
る。その結果の埋込データはその値がX「010101
0101010101」である一定キーおよびその値が
X「0000000000000000」である初期チ
ューニング値を用い、暗号化ブロック連鎖(CBC)モ
ードを用いてDEAで暗号される。最終64ビットブロ
ックの暗号文の右端56ビットが「クランチ」データキ
ー(パリティビットなし)として取り上げられる。
【0022】情報保護システムにおける文字列からデー
タキーを作成する方法は公用キーおよび私用キーペアの
作成には拡張されない。公用キー生成アルゴリズムはよ
り複雑なためである。ユーザが与えるパスフレーズから
公用キーおよび私用キーペアを生成するためには、キー
生成アルゴリズム自体を修正し、動的にシードされる擬
似乱数発生器を使わなければならない。動的にシードさ
れる擬似乱数発生器は発生器への入力として規定される
シード値から擬似乱数を生成するアルゴリズム処理手順
である。かゝる擬似乱数発生器は暗号システムでの大抵
の乱数を生成するのには適していない。というのは乱数
発生器の呼出し者は、入力として規定されうるシード値
を手許に持っていないか、または持たないことがよくあ
るからである。従って実際には、たいていの暗号システ
ムでは動的にシードされる擬似乱数発生器を用いる便利
な方法はない。代りに、これらの暗号システムでは初期
にシードされる擬似乱数発生器または真の乱数を作成で
きる特殊ハードウェアを用いる。従って本発明の方法を
実行するのが有利と考えられる所では、暗号システムは
次の2つの乱数発生器を実行するのが必要であろう。
(1)は初期にシードされる擬似乱数発生器また真の乱
数のハードウェア発生器であり、(2)は動的にシード
される擬似乱数発生器である。更に公用キーおよび私用
キーが動的にシードされる擬似乱数発生器を利用して生
成されることを許すキー生成アルゴリズムの設計を採用
することが必要であろう。本発明のこれらの様子は以下
に詳述する。
【0023】前に引用したUSP4,736,423
「RSA暗号変数記憶装置」は56ビットの機密値Xか
ら50ビットの非機密値Yを計算する方法を述べてお
り、400ビットモジューラスおよび400ビット指数
を有する公用キーおよび私用キーを再生成するのにその
後いつでも使用できる。これ以上大きな指数およびモジ
ューラス長に対しては、yの長さはXが56ビット一定
に留っている間はほんの少し増加する。機密キー値Xは
キー生成アルゴリズムへの入力として与えられ、公用キ
ーおよび私用キーPU,PRの計算に加え、yの50ビ
ット値をも計算する。値yがPU,PRを生成するのに
始めにかゝった時間に比べ、値yがXと共に公用キーお
よび私用RSAキーPU,PRを非常に迅速に再生成で
きるという点で、値yは特別である。この手法は一方で
はPU,PR(すなわち全指数とモジュラス)を記憶
し、他方では必要になるたびにPU,PRを再生成する
という両者間の妥協である。USP4,736,423
の手法はキーを再生成する短い計算ステップを必要とす
る代りに記憶しなければならないビット数を減らしてい
る。本発明では、公用キーおよび私用キーをユーザが記
憶しているパスフレーズから全部生成する。USP4,
736,423の方法が、入力パスフレーズをハッシュ
することにより理論上は得られる56ビットの独立変数
Xを利用しているのと対照に、数値Yは50ビットの従
属変数である。すなわち公用キーおよび私用キーをポー
トするためには、ユーザは従属変数yをポートし、また
暗号システムが公用および私用キーペアを再生成するよ
うに独立変数Xと共にそれを入力しなければならない。
USP4,736,423は本発明の利点の一部は有し
ているが、本発明ではパスフレーズ以外の追加情報とは
独立に、キーをある装置から別の装置に移送することが
可能である。従って、本発明ではUPS4,736,4
23の方法では達成できないキーポートの形式が可能に
なる。
【0024】こゝで開示する本発明の環境説明として、
図3は通信ネットワーク10を示すネットワークブロッ
ク図であり、これにデータ処理装置20、データ処理装
置20′、データ処理装置20″を含む多数のデータ処
理装置が接続されている。また図3に示すように、各デ
ータ処理装置には暗号システムも含まれる。データ処理
装置20は暗号システム22を含み、データ処理装置2
0′は暗号システム22′を含み、データ処理装置2
0″は暗号システム22″を含む。アプリケーションデ
ータの暗号化、解読、認証や暗号キーの生成、導入等に
対する暗号サービスへのアクセスを要する複数のアプリ
ケーションの処理手順を、各データ処理装置がサポート
する。暗号サービスは各暗号システムの安全な暗号化機
構により与えられる。データ処理装置が暗号化したデー
タおよびキーを送受信する手段をネットワークが提供す
る。各種のプロトコル、すなわち書式と手順規則が通信
用データ処理装置間の相互使用性を確保するためその間
の暗号量の交換を支配する。
【0025】図4はこゝで開示する発明の暗号システム
22を示す。暗号システム22において、暗号化機構
(CF)30は物理的インタフェースからの入力37を
有している。暗号化機構アクセスプログラム(CFA
P)34がインタフェース31により暗号化機構30に
結合される。暗号キーデータセット(CKDS)32は
インタフェース33により暗号化機構アクセスプログラ
ム34に接続される。アプリケーションプログラム(A
PPL)36はアンタフェース35により暗号化機構ア
クセスプログラム34に接続される。
【0026】典型的な暗号サービス要求はインタフェー
ス35にあるCFAP34への機能呼出しを通じAPP
L36により開始する。サービス要求にはキーとデータ
パラメータならびにインタフェース33のCKD32か
ら暗号化したキーにCFAP34がアクセスするのに用
いるキー識別子を含んでいる。CFAP34はインタフ
ェース31のCF30に複数の暗号アクセス命令を発行
することによりサービス要求を処理する。CF30には
CF30への暗号変数の直接入力のためのオプションの
物理的インタフェース37を有することもできる。CF
30によりCFAP34にリターンされる出力パラメー
タのセットを作成するために、CF31に呼出される各
暗号アクセス命令にはCF30により処理される入力パ
ラメータのセットを有する。交替で、CFAP34がA
PPL36に出力パラメータをリターンすることも出来
る。CFAP34は以後の呼出し命令に出力パラメータ
および入力パラメータを使用することも可能である。も
し出力パラメータが暗号化されたキーを含むならば、そ
の時はCFAP34は、多くの場合これら暗号化された
キーをCKDS32に記憶することがある。
【0027】図5はこゝで開示する本発明の暗号化機構
30を説明する。暗号化機構30は機密保護範囲140
内で保全される。暗号化機構30には命令処理装置14
2を含み、これに実行コードとして具体化した暗号アル
ゴリズム144が結合している。暗号化機構環境記憶装
置146は命令処理装置142に結合されている。図に
示すように物理的インタフェースはライン37を通して
CF環境記憶装置146に結合できる。命令処理装置1
42はインタフェース31により暗号化機構アクセスプ
ログラム(CFAP)34に結合される。
【0028】命令処理装置142はインタフェース31
でCFAPアクセス命令により呼出された暗号マイクロ
命令を実行する機能素子である。各アクセス命令に対
し、インタフェース31は実行用特別マイクロ命令の選
択に用いる命令ニーモニックまたは演算コードを先づ定
義する。第2に入力パラメータのセットがCFAP34
からCF30にパスされる。第3に出力パラメータのセ
ットがCF30によりCFAP34にリターンされる。
命令処理装置142は暗号マイクロ命令記憶装置144
に記憶されたマイクロ命令として具象化された暗号処理
ステップの命令の特定順序を実施することにより選択さ
れた命令を実行する。制御流れおよび暗号処理ステップ
のそれに続く出力は入力パラメータの値とCF環境記憶
装置146の内容により決る。CF環境記憶装置146
は例えば、キー,フラグ,カウンタ,CFコンフイギュ
レーションデータ等のCF30内に収集的に記憶される
暗号変数のセットからなる。記憶装置146のCF環境
変数はインタフェース31を通して初期化されるが、そ
れは入力パラメータを読みとり、CF環境記憶装置14
6にロードする、あるCFマイクロ命令の実行による。
代りに、初期化はオプションの物理的インタフェースを
通して行うこともできるが、これは暗号変数を例えば付
属キー入力装置を通す等、直接にCF環境記憶装置にロ
ードすることができる。
【0029】暗号化機構機密保護範囲140の物理的実
施例では次の物理的安全保護の特徴を備えている。物理
的実施例は暗号化機構30へのアクセスを制限したイン
サイダアドバーサリによるプロービングに抵抗する。術
語「制限した」というのは日,週でなく分,時間単位で
測定される。アドバーサリ(敵)とは、高度の電子,機
械設備を用いてアドバーサリの管理区域で発射される試
験的攻撃と違い、制限された電子装置を用いてカストマ
ーの場所でのプロービング攻撃に限定される。物理的実
施例はまた各種の電気機械式検知装置を用いて物理的プ
ロービングまたはイントルージョンでの試みも検出す
る。またこの暗号化機構30の物理的実施例ではすべて
の内部に記憶された機密暗号変数のゼロ化を規定してい
る。試みのブロービングまたはイントルージョンが検知
されることがあると、自動的にこのゼロ化が行われる。
物理的実施例はまた内部に記憶されている機密暗号変数
のゼロ化に対する手動機能も備えている。前に引用した
Abraham等の特許出願を参照すると、如何にして
こういった物理的機密保護の特徴を実行できるかの例が
示されている。
【0030】キー生成プロセス:図6はこゝで開示する
本発明の暗号化機構30に含まれる暗号アルゴリズム1
44を説明するブロック図である。図6を参照し、暗号
アルゴリズム144には暗号化および解読演算を行う暗
号アルゴリズム150、キー作成用にキー生成アルゴリ
ズム(KGA)151および乱数作成用に乱数生成アル
ゴリズム152が含まれる。当面は乱数と擬似乱数とを
区別しないこととする。すなわち乱数生成アルゴリズム
152は真の乱数発生器でも、または擬似乱数を作成す
るアルゴリズムであってもよい。乱数発生器と擬似乱数
発生器については以下に論ずる。暗号アルゴリズム15
0はデータ暗号化アルゴリズム(米国標準規格X3.9
2−1981,データ暗号化アルゴリズム,米国規格協
会,NewYork(1981年12月31日))等の
対称アルゴリズムであってもよく、RSAアルゴリズム
のような非対称、または公用キー、アルゴリズムであっ
てもよい。公用キーアルゴリズムに対し、暗号化と解読
との数学的演算間に差があってもなくてもよい。例えば
RSAアルゴリズムでは暗号化も解読も共にべき乗演算
モジュロとして実行される。暗号アルゴリズム150に
はインタフェース153を通し命令処理装置142がア
クセスし、このインタフェース153が命令処理装置1
42に暗号化および解読の基本演算を行わせている。イ
ンタフェース153は同時にキー,データ,その他の暗
号変数が暗号アルゴリズム150と命令処理装置142
との間を通るようにしている。同様の方法で、キー生成
アルゴリズム151には命令処理装置142がインタフ
ェース154を通してアクセスし、インタフェース15
4は命令処理装置142にキー作成を要求させる。イン
タフェース154は同時にキー,データ,その他の暗号
変数が2つの各構成品間にパスされるようにする。キー
生成アルゴリズムはまた乱数生成アルゴリズムにインタ
フェース155を通してアクセスされる。これによりキ
ー生成アルゴリズム151は、キー生成プロセスに必要
な乱数生成アルゴリズム152からの乱数の要求,受理
を行なう。乱数生成アルゴリズム152はまた命令処理
装置142にインタフェース156を通してインタフェ
ースをとり、命令処理装置142にキー作成以外の暗号
化の目的に必要な乱数の作成を要求させる。
【0031】暗号アルゴリズム150がDEAのような
対称または公用キー暗号アルゴリズムである場合は、キ
ー生成アルゴリズム151によるキーの生成ステップは
単純である。一般に、nビットキー(仮にn=64とす
る)で生成するプロセスは次のステップから成る。64
ビット乱数RNが乱数生成アルゴリズム152から要求
される。ある場合には、RNは生成予定キーとして直接
とられてもよい。しかし多くの暗号システムでは、キー
生成には奇数パリティに対しキーの各バイトを調整する
ステップをも含んでいる。さらに他の場合では、キー値
がある知覚された望ましくない性質を有さない、例えば
キーが「実行時」あるいは「半実行時」DEAキーでな
いことを確めるため、キー生成アルゴリズムがキー値を
テストすることがある。「実行時」または「半実行時」
DEAキーの規格に関しては、MeyerおよびMat
yas共著、「暗号−コンピュータデータ保護の新次
元」John Wiley & Sons社、New
York,1982年を参照のこと。キーのパリティを
調節することは多くの暗号システムで共通の慣行である
が、大抵の場合、この追加テストは無視される。
【0032】暗号アルゴリズム150がRSAアルゴリ
ズム等の対象または公用キー暗号アルゴリズムの場合、
キー生成アルゴリズム151でもってキーを生成するス
テップがより多く含まれる。公用キー暗号システムで
は、公用キーおよび私用キーペア(PU1,PR1),
(PU2,PR2)等は特殊キー生成アルゴリズム(K
GA)の助けをかりて作成される。KGAには、時には
KGAがその時キーの作成に用いる乱数の作成をKGA
が作成または要求するプロセスの組合せを含んでいる。
これら乱数はテストされ拒否されることがあり、他の乱
数がある数学特性が満足されるまで要求されテストされ
ることもある。さらに別の場合には、KGAがある乱
数、またはある数学的特性あるいは複数の特性に対しテ
ストされた後に受け付けた乱数値をとることがあり、こ
の乱数値からその後1個以上の他の値を導出するであろ
う。一般に、KGAはキーの作成においてある単数およ
び複数の乱数構成要素(すなわち乱数)を要求する。さ
もなければ、KGAが呼び出される度に同一の公用キー
および私用キーペアが生成される恐れがある。この様な
ことは勿論許容されることでなく可能なキーペアのスペ
ースから無作為に抽出され、または少く共無作為に抽出
されているように思われ、従って敵がKGAが作成した
キーペアを推測する手段がないことを保証するような公
用キーおよび私用キーペア(PU1,PR1),(PU
2,PR2)をKGAは作成しなければならない。上記
のように、キーの作成において乱数を利用することに加
え、KGAは数学的プロセスの使用を行い、このプロセ
スでは値は他の値(すなわち、構成的プロセスの使用)
から計算または導出され、試行錯誤のプロセスを用いて
値を計算する(すなわち、所要の値が見つかる迄試行値
をテストし拒否する)。好ましい実施例ではキー生成ア
ルゴリズム中で直接シード値を用いるよりも寧ろ擬似乱
数発生器を初期化するのにシード値を用いている。その
理由はシード値が必然的に、キー生成アルゴリズムがシ
ードにおけるより多くのランダムビットを必要とするで
あろうという非ゼロ確率が存在していることを意味する
特定有限長であるのに対し、擬似乱数発生器はキー生成
アルゴリズムが必要とするだけ、任意長の擬似乱数を生
成することが可能だからである。もしキー生成アルゴリ
ズムがシードよりも多くのランダムビットを要するよう
なことが起れば、シード値の直接再使用は許容されない
ことになるであろう。その理由は、キー生成アルゴリズ
ムはすべてのテスト基準を満足する出力への値を見出せ
ないことがあるので、計算を完了できないことがあるか
らである。動的にシードされる擬似乱数生成アルゴリズ
ムを使用すると擬似ビットの任意数の使用可能性を保証
することにより、この潜在的無限くり返しは避けられ
る。
【0033】図7は暗号アルゴリズム150がRSAア
ルゴリズムである時のキー生成アルゴリズム151を説
明する流れ図である。キー生成アルゴリズム151は公
用キーおよび私用キーペアPU=(e,n)およびPR
=(d,n)を作成する。こゝでe,dは公用および私
用指数(e,dはnより小の正の整数)と呼ばれ、nは
公用モジュラスである。従って2個組(d,n)におい
て、私用指数dのみが機密保護を必要とする。図7を参
照し、ステップ161でpの試行値が生成される。ステ
ップ162で、pの値が素数性に対しテストされる。素
数性テストの方法を以下に述べる。pが素数ならば、制
御はステップ163に進む。そうでなければ制御はステ
ップ161に戻る(すなわち新pが生成される)。ステ
ップ163でpが「強」素数であるかどうかを調べるテ
ストが行われる。「強」素数とは、選定したpが素数
p,qにモジュラスnを因数分解することにより暗号ア
ルゴリズムを「ブレーク」するための数学的解析を許可
しないことを保証する追加基準集合を満足する素数pを
表わす本手法での術語である。キー生成およびp,qが
暗号攻撃を妨げるのに充分強であることを保証するため
にp,qについて実施される追加テストの論議に対して
は、Rivest,R.L、Shamir,A.、Ad
leman,L.「デジタルシグニチャおよび公用キー
機密システムを得る方法」を参照のこと。ステップ16
3でpについて実施される追加テストには、p−1が大
素数因数p′を有することおよびp′−1が大素数因数
p″を有することのテストが含まれる。RSAキー生成
について述べている文献で示唆されるその他のテストと
してp+1が大素数因数を有することをテストするもの
もある。pが「強」素数ならば制御はステップ164に
進み、その他の時は制御はステップ161に戻る。(す
なわち新しいpが生成される)。ステップ164でqの
試行値が生成される。ステップ165ではpの値が素数
性についてテストされる。pが素数なら、制御はステッ
プ166に進み、その他の時はステップ164に戻る
(すなわち新しいqが生成される)。ステップ166で
qが「強」素数かどうかがテストされる。ステップ16
6でqに実施される追加テストにはq−1が大素数因数
q′を有することおよびq′−1が大素数因数q″を有
することのテストを含む。RSAキー生成を論ずる文献
が示唆する別のテストはq+1が大素数因数を有するこ
とをテストすることである。もしqが「強」素数なら
ば、制御はステップ167に進み、その他の時は制御は
ステップ164に戻る。(すなわち新しいqが生成され
る)。ステップ167で公用モジュラスnはpとqの乗
算積として形成される。ステップ168で、値rは(p
−1)と(q−1)の乗算積として構成される。ステッ
プ169で、キー生成アルゴリズムにより、公用指数e
が入力として与えられているかどうかが決定される。も
し入力として与えられるならば、その時には制御はステ
ップ172に進み、与えられた値eがステップ171で
テストされた条件を満たすと仮定される。別の実施例と
しては、制御がステップ171にフローすることがで
き、与えられた値eをキー生成アルゴリズム151によ
りチェックすることもできる。もし入力として与えられ
なければ、制御はステップ170に進み、ステップ17
0でeの試行値を生成する。ステップ171でeがrに
対し相対的に素であることを確認するためのテストを行
なう。これは容易に実行され、eとrの最大公約数(G
CD)が1であること、すなわちeとrが1以外の共通
因数を有しないことをチェックする。eとrが互いに相
対的に素であれば、その時は制御はステップ172に進
み、その他の時は制御はステップ170に戻る。(すな
わち新しいeが生成される。)ステップ172で、値d
はeとdとの積が1モジュロrと合同であるように計算
される。ステップ173でPU=(e,n)とPR=
(d,n)の計算値が出力としてリターンする。
【0034】素数性に対し多数をテストする適切な手法
の1つに、R.Solovay,V.Strassen
が「素数性に関する高速モンテカルロテスト」SIAM
Journal on Computing,197
7年3月,ページ84,85で述べた有効な「蓋然論
(probabilistic )」アルゴリズムの使用がある。そこ
では乱数「a」を一様分布(1,2,…,X−1)から
とり、「a」の最大公約数およびXが1であるかどう
か、すなわちGCD(a,X)=1をチェックし、また
J(a,X)で表わす「a」とXのヤコビの記号がQモ
ジュロXに合同かどうか(ただしQは「a」の(X-1) /
2べき乗に等しい)をテストする。こゝで整数(a1,
a2,等)の集合(但し集合中の各「a」はXより小さ
い)を用いてXを素数性に関してテストする。図7に示
すように、RSAキーを生成する場合には値Xを値p,
qに置き換えることに注意する必要がある。このテスト
では、セット中の各「a」の値に対し、上記の両条件が
保持されることが必要である。従って集合中に両条件が
保持されない「a」があれば、Xは複素数であることが
分かる。その他の時はXは素数として受容される。この
手順は選択した数が素数であることを保証するのではな
く、素数性のテストに失敗しなかったことのみを保証し
ている。集合中の整数a(a1,a2等)の数が大きい
程、選択した数が素数である確率が大きい。たゞし勿論
集合中の各整数「a」に対し両条件が満足されているこ
とが仮定されている。2整数の最大公約数、2整数の最
小公倍数、2整数のヤコビの記号の計算法は技術上周知
である。
【0035】適切な暗号保護を達成するRSAアルゴリ
ズムに対し、モジュラスnがほぼ512ビットと102
4ビット間の数であることが必要なことは当業者によく
知っている。前記のキー生成アルゴリズムでは、公用キ
ー指数eはキー生成アルゴリズムに規定することも、キ
ー生成アルゴリズムにより生成することも可能である。
eをキー生成アルゴリズムに規定する利点は小さな値
(例えばe=3)を規定できることである。公用キーで
暗号化する時はこれにより性能が向上する。私用指数d
は従属変数であり、導出されなければならない。従って
実用上は、dはモジュラスと同一サイズになる。この場
合モジュラスが512ビットなら、選択した指数eのビ
ット数により、公用キーPUは514ビット〜1024
ビットであり、他方私用キーPRは1024ビットであ
る。64ビットまたは128ビットのDEAキーと比べ
ると、RSAキーはかなり大きい。当業者には公用キー
アルゴリズムが可成り計算的に強力な手順であることも
認められる。単一の公用キーおよび私用キーペアを生成
するのに必要な時間で、数千、恐らく数百万ものDEA
キーを生成できる。固定ブロックサイズのDEAと違っ
て、RSAアルゴリズムは特定のブロックサイズを要し
ない。そのために選択したモジュラス長により、RSA
キー生成が比較的短かったりまたは比較的長いプロセス
であったりすることができる。キー生成アルゴリズム1
51が希望サイズ(すなわち規定ビット数)の公用キー
および私用キーを生成するためには、生成されたpとq
が共に掛け合わせると希望のサイズ、あるいはビット長
のモジュラスnを生ずるようにステップ161と164
とを設計する。p,qに関する追加テストを図7の流れ
図に追加でき、これによりISO Draft Int
ernal Standard 9796「メッセージ
回復を与えるデジタル署名計画」のような暗号規格中で
規定されることのある仕様に従って、キー生成を適合さ
せ得ることに当業者は理解するであろう。また図7に述
べたRSAキー生成アルゴリズムは、pとqの作成が単
に試行錯誤法ではなく、試行錯誤とその値を構成する方
法とを組合せるプロセスで行うならば、より効率が上る
ということを当業者は認めるであろう。pの生成、p−
1が大素数p′を有することのテスト、p′−1が大素
数p″を有することのテストの代りに、大素数p″を生
成することから開始することも出来る。この場合、少数
をp″に乗じ、1を加え、次にプライマリティのテスト
をすることによりp″から素数p′を見つける。この結
果得られたp′が素数でなければ、p″に別の少数を乗
ずる以外は同じプロセスを繰り返す。同じ手法でp′か
らpも見出すことができる。同様に、同じ手法を使って
q″からqを見出すことができる。
【0036】RSAキー生成には多くの変形がありうる
ことを当業者は認めるであろう。しかしどんな場合に
も、キー生成プロセスでは乱数が必要であり、この乱数
は乱数発生器または擬似乱数発生器を用いて作成するこ
とが出来る。図7に戻ると、ステップ161,164で
はp,qの試行値が無作為に生成される。一度生成され
ると最も重要性の少ない(低位または右端)ビットをB
「1」に等しく設定することができ、生成値が必ず整奇
数であることが確実となる。値2を除きすべての素数は
奇数であるから、これにより処理が速くなる。上述のよ
うにpとqをp″とq″とから生成する場合は、p″と
q″の試行値を無作為に生成する。公用指数eがキー生
成アルゴリズム151に入力として与えられていない時
には、eの試行値を無作為に生成する。このようにし
て、すべての場合に、RSAキー生成には乱数の作成と
使用の必要なことが分る。
【0037】乱数および擬似乱数:大抵の暗号システム
では乱数を作成、使用する手段が必要である。例えば、
DEAによる暗号化の暗号ブロック連鎖モードを使用す
る時など、乱数を初期化ベクトルまたは初期連鎖値とし
て使用する。例えば、DEAによる暗号化の暗号フィー
ドバックモードを使用する時などは、乱数を「シード」
値として使用する。多くの暗号ベース識別および認証プ
ロトコルでは乱数をその場限りに使用する。乱数作成能
力がないと、大抵の暗号システムは著しく制約を受ける
かまたは使いものにならないであろう。
【0038】図8および図9に暗号システムで乱数を生
成するのによく用いられる2方法を示す。図8は「真」
乱数発生器180のブロック図である。「真」乱数発生
器180にはハードウェア回路181を含み、乱数を作
成する能力がある。かゝるハードウェア発生器で乱数を
作成する手段はよく知られており従来技術で実行できる
(前記USP4,905,176、R.Schulz
「乱数発生器回路」1990年2月27日発行を参
照)。乱数の要求はインタフェース182を通して入力
される。生成された乱数(RN1,RN2等)はインタ
フェース183を通し出力される。実際には生成された
乱数の長さはアルゴリズムの固定定数例えば64ビット
である。「真」乱数発生器はその出力値が予想不能であ
るという性質を有する。すなわち乱数発生器の出力を予
測するようなアルゴリズムを構成する筈はない。「真」
乱数発生器は初期化にシード値を必要とせず、従って発
生器の出力を繰り返させる方法は存在しない。この性質
が「真」乱数発生器を暗号システムでの実行を非常に望
ましいものにしている。しかし「真」乱数発生器のコス
トは擬似乱数発生器に比べて比較的高いため、大抵の商
用暗号システムは擬似乱数発生器を使用している。
【0039】図9は初期にシードされる擬似乱数発生器
190のブロック図である。初期にシードされる擬似乱
数発生器190にはアルゴリズム191および乱数生成
にアルゴリズム191が使用するシード値記憶のための
シード記憶装置194を有する。(擬似乱数発生器によ
り作成された乱数は一見無作為に見えるだけであること
に注意を要する。より正確には、擬似乱数発生器により
作成される出力は擬似乱数と呼ぶべきである。しかし便
宜上これらも乱数と呼ぶことにする)。初期シード値は
インタフェース195を通し指定される。初期シード値
自体は暗号命令の1つを通し暗号機構にインタフェース
するユーティリティプログラムを通し暗号システムに入
力されるか、または入力されたパスワードあるいは物理
的なキー操作スイッチを用いて許可されたインストレー
ション要員のみが操作できる特殊前面パネルインタフェ
ースを通し入力される。キー生成に擬似乱数発生器を使
用する場合は、初期およびその後すべてのシード値は機
密にしておかなければならない。そうでなければ、擬似
乱数発生アルゴリズムは公用領域にあると考えられるか
ら、生成された乱数の機密度はシード値を秘密にしてお
くことに依存している。乱数を生成する時には、シード
値はアルゴリズム191の性質にもよるが、アルゴリズ
ム191により動的に更新されることがある。アルゴリ
ズム191にはまた、乱数作成中自動的に更新されるカ
ウンタ数またはシーケンス数の記憶装置のような、別個
の記憶装置を有するものがある。この場合には、シード
値は一定のまゝでカウンタ数またはシーケンス数のみが
更新される。カウンタ数またはシーケンス数を用いるケ
ースでは、シード記憶装置194にシード値がインタフ
ェース195を通して初期化される時に初期値がアルゴ
リズム191によりセットされる。乱数の要求はインタ
フェース192を通し入力される。生成された乱数(R
N1,RN2等)はインタフェース193を通し出力さ
れる。実際には生成された乱数の長さはある固定値、例
えば64ビットである。擬似乱数発生器はその出力が完
全に予想可能であるという性質を有す。擬似乱数発生器
の出力は一見無作為に見える数値の列(RN1,RN2
等)である。アルゴリズムがいわば「メモリ」を有して
いる理由のみで、RN2はRN1とは違っている。すな
わち、アルゴリズムは連続的に自身を更新しており、ア
ルゴリズムが呼び出される度に違った「出発」点から始
まる。しかし、もし同じアルゴリズム191の各場合が
同じシード値で初期化されたとしたら、各アルゴリズム
191により作成される乱数は完全に同一となろう。初
期シード値自体を無作為プロセスを通して選択すべきで
あるということが良い暗号実施法である。こうすると別
々の暗号装置で各々初期にシードされる擬似乱数発生器
190は異なる乱数を作成する。
【0040】図10は動的にシードされる擬似乱数発生
器200のブロック図である。動的にシードされる擬似
乱数発生器200は乱数発生用にアルゴリズム201を
有する。乱数の要求はインタフェース202を通し入力
される。生成された乱数(RN1,RN2等)はインタ
フェース203を通し出力される。インタフェース20
3で生成された乱数(RNと名付ける)の長さはインタ
フェース202における長さパラメタにより規定される
値に等しい。アルゴリズム201には内部に記憶された
シード値を有しない。その代り要求されるシード値はイ
ンタフェース202においてアルゴリズム201に指定
される。このシード値は呼出し者に見えなければならな
いが、それは同一シードを入力すれば同一出力が生ずる
ことを保証しながら他の呼出し者による要求のインタリ
ーブを行なえるからである。便宜上、長さ値が生成され
る乱数長を決める所では、アルゴリズム201では長さ
パラメタをインタフェース202で指定してよい。実際
上は、シードの長さは大抵はアルゴリズム201が予め
設定した固定定数である。動的にシードされる擬似乱数
発生器200の演算を説明するため次のことを仮定す
る。(1)パラメタ「長」はビットで指定され、(2)
パラメタ「シード」のビットでの長さは128であり、
Lは望ましい乱数(RNと称する)のビットでの長さで
ある。その場合パラメタ「長」で指定される値は128
+L、すなわち次期シードの長さプラス望ましい乱数の
長さで計算される。
【0041】別の実施例では、次期シードの作成を自動
的に行うと、従ってパラメタ「長」は望ましい乱数RN
の長さを指定することになる。その場合は、インタフェ
ース203では2つの出力、次のシードとRNがある。
いずれの実施例も作動する。最初の場合では、動的にシ
ードされる擬似乱数発生器200は次期シードを作成す
る方法については意識しない。次期シード値の作成、管
理は呼出し者の制御下にある。第2の場合では、動的に
シードされる擬似乱数発生器200は呼出し者に次期シ
ード値を計算して戻す責任がある。
【0042】さらに別の代替実施例では、初期にシード
される擬似乱数発生器のアルゴリズムと動的にシードさ
れる擬似乱数発生器のアルゴリズムとが同じアルゴリズ
ムであり、アルゴリズムには同一の回路および/または
ルーチンを用いることができる。初期にシードされる発
生器は普通のユーザではアクセスできないシステム記憶
装置を用いていてシステムシード値を有し、これは初期
にシードされたアルゴリズムが呼出されると必要に応じ
て自動的に更新される。また動的にシードされる発生器
は呼出し者にそのシード値をパス(および維持)するよ
う要求する。上記方法に対し小修正や変化を加えた多く
の実施例が可能であり、この相異点は本発明に何等影響
しないことを関係者は認めるであろう。
【0043】本発明では、公用キーおよび私用キーペア
(PU,PR)はユーガによる入力として機密パスフレ
ーズから生成されており、その実行のためにはキー生成
アルゴリズムが同じ順序の乱数を再生成するし、従って
同じパスフレーズがキー生成アルゴリズムに指定される
度に同じキーペア(PU,PR)を再生成することが出
来ることが極めて重要である。これと対照的に、暗号シ
ステムで乱数を要求する他の暗号アプリケーションは全
て、同じ順序の乱数を再生成する必要を有しない。実際
には、かゝる能力が暗号システムに存在するとキーが偶
然再生成されるような好ましくない状態に通ずる可能性
があると言われることもある。
【0044】図8、および9に示す方法によりキー生成
アルゴリズムが要求する乱数を作成する場合には、再生
成従ってパスフレーズから公用キーおよび私用キーペア
(PU,PR)を生成することは不可能である。図8の
「真」乱数発生器180は、キーペア(PU,PR)を
満足に再生成するために必要となる同一順序の乱数を再
生成させる方法がないので、使用することが出来ない。
同様に、図9の初期にシードされる擬似乱数発生器19
0も、同一順序の乱数を再生成せしめる方法を有しない
ので使用出来ない。実際には、暗号システムに電源が入
りラインにつながった時、または時には装置の電源が切
れていた期間の後で一度だけかゝる擬似乱数発生器が通
常初期化される。その後は単に乱数を要求するだけでよ
い。すなわち動的にシード値を再指定する用意はない。
多くの場合呼出し者は手許にシード値を有さないので、
擬似乱数発生器の各呼出し者に彼自身の「シード」値の
入力を要求するよりも、むしろ一度だけ擬似乱数発生器
に「シード」する業務を行うのが最も良い。事実多くの
システムユーザが使用すると考えられるこの形式の擬似
乱数発生器に、通常のユーザがシード値を指定できない
ということは機密保持の観点から重要である。
【0045】以上の説明から図10に図示する動的にシ
ードされる擬似乱数発生器は、本発明の要求を満足でき
るが、大抵の暗号システムにおいては乱数作成の一般要
求を満たさないことは明らかである。同様に前記の説明
から、図8に示す「真」乱数発生器および図9に示す初
期にシードされる擬似乱数発生器は大抵の暗号システム
における乱数作成の一般要求を満足できるが、キー生成
アルゴリズムがパスフレーズからキーを再生成しなけれ
ばならない時の乱数作成の要求を満足しない。従って、
本発明の好ましい実施例においては、図11に示すよう
に乱数生成用に2手段が必要とされる。図11を参照す
ると、図6で前に図示した暗号化機構の暗号アルゴリズ
ム144構成品は動的にシードされる擬似乱数発生器2
00およびキー生成アルゴリズム151と動的にシード
される擬似乱数発生器200間のインタフェース204
を含むように拡張されており、乱数要求によりリターン
すべき乱数を生成せしめる。図11の動的にシードされ
る擬似乱数発生器200は既に述べた図10の動的にシ
ードされる擬似乱数発生器200と同一に作動すると仮
定されている。すなわち、乱数要求には長さとシードの
指定を含む。出力は乱数である。キー生成アルゴリズム
151はシード値を管理すると仮定される。例えば第1
シードはこれから述べる方法を用いてパスフレーズから
計算する。キー生成アルゴリズム151が長さLの乱数
を要求する時はいつもL+128の「長さ」パラメタを
指定する。すなわち次期シードを自動的に要求し、キー
生成アルゴリズム151にアクセスできる次期シード格
納域に保管する(例えばキー生成アルゴリズム151内
に)。図11のキー生成アルゴリズムが図7のRSAキ
ー生成アルゴリズムそのものである場合には、図7のス
テップ161,164,170が図11のインタフェー
ス204での動的にシードされる擬似乱数発生器200
に向けられる乱数の要求になるであろう。従って図7の
ステップ161,164または170が繰返される度
に、新乱数が得られる。満足な値を見出すまでにどれだ
けの試行を必要とするかを予め知る方法はなく、プロセ
スは試行錯誤であるから、乱数の順序を予め計算出来ず
必要の都度試行を行う。
【0046】図12は本発明の要求を満足する動的にシ
ードされる擬似乱数発生器の例である。アルゴリズムは
128ビットを要し、これを64ビットキーKと64ビ
ット初期連鎖値ICVとに分割する。シードの左側64
ビットがKになり、シードの右側64ビットがICVに
なる。mを発生する無作為ビットの数とすると、64n
にmより大の最小値を表わさせる。こゝでnはmビット
の擬似ランダムシーケンスを作成するのに充分の長さを
有する生成すべき暗号文の64ビットブロックの数を表
わす。暗号文を生成するのに、2進ゼロのn64ビット
ブロックでスタートし、DEA暗号化の暗号ブロック連
鎖モードを用いてDEAアルゴリズムで暗号化する。キ
ーと初期連鎖値は上記のKとICVそのものである。長
さmの出力乱数RNは結果の暗号文における左側(最も
重要な)mビットそのものである。
【0047】パスフレーズを使用するキー生成:図13
は暗号システムを図示しており、暗号化機構(CF)3
0、暗号キーデータセット(CKDS)32、暗号化機
構アクセスプログラム(CFAP)34およびアプリケ
ーションプログラム(APPL)36を有する。こゝで
図13を参照すると公用キーおよび私用キーペア(P
U,PR)を生成するステップをトレースできる。40
においてアプリケーションプログラムA(APPL
A)42がユーザにより呼び出される。APPLAは
(1)アプリケーションが処理とつながる以前にユーザ
が自分のキーを生成または再生成することを要求するア
プリケーションであるか、または(2)ユーザがそれら
のキーを生成または再生成することを許容するユーティ
ティであることを仮定している。APPL Aは、ユー
ザが41で入力するパスフレーズ(PPと称する)をユ
ーザに催促する。応答して、APPL Aは43でキー
生成機能47をコールする。43はCFAP34にあ
り、モードパラメータPPおよび制御情報をパスする。
制御情報は制御ベクトルまたは制御ベクトルをつくるの
に用いられる情報であってもよい。モードパラメータは
生成キーがパスフレーズベース(モード=「PP」)で
生成されるか、されないか(モード=「非PP」)いず
れをキー生成機能に指示する。従ってPPパラメータは
選択パラメータである。制御情報はキータイプ(すなわ
ち生成すべき公用キーおよび私用キーのタイプ)および
キー管理でのキーの使用法を示す取扱い制御情報であ
る。応答して、キー生成機能47は(1)入力パラメー
タをパーズし、(2)もしモード=「PP」なら入力パ
スフレーズPPから128ビットハッシュ値CWを計算
し、入力制御情報を処理し、GRVPR命令を指定され
る制御データパラメータを作り、GPUPR命令52を
呼び出して50で暗号化機構30の命令処理装置142
で実行する。50はモードパラメータおよびもしモード
=「PP」ならオプションコードワードCW、および制
御データをパスする。制御データには生成すべき公用キ
ーPUと関係するキー関連情報を指定するPU制御ベク
トルおよび生成すべき私用キーPRに関連するキー関連
情報を指定するPR制御ベクトルを含む。各制御ベクト
ルには暗号システム内のキーを識別するキー名を含んで
いる。各制御ベクトルは同時にラベルまたはCFにより
初期化されるべきCKDSラベルの予約スペースを含
み、暗号キーデータセット(CKDS)32からのキー
トークンの記憶、検索に用いることができる。応答し
て、GPUR命令52は、図14に、より詳細な記述が
あるように、入力としてモードパラメータ、またもしモ
ード=「PP」ならコードワードCWをパスして、キー
生成アルゴリズムKGAを呼び出す。応答して、KGA
は図14に詳細記述があるように公用キーおよび私用キ
ーPU,PRを生成し、GPUPR命令52にリターン
する。応答して、GPUPR命令52は生成されたPU
を含むPUキートークンおよび生成されたPRを含むP
Rキートークンをつくる。PUキートークンおよびPR
キートークンは図15に説明されており、以下詳しく述
べる。GPUPR命令は以下詳細説明するように、同時
に50で入力としパスされるモードおよび制御データに
ついて一貫性チェックを行う。一貫性チェックにより、
キータイプと各キートークンの制御ベクトル部分の取扱
い情報とがモードと一致していること、すなわちキーが
パスフレーズから生成されたか否かが確められる。P
U,PRキートークンは次にキー生成機能47に51で
リターンされる。応答して、キー生成機能47は必要な
らPU,PRキートークンを更新する。例えばCKDS
ラベルの記憶装置に対するトークンの予約フィールドが
この時点で埋められる。次にキー生成機能47はキー記
憶装置マネージャ46にCKDS32の1個または2個
のキートークンを記憶させ、44でAPPL Aにキー
名またはラベルのみをリターンさせるか、または44で
APPL Aに1個または2個のキートークンをリター
ンする。こゝでの意図はAPPL42にキートークンを
管理、制御させる(もしそう望むなら)か、暗号システ
ムにキートークンを管理、制御させることである。どち
らの進め方にも利点があり、キートークンがCKDS3
2に記憶されるにしても、あるいはAPPL42にリタ
ーンされるにせよ、キートークンの取扱いは43でのキ
ー生成機能47へのAPPL A42により指定される
入力パラメータの制御下にあるように暗号システムを設
計することが可能である。応答して、APPL Aは必
要に応じキートークンを記憶するか、またはCFAPで
実行する他の暗号機能への入力として、PU,PRキー
トークンが後で再指定できるキー名またはラベルを記憶
する。こゝでAPPL Aはユーザに、要求された公用
キーおよび私用キーが入力パスフレーズから生成された
ということを指示する。APPL Aは処理が完了する
時迄必要に応じ処理を続ける。生成したキートークンの
1個以上がCKDS32に記憶されたと仮定すると、A
PPL Aは45でキーパージ機能48をコールする。
45はCFAP34にあり、パージされるべき各キート
ークンのキー名またはラベルをパスする。応答して、キ
ーパージ機能48はキー記憶装置マネージャ46にCK
DS32から各キートークンを抹消させる。もしAPP
L Aがキートークンを管理しているなら、キーパージ
機能48をコールする代りに、APPL Aがキートー
クンをパージする。図13には示されていないが、各呼
出しエンティティには適当なリターンコードおよび条件
コードを利用できると仮定されており、従って要求され
た処理が正常に完了したこと、あるいは追加の処置を要
するエラーが発生したかどうかの指示を呼出しエンティ
ティは有している。キー生成機能47およびGPUPR
命令52は次の2タイプのキー生成を操作するように設
計されていることを当業者なら認識できる。(1)P
U,PRがパスフレーズから生成される場合(モード=
「PP」)、(2)PU,PRがパスフレーズから生成
されない場合(モード=「非PP」)。すなわち、キー
生成機能およびGPUR命令の設計は本発明の好ましい
実施例であると考えていることをベースにしている。そ
の理由は、いずれのモードとも両方の種類のキー生成を
行うことは出来ず、また各モードは今論じた通りキー管
理においてそれぞれ独自の異なる利点を有するからであ
る。
【0048】公用キーおよび私用キーペア(PU,P
R)が生成される時、このキーがパスフレーズから生成
されたものであるか否かを識別することが重要である。
基本的にはパスフレーズから生成されたキーはユーザに
知れるキーである。直接には知れなくとも、このキーは
ユーザが計算でき、従って厳密な意味ではユーザに知ら
れる。これはPU,PRの計算に用いられるアルゴリズ
ムは公用領域にあると推定されるからである。すなわち
機密が保たれる根拠がない。唯一の機密要素はパスフレ
ーズその物である。従って、パスフレーズを知る人はキ
ーを知る(または計算する)ことができる。しかし公用
キーおよび私用キーペア(PU,PR)がパスフレーズ
から生成されない時、すなわちキー生成プロセスに含ま
れる無作為要素または無作為値が真の乱数発生器(図
8)か、初期にシードされる擬似乱数発生器(図9)の
いずれかを用いて暗号機構で生成される時は、キー生成
アルゴリズムにより生成されるキーはすべての実用目的
に対してはユーザには知られないかまたは知ることがで
きないものである。(多くの場合、キーはマスタキーの
下で暗号化されており、生成されるキーはマスタキーと
同程度の機密度を有す。マスタキーを知る人は誰でも生
成されるPUとPRも知ることになるが、PUは公用キ
ーであるから懸念する要はない。)「スマート」キー管
理設計では、両タイプの生成キーを利用することができ
る。パスフレーズから生成されない私用キーPRは、理
論上は暗号システム自体によってのみ知ることが出来
る。従って適正に実行するなら、完全性のシステムレベ
ルあるいは機密性のシステムレベルの実行にこういった
キーを用いることができる。これはPRがユーザに知ら
れるならば達成されないものである。反面ユーザに知ら
れるPRにより、よく利用される多くの機能がある。例
えば、暗号システムにそのユーザを認証する、またはそ
のユーザを他のユーザに認証する、または情報をそのユ
ーザから来ていると認証する(例えば、ユーザが計算し
て彼のメッセージにディジタル署名を添付する場合)の
にPRは使用される。キー管理設計は次の方法でこの差
を利用することがある。GPUPR命令52の処理の一
部として、PU,PRキートークンを作るステップがあ
る。
【0049】図15にPUキートークンおよびPRキー
トークンの書式を示す。PUキーは公用キーであるか
ら、PUキートークンはクリアまたは暗号化されたフォ
ームeKM.H1(PU)でPUを記憶することがあ
る。こゝでKM.H1はCF30のCF環境記憶装置1
46内に記憶されている機密マスタキーKMと暗号変数
H1との排他的論理和積であり、H1は中間ハッシュ値
1を作成するのにC1をハッシュし、またH1を作成す
るのにハッシュ1に数ビットをフィックスすることによ
りPUに対し制御ベクトルから作成される。eKM.H
1(PU)の正確な規格は前記のS.M.Matyas
等による同時係属特許出願「制御ベクトルを用いる公用
キー暗号システムキー管理」に述べられている。PRキ
ーは私用キーであるから、PRキートークンは暗号化し
たフォームeKM.H2(PR)でのみPRを記憶す
る。eKM.H2(PR)の正確な規格は前記のS.
M.Matyas等による同時係属特許出願「制御ベク
トルを用いる公用キー暗号システムのキー管理」に述べ
られている。PUとPRを暗号化する暗号化変数H1と
H2は異なっている。H1は公用キーPUに関連する制
御ベクトルC1より導出し、H2は私用キーPRに関連
する制御ベクトルC2より導出する。PU,PRキート
ークンは、それぞれキー名またはCKDSラベル、使用
法制御情報等のキー関連データである制御ベクトルC
1,C2も含む。PU,PRキートークンにはまたフォ
ームeKM.H1′(KAR)、eKM.H2′(KA
R)の確証を含んでいる。たゞしCKARはキー確証レ
コードであり、H1′,H2′はH1,H2に係わる暗
号化変数である。KARはクリアまたは暗号化キーすな
わちPU,eKM.C(PU)またはeKM.C(P
R)の暗号機能である。eKM.H1′(KAR)およ
びeKM.H2′(KAR)の正確な規格は前記のS.
M.Matyas等による同時係属特許出願「制御ベク
トルを用いる公用キー暗号システムのキー管理」に述べ
られている。PU,PRキートークンにはキートークン
中に他のフィールドの記憶位置と長さを識別する情報を
有するヘッダ部分も含んでいる。これによりそのフィー
ルドを可変長にすることができる。
【0050】図16にはPU、PRキートークンの制御
ベクトル部分の追加規格を示す。図16を参照すると、
制御ベクトルにはCVタイプと名付ける制御ベクトルタ
イプフィールドを含んでおり、キーが公用キーか私用キ
ーか、さらにそのキーはユーザキーか、キー管理キー
か、証明キーか、あるいは認証キーを示す。4つのキー
タイプ(ユーザ、キー管理、証明、認証)の正確な識別
は本発明では重要ではない。しかし、異なるキータイプ
はキー管理設計において異なる目的と用途を有すること
を理解するのは重要である。例えば、タイプ=「ユー
ザ」と制限して、公用ユーザキーがディジタル署名を生
成するためのみに用いられることができる。他方タイプ
=「キー管理」はより広範であり、私用キー管理キーを
暗号化の目的に、またある暗号装置から他の暗号装置に
DEAキーを分散する目的に使用することも、また公用
キー管理キーにディジタル署名を生成させることも可能
である。例えば、公用キー、私用キーペアはキーを暗号
化するDEAキーを分散するために2つの暗号システム
間で用いることができる。その後は、キーを暗号化する
キーは他をDEAキーを2つの夫々の暗号システム、例
えばデータキー間に分散するのに用いられる。この場合
は、一般にはこの目的に公用ユーザキー、私用ユーザキ
ーを用いようとはしないであろう。その理由は、この場
合は、自分の私用ユーザキーを知っているか、または理
論的に知りうるユーザ自身はキーを暗号化する暗号化さ
れたキーをインタセプトし(すなわち、PUで暗号化さ
れたキーを暗号化するキー)、またそれを自分の私用キ
ーPRで解読することができるからである。このように
して、ユーザはキーを暗号化するクリアキーの値を見出
すことが可能であり、たいていの暗号システムではキー
分配プロトコルの所期の機密保護に打ち勝つことにな
る。従って、PU、PRキートークンをGPUPR命令
52が作る時点において、生成されたキーのキータイプ
および使用法が意図されたキー管理設計に合致すること
を確認するため50での入力として指定されたモードに
対し、図14の50での入力として指定されたPU、P
R制御ベクトル(または等価的には図13の50での制
御データ)に関する一貫性チェックをGPUPR命令が
実行しなければならないことは本発明の一部である。例
えばCFAPがモード=「PP」を指定し、制御データ
がタイプ=「キー管理」を指示するならば、その時はG
PUPR命令52はこの不一致を検出し、キータイプに
対する不一致指示により処理を停止したというCFAP
への指示でもって演算を打ち切らなければならない。他
方では、もしCFAPがモード=「PP」を指定し、制
御データがタイプ=「ユーザ」を指示するならば、その
時はGPUPR命令52はキータイプの不一致により演
算を打ち切ってはならない。ここでは述べないが、追加
の一貫性チェックがGPUPR命令に演算を打ち切らせ
ることがあることに注意を要する。キートークンに生成
されたキーがキータイプおよび使用法を指定する制御情
報に連結されることは重要であるから、本発明の好まし
い実施例では図15のPUキートークンは、暗号化され
た書式eKM、H1(PU)でPUを記憶しなければな
らない。前記のように、H1をキートークンの制御ベク
トルに従属させることにより、これが達成される。H1
を制御ベクトルに従属させる正確な方法はここでは重要
でないが、前記のS.M. Matyas 等による同時保属特許出
願「制御ベクトルを用いる公用キー暗号システムのキー
管理」に詳細が述べられている。前述から、本発明はユ
ーザ供給のパスフレーズから公用キーおよび私用キーペ
アを生成する手段を提供することは理解されるであろ
う。しかし大抵の暗号システムでは、上記のようにユー
ザが私用キーPRの値を予測したり、決定する能力を有
さないような方法で、公用キーおよび私用キーを暗号シ
ステム内で生成する時には、より機密保護された設計が
可能である。従って本発明では、キーペアがパスフレー
ズから導出されたか、またはキーペアがパスフレーズか
らは導出されていないかによって、生成されるキーのタ
イプの双方の使用法を制御する手段も提供するものであ
る。従来技術(USP4,941,176、4,91
8,728、4,924,514、4,924,51
5、5,007,089)では制御ベクトルを通してキ
ータイプおよびキー使用法を制御する手段が述べられて
いる。しかし、この従来技術は、キーが如何にして生成
されるかに従ってキーのタイプと使用法を制限する方法
は述べていない。対照的に、本発明は公用キーおよび私
用キーがパスフレーズから生成されるキーと、パスフレ
ーズから生成されていないキーとを区別し、指定される
キータイプが許可さるべきか、または許可さるべきでは
ないかをキー生成命令(すなわちGPUPR命令)内で
決定する手段として、この区分がキー管理に重要である
ことを示した。このようにして本発明は生成プロセスを
適当に制御する手段を提供し、そのため生成されるキー
は、キーのタイプおよびそれが暗号システム内で如何に
処理されるかを指定する制御ベクトル情報に、適当に暗
号的に連結されることになる。生成されるキーを制御す
るこういった手段がなければ、パスフレーズおよびパス
フレーズから生成されるキーの利点は暗号システムの全
体機密保護を弱めるように思われ、パスフレーズから導
出するキーの利点は利点ではなく欠点となるように思わ
れることになろう。従って、本発明は単にパスフレーズ
からキーを生成する手段を提供するのみではなく、キー
管理内で生成されたキーを制御する本質的な手段をも提
供するものである。
【0051】図14は、GPUPR命令52を呼び出す
結果としてCF30内で実行される演算の説明である。
図14のGPUPR命令52は、図13のGPUPR命
令52とは、図14がキー生成アルゴリズム152およ
び動的にシードされる擬似乱数発生器200を呼び出す
追加のステップがあるという点以外は全く同一である。
図14を参照すると、50での入力はモード、オプショ
ン命令語(CWと呼ぶ)、PU制御ベクトル、PR制御
ベクトルよりなる。図13では、PU制御ベクトルおよ
びPR制御ベクトルは単に制御ベクトルと呼ばれてい
る。呼び出されたことに応答して、GPUPR命令52
は53でキー生成アルゴリズムKGA152を呼び出
し、モードパラメータおよびオプションCWをパスす
る。応答して、KGA152はキー生成を実行するステ
ップを遂行する。例えば、CF30内で行われる暗号ア
ルゴリズムがRSAアルゴリズムならば、その時にはキ
ー生成ステップは図7に示す通りのものである。KGA
152が乱数を要求する最初の時に、CWの値が初期シ
ードとして用いられ、パラメータ「長さ」の値を得るた
めに要求される乱数RNの長さが値128に加算される
(これが次期シードの長さになる)。
【0052】次にKGA152は55で動的にシードさ
れる擬似乱数発生器200を呼び出し、「長さ」とシー
ド=CWを入力パラメータとしてパスする。応答して、
動的にシードされる擬似乱数発生器200はCWに等し
い入力シードから「長さ」に等しい長さの乱数を生成す
る。例えば、図12に示すアルゴリズムを動的にシード
される擬似乱数発生器200として用いることができ
る。「長さ」に等しい長さの生成された乱数RNは56
でKGA152にリターンされる。図14は次期シード
およびRNとして56での出力を示す。実際には、生成
される乱数RNは(長さ128ビットの)次期シードお
よびRN(「長さ」に等しい長さマイナス128ビット
の望ましい乱数)の単なる連結である。RNを受理する
と、KGA152は次期シードおよびRNを得るためそ
れをパーズする。KGA152が動的にシードされる擬
似乱数発生器200に別のコールをすることが必要と判
断した場合は、次期シード値はセーブされる。次にRN
値がキー生成プロセスで用いられる。次回KGA152
が乱数を要求する時に、次期シード値が検索され、シー
ドとして用いられ、また、要求される乱数ランの長さが
パラメータ「長さ」の値を得るために値128に加算さ
れる。プロセスはこういう風に連続する。もし、キー生
成アルゴリズムが図7の方法を用いてRSAキーを生成
するならば、図7でステップ161,164,170に
入る時には、KGA152は動的にシードされる擬似乱
数発生器200にコールする必要がある。必要となる乱
数RN1,RN2等の長さはモジュラスの望みの長さに
より、またKGAおよび暗号システム自体の特定の実行
によって変る。
【0053】本発明はかかる環境のすべてにおいて、ま
たRSAアルゴリズム、RSAキー生成アルゴリズム、
RSA暗号システムの実行において実践できることは当
業者は認めるであろう。さらに、これら他のアルゴリズ
ムによるキー生成が、キー生成に含まれるステップがプ
ロセス中のある時点、時期に、動的にシードされる擬似
乱数発生器200により生成しうる乱数または無作為値
を要求しているという点で、RSAアルゴリズムのキー
生成と類似であることを、公用キーアルゴリズムに詳し
い人は認めるであろう。このように、本発明はRSAキ
ーの作成のみに限定されず、一般的にパスフレーズから
公用キーおよび私用キーを生成する方法が、他の公用キ
ーアルゴリズムに同様に拡張することを当業者は認める
であろう。KGA152がキー生成プロセスを完了後、
すなわちPU、PRが生成された後、PUとPRはGP
UPR命令52に54でリターンされる。応答して、G
PUPR命令52はPU、PRおよび50で入力として
供給されたモードおよび制御ベクトルを用いてPUキー
トークンおよびPRキートークンを構成する。次に既に
述べたように、GPUPR命令52は50で入力として
供給されたモードおよび制御ベクトルに一貫性チェック
を実行し、キータイプおよび使用法がキー生成法に一致
しているかどうか(すなわちパスフレーズに基づいてい
るか、パスフレーズに基づいていないか)を判定する。
一貫性チェックにパスすれば、PUキートークンとPR
キートークンは51でCFAP(キー生成機能)にリタ
ーンされる。一方もし、一貫性チェックにパスしない
と、GPUPR命令52は停止し、PUキートークンと
PRキートークンは51でCFAPにリターンされな
い。
【0054】パスフレーズ選択プロセス:ユーザにより
入力として供給される機密のパスフレーズから、公用キ
ーおよび私用キーペア(PU、PR)を生成するため
の、本発明の方法を述べてきた。この結果の私用キーP
Rは入力したパスフレーズの値に完全に依存しており、
またキー生成アルゴリズムは公用の知識であると仮定し
ているので、私用キーPRの機密保護は完全にパスフレ
ーズそのものの機密保護に依存するものと推測される。
敵が誰かのパスフレーズの入手または推測することが可
能だとしたら、その敵は既知のキー生成アルゴリズムと
パスフレーズを用いて私用キーPRを決定できるであろ
う。ユーザのパスフレーズの機密を保護するのに用いな
ければならない方策に2つの基本分類がある。即ち: ・選択したパスフレーズを無許可のパーティに開示する
ことを防止する方策と、 ・無許可のパーティが選択したパスフレーズを単純推定
することを防止する方策である。
【0055】第1分類の方策は一般にはユーザに原則や
指針のセットを提供することにより実行される。例え
ば、パスフレーズは記憶すべきでメモすべきでない。も
しパスフレーズをメモするなら、不慮の開示を避けるた
め管理された環境の下で行わなければならない。さらに
メモしたコピーは不使用時は確実に保管しなければなら
ない。これら規則の大部分は常識そのものであり、シス
テムパスワード、錠の組合せ、私用電話番号の取扱いの
ような毎日ユーザが扱っている多くの「秘密」に適用さ
れるものである。
【0056】第2分類の方策は常識の原則から明示する
のはより困難なことが多い。この方策はユーザがパスフ
レーズ自体を選択するのに用いる方法に焦点をおく。パ
スフレーズは他より推定が容易なことは明白である。従
って、「良い」パスフレーズ(すなわち容易に推定でき
ないもの)を選択し、「悪い」パスフレーズ(すなわ
ち、容易に推定できるもの)を回避する体系的方法が提
供さるべきである。
【0057】図17にパスフレーズ選択プロセスを示
す。第1ステップ300は、パスフレーズ選択の原則と
指針のセットを準備し発行することである。パスフレー
ズ選択指針はユーザが「良い」パスフレーズを選択する
のを助けるために、ユーザに提供される。これら原則に
は後章で述べるようにパスフレーズ「フィルタ」を満足
するような基準のセットが書面で分り易い様式で含まれ
ている。
【0058】パスフレーズ選択指針の見本:本章では適
切なパスフレーズ作成をユーザに指導するため「べし」
と「べかず」のリストを提供する。良い選択と悪い選択
とを説明する特定の実施例が与えられる。敵がこの文書
を見ていることもあり得るので、実際にはいずれの見本
も使用すべきではない。
【0059】基本的にパスフレーズは「構成」しなけれ
ばならない:敵が推定する恐れのあるレパートリーのフ
レーズから選択してはならない。さらに、パスワードの
構成に当っては語の「数」および語の使用「頻度」は、
実用上、敵が大規模、指向性探索を用いてもパスワード
を発見できないようなものにする。
【0060】「悪い」パスワード(例えば、自分の名前
とか電話番号)を使用すると、無作為に生成されている
ような見かけを有する暗号キーを作成し、この意味では
偶然の侵入者に対してはある程度の保護を与える。しか
し、こういったキーは真の暗号保護を与えない。
【0061】避けるべき習慣(過去にこれらを使用して
実際に暗号文が解読されたことがある)は次の通りであ
る。
【0062】1. パスフレーズを自分自身で構成する
代りに、パスフレーズリスト(例:a book)からパスフ
レーズを選択しないこと。
【0063】2. フレーズの中の数語が残りの手がか
りを与えるような推測のできるフレーズを用いないこ
と。例えば ・ よく知られている詩や子守歌からの1行 ・ よく知られている人、場所、事柄の名前 ・ 国家、文化、民族、宗教的へレディティからのフレ
ーズを使用しないこと。
【0064】3. 以前のパスフレーズと同じ概念のフ
レーズを使用しないこと。例えば、もし前回、祖父に関
することを用いたとしたら、今回は祖母に関することを
用いないこと。
【0065】4. パスフレーズとして1語だけという
のは使用しないこと。平均的辞書には約10,000語
含まれている。この多様性は2の14乗以下であり、電
子的速度では直ぐに究明できる。
【0066】5. 最も普通の英語の単語「のみ」を使
用しないこと。(すなわち、アングロサクソン起源の基
本語)。こうすると敵の辞書のサイズは10,000語
以上から、約2,000語またはそれ以下に減らすこと
ができよう。
【0067】6. 小学校の教科書にある文を使用しな
いこと。効力のある習慣は次の通りである。
【0068】1. パスフレーズは新規に創造すること
(すなわち、オリジナルであるべきである) 2. パスフレーズの長さはアルファベット文字(A〜
Z)で空白を除き少くとも40〜50文字のこと。これ
で約10語になり、徹底的なコンピュータ解析を妨げる
のに充分である。
【0069】3. 次の1個あるいはそれ以上を行うこ
とにより、敵が必要とするアルファベットまたは辞書を
増加させることを考えること。
【0070】・ 特殊記号を含めること(例えば、自分
のキーボードにもよるが、‖@#$%「&*()_+−
=!¢:;,.?″′/\|{}<>) ・ 文章に数字を導入すること。
【0071】・ 故意に単語をミススペルすること。
(例:happen 3 stance ) ・ 外国語を使用すること。入力記号のセット を増し、またパスフレーズの各記号は、26可能性の文
字の代りに、ずっと多くの可能性の文字数字記号を有す
ることになる。もちろんパスフレーズが記憶困難になる
という事実によりこの実施の阻害されることがある。
【0072】4. パスフレーズに固有名前を含んでい
ても支障ない。
【0073】5. パスフレーズを記憶し易くするよう
努め、書き留める必要がないようにすること。逆にフレ
ーズは他の誰かが推定することができなくすべきで、自
分だけが知っている内輪の情報を含めることを考えるこ
と。
【0074】パスフレーズの例: 悪いパスフレーズの例: ・ 「Antidisestablismentarianism 」−単一の辞書語 ・ 「Dick and Jane see Spot run. Jump Spot jump.
」−小学1年の教科書 ・ 「A bee bit me. 」−短かすぎる ・ 「George Washington Carrer」−有名人 ・ 「Mary had a little l amb, ifs fleece was whit
e as snow.」−有名な詩 ・ 「Thon shalt have no other gods before Me.」−
宗教的ヘリテージ ・ 「Four score and sever years ago…」−国家的伝
統 良いパスフレーズの例: ・ 「I have never lived in Chicago at 278 Lake Sh
ore.」 ・ 「Why do you believe that fishies dan't float
in the sky? 」 ・ 「Did George Washington read Pascal or talk to
an ambassdor?」 ・ 「My favorite color is green or am I lieing &
it's Moorish Mist.」 ・ 「Counting"won, too, tree" is childish (but so
what)! 」 ・ 「Cannot I dance on my head? I dunno, perhaps
I shall.」 パスフレーズフィルタ:再び図17を参照し、ユーザが
ステップ301でパスフレーズを一旦選択すると、その
選択の良否を判断するために発行されている選択指針に
対しユーザ選択を評価することは有益である。この評価
プロセスには指針と原則300で発行されているもの以
上の追加基準を勿論含むことがある。追加基準を原則の
形で述べるのは困難かも知れないが、それにも拘らず選
択したパスフレーズの質を判定するには重要である。総
合評価基準として、試用パスフレーズを入力し301、
試用パスフレーズをテストし302、テスト302の結
果を基にして試用パスフレーズを受託または拒否する3
03、といった具合に自動化することもできる。303
で受託されると、順に次のキー生成プロセスの使用可能
をトリガする。拒否されるとエラーメッセージをトリガ
し、ユーザに別のフレーズを選択するよう促す。パスフ
レーズテスト302はパスフレーズフィルタの形で実行
することがある。
【0075】パスフレーズフィルタは「悪い」ユーザ構
成のパスフレーズすなわち敵が徹底した指向探索により
発見できる可能性のあるパスフレーズを拒否するための
ルーチンである。可能性のあるパスフレーズが生成され
ると、パスフレーズフィルタが呼び出され、パラメータ
入力としてパスフレーズが提供される。最も頻繁に使用
される10,000語を含む標準英語の辞書を用いて、
パスフレーズフィルタは敵のコンピュータプログラムが
ユーザのパスフレーズを再生成するまでに通常列挙しな
ければならないパスフレーズ数の下限を計算する。この
情報は呼び出し者に報告され、パスフレーズの放棄、修
正、受託を呼出し者が選ぶことができる。
【0076】パスフレーズフィルタはそのパスフレーズ
が「良い」ことを自動的に保証するものではないが、大
抵の「悪い」パスフレーズを消去することができる。こ
の意味でパスフレーズ構成用に提供された原則と共にパ
スフレーズフィルタを用いると、「悪い」パスフレーズ
が不注意に用いられる機会を最小化し、従って全体の機
密保護が向上する。
【0077】パスフレーズフィルタは概念的にはパスワ
ードフィルタと類似しており、「悪い」ユーザ設定のパ
スフレーズまたは徹底した指向探索により敵が発見でき
る可能性のあるパスフレーズを拒否するルーチンであ
る。
【0078】パスフレーズを含む例がこのチェック手順
の重要性を説明している。ユーザ選定のパスフレーズの
ような、ユーザ選定のパスワードはよりユーザに親しみ
易いアクセス制御とのインタフェースを与える。しかし
人間は「容易な道を選ぶ」傾向があることはよく知られ
ている。1000人が選んだ6桁のパスワードを調べて
みると、その分布が一様ではないことは確実である。6
個の繰返し数字(000000、111111等)、順
番の数字(123456、234567等)または明白
なパターンの数字からなるパスワードが不釣合に多いこ
とに気付くであろう。これを知っていると、敵は最もあ
りそうな候補を最初に探索するように徹底した指向探索
を組織化できる。多くの場合には、パスワードを見付け
るにほんの僅かの試行しか必要としない。対策として、
パスワード選択に含まれる潜在的リスクについてユーザ
に伝えておかなければならないし、またコンピュータシ
ステムの導入においてはパスワード選択において守るべ
き簡単な原則をセットでユーザに提供しなければならな
い。弱いパスワードをテストし拒否するために多くのコ
ンピュータシステムではパスワードチェックアルゴリズ
ムを提供することも可能である。
【0079】パスフレーズ構成においては、類似してい
るが、より複雑な原則のセットを守らなければならな
い。多くの場合、原則は直観的ではなく、従って、シス
テムに実行されるパスフレーズフィルタは尚更重要であ
る。パスフレーズフィルタは試用パスフレーズに適用さ
れる簡単な高速テストのセットからなる。各テストはパ
スフレーズの変異性を評価する。すべてのテストを実行
後、最小値をユーザに報告する。
【0080】図18には、暗号命令セット2を実行可能
な暗号化機構し、キー記憶装置3、暗号化機構アクセス
プログラム4、ユーザアプリケーションプログラム5よ
りなる暗号システムを示す。暗号化機構アクセスプログ
ラム4はパスフレーズフィルタユーティリティプログラ
ム6を含み、チェックパスフレーズ7と呼ばれるCFA
Pサービスを通してアクセスされる。試用パスフレーズ
をチェックするのに次のステップが含まれる。アプリケ
ーション5がチェックパスフレーズサービス7を呼び出
す。試用パスフレーズをチェックし、パスフレーズの変
異性推定を呼出し者にリターンする。呼出し者は受託の
ための最小変異性を設定しなければならない。例えばD
EAキー生成に対しては、変異性は最小2の56乗であ
るべきである。
【0081】図19はパスフレーズフィルタルーチンの
処理ステップの流れ図である。パスフレーズフィルタは
次のチェックを行う。
【0082】1. パターン分析−記号または記号列が
繰返されているか? 2. 文字頻度分析−個々の文字、2重字、3重字等が
如何なる頻度で典型的な言語では表われ、また提案のパ
スフレーズに限定するとどうか? 3. ワード頻度分析−特定のワードが如何なる頻度で
表われるか? パスフレーズフィルタによりユーザに報告されるパスフ
レーズの推定変異性は上記分析のそれぞれから得られる
変異性の最小値である。これら分析の実行方法を以下に
述べる。
【0083】パターン分析:試用パスフレーズの標準統
計分析で次のことが分る。
【0084】1. パスフレーズに用いられた全アルフ
ァベット 2. 文字または文字グループの繰返し このデータから、統計的変異性の計算が容易にできる。
例えば、「有効アルファベット」がパスフレーズ中に表
わる記号のみで構成されると仮定し、またパスフレーズ
の「有効長さ」をすべての繰返しを除いたパスフレーズ
の長さと定義せよ。そうすると「IIIIII」のよう
なパスフレーズは「悪い」と分類するであろう。
【0085】数字や文字の自然の順番もある。この自然
の順番を用いると、パスフレーズは敵に推測されうるか
も知れない。数字やアルファベット順を検知する一方法
は各数字および文字にランク番号を割り当て、有限差分
計算法を用いることである。この方法は有限個数の指定
点を通る多項式の次数を計算するのに使われる方法であ
る。この方法を以下に示す。
【0086】1. 数字0〜9にランク番号1〜10を
割り当て、文字「A」〜「Z」にランク番号11〜36
を割り当てる。
【0087】2. パスフレーズに対するランク番号の
リストを生成する。
【0088】3. 左端から始めて、各要素から直ぐ右
側の要素を減算し、一次差分を計算する。リストの最後
の数字はそれに対し計算すべき差分を有しない。
【0089】4. 一次差分の数に同じ操作を行って二
次差分を計算する。
【0090】例えば、パスフレーズを次のように仮定
し、 パスフレーズ:1 2 3 4 5 ランク番号: 02 03 04 05 06 一次差分: 01 01 01 01 二次差分: 00 00 00 一次差分のリストにおいて入力がゼロの時は、隣接した
ランク番号が同一であることを意味する。二次差分のリ
ストにおいて入力がゼロの時は一次差分が同一すなわち
ランク番号が定数だけ変化していることを意味し、パス
フレーズの1片が「246」とか「ABC」のような順
序になっていることを意味する。可変性計算では、パス
フレーズの有効長さは一次および二次差分リストにある
ゼロの数だけ減算される。(このようなゼロは繰返しま
たは単純パターンを示すので)。
【0091】このランク番号分析は「qwerty」(または
他の)キーボードの数字と文字の順番でもって行うこと
も可能である。
【0092】文字頻度分析:次の文字リストはGaimes
(参考文献2)からとったものである。
【0093】英文での文字の頻度順リストは、 ETAONISRHLDCUPFMWYBGVKQXJ
Z。
【0094】もし特殊記号が含まれるとすれば、その時
は最も普通の記号(「E」よりもさらに)はブランクす
なわちスペースである。英文での2重字の頻度順リスト
は TH HE AN IN ER RE ES ON E
A TI AT STEN ND OR TO NT
ED IS AR… 英文での3重字の頻度順リストは THE AND THA ENT ION TIO F
OR NDE HASNCE EDT TIS OFT
STH MEN… 1. 各文字を頻度グループにグループ分けして、各グ
ループに変異性の推定値を与える。簡単のため、グルー
プの変異性は2の整数べきであるようにグループを定義
する。
【0095】a. 2の0乗 (2**0) E b. 2の1乗 (2**1) T c. 2の2乗 (2**2) AO d. 2の3乗 (2**3) NISR e. 2の4乗 (2**4) HLDCUPEM f. 2の5乗 (2**5) WYBGVKQXJZ g. ブランク以外の特殊記号には2の5乗の値を付け
る。
【0096】2. パスフレーズにおける文字の繰返し
パターンをチェックし、分析しようとするパスフレーズ
から繰返しパターンを取り除く。
【0097】3. 分析しようとするパスフレーズから
すべてのブランクを取り除く。
【0098】4. (パターンを取り去った後の)各文
字に対応する2のべき指数を合計する。合計値がこのテ
ストの変異性である。
【0099】5. 2重字および3重字についても同じ
ことを行う。
【0100】ワード頻度分析:以下はJohn B. Carroll
の「The American Heritage WordFrequency Book」(1
971)からとったものである。最も普通の英語100
ワードの頻度順リストは以下の通りである。
【0101】THE OF AND A TO IN IS YOU THAT IT HE F
OR WAS ON ARE AS WITH HIS THEYAT BE THIS FROM I HA
VE OR BY ONE HAD NOT BUT WHAT ALL WERE WHEN WE THE
RECAN AN YOUR WHICH THEIR SAID IF DO WILL EACH ABO
UT HOW UP OUT THEM EHENSHE MANY SOME SO THESE WOUL
D OTHER INFO HAS MORE HER TWO LIKE HIM SEETIME COU
LD NO MAKE THAN FIRST BEEN ITS WHO NOW PEOPLE MY M
ADE OVER DIDDOWN ONLY WAY FIND USE MAY WATER LONG
LITTLE VERY AFTER WORDS CALLEDJUST WHERE MOST KNOW 最も頻繁に使われる10,000ワードを含む標準英語
の語彙を用い、ユーザのパスフレーズを再生成するまで
に敵のコンピュータプログラムが列挙しなければならな
いであろうパスフレーズ数の下限をユーティリティプロ
グラムが計算する。
【0102】1. 次のようにワード頻度リストを構築
する。
【0103】a. 2の0乗 (2**0) THE b. 2の1乗 (2**1) OF c. 2の2乗 (2**2) AND A d. 2の3乗 (2**3) TO IN IS YO
U e. 2の4乗 (2**4) THAT IT HE
FOR WAS ONARE AS f. 等々 所望の長さにワード頻度リストに対するこのリストを構
築する。あるワードがそのリストに現れなければ、その
リストの最少頻度ワードと同じ頻度を有するものと仮定
する。
【0104】2. 繰返しワードをチェックし、分析し
ようとするパスフレーズから繰返しワードを取り除く。
【0105】3. パスフレーズの各ワードに対応する
2のべき指数を合計する。合計値がこのテストの変異性
である。
【0106】本発明の特定の実施例を開示したが、本発
明の精神および目的から逸脱することなく、特定の実施
例に変更を行いうることは当業者には自明である。
【0107】本発明の公用キー暗号システムを管理する
方法は、ユーザに知られている第1のシード値を用いて
第1の公用キー、私用キーペアを生成し、また第1の公
用キー、私用キーペアの第1の使用を定義する第1の制
御ベクトルを生成するステップと、ユーザに知られてい
る第2のシード値を用いて第2の公用キー、私用キーペ
アを生成し、また第2の公用キー、私用キーペアの第2
の使用を定義する第2の制御ベクトルを生成するステッ
プと、第1の制御ベクトルを用いて第1の公用キー、私
用キーペアの使用を制御ベクトルするステップと、第2
の制御ベクトルを用いて第2の公用キー、私用キーペア
の使用を制御ベクトルするステップとを含んでいる。
【0108】ここで、第1のシード値がパスフレーズか
ら生成されてもよく、第2のシード値が真の乱数であっ
てもよい。また、第1のシード値を用いて第1の乱数を
生成し、第1の生成ステップに第1の乱数を適用するス
テップを含んでもよい。さらに、擬似乱数発生器に前記
第2のシード値を用いて第2の乱数を生成し、第2の生
成ステップに第2の乱数を適用してもよい。
【0109】また、第1の制御ベクトルが2つの構成要
素として、第1の公用キーの使用を制御するための第1
の公用キー制御ベクトルおよび第1の私用キーの使用を
制御するための第1の私用キー制御ベクトルを有しても
よい。
【0110】あるいは、第2の制御ベクトルが2つの構
成要素として、第2の公用キーの使用を制御するための
第2の公用キー制御ベクトルおよび第2の私用キーの使
用を制御するための第2の私用キー制御ベクトルを有し
てもよい。
【0111】第1の制御ベクトルが第1の私用キーを制
御してその使用をディジタル署名の生成に制限しまた第
2の制御ベクトルが第2の私用キーを制御して、その使
用をディジタル署名の生成に制限し、かつキー分散プロ
トコルの一部として受信した暗号化されたキーを解読し
てもよい。
【0112】または、第1の制御ベクトルが第1の公用
キーの使用をディジタルシグニチャの検証に制限し、ま
た第2の制御ベクトルが第2の公用キーの使用をディジ
タルシグニチャの検証およびキー分散プロトコルにおけ
るキーの暗号化に制限してもよい。
【0113】あるいは、第1の制御ベクトルは第1の私
用キーによりディジタルシグニチャの生成を制御し、ま
た第2の制御ベクトルは第2の私用キーの使用をディジ
タルシグニチャの生成には禁止してもよい。
【0114】また本発明の公用キー、私用キーペア発生
器を含む公用キー暗号システムを管理するための方法
は、ユーザに知れている第1のシードを用いて第1の公
用キー、私用キーペアを生成し、また第1の公用キー、
私用キーペアの第1の使用を定義する第1の制御ベクト
ルを生成するステップと、ユーザに知れない第2のシー
ド値を用いて第2の公用キー、私用キーペアを生成し、
また第2の公用キー、私用キーペアの第2の私用キーペ
アを定義する第2の制御ベクトルを生成するステップ
と、第1の制御ベクトルを用いて第1の公用キー、私用
キーペアの使用を制御するステップと、第2の制御ベク
トルにより第2の公用キー、私用キーペアの使用を制御
するステップとを含んでいる。
【0115】ここで、第1のシード値がパスフレーズか
ら生成されてもよく、また第2のシード値が真の乱数で
あってもよい。
【0116】また、第1のシード値を用いて第1の乱数
を生成し、また第1の生成ステップに第1の乱数を適用
するステップの遂行を含んでもよい。
【0117】あるいは、擬似乱数発生器における第2の
シード値を用いて第2の乱数を生成し、また第2の生成
ステップに第2の乱数を適用するステップの遂行を含ん
でもよい。
【0118】第1の制御ベクトルが2つの構成要素とし
て、第1の公用キーの使用を制御するための第1の公用
キー制御ベクトルおよび第1の私用キーの使用を制御す
るための第1の私用キー制御ベクトルを有してもよい。
【0119】第2の制御ベクトルが2つの構成要素とし
て、第2の公用キーを制御するための第2の公用キー制
御ベクトルおよび第2の私用キーを制御するための第2
の私用キー制御ベクトルを有してもよい。
【0120】第1の制御ベクトルが、第1の私用キーを
制御して、その使用をディジタル署名の生成に制限し、
また第2の制御が第2の私用キーを制御して、その使用
をディジタル署名の生成およびキー分散プロトコルの一
部として受信した暗号化されたキーの解読を制限しても
よい。
【0121】第1の制御ベクトルが、第1の公用キーの
使用をディジタル署名の検証に制限し、また第2制御ベ
クトルが第2公用キーの使用をディジタル署名の生成お
よびキー分散プロトコルにおけるキーの暗号化を制限し
てもよい。
【0122】第1制御ベクトルが第1私用キーでもって
ディジタル署名の生成を制御ベクトルし、また第2制御
ベクトルが第2私用キーの使用がディジタル署名の生成
を行うことを禁止してもよい。
【0123】本発明の公用キー、私用キーペア発生器を
含む公用キー暗号システムを管理するための装置は、ユ
ーザに知られる第1シード値を用いて第1公用キー、私
用キーペアを生成し、また第1公用キー、私用キーペア
の第1使用を定義する第1制御ベクトルを生成する第1
生成手段と、ユーザに知られない第2シード値を用いて
第2公用キー、私用キーペアを生成し、また第2公用キ
ー、私用キーペアの第2使用を定義する第2制御ベクト
ルを生成する第2生成手段と、第1制御ベクトルを用い
て第1公用キー、私用キーペアの使用を制御するため
の、第1生成手段に連結される制御手段と、第2制御ベ
クトルにより第2公用キー、私用キーペアの使用を制御
するための、第2生成手段に連結される制御手段とを含
んでいる。
【0124】ここで、第1シード値がパスフレーズから
生成されてもよく、第2シード値が真の乱数であっても
よい。
【0125】第1生成手段が、第1シード値を用いて第
1乱数を生成し、また第1公用キー、私用キーペアの生
成に第1乱数を適用してもよい。
【0126】第2生成手段が、擬似乱数発生器において
第2シード値を用いて第2乱数を生成し、また第2公用
キー、私用キーペアの生成に第2乱数を適用してもよ
い。
【0127】第1制御ベクトルが2構成要素として、第
1公用キーの使用を制御するための第1公用キー制御ベ
クトルおよび第1私用キーの使用を制御するための第1
私用キー制御ベクトルを有してもよい。
【0128】第2制御ベクトルが2構成要素として、第
2公用キーの使用を制御するための第2公用キー制御ベ
クトルおよび第2私用キーを制御ベクトルするための第
2私用キー制御ベクトルを有してもよい。
【0129】第1制御ベクトルが第1私用キーの使用を
ディジタル署名の生成に制限するよう第1私用キーを制
御し、また第2制御ベクトルが第2私用キーの使用をデ
ィジタル署名の生成およびキー分散プロトコルの一部と
して受信される暗号化されたキーの解読に制限するよう
第2私用キーを制御してもよい。
【0130】第1制御ベクトルが第1公用キーの使用を
ディジタル署名の検証に制限し、また第2制御ベクトル
が第2公用キーの使用をディジタル署名の検証およびキ
ー分散プロトコルにおけるキーの暗号化を制限してもよ
い。
【0131】第1制御ベクトルは第1私用キーでもって
ディジタル署名の生成を制御し、第2制御ベクトルは第
2私用キーの使用がディジタル署名の生成を禁止しても
よい。
【図面の簡単な説明】
【図1】ユーザi,jが共用する暗号システムAにおい
てパスフレーズから公用キーおよび私用キーペア生成を
説明するブロック図。
【図2】ユーザiによる暗号システムAおよびBにおい
てパスフレーズから公用キーおよび私用キーペア生成を
説明するブロック図。
【図3】各々が暗号システムを含む多数のデータ処理装
置を含む通信ネットワーク10の説明図。
【図4】暗号システム22の構成を示すブロック図。
【図5】暗号化機構30の構成を示すブロック図。
【図6】暗号化機構30の暗号アルゴリズム144の構
成要素のブロック図。
【図7】RSAキー生成に含まれるステップを説明する
暗号化機構30のキー生成アルゴリズム151の構成要
素のブロック図。
【図8】「真の」乱数発生器180を説明するブロック
図。
【図9】初期にシードされる擬似乱数発生器190を説
明するブロック図。
【図10】動的にシードされる擬似乱数発生器200を
説明するブロック図。
【図11】本発明により動的にシードされる擬似乱数発
生器200を含むように修正された、暗号化機構30の
暗号アルゴリズム144構成要素のブロック図。
【図12】動的にシードされる擬似乱数発生器の特定例
を説明するブロック図。
【図13】本発明に従って入力パスフレーズから公用キ
ーおよび私用キーペアの生成に含まれるステップを示す
ブロック図。
【図14】本発明に従って公用キーおよび私用キーペア
生成(GPUPR)命令を説明するブロック図。
【図15】PUキーおよびPRキートークンを説明する
ブロック図。
【図16】PU、PRキートークンの制御ベクトル部分
を説明するブロック図。
【図17】パスフレーズ選択プロセスを説明するブロッ
ク図。
【図18】ユーザアプリケーションが提供する試用パス
フレーズテストのためパスフレーズフィルタを用いる暗
号システムを説明するブロック図。
【図19】パスフレーズフィルタの機能要素を説明する
ブロック図。
【符号の説明】
1,30 暗号化機構(CF) 2 暗号命令セット 3 キー記憶装置 4 暗号化機構アクセスプログラム 5 ユーザアプリケーションプログラム 6 パスフレーズフィルタユーティリティプログラム 7 チェックパスフレーズサービス 10 通信ネットワーク 20 データ処理装置 22 暗号システム 32 暗号キーデータセット(CKDS) 34 暗号化機構アクセスプログラム(CFAP) 36 アプリケーションプログラム(APPL) 42 アプリケーションプログラムA(APPL A) 43,44,45 46 キー記憶装置マネージャ 47 キー生成機能 48 キーパージ機能 52 GPUPR命令 140 機密保護範囲 142 命令処理装置 144,150 暗号アルゴリズム 146 暗号化機構環境記憶装置 151 キー生成アルゴリズム(KGA) 152 乱数生成アルゴリズム 180 「真」乱数発生器 181 ハードウエア回路 190 初期にシードされる擬似乱数発生器 191,201 アルゴリズム 194 シード記憶装置 200 動的にシードされる擬似乱数発生器
【手続補正書】
【提出日】平成4年11月16日
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】特許請求の範囲
【補正方法】変更
【補正内容】
【特許請求の範囲】
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ドナルド、ビー、ジョンソン アメリカ合衆国バージニア州、マナサス、 クリスタル、クリーク、レーン、11635 (72)発明者 アン、ブイ、リ アメリカ合衆国バージニア州、マナサス、 バトルフィールド、ドライブ、10227 (72)発明者 ウィリアム、シー、マーティン アメリカ合衆国ノースカロライナ州、コン コード、ヒリアード、レーン、1835 (72)発明者 ロスティスロー、プリマク アメリカ合衆国バージニア州、ダンフリー ズ、フェアウェイ、ドライブ、15900 (72)発明者 ジョン、ディー、ウィルキンズ アメリカ合衆国バージニア州、サマービ ル、ピー、オー、ボックス、8

Claims (15)

    【特許請求の範囲】
  1. 【請求項1】データ処理システムにおいて、公用キー、
    私用キーペア発生器を含む公用キー暗号システムを管理
    する方法であって、 ユーザに知られている第1のシード値を用いて第1の公
    用キー、私用キーペアを生成し、また前記第1の公用キ
    ー、私用キーペアの第1の使用を定義する第1の制御ベ
    クトルを生成するステップと、 ユーザに知られている第2のシード値を用いて第2の公
    用キー、私用キーペアを生成し、また前記第2の公用キ
    ー、私用キーペアの第2の使用を定義する第2の制御ベ
    クトルを生成するステップと、 前記第1の制御ベクトルを用いて前記第1の公用キー、
    私用キーペアの使用を制御するステップと、 前記第2の制御ベクトルを用いて前記第2の公用キー、
    私用キーペアの使用を制御するステップとを含むことを
    特徴とする方法。
  2. 【請求項2】データ処理システムにおいて、公用キー、
    私用キーペア発生器を含む公用キー暗号システムを管理
    する方法であって、 パスフレーズから導出される第1のシード値を用いて第
    1の乱数を生成するステップと、 ユーザには知られない第2のシード値を用いて第2の乱
    数を生成するステップと、 前記第1の乱数を用いて第1の公用キー、私用キーペア
    を生成し、また前記第1の公用キーおよび前記第1の私
    用キーの第1の使用を定義するために、それぞれ第1の
    公用キー制御ベクトルおよび第1の私用キー制御ベクト
    ルを生成するステップと、 前記第2の乱数を用いて第2の公用キー、私用キーペア
    を生成し、また前記第2の公用キーおよび前記第2の私
    用キーの第2の使用を定義するために、それぞれ第2の
    公用キー制御ベクトルおよび第2の私用キー制御ベクト
    ルを生成するステップと、 前記第1の公用キー制御ベクトルおよび前記第1の私用
    キー制御ベクトルを用いて、それぞれ前記第1の公用キ
    ーおよび前記第1の私用キーの使用を制御するステップ
    と、 前記第2の公用キー制御ベクトルおよび前記第2の私用
    キー制御ベクトルを用いて、それぞれ前記第2の公用キ
    ーおよび前記第2の私用キーの使用を制御するステップ
    とを含むことを特徴とする方法。
  3. 【請求項3】データ処理システムにおいて、キー発生器
    を有する暗号システムを管理する方法であって、 パスフレーズから導出される第1のシード値を用いて第
    1の乱数を生成するステップと、 ユーザに知られない第2のシード値を用いて第2の乱数
    を生成するステップと、 前記第1の乱数を用いて第1キーを生成し、また前記第
    1のキーの使用を制御するための第1の制御ベクトルを
    生成するステップと、 前記第2の乱数を用いて第2のキーを生成し、また前記
    第2のキーの第2の私用を制御するための第2の制御ベ
    クトルを生成するステップと、 前記第1の制御ベクトルにより前記第1のキーの使用を
    制御するステップと、 前記第2の制御ベクトルにより前記第2のキーの使用を
    制御するステップと、 前記第1のキーの前記第1の使用が、前記第2のキーの
    前記第2の使用と異なるステップとを含むことを特徴と
    する方法。
  4. 【請求項4】データ処理システムにおいて、公用キー、
    私用キーペア発生器を含む公用キー暗号システムを管理
    するための方法であって、 パスフレーズから導出される第1のシード値を用いて乱
    数を生成するステップと、 前記乱数を用いて公用キー、私用キーペアを生成し、前
    記第1の制御ベクトルは前記公用キーの使用を制御する
    もので、前記第2の制御ベクトルは前記私用キーの使用
    を制御するものであり、前記公用キーに対して前記第1
    の制御ベクトルを生成し、また前記私用キーに対して前
    記第2の制御ベクトルを生成するためのステップを含む
    ことを特徴とする方法。
  5. 【請求項5】データ処理システムにおいて、公用キー、
    私用キーペアを含む公用キー暗号システムを管理するた
    めの方法であって、 パスフレーズから導出されるシード値を用いて乱数を生
    成するステップと、 前記乱数を用いて公用キー、私用キーペアを生成するス
    テップとを含むことを特徴とする方法。
  6. 【請求項6】データ処理システムにおいて、公用キー、
    私用キーペア発生器を含む公用キー暗号システムを管理
    するための方法であって、 ユーザに知れている第1のシードを用いて第1の公用キ
    ー、私用キーペアを生成し、また前記第1の公用キー、
    私用キーペアの第1の使用を定義する第1の制御ベクト
    ルを生成するステップと、 ユーザに知れない第2のシード値を用いて第2の公用キ
    ー、私用キーペアを生成し、また前記第2の公用キー、
    私用キーペアの第2の使用を定義する第2の制御ベクト
    ルを生成するステップと、 前記第1の制御ベクトルを用いて前記第1の公用キー、
    私用キーペアの使用を制御するステップと、 前記第2の制御ベクトルにより前記第2の公用キー、私
    用キーペアの使用を制御するステップとを含む方法を実
    行することを特徴とする方法。
  7. 【請求項7】データ処理システムにおいて、公用キー、
    私用キーペア発生器を含む公用キー暗号システムを管理
    するための方法であって、 パスフレーズから導出される第1のシード値を用いて第
    1の乱数を生成するステップと、 ユーザに知られない第2のシード値を用いて第2の乱数
    を生成するステップと、 前記第1の乱数を用いて第1の公用キー、私用キーペア
    を生成し、また前記第1の公用キーおよび前記第1の私
    用キーの第1の使用をそれぞれ定義するための第1の公
    用制御キーベクトルおよび第2の私用キー制御ベクトル
    を生成するステップと、 前記第2の乱数を用いて第2の公用キー、私用キーペア
    を生成し、また前記第2の公用キーおよび前記第2の私
    用キーの第2の使用をそれぞれ定義するために、第2の
    公用キー制御ベクトルおよび第2の私用キー制御ベクト
    ルを生成するステップと、 前記第1の公用キー制御ベクトルおよび前記第1の私用
    キー制御ベクトルを使用して、それぞれ前記第1の公用
    キーおよび前記第1の私用キーの前記第1の使用を制御
    するステップと、 前記第2の公用キー制御ベクトルおよび前記第2の私用
    キー制御ベクトルを使用して、それぞれ前記第2の公用
    キーおよび前記第2の私用キーの使用を制御するステッ
    プとを含むことを特徴とする方法。
  8. 【請求項8】データ処理システムにおいて、キー発生器
    を有する暗号システムを管理するための方法であって、 パスフレーズから導出される第1のシード値を用いて第
    1の乱数を生成するステップと、 ユーザに知られない第2のシード値を用いて第2の乱数
    を生成するステップと、 前記第1の乱数を用いて第1のキーを生成し、また前記
    第1のキーの使用を制御するための第1の制御ベクトル
    を生成するステップと、 前記第2の乱数を用いて第2のキーを生成し、また前記
    第2のキーの第2の使用を制御するための第2の制御ベ
    クトルを生成するステップと、 前記第1の制御ベクトルにより前記第1のキーの使用を
    制御するステップと、 前記第2の制御ベクトルにより前記第2のキーの使用を
    制御するステップと、 前記第1のキーの第1の使用が前記第2のキーの前記第
    2の使用とは異なっているステップとを含むことを特徴
    とする方法。
  9. 【請求項9】データ処理システムにおいて、公用キー、
    私用キーペアを含む公用キー暗号システムを管理するた
    めの方法であって、 パスフレーズから導出される第1のシード値を用いて乱
    数を生成するステップと、 前記乱数を用いて公用キー、私用キーペアを生成し、ま
    た前記公用キーに対する第1の制御ベクトルおよび前記
    私用キーに対する第2の制御ベクトルを生成し、前記第
    1の制御ベクトルが前記公用キーの使用を制御し、前記
    第2の制御ベクトルが前記私用キーの使用を制御するス
    テップとを含むことを特徴とする方法。
  10. 【請求項10】データ処理システムにおいて、公用キ
    ー、私用キーペア発生器を含む公用キー暗号システムを
    管理するための方法であって、 パスフレーズから導出されるシード値を用いて乱数を生
    成するステップと、 前記乱数を用いて公用キー、私用キーペアを生成するス
    テップとを含むことを特徴とする方法。
  11. 【請求項11】データ処理システムにおいて、公用キ
    ー、私用キーペア発生器を含む公用キー暗号システムを
    管理するための装置であって、 ユーザに知られる第1シード値を用いて第1公用キー、
    私用キーペアを生成し、また前記第1公用キー、私用キ
    ーペアの第1使用を定義する第1制御ベクトルを生成す
    る第1生成手段と、 ユーザに知られない第2シード値を用いて第2公用キ
    ー、私用キーペアを生成し、また前記第2公用キー、私
    用キーペアの第2使用を定義する第2制御ベクトルを生
    成する第2生成手段と、 前記第1制御ベクトルを用いて前記第1公用キー、私用
    キーペアの使用を制御するための、前記第1生成手段に
    連結される制御手段と、 前記第2制御ベクトルにより前記第2公用キー、私用キ
    ーペアの使用を制御するための、前記第2生成手段に連
    結される前記制御手段とを含むことを特徴とする装置。
  12. 【請求項12】データ処理システムにおいて、公用キ
    ー、私用キーペア発生器を含む公用キー暗号システムを
    管理するための装置であって、 パスフレーズから導出される第1シード値を用いて第1
    乱数を生成するための第1生成手段と、 ユーザに知られない第2シード値を用いて第2乱数を生
    成するための第2生成手段と、 前記第1乱数を用いて第1公用キー、私用キーペアを生
    成し、また前記第1公用キーおよび前記第1私用キーの
    第1使用をそれぞれ定義するための第1公用キー制御ベ
    クトルおよび第1私用キー制御ベクトルを生成する前記
    第1生成手段と、 前記第2乱数を用いて第2公用キー、私用キーペアを生
    成し、また前記第2公用キーおよび前記第2私用キーの
    第2使用をそれぞれ定義するための第2公用キー制御ベ
    クトルおよび第2私用キー制御ベクトルを生成する前記
    第2生成手段と、 前記第1公用キー制御ベクトルおよび前記第1私用キー
    制御ベクトルをそれぞれ用いて、前記第1公用キーおよ
    び前記第1私用キーの使用を制御するための、前記第1
    生成手段に連結される制御手段と、 前記第2公用キー制御ベクトルおよび前記第2私用キー
    制御ベクトルをそれぞれ用いて、前記第2公用キーおよ
    び前記第2私用キーの使用を制御するための、前記第2
    生成手段に連結される制御手段とを含むことを特徴とす
    る装置。
  13. 【請求項13】データ処理システムにおいて、キー発生
    器を有する暗号システムを管理するための装置であっ
    て、 パスフレーズから導出される第1シード値を用いて第1
    乱数を生成するための第1生成手段と、 ユーザに知られない第2シード値を用いて第2乱数を生
    成するための第2生成手段と、 前記第1乱数を用いて第1キーを生成し、また前記第1
    キーの使用を制御するための第1制御ベクトルを生成す
    る前記第1生成手段と、 前記第2乱数を用いて第2キーを生成し、また前記第2
    キーの第2使用を制御するための第2制御ベクトルを生
    成する前記第2生成手段と、 前記第1制御ベクトルでもって前記第1キーの使用を制
    御するための前記第1生成手段に連結される制御手段
    と、 前記第2制御ベクトルでもって前記第2キーの使用を制
    御するための前記第2生成手段に連結される前記制御手
    段と、 前記第1キーの前記第1使用が前記第2キーの前記第2
    使用と異なることを含むことを特徴とする装置。
  14. 【請求項14】データ処理システムにおいて、公用キ
    ー、私用キーペア発生器を含む公用キー暗号システムを
    管理するための装置であって、 パスフレーズから導出される第1シード値を用いて乱数
    を生成する生成手段と、 前記乱数を用いて公用キー、私用キーペアを生成し、ま
    た前記公用キーに対する第1制御ベクトルおよび前記私
    用キーに対する第2制御ベクトルを生成し、前記第1制
    御ベクトルが前記公用キーの使用を制御し、前記第2制
    御ベクトルが前記私用キーの使用を制御する前記生成手
    段とを含むことを特徴とする装置。
  15. 【請求項15】データ処理システムにおいて、公用キ
    ー、私用キーペア発生器を含む公用キー暗号システムを
    管理するための装置であって、 パスフレーズから導出されるシード値を用いて乱数を生
    成する生成手段と、 前記乱数を用いて公用キー、私用キーペアを生成する前
    記生成手段とを含むことを特徴とする装置。
JP4231284A 1991-09-27 1992-08-06 公開鍵暗号システムを管理する装置 Expired - Fee Related JP2690004B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/766,533 US5201000A (en) 1991-09-27 1991-09-27 Method for generating public and private key pairs without using a passphrase
US766533 2001-01-19

Publications (2)

Publication Number Publication Date
JPH05224604A true JPH05224604A (ja) 1993-09-03
JP2690004B2 JP2690004B2 (ja) 1997-12-10

Family

ID=25076731

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4231284A Expired - Fee Related JP2690004B2 (ja) 1991-09-27 1992-08-06 公開鍵暗号システムを管理する装置

Country Status (4)

Country Link
US (1) US5201000A (ja)
EP (1) EP0534420A3 (ja)
JP (1) JP2690004B2 (ja)
CA (1) CA2075254A1 (ja)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002515613A (ja) * 1998-05-08 2002-05-28 サーティコム コーポレーション 秘密鍵の妥当性および確認
JP2002523974A (ja) * 1998-08-18 2002-07-30 シーメンス アクチエンゲゼルシヤフト 予め求められた非対称の暗号鍵対に対する秘密通信鍵を形成する方法および装置
JP2005295570A (ja) * 2004-04-02 2005-10-20 Microsoft Corp プライベートデータを露出せずに通信ネットワークを介してパスワードで保護されたプライベートデータを回復する方法およびシステム
JP2006513641A (ja) * 2003-01-07 2006-04-20 クゥアルコム・インコーポレイテッド 暗号鍵を入れ替えるためのシステム、装置及び方法
JP2007104731A (ja) * 2001-11-16 2007-04-19 Yazaki Corp 暗号キー管理装置
JP2007104732A (ja) * 2001-11-16 2007-04-19 Yazaki Corp 復号化装置
JP2010506310A (ja) * 2006-10-04 2010-02-25 マイクロソフト コーポレーション 文字位置ベースのパスワードの回復
JP2010093860A (ja) * 1997-10-14 2010-04-22 Certicom Corp 鍵認証方式
JP2013029618A (ja) * 2011-07-27 2013-02-07 Canon Inc 情報処理装置、情報処理方法、及びプログラム
US8594324B2 (en) 1998-10-14 2013-11-26 Certicom Corp. Key validation scheme
US8953787B2 (en) 1996-05-17 2015-02-10 Certicom Corp. Strengthened public key protocol

Families Citing this family (146)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5418854A (en) * 1992-04-28 1995-05-23 Digital Equipment Corporation Method and apparatus for protecting the confidentiality of passwords in a distributed data processing system
US5491752A (en) * 1993-03-18 1996-02-13 Digital Equipment Corporation, Patent Law Group System for increasing the difficulty of password guessing attacks in a distributed authentication scheme employing authentication tokens
WO1995009410A1 (fr) * 1993-09-29 1995-04-06 Pumpkin House Incorporated Dispositif et procede de chiffrement/dechiffrement et systeme de communication a chiffrement/dechiffrement
JP2723365B2 (ja) * 1993-11-08 1998-03-09 ヒューズ・エアクラフト・カンパニー キーイングおよび認定材料のための保護された分配プロトコル
US5541997A (en) * 1994-01-31 1996-07-30 Motorola, Inc. Method and apparatus for detecting correctly decrypted communications
JPH07271865A (ja) 1994-04-01 1995-10-20 Mitsubishi Corp データベース著作権管理方法
US6088797A (en) * 1994-04-28 2000-07-11 Rosen; Sholom S. Tamper-proof electronic processing device
US6185546B1 (en) 1995-10-04 2001-02-06 Intel Corporation Apparatus and method for providing secured communications
US5588060A (en) * 1994-06-10 1996-12-24 Sun Microsystems, Inc. Method and apparatus for a key-management scheme for internet protocols
US7302415B1 (en) * 1994-09-30 2007-11-27 Intarsia Llc Data copyright management system
DE69532434T2 (de) 1994-10-27 2004-11-11 Mitsubishi Corp. Gerät für Dateiurheberrechte-Verwaltungssystem
US6424715B1 (en) * 1994-10-27 2002-07-23 Mitsubishi Corporation Digital content management system and apparatus
US5606613A (en) * 1994-12-22 1997-02-25 Pitney Bowes Inc. Method for identifying a metering accounting vault to digital printer
US8595502B2 (en) 1995-09-29 2013-11-26 Intarsia Software Llc Data management system
US5933503A (en) * 1996-03-15 1999-08-03 Novell, Inc Controlled modular cryptography apparatus and method
JP2842389B2 (ja) * 1996-07-11 1999-01-06 日本電気株式会社 乱数発生装置
WO1998007253A1 (en) * 1996-08-16 1998-02-19 Bell Communications Research, Inc. Accelerating public-key cryptography by precomputing randomly generated pairs
US6078667A (en) * 1996-10-10 2000-06-20 Certicom Corp. Generating unique and unpredictable values
US5910956A (en) * 1996-11-05 1999-06-08 Northrop Gruman Corporation Random time interval generator
US6317832B1 (en) * 1997-02-21 2001-11-13 Mondex International Limited Secure multiple application card system and process
US6575372B1 (en) 1997-02-21 2003-06-10 Mondex International Limited Secure multi-application IC card system having selective loading and deleting capability
US6328217B1 (en) 1997-05-15 2001-12-11 Mondex International Limited Integrated circuit card with application history list
US6164549A (en) 1997-05-15 2000-12-26 Mondex International Limited IC card with shell feature
US6385723B1 (en) 1997-05-15 2002-05-07 Mondex International Limited Key transformation unit for an IC card
US6488211B1 (en) 1997-05-15 2002-12-03 Mondex International Limited System and method for flexibly loading in IC card
US6220510B1 (en) 1997-05-15 2001-04-24 Mondex International Limited Multi-application IC card with delegation feature
JP3076273B2 (ja) * 1997-07-07 2000-08-14 日本電気株式会社 鍵回復条件暗号化装置および復号装置
US6212635B1 (en) * 1997-07-18 2001-04-03 David C. Reardon Network security system allowing access and modification to a security subsystem after initial installation when a master token is in place
US7047415B2 (en) 1997-09-22 2006-05-16 Dfs Linkages, Inc. System and method for widely witnessed proof of time
US7017046B2 (en) 1997-09-22 2006-03-21 Proofspace, Inc. System and method for graphical indicia for the certification of records
EP1018239A4 (en) * 1997-09-22 2005-07-13 Proofspace Inc METHOD AND SYSTEM FOR DIGITAL HORODATORS WITH TRANSIENT KEYS
US6381696B1 (en) 1998-09-22 2002-04-30 Proofspace, Inc. Method and system for transient key digital time stamps
FI105253B (fi) * 1997-11-11 2000-06-30 Sonera Oyj Siemenluvun generointi
US6247127B1 (en) * 1997-12-19 2001-06-12 Entrust Technologies Ltd. Method and apparatus for providing off-line secure communications
US6055316A (en) * 1997-12-26 2000-04-25 Sun Microsystems, Inc. System and method for deriving an appropriate initialization vector for secure communications
US6357665B1 (en) 1998-01-22 2002-03-19 Mondex International Limited Configuration of IC card
US6736325B1 (en) 1998-01-22 2004-05-18 Mondex International Limited Codelets
US6742120B1 (en) 1998-02-03 2004-05-25 Mondex International Limited System and method for controlling access to computer code in an IC card
JPH11225138A (ja) * 1998-02-06 1999-08-17 Matsushita Electric Ind Co Ltd 暗号処理装置、暗号処理方法及びその方法を記録した記録媒体
US5974144A (en) * 1998-02-25 1999-10-26 Cipheractive Ltd. System for encryption of partitioned data blocks utilizing public key methods and random numbers
US6041122A (en) * 1998-02-27 2000-03-21 Intel Corporation Method and apparatus for hiding crytographic keys utilizing autocorrelation timing encoding and computation
US6615350B1 (en) 1998-03-23 2003-09-02 Novell, Inc. Module authentication and binding library extensions
US6751735B1 (en) 1998-03-23 2004-06-15 Novell, Inc. Apparatus for control of cryptography implementations in third party applications
US6532451B1 (en) 1998-03-23 2003-03-11 Novell, Inc. Nested strong loader apparatus and method
US6701433B1 (en) 1998-03-23 2004-03-02 Novell, Inc. Method and apparatus for escrowing properties used for accessing executable modules
US7092523B2 (en) * 1999-01-11 2006-08-15 Certicom Corp. Method and apparatus for minimizing differential power attacks on processors
GB9902687D0 (en) * 1999-02-08 1999-03-31 Hewlett Packard Co Cryptographic protocol
DE19935285B4 (de) * 1999-07-27 2012-07-05 Deutsche Telekom Ag Verfahren zur Generierung/Regenerierung eines Chiffrierschlüssels für ein Kryptographieverfahren
DE19935286A1 (de) * 1999-07-27 2001-02-01 Deutsche Telekom Ag Verfahren zur sicheren verteilten Generierung eines Chiffrierschlüssels
US6886098B1 (en) * 1999-08-13 2005-04-26 Microsoft Corporation Systems and methods for compression of key sets having multiple keys
AU6640500A (en) * 1999-08-13 2001-03-19 Microsoft Corporation Methods and systems of protecting digital content
US7065216B1 (en) 1999-08-13 2006-06-20 Microsoft Corporation Methods and systems of protecting digital content
JP2001066989A (ja) * 1999-08-31 2001-03-16 Fuji Xerox Co Ltd 一方向性関数生成方法,一方向性関数値生成装置,証明装置,認証方法および認証装置
US20080082446A1 (en) * 1999-10-01 2008-04-03 Hicks Christian B Remote Authorization for Unlocking Electronic Data System and Method
US6834351B1 (en) 1999-10-29 2004-12-21 Gateway, Inc. Secure information handling system
TW548940B (en) * 1999-11-29 2003-08-21 Gen Instrument Corp Generation of a mathematically constrained key using a one-way function
FR2807245B1 (fr) * 2000-03-30 2002-05-24 France Telecom Procede de protection d'une puce electronique contre la fraude
US7222233B1 (en) * 2000-09-14 2007-05-22 At&T Corp. Method for secure remote backup
US6700076B2 (en) * 2000-09-28 2004-03-02 Eic Corporation Multi-layer interconnect module and method of interconnection
US9047609B2 (en) * 2000-11-29 2015-06-02 Noatak Software Llc Method and system for dynamically incorporating advertising content into multimedia environments
US7409061B2 (en) * 2000-11-29 2008-08-05 Noatak Software Llc Method and system for secure distribution of subscription-based game software
US7120799B2 (en) * 2000-12-15 2006-10-10 International Business Machines Corporation Method and apparatus for dual hardware and software cryptography
FR2823927A1 (fr) * 2001-04-18 2002-10-25 Romain Hudelot Procede d'authentification avec securisation cryptographique asymetrique dynamique
US7251326B2 (en) 2001-06-29 2007-07-31 Harris Corporation Method and apparatus for data encryption
US20030016823A1 (en) * 2001-07-05 2003-01-23 Shine Chung Method and apparatus of using irrational numbers in random number generators for cryptography
FR2827981A1 (fr) * 2001-07-27 2003-01-31 Thomson Licensing Sa Installation et procede de gestion d'achat de contenus numeriques diffuses, terminal, moyens de diffusion, de gestion de transactions et de telechargement pour une telle installation
JP2003216037A (ja) * 2001-11-16 2003-07-30 Yazaki Corp 暗号キー、暗号化装置、暗号化復号化装置、暗号キー管理装置及び復号化装置
JP4291970B2 (ja) * 2001-12-20 2009-07-08 富士通株式会社 暗号処理装置
US7136867B1 (en) * 2002-04-08 2006-11-14 Oracle International Corporation Metadata format for hierarchical data storage on a raw storage device
US7672945B1 (en) 2002-04-08 2010-03-02 Oracle International Corporation Mechanism for creating member private data in a global namespace
US6988204B2 (en) * 2002-04-16 2006-01-17 Nokia Corporation System and method for key distribution and network connectivity
US7085933B2 (en) * 2002-06-11 2006-08-01 Lenvo (Singapore) Pte, Ltd. Computer system apparatus and method for improved assurance of authentication
JP4007873B2 (ja) * 2002-07-09 2007-11-14 富士通株式会社 データ保護プログラムおよびデータ保護方法
US7209561B1 (en) 2002-07-19 2007-04-24 Cybersource Corporation System and method for generating encryption seed values
US7274792B2 (en) * 2002-08-09 2007-09-25 Broadcom Corporation Methods and apparatus for initialization vector processing
US20040103325A1 (en) * 2002-11-27 2004-05-27 Priebatsch Mark Herbert Authenticated remote PIN unblock
US20040109567A1 (en) * 2002-12-05 2004-06-10 Canon Kabushiki Kaisha Encryption key generation in embedded devices
EP1435558A1 (en) * 2003-01-02 2004-07-07 Texas Instruments Incorporated On-device random number generator
US7424115B2 (en) * 2003-01-30 2008-09-09 Nokia Corporation Generating asymmetric keys in a telecommunications system
US7725740B2 (en) * 2003-05-23 2010-05-25 Nagravision S.A. Generating a root key for decryption of a transmission key allowing secure communications
US20070100602A1 (en) * 2003-06-17 2007-05-03 Sunhee Kim Method of generating an exceptional pronunciation dictionary for automatic korean pronunciation generator
KR101000918B1 (ko) * 2003-09-01 2010-12-13 삼성전자주식회사 공개 키/개인 키 쌍을 재사용하는 장치 및 방법
WO2005031545A1 (de) * 2003-09-30 2005-04-07 Siemens Aktiengesellschaft Einräumung eines zugriffs auf ein computerbasiertes objekt
US7532723B2 (en) * 2003-11-24 2009-05-12 Interdigital Technology Corporation Tokens/keys for wireless communications
US20070121939A1 (en) * 2004-01-13 2007-05-31 Interdigital Technology Corporation Watermarks for wireless communications
US20050220322A1 (en) * 2004-01-13 2005-10-06 Interdigital Technology Corporation Watermarks/signatures for wireless communications
TWI369091B (en) * 2004-01-13 2012-07-21 Interdigital Tech Corp Orthogonal frequency division multiplexing (ofdm) method and apparatus for protecting and authenticating wirelessly transmitted digital information
AR047882A1 (es) * 2004-02-18 2006-03-01 Interdigital Tech Corp Un metodo y un sistema para utilizar marcas de agua en sistemas de comunicacion
US7711120B2 (en) * 2004-07-29 2010-05-04 Infoassure, Inc. Cryptographic key management
US7483943B2 (en) * 2004-09-21 2009-01-27 Microsoft Corporation Reliable messaging using clocks with synchronized rates
US7536016B2 (en) * 2004-12-17 2009-05-19 Microsoft Corporation Encrypted content data structure package and generation thereof
US8295484B2 (en) * 2004-12-21 2012-10-23 Broadcom Corporation System and method for securing data from a remote input device
JP4372061B2 (ja) * 2005-07-01 2009-11-25 パナソニック株式会社 機密情報実装システム及びlsi
US20070143216A1 (en) * 2005-12-16 2007-06-21 Benaloh Josh D Data Signal with a Database and a Compressed Key
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
WO2008054512A2 (en) * 2006-04-19 2008-05-08 Stepnexus Holdings Methods and systems for ic card application loading
KR100710271B1 (ko) * 2006-05-10 2007-04-20 엘지전자 주식회사 외부기기와 티브이의 데이터 재생 방법 및 장치
US8243930B2 (en) * 2007-03-20 2012-08-14 Harris Technology, Llc Counterfeit prevention system based on random processes and cryptography
US8824672B1 (en) * 2007-04-12 2014-09-02 Iowa State University Research Foundation Reconfigurable block encryption logic
US8060750B2 (en) * 2007-06-29 2011-11-15 Emc Corporation Secure seed provisioning
US8307210B1 (en) 2008-05-02 2012-11-06 Emc Corporation Method and apparatus for secure validation of tokens
US9087219B2 (en) * 2008-06-16 2015-07-21 Infineon Technologies Ag Circuit with a plurality of modes of operation
MY151900A (en) * 2008-08-08 2014-07-14 Univ Putra Malaysia Chaotic asymmetric encryption process for data security
FR2946207A1 (fr) * 2009-05-28 2010-12-03 Proton World Internat Nv Protection d'une generation de nombres premiers pour algorithme rsa
WO2011077269A1 (en) * 2009-12-24 2011-06-30 Nds Limited Private key compression
IL204565A0 (en) * 2010-03-17 2010-11-30 Nds Ltd Data expansion using an approximate method
US8739260B1 (en) 2011-02-10 2014-05-27 Secsign Technologies Inc. Systems and methods for authentication via mobile communication device
US8719952B1 (en) * 2011-03-25 2014-05-06 Secsign Technologies Inc. Systems and methods using passwords for secure storage of private keys on mobile devices
US9092283B2 (en) * 2012-03-30 2015-07-28 Freescale Semiconductor, Inc. Systems with multiple port random number generators and methods of their operation
US8856198B2 (en) 2012-03-30 2014-10-07 Freescale Semiconductor, Inc. Random value production methods and systems
KR101301609B1 (ko) * 2012-05-31 2013-08-29 서울대학교산학협력단 비밀키 생성 장치 및 방법, 그리고 그 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 기록매체
US10075471B2 (en) 2012-06-07 2018-09-11 Amazon Technologies, Inc. Data loss prevention techniques
US9286491B2 (en) 2012-06-07 2016-03-15 Amazon Technologies, Inc. Virtual service provider zones
US9590959B2 (en) 2013-02-12 2017-03-07 Amazon Technologies, Inc. Data security service
US10084818B1 (en) 2012-06-07 2018-09-25 Amazon Technologies, Inc. Flexibly configurable data modification services
US9281943B1 (en) * 2012-06-27 2016-03-08 Emc Corporation Defending against factoring by collision
US9547771B2 (en) 2013-02-12 2017-01-17 Amazon Technologies, Inc. Policy enforcement with associated data
US9608813B1 (en) 2013-06-13 2017-03-28 Amazon Technologies, Inc. Key rotation techniques
US9705674B2 (en) 2013-02-12 2017-07-11 Amazon Technologies, Inc. Federated key management
US9367697B1 (en) 2013-02-12 2016-06-14 Amazon Technologies, Inc. Data security with a security module
US9300464B1 (en) 2013-02-12 2016-03-29 Amazon Technologies, Inc. Probabilistic key rotation
US10211977B1 (en) 2013-02-12 2019-02-19 Amazon Technologies, Inc. Secure management of information using a security module
US10467422B1 (en) 2013-02-12 2019-11-05 Amazon Technologies, Inc. Automatic key rotation
US10210341B2 (en) 2013-02-12 2019-02-19 Amazon Technologies, Inc. Delayed data access
US9264222B2 (en) 2013-02-28 2016-02-16 Apple Inc. Precomputing internal AES states in counter mode to protect keys used in AES computations
US9444694B1 (en) * 2013-03-01 2016-09-13 Tibco Software Inc. Virtual clusters to provide fault containment
US9369276B2 (en) 2013-03-14 2016-06-14 Signority Inc. Digital signature authentication without a certification authority
US9641328B1 (en) * 2014-03-10 2017-05-02 Ionu Security, Inc. Generation of public-private key pairs
US10432398B1 (en) 2014-04-29 2019-10-01 Robert G. Batchko Prime number prediction
US9397835B1 (en) 2014-05-21 2016-07-19 Amazon Technologies, Inc. Web of trust management in a distributed system
US9438421B1 (en) 2014-06-27 2016-09-06 Amazon Technologies, Inc. Supporting a fixed transaction rate with a variably-backed logical cryptographic key
US9866392B1 (en) 2014-09-15 2018-01-09 Amazon Technologies, Inc. Distributed system web of trust provisioning
US10235399B2 (en) 2014-11-05 2019-03-19 Hewlett Packard Enterprise Development Lp Methods and systems for determining hardware sizing for storage array systems
US10469477B2 (en) 2015-03-31 2019-11-05 Amazon Technologies, Inc. Key export techniques
JP2018128783A (ja) * 2017-02-07 2018-08-16 ルネサスエレクトロニクス株式会社 乱数生成装置及び乱数生成方法
US10985915B2 (en) 2017-04-12 2021-04-20 Blackberry Limited Encrypting data in a pre-associated state
US11552795B2 (en) 2018-01-22 2023-01-10 Microsoft Technology Licensing, Llc Key recovery
US10911215B2 (en) * 2018-02-12 2021-02-02 Gideon Samid BitMap lattice: a cyber tool comprised of geometric construction
US11228583B2 (en) * 2018-10-01 2022-01-18 Citrix Systems, Inc. Systems and methods for slogan based sharing of living SaaS objects
US11349671B2 (en) 2019-01-24 2022-05-31 Salesforce.Com, Inc. Authenticating communication
US11509467B2 (en) 2020-02-25 2022-11-22 Microsoft Technology Licensing, Llc Story assisted mnemonic phrase
US11329816B2 (en) 2020-06-01 2022-05-10 Hewlett Packard Enterprise Development Lp Encryption keys for removable storage media
US11537740B2 (en) 2021-01-04 2022-12-27 Bank Of America Corporation System for enhanced data security using versioned encryption
EP4327502A1 (en) * 2021-04-23 2024-02-28 Telefonaktiebolaget LM Ericsson (publ) Systems and methods of physically unclonable function (puf)-based key derivation function
GR1010217B (el) * 2021-07-21 2022-03-29 Παναγιωτης Εμμανουηλ Ανδρεαδακης Ειδικη συσκευη διαχειρισης κρυπτογραφικων κλειδιων μεσω συγχρονισμου
US20240056651A1 (en) * 2022-08-09 2024-02-15 Dish Network, L.L.C. Digital rights management using a gateway/set top box without a smart card

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63146631A (ja) * 1986-12-10 1988-06-18 Nec Corp キ−生成装置
JPH02300784A (ja) * 1989-04-27 1990-12-12 Internatl Business Mach Corp <Ibm> 暗号キー検証方法及び装置

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4196310A (en) * 1976-04-09 1980-04-01 Digital Data, Inc. Secure SCA broadcasting system including subscriber actuated portable receiving terminals
US4200770A (en) * 1977-09-06 1980-04-29 Stanford University Cryptographic apparatus and method
US4218582A (en) * 1977-10-06 1980-08-19 The Board Of Trustees Of The Leland Stanford Junior University Public key cryptographic apparatus and method
US4405829A (en) * 1977-12-14 1983-09-20 Massachusetts Institute Of Technology Cryptographic communications system and method
US4736423A (en) * 1985-04-30 1988-04-05 International Business Machines Corporation Technique for reducing RSA Crypto variable storage
US4850017A (en) * 1987-05-29 1989-07-18 International Business Machines Corp. Controlled use of cryptographic keys via generating station established control values
US4908861A (en) * 1987-08-28 1990-03-13 International Business Machines Corporation Data authentication using modification detection codes based on a public one way encryption function
US4992783A (en) * 1988-04-04 1991-02-12 Motorola, Inc. Method and apparatus for controlling access to a communication system
US4941176A (en) * 1988-08-11 1990-07-10 International Business Machines Corporation Secure management of keys using control vectors
US4924514A (en) * 1988-08-26 1990-05-08 International Business Machines Corporation Personal identification number processing using control vectors
US4924515A (en) * 1988-08-29 1990-05-08 International Business Machines Coprporation Secure management of keys using extended control vectors
US4918728A (en) * 1989-08-30 1990-04-17 International Business Machines Corporation Data cryptography operations using control vectors
US5073934A (en) * 1990-10-24 1991-12-17 International Business Machines Corporation Method and apparatus for controlling the use of a public key, based on the level of import integrity for the key
US5142578A (en) * 1991-08-22 1992-08-25 International Business Machines Corporation Hybrid public key algorithm/data encryption algorithm key distribution method based on control vectors
US5164988A (en) * 1991-10-31 1992-11-17 International Business Machines Corporation Method to establish and enforce a network cryptographic security policy in a public key cryptosystem

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63146631A (ja) * 1986-12-10 1988-06-18 Nec Corp キ−生成装置
JPH02300784A (ja) * 1989-04-27 1990-12-12 Internatl Business Mach Corp <Ibm> 暗号キー検証方法及び装置

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8983064B2 (en) 1996-05-17 2015-03-17 Certicom Corp. Strengthened public key protocol
US8953787B2 (en) 1996-05-17 2015-02-10 Certicom Corp. Strengthened public key protocol
JP2010093860A (ja) * 1997-10-14 2010-04-22 Certicom Corp 鍵認証方式
JP2013042555A (ja) * 1997-10-14 2013-02-28 Certicom Corp 鍵認証方式
JP4731686B2 (ja) * 1998-05-08 2011-07-27 サーティコム コーポレーション 秘密鍵の妥当性および確認
JP2002515613A (ja) * 1998-05-08 2002-05-28 サーティコム コーポレーション 秘密鍵の妥当性および確認
JP2002523974A (ja) * 1998-08-18 2002-07-30 シーメンス アクチエンゲゼルシヤフト 予め求められた非対称の暗号鍵対に対する秘密通信鍵を形成する方法および装置
US8594324B2 (en) 1998-10-14 2013-11-26 Certicom Corp. Key validation scheme
JP2007104732A (ja) * 2001-11-16 2007-04-19 Yazaki Corp 復号化装置
JP2007104731A (ja) * 2001-11-16 2007-04-19 Yazaki Corp 暗号キー管理装置
JP4800624B2 (ja) * 2003-01-07 2011-10-26 クゥアルコム・インコーポレイテッド 暗号鍵を入れ替えるためのシステム、装置及び方法
US8259947B2 (en) 2003-01-07 2012-09-04 Qualcomm Incorporated Recreating a cryptographic key in a replacement device
JP2006513641A (ja) * 2003-01-07 2006-04-20 クゥアルコム・インコーポレイテッド 暗号鍵を入れ替えるためのシステム、装置及び方法
JP2005295570A (ja) * 2004-04-02 2005-10-20 Microsoft Corp プライベートデータを露出せずに通信ネットワークを介してパスワードで保護されたプライベートデータを回復する方法およびシステム
JP2010506310A (ja) * 2006-10-04 2010-02-25 マイクロソフト コーポレーション 文字位置ベースのパスワードの回復
JP2013029618A (ja) * 2011-07-27 2013-02-07 Canon Inc 情報処理装置、情報処理方法、及びプログラム

Also Published As

Publication number Publication date
US5201000A (en) 1993-04-06
JP2690004B2 (ja) 1997-12-10
EP0534420A2 (en) 1993-03-31
EP0534420A3 (en) 1994-06-08
CA2075254A1 (en) 1993-03-28

Similar Documents

Publication Publication Date Title
JP2690004B2 (ja) 公開鍵暗号システムを管理する装置
Denning Cryptography and data security
Hellman An overview of public key cryptography
Stallings Cryptography and network security, 4/E
Diffie et al. Privacy and authentication: An introduction to cryptography
Coppersmith et al. A proposed mode for triple-DES encryption
Bishop Introduction to Cryptography with java Applets
US5073934A (en) Method and apparatus for controlling the use of a public key, based on the level of import integrity for the key
Bellare et al. Big-key symmetric encryption: Resisting key exfiltration
CN110235409A (zh) 使用同态加密被保护的rsa签名或解密的方法
US11349668B2 (en) Encryption device and decryption device
US11336425B1 (en) Cryptographic machines characterized by a Finite Lab-Transform (FLT)
US20080165954A1 (en) System for encrypting and decrypting data using derivative equations and factors
Haunts Applied Cryptography in .NET and Azure Key Vault
Bowne Hands-On Cryptography with Python: Leverage the power of Python to encrypt and decrypt data
EP3475825B1 (en) Cryptographic operations employing non-linear share encoding for protecting from external monitoring attacks
Buell Fundamentals of cryptography: introducing mathematical and algorithmic foundations
Gjøsteen Security notions for disk encryption
Song Optimization and guess-then-solve attacks in cryptanalysis
Popoola Data Integrity Using Caesar Cipher and Residue Number System
Rubinstein-Salzedo et al. The RSA cryptosystem
Kaptchuk New Applications of Public Ledgers
Van Der Merwe et al. Security in banking
Dougherty et al. Cryptology
Hellwig et al. Blockchain Cryptography: Part 1

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20070829

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20080829

Year of fee payment: 11

LAPS Cancellation because of no payment of annual fees