JP2002533799A - ソフトウェアエージェントとエージェントアクティビティの検証 - Google Patents

ソフトウェアエージェントとエージェントアクティビティの検証

Info

Publication number
JP2002533799A
JP2002533799A JP2000590027A JP2000590027A JP2002533799A JP 2002533799 A JP2002533799 A JP 2002533799A JP 2000590027 A JP2000590027 A JP 2000590027A JP 2000590027 A JP2000590027 A JP 2000590027A JP 2002533799 A JP2002533799 A JP 2002533799A
Authority
JP
Japan
Prior art keywords
agent
software
site
resource
trusted
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2000590027A
Other languages
English (en)
Other versions
JP4553491B2 (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.)
Koninklijke Philips NV
Original Assignee
Philips Electronics NV
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 Philips Electronics NV filed Critical Philips Electronics NV
Publication of JP2002533799A publication Critical patent/JP2002533799A/ja
Application granted granted Critical
Publication of JP4553491B2 publication Critical patent/JP4553491B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • G06F9/4856Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration
    • G06F9/4862Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration the task being a mobile agent, i.e. specifically designed to migrate

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)
  • Stored Programmes (AREA)

Abstract

(57)【要約】 【課題】 ソフトウェアエージェントとそれらのアクティビティを検証するための装置と方法を提供すること。 【解決手段】 本発明は、ソフトウェアエージェントとそれらのアクティビティの検証を提供する。分散コンピューティング環境において、オリジンリソース、行き先リソースと信頼されたリソースが、設けられている。オリジンリソースは、エージェントの情報および/または扱うタスクが、ほとんどの場合、オリジンリソースに関連しているソフトウェアエージェントに関連している。行き先リソースは、ほとんどの場合、扱うタスクのパフォーマンスにおいてエージェントを進めることが期待されるソフトウェアエージェントに関連している。信頼出来るリソースは、という点で、その信頼出来るリソースがソフトウェアエージェントとそのアクティビティの検証を提供するように機能するソフトウェアエージェントに関連している。信頼できるリソースは、例えば、ソフトウェアエージェントの受け取り/転送;ソフトウェアエージェントの暗号化/解読;ソフトウェアエージェント指紋の取得、格納、検索、および比較;行き先リソースとのインタラクションの適切さを示すTRルールの実行;リターンタイマーの確立、設定、更新、および点検;エージェントとそのアクティビティの検証に関連する検証リターンの生成および転送;信頼できるリソースが対話するソフトウェアエージェントのアクティビティの記録;そしてソフトウェアエージェント、特に、TRルールの一部(一つまたは複数)または全ての、除去、マスキング、または保護、の一つ以上の選択された演算をサポートすることが好ましい。

Description

【発明の詳細な説明】
【0001】
【発明が属する技術分野】
本発明は、ソフトウェアエージェントとそれらのアクティビティに関し、特に
、ソフトウェアエージェントと分散コンピューティング環境におけるそれらのア
クティビティの検証に関する。
【0002】
【従来の技術】
情報集約型のコンピューティング環境の場合、ユーザは、情報を過剰にロード
し、かつ計算リソースを非効率的に消費する傾向がある。このような過剰なロー
ドと非効率性を軽減するために、ソフトウェアプログラマは、ソフトウェアエー
ジェントとして広く知られているプログラムを構成してきた。実際に、ソフトウ
ェアエージェントは周知のユーザツールである。
【0003】 典型的には、ソフトウェアエージェントは、例えば、ユーザに代わって一つ以
上のタスクを達成することを扱う。例えば、あるソフトウェアエージェントは、
情報をサーチし、フィルターをかけ、分析し、かつ情報に優先順位を割り当てる
。他の具体例として、あるソフトウェアエージェントは、銀行業務タスクとそれ
に関連する口座情報、電子商取引とそれに関連するクレジットカード情報、そし
てトレードシークレットまたはトレード機密に関わる情報を有するその他の取引
のような、機密に関わるタスクとそれに関連する情報を扱う。
【0004】 タスクを達成するために、ソフトウェアエージェントは、典型的には、例えば
、サーバにより管理されるサービスを得るため、および/または他のエージェン
トと対話するために、コンピューティング環境に働く。このような条件下で、ソ
フトウェアエージェントは、いろいろに破損される。例えば、ソフトウェアエー
ジェントは、そのコードを変更させること等によりウイルスを組み込みまたは他
の望ましくない機能を与えて、破損させる(例えば、悪意をもって改悪する)こと
ができる。ウイルスにより破損されたエージェントは、典型的には、そのウイル
スをコンピューティング環境(例えば、サーバ)内に、および/またはそれが対話
する他のエージェント内に拡散させることが出来る。
【0005】 他の具体例としては、ソフトウェアエージェントそれ自体が、扱うタスクまた
はそのタスクに関連する情報の何れかについてのそのコードの変化等により、破
損してしまう場合がある。銀行送金タスクを扱うエージェントの場合、送金の内
容または送金額を変えるためにそのコードを変更すると、そのエージェントは破
損される。
【0006】 まだ他の具体例の場合、ソフトウェアエージェントに破損は無いが、エージェ
ントは、環境の一部で悪意の演算が実行されることにより、機能的/間接的に破
損される。具体的には、銀行送金タスクを扱うエージェントは、一定送金額を第
一の口座から第二の口座に送金することを要請する情報を保持するであろう。し
かしながら、このエージェントは、送金サーバそれ自体に存在する悪意により破
損される場合がある。この場合のエージェントの破損は、(i)異なる金額を送金
すること、または、(ii)この送金額を第三口座に送ること、または、(iii)これ
ら両方等により、タスクのインプリメンテーションが変化してしまうことになる
。エージェントへのまたはエージェントによる、(または、その他による)、要
請されたタスクが適切に実施されたと言う誤った報告が伴うと、エージェントの
破損は増大する。
【0007】 エージェントの破損は、通常、暗号化技術では充分に保護されない。すなわち
、暗号化技術は、ソフトウェアエージェントのオリジンを検証することはできる
が、これらの技術は、典型的には、破損を妨げる能力に限界を有している。特に
、このような破損が暗号化の前または解読の後に発生する場合、暗号化技術が、
エージェントの破損を防ぐことは、通常、困難である。
【0008】 したがって、分散コンピューティング環境におけるソフトウェアエージェント
とそれらのアクティビティを検証する方法と装置が、必要とされている。特に、
悪意のある演算が環境内に存在する可能性がある場合に、このような方法と装置
が必要とされる。
【0009】
【課題を解決するための手段】
本発明は、ソフトウェアエージェントとそれらのアクティビティを検証するた
めの装置と方法を提供する。分散コンピューティング環境においては、オリジン
リソース、行き先リソースおよび信頼出来るリソースが、設けられている。オリ
ジンリソースは、ほとんどの場合、エージェントの情報および/または扱うタス
クが、オリジンリソースに関連しているソフトウェアエージェントに、関係して
いる。オリジンリソースは、典型的には、情報を提供し、および/またはソフト
ウェアエージェントにタスクを託し、そしてエージェント等のリターンにより、
エージェントのアクティビティの結果についての情報のレポートを受信するのを
期待する。
【0010】 オリジンリソースは、典型的には、ソフトウェアエージェントを立ち上げる。
しかしながら、ソフトウェアエージェントは、一つ以上のオリジンリソースに関
係させることができ、かつ、これは、最初、このようなリソースのいずれかによ
りまたは他のリソースにより立ち上げることができる(例えば、ソフトウェアエ
ージェントは、最初、信頼の置けるリソースまたは行き先リソースにより立ち上
げることが出来る)。
【0011】 行き先リソースは、ほとんどの場合、扱うタスクのパフォーマンスにおいてエ
ージェントを進めることが期待されるソフトウェアエージェントに関連する。行
き先リソースは、典型的には、エージェントを受信し、それと対話し、そしてエ
ージェントの扱うタスクの一つ以上のパフォーマンスを実行し、および/または
それに貢献する。いかなる一つのソフトウェアエージェントも、一つ以上の関連
した行き先リソースを有することができる。
【0012】 信頼出来るリソースが、ソフトウェアエージェントとそのアクティビティにつ
いての検証を提供するように機能するという点で、信頼出来るリソースは、ソフ
トウェアエージェントと関連する。信頼出来るリソースは、ソフトウェアエージ
ェントの受信/転送;全体のソフトウェアエージェント全体または一部の暗号化
/解読;ソフトウェアエージェント指紋の取得、格納、検索、そして比較;可変
情報のチェックを含む、ルールの実行;リターンタイマーの確立、設定、更新、
およびチェック;エージェントとそのアクティビティの検証に関連した検証通知
、レポートまたは他のリターン(このような検証リターンは、典型的には、オリ
ジンリソースおよび/または立ち上げリソースに向けられる)の生成;それが対
話するソフトウェアエージェントのアクティビティの記録;そしてソフトウェア
エージェントの一部または全ての除去、マスキングまたはその他の保護; の内
の一つ以上の選択された演算をサポートする選択されたメカニズムを、それと関
連づけることが好ましい。
【0013】 信頼出来るリソースは、破損しないことが好ましい。このために、信頼出来る
リソースに常駐するハードウェアおよび/またはソフトウェアが、その信頼出来
るリソースそれ自体のセキュリティを遂行することが好ましい。このセキュリテ
ィ指向のハードウェア/ソフトウェアは、信頼出来るリソースを、例えば、ソフ
トウェアエージェントまたはその他の何れにより導入されるにしろ、ウイルスお
よびその他の他の破損影響から保護する。さらに、ある破損が、信頼出来るリソ
ースに発生すると仮定すると、セキュリティ指向のハードウェア/ソフトウェア
は、信頼出来るリソースと関連するいかなるオペレーティングシステムおよびア
プリケーションソフトウェアも含めて、いかなる破損も識別しかつ補正すること
が出来ることが好ましい。
【0014】 本発明は、本発明のこの装置と方法を使用して、検証を可能とするように構成
されているソフトウェアエージェントも提供する。いずれの種類のエージェント
も、一つ以上の固定フィールドと可変フィールドを有することが好ましい。固定
フィールドは、典型的には、アドレス、ルール、データまたは他の固定された情
報(エージェントが達成することを託されているタスク(一つまたは複数)に拘わ
らず、変化しない情報)をサポートする。可変フィールドは、典型的には、演算
フラグ(例えば、新たな/古いフラグ)、ルール、データまたは他の可変情報(エ
ージェントがその扱うタスク(一つまたは複数)を達成するさいに、変化する情報
)をサポートする。いずれの種類のエージェントも、例えば、可変情報の適切な
修正のチェックおよび/またはTRルールが、破損されないことの確保のような、
選択された演算を可能にするルールを含めて、一定ルールをサポートすることが
好ましい。
【0015】 本発明は、同様な要素には同じ番号が付されている添付の図面と共に、以下の
詳細な説明を参照することにより、より良く理解することができるであろう。
【0016】
【発明を実施するための形態】
ソフトウェアエージェントとそれらのアクティビティについての検証により、
ソフトウェアエージェント情報およびタスクが壊されているか否が決定される。
ここで使用される用語「破損」とその修飾された語は、(i)エージェントの宛名
違いまたはリダイレクション、(ii)ウイルスコードまたは他の望ましくない機能
のエージェント内への導入、またはそれとの組み込み、 (iii)エージェントの置換等、(iv)不適切な、許すことのできないまたは承認さ
れていない態様での、エージェント(例えば、そのタスクおよび/または情報)の
、全体または一部の、他の修正、追加または変更、および/または(v)(インプリ
メンテーションの報告が誤っているか否かにかかわらず)エージェントのタスク
の期待されたインプリメンテーションとの相違;の何れかまたは全てを意味する
【0017】 ソフトウェアエージェントとそれらのアクティビティの検証は、エージェント
とそれらのアクティビティの利得クリティカリティとしての、値を向上させる傾
向がある。例えば、a)銀行業務タスクと関連する口座情報;b)電子商取引タスク
と関連するクレジットカード情報;そしてc)トレードシークレットかトレード機
密に関わる情報を有する他の取引;のようなエージェントが、機密に関わる/秘
密のタスクおよびその関連情報に託される場合に、クリティカリティが、存在す
る傾向がある。
【0018】 本発明によると、検証装置と方法は、コンピューティング環境内で、および/
またはその一部で作動する。このようなコンピューティング環境は、インターネ
ット(Internet)またはインターネットのようなシステム、またはワールドワイド
ウェブ(World Wide Web)またはワールドワイドウェブに類したシステム、または
、あらゆるオープンコミュニケーションネットワークまたはサービス、または(
環境それ自体の一部の範囲で悪意のある演算によることも含めて)ソフトウェア
エージェントが破損される可能性が有る他のいかなる環境、のような分散コンピ
ューティング環境を有することが好ましい。
【0019】 広義には、本発明の装置と方法は、オリジンリソース、行き先リソースおよび
信頼出来るリソースを考察する。オリジン、行き先および信頼出来るリソースの
各々は、サイト、サーバ、ソフトウェアアプリケーション、ソフトウェアエージ
ェント、ネットワーク、ファームウェア、または他のハードウェア、ソフトウェ
アまたはネットワークリソース(物理的および/または論理的)の何れかを、単独
であるいは組合せて、一つ以上(以下、通常、「ハードウェア、ソフトウェアお
よび/またはネットワークリソース」と称する)有する。
【0020】 このような各オリジン、行き先および信頼出来るリソースは、一つの物理的位
置で、または、コンピューティング環境内またはそれと関連した複数の分布され
た物理的位置で、実施させることができることは理解されるべきである。例えば
、信頼出来るリソースは、ネットワーク内の、典型的にはコンピューティング装
置を有している一サイトに有るサーバとして実施させることができる。ここで、
サーバは、例えば、オリジンリソースから(または、それに)、行き先リソースに
(または、それから)トラバースすることにより、環境に働く選択されたソフトウ
ェアエージェントと(直接または間接的に)対話するように構成されている。他の
具体例では、信頼出来るリソースは、コンピューティング環境の一つ以上のネッ
トワークにおける種々のサイトの間に分布する常駐域を有する一つ以上のサーバ
として、実施させることができる。これらの2つの具体例にもかかわらず、信頼
出来るリソースを、本発明の原理から逸脱することなく、他の態様で実施するこ
とができることは理解されるべきである。
【0021】 オリジンリソースは、ほとんどの場合、エージェントの情報と扱うタスク(一
つまたは複数)を、オリジンリソースまたはそれに関連したものとすることが出
来るソフトウェアエージェントと関連する。典型的には、オリジンリソースは、
情報を提供することによりおよび/またはタスク(一つまたは複数)をソフトウェ
アエージェントに託すことによりエージェントを規定する。オリジンリソースは
、(a)例えば、コードの形でタスクを提供することにより、(b) 例えば、エージ
ェントが、信頼出来るリソース、行き先リソースまたは第二オリジンリソースの
ような他のリソースにより立ち上げられる場合には、提供されたタスクの中で選
択することにより、 (c)(a)と(b)の組合せ、または、(d)他の方法により、タス
クを託す。(オリジンリソースは、本明細書では、しばしば"OR"と略記される。)
【0022】 オリジンリソースは、典型的には、エージェントがコンピューティング環境に
働くことに基づいてレポートを受信することを期待する。ここで、このようなレ
ポートは、エージェントのアクティビティの結果についてまたはその情報の何れ
かである。しかしながら、タスクが託されているソフトウェアエージェント、ま
たは特定のオリジンリソースにより提供されるまたはそれに対して提供される情
報に、一つ以上の他のオリジンリソースに関連する情報および/またはタスクを
託すこともできることは理解されるべきである。
【0023】 オリジンリソースが、ソフトウェアエージェントを立ち上げることが可能であ
ることが好ましい。しかしながら、特定のオリジンリソースに関連したソフトウ
ェアエージェントを、最初にオリジンリソース以外のものにより立ち上げること
ができることは理解されるべきである。例えば、ソフトウェアエージェントを、
第一および第二オリジンリソースに関連する目的、または単に第一オリジンリソ
ースに代わるのみの目的の何れかで、第二オリジンリソースにより立ち上げるこ
とができる。他の具体例では、ソフトウェアエージェントを、例えば、オリジン
リソースまたは行き先リソースの何れかに応答させて、あるいは、(例えば、そ
のサービスを効果的に提供するように) 信頼出来るリソースそれ自体のイニシ
アティブで、または他の方法で、信頼出来るリソースにより最初に立ち上げるこ
とができる。他の具体例の場合、ソフトウェアエージェントを、例えば、オリジ
ンリソースまたは信頼出来るリソースの何れかに応答させて、または、(例えば
、そのサービスを進めるために)行き先リソースそれ自体のイニシアティブで、
行き先リソースにより最初に立ち上げることができる。この後者の具体例のほと
んどの場合、行き先リソースそれ自体を、有効オリジンリソースとすることが出
来る。そしてこの場合、オリジンリソース(または信頼出来るリソース)は、有効
行き先リソースとすることが出来る、すなわち、行き先リソースは、情報を提供
することができ、および/またはタスクを、オリジンリソースでの動作に関係す
るエージェントに(例えば、エンドユーザにより)託すことができる。
【0024】 このような具体例から、ソフトウェアエージェントを一つ以上のオリジンリソ
ースと関連させることができ、かつ、このようなリソースのいずれによってもま
たは他のいかなるリソースによっても、本発明の原理から逸脱することなく、最
初に立ち上げることができることは、理解されるべきである。いかなる場合にお
いても、ソフトウェアエージェントは、最終的にオリジンリソースに関連するこ
とが出来るように立ち上げることは、理解されるべきである。
【0025】 行き先リソースは、ほとんどの場合、扱うタスクを実行することが期待されて
いるソフトウェアエージェントと関連している。典型的には、行き先リソースは
、エージェントを受信し、それと対話し、そしてエージェントの扱うタスクの一
つ以上の一部または全てのパフォーマンスを実行し、および/またはそれに貢献
する(以下、「実行する」は、通常、タスクについて、実際のパフォーマンスと
タスクのパフォーマンスへの貢献の両方を、示すために使用される)。しかしな
がら、いかなる一つのソフトウェアエージェントも、一つ以上の関連する行き先
リソースを有することができることは、理解されるべきである。一例として、エ
ージェントの複数の行き先リソースを、(a)各々がタスクのいかなる一つまたは
複数を実行できるように、個々に、または(b)いかなる特定のグループも複数の
タスクの内のいかなる一つも実行することができるように、いろいろに構成され
たグループで、編成することが出来る。(行き先リソースは、本明細書では、し
ばしば"DR"と略記される。)
【0026】 信頼出来るリソースは、ソフトウェアエージェントと信頼出来るリソースが、
ソフトウェアエージェントとそのアクティビティの検証を提供するように機能す
るソフトウェアエージェントに関連する。信頼出来るリソースは、一つ以上の選
択された検証動作をサポートすることが好ましい。検証動作の具体例は、排気な
しで、ソフトウェアエージェントの取得/転送;ソフトウェアエージェント全体
または一部の暗号化/解読;ソフトウェアエージェント指紋の取得、格納、検索
そして比較;可変情報のチェックを含む、ルールの実行;リターンタイマーの確
立、設定、更新、かつチェック;エージェントとそのアクティビティの検証に関
連したレポートまたは他のリターンの生成(このような検証リターンは、典型的
にはオリジンリソースおよび/または立ち上げリソースに向けられている);信
頼出来るリソースが対話するソフトウェアエージェントのアクティビティの記録
;そしてソフトウェアエージェントの全てまたは一部の除去、マスキング、また
は保護;を含む。(用語「指紋」は、本明細書では、個々にそして集合的に、ソ
フトウェアエージェントの指紋、署名、プロファイルまたは他の基準情報、およ
びそれらを取得することを意味する。)
【0027】 信頼出来るリソースは、破損しないことが好ましい。このために、信頼出来る
リソースが、信頼出来るリソースそれ自体のセキュリティを実現させることが好
ましい。すなわち、信頼出来るリソースは、ハードウェア、ソフトウェア、およ
び/または、例えば、ソフトウェアエージェント等により導入されるウイルスと
他の破損影響から、TRを保護するように構成されているネットワークリソースを
有することが好ましい。さらに、信頼出来るリソースに破損が発生すると仮定す
ると、信頼出来るリソースは、信頼出来るリソースと関連するいかなるオペレー
ティングシステムとアプリケーションソフトウェアを含めて、いずれの種類の破
損も識別しかつ修正することが可能であることが好ましい。
【0028】 一具体例の実施例の場合、信頼出来るリソースは、コンピューティング環境に
リンクされている環境、および/または環境内に信頼出来るサーバを有する。行
き先リソースおよびオリジンリソースも、また、コンピューティング環境にリン
クされていて、および/または環境内に有る。どの場合にも、リンクは、各通信
パスによって達成され、これらのパスは、コンピューティング環境の一部を有す
るかまたはそれと関連している。一具体例の場合、コンピューティング環境は、
インターネットを有し、そして、通信パスは、光ファイバケーブル、ツイストペ
ア電話線、同軸ケーブル、スイッチングおよびルーティング回路、このようなス
イッチングとルーティングに対するプロセス、プロトコル、ファームウェアおよ
び他のハードウェア、ソフトウェアおよび/またはネットワークリソースを含む
、単独および種々の組合せの、複数の通信リソースのいずれかを有する。
【0029】 この実施例の場合、行き先リソースは、インターネットサイトと関連したサー
バを有する。ここで、このサイトは、ある演算と機能(例えば、ユーザー口座へ
/からの送金を含む、銀行のサービスにゲートウェイを提供する銀行のワールド
ワイドウェブサイト)をサポートする。この実施例の場合、さらに、オリジンリ
ソースは、ソフトウェアエージェントを規定しかつ立ち上げることが出来、そし
て典型的には、エンドユーザによって作動される、インターネットクライアント
を有する。オリジンリソースがソフトウェアエージェントを立ち上げたあと、エ
ージェントはコンピューティング環境に働き、したがって、オリジンリソースは
典型的にはエージェントの制御を失う。エージェントが、それが働く環境のいか
なる一部の範囲内においても破損影響に遭遇すると、ソフトウェアエージェント
の扱うタスク(一つまたは複数)または情報は、様々に壊されてしまう。しかしな
がら、いずれの種類の破損も、立ち上げオリジンリソースにも、および/または
エージェントが関連する他のいかなるオリジンリソース(一つまたは複数)にも
、未知のままである。さらに、例え、破損がオリジンリソースにレポートされて
も、このようなレポートは、通常、それに対して修正処置を施すことが出来ない
(例えば、扱うタスクの適切な完了およびいかなる悪意のある演算の識別および
根絶の何れ/両方が、排除されている)程、破損の発生後かなり時間が経った時
点で行われるものと考えることが出来る。
【0030】 この具体例の実施例のコンピューティング環境に働かせる場合、ソフトウェア
エージェントは、典型的には、オリジンリソース中の信頼出来るリソースと行き
先リソースをトラバースする通信パスの一つ以上を使用する。インターネットの
場合、これにより、プロトコル(例えば、インターネットプロトコル("IP"))の
理解されている動作に基づいて、ソフトウェアエージェントは一つのサイトまた
はサーバから次のものに導路化/スイッチされる。このような場合、オリジンリ
ソース、行き先リソースおよび信頼出来るリソースは、IPをサポートする。種々
のプロトコルは、単独でまたは一緒に、コンピューティング環境に応じて、補足
IPの代わりにまたはそれに対して使用することができ、そして通常、オリジンリ
ソース、行き先リソースおよび信頼出来るリソースが、本発明の原理から逸脱す
ることなく、関係するプロトコール(一つまたは複数)をサポートすることは、理
解されるべきである。
【0031】 リソース中のトラバースのまたはそれに関連した、シーケンス、サービス、そ
して演算は、エージェントの環境への働きおよび/またはインプリメンテーショ
ンにより変化する可能性があるが、ソフトウェアエージェントの検証は本発明に
従ってサポートされるべきであることは、理解されるべきである。特に、ソフト
ウェアエージェントは、タスクを実行するリソースといかなるインタラクション
も無いエージェントの状態に依存する第一検証事象と、タスクを実行するリソー
スとのいかなるインタラクションにも従うエージェントの状態に依存する第二検
証事象との、少なくとも2つの検証事象に関する検証動作に従う。
【0032】 検証事象を確実にするために、OR、DRとTRの中の各トラバースは、通常、信頼
出来るリソースとのエージェントのインタラクションを考慮する。典型的には、
ソフトウェアエージェントは、オリジンリソースから信頼出来るリソースに向け
られ、そして最終的に、信頼出来るリソースにより受信され、そしてそこから、
ソフトウェアエージェントは、行き先リソースに向けられ、かつ最終的に行き先
リソースで受信される。また、典型的には、行き先リソースから、ソフトウェア
エージェントは信頼出来るリソースに向けられ、かつ最終的に信頼出来るリソー
スで受信され、そして、そこから、ソフトウェアエージェントは、オリジンリソ
ースに向けられ、かつ最終的にオリジンリソースで受信される。また、典型的に
は、ソフトウェアエージェントは、あるインタラクション(例えば、信頼出来る
リソースの、エージェントに対するまたはそれに関係して、適切な検証演算の実
行)の後、信頼出来るリソースから、向けられる。
【0033】 信頼出来るリソースは、それを、選択されたハードウェア、ソフトウェアおよ
び/または一つ以上の選択された検証動作をサポートするネットワークリソース
に関連づけることが好ましい。ハードウェア、ソフトウェアおよびネットワーク
リソースは、単独そして種々の組合せで、複数のメカニズムを有する。典型的な
信頼出来るリソースメカニズムは、(a)受取りメカニズム;(b)転送メカニズム;
(c)指紋取得メカニズム;(d)指紋格納メカニズム;(e)指紋比較メカニズム;(f)
検証リターンメカニズム;(g)タイマーメカニズム;(h)信頼出来るリソースのル
ールメカニズム;(i)ロギングメカニズム;(j)ハウスキーピングメカニズム;(k
)管理メカニズム;(l)セキュリティメカニズム;そして(m)暗号化メカニズム、
を含む。個々にリストアップしたが、メカニズムは、個別に、あるいは一つ以上
の組合せにより、あるいは他の方法で、本発明の原理から逸脱することなく、実
施させることができる。
【0034】 信頼出来るリソースメカニズムは、いろいろに実施させることができる。典型
的には、これらのメカニズムは、一つ以上のコンピューティング装置(例えば、
パーソナルコンピュータ、ワークステーションまたはサーバコンピュータ)に作
動するソフトウェアとして実施される。ここで、各コンピューティング装置は、
通常、オペレーティングシステム(例えば、Unix、Linux、Windos NT等)、通信ス
タック、通信ハードウェア、プロセッサ(一つまたは複数)および他のロジックハ
ードウェア、メモリシステム(例えば、一つ以上のキャッシュメモリ、動的ラン
ダムアクセスメモリ、大容量記憶装置、記録用記憶装置など)を、選択された組
み合わせ(一つまたは複数)で、有している。ソフトウェアとして実施される場合
、信頼出来るリソースメカニズムのいかなる一つ以上も、統合ソフトウェアオブ
ジェクト、またはオブジェクト指向のソフトウェアプログラムにおける離散的な
ソフトウェアオブジェクトの集合として、または単一の一体化されたソフトウェ
アプログラム、等で実施させることができることは、理解されるべきである。同
様に、リソースメカニズムのいかなる組合せも、ソフトウェアオブジェクト、モ
ジュールまたは他のソフトウェアコンポーネントを共有するために実施させるこ
とができる。さらに、全体的に、部分的にまたは冗長させた状態で、信頼出来る
リソースメカニズムのいかなる一つ以上も、ソフトウェアコンポーネント(一つ
または複数)の有無にかかわらず、ハードウェア(例えば、ファームウェア)にお
いて実施させることができることは、理解されるべきである。この事については
、信頼出来るリソースに関して一般的に上述したように、いずれの種類のメカニ
ズムも、一つの物理的位置で、またはコンピューティング環境内のまたはそれと
関係する複数の物理的位置の中で、実施させることができる。
【0035】 受取りメカニズムにより、信頼出来るリソースが、コンピューティング環境に
おいて、特に、オリジンリソースと関連するソフトウェアエージェントを受信す
ることが、可能になる。このような場合、オリジンリソースは、典型的には、金
の支払またはそれに類するものの送金等の有無にかかわらず、信頼出来るリソー
スのサービスを利用することを可能する。(以下、信頼出来るリソースのサービ
スを利用することが可能にされたオリジンリソースは、しばしば「予約登録され
た」または、「予約登録」を有する等と呼ばれる;同様に、予約登録を有するオ
リジンリソースは、しばしば「予約登録オリジンリソース」と呼ばれ、そして、
関連したソフトウェアエージェントは、しばしば「予約登録エージェント」と呼
ばれる。)
【0036】 ソフトウェアエージェントは、種々の検証目的を含めて、種々の目的のために
コンピューティング環境に立ち上げられる。信頼出来るリソースは、その検証サ
ービスに無関係であるエージェントを受信することができるので、TRの受取りメ
カニズムは、(例えば、検証可能にされたフラグに対する)エージェントの構成お
よび/またはスペックを分析すること等により、どの受信されたエージェントが
、予約登録されているかを決定するフィルタコンポーネントを有していることが
好ましい。フィルタを実施することはできるが、特に、例えば、予約登録エージ
ェントのみを受信するように、信頼出来るリソースをコンピューティング環境に
おいて実施する場合には、フィルタの実施は不必要であることは、理解されるべ
きである。
【0037】 受取りメカニズムは、エージェントが、(例えば、オリジンリソースから)新し
く受信されているか、または(例えば、行き先リソースから)戻されているか否か
を決定することが出来ることも好ましい。受取りメカニズムは、例えば、そのエ
ージェント内のまたはそれに関係する受取りフラッグを設定/再設定することに
より、そのエージェントに関する決定を表す。
【0038】 転送メカニズムにより、信頼出来るリソースは、コンピューティング環境にお
いて通信することが可能になる。特に、ソフトウェアエージェントが、信頼出来
るリソースからトラバースすることが可能になる。このようなトラバースは、通
常、最終的に、一つ以上の適切な行き先リソースまたはオリジンリソースに向か
う。そうするために、転送メカニズムは、適用できるプロトコルに従って作動す
ることが、好ましい。
【0039】 転送メカニズムは、種々の方法で実施させることができる。例えば、指紋取得
および/または比較メカニズムが転送と平行して行われるように、転送メカニズ
ムを、受信されたエージェントのコピーが転送されるように実施させることがで
きる。さらに、転送メカニズムを、一つ以上の複数の行き先リソース、複数のオ
リジンリソース、および補足リソース、冗長リソースまたは他の追加の信頼出来
るリソースをサポートするように実施させることもできる。
【0040】 指紋取得メカニズムは、エージェントの指紋を取得する。指紋取得メカニズム
は、様々な技術を使用して実施させることができる。いかなるインプリメンテー
ションにおいても、この技術は、実際にまたは実質上、エージェントごとにユニ
ークである指紋を提供することが好ましい。具体例の技術は、単方向ハッシュ関
数(例えば、MD5 )である。入力としてエージェントを使用する、単方向ハッシュ
関数は、ユニークであるのみならず、リバースエンジニアリングを排除する傾向
があるハッシュ署名を生成する。
【0041】 指紋取得メカニズムは、ソフトウェアエージェントの固定情報に基づいて指紋
に実施されることが好ましい。例えば、指紋は、アドレス情報(例えば、一つ以
上のオリジンアドレス、行き先アドレスおよび信頼出来るリソースアドレス)お
よび/またはエージェント(および/または他の本質的な取引情報)と関連する情
報および扱うタスク(一つまたは複数)に基づくことができる。しかしながら、こ
のメカニズムは、単独で、または固定情報(ソフトウェアエージェントの固定フ
ィールドおよび可変フィールドに関する議論を参照のこと)と共に、エージェン
トの可変情報に基づいて指紋に実施させることができることは、理解されべきで
ある。(以下に記載されるTRルールは、指紋の取得に使用されないことが好まし
い。)実際には、指紋は、エージェントそれ自体全体を含む、または、単にそれ
自体とすることが出来る。
【0042】 指紋取得メカニズムは、インプリメンテーションに基づいて、一つ以上のアプ
ローチを使用して始動させることができる。一実施例においては、このメカニズ
ムは、選択されたエージェントに対し受取りメカニズムにより始動される。例え
ば、この受取りメカニズムを、受取りメカニズムのフィルタコンポーネントが、
受信されたエージェントが予約登録していると決定するときのみ、指紋取得メカ
ニズムを始動させるように実施させることができる。他の実施例では、指紋取得
メカニズムは、全ての受信されたエージェントに対し、受取りメカニズムにより
始動される。この後者の場合、信頼出来るリソースが、予約登録エージェント以
外のエージェントを受信すると、指紋取得メカニズムを、受信されたエージェン
トが予約登録しているか否かを決定するまたはその決定に貢献するように実施さ
せることができる。他の実施例の場合、指紋取得メカニズムは、自己トリガーし
、または受取りメカニズム以外のメカニズムにより始動される。いずれの場合に
も、少なくとも選択されたエージェントの受取りにより、指紋取得メカニズムが
始動されることが好ましい。
【0043】 指紋格納メカニズムは、指紋の格納と検索を遂行する。格納メカニズムは、(
例えば、一体化または分散型にかかわらず、一つ以上の、キャッシュメモリ、動
的ランダムアクセスメモリ、大容量記憶装置、記録用記憶装置等)のメモリシス
テムを使用して、実施されることが好ましい。格納メカニズムは、制御コンポー
ネントを含むことが好ましい。典型的な一実施例の場合、制御コンポーネントは
、例えば、指紋データベースにおける指紋ファイル/エントリとして、メモリシ
ステムの所定の位置内に、取得された指紋を格納し、かつそれから指紋を検索す
る。一具体例の場合、指紋格納メカニズムを、それが実行する、または他のメカ
ニズムが(例えば、指紋取得と平行して)実行する予約登録決定に基づいて、予
約登録エージェントに対応するこれらの指紋のみを、記憶するように実施させる
【0044】 指紋格納メカニズムは、インプリメンテーションに基づいて、一つ以上のアプ
ローチを使用して始動させることができる。一実施例の場合、メカニズムは、選
択されたエージェントに対し受取りメカニズムにより始動される。例えば、受取
りメカニズムのフィルタコンポーネントを受信したエージェントが、予約登録し
ていると決定するときのみ、指紋格納メカニズムが始動するように、受取りメカ
ニズムを実施させることができる。別の実施例では、指紋格納メカニズムは、全
ての受信されたエージェントに対し、受取りメカニズムにより始動される。この
後者の場合、信頼出来るリソースが予約登録エージェント以外のエージェントを
受信すると、受信されたエージェントが、予約登録しているか否かを決定するま
たはその決定に貢献するように、格納メカニズムを実施させることができる。他
の実施例の場合、指紋格納メカニズムは、受信されたエージェントに対し、指紋
取得メカニズムにより始動される。この後者の実施例において、メカニズムを、
例えば、それがまたは他のメカニズムが実行する予約登録の決定に基づいて、予
約登録エージェントに対応するこれらの指紋のみを格納するようにが実施させる
ことができる。
【0045】 指紋比較メカニズムは、破損の可能性を示すことができる差または他の不規則
性を識別するために、ソフトウェアエージェントの取得された指紋を比較する。
典型的な実施例の場合、比較メカニズムは、信頼出来るリソースに戻ったソフト
ウェアエージェントの以前に取得された指紋(a)を、指紋取得メカニズムにより
新しく取得されたエージェントの現在の指紋(b)と比較する。
【0046】 しかしながら、他の実施例の場合、取得と比較の(例えば、上述した、「以前
に、取得された」と「現在の」)時間特性は、実質上または完全に使用できない
ことを、認識すべきである。特に、ソフトウェアエージェントは、タスクを実行
するリソースといかなるインタラクションも無いエージェントの状態に依存する
第一検証事象と、タスクを実行するリソースとインタラクションを持つ状態を有
するエージェントに依存する第二検証事象の、少なくとも2つの検証事象に関す
る検証動作に従うことは考慮される。本発明の実施例における2つの検証事象は
、完全にまたは実質上時間差が無い。
【0047】 検証復帰メカニズムは、エージェントとそのアクティビティの検証に関する、
通知、レポートまたは他のリターン(以下、個々にかつ集合的に「検証リターン
と称する)を生成する。検証復帰メカニズムは、いろいろに実施させることがで
きる。例えば、検証復帰メカニズムは、選択された検証リターン(一つまたは複
数)を特定のリソースに向けるように実施させることができる。さらに、検証復
帰メカニズムは、元のエージェントのリターンにより直接、または元のエージェ
ントから分離したリターンにより、実施させることができる。第一のケースでは
、検証復帰メカニズムは、転送メカニズムに同じものを提供して、リターンを生
成させることが好ましい。第二のケースの場合、検証復帰メカニズムは、(a)そ
れ自体のリターン保持エージェントの生成および立ち上げ(このような立ち上げ
は、転送メカニズムにより、またはそれと協働して行われる)、そして(b)エー
ジェントでないメッセージの生成かつ送り込み、および(c)他の解決法の、一つ
以上のいかなる組合せも、サポートすることが好ましい。
【0048】 加えて、本発明に従って、検証リターンを、いろいろに構成することができる
。一例として、検証リターンは、破損が検出されるか否か(例えば、タスクが成
功裏に完了したか否か)に基づいて、設定されるかまたは再設定される検証フラ
グを有することができる。他の具体例の場合、検証リターンは、信頼出来るリソ
ースで行われるいかなる検証動作の結果に関する詳細も有することができる。別
の具体例の場合、検証リターンは、エージェントのアクティビティについての情
報、またはその結果の情報(例えば、扱うタスクのパフォーマンスにより集めら
れた情報、またはその結果の情報)の一部または全部を表示することが出来る。
他の具体例の場合、検証リターンは、修正処置を可能にしまたはサポートするよ
うな情報または命令を有することができる。検証リターンは、上記の組み合わせ
(一つまたは複数)、または他のリターンと上記のものの一つ以上のいずれかとの
組み合わせ(一つまたは複数)を有することができることは理解されるべきである
【0049】 検証リターンは、典型的には、オリジンリソース(一つまたは複数)に向けられ
る。しかしながら、検証リターンは、他の信頼出来るリソースと行き先リソース
にも向けることができる。より具体的には、検証リターンは、エージェントまた
はそのアクティビティが関連しているそれらのリソースに向けられている。ある
ポイントでのエージェントが、タスクが託されかつオリジンリソースに関連する
ようになると、エージェントまたはそのアクティビティは、通常、オリジンリソ
ースに関連している。
【0050】 検証復帰メカニズムは、インプリメンテーションに基づいて、一つ以上のアプ
ローチを使用して始動させることができる。一実施例の場合、このメカニズムは
、指紋比較メカニズムにより始動され、そして検証リターンは、指紋の比較が不
規則性を生じるか否かに拘わらず、向けられる。
【0051】 タイマーメカニズムは、タイマーコンポーネントとモニタリングコンポーネン
トを有する。典型的な一実施例の場合、コンポーネントは、タイマー事象の一つ
以上の選択された第一クラスの発生後、タイマー事象の一つ以上の選択された第
二クラスが発生するまで、経過時間を保持する。ここで、タイマー事象のこのよ
うな第一および第二クラスは、完全に同じであるか、完全に異なるか、または一
部同じである。このようなタイマー事象は、典型的には、ソフトウェアエージェ
ント、その情報およびタスク(一つまたは複数)、および/またはオリジンまたは
行き先リソースを反映する。
【0052】 監視コンポーネントは、経過タイムに対する関連したタイマーコンポーネント
を監視することが好ましい。例えば、監視コンポーネントは、所定の最大期間(
この期間は、しばしば「タイムアウト期間」と呼ばれ、かつこのタイマー事象は
、しばしば「タイムアウト」と呼ばれる)を超える経過タイムに対して、関連し
たタイマーを監視するように実施させることができる。さらにタイムアウトに応
答して、監視コンポーネントは、環境を反映するコンテントおよびパラメータ(
例えば、エージェント、その情報とタスク(一つまたは複数)、および/またはオ
リジンまたは行き先リソース)を有することが好ましい、タイムアウトメッセー
ジを実行させることが好ましい。一具体例の実施例の場合、監視コンポーネント
のタイムアウトメッセージは、(a)タイムアウトフラグ、(b) エージェントの元
の指紋、および/またはソフトウェアエージェントを識別するために選択された
他の情報、および(c)例えば、エージェントの行き先リソース等に関するいかな
るニュースのような、コンピューティング環境の状況に関する他の情報、も有し
ている。このそして他の実施例の場合、タイムアウトメッセージは、補正するた
めのまたは他の適切な動作を可能にするために、充分な情報と方向を有すること
が好ましい。
【0053】 タイムアウトメッセージは、復帰メカニズムが適切な検証リターンを生成させ
かつ導くことに応じて、検証復帰メカニズムに向けられることが好ましい。この
ようにして、いかなる特定のタイムアウトメッセージも、メッセージが関連を保
持する一つ以上のリソースに知らされる。一例として、典型的な一実施例の場合
、ソフトウェアエージェントが、タイムアウト期間以内の行き先リソースとのイ
ンタラクションから適切に戻ることに失敗すると、検証リターンは、オリジンリ
ソースに向けられる。(このタイムアウト期間は、所定の事象から測定されてい
て、そしてこのような所定の事象は、例えば、信頼出来るリソースでソフトウェ
アエージェントを最初に受領する)。この具体例にもかかわらず、かつこれまで
の説明から、上述のまたは他のタイムアウトメッセージに応答しかつ適切である
検証リターンを、行き先リソース、または他の信頼出来るリソース(一つまたは
複数)、またはそれの他の一部を含めて、いかなるリソース(一つまたは複数)に
も向けることができることは理解されるべきである。
【0054】 タイマーとモニタリングコンポーネントは、インプリメンテーションに応じて
、一つ以上のアプローチを使用して始動させることができる。具体例の一実施例
の場合、タイマーコンポーネントは、エージェント(例えば、予約登録エージェ
ント)が新しく受信されまたは戻っていると言う受取りメカニズムの決定により
起動される。他の具体例の実施例の場合、タイマーコンポーネントは、受信され
たエージェントの転送メカニズムの(例えば、行き先リソースへの)方向により
起動される。
【0055】 いかなる実施例にもおいて、タイマーコンポーネントは、停止されることがサ
ポートされていることが好ましい。この後者の実施例を具体的に示すと、第一エ
ージェントに関連するタイマーコンポーネントは、エージェントまたは他のある
リターンがタイムアウトの前に到着する場合、停止されるのが好ましい。エージ
ェントとその到着が両方とも適切な場合、タイマーコンポーネントは停止される
ことが好ましい。
【0056】 すなわち、アクティブ解除は、通常、エージェントが適切に信頼出来るリソー
スに戻ったと言う決定を示す。この決定は、(例えば、エージェントリターン事
象の識別に応じて)受取りメカニズムにより、(例えば、エージェントの現在の指
紋が成功裏に取得されたことに応じて)指紋取得メカニズムにより、(例えば、エ
ージェントの以前に取得された指紋が成功裏に検索されたことに応じて)指紋格
納メカニズムにより、等で達成させることが出来る。いずれの種類の実施例にお
いても、関連するモニタリングコンポーネント(一つまたは複数)が、適切に始動
されかつ制御されることが好ましい。
【0057】 ルールメカニズムは、信頼出来るリソースのルール(しばしば、"TRルール"と
呼ばれる)を実行する。一例として、TRルールは、オリジンリソースから得られ
かつオリジンリソースに関連したソフトウェアエージェントにより、信頼出来る
リソースに提供される。ここで、この提供は、ソフトウェアエージェントが信頼
出来るリソースと最初に対話するときに、行われるのが好ましい。他の具体例の
場合、TRルールは、信頼出来るリソースそれ自体から得られる。この後者の具体
例の場合、TRルールは、(a)受信されたソフトウェアエージェントの情報および
/またはタスク(一つまたは複数)に、(b)オリジンリソースによるTRのサービス
の以前の利用に、または(c)他の入力、構成に、または(d) (a)-(c)の組合せ等に
応答して、確立させることが出来る。
【0058】 ルールメカニズムは、TRルールの実行に対していろいろに実施させることがで
きる。一例として、それは、TRルールは、(a)ソフトウェアエージェントの信頼
出来るリソースとの最初のインタラクションに関連して、または(b)行き先リソ
ースからのエージェントのリターン、の何れかに、または(c)これら両方に応じ
て、実行させることができる。さらに、それは、ソフトウェアエージェントの固
定情報または可変情報、他の情報またはこれらの組合せを使用して、TRルールを
実行することができる。
【0059】 TRルールは、選択された演算を可能にする。これらの演算は、例えば、(a)TR
ルールそれ自体が破損されないことを確保する演算、および(b)例えば、可変情
報の破損に対するソフトウェアエージェントを点検する演算を含む。後者に関し
ては、具体例の一実施例の場合、信頼出来るサーバへのエージェントのリターン
に応じて、TRルールが、実際の可変情報とこのような制約との照合を実行するよ
うに、TRルールは、可変情報に適用できるデータ制約(例えば、範囲、型など)の
規定を実施する。
【0060】 TRルールは、コンピューティング環境の選択された部分にはアクセス出来ない
ことが好ましい。典型的な具体例として、ORにより立ち上げられかつORから得ら
れるTRルールを有する予約登録ソフトウェアエージェントは、このようなルール
が行き先リソースでアクセス出来ないように、構成され、規定され、または処理
されることが好ましい。このような具体例の場合、アクセスが出来ないことは、
信頼出来るリソースで遂行させることが好ましい。信頼出来るリソースが、TRル
ールの、除去、マスキング、エンコーディング、暗号化、または他の適切な処理
によりアクセス出来ないようにすることが好ましい。そうすることは、ルールを
保護し、ルールの不適切な操作をガードし、かつ扱うタスクと関連情報(例えば
、所定の可変フィールドに対して許される値または状態をTRルールから決定する
ことに基づく破損)を破損するルールの使用を排除する。要するに、TRルールと
関連情報は、アクセス出来ないようにされていて、このことは、エージェントと
そのアクティビティの破損を排除し(そして識別する)ことに貢献する。
【0061】 ロギングメカニズムは、ソフトウェアエージェントに生成する全てのまたは選
択された事象に関して、情報を記録する。そのために、ロギングメカニズムは、
例えば、(a)例えば、個別のログ、エージェントの指紋ファイル(一つまたは複
数)またはデータベース、またはエージェントに関連する情報の他のデータベー
スに、事象情報を保存する、(b)例えば、ソフトウェアエージェントの履歴のア
クティビティを追跡する使用に対して、現在のまたは保存された事象情報を提供
する、および/または、(c)例えば、一つのエージェントについてまたはグルー
プまたはエージェントの型についてレポートを提供するために、選択された基準
に基づいて、事象情報を処理することが好ましい。具体例としては、所定の型の
エージェントが使用する周波数、エージェント全体のトラフィック、そして過去
のリターン回数(全体または型ごと等)についてのリポートを含む、またはそれを
提供するように処理させることが出来る事象情報を記録するように、ロッギング
メカニズムを実施させることが出来る。ロギングメカニズムは、特に、ハウスキ
ーピングと管理メカニズムに入力を提供するために、実施させることが好ましい
【0062】 ハウスキーピングメカニズムは、種々のメカニズムおよび信頼出来るリソース
を有するコンポーネントのメンテナンスと、検証サービスをサポートする他の同
様の機能とを提供する。例えば、ハウスキーピングメカニズムは、所定のファク
タ(例えば、完了した検証サービスまたは古臭さ)に基づいて、全体的にあるいは
部分的に、指紋エントリ、記録、ファイル、データベースおよび保存されている
他の情報を削除するように実施されることが好ましい。他の具体例として、ハウ
スキーピングメカニズムは、全体的にあるいは部分的に、所定のファクタに基づ
いて、(例えば、時々ファイル内容に関して実行される目的をレポートするため
に情報を検討することができるように、不活性エージェントファイルに情報を移
動させるために)指紋エントリ、記録、ファイル、データベースおよび保存され
ている他の情報を更新するように実施させる。他の具体例として、ハウスキーピ
ングメカニズムは、例えば、所定のエージェントの型に対する過去のリターン回
数(そのような情報は、典型的には、ロギングメカニズムにより提供される)に基
づいて、および/または行き先リソースまたは行き先リソースの型のような他の
パラメータ、および/またはエージェントが作動中である場合の時系列のまたは
カレンダの内容(すなわち時刻、曜日または季節)に基づいて、タイマーメカニズ
ムにより使用されるタイムアウト期間を変更するために実施される。
【0063】 管理メカニズムは、検証サービスに付随する管理機能を提供する。例えば、管
理メカニズムは、請求書発行および経理処理に実施させることが好ましい。請求
書発行に関しては、管理メカニズムは、いろいろに実施させることができる。具
体的には、料金は、検証サービスの使用と関連させて(オリジンリソースにより)
請求させることができる。このような料金は、(i)エージェントごと、(ii)行き
先リソースごと、(iii)エージェントの型ごと、(iv)オリジンリソースの型ごと
、(v)行き先リソースの型ごと、(vi)TRルールの型ごと、(vii)これらの基準の一
つ以上の組合せごと、(vii)これらの記載されている基準の一つ以上と組み合わ
せた他の基準ごとの、一つ以上に基づいて確立される。管理メカニズムは、典型
的には、ロギングメカニズムから、少なくとも部分的に請求書発行に関連した情
報を得る。
【0064】 他の具体例として、管理メカニズムは、コンピューティング環境を特徴づけて
いる種々のパフォーマンス統計値または他のパラメータを評価するサービスを提
供するために実施されることが好ましい。そのために、管理メカニズムは、予約
登録オリジンリソース(または、少なくとも、いずれかの種類の評価サービスを
利用するために選択するオリジンリソース)から、入力を受信することができる
ことが好ましい。このような入力は、例えば、重要な統計値/パラメータの識別
そして評価結果の取得/報告に対するあらゆる制約または選択を含んでいる。具
体的には、管理メカニズムは、信頼出来るリソースの検証サービスと並立する、
またはそれに置き換わる他の検証指向の提供を識別しかつ追跡するように実施さ
せることができる。このために、管理メカニズムは、並立する/置き換わる提供
と対話するエージェントの選択された性能特性(例えば、使用)に資格を与えるこ
とができる。他の例として、管理メカニズムは、コンピューティング環境のロー
ドを評価するために実施させることができる。そのために、オリジンリソースの
入力は、例えば、一つ以上の現在の負荷のレベルに基づいて、信頼出来るリソー
スから(例えば、行き先またはオリジンリソースの何れかに)トラバースする一つ
以上のそのエージェントを遅延させ、または速め、またはタイミングを取るリク
エスト、そしてトラバースの状況に関する進行レポート(一つまたは複数)を要
請するリクエスト(例えば、オリジンリソースは、何の進行リポーティングも選
ぶこともできないし、また遅延のおよび/またはトラバース開始のレポートを有
するように選ぶこともできない)を、含むことができる。
【0065】 セキュリティメカニズムは、コンピューティング環境の選択された部分を破損
から守る。セキュリティメカニズムは、いろいろに実施させることができる。一
例として、セキュリティメカニズムは、エージェントそれ自体に潜在的に存在す
るいかなる破損影響からも、ソフトウェアエージェント、オリジンリソース、行
き先リソースおよび信頼出来るリソースの一つ以上を保護するために、(例えば
、コンピューティング環境に働くことに付随するソース化された)ソースに関係
なく、受信されたエージェントを処理するように実施させることができる。この
目的を達成するために、セキュリティメカニズムは、典型的には、破損される可
能性のある受信されたエージェントの一部または全てを、除去し、無効にし、ま
たは実施不能にさせることが出来る。このようなメカニズムは、エージェントと
破損される可能性のある他の潜在的に実行可能な符号を識別するために使用され
るモニタリングファームウェアおよび/または他のハードウェアを含むことが好
ましい。
【0066】 他の具体例として、セキュリティメカニズムは、信頼出来るリソースが、規定
された手順または手順の組のみを実行することを可能にさせることが出来る。こ
こで、これらの手順は、処理される情報により、手順におけるステップのまたは
ステップの組合せにより、またはそれらが生成させる結果等により、識別される
。このような破損されないシステムは、例えば、能力ベースのシステムまたはア
ーキテクチャを含む。これにより、各タスクには、チケット(または他の識別子)
が割り当てられ、そして適切チケットが付与されたタスクのみが実行可能となる
。能力ベースのシステムの詳細については、オペレーティングおよびプログラミ
ングシステムシリーズ( P.J. Denning, 1979, N.Y., North Holland社刊)の、
Welbey, M.VおよびNeedham, R.Mによる「Cambridge CAPコンピュータとそのオペ
レーティングシステム」を参照されたい(これは、参照文献として、本明細書に
組み込まれるているものとする)。
【0067】 セキュリティメカニズムは、メカニズムそれ自体を完全にまたは実質上破損さ
れないようにするために、全体に、部分的にまたは冗長させて、(例えば、ファ
ームウェアも含む)ハードウェアで実施させることができる。このインプリメン
テーションの場合、他の信頼出来るリソースメカニズムおよびこのソフトウェア
コンポーネント(例えば、オペレーティングシステムおよび通信スタック)も、全
体に、部分的に、または冗長させて、(例えば、ファームウェアも含む)ハードウ
ェアで実施させることが、好ましい。したがって、これらのメカニズム(そして
コンポーネント)の実施により、(a)信頼出来るリソースが実質上破損から保護
されるように作動し、および/または(b)信頼出来るリソースの関係するメカニ
ズム(一つまたは複数)を、例えば、時々ファームウェアのコピーと比較するこ
とが可能になるので、破損が発見されると、補正手段を起動させることが出来る
。典型的な補正手段は、例えば、自動的であれ、システムオペレータによるよう
な人間による開始によるにしろ、オブジェクトを再ロードすることによる、いか
なる外来のコードも削除することによる、コード比較と補正アルゴリズムまたは
同様のルーチンの応用による、および/または他の従来のアプローチによる、ソ
フトウェアの補修を含む。
【0068】 暗号化メカニズムは、ソフトウェアエージェント、検証リターン、および信頼
出来るリソースにより受信されまたはそれから転送される他の関連するメッセー
ジの全てまたは一部を暗号化しかつ解読する。暗号化メカニズムは、いろいろに
実施させることができる。例えば、暗号化メカニズムは、パブリックキーの暗号
化と証明書を使用して実施させることができる。このようにして、暗号化メカニ
ズムは、(a)機密に関わるまたは秘密の情報を得るために介在者が通信を傍受す
るリスク(しばしば「盗聴」と呼ばれる);(b)通信における情報/タスクを変更す
る介在者による破損のリスク(しばしば「改造」と呼ばれる);そして、(c)オリ
ジンリソースまたは行き先リソースが、真正でないリスク(しばしば「まね」と
呼ばれる)、を含むコンピューティング環境に固有の傾向がある種々のリスクを
扱うことを援助する。しかしながら、いかなる暗号化メカニズムも、通常、それ
がリソースから転送される前、またはそれがリソースで受信された後(すなわち
、暗号化の前でかつ解読の後)、ソフトウェアエージェントを常に保護するため
には、有効ではない。
【0069】 信頼出来るリソースメカニズムは、メカニズムの全てまたは選択されたものの
中で、演算上の調整に対して実施されることが好ましい。この調整は、それらの
各実施に応じて、メカニズムの中で並列、順次または他の動作を生成することが
できる。典型的な実施例の場合、例えば、格納メカニズムは、指紋取得と比較メ
カニズムと協働して使用される。ここで、指紋取得メカニズムは、新しく到着す
るエージェントの指紋を取得し、それに応じて、格納メカニズムが、(例えば、
信頼出来るリソースのメモリシステムに)指紋を格納するので、信頼出来るリソ
ースへのエージェントのリターンに応じて、格納メカニズムは、比較メカニズム
に供給するために以前に取得された指紋を検索することができる。ここで、この
比較メカニズムは、以前に取得された指紋をエージェントの現在の指紋と比較し
、このような現在の指紋は、例えば、エージェントを検証するために比較を予想
して指紋取得メカニズムにより取得される。
【0070】 また、この典型的な実施例の場合、指紋比較メカニズムは、検証復帰メカニズ
ムを始動させて検証リターン(一つまたは複数)を生成させる。このようなトリガ
ーと生成は、この比較が破損を検出するか否かにかかわらず、提供されることが
好ましい。しかしながら、破損が検出された場合には、指紋比較メカニズムは検
証復帰メカニズムに情報を提供することが好ましい。このような情報を使用して
、検証復帰メカニズムは、破損を知らせるように構築されている検証リターンを
生成することを可能にすることが好ましく、そして修正処置も可能にすることが
好ましい。非限定的な具体例として、比較メカニズムの情報は、比較された指紋
の各々とそれらの間の差異を含むことができる。検証リターンは、提供されたフ
ォームで、または処理されたフォーム(例えば、修正処置に対する提案)で、これ
らを含むことができる。検証リターンは、また、他の情報、例えば、経過タイム
および全てのタイムアウト、(例えば、アドレスごとの)行き先リソース、そして
信頼出来るリソースが、エージェントについてまたは破損について学ぶことがで
きた他のいかなるデータも、含むことができる。
【0071】 さらにこの典型的な実施例の場合、検証復帰メカニズムは、典型的には、検証
が関連するオリジンリソースにリターンが向かうように転送メカニズムを調整す
る。このような方向は、典型的には、検証されたエージェントの一部としてリタ
ーンを転送することにより達成され、このようなエージェントそれ自体は、転送
メカニズムにより転送される。これを実行する上で、リターンを実行するエージ
ェントを、オリジンリソースへのトラバースにおける破損影響からエージェント
を保護するために、暗号化メカニズムにより処理することが、考慮される。これ
を実効するさいには、検証リターン、ソフトウェアエージェント、オリジンリソ
ースおよび信頼出来るリソースの一つ以上を、戻ったエージェントそれ自体に潜
在的に存在する全ての破損影響から保護するために、エージェントは、例えば、
破損する可能性のあるエージェントの一部または全てを、除去し、無効にし、ま
たは無力化することにより、例えば、セキュリティメカニズムにより処理される
ことも、考慮される。
【0072】 この典型的な実施例の場合、タイマーメカニズムのタイマーとモニタリングコ
ンポーネントが、使用される。タイマーコンポーネントは、通常、ソフトウェア
エージェントが、信頼出来るリソースに最初に到着したとき(例えば、エージェ
ントの状態が、行き先リソースとのいかなるインタラクションも有しないとき)
に起動される。具体的には、タイマーコンポーネントは、エージェントの行き先
リソースへの転送に基づいて起動されることが好ましい。
【0073】 タイマーコンポーネントの起動により、関連する少なくとも一つのモニタリン
グコンポーネントが、そのタイマーコンポーネントを監視するために起動される
ことが好ましい。具体的には、監視コンポーネントは、行き先リソースからソフ
トウェアエージェントのタイムリでかつ適切なリターンを監視するために(この
監視は、所定のリターンタイムアウト期間に対して行われる)、起動されること
が好ましい。リターンタイムアウトが生成される前に、エージェントが適切に戻
されない場合、監視コンポーネントは、環境に適切なコンテントとパラメータに
より、リターンタイムアウト事象を示すタイムアウトメッセージを生成する。タ
イムアウトメッセージは、典型的には、検証リターンの転送に使用される。
【0074】 調整の他の具体例においては、(a)格納メカニズムが、不適切な指紋を一掃す
るためにハウスキーピングメカニズムを調整し、そして、(b)特に、管理メカニ
ズムが、それらがタイムアウト期間を設定/更新しかつ請求書を計算することを
、それぞれ、可能にする情報を有するために、ハウスキーピングおよび管理メカ
ニズムに入力を提供するよう、ロギングメカニズムを実行させることが好ましい
【0075】 本発明のソフトウェアエージェントは、本発明のこの装置と方法を使用する検
証を可能にするために実施される。いずれの種類のエージェントも、一つ以上の
固定フィールドと可変フィールドを有することが好ましい。固定フィールドは、
典型的には、アドレス、ルール、データ、コード、セキュリティプロトコル、ま
たは他の固定情報(エージェントが託すタスク(一つまたは複数)に関係なく、変
化しないまたは変化すべきでない情報)をサポートする。例えば、固定フィール
ドアドレスは、オリジン、行き先、および信頼出来るリソースの、コンピューテ
ィング環境に適切であるアドレスを含むことができる。これらのアドレスにより
、ソフトウェアエージェントは、OR、DRおよびTRの中をトラバースするためにコ
ンピューティング環境に適切に働く。
【0076】 可変フィールドは、典型的には、演算フラグ(例えば、新たな/古いフラグ)、
時間フラグ(例えば、受取り、転送および/またはリターンの時刻/日付)、ルー
ル、データ(例えば、検証リターンデータ)、タスク関連情報、タスク関連コード
、または他の可変情報をサポートする。可変情報は、通常、エージェントのアク
ティビティに応答しまたはそれに関連して、許容限度の範囲内で、変化すること
ができる情報を含む。このようなアクティビティは、例えば、DRに到着する一つ
以上のエージェント、それが扱うタスク(一つまたは複数)を達成するエージェン
ト、または(ORまたはDRから)TRに到着するエージェントを含む。可変情報が変
化する間、このような変化は、典型的には、一定制限幅に制限される。
【0077】 本発明のエージェントは、TRルールをサポートすることが好ましい。TRルール
は、典型的には、選択された動作を可能にする。これらの演算により、例えば、
そのTRルールが、破損されず、および/または可変情報の適切な修正をチェック
することが確実に行われる。後者に関しては、具体例の一実施例の場合、TRルー
ルは、可変情報に適用できるデータ制約(例えば、範囲、型など)を規定するよう
に実施させるので、信頼出来るサーバへのエージェントのリターンに応じて、TR
ルールが実行され、このような制約に対して実際の可変情報がチェックされる。
【0078】 そのフィールドにより、ソフトウェアエージェントは、情報および扱うタスク
(一つまたは複数)を含む。扱うタスクは、全て、通常、行き先リソースでまたは
とそれと関連して実行されるコードの形で、固定フィールドに含まれる。この実
行は、典型的には、一つ以上の可変フィールドのコンテント内での変化と言う結
果になる。例えば、実行コードは、選択された変数情報を変更し、または行き先
リソースから得られたまたはそれと関連したデータを含めて、新たなデータをエ
ージェントに加えることが出来る。実行コードは、ソフトウェアエージェントに
含まれる関連情報に依存させることもできる。このような関連情報は、通常、デ
ータ形態で、固定フィールドにも含まれる。しかしながら、このような情報は、
これに代えて(または、これに加えて)可変フィールドに含ませることも出来る。
【0079】 本発明のソフトウェアエージェントは、複数のタスクを達成しおよび/または
複数の行き先リソースと対話するために実施させることができる。したがって、
エージェントの転送は、種々の方法で達成させることができる。一例として、ソ
フトウェアエージェントは、各々が、行き先リソースDR1、DR2、DR3およびDR4で
実行される、タスクT1、T2、T3およびT4を、それに関連させることが出来る。一
つのインプリメンテーションの場合、信頼出来るリソースTR1は、各々の行き先
リソースと平行してエージェントのコピーを転送する。他のインプリメンテーシ
ョンの場合、信頼出来るリソースTR1は、エージェントを順次各々の行き先リソ
ースに転送するので、各タスクは、所定のシーケンス、またはリソースの可用性
の何れかに基づいて、実行される。他の実施例の場合、信頼出来るリソースTR1
は、並列転送と順次転送が組み合わされる。
【0080】 複数のタスクおよび/または行き先リソースを有するエージェントの検証に関
する信頼出来るリソース(一つまたは複数)は、検証演算に関して、いろいろに実
施させることができる。一例として、行き先リソース(一つまたは複数)でタスク
のシーケンシャルパフォーマンスを監督する信頼出来るリソース(一つまたは複
数)は、信号破損に対し、(すなわち、検証リターンにより)、(a)失敗した検証に
関連するタスクが存在する場合には、シーケンス全体に、(b)失敗した検証に関
連するシーケンシャルタスクのみに、または、(c)失敗した検証およびシークエ
ンス内の全てのサブシークエンスに関するシーケンシャルタスクに、実施させる
ことができる。他の具体例の場合、行き先リソース(一つまたは複数)でタスクの
並列パフォーマンスを監督するリソース(一つまたは複数)は、信号破損に対して
、(a)失敗した検証に関するタスクのみについて、または、(b)何れかが、失敗し
た検証に関連する場合、全てのタスクについて、実施させることができる。
【0081】 特に、複数のタスクおよび/または行き先リソースに関するエージェントにつ
いての実施例の場合、複数の信頼出来るリソースを、使用することができる。こ
のような使用は、通常、エージェントの適切な構成(例えば、複数のTRを可能に
するフラグおよび/または複数のTRに対するアドレス)、および/またはエージ
ェントが予約登録する信頼出来るリソース(一つまたは複数)の適切な構成により
実施される。例えば、エージェントが、信頼出来るリソースTR1のみを予約登録
する場合、その予約登録されたリソースは、それ自体、一つ以上の追加の、挿入
された、信頼出来るリソースを使用することができる。そのために、TR1は、典
型的には、それ自体、並列パフォーマンス、シーケンシャルパフォーマンスまた
は他のパフォーマンスに拘わらす、エージェントを、例えば、このような各々配
置された信頼出来るリソースに転送するために、エージェントの信頼出来るリソ
ースのアドレス情報を変更する。この例の場合、エージェントは、典型的には、
複数のTRが使用可能であることを示すようにフラグを設定する。しかしながら、
このようなフラグは、本発明の原理から逸脱することなく、省略させることがで
きることは、理解されるべきである。
【0082】 配置された信頼出来るリソース(一つまたは複数)の使用は、通常、予約登録さ
れた信頼出来るリソース(一つまたは複数)によりエージェントのTRルールを処
理することを意味する。前述したように、予約登録された信頼出来るリソースは
、通常、エージェントのTRルールに働くように実施される。そうするために、予
約登録された信頼出来るリソースは、TRルールへのアクセスを可能にする。した
がって、配置された信頼出来るリソース(一つまたは複数)が、TRルールを使用す
ることになっている場合、このようなリソースがアクセスされることが好ましい
。このように、予約登録された信頼出来るリソースが、エージェントからTRルー
ルを除去してしまわないことが好ましい。除去は、通常、望ましくないが、特定
環境(例えば、TRルールが局所的に配置されたTRに提供される場合、または、TR
ルールが最終的に加入者TRで実行される場合)の下では、TRルールの除去を、実
施することができる。マスキング、コード化、暗号化、または予約登録された信
頼出来るリソースで提供されるTRルールの他の処理と同様に、配置された信頼出
来るリソース(一つまたは複数)が、TRルールを実行することは、好ましい。この
ようなリソース(一つまたは複数)は、マスクを外すこと、復号化、(例えば、パ
ブリックキー技術による)解読、または逆プロセス等を可能にする。さらに、配
置された信頼出来る全てのリソース(一つまたは複数)がTRルールを保護する場合
であっても、その予約登録された信頼出来るリソースが、そのアクセスを維持す
るように、予約登録されかつ配置されたリソースが、調整されることが好ましい
【0083】 エージェントが複数のタスクをサポートする場合にはいつでも、何れかのタス
クが検証の異常終了と関連する場合には、残りのタスク(一つまたは複数)を終了
させ、中止させ、実行不能にするように、信頼出来るリソースを、実施させるこ
とができる。実行不能化の場合には、信頼出来るリソースは、エージェント破損
の補正を試みることを可能にさせることが好ましい。このような補正は、典型的
には、エージェントに関連するTR指紋ファイルに基づく。さらに、このような補
正が、そのように実施される場合、それを、例えば、関係するオリジンリソース
からの追加の入力に依存させることが出来る。ここで、このような入力は、通常
、検証異常終了に関するそれに向けられている検証リターンに応答する。補正が
達成されると、信頼出来るリソースは、関係するオリジンリソースOSに通知し、
かつ以前に実行不能にされた残りのタスクを使用可能にすることが好ましい。
【0084】 従って、本発明は、エージェントとエージェントアクティビティの検証が、信
頼出来るリソースの中の検証演算の協働と拡散(例えば、動的に)に基づいて、有
効かつ生産的になるように、複数の信頼出来るリソースの使用を企図している。
【0085】 図1には、本発明の装置と方法を実施するシステム100が、コンピューティング
環境108(および、好ましくは一部)と通信する、オリジンサイト102、信頼出来る
サイト104、および行き先サイト106を、含むことが図示されている。サイト102
、104と106は、通信パス110を介してコンピューティング環境108内で通信する。
サイト102、104と106は、それぞれ、オリジンリソース、信頼出来るリソースお
よび行き先リソースに対応する。コンピューティング環境108は、典型的には、
インターネットの一部である。(ここで、オリジンサイト、信頼出来るサイトお
よび行き先サイトは、それぞれ、「OS」、「TS」および「DS」としばしば呼ばれ
る。)
【0086】 通常、信頼出来るサイト104は、ソフトウェアと共にサーバとして機能するコ
ンピューティング装置またはコンピューティングシステム(少なくとも2つのコン
ピューティング装置)である。環境108がインターネットの場合、信頼出来るサイ
ト104はインターネットサーバである。オリジンサイトと行き先サイト102と106
は、例えば、ユーザのホームの独立型PCまたはLANに基づくコンピューティング
環境のノード、またはそれを無関係なコンピュータプラットホーム、または他の
インストールにリンクするために、環境108と通信アクセスを有する他の全ての
ローカライズされた/閉じたコンピューティング環境のような、いかなるサイト
でも良い。
【0087】 図2には、プロセッサ("P")202と、カップリング206を介してプロセッサ202に
結合されているメモリシステム("MEMORY")204を含む信頼出来るサイト200の具体
例が、図示されている。プロセッサは、Intel Corporation、Motorola Corporat
ion、Texas Instruments, Inc、IBM、AMID、Cyrix、または他のいかなるディジ
タルプロセシングデバイスのメーカにより製造された、マイクロプロセッサ、マ
イクロコントローラ、デジタルシグナルプロセッサ等(これらに限定されるもの
ではないが)を含む、いかなるディジタル処理装置とすることができる。信頼出
来るサイト200は、また、プリンタ、ディスプレイターミナル、バッテリーバッ
クアップデバイスおよび電力調節デバイスを含む様々な周辺装置を、これらに限
定されることなく、含むことができる。
【0088】 信頼出来るサーバ200は、ソフトウェア212も含む。ソフトウェアは、メモリシ
ステム204に格納されることが好ましい。ソフトウェア212は、信頼出来るサーバ
200に必要とされる必要なタスクを成し遂げるために命令を実行することが可能
ないかなるオペレーティングシステムでも良いオペレーティングシステム218を
含む。適切なオペレーティングシステムには、ウィンドーオペレーティングシス
テム、UNIX(登録商標)オペレーティングシステム、または他のいかなるオペレ ーティングシステムも含まれるが、これらに限定されるものではない。
【0089】 ソフトウェア212は、ソフトウェアエージェントとそれらのアクティビティを
検証するソフトウェアエージェント検証システム220も含む。ソフトウェア212は
、また、TSをウイルスまたは他の破損ソフトウェアメカニズムから保護するため
のセキュリティーシステム222を含むこともできる。セキュリティーシステムを
、本発明の原理から逸脱することなく、検証システム内で一体化させることが出
来ることは、認識されるべきである。
【0090】 TS 200は、入力ポート224と出力ポート230も含む。入力ポート224は、 (カッ
プリング226を介して)プロセッサ202に、そして(パス228を介して)環境108 に結
合されている。出力ポート230は、(カップリング232を介して)プロセッサ202 に
、そして(パス234を介して)環境108 に結合されている。
【0091】 図3を参照すると、フローチャート300は、信頼出来るサーバ200に検証システ
ム220を実施する好ましいステップの一組を提供する。フローチャート300は、通
常、システムスタートアップで始められる公称スタート302を含む。検証システ
ム220は、ログアップデートステップ304におけるログファイルの全てのソフトウ
ェアエージェントアクティビティを記録することが可能である。ソフトウェアエ
ージェントが、信頼出来るサーバ200に向けられるときに、検証システム220は、
受信ステップ306で、ソフトウェアエージェントを受信し、そしてオプションと
して、TS完全性を維持するために、ステップ308で、エージェントのセキュリテ
ィーチェックを実行する。
【0092】 受信され、そしてオプションとして、セキュリティがテストされると、検証ソ
フトウェアは、エージェントの固定されたコード部分の一部を形成するTRルール
を実行し(またはセーブし)、更にステップ309で、TRルールのエージェントを除
去する(または、このようなルールを保護する)。
【0093】 ステップ310において、システム220はエージェントに指紋を付ける。
【0094】 ステップ312において、検証ソフトウェア220は、受信されたソフトウェアエー
ジェント(一つまたは複数)に対してリターンタイマーを起動させる。システム22
0は、指紋ファイルにおけるエージェント(一つまたは複数)に対するタイムアウ
ト条件をチェックするタイムアウトステップ314を実行する。タイムアウトステ
ップ314は、タイムアウト条件に遭遇すると稼動される割込みルーチンとするこ
とが出来るが、また、所定のあるインタバルでのタイムアウト条件に対する指紋
ファイルを走査するルーチンとすることも出来る。タイムアウト条件に遭遇する
と、制御は、"yes"ブランチ316に転送され、生成タイムアウト通知ステップ318
と送出し通知ステップ320に転送される。ステップ318と320は、タイムアウト通
知を生成し、そしてそれを適切なリソース(例えば、オリジンサイト102 )に送出
する。次いで、制御は、アップデートログステップ304に転送され、そしてプロ
セスは、エージェントを監視し続ける。
【0095】 ステップ314においてタイムアウト条件に遭遇しない場合には、制御は、"no"
ブランチ322を経由して、ステップ324に転送され、ここで、受信されたエージェ
ントが"new"であるか否かがテストされる。エージェントが"new"であると、制御
は、"yes"ブランチ326を経由して、例えば、指紋ファイルにエージェント指紋を
格納するセーブ指紋ステップ328に、転送される。指紋格納の後、システム220は
、エージェントリターンタイマーをオン状態に切り替えるタイマー設定ステップ
330を実行する。次に、"yes"ブランチ326は、システム220が、エージェントのシ
ステムへのリターンに応じて、エージェントを旧エージェントと識別することが
可能となるように、エージェントに情報を加える旧設定ステップ332を実行する
。この旧設定ステップ332は、"off'から"on"に (0→1または1→0)、エージェン
トにおけるフラグビットを設定することが好ましい。(加えて、フラグは、不正
行為から守るロックおよびキーのようなセキュリティアルゴリズムを含むことが
できる。)次いで、"yes"ブランチ326は、エージェント送出しステップ334で、エ
ージェントをその行き先に転送する。次いで、制御は、ログ更新ステップ304に
転送され、そしてプロセスは続き、エージェントを監視する。
【0096】 ステップ324において、エージェントが"old"(すなわち、例えば、以前にステ
ップ332で、旧エージェントフラグが設定されたので、"new"でない)であると、
制御は、"no"ブランチ336を経由して、エージェントリターンタイマーをOFF状態
に切り替える第二タイマー設定ステップ338に転送される。"no"ブランチ336は、
エージェントと関連する以前に取得された/格納された指紋をサーチする元の指
紋検索ステップ340を実行し、そして指紋が発見されると、元のエージェントの
指紋を検索する。次いで、元の指紋と現在の指紋は、指紋比較ステップ342で比
較される。比較ステップ342は、元の指紋における情報が情報リターン指紋と十
分に合致するか否かを決定する。
【0097】 ステップ343において、TRルールが、戻りデータ値に対して実行される。ルー
ルが満足され、そして指紋の比較が肯定的であると、エージェントのタスク(一
つまたは複数)が、成功裏に完了したことが示される。指紋の比較と可変データ
をチェックするルールの実行が、エージェントのタスクを成功裏に完了させるこ
とができるように、行き先サイトは、完了情報をエージェントに書き込んでおく
ことが好ましい。
【0098】 エージェントが、クライアントの銀行(MYBANK)で一つの口座から他の口座に
ある預金額を移動させるように設計されていると仮定しよう。このエージェント
は、TSアドレス、MYBANKアドレス、口座番号と移動される預金額を有するであろ
う。エージェントがTSに到着すると、TS検証システムは、エージェントに対する
一意の名前を含みかつ取引情報を格納するファイルを生成する。行き先サイトは
、検証のためにTSにエージェントを送出する前に、行き先サイトにより実行され
る取引の記録をソフトウェアエージェントに書き込むように設計されているソフ
トウェアを有することが、好ましい。エージェントが戻ると、TS検証システムは
、元の取引情報を、戻るエージェントにおける取引情報および、行き先サイトに
よりエージェントに追加されたログ情報と比較する。
【0099】 ソフトウェアエージェントの署名、指紋、またはプロファイルが、エージェン
トのほとんど固定された情報(すなわち、非可変フィールドにおける情報または
、ソフトウェアエージェントアクティビティの間、変更されてはならないフィー
ルド)のみを有するので、TSに存在する検証チェックアルゴリズムは、エージェ
ントの固定フィールドのいかなる部分におけるエラーまたは不整合をチェックす
ることが出来るであろう。加えて、エージェントは、ある可変フィールドを、例
えば、行き先サイトにより変えることができる態様に関する情報を含む固定され
たルールを有することができる。これらのルールは、TSに、可変データが仮定し
得る許される範囲を知らせることが出来、TSに、エージェントが取得することが
できる追加コードの型を知らせることが出来、TSに、エージェントからどの様な
コードの型が抽出されたかを知らせることが出来、またはTSに、エージェントの
可変フィールドを変更するることができる態様についての、他のいかなる妥当な
情報も知らせることが出来る。
【0100】 比較ステップ342が、2つのエージェント指紋を比較しかつそれらの比較結果を
決定すると、それらの結果は、結果チェックステップ343に渡され、このステッ
プの結果は、メッセージ生成ステップ344に渡され、このステップは、これらの
比較結果とチェック結果を採用し、適切な通知を生成する。この比較とチェック
が何の不規則性も示さない場合には、メッセージステップ344は、成功裏に完了
したと言うメッセージまたは通知(すなわち、検証リターン)を生成するであろう
。この比較とチェックが不規則性を示す場合には、メッセージステップ344は、
例えば、オリジンサイトに、不規則性を知らせるメッセージまたは通知を生成す
るであろう。
【0101】 成功裏に完了されたメッセージは、オリジンサイトがその記録を更新すること
ができるように、エージェントまたは単にエージェント識別子についての詳細を
含むことができる。オリジンサイトに不規則性を知らせるメッセージは、オリジ
ンサイトが、即時の修正処置をとるためにに必要でかつ充分な全ての情報を含む
ことが好ましい。このような情報は、検証システムにより追跡される全てのタイ
ミング情報とともに、両方の指紋を含むことができる。TSは、また、銀行手数料
、連邦機関、州機関等のような不規則性を処理するために、関係当局に通知を行
うルーチン(一つまたは複数)を含むこともできる。
【0102】 適切な通知が生成されると、"no"ブランチ336は、オプションとして指紋ファ
イルからエージェントの指紋を除去し、その指紋を不活性エージェントファイル
に移動させ、またはそのエージェントにフラグを立てることも出来るので、検索
ステップ340は、ファイル探索の間、それをスキップするか、またはファイル変
更ステップ346で全てを提供するであろう。次いで、通知は、例えば、通知送出
ステップ348でオリジンサイトに送出される。次いで、制御は、ログ更新ステッ
プ304に転送され、そして、このプロセスは続き、エージェントを監視する。
【0103】 これらのステップの多数は、組み合わせ、グローバルまたは共有にすることが
できることは、認識されなければならない。例えば、送受信ステップは、組み合
わせることができる。加えて、プログラムフローは、呼び出し、コール、または
始動等が行われ、かつ実行中に情報を交換する個別オブジェクトまたはモジュー
ルに分割出来るように、再設計することができる。いずれにせよ、フローチャー
ト300の主演算は、十分に、そして効果的に実施される。
【0104】 図4には、本発明の具体例のソフトウェアエージェントの構成が、示されてい
る。具体例のエージェント400は、固定フィールド410と可変フィールド450を含
む。固定フィールドは、アドレスフィールド412を含む。この説明において、ア
ドレスフィールド412は、オリジンサイトのアドレスフィールド(一つまたは複数
) 414、信頼出来るサイトアドレスフィールド(一つまたは複数) 416、そして行
き先サイトアドレスフィールド(一つまたは複数) 418を含む。固定フィールド41
0は、ルールフィールド420、セキュリティフィールド422、固定されたソフトウ
ェアエージェントの実行可能なコードフィールド424と固定データフィールド426
も含む。可変フィールド450は、新たな/古いフラグ452、ルールフィールド454
、演算結果のフィールド456、可変ソフトウェアエージェントの実行可能なコー
ドフィールド458および可変データフィールド460を含む。
【0105】 セキュリティフィールド422は、典型的には、オリジンサイト、信頼出来るサ
イト、行き先サイト、エージェント(例えば、新たな/古いフラグ)またはこれら
のいかなる組合せのセキュリティを向上させる情報/プロトコルを有する。例え
ば、セキュリティフィールドは、暗号化の有無にかかわらず、ロックとキープロ
トコール(一つまたは複数)を提供することができる。例えどんなセキュリティプ
ロトコルが実施されても、オリジンサイト、信頼出来るサイトおよび行き先サイ
トは、(例えば、エージェントまたはその一部のロックを外しかつ解読する)セキ
ュリティプロトコルを遂行するために、それぞれ、適切であるように、レジデン
ト情報/コードサイトを有する。
【0106】 本発明は、いくつかの実施例を参照して開示されたが、本明細書を読むことか
ら、当業者は、上述されかつ請求項で請求された本発明の範囲および趣旨から逸
脱せずに、変更と修正を行うことが出来ることは、理解されるべきである。
【図面の簡単な説明】
【図1】本発明の分散コンピューティング環境を示すブロック図である。
【図2】本発明の信頼出来るリソースを示すブロック図である。
【図3】本発明の信頼出来るリソースと関連するソフトウェアエージェントとそ
のアクティビティを検証するステップを示すフローチャートである。
【図4】本発明のソフトウェアエージェントを示すブロック図である。
【符号の説明】
102 オリジンサイト 104 信頼出来るサイト 106 行き先サイト 110 ネットワーク 400 エージェント 410 固定フィールド 450 可変フィールド 412 アドレスフィールド 414 オリジンサイトアドレスフィールド 416 信頼出来るサイトのアドレスフィールド 418 行き先サイトのアドレスフィールド 420 ルールフィールド 422 セキュリティフィールド 426 固定データフィールド 450 可変フィールド
───────────────────────────────────────────────────── フロントページの続き (81)指定国 EP(AT,BE,CH,CY, DE,DK,ES,FI,FR,GB,GR,IE,I T,LU,MC,NL,PT,SE),OA(BF,BJ ,CF,CG,CI,CM,GA,GN,GW,ML, MR,NE,SN,TD,TG),AP(GH,GM,K E,LS,MW,SD,SL,SZ,TZ,UG,ZW ),EA(AM,AZ,BY,KG,KZ,MD,RU, TJ,TM),AE,AL,AM,AT,AU,AZ, BA,BB,BG,BR,BY,CA,CH,CN,C R,CU,CZ,DE,DK,DM,EE,ES,FI ,GB,GD,GE,GH,GM,HR,HU,ID, IL,IN,IS,JP,KE,KG,KP,KR,K Z,LC,LK,LR,LS,LT,LU,LV,MD ,MG,MK,MN,MW,MX,NO,NZ,PL, PT,RO,RU,SD,SE,SG,SI,SK,S L,TJ,TM,TR,TT,TZ,UA,UG,UZ ,VN,YU,ZA,ZW (71)出願人 Groenewoudseweg 1, 5621 BA Eindhoven, Th e Netherlands 【要約の続き】 スとのインタラクションの適切さを示すTRルールの実 行;リターンタイマーの確立、設定、更新、および点 検;エージェントとそのアクティビティの検証に関連す る検証リターンの生成および転送;信頼できるリソース が対話するソフトウェアエージェントのアクティビティ の記録;そしてソフトウェアエージェント、特に、TRル ールの一部(一つまたは複数)または全ての、除去、マ スキング、または保護、の一つ以上の選択された演算を サポートすることが好ましい。

Claims (20)

    【特許請求の範囲】
  1. 【請求項1】 ソフトウェアエージェントの生成と送出が可能なオリジンサイト; ソフトウェアエージェントの受信、実行、および戻しが可能な行き先サイト; 前記オリジンサイトからソフトウェアエージェントを受信し、前記ソフトウェ
    アエージェントの指紋を取得し、前記エージェントを前記行き先サイトに転送し
    、元のソフトウェアエージェントとリターンソフトウェアエージェントとの指紋
    を比較し、そして検証通知を前記オリジンサイトに送出することを、これに実行
    するソフトウェアを有する信頼出来るサイト;および、 前記サイトが、前記ネットワークを介して相互に通信するオープンコミュニケ
    ーションネットワーク、 を有するコンピューティング環境。
  2. 【請求項2】 前記ネットワークが、インターネットである請求項1の環境。
  3. 【請求項3】 前記ネットワークが、ワールドワイドウェブプロトコルを使用して作動する請
    求項1の環境。
  4. 【請求項4】 前記指紋取得が、単方向ハッシュ関数である請求項1の環境。
  5. 【請求項5】 前記ソフトウェアエージェントが、前記指紋が、前記固定フィールドから実質
    上得られた情報を有する複数の固定フィールドと複数の変数フィールドを有する
    請求項1の環境。
  6. 【請求項6】 前記固定フィールドが、前記信頼出来るサイトに、可変情報が前記行き先サイ
    トで適切に変更された否かをチェックさせることを可能にする、一組のルールを
    含む請求項5の環境。
  7. 【請求項7】 オリジンサイトからソフトウェアエージェントを受信するステップ; 前記エージェントの元のエージェント指紋を生成するステップ; 行き先サイトに前記エージェントを送出するステップ; 前記行き先サイトから戻る前記エージェントを受信するステップ; 前記エージェントのリターンエージェント指紋を生成するステップ; 前記元のエージェント指紋をリターンエージェント指紋と比較するステップ;
    そして、 検証リターンを前記オリジンサイトに送出するステップ、 を有する分散コンピューティング環境の信頼出来るサイトに実施される方法。
  8. 【請求項8】 エージェントリターンタイマーを生成するステップ; 前記エージェントのリターンをモニタするステップ; 前記オリジンサイトが実行されると、前記エージェントリターンタイマーに
    タイムアウト通知を送出するステップ、; 可変エージェント情報の前記適切な処理を、前記信頼出来るサイトに知らせる
    ように設計されているエージェントルールを実行するステップ; 前記エージェントのその行き先サイトからのリターンに応じて、前記可変エー
    ジェント情報を前記ルールに対してチェックするステップ;そして、 前記オリジンサイトが、前記可変情報が適切に変更されたか否かを決定するこ
    とができるように、前記オリジンサイトに通知を送出するステップ、 を更に備える請求項7の方法。
  9. 【請求項9】 前記環境が、オープンコミュニケーションネットワークを含む請
    求項7の方法。
  10. 【請求項10】 前記コミュニケーションネットワークが、インターネットである請求項9の方
    法。
  11. 【請求項11】 前記指紋取得が、単方向ハッシュ関数である請求項6の方法。
  12. 【請求項12】 オリジンサイトからソフトウェアエージェントを受信するステップ; 元のエージェントの指紋を生成するステップ; エージェントリターンタイマーを生成するステップ; 行き先サイトに前記エージェントを送出するステップ; 前記エージェントのリターンをモニタするステップ; 前記エージェントリターンタイマーが実行されると、前記オリジンサイトにタ
    イムアウト通知を送出するステップ; 前記エージェントのリターンタイマーがタイムアウトする前に、前記エージェ
    ントが、前記行き先サイトから戻ると、リターンエージェント指紋を生成するス
    テップ; 検証結果を形成するために、前記元のエージェント指紋とリターンエージェン
    ト指紋を比較するステップ;そして、 前記オリジンサイトに検証結果を送出するステップ、 を有する分散コンピューティング環境の信頼出来るサイトに実施される方法。
  13. 【請求項13】 エージェント指紋を生成することが、前記エージェントそれ自体を、全体的に
    あるいは部分的に、使用することを可能にする請求項12の方法。
  14. 【請求項14】 前記他のステップで行われる前記アクティビティを記録するステップを更に含
    む請求項12の方法。
  15. 【請求項15】 前記環境が、オープンコミュニケーションネットワークを含む請求項12の方法
  16. 【請求項16】 前記コミュニケーションネットワークが、インターネットである請求項15の方
    法。
  17. 【請求項17】 一組のルーティングフィールド; 前記エージェントが、行き先サイトから前記信頼出来るサイトに戻るときに、
    前記信頼出来るサイトにより実行されるようにファイルされている固定された一
    組のルール; 前記信頼出来るサイトが、前記エージェントを戻るエージェントと識別するこ
    とができるようにファイルされている新たなエージェントフラグフィールド; タスク制御の間、変更されないように設計されている固定データと実行可能コー
    ドを含む固定されたコードフィールド;そして タスク制御の間、変更されるように設計されている可変データと可変実行可能
    コードを含む可変コードフィールド、 を有する信頼出来るサイトのメモリで実施されるソフトウェアエージェント。
  18. 【請求項18】 前記ユーザーサイトを識別し、かつ他の規定された情報をロックするセキュリ
    ティフィールドをさらに有する請求項17のエージェント。
  19. 【請求項19】 所定のエージェントタスクが、前記エージェントが前記信頼出来るサイトに戻
    るとき、ルールに基づく情報を前記変数フィールドにおける情報と比較すること
    により、所定の態様で実行されたか否かを決定するように、前記一組のルールが
    設計されている請求項17の前記エージェント。
  20. 【請求項20】 前記ルールに基づく情報が、前記エージェントに関連して可変の各データに対
    して、値の受け入れ可能な範囲を含む請求項19のエージェント。
JP2000590027A 1998-12-21 1999-11-29 ソフトウェアエージェントとエージェントアクティビティの検証 Expired - Lifetime JP4553491B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/217,413 US6330588B1 (en) 1998-12-21 1998-12-21 Verification of software agents and agent activities
US09/217,413 1998-12-21
PCT/EP1999/009258 WO2000038034A1 (en) 1998-12-21 1999-11-29 Verification of software agents and agent activities

Publications (2)

Publication Number Publication Date
JP2002533799A true JP2002533799A (ja) 2002-10-08
JP4553491B2 JP4553491B2 (ja) 2010-09-29

Family

ID=22810978

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000590027A Expired - Lifetime JP4553491B2 (ja) 1998-12-21 1999-11-29 ソフトウェアエージェントとエージェントアクティビティの検証

Country Status (10)

Country Link
US (1) US6330588B1 (ja)
EP (1) EP1057097B1 (ja)
JP (1) JP4553491B2 (ja)
KR (1) KR100711017B1 (ja)
CN (1) CN1174302C (ja)
AU (1) AU1387400A (ja)
DE (1) DE69921454T2 (ja)
ES (1) ES2230919T3 (ja)
TW (1) TWI223738B (ja)
WO (1) WO2000038034A1 (ja)

Families Citing this family (73)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6430618B1 (en) * 1998-03-13 2002-08-06 Massachusetts Institute Of Technology Method and apparatus for distributing requests among a plurality of resources
US7174457B1 (en) 1999-03-10 2007-02-06 Microsoft Corporation System and method for authenticating an operating system to a central processing unit, providing the CPU/OS with secure storage, and authenticating the CPU/OS to a third party
US7194092B1 (en) * 1998-10-26 2007-03-20 Microsoft Corporation Key-based secure storage
US7139915B2 (en) 1998-10-26 2006-11-21 Microsoft Corporation Method and apparatus for authenticating an open system application to a portable IC device
US6609199B1 (en) * 1998-10-26 2003-08-19 Microsoft Corporation Method and apparatus for authenticating an open system application to a portable IC device
EP1166217B1 (en) 1999-03-31 2014-08-20 BRITISH TELECOMMUNICATIONS public limited company Distributed software system visualisation
US6651171B1 (en) 1999-04-06 2003-11-18 Microsoft Corporation Secure execution of program code
US6775779B1 (en) * 1999-04-06 2004-08-10 Microsoft Corporation Hierarchical trusted code for content protection in computers
US7146505B1 (en) 1999-06-01 2006-12-05 America Online, Inc. Secure data exchange between date processing systems
US7743089B2 (en) * 1999-10-13 2010-06-22 Intel Corporation Method and system for dynamic application layer gateways
US7401115B1 (en) 2000-10-23 2008-07-15 Aol Llc Processing selected browser requests
TW503355B (en) * 1999-11-17 2002-09-21 Ibm System and method for communication with mobile data processing devices by way of ""mobile software agents""
US6757824B1 (en) 1999-12-10 2004-06-29 Microsoft Corporation Client-side boot domains and boot rules
FI111567B (fi) * 1999-12-27 2003-08-15 Nokia Corp Menetelmä ohjelmamoduulin lataamiseksi
JP3755394B2 (ja) * 2000-09-29 2006-03-15 日本電気株式会社 電子商取引監査システム、電子商取引監査方法及び電子商取引監査プログラムを記録した記録媒体
US6938164B1 (en) 2000-11-22 2005-08-30 Microsoft Corporation Method and system for allowing code to be securely initialized in a computer
US7150045B2 (en) * 2000-12-14 2006-12-12 Widevine Technologies, Inc. Method and apparatus for protection of electronic media
US8200818B2 (en) * 2001-07-06 2012-06-12 Check Point Software Technologies, Inc. System providing internet access management with router-based policy enforcement
GB2377783B (en) * 2001-07-20 2005-04-27 Ibm A method, system and computer program for controlling access in a distributed data processing system
JP3772102B2 (ja) * 2001-07-30 2006-05-10 株式会社東芝 情報処理方法、情報処理装置及びプログラム
CA2460492A1 (en) 2001-09-28 2003-04-10 British Telecommunications Public Limited Company Agent-based intrusion detection system
US7376625B2 (en) * 2001-11-15 2008-05-20 Nokia Corporation System and method for activating individualized software modules in a digital broadcast environment
US7243230B2 (en) 2001-11-16 2007-07-10 Microsoft Corporation Transferring application secrets in a trusted operating system environment
US7159240B2 (en) * 2001-11-16 2007-01-02 Microsoft Corporation Operating system upgrades in a trusted operating system environment
US7137004B2 (en) 2001-11-16 2006-11-14 Microsoft Corporation Manifest-based trusted agent management in a trusted operating system environment
EP1315066A1 (en) * 2001-11-21 2003-05-28 BRITISH TELECOMMUNICATIONS public limited company Computer security system
AUPS169002A0 (en) 2002-04-11 2002-05-16 Tune, Andrew Dominic An information storage system
AU2003213875B2 (en) * 2002-04-11 2009-05-28 Endresz, Allan An information storage system
US7890771B2 (en) 2002-04-17 2011-02-15 Microsoft Corporation Saving and retrieving data based on public key encryption
US20070118899A1 (en) * 2002-05-17 2007-05-24 Satyam Computer Services Limited Of Mayfair Centre System and method for automated safe reprogramming of software radios
US20030216927A1 (en) * 2002-05-17 2003-11-20 V. Sridhar System and method for automated safe reprogramming of software radios
US7634806B2 (en) * 2002-05-30 2009-12-15 Microsoft Corporation Peer assembly inspection
US7478233B2 (en) * 2002-05-30 2009-01-13 Microsoft Corporation Prevention of software tampering
US7676541B2 (en) * 2002-05-30 2010-03-09 Microsoft Corporation Peer communication channel partitioning
US7043522B2 (en) * 2002-05-30 2006-05-09 Microsoft Corporation Unbounded computing space
US7331062B2 (en) * 2002-08-30 2008-02-12 Symantec Corporation Method, computer software, and system for providing end to end security protection of an online transaction
US7832011B2 (en) * 2002-08-30 2010-11-09 Symantec Corporation Method and apparatus for detecting malicious code in an information handling system
US7748039B2 (en) * 2002-08-30 2010-06-29 Symantec Corporation Method and apparatus for detecting malicious code in an information handling system
US7509679B2 (en) 2002-08-30 2009-03-24 Symantec Corporation Method, system and computer program product for security in a global computer network transaction
US8819285B1 (en) 2002-10-01 2014-08-26 Trustwave Holdings, Inc. System and method for managing network communications
US7506360B1 (en) 2002-10-01 2009-03-17 Mirage Networks, Inc. Tracking communication for determining device states
US7469418B1 (en) 2002-10-01 2008-12-23 Mirage Networks, Inc. Deterring network incursion
US7735134B2 (en) * 2002-10-16 2010-06-08 Aramira Corporation Jumping application security system
US7287052B2 (en) * 2002-11-09 2007-10-23 Microsoft Corporation Challenge and response interaction between client and server computing devices
US7624110B2 (en) * 2002-12-13 2009-11-24 Symantec Corporation Method, system, and computer program product for security within a global computer network
US8145710B2 (en) * 2003-06-18 2012-03-27 Symantec Corporation System and method for filtering spam messages utilizing URL filtering module
US7243245B2 (en) * 2003-06-20 2007-07-10 International Business Machines Corporation Method and system for performing automatic startup application launch elimination
US7530103B2 (en) 2003-08-07 2009-05-05 Microsoft Corporation Projection of trustworthiness from a trusted environment to an untrusted environment
US8271588B1 (en) 2003-09-24 2012-09-18 Symantec Corporation System and method for filtering fraudulent email messages
US7269758B2 (en) * 2004-01-20 2007-09-11 International Business Machines Corporation Method and system for identifying runaway software agents
CN100429601C (zh) * 2004-03-04 2008-10-29 日本电气株式会社 数据更新系统、数据更新方法和机器人系统
BRPI0400265A (pt) * 2004-03-10 2006-02-07 Legitimi Ltd Sistema de controle de acesso a serviços de informação baseado em assinatura de hardware e software do dispositivo solicitante
US20050235284A1 (en) * 2004-04-14 2005-10-20 International Business Machines Corporation Systems and methods for tracking processing unit usage
US7941490B1 (en) 2004-05-11 2011-05-10 Symantec Corporation Method and apparatus for detecting spam in email messages and email attachments
GB2415580B (en) * 2004-06-24 2006-08-16 Toshiba Res Europ Ltd Network node security analysis method
US7596690B2 (en) * 2004-09-09 2009-09-29 International Business Machines Corporation Peer-to-peer communications
US20060248522A1 (en) * 2005-04-15 2006-11-02 Microsoft Corporation Deploying agent software to managed computer systems
US8010609B2 (en) * 2005-06-20 2011-08-30 Symantec Corporation Method and apparatus for maintaining reputation lists of IP addresses to detect email spam
US7739337B1 (en) 2005-06-20 2010-06-15 Symantec Corporation Method and apparatus for grouping spam email messages
US8090945B2 (en) * 2005-09-16 2012-01-03 Tara Chand Singhal Systems and methods for multi-factor remote user authentication
WO2007038245A2 (en) 2005-09-23 2007-04-05 Widevine Technologies, Inc. Method for evolving detectors to detect malign behavior in an artificial immune system
US8065733B2 (en) 2005-09-23 2011-11-22 Google, Inc. Method for evolving detectors to detect malign behavior in an artificial immune system
US8689016B2 (en) * 2005-12-02 2014-04-01 Google Inc. Tamper prevention and detection for video provided over a network to a client
US20080010538A1 (en) * 2006-06-27 2008-01-10 Symantec Corporation Detecting suspicious embedded malicious content in benign file formats
DE602007000681D1 (de) * 2007-01-19 2009-04-23 Sap Ag Verfahren und System zur sicheren Erweiterung des Weges eines Mobilagenten innerhalb eines Netzwerksystems
US8176473B2 (en) 2007-05-14 2012-05-08 Microsoft Corporation Transformations for software obfuscation and individualization
JP4993733B2 (ja) * 2007-09-28 2012-08-08 東芝ソリューション株式会社 暗号クライアント装置、暗号パッケージ配信システム、暗号コンテナ配信システム及び暗号管理サーバ装置
US8752008B2 (en) * 2009-09-02 2014-06-10 Advanced Micro Devices, Inc. Lightweight service based dynamic binary rewriter framework
US9098333B1 (en) 2010-05-07 2015-08-04 Ziften Technologies, Inc. Monitoring computer process resource usage
US10600219B2 (en) * 2015-06-26 2020-03-24 Idex Asa Pattern mapping
US10621765B2 (en) * 2015-07-07 2020-04-14 Idex Asa Image reconstruction
US10289456B2 (en) 2017-06-01 2019-05-14 International Business Machines Corporation Software bot conflict-resolution service agent
US11822951B2 (en) * 2020-06-10 2023-11-21 Vmware, Inc. Hypercall authentication in a guest-assisted virtual machine introspection (VMI) implementation

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0744392A (ja) * 1993-06-29 1995-02-14 Mitsubishi Electric Corp ソフトウェア配布サービス方式
JPH09288469A (ja) * 1996-04-22 1997-11-04 Sharp Corp 液晶表示装置

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU698454B2 (en) * 1994-07-19 1998-10-29 Certco Llc Method for securely using digital signatures in a commercial cryptographic system
US6157721A (en) * 1996-08-12 2000-12-05 Intertrust Technologies Corp. Systems and methods using cryptography to protect secure computing environments
US5633931A (en) * 1995-06-30 1997-05-27 Novell, Inc. Method and apparatus for calculating message signatures in advance
US5638446A (en) * 1995-08-28 1997-06-10 Bell Communications Research, Inc. Method for the secure distribution of electronic files in a distributed environment
FR2744818B1 (fr) * 1996-02-12 1998-03-27 Bull Sa Procede de verification de la conservation de l'integrite d'une requete emise sans protection par un client vers un serveur au moyen de l'integrite de la reponse
AU3000897A (en) * 1996-05-13 1997-12-05 Corporation For National Research Initiatives Identifying, managing, accessing, and tracking digital objects and associated rights and payments
SG67354A1 (en) * 1996-06-27 1999-09-21 Inst Of Systems Science Nation Computationally efficient method for trusted and dynamic digital objects dissemination
US5958051A (en) * 1996-11-27 1999-09-28 Sun Microsystems, Inc. Implementing digital signatures for data streams and data archives
US6108420A (en) * 1997-04-10 2000-08-22 Channelware Inc. Method and system for networked installation of uniquely customized, authenticable, and traceable software application
US6065040A (en) * 1997-07-07 2000-05-16 International Business Machines Corporation Computer system having agent retracting method and agent returning method
US6112304A (en) * 1997-08-27 2000-08-29 Zipsoft, Inc. Distributed computing architecture
US6144739A (en) * 1998-01-20 2000-11-07 Motorola, Inc. Computer network protection using cryptographic sealing software agents and objects
US6115699A (en) * 1998-12-03 2000-09-05 Nortel Networks Corporation System for mediating delivery of a document between two network sites

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0744392A (ja) * 1993-06-29 1995-02-14 Mitsubishi Electric Corp ソフトウェア配布サービス方式
JPH09288469A (ja) * 1996-04-22 1997-11-04 Sharp Corp 液晶表示装置

Also Published As

Publication number Publication date
EP1057097B1 (en) 2004-10-27
EP1057097A1 (en) 2000-12-06
TWI223738B (en) 2004-11-11
CN1298499A (zh) 2001-06-06
CN1174302C (zh) 2004-11-03
DE69921454D1 (de) 2004-12-02
KR100711017B1 (ko) 2007-04-25
DE69921454T2 (de) 2005-10-13
JP4553491B2 (ja) 2010-09-29
ES2230919T3 (es) 2005-05-01
US6330588B1 (en) 2001-12-11
AU1387400A (en) 2000-07-12
KR20010041169A (ko) 2001-05-15
WO2000038034A1 (en) 2000-06-29

Similar Documents

Publication Publication Date Title
JP4553491B2 (ja) ソフトウェアエージェントとエージェントアクティビティの検証
US5919258A (en) Security system and method for computers connected to network
US7533370B2 (en) Security features in on-line and off-line delivery of applications
US6785821B1 (en) Intrusion detection system and method having dynamically loaded signatures
EP1542426B1 (en) Security-related programming interface
US7415509B1 (en) Operations architectures for netcentric computing systems
US6944772B2 (en) System and method of enforcing executable code identity verification over the network
US7836174B2 (en) Systems and methods for grid-based data scanning
US6192477B1 (en) Methods, software, and apparatus for secure communication over a computer network
US7360099B2 (en) Computing environment and apparatuses with integrity based fail over
US7565437B2 (en) Systems and methods for controlling the number of clients that access a server
US20030079158A1 (en) Secured digital systems and a method and software for operating the same
US20070094323A1 (en) Managed resource sharing method and apparatus
JP2007507760A (ja) セキュアなクラスターコンフィギュレーションデータセットの転送プロトコル
JP2006528387A (ja) 協調して負荷バランスするクラスターサーバシステム及び方法
CN113179271A (zh) 一种内网安全策略检测方法及装置
US7603452B1 (en) Networked computer environment assurance system and method
KR100456512B1 (ko) 커널 백도어 탐지 시스템, 이를 이용한 커널 백도어 탐지방법 및 커널 데이터 복구 방법
JP2000267957A (ja) 制御系用ファイアウォール
US20020111818A1 (en) Method and apparatus for providing independent filtering of e-commerce transactions
JP2005321897A (ja) データ通信処理プログラムおよびウイルス駆除プログラム取得処理プログラム
KR102364737B1 (ko) 동적 url을 이용한 에이전트 자동설치 방법
US7703131B1 (en) Secured distributed impersonation
Parker Defining automated crime
Teo et al. Secure and automated software updates across organizational boundaries

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061128

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20061128

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091203

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100303

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100330

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100524

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100615

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100713

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

Free format text: PAYMENT UNTIL: 20130723

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4553491

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term