(57)【特許請求の範囲】
【請求項１】
モバイルコード及び該モバイルコードが実行されることでアクセスされるアプリケーションとを保持するサーバと、前記モバイルコードを実行して前記アプリケーションと通信するクライアントとの間で、前記通信を中継する中継サーバであって、
前記クライアントから前記モバイルコードのダウンロード要求を受付け、該要求に応じて前記サーバから前記モバイルコードを取得する要求処理部と、
前記サーバから取得した前記モバイルコードに含まれる通信機能を、前記サーバと通信するための第１の通信機能から第２の通信機能に変更する第１の通信機能変更手段と、
前記通信機能を前記第２の通信機能に変更されたモバイルコードを前記クライアントへ送信する送信手段と、
前記クライアントから、前記モバイルコードの実行に基づき前記第２の通信機能で前記サーバの前記アプリケーションへのアクセス要求を受信する第１のインタフェースと、
前記第１のインタフェースを介して受信した前記アプリケーションへのアクセス要求を受付け、前記第２の通信機能を前記第１の通信機能に変更する第２の通信機能変更手段と、
前記第２の通信機能変更手段にて受付けたアクセス要求を、前記変換された第１の通信機能で前記サーバに送信する第２のインタフェースと
を具備することを特徴とする中継サーバ。
【請求項２】
前記第１の通信機能は送受信するデータに対して暗号化処理を行わない非暗号化通信を行う機能であり、前記第２の通信機能は送受信するデータを暗号化処理する暗号化通信を行う機能であることを特徴とする請求項１記載の中継サーバ。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、クライアントとサーバとの間でモバイルコードを用いて通信を行う通信システムに用いられる中継サーバに関する。
【０００２】
【従来の技術】
図１に、モバイルコードを用いてクライアントとサーバのアプリケーションとの間で通信を行う従来のシステムの構成を示す。同図に示すように、この通信システムでは、モバイルコードをサーバ１０１からクライアント１０２にダウンロードし、クライアント１０２にてモバイルコードを実行することで、クライアント１０２とサーバ１０１上のアプリケーション１０３との間で通信が行われる。
【０００３】
このようなモバイルコードを用いた通信方式において、モバイルコードの通信インタフェースの部分を汎用通信インタフェースから特別な機能を持つ専用通信インタフェースに変更することがある。例えば、無線環境を用いた通信で回線障害に対応した機能や圧縮機能、暗号化機能などを組み込んだ方式に変更する場合などである。このような変更は、モバイルコードとサーバ１０１上のアプリケーション１０３の双方を専用の通信インタフェースを用いたものに書き換えることにより実現していた。
【０００４】
【発明が解決しようとする課題】
このように、モバイルコードを利用した通信方式の機能の変更には、モバイルコードとサーバ上のアプリケーションのコード自体の書き換えが必要であり、特に、サーバ上のモバイルコードを利用した通信用のアプリケーション毎にコードを書き換える必要があるなど、大きな負担をサーバ管理者が強いられる結果となっていた。
【０００５】
本発明は上記の課題を解決するためになされたものであり、モバイルコードを用いたクライアントとサーバ間での通信方式の機能の追加や変更において、モバイルコードやサーバ上のアプリケーションそのものを書き換える必要のない通信システムを提供することのできる中継サーバを提供することを目的とする。
【０００６】
さらに、本発明は、モバイルコードとの間で通信を行うサーバ側のアプリケーションの数に拠ることなく、ほぼ一定のコストで通信方式の機能に変更を加えることができる通信システムを提供することのできる中継サーバを提供することを目的とする。
【００１０】
【課題を解決するための手段】
上記目的を達成するために、この発明の中継サーバは、モバイルコード及び該モバイルコードが実行されることでアクセスされるアプリケーションとを保持するサーバと、モバイルコードを実行してアプリケーションと通信するクライアントとの間で、前記通信を中継する中継サーバであって、クライアントからモバイルコードのダウンロード要求を受付け、該要求に応じてサーバからモバイルコードを取得する要求処理部と、サーバから取得したモバイルコードに含まれる通信機能を、サーバと通信するための第１の通信機能から第２の通信機能に変更する第１の通信機能変更手段と、通信機能を第２の通信機能に変更されたモバイルコードをクライアントへ送信する送信手段と、クライアントから、モバイルコードの実行に基づき第２の通信機能でサーバのアプリケーションへのアクセス要求を受信する第１のインタフェースと、第１のインタフェースを介して受信したアプリケーションへのアクセス要求を受付け、第２の通信機能を第１の通信機能に変更する第２の通信機能変更手段と、第２の通信機能変更手段にて受付けたアクセス要求を、変換された第１の通信機能でサーバに送信する第２のインタフェースとを具備することを特徴とする。
【００１１】
本発明によれば、中継サーバを導入するだけで、モバイルコードや既存のシステムに変更の手を加えることなく、クライアントとサーバとの間の通信方式を特別な機能をもった方式に変更することができる。特に、サーバにモバイルコードとの通信が可能な多くの種類のアプリケーションが用意されている場合、従来、その一つ一つのアプリケーションを書き換える必要があり、その手間によって多大なコストが費やされていたが、本発明ではアプリケーションの数に拠ることなく、ほぼ一定のコストで通信方式の機能に変更を加えることができるようになる。
【００１２】
また、この発明の中継サーバにおいて、第１の通信機能は送受信するデータに対して暗号化処理を行わない非暗号化通信を行う機能であり、第２の通信機能は送受信するデータを暗号化処理する暗号化通信を行う機能であってよい。
【００２０】
【発明の実施の形態】
以下、図面を参照しながら本発明の実施形態について説明する。
【００２１】
図２に、本発明の実施形態である、モバイルコードを用いた通信システムの構成を示す。
【００２２】
この通信システムにおいて、モバイルコード中継サーバ（ＭＣＰＳ）１とサーバ２はＬＡＮ（Local Area Network）３上で相互に接続されている。ＬＡＮ３はさらに公衆網、インターネット等のネットワーク４を通じてクライアント５と接続されている。
【００２３】
クライアント５はモバイルコードダウンロード部（ＭＣＤ）６をもつ。このモバイルコードダウンロード部６は、モバイルコードのダウンロード要求をネットワーク４を通じてＬＡＮ３上のモバイルコード中継サーバ１へ送信し、この結果としてダウンロードしたモバイルコードを実行する機能を持つ。
【００２４】
サーバ２はダウンロード要求処理部（ＭＣＤＡ）８と、アプリケーション（ＡＰ）９と、モバイルコードの保管部１０を有している。ダウンロード要求処理部８は、クライアント５からモバイルコードダウンロード要求を受けつけ、モバイルコード保管部１０内のモバイルコードをクライアント５に送信する機能を持つ。アプリケーション９は、クライアント５上で実行されるモバイルコードと通信して処理を行う機能を持つ。
【００２５】
モバイルコード中継サーバ１はモバイルコード中継部（ＭＣＰ）１１をもつ。このモバイルコード中継部１１はダウンロードされるモバイルコードを変更する機能を持つ。例えば、モバイルコードが用いている汎用通信インタフェースを、特別な機能を持った通信方式に対応した専用の通信インタフェースへ変更する。
【００２６】
次に、クライアント５が、サーバ２よりモバイルコードをダウンロードし、このモバイルコードを実行してサーバ２のアプリケーション９へ特別な機能を持った通信方式でアクセスするまでの処理の流れを説明する。
【００２７】
▲１▼  クライアント５のモバイルコードダウンロード部６が、モバイルコードのダウンロード要求をモバイルコード中継サーバ１内のモバイルコード中継部１１に送信する。
▲２▼  モバイルコードのダウンロード要求を受けたモバイルコード中継部１１が、サーバ２内のダウンロード要求処理部８にダウンロード要求を送信し、モバイルコードをダウンロードする。
▲３▼  モバイルコード中継部１１が、サーバ２よりダウンロードしたモバイルコードの通信インタフェースを汎用通信インタフェースから特別な機能を持った専用通信インタフェースに変更し、クライアント５のモバイルコードダウンロード部６へ送信する。
▲４▼  モバイルコードダウンロード部６が変更されたモバイルコードを実行する。
▲５▼  変更されたモバイルコードが、専用通信インタフェースを用いてアプリケーション９へアクセスする。
【００２８】
この方式では、モバイルコード中継サーバ１のモバイルコード中継部１１で、モバイルコードの汎用の通信インタフェースが特別な機能を持った専用の通信インタフェースに変更されるので、既存のモバイルコードを書き換えることなく、クライアント５とサーバ２との間の通信方式を特別な機能をもった方式に変更することができる。ただし、この方式では、サーバ２のアプリケーション９のコードが専用の通信インタフェースを用いたものに書き換えられていることが前提となる。
【００２９】
図３に、モバイルコードとアプリケーション９の両方の書き換えを不要にした通信システムの構成を示す。
【００３０】
この通信システムにおいて、モバイルコード中継サーバ１は通信中継部（ＣＰ）１２を有する。この通信中継部１２は、モバイルコードとサーバ２上のアプリケーション９との通信を中継するために、特別な機能を持った通信方式に対応した専用の通信インタフェースと汎用の通信インタフェースを用いて通信する機能を持つ。
【００３１】
次に、クライアント５がモバイルコードをダウンロードし、このモバイルコードを実行してサーバ２のアプリケーション９へ特別な機能を持った通信方式でアクセスするまでの処理の流れを説明する。
【００３２】
▲１▼  クライアント５のモバイルコードダウンロード部６が、モバイルコードのダウンロード要求をモバイルコード中継サーバ１のモバイルコード中継部１１に送信する。
▲２▼  モバイルコードのダウンロード要求を受けたモバイルコード中継部１１が、サーバ２内のダウンロード要求処理部８にダウンロード要求を送信し、モバイルコードをダウンロードする。
▲３▼  モバイルコード中継部１１が、サーバ２よりダウンロードしたモバイルコードの汎用の通信インタフェースを特別な機能を持った専用の通信インタフェースに変更し、クライアント５のモバイルコードダウンロード部６へ送信する。
▲４▼  モバイルコードダウンロード部６が変更されたモバイルコードを実行する。
▲５▼  モバイルコードが、専用の通信インタフェースを用いて通信中継部１２へアクセスする。
▲６▼  通信中継部１２が、汎用の通信インタフェースを用いてアプリケーション９にアクセスする。
【００３３】
したがって、この方式によれば、汎用の通信インタフェースを用いて書かれた既存のモバイルコードとアプリケーション９のコードをどちらも書き換えることなく、クライアント５とサーバ２との間の通信方式を特別な機能をもった方式に変更することができる。
【００３４】
図４に、図３のモバイルコード中継サーバ１の内部構成を示す。モバイルコード中継サーバ１はモバイルコード中継部１１と通信中継部１２とを有する。
【００３５】
モバイルコード中継部１１は、クライアント通信部（ＭＣＣ）２１、モバイルコード変更部（ＭＣＡ）２２、サーバ通信部（ＭＳＣ）２３から構成される。クライアント通信部２１は、クライアント５からサーバ２へのアクセス要求を受け付け、クライアント５と通信を行う。サーバ通信部２３はサーバ２との通信を行う。モバイルコード変更部２２は、通信中継部１２が必要とする情報をモバイルコードに追加もしくは変更する処理を行う。この情報には、例えば以下のものがある。
【００３６】
（１）サーバ２へ直接アクセスするのではなく、通信中継部１２を経由するようにする通信インタフェース
（２）通信中継部１２との通信に必要な通信インタフェース
通信中継部（ＣＰ）１２は、クライアント通信部（ＣＣＣ）３１、通信中継機能部（ＣＰＰ）３２、サーバ通信部（ＣＳＣ）３３から構成される。クライアント通信部３１は、クライアント５からサーバ２へのアクセス要求を受けつけ、クライアント５と通信を行う。サーバ通信部３３はサーバ２との通信を行う。通信中継機能部３２は、クライアント５からのアクセス要求をサーバ２へ中継する際に必要となる処理を行う。
【００３７】
クライアント５がモバイルコードをダウンロードする際の、モバイルコード中継部１１内の各処理部の処理の流れを図５に示す。
【００３８】
クライアント通信部（ＭＭＣ）２１は、クライアント５からモバイルコードのダウンロード要求を受信すると（Ｓ５０１）、それをサーバ通信部（ＭＳＣ）２３へ送信する（Ｓ５０２）。サーバ通信部２３は、ダウンロード要求を受信すると（Ｓ５０３）、サーバ２からモバイルコードのダウンロードを行う（Ｓ５０４）。サーバ通信部２３は、ダウンロードしたモバイルコードをモバイルコード変更部（ＭＣＡ）２２へ送信する（Ｓ５０５）。モバイルコード変更部２２は、モバイルコードを受信すると（Ｓ５０６）、モバイルコードに変更を加え（Ｓ５０７）、変更したモバイルコードをクライアント通信部２１へ送信する（Ｓ５０８）。クライアント通信部２１はモバイルコードを受信すると（Ｓ５０９）、それをクライアント５へ送信する（Ｓ５１０）。
【００３９】
モバイルコードからサーバ２へアクセスする際の、通信中継部１２内の各処理部の処理の流れを図６に示す。
【００４０】
クライアント通信部（ＣＣＣ）３１は、クライアント５上のモバイルコードからサーバ２へのアクセス要求を受信すると（Ｓ６０１）、それを通信中継機能部（ＣＰＰ）３２へ送信する（Ｓ６０２）。通信中継機能部３２は、サーバ２へのアクセス要求を受信すると（Ｓ６０３）、通信の中継に必要な処理を行い（Ｓ６０４）、サーバ通信部（ＣＳＣ）３３に要求を送信する（Ｓ６０５）。サーバ通信部３３は、アクセス要求を受信すると（Ｓ６０６）、それをサーバ２へ送信する（Ｓ６０７）。
【００４１】
このようなモバイルコード中継部１１と通信中継部１２を持ったモバイルコード中継サーバ１を用意することにより、既存のモバイルコード、アプリケーション９に変更を加えずに、モバイルコードとサーバ２のアプリケーション９との間の通信を特別な機能を持ったものに変更することができる。例えば、ネットワーク４が無線環境の場合は、回線障害対応機能を持った通信方式、圧縮機能を持った通信方式、暗号化機能を持った通信方式などに変更することができ、モバイル環境でのリモートアクセスの快適性を実現できる。
【００４２】
モバイルコードは、セキュリティの面から、ダウンロード元のサーバ２にしかアクセスできないという制限がつけられている場合がある。上記実施形態において、通信中継部１２を経由してモバイルコードとサーバ２上のアプリケーション９が通信する場合にも、この制限を守り、モバイルコードが、本来はアクセスを許されていないサーバ２へアクセスできてしまうことを防ぐ必要がある。
【００４３】
図７に、図４のモバイルコード中継サーバ（ＭＣＰＳ）１にアクセス権情報管理部（ＡＭ）４１とアクセス権情報テーブル（ＡＴ）４２を組み込んだモバイルコード中継サーバ１の内部構成を示す。
【００４４】
アクセス権情報管理部４１は、アクセス権情報テーブル（ＡＴ）４２を管理する。アクセス権情報テーブル４２には、モバイルコード中継部１１を経由してダウンロードされたモバイルコードがアクセス可能なサーバ２に関する情報が保存される。
【００４５】
アクセス権情報テーブル４２の例を図８に示す。アクセス権情報テーブル４２には、ダウンロードされたモバイルコードを一意に識別できるＩＤと、そのモバイルコードがアクセスできるサーバ２に関する情報、例えばサーバ名とが対応付けて登録される。このアクセス権情報テーブル４２を参照することで、指定されたＩＤに対応するサーバ情報を取得できる。
【００４６】
モバイルコード変更部２２は、モバイルコードを基にアクセス権情報テーブル４２からサーバ２に関する情報を取得するための情報をモバイルコードに付加する。図８の場合はその付加情報はダウンロードされたモバイルコードを一意に識別できるＩＤとなる。モバイルコードに付加される通信インタフェースは、通信中継部１２を介してサーバ２へアクセスする際に、この情報も提供する機能をもつものとする。
【００４７】
本例において、クライアント５がモバイルコードをダウンロードする際の、図７のモバイルコード中継部１１内の各処理部の処理の流れを図９に示す。
【００４８】
クライアント通信部（ＭＭＣ）２１は、クライアント５からモバイルコードのダウンロード要求を受信すると（Ｓ９０１）、それをサーバ通信部（ＭＳＣ）２３へ送信する（Ｓ９０２）。サーバ通信部２３は、ダウンロード要求を受信すると（Ｓ９０３）、サーバ２へダウンロード要求を送信し（Ｓ９０４）、サーバ２からモバイルコードのダウンロードを行う（Ｓ９０５）。サーバ通信部２３は、ダウンロードしたモバイルコードをモバイルコード変更部（ＭＣＡ）２２へ送信する（Ｓ９０６）。
【００４９】
モバイルコード変更部２２は、モバイルコードを受信すると（Ｓ９０７）、そこからモバイルコードに関する情報、例えば、コードの配置場所等を抽出し、アクセス情報管理部（ＡＭ）４１へ送信する（Ｓ９０８）。アクセス権情報管理部４１は、モバイルコードに関する情報を受信すると（Ｓ９０９）、その情報を基に、モバイルコードがアクセス可能なサーバ２の情報を抽出する（Ｓ９１０）。また、アクセス権情報管理部４１は、モバイルコードを一意に識別できるＩＤを発行し（Ｓ９１１）、そのＩＤとアクセス可能なサーバ２の情報を対にしてアクセス権情報テーブル４２に登録する（Ｓ９１２）。
【００５０】
登録後、発行したＩＤをモバイルコード変更部（ＭＣＡ）２２に送信する（Ｓ９１３）。モバイルコード変更部２２は、ＩＤを受信すると（Ｓ９１４）、それも基にモバイルコードに変更（ＩＤの付加を含む。）を加え（Ｓ９１５）、変更したモバイルコードをクライアント通信部（ＭＣＣ）２１へ送信する（Ｓ９１６）。クライアント通信部２１はモバイルコードを受信すると（Ｓ９１７）、それをクライアント５へ送信する（Ｓ９１８）。
【００５１】
クライアント５がモバイルコードをダウンロードする際の、図７の通信中継部１２内の各処理部の処理の流れを図１０に示す。
【００５２】
クライアント通信部（ＣＣＣ）３１は、クライアント５上のモバイルコードからサーバ２へのアクセス要求を受信すると（Ｓ１００１）、それを通信中継機能部（ＣＰＰ）３２へ送信する（Ｓ１００２）。通信中継機能部３２は、サーバ２へのアクセス要求を受信すると（Ｓ１００３）、アクセス権の検査に必要な情報であるＩＤを取り出し、アクセス権情報管理部（ＡＭ）４１へ送信する（Ｓ１００４）。アクセス権情報管理部４１は、アクセス権検査情報（ＩＤ）を受信すると（Ｓ１００５）、アクセス権情報テーブル（ＡＴ）４２から、アクセスが可能なサーバ２の情報を抽出し（Ｓ１００６）、その情報を通信中継機能部（ＣＰＰ）３２へ送信する（Ｓ１００７）。
【００５３】
通信中継機能部３２は、アクセス可能サーバ情報を受信すると（Ｓ１００８）、それを基にアクセス権の正当性を検査し（Ｓ１００９）、アクセスが認められたら通信の中継に必要な処理を行い（Ｓ１０１０）、サーバ通信部（ＣＳＣ）３３にアクセス要求を送信する（Ｓ１０１１）。サーバ通信部３３は、アクセス要求を受信すると（Ｓ１０１２）、それをサーバ２へ送信する（Ｓ１０１３）。アクセスが認められなかった場合は、通信中継機能部３２がエラーコードをクライアント通信部３１へ送信する（Ｓ１０１４）。クライアント通信部３１は、エラーコードを受信すると（Ｓ１０１５）、それをクライアント５へ送信する（Ｓ１０１６）。
【００５４】
このように、アクセス権情報管理部４１とアクセス権情報テーブル４２をモバイルコード中継サーバ１に用意することにより、モバイルコードがダウンロード元以外のサーバ２へ不当にアクセスすることを防ぐことができ、変更前のモバイルコードの持つアクセス制限を損なわずに、モバイルコードとサーバ間の通信を特別な機能を持ったものに変更することが可能になる。
【００５５】
クライアント５のセキュリティの面から、モバイルコードに証明書が添付されている場合がある。モバイルコード中継部１１は、上述の処理を行うことから、モバイルコードに変更を加えることになるため、そのままではクライアント５側で正しく認証されず、モバイルコードは実行されない。よって、モバイルコード中継部１１は、モバイルコードに予め添付されている証明書に基づいて認証を行い、正しく認証が行えた場合は、モバイルコードに上述の処理を行った後、自分の証明書を添付するようにする。クライアント５では、モバイルコード中継部１１の証明書に基づいて認証を行い、モバイルコードを実行する。
【００５６】
図１１に、証明書の処理を行うモバイルコード中継部の内部構成を示す。モバイルコード中継部１１は、クライアント通信部（ＭＣＣ）２１、サーバ通信部（ＭＳＣ）２３、モバイルコード認証部（ＣＣＲ）５１、モバイルコード変更部（ＭＣＡ）２２、証明書添付部（ＣＲＡ）５２から構成される。クライアント通信部２１、サーバ通信部２３、モバイルコード変更部２２は、上述と同様の処理を行う。
【００５７】
モバイルコード認証部（ＣＣＲ）５１は、サーバ通信部２３がダウンロードしたモバイルコードの認証を行い、モバイルコード実体の取り出しを行う。認証を行うための情報は予めすべて用意されているものとする。証明書添付部（ＣＲＡ）５３は、モバイルコード変更部２２で処理が行われたモバイルコードに対し、証明書を付加する。
【００５８】
図７のモバイルコード中継部を図１１のモバイルコード中継部に置き換えた場合のモバイルコード中継部１１内の各処理部、および、アクセス権情報管理部４１の処理の流れの詳細を図１２に示す。
【００５９】
クライアント通信部２１は、クライアント５からモバイルコードのダウンロード要求を受信すると（Ｓ１２０１）、それをサーバ通信部２３に要求を送信する（Ｓ１２０２）。サーバ通信部２３は、ダウンロード要求を受信すると（Ｓ１２０３）、サーバ２へダウンロード要求を送信し（Ｓ１２０４）、モバイルコードのダウンロードを行う（Ｓ１２０５）。サーバ通信部２３は、ダウンロードしたモバイルコードをモバイルコード認証部５１へ送信する（Ｓ１２０６）。
【００６０】
モバイルコード認証部５１は、モバイルコードを受信すると（Ｓ１２０７）、モバイルコードの認証を行う（Ｓ１２０８）。認証が成功した場合はモバイルコードの抽出を行う（Ｓ１２０９）。失敗した場合は、エラーコードをクライアント通信部２１へ送信する（Ｓ１２２４）。モバイルコードの抽出（Ｓ１２０９）後、モバイルコード認証部５１は抽出したモバイルコードをモバイルコード変更部２２へ送信する（Ｓ１２１０）。
【００６１】
モバイルコード変更部２２は、モバイルコードを受信すると（Ｓ１２１１）、そこからモバイルコードに関する情報、例えば、コードの配置場所等を抽出し、アクセス権情報管理部４１へ送信する（Ｓ１２１２）。アクセス権情報管理部４１は、コードに関する情報を受信すると（Ｓ１２１３）、その情報を基に、モバイルコードがアクセスできるサーバ２の情報を抽出する（Ｓ１２１４）。また、モバイルコードを一意に識別できるＩＤを発行し（Ｓ１２１５）、ＩＤとアクセス可能なサーバ２の情報を対にしてアクセス権情報テーブル４２に登録する（Ｓ１２１６）。
【００６２】
登録後、発行したＩＤをモバイルコード変更部２２に送信する（Ｓ１２１７）。モバイルコード変更部２２は、ＩＤを受信すると（Ｓ１２１８）、それを基にモバイルコードに変更（ＩＤの付加を含む。）を加え（Ｓ１２１９）、変更したモバイルコードを証明書添付部５２へ送信する（Ｓ１２２０）。
【００６３】
証明書添付部５２は、モバイルコードを受信すると（Ｓ１２２１）、モバイルコードに証明書を添付し（Ｓ１２２２）、クライアント通信部２１へモバイルコードを送信する（Ｓ１２２３）。クライアント通信部２１はモバイルコード、もしくはエラーコードを受信すると（Ｓ１２２５）、それをクライアント５へ送信する（Ｓ１２２６）。
【００６４】
モバイルコード変更部２２は、通信中継部１２のみに通信を行うようにモバイルコードの通信インタフェースを変更するため、モバイルコード中継サーバ１のモバイルコード認証部５１でのみ認証を行い、証明書添付部５２で新たに証明書を付加することは行わず、証明書なしのモバイルコードをクライアント５に送信するという方法も考えられる。
【００６５】
証明書添付部５２で新たに証明書を付加する方法では、モバイルコード中継部１１からクライアント５へモバイルコードを送信する際にモバイルコードが改ざんされた場合、それを検知することができる。
【００６６】
従来、クライアント５は証明書から認証を行うための情報を、ダウンロードする可能性のあるモバイルコードすべてに対して持っている必要があった。しかし、この方式では、モバイルコードの認証はモバイルコード中継部１１が行うため、クライアント５は、モバイルコード中継部１１の証明書から認証を行うための情報のみ持っていればよい。また、モバイルコード中継部１１で証明書を添付しない場合は、上記の情報も持っておく必要がない。これは、クライアント５の設定にかかる煩雑さを軽減できるというメリットがある。
【００６７】
また、サーバ間の信頼関係を確認する仕組みを組み込み、モバイルコード中継機能がその情報も用いてモバイルコードからサーバ２へのアクセスの正当性をチェックすることにより、ダウンロード元以外のサーバ２へのアクセスを可能とさせることもできる。この方法では、ダウンロード元以外のサーバ２とはアクセスできないという制限がある場合と同等のセキュリティ強度を保ちつつ、システム形態の幅を広げることができる。これは、例えば図１３のように、アクセス権情報管理部４１が、サーバ間の信頼関係に関する情報を管理しているサーバ間信頼関係情報管理部（ＳＭ）６１ともやりとりを行い、アクセス権情報テーブル４２に格納する情報を決定することにより実現できる。
【００６８】
サーバ間の信頼関係を確認する仕組みを組み込んだ場合の、モバイルコードダウンロード時のアクセス権情報管理部の処理の流れを図１４に示す。図９および図１２のアクセス権情報管理部４１の処理の流れを図１４に置きかえることにより、信頼関係のある、ダウンロード元以外のサーバ２へのアクセスが可能になるよう、モバイルコードをダウンロードすることができる。
【００６９】
アクセス権情報管理部４１は、モバイルコードの情報を受信すると（Ｓ１４０１）、その情報を元に、モバイルコードがアクセスできるサーバ２を抽出する（Ｓ１４０２）。抽出結果を元に、サーバ間信頼関係情報管理部ＳＭへ、抽出したサーバ２と信頼関係にあるサーバ２の問い合わせ要求を送信する（Ｓ１４０３）。サーバ間信頼関係情報管理部ＳＭは、問い合わせ要求を受信すると（Ｓ１４０４）、信頼関係にあるサーバ２の抽出を行い（Ｓ１４０５）、結果をアクセス権情報管理部４１へ送信する（Ｓ１４０６）。アクセス権情報管理部４１は、結果を受信すると（Ｓ１４０７）、モバイルコードを一意に識別できるＩＤを発行し（Ｓ１４０８）、ＩＤとアクセス可能なサーバ２の情報を対にしてアクセス権情報テーブル４２に登録する（Ｓ１４０９）。この、サーバ２の情報は、Ｓ１４０２で抽出した結果と、Ｓ１４０７で受信した結果を組み合わせたものとする。登録後、発行したＩＤをモバイルコード変更部ＣＡへ送信する（Ｓ１４１０）。
【００７０】
これは、アクセス権情報テーブル４２に、信頼関係のあるサーバ２の情報も登録しておく方法であるが、アクセス権情報テーブル４２には、ダウンロード元のサーバ２に関する情報のみ登録しておき、アクセス権を検査する際のアクセス可能サーバ情報を抽出する際に、サーバ間信頼関係情報管理部６１へ問い合わせを行う方法も考えられる。
【００７１】
モバイルコードがダウンロード元以外のサーバ２へアクセスできるようにする方法には、クライアント５側にそれを許可する設定を行うというものもある。しかし、この方法では、ダウンロードする可能性のあるすべてのモバイルコードに対して、クライアント５側で予め設定をしておかなければならなく、柔軟性がない。上記の方法ではサーバ２側で信頼関係に関する情報を追加するだけで、すべてのクライアントに適用することができ、クライアント管理の負荷を軽減できる。
【００７２】
【発明の効果】
以上説明したように、本発明によれば、モバイルコードや既存のシステムに変更の手を加えることなく、クライアントとサーバとの間の通信方式を特別な機能をもった方式に変更することができる。特に、サーバにモバイルコードとの通信が可能な多くの種類のアプリケーションが用意されている場合、従来、その一つ一つのアプリケーションを書き換える必要があり、その手間によって多大なコストが費やされていたが、本発明ではアプリケーションの数に拠ることなく、ほぼ一定のコストで通信方式の機能に変更を加えることができるようになる。
【図面の簡単な説明】
【図１】従来のモバイルコードを用いた通信システムの構成を示す図。
【図２】本発明の実施形態に係る、モバイルコードのみの書き換えが不要な通信システムの構成を示す図。
【図３】本発明の実施形態に係る、モバイルコードとアプリケーションの書き換えが不要な通信システムの構成を示す図。
【図４】図３のモバイルコード中継サーバの内部構成を示す図。
【図５】クライアントがモバイルコードをダウンロードする際のモバイルコード中継部での処理の流れ図。
【図６】モバイルコードからサーバへアクセスする際の通信中継部内の処理の流れ図。
【図７】アクセス権情報管理部（ＡＭ）とアクセス権情報テーブル（ＡＴ）を組み込んだモバイルコード中継サーバの内部構成を示す図。
【図８】アクセス権情報テーブルの例を示す図。
【図９】クライアントがモバイルコードをダウンロードする際のモバイルコード中継部内の処理の流れ図。
【図１０】クライアントがモバイルコードをダウンロードする際の通信中継部内の処理の流れ図。
【図１１】証明書の処理を行うモバイルコード中継部の内部構成を示す図。
【図１２】図１１のモバイルコード中継部内の処理およびアクセス権情報管理部の処理の流れ図。
【図１３】アクセス権情報管理部とサーバ間信頼関係情報管理部を示す図。
【図１４】モバイルコードダウンロード時のアクセス権情報管理部の処理の流れ図。
【符号の説明】
１    モバイルコード中継サーバ（ＭＣＰＳ）
２    サーバ
３    ＬＡＮ
４    ネットワーク
５    クライアント
６    モバイルコードダウンロード部（ＭＣＤ）
８    ダウンロード要求処理部（ＭＣＤＡ）
９    アプリケーション（ＡＰ）
１０    モバイルコード保管部
１１    モバイルコード中継部（ＭＣＰ）
１２    通信中継部（ＣＰ）
２１    クライアント通信部（ＭＣＣ）
２２    モバイルコード変更部（ＭＣＡ）
２３    サーバ通信部（ＭＳＣ）
３１    クライアント通信部（ＣＣＣ）
３２    通信中継機能部（ＣＰＰ）
３３    サーバ通信部（ＣＳＣ）
４１    アクセス権情報管理部（ＡＭ）
４２    アクセス権情報テーブル（ＡＴ）
５１    モバイルコード認証部（ＣＣＲ）
５２    証明書添付部（ＣＲＡ）
６１    サーバ間信頼関係情報管理部（ＳＭ）
【図１】
0003705717.tif 000002
【図２】
0003705717.tif 000003
【図３】
0003705717.tif 000004
【図４】
0003705717.tif 000005
【図５】
0003705717.tif 000006
【図６】
0003705717.tif 000007
【図７】
0003705717.tif 000008
【図８】
0003705717.tif 000009
【図９】
0003705717.tif 000010
【図１０】
0003705717.tif 000011
【図１１】
0003705717.tif 000012
【図１２】
0003705717.tif 000013
【図１３】
0003705717.tif 000014
【図１４】
0003705717.tif 000015