JPH0816825B2 - 暗号装置及び方法 - Google Patents

暗号装置及び方法

Info

Publication number
JPH0816825B2
JPH0816825B2 JP20711489A JP20711489A JPH0816825B2 JP H0816825 B2 JPH0816825 B2 JP H0816825B2 JP 20711489 A JP20711489 A JP 20711489A JP 20711489 A JP20711489 A JP 20711489A JP H0816825 B2 JPH0816825 B2 JP H0816825B2
Authority
JP
Japan
Prior art keywords
control vector
key
cryptographic
bit
input
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP20711489A
Other languages
English (en)
Other versions
JPH02106787A (ja
Inventor
ステイブン・エム・マチイース
デニス・ジイー・アブラハム
ウイリアム・シイー・アーノルド
ドナルド・ビイー・ジヨンソン
ラメシユ・ケイ・カーン
アン・ヴイ・リ
ロステイスロー・プライマツク
ステイブ・アール・ホワイト
ジヨン・デイー・ウイルキンズ
Original Assignee
インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン filed Critical インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン
Publication of JPH02106787A publication Critical patent/JPH02106787A/ja
Publication of JPH0816825B2 publication Critical patent/JPH0816825B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Description

【発明の詳細な説明】 A.産業上の利用分野 本発明は、広くデータ処理技術に関し、特にデータ処
理における暗号処理適用業務に関する。
B.従来技術及びその課題 本発明に関する以下の関連特許出願を、参考文献とし
て挙げる。
(a)B.ブラッチェル他による米国特許第4850017号
「制御値確立のための生成装置による暗号キーの制
御」。
(b)S.マチアス他による米国特許第4941176号「制御
ベクトルによるキーの機密保護管理」。
(c)S.マチアス他による米国特許第4918728号「制御
ベクトルによるデータの暗号処理」。
(d)S.マチアス他による米国特許第4924514号「制御
ベクトルによるPIN処理」。
(e)B.ブラッチェル他による米国特許第4908861号
「公開一方向暗号化関数に基づく修正探索コードによる
データ確認」。
制御ベクトルの概念: 制御ベクトルとは、暗号キーの使用属性を定義し、あ
るネットワーク装置から別の装置への暗号キー伝達を制
御する、簡単なデータ構造である。制御ベクトルは暗号
化手順によってキーに結合し暗号を形成するが、この手
順によると、制御ベクトルが暗号ハードウェアに正しく
適用された場合のみ、キーが非暗号化(decrypt)され
る。
第7図は、64ビット制御ベクトルを128ビット暗号キ
ーに暗号化結合するシステムであり、前述の関連特許出
願(ブラッチェル他及びマチアス他著)に記載されてい
る。簡便のため、平文XをキーKにより暗号化する手順
をeK(X)=Yと書き表わす。(Yはその結果生じる暗
号文を示す。)その逆の、暗号文YをキーKにより解読
して平文Xを再生する手順をdK(Y)=Xと書き表わ
す。128ビットのキー暗号化キーKK(KKLと名付ける左半
分64ビットと、KKRと名付ける右半分64ビットより成
る)及びレジスタ40′の64ビット制御ベクトルCによ
り、64ビット・キーKを暗号化する手順は、前述の「制
御ベクトルによるキーの機密保護管理」(マチアス他)
に記載される多重暗号化の応用であるが、これをeKKL+
C(dKKR+C(eKKL+C(K)))と書き表わす。
“+”は排他的論理和を意味する。暗号化は以下の手順
で行われる。まず排他的論理和装置46において、64ビッ
ト制御ベクトルCとレジス42のKKL、KKRとの排他的論理
和をそれぞれ求める。代わって暗号化装置41において、
レジスタ44のKをKKL+Cにより暗号化し、その結果を
非暗号化装置43においてKKR+Cにより非暗号化(復号
化ともいう。以下、同じ)し、その結果を暗号化装置45
においてKKL+Cにより暗号化する。eKKL+C(dKKR+
C(eKKL+C(K)))と書くのは煩雑なので、排他的
論理和操作、すなわちKK(より正確にはKKLとKKR各々)
との排他的論理和を求める操作をKK.Cと書き表わす。*
KKと書くと、キーが64ビットでなく128ビットであるこ
とを示す。つまり、KKはアステリスクが付くと128ビッ
ト・キー、アステリスクなしだと64ビット・キーであ
る。e*KK.C(K)は、CとKKの左半分及び右半分との
排他的論理和結果の128ビット・キーKKによるKを暗号
化することを意味する。
第8図に示すのは、暗号化された値K(Y=e*KK.C
(K))を、キーKK及び制御ベクトルCを使って非暗号
化するシステムである。これは以下の手順で行われる。
まず前述のようにCとKKL、KKRの排他的論理和をそれぞ
れ求める。代わって非暗号化装置47において、暗号化値
KをKKL+Cにより非暗号化し、その結果を暗号化装置4
8においてKKR+Cにより暗号化し、その結果を非暗号化
装置49においてKKL+Cにより非暗号化する。第8図に
よれば、KK、C、及びeKKL+C(dKKR+C(eKKL+C
(K)))が正しく指定された場合のみKを再生できる
のであり、Cのたとえ1ビットでも間違って指定すれ
ば、不定不測の値が現れることが判断できよう。
(より正確に言うと、もしもCと等しくない任意長制御
ベクトルC′及びKKにより暗号文eKKL+C(dKKR+C
(eKKL+C(K))))が非暗号化されたとしても、K
に等しい平文が再生される可能性は2**64分の1であ
り、暗号処理には影響ない。侵入者は、直接検索という
単純方法を用いた暗号分析を行なってKの値を偶然発見
したり、求める平文が現れるまであらゆるキーを使って
暗号文を非暗号化するかもしれないが、いずれの場合も
かなりの回数の暗号化/非暗号化手順が必要となる。) ANSI X3.92(1981年)に述べるように、データ暗号
化アルゴリズム(DEA)は、第7図及び第8図に記述す
る暗号化/非暗号化方式を使用して、制御ベクトルで操
作が可能な暗号化アルゴリズムの一例である。制御ベク
トル概念は、キーの長さと等しい制御ベクトルを指定す
ることにより同様のいずれの暗号文にも、また多重暗号
技術を用いれば多重暗号文にも適用できることが判断さ
れよう。
暗号装置のネットワーク構成: 第3図に、暗号装置のネットワーク接続(ホスト、制
御装置、ワークステーション等)を示す。これはデータ
処理装置2の第一暗号装置100及び、暗号配布チャネル1
000を通じて接続された他の暗号装置200、300・・・よ
り構成され、暗号のやりとりが可能である。すなわち送
信装置が暗号化、受信装置が非暗号化を行うことによ
り、各装置は秘密通信が行える。各装置は、送信装置で
準備されたメッセージにメッセージ確認コードを付加す
ることによってデータ伝送を確認し、受信装置でメッセ
ージ及びメッセージ確認コードを確認する。そして各装
置は、暗号装置内で安全にキーの生成・暗号化を行い、
暗号化されたキー受信装置へ伝送される。受信装置内に
はキー・データ・セット(後にデータを暗号化し確認す
る際、あるいは他のキー管理操作のため使用する)があ
り、キーはその中に適切な形で保管される。このような
キー管理の手順、プロトコル及び方法は、マチアス他の
関連特許出願(b)、(c)及び(d)に大部分記載さ
れている。
第4図は、第3図の暗号装置100の拡大図である。各
暗号装置は、1セットの暗号命令52を作成する暗号機構
(CF)4、キー記憶装置22、暗号機構アクセス・プログ
ラム(CFAP)54、及びユーザー適用業務プログラム55か
ら構成される。CFは128ビット・マスター・キーKMにあ
たるレジスタ18を含み、KMは左半分64ビット(KML)と
右半分64ビット(KMR)とから成る。(CFで実行される
暗号アルゴリズムはデータ暗号化アルゴリズム(DEA)
であるとする。)CF外に保管されたすべてのキーは、第
7図に述べたようにマスター・キー及び制御ベクトルの
元で暗号化され、キー記憶装置22に保管される。マスタ
ー・キーによる暗号化されたキー記憶装置22内のキー
は、CFで処理可能な形になっているため、処理可能キー
と呼ばれる。他のキー(キー暗号化キーすなわちKEK)
により暗号化されたキーは、他装置へ配布される形、つ
まり他の装置への送信あるいは他の装置からの受信を行
うのに好都合な形で保管されている。(注:キーは、生
成・暗号化されて時には受信形になり、生成した同一の
装置で再受信することが可能である。)典型的には、1
組の各装置が次の2つのKEKを共有する。a)キーを暗
号化して、第一の装置から第二の装置へ伝送する。第一
KEK(KEK1とする)。b)キーを暗号化して、第二の装
置から第一の装置へ伝送する、第二KEK(KEK2とす
る)。第一の装置においては、KEK1は(第二の装置への
送信のためキーを暗号化するゆえに)制御ベクトルを通
じてKEK送信キーとして示されており、一方KEK2は(第
二の装置から受信のためキーを非暗号化するゆえに)制
御ベクトルを通じてKEK受信キーとして示されている。
第二の装置においては、KEK1とKEK2の役割は逆、すなわ
ちKEK1がKEK受信キーでKEK2がKEK送信キーである。暗号
機構4は、64ビットの乱数を生成する乱数生成器26も含
む。乱数生成器の出力結果は、CFによってのみ読取り可
能である。暗号機構はまた、機密保護前面パネル・イン
タフェース58及び携帯キー入力装置60への接続用ポート
59を含む。前面パネルにはキー活動化物理スイッチ61が
あり、キー入力装置60を通じてマスター・キーを含めた
キーの入力を可能にしている。(暗号装置100に相当す
る暗号構成要素については、前述のマチアス他の関連特
許出願(b)、(c)及び(d)に詳しい。) 再び第4図に戻る。暗号命令セット52は、キー管理や
データ暗号化・確認機能を支援したり、個人識別番号
(PIN)確認に基づく財務取引処理を行なったりする、
数個の暗号命令から成る。マチアス他の関連特許出願
(b)、(c)及び(d)には暗号処理適用業務の3つ
の例が詳しく述べられている。典型的には、暗号文の提
示要求により、ユーザー適用業務プログラム55が起動す
る。要求を満たすのに必要な手順を追ってみる。例えば
62において、マクロ呼出しの形でCFAPに対して要求が出
され、1以上のパラメータ(暗号化されていないデー
タ、暗号化されたデータ、キー及び暗号文、65において
キー記憶装置22内暗号化キーへのアクセスに使うキー・
ラベル等)が指定され、よってCFAP54は要求操作実行可
能であるとする。または64において1以上の暗号命令を
実行すべく、必要に応じて(新規の暗号キー及び暗号文
を生成するため、あるいはデータやキーを暗号化、非暗
号化または再暗号化して、適切な暗号化または非暗号化
形に出力するためなど)CFAPがCF 4を呼出すこともあ
る。結果は、65においてCFAPが、新規作成された暗号化
キーをキー記憶装置22に保管するか、あるいは66におい
て適用業務プログラムの要求に対し1以上の値を返す
か、あるいはその両方が起こり得る。64でのCFからCFAP
への状況コード、及び66でのCFAPから適用業務プログラ
ムへの状況コードは、正常または異常の状況(要求操作
が実行されたか否かを表わす)を示す。
制御ベクトルによる操作可能キー管理: キー属性は普通、秘密でなく公開(つまりシステム・
ユーザーが知ったり推測したりできる)なので、制御ベ
クトルは、公開すなわち機密保護なしの値として定義さ
れる。一方、システムに定義された暗号キーは機密保護
されなくてはならないので、制御ベクトルをキーに「リ
ンク(連係)」する際にキーが露見しないようにする必
要がある。(注:本発明は機密パスワードを制御ベクト
ルに組み込む技術にも関する。) 第5図は、制御ベクトルのキーへのリンクを図示した
ものである。この例では、キー生成命令KGENを使用して
おり、これは暗号機構によりキーが生成されるようにす
る。この手順を追ってみる。手順71で、キー生成のため
適用業務AがCFAPを呼び出す。KGEN命令を実行する前に
手順72で、CFAPが生成されるキーの属性を指定する64ビ
ットの制御ベクトルを生成する。制御ベクトルCは手順
73で、KGEN命令の一部としてCFに渡される。それに対し
手順75でCFが、(CFによってのみ読取り可能な乱数の生
成器を使って)64ビットの乱数を生成し、それが奇数パ
リティとなる。これは生成されたキーKを表わす。K
は、手順73で渡された制御ベクトルCの排他的論理和機
構により暗号化され、マスター・キーKMが、第7図で述
べた暗号化規則によりアクセスされる。e*KM.C(K)
と書き表わす暗号化キーは、手順76でCFAPに返される。
(注:e*KM.C(K)とは、KML+C、KMR+C・・・など
種々のキーによる多重暗号化を簡潔に表現したものであ
る。)代わって、場合によってCFAPが暗号化キーe*K
M.C(K)及び手順77の制御ベクトルCを、手順78でキ
ー記憶装置22に保管するか(この場合は、手順79のキー
・ラベルが手順80で適用業務プログラムに返される)、
または値が手順80で要求元適用業務プログラムに返され
る。いずれの場合も本発明の、キー生成手順及び暗号化
により生成済キーに制御ベクトルを「リンク」する手順
は、制御ベクトルの公開性および非機密性を確保し、し
かも暗号機構外に生成済キーを明らかな形で露見させる
ものではないことが、判断されよう。
制御ベクトルは機密性のあるものではないが、それが
リンクされるキーの使用時にはいつでも、暗号機構への
入力データとして供給、指定、提供されてなくてはなら
ない。制御ベクトル中のどのビットも、キーが生成され
暗号化されたときに指定されたものと同じでなくてはな
らない。Cを正しく指定しなかった場合、不定不測のキ
ー値が発生する。暗号化キー及び制御ベクトルが、CFAP
からCFまでの中で出された暗号命令のパラメータとして
扱われる大きな手順の中では、制御ベクトルにより以前
に暗号化されたキーの再生(すなわちキーの非暗号化)
が必ずある。こうして暗号機構は、制御ベクトルを検査
して、キーが確実に要求元暗号命令の入力パラメータと
して使用されるようにする。この、制御ベクトルの予備
検査をCV検査と呼ぶ。暗号命令に、1以上の暗号化キー
及び制御ベクトルがパラメータとして提供されると、CV
検査は制御ベクトルの合致検査だけでなく、必要に応じ
て1制御ベクトルの他制御に対する相互検査も行なう。
暗号命令の処理に際し暗号機構が要求する手順を第6図
に示すが、基本的には各命令は次の3つの機能から成
る。a)CV検査81、b)キー再生82、c)要求命令の処
理83。最初の要求操作はCV検査81である。これは、制御
ベクトルの合致検査と、要求されたキー・パラメータの
使用が要求命令に合致するどうかの判別から成る。もし
CV検査が通過できないと、命令実行は中断される。どん
な場合でも、状態を知らせる状況コードがCFAPに返され
る。CV検査が合格すれば処理は続行する。次の要求操作
はキー再生82、すなわち暗号化されたキーの非暗号化で
ある。制御ベクトル及びキーを暗号化結合する方法によ
れば、少しでも不正(制御ベクトルのビットを変更して
キーに正しくない属性を与えること)があれば、不定不
測のキー値が発生する。要するに、目的の暗号キーは暗
号命令によっては再生されない。最後の要求操作は、要
求暗号命令の処理83である。制御ベクトル及びキーが正
確に指定されれば、命令は正しく処理される。しかしも
し不正が起これば、操作結果は無効な値となる。CV検
査、キー再生、命令実行の手順については、前述のマチ
アス他の関連特許出願(b)にさらに詳述されている。
制御ベクトルから提供されたキー管理の度合は、制御
ベクトル中のビット数に大いに関係する。特に10から50
ビットの短い制御ベクトルの場合、使用が限定されてお
り、キー管理のほんのわずかな部分しか支援できない。
前述のマチアス他の関連特許出願(b)、(c)及び
(d)には、64ビット制御ベクトルの使用について述べ
られているが、それによるとある程度複雑な暗号システ
ムでは、キー使用及び配布を管理するのに、他の制御ベ
クトルタイプに比して64ビット制御ベクトルが有用であ
る。このように64ビット制御ベクトルは、多くの暗号シ
ステム実行を満たす。しかし、もっと高度なキー管理制
御のためには、64ビット以上の制御ベクトルが必要であ
る。
本発明の目的は、暗号キー管理の改善方法を提供する
ことである。
また本発明の目的は、従来技術に比べより応用可能で
同等以上の機密保護機能を持つ、暗号キー管理の改善方
法を提供することである。
また本発明の目的は、暗号システムのユーザーに対し
新規改善された暗号提供が行なわれるような、暗号キー
管理の改善方法を提供することである。
また本発明の目的は、制御ベクトル処理に必要な暗号
化/非暗号化の回数を増やさずに、制御ベクトルの大き
さを拡張することである。
また本発明の目的は、キー再生の手順を暗号ハードウ
ェアに対し透過にしながら、制御ベクトルの大きさを拡
張することである。
また本発明の目的は、任意長制御ベクトル実行方法を
2つ提供することである。a)1つは位置定義で、制御
ベクトル中のビットはその相対位置に従って定義され
る。b)もう1つはタグによる定義で、制御ベクトル中
のビットはその前にあるフィールド・タグ定義に従って
定義される。
また本発明の目的は、単一長制御ベクトル、二重長制
御ベクトル、任意長制御ベクトルの三種の制御ベクトル
を顕著に分離し、ある種の制御ベクトルが他の種と混同
したり間違って使用されないようにすることである。
また本発明の目的は、キー生成器がキー使用可能時に
ある一定の時間間隔を置けるようにし、それ以外の時間
はキーを使用不可能にするような、キー管理の改善方法
を提供することである。
また本発明の目的は、キー使用時、前もって正しく指
定されてあるべきパスワードリンクさせることにより、
パスワードが正確に入力されないとキーが使用付加とな
るようなキー管理の改善方法を提供することである。
C.課題を解決するための手段 本発明はまず、64ビット制御ベクトルを好都合に128
ビットに拡張する方法に関する。この方法は、Cの左半
分64ビットとKKの左半分64ビットとの排他的論理和、及
びCの右半分64ビットとKKの右半分64ビットとの排他的
論理和から成る。そもそも128ビット制御ベクトルは、
概念的には64ビット制御ベクトルと等しい。しかし、12
8ビット制御ベクトルの追加の64ビットにより、キー管
理制御、特に余分な暗号化/非暗号化を行なうことなく
制御ベクトルの長さを倍にすることができる。実際、12
8ビット制御ベクトルはコンピュータの経費を増大する
ことなく入手できる。
本発明は次に、64ビット制御ベクトルを任意長制御ベ
クトルに拡張する方法に関する。これにはしかし、制御
ベクトルの各64ビット部分について2回から4回の余分
な暗号化操作が必要となる。このため、余分な経費が制
御ベクトルの長さに比例して増える。基本的には、任意
長制御ベクトルはまずハッシュ関数を用いて操作され
る。これは、多数のビットNxを持つ制御ベクトルCを、
より少ないビットNを持つハッシュ値C′(NxはNより
も大きい。本発明の例ではN=128)にマップするもの
である。特に有用なハッシュ関数は、制御ベクトルの12
8ビット・ハッシュ一方向関数を算出する、修正探索コ
ード(MDC)アルゴリズムのような非機密性の一方向関
数である。MDCについては前述のブラッチェルの関連特
許出願(e)に述べられている。この128ビットの結果
は、128ビット制御ベクトルがKKと結合するのと全く同
じ方法で、KKと結合して2つのKKLとKKRを形成する。よ
り正確に言うと、Mが制御ベクトル上で算出された128
ビットMDCを表わすとすれば、Mの左半分64ビットはKK
の左半分と排他的論理和され、Mの右半分64ビットはKK
の右半分と排他的論理和される。なお、任意長制御ベク
トルは概念的には128ビット制御ベクトルと等しい。
Cは任意長制御ベクトルを表わすとする。本発明は、
Cの構造的仕様についての2つの考察に関する。1つ
は、Cのフィールド情報が位置仕様の場合(すなわち、
元の形は左半分だったか右半分だったか、という位置に
よる)。もう1つは、Cのフィールドがタグとデータか
ら成るような、タグ位置付け仕様の場合。この場合フィ
ールドは順不同である。さらに、キーの管理及び制御に
必要なフィールドのみが制御ベクトルでは指定されれば
よい。位置及びタグ位置付けが混在した仕様も考えられ
るため、本発明ではこれも含む。
128ビット制御ベクトルの検査は、64ビット制御ベク
トルのそれと同じである。ただし、後者が多くとも64ビ
ットだったのに対し、あらゆる128ビットの検査が含ま
れる。任意長制御ベクトルの検査も同様である。つまり
非常に長い制御ベクトルの存在が考えられ、より多くの
制御ビット及びフィールドの検査が必要となる点を除け
ば、検査はつねに制御ベクトルに基づいて行なわれる。
制御ベクトル検査は、128ビット・ハッシュ済制御ベク
トルの一方向関数には行なわれない。このハッシュ値は
CF内部でのみ算出され、キー再生処理の一部として暗号
化のためCF外に現れることはない。(制御ベクトル及び
ハッシュ関数はふつう入手可能であってたとえハッシュ
値が外部に漏れたとしても、機密が失われることはな
い。) 任意長CVは128ビットCVと同様、キーの仕様や制御パ
ラメータを定義または拡張するための余分なスペースを
提供する。タグ位置付けはそれ自体任意であるため、任
意長CVは特にこれを支援しやすい。より特定すると本発
明によれば、あるキーが使用される日付と時間のリスト
を、任意長CVが支援する方法が提供される。また本発明
によれば、機密保護パスワードを制御ベクトルの中に組
み込むことにより、正しいパスワードが入力されたとき
以外はキーが使用されないようにする方法が提供され
る。
D.実施例 二重長制御ベクトル: 本発明の第一の実施例を示す第1図及び第2図では、
64ビット制御ベクトルが128ビット制御ベクトルに好都
合に拡張される。128ビット制御ベクトルの追加の64ビ
ットにより、暗号システム及びそのユーザーは暗号キー
をよりうまく管理できる。
第1図と第7図の相違点は次の通りである。第1図の
システムでは、46Lでレジスタ40LのCLとレジスタ42LのK
KLが排他的論理和されてKKL+CLとなり、46Rでレジスタ
40RのCRとレジスタ42RのKKRが排他的論理和されてKKR+
CRとなる。第7図では、CがKKLおよびKKRと排他的論理
和されてKKL+CおよびKKR+Cとなった。つまり第7図
では、同じ64ビットの制御ベクトルがKKの左半分・右半
分両方のビットと排他的論理和されたが、第1図では、
別々の64ビット制御ベクトルがKKの各ビット部分と排他
的論理和される。それ以外は、第1図と第7図は等し
い。
簡便のため、第7図にて64ビット制御ベクトルとKKに
よりKを暗号化する場合を、e*KK.C64(K)と書き表
わし、第1図にて128ビット制御ベクトルとKKによりK
を暗号化する場合を、e*KK.C128(K)と書き表わ
す。第7図の出力結果Yは、Y=e*KK.C64(K)とな
る。同様にして、第1図の出力結果Yは、Y=e*KK.C
128(K)となる。
第2図のシステムと第8図の相違点は次の通りであ
る。第2図のシステムでは、レジスタ46Lでレジスタ40L
のCLとレジスタ42LのKKLが排他的論理和されてKKL+CL
となり、レジスタ46Rでレジスタ40RのCRとレジスタ42R
のKKRが排他的論理和されてKKR+CRとなる。第8図で
は、CがKKLおよびKKRと排他的論理和されてKKL+Cお
よびKKR+Cとなった。つまり第2図と第8図の相違
は、別々の64ビット制御ベクトルがKKの各ビット部分と
排他的論理和される点である。
第7図及び第8図は、C=CL=CRであるだけで、第1
図及び第2図と同じであることが判断できよう。換言す
れば、128ビット制御ベクトルを使用する方法を縮小す
れば、左半分ビット部分と右半分ビット部分が等しいC
と64ビット制御ベクトルを使用する方法となる。つまり
64ビット制御ベクトルは、Cの128部分すなわち128ビッ
ト制御ベクトルが退化したものである。第1図及び第2
図の優位点は、余計な手間や経費をかけずに制御ベクト
ルを倍加できることにある。実際、64ビット制御ベクト
ルの定義(第7図及び第8図)および128ビット制御ベ
クトルの定義(第1図及び第2図)は、構造上あるいは
実行上有利な点を持つ。64ビット制御ベクトルを実行す
るハードウェア及びソフトウェアは、簡単に128ビット
制御ベクトルを支援できるようになる。どちらもKKL及
びKKRから出る種々のキーを含む、三重の暗号化操作に
より実行されるからである。暗号化の手順は全く同じで
ある。128ビット制御ベクトルを実行する新規ハードウ
ェア及びソフトウェアは、ソフトのレベルでCL=CRに設
定するだけで、64ビット制御ベクトルを支援できるよう
になる。結果、64ビット制御ベクトル、128ビット制御
ベクトルどちらも暗号ハードウェアに対し透過になる。
任意長制御ベクトル: 本発明の第二の実施例を示す第9図及び第10図では、
64ビット制御ベクトルが任意長制御ベクトルに好都合に
拡張される。このシステムがもたらす無数のビットによ
り、最大度の暗号キー管理制御が可能となる。
第9図に示すのは、レジスタ44の64ビット暗号キーK
を、レジスタ42の128ビット・キー暗号化キーKK(KKLと
KKRの連結したもの。KK=KKL//KKR)及びレジスタ90の
任意長(すなわち無限)ベクトルCinfにより暗号化する
システムである。操作は次のようになる。まずハッシュ
関数処理装置92でCinfの公開一方向ハッシュ関数を算出
して、レジスタ94Lに読み込まれる左半分64ビットML及
びレジスタ94Rに読み込まれる右半分64ビットMRから成
る128ビット・ハッシュ値を出す。処理装置92で行なわ
れる一方向関数は、関数への入力データを関数の出力結
果から算出するのは電算処理上不可能であるが、入力デ
ータから出力結果を算出するのは容易である、という性
質を持つ。一方向関数については従来技術に詳述されて
いる。W.ディフィー他著、「暗号についての新たな方
向」(1976年、情報理論に関するIEEE報告書、IT−22、
第6号、644ページ〜654ページ)に述べられている、一
方向関数についての厳密な定義は以下の通りである。
関数fを一方向関数と呼ぶのは、次の場合である。f
の領域内すべてのxについてy=f(x)が簡単に求め
られるのに対し、yの値とfの機能をもってしても、f
の領域内のほとんどのyについてf(x)=yとなるx
を求めるのが、電算処理上まったく実行不可能な関数。
重要なのは、この関数は電算処理上の見地から可逆性を
持たないと定義するのであり、通常数学的に言うところ
の不可逆性とは異なるということである。点yの解が唯
一でない、すなわちf(x1)=y=f(x2)となるよう
な、異なる点x1及びx2が存在するとき、その関数は「不
可逆」である。ここで述べるのは逆算の難しさではな
く、むしろ、yの値とfの機能をもってしてf(x)=
yとなるxを算出することのほうがはるかに難解なので
ある。
修正探索コード(第11図、第12図、第13図参照)算出
のアルゴリズムにより、一方向関数の定義はもっと厳し
くなる。MDCアルゴリズムによれば、f(x1)=f(x
2)となるx1及びx2を求めるのは電算処理上不可能であ
る。この厳しい要求を満たすには、MDCは少なくとも128
ビットの長さを持たなくてはならない。そうでなけれ
ば、f(x1)=f(x2)となるx1及びx2を探すのに誕生
日型攻勢がかけられることになろう。
第9図における次の操作についてさらに述べる。排他
的論理和装置46Lで、レジスタ94Lの64ビット値MLとレジ
スタ42Lの64ビット値KKLの排他的論理和を求め、排他的
論理和装置46Rで、レジスタ94Rの64ビット値MRとレジス
タ42Rの64ビット値KKRの排他的論理和を求める。代わっ
て暗号化装置41で、レジスタ44のKがKKL+MLによって
暗号化され、非暗号化装置43でKKR+MRによって非暗号
化され、暗号化装置45でKKL+MKによって暗号化され
る。その結果生じるYをe*KK.Cinf(K)と書き表わ
す。(“+”は排他的論理和操作を示す。) 第10図に示すのは、レジスタ42の128ビット・キー暗
号化キーKK(KKLとKKR)及びレジスタ90の任意長制御ベ
クトルCinfより暗号化された、レジスタ44の暗号キーK
である64ビット値Yを非暗号化するシステムである。第
10図の手順は、基本的には第9図の逆である。まずハッ
シュ関数処理装置92で、(第9図の公開一方向ハッシュ
関数と同様の方法で)Cinfの公開一方向ハッシュ関数を
算出して、128ビット値ML及びMRを出す。次にMLとKKL、
MRとKKRの排他的論理和を求め、KKL+ML、KKR+MRを出
す。代わって非暗号化装置47で、KKL+MLによりKが非
暗号化され、暗号化装置48でKKR+MRにより暗号化さ
れ、非暗号化装置49でKKL+MLにより非暗号化去れる。
要するに、e*KK.Cinf(K)を*KK.Cinfにより非暗号
化して、Kを再生するわけである。
前記実施例の処理装置92における公開一方向ハッシュ
関数算出方法は、修正探索コード(MDC)算出アルゴリ
ズムを利用している。MDCについては前出の関連特許出
願(e)に述べられている。第11図は、簡単なMDC操
作、MDCOPを示す。ここでは2つの異なるシステムでMDC
を算出する。第12図は、64ビットの入力データごとに2
回の暗号化操作をともなう方法による、128ビットMDCの
算出を示す。第13図は、64ビットの入力データごとに4
回の暗号化操作をともなう方法による、128ビットMDCの
算出を示す。どちらの方法も、平文形の任意長制御ベク
トル入力データを64ビットのブロックに分ける必要があ
り、確認のため、最終ブロックに16進の“FF"が埋め込
まれる。平文はMDCアルゴリズムにより、全ブロックが
終了するまで逐次処理される。関数の出力結果は128ビ
ットMDCである。
Cinfの場合、制御ベクトルがC1、C2、・・・、Cnのブ
ロックに分かれる。Cnの最下位には16進の‘FF'が(バ
イト数に応じて)埋めこまれて8バイトとなる。この埋
込みは、暗号ハードウェアにより行なわれる(これは公
開一方向ハッシュ関数自体の必要部分である)。ブロッ
クC1、C2、・・・、CnはMDCアルゴリズムにより(ブロ
ックごとに2回あるいは4回の暗号化を行ない)操作さ
れて128ビットMDCを生成する。128ビットMDCの左半分
(MLとする)およびKKLとの排他的論理和を求めてKKL+
MLを出し、128ビットMDCの右半分(MRとする)およびKK
Rとの排他的論理和を求めてKKR+MRを出す。
MDCアルゴリズムのように厳密な一方向関数を使って
任意長制御ベクトルの128ビット・ハッシュ値を算出す
ることは、細心の機密保護を行なうために大変に重要な
ことである。これは、2つの異なる有効制御ベクトルC1
及びC2(ただし同じハッシュ値を生じる)が発見されな
いようにする上で必要である。もしMDC(C1)=MDC(C
2)となるところでC1及びC2が発見されると、処理の完
全性が侵害される。この理由を説明するため、例として
C1はデータの暗号化のみを行ない、C2はデータの非暗号
化のみを行なう制御ベクトルであるとする。暗号化され
たデータ・キーが制御ベクトルC1を持つことがわかれ
ば、C1でなく単にC2を指定することにより、侵入者は簡
単に機密保護を破ることができる。つまり侵入者は、暗
号化されたデータ・キーとC2を、妨害された暗号文(ユ
ーザーがそうとは知らず該データ・キーにより暗号化し
たもの)とともに非暗号化命令に渡す。非暗号化命令
は、C2が無効であることも発見できず、正しいデータ・
キーがCF内で内部的に再生されるのを防ぐこともでき
ず、データは非暗号化されてしまう。
第22図は、暗号機構(CF)4で、ハッシュ関数処理装
置92が母線12に接続される様子を図示している。ハッシ
ュ関数処理装置92は暗号処理装置16の一部ともなるが、
分離して母線12に接続することもある。ハッシュ関数処
理装置92は上述の、制御ベクトルの公開一方向ハッシュ
関数を実行する。
制御ベクトル中の暗号分離: 64ビット制御ベクトルのみ、128ビット制御ベクトル
のみ、任意長制御ベクトルのみで実行する暗号処理は安
全に行なわれることが、本発明により判断できよう。し
かしながら、同一暗号システム内でこれらが共存する場
合や、またそれが必要なシステムも存在する。この場合
は、暗号処理上の方法が分離されていることが、暗号の
機密保護上絶対不可欠である。換言すれば、ある制御ベ
クトル指定方法を使ってキーが暗号化されていても、別
の指定方法の元に暗号化キーを受け取るを行なえる暗号
ハードウェアに対し、侵入者が不正を行えないようにし
なくてはならない。例えば、e*KK.C128(K)が128ビ
ット制御ベクトルにより暗号化されたキーを表わすとす
る。この場合e*KKC.128(K)は、暗号ハードウェア
がe*KK.C128(K)を非暗号化してKを再生する方法
によって、64ビット制御ベクトルにより暗号化されたキ
ーであるとは言えない。これは、C128およびC64が、あ
るキーの使用をC128は認めないがC64は認める、といっ
た相反する使用を持つ可能性があるからである。
上記仕様の困難な点は1つ明らかである。ある特定の
実行において、128ビット制御ベクトルの左半分及び右
半分が等しく(合理的に)、CLが有効な64ビット制御ベ
クトルCを表わす場合があるとする。意図的に問題点を
例示してみる。CL、CR及びCのビット13がセット=B
‘1'であり、他のビットはすべてセット=B‘0'である
とする。CLにおいてビット13=B‘1'ということは、暗
号化された暗号変数X(Xはキーである)はデータ暗号
化のみに使用されるということである。CRのビット13
は、暗号化操作を何らかの形で制限する(例:最初にパ
スワード入力を求める、あるいは午前8時から午後4時
までしか暗号化操作を行なわせない等)。しかし、制御
ベクトルC(64ビット制御ベクトル)のビット13は、X
がデータ非暗号化に使われることを意味する。YがCL、
CR及びKL、KRを使ってXを暗号化した値だとすれば、侵
入者はC及びKL、KRを使ってYを非暗号化するよう暗号
装置に要求することができるであろう。後者の場合、侵
入者はXによってデータを非暗号化することができる。
この場合に求められる暗号の性質について、以下に述
べる。C64、C128およびCinfはそれぞれ、キーKを64ビ
ット制御ベクトル、128ビット制御ベクトル、任意長制
御ベクトルを用いたKKにより暗号化する方式であるとす
る。iをこれら3つの方式のいずれかであり、Yをiを
用いたKKによるKの暗号化であるとする。jは3つの方
式のいずれかであるがiではない場合、暗号ハードウェ
アは以下の事項を満たすものでなければならない。Y及
びjがハードウェアに渡されたとき(すなわち、iの方
式が取られたにもかかわらず侵入者がjと偽って操作す
ると)、暗号化ハードウェアは確実に不正を発見し操作
を中断するかあるいは、侵入者にとって意味を持たない
不定不測の値K′(Kではない)を生じさせなくてはな
らない。
制御ベクトル定義の三方式を総括的に分離する方法
を、第14図に示す。この方法は、各制御ベクトルの各64
ビット部分、及び任意長制御ベクトルで算出されたMDC
の各64ビット部分の2ビット・フィールド(ビットi及
びi+1)を使用する。ビットはキーのパリティ・ビッ
トと重なることはない。このビットは、すべてのC64に
ついての暗号化値e*KK.C64(K)がすべてのC128につ
いての暗号化値e*KK.C128(K)とも、またすべてのC
infについての暗号化値e*KK.Cinf(K)とも異なるよ
うに、K及びKKに関して割当てられた値である。。これ
により、暗号化されたKが1以上の制御ベクトルにより
非暗号化されることはない。正しい制御ベクトル以外の
ものを使用すると、KではないK′が生じる。
制御ベクトル検査: 128ビット制御ベクトルの制御ベクトル検査は、64ビ
ット制御ベクトルのそれと同様であるが、128ビット制
御ベクトルの場合、128ビットのものすべてが検査対象
となる点だけが異なる。従って、第6図で述べた64ビッ
ト制御ベクトル検査の論理も、64ビット制御ベクトルで
なく128ビット制御ベクトルが暗号化装置への入力デー
タに使われる点を除いて、128ビット制御ベクトル検査
の場合と同様である。
任意長制御ベクトルに対する制御ベクトル検査も同様
である。非常に長い制御ベクトルの存在が考えられ、ゆ
えにより多くの制御ベクトルのビット及びフィールドが
検査されることを除けば、検査はベクトルに基づいて行
なわれる。任意長制御ベクトルが用いられるとき制御ベ
クトル検査は、制御ベクトルの128ビット・ハッシュ一
方向関数でなく、制御ベクトルそのものに基づいて行な
われる。ハッシュ値は暗号化装置内部でのみ算出され
る。これが暗号化装置外に出て装置から装置あるいは暗
号化装置から暗号化装置へ渡されたり、制御ベクトルの
ように保管されて再入力されることはない。(制御ベク
トル及びハッシュ関数はふつう入手可能であってたとえ
ハッシュ値が外部に漏れたとしても、機密が失われるこ
とはない。本発明の別の実施例で述べる、機密パスワー
ドが制御ベクトル内に組み込まれた場合は別である。) タグ位置値け及び位置制御ベクトルのデータ構造: 本発明の第15図(a)のように、任意長制御ベクトル
Cは、連続する定位置従属フィールド(例:フィールド
1、フィールド2、・・・、フィールドn)から成るこ
とがある。1フィールドは1以上のビットを持ち、既定
の意味や解釈、決まった用法などを持つ。前述のマチア
ス他の関連特許出願(b)、(c)及び(d)に出てく
る64ビット制御ベクトルは、位置従属フィールド及びビ
ットの定義を使用している。
本発明の第15図(d)のように、任意長制御ベクトル
Cは、制御ベクトル内の位置でなくフィールド識別子に
よって定義されるフィールドから成ることがある。この
ようなタグ位置付けデータ構造は第15図(d)にあるよ
うに複数フィールドから成り、これらのフィールドは第
15図(b)にあるように、固定長フィールド識別子、固
定長フィールド及び可変長データから成る。
本発明の第15図(e)のように、任意長制御ベクトル
Cは、フィールド識別子(すなわちタグ)によって定義
されるフィールドから成ることがあるが、ここではフィ
ールド長が、長さフィールドでなく、データの最後に置
かれた固定長のフィールド区切り文字によって決められ
る。このようなタグ位置付けデータ構造は第15図(e)
にあるように複数フィールドから成り、これらのフィー
ルドは第15図(c)にあるように、固定長フィールド識
別子、可変長データ及び固定長フィールド区切り文字か
ら成る。
本発明の第15図(f)のように、任意長制御ベクトル
Cは、連続する位置従属フィールド部分とタグ位置付け
部分両方から成ることがある。この例では、制御ベクト
ルの最初に固定長の位置従属部分が現れ、次に可変長の
タグ位置付け部分が現れる。位置従属フィールド部分
は、128ビット制御ベクトルに対応する128ビット・フィ
ールド定義から成り、可変長タグ位置付け部分は、制御
ベクトルの128ビット固定部分に対応する制御ベクトル
拡張子から成るため、このようなデータ構造は特に好都
合である。
ここまでで判断できようが、様々な方法により、任意
長制御ベクトル実行を、構造上簡単にしかも少ない記憶
域及び処理で行ない、同一暗号システムまたはネットワ
ークや接続装置内に64ビット制御ベクトル/128ビット制
御ベクトル/任意長制御ベクトル実行が混在する中で、
互換性を維持しながら行なうことができる。
機密パスワードと制御ベクトル: 暗号キー使用の際に制御ベクトルに機密パスワードを
組み込むことで、より細密な暗号キー使用制御が可能と
なる。これは、非常に高いレベルの機密保護を必要とし
たり、暗号処理時に厳しい制御基準(すなわち暗号キー
へのアクセスの制御)を採用する適用業務に、特に有効
である。
第16図に、暗号機構を持つデータ処理システムの概略
を示す。第16図では、暗号機構がプログラム及び適用業
務をアクセスするように(前述のマチアス他の関連特許
出願(b)の第2図に示される)、データ処理システム
2がプログラムを実行する。このプログラムは、制御ベ
クトルに関連した暗号キーの処理要求を出す。制御ベク
トルの一般形は、上述の関連特許出願の第10図に示され
るが、本発明によって修正され、拡張される(後で詳述
する)。制御ベクトルは、一定の機能を定義する。その
機能の遂行のためキーの創作者によって関連するキーが
許可される。前述の関連特許出願によれば、暗号構造
は、プログラムが暗号キーについて求めるキー管理機能
を認証するシステムを定義し、キーの創作者によってそ
れらが許可されたことを保証する。
第16図にあるように、データ処理システム2に含まれ
るかあるいは接続するのは、機密保護境界6に特徴を持
つ暗号機構4である。入出力経路8は機密保護境界6を
通り抜けて、暗号提供要求、暗号キー及び関連の制御ベ
クトルをプログラムから受け取る。機密保護境界6に
は、母線12により入出力経路8に接続する暗号命令記憶
装置10が含まれる。制御ベクトル検査装置14は、記憶装
置10の命令につながり、暗号処理装置16もまた、記憶装
置10の命令につながる。マスター・キー記憶装置18は、
暗号処理装置16に接続する。受け取った提供要求に応じ
て暗号機構4は、キー取扱い操作を実行するための機密
保護記憶位置を生成する。
暗号命令記憶装置10は入出力経路8上で、暗号キーに
よってキー取扱い操作を実行せよ、という暗号提供要求
を受け取る。制御ベクトル検査装置14は、入出力経路8
につながる入力データを持ち、暗号キーに関連する制御
ベクトルを受け取る。制御ベクトル検査装置14はまた、
暗号命令記憶装置10に接続する入力データも持ち、暗号
提供要求が要求したキー管理操作を制御ベクトルが許可
したかどうかの検査を始める制御信号を受け取る。
制御ベクトル検査装置14は、暗号処理装置16の入力デ
ータにつながる許可出力20を持ち、キー管理操作が許可
されたことを知らせる。暗号処理装置16が許可出力を受
け取ると、暗号キーが要求した取扱い操作実施が開始す
る。暗号キー記憶装置22は、入出力経路8上で制御ベク
トル検査装置14に接続する。暗号キーは記憶キー(関連
の制御ベクトルおよび、マスター・キー記憶装置18に保
管されたマスター・キーの論理演算結果)の元で暗号化
されるが、暗号キー記憶装置22はその暗号化された形
で、暗号キーを保管する。この論理演算結果をKM.Cと書
き表わす。KMは128ビット・マスター・キーであり、C
は制御ベクトルである。暗号提供要求で、1以上のキー
及び制御ベクトルが要求されたなら、すべての制御ベク
トルが検査され、すべてが正しく発見されて暗号処理装
置16に対し許可信号が出されなくてはならない。
暗号キー記憶装置22から暗号化キーを再生するのは例
えば、暗号命令記憶装置10が入出力経路8上で、暗号キ
ー記憶装置22から暗号キーを再生せよとの暗号提供要求
を受け取った場合である。その後制御ベクトル検査装置
14が応答し、線20で暗号処理装置16に対し、暗号キー再
生操作が許可されたという許可信号が出る。信号処理装
置16が線20で許可信号に応答して、暗号化された暗号キ
ーを暗号キー記憶装置22から受け取り、記憶キー(関連
の制御ベクトルおよび、マスター・キー記憶装置18の保
管されたマスター・キーの論理演算結果)の元でそれを
非暗号化する。
記憶キーは、関連の制御ベクトル及びマスター・キー
記憶装置18に保管されたマスター・キーの、排他的論理
和の結果である。前記実施例における論理演算結果も排
他的論理和操作であるが、これは違う種類の論理演算で
ある。
該制御ベクトルは、関連の暗号キーとともに暗号キー
記憶装置22に保管される。すべてのキーはマスター・キ
ーの元で暗号キー記憶装置22に保管されるため、暗号化
キーの暗号化/非暗号化が統一システムの元に可能とな
る。
本発明の第16図に示すのは、機密パスワードを制御ベ
クトルに組み込むシステムである。第16図にあるよう
に、暗号化された係るキーとともに暗号キー記憶装置22
に保管された制御ベクトルは、パスワード・フィールド
を持つ。しかし、パスワードは機密であるため、制御ベ
クトル内には保管されない。制御ベクトル内のパスワー
ド・フィールドはゼロにセットされる(すなわち、すべ
てのビットがゼロになる)。ゆえに、パスワード・フィ
ールドの長さが56ビットならば56のゼロ・ビットがセッ
トされる。機密パスワード自体は、入出力経路8に接続
する分離パスワード・チャネル32に通じて、暗号機構4
に対して出される。従って、暗号キーにアクセスする権
利を持つユーザーが前もって機密パスワードのコピーを
得ることができる。制御ベクトルが該パスワードを持つ
ようなキーを使用する暗号提供要求が出されたならユー
ザーは、暗号提供要求に対する追加のパラメータとして
パスワードを平文で入力しなくてはならない。その後前
述のように制御ベクトル検査が行なわれ、制御ベクトル
検査装置14は応答として、線20で暗号処理装置16に対
し、暗号キー再生操作が許可されたという許可信号を出
力する。制御ベクトル検査装置14では、制御ベクトルの
パスワード・フィールドは検査されない。その後暗号処
理装置16が許可信号に応答して、線20で暗号キー記憶装
置22から暗号化された暗号キーを、及び母線12に接続す
る入出力経路8に接続された分離パスワード・チャネル
32を通じて、平文のパスワードを受け取る。パスワード
は制御ベクトルに挿入されて制御ベクトルが完成し、N
ビット・ハッシュ値を生成するハッシュ関数生成器によ
って実行される。キー再生は従来通り行なわれる。すな
わち暗号化されたキーが記憶キーの元で非暗号化され
る。この記憶キーとは、係る制御ベクトルのNビット・
ハッシュ値及びマスター・キー記憶装置18に保管された
Nビット・マスター・キーの、論理演算結果である。
パスワードは、キー再生処理あるいは暗号提供要求処
理の一部として検査されないが、該検査は不要なのであ
る。キーが生成されると、それはパスワードが組み込ま
れた制御ベクトルのハッシュ値の元で暗号化される。そ
の後キーが再生されたときにユーザーが間違ったパスワ
ードを入力すると、該暗号化キーは該不正制御ベクトル
とマスター・キーの論理演算結果である記憶キーの元で
非暗号化されるため、実際には不定不測のキーが再生さ
れて暗号命令処理に使用される。暗号命令については、
前述したマチアス他の関連特許出願(b)で、1以上の
不正キーが再生されたとき、命令の出力結果が無効であ
る場合、あるいは有効な場合について暗号命令を論じて
いる。
第17図で制御ベクトルへのパスワードの組込み方をい
くつか例示している。第17図の(a)は、パスワードが
制御ベクトルの位置従属フィールドとなる場合、第17図
の(b)は、パスワードがフィールド識別子、フィール
ド長及びデータを持つタグ位置付け構造のフィールドと
なる場合、第17図の(c)は、パスワードがフィールド
識別子、データ及び区切り文字を持つタグ位置付け構造
のフィールドとなる場合である。暗号キー使用を許可す
るための制御ベクトルへのパスワード・フィールド組込
みは、これらの、あるいは他のいずれかの方法により好
都合に行なうことができる。
第20図は、暗号機構4を別の見地から見ており、パス
ワード(平文あるいは暗号文いずれでも)が組み込まれ
た制御ベクトルによる暗号化を示す。レジスタ90の制御
ベクトルは任意長であり、第16図及び第17図に示す空の
(すべてがゼロの)フィールドを持つ。パスワードが組
み込まれた制御ベクトルをハッシュ関数処理装置92に入
力する前に、ステージング・レジスタ91で、該空フィー
ルドに、パスワード入力装置32から提供されたユーザー
・パスワードが入る。ハッシュ関数処理装置92は、制御
ベクトルとユーザー・パスワードを合わせ持つNビット
のハッシュ値を出力する。Nビット・ハッシュ値は論理
46で、Nビット・キー暗号化キーKEKと排他的論理和さ
れてNビットの算出されたキー値を生成し、これが暗号
化装置41への入力キーとなる。暗号化装置41からの暗号
文出力は、制御ベクトルとパスワードを合わせ持つNビ
ット・ハッシュ値によって特定化される。同様にして非
暗号化も、暗号化装置41と第20図の非暗号化装置47を置
き換えて行なわれる。暗号文が非暗号化されたときにも
し、ユーザーが間違ったパスワードを入力してそれが制
御ベクトルに与えられれば、ハッシュ値は正しく算出さ
れたキー値とはならず、非暗号化装置47は平文を生成す
ることが出来ない。
時間間隔と制御ベクトル: 制御ベクトルに日付及び時間情報を組み込むことで、
より細密な暗号キーが使用制御が可能になる。この概念
はいくつかの異なる方法で実施可能であるが、基本的に
は、係る暗号キーがいつ処理されるか(暗号提供要求に
応じて)を記述する、1以上の時間間隔を制御ベクトル
に組み込む。命令中の命令の型やパラメータによってキ
ーへのアクセスを制限することで、より細分性が得られ
る。たとえば、第一の期間に暗号化命令中でキーを使え
るように、また第二の期間(第一とは等しくない)に非
暗号化命令中でキーを使えるように制御ベクトルをコー
ド化するような場合である。同様に、命令の型以外にシ
ステム・パラメータによってキーへのアクセスは変えら
れる。たとえば、第一の期間にシステムAでキーを活動
化し、第二の期間でシステムBでキーを活動化するよう
な場合である。期間と、命令、システム及びユーザー等
とのリンクが、様々な方法で行なわれることが判断でき
よう。これらの方法は特に本発明にて定義されるもので
はなく、時間情報を何らかの形で制御ベクトルに組み込
む、という基本概念に基づいて構築される。時間情報の
制御ベクトルへの組込みは、非常に高いレベルの機密保
護を必要としたり、ある特定の期間にのみキーの使用を
許可したいような適用業務(例:あるシステム資源への
アクセス権をユーザーに与えて、その適用業務の内容を
知りある程度操作できるようにはするが、それを予約ま
たは購入するまでは全部の機能を使わせない場合など)
に、特に有効である。
本発明の第18図に、制御ベクトル中に時間情報を持つ
システムを示す。第18図にあるように、暗号化された関
連の暗号キーとともに暗号キー記憶装置22に保管された
制御ベクトルは、時間間隔フィールドを持ち、該フィー
ルドは、開始日と時間、及び終了日と時間と記述した1
以上の時間間隔を持つ。暗号機構4も、母線12に接続す
る実時間クロック34を持つため、制御ベクトル検査装置
14は母線12上でクロック値を読むことができる。第18図
には示していないが、完全性のため実時間クロックの初
期値をセットする装置もある。例えば、マスター・キー
入力用の物理キー活動化キー・スイッチとともに機密保
護前面パネル入力ポートに接続された、携帯キー入力装
置を含むシステムで、(前述のマチアス他による関連特
許出願(b)で伸べられる、マスター・キー18を初期化
するのと同様の手順で)実時間クロック34が初期化され
る。同一の携帯キー入力装置を用いて2つのスイッチを
使用し、実時間クロック・レジスタ34にクロック値を入
力できる。クロック値を初期化するのには、その他の技
術も使用される。第18図の他の構成要素は、第16図のそ
れと同様である。制御ベクトルに時間情報が組み込ま
れ、暗号装置が実時間クロックを持つ場合(第18図)で
も、暗号提供要求の処理は先に述べた方法と同様に行な
われる。(後述の例外を除く。) 本発明の第18図によれば、暗号提供要求が出され、そ
れが該時間間隔フィールドを持つ制御ベクトルがあるキ
ーを使用するとき、処理は次のようになる。制御ベクト
ル検査は上述の通り進むが、ただし保管済時間情報に応
じて追加の検査が行なわれる。(制御ベクトルがパスワ
ードを持つ場合も持たない場合もあるが、そのレベルの
暗号キー管理は、ここで述べる時間間隔による検査では
変わらない。)第18図及び第20図について言うと、制御
ベクトル検査装置14が、クロック34から出された現在の
実時間クロック値にアクセスし、検査が行なわれて、ク
ロック値が制御ベクトル中に記述された時間間隔内にあ
るかどうかが判別される。制御ベクトル中に1以上の時
間間隔が存在するならば、クロック値はこれらの時間間
隔内のどれかにならなければならない。(ただし、1以
上の間隔内にある必要はない。)該検査及び制御ベクト
ルの残りの部分の検査に合格すると、それに応答して制
御ベクトル検査装置14は、線20で暗号処理装置16に対
し、暗号キー再生操作が許可されたという許可信号を出
す。暗号処理装置16が線20で許可信号に応答して、暗号
化された暗号キーを暗号キー記憶装置22から受け取り、
記憶キー(関連の制御ベクトルおよび、マスター・キー
記憶装置18に保管されたマスター・キーの論理演算結
果)の元でそれを非暗号化する。
第21図にあるように、制御ベクトル検査装置14は、実
時間クロック34にアクセスして、実際の時間と制御ベク
トルCに記述された期間とを比較する。制御ベクトル検
査装置はまた、暗号提供要求の入力によって指定された
とおり制御ベクトルCを使用してもよいかどうかを検査
する。どちらの検査も合格すると、線20で許可信号が出
され、任意長制御ベクトルCはハッシュ関数処理装置92
への入力データとなり、Nビット・ハッシュ値C′に変
換される。次にNビット・ハッシュ値C′が排他的論理
和46でNビット・キー暗号化キーKEKと排他的論理和さ
れ、Nビットの算出値であって非暗号化装置47への入力
キーとなる値を再生する。(第21図で非暗号化装置47と
暗号化装置41を置き換えると、暗号化も同じ手順で行な
うことができる。) 第19図は、第18図の時間間隔フィールドをさらに精密
化したものである。特に第19図(a)は、開始日/時
間、及び終了日/時間から成る1以上の時間間隔が存在
する時間間隔フィールドを示す。これらのフィールド及
び時間単位(時、分、秒など)をコード化する方法につ
いては本発明では取り上げない。第19図(b)に示す方
法では、時間間隔が特定の命令と関連するため、キー処
理は、該処理を要求する命令に従属する。第19図(c)
に示す方法では、時間間隔が特定のシステムと関連する
ため、キー処理は、キーが使用されるシステムに従属す
る。そのため暗号装置は、制御ベクトル検査装置14にシ
ステムIDを提供しなくてはならない。システムIDは第18
図には示されていないが、暗号機構の中に完全に保管さ
れ、必要に応じてアクセスされる。システムIDは、マス
ター・キー及び実時間クロック値を初期化する方法(前
述)と同様の方法で、初期化されて暗号機構の中に入
る。同様に特に図示していないが、時間間隔フィールド
は、第15図に示したパスワード・フィールドと同様の方
法で実行される。つまり、時間間隔は制御ベクトル内で
定位置従属フィールドとも、タグ位置付けフィールドと
もなりえ、第15図に示したいずれの方法によっても実行
可能である。(パスワード・フィールドが時間間隔フィ
ールドと置き換わった場合を除く。) 前記実施例において暗号化装置41及び非暗号化装置47
は、ANSIのデータ暗号化アルゴリズム(DEA)を採用し
ている。これは、実用向データ保護製品にとって標準的
な暗号アルゴリズムであり、標準ANSI X2.92(1981
年)、「データ暗号化アルゴリズム」に述べられてい
る。DEAは対称的ブロックアルゴリズムの暗号文アルゴ
リズムで、56ビットの機密キーで64ビットの平文を暗号
化し、64ビットの暗号文を形成する。DEAキーは普通、
1バイトごとに1つのパリティ・ビットを持ち、64ビッ
ト・キーを形作っている。DEAは、国際基準局(Nationa
l Bureau of Standards)公認の連邦データ暗号化標準
(Federal Data Encryption Standard)の基礎となって
いるため、DESとも呼ばれる。しかし、暗号化装置41及
び非暗号化装置47に関する他の実施例は、より特定の適
用業務プログラムに合致するようになっている。DEAと
はキーやブロック・サイズの異なる、他の暗号化アルゴ
リズムも使用可能である。
前記実施例の、ハッシュ関数処理装置92で実行される
公開一方向ハッシュ関数は、前述したブラッチェル他の
関連特許出願(e)に述べられる修正探索コード(MD
C)算出のアルゴリズムを使用しているが、本発明に従
い他のハッシュ関数を使用して、記憶レジスタ90の任意
長制御ベクトルを、それと異なる、キーとの排他的論理
和を出しやすい長さを持つハッシュ値に変換することも
できる。本発明に従い排他的論理和を実施するために
は、キーの長さが64ビットならばハッシュ値も64ビット
でなければならない。キーの長さが128ビットならばハ
ッシュ値も128ビットでなければならない。本発明に従
い排他的論理和46でハッシュ値とキーとの排他的論理和
を求めるためには、代替キー値の長さが使用されれば、
等しい長さの代替ハッシュ値が使用されなければならな
い。ハッシュ値の一部は同じビット長を持つキーの一部
(あるいは全部)と排他的論理和される。
本発明の別の実施例では、暗号処理を即時に行なうた
めに暗号機構にクリア・キーが保管されることがある。
第22図の例では、作業用記憶域24にクリア・キーが保管
される。第一の方法では、各キー及び関連の制御ベクト
ルの対が、暗号装置のランダム・アクセス・メモリ(RA
M)つまり作業用記憶域24に保管される。あるキーにア
クセスするためのルーチン操作中、関連の制御ベクトル
がまずアクセスされ、キー使用が確実に許可されるよう
にするため前述のように制御ベクトル検査が行われる。
使用が許可されれば、キーが作業用記憶域からアクセス
され、暗号機構内操作に使用される。第二の方法では、
キーとその関連制御ベクトルのハッシュ値の排他的論理
和の結果が、暗号機構中の作業用記憶域に保管される。
任意長制御ベクトル自体は、キーとハッシュ値の演算結
果を伴い作業用記憶域に保管されるか、あるいは入力経
路8に渡される。あるキーにアクセスするためのルーチ
ン操作中、関連の任意長制御ベクトルがまず作業用記憶
域からアクセスされるか、あるいはまず入力経路8上で
受け取られ、キー使用が確実に許可されるようにするた
め前述のように制御ベクトル検査が行われる。使用が許
可されれば、任意長制御ベクトルはハッシュ値を生成す
るハッシュ関数処理装置92を通って処理される。そし
て、キーとその関連制御ベクトルのハッシュ値の排他的
論理和の結果が、作業用記憶域からアクセスされ、ハッ
シュ関数処理装置92により算出されたハッシュ値と排他
的論理和されて、要求暗号操作で使用されるキーを生成
する。128ビット・キー及び128ビット・ハッシュ値に対
する第三の方法では、キーの左半分がハッシュ値の左半
分と排他的論理和されて作業用記憶域に保管され、キー
の右半分がハッシュ値の右半分と排他的論理和されて作
業用記憶域に保管される。第四の方法では、キーが64ビ
ット・キーでハッシュ値が128ビット・ハッシュ値の場
合、64ビット・キーがハッシュ値の左半分と排他的論理
和されて作業用記憶域に保管され、また右半分と排他的
論理和されて作業用記憶域に保管される。これらいずれ
の方法でも、(キーが暗号機構の機密保護境界内に平文
の形で保管されている限り)キーの暗号化/非暗号化操
作をキー再生につなげる必要がないので、処理速度が向
上する。制御ベクトルのハッシュ値と関連のキーを結合
して作業用記憶域24に保管するのに、排他的論理和以外
の論理演算も使用できる。
E.発明の効果 以上説明したように本発明によれば、暗号キー管理の
技術が改善される。
【図面の簡単な説明】
第1図は、本発明の第一実施例の解説図であり、64ビッ
ト暗号キーKを、128ビット・キー暗号化キーKK(左半
分64ビットKKL及び右半分64ビットKKRより成る)、及び
128ビット制御ベクトルC(左半分64ビットCL及び右半
分64ビットCRより成る)により暗号化するシステムを示
す。 第2図は、本発明の第一実施例の解説図であり、第1図
の方法で128ビット制御ベクトル及び128ビット・キー暗
号化キーにより暗号化された64ビット暗号キーKを、非
暗号化するシステムを示す。 第3図は、暗号配布チャネルを経由して結合された、暗
号装置ネットワークの図である。 第4図は、暗号装置の基本構成要素の図である。 第5図は、処理可能キーKを生成する暗号装置構成要素
内での、処理順序を示す図である。Kはマスター・キー
KM及び制御ベクトルCにより暗号化され、キー記憶装置
に保管される。適用業務は、記憶装置内でキーにつなが
るインデックスまたはラベルを通じて、処理可能キーK
にアクセスする。 第6図は、CF内での暗号命令実施の一般的手順を示す図
である。 第7図は、64ビット暗号キーKを、128ビット・キー暗
号化キーKK(左半分64ビットKKL及び右半分64ビットKKR
より成る)と64ビット制御ベクトルCにより暗号化する
システムの図である。 第8図は、第7図の手順により暗号化された4ビット暗
号キーKを、128ビット・キー暗号化キーKKと64ビット
制御ベクトルCにより非暗号化するシステムの図であ
る。 第9図は、本発明の第二実施例の解説図であり、64ビッ
ト暗号キーKを、128ビット・キー暗号化キーKK(左半
分64ビットKKL及び右半分64ビットKKRより成る)、及び
任意長制御ベクトルCinfにより暗号化するシステムを示
す。 第10図は、本発明の第二実施例の解説図であり、第9図
の方法で任意長制御ベクトル及び128ビット・キー暗号
化キーにより暗号化された64ビット暗号キーKを、非暗
号化するシステムを示す。 第11図は、修正探索コード操作(MDCOP)の解説図であ
る。MDCOPは修正探索コード(MDC)アルゴリズム1ブロ
ックごとに、2から4回の暗号化に使用される。図面に
は、MDCOPアルゴリズムについて文章及び概略図で示し
てある。 第12図は、修正探索コード(MDC)アルゴリズム1ブロ
ックごとに、2回の暗号化を行なう場合、 第13図は、修正探索コード(MDC)アルゴリズム1ブロ
ックごとに、4回の暗号化を行なう場合について解説し
てある。 第14図は、3つのCV方法(64ビットCV、128ビットCV、
任意長CV)を暗号処理上分離する方法について述べた図
である。キー暗号化キーKKL、KKRにより排他的論理和さ
れる制御ベクトルを各方法について示してある。書くベ
クトル中の固定ビット・フィールドは、3方法を分離す
るのに使われる特定のコーディングに従って定義され
る。 第15図は、(a)から(f)までに分類されており、任
意長制御ベクトルのデータ構造を示す。 第16図は、機密保護パスワードを制御ベクトルに組み込
む暗号処理システムを示す図である。 第17図は、パスワードを制御ベクトルデータ構造に組み
込む例をいくつか図示したものである。 第18図は、時間情報を制御ベクトルに組み込む暗号処理
システムを示す図である。 第19図は、時間情報を制御ベクトル・データ構造に組み
込む例をいくつか図示したものである。 第20図は、パスワードが組み込まれた任意長制御ベクト
ルによる暗号化を示す図である。 第21図は、時間間隔検査及び、任意長制御ベクトルによ
る非暗号化を示す図である。 第22図は、任意長制御ベクトルの暗号機構を示す図であ
る。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ウイリアム・シイー・アーノルド アメリカ合衆国ニユーヨーク州マホパツ ク、アール・デイー2、ウツドランド・ロ ード(番地なし) (72)発明者 ドナルド・ビイー・ジヨンソン アメリカ合衆国ヴアージニア州マナサス、 ブランツヴイレ・ロード9430番地 (72)発明者 ラメシユ・ケイ・カーン アメリカ合衆国ヴアージニア州ヘーンデ ン、コパー・リツヂ・ドライブ13613番地 (72)発明者 アン・ヴイ・リ アメリカ合衆国ヴアージニア州アーリント ン、サウス・コロンバス・ストリート4217 番地 (72)発明者 ロステイスロー・プライマツク アメリカ合衆国ヴアージニア州ダンフリー ズ、フエアウエイ・ドライブ15900番地 (72)発明者 ステイブ・アール・ホワイト アメリカ合衆国ニユーヨーク州、ニユーヨ ーク、33番パーク・アヴエニユー7番地 (72)発明者 ジヨン・デイー・ウイルキンズ アメリカ合衆国ヴアージニア州サマーヴイ レ、ピー・オー・ボツクス8番地 (56)参考文献 電子情報通信学会技術研究報告IT86− 53“IDに基づく鍵配送方式”岡本栄司

Claims (17)

    【特許請求の範囲】
  1. 【請求項1】暗号キーに関する操作に対する暗号サービ
    ス要求を出力するデータ処理システムにおいて、 前記暗号キーは、その創作者により行うことが許可され
    た機能を規定する制御ベクトルに関連しており、 所与の長さを有する制御ベクトルの使用を可能にする暗
    号装置であって、 Nビット暗号キーに関連する所与の長さの制御ベクトル
    を受信するための制御ベクトル入力と、 前記制御ベクトル入力と連結した入力と、暗号サービス
    要求を受信するための入力とを有し、前記制御ベクトル
    が前記暗号サービス要求により要求された暗号機能を許
    可しているか否かを検査し、許可されている場合には許
    可信号を出力する手段と、 前記制御ベクトル入力と連結した入力と、Nビット出力
    とを有し、前記制御ベクトルをNビット・ハッシュ値に
    マッピングするハッシング手段と、 前記Nビット暗号キーを受信するためのキー入力と、 前記ハッシング手段のNビット出力に連結された第1の
    入力と、前記キー入力に連結された第2の入力とを有
    し、前記Nビット・キーと前記Nビット・ハッシュ値と
    の論理演算の結果である、計算されたキー値を出力に出
    力する論理手段と、 入力情報を受信するための第1の入力と、前記論理手段
    の出力に連結されたキー値入力とを有し、前記計算され
    たキー値を用いて、前記入力情報を暗号的に変換した出
    力情報を形成する暗号変換手段とを有し、 前記暗号変換手段は、 前記制御ベクトル検査手段からの前記許可信号の出力に
    連結しており、 前記要求された暗号機能が前記制御ベクトルにより許可
    されていないと前記制御ベクトル検査手段が判断した場
    合には、前記出力情報の形成を停止する ことを特徴とする暗号装置。
  2. 【請求項2】前記制御ベクトルがNビットを超える長さ
    を有することを特徴とする請求項1記載の暗号装置。
  3. 【請求項3】前記制御ベクトルが、その中の他のフィー
    ルドの意味を選択的に決定しているタグ定義フィールド
    を有していることを特徴とする請求項1記載の暗号装
    置。
  4. 【請求項4】前記制御ベクトルが、それに関連するNビ
    ット暗号キーを用いることができる期間を決めているフ
    ィールドを有しており、それ以外の時間には前記暗号キ
    ーの使用を禁止していることを特徴とする請求項1記載
    の暗号装置。
  5. 【請求項5】前記制御ベクトルが、それに関連するNビ
    ット暗号キーを許可されていないユーザ使用することを
    防止するためのユーザ・パスワードのためのフィールド
    を有することを特徴とする請求項1記載の暗号装置。
  6. 【請求項6】前記制御ベクトルが、その長さクラスをユ
    ニークに表すフィールドを有し、前記ハッシング手段に
    より生成されたNビット・ハッシュ値が、異なる長さク
    ラスを有する第2の制御ベクトルに対するNビット・ハ
    ッシュ値と等しくならないようにすることを特徴とする
    請求項1記載の暗号装置。
  7. 【請求項7】パスワード入力をさらに有し、 前記制御ベクトルは、前記パスワード入力から受信した
    パスワードのために予約された空フィールドを有してお
    り、 前記パスワードを前記空フィールドに挿入された制御ベ
    クトルが前記ハッシング手段に入力されることを特徴と
    する請求項1記載の暗号装置。
  8. 【請求項8】前記制御ベクトルの空フィールドが、前記
    制御ベクトル内の関連するフィールド記述子により識別
    されることを特徴とする請求項7記載の暗号装置。
  9. 【請求項9】前記制御ベクトル検査手段に連結されてお
    り、時間を示す値を供給するリアルタイム・クロック手
    段をさらに有し、 前記制御ベクトルは、それに関連するNビット暗号キー
    が使用できる時間間隔を指定したフィールドを有してお
    り、 前記制御ベクトル検査手段が、前記リアルタイム・クロ
    ック手段からの前記時間を示す値にアクセスし、前記時
    間を示す値が前記制御ベクトルにより指定された時間間
    隔内であるかを検査し、前記時間を示す値が前記時間間
    隔内でない場合には、前記許可信号の出力を禁止するこ
    とを特徴とする請求項1記載の暗号装置。
  10. 【請求項10】前記制御ベクトルが、関連する前記Nビ
    ット暗号キーが指定された暗号命令で使用可能である時
    間間隔を特定していることを特徴とする請求項9記載の
    暗号装置。
  11. 【請求項11】前記制御ベクトルが、関連する前記Nビ
    ット暗号キーが指定されたデータ処理システムで使用可
    能である時間間隔を特定していることを特徴とする請求
    項9記載の暗号装置。
  12. 【請求項12】前記制御ベクトルが、関連する前記Nビ
    ット暗号キーが指定されたユーザにより使用可能である
    時間間隔を特定していることを特徴とする請求項9記載
    の暗号装置。
  13. 【請求項13】暗号キーに関する操作に対する暗号サー
    ビス要求を出力するデータ処理システムにおいて、 前記暗号キーは、その創作者により行うことが許可され
    た機能を規定する制御ベクトルに関連しており、 2Nビット長の制御ベクトルの使用を可能にする暗号装置
    であって、 2Nビット長の暗号キーに関連する、2Nビット長の制御ベ
    クトルを受信するための制御ベクトル入力であって、 前記制御ベクトルは、Nビット長の左部分CLとNビット
    長の右部分CRを有しており、 前記暗号キーは、Nビット長の左部分KKLとNビット長
    の右部分KKRを有している 前記制御ベクトル入力と、 CLとKKLを受信し、第1のキー値として排他的論理和演
    算の結果であるKKL+CLを計算する第1論理ブロック手
    段と、 CRとKKRを受信し、第2のキー値として排他的論理和演
    算の結果であるKKR+CRを計算する第2論理ブロック手
    段と、 平文テキスト入力と、前記第1のキー値を受信するため
    の入力と、出力とを有する第1の暗号化手段と、 前記第1の暗号化手段の出力に接続された入力と、前記
    第2のキー値を受信するための入力と、出力とを有する
    非暗号化手段と、 前記非暗号化手段に接続された入力と、前記第1のキー
    値を受信するためのキー入力と、出力とを有し、前記第
    1の暗号化手段に入力された平文テキストの変形である
    暗号テキストを生成する第2暗号化手段と を有する暗号装置。
  14. 【請求項14】暗号キーに関する操作に対する暗号サー
    ビス要求を出力するデータ処理システムにおいて、 前記暗号キーは、その創作者により行うことが許可され
    た機能を規定する制御ベクトルに関連しており、 2Nビット長の制御ベクトルの使用を可能にする暗号装置
    であって、 2Nビット長の暗号キーに関連する、2Nビット長の制御ベ
    クトルを受信するための制御ベクトル入力と、 前記制御ベクトル入力に連結された入力と、暗号サービ
    ス要求を受信するための入力とを有し、前記制御ベクト
    ルが前記暗号サービス要求により要求された暗号機能を
    許可しているかを検査し、許可している場合には許可信
    号を出力する制御ベクトル検査手段とを有し、 前記制御ベクトルは、Nビット長の左部分CLとNビット
    長の右部分CRを有し、 前記暗号キーは、Nビット長の左部分KKLとNビット長
    の右部分KKRを有し、 さらに、 CLとKKLを受信し、第1のキー値である、排他的論理和
    演算の結果KKL+CLを生成する第1論理手段と、 CRとKKRを受信し、第2のキー値である、排他的論理和
    演算の結果KKR+CRを生成する第2論理手段と、 暗号テキストを受信するための入力と、前記第1のキー
    値を受信するためのキー入力と、出力とを有する第1非
    暗号化手段と、 前記第1非暗号手段の出力に接続された入力と、前記第
    2のキー値を受信するためのキー入力と、出力を有する
    暗号化手段と、 前記暗号化手段の出力に接続された入力と、前記第1の
    キー値を受信するためのキー入力と、出力とを有し、前
    記第1非暗号化手段に入力された前記暗号テキストから
    平文テキストを生成する第2非暗号化手段と を有する暗号装置。
  15. 【請求項15】暗号キーに関する操作に対する暗号サー
    ビス要求を出力するデータ処理システムにおいて、 前記暗号キーは、その創作者により行うことが許可され
    た機能を規定する制御ベクトルに関連しており、 所与の長さを有する制御ベクトルの使用を可能にする暗
    号方法であって、 Nビット暗号キーに関連する、所与の長さの制御ベクト
    ルを受信するステップと、 前記制御ベクトルが暗号サービス要求により要求された
    暗号機能を許可しているかを検査する制御ベクトル検査
    ステップと、 前記制御ベクトルをNビット・ハッシュ値にマッピング
    するハッシング・ステップと、 前記Nビット・暗号キーと前記Nビット・ハッシュ値の
    論理演算の結果である、計算されたキー値を形成するス
    テップと、 前記計算されたキー値を用いて入力情報を出力情報に暗
    号的に変換するステップと、 前記制御ベクトル検査ステップで、要求された前記暗号
    機能が前記制御ベクトルにより許可されないと判断され
    た場合、前記出力情報の形成を選択的に禁止するステッ
    プと を含む暗号方法。
  16. 【請求項16】パスワードを受信するステップと、 前記マッピング・ステップに先立ち、前記制御ベクトル
    の空フィールドに前記パスワードを挿入するステップと をさらに含む請求項15記載の暗号方法。
  17. 【請求項17】時間値が前記制御ベクトルにより指定さ
    れた時間間隔内であるかどうかを検査するステップと、 時間値が前記制御ベクトルにより指定された時間間隔内
    にない場合、前記出力情報の形成を禁止するステップと をさらに含む請求項15記載の暗号方法。
JP20711489A 1988-08-29 1989-08-11 暗号装置及び方法 Expired - Lifetime JPH0816825B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US23801088A 1988-08-29 1988-08-29
US238010 1988-08-29

Publications (2)

Publication Number Publication Date
JPH02106787A JPH02106787A (ja) 1990-04-18
JPH0816825B2 true JPH0816825B2 (ja) 1996-02-21

Family

ID=22896115

Family Applications (1)

Application Number Title Priority Date Filing Date
JP20711489A Expired - Lifetime JPH0816825B2 (ja) 1988-08-29 1989-08-11 暗号装置及び方法

Country Status (2)

Country Link
JP (1) JPH0816825B2 (ja)
CA (1) CA1319198C (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2689998B2 (ja) * 1990-08-22 1997-12-10 インターナショナル・ビジネス・マシーンズ・コーポレイション 暗号動作を行う装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
電子情報通信学会技術研究報告IT86−53"IDに基づく鍵配送方式"岡本栄司

Also Published As

Publication number Publication date
JPH02106787A (ja) 1990-04-18
CA1319198C (en) 1993-06-15

Similar Documents

Publication Publication Date Title
US4924515A (en) Secure management of keys using extended control vectors
US4941176A (en) Secure management of keys using control vectors
EP0529261B1 (en) A hybrid public key algorithm/data encryption algorithm key distribution method based on control vectors
US4918728A (en) Data cryptography operations using control vectors
JP2539164B2 (ja) 商用デ―タ・マスキング
US5200999A (en) Public key cryptosystem key management based on control vectors
US5815573A (en) Cryptographic key recovery system
US6907127B1 (en) Hierarchical key management encoding and decoding
US4203166A (en) Cryptographic file security for multiple domain networks
US6333983B1 (en) Method and apparatus for performing strong encryption or decryption data using special encryption functions
EP0354774B1 (en) Data cryptography using control vectors
JP2552061B2 (ja) 公開キー暗号システムにおいてネットワーク安全保証ポリシーが狂わないようにする方法及び装置
JP2746352B2 (ja) 遠隔位置に設置したコンピュータによる通信のための機密防護通信システム及び方法
US6292896B1 (en) Method and apparatus for entity authentication and session key generation
AU624507B2 (en) A method for utilizing an encrypted key as a key indentifier in a data packet in a computer network
US6049612A (en) File encryption method and system
US5796830A (en) Interoperable cryptographic key recovery system
US4386233A (en) Crytographic key notarization methods and apparatus
US6535607B1 (en) Method and apparatus for providing interoperability between key recovery and non-key recovery systems
JP2575558B2 (ja) 公開キー使用制御方法および装置
JPS6021501B2 (ja) デ−タ通信ネツトワ−クにおける操作キ−検証方法
JPS6127751B2 (ja)
EP0354770B1 (en) Secure management of keys using extended control vectors
EP0356065B1 (en) Secure management of keys using control vectors
JPH0816825B2 (ja) 暗号装置及び方法