JPH02504681A - 暗号装置キーの安全取扱システム及び方法 - Google Patents
暗号装置キーの安全取扱システム及び方法Info
- Publication number
- JPH02504681A JPH02504681A JP1506574A JP50657489A JPH02504681A JP H02504681 A JPH02504681 A JP H02504681A JP 1506574 A JP1506574 A JP 1506574A JP 50657489 A JP50657489 A JP 50657489A JP H02504681 A JPH02504681 A JP H02504681A
- Authority
- JP
- Japan
- Prior art keywords
- key
- bus
- encryption
- data
- storage means
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/82—Protecting input, output or interconnection devices
- G06F21/85—Protecting input, output or interconnection devices interconnection devices, e.g. bus-connected or in-line devices
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Storage Device Security (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるため要約のデータは記録されません。
Description
【発明の詳細な説明】
暗号装置キーの安全取扱システム
この発明は暗号化及び復号化動作に使用されるキーの取扱方法及びシステムに関
する。
背景技術
金融業に使用されるようなテラ一端末機に対しAdvanced Micro
Deviced社製のAMD 9588チツプのような標準暗号装置チップを使
用することは知られている。
そのような暗号装置チップはテラ一端末機の使用に関する個人又は金融データの
送信に使用される。
金融装置に暗号装置チップを使用する際の問題の1つは安全な方法でチップの暗
号装置キーを維持するのが困難だということである。従って、端末機のアプリケ
ーション・ソフトウェアの無権限使用者又は無権限アクセス者(デバッガ)がキ
ーをコンブロマイズ(無権限調整)することができる。
発明の開示
この発明の目的は、システムに設置された暗号キーを安全に維持するシステム及
び方法を提供することである。
従って、この発明によると、それはインストラクションを実行するプロセッサと
第1のバスによってホスト・ターミナルに接続されたデータを暗号化及び復号化
する暗号化モジュールとを含むホスト・ターミナルを有する暗号化及び復号化動
作に使用するキーを取扱うシステムであって、前記暗号化モジュールはデータを
暗号化及び復号化するデータ暗号化チップ(64)と、キーを記憶する記憶手段
と、前記キーを前記暗号化チップに転送するため前記記憶手段を前記データ暗号
化チップに接続する第2のバスと、前記第2のバスを前記第1のバスに接続する
インタフェース手段とを含み、前記プロセッサは前記キーを前記記憶手段に設置
するに有効であり、前記インタフェース手段は前記キーが前記プロセッサにより
前記記憶手段に設置された後前記第2のバスに現われるべきときはいつでも前記
キーをアクセスすることに関し前記第2のバスを前記第1のバスから遮断するよ
うにした暗号化/復号化動作に使用するキーの取扱システムを提供する。
この発明の他の面によると、それは暗号化チップに使用するための暗号化キーを
安全に維持する方法であって、前記暗号化チップについて使用される少くとも1
つのキーを記憶する記憶手段を設け、前記記憶手段の所定の領域に前記キーを書
込むようプロセッサからのインストラクションを使用し、前記記憶手段を前記暗
号化チップに接続するバスを設け、前記バスと前記プロセッサとの間にシステム
・インタフェースを設け、前記記憶手段の前記所定の領域から前記暗号化チップ
に前記キーを転送するべく前記プロセッサからのインストラクションを使用し、
前記システム・インタフェースを使用して前記工程(′b)の発生後前記キーを
アクセスすることに関し前記バスを前記プロセッサから遮断する各工程を含む暗
号化キーの安全維持方法を提供する。
図面の簡単な説明
次に、下記添付図面を参照してその例によりこの発明の一実施例を説明する。
第1図は、そこに暗号化/復号化モジュールが含まれているこの発明によるシス
テムの全体的略図である。
第2A図及び第2B図は、第1図に示す暗号化/復号化モジュールの詳細を示す
図である。
第3図は、第2A図のスタティックRAM又はSRAMの組織を示す図である。
第4図は、SRAMから特定のデータ・バイトをアクセスするために使用される
アドレス・ビットを示す図である。
第5図は、第2B図の暗号化チップのマスク・ボートに転送されるデータの転送
方式を示す図である。
第6図は、第2A図のアドレス及び双方向マルチプレクサの詳細を示す図である
。
第7図は、第2B図の暗号化チップに関する各種選択条件を示す図である。
第8図は、第2A図に示すシステム・インタフェースの回路図である。
第9図は、“キー暗号化キ一方式”に関するキーを示す図である。
第10図は、“キー暗号化キ一方式”に関するキーの関係を示す図である。
第11図は、第2B図の暗号化チップに関するタイミング関係を示すタイミング
図である。
発明を実施するための最良の形態
第1図はこの発明によるシステムlOの回路図である。システムlOは暗号化/
復号化モジュール(E/Dモジュール)12とホストCPU16を含む関連ター
ミナル14とを含む。システム10は、又システム10には必ずしも組入れる必
要がない中央コンピュータ18を含む。
ターミナル14は、例えば安全データを処理する金融ターミナルでよい。この場
合、安全データは、例えば金融バランス又は個人ローン・データなどである。
ターミナル14は点線の長方形20の中に示した成分を含む。中央コンピュータ
18は点線22内に示した成分を含む。
ターミナル14は従来の機能を達成するため、ROM24、RAM26.キーボ
ード(KB)28.ディスプレイ30.ホストCPU16及びインタフェース・
ロジック32を含む。ターミナル14は、又主バス38に接続されているハード
・ディスク・インタフェース(1/F)36と通信インタフェース(1/F)3
4とを含む。主バス38はホストCPU16及びE/Dモジュール12に接続さ
れる。ターミナル14の動作を制御するプログラム又はソフトウェアは従来同様
ROM24又はRAM26に記憶されている。
中央コンビエータ18は従来通りに機能しうるようROM40.RAM42.キ
ーボード(KB)44゜ディスプレイ46.CPU48及びインタフェース・ロ
ジック50を含む。中央コンビエータ18は、又バス56によって通信インタフ
ェース34及びCPU48に接続されているハード・ディスク・インタフェース
(I/F)54及び通信インタフェース(1/F)52を有する。中央コンピユ
ータ18の動作を制御するソフトウェア又はプログラムは従来通りである。
E/Dモジュール12の典型的な使用として、そのターミナル14がそれに接続
されているディスク58に記憶されている合計をアップデートするに必要である
。これら合計が暗号形でディスク58に記憶されていると、ターミナル14はそ
の合計をアクセスしてE/Dモジュール12に送り、デコードしてターミナル1
4に戻す。ターミナル14が合計の処理を終了した後、ターミナル14に関する
ソフトウェア又はアプリケーション・プログラムは、変更した合計をディスク5
8に戻す前に暗号化することを要求する。そのため、ターミナル14は変更デー
タ(合計)をディスク58に戻す前に暗号化のためにE/Dモジュール12に送
る。
E/Dモジュール12に使用される特定の暗号化キーはターミナル14のあると
ころの管理者が毎日ロードする。システム10にはターミナル14のようなター
ミナルが複数あるかもしれないが、ここではその1つを示す。暗号化キー又は複
数のキーは先行技術で設定された後ターミナル14に残るとすると、システムの
無権限使用者が前述の各種“デバッギングルーチンを使用し“Cそのキーを取得
しようと試みるであろう。
もし管理者が開始ルーチンと共に暗号化キーを毎日設定しなければならないと、
それを無権限に取得しようとしたときには、キーはシステム10外に記憶されて
いることになる。
前述の従来技術に比べ、ひとたび暗号化キーをE/Dモジュール12に設定する
と、それをターミナル14にアクセスすることはできず、どのようなデバッキン
グ・ルーチンを使用しても取得することはできなくなる。
第1図のE/Dモジュール12は第2A図及び第2B図で詳細に述べる。この実
施例の特徴の1つは暗号化キーが電池62に支援されたスタテイツRAM又はS
RAM60に記憶されているということである。暗号化キーがSRAM60に書
込まれた後、暗号化キーは、例えば電源故障が生じた後、又は毎日SRAMに保
持される。SRAM60は通常読出/書込装置であるが、E/DモジュールI2
に使用された場合、現実にはホストCPU16に関する限り書込専用RAMであ
る。これは、ホストCPtJ16によってランされるデバッキング・ソフトウェ
アか又はソフトウェアの無権限使用によってSRAM16からくるデータを決し
て見ることができないということである。繰返すと、ひとたび暗号化キーがSR
AM60に設定されると、SRAM60はホストCPU16に関する限り書込専
用RAMとなる。
第2A図及び第2B図のE/Dモジュール12の全体的説明を続けると、この実
施例で使用するために選択された特定の暗号化チップ(64で示す)は、例えば
Advanced Micro Devices社のA M D 9568でよ
い。暗号化チップ64は市販され、National Bureau ofSt
andards −Data Encryption Scheme (NBS
−DBS)を実行することができる。
暗号化チップ64は3つの分離されたポート、補助ポー) (Aux Port
) 66とマスタ・ポート68とスレーブ・ポート70とを有する。補助ポート
66はすべてのマスク及び作業暗号化/復号化キーの挿入に用L)られる。マス
タ・ポート68は作業キー(後述するある状況で)、コマンド、データ、モード
・コマンドの挿入と、データ及びステータスの読出しに使用される。
スレーブ・ポート70は普通性の装置のインタフェースとして使用されるが、こ
の実施例ではクリヤ・テキスト・キーをSRAM60に戻すのに使用される。
暗号化チップ64 (チップ64)は後述する特殊化された状況下の場合を除き
普通の方法で使用される。
チップ64はモード・レジスタ72と、モード・ステータス・レジスタ74と、
コマンド・レジスタ76と、コマンド・ステータス・レジスタ78と、マスク・
キー・レジスタ80と、暗号キー・レジスタ82と、復号キー・レジスタ84と
、出力レジスタ90と、イニシャライゼーション・ベクトル(1,V、)暗号キ
ー・レジスタ92と、1. V、復号キー・レジスタ94とを含む。
まず、暗号化チップ64の動作について説明する。
状況を簡単にするため、暗号化/復号化(E/D)キーがターミナル14のRA
M26にクリヤ・テキストとして記憶されるものと仮定する。又、ターミナル1
4によって供給されるデータがE/Dモジュール】2によって暗号化されるもの
と仮定する。ターミナル14はそのアプリケーション・プログラムを通して補助
ポート66を介して暗号キー・レジスタ82にクリヤ・テキスト・キーをロード
する。その後、暗号化されるデータはマスク・ポート68を介して入力レジスタ
90にロードされる。暗号化キー64は暗号キー・レジスタ82からE/Dクリ
ヤ・テキスト・キーと、入力レジスタ90からデータとをとり、アルゴリズム・
ユニット88のデータを暗号化する。暗号化されたデータは出力レジスタ86を
介してターミナル14に転送される。この実施例では、ターミナル14は、例え
ばオペレーション・プラットホームとしてパソコンを含むことができ、ホストC
PU16とE/Dモジュール12との間のデータ転送をI10書込又はコマンド
として処理することができる。
この実施例の特徴はユーザが希望する特定の秘密レベルを選択することができる
ことである。この実施例では、下記のような3つの秘密レベルを得ることができ
る。
1、 暗号装置のみ
4 安全キーの記憶
3、 安全キーの暗号化動作
第1の安全レベルでは、暗号装置又は暗号化チップ64のみが使用できる。この
レベルは上記で暗号化チップ64の簡単な使用の説明ですでに説明した。このレ
ベルでは、ユーザ次第でユーザ自身の安全レベルを与えることができる。
第2の安全レベルは将来の使用のため、E/D及びマスク・キーをSRAM60
に記憶することができる。
前述のように、ひとたび、キーがSRAM60に書込まれると、無権限に見るこ
と及びアクセスすることができない。
第3の安全レベルは1つのキーと他のキーを復号化する処理を可能とする。以下
、第2及び第3の安全レベルをSRAM60及びシステムlOの他の面の組織に
より説明する。
第3図はSRAM60の異なる領域とそれらの16進アドレスとを示す。その領
域はマスク・キー領域6〇−1と作業キー領域60−2と1. V、領域又は汎
用領域60−3とを含む。この実施例において、マスク・キー領域60−1は各
データ・ブロックが8バイトから成る32ブロツクを含む。各ブロックは8バイ
ト長のキーを含む。キーの各バイトはパリティ・ビットを含み、各マスク・キー
は56ビツト長であり、その8データ・バイトに8パリテイ・ビットを含む。当
然、特定の応用により、他のキー長さを用いてもよい。作業キー領域60−2は
96データ・ブロックを含む。この領域60−2はすでに説明したように組織さ
れた96キーを記憶することができる。最後に、領域60−3は896データ・
ブロックを記憶することができ、各ブロックは8バイトを含む。
ホストCPt)16がSRAM60をアドレスするとき、そのソフトウェアはバ
ス38及び安全バス98を介してキ一番号を取出しキ一番号ラッチ96(第2A
図)に挿入する。システム・インタフェース100(後述する)は安全バスをシ
ステム・バス38に接続又は遮断することに使用される。キ一番号ラッチ96は
ローカル・バス3g−1(第2A図)に接続される。
ラッチ96は1つの8ビツト・ラッチと2ビツト・ラッチ(図に示していない)
とから成り、8ビツト・アドレスが8ビツト・ラッチに、高位2ビツトが2ビツ
ト・ラッチに記憶される。
キ一番号はSRAM60からのバイトをアクセスするに必要な13ビツトの10
ビツトを含む。キ一番号(10アドレス・ビット)はSRAM60の特定のブロ
ックを指定する(第4図)。又、13ビツト・アドレスの最後の3ビツトはター
ミナル14から出力された組合せビットであり、AO,A1.A2 (第4図)
で示す。これら組合ビットAO,A1.A2はバイナリ・カウンタの出力とみな
され、8つの異なる出力を得、SRAM60のブロック内の特定の8データ・バ
イトの1つを選択する。
SRAM60はSRAMコントロール102 (第2A図)と示した従来のコン
トロールを有する。S RAMコントロール102は通常のセレクト(RAMセ
ル)、読出(RAMリード)及び前述の組合ビットAO,AI。
A2に加えバス98−1を介して供給される書込(RAMライト)入力を有する
。ひとたびデータをSRAM60に記憶すると、電源が切れても電池62に支援
されるのでそのまま残る。特定のキーがSRAM60から引出され、暗号化チッ
プ64に送られる場合、それは8つの別々のサイクルで行われ、8ビツト・バイ
トの各ビットが各サイクルで送られる。
次に、特定の暗号化チップ64の詳細を説明する。
AMD9568チップ64を使用するとき、チップに対する続出/書込動作につ
いて特別な面がある。ホストCPU16からのI10書込中、2つの動作サイク
ルを行う。
最初のサイクルでは、ホストCPU16はアドレスされる特定の要素のアドレス
をバス98に出力し、第2のサイクルでは、転送されるデータをバス98に出力
する。
E/Dモジュール12は第2A図及び第6図に示すアドレス及び双方向データ・
マルチプレクサ回路(MUX回路104)を有する。MUX回路104はマスタ
・ボート68のアドレスに使用される。この特別な面はマスク・ボート68に行
くバス98−3の6データ・ラインD7〜D3.Doがあり、補助ボート66に
行くバス98−2に8データ・ラインD7〜DOがあり、バス98−4にスレー
ブ・ボート70からSRAM60にくる8データ・ラインD7〜DOがあるとい
う事実に関する。6データ・ラインD7〜D3.Doはデータのみに使用され、
M U X回路104からくるラインAD2.ADIは最初の半サイクルでアド
レス・ラインの供給に使用され、ラインAD1.AD2は第2半サイクルでデー
タの転送に使用される。マスク・ボート68 (Fi85)への入力はADl、
AD2と共にアドレス及びデータ値のために使用される。
第6図は第2A図のMUX回路104の詳細を示す。
回路104はマルチプレクサ106を含む。マルチプレクサ106は従来のエネ
ーブル入力、アドレス選択、AI(アドレス)及びDI(データ)ビットを有す
る。
第1のアドレス・ビットA1及び第1のデータ・ビットDlは第5図で組合ビッ
トADIで示す。アドレスがバス・サイクルの第1の部分で選択されたとき、入
力Alはマスク・ボート68に対し転送のために選ばれる。データが第2サイク
ルで転送されるとき、データ・ビットDIは選ばれる。第5図の組合ビットAD
2として示す第2のアドレス・ビットA2及び第2のデータ・ビットD2の多重
化を処理するために多重化要素(図に示していない)がある。MUX回路104
は、又マルチプレクサ106のまわりのデータのバス98への転送と、読出動作
におけるホストCPU16からの返送とに使用される3状態バツフア108を含
む。
マルチプレクサ回路(図に示していない)のまわりの第2のデータ・ビットD2
をバス98に転送することに使用される3状態バツフア108に類似する別のラ
ッチ(図に示していない)があり、2つのデータ・ビットD1.D2がホストC
PU16に返送されるため、データ・ビットD7〜D3と組合わされる。
第7図は各種レジスタ及びリード/ライト状態のため、第2A図に示すMUX回
路104に対する入力AI。
A2の状態を示す。例えば、入力A2.AIが0の場合、データ又は入力レジス
タ90はリード/ライト動作のために選ばれる。
暗号化チップ64の他の点について説明する。マスク・キー・レジスタ80は常
にクリヤ・テキストを記憶している。
モード・レジスタ72は暗号化チップ64の実行方法を述べるために使用される
。それはデータが暗号化されるか復号化されるかを決定する。モード・レジスタ
72は、又下記のような3つの別のモード又は状況を決定する。
1、 暗号化又は復号化されるデータがマスク・ボート68を通してチップ64
に入るかマスク・ボート68を通して出るか。
2、 暗号化されたデータがマスク・ボート68を通して入るか、スレーブ・ボ
ート70を通して出るか。
3、 クリヤ・テキスト・データがマスク・ボート68に入るか、スレーブ・ボ
ート70を通して出るか。選ばれた特定の暗号化チップ64は第4の動作モード
を支持するが、この発明の理解のためには必要がない。
モード・ステータス・レジスタ74は暗号化チップ64のステータスをホストC
PU16に知らせる。
コマンド・レジスタ76は暗号化チップ64が現にどういう作用を行っているか
を示す。
コマンド・ステータス・レジスタ78はコマンドが要求通りに実行されたかどう
かにつき、ホストCPU16に通知する。
暗号化チップ64 (第2B図)の使用につき更に下記する点を加える。
トCPU16へ及びそこからデータを転送するために使用される。
2、 スレーブ・ボート70は最高安全レベルにおいてか、又は前述の第3レベ
ルで使用される。これは、E/Dモジュール12につきシステム・インタフェー
ス100を含むハードウェアが、SRAM60のマスク・キー領域60−1から
マスク・キーをとり、AUXポート66を介して復号レジスタ84に出力したこ
とを検知したときに発生する。システム・インタフェース100は主バス38か
らの安全バス98をディセーブルするため、チップ64の出力レジスタ86にあ
るデータはもはやマスク・ボート68を介してホストCPU16に入力できなく
なるが、ホストCPU16はチップ64にコマンドを書込むことができる。事実
、システム・インタフェース100はマスタ・ボート68に対するリード信号を
ディセーブルするが、ホストCPU16は、例えばモード・レジスタ72にいま
だ書込みを行うことができ、そこで各種ステータスをチェックする。出力レジス
タ86のキー・データはスレーブ争ボート70を介してマスク領域60−1にの
み出力される。これはホストCF’U16がらのライト・インストラクションで
行われる。
この発明で使用するために選ばれるチップ64の特徴の1つは、ひとたびキーが
レジスタ80.82,84いこと、しかしそのデータを除去する場合、それらレ
ジスタに次のデータを書込むだけでよいということである。ひとたび新キーがレ
ジスタ80,82.84に書込まれると、システム・レジスタ86の内容も破壊
される。
チップ64の他の特徴はホストCPU16によって1、 V、暗号及び復号レジ
スタ92.94を読出すことができることである。これはE/Dモジュール12
の不安全部分とみなされる。イニシャライゼーション・ベクトルはSRAM60
の領域6o−3に記憶される。
主バス38をディセーブルし、イニシャライゼーション・ベクトルをSRAM6
0に転送するものと同じ方式がイニシャライゼーシaン・ベクトルに安全性を与
えることに使用される。しかし、マスク・ボート68はスレーブ・ボート700
代りにこのために使用される。
この実施例の他の特徴はキー暗号化キ一方式のようにキーの復号化を容易にする
ことである。例えば、ひとたび暗号化されたキーが復号化されると、だれもE/
Dモジュール12からこのクリヤ・テキスト・キーを読出すことを希望しない。
しかし、ホストCPU]6からE/Dモジニール12にステータス・コマンドを
リード/ライトすることができることを希望する。以下、この技術を説明する。
一般に、このシステムは、にI10書込をさせるよう設定する。I10書込を使
用することにより、それはホストCPU16のバッファ及び同様な装置がホスト
CPU16がら離され、データをホストCPU16に戻す方法がなくなるため、
アプリケーション−ソフトウェア又はソフトウェアをデバッグする者が決してデ
ータを見ることができなくなる。言換えると、SRAM60はホストCPU1e
に関する限り書込専用ボートとして取扱われる。しがし、データはチップ64か
らSRAM60に書込むことができる。
この実施例の他の特徴は、キーの記憶に関する限り、SRAM30が2つの部分
に分割されるということである。マスク・キー領域60−1は“キー暗号化キー
”方式を使用できる最高安全レベルを可能にし、それを以下説明する。第2のキ
ーがSRAM30の領域6゜−1から(ると共に1つのキーが他のキー又は第2
のキーで復号化されたとき、その結果は、例えばチップ64の出力レジスタ86
に挿入される。ホストCPU16がこの実施例のマスク・ボート68を通して出
力レジスタ86を読出そうとしても、それは安全バス98を主バス38から遮断
する。
安全データ又はキーをホストCPU16に返送することを希望しないが、ホスト
CPU16はいまだE/ればならないということを思い出そう。全体的に要約す
ると、システム・インタフェース100を含むハードウェアはマスク・ボート6
8を通して下記事項までホストCPU16に出力レジスタ86から読出させない
。
1、 クリヤ・テキストにある新暗号キーがAUXボート66を介して暗号キー
・レジスタ84に供給される。
2、 新暗号キーがSRAM60のマスク・キー領域60−1からこなかった。
3、 新暗号キーの8バイトすべてがパリティ・エラーなしに転送される。
チップ64の一般的動作方法を説明したので、第2B図及び第8図のシステム・
インタフェース100の一般的機能を以下説明する。システム・インタフェース
100は74LS245のような従来のラッチである2方向ラツチ114を含み
、74LS573のような従来の一方向ラッチ110,112を含む。これらす
べてのラッチはこの実施例では8ビット幅を持つ。
システム・インタフェース100(第2A図、第8図)は下記の5つの制御信号
によって制御される。
1、ラッチ
2、 ペリ(周辺)
3、 リード・エネーブル
4.245エネーブル
5.245方向
最初にリストされた3信号は一方向ラッチ11O9112の制御に使用され、最
後の2信号はラッチ114の制御に使用される。ラッチ110,112,114
は主バス38と安全バス98との接続を形成する。信号°ラッチ”がアクティブ
か“ハイ”であり、信号“ぺり0がアクティブか“ロー”であると、ホストCP
U16からのデータは主バス38からE/Dモジュール12及び並列、及び直列
ボートがあるローカル・バス38−1に転送される。これら2つのポートは他の
回路への接続に用いられ、この発明の理解には重要ではないが、システムlOの
多能性を示すために示した。ホストCPU16からのデータがSRAM60かチ
ップ64に転送されるべき場合、信号245エネーブルはアクティブ又は“ロー
”になり、信号245方向はデータが安全バス98に転送されるということを表
示するステータスに切換えられる。データが入力データ・レジスタ90のような
レジスタに転送されるべきでありだ場合、それはラッチ110を通過する。タイ
ミング及びデコード回路116 (第2A図)からくる暗号WRC書込)信号が
発生すると、データは入力レジスタ90に書込まれる。前述のように、バス・ア
クセス・サイクルの終り近くで信号“ラッチ”はインアクティブ又は“ロー”と
なり、その処理において、ラッチ110はその入力に何が発生したかに関係なく
その出力にデータを維持する。これは、ラッチ110の出力側のデータに影響を
与えることなくゲートし、そのバス・アクセスの終りでラッチ110の入力側に
CPU16が“ガベジ”を出力することができる。これはCPtJ16からチッ
プ64に“書込”中必要なデータ保持時間を与えることになる。バス・アクセス
・サイクルが終ったとき、信号“ぺり”はディセーブルされ、主バス38から安
全バス98を分離する。
ホストCPU16がリード動作を実行するため、ラッチ112に対する信号リー
ド・エネーブルはローカル・バス38−1からCPIJ16にデータの転送を有
効にし、信号“ラッチ”も“ハイ”になる。データが、例えばチップ64のモー
ド・レジスタ72から読出されるとき、信号245エネーブルはアクティブ又は
“ロー”となり、信号245方向は続出オペレーションが有効となる。モード・
レジスタ72の読出はE/Dキーに関する限り安全性に問題を与えないので読取
はE/Dモジュール12のより可能である。
デコーダ・ブロック118で表わされる特別暗号化モジニール状態は安全バス9
8が主バスから遮断されるということを要求するある状態があるかどうか確認す
ることに使用される。デコーダ・ブロック118で表わされる状態を以下説明す
る。バス・アクセス・サイクルの終り近くで、信号“ラッチ”は、ホストCPL
II6がデータ読出を終るまで維持されるようにしたE/Dモジュール12から
のデータをラッチ112にラッチするのにインアクティブとなる。ホストCPU
16はラッチ112にデータの読取りが終ると、E/Dモジュール12はバス・
アクセス・サイクルを終り、アイドル状態に入る。
E/Dモジュール12によって使用可能になる第3の安全レベルの特徴は”キー
暗号化キ一方式”が可能となることである。安全場所にいる銀行員は第9図に示
す3つのすべてのクリヤ・テキスト・キーを開始する。それらはマスク・キー、
キー#l、キー#2である。CPTJ16に対してソフトウェアを使用し、銀行
員はキー#lをチップ64の暗号キー・レジスタ82に入れ、キー#2を入力レ
ジスタ90に入れてキー#2をキー#lによって暗号化できるようにし、暗号化
されたキー=2をチップ64の出力レジスタ86に入れ、それが第1O図の作業
キーとなる。作業キーはデータを暗号化又は暗号化するためのキーと定義される
。
作業キーは1つの状態でクリヤ・テキストとしてレジスタ82又は84に設定す
ることができる。他の状態では、作業キーは暗号化されてチップ64に入れるこ
とができ、その後レジスタ80に設定されているマスク・キーによって復号化さ
れる。今、クリヤ・テキストである作業キーは暗号化又は復号化のためにレジス
タ82又は84に挿入することができる。この第10れと同じ処理がマスク・キ
ーを使用してキー#1の暗号化に繰返し使用される。その処理を繰返すため、ク
リヤ・テキスト・マスク・キーが暗号キー・レジスタ82に出力され、クリヤ・
テキスト・キー#1が入力レジスタ90に挿入され、マスク・キーに関するアル
ゴリズム・ユニット88がマスク・キーで暗号化されたキー#lを発生し、それ
を出力レジスタ86に出力する。その後、マスク・キーで暗号化されたキー#l
は第1O図のメモリー位置に記憶される。この時点で、暗号化された2つのキー
がシステム10で使用可能である。ホストCPU16に対するソフトウェアが暗
号化/復号化動作にためにこれらのキーを選択することができる。
システム10の特徴の1つは、上記で発生した2つの暗号化されたキーが無権限
者に取得されることなく外部出力ラインに送信することができるということであ
る。マスク・キーで暗号化された作業キー及びキー#1はCPU]6に記憶され
る(第10図)。無権限ユーザは、例えばマスク・キーにアクセスしないのでシ
ステム10にアクセスすることができない。
システム10を使用する簡単な方法の1つはホストCPU16に記憶されている
かもしれない暗号化されたキーの1つを取り、データを暗号化及び復号化するた
めにそれを使用することである。CPU16にあるアプリケーション・プログラ
ムは、それを繰返すため、使用する特定のキーが記憶されている場所を知ってい
る。マスク・キーで暗号化されたキー#1がホストCPU16によって使用され
るものとする。ホストCPU16はE/Dモジュール12にインストラクション
を送り、SRAM60の領域6o−1からのマスク・キーを復号化レジスタ84
に挿入する。マスク・キーの最初のバイトが補助ポート66に移動するやいなや
、安全バスが主バスから切離される。その後、ホストCPU16は、マスク・キ
ーで暗号化されたキー#1はチップ64の入力レジスタ9oにロードされるべき
であるということをE/Dモジュール12に知らせる。アルゴリズム・ユニット
88は出力レジスタ86に挿入されたクリヤ・テキスト・キー#1を発生する。
このクリヤ・テキスト・キー#lはスレーブ・ポート70からSRAM60の、
例えば、アドレスo1oのマスク・キー領域に出力される。その後、ホストCP
U16に対するソフトウェアがクリヤ・テキスト・キー#1を取出し、それを新
作業キー(第1θ図)の復号化に使用するため、補助ボート66を介してマスク
・キー・レジスタ80にそれを挿入する。暗号化された作業キーは暗号化された
Eキー又はDキーを補助ボート66を介してロードするようコマンドによって暗
号キー・レジスタ82及び(又は)復号キー・レジスタ84に設定される。Dキ
ーがロードされる前に、主バス38はクリヤ・テキスト・キーを補助ボート66
を通して復号キー・レジスタ84にロードすることによって可能化され、又は接
続されるにちがいない。このキーはSRAM60のマスク・キー領域60−1か
らくることはできない。又、この作業キーは暗号化された形でSRAM60の位
置035に記憶される。暗号化されるべきデータは暗号化のために入力レジスタ
90に挿入される。暗号化されたデータは出力レジスタ86からホストCPU1
6に自由に通過する。この点において、作業キーでない暗号化されたキーを復号
するためマスク・キーが使用されるとき、クリヤ・テキストの結果は常にスレー
ブ・ポート70かイRAM60の指定した領域に行き、クリヤ・テキスト・マス
ク・キーが作業キーを復号化するために使用されたときには、作業キーはチップ
64の2つのレジスタ82又は84の1つに入る。第10図のキーA及びキー#
1によって示すように数個のキー暗号化及び復号化レベルがある。
暗号化されたキーを使用するときに供給する一般的な規則は、作業キーを使用す
る直前に常にクリヤ・テキスト・キーを必要とするということである。この例に
おいては(キーAが第1O図にないと仮定する)、キー#1が作業キーであるべ
きであったので、クリヤ・テキスト・マスク・キーは、マスク・キーで暗号化さ
れたキー#lを復号化するため、マスク・キー・レジスタ80に挿入されなけれ
ばならない。
安全バスが主バスに対するロックから開放されるべきときを決定する手段を第2
A図及び第2B図に示す。
デコーダ・ブロック11gはある入力信号を組合わせるための従来の組合せロジ
ック又はプログラマブル・アレイ・ロジック(PAL)を含み、要求する出力信
号を得て安全バス98のロック及びアンロックを行う。
この信号は下記のものを含む。
5、ANYD
6、 クリヤD AUX
Aフラグ信号はチップ64から(る。その一般的機能はデータ源からくる次のデ
ータ・バイトがチップ64の補助ボートに転送することができるということを表
示(“ロー”のとき)することである。
信号パリティはチップ64からくる。チップ64からの信号パリティが“ロー”
レベルのとき、それはチップ64に転送された特定のキー・バイトにパリティ・
エラーがあったということを示す。例えば、キーに含まれている8バイトの各1
がパリティ・ビットを持つ。チップ64の補助ボートにロードされる8データ・
バイトはパリティ・エラーを持つことができず、転送の全期間中、Aフラグ信号
をアクティブ又は“ロー”にしなければならない。
信号マスク・キーは転送中の特定のキーの発生源を示すステータス・バイトであ
る。信号“マスク・キー”はキ一番号ラッチ96(第2A図)にロードされる値
を見ることによって発生する信号である。上位5ビツトが見られ、それらがすべ
て“0″であると、そのキーはSRAM60のマスク・キー領域60−1からア
クセスされているということを表示する。
信号“キーソース”は、そのキーの発生源がCPU16からきたものかSRAM
60からきたものかを示すビットである。この信号はアドレスによってデコート
される。
信号ANY Dは、ロード復号キー・コマンドがチップ64に与えられたときに
アクティブになる信号である。
以下のように、4つの異なるタイプの復号コマンドを選択することができる。
1、 補助ボート66を介してクリヤ復号キーをロード。
2、 マスク・ポート68を介してクリヤ・復号キーをロード。
3.AUXボート66を介して暗号化された復号キーをロード。
4、 マスク・ポート68を介して暗号化された復号キーをロード。
信号クリヤD AUXはチップ64の補助ポート66を介してクリヤ・テキスト
復号キーをロードするようコマンドが与えられたということを示すために使用さ
れる。
主バス38から安全バス98をロックするため、又は“遮断”するため、信号キ
ー・ソースが発生源としてSRAMを示し、信号ANY D及びマスク・キーが
アクティブでなければならない。言換えると、チップ64はマスク・キー領域6
0−1からのキーを補助ボート66を介して復号キー・レジスタ84にロードす
るよう指令されたという゛ことである。
安全バス98をアンロックするか又はそれを主バス38に“接続”するため、信
号クリヤD AUXはアクティブであり、信号マスク・キーはインアクティブで
なければならない。言換えると、安全バス98はチップ64内の復号キー・レジ
スタの内容を破壊することによって主バスに接続される。これは下記によって行
うことができる。
■、 補助ボート66を通してSRAM60の作業領域60−2からのクリヤ・
テキスト・キーをチップ64の復号キー・レジスタ84に選択し書込むこと。
2、 チップ64の補助ボート66を介してCPU16からのクリヤ・テキスト
・キーを復号キー・レジスタ84に書込むこと。
一方、この発明で使用される56ビツト・キーは、各バイトの1ビツトがパリテ
ィ・ビットである一群の8データ・バイトによってチップ64にロードされると
いうことを思い出そう。事実、チップ64からくる信号Aフラグ及びパリティは
チップ64に入ったキーの状態を監視するのに使用される。言換えると、8キー
・バイトをチップ64にロード中、パリティ・エラーがないと、信号Aフラグが
キーを挿入する全時間中アクティブである。Aフラグ及びパリティ信号を使用す
ることにより、実際に復号キー・レジスタ84の内容を破壊することな(、デバ
ッガ(無権限アクセス者)が安全バス98をアンロックしようとするのを防止す
る努力がなされる。再び、バイト・ベースで挿入されているキーのパリティをチ
ェックすることにより、実際に挿入された新キーが復号キー・レジスタ84に挿
入された原安全キーを破壊したことを確認する努力がなされる。
この発明に使用するために選択された特定の暗号化チップ64に関する他の重要
な点はこれに使用するA M Dチップ9568が特別なりセントの特徴を持つ
ということである。チップ64が第1のコマンド終了前に第2のコマンドを受取
ると、第2のコマンドはチップ全体をクリヤするリセットとして作用するという
ことである。チップ64がリセット状態のときには、信号Aフラグはインアクテ
ィブであるから安全バス98はアンロックされず、又は主バス38に接続されな
い。
再び、前述のように、安全バ、ス98が主バス38から遮断されたときには、実
際にディセーブルされている機能はCPUl6がチップ64の出力レジスタ86
から読出すことのみである。ホストCPU 16は、前述のように、モード・レ
ジスタ72及びステータス・レジスタ74を読出すことは可能である。
主バス38から安全バス98を遮断する手段に含まれているその他の回路はタイ
ミング・デコード回路116 (以下、回路+16と呼ぶ)で表わす。回路11
6の信号及び説明を以下で説明する。
1、RAMライト: SRAM60 (第2A図)に対するデータの書込みを制
御する信号
2、RAMリード・SRAM60からのデータの読出しを制御する信号
3、 暗号クロック:暗号化チップ64に対すクロック
4、 MALE・マスク・ポート・アドレス・ラッチ・エネーブル信号。バス
・アクセス・サイクルの最初の半サイクル中、チップ64内のラッチ(図に示し
ていない)にアドレスをラッチするに使用する。
5、 暗号WRニアクチイブで、データをマスク・ポート68に書込むことに使
用される信号。
6、 暗号RDニアクチイブで、マスク・ポート68からのデータの読出しに使
用される信号。
7、 ロード−キー:アクティブで補助ボート66にデータをストローブし、書
込む信号。暗号化チップ64が設計された方法から補助ボート66の“続出”信
号はない。
8、 スレーブRDニアクチイブでスレーブ・ポート70を読出す信号。
選択された暗号化チップ64は従来のチップであるから、回路116(第2A図
)に従来のロジック回路が使用され、適当なタイミング関係を与える。しかし、
適当に説明するべき部分があり、それは第11図に示すような暗号化チップに供
給されるクロックに関する。
クロックに関する限り、波形Aで示すように、クロックのアクティブ及びインア
クティブ部に対するある最小値がある。制御信号の要求を満足するため、波形C
で示されるようにわずかに長い“ハイ”レベル部がある必要がある。この実施例
の波形Cの“ハイ”レベル部は62.5ナノ秒(ns)の倍数に延ばされる。
波形Cの“ハイ”レベル・クロック部の延長は、制御信号が波形Cのクロックの
立下り後に所定の時間経過してから制御信号“コントロール”が立上るようにさ
れる。波形Cの立下りと波形りの立上りとの間の最大時間は矢印MTで示される
。この発明のために選ばれた暗号化チップ64のための最大時間MTはマスク・
ボート68がアクセスするために40ナノ秒であり、補助ボート66及びスレー
ブ・ボート70のアクセスのために60ナノ秒である。
FIG、 3
FIG、4
FIG、 5
FIG、 6
FIG、 7
FIG、 8
FIG、11
国際調査報告
+m++unw1a**+ms++、1+v PCT/US 897022G3
国際調査報告
US 8902263
S^ 2924]
Claims (1)
- 【特許請求の範囲】 1.インストラクションを実行するプロセッサ(16)と第1のパス(38)に よってホスト・ターミナル(14)に接続されデータを暗号化及び復号化する暗 号化モジュール(12)とを含むホスト・ターミナル(14)を有する暗号化及 び復号化動作に使用するキーを取扱うシステムであって、前記暗号化モジュール (12)はデータを暗号化及び復号化するデータ暗号化チップ(64)と、キー を記憶する記憶手段(60)と、前記キーを前記暗号化チップ(64)に転送す るため前記記憶手段(60)を前記データ暗号化チップ(64)に接続する第2 のバス(98)と、前記第2のバス(98)を前記第1のバス(38)に接続す るインタフェース手段(100,116,118)とを含み、前記プロセッサ( 16)は前記キーを前記記憶手段(60)に設置するに有効であり、前記インタ フェース手段(100,116,118)は前記キーが前記プロセッサ(16) により前記記憶手段(60)に設置された後前記第2のバス(98)に現われる べきときはいつでも前記キーをアクセスすることに関し前記第2のバス(98) を前記第1のバス(38)から遮断するようにした暗号化/復号化動作に使用す るキーの取扱システム。 2.前記キーはマスタ・キーであり、前記インタフェース手段(100,116 ,118)は前記マスタ・キーか前記第2のバス(98)に現われるべきときは いつでも確認する決定手段(116)と、前記マスタ・キーが前記プロセッサ( 16)により前記記憶手段(60)に設置された後前記第2のバス(98)に現 われるべきときはいつでも前記マスタ・キーをアクセスすることに関し前記第2 のバス(98)を前記第1のバス(38)から遮断するディスコネクト手段(1 14)とを含む請求の範囲1項記載のシステム。 3.前記記憶手段はスタティックRAM(60)と前記スタティックRAM(6 0)のための電池サポート(62)とを含む請求の範囲1項又は2項記載のシス テム。 4.暗号化チップ(64)に使用するための暗号化キーを安全に維持する方法で あって、(a)前記暗号化チップ(64)について使用される少くとも1つのキ ーを記憶する記憶手段(60)を設け、(b)前記記憶手段(60)の所定の領 域に前記キーを書込むようプロセッサ(66)からのインストラクションを使用 し、(c)前記記憶手段(60)を前記暗号化チップ(64)に接続するバス( 98)を設け、(d)前記バス(98)と前記プロセッサ(16)との間にシス テム・インタフェース(100)を設け、(e)前記記憶手段(60)の前記所 定の領域から前記暗号化チップ(64)に前記キーを転送するべく前記プロセッ サ(16)からのインストラクションを使用し、(f)前記システム・インタフ ェース(100)を使用して前記工程(b)の発生後前記キーをアクセスするこ とに関し前記バス(98)を前記プロセッサ(16)から遮断する各工程を含む 暗号化キーの安全維持方法。 5.前記工程(b)及び(e)はI/Oインストラクションの使用で行われる請 求の範囲4項記載の方法。 6.少くとも互いに関係するクリヤ・テキスト・マスタ・キーと暗号化された中 間キーと暗号化された作業キーとを使用する暗号化キー方式を使用し、(g)前 記クリヤ・テキスト・マスタ・キーを記憶する第1の領域(60−1)と、前記 暗号化された中間キー及び作業キーとを記憶する第2の領域(60−2)とを有 する前記記憶手段(60)を設け、(h)前記第1の領域(60−1)からの前 記クリヤ・テキスト・マスタ・キーを前記バス(98)を介してデータを暗号化 するインストラクションを有する前記暗号化チップ(64)に転送し、(i)使 用されるべき前記暗号化された中間キーを前記暗号化チップ(64)による復号 化のために前記暗号化チップ(64)に転送し、前記暗号化された中間キーは前 記クリヤ・テキスト・マスタ・キーによって予め暗号化され、(j)前記工程( e)の前記暗号化された中間キーを復号化してクリヤ・テキスト中間キーを発生 し、(k)前記バス(98)を介し前記工程(f)からの前記クリヤ・テキスト 中間キーを前記記憶手段(60)の前記第1の領域(60−1)に転送し、(I )前記第1のバスを介し前記記憶手段(60)の前記第1の領域(60−1)か らの前記クリヤ・テキスト中間キーを前記暗号化チップ(64)のマスタ・キー ・レジスタ(80)に転送し、(m)前記暗号化された作業キーを前記暗号化チ ップ(64)の少くとも1つの暗号化・復号化レジスタ(82,84)に設置し 、(n)前記プロセッサ(16)による暗号化/復号化動作のため前記工程(i )に設置された前記暗号化された作業キーを使用し、(o)前記システム・イン タフェース(100)を使用してクリヤ・テキスト・キーが前記バス(98)に 現われたときはいつでも前記バス(98)を前記プロセッサ(16)から遮断す る各工程を含む請求の範囲4項又は5項記載の方法。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US07/208,326 US4888802A (en) | 1988-06-17 | 1988-06-17 | System and method for providing for secure encryptor key management |
| US208,326 | 1988-06-17 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH02504681A true JPH02504681A (ja) | 1990-12-27 |
Family
ID=22774172
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP1506574A Pending JPH02504681A (ja) | 1988-06-17 | 1989-05-24 | 暗号装置キーの安全取扱システム及び方法 |
Country Status (6)
| Country | Link |
|---|---|
| US (1) | US4888802A (ja) |
| EP (1) | EP0377706B1 (ja) |
| JP (1) | JPH02504681A (ja) |
| CA (1) | CA1318028C (ja) |
| DE (1) | DE68927755T2 (ja) |
| WO (1) | WO1989012863A1 (ja) |
Families Citing this family (56)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5434999A (en) * | 1988-11-09 | 1995-07-18 | Bull Cp8 | Safeguarded remote loading of service programs by authorizing loading in protected memory zones in a terminal |
| US5065428A (en) * | 1990-05-29 | 1991-11-12 | Motorola, Inc. | Secure mode answering machine |
| US5515540A (en) * | 1990-08-27 | 1996-05-07 | Dallas Semiconducter Corp. | Microprocessor with single pin for memory wipe |
| US5222136A (en) * | 1992-07-23 | 1993-06-22 | Crest Industries, Inc. | Encrypted communication system |
| US5301247A (en) * | 1992-07-23 | 1994-04-05 | Crest Industries, Inc. | Method for ensuring secure communications |
| US5237611A (en) * | 1992-07-23 | 1993-08-17 | Crest Industries, Inc. | Encryption/decryption apparatus with non-accessible table of keys |
| US5457748A (en) * | 1992-11-30 | 1995-10-10 | Motorola, Inc. | Method and apparatus for improved security within encrypted communication devices |
| US5455862A (en) * | 1993-12-02 | 1995-10-03 | Crest Industries, Inc. | Apparatus and method for encrypting communications without exchanging an encryption key |
| US5465300A (en) * | 1993-12-27 | 1995-11-07 | Motorola, Inc. | Secure communication setup method |
| US5481610A (en) * | 1994-02-28 | 1996-01-02 | Ericsson Inc. | Digital radio transceiver with encrypted key storage |
| US5742682A (en) * | 1995-03-31 | 1998-04-21 | Pitney Bowes Inc. | Method of manufacturing secure boxes in a key management system |
| US5661803A (en) * | 1995-03-31 | 1997-08-26 | Pitney Bowes Inc. | Method of token verification in a key management system |
| US5812666A (en) * | 1995-03-31 | 1998-09-22 | Pitney Bowes Inc. | Cryptographic key management and validation system |
| US5680456A (en) * | 1995-03-31 | 1997-10-21 | Pitney Bowes Inc. | Method of manufacturing generic meters in a key management system |
| US5615266A (en) * | 1995-07-13 | 1997-03-25 | Motorola, Inc | Secure communication setup method |
| US5784581A (en) * | 1996-05-03 | 1998-07-21 | Intel Corporation | Apparatus and method for operating a peripheral device as either a master device or a slave device |
| US6473861B1 (en) * | 1998-12-03 | 2002-10-29 | Joseph Forte | Magnetic optical encryption/decryption disk drive arrangement |
| FR2800952B1 (fr) * | 1999-11-09 | 2001-12-07 | Bull Sa | Architecture d'un circuit de chiffrement mettant en oeuvre differents types d'algorithmes de chiffrement simultanement sans perte de performance |
| JP4892167B2 (ja) * | 2000-07-18 | 2012-03-07 | シンプレックス メジャー センドリアン ベルハッド | ディジタル・データ保護構成 |
| JP2002108710A (ja) * | 2000-07-24 | 2002-04-12 | Sony Corp | 情報処理システム、情報処理方法、および情報処理装置、並びにプログラム提供媒体 |
| US20020141577A1 (en) * | 2001-03-29 | 2002-10-03 | Ripley Michael S. | Method and system for providing bus encryption based on cryptographic key exchange |
| US20020184512A1 (en) * | 2001-05-31 | 2002-12-05 | Cardoso Augusto C. | Method and apparatus for supporting remote configuration to facilitate subscriber management |
| KR20040053101A (ko) * | 2001-11-14 | 2004-06-23 | 인터내셔널 비지네스 머신즈 코포레이션 | 정보 누출이 감소된 장치 및 방법 |
| US7194633B2 (en) * | 2001-11-14 | 2007-03-20 | International Business Machines Corporation | Device and method with reduced information leakage |
| US7925891B2 (en) * | 2003-04-18 | 2011-04-12 | Via Technologies, Inc. | Apparatus and method for employing cryptographic functions to generate a message digest |
| US7844053B2 (en) * | 2003-04-18 | 2010-11-30 | Ip-First, Llc | Microprocessor apparatus and method for performing block cipher cryptographic functions |
| US7502943B2 (en) * | 2003-04-18 | 2009-03-10 | Via Technologies, Inc. | Microprocessor apparatus and method for providing configurable cryptographic block cipher round results |
| US7519833B2 (en) * | 2003-04-18 | 2009-04-14 | Via Technologies, Inc. | Microprocessor apparatus and method for enabling configurable data block size in a cryptographic engine |
| US7536560B2 (en) * | 2003-04-18 | 2009-05-19 | Via Technologies, Inc. | Microprocessor apparatus and method for providing configurable cryptographic key size |
| US7542566B2 (en) * | 2003-04-18 | 2009-06-02 | Ip-First, Llc | Apparatus and method for performing transparent cipher block chaining mode cryptographic functions |
| US7392400B2 (en) * | 2003-04-18 | 2008-06-24 | Via Technologies, Inc. | Microprocessor apparatus and method for optimizing block cipher cryptographic functions |
| US7900055B2 (en) * | 2003-04-18 | 2011-03-01 | Via Technologies, Inc. | Microprocessor apparatus and method for employing configurable block cipher cryptographic algorithms |
| US7529368B2 (en) * | 2003-04-18 | 2009-05-05 | Via Technologies, Inc. | Apparatus and method for performing transparent output feedback mode cryptographic functions |
| US7529367B2 (en) * | 2003-04-18 | 2009-05-05 | Via Technologies, Inc. | Apparatus and method for performing transparent cipher feedback mode cryptographic functions |
| US7532722B2 (en) * | 2003-04-18 | 2009-05-12 | Ip-First, Llc | Apparatus and method for performing transparent block cipher cryptographic functions |
| US7539876B2 (en) * | 2003-04-18 | 2009-05-26 | Via Technologies, Inc. | Apparatus and method for generating a cryptographic key schedule in a microprocessor |
| US7321910B2 (en) * | 2003-04-18 | 2008-01-22 | Ip-First, Llc | Microprocessor apparatus and method for performing block cipher cryptographic functions |
| US8060755B2 (en) * | 2003-04-18 | 2011-11-15 | Via Technologies, Inc | Apparatus and method for providing user-generated key schedule in a microprocessor cryptographic engine |
| US20050015611A1 (en) * | 2003-06-30 | 2005-01-20 | Poisner David I. | Trusted peripheral mechanism |
| US7512813B2 (en) * | 2004-05-28 | 2009-03-31 | International Business Machines Corporation | Method for system level protection of field programmable logic devices |
| US7401222B2 (en) * | 2004-12-16 | 2008-07-15 | Xerox Corporation | Method of authentication of memory device and device therefor |
| US8001591B2 (en) * | 2006-01-31 | 2011-08-16 | Freescale Semiconductor, Inc. | Distributed resource access protection |
| US20070220369A1 (en) * | 2006-02-21 | 2007-09-20 | International Business Machines Corporation | Fault isolation and availability mechanism for multi-processor system |
| US7546397B2 (en) * | 2006-10-24 | 2009-06-09 | Intersil Americas Inc. | Systems and methods for allowing multiple devices to share the same serial lines |
| US20080163332A1 (en) * | 2006-12-28 | 2008-07-03 | Richard Hanson | Selective secure database communications |
| US8150037B2 (en) | 2007-02-20 | 2012-04-03 | Carnegie Mellon University | Apparatus and method for secure, user-friendly deployment of information |
| US8681996B2 (en) * | 2007-07-31 | 2014-03-25 | Lsi Corporation | Asymmetric key wrapping using a symmetric cipher |
| US8819839B2 (en) | 2008-05-24 | 2014-08-26 | Via Technologies, Inc. | Microprocessor having a secure execution mode with provisions for monitoring, indicating, and managing security levels |
| US8522354B2 (en) | 2008-05-24 | 2013-08-27 | Via Technologies, Inc. | Microprocessor apparatus for secure on-die real-time clock |
| US9032218B2 (en) * | 2010-01-29 | 2015-05-12 | Hewlett-Packard Development Company, L.P. | Key rotation for encrypted storage media using a mirrored volume revive operation |
| US8943328B2 (en) | 2010-01-29 | 2015-01-27 | Hewlett-Packard Development Company, L.P. | Key rotation for encrypted storage media |
| US8489893B2 (en) | 2010-01-29 | 2013-07-16 | Hewlett-Packard Development Company, L.P. | Encryption key rotation messages written and observed by storage controllers via storage media |
| FR2963455B1 (fr) * | 2010-07-27 | 2013-01-18 | St Microelectronics Rousset | Protection de cles secretes |
| KR102013841B1 (ko) * | 2012-08-06 | 2019-08-23 | 삼성전자주식회사 | 데이터의 안전한 저장을 위한 키 관리 방법 및 그 장치 |
| US9798686B2 (en) * | 2014-11-19 | 2017-10-24 | Silicon Laboratories Inc. | Slave side bus arbitration |
| CN111400725A (zh) * | 2019-01-03 | 2020-07-10 | 西安中车永电捷通电气有限公司 | 防止芯片锁死的方法、芯片以及存储介质 |
Family Cites Families (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4004089A (en) * | 1975-02-28 | 1977-01-18 | Ncr Corporation | Programmable cryptic device for enciphering and deciphering data |
| US4123747A (en) * | 1977-05-20 | 1978-10-31 | International Business Machines Corporation | Identity verification method and apparatus |
| US4352952A (en) * | 1978-06-12 | 1982-10-05 | Motorola Inc. | Data security module |
| US4465901A (en) * | 1979-06-04 | 1984-08-14 | Best Robert M | Crypto microprocessor that executes enciphered programs |
| US4670857A (en) * | 1981-10-26 | 1987-06-02 | Rackman Michael I | Cartridge-controlled system whose use is limited to authorized cartridges |
| WO1984004614A1 (en) * | 1983-05-13 | 1984-11-22 | Ira Dennis Gale | Data security device |
| US4644493A (en) * | 1984-09-14 | 1987-02-17 | International Business Machines Corporation | Implementing a shared higher level of privilege on personal computers for copy protection of software |
| US4787027A (en) * | 1985-09-20 | 1988-11-22 | Ncr Corporation | System using an adapter board to couple a personal computer to a plurality of peripherals in a financial environment |
| DE3601526A1 (de) * | 1986-01-20 | 1987-07-23 | Rene Dipl Biol Kleinhenn | Kopierschutzverfahren fuer computerprogramme mit hilfe der smart card |
| US4797928A (en) * | 1987-01-07 | 1989-01-10 | Miu Automation | Encryption printed circuit board |
-
1988
- 1988-06-17 US US07/208,326 patent/US4888802A/en not_active Expired - Lifetime
-
1989
- 1989-04-05 CA CA000595783A patent/CA1318028C/en not_active Expired - Fee Related
- 1989-05-24 JP JP1506574A patent/JPH02504681A/ja active Pending
- 1989-05-24 DE DE68927755T patent/DE68927755T2/de not_active Expired - Fee Related
- 1989-05-24 EP EP89906883A patent/EP0377706B1/en not_active Expired - Lifetime
- 1989-05-24 WO PCT/US1989/002263 patent/WO1989012863A1/en not_active Ceased
Also Published As
| Publication number | Publication date |
|---|---|
| EP0377706B1 (en) | 1997-02-05 |
| EP0377706A1 (en) | 1990-07-18 |
| DE68927755D1 (de) | 1997-03-20 |
| WO1989012863A1 (en) | 1989-12-28 |
| US4888802A (en) | 1989-12-19 |
| CA1318028C (en) | 1993-05-18 |
| DE68927755T2 (de) | 1997-08-07 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH02504681A (ja) | 暗号装置キーの安全取扱システム及び方法 | |
| EP0418024B1 (en) | Secure cryptographic processor arrangement | |
| EP0583140B1 (en) | System for seamless processing of encrypted and non-encrypted data and instructions | |
| US7089419B2 (en) | Control function with multiple security states for facilitating secure operation of an integrated system | |
| US5633934A (en) | Local area nework encryption decryption system | |
| JP6916454B2 (ja) | ハードウェアアクアクセラレーテッド暗号法のためのキーのスレッド所有権 | |
| US20100082968A1 (en) | Processor boot security device and methods thereof | |
| JPH05128010A (ja) | アドレス保護回路 | |
| CA2793810C (en) | Method and system for securing data utilizing redundant secure key storage | |
| KR20130020880A (ko) | 멀티코어 시스템의 상이한 모드 간의 스위칭 중의 보안 환경 관리 | |
| JPS6016670B2 (ja) | 端末ユ−ザの身元を認証するためのシステム | |
| EP0121853A2 (en) | Data processing system having public encryption and private decryption keys | |
| US11017128B2 (en) | Data security using bit transposition during memory accesses | |
| JPS63187353A (ja) | バスを介して信号を伝送することを阻止するためのデータ保護回路 | |
| CN119150377B (zh) | 一种基于多块区配置的双码分区安全方法、装置及芯片 | |
| US20230418603A1 (en) | System and Method for Securing Nonvolatile Memory for Execute-in-Place | |
| JP2000181802A (ja) | 半導体記憶装置 | |
| CN116203886B (zh) | 一种应用于fpga的高安全电路 | |
| JPS59173847A (ja) | コンピユ−タソフトウエアの保護方法およびその装置 | |
| JPH02130660A (ja) | 書込み保護回路 | |
| JPS61168061A (ja) | デ−タ保護方式 | |
| JPS6385860A (ja) | 共有メモリ書込制御方式 | |
| JPH04160449A (ja) | 誤書き込み防止回路 | |
| JPS6349954A (ja) | 記憶情報保護装置 | |
| JPH02176843A (ja) | Dma制御装置 |