JPH10254840A - モーバイルコード実行システム - Google Patents

モーバイルコード実行システム

Info

Publication number
JPH10254840A
JPH10254840A JP9058651A JP5865197A JPH10254840A JP H10254840 A JPH10254840 A JP H10254840A JP 9058651 A JP9058651 A JP 9058651A JP 5865197 A JP5865197 A JP 5865197A JP H10254840 A JPH10254840 A JP H10254840A
Authority
JP
Japan
Prior art keywords
engine
code
server
verification
execution system
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
JP9058651A
Other languages
English (en)
Other versions
JP3905170B2 (ja
Inventor
Akira Kawamura
旭 川村
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP05865197A priority Critical patent/JP3905170B2/ja
Publication of JPH10254840A publication Critical patent/JPH10254840A/ja
Application granted granted Critical
Publication of JP3905170B2 publication Critical patent/JP3905170B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Computer And Data Communications (AREA)
  • Stored Programmes (AREA)
  • Multi Processors (AREA)

Abstract

(57)【要約】 【課題】 分散して存在する多数の計算機がネットワー
クで接続された環境における情報処理のセキュリティ技
術に関し、特にモーバイルコードによるマルチエージェ
ント方式での情報処理において、モーバイルコードの実
行時に不正処理を行なわないように保証するモーバイル
コード実行システムを提供することにある。 【解決手段】 モーバイルコードの実行に際して、モー
バイルコード中の必要のない情報の読み出し及び書き換
えを禁止する機構を持つ実行エンジンと、そのエンジン
のコードを一方向関数に入力して得られる整数値を調べ
ることで、エンジンコードが書き換えられていないこと
を検証する装置を備えるようにモーバイルコード実行シ
ステムを構成した。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、分散して存在する
多数の計算機がネットワークで接続された環境における
情報処理のセキュリティ技術に関し、特にモーバイルコ
−ドによるマルチエージェント方式での情報処理におい
て、モーバイルコ−ドの実行時にそのモーバイルコード
に対して不正処理を行わないように保証するモーバイル
コ−ド実行システムに関する。
【0002】パーソナルコンピュータの発達及びコンピ
ュータネットワーク技術の発達によって、大型計算機を
メインホストとし、それに端末がぶら下がって、すべて
の情報処理をメインホストに依存する集中処理方式か
ら、個々のパソコン・ワークステーションをフロントエ
ンドとして、ネットワーク上に設置された複数のスーパ
ーコンピュータを用いた計算サーバ・大規模な記憶装置
を持つ計算機を用いたデータベースサーバを適宜選択し
て目的の情報処理を行うというクライアント−サーバ方
式が主流となってきている。
【0003】さらに、全世界的なコンピュータネットワ
ークの技術動向として、オープンな規格によって、用い
ている計算機や通信媒体の枠を乗り越え、個々の計算機
ネットワークの接続によって形成されたネットワークの
ネットワークであるインターネットが急速に拡大してい
る。その動きは、規模の面だけでなく、利用の面からも
専門家から一般の人々へと拡大し、インターネットは企
業や国といった既存の枠組みを越え、全世界的な広がり
を持ったコンピュータネットワークとして成長し続けて
いる。また、インターネットの柔軟性と利便性を引継ぎ
ながら、利用範囲を特定の組織内に限定したイントラネ
ットも、昨今、普及してきている。
【0004】そのようなインターネット・イントラネッ
トの規模と利用分野両面における拡大につれて、クライ
アント−サーバ間の関係も、限られた範囲の閉鎖的・固
定的なものから、ネットワーク上に存在する全てのもの
へと、時に応じて自由に接続・利用することができるも
のへ進化することが望まれるようになった。そのため、
利用可能なプラットフォームに束縛されないようなイン
ターフェ−スが必要となった。また、利用するユーザ
が、限られた専門家から一般の人達へと広がるにつれ
て、簡易なインターフェ−スで複数のネットワークの異
なる種類のサーバを統合して扱うような高度なサービス
を提供することが必要とされるようになった。それらの
要望をみたすために、アクセスする側のエージェント
が、各々のサーバを管理するエージェントとのメッセー
ジの交換によって、高度な情報処理を実現するマルチエ
ージェント方式が注目されている。
【0005】また、携帯端末の普及によって、常にネッ
トワークに接続しているわけではない場合への対応や、
サーバ側の出来合いのエージェントとのメッセージ交換
ではなく、こちらからエージェントを送り込んで高度で
柔軟な情報処理を行うために、エージェント自体がネッ
トワーク上を移動するというモーバイルコ−ド(モーバ
イルエージェント)方式がマルチエージェント方式の一
部として重視されている。
【0006】
【従来の技術】マルチエージェントのシステムは、次の
ようにインプリメントされる。すなわち、各計算機上に
少なくとも一つ、エージェントの生成・消滅やエージェ
ント間の通信を司るエンジン(シェルやインタプリタ
等)が置かれる。そして、各エージェントは、互いに独
立的に機能し、かつ相互にメッセージの交換を行うよう
に、プロセスやスレッド等の実体が与えられる。各エー
ジェントの実体は、エンジンのプロセス内に存在する場
合と、エンジンとは独立なプロセスである場合とがあ
る。ネットワーク上の別の計算機上に存在するエージェ
ントとのメッセージ交換は、TCP(伝送制御プロトコ
ル)またはUDP(User Datagram Protocol)等を用い
て、エンジン経由で間接的に、またはエンジンを仲介と
してエージェント間で直接行われる。
【0007】モーバイルコ−ド方式では、一方の計算機
から、実行すべきエージェントのコ−ドをメッセージと
して送信し、受信した計算機で、そのコ−ドを実行す
る。そのために、一般的には、送付されたコ−ドを計算
機のシステム上で直接実行するインプリメントはとられ
ず、エンジンを、そのコ−ドを実行するためのインタプ
リタ、またはバイトコ−ドを実行するための仮想マシン
とするインプリメントがとられる。そうするのは、マル
チプラットフォームとするための抽象化と、後で述べる
計算機のシステムのセキュリティ確保のためである。
【0008】ネットワーク上に計算機が分散している環
境、特に全世界的な広がりを持つネットワークであるイ
ンターネットに於ては、その柔軟性と利便性の裏返しと
して、誰が、何時、何処から、如何なる手段で、何にア
クセスして来て、何を為し、その結果の影響がどう出る
のかについての可能性(危険性)は、無限にある。その
ため、悪意または不注意によるアクセスを制限する必要
がある。その実現のために、ネットワークのレベルで
は、きまった範囲のネットワークの入口に、アクセスコ
ントロール用計算機を用いたファイヤウォールを設置し
て、通信する相手先のネットワークや、通信プロトコル
の種類に制限を加えることが行われている。
【0009】また、マルチエージェントのエンジンのレ
ベルでは、公開範囲の制限や、過剰占有によるシステム
の動作不能防止のため、アクセスできるリソースの範囲
・量・占有時間に制限を加えることや、コンピュータウ
イルス等のシステムへの不正アクセスを防止するため
に、計算機のシステムへは常に間接アクセスすることに
したり、モーバイルコ−ドの実行前にコ−ド検証を行う
こと等が行われている。
【0010】また、インターネットはその仕組み上、一
般的にどのような経路を通るかが判らず、経路上での交
信データの盗聴・改ざんや、悪意の第三者が本来の相手
に成り済ます可能性・危険性がある。それを防止するた
めに、交信内容の暗号化や、暗号技術を応用した相手の
認証・改ざんされてないことを保証するための電子署名
等の技術が用いられている。具体的には、秘密鍵暗号を
用いるケルベロス、あるいは公開鍵・秘密鍵暗号を用い
たPEM(Privacy-Enhanced Mail)やPGP(Pretty Go
od Privacy) 等が存在する。
【0011】
【発明が解決しようとする課題】モーバイルコ−ドそれ
自体が、高機能化するにしたがい、知的財産権確保の対
象としての保護が必要になっていく。また、モーバイル
コ−ドはデータを伴った形でネットワークに発信され、
ネットワーク上の複数のサービスサーバとメッセージ交
換をしていくことによって、データの引き出し・処理等
を次々に行っていく使い方も行われ得る。その場合、ネ
ットワーク上のサービスサーバが常に信用できるとは限
らないので、データ処理に必要ないデータの読み出しを
防ぐ必要があり、また、あるサービスサーバから得たデ
ータを他のサービスサーバには秘匿する必要も有り得
る。
【0012】しかし、従来のセキュリティ技術は、外部
の不正アクセス等から、ネットワーク内のデータやシス
テムを守ることを目的としており、送信するモーバイル
コ−ドに関する保護は十分ではない。サービスを提供す
るサーバをエージェントの一つとしてしまい、サーバか
らモーバイルコ−ドの内容を不正に覗き見できないよう
にしたエンジンもあったが、そのエンジンが本当にその
制限機能を持っているかどうかを検証する手段は存在し
なかった。
【0013】
【課題を解決するための手段】本発明のモーバイルコ−
ド実行システムでは、サーバ側のシステムは、モーバイ
ルコ−ドを実行する際に、モーバイルコ−ド中の実行コ
−ド部分および持参データ部分の不正な読み出し・書換
えを禁止する機能付きのエンジンと、そのエンジンが正
当なものであることの検証を代行する装置とから構成さ
れる。モーバイルコード中のデータの不正な読み出し書
換えを禁止するエンジンの機能が正当であるかどうかの
検証は、そのエンジンのコードをチェックすることによ
り行う。
【0014】エンジンは、各エージェントが明示的に許
可していない領域に他のエージェント等がアクセスでき
ないように、各エージェントが実行中に使用するメモリ
などのリソースのアクセス管理を行う管理装置を内部に
持つ。
【0015】図1は、本発明の原理構成図である。図1
において、1は本発明による不正読み出し・書換え禁止
機能付きエンジン、2は本発明によるエンジンの正当性
の検証の代行装置である。3はサービスを要求するクラ
イアント側システムである。4は不正読み出し・書換え
禁止機能付きエンジン1が実現されるサーバ側エンジン
である。5はサーバ側エンジン4内に備えられているメ
モリ等のリソースである。6はリソース5へのアクセス
を管理するアクセス管理装置、7ないし8はリソース5
を用いて動作しているエージェントで、7はサーバエー
ジェント、8,8′は他のエージェントである。9ない
し13はエンジンの正当性の検証の代行装置2を構成
し、9はサーバ側エンジン4上で動作する検証代行エー
ジェントである。10はエンジン内のインタフェ−ス部
である。11はエンジン外の一次記憶または二次記憶上
に存在するエンジンコ−ド読み出し部で、12はエンジ
ンコ−ドから読み出すデータの番地を指定するパターン
が格納される読み出しパターン格納部、13はエンジン
コ−ド読み出し部11から読み出したエンジンコ−ドの
データを入力として関数計算し、固定長の整数値を出力
する一方向関数計算部である。
【0016】クライアント側システム3には以下の2通
りの構成がある。その一つは、サーバ側のエンジンの正
当性の検証を行うエージェントが、クライアント側のエ
ンジン上で動作するものである。他の一つは、モーバイ
ルコ−ド自体の中に、暗号化された本来の実行コ−ドと
持参データとが有り、さらにエンジンの正当性の検証
や、検証後の暗号化されたコ−ド等の復号化と、そのコ
−ドの実行を行うためのエージェントのコ−ドが有ると
いうものである。そのいずれの場合においても、クライ
アント側には、サーバ側のエンジンのコ−ドの情報が格
納されている。
【0017】モーバイルコ−ドシステムは、利用するサ
ーバが動作している計算機に、不正な読み出し・書換え
から保護すべき実行コ−ド・持参データを送信する。し
たがって、モーバイルコ−ドのセキュリティの確保は、
モーバイルコ−ドが実行されるエンジンに於て行われな
ければならない。しかし、一般的には、サーバ側エンジ
ン4は、クライアント側システム3の管理下にはない。
したがって、本発明では、サーバ側エンジン4として、
不正な読み出し・書換えを不可能とするものを用い、ク
ライアント側からは、サーバ側のエンジンが正当なもの
であるかを検証可能とすることで、クライアント側から
送出するモーバイルコ−ドのセキュリティを確保する。
【0018】サーバ側エンジン4は、各エージェントが
明示的に許可していない領域に他のエージェント等がア
クセスできないように、各エージェントが実行中に使用
するメモリなどのリソース5のアクセス管理を行うアク
セス管理装置6を内部に持つ。かつ、サービスを提供す
るサーバは、サービスをエージェントの一つとしてイン
プリメントする。そうすると、サーバの各サービスか
ら、モーバイルコ−ドが明示的に指定したデータ以外の
読み書きをするのが不可能となる。
【0019】サーバ側エンジン4の上には、エンジン4
の正当性の検証の代行を行う検証代行エージェント9が
動作している。検証代行エージェント9は、クライアン
ト側の検証エージェントの要求メッセージにしたがっ
て、エンジン4内のインタフェ−ス部10を介して、エ
ンジン外のエンジンコ−ド読み出し部11と一方向関数
計算部13でエンジンコ−ドに依存した整数値を得て、
その整数値をクライアントの検証エージェントに返す。
ここで、一方向関数は、セキュアハッシュ関数・Messge
Digest 関数とも呼ばれ、具体的には、MD4,MD
5,SHA,チェックサムCRCなどである。一方向関
数は、以下の性質を持っている。
【0020】1.任意のバイト列を入力として固定長の
整数値を出力 2.同じ出力を与える入力の発見が困難 3.逆関数を定義するのが困難 エンジンコ−ドを不正処理実現のために書き換えると、
一方向関数が出力する整数値が、元のエンジンコ−ドの
ときと異なってしまうので、書換えを検出することがで
きる。当然、偶然に同じ値になることは有り得るが、整
数値の大きさが十分ならば、実用上問題のない確率に収
められる。また、同じ出力を与える入力の発見が困難で
あるので、書換えたエンジンコ−ドに、書換えの検出を
逃れるためのつじつま合わせのための追加書換えを行う
ことは困難である。ここで、サーバ側のセキュリティの
観点からみると、サーバ側がクライアント側に提供する
のは、そのままでは限りなく無意味な整数値に過ぎな
い。クライアント側がエンジンコ−ドの内容を知ってい
てはじめて、その整数値が意味を持つ。つまり、サーバ
側にとっては、最小限の情報の提供で、検証が可能とい
うことになる。
【0021】クライアント側の検証エージェントは、そ
のエンジンコ−ドに対応した整数値が、正しい値かどう
かを調べて、サーバ側のエンジンが書き換えられていな
いこと、つまり、正当なエンジンであることを検証す
る。
【0022】クライアント側のエンジン上に、サーバ側
エンジン4の正当性を検証するエージェントが動作して
いる場合には、検証できた時点ではじめてモーバイルコ
−ドの発信を行うことによりセキュリティを確保する。
【0023】またモーバイルコ−ド自体の中に、サーバ
側エンジン4の正当性を検証するエージェントのコ−ド
が有る場合には、本来の実行コ−ドと持参データとを暗
号化して、持参データとしておく。この暗号化は、正当
なエンジンコ−ドを一方向関数に入力したときの整数値
を鍵として復号化できるようにしておく。モーバイルコ
−ドが最初に、サーバ側エンジン4に到達したときに
は、サーバ側の検証代行エージェント9とメッセージ交
換を行うことで、サーバ側のエンジンを一方向関数に入
力したときの整数値を受け取る。その整数値を鍵とし
て、暗号化してある本来の実行コ−ドと持参データとを
復号化して、本来のエージェントをサーバ側エンジン4
上で動作させることで、セキュリティを確保する。
【0024】次に図1の構成において、読み出しパター
ンと一方向関数を用いて行うエンジンの正当性検証処理
の手法を、図2乃至図5により具体例で説明する。図2
の(A)は、複数バイトで表されるエンジンコードの例
を示す。図2の(B)は、このようなエンジンコードに
対して与えられる読み出しパターンの例を示す。読み出
しパターンは、エンジンコードのバイト数に対応するビ
ット数をもち、その順次のビット位置は、エンジンコー
ドの順次のバイトデータに対応づけられている。従っ
て、エンジンコードがバイト構成のメモリに格納された
場合、読み出しパターンの各ビットは、メモリの順次の
番地に対応することになる。
【0025】読み出しパターンは、例えば乱数に基づい
て生成される。読み出しパターンは、図2の(B)に示
されるように、値“1”をもつビット位置に対応する番
地のバイトデータのみを、メモリから読み出して、エン
ジンコードから、読み出しパターンに依存する少数のデ
ータを抽出する。
【0026】図3は一方向関数の機能を示す。図2で読
み出しパターンにより読み出されたデータは、一方向関
数に入力されて、入力データに依存する値の固定長の出
力整数に変換される。
【0027】図4に示されるように、正当性を検証しよ
うとするサーバ側エンジンのエンジンコードは、クライ
アント側にも保持されている。クライアント側では、読
み出しパターンを生成して、自己が保持するエンジンコ
ードからデータを抽出し、一方向関数に入力して、クラ
イアント側出力整数を作成する。一方、サーバ側で実行
されるエンジンコードからも、同じ読み出しパターンを
用いてデータを抽出させ、一方向関数によりサーバ側出
力整数を作成させる。このようにして得られたクライア
ント側出力整数とサーバ側出力整数とを比較し、図示の
ように一致が得られた場合には、サーバ側エンジンは正
当であると判定する。
【0028】これに対し、図5に示されるように、不正
処理の目的などでサーバ側エンジンコードの一部が書き
替えられている場合には、図4と同じ処理を行っても、
得られるクライアント側出力整数とサーバ側出力整数と
は不一致となり、サーバ側エンジンコードは不正なもの
であると判定される。
【0029】
【発明の実施の形態】図6は、本発明が適用可能なイン
ターネット上のマルチエージェントシステムとモーバイ
ルコードの実行を示す説明図である。図示のようにある
計算機のエンジンから送信されたモーバイルコードは、
インターネット上に分散している計算機のエンジン間を
移動し、順次のサーバエージェントとメッセージ交換を
しながら必要なデータを処理していく。
【0030】図7は、クライアント側のエンジンで検証
エージェントが動作するシステムの構成例を示す説明図
である。図7では、図1に示したシステム中の構成要素
と共通の要素は、同じ参照番号で示してある。図7にお
いて新たに示された要素は14ないし16であり、14
はクライアント側システムのエンジン、15はエンジン
14上で動作する検証エージェント、16はエンジン1
4から送信されたモーバイルコードである。
【0031】エンジンコードのすべてを読み出すのでは
なく、エンジンコード中で読み出しパターンで指定され
た番地のデータだけが読み出されるようになる。したが
って、クライアント側のエンジン14上で動作している
検証エージェント15からの検証要求時に、読み出しパ
ターンを任意に指定することで、次のようにセキュリテ
ィのレベルを向上させることが可能となる。
【0032】つまりサーバ側は、クライアント側からの
検証要求毎にエンジンコードの読み出しと一方向関数の
計算を行なう必要があるので、最初は正当なエンジンを
用い、次からは不正エンジンを用いるということができ
なくなる。クライアントとサーバ間のエンジン検証のた
めのメッセージ交換の内容を、第三者が盗聴しても、同
一の読み出しパターンが再び使われなければ、無意味な
パターンと数字の対でしかない。また、副次的効果とし
て、エンジンコードのすべてを読み出す必要がなくなる
ので、検証のための時間的コストを下げることが可能と
なる。
【0033】この読み出しパターンを用いる方法には、
検証をクライアント側のエンジン上で行う場合と、検証
をサーバ側のエンジン上で行う場合の二つがあり、どち
らの場合でも有効性は変わらない。
【0034】図7の検証をクライアント側のエンジン上
で行う場合の動作を、図8の制御フローを参照して説明
する。図7のシステム構成では、クライアント側のエン
ジン14上で、サーバ側のエンジンの正当性を検証する
検証エージェント15を動作させ、利用するサーバが動
作するエンジン4に向けて、モーバイルコードを送信す
る前に、その相手先のエンジンの正当性を検証する。最
初に、クライアント側の検証エージェント15から、サ
ーバ側の検証代行エージェント9にエンジン検証要求メ
ッセージを送信する(1)。ここで、読み出しパターン
を用いるときには、そのパターンも送信する。サーバ側
の検証代行エージェント9は、エンジン4内のインター
フェース部10を介して、エンジン外のエンジンコード
読み出し部11及び一方向関数計算部13でエンジンコ
ードに依存した整数値を得て、その整数値をクライアン
ト側の検証エージェントに返している(2)。このシス
テム構成の利点は、相手先のエンジンの検証が終わるま
で、モーバイルコード16を送信(3)しなくても良い
ので、送信途中及び送信先での不正読み出しと書き換え
の機会を減らせることである。また、検証エージェント
作成にあたって,使用リソースに制限が少ないことも利
点となる。
【0035】このように、クライアント側のエンジン1
4上で、サーバ側のエンジンの正当性を検証する検証エ
ージェント15を動作させて、サーバ側の検証代行エー
ジェント9とエンジン検証のためのメッセージ交換を行
なう場合には、それらのメッセージ交換に、相互の認証
とメッセージの電子署名と暗号化を行なうようにしても
よい。そうすると、サーバ側の検証代行エージェントが
クライアント側からの検証要求メッセージの真偽を確認
してから、検証手続きを開始することで不要な情報の漏
出を防ぐとともに、悪意により頻繁に偽の検証要求メッ
セージが送出された場合のサーバ側のエンジン過負荷状
態を回避できる。また、クライアント側がサーバ側から
の検証のための整数値のメッセージの真偽を確認するこ
とで、第三者の偽または改ざんされたメッセージ送信に
よる検証の妨害を防ぐことが可能となる。
【0036】次に、検証エージェントをサーバ側のエン
ジン上で動作させる場合について述べる。図9は、この
場合にクライアント側から、利用するサーバが動作して
いるエンジンに対して、送信するモーバイルコードの例
を示す。モーバイルコードは、実行コード部分と持参コ
ード部分からなる。
【0037】実行コード部分には、エンジンの正当性の
検証と、検証後の暗号化されたコード等の復号化、そし
て、そのコードの実行を行なう、エンジン検証エージェ
ントのコードが格納される。また持参データ部分には、
暗号化された本来の実行コードとその持参データとが格
納されている。その暗号化は、エンジンコードを一方向
関数に入力して得られる整数値を鍵として復号化できる
ように施されている。モーバイルコードが、サーバ側の
エンジンに到達すると、エンジン検証エージェントが起
動される。エンジン検証エージェントは、図10の制御
フローに示されるように、最初に、検証代行エージェン
トに対して、検証要求メッセージを送信する。ここで,
読み出しパターンを用いるときには、そのパターンも送
信する。検証代行エージェント9は、エンジン内のイン
ターフェース部10を介して、エンジン外のエンジンコ
ード読み出し部、一方向関数計算部でエンジンコードに
依存した整数値を得て、その整数値を検証エージェント
に返す。検証エージェントは、その整数値を鍵として、
持参データ中のこのエンジン上で起動すべきエージェン
トの実行コードと持参データの復号化を行い、このエン
ジン上で起動を行なう。このシステム構成の利点は、検
証のためのメッセージ交換が、サーバ側のエンジン上で
ローカルに行なわれるので、第三者に不正な読み出しや
書き換えを行なわれる可能性が低いことである。
【0038】このように、検証エージェントをサーバ側
のエンジン上で動作させる場合で、クライアント側か
ら、利用するサーバが動作しているエンジンに対して、
送信するモーバイルコードの持参データとして、本来の
実行コードとそのデータとを暗号化して格納してあっ
て、それらを検証代行エージェントから得たエンジンコ
ードを一方向関数に入力して得られる整数値を鍵とし
て、復号化して実行するシステムの場合とは、サーバ毎
に固有の鍵を暗号化のときに付加する。暗号化に公開鍵
を用いる場合で、サーバから得たデータを新たに持参デ
ータにする場合には、図11に示すようにクライアント
または途中でそのデータを利用する必要のあるサーバの
公開鍵暗号を用いた暗号化を行なう。この方式の利点
は、モーバイルコードが移動しながら複数のサーバを利
用する場合に、途中の所定のサーバ及びクライアント自
身以外に、実行コード及びデータの読み出し・書き換え
を行なわれる危険性をさらに減らせることである。
【0039】さらに、図12に示すように、サーバ側に
エンジンの自己検証装置17を付加する構成とすること
ができる。この場合、自己検証装置17は、サーバのエ
ンジンの起動及び、稼動中に、定期的にエンジン外のエ
ンジンコード読み出し部11と一方向関数計算部13で
エンジンコードに依存した整数値を得て、正しい値と比
較を行なうことにより、エンジンコードの書き換えの自
己検証を行なう。この方式の利点は、サーバ側で自己検
証を行なうことで、クライアント側のモーバイルコード
の不正な読み出し・書き換えを未然に防ぐことで、サー
バの信頼を保つことがてきることである。
【0040】
【発明の効果】本発明によれば、モーバイルコードが実
行される際に、モーバイルコードが持つデータ(実行コ
ードを含む)の内、サーバに開示されるのは、モーバイ
ルコード内の明示的記述により指定された部分のみであ
ることを、サーバに用いられているモーバイルコード実
行エンジン自体が保証し、その保証の確認をクライアン
ト側ですることができる。したがって、モーバイルコー
ドの発信に際して、発信先のサーバに対しては、そのサ
ーバにおける動作に関してモーバイルコード中の必要な
情報のみを相手サーバに開示することが可能となるの
で、インターネット上の複数のサーバを巡っての情報収
集や複数ステップからなる一連のデータ処理作業のよう
に、個々のサーバにはモーバイルコード中の一部分の情
報を開示しても良いが全部を開示したくない場合や、モ
ーバイルコードが各々のサーバから得て内蔵している情
報を他のサーバには秘密にする必要がある場合に、モー
バイルコードを安全に用いることが可能となる。
【図面の簡単な説明】
【図1】本発明の原理的構成図である。
【図2】本発明によるエンジンの正当性の検証処理(そ
の1)の説明図である。
【図3】本発明によるエンジンの正当性の検証処理(そ
の2)の説明図である。
【図4】本発明によるエンジンの正当性の検証処理(そ
の3)の説明図である。
【図5】本発明によるエンジンの正当性の検証処理(そ
の4)の説明図である。
【図6】インターネット上でのマルチエージェントシス
テムとモーバイルコードの実行を示す説明図である。
【図7】クライアント側のエンジンで検証エージェント
が動作するシステムの構成例を示す説明図である。
【図8】クライアント側のエンジン上で検証エージェン
トを動作させるシステムの制御フローである。
【図9】サーバ側のエンジン上で検証エージェントを動
作させるシステムのモーバイルコードの説明図である。
【図10】サーバ側のエンジン上で検証エンジンを動作
させるシステムの制御フローを示す図である。
【図11】モーバイルコードの構成例を示す説明図であ
る。
【図12】エンジンに自己検証装置を付加した構成例を
示す説明図である。
【符号の説明】
1: 不正読み出し・書換え禁止機能付きエンジン 2: エンジンの正当性の検証の代行装置 3: クライアント側システム 4: サーバ側エンジン 5: リソース 6: アクセス管理装置 7: サーバエージェント 8: エージェント 9: 検証代行エージェント 10:インターフェース部 11:エンジンコード読み出し部 12:読み出しパターン格納部 13:一方向関数計算部

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】 モーバイルコードの実行に際して、モー
    バイルコード中の必要のない情報の読み出し及び書き換
    えを禁止する機構を持つ実行エンジンと、そのエンジン
    のコードを一方向関数に入力して得られる整数値を調べ
    ることで、エンジンコードが書き換えられていないこと
    を検証する装置を備えることを特徴とするモードバイル
    コード実行システム。
  2. 【請求項2】 請求項1に記載のモーバイルコード実行
    システムにおいて、エンジンコード読み出し部に、読み
    出しパターン格納部を追加し、エンジンコードのすべて
    を読み出すのではなく、読み出しパターンで指定された
    番地のデータだけを読み出すことを特徴とするモーバイ
    ルコード実行システム。
  3. 【請求項3】 請求項1に記載のモーバイルコード実行
    システムにおいて、クライアント側のエンジン上で、サ
    ーバ側のエンジンの正当性を検証するエージェントを動
    作させ、利用するサーバが動作するエンジンに向けてモ
    ーバイルコードを送信する前に、その相手先のエンジン
    の正当性を検証することを特徴とするモーバイルコード
    実行システム。
  4. 【請求項4】 請求項3に記載のモーバイルコード実行
    システムにおいて、サーバ側のエンジン検証のためのメ
    ッセージ交換時に、相互の検証と、メッセージの電子署
    名と暗号化を行なうことを特徴とするモーバイルコード
    実行システム。
  5. 【請求項5】 請求項1に記載のモーバイルコード実行
    システムにおいて、送信するモーバイルコードの構成内
    容について、実行コードとして、エンジンの正当性の検
    証と検証後の暗号化されたコード等の復号化と復号化さ
    れたコードの実行を行うサーバ側のエンジン検証用エー
    ジェントのコードが格納され、持参したデータとして、
    暗号化された本来の実行コードとそのデータとが格納さ
    れており、その暗号化はサーバ側のエンジンコードを一
    方向関数に入力して得られる整数値を鍵として復号化で
    きるように施されていることを特徴とするモーバイルコ
    ード実行システム。
  6. 【請求項6】 請求項5に記載のモーバイルコード実行
    システムにおいて、本来の実行コードとそのデータとの
    暗号化について、サーバ毎に固有の鍵を暗号化のときに
    付加し、暗号化に公開鍵を用いる場合には、サーバから
    得たデータを新たに持参データにするときに、クライア
    ントまたは途中でそのデータを利用する必要のあるサー
    バの公開鍵暗号を用いた暗号化を行うことを特徴とする
    モーバイルコード実行システム。
  7. 【請求項7】 請求項1に記載のモーバイルコード実行
    システムにおいて、エンジンの自己検証装置を付加し、
    サーバのエンジンの起動時及び、稼動中は定期的に、エ
    ンジン外のエンジンコード読み出し部と一方向関数計算
    部でエンジンコードに依存した整数値を得て、正しい値
    との比較を行なうことで、エンジンコードの書き換えの
    自己検証を行なうことを特徴とするモーバイルコード実
    行システム。
JP05865197A 1997-03-13 1997-03-13 処理システムおよびクライアント装置 Expired - Fee Related JP3905170B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP05865197A JP3905170B2 (ja) 1997-03-13 1997-03-13 処理システムおよびクライアント装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP05865197A JP3905170B2 (ja) 1997-03-13 1997-03-13 処理システムおよびクライアント装置

Publications (2)

Publication Number Publication Date
JPH10254840A true JPH10254840A (ja) 1998-09-25
JP3905170B2 JP3905170B2 (ja) 2007-04-18

Family

ID=13090498

Family Applications (1)

Application Number Title Priority Date Filing Date
JP05865197A Expired - Fee Related JP3905170B2 (ja) 1997-03-13 1997-03-13 処理システムおよびクライアント装置

Country Status (1)

Country Link
JP (1) JP3905170B2 (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001350717A (ja) * 2000-06-07 2001-12-21 Nippon Telegr & Teleph Corp <Ntt> 情報表示システム及びゲートウェイ装置及び情報表示装置
JP2002229790A (ja) * 2001-01-30 2002-08-16 Ffc:Kk プログラム合成方法、プログラム合成プログラム、不正使用防止機能追加方法、及び不正使用防止機能追加プログラム
WO2008001823A1 (fr) * 2006-06-27 2008-01-03 Science Park Corporation procédé de gestion de données informatiques, programme et support d'enregistrement
WO2008056700A1 (fr) * 2006-11-09 2008-05-15 Panasonic Corporation Système de détection de falsification, procédé de détection de falsification, programme de détection de falsification, support d'enregistrement, circuit intégré, dispositif de génération d'informations d'authentification et dispositif de détection de fals
US7607131B2 (en) 2000-11-20 2009-10-20 Humming Heads, Inc. Information processing method, apparatus, and system for controlling computer resources, control method therefor, storage medium, and program
JP2011100328A (ja) * 2009-11-06 2011-05-19 Nec Infrontia Corp 情報端末に組み込まれたソフトウェアの更新時の認証方法、そのシステム及びそのプログラム
US8474049B2 (en) 2005-06-28 2013-06-25 Panasonic Corporation Verification method, information processing device, recording medium, verification system, certification program, and verification program
WO2013168797A1 (ja) * 2012-05-10 2013-11-14 トヨタ自動車株式会社 ソフトウェア配信システム、ソフトウェア配信方法

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001350717A (ja) * 2000-06-07 2001-12-21 Nippon Telegr & Teleph Corp <Ntt> 情報表示システム及びゲートウェイ装置及び情報表示装置
US8356307B2 (en) 2000-11-20 2013-01-15 Humming Heads Inc. Information processing method, apparatus, and system for controlling computer resources, control method therefor, storage medium, and program
US8504706B2 (en) 2000-11-20 2013-08-06 Humming Heads, Inc. Information processing method, apparatus, and system for controlling computer resources, control method therefor, storage medium, and program
US7607131B2 (en) 2000-11-20 2009-10-20 Humming Heads, Inc. Information processing method, apparatus, and system for controlling computer resources, control method therefor, storage medium, and program
JP2002229790A (ja) * 2001-01-30 2002-08-16 Ffc:Kk プログラム合成方法、プログラム合成プログラム、不正使用防止機能追加方法、及び不正使用防止機能追加プログラム
US8474049B2 (en) 2005-06-28 2013-06-25 Panasonic Corporation Verification method, information processing device, recording medium, verification system, certification program, and verification program
JP4681053B2 (ja) * 2006-06-27 2011-05-11 サイエンスパーク株式会社 電子計算機のデータ管理方法、プログラム、及び記録媒体
JPWO2008001823A1 (ja) * 2006-06-27 2009-11-26 サイエンスパーク株式会社 電子計算機のデータ管理方法、プログラム、及び記録媒体
WO2008001823A1 (fr) * 2006-06-27 2008-01-03 Science Park Corporation procédé de gestion de données informatiques, programme et support d'enregistrement
JPWO2008056700A1 (ja) * 2006-11-09 2010-02-25 パナソニック株式会社 改竄検出システム、改竄検出方法、改竄検出プログラム、記録媒体、集積回路、認証情報生成装置及び改竄検出装置
JP5049288B2 (ja) * 2006-11-09 2012-10-17 パナソニック株式会社 改竄検出システム、改竄検出方法、改竄検出プログラム、記録媒体、集積回路、認証情報生成装置及び改竄検出装置
US8453206B2 (en) 2006-11-09 2013-05-28 Panasonic Corporation Detecting unauthorized tampering of a program
WO2008056700A1 (fr) * 2006-11-09 2008-05-15 Panasonic Corporation Système de détection de falsification, procédé de détection de falsification, programme de détection de falsification, support d'enregistrement, circuit intégré, dispositif de génération d'informations d'authentification et dispositif de détection de fals
JP2011100328A (ja) * 2009-11-06 2011-05-19 Nec Infrontia Corp 情報端末に組み込まれたソフトウェアの更新時の認証方法、そのシステム及びそのプログラム
US8612742B2 (en) 2009-11-06 2013-12-17 Nec Infrontia Corporation Method of authentication at time of update of software embedded in information terminal, system for same and program for same
WO2013168797A1 (ja) * 2012-05-10 2013-11-14 トヨタ自動車株式会社 ソフトウェア配信システム、ソフトウェア配信方法
JP2013235504A (ja) * 2012-05-10 2013-11-21 Toyota Motor Corp ソフトウェア配信システム、ソフトウェア配信方法

Also Published As

Publication number Publication date
JP3905170B2 (ja) 2007-04-18

Similar Documents

Publication Publication Date Title
CN101479984B (zh) 用于身份管理、验证服务器、数据安全和防止中间人攻击的动态分发密钥系统和方法
CN111429254B (zh) 一种业务数据处理方法、设备以及可读存储介质
US6148402A (en) Apparatus and method for remotely executing commands using distributed computing environment remote procedure calls
US7836121B2 (en) Dynamic executable
US5987134A (en) Device and method for authenticating user&#39;s access rights to resources
USRE42762E1 (en) Device and method for authenticating user&#39;s access rights to resources
JP3466025B2 (ja) コンピュータ・ネットワークにおけるマスカレード・アタック保護方法及びその装置
JP4668619B2 (ja) 装置鍵
RU2419235C2 (ru) Управление цифровыми правами с использованием методик доверительной обработки
US7900046B2 (en) System and method for establishing mutual trust on a per-deployment basis between two software modules
CN108418691A (zh) 基于sgx的动态网络身份认证方法
JPH10135942A (ja) 通信システム、メッセージ処理方法及びコンピュータ・システム
Alfalayleh et al. An overview of security issues and techniques in mobile agents
JP2003330365A (ja) コンテンツ配布/受信方法
JP2007511810A (ja) 乱数関数を利用した実行証明
US20020144118A1 (en) Authentication method in an agent system
CN107948235B (zh) 基于jar的云数据安全管理与审计装置
US7363486B2 (en) Method and system for authentication through a communications pipe
CN114244508A (zh) 数据加密方法、装置、设备及存储介质
US20060053288A1 (en) Interface method and device for the on-line exchange of content data in a secure manner
JP3905170B2 (ja) 処理システムおよびクライアント装置
CN111651740B (zh) 一种面向分布式智能嵌入式系统的可信平台共享系统
KR20020083551A (ko) 멀티에이전트 기반 다단계 사용자 인증 시스템 개발과운용 방법
Weeks et al. CCI-Based Web security: a design using PGP
JP2000112860A (ja) 安全な情報発信・共有サービス方法

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060418

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060619

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: 20070109

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070111

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: 20110119

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110119

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120119

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130119

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130119

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20140119

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees