JPH11511576A - アクセス制御用のパラメータ付きハッシュ関数 - Google Patents

アクセス制御用のパラメータ付きハッシュ関数

Info

Publication number
JPH11511576A
JPH11511576A JP9510253A JP51025397A JPH11511576A JP H11511576 A JPH11511576 A JP H11511576A JP 9510253 A JP9510253 A JP 9510253A JP 51025397 A JP51025397 A JP 51025397A JP H11511576 A JPH11511576 A JP H11511576A
Authority
JP
Japan
Prior art keywords
unit
key
executable
signature
executable program
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
JP9510253A
Other languages
English (en)
Other versions
JP4087442B2 (ja
Inventor
オークスミス,デイヴィッド・ダブリュ
クノーレーズ,ロバート・シイ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel 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 Intel Corp filed Critical Intel Corp
Publication of JPH11511576A publication Critical patent/JPH11511576A/ja
Application granted granted Critical
Publication of JP4087442B2 publication Critical patent/JP4087442B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/51Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2211/00Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
    • G06F2211/007Encryption, En-/decode, En-/decipher, En-/decypher, Scramble, (De-)compress

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)

Abstract

(57)【要約】 コンピュータ・システム内でアクセス制御を行う方法および装置を開示する。記憶ユニットは、暗号化された実行可能イメージおよびシグネチャ構成要素を有するデータのブロックを受け取る。記憶ユニットに結合された分離ユニットは、シグネチャ構成要素を暗号化された実行可能イメージから分離する。分離ユニットに結合された暗号解読ユニットは、シグネチャ構成要素をキーとして使用して、暗号化された実行可能イメージを暗号解読する。これは、暗号解読された実行可能プログラムをもたらす。暗号解読ユニットに結合された識別ユニットは、暗号解読された実行可能プログラム内の識別マークを見つけ出し、識別マークに割り当てられた複合キーを識別する。識別ユニットに結合されたシグネチャ発生ユニットは、複合キーをキーとして使用して、暗号解読された実行可能プログラムに対してキー暗号ハッシュ・アルゴリズムを実施する。シグネチャ発生ユニットに結合された検証ユニットは、データのブロックのソースを検証し、またデータのブロックが修正されていないかどうかを決定するために、シグネチャ構成要素と計算したキー暗号ハッシュ値とを比較する。シグネチャ構成要素がキー暗号ハッシュ値に一致する場合、検証ユニットに結合された権利割当てユニットは、暗号解読された実行可能プログラムに適切なアクセス権を割り当て、コンピュータ・システムが暗号解読された実行可能プログラムを実行することができるようにする。

Description

【発明の詳細な説明】 アクセス制御用のパラメータ付きハッシュ関数発明の分野 本発明は、コンピュータ・システム内のアクセス制御に関する。さらに詳細に は、本発明は、実行可能イメージの出所を識別し、その識別を使用して、実行可 能イメージに与えられるアクセス権のレベルを決定する装置および方法に関する 。発明の背景 コンピュータ・システムのセキュリティ侵害は、故意の侵害と偶然の侵害に分 類することができる。故意のアクセスの形には、データの無許可の読出し、デー タの無許可の修正、およびデータの無許可の破壊がある。たいていのオペレーテ ィング・システムは、他のプロセスを作成するプロセス用の手段を備えている。 そのような環境内では、オペレーティング・システム資源およびユーザ・ファイ ルが誤用される状況をつくり出すことができる。ワームおよびビールスは、2つ の一般的な誤用の方法である。コンピュータ・システムの保護は、実行すべきプ ログラムのソースを識別し、かつこれらのプログラムが、その時にシステムに対 するセキュリティ脅威をもたらす形で修正されていないことを確かめる能力に依 存する。 プログラムのソースの認証を確かめる以外にも、オペレーティング・システム から適切な許可を得たプロセスだけがコンピュータ・システムのファイル、メモ リ・セグメント、CPU、および他の資源を使用できるようにする必要がある。 この保護を実施するのにはいくつかの理由がある。最も明らかな理由は、いたず らによるアクセス制限の故意の侵害を防ぐ必要があることである。より一般的に 重要なことは、システム内で活動している各プログラム構成要素が、システム資 源のユーザに対する定まった方針に一致する形でこれらのシステム資源を使用す るようにする必要があることである。保護は、構成要素サブシステム間のインタ フェースにおいて待ち時間エラーを検出することによって信頼性を向上させるこ とができる。インタフェース・エラーの初期の検出は、誤動作している他のサブ システムによる健康なサブシステムの汚染を防ぐことができる。 プロセスは、一般に、保護ドメイン内で動作する。そのドメインは、プロセス がアクセスすることができる資源を指定する。各ドメインは、1組のオブジェク トおよび各オブジェクトに対して呼び出すことができる動作のタイプを定義する 。オブジェクトに対して動作を実行する能力はアクセス権である。ドメインはア クセス権の集合であり、各アクセス権は、一般に順序付けされた対:<オブジェ クト名、権利セット>である。例えば、ドメインDがアクセス権<ファイルF、 {読取り、書込み}>を有する場合、ドメインD内で実行しているプロセスは、 ファイルFの読取りならびに書込みを行うことができる。ただし、そのオブジェ クトに対して他の動作を実行することは許されない。ドメインは、非結合である か、またはアクセス権を共有する。また、プロセスとドメインの関係は、静的で あることもあり、動的であることもある。したがって、各プロセスにアクセスで きる保護ドメインを制限することが重要である。 したがって、実行可能イメージの出所、実行可能イメージが修正されていない かどうか、および実行可能イメージがオペレーティング・システムによって許可 されるアクセス権のレベル又は信頼性を識別するために利用することができる実 行可能イメージの許されないシグネチャを与える装置および方法が必要である。発明の概要 コンピュータ・システム内でアクセス制御を行う方法および装置を開示する。 アクセス・コントローラの一実施態様は、記憶ユニットを含んでいる。記憶ユニ ットは、シグネチャ構成要素と暗号化された実行可能イメージとを有するデータ のブロックを含んでいる。分離ユニットが記憶ユニットに結合される。分離ユニ ットは、データのブロックを受け取り、シグネチャ構成要素を暗号化された実行 可能イメージから分離する。暗号解読ユニットが分離ユニットに結合される。暗 号解読ユニットは、暗号化された実行可能イメージを受け取り、暗号化された実 行可能イメージを実行可能プログラムに解読する。これは、シグネチャ構成要素 をキーとして使用して、暗号化された実行可能イメージを暗号解読する暗号解読 アルゴリズムを実施することによって行うことができる。識別ユニットが暗号解 読ユニットに結合される。識別ユニットは、使用すべき実行可能プログラムを受 け取り、実行可能プログラムの暗号キー・ハッシュ値を計算するために実行可能 プログラム内の識別マークに指定されたキーを識別する。シグネチャ発生装置が 暗号解読ユニットに結合される。シグネチャ発生装置は、実行可能プログラムを 受け取り、識別ユニットによって識別された記憶キーを使用して、実行可能プロ グラムの暗号キー・ハッシュ値を計算する。検証ユニットがハッシュ・ユニット に結合される。検証ユニットは、データブロックのソースを検証し、またデータ のブロックが修正されていないことを検証するために、キー・ハッシュ値とシグ ネチャ構成要素とを比較する。権利割当てユニットがハッシュ・ユニットに結合 される。権利割当てユニットは、実行可能プログラムのキー・ハッシュ値を計算 するために使用されるキーを受け取り、キーに関連する権利に従って実行可能プ ログラムに権利を割り当てる。 本発明の第2の実施態様では、コンピュータ・システム内でアクセス制御を行 う方法を開示する。まず、シグネチャ構成要素および暗号化された実行可能イメ ージを有するデータのブロックを受け取る。データのブロックを受け取った後、 シグネチャ構成要素を暗号化された実行可能イメージから分離する。次に、シグ ネチャ構成要素をキーとして使用する暗号解読アルゴリズムを実施することによ って実行可能イメージを暗号解読する。実行可能プログラム内の識別マークに対 応する複合キーを識別する。複合キーを使用して、実行可能プログラムのキー・ ハッシュ値を計算する。キー・ハッシュ値を計算した後、データのブロックのソ ースを検証するためにキー・ハッシュ値とシグネチャ構成要素とを比較する。キ ーに事前に割り当てられた権利に従って実行可能プログラムに権利を割り当てる 。図面の簡単な説明 本発明は、以下で行う詳細な説明、および本発明において実施される様々な特 徴および要素の添付の図面からより完全に理解できよう。説明および図面は、本 発明を特定の実施形態に限定するものではない。それらは、説明および理解のた めに与えられる。 第1図は、コンピュータ・システム内で実施されるアクセス・コントローラの 一実施形態を示す図である。 第2図は、本発明の符号化ユニットの一実施形態のブロック図である。 第3図は、本発明の符号化ユニットを使用して、メッセージをどのようにして 符号化するかを示す図である。 第4図は、本発明のアクセス・コントローラの第1の実施形態のブロック図で ある。 第5図は、本発明のビデオ処理システムの第3の実施形態のブロック図である 。 第6図は、符号化の方法を示す流れ図である。 第7図は、コンピュータ・コンピュータのアクセス制御を行う方法を示す流れ 図である。詳細な説明 新規のアクセス・コントローラ・ユニットを開示する。以下の詳細な説明では 、本発明を完全に理解することができるように多数の特定の詳細を記載する。し かしながら、本発明は、これらの特定の詳細なしに実施できることが当業者なら 理解できよう。他の場合には、周知の方法、手順、構成要素、および回路につい ては、本発明を曖昧にしないために詳細には説明していない。 以下の詳細な説明のいくつかの部分は、コンピュータ・メモリ内のデータ・ビ ットに対する動作のアルゴリズムおよび記号表現の形で示される。これらのアル ゴリズム記述および表現は、データ処理分野の当業者が、その仕事の要旨を他の 当業者に最も効率的に伝達するために使用する手段である。アルゴリズムは、所 望の結果をもたらすステップの自己矛盾のないシーケンスであると考えられる。 ステップは、物理量の物理操作を必要とするステップである。通常、必ずしもそ うではないが、これらの量は、記憶、転送、組合せ、比較、他の形の操作が可能 な電気信号または磁気信号である。主として慣用法の理由で、これらの信号をビ ット、値、要素、記号、文字、項、数などと呼ぶことが便利であることが分かっ ている。ただし、これらおよび同様の用語はすべて適切な物理量に関連するもの とし、これらの量に適用される便利なラベルにすぎないことに留意されたい。以 下の議論から明らかなように特に別段の指定がなければ、「処理」、「演算(c omputing)」、「計算(calculating)」、「決定」、「表 示」などの用語を使用する議論は、コンピュータ・システムのレジスタおよびメ モリ内で物理(電子)量として表されるデータを操作し、コンピュータ・システ ムのメモリまたはレジスタまたは他のそのような情報記憶デバイス、情報伝送デ バイスまたは情報ディスプレイ・デバイス内で同様に物理量として表される他の データに変換するコンピュータ・システムまたは同様の電子計算装置の処理およ びプロセスをさす。 第1図に、本発明の一実施形態のコンピュータ・システムをブロック図の形で 示す。コンピュータ・システムは、バス100、キーボード・インタフェース1 01、外部メモリ102、大容量記憶装置103、プロセッサ104およびディ スプレイ・デバイス・コントローラ105を含んでいる。バス100は、ディス プレイ・デバイス・コントローラ105、キーボード・インタフェース101、 マイクロプロセッサ104、メモリ102および大容量記憶装置103に結合さ れる。ディスプレイ・デバイス・コントローラ105は、ディスプレイ・デバイ スに結合することができる。キーボード・インタフェース101は、キーボード に結合することができる。 バス100は、単一のバスか、または複数のバスの組合せである。一例として 、バス100は、Industry Standard Architectu ral(ISA)バス、Extended Industry Standar d Architecture(EISA)バス、システム・バス、Xバス、P S/2バス、Peripheral Components Intercon nect(PCI)バス、Personal Computer Memory Card International Association(PCMC IA)バス、または他のバスを含む。バス100はまた、これらのバスの任意の 組合せを含む。バス100は、コンピュータ・システム内の構成要素間の通信リ ンクを与える。キーボード・インタフェース101は、キーボード・コントロー ラまたは他のキーボード・インタフェースである。キーボード・インタフェース 101は、専用デバイスであるか、またはバス・コントローラまたは他のコント ロ ーラなど他のデバイス内に常駐することができる。キーボード・インタフェース 101は、キーボードをコンピュータ・システムに結合することを可能にし、キ ーボードからコンピュータ・システムに信号を伝送する。外部メモリ102は、 ダイナミック・ランダム・アクセス・メモリ(DRAM)デバイス、スタティッ ク・ランダム・アクセス・メモリ(SRAM)デバイス、または他のメモリ・デ バイスを含む。外部メモリ102は、大容量記憶装置103およびプロセッサ1 04からの情報およびデータをプロセッサ104が使用することができるように 記憶する。大容量記憶装置103は、ハードディスク・ドライブ、フロッピーデ ィスク・ドライブ、CD−ROMデバイス、フラッシュ・メモリ・デバイスまた は他の大容量記憶装置である。大容量記憶装置103は、情報およびデータを外 部メモリ102に与える。 プロセッサ104は、外部メモリ102からの情報およびデータを処理し、情 報およびデータを外部メモリ102内に記憶する。プロセッサ104はまた、キ ーボード・コントローラ101から信号を受け取り、情報およびデータをディス プレイ・デバイス上に表示するためにディスプレイ・デバイス・コントローラ1 05に伝送する。プロセッサ104はまた、ビデオ・イメージをディスプレイ・ デバイス上に表示するためにディスプレイ・コントローラに伝送する。プロセッ サ104は、複雑命令セット演算(CISC)マイクロプロセッサ、簡単命令セ ット演算(RISC)マイクロプロセッサ、超長命令語(VLIW)マイクロプ ロセッサ、または他のプロセッサ・デバイスである。ディスプレイ・デバイス・ コントローラ105は、ディスプレイ・デバイスをコンピュータ・システムに結 合することを可能にし、ディスプレイ・デバイスとコンピュータ・システムの間 のインタフェースの働きをする。ディスプレイ・デバイス・コントローラ105 は、モノクローム・ディスプレイ・アダプタ(MDA)カード、カラー・グラフ ィックス・アダプタ(CGA)カード、エンハンスド・グラフィックス・アレイ (EGA)カード、マルチカラー・グラフィックス・アレイ(MCGA)カード 、ビデオ・グラフィックス・アレイ(VGA)カード、エクステンデッド・グラ フィックス・アレイ(XGA)カード、または他のディスプレイ・デバイス・コ ントローラである。ディスプレイ・デバイスは、テレビ、コンピュータ・モニタ 、 フラット・パネル・ディスプレイ、または他のディスプレイ・デバイスである。 ディスプレイ・デバイスは、ディスプレイ・デバイス・コントローラ105を介 してプロセッサ104からの情報およびデータを受け取り、情報およびデータを コンピュータ・システムのユーザに表示する。 コンピュータ・システムはまた、アクセス・コントローラ・ユニット106を 含んでいる。アクセス・コントローラ・ユニット106はバス100に結合され る。コンピュータ・システム内のアクセス権に関連する一組のキーがアクセス・ コントローラ・ユニット106内に記憶される。各キーは、プログラムがその中 で動作するドメインを定義する。キーはまた、プログラム・シグネチャを発生す るために暗号ハッシュ関数内でパラメータとして使用される1つまたは複数の複 合キーを定義する。プログラム・シグネチャはさらに、実行可能プログラムを暗 号化するための暗号化キーとして使用される。 アクセス・コントローラ・ユニット106は、大容量記憶装置103またはバ ス100に結合された他の入出力デバイスから、プログラム104が実行すべき プロセスを受け取る。プロセスは、暗号化された実行可能イメージおよびシグネ チャ構成要素を含んでいる。コンピュータ・システムがプログラムを実行する前 に、アクセス・コントローラ・ユニット106は、プログラムのシグネチャが法 的に既知の複合キーから構成されていることを検証する。プロセスのシグネチャ 構成要素を検査することによって、アクセス・コントローラ・ユニット106は 、プロセスの出所を識別し、プロセスがコンピュータ・システムに対する脅威を もたらす形で修正されていないことを検証し、オペレーティング・システムがプ ロセスに許可するアクセス権のレベルを決定する。次いで、アクセス・コントロ ーラ・ユニット106は、実行可能プログラムが、複合キーを得る際に使用され るキーに割り当てられた権利を使用して実行することを可能にする。 第2図に、本発明のファイル符号化ユニットの一実施形態のブロック図を示す 。ファイル符号化ユニット210は、シグネチャ発生器221および暗号化ユニ ット230を含んでいる。シグネチャ発生器221は、プログラム104が実行 すべき実行可能プログラムのシグネチャを発生するように動作する。暗号化ユニ ット230は、シグネチャをキーとして使用して、実行可能プログラムを含んで い るファイルを暗号化する。シグネチャ発生器221は、実行可能プログラムの平 文に対して暗号キー・ハッシュ関数を実行し、暗号文を発生する。シグネチャ発 生器221は、アクセス・コントローラ・ユニット106内に記憶されたキーの 複合キーであるキーを使用する。暗号ハッシュ関数内で使用される各複合キーは 、一組のアクセス権に関連する。これらの権利は、実行前に実行可能プログラム に割り当てられる。 シグネチャ発生器221は、演算ユニット222および暗号化ユニット223 を含んでいる。シグネチャ発生器221は、演算ユニット222および暗号化ユ ニット223を使用して、実行可能プログラムの平文に対して任意の数の暗号キ ー・ハッシュ関数または暗号化アルゴリズムを実施することができる。キーは、 対称型プライベート・キーか、または非対称型パブリック・キーである。違いは 、キーのオペレーティング・システムのコピーに必要な保護の範囲である。シグ ネチャ発生器221は、Lucifer、Madryga、NewDES、FE AL、REDOC、LOKI、Khufu、Khafre、またはIDEAなど の従来のアルゴリズムを使用して、実行可能プログラムの暗号キー・ハッシュ値 を発生することができる。本発明の一実施形態では、演算ユニット222および 暗号化ユニット223は、データ暗号化標準(DES)暗号ブロック連鎖(CB C)を使用して、実行可能プログラムの暗号キー・ハッシュ値を発生することが できる。 第3図に、演算ユニット222および暗号化ユニット223が、CBCを使用 して、実行可能プログラムの暗号キー・ハッシュ値を発生する場合に行うステッ プを示す。連鎖は、フィードバック機構を使用する。前のブロックの暗号化の結 果は、現在のブロックの暗号化にフィードバックされる。言い換えれば、前のブ ロックを使用して、次のブロックの暗号化を修正する。各暗号文ブロックは、そ れを発生した平文ブロックならびに前の平文ブロックに依存する。CBCでは、 平文は、暗号化される前に前の暗号文ブロックとの排他的論理和をとられる。 この例では、符号化ユニット210は、24バイトのサイズを有する実行可能 プログラムを含んでいるファイルを受け取る。シグネチャ発生器221は、24 バイト・ファイルを3つの8バイト・セクションに分割する。平文の第1の8バ イトは、ブロック301内にP1として表される。P1は、演算ユニット222 内に記憶された開始ベクトル(IV)との排他的論理和をとられる。これは、第 1の積をもたらす。開始ベクトルは、実行可能プログラムに割り当てるべき一組 のアクセス権に関連する第1の複合キーの関数である。P1がIVとの排他的論 理和をとられた後、暗号化ユニット223は、第2の複合キーを使用して、第1 の積に対してキー暗号化アルゴリズムを実施し、暗号化された第1の積C1を生 成する。キー暗号化アルゴリズムは、前に記載したいずれかのキー暗号化アルゴ リズムを含めて、様々な異なるキー暗号化アルゴリズムの1つである。演算ユニ ット222は、暗号化された第1の積と、P2として表される第2の8バイト・ セクションとの排他的論理和をとり、第2の8バイト積を生成する。暗号化ユニ ット223は、第2の積に対して第2の複合キーを使用して、キー暗号化アルゴ リズムを実施し、暗号化された第2の積C2を生成する。演算ユニット222は 、暗号化された第2の積と、第3の8バイト・セクションとの排他的論理和をと り、第3の8バイト積を生成する。暗号化ユニット223は、第3の積に対して 第2の複合キーを使用して、キー暗号化アルゴリズムを実施する。これは、実行 可能プログラムのシグネチャとして使用される第3の暗号化された積C3を生成 する。 シグネチャ発生器221は、ファイル中のすべての文字の関数である実行可能 プログラムのシグネチャを発生する。したがって、実行可能プログラムが修正さ れた場合、暗号キー・ハッシュ値を再演算し、再演算した値と元のシグネチャと を比較することによって修正を検出することができる 暗号化ユニット230は 、キー暗号ハッシュ・アルゴリズムから発生したシグネチャをキーとして使用し て、暗号化アルゴリズムを実施することによって実行可能プログラムを暗号化す るように動作する。これは、暗号化された実行可能イメージを生成する。実行可 能プログラムの暗号化は、無許可の第三者が実行可能プログラムを読み出すのを 防ぐための追加の保護レベルを与える。どんな形の暗号化アルゴリズムも暗号化 ユニット230によって使用される。暗号化された実行可能イメージならびにシ グネチャは、実行のためにコンピュータ・システムにファイルとして送られる。 第4図に、本発明のアクセス・コントローラの第2の実施形態のブロック図を 示す。アクセス制御ユニット400は、記憶ユニット410、分離ユニット42 0、暗号解読ユニット430、識別ユニット440、シグネチャ発生ユニット4 50、検証ユニット460、および権利割当てユニット470を含んでいる。 記憶ユニット410は、暗号化された実行可能イメージおよびシグネチャ構成 要素を含んでいるデータのブロックを受け取る。記憶ユニット410は、DRA Mデバイス、SRAMデバイス、または他のメモリ・デバイスを含む。記憶ユニ ット410は、ポインタを使用して、記憶されたファイルが実行可能イメージで あるか、または実行可能プログラムであるかをコンピュータ・システムに示す。 ポインタは、記憶されたファイルが実行可能イメージである場合には、記憶ユニ ット410が一時記憶装置として使用されていることをコンピュータ・システム に示す。ポインタは、ファイルが実行可能プログラムである場合には、記憶ユニ ット410が実行可能空間として使用されていることをコンピュータ・システム に示す。 分離ユニット420は、記憶ユニット410に結合される。分離ユニット42 0は、記憶ユニット410からデータのブロックを受け取り、暗号化された実行 可能イメージをシグネチャ構成要素から分離する。これにより、アクセス制御ユ ニット400は、暗号化された実行可能イメージとシグネチャ構成要素を別々に 処理することができる。 暗号解読ユニット430は、分離ユニット420および記憶ユニット410に 結合される。暗号解読ユニット430は、分離ユニット420から暗号文形式の 暗号化された実行可能イメージおよびシグネチャ構成要素を受け取る。暗号解読 ユニット430は、シグネチャ構成要素をキーとして使用して、暗号化された実 行可能イメージを暗号解読する。暗号解読ユニット430は、暗号化された実行 可能イメージを暗号解読された実行可能プログラムに変換する。 識別ユニット440は、暗号解読ユニット430および記憶ユニット410に 結合される。識別ユニット440は、暗号解読ユニット430から実行可能プロ グラムを受け取る。識別ユニット440は、実行可能プログラム内の識別マーク を読み取り、識別マークに割り当てられる対応する複合キーの識別を得る。この 複合キーは、一般に実行可能プログラムのキー・ハッシュ値を発生するためにシ グネチャ発生ユニット221によって使用されるのと同じキーである。本発明の 一実施形態では、識別プロセッサ440は様々な識別マークを様々な複合キーに 一致させる参照テーブルを含んでいる。複合キーは、実行可能プログラムに与え られる特定のアクセス権に関連する。 シグネチャ発生ユニット450は、識別ユニット440および記憶ユニット4 10に結合される。シグネチャ発生ユニット450は、実行可能プログラムの識 別マークに割り当てられた複合キーの識別を受け取る。シグネチャ発生ユニット 450は、識別ユニット440によって受け取られた複合キーの識別を使用して 、識別ユニット440によって受け取られた暗号解読された実行可能プログラム の暗号キー・ハッシュ値を計算するように動作する。シグネチャ発生ユニット4 50は、コンピュータ・システムへの特定のアクセス権を割り当てられた複数の キーを記憶する。これらのキーは、実行可能プログラムおよび暗号解読された実 行可能プログラムを符号化し、復号するために使用される複数の複合キーを与え る。 検証ユニット460は、シグネチャ発生ユニット450および記憶ユニット4 10に結合される。検証ユニット460は、記憶ユニット410から実行可能イ メージの構成要素を受け取り、シグネチャ発生ユニット450から暗号解読され た実行可能プログラムのキー・ハッシュ値を受け取る。検証ユニット460は、 暗号解読された実行可能プログラムのキー・ハッシュ値と実行可能イメージの構 成要素とを比較する。2つが同じである場合、検証ユニット460は、コンピュ ータ・システムが暗号解読された実行可能プログラムを実行することができるよ うにする。2つが同じでない場合、検証ユニット460は、実行可能イメージが 修正されており、コンピュータ・システムが実行すべきでないことを理解する。 本発明の一実施形態では、シグネチャ発生ユニット450は、暗号解読された 実行可能プログラムのキー・ハッシュ半数を計算するために使用される複合キー の識別を受け取らない。代わりに、シグネチャ発生ユニット450は、シグネチ ャ発生ユニット450内の記憶キーの置換によって得られる複合キーを使用して 、暗号解読された実行可能プログラムの複数のキー・ハッシュ値を計算する。こ れらのキー・ハッシュ値は、いずれかのキー・ハッシュ値が元のシグネチャ構成 要素に一致するかどうかを決定する検証ユニット460によって受け取られる。 同 様に、実行可能イメージのシグネチャ構成要素と、暗号解読された実行可能プロ グラムの計算したいずれかのキー・ハッシュ値とが一致する場合、検証ユニット 460は、コンピュータ・システムが暗号解読された実行可能プログラムを実行 することができるようにする。一致しない場合、検証ユニット460は、実行可 能イメージが修正されており、コンピュータ・システムが実行すべきでないこと を理解する。 権利割当てユニット470は、検証ユニット460および記憶ユニット410 に結合される。権利割当てユニット470は、実行可能イメージのシグネチャ構 成要素に対して一致するキー・ハッシュ値を計算するために使用される複合キー の識別を受け取る。権利割当てユニット470は、コンピュータ・システムが暗 号解読された実行可能プログラムを実行すべきことを示す信号を検証ユニット4 60から受け取ったとき、一致するキー・ハッシュ値を計算するために使用され る特定の複合キーに関連する権利を識別することによって使用可能な権利をプロ グラムに割り当てるように動作する。本発明の一実施形態では、権利割当てユニ ット470は、様々な複合キーを様々なアクセス権レベルに一致させる参照テー ブルを含む。権利割当てユニット470は、暗号解読された実行可能プログラム に適切な権利を割り当てた後、記憶ユニット410が実行可能スペースとして使 用されていることをコンピュータ・システムに示すために記憶ユニット410内 のポインタを移動する。コンピュータ・システムは、記憶ユニット410が実行 可能プログラムを含んでいることを認識し、実行可能プログラムを実行し始める 。 第5図に、本発明の第4の実施形態の代表的なコンピュータ・システムをブロ ック図の形で示す。コンピュータ・システムは、バス500、マイクロプロセッ サ510、メモリ520、データ記憶装置530、キーボード・コントローラ5 40、およびディスプレイ・デバイス・コントローラ550を含んでいる。 マイクロプロセッサ510は、複雑命令セット計算(CISC)マイクロプロ セッサ、簡単命令セット計算(RISC)マイクロプロセッサ、または他のプロ セッサ・デバイスである。マイクロプロセッサは、メモリ520内に記憶された 命令またはコードを実行し、メモリ520内に記憶されたデータに対して動作を 実施する。コンピュータ・システム500はさらに、バス515に結合されるハ ードディスク・ドライブ、フロッピーディスク・ドライブ、光ディスク・ドライ ブなどデータ記憶装置530を含んでいる。ディスプレイ・デバイス・コントロ ーラ550もバス515に結合される。ディスプレイ・デバイス・コントローラ 550は、ディスプレイ・デバイスをコンピュータ・システムに結合することを 可能にする。キーボード・コントローラ540は、キーボードをコンピュータ・ システムに結合することを可能にし、キーボードからコンピュータ・システムに 信号を伝送する。 メモリ520は、バス500を介してマイクロプロセッサ510に結合される 。メモリ520は、ダイナミック・ランダム・アクセス・メモリ(DRAM)デ バイス、スタティック・ランダム・アクセス・メモリ(SRAM)デバイス、ま たは他のメモリ・デバイスである。メモリ520は、アプリケーション・プログ ラム、オペレーティング・システム・プログラムまたは他のコンピュータ・プロ グラムの一部であるプログラム510が実行することができる命令またはコード を記憶することができる。メモリ520は、記憶モジュール521、分離モジュ ール522、暗号解読モジュール523、識別モジュール524、シグネチャ発 生モジュール525、検証モジュール526、および権利割当てモジュール52 7を含んでいる。記憶モジュール521は、第7図に示される形でプロセッサ5 10によって実行される第1の複数のプロセッサ実行可能命令を含んでいる。記 憶モジュールは、第4図の記憶ユニット410と同じ役目を果たす。分離モジュ ール522は、第7図に示される形でプロセッサ510によって実行される第2 の複数のプロセッサ実行可能命令を含んでいる。分離モジュール522は、第4 図の分離ユニット420と同じ役目を果たす。暗号解読モジュール523は、第 7図に示される形でプロセッサ510によって実行される第3の複数のプロセッ サ実行可能命令を含んでいる。暗号解読モジュール523は、第4図の暗号解読 ユニット430と同じ役目を果たす。識別モジュール524は、第7図に示され る形でプロセッサ510によって実行される第4の複数のプロセッサ実行可能命 令を含んでいる。識別モジュール524は、第4図の識別ユニット440と同じ 役目を果たす。シグネチャ発生モジュール525は、第7図に示される形でプロ セッサ510によって実行される第5の複数のプロセッサ実行可能命令を含んで い る。シグネチャ発生モジュール525は、第4図のシグネチャ発生ユニット45 0と同じ役目を果たす。検証モジュール526は、第7図に示される形でプロセ ッサ510によって実行される第6の複数のプロセッサ実行可能命令を含んでい る。検証モジュール526は、第4図の検証ユニット460と同じ役目を果たす 。権利割当てモジュール527は、第7図に示される形でプロセッサ510によ って実行される第7の複数のプロセッサ実行可能命令を含んでいる。権利割当て モジュール527は、第4図の権利割当てユニット470と同じ役目を果たす。 第6図は、コンピュータ・システムが実行すべき実行可能プログラムを符号化 する方法を示す流れ図である。まず、ブロック601に示すように実行可能プロ グラムを受け取る。次に、ブロック602に示すように、実行可能プログラムに 割り当てるべき関連する権利を定義する複合キーを受け取る。実行可能プログラ ムに対してキー暗号ハッシュ・アルゴリズムを実施する。使用される複合キーは 、対称型プライベート・キーか、または非対称型パブリック・キーである。これ は、実行可能プログラムのシグネチャまたはフィンガープリントの役目をする暗 号キー・ハッシュ値をもたらす。これをブロック603に示す。 次に、暗号キー・ハッシュ値を使用して、実行可能プログラムを暗号化する。 これは、実行可能イメージを生成する。これをブロック604に示す。実行可能 プログラムを実行可能イメージに暗号化した後、実行可能イメージならびにシグ ネチャ構成要素を処理および実行のためにコンピュータ・システムに送る。これ をブロック605に示す。 第7図は、コンピュータ・コンピュータ内でアクセス制御を行う方法を示す流 れ図である。まず、ブロック701に示すように、シグネチャ構成要素および実 行可能イメージを有するデータのブロックを受け取る。ブロック702に示すよ うに、シグネチャ構成要素を実行可能イメージから分離する。シグネチャ構成要 素をキーとして使用して、実行可能イメージを暗号解読する。これは、暗号解読 された実行可能プログラムをもたらす。これをブロック703に示す。 次に、ブロック704に示すように、暗号解読された実行可能プログラム内の 識別マークを見つける。識別マークに関連する複合キーを識別する。これをブロ ック705に示す。ブロック706に示すように、識別マークに関連する複合キ ーを使用して、暗号解読された実行可能プログラムのキー暗号ハッシュ値を演算 する。次に、データのブロック内のシグネチャ構成要素と、暗号解読された実行 可能プログラムの計算したキー暗号ハッシュ値とを比較することによって、デー タのブロックのソースを検証し、またブロックが修正されていないかどうかを検 証する。これをブロック707に示す。データのブロック内のシグネチャ構成要 素が計算したキー暗号ハッシュ値に一致しない場合、暗号解読された実行可能プ ログラムを実行しない。これをブロック708に示す。データのブロック内のシ グネチャ構成要素が計算したキー暗号ハッシュ値に一致する場合、複合キーによ って識別された暗号解読された実行可能プログラムに適切な権利を割り当てる。 これをブロック709に示す。最後に、ブロック710に示すように、暗号解読 された実行可能プログラムを実行する。 以上、本発明について、その特定の例示的な実施形態に関して説明した。しか しながら、以下の請求の範囲に記載する本発明のより広い精神および範囲から逸 脱することなく本発明に様々な修正および変更を加えることができることは明ら かであろう。したがって、説明および図面は、限定的なものではなく例示的なも のと考えられたい。 以下の説明を読めば、本発明の多数の変更および修正を当業者なら理解できる であろうが、説明のために図示し、説明した特定の実施形態は、限定的なもので はないことを理解されたい。したがって、特定の実施形態の詳細への言及は、本 発明にとって重要であると考えられる特徴のみを記載した請求の範囲を制限する ものではない。
【手続補正書】特許法第184条の8第1項 【提出日】1997年8月8日 【補正内容】 補正請求の範囲 1.シグニチャ構成要素を発生するために、実行可能プログラムに割り当てられ たアクセス権の関連する組を有する第1のキーを使用して、実行可能プログラム に対して暗号キー・ハッシュ関数を実施するステップと、 シグニチャ構成要素を第2のキーとして使用して、実行可能プログラムに対し て暗号化アルゴリズムを実施するステップと を含む符号化された実行可能イメージを発生する方法。 2.暗号キー・ハッシュ関数を実施するステップが、データ暗号化標準暗号ブロ ック連鎖アルゴリズムを実施するステップを含む請求項1に記載の方法。 3.シグニチャ構成要素をデータのブロック内の実行可能イメージから分離する ステップと、 シグニチャ構成要素を使用して、実行可能イメージを暗号解読して、実行可能 プログラムにするステップと、 キーを使用して、実行可能プログラムの暗号キー・ハッシュ値を計算するステ ップと、 シグニチャ構成要素と暗号キー・ハッシュ値とを比較することによってデータ のブロックの出所を検証するステップと を含むアクセス制御方法。 4.実行可能プログラム内の識別マークを見つけるステップと、 実行可能プログラムに対して暗号キー・ハッシュ関数を実施するために、識別 マークに対応するキーを見つけるステップとさらにを含む請求項3に記載の方法 。 5.複合キーに関連する権利に従って実行可能プログラムに権利を割り当てるス テップをさらに含む請求項3に記載の方法。 6.実行可能プログラムに割り当てられたアクセス権の関連する組を有する第1 のキーを使用して、実行可能プログラムに対して暗号キー・ハッシュ関数を実施 して、シグニチャ構成要素を発生するシグニチャ発生ユニットと、 シグニチャ発生ユニットに結合され、シグニチャ構成要素を第2のキーとして 使用して、実行可能プログラムを暗号化する第1の暗号化ユニットと を含む実行可能プログラムを符号化するデバイス。 7.シグニチャ発生ユニットが、計算ユニット、およびデータ暗号化標準暗号ブ ロック連鎖アルゴリズムを実施する第2の暗号化ユニットをさらに含む請求項6 に記載のデバイス。 8.第1の実行可能プログラムに対してキー・ハッシュ関数を実施するステップ から得られたシグニチャ構成要素を、データのブロック内の暗号化された実行可 能イメージから分離する分離ユニットと、 分離ユニットに結合され、シグニチャ構成要素を使用して、暗号化された実行 可能イメージを暗号解読して、第2の実行可能プログラムにする暗号解読ユニッ トと、 暗号解読ユニットに結合され、キーを使用して、第2の実行可能プログラムの 暗号キー・ハッシュ値を計算するシグニチャ発生ユニットと、 シグニチャ発生ユニットに結合され、暗号キー・ハッシュ値とシグニチャ構成 要素とを比較する検証ユニットと を含むアクセス・コントローラ。 9.シグニチャ発生ユニットが、シグニチャ発生ユニットが使用したキーを記憶 するキー記憶構成要素をさらに含む請求項8に記載のアクセス・コントローラ。 10.暗号解読ユニットに結合され、第2の実行可能プログラムの暗号ハッシュ 値を計算するために実行可能プログラム内の識別マークに指定されたキーを識別 する識別ユニットをさらに含む請求項8に記載のアクセス・コントローラ。 11.シグニチャ発生ユニットに結合され、キーに関連する権利に従って第2の 実行可能プログラムに権利を割り当てる権利割当てユニットをさらに含む請求項 8に記載のアクセス・コントローラ。 12.バスと、 バスに結合されたメモリと、 シグニチャ構成要素をデータのブロック内の暗号化された実行可能イメージか ら分離する分離ユニット、分離ユニットに結合され、シグニチャ構成要素を使用 して暗号化された実行可能イメージを暗号解読し、実行可能プログラムにする暗 号解読ユニット、暗号解読ユニットに結合され、キーを使用して実行可能プログ ラムの暗号キー・ハッシュ値を演算するシグニチャ発生ユニット、シグニチャ発 生ユニットに結合され、暗号キー・ハッシュ値とシグニチャ構成要素とを比較す る検証ユニットを含むアクセス・コントローラと を含むコンピュータ・システム。
───────────────────────────────────────────────────── フロントページの続き (81)指定国 EP(AT,BE,CH,DE, DK,ES,FI,FR,GB,GR,IE,IT,L U,MC,NL,PT,SE),OA(BF,BJ,CF ,CG,CI,CM,GA,GN,ML,MR,NE, SN,TD,TG),AP(KE,LS,MW,SD,S Z,UG),UA(AM,AZ,BY,KG,KZ,MD ,RU,TJ,TM),AL,AM,AT,AT,AU ,AZ,BB,BG,BR,BY,CA,CH,CN, CU,CZ,CZ,DE,DE,DK,DK,EE,E E,ES,FI,FI,GB,GE,HU,IL,IS ,JP,KE,KG,KP,KR,KZ,LK,LR, LS,LT,LU,LV,MD,MG,MK,MN,M W,MX,NO,NZ,PL,PT,RO,RU,SD ,SE,SG,SI,SK,SK,TJ,TM,TR, TT,UA,UG,US,UZ,VN 【要約の続き】 暗号ハッシュ値とを比較する。シグネチャ構成要素がキ ー暗号ハッシュ値に一致する場合、検証ユニットに結合 された権利割当てユニットは、暗号解読された実行可能 プログラムに適切なアクセス権を割り当て、コンピュー タ・システムが暗号解読された実行可能プログラムを実 行することができるようにする。

Claims (1)

  1. 【特許請求の範囲】 1.シグネチャ構成要素および暗号化された実行可能イメージを有するデータの ブロックを記憶する記憶ユニットと、 前記記憶装置に結合され、前記ブロックを受け取り、前記シグネチャ構成要素 を前記暗号化された実行可能イメージから分離する分離ユニットと、 前記分離ユニットに結合され、前記暗号化された実行可能イメージを受け取り 、前記暗号化された実行可能イメージを暗号解読して、実行可能プログラムにす る暗号解読ユニットと、 前記暗号解読ユニットに結合され、前記実行可能プログラムを受け取り、記憶 キーを使用して、前記実行可能プログラムの暗号キー・ハッシュ値を計算するシ グネチャ発生装置と、 前記シグネチャ発生装置に結合され、前記データのブロックのソースを検証す るために、前記暗号キー・ハッシュ値と前記シグネチャ構成要素とを比較する検 証ユニットとを含む、アクセス・コントローラ。 2.前記暗号解読ユニットが、前記シグネチャ構成要素を前記分離ユニットから 受け取り、前記シグネチャ構成要素をキーとして使用して、前記暗号化された実 行可能イメージを暗号解読する、請求項1に記載のアクセス・コントローラ。 3.前記ハッシュ・ユニットが、前記実行可能プログラムの前記暗号キー・ハッ シュ値を計算するために前記シグネチャ発生装置によって使用されるキーを記憶 するキー記憶構成要素をさらに含む、請求項1に記載のアクセス・コントローラ 。 4.前記暗号解読ユニットに結合され、前記実行可能プログラムを受け取り、前 記実行可能プログラムの前記暗号キー・ハッシュ値を計算するために前記実行可 能プログラム内の識別マークに指定された複合キーを見つける識別ユニットをさ らに含む請求項1に記載のアクセス・コントローラ。 5.前記ハッシュ・ユニットに結合され、前記実行可能プログラムの前記暗号キ ー・ハッシュ値を計算するために使用される前記複合キーを受け取り、前記複合 キーに関連する権利に従って前記実行可能プログラムに権利を割り当てる権利割 当てユニットをさらに含む請求項1に記載のアクセス・コントローラ。 6.実行可能プログラムを受け取り、前記実行可能プログラムに対して暗号キー ・ハッシュ関数を実施して、シグネチャ構成要素を発生するシグネチャ発生ユニ ットと、 前記シグネチャ発生ユニットに結合され、前記シグネチャ構成要素をキーとし て使用して、前記実行可能プログラムに対して暗号化アルゴリズムを実施して、 前記実行可能プログラムを暗号化する第1の暗号化ユニットとを含む、実行可能 プログラムを符号化するデバイス。 7.前記シグネチャ発生器が、計算ユニット、およびデータ暗号化標準暗号ブロ ック連鎖アルゴリズムを実施する第2の暗号化ユニットをさらに含む請求項6に 記載のデバイス。 8.シグネチャ構成要素および暗号化された実行可能イメージを有するデータの ブロックを記憶する記憶手段と、 前記記憶装置に結合され、前記ブロックを受け取り、前記シグネチャ構成要素 を前記暗号化された実行可能イメージから分離する分離手段と、 前記分離手段に結合され、前記暗号化された実行可能イメージを受け取り、前 記暗号化された実行可能イメージを暗号解読して、実行可能プログラムにする暗 号解読手段と、 前記暗号解読手段に結合され、前記実行可能プログラムを受け取り、記憶キー を使用して、前記実行可能プログラムの暗号キー・ハッシュ値を計算するシグネ チャ発生装置と、 前記シグネチャ発生装置に結合され、前記データのブロックのソースを検証す るために、前記暗号キー・ハッシュ値と前記シグネチャ構成要素とを比較する検 証手段とを含む、アクセス・コントローラ。 9.コンピュータ・システム内の構成要素間の通信リンクを与えるバスと、 前記バスに結合され、ディスプレイ・デバイスを前記コンピュータ・システム に結合することを可能にするディスプレイ・デバイス・コントローラと、 前記バスに結合され、情報を記憶することができる外部メモリと、 シグネチャ構成要素および暗号化された実行可能イメージを有するデータのブ ロックを記憶する記憶ユニット、前記記憶装置に結合され、前記ブロックを受け 取り、前記シグネチャ構成要素を前記暗号化された実行可能イメージから分離す る分離ユニット、前記分離ユニットに結合され、前記暗号化された実行可能イメ ージを受け取り、前記暗号化された実行可能イメージを暗号解読して、実行可能 プログラムにする暗号解読ユニット、前記暗号解読ユニットに結合され、前記実 行可能プログラムを受け取り、記憶キーを使用して、前記実行可能プログラムの 暗号キー・ハッシュ値を計算するシグネチャ発生装置、前記シグネチャ発生装置 に結合され、前記データのブロックのソースを検証するために、前記暗号キー・ ハッシュ値と前記シグネチャ構成要素とを比較する検証ユニットを含むアクセス ・コントローラとを含むコンピュータ・システム。 10.シグネチャ構成要素および実行可能イメージを有するデータのブロックを 受け取るステップと、 前記シグネチャ構成要素を前記実行可能イメージから分離するステップと、 前記実行可能イメージを暗号解読して、実行可能プログラムにするステップと 、 前記実行可能プログラムの暗号キー・ハッシュ値を計算するステップと、 前記シグネチャ構成要素と前記暗号キー・ハッシュ値とを比較することによっ て前記データのブロックのソースを検証するステップとを含むアクセス制御方法 。 11.前記実行可能イメージを暗号解読するステップが、前記シグネチャ構成要 素をキーとして使用して、暗号解読アルゴリズムを実施することによって行う請 求項10に記載の方法。 12.前記実行可能プログラム内の識別マークを見つけるステップ、および前記 実行可能プログラムに対して暗号キー・ハッシュ関数を実施するために対応する 複合キーを探すステップをさらに含む請求項10に記載の方法。 13.前記複合キーに関連する権利に従って前記実行可能プログラムに権利を割 り当てるステップをさらに含む請求項10に記載の方法。 14.実行可能プログラムに対して暗号キー・ハッシュ関数を実施するステップ と、 前記シグネチャ構成要素の関数である暗号化アルゴリズムを前記実行可能プロ グラムに対して実施するステップとを含む符号化された実行可能イメージを発生 する方法。 15.暗号キー・ハッシュ関数が、データ暗号化標準暗号ブロック連鎖アルゴリ ズムを実施することによって行われる請求項14に記載の方法。
JP51025397A 1995-08-25 1996-07-19 アクセス制御用のパラメータ付きハッシュ関数 Expired - Lifetime JP4087442B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US08/519,307 US5757915A (en) 1995-08-25 1995-08-25 Parameterized hash functions for access control
US08/519,307 1995-08-25
PCT/US1996/011925 WO1997007657A2 (en) 1995-08-25 1996-07-19 Parameterized hash functions for access control

Publications (2)

Publication Number Publication Date
JPH11511576A true JPH11511576A (ja) 1999-10-05
JP4087442B2 JP4087442B2 (ja) 2008-05-21

Family

ID=24067740

Family Applications (1)

Application Number Title Priority Date Filing Date
JP51025397A Expired - Lifetime JP4087442B2 (ja) 1995-08-25 1996-07-19 アクセス制御用のパラメータ付きハッシュ関数

Country Status (11)

Country Link
US (2) US5757915A (ja)
EP (1) EP0860064B1 (ja)
JP (1) JP4087442B2 (ja)
CN (1) CN1124719C (ja)
AU (1) AU6501196A (ja)
BR (1) BR9610127A (ja)
DE (1) DE69635209T2 (ja)
HK (1) HK1015987A1 (ja)
IL (1) IL123198A (ja)
RU (1) RU2142674C1 (ja)
WO (1) WO1997007657A2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012155732A (ja) * 2006-07-14 2012-08-16 Marvell World Trade Ltd システムオンアチップ(SoC)、ディスクプレーヤ、および方法

Families Citing this family (140)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6157721A (en) * 1996-08-12 2000-12-05 Intertrust Technologies Corp. Systems and methods using cryptography to protect secure computing environments
US20120166807A1 (en) 1996-08-12 2012-06-28 Intertrust Technologies Corp. Systems and Methods Using Cryptography to Protect Secure Computing Environments
JP3865775B2 (ja) * 1995-04-11 2007-01-10 キネテック インコーポレイテッド データ処理システムにおけるデータの識別
ES2255712T3 (es) * 1995-09-05 2006-07-01 Mitsubishi Denki Kabushiki Kaisha Aparato de transformacion de datos y procedimiento de transformacion de datos.
US6088515A (en) 1995-11-13 2000-07-11 Citrix Systems Inc Method and apparatus for making a hypermedium interactive
JP3747520B2 (ja) * 1996-01-30 2006-02-22 富士ゼロックス株式会社 情報処理装置及び情報処理方法
US5825877A (en) * 1996-06-11 1998-10-20 International Business Machines Corporation Support for portable trusted software
US5778070A (en) * 1996-06-28 1998-07-07 Intel Corporation Method and apparatus for protecting flash memory
AU2003203649B2 (en) * 1996-08-12 2006-03-02 Intertrust Technologies Corporation Systems and methods using cryptography to protect secure computing environments
AU2004240210B2 (en) * 1996-08-12 2008-03-06 Intertrust Technologies Corporation Systems and methods using cryptography to protect secure computing environments
JP3570114B2 (ja) * 1996-10-21 2004-09-29 富士ゼロックス株式会社 データ検証方法およびデータ検証システム
US6253323B1 (en) 1996-11-01 2001-06-26 Intel Corporation Object-based digital signatures
US9219755B2 (en) 1996-11-08 2015-12-22 Finjan, Inc. Malicious mobile code runtime monitoring system and methods
US7058822B2 (en) 2000-03-30 2006-06-06 Finjan Software, Ltd. Malicious mobile code runtime monitoring system and methods
US8079086B1 (en) 1997-11-06 2011-12-13 Finjan, Inc. Malicious mobile code runtime monitoring system and methods
US6021491A (en) * 1996-11-27 2000-02-01 Sun Microsystems, Inc. Digital signatures for data streams and data archives
US6272631B1 (en) * 1997-06-30 2001-08-07 Microsoft Corporation Protected storage of core data secrets
JP3781874B2 (ja) * 1997-09-05 2006-05-31 富士通株式会社 画像指示による電子情報管理装置、秘密鍵管理装置及び方法、並びに、秘密鍵管理プログラムを記録した記録媒体
US6807632B1 (en) * 1999-01-21 2004-10-19 Emc Corporation Content addressable information encapsulation, representation, and transfer
US7110984B1 (en) * 1998-08-13 2006-09-19 International Business Machines Corporation Updating usage conditions in lieu of download digital rights management protected content
EP1105798B1 (de) * 1998-08-19 2004-01-07 Siemens Aktiengesellschaft Verfahren, anordnung sowie ein satz mehrerer anordnungen zum schutz mehrerer programme und/oder mehrerer dateien vor einem unbefugten zugriff durch einen prozess
US6320964B1 (en) 1998-08-26 2001-11-20 Intel Corporation Cryptographic accelerator
DE19847943A1 (de) 1998-10-09 2000-04-13 Deutsche Telekom Ag Verfahren zum Generieren von digitalen Wasserzeichen für elekronische Dokumente
US6802006B1 (en) * 1999-01-15 2004-10-05 Macrovision Corporation System and method of verifying the authenticity of dynamically connectable executable images
US6567917B1 (en) * 1999-02-01 2003-05-20 Cisco Technology, Inc. Method and system for providing tamper-resistant executable software
JP4238410B2 (ja) * 1999-04-09 2009-03-18 ソニー株式会社 情報処理システム
US6389537B1 (en) * 1999-04-23 2002-05-14 Intel Corporation Platform and method for assuring integrity of trusted agent communications
EP1055990A1 (en) * 1999-05-28 2000-11-29 Hewlett-Packard Company Event logging in a computing platform
EP1056010A1 (en) 1999-05-28 2000-11-29 Hewlett-Packard Company Data integrity monitoring in trusted computing entity
FI110565B (fi) * 1999-06-08 2003-02-14 Nokia Corp Menetelmä ja järjestelmä puhelinkeskusjärjestelmässä
US6560599B1 (en) * 1999-06-30 2003-05-06 Microsoft Corporation Method and apparatus for marking a hash table and using the marking for determining the distribution of records and for tuning
US7650504B2 (en) * 1999-07-22 2010-01-19 Macrovision Corporation System and method of verifying the authenticity of dynamically connectable executable images
JP2001066986A (ja) * 1999-08-26 2001-03-16 Sony Corp 送信装置および方法、受信装置および方法、通信システム、並びにプログラム格納媒体
US6976165B1 (en) * 1999-09-07 2005-12-13 Emc Corporation System and method for secure storage, transfer and retrieval of content addressable information
US6868405B1 (en) * 1999-11-29 2005-03-15 Microsoft Corporation Copy detection for digitally-formatted works
CA2400204C (en) * 2000-02-17 2011-04-19 General Instrument Corporation Method and apparatus for providing secure control of software or firmware code downloading and secure operation of a computing device receiving downloaded code
KR100430147B1 (ko) * 2000-03-15 2004-05-03 인터내셔널 비지네스 머신즈 코포레이션 컴퓨터 액세스 제어
US6760441B1 (en) * 2000-03-31 2004-07-06 Intel Corporation Generating a key hieararchy for use in an isolated execution environment
US20010042204A1 (en) * 2000-05-11 2001-11-15 David Blaker Hash-ordered databases and methods, systems and computer program products for use of a hash-ordered database
US7117371B1 (en) * 2000-06-28 2006-10-03 Microsoft Corporation Shared names
JP2002016596A (ja) * 2000-06-29 2002-01-18 Oki Electric Ind Co Ltd 画像伝送装置及び画像受信装置
US6952477B1 (en) * 2000-07-03 2005-10-04 International Business Machines Corporation Fault intolerant cipher chaining
US7096493B1 (en) * 2000-12-21 2006-08-22 Gary G. Liu Internet file safety information center
US6738932B1 (en) * 2000-12-22 2004-05-18 Sun Microsystems, Inc. Method and system for identifying software revisions from memory images
US6948065B2 (en) 2000-12-27 2005-09-20 Intel Corporation Platform and method for securely transmitting an authorization secret
EP1223696A3 (en) * 2001-01-12 2003-12-17 Matsushita Electric Industrial Co., Ltd. System for transmitting digital audio data according to the MOST method
US20020112163A1 (en) * 2001-02-13 2002-08-15 Mark Ireton Ensuring legitimacy of digital media
GB2372594B (en) * 2001-02-23 2004-10-06 Hewlett Packard Co Trusted computing environment
GB2372595A (en) 2001-02-23 2002-08-28 Hewlett Packard Co Method of and apparatus for ascertaining the status of a data processing environment.
GB2372592B (en) * 2001-02-23 2005-03-30 Hewlett Packard Co Information system
GB2372591A (en) * 2001-02-23 2002-08-28 Hewlett Packard Co Method of investigating transactions in a data processing environment
IL142487A0 (en) * 2001-04-05 2003-09-17 Hexalock Ltd Method and system for protecting data
WO2002084590A1 (en) * 2001-04-11 2002-10-24 Applied Minds, Inc. Knowledge web
US7136840B2 (en) * 2001-04-20 2006-11-14 Intertrust Technologies Corp. Systems and methods for conducting transactions and communications using a trusted third party
US7424747B2 (en) * 2001-04-24 2008-09-09 Microsoft Corporation Method and system for detecting pirated content
EP1393170A4 (en) * 2001-04-27 2008-07-30 Quinn Inc W FILTER DRIVER FOR DISK FILE IDENTIFICATION, BY CONTENT ANALYSIS
US20030105961A1 (en) * 2001-11-30 2003-06-05 Peter Zatloukal Avoiding attachment of an ineligible smart interchangeable cover to an electronic device
EP1388126B1 (en) * 2001-05-17 2013-03-27 Nokia Corporation Remotely granting access to a smart environment
US7246235B2 (en) * 2001-06-28 2007-07-17 Intel Corporation Time varying presentation of items based on a key hash
US7421411B2 (en) * 2001-07-06 2008-09-02 Nokia Corporation Digital rights management in a mobile communications environment
US7237121B2 (en) * 2001-09-17 2007-06-26 Texas Instruments Incorporated Secure bootloader for securing digital devices
US7036020B2 (en) * 2001-07-25 2006-04-25 Antique Books, Inc Methods and systems for promoting security in a computer system employing attached storage devices
US7925894B2 (en) * 2001-07-25 2011-04-12 Seagate Technology Llc System and method for delivering versatile security, digital rights management, and privacy services
GB2378013A (en) * 2001-07-27 2003-01-29 Hewlett Packard Co Trusted computer platform audit system
US8117450B2 (en) * 2001-10-11 2012-02-14 Hewlett-Packard Development Company, L.P. System and method for secure data transmission
KR20030075018A (ko) * 2002-03-15 2003-09-22 주식회사 셈틀로미디어 변조 방지용 소프트웨어 파일 생성 장치와 그 소프트웨어파일의 자가 무결성 검증 방법 및 클라이언트-서버환경에서의 소프트웨어 파일의 자가 무결성 검증 방법
US7844610B2 (en) 2003-12-12 2010-11-30 Google Inc. Delegated authority evaluation system
US8069175B2 (en) * 2002-04-10 2011-11-29 Google Inc. Delegating authority to evaluate content
US20030196094A1 (en) * 2002-04-10 2003-10-16 Hillis W. Daniel Method and apparatus for authenticating the content of a distributed database
US20030195834A1 (en) * 2002-04-10 2003-10-16 Hillis W. Daniel Automated online purchasing system
US20030196096A1 (en) * 2002-04-12 2003-10-16 Sutton James A. Microcode patch authentication
US7266842B2 (en) * 2002-04-18 2007-09-04 International Business Machines Corporation Control function implementing selective transparent data authentication within an integrated system
US6715085B2 (en) * 2002-04-18 2004-03-30 International Business Machines Corporation Initializing, maintaining, updating and recovering secure operation within an integrated system employing a data access control function
US6851056B2 (en) * 2002-04-18 2005-02-01 International Business Machines Corporation Control function employing a requesting master id and a data address to qualify data access within an integrated system
US7089419B2 (en) 2002-04-18 2006-08-08 International Business Machines Corporation Control function with multiple security states for facilitating secure operation of an integrated system
AU2003230257A1 (en) * 2002-05-06 2003-11-11 Bentley Systems, Inc. Method and system for digital rights management and digital signatures
JP2004013608A (ja) * 2002-06-07 2004-01-15 Hitachi Ltd プログラムの実行および転送の制御
US7243231B2 (en) 2002-07-31 2007-07-10 Intel Corporation Sensory verification of shared data
US7444522B1 (en) * 2002-09-18 2008-10-28 Open Invention Network, Llc Dynamic negotiation of security arrangements between web services
US7765206B2 (en) 2002-12-13 2010-07-27 Metaweb Technologies, Inc. Meta-Web
US8012025B2 (en) * 2002-12-13 2011-09-06 Applied Minds, Llc Video game controller hub with control input reduction and combination schemes
EP1489517B1 (fr) * 2003-04-03 2006-09-06 STMicroelectronics S.A. Protection d'un programme en attente d'exécution dans une mémoire utilisée par un microprocesseur
US7353397B1 (en) 2003-04-30 2008-04-01 Adobe Systems Incorporated Repurposing digitally signed information
BRPI0410999A (pt) * 2003-06-05 2006-07-04 Intertrust Tech Corp sistemas e métodos interoperáveis para orquestração de serviço peer-to-peer
US7272228B2 (en) * 2003-06-12 2007-09-18 International Business Machines Corporation System and method for securing code and ensuring proper execution using state-based encryption
US20050033700A1 (en) * 2003-08-04 2005-02-10 Vogler Dean H. Method and apparatus for creating and rendering an advertisement
US20050055312A1 (en) * 2003-08-18 2005-03-10 Wilson Kelce Steven Software control flow watermarking
US8661559B2 (en) * 2003-08-18 2014-02-25 Riverside Research Institute Software control flow watermarking
US7734932B2 (en) * 2003-11-10 2010-06-08 Broadcom Corporation System and method for securing executable code
US7516331B2 (en) * 2003-11-26 2009-04-07 International Business Machines Corporation Tamper-resistant trusted java virtual machine and method of using the same
US20050131918A1 (en) * 2003-12-12 2005-06-16 W. Daniel Hillis Personalized profile for evaluating content
JP2005346182A (ja) * 2004-05-31 2005-12-15 Fujitsu Ltd 情報処理装置、耐タンパ方法、耐タンパプログラム
US7461268B2 (en) * 2004-07-15 2008-12-02 International Business Machines Corporation E-fuses for storing security version data
EA200700350A1 (ru) * 2004-07-26 2007-08-31 Стохасто Аса Способ защиты компьютерных систем от шифрующихся и полиморфных вирусов
US7712135B2 (en) * 2004-08-05 2010-05-04 Savant Protection, Inc. Pre-emptive anti-virus protection of computing systems
US9313214B2 (en) * 2004-08-06 2016-04-12 Google Technology Holdings LLC Enhanced security using service provider authentication
WO2006100522A1 (en) 2005-03-22 2006-09-28 Hewlett-Packard Development Company, L.P. Methods, devices and data structures for trusted data
US20060236122A1 (en) * 2005-04-15 2006-10-19 Microsoft Corporation Secure boot
US8521752B2 (en) * 2005-06-03 2013-08-27 Osr Open Systems Resources, Inc. Systems and methods for arbitrary data transformations
US8984636B2 (en) 2005-07-29 2015-03-17 Bit9, Inc. Content extractor and analysis system
US7895651B2 (en) 2005-07-29 2011-02-22 Bit 9, Inc. Content tracking in a network security system
US8272058B2 (en) 2005-07-29 2012-09-18 Bit 9, Inc. Centralized timed analysis in a network security system
JP4901164B2 (ja) * 2005-09-14 2012-03-21 ソニー株式会社 情報処理装置、情報記録媒体、および方法、並びにコンピュータ・プログラム
US8135958B2 (en) * 2005-11-22 2012-03-13 International Business Machines Corporation Method, system, and apparatus for dynamically validating a data encryption operation
US20070180210A1 (en) * 2006-01-31 2007-08-02 Seagate Technology Llc Storage device for providing flexible protected access for security applications
JP5190800B2 (ja) * 2006-02-21 2013-04-24 日本電気株式会社 プログラムの実行制御システム、実行制御方法、実行制御用コンピュータプログラム
US8185576B2 (en) * 2006-03-14 2012-05-22 Altnet, Inc. Filter for a distributed network
US8028166B2 (en) * 2006-04-25 2011-09-27 Seagate Technology Llc Versatile secure and non-secure messaging
US7539890B2 (en) * 2006-04-25 2009-05-26 Seagate Technology Llc Hybrid computer security clock
US8429724B2 (en) 2006-04-25 2013-04-23 Seagate Technology Llc Versatile access control system
US7512748B1 (en) 2006-08-17 2009-03-31 Osr Open Systems Resources, Inc. Managing lock rankings
US8539228B1 (en) * 2006-08-24 2013-09-17 Osr Open Systems Resources, Inc. Managing access to a resource
SG175679A1 (en) * 2006-11-13 2011-11-28 Certicom Corp Compressed ecdsa signatures
US8024433B2 (en) * 2007-04-24 2011-09-20 Osr Open Systems Resources, Inc. Managing application resources
US8386608B1 (en) * 2007-08-03 2013-02-26 Alex Rankov Service scripting framework
US7949693B1 (en) 2007-08-23 2011-05-24 Osr Open Systems Resources, Inc. Log-structured host data storage
US20090064134A1 (en) * 2007-08-30 2009-03-05 Citrix Systems,Inc. Systems and methods for creating and executing files
US8667597B2 (en) * 2008-06-25 2014-03-04 Lockheed Martin Corporation Systems, methods, and products for secure code execution
JP2010191665A (ja) * 2009-02-18 2010-09-02 Sony Corp 情報処理装置、情報処理方法、およびプログラム、並びに記録媒体
WO2011042892A1 (en) * 2009-10-09 2011-04-14 Nokia Corporation Platform security
EP2438511B1 (en) 2010-03-22 2019-07-03 LRDC Systems, LLC A method of identifying and protecting the integrity of a set of source data
US9772834B2 (en) * 2010-04-27 2017-09-26 Red Hat, Inc. Exportable encoded identifications of networked machines
US8903874B2 (en) 2011-11-03 2014-12-02 Osr Open Systems Resources, Inc. File system directory attribute correction
US8918881B2 (en) 2012-02-24 2014-12-23 Appthority, Inc. Off-device anti-malware protection for mobile devices
US8713684B2 (en) 2012-02-24 2014-04-29 Appthority, Inc. Quantifying the risks of applications for mobile devices
US11232093B2 (en) 2012-03-02 2022-01-25 Pure Storage, Inc. Slice migration in a dispersed storage network
US10402393B2 (en) * 2012-03-02 2019-09-03 Pure Storage, Inc. Slice migration in a dispersed storage network
FR2992083B1 (fr) * 2012-06-19 2014-07-04 Alstom Transport Sa Calculateur, ensemble de communication comportant un tel calculateur, systeme de gestion ferroviaire comportant un tel ensemble, et procede de fiabilisation de donnees dans un calculateur
US8819772B2 (en) * 2012-06-25 2014-08-26 Appthority, Inc. In-line filtering of insecure or unwanted mobile device software components or communications
US8856519B2 (en) 2012-06-30 2014-10-07 International Business Machines Corporation Start method for application cryptographic keystores
US9106411B2 (en) 2012-09-30 2015-08-11 Apple Inc. Secure escrow service
US11126418B2 (en) * 2012-10-11 2021-09-21 Mcafee, Llc Efficient shared image deployment
RU2533061C1 (ru) * 2013-06-26 2014-11-20 Закрытое акционерное общество "Научно-производственное предприятие "Информационные технологии в бизнесе" Система контроля доступа к шифруемым создаваемым файлам
US20150039872A1 (en) * 2013-08-05 2015-02-05 Caterpillar Inc. Multiple Signed Filesystem Application Packages
US9830329B2 (en) 2014-01-15 2017-11-28 W. Anthony Mason Methods and systems for data storage
US10491398B2 (en) * 2014-09-12 2019-11-26 Salesforce.Com, Inc. Facilitating dynamic end-to-end integrity for data repositories in an on-demand services environment
US9842062B2 (en) 2015-05-31 2017-12-12 Apple Inc. Backup accessible by subset of related devices
CN108416224B (zh) * 2018-02-13 2019-10-15 北京梆梆安全科技有限公司 一种数据加解密方法及装置
US11055426B2 (en) * 2018-07-16 2021-07-06 Faro Technologies, Inc. Securing data acquired by coordinate measurement devices
US11108545B2 (en) * 2019-05-31 2021-08-31 Advanced New Technologies Co., Ltd. Creating a blockchain account and verifying blockchain transactions

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4715034A (en) * 1985-03-04 1987-12-22 John Fluke Mfg. Co., Inc. Method of and system for fast functional testing of random access memories
FR2596177B1 (fr) * 1986-03-19 1992-01-17 Infoscript Procede et dispositif de sauvegarde qualitative de donnees numerisees
US5224160A (en) * 1987-02-23 1993-06-29 Siemens Nixdorf Informationssysteme Ag Process for securing and for checking the integrity of the secured programs
US5052040A (en) * 1990-05-25 1991-09-24 Micronyx, Inc. Multiple user stored data cryptographic labeling system and method
US5412717A (en) * 1992-05-15 1995-05-02 Fischer; Addison M. Computer system security method and apparatus having program authorization information data structures
AU683038B2 (en) * 1993-08-10 1997-10-30 Addison M. Fischer A method for operating computers and for processing information among computers
US5412718A (en) * 1993-09-13 1995-05-02 Institute Of Systems Science Method for utilizing medium nonuniformities to minimize unauthorized duplication of digital information
US5343527A (en) * 1993-10-27 1994-08-30 International Business Machines Corporation Hybrid encryption method and system for protecting reusable software components
US5530757A (en) * 1994-06-28 1996-06-25 International Business Machines Corporation Distributed fingerprints for information integrity verification

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012155732A (ja) * 2006-07-14 2012-08-16 Marvell World Trade Ltd システムオンアチップ(SoC)、ディスクプレーヤ、および方法

Also Published As

Publication number Publication date
WO1997007657A2 (en) 1997-03-06
IL123198A (en) 2001-06-14
EP0860064A2 (en) 1998-08-26
RU2142674C1 (ru) 1999-12-10
US5757915A (en) 1998-05-26
US5940513A (en) 1999-08-17
AU6501196A (en) 1997-03-19
EP0860064B1 (en) 2005-09-21
IL123198A0 (en) 1998-09-24
WO1997007657A3 (en) 1997-04-17
CN1194072A (zh) 1998-09-23
DE69635209D1 (de) 2006-02-02
EP0860064A4 (en) 1999-10-06
CN1124719C (zh) 2003-10-15
BR9610127A (pt) 1999-10-26
HK1015987A1 (en) 1999-10-22
JP4087442B2 (ja) 2008-05-21
DE69635209T2 (de) 2006-06-22

Similar Documents

Publication Publication Date Title
JPH11511576A (ja) アクセス制御用のパラメータ付きハッシュ関数
EP1695169B1 (en) Method and apparatus for incremental code signing
JP4702957B2 (ja) 耐タンパ・トラステッド仮想マシン
EP1391801B1 (en) Saving and retrieving data based on public key encryption
EP1391802B1 (en) Saving and retrieving data based on symmetric key encryption
JP5670578B2 (ja) 機密コードおよびデータを保護するためのアーキテクチャを含む方法および装置
US6725373B2 (en) Method and apparatus for verifying the integrity of digital objects using signed manifests
US8364965B2 (en) Optimized integrity verification procedures
JP5417092B2 (ja) 暗号化属性を用いて高速化された暗号法
US20010007131A1 (en) Method for validating expansion roms using cryptography
KR20040094724A (ko) 멀티-토큰 실 및 실 해제
JPH10301773A (ja) 情報処理装置および情報処理方法、並びに記録媒体
EP0968585A1 (en) Digital product rights management technique
JPH08166879A (ja) 提供用ソフトウェアの安全性強化方法及び装置
US7805616B1 (en) Generating and interpreting secure and system dependent software license keys
JP2002358011A (ja) デジタルメディアの正当性の保証
CN109657479B (zh) 数据防泄漏方法及计算机可读存储介质
JP3481470B2 (ja) データ等の不正改竄防止システム及びそれと併用される暗号化装置
CN107257282A (zh) 一种基于rc4算法的代码全包加密方法
TWI518539B (zh) Data processing device
CN116781265A (zh) 一种数据加密的方法和装置
JP2019186848A (ja) 情報処理システムおよびプログラム実行制御方法
CN114764503A (zh) 数据分发方法、装置、设备及存储介质
CN110555311A (zh) 一种基于纯软密码运算的电子签章系统安全设计方法及系统
ایاد عبد القھار عبد السلام فاتن صادق خزعل Software Protection by Combining Hash Function with Hardware Identifications

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070220

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20070521

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20070702

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070612

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070731

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20071031

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20071210

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071128

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080122

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080221

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

Free format text: PAYMENT UNTIL: 20110228

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20120229

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20130228

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20140228

Year of fee payment: 6

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term