JP3363379B2 - 安全な記憶領域内のアプリケーション・データを保護する方法及び装置 - Google Patents

安全な記憶領域内のアプリケーション・データを保護する方法及び装置

Info

Publication number
JP3363379B2
JP3363379B2 JP16473298A JP16473298A JP3363379B2 JP 3363379 B2 JP3363379 B2 JP 3363379B2 JP 16473298 A JP16473298 A JP 16473298A JP 16473298 A JP16473298 A JP 16473298A JP 3363379 B2 JP3363379 B2 JP 3363379B2
Authority
JP
Japan
Prior art keywords
program
name
memory
dpn
area
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP16473298A
Other languages
English (en)
Other versions
JPH1124919A (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.)
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 JPH1124919A publication Critical patent/JPH1124919A/ja
Application granted granted Critical
Publication of JP3363379B2 publication Critical patent/JP3363379B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related 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/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6209Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
    • 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
    • G06F2211/008Public Key, Asymmetric Key, Asymmetric Encryption
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2115Third party

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)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、システム・セキュ
リティを守るために、安全が保証されていない記憶域か
ら受信されたアプリケーション・プログラムの認証
(authenticity)を管理し、そのようなプログラムがコ
ンピュータの安全な環境(機密保護機能のある保護さ
れた環境)で実行される際にそのプログラムによるデー
タ・アクセスを制御する方法及び装置に関する。
【0002】
【従来の技術とその課題】アプリケーション・プログラ
ムがデータ処理システムの保護された記憶領域へアクセ
スする、はそれを変更することを防ぐためにプログラ
ムされた方法及び装置を使用することは知られている。
例えば Richard P.Jones による米国特許第51446
59号、同第5289540号等である。Jones はディ
スク・ドライブ・アダプタ・カード上のプログラマブル
補助メモリと制御装置の形のハードウェアを開示してい
る。これは中央処理装置とファイル記憶域の間の制御ロ
ジック、アドレス及びデータの信号経路をインターセプ
トする。Jones システムのハードウェアと関連ソフトウ
ェアがインストールされると、オペレーティング・シス
テムはファイル・システムを制御しなくなるか、はア
クセスしなくなる。Jones の場合、補助メモリは全ての
有効ファイルの署名(signature)を格納する。これら
ファイル署名は単純な巡回冗長コード(CRC)であ
る。かかる署名は、CRCが最後に計算されてから該当
するファイルがウイルスにより変更されていることを検
出することによってウイルス攻撃を防ぐことができ
る。しかし、かかる署名はハッカー攻撃を防ぐことはで
きない。プログラムを変更した後に新しいCRCを計算
し付加することは簡単なことだからである。
【0003】比較的新しいところでは例えばレベル3
で実行中のアプリケーション・プログラムから直接アク
セスされることに対してレベル0を持つメモリ・セグメ
ントを保護するように、ハードウェアの中央処理装置
(CPU)自体に特権レベルが組み込まれている。19
94年1月に Advanced Micro Devices から発行され
"Am486 Microprocessor Software Users Manual"
A-28乃至A-34ページに一例が記載されている。これらの
回路はレベル3のアプリケーション・プログラムによる
スーパバイザ・レベルのメモリ空間の直接アドレシング
を防ぐが、そのようなアクセスが必要な場合がるにも
関わらず、アプリケーション・プログラムが真正であっ
て、アクセスされるデータがこの真正なプログラムに割
当てられていることをマイクロプロセッサが決定するメ
カニズムはない。
【0004】ユーザのID及びプログラムの認証性を暗
号により識別することが知られている。IBM社の47
55暗号アダプタ・カードがその一例である。しかし
現行の技術は、安全が保証されていないソースからアプ
リケーションがロードされたときに、安全領域の持続
データを保護する方法は示していない。
【0005】複数のアプリケーション・プログラムを実
行し、これらのプログラムのための、使用期間の長いデ
ータを格納する機能を持つコンピュータ・システムで
は、各データ領域を、その領域を作成したアプリケーシ
ョン・プログラムとは別の他のアプリケーション・プロ
グラムから保護する必要がある。ここで、「他のプログ
ラムとは、全く異なるプログラム及びデータを作成し
たプログラムを偽装しようとするプログラムの両方を意
味する。しかし任意のプログラムの新しいバージョン
は、それと同じプログラムの前のバージョンによって
作成されたデータ領域にアクセスできなければならな
い。
【0006】このシナリオでは、データはコンピュータ
のメモリ内で持続しているが、アプリケーション・プロ
グラム自体は持続していない。アプリケーション・プロ
グラムは、必要なくなったときメモリから削除され、後
でそれらのサービスが再び要求されるときに再ロードさ
れる。各アプリケーション・プログラムによって用いら
れるデータ領域は、コンピュータ内に残り、持続媒体上
に格納され、コンピュータのオペレーティング・システ
ムによって管理される。アプリケーション・プログラム
は、再ロードされるときにそれが所有するデータへのア
クセスが与えられなければならないが、他のアプリケー
ション・プログラムによって所有されるデータへのアク
セスを許可してはいけない。同様に、同時に実行されて
いるアプリケーション・プログラムは互いのデータにア
クセスしてはならない。再ロードすべきアプリケーショ
ン・プログラムが格納されているプログラム記憶媒体自
体は、どのような形であれ必ずしも保護されないので、
アプリケーション・プログラムは、それら自体の改変を
防ぐ保護機能を持つように、またそれらが所有するデー
タ領域にそれらを安全に関連付けるため使用できる保護
情報を含むように、作成しなければならない。
【0007】
【課題を解決するための手段】本発明は、関連する技術
の欠点と制限を克服するために、安全が保証されていな
い領域から安全領域にロードされるアプリケーション・
プログラムの認証性を効率的に検証(verify)し、この
検証されたアプリケーション・プログラムを、持続メモ
リ内にすでに存在するそのデータ領域と関連付けて
のアプリケーション・プログラムを除外する方法及び装
置を提供する。
【0008】持続データ領域のための本発明の安全アク
セス管理の利点は、安全が保証されていない記憶域から
アプリケーション・プログラムをロードでき、セキュリ
ティを危険にさらすことなく、持続データへのアクセス
が与えられることである。
【0009】本発明の他の利点は、アプリケーション・
プログラムが、持続メモリに存在できなくても、デー
タにアクセスできるようにしながら、持続データを保護
するためにプロセッサの特権レベルを利用できることで
ある。
【0010】これらの利点は、他の利点を含めて、本発
明に関する次の説明から明らかになろう。
【0011】
【発明の実施の形態】図1を参照する。本発明を特定の
実施例にして説明するため、数多いIBMパーソナル
・コンピュータに用いられる構成のような、代表的なパ
ーソナル・コンピュータ・アーキテクチャが示してあ
る。本発明はまた、ミニコン、メインフレーム・コンピ
ュータの環境、更にローカル・エリア、ワイド・エリア
のコンピュータ・ネットワーク等、他のデジタル・コン
ピュータ・アーキテクチャにも使用できる。必要なこと
は、侵入者(attacker)がコンピュータの回路を探った
変更することを防ぐように、コンピュータが物理的に
安全なことだけである。コンピュータ自体を物理的に安
全にすることができない状況では、米国特許第5159
629号及び同第5027397号に示してあるような
安全モジュール13を持つセキュリティ・カード11を
本発明の実施例に採用できる。
【0012】パーソナル・コンピュータ・アーキテクチ
ャの処理要素はマイクロプロセッサ15で、これは例え
インテル社の 80486、Pentium 他の同様なマイクロプ
ロセッサである。マイクロプロセッサ15はバス17に
接続される。バス17は1組のデータ・ライン、1組の
アドレス・ライン、及び1組の制御ラインを含む。バス
17には、個別アダプタを通してメモリ及び記憶装置を
含めた複数のI/Oデバイスが接続される。I/Oデバ
イスはパーソナル・コンピュータの標準機能、はプラ
グイン・オプションである。例えばこれらのデバイスに
、グラフィクス・アダプタ21を通して接続されるカ
ラー・ディスプレイ19、アダプタ25を通して接続さ
れるキーボード23、及びSCSIアダプタ29を通し
て接続されるハード・ディスク・ドライブ(DASD)
27を加えることができる。他のデバイスは、パーソナ
ル・コンピュータの一部として追加されるか、はプラ
グイン・オプションとしてIBM社及び他の供給者から
入手できる。
【0013】ランダム・アクセス・メモリ(RAM)3
1と読取り専用メモリ(ROM)33はパーソナル・コ
ンピュータの標準機器として追加されるが、プラグイン
・メモリ拡張オプションを介して、RAM31を補う他
のRAMを追加することもできる。
【0014】ROM33内には、マイクロプロセッサ1
5で実行するために、基本入出力オペレーティング・シ
ステム、はBIOSとして知られる複数の命令が格納
される。BIOSはコンピュータの基本的なI/O操作
を制御する。S/2等のオペレーティング・システム
がRAM31にロードされ、ROM33に格納され
たBIOSと共に実行される。パーソナル・コンピュー
タ・システムは、BIOSの一部は全てがROM33
ではなくRAM31に格納されるように構成できるこ
とは当業者には理解されよう。これはBIOSプログラ
ムに加えられた変更内容による基本システムの操作を変
更できるようにするためであり、そのBIOSプログラ
ムはRAM31に簡単にロードできる。同様にRAM
に格納されたプログラム、データ及び知識表現はROM
33に格納できる。
【0015】図1に示すように、本発明の方法を実現す
るプログラム35は、コンパクト・ディスク37、
他のポータブルな記憶媒体に組み込むことによって、製
品として好都合な形で具体化される。媒体37はアダプ
タ41によってバス17に接続されたリーダ39により
読取ることができる。更にプログラム35は、マイクロ
プロセッサ15により実行するために、プログラムの実
行可能命令をRAM31、ROM33、は両者の組み
合わせとして、或いはまたアダプタ29を介してマイク
ロプロセッサ15からアクセスできるDASD27
格納することによって、特別な装置として具体化するこ
ともできる。
【0016】本発明は、マイクロプロセッサ15に使用
することに加えて、暗号アダプタ11とも呼ばれ、バス
17に接続されるセキュリティ・カード11のような特
別なデバイスにも都合よく採用できる。ここでも本発明
の方法を具体化したプログラム35は、プログラムの実
行可能命令をRAM53、ROM55、は両者の組み
合わせに格納することによって特別な装置として実現で
き、或いはまた先に述べたようにDASD27からRA
M53にロードすることもできる。暗号アダプタ11は
また、データ暗号化規格(DES)アルゴリズム、RS
Aアルゴリズム等のアルゴリズムを効率よく実行するた
めに暗号処理モジュール57を含む。
【0017】本発明の好適な実施例は、図2に示したO
S/2等のオペレーティング・システムに組み込まれて
その一部にされる。簡単のため、本発明は図1の暗号
ダプタ11の一部として具体化されているものとして、
また本発明に従って認証されたアプリケーション・プロ
グラムに対して安全が保証されていないアプリケーショ
ンのソースは、図1に示したDASD27であるとして
説明する。
【0018】ペレーティング・システムカーネル1
01は図の中央に示してある。カーネル101は、ア
プリケーション・プログラムを書込み、これをコンピュ
ータで効率よく実行させるために必要な多くのシステ
ム制御機能を実行する。
【0019】アプリケーションへのメモリの割当ては、
オペレーティング・システムによって実行される最も重
要な制御機能の1つである。Ed Iacobucci が著し19
88年に発行された "OS/2 Programmers Guide" の第4
章「メモリ管理」に述べられているように、OS/2は
各アプリケーション・プログラムにローカル・アドレス
空間を割当て、これらローカル・アドレス空間をローカ
ル記述子テーブルによって実メモリにマップする。
【0020】その結果、アプリケーション・プログラム
のメモリ・セグメントは自然に分離される。つまり、あ
るアプリケーション・プログラムに割当てられたセグメ
ントは、他のアプリケーション・プログラムによって表
は変更することはできない。
【0021】インテル社の 80286 以上のマイクロプロ
セッサで実行されるオペレーティング・システムによっ
て用いられる前述の方法は、アプリケーション・プログ
ラムとそれらのデータ領域の両方がメモリ内では一時的
であるアプリケーションではうまく機能し、アプリケー
ション・プログラムが揮発性メモリにロードされる毎
にローカル記述子テーブルを設定し、新しいメモリを割
当てることができる。これに対し、データ領域がフラッ
シュ・メモリ等の持続メモリ留まる必要がある状況
では、連続して存在するメモリ領域を、認証性が検証
且つメモリに再ロードされているアプリケーション
・プログラムに安全に再割当てするために、何らかの方
法を用意しなければならない。
【0022】例えば安全な環境の外部に置かれたDAS
Dからロードされているアプリケーション・プログラム
を実行する前に、このアプリケーション・プログラムの
認証性を検証しなければならない。さもなければ詐称
(imposterm)プログラムがロードされ、この詐称プロ
グラムが安全な環境を脅かす可能性がある。更に、持
メモリ領域をロード済みプログラムに再割当てする際に
は、分離状態を守る必要があり、他のアプリケーション
・プログラムのメモリ領域を、この新たにロードされた
プログラムに割当てることを許容してはならない。
【0023】認証性の検証は、本発明に従って、アプリ
ケーション・プログラムの事前の認証、及びアプリケー
ション・プログラムが安全なメモリにロードされる前
のそれらの検証により、プログラム・ローダ111で行
われる。分離は本発明に従って、データ領域テーブルの
識別フィールドをアプリケーション・プログラムのID
と比較することによって、セキュリティ関連データ項目
(SRDI)マネージャ109により行われる。データ
領域テーブルは、図2を参照して以下で説明するが、オ
ペレーティング・システムの新規な改良のために維持さ
れる。
【0024】図1のRAM53及びROM55は安全モ
ジュール13内に含まれる。RAM53及びROM55
は、本発明のこの暗号アダプタ・バージョンでは、OS
/2のサブセット等であるオペレーティング・システム
を保持する。カーネル101はメモリ割当てを管理し、
DESリソース・マネージャ103を介してデータ暗号
化規格(DES)アルゴリズムを管理し、またRSAリ
ソース・マネージャ105を介してRSAアルゴリズム
を管理する。
【0025】フラッシュ・メモリ、バッテリ駆動メモリ
等の持続メモリは107に用意される。持続メモリ10
7の実アドレス空間はグローバル記述子テーブルにマッ
プされ、従って常にオペレーティング・システム利用
でき、持続メモリ107を使用するアプリケーションが
RAM53で実行を停止したときに消滅することはな
い。持続メモリ107内のアドレスアプリケーション
・プログラムへ割当てる作業は本発明のSRDIマネー
ジャ109により行われる。
【0026】保護されていないDASD27は他の何
らかの非保護外部媒体からアプリケーション・プログラ
ムを持ってきて再ロードするために、本発明に従った改
良されたプログラム・ローダが111に用意される。安
全モジュール13内の回路に対して用意される物理的な
保護機能は合理的に提供できるが、攻撃や侵入に対して
DASDを物理的に保護するためのコストと複雑さは、
現時点では現実的ではない。よって、システムへの攻撃
の一部として、DASD27からロードされるアプリケ
ーション・プログラムが変更され、は入れ替えられる
ことのないようにする必要がある。これは、オペレーテ
ィング・システム利用できる暗号リソースを使用し
て、プログラム・ローダ111により達成される。
【0027】アプリケーション・プログラムはロードさ
れ使用される前に、その認証性が、コンピュータ・シス
テムの所有者、メーカ、はシステムの制御とセキュリ
ティを受け持つ他の中央当事者によって認証される。
は図3のフローチャートに示すように、本発明に従っ
て、セキュリティ・カード11の暗号機構を用いて行わ
れる。
【0028】図3ブロック201でプログラム
ために固有名Nが選択され、ブロック203で格納さ
れる。この固有名は特別な性質を有する必要はなく、こ
の特定の機関(authority)により認証されるプログラ
ムの名前のドメイン内で一意であればよい。名前N
ブロック205で入力されたプログラムPブロッ
ク207で組み合わされて、1つの連続したデータ・オ
ブジェクトになり、ブロック209で格納される。他の
方法も可能であるが、好適な実施例では、組み合わせは
をPに連結することによって行われる。組み合わ
されたオブジェクトはPと呼ばれる。
【0029】ブロック211で、Pに対してハッ
シュが計算され、H(P)が得られる。H(P
)は、Pのサイズとは無関係に長さが一定で
ある。また公開鍵法では、普通は代表的なRSA鍵の1
024ビット等の鍵モジュラスのサイズより小さいデー
タを暗号化できるだけである。
【0030】ブロック215で認証機関が、H(P
)に対して、ブロック213で安全な持続記憶域から
検索された秘密鍵KPRを使用してデジタル署名DSI
Gを計算する。この暗号化の結果はデジタル署名DSI
Gである。KPRは秘密/公開鍵ペアの秘密鍵である。
対応する公開鍵KPUは、認証機関により、KPR
されたプログラムが用いられることが期待される全て
のコンピュータ・システムで利用できるようにされる。
【0031】デジタル署名DSIGは、デジタル署名ア
ルゴリズムRSA及びDSA、ハッシング・アルゴリズ
ムSHA−1、MD5、MD4、MDCを含めて、周知
の手法の何れかにより計算できる。
【0032】デジタル署名DSIGはブロック217で
組み合わされたプログラム/名前オブジェクトP
に添付され、ブロック219で格納される。これにより
デジタル署名DSIGは、プログラムが配布されると
き、及びプログラムがコンピュータ・システムにロード
されるときにプログラムに付き添う。プログラム、名
前及びデジタル署名を含む、最後に配布されるこのオブ
ジェクトは、認証済みプログラムA(CP)と呼ばれ
る。この認証済みプログラムは、ブロック221で持続
記憶域及び本発明に従ったオペレーティング・システム
を含む安全領域を持つエンド・ユーザ位置に配布でき
る。
【0033】本発明に従ったオペレーティング・システ
ムは、コンピュータ・システムにプログラムをロードす
る際、プログラム自体及びプログラム名の認証性を検証
するために、添付されたデジタル署名DSIGを検証
る。先に述べたように、公開鍵KPUは、プログラムP
を使用する必要のある全てのコンピュータ・システム
利用できる。
【0034】図4を参照する。コンピュータのオペレー
ティング・システムは、本発明に従って、プログラムを
実行するためロードする際に次のステップを実行する。
【0035】ブロック301で、認証済みプログラム・
オブジェクトCPデジタル署名DSIGと、組み
合わされたプログラム/名前オブジェクトP
分離される。
【0036】デジタル署名DSIGがオブジェクトP
のプログラムとその名前の有効な署名であることの
検証が、公開鍵KPUを使用して、次のステップに従っ
て行われる。先ずブロック303で、デジタル署名DS
IGが公開鍵KPUを使用して解読される。もし、この
デジタル署名DSIGが確かに対応する秘密鍵で作成さ
れたものであれば、この解読の結果はハッシュH'(P
)になる。
【0037】次にブロック305で、ハッシュH(P
)が、認証中に行われたと同じ態様で計算され
る。ブロック307でブロック303と305からの
結果が比較され、H(P)=H'(P
ある否かが調べられる。もし、それらが等しければ
デジタル署名DSIGにより、P認証機関によ
署名されたものであること、またPが変更され
ていないことが検証される。
【0038】もし、デジタル署名DSIGが正しくな
れば、ロード・プロセスはブロック309で強制終了さ
れる。他方、デジタル署名DSIGが正しければ、ブロ
ック311で、オブジェクトP はプログラムP
及びプログラム名Nに分離される。ブロック313
で、プログラム名N はオペレーティング・システム記
憶域のデータ領域属性テーブルにセーブされ、そこで
は、オペレーティング・システム自体を除いてどのプロ
グラムもプログラム名Nを変更できない。ブロック3
15でプログラム がロードされ、ブロック317
でプログラムPの実行が開始される。
【0039】プログラム所有する持続データ領域は全
て、コンピュータのオペレーティング・システムによっ
て管理される。オペレーティング・システム・サービス
にリクエストを出すのでなければ、アプリケーション・
プログラムからそれらの持続データ領域に直接アクセス
することはできない。
【0040】プログラムがオペレーティング・システム
に、新しい持続データ領域の割当てを要求すると、オペ
レーティング・システムはプログラムの名前を調べ、そ
れをその持続データ領域と永続的に関連付ける態様で格
納する。従って持続データ領域はどれも、永続的で変
更不可能な所有者名フィールドが添付されている。
【0041】後の時点で、プログラムが既存データ領域
へのアクセスを要求したとき、オペレーティング・シス
テムは、この要求側プログラムがこのデータ領域の作成
者であり、よってその所有者であるかかを検証する。
そのため、オペレーティング・システムは、プログラム
のロード時にセーブしたプログラムの名前を、このデー
タ領域自体に添付された所有者名と比較する。もし、こ
れらの2つの名前が一致しなければ当該プログラム
要求されたデータ領域へのアクセスを許可されな
い。このメカニズムは、もしプログラム名がどのような
形でも偽造できないことを保証できるのであれば任意
プログラムが他のプログラムのデータへのアクセス権
を獲得することを防ぐ。この保証は、前述のプログラム
認証とプログラム・ロードのプロセスを通して与えられ
る。
【0042】システムによっては、アプリケーション・
プログラムの固有名とデータ領域の所有者名の比較は、
両者が正確に一致しなくてもよく、他の部分的な比較
は完全な比較でも充分に間に合うこと理解されよう。
例えば同じ持続データ領域へのアクセスを要求するプロ
グラムのファミリがあり得、このアクセス許可を行うに
は、全ての名前を同じ文字で始まり、異なる文字で終わ
るように認証機関により割当てることができる。例え
ば、プログラムのXYZファミリはXYZA、XYZB
等を含む。この例で持続データ領域の所有者名を一致さ
せるには、名前のXYZ部分だけが必要である。同様
一致は正確な一致でなくてもよく、補数、順序を反
転した文字、また、本発明の範囲から逸脱しない他の変
形例等でもよい。
【0043】データ領域のアクセス管理を図5のフロー
チャートに示す。ここでは次のステップが取られる。
前N を有するアプリケーション・プログラムAは、ブ
ロック401でデータ領域D2へのアクセスを要求す
る。このリクエストは破線のパスを辿ってブロック40
3でSRDIマネージャ109(図2)に届く。SRD
Iマネージャ109は、プログラムAについてそのプロ
グラムがロードされたときにセーブした名前N検索
する。SRDIマネージャ109は次にデータ領域D2
に関連付けられた所有者名を調べる。
【0044】SRDIマネージャ109はブロック40
5で2つの値を比較し、ブロック407で要求側の名
前(N)がデータの所有者名(N)と等しいことを
決定すると、ブロック409でデータ領域D2をプロ
グラムAのローカル記述子テーブルに割当てることによ
ってアクセスが許可される。
【0045】図5はまた、実線のパスで異なるプログラ
ムによって所有されたデータ領域へのアクセス試行を示
し、そこでは次のステップが取られる。アプリケーショ
ン・プログラムAは、名前がNで、ブロック402で
データ領域D1へのアクセスを要求する。このリクエス
トは実線パスによりブロック403でSRDIマネージ
109に届く。SRDIマネージャ109は、プログ
ラムAについてそれがロードされたときセーブした名前
検索する。ここでもこの名前はNである。SRDI
マネージャ109は次にデータ領域D1に関連付けられ
た所有者名を調べ、この名前がNであることを決定
る。ブロック405でSRDIマネージャ109は2
つの値を比較し、要求側の名前(N)はデータ所有者
名(N)に等しくないので、アクセスは拒否され、メ
モリは割当てられず、従ってプログラムAはプログラム
Bによって所有されたデータにアクセスできない。この
好適な実施例では比較は同等性を考慮して行われる
が、プログラム名をデータの所有者名と一致させるため
に他の比較も行えること理解されよう。
【0046】持続メモリのデータ領域へのアクセスを許
可することは、上に述べたような割当てにより、
ーカル記述子テーブルによって保護レベル0でSRDI
マネージャ109に割当てられた領域からのデータを、
RAMの他の領域へ実際にコピーすることによって
行えること理解されよう。RAMのこの他の領域
は、レベル0でSRDIマネージャのローカル記述子テ
ーブルによって割当てられ、また要求側アプリケーショ
ン・プログラムに、レベル3でそのローカル記述子テー
ブルを介して割当てられる。
【0047】本発明は、安全領域の持続データを
の安全領域の外部から発した一時的アプリケーション・
プログラムに関連付ける安全な方法を提供する。プログ
ラムがロードされると、その認証性が検証され、これは
自動的にそのプログラムが作成したデータ領域と関連付
けられ、かくして異なるプログラムによって作成された
データ領域にはどのプログラムもアクセスできない。
【図面の簡単な説明】
【図1】本発明を利用できるコンピュータ・システムの
ブロック図である。
【図2】本発明に従った改良されたオペレーティング・
システムのブロック図である。
【図3】本発明に従ったアプリケーション・プログラム
認証プロセスのフローチャートである。
【図4】本発明に従ったアプリケーション・プログラム
のロードと検証のフローチャートである。
【図5】データ領域へのアプリケーション・プログラム
によるアクセスを示すフローチャートである。
【符号の説明】
11 セキュリティ・カード(暗号アダプタ) 13 安全モジュール 27 ハード・ディスク・ドライブ(DASD) 57 暗号処理モジュール 101 オペレーティング・システム・カーネル 103 DESリソース・マネージャ 105 RSAリソース・マネージャ 107 接続メモリ 109 セキュリティ関連データ項目(SRDI)マネ
ージャ 111 プログラム・ローダ
フロントページの続き (56)参考文献 特開 平8−166879(JP,A) 特開 平9−97175(JP,A) 特開 平6−12251(JP,A) 特開 平4−163627(JP,A) 米国特許5724425(US,A) 米国特許5159629(US,A) 米国特許5027397(US,A) 米国特許5144659(US,A) 米国特許5289540(US,A) A.S.タネンバウム,OSの基礎と 応用,株式会社トッパン,1995年11月30 日,pp319−322 「RSA Certificate Services」,RSA Data Security Inc., David 他,”Defendin g Systems Against Viruses throoou Deborah Russel 著, 「COMPUTER SECURITY BASICS(コンピュータ Ed Iacobucci,「OS /2 Programmers Gui de」,1988 「AMD486 Micro Proc essor Software Use s Manual」,Adva ”ActiveXとMicrosof tのインターネット戦略 その2”,D DJ,1996年7月号,翔泳社 岡本 他2名,”我が国におけるコン ピュータウイルスの現状と対策”,情報 処理,1992年7月,Vol. 中村達,”インターネット時代のウイ ルス対策”,日経コンピュータ,1997年 2月3日号,pp.146− ”特集1.ActiveX プログラ ミング”,Microsoft Sys tem Journal,199 (58)調査した分野(Int.Cl.7,DB名) G06F 1/00,9/06

Claims (6)

    (57)【特許請求の範囲】
  1. 【請求項1】プログラムPをコンピュータ内の安全領域
    の外部に格納でき、前記安全領域にロードして前記安全
    領域で実行できるように、前記プログラムPの認証性を
    認証する方法であって、 前記プログラムPの固有名Nを選択するステップと、 前記固有名N及び前記プログラムPを組み合わせて1つ
    の連続オブジェクトPNを作成するステップと、 秘密/公開鍵ペア・アルゴリズムの秘密鍵を使用して前
    記オブジェクトPNからデジタル署名DPNを計算する
    ステップと、 前記デジタル署名DPNを前記オブジェクトPNに添付
    して認証済みプログラムCPを取得するステップと、 前記秘密/公開鍵ペア・アルゴリズムの前記秘密鍵に対
    応する公開鍵を、前記プログラムPがロードされ実行さ
    れるコンピュータ内の各安全領域で利用できるように、
    当該公開鍵を配布するステップと、 を含む、方法。
  2. 【請求項2】オブジェクトPN及び当該オブジェクトに
    添付されたデジタル署名DPNを有する認証済みプログ
    ラムCPを外部記憶域からコンピュータ内の安全領域
    に、前記安全領域で実行するためにロードする方法であ
    って、 前記安全領域内に存在するオペレーティング・システム
    に、前記認証済みプログラムCPのロードを要求するス
    テップと、 前記外部記憶域から前記安全領域内の保護モード・メモ
    リへ前記認証済みプログラムCPを検索するステップ
    と、 前記安全領域内の前記保護モード・メモリで、前記認証
    済みプログラムCPの前記オブジェクトPNから前記デ
    ジタル署名DPNを分離するステップと、 前記デジタル署名DPNを作成するため用いられた秘密
    /公開鍵ペア・アルゴリズムの秘密鍵に対応した公開鍵
    を使用して、前記デジタル署名DPNが前記オブジェク
    トPNの有効な署名であることを検証するステップと、 前記オブジェクトPNの名前NからプログラムPを分離
    するステップと、 前記プログラムPを実行するため前記安全領域内のメモ
    リにロードするステップと、 前記安全領域内のメモリに格納されたデータ・ファイル
    に前記プログラムPがアクセスできるようにする際に使
    用するために、前記オペレーティング・システムの保護
    されたメモリ内に前記プログラムPの名前Nを格納する
    ステップと、 を含む、方法。
  3. 【請求項3】前記オペレーティング・システムにて、デ
    ータ・オブジェクトにアクセスする前記プログラムPに
    よるリクエストを受信するステップと、 前記オペレーティング・システムの保護されたメモリか
    ら前記プログラムPの名前Nを検索するステップと、 前記データ・オブジェクトから所有者名nを検索するス
    テップと、 前記名前Nと前記所有者名nを比較するステップと、 前記名前Nと前記所有者名nが一致したときは、前記プ
    ログラムPから前記データ・オブジェクトへのアクセス
    を許可するステップと、 前記名前Nと前記所有者名nが一致しないときには、前
    記プログラムPから前記データ・オブジェクトへのアク
    セスを拒否するステップと、 を含む、請求項記載の方法。
  4. 【請求項4】プログラムPをコンピュータ内の安全領域
    の外部に格納でき、前記安全領域にロードして前記安全
    領域で実行できるように、前記プログラムPの認証性を
    認証する装置であって、 前記プログラムPの固有名Nを選択する手段と、 前記固有名N及び前記プログラムPを組み合わせて1つ
    の連続オブジェクトPNを作成する手段と、 秘密/公開鍵ペア・アルゴリズムの秘密鍵を使用して前
    記オブジェクトPNからデジタル署名DPNを計算する
    手段と、 前記デジタル署名DPNを前記オブジェクトPNに添付
    して認証済みプログラムCPを取得する手段と、 前記秘密/公開鍵ペア・アルゴリズムの前記秘密鍵に対
    応する公開鍵を、前記プログラムPがロードされ実行さ
    れるコンピュータ内の各安全領域で利用できるように、
    当該公開鍵を配布する手段と、 を含む、装置。
  5. 【請求項5】オブジェクトPN及び当該オブジェクトに
    添付されたデジタル署名DPNを有する認証済みプログ
    ラムCPを外部記憶域からコンピュータ内の安全領域
    に、前記安全領域で実行するためにロードする装置であ
    って、 前記安全領域内に存在するオペレーティング・システム
    に、前記認証済みプログラムCPのロードを要求する手
    段と、 前記外部記憶域から前記安全領域内の保護モード・メモ
    リへ前記認証済みプログラムCPを検索する手段と、 前記安全領域内の前記保護モード・メモリで前記認証済
    みプログラムCPの前記オブジェクトPNから前記デジ
    タル署名DPNを分離する手段と、 前記デジタル署名DPNを作成するために用いられた秘
    密/公開鍵ペア・アルゴリズムの秘密鍵に対応した公開
    鍵を使用して、前記デジタル署名DPNが前記オブジェ
    クトPNの有効な署名であることを検証する手段と、 前記オブジェクトPNの名前NからプログラムPを分離
    する手段と、 前記プログラムPを実行するため前記安全領域内のメモ
    リにロードする手段と、 前記安全領域内のメモリに格納されたデータ・ファイル
    に前記プログラムPからアクセスできるようにする際に
    使用するために、前記オペレーティング・システムの保
    護されたメモリ内に前記プログラムPの名前Nを格納す
    る手段と、 を含む、装置。
  6. 【請求項6】前記オペレーティング・システムにて、デ
    ータ・オブジェクトへアクセスする前記プログラムPに
    よるリクエストを受信する手段と、 前記オペレーティング・システムの保護されたメモリか
    ら前記プログラムPの名前Nを検索する手段と、 前記データ・オブジェクトから所有者名nを検索する手
    段と、 前記名前Nを前記所有者名nと比較する手段と、 前記名前Nと前記所有者名nが一致するときは、前記プ
    ログラムPによる前記データ・オブジェクトへのアクセ
    スを許可し、前記名前Nと前記所有者名nが一致しない
    ときは、前記プログラムPによる前記データ・オブジェ
    クトへのアクセスを拒否する手段と、 を含む、請求項記載の装置。
JP16473298A 1997-06-20 1998-06-12 安全な記憶領域内のアプリケーション・データを保護する方法及び装置 Expired - Fee Related JP3363379B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/877776 1997-06-20
US08/877,776 US6175924B1 (en) 1997-06-20 1997-06-20 Method and apparatus for protecting application data in secure storage areas

Publications (2)

Publication Number Publication Date
JPH1124919A JPH1124919A (ja) 1999-01-29
JP3363379B2 true JP3363379B2 (ja) 2003-01-08

Family

ID=25370695

Family Applications (1)

Application Number Title Priority Date Filing Date
JP16473298A Expired - Fee Related JP3363379B2 (ja) 1997-06-20 1998-06-12 安全な記憶領域内のアプリケーション・データを保護する方法及び装置

Country Status (6)

Country Link
US (1) US6175924B1 (ja)
EP (1) EP0886202B1 (ja)
JP (1) JP3363379B2 (ja)
KR (1) KR100309535B1 (ja)
CN (1) CN1097772C (ja)
DE (1) DE69815599T2 (ja)

Families Citing this family (129)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1997036246A1 (fr) * 1996-03-22 1997-10-02 Hitachi, Ltd. Procede de gestion de reseau informatique et dispositif correspondant
US7058822B2 (en) 2000-03-30 2006-06-06 Finjan Software, Ltd. Malicious mobile code runtime monitoring system and methods
US9219755B2 (en) 1996-11-08 2015-12-22 Finjan, Inc. 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
JPH11296423A (ja) * 1998-04-06 1999-10-29 Matsushita Electric Ind Co Ltd ファイル管理システム、ファイル管理装置および媒体
US7711714B2 (en) * 1998-09-22 2010-05-04 Hitachi, Ltd. Method and a device for sterilizing downloaded files
US6321238B1 (en) * 1998-12-28 2001-11-20 Oracle Corporation Hybrid shared nothing/shared disk database system
FI990461A0 (fi) 1999-03-03 1999-03-03 Nokia Mobile Phones Ltd Menetelmä ohjelmiston lataamiseksi palvelimelta päätelaitteeseen
US6565443B1 (en) * 1999-09-14 2003-05-20 Innovative Gaming Corporation System and method for verifying the contents of a mass storage device before granting access to computer readable data stored on the device
US6748592B1 (en) * 2000-02-14 2004-06-08 Xoucin, Inc. Method and apparatus for protectively operating a data/information processing device
JP2001243079A (ja) * 2000-03-02 2001-09-07 Omron Corp 情報処理システム
US6957332B1 (en) * 2000-03-31 2005-10-18 Intel Corporation Managing a secure platform using a hierarchical executive architecture in isolated execution mode
US6934817B2 (en) * 2000-03-31 2005-08-23 Intel Corporation Controlling access to multiple memory zones in an isolated execution environment
US7603721B2 (en) * 2000-05-09 2009-10-13 Microsoft Corporation Restricted software and hardware usage on a computer
FR2810138B1 (fr) * 2000-06-08 2005-02-11 Bull Cp8 Procede de stockage securise d'une donnee sensible dans une memoire d'un systeme embarque a puce electronique, notamment d'une carte a puce, et systeme embarque mettant en oeuvre le procede
US6976162B1 (en) * 2000-06-28 2005-12-13 Intel Corporation Platform and method for establishing provable identities while maintaining privacy
US7793111B1 (en) 2000-09-28 2010-09-07 Intel Corporation Mechanism to handle events in a machine with isolated execution
KR20020034862A (ko) * 2000-11-02 2002-05-09 권문상 컴퓨터의 응용프로그램의 비밀값 제어방법
US6988196B2 (en) * 2000-12-22 2006-01-17 Lenovo (Singapore) Pte Ltd Computer system and method for generating a digital certificate
US7035963B2 (en) * 2000-12-27 2006-04-25 Intel Corporation Method for resolving address space conflicts between a virtual machine monitor and a guest operating system
US6907600B2 (en) 2000-12-27 2005-06-14 Intel Corporation Virtual translation lookaside buffer
US7818808B1 (en) 2000-12-27 2010-10-19 Intel Corporation Processor mode for limiting the operation of guest software running on a virtual machine supported by a virtual machine monitor
US7225441B2 (en) * 2000-12-27 2007-05-29 Intel Corporation Mechanism for providing power management through virtualization
JP2002208922A (ja) * 2001-01-12 2002-07-26 Ntt Docomo Inc 暗号化装置および復号装置ならびに認証情報付与装置、暗号化方法、復号方法、認証情報付与方法
US20020133702A1 (en) * 2001-03-16 2002-09-19 Stevens Curtis E. Methods of granting access to a protected area
US7272831B2 (en) * 2001-03-30 2007-09-18 Intel Corporation Method and apparatus for constructing host processor soft devices independent of the host processor operating system
EP1388061A4 (en) * 2001-05-17 2010-11-03 Decru Inc ENCRYPTION BASED SAFETY SYSTEM FOR NETWORK STORAGE
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
US7257844B2 (en) 2001-07-31 2007-08-14 Marvell International Ltd. System and method for enhanced piracy protection in a wireless personal communication device
US7463739B2 (en) * 2001-08-02 2008-12-09 Safenet, Inc. Method and system providing improved security for the transfer of root keys
US7191440B2 (en) * 2001-08-15 2007-03-13 Intel Corporation Tracking operating system process and thread execution and virtual machine execution in hardware or in a virtual machine monitor
US20030059049A1 (en) * 2001-09-24 2003-03-27 Mihm Thomas J. Method and apparatus for secure mobile transaction
US7103529B2 (en) * 2001-09-27 2006-09-05 Intel Corporation Method for providing system integrity and legacy environment emulation
US7024555B2 (en) 2001-11-01 2006-04-04 Intel Corporation Apparatus and method for unilaterally loading a secure operating system within a multiprocessor environment
US7137004B2 (en) * 2001-11-16 2006-11-14 Microsoft Corporation Manifest-based trusted agent management in a trusted operating system environment
US20030105830A1 (en) * 2001-12-03 2003-06-05 Duc Pham Scalable network media access controller and methods
US20030126454A1 (en) * 2001-12-28 2003-07-03 Glew Andrew F. Authenticated code method and apparatus
JP2003216448A (ja) * 2002-01-17 2003-07-31 Ntt Docomo Inc 移動通信端末及びデータ送信方法
US20030154372A1 (en) * 2002-02-12 2003-08-14 Barszcz Chester J. Secure remote data acquisition method and system
US7631196B2 (en) * 2002-02-25 2009-12-08 Intel Corporation Method and apparatus for loading a trustable operating system
US7124273B2 (en) 2002-02-25 2006-10-17 Intel Corporation Method and apparatus for translating guest physical addresses in a virtual machine environment
JP2003271457A (ja) * 2002-03-14 2003-09-26 Sanyo Electric Co Ltd データ記憶装置
US7069442B2 (en) * 2002-03-29 2006-06-27 Intel Corporation System and method for execution of a secured environment initialization instruction
US7127548B2 (en) * 2002-04-16 2006-10-24 Intel Corporation Control register access virtualization performance improvement in the virtual-machine architecture
US7139890B2 (en) 2002-04-30 2006-11-21 Intel Corporation Methods and arrangements to interface memory
US8335915B2 (en) * 2002-05-14 2012-12-18 Netapp, Inc. Encryption based security system for network storage
US6820177B2 (en) 2002-06-12 2004-11-16 Intel Corporation Protected configuration space in a protected environment
US7142674B2 (en) * 2002-06-18 2006-11-28 Intel Corporation Method of confirming a secure key exchange
US6996748B2 (en) * 2002-06-29 2006-02-07 Intel Corporation Handling faults associated with operation of guest software in the virtual-machine architecture
US7124327B2 (en) * 2002-06-29 2006-10-17 Intel Corporation Control over faults occurring during the operation of guest software in the virtual-machine architecture
US7334124B2 (en) * 2002-07-22 2008-02-19 Vormetric, Inc. Logical access block processing protocol for transparent secure file storage
US6678828B1 (en) * 2002-07-22 2004-01-13 Vormetric, Inc. Secure network file access control system
US6931530B2 (en) 2002-07-22 2005-08-16 Vormetric, Inc. Secure network file access controller implementing access control and auditing
US7509683B2 (en) * 2002-08-26 2009-03-24 Hewlett-Packard Development Company, L.P. System and method for authenticating digital content
US7143288B2 (en) * 2002-10-16 2006-11-28 Vormetric, Inc. Secure file system server architecture and methods
US7165181B2 (en) * 2002-11-27 2007-01-16 Intel Corporation System and method for establishing trust without revealing identity
US20040117532A1 (en) * 2002-12-11 2004-06-17 Bennett Steven M. Mechanism for controlling external interrupts in a virtual machine system
US7073042B2 (en) * 2002-12-12 2006-07-04 Intel Corporation Reclaiming existing fields in address translation data structures to extend control over memory accesses
US20040117318A1 (en) * 2002-12-16 2004-06-17 Grawrock David W. Portable token controlling trusted environment launch
US20040128345A1 (en) * 2002-12-27 2004-07-01 Robinson Scott H. Dynamic service registry
US7900017B2 (en) 2002-12-27 2011-03-01 Intel Corporation Mechanism for remapping post virtual machine memory pages
US20040128528A1 (en) * 2002-12-31 2004-07-01 Poisner David I. Trusted real time clock
US7076802B2 (en) 2002-12-31 2006-07-11 Intel Corporation Trusted system clock
JP3880933B2 (ja) * 2003-01-21 2007-02-14 株式会社東芝 耐タンパマイクロプロセッサ及びキャッシュメモリ搭載プロセッサによるデータアクセス制御方法
JP4338989B2 (ja) * 2003-02-20 2009-10-07 パナソニック株式会社 メモリデバイス
DE10331874A1 (de) * 2003-07-14 2005-03-03 Robert Bosch Gmbh Fernprogrammieren eines programmgesteuerten Geräts
US20050044292A1 (en) * 2003-08-19 2005-02-24 Mckeen Francis X. Method and apparatus to retain system control when a buffer overflow attack occurs
US8079034B2 (en) * 2003-09-15 2011-12-13 Intel Corporation Optimizing processor-managed resources based on the behavior of a virtual machine monitor
US7424709B2 (en) * 2003-09-15 2008-09-09 Intel Corporation Use of multiple virtual machine monitors to handle privileged events
US7739521B2 (en) * 2003-09-18 2010-06-15 Intel Corporation Method of obscuring cryptographic computations
US7610611B2 (en) * 2003-09-19 2009-10-27 Moran Douglas R Prioritized address decoder
US7177967B2 (en) * 2003-09-30 2007-02-13 Intel Corporation Chipset support for managing hardware interrupts in a virtual machine system
US20050080934A1 (en) 2003-09-30 2005-04-14 Cota-Robles Erik C. Invalidating translation lookaside buffer entries in a virtual machine (VM) system
US7237051B2 (en) * 2003-09-30 2007-06-26 Intel Corporation Mechanism to control hardware interrupt acknowledgement in a virtual machine system
US20050086471A1 (en) * 2003-10-20 2005-04-21 Spencer Andrew M. Removable information storage device that includes a master encryption key and encryption keys
US8352726B2 (en) * 2003-11-07 2013-01-08 Netapp, Inc. Data storage and/or retrieval
US7636844B2 (en) * 2003-11-17 2009-12-22 Intel Corporation Method and system to provide a trusted channel within a computer system for a SIM device
JP4578088B2 (ja) * 2003-11-20 2010-11-10 大日本印刷株式会社 情報処理装置、情報処理システム及びプログラム
US8156343B2 (en) 2003-11-26 2012-04-10 Intel Corporation Accessing private data about the state of a data processing machine from storage that is publicly accessible
EP1538509A1 (fr) * 2003-12-04 2005-06-08 Axalto S.A. Procédé de sécurisation de l'éxécution d'un programme contre des attaques par rayonnement
US8037314B2 (en) 2003-12-22 2011-10-11 Intel Corporation Replacing blinded authentication authority
US20050152539A1 (en) * 2004-01-12 2005-07-14 Brickell Ernie F. Method of protecting cryptographic operations from side channel attacks
JP4335707B2 (ja) * 2004-02-06 2009-09-30 Necエレクトロニクス株式会社 プログラム改竄検出装置、及びプログラム改竄検出プログラムおよびプログラム改竄検出方法
US7802085B2 (en) 2004-02-18 2010-09-21 Intel Corporation Apparatus and method for distributing private keys to an entity with minimal secret, unique information
US20050216920A1 (en) * 2004-03-24 2005-09-29 Vijay Tewari Use of a virtual machine to emulate a hardware device
US7356735B2 (en) * 2004-03-30 2008-04-08 Intel Corporation Providing support for single stepping a virtual machine in a virtual machine environment
US8024730B2 (en) 2004-03-31 2011-09-20 Intel Corporation Switching between protected mode environments utilizing virtual machine functionality
US7620949B2 (en) 2004-03-31 2009-11-17 Intel Corporation Method and apparatus for facilitating recognition of an open event window during operation of guest software in a virtual machine environment
US7305592B2 (en) * 2004-06-30 2007-12-04 Intel Corporation Support for nested fault in a virtual machine environment
CN1324471C (zh) * 2004-08-18 2007-07-04 中兴通讯股份有限公司 对指定进程私有数据区和堆栈区实施保护的方法
US7802110B2 (en) * 2004-08-25 2010-09-21 Microsoft Corporation System and method for secure execution of program code
US7516495B2 (en) * 2004-09-10 2009-04-07 Microsoft Corporation Hardware-based software authenticator
US7840962B2 (en) * 2004-09-30 2010-11-23 Intel Corporation System and method for controlling switching between VMM and VM using enabling value of VMM timer indicator and VMM timer value having a specified time
US8146078B2 (en) 2004-10-29 2012-03-27 Intel Corporation Timer offsetting mechanism in a virtual machine environment
KR100589541B1 (ko) * 2004-11-25 2006-06-14 소프트캠프(주) 접근이 통제되는 가상디스크들 간의 온라인을 통한데이터의 보안전송시스템과 이를 통한 보안전송방법
US8924728B2 (en) * 2004-11-30 2014-12-30 Intel Corporation Apparatus and method for establishing a secure session with a device without exposing privacy-sensitive information
US8533777B2 (en) 2004-12-29 2013-09-10 Intel Corporation Mechanism to determine trust of out-of-band management agents
US7395405B2 (en) * 2005-01-28 2008-07-01 Intel Corporation Method and apparatus for supporting address translation in a virtual machine environment
US20060236100A1 (en) * 2005-04-19 2006-10-19 Guruprasad Baskaran System and method for enhanced layer of security to protect a file system from malicious programs
US8898452B2 (en) * 2005-09-08 2014-11-25 Netapp, Inc. Protocol translation
US7617541B2 (en) * 2005-09-09 2009-11-10 Netapp, Inc. Method and/or system to authorize access to stored data
US7809957B2 (en) 2005-09-29 2010-10-05 Intel Corporation Trusted platform module for generating sealed data
US7657754B2 (en) * 2005-12-08 2010-02-02 Agere Systems Inc Methods and apparatus for the secure handling of data in a microcontroller
US9177176B2 (en) * 2006-02-27 2015-11-03 Broadcom Corporation Method and system for secure system-on-a-chip architecture for multimedia data processing
US8014530B2 (en) 2006-03-22 2011-09-06 Intel Corporation Method and apparatus for authenticated, recoverable key distribution with no database secrets
US8429724B2 (en) 2006-04-25 2013-04-23 Seagate Technology Llc Versatile access control system
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
JP4902294B2 (ja) * 2006-08-18 2012-03-21 クラリオン株式会社 カーナビゲーション装置、並びに、データベース管理方法およびプログラム
US8190905B1 (en) 2006-09-29 2012-05-29 Netapp, Inc. Authorizing administrative operations using a split knowledge protocol
US8042155B1 (en) 2006-09-29 2011-10-18 Netapp, Inc. System and method for generating a single use password based on a challenge/response protocol
US8245050B1 (en) 2006-09-29 2012-08-14 Netapp, Inc. System and method for initial key establishment using a split knowledge protocol
US8607046B1 (en) 2007-04-23 2013-12-10 Netapp, Inc. System and method for signing a message to provide one-time approval to a plurality of parties
US8611542B1 (en) 2007-04-26 2013-12-17 Netapp, Inc. Peer to peer key synchronization
US8824686B1 (en) 2007-04-27 2014-09-02 Netapp, Inc. Cluster key synchronization
KR20080104591A (ko) * 2007-05-28 2008-12-03 삼성전자주식회사 메모리 보호 방법 및 장치
US8196182B2 (en) 2007-08-24 2012-06-05 Netapp, Inc. Distributed management of crypto module white lists
US9774445B1 (en) 2007-09-04 2017-09-26 Netapp, Inc. Host based rekeying
FR2926381A1 (fr) 2008-01-11 2009-07-17 Sagem Securite Sa Methode de transfert securise de donnees
EP2256658A1 (en) * 2009-05-26 2010-12-01 Gemalto SA Method of executing an application embedded in a portable electronic device
KR20120067136A (ko) * 2010-12-15 2012-06-25 삼성전자주식회사 전자 장치 및 이에 적용되는 파일 삭제 방지 방법
EP2618266A4 (en) * 2011-11-04 2015-08-05 Sk Planet Co Ltd PROCESS FOR COOPERATION BETWEEN A SAFE REGION AND AN UNCERTAIN REGION, METHOD, SERVER AND DEVICE FOR CONTROLLING THE DOWNLOAD OF SAFE APPLICATIONS AND CONTROL SYSTEM FOR USING THIS METHOD
US9069955B2 (en) 2013-04-30 2015-06-30 International Business Machines Corporation File system level data protection during potential security breach
JP2014235326A (ja) * 2013-06-03 2014-12-15 富士通セミコンダクター株式会社 システム、情報処理装置、セキュアモジュール、および検証方法
CN107070665B (zh) * 2017-04-28 2018-06-12 北京海泰方圆科技股份有限公司 一种数字签名的方法及装置
CN109190411A (zh) * 2018-07-25 2019-01-11 百富计算机技术(深圳)有限公司 一种操作系统的主动安全防护方法、系统及终端设备
CN110909391A (zh) * 2019-12-04 2020-03-24 四川虹微技术有限公司 一种基于risc-v的安全存储方法
CN110929304A (zh) * 2019-12-04 2020-03-27 四川虹微技术有限公司 一种基于risc-v的内存保护方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5027397A (en) 1989-09-12 1991-06-25 International Business Machines Corporation Data protection by detection of intrusion into electronic assemblies
US5144659A (en) 1989-04-19 1992-09-01 Richard P. Jones Computer file protection system
US5724425A (en) 1994-06-10 1998-03-03 Sun Microsystems, Inc. Method and apparatus for enhancing software security and distributing software

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4328542A (en) * 1979-11-07 1982-05-04 The Boeing Company Secure implementation of transition machine computer
US5148461A (en) * 1988-01-06 1992-09-15 Jupiter Toy Co. Circuits responsive to and controlling charged particles
US4868877A (en) * 1988-02-12 1989-09-19 Fischer Addison M Public key/signature cryptosystem with enhanced digital signature certification
US5048085A (en) * 1989-10-06 1991-09-10 International Business Machines Corporation Transaction system security method and apparatus
JP2886969B2 (ja) * 1990-10-29 1999-04-26 株式会社日立製作所 プログラム変換方法
US5182770A (en) * 1991-04-19 1993-01-26 Geza Medveczky System and apparatus for protecting computer software
US5412717A (en) * 1992-05-15 1995-05-02 Fischer; Addison M. Computer system security method and apparatus having program authorization information data structures
JPH0612251A (ja) * 1992-06-24 1994-01-21 Nec Shizuoka Ltd プログラム起動装置
JPH0628264A (ja) * 1992-07-10 1994-02-04 Mitsubishi Electric Corp 半導体記憶装置及びそのアクセス方法
US5412718A (en) * 1993-09-13 1995-05-02 Institute Of Systems Science Method for utilizing medium nonuniformities to minimize unauthorized duplication of digital information
US5526428A (en) * 1993-12-29 1996-06-11 International Business Machines Corporation Access control apparatus and method
US5579393A (en) * 1994-06-21 1996-11-26 Escan, Inc. System and method for secure medical and dental record interchange
CA2187038C (en) 1995-02-08 2000-08-08 Hidetaka Owaki Information processing apparatus with security checking function
US5604800A (en) * 1995-02-13 1997-02-18 Eta Technologies Corporation Personal access management system
US5727061A (en) * 1995-02-13 1998-03-10 Eta Technologies Corporation Personal access management systems
JP3624971B2 (ja) * 1995-10-02 2005-03-02 松下電器産業株式会社 ソフトウエア利用制御方法
US5692047A (en) 1995-12-08 1997-11-25 Sun Microsystems, Inc. System and method for executing verifiable programs with facility for using non-verifiable programs from trusted sources
JP3580333B2 (ja) * 1996-04-10 2004-10-20 日本電信電話株式会社 暗号認証機能の装備方法
JPH09288503A (ja) * 1996-04-22 1997-11-04 Fuji Electric Co Ltd Plc用サポートシステム導入方法
US5778070A (en) * 1996-06-28 1998-07-07 Intel Corporation Method and apparatus for protecting flash memory

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5144659A (en) 1989-04-19 1992-09-01 Richard P. Jones Computer file protection system
US5289540A (en) 1989-04-19 1994-02-22 Richard P. Jones Computer file protection system
US5027397A (en) 1989-09-12 1991-06-25 International Business Machines Corporation Data protection by detection of intrusion into electronic assemblies
US5159629A (en) 1989-09-12 1992-10-27 International Business Machines Corp. Data protection by detection of intrusion into electronic assemblies
US5724425A (en) 1994-06-10 1998-03-03 Sun Microsystems, Inc. Method and apparatus for enhancing software security and distributing software

Non-Patent Citations (10)

* Cited by examiner, † Cited by third party
Title
"ActiveXとMicrosoftのインターネット戦略 その2",DDJ,1996年7月号,翔泳社
"特集1.ActiveX プログラミング",Microsoft System Journal,199
「AMD486 Micro Processor Software Uses Manual」,Adva
「RSA Certificate Services」,RSA Data Security Inc.,
A.S.タネンバウム,OSの基礎と応用,株式会社トッパン,1995年11月30日,pp319−322
David 他,"Defending Systems Against Viruses throoou
Deborah Russel 著,「COMPUTER SECURITY BASICS(コンピュータ
Ed Iacobucci,「OS/2 Programmers Guide」,1988
中村達,"インターネット時代のウイルス対策",日経コンピュータ,1997年2月3日号,pp.146−
岡本 他2名,"我が国におけるコンピュータウイルスの現状と対策",情報処理,1992年7月,Vol.

Also Published As

Publication number Publication date
CN1097772C (zh) 2003-01-01
KR100309535B1 (ko) 2001-11-15
JPH1124919A (ja) 1999-01-29
EP0886202B1 (en) 2003-06-18
KR19990006432A (ko) 1999-01-25
EP0886202A2 (en) 1998-12-23
US6175924B1 (en) 2001-01-16
DE69815599D1 (de) 2003-07-24
DE69815599T2 (de) 2004-05-13
EP0886202A3 (en) 1999-11-10
CN1203394A (zh) 1998-12-30

Similar Documents

Publication Publication Date Title
JP3363379B2 (ja) 安全な記憶領域内のアプリケーション・データを保護する方法及び装置
US9665708B2 (en) Secure system for allowing the execution of authorized computer program code
US7313705B2 (en) Implementation of a secure computing environment by using a secure bootloader, shadow memory, and protected memory
US8213618B2 (en) Protecting content on client platforms
JP4498735B2 (ja) オペレーティングシステムおよびカスタマイズされた制御プログラムとインタフェースする安全なマシンプラットフォーム
US5949882A (en) Method and apparatus for allowing access to secured computer resources by utilzing a password and an external encryption algorithm
JP2002318719A (ja) 高信頼計算機システム
JP2010205270A (ja) 取り外し可能な媒体に格納された実行可能なコードにタンパーエビデント性を提供する装置

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees