JPH02300784A - 暗号キー検証方法及び装置 - Google Patents

暗号キー検証方法及び装置

Info

Publication number
JPH02300784A
JPH02300784A JP2110660A JP11066090A JPH02300784A JP H02300784 A JPH02300784 A JP H02300784A JP 2110660 A JP2110660 A JP 2110660A JP 11066090 A JP11066090 A JP 11066090A JP H02300784 A JPH02300784 A JP H02300784A
Authority
JP
Japan
Prior art keywords
cryptographic
control vector
key
cryptographic key
authorized
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
JP2110660A
Other languages
English (en)
Other versions
JPH0820850B2 (ja
Inventor
Stephen M Matyas
ステイブン・エム・マチユーズ
Dennis G Abraham
デニイーズ・ジイー・アブラハム
Donald B Johnson
ドナルド・ビイー・ジヨンソン
Ramesh K Karne
ラメツシユ・ケイ・カーン
An V Le
アン・ヴイ・リ
Patrick J Mccormack
パトリツク・ジエイ・マクコーマツク
Rostislaw Prymak
ロステイスロー・プライマツク
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 JPH02300784A publication Critical patent/JPH02300784A/ja
Publication of JPH0820850B2 publication Critical patent/JPH0820850B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime 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
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/30018Bit or string instructions
    • 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
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07BTICKET-ISSUING APPARATUS; FARE-REGISTERING APPARATUS; FRANKING APPARATUS
    • G07B17/00Franking apparatus
    • G07B17/00733Cryptography or similar special procedures in a franking system
    • 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
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07BTICKET-ISSUING APPARATUS; FARE-REGISTERING APPARATUS; FRANKING APPARATUS
    • G07B17/00Franking apparatus
    • G07B17/00733Cryptography or similar special procedures in a franking system
    • G07B2017/00959Cryptographic modules, e.g. a PC encryption board
    • G07B2017/00967PSD [Postal Security Device] as defined by the USPS [US Postal Service]
    • 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/12Details relating to cryptographic hardware or logic circuitry

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 A、産業上の利用分野 本発明は、広義にはデータ処理技術に関し、より詳細に
はデータ処理における暗号の応用分野に関する。
B、従来技術及びその課題 下記の同時係属の米国特許出願が本発明に関係するもの
であり、いずれもインターナシロナル・ビジネス・マシ
ーンズ・コーポレーションに譲渡され、引用により本明
細書に合体される。
B、ブラハトル(Brachtl )他の「ステーショ
ンで確立された制御値の生成による暗号キーの制御され
た使用(Controlled Use ofCryp
tographic Keys via Genera
ting 5tationsEstablished 
Controlled Values) Jと題する1
987年5月29日付は出願第55502号。
S、マチアス(Matyas )他の「制御ベクトルを
使用した安全なキー管理(Secure Manage
ment ofKeys Using Control
 Vectors) Jと題する1988年8月11日
付けの出願第231114号。
S、マチアス他の「制御ベクトルを使用したデータ暗号
操作(Data Cryptography Oper
ationsUsing Control Vecto
rs) Jと題する1988年8月17日付けの出願第
233515号。
S、マチアス他の「制御ベクトルを使用したPIN処理
(PIN Processing Using Con
trolVectors) Jと題する1988年8月
26日付けの出願第237938号。
S、マチアス他の「拡張制御ベクトルを使用した安全な
キー管理(Secure Management of
 KeysUsing Extended Contr
ol Vectors) Jと題する1988年8月2
9日付けの出願第238010号。
B、ブラハトル他の「公用一方向暗号化機能に基づく修
正検出コードを使用したデータ確認(Data Aut
hentication Using Modific
ationDetection Codes Ba5e
d on a Public One WayEncr
yption Function) Jと題する198
7年8月28日付けの出願第90833号。
D、エイブラハム(Abraham )他の「外部プロ
グラミング能力をもつスマート・カードとその作成方法
(Smart Card Having Extern
al Program−ming Capabilit
y and Method of Making Sa
me) Jと題する1987年1月19日付は出願第0
04501号。
B−1制御ベクトルの概念 制御ベクトルとは、暗号キーの使用属性を定義し、ある
ネットワーク装置から別の装置への暗号キーの配布を制
御するための、コンパクトなデータ構造である。制御ベ
クトルは、制御ベクトルが暗号ハードウェアに対して正
しく指定される場合にのみキーが正しく解読できるよう
に、暗号化処理によってキーに暗号的に結合される。
第1図に、上記のブラハトル他及びマチアス他の同時係
属の米国特許出願に記載されている、64ビツトの制御
ベクトルを128ビツトの暗号キーに暗号的に□結合す
るためのシステムを示す。表記法としては、平文テキス
トXのキーKによる暗号化をeK (X)=Yで表すの
が好都合である。ただし、Yはその結果得られる暗号テ
キストを表す。
暗号テキストYをキーにで解読して平文テキストXを回
復する逆の処理は、dK (Y)=Xで表される。64
ビツトのキーKを、128ビツトのキー暗号化キーKK
(キーの左側64ピツ)KKLと右側64ビツトKKR
から構成される)とレジスー18= タ40“中の64ビツトの制御ベクトルCを使って暗号
化する方法は、上記のマチアス他の米国特許出願第23
1114号明細書に記載されている多重暗号化法の変形
であり、eKKL+C(dKKR+C(eKKL+C(
K)))で表される。
ただし、“°+“は排他的OR関数である。すなわち、
暗号化は、まず排他的OR装置46中で64ビツトの制
御ベクトルCをレジスタ42中のKKL及びKKRと排
他的ORし、次いで交互にレジスタ44中のKを暗号化
装置41中でKKL十Gを使って暗号化し、その結果を
解読装置43中てKKR+Cを使って解読し、その結果
を暗号化装置45中でKKL+Cを使って暗号化するこ
とからなる。厄介な形のe K K L + C(d 
K K R+ C(eKKL+C(K)))と書く代り
に、簡略表記を使用する。排他的OR操作、すなわちC
をKKと排他的ORする、より正確に言えばCをKKL
及びKKRと排他的ORする動作を、表記KK。
Cて表す。KKが64ビツト・キーではなく128ビツ
ト・キーであることを示すには、KKの代りに表記”K
Kを使う。すなわち”K Kは128ビツト・キーを表
し、アステリスクのないK Kは64ビツト・キーを表
す。全体として、e”KK。
C(K)は、Cを予めKKの両半分と排他的ORしてお
いて、Kを128ビツトKKで暗号化することを表す。
第2図に、キーKKと制御ベクトルCを使ってKの暗号
化された値(すなわちY=e”KK、C(K))を解読
するためのシステムを示す。この処理は、ます前と同じ
くCをK K L及びKKRと排他的ORし、次いで交
互にKの暗号化された値を解読装置47中でKKL+C
を使って解読し、その結果を暗号化装置48中てKKR
+Cを使って暗号化し、その結果を解読装置49中てK
KL十Cを使って解読することからなる。第2図から理
解できるように、K KとCとeKKL+C(dKKR
十〇 (eKKL+C(K)))が正しく指定されてい
るとKが正しく回復されるが、Cのたった1ビットでも
正しく指定されていない場合は、予測できない、実際に
はランダムな値が発生する。
(厳密に言うと、Cに等しくない任意の制御ベクトルを
C′とし、KKとC′を使って暗号テキスト eKKL
+C(dKKR+C(eKKL 十 C(K)))を解
読する場合、Kに等しい平文テキストが偶然に回復され
る確率は1/2”64であり、これは暗号的結果ではな
い。不正使用者がKの平文値を発見てきる機会は、単純
な直接探索法を使う、すなわち平文テキストとそれに対
応するKで暗号化された暗号テキストが与えられている
ものとして、所与の平文テキストを与えるキーが見つか
るまで可能なあらゆるキーを使ってその暗号テキストを
解読する暗号解析と同程度でしかない。どちらの場合に
も、必要な暗号化/解読ステップの数は相当な数になる
。) ANSI  X3.92−1981に記載されているデ
ータ暗号化アルゴリズム(DEA)は、第1図及び第2
図に示した暗号化法及び解読法(復号化法)を使って制
御ベクトルと共に動作できる暗号化アルゴリズムの一例
である。制御ベクトルの長さをキーの長さまたはその倍
数に等しく指定して、多重暗号化技術を使用すれば、ど
んな対称ブロック暗号にも制御ベクトルの概念を適合で
きることが理解されよう。
B−2暗号装置のネットワーク構成 第3図に、接続された暗号装置(ホスト、制御装置、ワ
ークステーション等)のネットワークを示す。このネッ
トワークは、暗号配布チャネル1000を介して相互に
接続された、データ処理システム2中の、暗号的に通信
できる能力のある暗号装置100.200,300等か
ら構成される。
すなわち、データを送信側装置で暗号化し、受信側装置
で解読(復号または復号化ともいう。以下同じ。)する
ことにより、装置同士が私的に通信することができる。
諸装置は、メツセージ確認コードを生成して、送信側装
置で作成されたメツセージに付加することにより、デー
タ送信を確認することができ、受信側装置でメツセージ
とメソセージ確認コードを確認することができる。また
諸装置は、生成側装置の暗号装置内でキーを安全に生成
し、キーを暗号化し、暗号化されたキーを受信側装置に
送ることができ、暗号化されたキーは受信側装置で受信
され、後でデータの暗号化及び確認に、あるいは他の何
らかのキー管理機能に使用するため、受信側装置に属す
るキー・データ・セ・ント中に適当な形で記憶される。
上記及びその他のキー管理の手順、プロトコル及び方法
は、上記のマチアス他の同時係属の特許出願明細書によ
り詳しく記載されている。
第4図は、第3図に示した暗号装置100の拡大図であ
るが、各暗号装置は、1組の暗号命令を実行できる暗号
機構(CF)4、キー記憶機構22、暗号機構アクセス
・プログラム(CFAP)54、及びユーザ適用業務プ
ログラム55を含んでいる。CF4は、左側64ビット
部分KMLと右側64ビット部分KMRからなる128
ビツトのマスク・キーKMを記憶するためのレジスタ1
8を含む。(CF内で実施されている暗号アルゴリズム
は、データ暗号化アルゴリズム(DEA)であると仮定
する。)CF4外に記憶されているすべてのキーは、第
1図に示すようにマスク・キーと制御ベクトルのもとて
暗号化され、キー記憶機構22に記憶される。キー記憶
機構22中のキー、すなわちマスク・キーの下で暗号化
されたキーは、CFによって処理できる形であり、した
がって操作可能キーと呼ばれる。他のキー(キー暗号化
キーKEKと呼ばれる)の下で暗号化されたキーは、あ
る装置から別の装置へ配布するのに適した形である。す
なわち、キーは別の装置に移出するあるいは別の装置か
ら移入するのに適した形で記憶される。(注:キーは時
々移入形で生成されて暗号化され、したがってそれが生
成されたのと同じ装置で再移入できる。)通常、各装置
対は、a)キーを暗号化して第1の装置から第2の装置
に送るのに使用される第1のKEK (KEKI)と、
b)キーを暗号化して第2の装置から第1の装置に送る
のに使用される第2のKEK (KEK2)の2つのK
EKを共用する。第1の装置では、KEKlはその制御
ベクトルによってK E Kセンダ・キーと呼ばれる。
というのは、第2の装置に移出するためのキーを暗号化
することができるからである。
一方、KEK2はその制御ベクトルによってKEKレシ
ーバ・キーと呼ばれる。というのは、第2の装置から移
入するためのキーを解読することができるからである。
第2の装置では、KEKlとKEK2は逆の名で呼ばれ
る。すなわち、KEKlがKEKレシーバ・キーであり
、KEK2がKEKセンダ・キーである。暗号機構4は
また、64ビツトの乱数を発生することができる乱数発
生機構26をも含んでいる。乱数発生機構の出力は、C
Fのみが読み取ることができる。暗号機構4はまた、携
帯式キー人力装置60の接続用ボート59を備えた安全
な正面パネル・インタフェース58をも含んでいる。こ
の正面パネルはキー人力装置60を介して、マスク・キ
ーを含めたキーの入力を可能にするための物理的なキー
で活動化されるスイッチ61を含んでいる。(前掲の同
時係属の米国特許出願第231114号に、暗号装置1
00を含む暗号構成要素のより詳しい説明がある。) 再度第4図を参照すると、命令セット52は、=25− キー管理、データ暗号化、確認の各機能をサポートシ、
個人識別番号(PIN)の確認に基づいて金融トランザ
クションを処理することのできる、いくつかの暗号命令
からなる。上記の同時係属の米国特許出願第23111
4号、第233515号、第237938号の各明細書
に、上記に引用した3つの暗号適用例のより詳しい説明
が出ている。通常、暗号サービスを求める要求は、適用
業務プログラム55から発する。その要求を満たすのに
必要なステップは以下の通りである。たとえば、要求は
、ステップ62でCFAPに対するマクロ呼出しの形を
取ることができ、その際、1つまたは複数のパラメータ
(たとえば、平文データと暗号化データ、キーと暗号変
数、ステップ65でキー記憶機構22中の暗号化された
キーにアクセスする際に使用されるキー・ラベル)がパ
スされて、要求された機能を実行するためにCFAP5
4を使用可能にする。CFAPは、新しい暗号キー及び
暗号変数を生成するため、あるいはデータまたはキーを
暗号化、解読、または再暗号化し、26一 それによって適当な暗号化された形または解読された形
の出力を生成するために、必要に応じてステップ64で
1つまたは複数の暗号命令を実行すべく CF4を呼び
出すことができる。その結果、CFAPは、ステップ6
5で新しく生成された暗号化されたキーをキー記憶機構
22に記憶することができ、ステップ66で1つまたは
複数の値を要求側適用業務プログラムに戻すことができ
、あるいはその両方を実行できる。ステップ64でCF
からCFAPに送られる条件コード、及びステップ66
でCFAPから適用業務プログラムに送られる条件コー
ドは、要求された動作がいつ実行でき、いつ実行できな
かったかの指示を含めて、正常状況または異常状況を示
す。
B−3操作可能キー管理用の制御ベクトルキーの属性は
通常私用ではなくて公用なので、すなわちシステム・ユ
ーザが知っているかあるいは推論できるのて、制御ベク
トルは公用の値または秘密でない値として定義される。
一方、システムに対して定義される暗号キーは、秘密に
しておかなければならないので、制御ベクトルをキーに
リンクするプロセスでそのキーを暴露してはならない。
(注:本発明の一態様は、秘密のパスワードを制御ベク
トル中に組み込む技術に関するものである。) 第5図に、制御ベクトルをキーにリンクするプロセスを
示す。この例は、暗号機構によってキーを生成させるキ
ー生成命令K G E Nの使用である。
そのステップは次の通りである。ステップ71で、適用
業務プログラム(APPL)Aは、キーを生成するため
にCFAPを呼び出す。KGEN命令の発行前に、CF
APはステップ72で、生成したいキーの属性を指定す
る64ビツトの制御ベクトルを作成する。ステップ73
で、制御ベクトルCがKGEN命令の一部分としてCF
にパスされる。それに応じて、CFはステップ75で、
(CFのみがその出力を読み取れる乱数発生機構を使っ
て)奇数パリティ用に調節された64ビットの乱数を発
生する。これは、生成されたキーKを表す。
■(は、第1図に示した暗号化規則で示されるように、
ステップ73でパスされた制御ベクトルCとステップ7
4でアクセスされたマスク・キーKMの排他的ORの結
果を使って暗号化される。暗号化されたキーe K M
 、 C(K )が、ステップ76でCFAPに戻され
る。(e”KM、C(K)は、バリアント・キーKML
+CとKMR+Cの下での多重暗号化を表す略号である
ことに注意されたい。)次にCFAPは、ステップ77
で出力された暗号化されたキーe”KM、C(K)と制
御ベクトルCをステップ78でキー記憶機構22に記憶
しくその場合、ステップ79で供給されたキー・ラベル
がステップ80で適用業務プログラムに戻される)、あ
るいはステップ80でそれらの値が要求側適用業務プロ
グラムに戻される。いずれにせよ、キーを生成し、制御
ベクトルを生成されたキーに暗号化によって「リンク」
するプロセスでは、暗号機構の外部で生成された平文の
形のキーが露出されず、−力制御ベクトルは公用すなわ
ち秘密でない値として維持されることを了解されたい。
=29− 制御ベクトルは秘密の量ではないが、それがリンクされ
る相手のキーが使用されるときにはいつでもそれを暗号
機構への入力として供給、指定または生成する必要があ
る。制御ベクトル中のあらゆるビットは、当初キーが生
成され暗号化されたときと全く同じに指定しなければな
らない。Cを正しく指定しないと、ランダムな未知のキ
ー値が回復されることになる。以前に制御ベク)・ルを
使って暗号化されたキーの回復(すなわち、キーの解読
)は、常に、暗号化されたキーと制御ベクトルを呼び出
された暗号命令のパラメータとして、CFAPを介して
CFインタフェースにパスするという、より大きなプロ
セスの一部である。このようにして、暗号機構は制御ベ
クトルを検査して、そのキーが要求された暗号命令に対
する入力パラメータとして使用できることを確かめる。
この制御ベクトルの予備検査を、Cv検査と呼ぶ。複数
の暗号化されたキーと制御ベクトルが暗号命令に対する
パラメータとして供給される時は、CV検査は、制御ベ
クトルの整合性の検査だけでなく、ある制御ベクトル中
の値と別の制御ベクトル中の値の相互検査も必要となる
。暗号命令を処理するために暗号機構が必要とするステ
ップを、第6図に示す。基本的に、各命令は、a)Cv
検査81、b)キー回復82、C)要求された命令の処
理83の3つの機能からなる。必要な第1の機能はCV
検査81であり、制御ベクトルの整合性を検査して、キ
ー・パラメータの要求された使用が要求された命令と整
合するかどうか判定する。Cv検査に失格すると、その
命令の実行は打ち切られる。
いずれの場合にも、状況情報を示す条件コードがCFA
Pに戻される。Cv検査が合格の場合は、プロセスは続
行する。必要な第2の機能は、キー回復82、すなわち
暗号化されたキーの解読である。制御ベクトルとキーを
暗号結合する方法は、どんなごまかしくすなわち、制御
ベクトル中のビットを変えて正しくないキー属性を生じ
させる)を行なっても、そのキーに対してランダムで予
見不能な値が生じるようにするものである。実際に、暗
号命令によって、希望する必要な暗号キーが回復される
ことはない。必要な第3の機能は、要求された暗号命令
の処理83である。制御ベクトルとキーが正しく指定さ
れた場合、その命令は正しく処理される。しかし、ごま
かしが行なわれた場合は、その命令の出力が有用な値を
取らないように命令が設計されている。前記の米国特許
出願第231114号に、Cv検査、キー回復、及び命
令実行の各プロセスの詳細な説明がある。
制御ベクトルによって提供されるキー管理制御の度合は
、制御ベクトル中で利用可能なビット数に関係し、それ
に大いに依存する。たとえば10〜50ビツトの特に短
い制御ベクトルは、使用が非常に限られ、限られた数の
キー管理、分散、使用、制御機構しかサポートできない
。前掲の米国特許出願第238010号に、64ビツト
を超える制御ベクトルを様々な精巧な適用業務中でどの
ように使用すれば暗号キーの使用を有利に制御できるか
が開示されている。
B−4倍長制御ベクトル 第7図と第8図に、第1図と第2図に示した64ビツト
制御ベクトルをどのようにすれば128ビツト制御ベク
トルにうまく拡張できるかを示す。
第7図のシステムは、第1図のシステムと下記の点で違
っている。第7図のシステムでは、レジスタ40L中の
CLがレジスタ42L中のKKLと排他的ORブロック
46L中で排他的ORされてKKL十〇Lを形成し、レ
ジスタ40R中のCRがレジスタ42R中のKKRと排
他的ORブロック46L中で排他的ORされてKKR+
CRを形成する。第1図のシステムでは、CがKKL及
びKKRと排他的ORされて、それぞれKKL+C及び
KKR+Cを形成する。したがって、第1図のシステム
では、同じ64ビツト制御ベクトルがKKの両方の部分
と排他的ORされるが、第7図のシステムでは、異なる
64ビツト制御ベクトルがKKの各部分と排他的ORさ
れる。他の点では、第1図と第7図のシステムは同じで
ある。
便宜上、64ビツト制御ベクトルをK Kと共に使って
Kを暗号化する第1図のケースをe”KK。
C64(K)の表記で表し、128ビット制御ベクトル
をKKと共に使ってKを暗号化する第7図のケースをe
”KK、C128(K)の表記で表すことにする。第1
図の出力値Yは、Y=et′KK、C64(K)で表せ
る一例である。同様に、第7図の出力値Yは、Y=e”
KK、C128(K)で表せる一例である。
第8図のシステムは、第2図のシステムと下記の点で違
っている。第8図のシステムでは、レジスタ40L中の
CLがレジスタ42L中のKKLと排他的ORブロック
46L中で排他的ORされて、KKL+CLを形成し、
レジスタ40R中のCRがレジスタ42R中のKKRと
排他的ORブロック46中で排他的ORされて、KKR
+CRを形成する。第2図のシステムでは、CがKKL
及びKKRと排他的ORされて、それぞれKKL+C及
びKKR+Cを形成する。したがって、第2図と第8図
の違いは、異なる64ビツト制御ベクトルがKKの各部
分と排他的ORされることである。
C=CL=CRの場合、第7図及び第8図のシステムは
第1図及び第2図のシステムそのものとなることを理解
されたい。言い換えれば、Cの左側64ビット部分がC
の右側64ビット部分と等しい場合、128ビツト制御
ベク)・ルを使用する方法は、64ビツト制御ベクトル
を使用する方法に還元される。すなわち、64ビツト制
御ベクトルは、128ビツト制御ベクトルの縮退したケ
ースである。第7図及び第8図のシステムの利点は、追
加の計算または処理上のオーバヘッドなしに、制御ベク
トルの長さが倍になることである。実際、64ビツト制
御ベクトル(第1図と第2図)及び128ビツト制御ベ
クトル(第7図と第8図)に関するこの定義は、アーキ
テクチャ及び実施上いくつかの利点がある。64ビツト
制御ベクトルを実施した既存の暗号ハードウェア及びソ
フトウェアを、128ビット制御ベクトルをサポートす
るように容易に拡張できる。というのは、どちらのシス
テムも、KKLとK K Rから誘導されたバリアント
・キーを用いた3重着号化操作を用いて実施されている
からである。その他の点では、暗号化プロセスは全く同
じである。128ビット:1llI御ベクトルを実施す
る新しい暗号ハードウェア及びソフトウェアは、ソフト
ウェア・レベルでCL=ORと設定するだけで、容易に
64ビツト制御ベクトルをサポートできるようになる。
要するに、64ビツト制御ベクトルも128ビツト制御
ベクトルも、暗号ハードウェアに対してトランスペアレ
ントにすることができる。
B−5任意長制御ベクトル 第9図及び第10図に、第1図及び第2図に示した64
ビツト制御ベクトルをどのようにすれば任意長の制御ベ
クトルにうまく拡張できるかを示す。このシステムによ
って無制限のビット数が実現されるため、最大限の暗号
キー管理制御が可能となる。
第9図に、レジスタ42中のKKRと連結されたK K
 Lである128ビツト・キー暗号化キーKK (KK
=KKL//KKR)と、暗号レジスタ90中の任意の
または不定の長さの制御ベクトルC(Cinfで表す)
とを使って、レジスタ44中の64ビット暗号キーKを
暗号化するためのシステムを示す。この動作では、まず
ハツシュ関数プロセッサ92でC1nfに対する一方向
公用(または公開ともいう。以下同じ。)ハツシュ関数
を計算して、レジスタ94L中にロードされる左64ビ
ット部分MLとレジスタ94R中にロードされる右64
ビット部分MRから構成される128ビツト・ハツシュ
値の結果を生成する。プロセッサ92中で計算される一
方向関数は、関数の出力から関数への入力を計算するこ
とは計算上不可能であるが、入力から出力を計算するの
は容易だという性質を存する。一方向関数は周知であり
、従来技術で記載されている。W、ディフィー(Dif
fie)等の論文「暗号学の新しい方向(Hew Di
rectionsin Cryptography) 
N IEEE Transactions onInf
ormation TheoryllT−22、No、
 e (1976年)、1)p、644−f354によ
る、強い一方向関数の定義を以下に示す。
関数fは、fの定義域内の任意の引数Xについて、それ
に対応する値y==f (x)が容易に計算できるが、
fの値域内のほぼすべてのyについて、yの値が与えら
れfが知られているとしても、f(x)=yとなる性質
をもつどんなXを計算することも計算上不可能である場
合に、一方向関数である。計算の観点からは可逆的てな
いが、その不可逆性は数学で通常みられるものとは全く
異なる関数が定義されることに留意されたい。通常、点
yの逆数が一義的でないとき、すなわちf(xi)=y
二f (x2)となる異なる点X1とX2が存在すると
き、関数fは「不可逆的」と呼ばれるが、これはこの場
合に必要とされる類の難逆性ではない。Myが与えられ
fが知られているとして、f(x)=Yとなる性質をも
つどんなXを計算することも極めて難しくなければなら
ない。
下記で述べる修正検出コード(第11図、第12図、第
13図参照)を計算するためのアルゴリズムは、一方向
関数のさらに強い定義を与える。
このMDCアルゴリズムは、f (xi) =f (x
2)となるような×1と×2を見つけるのが計算」1不
可能なものである。このより強い要件を満だすには、M
DCの長さが少なくとも128ビツトなければならない
。そうでないと、誕生日型の攻撃(birthclay
−type attack)によってf(xl)=f 
(x2)となるXlとX2を見つけることが可能となる
第9図のシステムの話しを続けると、その動作では次に
、排他的ORブロック46Lでレジスタ94L中の64
ビット値MLをレジスタ42L中の64ビツト・キーK
KLと排他的ORし、排他的ORブロック46Rでレジ
スタ94R中の64ビット値MRをレジスタ42R中の
64ビツト・キーKKRと排他的ORする。次いで、レ
ジスタ44中のKを、交互に暗号化装置41中でKKL
+MLを使って暗号化し、解読装置43中でKKR+M
Rを使って解読し、暗号化装置45中でKKL+MLを
使って暗号化する。その結果得られる値Yを、便宜上e
”KK、 C1nf (K)で表す(°“+゛は排他的
OR操作を表す)。
第10図に、レジスタ42中の128ビツト・キー暗号
化キーKK (KKL、KKR)とレジスタ90中の任
意長制御ベクトルC4nfを使って暗号化されたレジス
タ44中の暗号キーにである64ビツト値Yを解読する
ためのシステムを示す。
第10図の諸ステップは、基本的に第9図の諸ステップ
の逆である。その動作では、まず(第9図で使ったのと
同じ一方向公用ハッシュ関数を使って)ハツシュ関数プ
ロセッサ92中でC1nfの一方向公用ハッシュ関数を
計算して、128ビツトの結果ML、MRを生成する。
次に、MLをKKLと排他的ORし、MRをK K R
と排他的ORして、KKL+ML、KKRKKRを生成
する。次いで、交互に解読装置47中でKKL+MLを
使ってKを解読し、暗号化装置48中でKKR+MRを
使って暗号化し、解読装置49中でKKL+MLを使っ
て解読する。要するに、”K K 、 C1nfを使っ
てe”KK、 C1nf (1()を解読して、Kを回
復する。
プロセッサ92中で一方向公用ハッシュ関数を計算する
好ましい方法は、前掲の米国特許出願第090633号
明細書に記載されている、修正検出コード(MDC)計
算アルゴリズムを利用するものである。第11図に、原
始MDC操作MDCOPを示す。これを異なる2つのシ
ステムに適用して、MDCを計算する。第12図に、6
4ビツト入力当たり2回の暗号化操作を必要とする方法
を使用した128ビツトMDCの計算を示す。第13図
に、64ビツト入力当たり4回の暗号化操作を必要とす
る方法を使用した128ビツトMDCの計算を示す。ど
ちらの方法も、任意長の平文制御ベクトル入力を64ビ
ツトのブロックに分割し、最後のブロックには16進数
X’FF’を埋め込んですべてのブロックを64ビツト
にする。
平文ブロックは、すべてのブロックの処理が終わるまで
MDCアルゴリズムによって順次処理される。この関数
の出力は128ビツトMDCである。
C1nfの場合は、制御ベクトルをC1,C2゜、、、
、Cnに分割し、Cnの右側に16進数′FF″(必要
な数の“F F ”バイト)を埋め込んで、Cnを8バ
イトにする。この埋込みステップが必要な場合は暗号ハ
ードウェアによって行なう(すなわち、一方向公用ハツ
シュ関数自体の不可欠な部分である)。次いでMDCア
ルゴリズムを使って(ブロック当たり2回または4回暗
号化法で)ブo−,りC1,C2,、、、、Cnに作用
して、128ビツトMDCを生成する。128ビツトM
DCの左側部分(ML)をKKLと排他的ORしてKK
L+MLを形成し、128ビツトMDCの右側部分(M
R)をKKRと排他的ORL、てK K R+MRを形
成する。
MDCアルゴリズムなどの強い一方向関数を使って、任
意長制御ベクトル上でこのような128ビツト・ハツシ
ュ値を計算することは、最高の安全保護を実現するため
に非常に重要である。このことが必要なのは、不正利用
者が同じハツシュ値をもたらす異なる2つの有効な制御
ベクトルC1と02を見つけるのを防止するためである
。MDC(C1)=MDC(C2)となるC1と02の
対を見つけることができるなら、このプロセスの保全性
が破られてしまう。なぜそうなのかを例示するため、C
1がデータの暗号化だけを可能とし、C2が数ある中で
データの解読を可能とする何らかの制御ベクトルである
という例を考えてみる。
この場合、暗号化されたデータ・キーが制御ベクトルC
1を有することがわかっているとすると、C1の代りに
C2を指定するだけで、どの内部者でも容易に安全保護
を破壊することができる。すなわち、疑いを抱いていな
いユーザがそのデータ・キーを使って暗号化した暗号テ
キストを不正利用者が傍受して、暗号化されたデータ・
キーとC2をその暗号テキストと一緒に解読命令にパス
すると、解読命令は、C2が無効なことを検出てきす、
あるいは正しいデータ・キーが最初にCF内部で回復さ
れることを防止できす、したがってデータが解読される
ことを防止できない。
第22図は、ハツシュ関数プロセッサ92をどのように
して暗号機構4中でハス12に接続できるかを示すもの
である。ハツシュ関数プロセッサ92は暗号処理機構1
6の一部分てもよいが、パス12に接続された別個のプ
ロセッサでもよい。
ハツシュ関数プロセッサ92は、制御ベクトル上で上記
の一方向公用ハッンユ関数を実行する。
B−6制御ベク)・ル間の暗号分離 64ピッI−制御ベクトルのみまたは128ビット制御
ベクトルのみまたは任意長制御ベクトルのみに基づく暗
号実施態様は、本明細書で規定しこれまでに定義した方
法を用いて安全に実施できることを了解されたい。しか
し、複数の方法か共存することか(すなわぢ、同一の暗
号システム内部で実施することが)望ましい、あるいは
それか必要なシステムも存在し得る。その場合、各方法
を暗号的に分離しなければならない。
64ビット制御ベクトル、128ビツト制御ベクトル、
及び任意長制御ベクトルを使ってK KでキーKを暗号
化する方法を、それぞれC64、C128、C1nfて
表すことにする。これらの方法のいずれかをJで表し、
制御方法1を使ってK Kで■くを暗号化することをY
て表す。そうすると、1≠jのいずれかの方法をjて表
した場合、暗号ハードウェアは、下記のことか成立する
ものでなければならない。YとJがハードウェアにパス
された場合(すなわち、実際には方法iが使われたのに
、内部の不正利用者が嘘をついて方法jが使われたと言
った場合)、暗号ハードウェアは、ごまかしが見つかり
、その動作が打ち切られるようにしなければならない。
あるいは、暗号ハードウェアは、不正利用者にとって何
の価値もない(Kと等しくなるのは全くの偶然でしかな
い)ランダムな予見不能な値■(“が生成されるように
しなければならない。
これら3つの制御ベクトル定義の方法の間で暗号分離を
行なう方法を第14図に示す。この方法は、各制御ベク
トルの各64ビット部分中、及び任意長制御ベクトル上
で計算されたMDCの各64ビット部分中の2ビット・
フィールド(すなわち、iとi+1)を利用するもので
ある。これらのビットは、所与の工(及びK Kについ
て、すべてのC64のセントかすべてのC128のセッ
トと異なり、すべてのC4nf J二で計算されたすべ
ての128ビットMDC値のセントと異なるように割り
当てられた値である。
B−7タグ本位及び位置依存の制御ベクトル・データ構
造 任意長の制御ベクトルCについて、2種のアーキテクチ
ャ仕様が可能である。第1に、Cは、C中のフィールド
情報が位置に関するものである(すなわち、左または右
側の原点に対するその相対位置に依存する)という仕様
を受け入れる。第2に、Cは、C中のフィールドがタグ
と日付からなるというタグ本位の仕様を受け入れる。こ
の仕様では、フィールドは位置に関するものでなく、任
意の順序を取り得る。さらに、キーを管理及び制御する
のに必要なフィールドたけを制御フィールド中で指定す
ればよい。位置仕様とタグ本位の仕様の混合も可能であ
り、任意長制御ベクトルの定義の範囲内に含まれる。上
記及びその他の方法は、上記の米国特許出願第2380
10号に詳しく記載されている。
B−8制御ベクトルの検査 第16図は、暗号機構を含むデータ処理システムの構成
図である。第16図で、データ処理ンステム2は、第4
図に示す暗号機構アクセス・プログラムや適用業務プロ
グラムなどのプログラムを実行する。これらのプログラ
ムは、制御ベクトルと関連する、暗号キー管理を求める
暗号サービス要求を出力する。制御ベクトルは、関連す
るキーがその作成者によって実行することを許される機
能を定義する。暗号機構は、プログラムにより暗号キー
に対して要求されたキー管理機能が、そのキーの作成者
によって許可されていることを確認する。
第16図に示すように、安全境界6を特徴とする暗号機
構4が、データ処理システム内に含まれ、あるいはそれ
と関連付けられている。入出力経路8は、プログラムか
ら暗号サービス要求、暗号キー、及びそれらに関連する
制御ベクトルを受け取るため、安全境界6を通過する。
入出力経路8は、暗号機構からの暗号要求に対する応答
を出力する。安全境界6内には、バス12によって入出
力経路8に結合された暗号命令記憶機構10が含まれて
いる。制御ベクトル検査機構14が記憶機構10中の命
令に結合され、暗号処理機構16も命令記憶機構10に
結合されている。マスク・キー記憶機構18が暗号処理
機構16に結合されている。暗号機構4は、受け取った
サービス要求に応答してキー管理機能を実行するための
安全な場所をもたらす。
暗号命令記憶機構10は、暗号キーを使ってキー管理機
能を実行することを求める暗号サービス要求を、入出力
経路8を介して受け取る。制御ベクトル検査機構14は
、入出力経路8に結合された、暗号キーに関連する制御
ベクトルを受け取るための入力を有する。制御ベクトル
検査機構14はまた、暗号命令記憶機構10に接続され
た、暗号サービス要求が要求するキー管理機能を制御ベ
クトルが許可するかどうかの検査を開始する制御信号を
受け取るための入力をも存する。
制御ベクトル検査機構14は、暗号処理機構16の入力
に接続された、キー管理機能が許可され、暗号処理機構
16が許可信号を受け取って、暗号キーを使った要求さ
れるキー管理機能の実行を開始することを指示するため
の許可出力20を存する。暗号キー記憶装置22は、入
出力経路8を介して暗号機構4に結合されている。暗号
キー記憶装置22は、暗号キーを、関連する制御ベクト
ルとマスク・キー記憶機構18に記憶されたマスク・キ
ーの論理積である記憶キーの下で暗号キーが暗号化され
るという、暗号化された形で記憶する。
暗号キー記憶機構22から暗号化されたキーを回復する
ことの例は、暗号命令記憶機構10が入出力経路8を介
して暗号キー記憶装置22から暗号キーを回復すること
を求める暗号サービス要求を受け取ったときである。次
いで制御ベクトル検査機構14が、それに応答して、暗
号キーを回復する機能が許可されたという許可信号を暗
号処理機構16に通じる線20上に出力する。次いで暗
号処理機構16が、線20上の許可信号に応答して、暗
号キー記憶機構22から暗号化された形の暗号キーを受
け取り、関連する制御ベクトルとマスク・キー記憶機構
18に記憶されたマスク・キーの論理積である記憶キー
の下で、その暗号化された形の暗号キーを解読するよう
に動作する。
記憶キーは、関連する制御ベクトルとマスク・キー記憶
機構18に記憶されたマスク・キーの排他的ORの結果
である。この論理積は好ましい実施例では排他的OR演
算であるが、他の種類の論理演算でもよい。
関連する制御ベクトルは、暗号化された形のその関連す
る暗号キーと共に暗号キー記憶機構22に記憶されてい
る。暗号記憶機構に記憶されているすべてのキーはマス
ク・キーの下で暗号化されているので、その上での暗号
化されたキーの暗号化及び解読のための統一的方法が実
行できる。
関連する制御ベクトルは、上記の各特許出願明細書によ
り詳しく記載されているように、キー管理機能、データ
暗号化/解読機能、個人識別番号(PIN)処理機能を
含めて、許可された暗号機能のタイプを定義するフィー
ルドを含んでいる。
128ビツト制御ベクトルの制御ベクトル検査は、64
ビツト制御ベクトルでは検査が64ビツトのうちのどの
ビットにも関係し得るのに対して、検査が128ビツト
のうちのどのビットにも関係し得る点以外は、64ビツ
ト制御ベクトルの制御ベクトル検査と同様である。すな
わち、第6図で64ビツト制御ベクトルについて詳しく
示した制御ベクトル検査論理回路は、暗号機構への入力
として64ビツト制御ベクトルの代りに128ビ・ント
制御ベクトルが供給される点以外は、128ビツト制御
ベクトルに必要な制御ベクトル検査論理回路と同様であ
る。
任意長制御ベクトルの制御ベクトル検査も類似している
。すなわち、この場合は非常に長い制御ベクトルが存在
し得、ずっと多くの制御ベクトルのビット及びフィール
ドを検査する必要が生じ得る点以外は、検査はやはり制
御ベクトルに基づいている。任意長制御ベクトルを使用
する場合、制御ベクトル検査は必ず、制御ベクトルの1
28ビツト・ハツシュ一方向関数ではなく制御ベクトル
に基づくものとなる。このハツシュ値は、暗号機構内部
でのみ計算され、それをある装置から別の装置に、また
はある暗号機構から別の暗号機構に通信するために、あ
るいはそれを制御ベクトルのように記憶し、暗号機構に
再入力するために、このハツシュ値が暗号機構外に存在
する必要はない。
(ただし、ハツシュ・アルゴリズム及び制御ベク)・ル
は公知の秘密ではない構成要素であると見なされている
ので、確かに制御ベクトルのハツシュ値が暗号機構の外
部に知られても、(秘密パスワードなど)秘密の値が明
確に制御ベクトルに組み込まれている場合を除き、安全
保護が失われることはない。) 第16図に示した制御ベクトル検査の方法は、制御ベク
トル検査ルーチンが、単一の暗号機構の安全境界内で単
一の制御ベクトル検査機構によって単一点で実行される
という方法に基づくものである。さらに、制御ベクトル
検査機構から暗号処理機構への単一の制御信号または許
可信号か、暗号処理機構による要求された暗号命令の実
行を可能にするための唯一の基礎であると仮定されてい
る。しかし、単一の制御ベクトル検査機構内でまたは単
一のキー処理サイトでのみ制御ベクトルの検査を実行す
ると、暗号キーの制御された使用に依存して暗号適用業
務のフレキシビリティが制限される。逆に、制御ベクト
ルの検査を2つ以上の装置の間で分割すると、キー使用
制御の改善、性能の向上、生産コストの削減のための異
なる多くの有利なアーキテクチャ及び設計の方法が得ら
れる。したがって、制御ベクトル検査を実施するための
新しいより良い方法を用いると、新しいより良い暗号ハ
ードウェア及びソフトウェア装置の設計が可能になるが
、その際、安全保護を確保するために、キー使用を制御
するための精巧な先端的方法が不可欠である。
本発明の一目的は、改良された暗号キー管理の方法を提
供することにある。
本発明の他の目的は、従来技術で記載されている方法よ
りもフレキシビリティが大きく、かつ暗号の安全保護が
同等またはより秀れた、改良された暗号キー管理の方法
を提供することにある。
本発明の他の目的は、暗号システム・ユーザに新しい改
善された暗号サービスを提供することのできる、改良さ
れた暗号キー管理の方法を提供することにある。
本発明の他の目的は、異なる地理的位置にあるが共通ネ
ットワークを介して接続されている多数の暗号装置で制
御ベクトル検査を実行することができ、こうした各装置
で制御ベクトル検査に成功した場合だけ要求された暗号
機構を実行する、改良された制御ベクトル検査の方法を
提供することにある。
本発明の他の目的は、並列プロセッサまたは接続機械上
で実施するのに適していて、改善された性能をもたらし
、あらゆる場所で制御ベクトル検査に成功した場合だけ
、指定された装置で要求された暗号機能を実行する、複
数経路制御ベクトル検査の方法を提供することにある。
本発明の他の目的は、異なる多数の暗号機構または装置
によって実行された制御ベクトル検査の結果を表す1組
の投票(たとえば、全員賛成、過半数賛成、優先投票権
や加重投票権(count moreheavily)
 )に基づいて判断を行なう、要求された暗号命令をい
つどんな条件の下で実行すべきかを判断するための改良
された判断機構を提供することにある。
本発明の他の目的は、ユーザが、制御ベクトル中の指定
されたユーザ・フィールドを介して暗号キーの使用を制
御できる、改良されたキー管理の方法を提供することに
ある。
本発明の他の目的は、ユーザ・フィールドの制御ベクト
ル検査が、暗号機構アクセス・プログラム(CFAP)
中のユーザが書いた出口を介して実行されるという、ユ
ーザが、制御ベクトル中の指定されたユーザ・フィール
ドを介して暗号キーの使用を制御できる、改良されたキ
ー管理の方法を提供することにある。
本発明の他の目的は、ユーザ・フィールドの制御ベクト
ル検査が、随伴する暗号装置(たとえば、ワークステー
ション、制御装置、ホスト)の暗号機構に電子的に結合
された、ユーザ提供の携帯用「スマート」カードを介し
て実行されるという、ユーザが、制御ベクトル中の指定
されたユーザ・フィールドを介して暗号キーの使用を制
御できる、改良されたキー管理の方法を提供することに
ある。
C0課題を解決するための手段 上記その他の目的、特徴、及び利点は、本明細書に開示
する発明によって実施される。本明細書では、暗号キー
を使って実行するよう要求された暗号機能がそのキーの
作成者によって許可されたことを確認するための装置と
方法を開示する。本発明は、各キーがその作成者によっ
て実行することを許可されている機能を定義する制御ベ
クトルと関連付けられた暗号キーを用いて暗号機能を実
行することを求める暗号サービス要求を処理するデータ
処理システム中で使用される。
本発明は、暗号キーとその関連する制御ベクトルを受け
取り、それに対する応答を出すために、入出力経路が通
る安全な境界を特徴とする暗号機構を含んでいる。入出
力経路に結合された暗号処理手段と、処理手段に結合さ
れたマスク・キー記憶機構がその境界内に含まれていて
、暗号キーを用いて暗号機能を実行するための安全な場
所をもたらす。
本発明によれば、第1の制御ベクトル検査手段は、暗号
機能をその暗号キーを用いて実行することが許可されて
いるかどうか判定するために、関連する制御ベクトルの
第1の部分の第1の検査を実行すべく、関連する制御ベ
クトルの少なくとも第1の部分を受け取り、かつ暗号キ
ーを用いて暗号機能を実行することを求める暗号サービ
ス要求を受け取る入力端を有する。第1の制御ベクトル
検査手段は、暗号処理手段に結合された、暗号機能をそ
の暗号キーを用いて実行することが許可されているとの
第1の許可信号を出力するための第1許可出力端を有す
る。
さらに、本発明によれば、第2の制御ベクトル検査手段
は、暗号機能をその暗号キーを用いて実行することが許
可されているかどうか判定するために、関連する制御ベ
クトルの第2の部分の第2の検査を実行すべく、関連す
る制御ベクトルの少なくとも第2の部分を受け取り、か
つ暗号キーを用いて暗号機能を実行することを求める暗
号サービス要求を受け取る入力端を有する。第2の制御
ベクトル検査手段は、暗号処理手段に結合された、暗号
機能をその暗号キーを用いて実行することが許可されて
いるとの第2の許可信号を出力するための第2許可出力
端を有する。
暗号処理手段は、第1及び第2許可信号に応答して、暗
号キーを使った暗号機能の実行を開始する。
このようにして、多重処理、遠隔端末、スマート・カー
ド及び多重プログラミングの適用業務に対して、分散式
制御ベクトル検査動作が可能となる。
D、実施例 発明の概要 D−1制御ベクトルのフィールドの独立性第10図に示
すように、制御ベクトルの検査を、単一の暗号機構内の
単一点で検査が行なわれるような、単一制御ベクトル検
査機構に関して説明する。ただし、制御ベクトルの構造
は、制御ベクトル中のフィールド及びベクトルが別々に
相互に独立して検査できるものである。もっとも、とき
には2つ以上の制御ベクトル間、あるいは単一制御ベク
トル中の2つ以上のフィールド間の相互検査が必要とな
ることもある。この戦略は、たとえば、許可信号を発生
させて、制御ベクトル検査機構から暗号処理機構へ送る
ために、制御ベクトル中の適当なキー使用フィールドだ
けを検査すればよいという意味である。さらに、この構
造を用いると、制御ベクトルの検査を異なる時間に、接
続された暗号装置のネットワーク内の異なる点で実行す
ることができ、あるいは(たとえば接続マシン上で)多
数の並列プロセッサを介して並行して処理することがで
きる。
制御ベクトルの検査を2つ以上の装置間で分割すること
により、キー使用制御を改善し、性能を向上させ、生産
コストを下げるための、アーキテクチャ及び設計上の様
々なを利な方法が得られる。
したがって、制御ベクトルの検査を実施する新しいより
秀れた方法により、安全保護を確保するために、キー使
用を制御する精巧な先端的方法に不可欠な、新しいより
秀れた暗号ハードウェア及びソフトウェア製品の設計が
可能となる。
D−2多重並列プロセッサ環境における制御ベクトルの
検査 本発明は、第1に、制御ベクトル検査のタスクをどのよ
うにすれば(たとえば接続マシン上で)並列に実行され
る複数のプロセッサ間で分割できるかを開示するもので
ある。たとえば、CI、C2、C3が3つの制御ベクト
ルを表し、制御ベクトル検査が、(1)CIの検査、(
2)C2の検査、(3)C3の検査、(4)C1とC2
の間での相互検査、(5)C2と03の間での相互検査
からなる場合、この5つの制御ベクトル検査ステップを
異なる5台のプロセッサ間て分割することができる。第
1のプロセッサはC1を検査するタスクを割り当てられ
、第2のプロセッサはC2を検査するタスクを割り当て
られる。第4と第5のプロセッサによって実行されるタ
スクは、2つの制御ベクトルの間での相互検査が必要な
ので、より複雑になることがある。各プロセッサは、そ
の割り当てられた制御ベクトル・タスクを実行し、その
結果、制御ベクトル検査プロセスは合格または失格とな
る。各プロセッサは、この知見を指定されたルーチン(
制御ベクトル検査マネージャと呼ぶ)に報告する。制御
ベクトル検査マネージャは投票(すなわち、成功と失敗
)をカウントする。
5台のプロセッサがすべて成功を報告した場合、制御ベ
クトル検査マネージャは暗号処理機構に、要求された暗
号命令の実行を可能にする制御信号を送る(他の投票戦
略も可能である)。制御ベクトルの明確な利点の1つは
、多重経路検査が可能なことである。すなわち、暗号キ
ー管理適用業務プログラムは、並列プロセッサ及び接続
マシンのアーキテクチャによって得られる向上した性能
を活用できるように調節される。
D−3多数の暗号機構による制御ベク)・ルの検査 本発明は、第2に、制御ベクトル検査のタスクをどのよ
うにすれば、近接しておりあるいは非常に離れた遠隔位
置にあって、制御ベクトル検査を並行して(すなわち並
列に)または逐次的に、あるいは予め定めた順序でまた
は特別の順序によらずに異なる時間に実行する、異なる
複数の暗号装置間でまたはそれぞれの暗号機構間で分割
できるかを開示する。やはり上記の例を使用すると、C
1、C2、C3が3つの制御ベクトルを表し、制御ベク
トル検査が、(1)C1の検査、(2)C2の検査、(
3)C3の検査、(4)C1とC2の間ての相互検査、
(5)C2と03の間での相互検査からなる場合、この
5つの制御ベクトル検査ステップを、異なる5つの装置
間で、あるいは同じことであるが、各装置の暗号機構間
で分割することができる。第1の装置または暗号機構は
C1を検査するタスクを割り当てられ、第2の装置また
は暗号機構はC2を検査するタスクを割り当てられる。
各装置または暗号機構その割り当てられた検査タスクを
実行し、その結果、制御ベクトル検査プロセスは合格ま
たは失格となる。各装置または暗号機構は、その知見(
すなわち成功または失敗)を指定された装置または暗号
機構に、たとえばその暗号機構中で実行される、前述の
ように制御ベクトル検査マネージャと呼ばれるルーチン
に報告する。制御ベクトル検査マネージャは、投票(す
なわち成功と失敗)をカウントする。5台の装置または
暗号機構がすべて成功を報告した場合、制御ベクトル検
査マネージャは暗号処理機構に、要求された暗号命令の
実行を可能にする制御信号を送る。要求された暗号命令
は、制御ベクトル検査マネージャが常駐する装置で要求
されたものと仮定する。実際には、制御ベクトル検査マ
ネージャはまた、制御ベクトル検査タスクを各装置また
は暗号機構に割り当てることもできる。他の実施態様で
は、どの装置が制御ベクトル検査のどの部分を実行する
かが、プロトコルの下で暗示的に定義され、あるいはあ
るプロトコルの下でそのプロトコルが行使される他の何
らかの文脈を介して知られる(他の投票戦略も可能であ
る)。制御ベクトル検査を2つ以上の装置間で分割する
ことにより、製品設計の際、生産コスト、複雑さ、キー
使用制御の精巧化、性能、使い勝手のよさの間で折合い
をつけることが可能となることがある。
たとえば、制御ベクトル検査のタスクを単一装置で行な
う必要はなく、より低コストの装置で共用することがで
き、したがって総生産コストを下げることができる。
この概念の特定の応用例は、スマート・カードを介して
顧客の定義したキー使用フィールドの制御ベクトル検査
を行なうものである。制御ベクトルの残りの部分の制御
ベクトル検査は、端末やワークステーションなど同じ場
所にある暗号装置の暗号機構によって実施される。スマ
ート・カードを所有するユーザが、端末またはワークス
テーションと対話して、暗号に関する所望のタスクを実
行するものと仮定する。暗号適用業務は、128ビツト
の制御ベクトルを必要とし、便宜上その最初の64ビツ
トはワークステーションで検査し、第2の64ビツトは
スマート・カード上で検査するものト仮定する。ワーク
ステーションでもスマート・カード上でも検査が成功し
た場合、要求された暗号命令はワークステーションにあ
る暗号機構によって実行される。(他の戦略も可能であ
る。たとえば、制御ベクトル検査の分割と同様に、命令
の実行自体を2つ以上の命令プロセッサの間で分割する
ことができる。ただし、通常は一列に配列した複雑な暗
号命令を、複数のプロセッサを使って処理することは必
ずしも常に可能ではない。)制御ベクトルを、第1の部
分(端末またはワークステーションで検査されるシステ
ム部分)と第2の部分(スマート・カード上で検査され
るユーザ部分)に分割すると、暗号適用業務を顧客に合
わせて調整することができる。たとえば、ハードウェア
・ベンダは、顧客Aに売るすべてのスマート・カード上
に顧客Aに特有の制御ベクトル検査マイクロコードを事
前ロードすることによってスマート・カードを顧客Aに
合わせて調整し、顧客Bに売るすべてのスマート・カー
ド上に顧客Bに特有の制御ベクトル検査マイクロコード
を事前ロードすることによってスマート・カードを顧客
Bに合わせて調整することができる。顧客A用の制御ベ
クトル検査マイクロコードは、顧客Aが選択する、制御
ベクトルのユーザ部分中の制御ベクトル・フィールドの
定義に依存し、顧客B用の制御ベクトル検査マイクロコ
ードは、顧客Bが選択する、制御ベクトルのユーザ部分
中の制御ベクトル・フィールドの定義に依存する。この
ようにして、各顧客は、端末またはワークステーション
で検査される制御ベクトルのシステム定義部分に基づく
制御ベクトル検査の若干の共通セットを有し、かつスマ
ート・カード上で検査される顧客特有の部分を有する。
スマート・カードを介して制御ベクトル検査を調整する
他の戦略も多数可能であるが、それらはすべて、制御ベ
クトルのユーザ部分の同じ検査を端末またはワークステ
ーションで実行する代りに、スマート・カードが使用で
きるという共通点を有する。というのは、この場合、異
なる各顧客ごとの制御ベクトル検査をハードウェアに組
み込まなければならないからである。したがって、この
ような顧客要件の広いベースに対処するのに必要なハー
ドウェアの量によって生産コストが押し上げられ、ある
いはこうした暗号装置のサービスを受けられる顧客の数
が制限されることがある。
分散処理環境における制御ベクトル検査のもう1つの可
能性は、端末及びワークステーションに制御ベクトル検
査を接続されたホスト・プロセッサにオフロードさせる
ものである。ホストと複数の接続ワークステーションか
らなるネットワークでは、通常はワークステーションで
実行される制御ベクトル検査が、その代りにホストで実
行される。こうした実施態様で可能な利点は、暗号をサ
ポートするために必要なワークステーションのハードウ
ェアを最小にして、製品コストを下げることができるこ
とである。一方ホストでは、制御ベクトル検査は、単一
の制御ベクトル検査機構に負担させることができる。こ
の場合、ハードウェア設計上若干の有利なトレードオフ
を得ることが可能である。この遠隔制御ベクトル検査の
方法を安全に実施するには、端末が制御ベクトル検査要
求メツセージを作成しなければならない。この要求メツ
セージは、暗号機能要求と、要求された機能を処理する
のに必要なすへてのキーに対する制御ベクトルとから構
成される。たとえば、ANSI9゜8のMAC生成方法
と、ホストと共用される予め作成されたMACギーとを
使って、この要求メ、ソセージに対するメツセージ承認
コード(MAC)を計算する。MACは、ワークステー
ションからホストに送られる要求メツセージと共に含ま
れる。
ホストでの制御ベクトル検査に成功した場合は「イエス
」、それに失敗した場合は「ノー」の応答メツセージが
、ホストからワークステーションに送られる。応答メツ
セージに対する同様のMACを、ホストとワークステー
ションの間で共用される同様に予め作成されたMACキ
ーを使って計算し、そのMACをワークステーションに
送られる応答メツセージに含める。MACを生成し検査
するためのプロトコルと手順は、従来技術に記載されて
いる。前掲の米国特許出願第233515号には、前記
の制御ベクトル検査要求メ・ノセージ及び応答メツセー
ジの保全性を保護するために使用できるMAC生成命令
及びMAC検査命令か記■戊されている。
D−4多数の論理的及び物理的エンティティによる制御
ベクトル検査 本発明は、第3に、制御ベクトル検査のタスクをどうす
れば異なる制御ベクトル検査の目的をもつ様々な論理的
エンティティ及び物理的エンティティ、たとえば暗号機
構、CFAP1適用業務プログラムやユーザの間で分割
できるかを開示する。
制御ベクトル検査は、暗号機構によって検査される(す
なわち、ハードウェア中で達成可能な最高の安全保護を
備えた)第1部分と、CFAPによって検査される(す
なわち、CFAPによって割り当てられた検査すべき制
御ベクトル・フィールドからなる)第2部分と、適用業
務プログラムまたはユーザによって検査される(すなわ
ち、ユーザによって割り当てられた検査すべき制御ベク
トル・フィールドからなる)第3部分の3つの部分から
構成できる。この場合、各部分が制御ベクトル中の当該
のフィールドを検査し、制御ベクトル検査に成功しない
限り、暗号化されたキー及び関連する制御ベクトルが各
当事者(適用業務プログラム、=69− CFAPlまたはハードウェア)によって使用されるこ
とはない。各プロセッサが成功または失敗を制御ベクト
ル検査マネージャに報告する、並列プロセッサや多重プ
ロセッサの例とは異なり、このプロセスは、制御ベクト
ル検査が成功したと各当事者が満足しない限り、暗号化
されたキー及び制御ベクトルの流れが中断または阻止さ
れるようになっている。許可を受けたシステム担当職員
を通常のユーザや適用業務プログラムから区別するとい
う変形もある。この場合、(ユーザや適用業務プログラ
ムではなく)許可を受けたシステム担当職員による制御
ベクトル検査は’t CFAP出口を介して制御権を得
た(すなわち、非特権モードではなく特権モードで実行
される)ソフトウェア・ルーチンを用いて実行できる。
こうすると、顧客ならびにベンダの希望を反映した様々
な制御ベクトル検査の方針を、ベンダ及び導入システム
が課すことが可能になる。
D−5投票カウント戦略 一般の大部分の場合、制御ベクトルの検査された部分が
すべて検査に合格した場合に、要求された命令が実行さ
れる。言い換えれば、各制御ベクトル検査機構(または
制御ベクトル検査機構と同等のタスクを実行するプロセ
ッサ)が「成功」と報告した場合に、要求された暗号命
令が実行される。そうではなく、制御ベクトル検査の何
らかの部分が不合格の場合には、その要求された暗号命
令は実行されない。他の投票カウント戦略も可能である
1つの代替案は、ある制御ベクトル検査機構の応答を他
のものより優先させるものである。すなわち、制御ベク
トル検査機構iが制御ベクトル検査機構jより優先され
、装置iが「成功」を報告し装置jが「失敗」を報告す
る場合、装置iの投票権が装置jの投票権に優先する。
その場合、装置iの投票権は無効となる。−例を挙げる
と、装置jは、他のある制御ベクトル機能よりも優先さ
れるオーディタの秘密のパスワードの妥当性を検査する
ことができる。装置jは解読属性りを必要とすることが
あり、この属性が存在しない場合は「失敗」を報告する
。しかしこの例では、秘密のパスワードはD(解読)属
性の欠如をオーバライドするのに十分であると見なされ
るので、オーデイタ機能が優先される。
もう1つの代替案は、多数決に基づいて投票をカウント
するものである。すなわち、過半数の制御ベクトル検査
機構が「成功」を報告した場合に命令が実行される。も
ちろん、これらの異なる投票カウント戦略が意味を持つ
ためには、制御ベクトルの諸フィールドをそれに応じて
定義しなければならない。ただし、本発明の範囲は、そ
の命令を実行するためにすべての投票が「成功」でなけ
ればならないという投票カウント戦略のみに限られるも
のではなく、様々な投票カウント戦略を用いた異なる多
くの環境中で本発明を実施することができる。
D−6保全性を備えた投票 すべて単一の暗号サービス要求(または暗号命令実行要
求)に関連する、1つまたは複数の制御ベクトルの1つ
または多数のフィールドの検査に関わる各制御ベクトル
検査機構は、制御ベクトルの検査の成功に基づいてイエ
ス/ノーの投票を投じる。このイエス/ノーの投票、す
なわち電子的信号が制御ベクトル検査機構から物理的に
保護された線を介して指定された管理プロセッサまたは
暗号機構へと送られるとき、または物理的に保護された
安全な境界内に留まるとき、それらの信号の保全性を確
保するために追加の保護措置が必要ではない。しかし、
イエス/ノーの投票または信号が、不正利用者が「ノー
」の投票を「イエス」の投票に変えて、拒絶された要求
を満たされた要求に変えさせる恐れのある、制御下には
ない不正利用の恐れのある環境中を、たとえば露出した
通信回線暗号装置の無保護バス上を通過する時は、これ
らの信号の保全性を、従来技術で周知の暗号手段によっ
て保護することができる。メツセージ承認コード(MA
C)を使ってメツセージの保全性を確保するためのプロ
トコル及び手順が、これを実現するための周知の唯一の
手段である。本発明では、イエス/ノー信号が制御ベク
トル検査機構から、信号を解釈して要求された暗号命令
を実行するか否かを判断する管理プロセッサまたは暗号
機構に送られる間に、制御ベクトル検査機構によって生
成される信号が保全性をもつことを前提とする。
避1υJ先肌 第16図は、制御ベクトル検査が単一の暗号機構内の単
一点で実行されるという、単一制御ベクトル検査機構に
関して制御ベクトル検査を示している。第16図で、C
ValCVbl・・・、CVmは、暗号機構4が入出力
経路8を介して受け取った暗号サービス要求に関連する
m個の制御ベクトル1組を表すものとする。制御ベクト
ル検査を行なう通常の方法は、m個の制御ベクトルCv
a1cvb、・・・、CVmすべてを制御ベクトル検査
機構14によって検査するものである。暗号処理機構1
6内で受け取った暗号サービス要求を処理する判断も、
同様に制御ベクトル検査機構14から線20を介して暗
号処理機構16に発行される単一の許可信号に基づいて
行なわれる。制御ペクトル検査機構14によって制御ベ
クトルCV a N CVbl・・・、CVmに対して
実施される制御ベクトル検査は、個々の各制御ベクトル
内の個々のビット及びフィールドの整合性検査、ならび
に1つまたは複数の制御ベクトル内のフィールドのn重
検査(相互検査と呼ばれる)からなる。この検査は制御
ベクトルのタイプによって暗示され、また暗号サービス
要求内で要求された機能や指定されたパラメータ値など
暗号サービス要求の性質にも依存することがある。
CV検査の具体的特徴は、それが、合計が各部分の和と
なるような、いくつかのより小さな離散プロセス(サブ
プロセスと呼ぶ)に、通常は全く容易に分割できるプロ
セスであることである。たとえば、第1のCv検査サブ
プロセスがCVa中の第1フィールドの検査からなり、
第2のCv検査サブプロセスがCVa中の第2フィール
ドの検査からなり、第3のCV検査サブプロセスがCV
b中の第1フィールドの検査からなり、第4のサブプロ
セスがCVa中の第3フィールドとCVb中の第2フィ
ールドの検査からなり、第5のサブプロセスがCVa中
の第1フィールドとCVb中の第1フィールドとCVc
中の第1フィールドからなり、以下同様である。一般に
、この1組の制御ベクトルCva1Cvb1・・・、C
Vmを5組のCvフィールド・セットFS1、FS2、
・・・、FSnに配分することができ、各CVフィール
ド・セットは、CV a N CV b 1”−1CV
m中の各々のCV検査ザブプロセスに必要なビット及び
フィールドからなる。次に第17図には、5組のCVフ
ィールド・セラ1−FS1、・・・、、FSnが示され
ており、フィールド・セットFSIはCVaからの第1
組のビットまたはフィールドCVa (1)、CVbか
らの第1組のビットまたはフィールドCVb (1)な
どからなる。フィールド・セットFS2はCVaからの
第2組のビットまたはフィールドCVa (2) 、C
Vbからの第2組のビットまたはフィールドCVb (
2)なとからなる。CVa (1)中のビットまたはフ
ィールドはCVa(2)、・・・、CVa (n)中の
ビットとは全く異なることがあり、場合によっては、相
互検査要件によって若干のオーバラップが生じることも
ある。
CVa (2)とCVa (1) 、CVa (3) 
、−1CVa (n)及びCVa (3)とCVa (
1)、CVa (2) 、CVa (4) 、−、CV
a (n)などの関係についても同じことがいえる。ま
た、Cvb(1)、CVb(2)、・・・、CVb(n
)やCVc (1) 、CVc (2) 、=−1CV
c (n)などについても同じことがいえる。さらに、
任意のi及びjについて1つまたは複数の値CVi(j
)が空セットを表すことがあり得る。したがって、FS
lのCV検査がCVa中の第1フィールドCVa (1
)の検査のみからなる場合、他のn−1個ノサブセット
Cvb(1)、・・・、CVm(1)はすべて空セット
となる。
第18図に示すように、各C■フィールド・セットは関
連する制御ベクトル検査プロセス(サブプロセス)を宵
する。すなわぢ、C■フィールド・セラ)FS 1は関
連する制御ベクトル検査プロセスP(1)をイイし、C
■フィールド・セットFS2は関連する制御ベクトル検
査プロセスP(2)を有し、以下同様である。P(1)
は、Cvalcvb、−・・、CVm中のCVa (1
) 、CVb(1)、・・・、Cvm(1)によって指
定される制御ベクトル・ビット及びフィールドに対して
実行しなければならない制御ベクトル検査を表し、P(
2)は、CVas CVbt ”・、CVm中のCVa
 (2) 、CVb (2) 、−1CVm (2)に
よって指定される制御ベクトル・ビット及びフィールド
に対して実行しなければならない制御ベクトル検査を表
し、以下同様である。すなわち、P(1)、P(2)、
・・・、P (n)は、それぞれCvフィールド・セッ
トFS1、FS2、・・・、FSnと関連する制御ベク
トル検査プロセスである。
制御ベクトルCVa1CVb1−・・、CVmの検査は
、それぞれ5組のCvフィールド・セットFS1、・・
・、、FSnに対して作用するn個の異なる制御ベクト
ル検査プロセスP(1)、・・・、P(n)に分割でき
るので、Cv検査を多数の点で異なるプロセッサによっ
てまたは共通のプロセッサを共=78− 用する異なるプログラムによって、あるいはその両方に
よって実施することができる。これらの異なるプロセッ
サは、単一の暗号機構にサービスする共通ハードウェア
・バスに接続された並列プロセッサでもよく、また異な
る暗号機構にサービスする分散プロセッサでもよい。多
数の組合せや実施例が可能であり、それぞれが独自の特
徴、属性、利点を存する。
次に第19図には、管理プロセスがCv検査を実行しな
い第1の多重プロセッサ実施例が示されている。制御ベ
クトル検査プロセスとCvフィールド・セットの各対P
 (1) 、FS iが、別々の処理装置によって処理
される。全部でn台の処理装置PU(1)、・・・、P
U (n)があり、たとえばCvフィールド・セラ)F
S 1は処理装置PU(1)上で実行される制御ベクト
ル検査プロセスP(1)によって検査され、C■フィー
ルドFS2は処理装置PU (2)上で実行される制御
ベクトル検査プロセスP(2)によって検査されるよう
になっている。処理装置PU (1) 、・・・、PU
(n)によって実行されるC■検査の開始とスケジュー
リング、及びイエス/ノーの応答の収集を担当する管理
プロセスは、別個の処理装置PU(t)によって行なわ
れる。CV検査の要求は、管理プロセスから各処理装置
に送られる要求コマンドによって行なわれる。管理プロ
セスは、受け取ったイエス/ノーの応答に基づき、未処
理の暗号サービス要求を実行させまたは打ち切らせる。
各処理装置PU(1)、−・・、PU (n)は、バス
50を介して処理装置PU (t)中にある管理プロセ
スに接続される。処理装置PU (1) 、・・・、P
U (n)及びPU (t)は、単一の暗号機構の安全
境界内にあってよ<、シたがって、C■検査プロセスの
保全性を保つ。各処理装置PU(1)、・・・、PU 
(n)はまた、命令処理機構(IPU)、バス・アダプ
タ、及び任意選択で暗号化/解読動作を実行するための
暗号処理機構(CU)を有する(破線はCUが任意選択
であることを示す)。
処理装置PU (t)も、命令処理機構、バス・アダプ
タ、及び暗号処理機構を含んでいる。処理装置PU (
t)は、管理プロセスを含んでおり、したがってすべて
の暗号サービス要求を実行するので、CUは任意選択で
はない。代替実施例(図示せず)では、処理装置PU 
(1) 、・・・、PU(n) 、PU (t)及びバ
ス50を保全性のある保護区域内に設けることが可能で
あるが、必ずしも単一の暗号機構内である必要はない。
当業者なら理解できるように、このような代替実施例は
第19図に示した実施例から容易に導かれる。
次に第20図には、管理プロセスがCV検査を行なう第
2の多重プロセッサ実施例が示されている。制御ベクト
ル検査プロセスとCvフィールド・セットの各対PU 
(i) 、FS iは、別々の処理装置によって処理さ
れる。全部でn台の処理装置PU(1)、・・・、PU
 (n)があり、たとえばCVフィールド・セラ)FS
 1は処理装置PU(1)上で実行される制御ベクトル
検査プロセスP(1)によって検査され、C■フィール
ド・セットFS2は処理装置PU (2)上で実行され
る制御ベクトル検査プロセスP(2)によって検査され
るようになっている。しかし、処理装置PU (1)、
・・・、PU (n)によって実行されるCv検査の開
始とスケジューリング、及びイエス/ノーの応答の収集
を担当する管理プロセスは、処理装置PU(1)、・・
・、PU (n)によって行なわれる。第20図では、
管理プロセスは処理装置PU(1)上で実行されるが、
どの処理装置を選択することもできる。管理プロセスは
、受け取ったイエス/ノーの応答に基づき、未処理の暗
号サービス要求を実行させまたは打ち切らせる。各処理
装置PU(1)、・・・、PU (n)はバス50を介
して接続される。処理装置PU (1) 、・・・、P
U (n)は単一の暗号機構の安全境界内にあってよ<
、シたがってC■検査プロセスの保全性を保つ。各処理
装置PU (2) 、−、PU (n)はまた、命令処
EI41構(I P U ) 、バス・アダプタ、及び
任意選択で暗号化/解読動作を実行するための暗号処理
機構(CU)を有する(破線はCUが任意選択であるこ
とを示す)。処理装置PU (1)も、命令処理機構、
バス・アダプタ、及び暗号処理機構を含んでいる。処理
装置PU(1)は、管理プロセスを含んでおり、したが
ってすべての暗号サービス要求を実行するので、CUは
任意選択ではない。
代替実施例(図示せず)では、処理装置PU(1)、・
・・、PU (n)及びバス50を保全性のある保護区
域内に設けることが可能であるが、必ずしも単一の暗号
機構内である必要はない。当業者なら理解できるように
、このような代替実施例は第20図に示した実施例から
容易に導かれる。
次に第21図には、管理プロセスがCV検査を実行しな
い第1の分散プロセッサ実施例が示されている。制御ベ
クトル検査プロセスとCvフィールド・セントの各対P
(i)、FSiが、別々の処理装置によって処理される
。全部でn台の処理装置PU(1)、・・・、PU (
n)があり、たとえばCVフィールド・セラ)FSlは
処理装置PU(1)上で実行される制御ベクトル検査プ
ロセスP(1)によって検査され、CVフィールドFS
2は処理装置PU (2)上で実行される制御ベクトル
検査プロセスP(2)によって検査されるようになって
いる。処理装置PU (1) 、・・・、PU(n)に
よって実行されるCV扶査の開始とスケジューリング、
及びイエス/ノーの応答の収集を担当する管理プロセス
は、別個の処理装置PU(1)によって行なわれる。C
V検査の要求は、管理プロセスから各処理装置に送られ
る要求メ・ノセージによって行なわれる。管理プロセス
は、受け取ったイエス/ノーの応答に基づき、未処理の
暗号サービス要求を実行させまたは打ち切らせる。
各処理装置PU(1)、・・・、PU (n)は、通信
リンク50を介して処理装置PU (t)中にある管理
プロセスと通信する。処理装置PU(1)、・・・、P
U (n)及びPU (t)は、それぞれ別々の暗号機
構の安全境界内にあってよ<、シたがって、CV検査プ
ロセスの保全性を保つ。すなわち、PU(1)は第1の
CF中にあり、PU (2)は第2のCF中にあり、以
下同様である。各処理装置PU(1)、・・・、PU 
(n)はまた、命令処理機構(IPU)、出力アダプタ
、及び任意選択で暗号化/解読動作を実行するための暗
号処理機構(CU)を宵する(破線はCUが任意選択で
あることを示す)。処理装置PU(t)も、命令処理機
構、入出力アダプタ、及び暗号処理機構を含んでいる。
処理装置PU (t)は、管理プロセスを含んでおり、
したがってすべての暗号サービス要求を実行するので、
CUは任意選択ではない。代替実施例(図示せず)では
、処理装置PU(1)、・・・、PU (n)及びPU
(t)をそれぞれ保全性のある保護区域内に設けること
が可能であるが、必ずしも当該の暗号機構内である必要
はない。当業者なら理解できるように、このような代替
実施例は第21図に示した実施例から容易に導かれる。
次に第22図には、管理プロセスがCv検査を行なう第
2の分散プロセッサ実施例が示されている。制御ベクト
ル検査プロセスとCvフィールド・セットの各対P(i
)、FSiは、別々の処理装置によって処理される。全
部でn台の処理装置PU(1)、−・・、PU (n)
があり、たとえばCvフィールド・セットFS1は処理
装置PU(1)上で実行される制御ベクトル検査プロセ
スP(1)によって検査され、Cvフィールド・セット
FS2は処理装置PU(2)lで実行される制御ベクト
ル検査プロセスP(2)によって検査されるようになっ
ている。しかし、処理装置PU(1)、・・・、PU 
(n)によって実行されるCV検査の開始とスケジュー
リング、及びイエス/ノーの応答の収集を担当する管理
プロセスは、処理装置PU(1)、・・・、PU (n
)のうちの1台によって行なわれる。第22図では、管
理プロセスは処理装置PU (1)上で実行されるが、
どの処理装置を選択することもてきる。管理プロセスは
、受け取ったイエス/ノーの応答に基づき、未処理の暗
号サービス要求を実行させまたは打ち切らせる。各処理
装置PU(1)、・・・、PU (n)は通信リンク5
0を介して通信する。処理装置PU(1)、・・・、P
U (n)はそれぞれ別々の暗号機構の安全境界内にあ
り、したがってC■検査プロセスの保全性を保つ。すな
わち、PU (1)は第1のCF中にあり、PU (2
)は第2のCF中にあり、以下同様である。各処理装置
PU (2) 、・・・、PU (n)=86− はまた、命令処理機構(IPU)、入出力アダプタ、及
び任意選択で暗号化/解読動作を実行するための暗号処
理機構(CU)を存する(破線はCUが任意選択である
ことを示す)。処理装置PU(1)も、命令処理機構、
入出力アダプタ、及び暗号処理機構を含んでいる。処理
装置PU(1)は、管理プロセスを含んでおり、したが
ってすべての暗号サービス要求を実行しなければならな
いので、CUは任意選択ではない。代替実施例(図示せ
ず)では、処理装置PU (1) 、・・・、PU(n
)をそれぞれ保全性のある保護区域内に設けることが可
能であるが、必ずしも当該の暗号機構内である必要はな
い。当業者なら理解できるように、このような代替実施
例は第22図に示した実施例から容易に導かれる。
第23図は、IBMパーソナル・コンピュータなどの端
末またはワークステーションによって実施されるC■検
査のもう1つの実施例を示している。バス50“には、
管理プロセスと制御ベクトル検査プロセスP (n)と
Cvフィールド・セラ)FSnを含む暗号機構4、フィ
ールド・セ、ットFS1、・・・、FSn−1と制御ベ
クトル検査プロセスP(1)、・・・、P(n−1)と
プログラムPG(1)、・・・、PG(n−1)を含む
プロセッサ・メモリ23.80386CPU87、RO
M]3、入出力アダプタ89、表示装置97と接続され
た表示アダプタ96、及びキーボード99と接続された
キーボード・アダプタ98が接続されている。
IBMパーソナル・コンピュータの動作については、B
、J、コノピク(Konopik )他の米国特許第4
7E38149号明細書「リンクされたリスト・データ
構造における複数の共用割込みハンドラを管理するため
のシステム(System for Managing
a Plurality of 5hared Int
errupt )Iandlers ina Link
ed Li5t Data 5tructure) J
に記載されている。参照により上記特許を本明細書に合
体する。
第23図の実施例は、並列または分散CV検査プロセス
の代りに直列C■検査プロセスを用いることを特徴とす
る。プロセッサ・メモリ23はn−1のレベルのソフト
ウェアを格納し、その一部は異なるメモリ保護、分離、
保全性、特殊状態、非特殊状態、適用業務レベルのプロ
グラム、システム・レベルのプログラムなどの異なるレ
ベルで動作する′ことがある。これらのソフトウェア・
レベルが制御の階層を形成し、CVフィールド・セラ)
F’S1がソフトウェア・レベル1で走行するプログラ
ムPG (1)の一部としての制御ベクトル検査プロセ
スP(1)によって検査されるようになっている。Cv
検査に成功した場合、制御権は次のソフトウェア・レベ
ルに移って、そこでソフトウェア・レベル2で実行され
るプログラムPG(2)の一部として制御ベクトル検査
プロセスP(2)によりCvフィールド・セットFS2
が検査される。CV検査に成功した場合、制御権はその
次のソフトウェア・レベルに移り、以下同様にして、ソ
フトウェア・レベルn−1でのCV検査に成功した場合
、暗号機構4に暗号サービス要求が発行され、制御ベク
トル検査プロセスP (n)によってC■フィールド・
セットFSnが検査される。CF4内でのCv検査に成
功した場合、未処理の暗号サービス要求がCF4によっ
て要求される。一方、いずれかのレベルで、すなわちプ
ログラムPG (1) 、・・・、PG (n−1)に
含まれるCv検査プロセスP (1) 、−1P (n
 −1)のいずれか1つまたはCF4内のCv検査プロ
セスP (n)でCv検査が失敗した場合、その暗号サ
ービス要求は打ち切られる。CF4中の管理プロセスは
、CF4によって実行される制御ベクトル検査プロセス
P (n)によるC■フィールド・セットFSnのみの
制御ベクトル検査のスケジューリングを担当し、プログ
ラムPG (1) 、・・・、PG(n−1)に含まれ
るCV検査プロセスP(1) 、−1P (n−1)に
よるCvフィールド・セットFS1、・・・、FSn−
2のCv検査のスケジューリング、あるいはそれから生
じるイエス/ノ一応答の受領は担当しない。その代りに
、Cv検査は、Cv検査に成功した場合だけ、あるプロ
グラムから別のプログラムに、たとえばPG(i)から
PG(i+1)に、またプログラムPG(n−1)から
CF4に制御権が移るように直列化され一9〇− ている。そうでない場合は、その暗号サービス要求は打
ち切られる。この意味で、ある処理エンティティから別
の処理エンティティに(プログラムからプログラムに、
あるいはプログラムからCFに)「制御を移す」行為は
、論理的に「イエス」応答と等価である。当業者なら理
解できるように、多重処理と多重プログラミングの特徴
及び概念を組み合わせた他の類似の実施例も可能である
。たとえば、CVフィールド・セットFS1、・・・、
FSiは、第1のネットワーク装置/ノードのバス50
′に接続されたプロセッサ・メモリ23中で実行される
プログラムPG (1) 、・・・、PG(i)の一部
として制御ベクトル検査プロセスP(1)、・・・、P
(i)によって検査することができる。C■フィールド
・セットFSi+1、・・・、FSjは、処理装置PU
(i+1)、・・・、P(j)上で実行される制御ベク
トル検査プロセスP (i+1)、・・・NP(J)に
よって検査することができる。各処理装置は、第2、第
3のネットワーク装置と関連する別々の暗号機構に含ま
れ、共通のネットワーク通信リンク50を介して互いに
リンクされている。またC■フィールド・セットFSj
+1、・・・、FSnは、上記の第1のネットワーク装
置のバス50“に接続された暗号機構4に含まれる処理
装置P U (j+ 1 ) 、・”、PU (n)上
で実行される制御ベクトル検査プロセスP(j+1)、
・・・、P (n)によって検査することができる。
第24図は、第19図に示したC■検査実施例のシステ
ムの概要を示す。第24図には、CV検査処理装置PU
(1)、−・・、PU (n) 、管理処理装置PU 
(t) 、及び共通システム・バス50に接続された処
理装置PU (v)が示されている。
これらはすべて安全境界6内にある。処理装置PU (
v)は、適用業務プログラムAPPL55七暗号機構ア
クセス・プログラム(CFAP)54を含む。暗号サー
ビス要求は適用業務プログラムAPPL55によって開
始され、CFAP54に送られる。CFAP54は、暗
号サービス要求(または暗号命令)をシステム・バス5
0を介して管理処理装置PU (t)に発行する。安全
境界6は、暗号機構4の安全境界でもよく、また暗号機
構4が管理処理装置PU (t)内に含まれるような広
い境界またはより狭い境界でもよい。暗号的に言えば、
安全境界6は、第24図に示す内部構成要素の保全性と
秘密性を物理的侵入や探索攻撃から守るようになってい
る。処理装置PU(1) 、−、PU (n) 、PU
 (t)及びPU(V)の論理的分離及び保護は、シス
テム・バス50を介して接続された処理装置の間で実施
される内部コマンド・プロトフルによってももたらされ
る。複数のバスを使用して、システム・バス50を処理
装置PU(1)、・・・、PU (n)及びPU (t
)のみに接続して他のものには接続せず、PU (t)
は異なるシステム・バスを介してPU(V)など他の処
理装置に接続することにより、さらに分離及び保護が得
られる。
第25図は、管理処理装置PU (t)の構成図である
。入出力アダプタ89に接続された入出力経路8は、管
理処理装置に、接続された装置と外部通信して入力を受
け取り出力を送る能力を与える。システム・バス50に
接続されたバス・アダプタ84は、処理装置PU (v
)中にあるCFAP54から、暗号サービス要求、暗号
キー及び関連する制御ベクトルを受け取るための経路を
もたらす。別法として、CFAP54は、Cv検査プロ
セスの保全性が扱われない限り処理装置PU(1) 、
−、PU (n)及びPU (t)を含めて、システム
・バスに接続されたどの処理装置中にあってもよく、ま
た処理装置PU (t)に接続された別のシステム・バ
スに接続された処理装置中にあってもよい。ある実施例
では、暗号サービス要求、暗号キー、及び関連する制御
ベクトルを、たとえば第26図の処理装置P(1)中の
入出力経路8を介して受け取ることができる。システム
・バス50に接続されたバス・アダプタ84も、処理装
置PU (1) 、・、PU (n)中でのC■検査の
スケジューリングを行なうため、すなわちCV検査プロ
セスP(1)、・・・、P(n)及びそれぞれ処理装置
PU(1)、−・・、PU (n)内のCVフィールド
・セットFS1、・・・、F S nを初期設定し、C
v検査を行なわせるため、PU (n)を介して処理装
置PU (1) 、・・・、PU (n)に要求(コマ
ンド、メツセージ等)を送るための経路をもたらす。シ
ステム・バス50に接続されたバス・アダプタ84は、
Cv検査の結果を報告できるように処理装置PU(1)
、・・・、PU (n)からイエス/ノ一応答(投票)
を受け取るための経路をももたらす。80388命令処
理機構(IPU)87は、ROM86に記憶されたマイ
クロコードとRAM88に記憶されたプログラム・コー
ドを実行する。暗号処理機構16は、マネージャ・バス
85を介して送られた許可信号に応答して暗号機能を実
行する。RAM88は、処理装置PU(1)、・・・、
PU (n)にそれぞれCv検査プロセスP(1)、・
・・、P (n)を事前ロードするためのIPL管理機
能を含む管理機能と、Cv検査のスケジュールを立てて
開始させるため、CVフィールド・セットFS1、・・
・、FSnをそれぞれ処理装置PU(1)、・・・、P
U (n)中にロードするためのスケジューリング・ア
ルゴリズムと、イエス/ノ一応答を受け取って分析し、
暗号処理機構16に許可信号を送って要求された暗号機
能を実行させるための判断アルゴリズムを含んでいる。
別法として、Cv検査プロセスP (1) 、・・・、
P (n)をそれぞれ処理装置PU(1)、・・・、P
U (n)に送り、同時にフィールド・セットFS1、
・・・N FSnをそれぞれ処理装置PU (1)、・
・・、PU (n)に送ることもできる。RAM88は
また、暗号処理機構16によって実行される暗号アルゴ
リズムと、データ及びキー変数を記憶するための作業用
記憶機構をも含んでいる。作業用記憶機構に記憶された
プログラム、データ及びキーハ、ハス・アダプタ84と
システム・バス50を介して、あるいは入出力アダプタ
89と入出力経路8を介して受け取られる。
第27図に、PU (t)中での制御ベクトル管理プロ
セスの流れ図を示す。暗号サービス要求、暗号キー、及
び関連する制御ベクトルを、処理装置PU (v)中に
あるCFAP54からバス・アダプタ84とシステム・
バス50を介して受け取る。受け取った制御ベクトルC
v1、・・・、CV mを分解してC■フィールド・セ
ットFS1、・・・、FSnとし、これらのC■フィー
ルドをシステム・バス50を介してそれぞれ処理装置P
U (1)、・・・、PU (n)中にあるCV検査プ
ロセスP(1)、・・・、P (n )に配布する。あ
るいは、P(1) 、・・・、P (n)をFSl、・
・・、FSnと共に動的に配布する。すなわち、P (
1)とF’S1をPU (1)に配布し、P (2)と
FS2をPU(2)に配布し、以下同様に行なう。次い
で、管理処理装置PU (t)は、すべての処理装置か
らイエス/ノ一応答(すなわち投票)を受け取るのを待
つ。すべての応答を受け取ると、管理プロセスは投票を
カウントし、続行するかそれとも打ち切るか判断を下す
。代表的な判断手順は、単にすべての応答が「イエス」
であることを必要とし、その場合、暗号処理機構16に
許可信号が送られて、要求された暗号機能を実行させる
。1つ以上「ノー」応答を受け取った場合、その暗号サ
ービス要求は打ち切られる。本発明の「課題を解決す一
97= るための手段」の所でより詳しく引用したような、より
複雑な様々の判断手順も可能である。暗号処理機構16
は、要求された機能に応じてキーを解読し処理し暗号化
する。機能の出力はシステム・バス50を介してCFA
P54に戻される。第26図は、CV検査を行なうn台
の処理装置の1つである処理装置PU (1)の構成図
である。PU(1)は、入出力アダプタ89.8038
6命令処理機構(IPU)87、ROM86、暗号処理
機構16、RAM88“及びバス・アダプタ84を含ん
でいる。これらはすべて内部バス85に接続されている
。接続されたスマート・カード読取装置93からまたは
キーボード91によって読み取ることのできる、スマー
ト・カード95などの接続された装置からの外部入出力
が、入出力経路8“を介する外部通信をもたらす。シス
テム・バス50に接続されたバス・アダプタ84は、管
理処理装置PU (t)からC■検査アルゴリズム(す
なわちC■検査プロセスP(1)とCvフィールド・セ
ット(たとえば、Cvフィールド・セツ)FSI))を
受け取り、管理処理装置PU(t)にイエス/ノ一応答
を送り返すための経路をもたらす。システム・バス50
は安全境界6内に含まれるので、システム・バス50を
介して通信されるデータは、保全性をもつものと仮定さ
れる。80386IPUは、ROM86に記憶されてい
るマイクロコードを実行し、Cv検査アルゴリズム(す
なわち、RAM88“に記憶されているCv検査プロセ
スP(1))を実行する能力をもたらす。処理装置PU
 (1)が時には管理処理装置として働くことがある場
合、あるいはPU(,1)がCv検査機能と接続されて
いない他の何らかの要求のために暗号機能を実行する場
合、任意選択で暗号処理機構16が設けられる。ここで
第26図を参照すると、制御ベクトル検査プロセスは下
記のステップからなる。CV検査プロセスPU (1)
を含む要求(コマンド、メツセージ等)を、管理処理装
置PU (t)からバス・アダプタ84とシステム・バ
ス50を介して受け取る。それに応答して、処理装置P
U (1)は、C■検査プロセスP(1)をRAM88
’に記憶させる。(その代りに、CV検査プロセスP(
1)をCvフィールド・セラl−F S 1と一緒に送
ることができる)。
後で、Cvフィールド・セットFS1を含む類似の要求
を、管理処理装置PU (t)からバス・アダプタ84
とシステム・バス50を介して受け取る。それに応答し
て、処理装置PU(1)は、RAM88“に記憶された
CV検査プロセスP(1)を使って、CVフィールド・
セットFS1に対するCV検査を実行する。CV検査が
失敗した場合は、システム・バス50を介してPU (
t)に応答は送られない。
並列処理環境で複数のプロセッサを使ってCV検査を行
なうことの利点は、主として性能の向上である。逆に、
並列処理装置で一杯の環境では、直列計算の代りに並列
計算を実行できるのが有利である。しかし、n台の処理
装置の代りに2n台の処理装置を使ってC■処理プロセ
スP(1)、・・・、P (n)によりフィールド・セ
ットFS1、・・・、F S nのCV検査を行なうよ
うに上記の諸実施例を適合させることにより、安全保護
の向上も実現することができる。この場合、各C■フィ
ールド・セラ)FS 1は、異なる2台の処理装置を使
ってCv検査プロセスP (i)により2回検査される
。すなわち、現在のノーの応答ではなく、イエスの応答
を管理処理装置PU (t)に送らせることにより、1
台のプロセッサの安全保護が扱われる場合、C■検査プ
ロセスの全体的安全保護は扱われない。この場合、別の
処理装置はノーと報告し、その場合、暗号サービス要求
は打ち切られる。並列CV検査のもう1つの利点は、信
頼性の向上である。この場合、常に相互検査能力が得ら
れる。すなわち、1つの処理装置の出力を別の処理装置
の出力と相互検査して、偶然のハードウェア及びソフト
ウェア障害をより容易に検出し、偶然の暗号機能の実行
が起こる可能性をずっと少なくすることができる。当業
者なら理解できるように、基本的実施例に対する上記及
びその他類似の変形が可能であり、安全保護と信頼性を
向上させる様々な型式のC■検査スケジューラ・アルゴ
リズムを、こうした多重プロセッサ環境で有利に実施す
ることができる。
並列プロセッサを使ってCV検査を実行する他に、分散
プロセッサ環境でもCV検査をを利に実行できる。第2
8図は、分散式制御ベクトル検査能力をもつ接続された
暗号装置のネッ)・ワークの構成図である。このネット
ワークは、通信リンク50を介して接続された装置/シ
ステムPU(1,) 、−・・、PU (n)及びPU
(t)を含んでいる。各装置/システムは、暗号サービ
ス要求を受け取ることができる暗号機構4を含んでいる
すなわち、どの装置も管理装置になることができ、ネッ
トワーク中の他の装置で実行されるCV検査のスケジュ
ールを立てるタスクを実行することができる。ただし、
話を簡単にするため、装置/システムPU (t)が、
装置PU (1) 、・・・、PU(n)でのC■検査
のスケジューリングを担当する管理装置/システムであ
り、装置/システムPU (t)はC■検査のみを行な
うものと仮定する。
装置/システムPU (t)はまた、適用業務プロダラ
ムAPPL55と暗号機構アクセス・プログラム(CF
AP)54を備えている。これらが示しであるのは、装
置/システムPU (t)が管理装置だからである。実
際には、装置/システムPU(1:)、・・・、PU 
(n)は適用業務プログラムとCFAPを備えているが
、第28図には示してない。通常、暗号サービスを求め
る要求はAPPL55によって発行され、CF’AP5
4に送られる。CFAP54は暗号サービス要求を暗号
機構4に発行する。それに応答して、装置/システムP
U (t)は、スケジューラ機構32を使って、装置/
システムPU(1)、・・・、PU (n)でのCV検
査のスケジューリングを行なう。管理装置が局所(ロー
カル)CV検査を希望するまたは必要とする可能性を考
慮するため、局所CV検査機構14も装置/システムP
U(t)中に設けられる。たとえば、装置/システムP
U (t)が遠隔C■検査の代りに局所CV検査を実行
することがあり、また装置/システムPU (t)が必
要なCV検査の一部を局所的に実行し、一部を遠隔で実
行しようとすることがある。装置PU (1) 、・・
・、PU (n)でのCv検査は、それぞれ遠隔で発信
されたCV検査機構31によって実行される。その結果
、装置/システムPU (1) 、・00、PU(n)
はそれぞれ、Cv検査が成功した場合は装置/システム
PU (t)に「イエス」応答を送り、Cv検査が失敗
の場合は「ノー」応答を送ってそれに応答する。装置/
システムPU Ct)にある判断機構35が、システム
/装置PU (1) 、・・・、PU (n)から受け
取った応答を処理する。判断機構35に含まれる判断ア
ルゴリズムに基づいて、判断機構35は要求された暗号
機能の実行を許可する許可信号、または要求された暗号
機能の実行を拒否する打ち切り信号を発行する。実行さ
れた暗号機能の出力は暗号機構4からCFAP54に送
られ、次いでCFAP54からAPPL65に送られる
。これでシーケンスは完了する。次に、より詳しい説明
を行なう。
第29図は、接続された暗号装置/システムのネットワ
ークの構成図である。装置/システムPU (t)は、
第28図に示した、暗号機構アクセス・プログラム54
や適用業務プログラム55などのプログラムを実行する
。これらのプログラムは、暗号キーの管理、及び制御ベ
クトルに関連するデータや他の暗号量の暗号処理を求め
る暗号サービス要求を出力する。制御ベクトルは、関連
するキーがその発信元により実行を許される機能を定義
する。暗号機構は、プログラムにより1つまたは1組の
暗号キーに対して要求されたキー管理機能及び暗号処理
機能が、そのキーまたはそれらのキーの発信元によって
許可されているかどうか確認する。装置/システムPU
 Ct)は、通信リンク50を介して、装置/システム
PU (1) 、・・・、PU(n’)を含む他の装置
/システムに接続されている。こうした各装置/システ
ムは、図示してないが、装置/システムPU(t)と類
似の構成を存する。
次に、第29図を参照すると、装置/システムPU (
t)は、安全境界6を特徴とする暗号機構(CF)4を
有する。入出力経路8は、プロゲラムから暗号サービス
要求、暗号キー、及び関連するベクトルを受け取るため
、安全境界6を通過する。また暗号機構は入出力経路8
を介して暗号サービス要求に対する応答を出力する。
安全境界6内には、バス・ユニット12によって入出力
経路8に結合された暗号命令記憶機構10が含まれてい
る。局所Cv検査機構14、スケジューラ機構32、判
断機構35、暗号処理機構16が記憶機構10中の命令
に結合されている。
マスク・キー記憶機構18が暗号処理機構16に結合さ
れている。計算の中間結果を記憶し、入出力経路8を介
してCF4に入力されるデータ、キーや他の量を記憶す
る作業用記憶機構24も、暗号処理機構16に結合され
ている。安全境界内には、バス・ユニット12によって
入出力経路8に結合された遠隔作成されたCV検査機構
31も含まれている。暗号機構4は、受け取ったサービ
ス要求に応答してキー管理機能及び暗号処理機能を実行
するための安全な場所を提供する。暗号命令記憶機構1
0は、1つ以上の暗号キーを使ってキー管−106〜 理機能または暗号処理機能を実行することを求める暗号
サービス要求を入出力経路8を介して受け取る。スケジ
ューラ機構32は、暗号キーと関連する制御ベクトルC
■1、・・・、CVmを受け取るため、入出力経路8に
結合された入力線33を有する。
第30図は、スケジューラ機構32によって実行される
ステップの流れ図である。第30図で、スケジューラ機
構32は、受け取った制御ベクトルCVL・・・N C
Vmからのn個のCVフィールド・セットFS1、・・
・、F S nと、任意選択としてn個の制御ベクトル
検査プロセスを準備する。
すなわち遠隔CV検査が行なわれるn個の暗号装置/シ
ステムPU (1) 、−1PU (n)のそれぞれご
とに1つのCvフィールド・セットト制御ベクトル検査
プロセスを準備する。制御ベクトル検査プロセスP(1
)、・・・、P (n)は、装置/システムPU (t
)の暗号機構4内のC■検査プログラムのライブラリ中
に維持されている記憶プログラムでよい。代替実施例で
は、制御ベクトル検査プログラムは、各遠隔作成CV検
査機構31中て初期設定することができる。すなわち、
PU(1) 、−1PU (n)とPU (t)を含む
ネットワーク中の各装置/システムの各遠隔作成C■検
査機構31は、どのCV検査プロセスもどの検査機構3
1によっても実行できるように、あるいは予め配列され
同意されたCV検査プロセスのどのサブプロセスもその
ように設計された検査機構31によって実行できるよう
に、Cv検査プロセスのライブラリ、少なくともCV検
査の実行を必要とするCV検査プロセスのライブラリを
含む。
したがって、検査機構31に記憶されるCv検査プロセ
スは、装置/システムのタイプや装置の場所や希望する
基準に応じて異なってもよい。スケジューラ機構32は
、これらの装置/システムの能力に応じてCv検査のス
ケジュールを立てるのに必要であり、各スケジューラ機
構32はこうした各装置/システムごとのCv検査能力
のリス)・を維持するために必要である。
それに応答して、スケジューラ機構32はn個のCV検
査要求メソセージMREQI、・・・、MREQnを作
成する。第33図は、代表的なCv検査要求メツセージ
の構成図である。第33図で、CV検査要求メツセージ
は、(1)メツセージ・タイプ、(2)装置/システム
宛先アドレス、(3)装置/システム起点アドレス、(
4)機能コード、(5)CVフィールド・セットFSI
、(6)CV検査プロセスP (i)、(7)機能要求
制御番号、(8)MACの各情報フィールドを含んでい
る。メツセージ・タイプ・フィールドは、メツセージを
CV検査要求メツセージとして識別する。装置/システ
ム宛先アドレスは、CV検査が行なわれる装置/システ
ムのアドレスを含む。
装置/システム起点アドレスは、CV検査要求メツセー
ジの発行元の管理装置のアドレスを含む。アドレスの代
りに、ネットワーク内の装置/システムを一義的に識別
する装置/システム識別、名前などを使用してもよい。
機能コードは、暗号命令、及び暗号サービス要求中の管
理装置/システムPU (t)が最初から受け取った、
その命令内の選一 109− 択されたパラメータ・オプ/ヨンを指定するコード化さ
れたパラメータである。これらの命令パラメータ・オプ
ションはある種のCv検査ルーチンで必要とされるが、
実施態様によっては、(CV検査プロセスがどれだけ精
巧かに応じて)このパラメータを必要としないこともあ
る。機能要求制御番号は、スケジューラ機構32が発行
する各C■検査要求メツセージを一義的に識別する。た
とえば、スケジューラ機構32は、CF4内の増分カウ
ンタを使って、機能要求制御番号を実施することを選択
できる。C■検査要求メツセージか作成されるごとに、
カウンタが増分され、その値が機能要求制御番号として
使われる。この代りに、時刻クロックや自由走行カウン
タなどの自由走行うロック値を機能要求制御番号に使う
こともてきる。機能要求制御番号が、たとえば64ビッ
ト程度の十分なビットを存するものと仮定すると、CF
4内にある乱数発生機構によって発生された乱数を使っ
て、機能要求制御番号として使う値を得ることができる
。この場合、偶然に同じ値が繰り返される機会は非常に
小さい。MACは、起点、及び宛先装置/システムの間
で前もって共用される秘密MACキーを使って、Cv要
求メツセージ上で計算された、任意選択のメツセージ確
認コードである。このようなMACキーは、2つの装置
/システム間で送られるメツセージの保全性を保護する
ために使われる。たとえば、MACを計算しそれを使っ
て受け取ったメツセージを確認するためのプロトコル及
び手順は周知であり、従来技術で記載されている。(C
,H,マイヤー(Meyer)とS、M、マチアス(M
atyas )の共著「暗号、コンピュータ・データ安
全保護の新次元 (Cryptography −A New Dime
nsion in ComputerData 5ec
urity) J N John Wiley and
 5ons、 Inc、 )1982年参照)。CV検
査プロセスが検査機構31中で事前に初期設定されてい
る場合、Cv検査プロセスを識別する、コード化された
値“1“。
を、Cv検査プロセスPU(i)の代りにCV検査要求
メツセージ中に入れて送ることができる。
その場合、値″i“はPU(i)を識別する。さらに、
どのCv検査プロセスを実行すべきかを宛先装置が要求
を受け取った文脈から判断できる場合には、Cv検査プ
ロセス・フィールドをCv検査要求メツセージから全く
省略してもよい。当業者なら理解できるように、装置/
システムが予め定めた同意に従ってC■検査を行ない、
第33図に示したC■検査要求メツセージ中の情報の一
部分だけが記述されたプロトコルが動作するために必要
となる、様々なオプションが存在する。
第33図を再度参照すると、スケジューラ機構32は次
にCV要求メツセージMREQI、・・・、MREQn
をバス12に結合された出力線34、入出力経路8さら
に(第29図に示す)通信リンク50を介してそれぞれ
装置/システムPU(1)、・・・、PU (n)に送
る。第33図で、スケジューラ機構32は、(第29図
の)線33上で装置/システムPU(1)、・・・、P
U (n)からn個のCV検査応答メツセージMRES
P1、・・・、MRESPnを受け取るのを待つ。各C
V検査応答メツセージは、(1)メツセージ・タイプ、
(2)装置/システム宛先アドレス、(3)装置/シス
テム起点アドレス、(4)機能要求制御番号、(5)応
答、(6)MACの各情報フィールドを含んでいる。メ
ツセージ・タイプ・フィールドは、メツセージをCv検
査応答メツセージとして識別する。装置/システム宛先
アドレスは、受け取ったCv検査要求メツセージ中で指
定された装置/システム起点アドレスと同じアドレスを
含んでいる。装置/システム起点アドレスは、受け取っ
たCV検査要求メツセージ中で指定された装置/システ
ム宛先アドレスと同じアドレスを含んでいる。機能要求
制御番号は、CV検査要求メツセージ中で受け取った機
能要求制御番号と同じである。応答は、Cv検査が成功
した場合は「イエス」、失敗した場合は「ノー」のコー
ド化された値である。MACは、起点装置/システムと
宛先装置/システムの間で予め共用された秘密MACキ
ーを使って、Cv応答メツセージ上で計算される、任意
選択のメツセージ確認コードである。MACキーは、C
v検査要求メツセージ上でMACを計算するのに使用さ
れるMACキーと同じでもよく、異なるキーでもよい。
n個のCV検査応答メツセージMRESPI、・・・、
MRESPnを受け取ると、スケジューラ機構32は任
意選択でMACが存在する場合、その妥当性検査を行な
う。
ここで第29図を参照すると、スケジューラ機構32は
次に応答メツセージを線37を介して判断機構に渡す。
第31図は、判断機構35によって実行されるステップ
の流れ図である。第31図で、判断機構35は、記憶さ
れた判断アルゴリズムに基づいて、要求された暗号機能
を尊重すべきかどうか判断する。多くの判断戦略または
投票カウント戦略が可能であり、これらの様々な判断手
順の考察は、本発明の「課題を解決するための手段」の
所で述べた。1つの方法は、n個のCV検査応答メツセ
ージすべてに、装置/システムPU (1) 、・・・
、PU (n)のそれぞれでC■検査が成功したことを
示す、「イエス」応答を必要とする。
再度第30図を参照すると、スケジューラ機構32が装
置/システムPU (t)でのCv検査の一部または全
部のスケジュールを立てるオプションも存在する。その
場合、CV検査は局所Cv検査機構14によって実施さ
れる。したがって、スケジューラ機構32は、遠隔CV
検査が要求された外部袋W/システムからのCv扶査応
答メツセージ、または局所C■検査が要求された場合は
局所CV検査機構14からの応答、あるいはその両方を
待つ。局所Cv検査が行なわれる場合、CV検査応答メ
ツセージの代りに局所C■検査機構14からイエス/ノ
一応答がスケジューラ32に送られる。
再度第29図を参照すると、判断機構35は、キー管理
機能及び暗号処理機能が許可されたことを知らせるため
の、暗号処理機構16の入力に接続された許可出力20
を有する。Hi号処f8!機構16が許可信号を受け取
ると、サービス要求と共に供給される暗号キー及びデー
タを用いて、要求された暗号機能の実行が開始される。
暗号キー記憶機構22は、入出力経路8を介して暗号機
構4に結合されている。暗号キー記憶機構22は、各暗
号キーが関連する制御ベクトルとキー記憶機構18に記
憶されたマスク・キーの論理積である記憶キーの下で暗
号化されるという暗号化された形で暗号キーを記憶する
。このような論理積をK M 。
Cで表す。ただし、KMはマスク・キー、Cは制御ベク
トルである。サービス要求に複数のキーと制御ベクトル
が必要なときは、すへての制御ベクトルが検査され、判
断機構35は、受け取ったC■検査応答メツセージ中で
、許可信号が暗号処理機構16に供給されるために満足
できるイエス/ノー回答を見出さなければならない。そ
れに応答して、暗号処理機構16は、暗号命令記憶機構
10中の適当な暗号命令を実行する。次に出力か入出力
経路8を介してプログラムに(CFAP54に、また当
該の場合はそこからAPPL55に)パスないし転送さ
れる。
スケジューラ機構32は、任意選択として、サービス要
求待合せ能力を有し、複数のサービス要求をスケジュー
リングすることができ、スケジューラ機構32は未処理
のサービス要求の待ち行列及びそれが待っているC■検
査応答メツセージを宵することができる。応答を受け取
ったとき、待ち行列は更新される。ある待機サービス要
求に対する応答をすべて受け取ると、そのサービス要求
は待ち行列から除去され、そのサービス要求に対する受
け取ったCV検査応答メツセージのリス)・が(それら
のメツセージ上のMACが存在する場合に、そのMAC
の妥当性が確認された後)前述のように判断機構35に
パスされる。スケジューラ機構32は、任意選択で、局
所C■検査機構14によって全体的に扱われる第1のサ
ービス要求に応答して局所CV検査機構14のスケジュ
ールを立てることができ、また第1のサービス要求が完
了する前にスケジューラ機構32が受け取った第2のサ
ービス要求に基づいて、装置/システムPU(1)、−
・・、PU (n)を介して遠隔CV検査のスケジュー
ルを立てることができる。
第32図は、遠隔作成C■検査機構21によって実行さ
れるステップの流れ図である。第32図で、遠隔装置/
システム、たとえばPU(1)で、遠隔作成Cv検査機
構31は入出力経路8を介してCv検査要求メツセージ
MREQ1を受け取る。
MACが存在する場合、Cv検査機構31はます、起点
装置/システム(すなわち、PU(t)と宛先袋W/シ
ステム(すなわち、PU(1))の間で共用される、予
め合意した秘密MACキーを使ってMACの妥当性検査
を行なう。次に、受け取ったC■フィールド・セットF
SIを、やはりCV検査要求メツセージMREQI中で
受け取ったCV検査プロセスP(1)を使って検査する
。P(1)がPU (1)で事前に初期設定され、P(
1)の代りにMREQI中で“1“が送られる場合、そ
の値゛1°′を使ってP(1)にアクセスする。あるい
は、MREQ (1)中で値“1“を使わず、プロトコ
ルの文脈からPU(1)はP(1)を知る。当業者なら
理解できるように、受け取ったCvフィールド・セット
FSIをPU(1)に記憶させたC■検査プロセスP(
1)に関係づける情報をPU(1)に通信するための多
数のプロトコルが存在する。次に、(1)メツセージ・
タイプ(すなわち、Cv検査応答メツセージ)、(2)
装置/システム宛先アドレス(すなわち、この例ではP
U (t))、(3)装置/システム起点アドレス(す
なわち、この例ではPU(1))、(4)機能要求制御
番号(すなわち、MREQI中で受け取り、PU (t
)にエコー・バックされたのと同じ機能要求制御番号)
、(5)応答(すなわち、「イエス」または「ノー」)
と任意選択のMAC(すなわち、予め手配されたMAC
キーを使って以前のフィールドに対して計算されたメツ
セージ確認コード)の各フィールドからなるC■検査応
答メツセージMRESPIが、第34図に示したフォー
マットに従って作成される。次に、MRESPIは通信
リンク28を介してPU (t)に送られ、次に装置/
システムPU(1)の暗号機構4内にある入出力経路8
を介してスケジューラ機構31に送られる。
検査機構31はまた、第35図に示すような、受け取っ
たCv検査要求メツセージを記憶する待ち行列を有する
。これを用いると、CV検査機構31が、直列式に動作
する必要がなく、複数のCV$、査要求を同時に(すな
わち、並列に)受け取って処理することが可能となる。
複数の分散プロセッサを用いて(すなわち、単一の暗号
機構ではなく複数の暗号機構を使って)Cv検査を行な
うこの利点には、並列処理環境で複数プロセッサによっ
てCv検査を行なう場合について前述した利点が含まれ
る。しかし、複数の分散プロセスによるCV検査はさら
に改良を提供する。暗号能力をもつ複数のワークステー
ションまたは端末と、暗号能力をもつスマート・カード
を所をする複数のワークステージジン/端末ユーザから
構成されるネットワークの実施例を考える。
ワークステーション/端末で作業を行なう時、ユーザは
まず、自分のスマート・カードをワークステーション/
端末に接続されたスマート・カード読取装置に挿入しな
ければならない。ユーザとワークステーション/端末と
スマート・カードは、各構成要素を相互に検討する、ま
たは構成要素のある受入れ可能なサブセットが相互に確
認される暗号初期接続手順に入る。暗号初期接続手順は
従来技術で周知であり、本発明に関係するものとは見な
されない(上記のC,H,マイヤーとS、M、マチアス
の共著「暗号−コンピュータ・データ安全保護の新次元
」参照)。ログオン・シーケンスの結果、スマート・カ
ードとワークステーション/端末は、データの機密性ま
たは確認を目的とする暗号化を伴うことのある通信チャ
ネルを確立した。データの暗号化及び確認のための暗号
方法も従来技術で周知であり、本発明に関係するものと
は見なされない(前掲のC,H,マイヤーとS。
M、マチアスの共著参照)。こうした環境では、ユーザ
は、暗号機構に暗号サービス要求を発行する適用業務プ
ログラムを使用して、ワークステーション/端末と対話
する。ただし、ベンダの製品コストを削減するため、C
V検査の一部または全部がスマート・カード上の暗号機
構を用いて行なわれる。なお、Cv@査は決して単にい
わゆる「部品の再配列」ではなく、ベンダ製品は(ワー
クステーション/端末もスマート・カードも)全体の製
品コスト(両者の合計)が、ワークスチーシロン/端末
でC■検査を行なう場合よりも低くなるように、互いに
設計されている。しかし、このようなCv検査の分割に
はさらに利点がある。
スマート・カードは、容易にかつ好都合にプログラミン
グでき、あるいは特定のユーザに合わせて調整できる技
術及び製品である。たとえば、ベンダは第1組のスマー
ト・カードに第1組の顧客、たとえば、大手銀行の連合
に特有のマイクロコードを事前ロードし、第2組のスマ
ート・カードに第2組の顧客、たとえばロイズ銀行など
特定の顧客に特有のマイクロコードを事前ロー゛ドし、
第3組のスマート・カードに、第3組の顧客、たとえば
米国連邦準備制度委員会(FRB)に特有のマイクロコ
ードを事前ロードすることができる。こうして、第1組
の顧客が行なうCv検査は、その顧客に特をの暗号適用
業務に基づいてその顧客に合わせて調整し、第2組の顧
客が行なうC■検査は、その顧客に特有の異なる暗号適
用業務に基づいてその顧客に合わせて調整することがで
きる。
大部分の顧客が、すべての顧客にとって基本的な共通の
暗号適用業務に基づいて一部のCV検査を共存している
ことをベンダが発見した場合、ベンダの任意選択により
、CV検査のこの要素をワークステーション/端末の暗
号機構中に入れることができる。なお、分散プロセッサ
によるCV検査は、技術に基づくコストと関連する製品
の間の折合いをつけるだけでなく、共通機能に基づくC
V検査と1組の顧客に特有の機能の均衡をとり、CV検
査をそれら各組の顧客に合わせて調整し、それによって
各組の顧客に対して完全な機能性を与えながら、ワーク
ステーション/端末製品の全体コストを下げる好都合で
コスト効果の高い方法を提供する。
以上、Cv検査を、(たとえば単一の大型機中の)多数
の並列プロセッサまたは(すなわち、通信リンクまたは
他の経路を介して接続された暗号機構を使用した分散プ
ロセッサによる並列計算に関して述べてきた。しかし、
第23図に示したようにCv検査プロセスを直列化する
ことにより、有利な実施態様を得ることができる。第3
6図は、C■検査が並列ではなく直列に行なわれるとい
う、多重プログラミング及び多重処理環境における制御
ベクトル検査の構成図である。第37図の制御ベクトル
・フォーマツl−A及びBは、各部分がシステムの異な
る部分によって直列式に検査される、区画化されたフォ
ーマントである。第37図で、フォーマットAは、第1
部分が適用業務プログラムによって検査され、第2部分
が、CFAP出口を介して制御権を受け取る、導入シス
テムによって供給されるルーチンによって検査され、第
3部分がCFAPによって検査され、第4部分が暗号機
構(すなわち、その装置/システムの暗号機構)によっ
て検査されるという制御ベクトルを示している。これら
の各部分はそれぞれ、装置/システム内の異なる安全保
護及び保全性のレベルを表す、ソフトウェアまたはハー
ドウェアによって検査される。適用業務プログラムは通
常、非特権モードで実行されるので、得られる安全保護
/保全性のレベルは最低である。CFAP及びCFAP
出ロルーチンは通常より高位のシステム状態、たとえば
特権状態で実行されるので、得られるCV検査の安全保
護/保全性レベルはそれに応じてより高くなる。暗号機
構(CF)は通常安全保護/保護インタフェースを備え
たハードウェアで実施されるので、このレベルのCv検
査の安全保護/保全性は最高となる。
制御ベクトルと関連するフィールド独立性の特性は、第
36図の実施例を可能にする最重要ファクタである。暗
号システムのベンダに関しては、制御ベクトルのCF及
びCFAPによって検査される部分が、ベンダが定義し
なければならない唯一の部分である。CFAP出ロルー
チンまたは適用業務プログラムによって検査される制御
ベクトル部分は、rdon’t care (いずれて
もかまわない)ビット」として実施できる。すなわち、
CF及びCFAPはこれらのフィールドの検査を行なわ
ない(したがって、CF及びCFAPに関する限り、こ
れらのフィールドに対してとんなビットを設定しても有
効である)。制御ベクトル中の“’don’t car
e″ビットとして定義されたビットは、顧客が自分にと
って最も好都合な方法で使用できる。ただし、顧客は、
CFAP及びCFによって実施されるCV検査を損うま
たはそれに矛盾する、制御ベクトルの使用及び検査のア
ーキテクチャを構成してはならない。その他の点では、
顧客は完全に自由である。
CV検査は逐次的かつ階層的である。CFは、制御ベク
トルを最後に検査する、いわゆる「最終ワードjを有す
る。CFAPは、顧客がC■検査を完了した後、CFが
そのC■検査を実行する前に制御ベクトルを検査する「
最後から2番目のワード」を有する。CFAP出ロルー
チンを介して実行されるCV検査は、この出口ルーチン
が通常はより高位の特権機械状態で実行されるので、適
用業務プログラムによって実行されるCV検査より優先
される。したがって、顧客はそのユーザに対してCv検
査の制御を行なうことができる。すなわち、顧客は適用
業務プログラムから要求された暗号操作をある程度「警
備」することができる。
適用業務自体は、通常非特権機械状態で動作するので、
保護レベルが最低である。IBM資源アクセス制御機構
(RACF)など他のアクセス制御機構を使って、CV
検査を、通常それぞれCFAP出ロルーチン及び適用業
務プログラムに関連する特権/非特権機械状態に加えて
、またはその代りに安全保護/保全性のレベルをもつ階
層構造に層化することができる。適用業務プログラムは
、システム中で最低の安全保進/保全性レベルで動作す
るが、有用なCV検査を行なうことができる。
同じ装置/システム上で実行される適用業務プログラム
相互間の保護が限られている、あるいは全くないと言え
る場合もあるにはあるが、分散システム・ネットワーク
中では、ある機械上で実行される適用業務を別の機械上
で実行される適用業務から十分に分離することが可能で
ある。すなわち、ある機械中で適用業務層で実施される
C■検査が、別の機械中での他の適用業務によるキー使
用を、有効に制御することができる。実際、機械量制御
は適用業務層でも実施できる。
次に第36図を参照すると、適用業務プログラムAPP
L25で開始された暗号サービス要求の前に、そのサー
ビス要求に関連するキーの制御ベクトルを使ったCV検
査56が行なわれる。キー及び制御ベクトルがキー記憶
機構22に記憶されている場合、CFAPは、CV検査
56からうまく実行できるように、適用業務が、まず必
要な制御ベクトルへのアクセスを要求することを可能に
した機能をもたらすことができる。
Cv検査56が実行されると、暗号サービス要求がAP
PL25からCFAPl 5に発行される。
ここで、Cv検査56が成功した場合にだけサービス要
求が行なわれ、そうでない場合は、適用業務によるサー
ビス要求は打ち切られる(すなわち、行なわれない)と
仮定する。それに応答して、CFAPは、キー記憶機構
22からの1つまたは複数の暗号化されたキーと制御ベ
クトルにアクセスし、このキーと制御ベクトルもサービ
ス要求中でAPPL25からCFAP 15にパスされ
る。
次に、CFAPによって供給される導入システム出口6
8を介して、導入システムによって供給されるCV検査
ルーチンに制御権が渡され、必要なすべての制御ベクト
ルがそのサービス要求の指示と共にパスされる。要する
に、Cv検査をそのルーチンで実行するのに必要なすべ
ての情報が、CFAPによってそのルーチンにパスされ
る。そうでない場合、このルーチンは必要なCv検査プ
ロセスを記憶するものと仮定する。Cv検査が成功した
場合、「イエス」応答がCFAPにパスされ、そうでな
い場合は「ノー」応答がCFAPにパスされる。CFA
Pは、出口ルーチンから「イエス」応答を受け取った場
合だけサービス要求を続行し、そうでない場合はサービ
ス要求を打ち切る。
次に、すべての制御ベクトルの当該のCFAPレベル部
分が、CFAPによりシステム・ソフトウェアCv検査
ルーチンを使って検査される。C■検査に成功した場合
、CFAPはCF4にサービス要求を発行する。そうで
ない場合は、APPL25によって行なわれたサービス
要求は打ち切られる。同様にして、CFは局所ハードウ
ェアCV検査機構14を用いて、制御ベクトルの当該の
部分を検査する。CV検査に成功した場合、本明細書の
他の所で述べたようにして、要求された暗号機能が実行
される。そうでない場合は、暗号機能は実行されない。
暗号機能の出力はCFAPl5に戻され、CFAPによ
ってキー記憶機構22に記憶され、またはAPPL25
に戻され、あるいは両者の何らかの組合せがCFAPに
よって実行される。
再度第37図を参照すると、制御ベクトル・フォーマッ
トBは、Cvのスマート・カードによって検査される部
分を含んでいる点以外は、フォーマットAと同じである
。Cvのスマート・カードによって検査される部分は、
検査をワークステーションまたは端末のCFハードウェ
ア中で行なう代りに、スマート・カードに委ねられる。
当業者なら理解できるように、このようなCv検査は、
先に制御ベクトル・フォーマットAに関しテ述べたCv
検査と容易に組み合わせることができる。
すなわぢ、上記の実施例を、Cvのスマート・カード中
の部分を検査するための拡張部を含むように拡張するこ
とができる。
CV検査の直列化方法の利点は、手順が直列化されるこ
とではなく、直列化プロセスが、単一装置/システム内
の、異なるCV検査要件をもつ異なる当事者にCv検査
を分配し、かつCv検査プロセス中の安全保護及び保全
性の階層を維持するための手段を提供することである。
ベンダはあらゆる組の顧客に共通するCv検査手順に関
心を集中し、C■検査のこの部分をCFハードウェアま
たはCFAPソフトウェア中に入れることができる。C
V検査のこの部分は顧客の組ごとに変わり、顧客に委ね
ることができる。ベンダは、制御ベクトルのこれらの部
分を°’don’t care” ピッ)・とじて実施
すればよい。顧客は、希望するレベルのキー使用制御を
実現できるように自分の暗号適用業務を調整できるとい
う、恵まれた状況を得る。
本発明の特定の実施例について開示したが、当業者なら
よく理解できるように、本発明の精神及び範囲から逸脱
することなく、この特定の実施例に微細な変更を加える
ことができる。
【図面の簡単な説明】
第1図は、(キーの左側64ビット部分K K Lとキ
ーの右側64ビット部分KKRからなる)128ビツト
のキー暗号化キーK Kと64ビツトの制御ベクトルと
を使って64ビツトの暗号キーKを暗号化する方法の構
成図である。 第2図は、128ビツトのキー暗号化キーK Kと64
ビツトの制御ベクトルCとを使って(第1図の方法を用
いて前に暗号化された)64ビットの暗号キーKを解読
する方法の構成図である。 第3図は、暗号配布チャネルを介して接続された暗号装
置のネットワークを示す構成図である。 第4図は、暗号装置内の基本的構成要素を示す構成図で
ある。 第5図は、キーKを操作可能な形で生成するための暗号
装置の構成要素内の一連の処理を示す構成図である。K
はマスタ・キーKMと制御ベクトルCを使って暗号化さ
れ、キー記憶機構に記憶される。適用業務プログラムは
、記憶機構中のキーに関連するインデックスまたはラベ
ルを用いて、操作可能キーKにアクセスすることができ
る。 第6図は、Cv内の暗号命令によって実行される共通処
置の構成図である。 第7図は、(キーの左側64ビット部分KKLと右側6
4ビット部分KKRからなる)128ビツトのキー暗号
化キーと(左側64ビット部分CLと右側64ビット部
分CRからなる)128ビツトの制御ベクトルCとを使
って64ビツトの暗号キーKを暗号化する方法の構成図
である。 第8図は、(第7図の方法を用いて、すなわち128ビ
ツトの制御ベクトルと128ビツトのキー暗号化キーを
使って前に暗号化された)64ビツトの暗号キーKを解
読する方法の構成図である。 第9図は、(キーの左側64ビット部分KKLとキーの
右側64ビット部分K K Rからなる)128ビツト
のキー暗号化キーと任意長の制御ベクトルC1nf と
を使って64ピントの暗号キーKを暗号化する方法の構
成図である。 第10図は、(第9図の方法を用いて、すなわち任意長
の制御ベクトルと128ビットのキー暗号化キーを使っ
て前に暗号化された)64ビツトの暗号キーKを解読す
る方法の構成図である。 第11図は、ブロック当たり2回または4回解読のMD
Cアルゴリズムで使用される修正検出コード操作(MD
COP)を示す図である。 第12図は、ブロック当たり2回解読の修正検出コード
(MDC)アルゴリズムを示す図である。 第13図は、ブロック当たり4回解読の修正検出コード
(MDC)アルゴリズムを示す図である。 第14図は、64ビツトCv1128ビツトCV1任意
長Cvの3つのCv方法を暗号的に分離する方法を示す
図である。キー暗号化キーKKL。 K K Rと排他的ORされる制御ベクトルの爪が各方
法ごとに識別されている。これらの量の範囲内の固定ビ
ット・フィールドが、この3つの方法を分離するのに使
用されるユニークなコーディングと共に定義される。 −134,− 第15図の(a)ないしくf)は、任意長の制御ベクト
ル用のデータ構造を示す図である。 第16図は、制御ベクトル検査機構を含む暗号機構を示
す図である。 第17図は、それぞれm個の制御ベクトルCVa1Cv
b1・・・、CVmのうちから選択したmサブセットの
ビット及びフィールドからなるn個の制御ベクトル・フ
ィールド・セットを示す構成図である。 第18図は、n個の制御ベクトル・フィールド・セット
FS1、FS2、・・・、FSn及びn個の関連する制
御ベクトル検査プロセスP(1)、P(2)、・・・、
P(n)を示す構成図である。 第19図は、Cv検査を行なわない管理プロセスを含む
多重プロセッサ実施例の構成図である。 第20図は、Cv検査を行なう管理プロセスを含む多重
プロセッサ実施例の構成図である。 第21図は、CV検査を行なわない管理プロセスを含む
分散プロセッサ実施例の構成図である。 第22図は、C■検査を行なう管理プロセスを含む分散
プロセッサ実施例の構成図である。 第23図は、多重プロセッサ環境における管理プロセッ
サ機能を示す図である。 第24図は、多重プロセッサ環境における制御ベクトル
検査プロセスを示す詳細図である。 第25図は、多重プロセッサ環境における制御ベクトル
管理プロセスを示す流れ図である。 第26図は、処理装置PU (1)の機能構成図である
。 第27図は、処理装置PU (t)における制御ベクト
ル管理プロセスの流れ図である。 第28図は、分散式制御ベクトル検査能力をもつ接続さ
れた暗号装置のネットワークの構成図である。 第29図は、分散式制御ベクトル検査能力をもつ暗号機
構の構成図である。 第30図は、スケジューラ機構の流れ図である。 第31図は、判断機構によって実行されるステップの流
れ図である。 第32図は、遠隔作成制御ベクトル検査機構によって実
行されるステップの流れ図である。 第33図は、制御ベクトル検査要求メツセージのフォー
マットを示す図である。 第34図は、制御ベクトル検査応答メツセージのフォー
マットを示す図である。 第35図は、遠隔作成制御ベクトル検査メツセージの待
ち行列を示す図である。 第36図は、多重プログラミング多重プロセッサ環境に
おける制御ベクトル検査の構成図である。 第37図は、区画式制御ベクトルのフォーマットを示す
図である。 4・・・・暗号機構(CF)、6・・・・安全境界、8
・・・・入出力経路、10・・・・暗号命令記憶機構、
14・・・・制御ベクトル検査機構、16・・・・暗号
処理機構、18・・・・マスタ・キー記憶機構(レジス
タ)、22・・・・暗号キー記憶機構、24・・・・作
業用記憶機構、32・・・・スケジューラ機構、35・
・・・判断機構、54・・・・暗号機構アクセス・プロ
グラム(CFAP)、55・・・・ユーザ適用業務プロ
グラム(APPL)、84・・・・バス・アダプタ、8
7・・・・命令処理機構(IPU)、89・・・・入出
力アダプタ。 出願人  インターナショナル・ビジネス・マシーンズ
・コーポレーション 代理人  弁理士  頓  宮  孝  −(外1名)

Claims (8)

    【特許請求の範囲】
  1. (1)各暗号キーがその作成者から実行することを許さ
    れている機能を定義する制御ベクトルに関連する暗号キ
    ーを用いて、暗号機能を実行するデータ処理システムに
    おいて、暗号キーを用いて実行すべき暗号機能がそのキ
    ーの作成者によって許可されていることを確認するため
    の暗号キー管理方法であって、 その関連する制御ベクトルと暗号的に結合された、上記
    暗号キーの表現を受け取るステップ、上記の関連する制
    御ベクトルになろうとする候補制御ベクトルを受け取る
    ステップ、 上記候補制御ベクトルの第1フィールドを検査して、上
    記暗号機能を実行することが上記暗号キーによって許可
    されているかどうか判定するステップ、 上記候補制御ベクトルの第2フィールドを検査して、上
    記暗号機能を実行することが上記暗号キーによって許可
    されているかどうか判定するステップ、及び 上記暗号キーの上記表現を上記候補制御キーと組み合わ
    せて、上記候補制御ベクトルが上記関連制御ベクトルで
    ある場合にのみ上記暗号キーを回復するステップ、 を含む方法。
  2. (2)各暗号キーがその作成者から実行することを許さ
    れている機能を定義する制御ベクトルに関連する暗号キ
    ーを用いて、暗号機能を実行するデータ処理システムに
    おいて、暗号キーを用いて実行すべき暗号機能がそのキ
    ーの作成者によって許可されていることを確認するため
    の暗号キー管理方法であって、 その関連する制御ベクトルと暗号的に結合された、上記
    暗号キーの表現を受け取るステップ、上記の関連する制
    御ベクトルになろうとする候補制御ベクトルを受け取る
    ステップ、 上記候補制御ベクトルの第1フィールドを検査して、上
    記暗号機能を実行することが上記暗号キーによって許可
    されているかどうか判定するステップ、 上記候補制御ベクトルの第2フィールドを検査して、上
    記暗号機能を実行することが上記暗号キーによって許可
    されているかどうか判定するステップ、 上記暗号キーの上記表現を上記候補制御キーと組み合わ
    せて、上記候補制御ベクトルが上記関連制御ベクトルで
    ある場合にのみ上記暗号キーを回復するステップ、及び 上記第1検査ステップ及び上記第2検査ステップでその
    機能を実行することが許可されていると判定した場合に
    のみ、上記暗号キーを使って上記暗号機能を実行するス
    テップ、 を含む方法。
  3. (3)各暗号キーがその作成者から実行することを許さ
    れている機能を定義する制御ベクトルに関連する暗号キ
    ーを用いて、暗号機能を実行するデータ処理システムに
    おいて、暗号キーを用いて実行すべき暗号機能がそのキ
    ーの作成者によって許可されていることを確認するため
    の暗号キー管理方法であって、 上記システム中の第1プロセッサ中で、その関連する制
    御ベクトルと暗号的に結合された上記暗号キーの表現を
    受け取るステップ、 上記第1プロセッサ中で、上記の関連する制御ベクトル
    になろうとする候補制御ベクトルの少なくとも第1フィ
    ールドを受け取るステップ、上記システム中の第2プロ
    セッサ中で、上記の関連する制御ベクトルになろうとす
    る候補ベクトルの少なくとも第2フィールドを受け取る
    ステップ、 上記第2プロセッサ中の上記候補制御ベクトルの上記第
    2フィールドを検査して、上記暗号機能を実行すること
    が上記暗号キーによって許可されているかどうか判定し
    、上記検査の結果を上記第1プロセッサに出力するステ
    ップ、 上記第1プロセッサ中の上記候補制御ベクトルの上記第
    1フィールドを検査して、上記暗号機能を実行すること
    が上記暗号キーによって許可されているかどうか判定す
    るステップ、 上記暗号キーの上記表現を上記候補制御キーと組み合わ
    せて、上記候補制御ベクトルが上記関連制御ベクトルで
    ある場合にのみ上記暗号キーを回復するステップ、及び 上記第1検査ステップ及び上記第2検査ステップでその
    機能を実行することが許可されていると判定した場合に
    のみ、上記第1プロセッサ中で上記暗号キーを使って上
    記暗号機能を実行するステップ、 を含む方法。
  4. (4)各暗号キーがその作成者から実行することを許さ
    れている機能を定義する制御ベクトルに関連する暗号キ
    ーを用いて、暗号機能を実行するデータ処理システムに
    おいて、暗号キーを用いて実行すべき暗号機能がそのキ
    ーの作成者によって許可されていることを確認するため
    の暗号キー管理方法であって、 上記システム中で多重プログラミング・モードで動作す
    る第1プログラム中で、その関連する制御ベクトルと暗
    号的に結合された上記暗号キーの表現を受け取るステッ
    プ、 上記第1プログラム中で、上記の関連する制御ベクトル
    になろうとする候補制御ベクトルの少なくとも第1フィ
    ールドを受け取るステップ、上記システム中で多重プロ
    グラミング・モードで動作する第2プログラム中で、上
    記の関連する制御ベクトルになろうとする候補ベクトル
    の少なくとも第2フィールドを受け取るステップ、上記
    第2プログラム中の上記候補制御ベクトルの上記第2フ
    ィールドを検査して、上記暗号機能を実行することが上
    記暗号キーによって許可されているかどうか判定し、上
    記検査の結果を上記第1プログラムに出力するステップ
    、 上記第1プログラム中の上記候補制御ベクトルの上記第
    1フィールドを検査して、上記暗号機能を実行すること
    が上記暗号キーによって許可されているかどうか判定す
    るステップ、 上記暗号キーの上記表現を上記候補制御キーと組み合わ
    せて、上記候補制御ベクトルが上記関連制御ベクトルで
    ある場合にのみ上記暗号キーを回復するステップ、及び 上記第1検査ステップ及び上記第2検査ステップでその
    機能を実行することが許可されていると判定した場合に
    のみ、上記第1プロセッサ中で上記暗号キーを使って上
    記暗号機能を実行するステップ、 を含む方法。
  5. (5)各暗号キーがその作成者から実行することを許さ
    れている機能を定義する制御ベクトルに関連する暗号キ
    ーを用いて、暗号機能を実行するデータ処理システムに
    おいて、暗号キーを用いて実行すべき暗号機能がそのキ
    ーの作成者によって許可されていることを確認するため
    の暗号キー管理方法であって、 上記システム中の管理プロセッサ中で、その関連する制
    御ベクトルと暗号的に結合された上記暗号キーの表現を
    受け取るステップ、 上記システム中の第1プロセッサ中で、上記の関連する
    制御ベクトルになろうとする候補制御ベクトルの少なく
    とも第1フィールドを受け取るステップ、 上記システム中の第2プロセッサ中で、上記の関連する
    制御ベクトルになろうとする候補ベクトルの少なくとも
    第2フィールドを受け取るステップ、 上記第1プロセッサ中の上記候補制御ベクトルの上記第
    1フィールドを検査して、上記暗号機能を実行すること
    が上記暗号キーによって許可されているかどうか判定し
    、上記検査の結果を上記管理プロセッサに出力するステ
    ップ、 上記第2プロセッサ中の上記候補制御ベクトルの上記第
    2フィールドを検査して、上記暗号機能を実行すること
    が上記暗号キーによって許可されているかどうか判定す
    るステップ、 上記暗号キーの上記表現を上記候補制御キーと組み合わ
    せて、上記候補制御ベクトルが上記関連制御ベクトルで
    ある場合にのみ上記暗号キーを回復するステップ、及び 上記第1検査ステップ及び上記第2検査ステップでその
    機能を実行することが許可されていると判定した場合に
    のみ、上記管理プロセッサ中で上記暗号キーを使って上
    記暗号機能を実行するステップ、 を含む方法。
  6. (6)各暗号キーがその作成者から実行することを許さ
    れている機能を定義する制御ベクトルに関連する暗号キ
    ーを用いて、暗号機能を実行するデータ処理システムに
    おいて、暗号キーを用いて実行すべき暗号機能がそのキ
    ーの作成者によって許可されていることを確認するため
    の暗号キー管理方法であって、 上記システム中で多重プログラミング・モードで動作す
    る管理プログラム中で、その関連する制御ベクトルと暗
    号的に結合された上記暗号キーの表現を受け取るステッ
    プ、 上記システム中で上記多重プログラミング・モードで動
    作する第1プログラム中で、上記の関連する制御ベクト
    ルになろうとする候補制御ベクトルの少なくとも第1フ
    ィールドを受け取るステップ、上記システム中で上記多
    重プログラミング・モードで動作する第2プログラム中
    で、上記の関連する制御ベクトルになろうとする候補ベ
    クトルの少なくとも第2フィールドを受け取るステップ
    、上記候補制御ベクトルの第1フィールドを検査して、
    上記暗号機能を実行することが上記暗号キーによって許
    可されているかどうか判定し、上記検査の結果を上記管
    理プログラムに出力するステップ、 上記候補制御ベクトルの第2フィールドを検査して、上
    記暗号機能を実行することが上記暗号キーによって許可
    されているかどうか判定し、上記検査の結果を上記管理
    プログラムに出力するステップ、 上記暗号キーの上記表現を上記候補制御キーと組み合わ
    せて、上記候補制御ベクトルが上記関連制御ベクトルで
    ある場合にのみ上記暗号キーを回復するステップ、及び 上記第1検査ステップ及び上記第2検査ステップでその
    機能を実行することが許可されていると判定した場合に
    のみ、上記管理プログラム中で上記暗号キーを使って上
    記暗号機能を実行するステップ、 を含む方法。
  7. (7)各キーがその作成者から実行することを許されて
    いる機能を定義する制御ベクトルに関連する暗号キーを
    用いて暗号機能を実行することを求める、暗号サービス
    要求を処理するデータ処理システムにおいて、暗号キー
    を用いて実行することを要求されている暗号機能が、そ
    のキーの作成者によって許可されていることを確認する
    ための暗号キー管理装置であって、 関連する制御ベクトルと暗号的に結合された暗号キーで
    ある第1の表現を受け取り、かつ上記の関連する制御ベ
    クトルになろうとする第2の表現を受け取るための入出
    力経路を有し、上記入出力経路に結合された、上記暗号
    キーを用いて暗号機能を実行するための暗号処理手段を
    その中に含む、暗号機構と、 上記暗号機能を実行することが上記暗号キーによって許
    可されているかどうか判定するため、上記第2表現の上
    記第1部分の第1検査を行なって、上記第2表現の少な
    くとも第1部分を受け取り、かつ上記暗号キーを使って
    上記暗号機能を実行することを求める暗号サービス要求
    を受け取るための入力を備えた第1の制御ベクトル検査
    手段を含み、 上記第1制御ベクトル検査手段が、上記暗号処理手段に
    結合された、上記暗号機能を実行することが上記暗号キ
    ーによって許可されているという第1許可信号を出力す
    るための第1許可出力を備え、 上記第2表現の上記第2部分の第2検査を行なって、上
    記暗号機能を実行することが上記暗号キーによって許可
    されているかどうか判定するため、上記第2表現の少な
    くとも第2部分を受け取り、かつ上記暗号キーを使って
    上記暗号機能を実行することを求める暗号サービス要求
    を受け取るための入力を備えた第2の制御ベクトル検査
    手段を含み、 上記第2制御ベクトル検査手段が、上記暗号処理手段に
    結合された、上記暗号機能を実行することが上記暗号キ
    ーによって許可されているという第2許可信号を出力す
    るための第2許可出力を備え、 上記第2表現が上記関連制御ベクトルである場合にのみ
    、上記暗号機能が上記第1表現から上記暗号キーを回復
    し、 上記暗号処理手段が、上記第1及び第2許可信号の受信
    に応答して、上記暗号キーを用いた上記暗号機能の実行
    を開始するという、 上記装置。
  8. (8)各暗号キーがその作成者から実行することを許さ
    れている機能を定義する制御ベクトルに関連する暗号キ
    ーを用いて暗号機能を実行することを求める、暗号サー
    ビス要求を処理するデータ処理システムにおいて、暗号
    キーを用いて実行することを要求されている暗号機能が
    、そのキーの作成者によって許可されていることを確認
    するための暗号キー管理方法であって、 上記暗号キーを使って暗号機能を実行するための安全な
    場所を提供する安全境界をもつことを特徴とする暗号機
    構中の暗号処理手段で、暗号キーとその関連する制御ベ
    クトルとを受け取るステップ、 第1制御ベクトル検査手段中で、上記関連制御ベクトル
    の少なくとも第1部分と、上記暗号キーを使って上記暗
    号機能を実行することを求める暗号サービス要求とを受
    け取るステップ、 上記関連制御ベクトルの上記第1部分の第1検査を行な
    って、上記暗号機能を実行することが上記暗号キーによ
    って許可されているかどうか判定するステップ、 上記暗号機能を実行することが上記暗号キーによって許
    可されているとの第1許可信号を、上記第1制御ベクト
    ル検査手段から上記暗号処理手段に出力するステップ、 第2制御ベクトル検査手段中で、上記関連制御ベクトル
    の少なくとも第2部分と、上記暗号キーを使って上記暗
    号機能を実行することを求める暗号サービス要求とを受
    け取るステップ、 上記関連制御ベクトルの上記第2部分の第2検査を行な
    って、上記暗号機能を実行することが上記暗号キーによ
    って許可されているかどうか判定するステップ、 上記暗号機能を実行することが上記暗号キーによって許
    可されているとの第2許可信号を、上記第2制御ベクト
    ル検査手段から上記暗号処理手段に出力するステップ、
    及び 上記暗号処理手段が上記第1及び第2許可信号を受け取
    るのに応答して、上記暗号キーを用いた上記暗号機能の
    実行を開示するステップ、 を含む上記方法。
JP2110660A 1989-04-27 1990-04-27 暗号キー検証方法及び装置 Expired - Lifetime JPH0820850B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US344165 1982-01-29
US34416589A 1989-04-27 1989-04-27

Publications (2)

Publication Number Publication Date
JPH02300784A true JPH02300784A (ja) 1990-12-12
JPH0820850B2 JPH0820850B2 (ja) 1996-03-04

Family

ID=23349325

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2110660A Expired - Lifetime JPH0820850B2 (ja) 1989-04-27 1990-04-27 暗号キー検証方法及び装置

Country Status (3)

Country Link
EP (1) EP0396894B1 (ja)
JP (1) JPH0820850B2 (ja)
DE (1) DE69019593T2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05224604A (ja) * 1991-09-27 1993-09-03 Internatl Business Mach Corp <Ibm> パスフレーズを用いて公用および私用キーペアを生成する方法およびその装置
US7127318B2 (en) 2002-01-15 2006-10-24 Sig Combibloc Systems Gmbh Method and device for guaranteeing an authorized and process-optimized use of semi-finished pieces in a production unit

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DK279089D0 (da) * 1989-06-07 1989-06-07 Kommunedata I S Fremgangsmaade til overfoersel af data, et elektronisk dokument eller lignende, system til udoevelse af fremgangsmaaden samt et kort til brug ved udoevelse af fremgangsmaaden
USRE36310E (en) * 1990-06-07 1999-09-21 Kommunedata I/S Method of transferring data, between computer systems using electronic cards
US5148479A (en) * 1991-03-20 1992-09-15 International Business Machines Corp. Authentication protocols in communication networks
CN109765825B (zh) * 2019-01-30 2023-09-29 山西天科信息安全科技有限公司 一种物联网多链路安全控制终端和安全控制方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4386233A (en) * 1980-09-29 1983-05-31 Smid Miles E Crytographic key notarization methods and apparatus
FR2601795B1 (fr) * 1986-07-17 1988-10-07 Bull Cp8 Procede pour diversifier une cle de base et pour authentifier une cle ainsi diversifiee comme ayant ete elaboree a partir d'une cle de base predeterminee, et systeme pour la mise en oeuvre
JPS63182795A (ja) * 1987-01-20 1988-07-28 インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン ポータブル・カードとその製造方法
US4850017A (en) * 1987-05-29 1989-07-18 International Business Machines Corp. Controlled use of cryptographic keys via generating station established control values
DE68926200T2 (de) * 1988-08-11 1996-10-17 Ibm Geheime Datenübertragung mittels Steuervektoren

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05224604A (ja) * 1991-09-27 1993-09-03 Internatl Business Mach Corp <Ibm> パスフレーズを用いて公用および私用キーペアを生成する方法およびその装置
US7127318B2 (en) 2002-01-15 2006-10-24 Sig Combibloc Systems Gmbh Method and device for guaranteeing an authorized and process-optimized use of semi-finished pieces in a production unit

Also Published As

Publication number Publication date
EP0396894A2 (en) 1990-11-14
EP0396894B1 (en) 1995-05-24
EP0396894A3 (en) 1991-11-27
DE69019593T2 (de) 1996-01-25
DE69019593D1 (de) 1995-06-29
JPH0820850B2 (ja) 1996-03-04

Similar Documents

Publication Publication Date Title
US5103478A (en) Secure management of keys using control vectors with multi-path checking
EP0472939B1 (en) Cryptographic key version control facility
US5214698A (en) Method and apparatus for validating entry of cryptographic keys
US5559889A (en) System and methods for data encryption using public key cryptography
US5499297A (en) System and method for trusted path communications
US4941176A (en) Secure management of keys using control vectors
US6272632B1 (en) System and method for controlling access to a user secret using a key recovery field
EP0007002B1 (en) Transaction terminal systems provided with potential user authentication
US5214700A (en) Method for obtaining a securitized cleartext attestation in a distributed data processing system environment
JP4818542B2 (ja) コンピューティングプラットフォームにおけるサービスの実行
US4918728A (en) Data cryptography operations using control vectors
EP0482371B1 (en) Method and apparatus for controlling the use of a public key, based on the level of integrity for the key
CA2068488C (en) Hybrid public key algorithm/data encryption algorithm key distribution method based on control vectors
EP0043027A1 (en) Electronic signature verification method and system
WO2022037596A1 (zh) 组合签名及验证签名方法、系统及存储介质
TWI706658B (zh) 密碼運算、創建工作密鑰的方法、密碼服務平台及設備
CN109478279A (zh) 区块链实现的方法和系统
EP0505302A1 (en) Authentication protocols in communication networks
CN108900533A (zh) 一种共享数据隐私保护方法、系统、终端及介质
JP2020522205A (ja) プログレッシブキー暗号化アルゴリズム
US11556630B2 (en) Private password constraint validation
Tygar et al. Strongbox: A system for self securing programs
CN108768963A (zh) 可信应用与安全元件的通信方法和系统
CN109981562A (zh) 一种软件开发工具包授权方法及装置
CN108376290A (zh) 一种金融自助设备维护的控制方法、装置及服务器