JPH06103058A - プログラム権限情報データ構造 - Google Patents
プログラム権限情報データ構造Info
- Publication number
- JPH06103058A JPH06103058A JP5113157A JP11315793A JPH06103058A JP H06103058 A JPH06103058 A JP H06103058A JP 5113157 A JP5113157 A JP 5113157A JP 11315793 A JP11315793 A JP 11315793A JP H06103058 A JPH06103058 A JP H06103058A
- Authority
- JP
- Japan
- Prior art keywords
- program
- storing
- data structure
- authorization
- authority
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
- G06F21/54—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by adding security routines or objects to programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2211/00—Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
- G06F2211/007—Encryption, En-/decode, En-/decipher, En-/decypher, Scramble, (De-)compress
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing 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/2141—Access rights, e.g. capability lists, access control lists, access tables, access matrices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing 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/2145—Inheriting rights or properties, e.g., propagation of permissions or restrictions within a hierarchy
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing 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/2149—Restricted operating environment
Abstract
命令を含む、複雑なデータ構造、たとえば、オブジェク
トを伴って動作する場合でさえ、信頼できるセキュリテ
ィを提供する。 【構成】 複数のプログラムを実行するための処理手段
(2)と、プログラム命令およびデータを記憶するため
のメモリ手段(7)とを有するコンピュータシステムに
おいて、プログラム権限情報データ構造は、複数の権限
エントリを記憶するための手段を含み、そのエントリは
関連のプログラムが実行することを許容される動作を資
格付け、少なくとも1つのセグメントにその権限エント
リを少なくとも1つのプログラムと関連させるためのデ
ータを記憶するための手段をさらに含む。
Description
したセキュリティおよび保護を与えるための方法および
装置に関する。より特定的に、この発明はユーザ間で送
信されるコンピュータプログラム、特に出所が不明のプ
ログラムを処理する一方で、向上されたコンピュータシ
ステムセキュリティを与えるための方法および装置に関
する。
潜在的に破壊的な結果は広く一般に知られてきた。コン
ピュータウィルスは、実行された場合に、ユーザが予期
した動作だけではなく、プログラムに組込まれた予期し
ない、しばしば破壊的な動作の実行を結果としてもたら
すコンピュータプログラムという視点から見られるかも
しれない。コンピュータウィルスはまた、実行された場
合に、そのコードの一部を取出して、そのようなコード
を他のプログラムに置いてそれによって他のプログラム
を感染させるプログラムという視点から見られるかもし
れない。ウィルスはシステム内の他のプログラムを変更
し、システムに様々なトラップを設定し、様々なコント
ロールプログラムを変え、システムのファイルを消去ま
たはそうでない場合には変更などするかもしれない。
期しない方法で損なう、調べるまたは傷をつける望まし
くない副作用を有するように典型的に悪意をもって構成
される。コンピュータウィルスに伴う問題は、ウィルス
制御プログラムがユーザがある必要なデータにアクセス
した場合に「暗黙のうちに」典型的に実行され、その結
果ユーザは破壊的なプログラムが実行されていることに
気づきさえしないという事実によって、しばしばよりひ
どいものになる。
よびシステムに基づいて実行するが実際のコンピュータ
ウィルスキャリアではないプログラムからの、保護を提
供する。この点に関して、プログラムはコンピュータシ
ステムおよび/または関連データに意図しない逆影響を
有し得る。たとえば、実行プログラムはあるユーザデー
タが第三者に送られることを不注意に引起こし得る。こ
のようなプログラムはプログラミングエラーの結果であ
ったかもしれないし、または特定の問題を生じるように
故意に設計されたものであるかもしれない。
ュータユーザから保護するように典型的に設計される。
このようなシステムでは、ユーザはしばしば様々な権限
を割当てられ、その後関連権限に基づいてプログラムを
実行することが可能である。もしユーザの割当てられた
権限を超えるプログラムが実行されていれば、そのよう
なシステムはそのプログラムの実行を停止させるであろ
う。このような先行技術のシステムは、コンピュータウ
ィルスなどからコンピュータユーザを適切に保護しな
い。
ムによって変更されることから保護するセキュリティシ
ステムがある。しかしながら、このようなシステムはコ
ンピュータユーザをユーザ自身のファイルを実行し変更
するプログラムから典型的に保護しない。
身のプログラム命令を含む、複雑なデータ構造、たとえ
ば、オブジェクトを伴って動作する場合でさえ、信頼で
きるセキュリティを提供することに向けられる。この発
明はまたシステムプログラムまたはデータをコンピュー
タウィルスまたはできの悪いプログラミングの潜在的に
壊滅的な結果にさらすことなく、より従来的なプログラ
ム、たとえばコンピュータ掲示板からの出所の不確かな
ものをも処理する場合に、向上したセキュリティを提供
する。
されようとしているプログラムの能力を、予め規定され
た資源の使用(たとえばデータファイル、データ書込み
能力など)に制限するシステムモニタを含む独自の動作
システム設計を利用する。このシステムモニタはどのプ
ログラムが実行を許可され、および/またはどのプログ
ラムが実行から除外されるかを規定する1組の権限を含
むデータ構造を構築する。
権限および/または制限の組をここで「プログラム権限
情報」(または「PAI」)と呼ぶ。一旦規定される
と、プログラム権限情報はその後実行されるべき各プロ
グラムと関連して、それによってプログラムが利用する
ことを許可される資源および機能のタイプを正確に表わ
す。特定のプログラムに関連するPAIは、コンピュー
タシステムオーナ/ユーザによって、またはそのコンピ
ュータシステムオーナ/ユーザが絶対的に信用する誰か
によって割当てられ得る。
囲を規定し、および/またはプログラムが実行できない
動作を規定する。このプログラムは権限を与えられたも
のにアクセスすることを許可されるが、それ以外には何
もアクセスすることができない。この態様で、プログラ
ムはプログラム能力制限「セーフティボックス」に置か
れているものとみなされ得る。この「セーフティボック
ス」はシステムモニタがプログラムを実行するときはい
つでも、そのプログラムのためのPAIが同様にロード
されかつモニタされるように、その後プログラムと関連
づけられる。プログラムが機能を実行しようとする、ま
たは資源にアクセスしようとする場合には、関連するP
AIがその動作が規定されたプログラム制限内であるこ
とを確認するためにモニタされる。もしプログラムが権
限を付与された制限の範囲を超えて何かを実行しようと
すれば、プログラム実行は停止される。
意のプログラムからユーザを有利に保護する。この発明
は、プログラムがコンピュータ掲示板または不明の信用
性を有する他のユーザのような広い範囲の異なった信頼
できない場所から得られる、現在のデータ処理実務に鑑
みて特に有利である。
自体(またはプログラムのハッシュ)とともに、ユーザ
が信用するあるエンティティによってディジタル署名さ
れ得ることを熟慮する。ディジタル署名がPAIを有効
にするために使用された場合、前述のPAIモニタリン
グはPAI上のディジタル署名を確証して、それがユー
ザによって信用されるエンティティに属するものである
こと、それが適切に権限を付与されていること、および
それならびにその関連プログラムが手を加えられなかっ
たことを確実にすることを含む。
77号および第 5,005,200号に記載されたような階層信用
ディジタル署名証明システムの使用を熟慮するものであ
り、これらの特許は引用によりここに援用される。これ
らの特許の教示に従って、単一のハイレベル権限付与エ
ンティティが安全に権限を委任し、多数の他のエンティ
ティの間でプログラムに権限を付与し、かつ任意のレベ
ルで共同署名を要求することが可能であり、それによっ
て権限付与主体(agent)自身によるエラー、不正の可能
性を禁止する。これは単一のソフトウェア認証グループ
が大人口にサービスすることを可能にし、それによって
各ユーザに対する1人当たりの費用を大幅に削減する。
て、プログラムはデータオブジェクトの一部であっても
よく、それは高級制御言語で書かれ、この高級言語を実
行する標準化されたインタプリタプログラムによって実
行される。この場合、インタプリタのタスクの一部は、
高級論理で遇隅される機能は実際は許可されることを確
証することである。もしこのようなタスクが許可されな
ければ、インタプリタはそのようなタスクを実行する権
限が付与されていないプログラムの実行を抑制する。
たとえば、この発明は隠されたプログラムまたはウィル
スがシステムに導入されることが不可能になるように、
プログラムに制限を結びつける役割を有利に果たす。ユ
ーザは、1つの機能のために意図されたプログラムが、
(コンピュータウィルスの広がりをもたらすように)偶
然または故意に渡っていき、他の関連のないまたは重要
な資源に影響を及ぼすことがないことを確実にするため
に、実行され得る機能に関する詳細を特定することによ
って保護される。ここに記載された態様におけるプログ
ラム権限情報の使用によって、ユーザは自分が実行する
プログラムから自分自身を保護することが可能である。
面を理解する必要性を伴わずに、プログラムの範囲を効
果的に制限することができる。管理人はその意図した機
能および定義に基づいてプログラムに権限を付与しかつ
制限することが可能であり、それによってプログラム欠
陥の危険を軽減させる。この態様で、ソフトウェア「時
限爆弾」またはウィルスを植えつけようとするかもしれ
ない乱心したまたはいたずら半分のプログラマーの危険
は制限され得る。
確証することを可能にする。このように、プログラム
は、すべてのメンバーが共通の高級署名権限を信用して
いる大人口の間で、自由にかつ安全に交換可能である。
プログラム権限情報が広い範囲の制限を関連づけて、そ
れによって潜在的に有益なプログラムが安全に使用され
ることを許容した後、たとえ公式の信用証明を持ってい
なくても、使用することが可能である。
よび機能が制御されることを可能にする。たとえば、制
御され得るいくつかの有用な資源/機能は、プログラム
をあるファイルまたはデータセットに制限する能力、電
子メールを経てユーザの支配領域の範囲の外にいる誰か
にデータを送信する能力、ディジタル署名を作るまたは
要求するプログラムの能力、あるセキュリティクラスの
プログラムへのアクセスを制限する能力などを含む。
名動作を実行することができるかどうかを制限し、かつ
どのようにそのような署名が実行されるべきかを制限す
る能力を提供する。多くの場合、プログラムがユーザか
らのディジタル署名を求めることに巻込まれた場合、そ
の署名が与えられようとしているデータをユーザに承知
させるかどうかはプログラム次第である。電子データ交
換(EDI)トランザクションの場合にそのようであ
る。この場合、いたずら半分のアプリケーションプログ
ラムが、ユーザに1組のデータを見せ、しかも他の組の
データを署名のために送ることは考えられることであ
る。この場合、そのプログラムはユーザを騙してユーザ
が信じるように仕向けられたものとは完全に異なった情
報にディジタル署名させたことになる。この発明はユー
ザをディジタル署名を求めるプログラムから保護するメ
カニズムを提供する。
なオブジェクト指向データは、ユーザをウィルスまたは
いたずら半分のユーザの潜在的な危険にさらすことな
く、ユーザ間で転送され得る。
の図面とともに考えられるこの発明の好ましい実施例の
以下の説明を読むことによってよりよく理解されるであ
ろう。
れ得る例証的なコミュニケーションシステムをブロック
図形式で示す。このシステムはコミュニケーションチャ
ンネル12を含み、それはたとえばそれを介して端末
A、B、…N間のコミュニケーションが行なわれ得る安
全にされていないチャンネルであってもよい。コミュニ
ケーションチャンネル12はたとえば電話線であっても
よい。端末A、B、…Nは、ほんの一例として、従来の
キーボード/CRTディスプレイ4に結合されるプロセ
ッサ(メインメモリを有する)2を有するIBM PC
であってもよい。付加的に、各プロセッサは不揮発性プ
ログラムおよびディスクメモリデバイスであり得るプロ
グラム権限情報(PAI)記憶(storage)7に好ましく
は結合される。各端末A、B、…Nはまた従来のIBM
コミュニケーションボード(図示せず)を含み、それは
従来のモデム6、8、10にそれぞれ結合された場合、
端末がメッセージを送受信することを可能にする。
ことであれば何でも実行するメッセージを発生し、かつ
そのメッセージをコミュニケーションチャンネル12
(またはコミュニケーションチャンネル12に接続され
得るコミュニケーションネットワーク(図示せず))に
接続される他の端末のいずれにもそのメッセージを送信
することが可能である。端末A、B…Nはまた、要求さ
れた各メッセージに対して署名確証を実行することが可
能である。
I)データ構造の例示である。PAIは1組の権限付与
仕様セグメント22−38、および1組の権限付与署名
セグメント40−48(ある状況ではオプションであっ
てもよい)を含む。
メントに先行し、後に続くプログラム権限情報の長さを
規定する。フィールド長情報はプログラマーがメモリの
関連権限情報の程度を容易に決定することを許容する。
このように、もし、たとえばオブジェクト指向データ構
造(図5に関連して以下に説明される)が利用可能であ
れば、フィールド20はプログラム権限情報セグメント
116が終了するポイントを識別して、図5に示される
プログラムセグメント118の位置を突き止める役割を
果たすであろう。
関連セグメントである。当業者によって理解されるよう
に、「ハッシュ」は「一方向」機能であり、同一の値に
ハッシュする2つのデータ値を見つけることは計算では
実行不可能である。すべての実務的な目的のために、ハ
ッシュ関数をデータのオリジナル集合に適用することか
ら得られた値は、オリジナルデータの偽造不可能な独自
の指紋である。もしオリジナルデータが任意の態様で変
えられれば、このように変更されたデータのハッシュも
同様に異なるであろう。
に従って適切に権限を付与されたプログラムが後に手を
加えられて、変更されたプログラムを結果としてもたら
す可能性がないことを確実にする。セグメント24にプ
ログラムハッシュをストアすることによって、ハッシュ
は関連プログラムが権限が付与された後に変更されなか
ったことを保証するために後にチェックされ得る。セグ
メント22において、特定のハッシングアルゴリズムを
独自に識別する識別子がストアされる。
ト)のタイプを識別するセグメント26を任意に含むこ
とが可能であり、たとえば関連プログラムが機械言語プ
ログラム、特定のタイプの監視プログラム、などである
ことを示す。プログラムのタイプを識別するデータを与
えることによって、このシステムはプログラムによって
実行されるべき動作の性質に関する何らかの情報を備え
る。このような情報は、何か予期しない(そして恐らく
はいたずら半分の)ことが発生しているという表示を与
えることが可能である。PAIはまたそれが署名された
ときのプログラムの名前(セグメント28)および権限
付与の日付(セグメント29)を識別するフィールドを
含み得る。
ントリのサイズを規定するセグメントである。このフィ
ールドは残っているエントリが所望されるように区切ら
れることを可能にする。
リのサイズを規定するセグメントを含む(32)。各エ
ントリは同様にそれが関連する機能または資源34のタ
イプを識別するセグメント34を含む。たとえば、プロ
グラムが他のプログラムにディジタル署名を求める権限
を付与する権利を有し得るかどうかなどの、広範囲の機
能が規定され得る。セグメント36はセグメント34で
識別された包括的タイプ内にある特定的機能/資源を特
定する。たとえば、特定的ユーザファイルはセグメント
36で指定されて、セグメント34で特定された「ファ
イル」をより特定的に識別する。セグメント34および
36は、所望されれば、単一セグメントに組合わされ得
る。セグメント36の「ワイルドカード」への参照は、
たとえば、プログラムが予め定められた接頭辞、または
接尾辞を有する任意のファイルにアクセスし得ることを
示すことが意図される。たとえば、指定「A*」はプロ
グラムは「A」で始まるタグによって識別される任意の
ファイルにアクセス可能であることを示すであろう。同
様に、セグメント36はそのプログラムは「DATA」
で終わる任意のファイルにアクセスし得ることを示す、
またはそのプログラムは指定された組のファイルにアク
セスすることができないことを代替的に示し得る、エン
トリ*DATAを含み得る。このようなエントリはまた
そのプログラムは任意のプログラムファイルを変えるこ
とができることを示し得る。セグメント36はこのよう
にそのプログラムが何ができるかだけではなく、そのプ
ログラムは何をする権限を付与されていないかを特定し
得る。
た権限のレベルを特定する。たとえば、セグメント38
はそのプログラムは予め定められた組のファイルからの
読出しを許可する権限のレベルを与えられているが、任
意のこのようなファイルを変えるまたは消去する権限は
否定されていることを特定し得る。
されれば(所望の受信者に送信されるプログラムのため
に)、PAIにとってディジタル署名されることが望ま
しいかもしれない。単一の組織内においてさえ、オプシ
ョンの権限署名を含むことは望ましいかもしれない。
名セグメント40は署名者の証明(certificate)への参
照、つまり署名者の証明を識別するための識別子を含
む。この発明の好ましい実施例に従って、このようなデ
ィジタル証明は、ユーザのパブリックキーおよびユーザ
の名前を含む委任されたエンティティによって作成され
た(エンティティが満足するほどに正確である)ディジ
タルメッセージ、および恐らくはディジタルメッセージ
に署名する当事者によってユーザに与えられた権限の表
現である。このような署名者の証明は、本発明者の米国
特許第 4,868,877号および第 5,005,200号の教示を利用
して好ましくは作成され、これらの特許はここにはっき
りと引用により援用される。これらの特許に従って、証
明は証明者によって与えられつつある権限および課せら
れている制限ならびにセーフガードを含むように構成さ
れ、たとえば、被証明者に対する財政上の制限、および
被証明者に与えられる信用のレベルのような、証明者に
とっての関心事を示す情報を含む。証明はまた、上に示
された米国特許に具体的に教示されるように、被証明者
に課せられる共同署名および副署名要求を特定し得る。
びハンシュならびにパブリックキーの双方に対するアル
ゴリズム識別子を含み得る。セグメント40は、たとえ
ばプログラムに権限を付与する権限を与えて、予め定め
られたファイルを変更するために証明で指定された1つ
以上の権限を特定する署名に対して呼出された権限を付
加的に含む。付加的に、この署名はたとえば上述のセグ
メント20ないし38の全体を含む、権限付与仕様のハ
ッシュを含む。
署名者のプライベートキー動作の結果はセグメント42
にストアされる。これはX.500に規定されるような
標準的なディジタル署名であってもよいし、または本発
明者の上述の米国特許の向上したディジタル署名教示に
従うものであってもよい。付加的な(可能な第2ないし
可能な第N番目の)署名(共同署名)は、セグメント4
4、46に示されたようにストアされ得る。任意に、権
限署名はまたセグメント48の上の署名に対するディジ
タル証明を含み得る。代替的に、このような証明は識別
されたデータベースからアクセス可能である(が、署名
が任意のそのようなデータベースにアクセスする必要性
を伴わずに確証され得るように、関連署名のためのディ
ジタル証明を含むことが好ましい)。セグメント40な
いし48は上述の権限仕様に関連する権限封印を構成す
る。ここに参照されるディジタル証明/ディジタル署名
技術に関するすべてのさらなる詳細は、X.500のよ
うな標準的な技術、または上述の米国特許に関連するよ
うな向上した技術を含む、任意のディジタル署名技術で
実行され得る。
きプログラムと関連する。図3ないし図6はプログラム
権限情報をプログラムに関連付けるための4つの例証的
なアプローチを示す。まず図3を参照して、この図はど
のようにプログラム権限情報がアクセス制御下で、プロ
グラムと関連して、ストアされるかを例証する。図3は
プログラムのシステムのディレクトリの例証的な概略表
現を示す。ディレクトリはプログラム1、2、…N(8
0、86…92それぞれ)の各々の名前を表すデータを
含む。
それぞれインジケータ82、88、94であり、関連プ
ログラム、たとえばプログラム1のディスク98上の場
所を識別する(104)。付加的に、プログラム関連識
別子の各々に関連するのは、それぞれインジケータ8
4、90、…96であり、その関連プログラム権限情
報、たとえばPAI 1の場所を識別する。プログラム
権限情報PAI 1は別個のメモリデバイス100にス
トアされているとして示されるが、それは所望されれば
その関連プログラムと同一のメモリ媒体にストアされて
もよい。上に示したように、プログラムに関連するプロ
グラム権限情報は、プログラム権限情報がユーザ自身に
よって発生され、(この場合は署名する必要はない)
か、または第三者によって発生され、この場合はPAI
はしばしば署名されなければならないかに依存して、デ
ィジタル署名されてもよいし署名されなくてもよい。
のアプローチを示す。このアプローチにおいて、プログ
ラム権限情報110はプログラム112にはめ込まれ
る。図3に関連して上に説明したように、権限付与情報
はPAIの源に依存して、任意にディジタル署名されて
もよい。
実施例に従うプログラムと関連する重要なアプリケーシ
ョンを示す。図5は安全な交換可能な「オブジェクト」
のための例示的なデータ構造を示す。このデータ構造は
委託された権限によって署名され得る。このようなデー
タ構造の署名により、オブジェクトはユーザからユーザ
へ安全に送信されることが可能になる。図3、図4、図
5および図6に示されるデータ構造は一般的なフォーマ
ットで説明されているが、1992年4月6日に出願さ
れ、「移動プログラムを作成し支持しかつ処理するため
の方法および装置(Method and Apparatus for Creatin
g, Supporting and Processing a Travelling Progra
m)」(米国連続番号07/863,552、Atty.
Dkt.264−30)と題された、本発明者の同時係
属中の出願で説明されたような構造であってもよく、こ
の出願は引用によりここに明示的に援用される。
ば買注文関連オブジェクトまたは任意の他のタイプの電
子ディジタルオブジェクトに続くタイプのオブジェクト
を規定し得るヘッダセグメント114を含む。プログラ
ム権限情報は、以下により詳細に説明される態様で、オ
ブジェクトの単数または複数のプログラムのための権限
を特定するセグメント116にはめ込まれる。
メント118を含み、それはたとえば、関連する買注文
がプログラムユーザによって対話的に完了される変数フ
ィールドのためのブランクを残すようにディスプレイさ
れる態様を制御し得る。オブジェクトプログラムはその
ようなデータをストアし、出願人の上述の同時係属出願
に詳細に説明される態様でそれ自体のコピーを添付デー
タとともに送る。図5に示されるように、このプログラ
ムは数個の論理セグメントに分割されて、オブジェクト
の異なった用途を収容し得る。たとえば、このプログラ
ムはディジタル買注文を作った人に、後続の受信者にデ
ィスプレイするのとは異なったディスプレイを示し得
る。プログラムがプログラムによって指定された受信者
によって受信された場合、その受信者は送信されたプロ
グラムの写しを呼出して、たとえば受信者の必要に合わ
せて作られた買注文のディスプレイを制御する。受信者
はすべての受信されたデータを確証し、新しいデータを
加えることが可能であり、プログラムはそれ自体を受信
者の電子メールシステムによって、たとえば購入された
品物を実際に出荷するユーザに送ることが可能である。
図5に示されたデータ構造は付加的にオブジェクトに関
連するデータセグメント120を含み、それは好ましく
は上述の特許出願に説明されるような「変数」セグメン
トおよびデータファイルセグメントを含む。データセグ
メント120はオブジェクトの各バージョンまたはイン
スタンスに関連するデータが別個にストアされ、別個に
アクセス可能であるように区切られてもよい、なぜなら
異なったユーザは図5に示されるデータ構造に対して異
なった用途を有するかもしれないからである。したがっ
て、データはそれが各ユーザからどのように集められる
かに依存して変化することになる。しかしながら、プロ
グラム118は好ましくは各ユーザに対してそのままで
ある。委託された権限はプログラム権限情報(PAI)
とともにプログラムに署名する、なぜならプログラムの
各実行に応答して入力されるデータよりはむしろ、プロ
グラムそれ自体が権限付与される必要があるからである
(データは各実行経路の間変化することが可能であるか
らであり、かつまた正確なディジタル署名が適切に入力
データ上で集められることを確実にすることはプログラ
ムの責任であるからである)。
(イメージ)にアクセスする状況を例証し、各々はそれ
に関連し、ユーザに所属する特定的ファイルに維持され
る自分自身の(おそらくは別個の)プログラム権限情報
129を有する。図6はシステムプログラムディレクト
リ131を示し、それはプログラム名前に関連するイン
ジケータによって、プログラムXのディスク132上の
場所を識別する。この場合、プログラムXがユーザによ
って呼出された場合はいつでも、システムはユーザがそ
のプログラムに関連し得るプライベートなPAI仕様
(たとえば133、135、137)を有するかどうか
を決定するためにチェックする。このように、異なった
ユーザは自分自身の必要性および信用の知覚に従ってプ
ログラムを制限し得る。これはたとえば大きな固有の権
限を有するユーザ、または非常に重要な情報へのアクセ
スを与えられたユーザが、ありきたりの目的のための
「平凡な」プログラムをしばしば実行しなければならな
い場合に有用であり得る。この場合、そのような重要な
ユーザにとって、いくつかの(または多くの、またはす
べての)「平凡な」プログラムのまわりに「セーフティ
ボックス」を規定して、その結果そのようなプログラム
が自分自身の特に重要なデータに影響を及ぼし得る「ト
ロイの木馬」または他の欠点を不注意に含まないように
することが分別のあることかもしれない。
PAI「関連付け」を規定し、その結果保護しているP
AIは、重要なデータを処理する選ばれて委託されたい
くつかのプログラム(select trusted few programs)を
おそらく除いて、すべてのプログラムに自動的に関連し
得る。
で関連づけられることを許容し、その結果原則的にユー
ザはおそらくはより総括的なPAI、またはこのプログ
ラムの製造者によって署名されかつ供給されたPAIと
ともに組合わされる1つ以上のレベルのPAIを規定す
ることが可能である。
の関連付けが、もし必要であれば、1つのプログラムが
複数のPAIと関連することが可能であるように、また
は逆に1つのPAIが複数のプログラムに適用されるこ
とが可能であるように、またはこれらのアプローチの何
らかの組合わせが可能であるように非常に一般的に構成
され得ることを熟慮する。したがって、単純にするため
に、本明細書では単一のPAIを単一のプログラムと関
連して一般に論じているが、これはいかなる意味におい
ても制限であると考えられてはならないことが理解され
なければならない。
行する場合に、どのようにユーザがプログラム権限情報
の使用によって利益を得るかを例示するフローチャート
である。ブロック121に示されるように、ユーザは自
分がプログラムの作成者について何も知らない興味ある
プログラムを実行したいという望みを持つかもしれな
い。このように、そのプログラムは不明の信用性を有
し、たとえば電子掲示板を経てアクセスされたものかも
しれないし、テレコミュニケーションチャンネルまたは
ディスケットを経てユーザの端末に到着したものかもし
れない。単なるゲームであると称するこのようなプログ
ラムは、それがウィルスに感染しているかもしれないと
いう重要な危険をはらんでいる。
はそのプログラムを重要でないまたは消耗ファイルのみ
に制限するプログラム権限情報を規定することによって
保護され得る。所望されれば、ユーザはとにかく任意の
ファイルを変更することからこのようなプログラムを制
限することが可能である。たとえば、ユーザはプログラ
ムにディスプレイスクリーンにイメージをディスプレイ
し、ゲームをすることに関連する機能を実行することの
みを許可し得る。代替的に、もしプログラムが単一のワ
ークファイルを有することがわかれば、PAIデータは
そのような単一ファイルの使用のみを許可することが可
能である。単一ワークファイルのみにアクセスを制限す
ることによって、不明の信用性のプログラムは他のユー
ザのプログラムにウィルスを導入することができない
し、または他の態様ではシステムプログラム誤動作を開
始することができない。このように、この発明に従っ
て、ユーザは、システムプログラムによって、プログラ
ムの任意の特権機能を使用する能力をたとえば完全に排
除するようなプログラムによる危険にユーザのシステム
がどれくらいさらされるかを決定する。ユーザはそれか
らたとえばオペレータを促すメニュー駆動型システムに
よって、PAIをそのシステムに基づいて実行されるべ
きすべてのプログラムに関連づける(またはこのような
PAIまたはPAIの欠如を予め定められた省略時(de
fault)メカニズムによって関連づける)。システムユー
ティリティプログラムは、図9ないし図13と関連して
以下に詳細に説明される態様で、プログラム権限情報を
作成するために好ましくは使用される。
関連するプログラムを実行するときはいつでも、システ
ムソフトウェアは(以下に説明される態様において)プ
ログラムがPAIと一貫する態様で安全に実行している
ことを確実にする。このように、プログラムは「セーフ
ティボックス」に有効に置かれたことになる(12
4)。
コミュニケーションチャンネル12によって、または端
末Aにロードされたフロッピィディスクからシステムに
導入され得る。このプログラムはたとえばユーザのプロ
グラムディスクメモリ7に初めストアされ得る。その
後、キーボード4上のユーザは(図7のブロック122
に関して)上で識別されたシステムのプログラムとの対
話を介して、そのプログラムがユーザのシステムに基づ
いて安全に実行できるように、またはおそらくはPAI
がプログラムとともに到着し、その場合にはおそらく署
名されるように、(図3ないし図6に示されたような態
様で)、プログラムにプログラム権限情報を関連づけ
る。
ログラムコントロールブロック(PCB)データ構造の
例示である。プログラムコントロールブロック140は
システムモニタによって使用されて関連するプログラム
の実行を制御するデータ構造である。
は、関連するプログラムがプログラムがその割当てられ
た権限に従って機能を実行し、資源にアクセスすること
を確実にするように実行されているときに、PAIが容
易に参照され得るように、プログラム権限情報がロード
される。実行されるべきプログラムと関連するプログラ
ムコントロールブロックは、プログラムによって変更す
ることができない記憶エリアに置かれる。
のPCBは180で識別される)はプログラム(PCB
170を有する)を呼出し、それはひいては図8に詳細
に示されるプログラム140を呼出す。各新しいPCB
は「以前の」または呼出しているプログラムコントロー
ルブロックを指す150のようなフィールドを含む。フ
ィールドはまた「次の」プログラムコントロールブロッ
クファイルを識別するために使用され得る。
合、システムはその関連するPCBを実行されたスタッ
クの一番上から取除き、関連するプログラムを記憶から
取除き、関連する権限付与情報を取除き、スタックのそ
の真下のプログラムコントロールブロックにアクセスす
る。他のプログラムが呼出された場合、スタックの一番
上に置かれた新しいPCBが作られるように逆のプロセ
スが発生し、それはフィールド150に示されるように
以前のPCBを再び指す。
図8に示されるメモリセグメント153によってたとえ
ば示されるように、関連するプログラムがロードされて
いる記憶の場所に対するポインタであるフィールド15
2を含む。付加的に、プログラムのサイズはフィールド
154で示される(それはこのようにしてプログラムが
実行を終了した場合に解放される記憶の量を示す)。
ルド156は、1つ以上のPAIの記憶(157)の場
所を識別する(それは関連するプログラムによって変え
ることができない記憶のエリアに置かれる)。フィール
ド156によって指されたPAIは好ましくは上述の図
2に示された態様で構成される。
ためのエントリアドレスを識別する。もしプログラムが
その実行中に他のプログラムを呼出せば、フィールド1
58は、呼出されたプログラムがその実行を完了した
後、プログラム実行が再開されるであろうアドレスをス
トアするために使用される。
たとえばプログラム状態ワード(PSW)スタック情報
などのような状態情報をストアするための1組の場所
(160)を含む。プログラムコントロールブロック
は、付加的に、もしエラーがプログラムの実行中に発生
すれば、エラーまたは終結メッセージに関連する情報を
ストアするためのフィールド162を含む。このような
フィールドは、たとえば、なぜプログラムが不成功に終
結したかを識別するための呼出しプログラムに利用可能
である。フィールド162はプログラムが成功のうちに
終結したという表示をストアすることが可能である。
は、プログラムが終わった場合に(164)漂遊(stra
y)資源が解放され得るように維持される様々なポインタ
を付加的に含む。このようなポインタはたとえばプログ
ラマーが解放するのを忘れた資源の解放を許容するため
に有用である。
確立するためのユーティリティプログラムの動作の例証
的なシーケンスを例示するフローチャートである。この
ようなユーティリティプログラムはユーザ、つまりエン
ドユーザ、エンドユーザの主体または製造者でさえ促し
て、ユーザのシステムによって実行されるべきプログラ
ムに関連する権限の範囲を規定する。
ためにユーティリティプログラムを入力した後(20
0)、ユーザはそれに対してPAIが確立されるべきプ
ログラムの名前を供給するように促される(202)。
その後、ユーザはPAIは署名されるべきか署名される
べきでないかを決定するように促される。PAIは、も
しそれがユーザ自身の使用および保護のためのものであ
れば、またはもしこのPAIが満足なアクセスコントロ
ールの下でストアされ得るのであれば、必ずしも署名さ
れる必要はない。ブロック204のユーザの入力に依存
して、ユーザが署名したいのかまたは署名したくないの
かについての決定が行なわれる(206)。もしユーザ
が署名したいのであれば、ブロック208に示されるよ
うに、ユーザの証明が検索され、後のテスティングのた
めにフラグが設定され署名動作が実行されていることを
示す。ユーザの証明は従来のディジタル証明であっても
よいし、本発明者の米国特許第 4,868,877号および第
5,005,200号に従う権限の委譲を与える向上されたディ
ジタル証明であってもよい。
はそれからどの権限がプログラムに割当てられるべきか
指定するように促される。後に続く権限(そしてそれら
が示される順序)は例示の目的のみのために与えられ、
かつこの発明に従って割当てられ得るすべての可能な権
限の完全なリストであることは意図されないことが理解
されなければならない。
ス権限が呼出されるべきであるかどうかを決定するため
にチェックが行なわれる(212)。ファイルアクセス
権限(および以下に参照される他の権限の各々)の選択
を与えるために、メニューがユーザに表示されてもよ
い。ファイルアクセス権限は任意の組のファイルのファ
イルエレメントもしくはフィールド、任意の組のデータ
もしくはデータエレメント、または任意の組のファイル
などに関する権限を示すために使用され得ることが理解
されなければならない。もしユーザがファイルアクセス
権限を選択すれば、ユーザはファイル名またはファイル
ステムまたは「ワイルドカード」ファイル名パターンを
特定するように促されるであろう(214)。上に説明
されたように、たとえば、ワイルドカードファイル名パ
ターンはフォームDATA*から選択されることが可能
であり、その結果プログラムは接頭辞「DATA」で始
まる任意のファイル名にアクセスする権限を与えられ
る。
プを特定するように促される(216)。この点に関し
て、ユーザはプログラムの権限を、ファイルから読出
す、情報をファイルに挿入する、ファイルの情報を更新
する、ファイルから情報を消去する、ファイルを消去す
る、ファイルを転送するなどだけの中から、1つ以上に
制限することを特定し得る。もしファイルアクセスまた
は図9ないし図11で以下に示される他の権限が選択さ
れれば、この選択の表示がストアされ、ルーチンは以下
に説明される図12および図13のブロック274に分
岐する。
ければ、これはこのプログラムに他のプログラムを呼出
す権限を付与するための要求であるかどうかを決定する
ためにチェックが行なわれる(218)。もしそうであ
れば、プログラムがそれに基づいて呼出され得る、もし
あれば、何の制限または資格が確立されるべきであるか
を確認するために決定が行なわれる(221)。そのよ
うな資格が規定され組合わされ得る多くの方法がある。
たとえば、1つの特定のプログラム名のみが呼出される
ことが許容されることであってもよいし、またはおそら
くある(「ワイルドカード」)パターンに一致する名前
を有するプログラムのみが呼出されてもよい。おそらく
その基準はライブラリ、または組のライブラリの仕様を
含み、そこには許可されるプログラムが存在し得る。
応しいプログラムを資格付ける他の方法は、呼出された
プログラムが呼出しているプログラムほど大きな権限を
有してはならないことを特定することである。代替的
に、権限および必要性に依存して(およびどのようにシ
ステムが呼出しているおよび呼出されたプログラムの権
限を組合わせるように選択するかに依存して)、呼出さ
れたプログラムが呼出しているプログラム以上の権限を
有することを要求することが適切であり得る。実際、こ
の「呼出し権限」資格の一部として、それによって権限
が呼出されたプログラムと組合わされることが可能な
(たとえば呼出されたプログラムの自然の権限を使用す
ることによって、呼出されたものおよび呼出すものの最
も制限的な権限を使用することによって、など)方法を
特定することさえ適切であるかもしれない。
の資格または制約または制限または許可へのいずれの参
照も、適切な基準の任意の収集に基づいて設定された全
体の規則仕様を含むことが意図される。「規則」「組
の」、「資格」などの言葉はその最も一般的な意味で使
用され、それによって仕様は任意のタイプの規則または
規則の複合組によって決定されることが可能であり、そ
れはたとえば、制限なしに、直接仕様による、間接仕様
による、排他による、リストによる、「ワイルドカー
ド」規則による、または任意の適切な属性、方法または
基準によってエレメントを区別する他の任意の方法によ
ることを含む、任意の属性によってエレメントを区別す
ることが可能である。そのような区別は単一のエレメン
トのみを含む、すべてのエレメントを除外する、または
すべてのエレメントを含む仕様を包含することが意図さ
れる。PAIは全体または一部において、任意の数の隣
接するまたは隣接しないデータのセグメントからなり得
る。適切な文脈において、その文脈のために公式化され
る予め定められた規則があってもよく、それは任意の明
示的な資格がない場合に推定される。
などの言葉は、たとえば直接仕様、任意のタイプのポイ
ンタ、参照、関連、ハッシュ、結合値共通識別子、など
を、制限なく、含む適切な関連の任意のタイプを伝える
ことが一般に意図され、それは任意のレベルの間接性
(indirection)を含んでもよく、明示性であってもよ
く、または任意の明示の関連がないところでも文脈に適
切であれば暗示であってもよい。
を示すことが意図され、しばしば通常の能力に対する
「制約」と共通の意味で使用されるが、制限が通常の能
力を超えて規定される状況を反映することもまた意図さ
れる。
ザに許された資源にアクセスすることに制限する機能を
規定することに主に中心を置くが、適切な環境におい
て、ユーザに通常許容された能力を超えるものに拡張す
るためにも使用され得る。このように、たとえば、その
PAIがスーパバイザによって認められた権限によって
署名されるプログラムは、拡張された機能を実行するこ
とが許容される。
うに確証されるべきかに関して与えられたが、特定の実
施例は広く変わり得る。示されたように、いくつかの場
合、PAIはまったく署名される必要はなく、それはた
とえばユーザ自身がPAIを規定する場合、または信用
された管理者がPAIを信用されたアクセス制御された
記憶にストアする場合などである。PAIが署名された
場合、署名確証が、たとえば本発明者の他の特許、米国
特許第 4,868,877号および第 5,005,200号に従って行な
われる任意の数の方法がある。ユーザは最終的なパブリ
ックキー、またはその署名をユーザが信用する証明を規
定する以前にストアされた情報を有するようである。
出し許可を選択しなければ、これはこのプログラムが呼
出され得る状況を特定するための要求であるかどうかを
決定するためにチェックが行なわれる(220)。もし
そうであれば、そのような権限の制限または資格を確認
するための決定が行なわれる(223)。1つのそのよ
うな仕様は、プログラムはユーザによって直接呼出され
なければならない(かつおそらくはこれは任意の仕様の
代わりに暗黙値であろう)ことであり、おそらくはこの
プログラムは特定のリスト、または上述の「呼出し権
限」に類似の特定ライブラリからの名前でプログラムに
よって呼出されるだけである。おそらくプログラムはよ
り大きな権限を有する、またはより小さな権限を有する
プログラムによって呼出されるだけである。どの規則が
適切であるかは、基礎になるシステムが他のプログラム
によって呼出されたプログラムのためのPAI権限をど
のように組合わせるかに関連し得る。この資格の他の局
面は、このプログラムの権限がどのように呼出している
プログラムの権限と組合わされ得るか、たとえばこのプ
ログラムの有効な権限は呼出しているものによって制限
されるかどうかを特定することであり得る。他の多くの
可能性もまた利用可能であり、権限の各タイプごとにお
そらく異なる。
別された権限が選択されなかったならば、プログラムが
電子郵便を生成することを許容されるべきか否かを決定
するためのチェックが行なわれる(222)。もしそう
であれば電子郵便を生成するこの能力が資格付けされる
べきか、たとえば或る個人に限定されるべきか否かのチ
ェックが行なわれる。もしそうであれば、このようなさ
らなる資格がユーザによって特定される(224)。
択されなければ、ユーザはプログラムが他のユーザへデ
ータを伝送することを許容されるべきか否かについて問
われる(226)。もしそうであれば、ブロック224
の上述の処理が行なわれ、この権限に対するいかなる資
格も決定する。
択されなければ、ブロック228に示されるように、プ
ログラムが「文書解放(document release) 」動作を行
なうことを許容されるか否かを決定するためのチェック
が行なわれる。もしそうであれば、たとえば権限が適用
される文書のクラス(たとえば極秘(top secret) 、機
密(secret) 、機密扱い (sensitive)、など)をユーザ
から決定することによってこの権限に対する資格が選択
され、記憶されてもよい。代替的に、解放されるべき文
書はセキュリティの観点から「解放」を要求しなくても
よいが、むしろ文書の技術的解放に関連してもよい。い
ずれにおいても、どのような選択された資格も記録され
る。
択されなければ、プログラムが機械語プログラムを実行
することが許容されるべきかを決定するためのチェック
が行なわれる(232)。この権限は或るルーチンが機
械語プログラムとして不適当に実行するか、または実行
されることを防止するのに有用であろう。ユーザは任意
の適当な資格を特定するように促されてもよい(23
3)。もしブロック232で識別された権限が選択され
なければ、プログラムが任意の特別なメモリアクセス特
権、たとえば或るオペレーティングシステムプログラム
のために予約された記憶域へのアクセスが与えられるべ
きであるか否かを決定するチェックが行なわれる(23
4)。もしそうであれば、ユーザはこのようなアクセス
特権へのいかなる資格も適当なものとして特定すること
が促されるであろう。
択されなければ、プログラムがユーザへ情報を表示する
権限を有すべきか否かを決定するチェックが行なわれる
(238)。この点で、或るプログラムが或る計算を行
なう目的のみを意図されてもよい。このようなプログラ
ムはいかなるユーザ対話も存在してはならないように設
計され得る。もしこのようなプログラムが許可なく変更
されたとすれば、ユーザへ誤ったメッセージを作成する
命令が挿入されているかもしれず、それがセキュリティ
侵害を引き起こすかもしれない。たとえば、システム障
害があるということ、および動作を再開するためにユー
ザが自分の秘密のパスワードを入れることが必要である
ということをスクリーンがユーザへ表示し得る。このよ
うなプログラムは当事者へパスワードを自動的に伝送し
得、するとその当事者はパスワードおよびそのような画
面上に入れられた他のいかなる情報へもアクセスを有す
るであろう。
ログラムがユーザへ情報を表示する権限を与えられれ
ば、この権限は、たとえば特別なウィンドウ内に、また
は特別なコンソール上のみに表示を許可するだけで制限
されてもよい。
択されなければ、図11、ブロック242に示されるよ
うに、プログラムがユーザからの入力を請求する権限を
有するべきか否かについてのチェックが行なわれる。も
しそうであれば、この権限は、たとえば特別なウィンド
ウまたは端末からの請求により可能性のある制限の特定
によって、資格付けされてもよい(244)。
択されなければ、プログラムがディジタル署名を請求す
る権限を有するべきか否かに関するチェックが行なわれ
る(246)。この点で、1組の情報を表示することに
よっていたずら半分のプログラムがユーザを引っかける
かもしれないが、それによって実際のディジタル署名が
全く異なる組のディジタル材料へ与えられる。それゆ
え、ディジタル署名動作を請求する、および/または行
なうPAI権限を要求することによって、権限を付与さ
れないプログラムは権限を付与されたプログラムの外部
属性を真似るが、ユーザのディジタル署名能力を詐欺ま
がいの材料へ内部的に与えることを防止される。
ることを許可されれば、ブロック248に示されるよう
にこの権限に制限が加えられてもよい。したがって、プ
ログラムは制限された範囲、値、権限または他の特性を
有する材料にディジタル署名を行なうことのみが許容さ
れるであろう。
択されなければ、プログラムがロボット装置、または特
定のコンピュータ機器もしくはコンピュータ関連装置へ
向ける権限を有するか否かを決定するチェックが行なわ
れる。もしこのような権限が選択されれば、このような
機器に及ぼす制御の詳細および範囲を特定することによ
ってこのような権限に資格が与えられてもよい(25
2)。
択されなければ、アクセスが一般にセキュリティクラス
によって制限されるべきか否かを決定するチェックが行
なわれる(254)。したがって、或る資源、ファイル
などが機密、機密扱いなどのような特定のセキュリティ
クラスと関連され得る。もしこのような権限がプログラ
ムと関連されるべきであれば、特定のセキュリティレベ
ルの指定を含む制限が同様に特定されてもよい(25
6)。
択されなければ、他のコンピュータ機能、または資源が
制御されるべきであるか否かについてチェックが行なわ
れる(258)。もしそうであれば、ユーザはこのよう
な他のコンピュータ機能、または資源についての詳細を
特定することが促される(260)。
択されなければ、図12に示されるように、ユーザが権
限の特定を終了したか否かを決定するチェックが行なわ
れる(262)。もしユーザが権限の特定を終了してい
なければ、権限選択のアレイがこの点で消耗されている
ために、不明の特定された権限を特定することをユーザ
が試みていることを示すメッセージが発行される(26
4)。ルーチンは図9へルーチン分岐して戻り、エント
リポイントGでブロック210における処理を再開す
る。
ユーザが権限の特定を終了していれば、前に規定された
権限のすべてが収集され、図2に示されるPAI構造が
ディジタル署名関連のエントリを除いて完了する。
ル署名されるべきか否かを決定するチェックが行なわれ
る。もしそうであれば、ブロック270に示されるよう
に、適当なディジタル署名動作がPAI構造上で行なわ
れる。ディジタル署名は本発明者の米国特許第4,868,87
7 号および5,005,200 号における教示に従ってか、また
は所望されるような従来のディジタル署名および証明技
術を使用して行なわれてもよい。その後、PAIは、た
とえば図3ないし図6に説明されるアプローチの1つを
使用して記憶され、それによってそのプログラムと関連
付けられ(272)、その後ルーチンが退出する。
ブロック212ないし258に関して説明された権限の
各々が選択され、選択の指示が記録された後、ルーチン
は分岐してブロック274へ進み、権限の特定がディジ
タル署名しているか否かを決定する。もし権限がディジ
タル署名されていなければ、新たに規定された権限が関
連のプログラムのための権限情報へ加えられ(28
0)、ルーチンは図9のエントリポイントGでブロック
210へ分岐して戻る。
れば、向上した証明(権限を有する)が本発明者の米国
特許第4,868,877 号および5,005,200 号に従って使用さ
れているか否かについてのチェックが行なわれる(27
6)。もしそうでなければ、ルーチンは前述のようなブ
ロック280へ分岐する。
いれば、前述の特許に説明されるようなユーザの向上し
た権限証明がこの特定のプログラムの権限特定を割当て
ることを許可するか否かを決定するチェックが行なわれ
る。もし向上した権限証明がこのような権限の割当てを
許可すれば、ブロック280の前述の処理が行なわれ
る。もしそうでなければ、ブロック282に示されるよ
うに、「あなたの証明はこのレベルのプログラム権限の
割当てを許可されていません。」というメッセージがユ
ーザへ発行される。ルーチンは図9およびブロック21
0の処理のためのエントリポイントGへ分岐して戻る。
限情報に従って実行されているプログラムの処理を制御
するためのスーパバイザプログラムの動作のシーケンス
を示す。図14に示されるプログラム「X」およびその
プログラム権限情報の処理は、コンピュータがスーパバ
イザルーチンを実行している間に開始される。図14の
300で示されるように、呼出プログラムは実行のため
にプログラムXを呼出す。その後、プログラム制御ブロ
ックがプログラムXのために作成される。作成されたプ
ログラム制御ブロックは、プログラムが呼出されること
を許可されることが決定され、かつ確証がうまく完了さ
れるまで、実行スタックの先頭に加えられないであろ
う。したがって、もしプログラムがセキュリティチェッ
クを失敗すると、それはプログラム実行鎖に置かれない
であろう。「試験的」プログラム制御ブロックを作成す
ることに加えて、呼出されたプログラムはブロック30
2の処理中に適当なプログラムディレクトリを介して位
置決めされるであろう。
のいわゆる「セーフティボックス」内にプログラムXを
置くようにプログラムXとまだ関連されているか否かを
決定するチェックが行なわれる。このPAIは前述のよ
うなその特定の応用によって署名されても、されなくて
もよい。
連されていなければ、プログラムが製造者からの関連の
署名された「系統(pedigree) 」を有するか否かを決定
するチェックが行なわれる(306)。したがって、も
し周知のプログラム製造者がパブリックキー、またはデ
ィジタル証明でプログラムに署名しているならば、所望
ならこのようなプログラムが、製造者がどれだけ信用し
ているかによって所望のどのような権限レベルを割当て
られてもよく、システムはこのようなプログラムの実行
を許可してもよい。製造者からのこのようなディジタル
署名は、プログラムが製造者によって生成されたときと
全く同じであるか否かを決定されることができるので、
関連のプログラムがウィルスによって感染されていない
ということを確証するために使用され得る。
ク308で製造者からのディジタル署名があるというこ
とを示せば、ユーザによって前に確立されている、(か
つユーザが前に信用を確立した製造者によって署名され
ている)信用基準があるとすれば、ディジタル署名を確
証し、適切である証明および権限チェックのいかなるも
のも行なうことによって、製造者の「系統」が確証され
るであろう。権限を委任するディジタル署名を行なうた
めの機構は、本発明者の米国特許第 4,868,877号および
5,005,200号に詳細に特定され、これらの特許は引用に
よってここに明確に援用されている。
て、ブロック320で、製造者の系統が認容可能である
か否かについての決定が行なわれる。もし製造者の系統
が認容可能でなければ、ルーチンはブロック324へ分
岐し、そこでプログラムの実行が以下に説明されるであ
ろうように抑制される。
ーチンはブロック326へ分岐し、そこで記憶域がプロ
グラムについて割当てられ、プログラムは以下に詳細に
説明される態様でロードされる。
AIがプログラムXに関連していると決定されれば、P
AIが署名されるか否かを決定するチェックが行なわれ
る。もしPAIが署名されれば、ブロック316で示さ
れるように、署名が確証される。現在好ましい実施例に
おいて、署名が証明階層を通して確証される。署名が有
効であるか、それらが呼出人によって信用されている
か、およびプログラムによって委任された権限が署名者
によって委任されていることを許可されるかを決定する
ための好ましい方法論が本発明者の米国特許第 4,868,8
77号および 5,005,200号に教示される。これらの特許に
示されるように、信用レベルはどの高レベルのパブリッ
クキー、および/または超証明子(metacertifier)がユ
ーザによって信用されるように特定されているかによっ
て決定されてもよい。代替的により慣習的なディジタル
署名技術が使用されてもよい。
322で署名が有効であり、権限が付与され、かつ信用
されているか否かの決定が行なわれる。もし署名が有効
であると決定されなければ、ルーチンはブロック324
へ分岐し、そこでプログラムXの実行が抑制される。
が署名されていないということを表わせば、312で特
定のシステム、またはアプリケーションが、PAIが署
名されることを要求するか否かについてのさらなるチェ
ックが決定される(312)。もし、たとえばユーザ生
成されたプログラムがユーザ自身の使用のために実行さ
れていれば、プログラムは分配されておらず、かつユー
ザは自分が行なったことを信用しているので、署名は必
要でないであろう。もしブロック312でディジタル署
名が必要でなかったと決定されれば、ブロック318は
署名されないPAIを受取り、かつこれを使用し、記憶
域が割当てられ、プログラムXがロードされるであろう
(326)。
要であると決定されれば、ブロック314で、明示PA
Iまたは署名されないPAIを有さないプログラムのた
めの「最小の」権限省略値をシステムが有するか否かに
ついてのチェックが行なわれる。したがって、たとえば
システムは、いかなる永続ファイルも変更することを試
みない限り、最小の権限省略値下でプログラムが実行す
ることを許可してもよい。もし最小の権限省略値がなけ
れば、プログラムの実行は抑制される(324)。プロ
グラム実行の抑制過程において、エラーコード、または
メッセージが呼出プログラムへ戻されるであろう。たと
えば、「プログラムXは有効な署名された権限を有さな
い」というメッセージが呼出プログラムへ表示されても
よい。ルーチンはブロック410へ分岐し、そのブロッ
クはさらに後に説明されるであろうように実行を実際に
抑制するように作動する。
署名が有効であることを明らかにすれば、ブロック32
6の処理が行なわれる。まず、記憶域がプログラムにつ
いて割当てられる。プログラムはメモリ内にロードされ
てもされなくてもよく、このメモリはスーパバイザのみ
がコンピュータシステムおよびプログラムの性質に組込
まれた制約によって変えることを許容される。もしプロ
グラムがそれ自体を変更すれば、それはスーパバイザの
みが変えることを許容されるメモリ内にロードされるこ
とができない。
与情報が、もしあるならば呼出プログラムのPCBと関
連のPAIと適当に組合わされる。多数のPAIのもの
を含み得る組合わされたPAIはプログラムによって一
般に変更され得ない記憶域内に記憶され、PAIのアド
レスは図8のフィールド156に示されるようにプロセ
ス制御ブロック(PCB)内に記憶される。したがっ
て、プログラムXはもし呼出プログラムによって呼出さ
れれば、それ自身の制約のすべてを受けるとともに、呼
出プログラムの制約とある点で組合わされており、その
集合制約はプログラムXのPAIに具体化される。この
態様において、呼出プログラムは単に別のプログラムを
呼出すことによってその割当てられた境界を超えること
が許可されない。プログラムのPAIが、プログラム自
体の固有の性質、および現在の環境に適用可能である方
策によって、それを呼出すプログラムのPAIと組合わ
され得る、多くの代替方法がある。組合わせ方法でさえ
それ自体、呼出す、または呼出されたプログラムのいず
れか、または両方のPAI権限、または資格付けるもの
の1つであり得る。
「通常の」PAI権限の小さい方およびその呼出プログ
ラムのそれに制限し、呼出プログラムが呼出されたプロ
グラムの大きい方の権限をいたずら半分に誤用してそれ
自身の制限を巧みに回避できないことを保証することが
穏当である。
る呼出されたプログラムでは、呼出されたプログラムに
それを呼出すプログラムより大きい固有の権限を許容す
ることが可能であり得、このように高感度の資源がより
広い使用を、信用されたサブプログラムを通してこのよ
うな使用を取り次ぐことによって利用可能にされ得る。
このような組合わせの可能性は基本的制御システムの設
計者によってだけではなく各プログラムへの権限の割当
てを行なう者によっても注意深く検討されねばならな
い。その後、プログラムはロードされ、プログラムのハ
ッシュがプログラムのPAIに特定されるアルゴリズム
に基づき計算される。プログラム314に戻って、もし
システムが最小の権限省略値を有すると決定されれば、
ブロック328に示されるように、最小の省略値権限が
使用される。このような最小の省略値権限はもしあれば
呼出プログラムのPAIと適当に組合わされ、ブロック
326に関連して上に説明されたように新しいPCB内
に挿入される。PAIの記憶域はプログラムが一般に変
えることができないメモリから割当てられる。その後、
記憶域がブロック326に関連して上に説明されたよう
にプログラムについて割当てられ、アドレスがPCB内
に保管される。省略値権限を使用するブロック328の
処理はプログラムのハッシュの計算を含まず、ルーチン
はブロック334へ分岐して、プログラム実行に備え
る。
の計算されたプログラムハッシュがPAI内に記憶され
るハッシュと一致するか否かを決定するチェックが行な
われる。もしハッシュが一致しなければ、ルーチンはブ
ロック332へ分岐し、そこで「プログラムXが変えら
れた、または損害を受けた。」というようなエラーメッ
セージが呼出プログラムへ送られ、ルーチンはブロック
410へ分岐し、プログラムの実行を抑制する。
すると決定された後、またはブロック328における処
理の後、プログラムが初期実行のために用意される。初
期実行のための用意は、初期状態のセット、およびプロ
グラムのPCBにおける情報の「再開」を含み、それに
よってプログラムは適切なエントリポイントで開始する
であろう。さらに、プログラムのPCBは実行スタック
の先頭に置かれるであろう。
実行スタックの先頭に置かれると、現在のプログラムは
実行を開始するか、または再開する。ブロック330な
いし410で起きる処理は、プログラムを実行するため
に慣用的に行なわれる動作を含む。処理動作がこれより
PAI処理を含むそれらの動作に重点をおいて説明され
るであろう。ブロック336において、スーパバイザは
保管された「再開」点で、様々なレジスタの状態を再ロ
ード(またはロード)して、プログラムが最後に中断さ
れた(または初期化された)時までにその点でそれらの
状態を示すことによって、プログラムを継続する用意を
する。さらに、たとえばスタックポインタなどのような
システム状態情報が使用されている特定のシステム環境
によって回復される。
ーションプログラムが実行されていると、システムは
「スーパバイザ」モードから「隔離(isolation)」モー
ドへ切換え、それによってプログラムは隔離モードで実
行を再開する(338)。隔離モードにおいて、プログ
ラムは「スーパバイザ」モードへコンピュータを切換え
て戻す保護されたスーパバイザ呼出を介して以外はコン
ピュータ資源に影響を及ぼすことができない(或る場
合、および或る環境において、プログラムが「スーパバ
イザ」モードで実行するように設計され、要求されるこ
とが可能であろうことが注目される。この場合、プログ
ラムがそのPAIで規定されるように適切に権限付与さ
れると仮定すれば、或る点において「スーパバイザ」機
能を使用し、「スーパバイザ」状態動作が可能なように
そのPCBの状態をセットするであろう。このような場
合、その状態をチェックし、もしセットしてあれば、プ
ログラムスーパバイザ状態へ制御を与えることが適当で
あろう。)。
御された「スーパバイザ」機能を要求していることが推
定される。このような環境下で、たとえば予め定められ
た状態ワードをセットすることによってコンピュータを
「スーパバイザ」モードへ切換え、保護されたシステム
監視中断ルーチンへ制御を送る。プログラムの再開位置
はプログラムのPCBに保管され、他の適切なシステム
状態はPCBに保管される。その後、アクセスされるべ
き機能および資源が決定され、アクセスの性質は、たと
えば読出、変更、および削除などである。
ス制御ブロックに記憶されるPAI情報から調査が行な
われる。ブロック340の処理を補うため、またはそれ
に関連して、ブロック342において調査されたPAI
が要求された資源へのアクセスを許容されたか、または
要求された機能を行なうことを許容されたかを決定する
チェックが行なわれる。たとえば、もし電子郵便を使用
することが試みられるならば、プログラムが電子郵便機
能を行なう権限を付与されたか否か、もしそうであれ
ば、郵便が1組の郵便識別子に制限されるか否かを決定
するチェックがPAIから行なわれる。
れた機能、または資源のアクセスを許容しないというこ
とを明示すれば、ブロック344でプログラムがその制
限を超えることを試みているということを示すエラーメ
ッセージが生成され、資源または機能へのアクセスが否
定され、適当なエラーコード、またはメッセージが生成
される。ブロック350において、アクセスの達成を試
みているプログラムが、アクセスを否定されているとい
うことを知らされるべきか否かを決定するチェックが行
なわれる(350)。もしブロック350のチェック
で、プログラムがそう知らされるべきであると明示され
れば、ブロック352においてプログラムがその要求が
うまく行なわれず、かつ抑制されるようにせしめたアク
セス侵害の型を示すメッセージとともに実行を再開する
ことが許容される。ルーチンはプログラムの実行を再開
するためにブロック336へ分岐して戻る。このような
環境下でプログラムは、たとえばそのPAIが特定のフ
ァイルについて権限を読出す権限のみが与えられている
ということを知らされてもよく、一方でそのファイルへ
書込む試みが行なわれた。もしブロック350のチェッ
クが、呼出プログラムが知らされるべきでないと示せ
ば、適当な状態および関連のメッセージ(呼出プログラ
ムのための)が生成され、特定されないアクセス侵害に
よる終了を示す356。
が機能または資源へのアクセスを許容すると明示すれ
ば、ブロック346で、慣用的なアクセス制御を与え、
プログラムのユーザがまだ自分の権限の境界内にあるこ
とを確実にするためのチェックが行なわれる。このチェ
ックは、機能または資源の要求がこの特定のユーザのた
めのシステムによって許容されるものの範囲内であるこ
とを確実にする。したがって、PAIはプログラムが或
るクラスのファイルにアクセスすることを許容するであ
ろうが、特定のユーザに関するセキュリティレベルがそ
のようなファイルへのそのユーザのアクセスを許容しな
いかもしれない。ブロック346は従来のセキュリティ
技術を適用して権限を適切に付与されないユーザからシ
ステムを保護する。このチェックはたとえば、署名する
と最初にシステム内に入るユーザ識別コードに基づいて
もよい。ブロック348で示されるように、もしユーザ
が権限付与されなかったならば、プログラムがユーザの
アクセス能力を侵害することを試みているので、アクセ
スが否定され、適切なエラーコード/メッセージが生成
される。その後、ブロック350および352に関して
上に説明された処理が開始される。
て定められるように権限付与されれば、ブロック354
において示されるように機能が行なわれる。もし機能が
プログラムの退出であれば、ルーチンはブロック358
を介してプログラムから退出し、そこで関連のPCBが
実行スタックの先頭から取除かれる。
われ、そこでプログラムの実行中に蓄積されたいかなる
漂遊記憶および資源も解放され、それは必要に応じてプ
ログラムXに割当てられた記憶およびそのPAI記憶を
含む。PCBおよびすべての関連の記憶が解放され、エ
ラーコードおよびメッセージを適切に含む最終状態情報
がプログラムの呼出人に提示される。その後、ルーチン
はブロック336へ分岐して戻り呼出プログラムを再開
する。
ログラムの呼出が行なわれるべき機能であれば、ルーチ
ンは図14のブロック300へ分岐し、適切なプログラ
ムを呼出す。
実施例であると考えられるものに関して説明されてきた
が、この発明は開示される実施例に限定されるべきでは
ないと理解されるべきであり、前掲の請求項の精神およ
び範囲内に含まれる様々な変更および同等の配置を包括
することが意図される。
ュニケーションシステムを示すブロック図形式の図であ
る。
る。
例証的な方法を例示する図である。
例証的な方法を例示する図である。
例証的な方法を例示する図である。
例証的な方法を例示する図である。
この発明をどのように使用し得るかを例示する一般的な
フローチャートの図である。
ントロールブロックデータ構造の例示の図である。
ムの動作のシーケンスを正確に叙述するフローチャート
の図である。
ラムの動作のシーケンスを正確に叙述するフローチャー
トの図である。
ラムの動作のシーケンスを正確に叙述するフローチャー
トの図である。
ラムの動作のシーケンスを正確に叙述するフローチャー
トの図である。
ラムの動作のシーケンスを正確に叙述するフローチャー
トの図である。
イザプログラムによって実行される動作のシーケンスを
例示する図である。
イザプログラムによって実行される動作のシーケンスを
例示する図である。
Claims (57)
- 【請求項1】 複数のプログラムを実行するための処理
手段(2)と、プログラム命令およびデータを記憶する
ためのメモリ手段(7)とを有するコンピュータシステ
ムにおいて、プログラム権限情報データ構造(図2)
は、 複数の権限エントリ(32、34、36)を記憶するた
めの手段を含み、前記エントリは関連のプログラムが実
行することを許容される動作を資格付け、 少なくとも1つのセグメントに、前記権限エントリを少
なくとも1つのプログラム(24、28)と関連させる
ためのデータを記憶するための手段をさらに含む、デー
タ構造。 - 【請求項2】 前記少なくとも1つのセグメントは前記
関連のプログラム(24)のハッシュを記憶するための
手段を含む、請求項1に記載のデータ構造。 - 【請求項3】 複数の権限エントリを記憶するための手
段は前記エントリ(34)の各々について少なくとも1
つの型の機能および資源を示すための手段を含む、請求
項1に記載のデータ構造。 - 【請求項4】 複数の権限エントリを記憶するための手
段はプログラムに対して認められている権限および能力
の資格付けを記憶するための手段を含む、請求項1に記
載のデータ構造。 - 【請求項5】 ディジタル署名(40)を記憶するため
の手段をさらに含む、請求項1に記載のデータ構造。 - 【請求項6】 署名する当事者に対して認められる権限
を示すための手段をさらに含む、請求項5に記載のデー
タ構造。 - 【請求項7】 複数のディジタル署名が有効とみなされ
るべき少なくとも1つの署名について必要であることを
示すための手段をさらに含む、請求項5に記載のデータ
構造。 - 【請求項8】 複数の権限エントリを記憶するための前
記手段は、前記関連のプログラムがアクセスする権限を
有するデータの組の指示を記憶するための手段を含む、
請求項1に記載のデータ構造。 - 【請求項9】 複数の権限エントリを記憶するための前
記手段は、前記関連のプログラムがアクセスする権限を
有する少なくとも1つのファイルのフィールドの組の指
示(212)を記憶するための手段を含む、請求項1に
記載のデータ構造。 - 【請求項10】 複数の権限エントリを記憶するための
前記手段は、前記関連のプログラムがプログラムを呼出
す権限を有するか否かの指示(210)を記憶するため
の手段を含む、請求項1に記載のデータ構造。 - 【請求項11】 複数の権限エントリを記憶するための
前記手段は、前記関連のプログラムが電子郵便を生成す
る権限を有するか否かの指示(222)を記憶するため
の手段を含む、請求項1に記載のデータ構造。 - 【請求項12】 複数の権限エントリを記憶するための
前記手段は、前記関連のプログラムがデータを他のユー
ザへ伝送する権限を有するか否かの指示(226)を記
憶するための手段を含む、請求項1に記載のデータ構
造。 - 【請求項13】 複数の権限エントリを記憶するための
前記手段は、前記関連のプログラムが文書開放動作を行
なう権限を有するか否かの指示(228)を記憶するた
めの手段を含む、請求項1に記載のデータ構造。 - 【請求項14】 複数の権限エントリを記憶するための
前記手段は、メモリアクセス特権がこのプログラムで権
限付与されたという指示(232)を記憶するための手
段を含む、請求項1に記載のデータ構造。 - 【請求項15】 複数の権限エントリを記憶するための
前記手段は、ユーザへ情報を表示する能力に関する前記
関連のプログラムの少なくとも1つの修飾の指示(23
8)を記憶するための手段を含む、請求項1に記載のデ
ータ構造。 - 【請求項16】 複数の権限エントリを記憶するための
前記手段は、ユーザのために入力を請求する能力に関し
て前記関連のプログラムにおける少なくとも1つの資格
付けの指示(247)を記憶するための手段を含む、請
求項1に記載のデータ構造。 - 【請求項17】 複数の権限エントリを記憶するための
前記手段は、ユーザのためにディジタル署名を請求する
能力に関して前記関連のプログラムにおける少なくとも
1つの資格付けの指示(246)を記憶するための手段
を含む、請求項1に記載のデータ構造。 - 【請求項18】 複数の権限エントリを記憶するための
前記手段は、装置を制御する能力に関して前記関連のプ
ログラムにおける少なくとも1つの資格付けの指示(2
50)を記憶するための手段を含む、請求項1に記載の
データ構造。 - 【請求項19】 複数の権限エントリを記憶するための
前記手段は、アクセスがセキュリティクリアランスによ
って制限されることの指示を記憶するための手段を含
む、請求項1に記載のデータ構造。 - 【請求項20】 記憶するための前記手段は、文書開放
動作が行なわれてもよいという指示を記憶するための手
段を含む、請求項1に記載のデータ構造。 - 【請求項21】 前記複数の権限エントリはディジタル
署名の一部として含まれる、請求項1に記載のデータ構
造。 - 【請求項22】 複数のプログラムを実行するための処
理手段(2)と、少なくとも1つのプログラムを記憶す
るためのメモリ手段(7)とを含むコンピュータシステ
ムにおいて、データセキュリティのための改良された方
法は、 関連のプログラムによって使用されるであろう少なくと
も1つのそれらのコンピュータ資源および機能を示す複
数の権限エントリを記憶するためのプログラム権限情報
データ構造(図2)を確立するステップと、 前記プログラム権限情報データ構造を格納する(26
6)ステップと、 プログラム権限情報データ構造を、前記コンピュータシ
ステムによって実行されるべき少なくとも1つのプログ
ラムに関連させ、それによってプログラム権限情報がそ
の関連のプログラムが実行されるとき監視されるために
利用可能である(272)ステップとを含む、改良され
た方法。 - 【請求項23】 プログラム権限情報データ構造の一部
として実行されるべき前記プログラムのディジタルハッ
シュ(24)を含むステップをさらに含む、請求項22
に記載の方法。 - 【請求項24】 権限エンティティのプライベートキー
でプログラム権限情報データの少なくとも一部にディジ
タル署名するステップをさらに含む、請求項22に記載
の方法。 - 【請求項25】 ディジタル署名するステップは、複数
のディジタル署名がいかなるディジタル署名も有効であ
るために要求されるということを示す(44)ことを含
む、請求項24に記載の方法。 - 【請求項26】 ディジタル署名するステップは、署名
者に認められている権限の少なくとも1つの資格付けを
示す(40)ステップを含む、請求項24に記載の方
法。 - 【請求項27】 プログラム権限情報データ構造は関連
のプログラムが実行される前にコンピュータユーザによ
って規定される、請求項22に記載の方法。 - 【請求項28】 前記コンピュータユーザは特別な特権
を有さず、前記ユーザ自身の使用のために前記プログラ
ム権限情報を規定する、請求項27に記載の方法。 - 【請求項29】 確立するステップは、プログラムがア
クセスを有し得る少なくとも1つのデータファイルの少
なくとも一部の指示(212)を与える、請求項22に
記載の方法。 - 【請求項30】 確立するステップは、実行されるべき
プログラムがアクセスを有する少なくとも1つのファイ
ルの指示を与え、かつ少なくとも1つのファイルに情報
を書込む能力を特定する(216)、請求項22に記載
の方法。 - 【請求項31】 確立するステップは、前記プログラム
によって呼出される権限を付与されるプログラムの組の
指示(220)を与える、請求項22に記載の方法。 - 【請求項32】 実行されるべきプログラムと関連する
前記記憶されたプログラム権限情報を使用して、そうで
なければ前記プログラムへ利用可能であろう少なくとも
1つの資源および機能の使用を制限するステップをさら
に含む、請求項22に記載の方法。 - 【請求項33】 確立するステップは、情報を伝送する
前記関連のプログラムの権限を支配する少なくとも1つ
の規則を示す(226)、請求項22に記載の方法。 - 【請求項34】 少なくとも1つの規則は、情報を伝送
する権限が電子郵便を利用するステップを含むことを示
す(222)、請求項33に記載の方法。 - 【請求項35】 確立するステップは、ディジタル署名
を行なうプログラムの能力を支配する少なくとも1つの
規則を与える、請求項22に記載の方法。 - 【請求項36】 確立するステップは、文書開放動作を
行なうプログラムの能力を資格付けする、請求項22に
記載の方法。 - 【請求項37】 確立するステップは、権限のために十
分な監視を受けていない機械語命令を実行するプログラ
ムの能力を資格付けする、請求項22に記載の方法。 - 【請求項38】 確立するステップは、前記関連のプロ
グラムがアクセスすることを許容されるメモリの組を資
格付けする(212、216)、請求項22に記載の方
法。 - 【請求項39】 確立するステップは、ユーザへ情報を
表示するプログラムの能力を支配する資格付けの組を示
す(238)、請求項22に記載の方法。 - 【請求項40】 確立するステップは、ユーザから情報
を請求するプログラムの能力を支配する資格付けの組を
示す(242)、請求項22に記載の方法。 - 【請求項41】 確立するステップは、コンピュータへ
結合されるコンピュータ制御された資源を制御するプロ
グラムの能力を支配する資格付けの組を示す(25
0)、請求項22に記載の方法。 - 【請求項42】 資格付けの組はモデムを介して情報を
伝送するプログラムの能力を支配する、請求項41に記
載の方法。 - 【請求項43】 複数のプログラムを実行するための手
段と、実行するための前記手段へ結合され、データおよ
びプログラム命令を記憶するためのメモリ手段とを有す
るコンピュータシステムにおいて、コンピュータユーザ
のために実行するための前記手段によってプログラムを
実行するための方法は、 実行されるべきプログラムを識別するステップ(30
0)と、 プログラム権限情報データ構造がプログラムと関連して
いるか否かを決定するステップ(304)とを含み、前
記プログラム権限データ構造は前記コンピュータユーザ
に対して利用可能である動作の実行からプログラムの能
力を資格付けし、 前記プログラム権限情報データ構造を、前記プログラム
と関連しているかを調べるステップ(310、330)
と、 関連のプログラムが企図された動作を実行することを許
容されるか否か、前記プログラム権限情報の調査から決
定するステップ(342)と、 もし前記プログラム権限情報データ構造が、前記プログ
ラムが企図された動作を実行することを許容されないこ
とを示せば、前記動作の性能を抑制するステップ(34
4、410)とをさらに含む、方法。 - 【請求項44】 前記プログラムが要求された資源を利
用することを許可する前に、前記権限情報をチェックす
るステップをさらに含む、請求項43に記載の方法。 - 【請求項45】 前記プログラム権限情報データ構造が
前記関連のプログラムで規定される動作の性能を許容す
るか否かをチェックするステップをさらに含む、請求項
43に記載の方法。 - 【請求項46】 ユーザが予め定められた動作を行なう
プログラムを実行する権限を割当てられているか否かを
決定するためにチェックを行なうステップ(346)を
さらに含む、請求項43に記載の方法。 - 【請求項47】 前記プログラム権限情報データ構造に
関連するいかなるディジタル署名も確証するステップ
(316)をさらに含む、請求項43に記載の方法。 - 【請求項48】 もし前記ディジタル署名が有効でなけ
れば、前記プログラムの実行を抑制するためのステップ
(322、324)を含む、請求項47に記載の方法。 - 【請求項49】 前記プログラムの権限情報を前記プロ
グラムを呼出しているルーチンに関連する権限情報と組
合わせるステップをさらに含む、請求項43に記載の方
法。 - 【請求項50】 前記権限情報データ構造は前記プログ
ラムのハッシュを記憶するための手段を含み、前記プロ
グラムのハッシュを計算し、計算されたハッシュを前記
記憶されたハッシュと比較するステップをさらに含む、
請求項43に記載の方法。 - 【請求項51】 ディジタル署名の署名者と関連する権
限を確証するステップ(308)をさらに含む、請求項
43に記載の方法。 - 【請求項52】 前記プログラムの権限情報を、前記プ
ログラムによって呼出されるルーチンと関連する権限情
報と組合わせるステップをさらに含む、請求項43に記
載の方法。 - 【請求項53】 前記権限情報は前記関連のプログラム
がアクセスする権限を有するデータの組の指示を含む、
請求項43に記載の方法。 - 【請求項54】 前記プログラム命令は機械語コードで
表され、前記動作はプログラム権限データ構造を監視
し、補強する制御されたスーパバイザへの呼出しを介し
て行なわれる、請求項43に記載の方法。 - 【請求項55】 前記プログラム権限情報を、自身を別
の行先へ伝送するための命令を含む移動プログラムと関
連させるステップをさらに含む、請求項43に記載の方
法。 - 【請求項56】 証明を変数として、前記変数が前記プ
ログラムによって演算され得るような移動プログラム内
に記憶するステップをさらに含む、請求項55に記載の
方法。 - 【請求項57】 前記プログラム命令は、前記プログラ
ム権限データ構造を監視し、補強するインタプリタプロ
グラムによって処理される解釈「疑似」コードで表され
る、請求項43に記載の方法。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US88386792A | 1992-05-15 | 1992-05-15 | |
US883867 | 1992-05-15 | ||
US07/883,868 US5412717A (en) | 1992-05-15 | 1992-05-15 | Computer system security method and apparatus having program authorization information data structures |
US883868 | 1992-05-15 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005358699A Division JP3880607B2 (ja) | 1992-05-15 | 2005-12-13 | プログラム権限情報データ構造 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH06103058A true JPH06103058A (ja) | 1994-04-15 |
JP3784423B2 JP3784423B2 (ja) | 2006-06-14 |
Family
ID=27128706
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP11315793A Expired - Lifetime JP3784423B2 (ja) | 1992-05-15 | 1993-05-14 | データセキュリティのための改良された方法、およびコンピュータシステム |
JP2005358699A Expired - Lifetime JP3880607B2 (ja) | 1992-05-15 | 2005-12-13 | プログラム権限情報データ構造 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005358699A Expired - Lifetime JP3880607B2 (ja) | 1992-05-15 | 2005-12-13 | プログラム権限情報データ構造 |
Country Status (7)
Country | Link |
---|---|
EP (1) | EP0570123B1 (ja) |
JP (2) | JP3784423B2 (ja) |
AT (1) | ATE177857T1 (ja) |
AU (1) | AU672786B2 (ja) |
CA (1) | CA2095087C (ja) |
DE (1) | DE69323926T2 (ja) |
ES (1) | ES2128393T3 (ja) |
Cited By (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0816387A (ja) * | 1994-06-22 | 1996-01-19 | At & T Corp | プログラム実行装置 |
JPH08137686A (ja) * | 1994-09-16 | 1996-05-31 | Toshiba Corp | 著作物データ管理方法及び著作物データ管理装置 |
JPH1083310A (ja) * | 1996-06-11 | 1998-03-31 | Internatl Business Mach Corp <Ibm> | プログラム・コードの配布方法及びシステム |
JPH10507324A (ja) * | 1994-09-07 | 1998-07-14 | インテル・コーポレーション | ハードウェア・エージェントに対するロビング・ソフトウェア・ライセンス |
JP2001127747A (ja) * | 1999-10-25 | 2001-05-11 | Toshiba Corp | 情報暗号化復号化装置 |
KR20020034862A (ko) * | 2000-11-02 | 2002-05-09 | 권문상 | 컴퓨터의 응용프로그램의 비밀값 제어방법 |
WO2003088056A1 (fr) * | 2002-04-15 | 2003-10-23 | Sony Corporation | Dispositif de traitement d'information, procede et programme correspondants |
JP2005501328A (ja) * | 2001-08-27 | 2005-01-13 | バイエリッシェ モートーレン ウエルケ アクチエンゲゼルシャフト | 車両の制御器により使用されるソフトウェアを提供するための方法 |
JP2005071339A (ja) * | 2003-08-21 | 2005-03-17 | Samsung Electronics Co Ltd | ユーザ間のコンテンツに対する権限情報の共有方法 |
JP2005129066A (ja) * | 2003-10-24 | 2005-05-19 | Microsoft Corp | オペレーティングシステムリソース保護 |
WO2005052769A1 (ja) * | 2003-11-28 | 2005-06-09 | Matsushita Electric Industrial Co.,Ltd. | データ処理装置 |
JP2006504189A (ja) * | 2002-10-25 | 2006-02-02 | エクスパートン、ベッティーナ | ネットワークアドレスおよびアプリケーションを自動起動しアクセスするためのシステムおよび方法(優先権)これは、特許協力条約(pct)に基づいて提出された国際特許出願である。この国際出願は、参照として組み込まれた、2002年10月25日に出願された米国仮出願第60/421,622号の優先権を主張する。 |
JP2008159072A (ja) * | 1995-02-13 | 2008-07-10 | Intertrust Technologies Corp | 安全な取引管理装置および電子権利保護のためのシステムおよび方法 |
JP2008210408A (ja) * | 1994-11-23 | 2008-09-11 | Contentguard Holdings Inc | レンダリングシステム |
JP2009123247A (ja) * | 1999-12-10 | 2009-06-04 | Microsoft Corp | クライアント側のブートドメインおよびブート規則 |
US7684792B2 (en) | 2001-05-31 | 2010-03-23 | Qualcomm Incorporated | Safe application distribution and execution in a wireless environment |
US8396939B2 (en) | 2007-02-14 | 2013-03-12 | Ntt Docomo, Inc. | Content distribution management device, terminal, program, and content distribution system |
JP2014504764A (ja) * | 2011-01-18 | 2014-02-24 | アップル インコーポレイテッド | メモリ範囲を無作為に割り当てたセキュアシステムにおいてjitをサポートするためのシステム及び方法 |
US8744424B2 (en) | 2002-05-20 | 2014-06-03 | Ntt Docomo, Inc. | Portable terminal, methods, programs and storage media for program startup management |
USRE46387E1 (en) | 1998-09-11 | 2017-05-02 | Genesys Telecommunications Laboratories, Inc. | Method and apparatus for extended management of state and interaction of a remote knowledge worker from a contact center |
USRE46438E1 (en) | 1999-09-24 | 2017-06-13 | Genesys Telecommunications Laboratories, Inc. | Method and apparatus for data-linking a mobile knowledge worker to home communication-center infrastructure |
US9690946B2 (en) | 2012-11-14 | 2017-06-27 | International Business Machines Corporation | Security analysis using relational abstraction of data structures |
US9854006B2 (en) | 2005-12-22 | 2017-12-26 | Genesys Telecommunications Laboratories, Inc. | System and methods for improving interaction routing performance |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
NZ279622A (en) * | 1994-01-13 | 1998-04-27 | Certco Llc | Encrypted secure and verifiable communication: cryptographic keys escrowed |
US5553143A (en) * | 1994-02-04 | 1996-09-03 | Novell, Inc. | Method and apparatus for electronic licensing |
US5553139A (en) * | 1994-04-04 | 1996-09-03 | Novell, Inc. | Method and apparatus for electronic license distribution |
EP0717337B1 (en) * | 1994-12-13 | 2001-08-01 | International Business Machines Corporation | Method and system for the secured distribution of programs |
US6948070B1 (en) | 1995-02-13 | 2005-09-20 | Intertrust Technologies Corporation | Systems and methods for secure transaction management and electronic rights protection |
US5943422A (en) | 1996-08-12 | 1999-08-24 | Intertrust Technologies Corp. | Steganographic techniques for securely delivering electronic digital rights management control information over insecure communication channels |
US6157721A (en) | 1996-08-12 | 2000-12-05 | Intertrust Technologies Corp. | Systems and methods using cryptography to protect secure computing environments |
US5892900A (en) | 1996-08-30 | 1999-04-06 | Intertrust Technologies Corp. | Systems and methods for secure transaction management and electronic rights protection |
US6658568B1 (en) | 1995-02-13 | 2003-12-02 | Intertrust Technologies Corporation | Trusted infrastructure support system, methods and techniques for secure electronic commerce transaction and rights management |
US7133846B1 (en) | 1995-02-13 | 2006-11-07 | Intertrust Technologies Corp. | Digital certificate support system, methods and techniques for secure electronic commerce transaction and rights management |
US5905860A (en) * | 1996-03-15 | 1999-05-18 | Novell, Inc. | Fault tolerant electronic licensing system |
CA2202118A1 (en) * | 1996-04-29 | 1997-10-29 | Mitel Corporation | Protected persistent storage access for mobile applications |
US5987123A (en) * | 1996-07-03 | 1999-11-16 | Sun Microsystems, Incorporated | Secure file system |
US6148083A (en) * | 1996-08-23 | 2000-11-14 | Hewlett-Packard Company | Application certification for an international cryptography framework |
US5841870A (en) * | 1996-11-12 | 1998-11-24 | Cheyenne Property Trust | Dynamic classes of service for an international cryptography framework |
US5920861A (en) * | 1997-02-25 | 1999-07-06 | Intertrust Technologies Corp. | Techniques for defining using and manipulating rights management data structures |
US6167522A (en) * | 1997-04-01 | 2000-12-26 | Sun Microsystems, Inc. | Method and apparatus for providing security for servers executing application programs received via a network |
BR9806000A (pt) * | 1997-06-17 | 2000-01-25 | Purdue Pharma Lp | Documento autodestrutivo e sistema de envio de mensagens por e-mail. |
US6000032A (en) * | 1997-07-15 | 1999-12-07 | Symantec Corporation | Secure access to software modules |
US6188995B1 (en) | 1997-07-28 | 2001-02-13 | Apple Computer, Inc. | Method and apparatus for enforcing software licenses |
IL123512A0 (en) | 1998-03-02 | 1999-03-12 | Security 7 Software Ltd | Method and agent for the protection against hostile resource use access |
DE69941142D1 (de) * | 1998-05-06 | 2009-09-03 | Sun Microsystems Inc | Verarbeitungsmaschine und verarbeitungsverfahren |
US6901386B1 (en) * | 2000-03-31 | 2005-05-31 | Intel Corporation | Electronic asset lending library method and apparatus |
US7263616B1 (en) | 2000-09-22 | 2007-08-28 | Ge Medical Systems Global Technology Company, Llc | Ultrasound imaging system having computer virus protection |
JPWO2003107182A1 (ja) | 2002-06-12 | 2005-10-20 | 松下電器産業株式会社 | サービス安全拡張プラットフォーム |
JP6236816B2 (ja) * | 2013-03-15 | 2017-11-29 | 株式会社リコー | 画像処理システム、情報処理装置及びプログラム |
US10694352B2 (en) | 2015-10-28 | 2020-06-23 | Activision Publishing, Inc. | System and method of using physical objects to control software access |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5005200A (en) * | 1988-02-12 | 1991-04-02 | Fischer Addison M | Public key/signature cryptosystem with enhanced digital signature certification |
JPH04123250A (ja) * | 1990-09-14 | 1992-04-23 | Fujitsu Ltd | ファイルアクセス制限処理装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2059652B (en) | 1979-09-29 | 1983-08-24 | Plessey Co Ltd | Memory protection system using capability registers |
AU618056B2 (en) * | 1987-11-10 | 1991-12-12 | Acresso Software Inc. | Computer program license management system |
CA2093094C (en) | 1992-04-06 | 2000-07-11 | Addison M. Fischer | Method and apparatus for creating, supporting, and using travelling programs |
-
1993
- 1993-04-26 AT AT93303223T patent/ATE177857T1/de active
- 1993-04-26 DE DE69323926T patent/DE69323926T2/de not_active Expired - Lifetime
- 1993-04-26 ES ES93303223T patent/ES2128393T3/es not_active Expired - Lifetime
- 1993-04-26 EP EP93303223A patent/EP0570123B1/en not_active Expired - Lifetime
- 1993-04-28 CA CA002095087A patent/CA2095087C/en not_active Expired - Lifetime
- 1993-04-28 AU AU38209/93A patent/AU672786B2/en not_active Expired
- 1993-05-14 JP JP11315793A patent/JP3784423B2/ja not_active Expired - Lifetime
-
2005
- 2005-12-13 JP JP2005358699A patent/JP3880607B2/ja not_active Expired - Lifetime
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5005200A (en) * | 1988-02-12 | 1991-04-02 | Fischer Addison M | Public key/signature cryptosystem with enhanced digital signature certification |
JPH04123250A (ja) * | 1990-09-14 | 1992-04-23 | Fujitsu Ltd | ファイルアクセス制限処理装置 |
Cited By (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0816387A (ja) * | 1994-06-22 | 1996-01-19 | At & T Corp | プログラム実行装置 |
JPH10507324A (ja) * | 1994-09-07 | 1998-07-14 | インテル・コーポレーション | ハードウェア・エージェントに対するロビング・ソフトウェア・ライセンス |
JPH08137686A (ja) * | 1994-09-16 | 1996-05-31 | Toshiba Corp | 著作物データ管理方法及び著作物データ管理装置 |
JP4521049B2 (ja) * | 1994-11-23 | 2010-08-11 | コンテントガード ホールディングズ インコーポレイテッド | ディジタルワークの使用または配給を制御するシステム |
JP2008287726A (ja) * | 1994-11-23 | 2008-11-27 | Contentguard Holdings Inc | ディジタルワークの使用または配給を制御するシステム |
JP2008210408A (ja) * | 1994-11-23 | 2008-09-11 | Contentguard Holdings Inc | レンダリングシステム |
JP2008159072A (ja) * | 1995-02-13 | 2008-07-10 | Intertrust Technologies Corp | 安全な取引管理装置および電子権利保護のためのシステムおよび方法 |
JPH1083310A (ja) * | 1996-06-11 | 1998-03-31 | Internatl Business Mach Corp <Ibm> | プログラム・コードの配布方法及びシステム |
USRE46521E1 (en) | 1997-09-30 | 2017-08-22 | Genesys Telecommunications Laboratories, Inc. | Method and apparatus for extended management of state and interaction of a remote knowledge worker from a contact center |
USRE46387E1 (en) | 1998-09-11 | 2017-05-02 | Genesys Telecommunications Laboratories, Inc. | Method and apparatus for extended management of state and interaction of a remote knowledge worker from a contact center |
US10218848B2 (en) | 1998-09-11 | 2019-02-26 | Genesys Telecommunications Laboratories, Inc. | Method and apparatus for extended management of state and interaction of a remote knowledge worker from a contact center |
USRE46457E1 (en) | 1999-09-24 | 2017-06-27 | Genesys Telecommunications Laboratories, Inc. | Method and apparatus for data-linking a mobile knowledge worker to home communication-center infrastructure |
USRE46438E1 (en) | 1999-09-24 | 2017-06-13 | Genesys Telecommunications Laboratories, Inc. | Method and apparatus for data-linking a mobile knowledge worker to home communication-center infrastructure |
JP2001127747A (ja) * | 1999-10-25 | 2001-05-11 | Toshiba Corp | 情報暗号化復号化装置 |
JP2009123247A (ja) * | 1999-12-10 | 2009-06-04 | Microsoft Corp | クライアント側のブートドメインおよびブート規則 |
JP4550147B2 (ja) * | 1999-12-10 | 2010-09-22 | マイクロソフト コーポレーション | コンポーネントをロードするための方法、システム及び記録媒体 |
KR20020034862A (ko) * | 2000-11-02 | 2002-05-09 | 권문상 | 컴퓨터의 응용프로그램의 비밀값 제어방법 |
US8112076B2 (en) | 2001-05-31 | 2012-02-07 | Qualcomm Incorporated | Safe application distribution and execution in a wireless environment |
US7684792B2 (en) | 2001-05-31 | 2010-03-23 | Qualcomm Incorporated | Safe application distribution and execution in a wireless environment |
US8588766B2 (en) | 2001-05-31 | 2013-11-19 | Qualcomm Incorporated | Safe application distribution and execution in a wireless environment |
JP2005501328A (ja) * | 2001-08-27 | 2005-01-13 | バイエリッシェ モートーレン ウエルケ アクチエンゲゼルシャフト | 車両の制御器により使用されるソフトウェアを提供するための方法 |
WO2003088056A1 (fr) * | 2002-04-15 | 2003-10-23 | Sony Corporation | Dispositif de traitement d'information, procede et programme correspondants |
US8744424B2 (en) | 2002-05-20 | 2014-06-03 | Ntt Docomo, Inc. | Portable terminal, methods, programs and storage media for program startup management |
USRE46538E1 (en) | 2002-10-10 | 2017-09-05 | Genesys Telecommunications Laboratories, Inc. | Method and apparatus for extended management of state and interaction of a remote knowledge worker from a contact center |
JP2006504189A (ja) * | 2002-10-25 | 2006-02-02 | エクスパートン、ベッティーナ | ネットワークアドレスおよびアプリケーションを自動起動しアクセスするためのシステムおよび方法(優先権)これは、特許協力条約(pct)に基づいて提出された国際特許出願である。この国際出願は、参照として組み込まれた、2002年10月25日に出願された米国仮出願第60/421,622号の優先権を主張する。 |
JP4694800B2 (ja) * | 2003-08-21 | 2011-06-08 | 三星電子株式会社 | ユーザ間のコンテンツに対する権限情報の共有方法 |
US8316461B2 (en) | 2003-08-21 | 2012-11-20 | Samsung Electronics Co., Ltd. | Method for sharing rights objects between users |
US7734917B2 (en) | 2003-08-21 | 2010-06-08 | Samsung Electronics Co., Ltd. | Method for sharing rights objects between users |
JP2005071339A (ja) * | 2003-08-21 | 2005-03-17 | Samsung Electronics Co Ltd | ユーザ間のコンテンツに対する権限情報の共有方法 |
JP2005129066A (ja) * | 2003-10-24 | 2005-05-19 | Microsoft Corp | オペレーティングシステムリソース保護 |
US7788487B2 (en) | 2003-11-28 | 2010-08-31 | Panasonic Corporation | Data processing apparatus |
WO2005052769A1 (ja) * | 2003-11-28 | 2005-06-09 | Matsushita Electric Industrial Co.,Ltd. | データ処理装置 |
US9854006B2 (en) | 2005-12-22 | 2017-12-26 | Genesys Telecommunications Laboratories, Inc. | System and methods for improving interaction routing performance |
US8396939B2 (en) | 2007-02-14 | 2013-03-12 | Ntt Docomo, Inc. | Content distribution management device, terminal, program, and content distribution system |
JP2014504764A (ja) * | 2011-01-18 | 2014-02-24 | アップル インコーポレイテッド | メモリ範囲を無作為に割り当てたセキュアシステムにおいてjitをサポートするためのシステム及び方法 |
US9690945B2 (en) | 2012-11-14 | 2017-06-27 | International Business Machines Corporation | Security analysis using relational abstraction of data structures |
US9690946B2 (en) | 2012-11-14 | 2017-06-27 | International Business Machines Corporation | Security analysis using relational abstraction of data structures |
US10380349B2 (en) | 2012-11-14 | 2019-08-13 | International Business Machines Corporation | Security analysis using relational abstraction of data structures |
Also Published As
Publication number | Publication date |
---|---|
JP3784423B2 (ja) | 2006-06-14 |
ES2128393T3 (es) | 1999-05-16 |
DE69323926T2 (de) | 1999-09-30 |
EP0570123A1 (en) | 1993-11-18 |
EP0570123B1 (en) | 1999-03-17 |
AU672786B2 (en) | 1996-10-17 |
AU3820993A (en) | 1993-11-18 |
JP2006099805A (ja) | 2006-04-13 |
CA2095087C (en) | 1999-06-01 |
DE69323926D1 (de) | 1999-04-22 |
CA2095087A1 (en) | 1993-11-16 |
ATE177857T1 (de) | 1999-04-15 |
JP3880607B2 (ja) | 2007-02-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3784423B2 (ja) | データセキュリティのための改良された方法、およびコンピュータシステム | |
US5412717A (en) | Computer system security method and apparatus having program authorization information data structures | |
US5347578A (en) | Computer system security | |
US8195938B2 (en) | Cloud-based application whitelisting | |
Biba | Integrity considerations for secure computer systems | |
US6934758B2 (en) | Stack-based access control using code and executor identifiers | |
KR100267872B1 (ko) | 프로그램코드배포방법및컴퓨터시스템 | |
Karger | Limiting the damage potential of discretionary Trojan horses | |
US7200869B1 (en) | System and method for protecting domain data against unauthorized modification | |
Abrams | RENEWED UNDERSTANDING OF ACCESS CONTROL POLICIES¹ | |
Pramanik et al. | Security policies to mitigate insider threat in the document control domain | |
KR20020016711A (ko) | 다중 등급 보안 방식에 의한 강제적 객체접근 제어 방법및 이를 프로그램화하여 수록한 컴퓨터로 읽을 수 있는기록매체 | |
JP3756397B2 (ja) | アクセス制御方法およびアクセス制御装置および記録媒体 | |
WO2018065750A1 (en) | Enhanced computer objects security | |
Pozzo et al. | A model for the containment of computer viruses | |
Rabin et al. | An integrated toolkit for operating system security | |
JP2005085026A (ja) | アクセス制御装置ならびにそのプログラム | |
Grimm et al. | Access control in extensible systems | |
Langmead | Comparative Evaluation of Access Control Models | |
US7653630B2 (en) | Method and apparatus for facilitating privileged object stores in a database | |
CN115270157A (zh) | 一种访问控制方法及系统 | |
Wong et al. | Providing software integrity using type managers | |
Ooi | Access control for an object-oriented distributed platform | |
Privileges | Privileges, Permissions, & File I/O | |
Irvine | Security Policy Enforcement |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20030408 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20050912 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20050915 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20051213 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060315 |
|
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: 20100324 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110324 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110324 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120324 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130324 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130324 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140324 Year of fee payment: 8 |
|
EXPY | Cancellation because of completion of term |