(57)【要約】【課題】サーバの実行環境において端末から処理要求を受け付けて動作するソフトウェアを、ソフトウェアに必要な情報資源を確保するとともに、端末と実行環境間のセキュリティを確保して実行することができる情報処理装置及びソフトウェア管理プログラムを提供する。【解決手段】実行サーバ装置１は、ソフトウェア３０を実行する実行環境１Ａ〜１Ｅを有し、ソフトウェア３０に添付され暗号化されたソフトウェア実行環境証明書３０Ｂを復号し、要求実行環境情報３０１を読み出す実行環境証明書処理手段１０Ｂと、要求実行環境情報３０１に記載された情報資源の情報を満たす実行環境を確保する実行環境確保手段１０Ｃと、端末装置４から処理要求を受信すると、確保された実行環境においてソフトウェア３０を実行し、ソフトウェア実行環境証明書３０Ｂを用いて署名した実行結果を端末装置４へ送付するソフトウェア実行手段１０Ｄとを有する。【選択図】図１
2011034530.tif 000002
【特許請求の範囲】
【請求項１】
情報資源を用いてソフトウェアを実行する複数の実行環境を有し、
前記ソフトウェアに添付され暗号化された電子証明書を復号し、前記復号された電子証明書から前記ソフトウェアの実行に要求される情報資源の情報を読み出す読出手段と、
前記複数の実行環境のうち、前記読み出された情報資源の情報を満たす実行環境を確保する確保手段と、
前記ソフトウェアの処理要求を受信すると、前記確保された実行環境において前記ソフトウェアを実行して処理結果を出力する出力手段と前記電子証明書を用いて署名した前記処理結果を前記処理要求の送信元に送付する送付手段とを有する情報処理装置。
【請求項２】
前記出力手段は前記ソフトウェアを実行する前記実行環境を他の実行環境に切り替えるとき、新たな電子証明書を生成して前記ソフトウェアに添付し、前記他の実行環境での実行を委託する委託手段をさらに有する請求項１に記載の情報処理装置。
【請求項３】
前記委託手段は、前記出力手段が前記ソフトウェアを実行したときに必要とした情報資源の情報を前記新たな電子証明書に記載する請求項２に記載の情報処理装置。
【請求項４】
情報資源を用いてソフトウェアを実行する複数の実行環境を有するコンピュータを、
前記ソフトウェアに添付され暗号化された電子証明書を復号し、前記復号された電子証明書から前記ソフトウェアの実行に要求される情報資源の情報を読み出す読出機能と、
前記複数の実行環境のうち、前記読み出された情報資源の情報を満たす実行環境を確保する確保機能と、
前記ソフトウェアの処理要求を受信すると、前記確保された実行環境において前記ソフトウェアを実行して処理結果を出力し、電気電子証明書を用いて署名した前記処理結果を前記処理要求の送信元に送付する送付機能として動作させるソフトウェア管理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置及びソフトウェア管理プログラムに関する。
【背景技術】
【０００２】
特許文献１の情報処理装置は、耐タンパ性のあるハードウェア又はソフトウェアで作られている実行環境と、実行環境に格納されセキュリティを必要とする処理を代行するセキュアエージェントと、実行環境に格納されセキュアエージェント間でやりとりされる暗号化された情報の復号に用いられるセキュアエージェント鍵とを有し、端末を利用する利用者側及びサーバで動作するプロバイダ側にそれぞれ実行環境、セキュアエージェント及びセキュアエージェント鍵を用意して、利用者側からの処理要求、プロバイダ側からの結果報告をセキュアエージェント間で情報を暗号化して通信することで利用者側及びプロバイダ側の秘匿性を保証して安全に通信するものである。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００１−３３１４４６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明の目的は、情報処理装置の情報資源を用いた実行環境において端末から処理要求を受け付けて動作するソフトウェアプログラム（以下、ソフトウェア）を、ソフトウェアに必要なサーバ上の情報資源を確保するとともに、端末と実行環境間のセキュリティを確保して実行することができる情報処理装置及びソフトウェア管理プログラムを提供することにある。
【課題を解決するための手段】
【０００５】
［１］情報資源を用いてソフトウェアを実行する複数の実行環境を有し、前記ソフトウェアに添付され暗号化された電子証明書を復号し、前記復号された電子証明書から前記ソフトウェアの実行に要求される情報資源の情報を読み出す読出手段と、前記複数の実行環境のうち、前記読み出された情報資源の情報を満たす実行環境を確保する確保手段と、前記ソフトウェアの処理要求を受信すると、前記確保された実行環境において前記ソフトウェアを実行して処理結果を出力する出力手段と、前記電子証明書を用いて署名した前記処理結果を前記処理要求の送信元に送付する送付手段とを有する情報処理装置。
【０００６】
［２］前記出力手段は前記ソフトウェアを実行する前記実行環境を他の実行環境に切り替えるとき、新たな電子証明書を生成して前記ソフトウェアに添付し、前記他の実行環境での実行を委託する委託手段をさらに有する前記［１］に記載の情報処理装置。
【０００７】
［３］前記委託手段は、前記出力手段が前記ソフトウェアを実行したときに必要とした情報資源の情報を前記新たな電子証明書に記載する前記［２］に記載の情報処理装置。
【０００８】
［４］情報資源を用いてソフトウェアを実行する複数の実行環境を有するコンピュータを、前記ソフトウェアに添付され暗号化された電子証明書を復号し、前記復号された電子証明書から前記ソフトウェアの実行に要求される情報資源の情報を読み出す読出機能と、前記複数の実行環境のうち、前記読み出された情報資源の情報を満たす実行環境を確保する確保機能と、前記ソフトウェアの処理要求を受信すると、前記確保された実行環境において前記ソフトウェアを実行して処理結果を出力し、前記電子証明書を用いて署名した前記処理結果を前記処理要求の送信元に送付する送付機能として動作させるソフトウェア管理プログラム。
【発明の効果】
【０００９】
請求項１又は４に係る発明によれば、情報処理装置の情報資源を用いた実行環境において外部の端末から処理要求を受け付けて動作するソフトウェアを、ソフトウェアに必要なサーバ上の情報資源を確保するとともに、端末と実行環境間のセキュリティを確保して実行することができる。
【００１０】
請求項２に係る発明によれば、実行環境が変化するときでも、セキュリティを確保することができる。
【００１１】
請求項３に係る発明によれば、実行環境が変化するとき、より正確に情報資源を確保することができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施の形態に係るソフトウェア管理システムの構成例を示す概略図である。
【図２】本発明の実施の形態に係る実行サーバ装置の構成例を示す概略図である。
【図３】（ａ）及び（ｂ）は、本発明の実施の形態に係るソフトウェアの構成例を示す概略図である。
【図４】（ａ）及び（ｂ）は、本発明の実施の形態に係る実行サーバ装置が記憶する情報の一例を示す概略図である。
【図５】（ａ）〜（ｄ）は、本発明の実施の形態に係る実行サーバ装置が処理する情報の一例を示す概略図である。
【図６】本発明の実施の形態に係るソフトウェア管理システムの動作例を示すフローチャートである。
【発明を実施するための形態】
【００１３】
（ソフトウェア管理システムの構成）
図１は、本発明の実施の形態に係るソフトウェア管理システムの構成例を示す概略図である。
【００１４】
ソフトウェア管理システム７は、後述するソフトウェア３０を動作させるための実行環境１Ａ〜１Ｅを提供する実行サーバ装置１及び２と、ソフトウェア３０を格納するファイルサーバ装置３と、利用者に操作されることでソフトウェア３０の実行を実行サーバ装置１又は２に要求する端末装置４と、ソフトウェア３０を安全に動作させるために電子証明書を発行する認証局５とを有し、それぞれインターネット６によって互いに通信可能に接続される。
【００１５】
実行サーバ装置１及び２は、分散実行環境１００として各サーバに仮想的に設置された複数の実行環境１Ａ〜１Ｅを動的に選択してソフトウェア３０に提供する。つまり、ソフトウェア３０には、実行環境の負荷又は実行環境の情報資源の有効利用等の理由に基づいて、実行される対象となる実行環境１Ａ〜１Ｅのいずれかが提供される。
【００１６】
ファイルサーバ装置３は、端末装置４の利用者によってアップロードされたソフトウェア３０を格納する。また、ソフトウェア４０は、後述するように認証局５によって発行された電子証明書が添付されている。
【００１７】
認証局５は、利用者を認証して利用者の作成したソフトウェアに対して電子証明書を発行するとともに、発行した電子証明書のうち効力を失効した電子証明書のリストであるＣＲＬ（Ｃｅｒｔｉｆｉｃａｔｅ  Ｒｅｖｏｃａｔｉｏｎ  Ｌｉｓｔ）５０を管理する。ＣＲＬ５０は、認証局５によって定期的に更新される。
【００１８】
図２は、本発明の実施の形態に係る実行サーバ装置の構成例を示す概略図である。なお、実行サーバ装置１及び２は同一の構成を有するため、実行サーバ装置１について説明する。
【００１９】
実行サーバ装置１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）等から構成され各部を制御するとともに各種のプログラムを実行する制御部１０と、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）やフラッシュメモリ等の記憶装置から構成され情報を記憶する記憶部１１と、情報を一時的に記憶して制御部１０の動作を補助するメモリ１２と、インターネット６を介して外部と通信する通信部１３とを有する。
【００２０】
制御部１０は、後述するサーバオペレーティングシステム（以下、ＯＳ）１１Ａのソフトウェア管理プログラム１１０Ａを実行することで、ソフトウェア取得手段１０Ａと、実行環境証明書処理手段１０Ｂと、実行環境確保手段１０Ｃと、ソフトウェア実行手段１０Ｄと、ソフトウェア実行委託手段１０Ｅとを動作させる。
【００２１】
ソフトウェア取得手段１０Ａは、端末装置４からソフトウェアの実行を要求されることで、ファイルサーバ装置３からソフトウェア３０を取得する。実行環境証明書処理手段１０Ｂは、ソフトウェア３０に添付される電子証明書に記載された後述する実行環境証明書を読み出す読出手段及び書き換える書換手段等として機能する。
【００２２】
実行環境確保手段１０Ｃは、ソフトウェア３０に添付される電子証明書の実行環境証明書に記載された内容に応じて実行環境１Ａ〜１Ｅのうち情報資源が適したものを確保する。ここで、情報資源とは、コンピュータ等におけるメモリ容量、ハードディスク容量、ＣＰＵ処理能力、ネットワーク速度等のリソースである。
【００２３】
ソフトウェア実行手段１０Ｄは、実行環境確保手段１０Ｃが確保した実行環境でソフトウェア３０を実行する。また、ソフトウェア実行手段１０Ｄは、ソフトウェア３０を実行した結果として出力される処理結果を出力する出力手段及び電子証明書を用いて署名した処理結果を処理要求の送信元である端末装置４に送付する送付手段として機能する。ソフトウェア実行委託手段１０Ｅは、ソフトウェア３０を実行中の実行環境において情報資源が不足したとき、他の実行環境でソフトウェア３０を実行するように委託する。
【００２４】
記憶部１１は、制御部１０を上述した各手段として動作させるサーバＯＳ１１Ａと、実行環境１Ａ、１Ｃ及び１Ｄに割り当てられた情報資源を示す実行環境情報資源証明書１１Ｂと、実行環境に記憶領域として使用される情報資源としての実行環境使用領域１１Ｃとを記憶する。
【００２５】
サーバＯＳ１１Ａは、さらに端末装置４に対するユーザーインターフェースの生成及び送信、端末装置４からの操作信号の受信、実行環境の負荷又は情報資源の有効利用のためのソフトウェア３０を実行する実行環境の変更及び選択等の機能を有する。
【００２６】
メモリ１２は、実行環境にメモリとして使用される情報資源としての実行環境使用領域１２Ａを有する。
【００２７】
図３（ａ）及び（ｂ）は、本発明の実施の形態に係るソフトウェアの構成例を示す概略図である。
【００２８】
ソフトウェア３０は、図３（ａ）に示すように、サーバＯＳ１１Ａ上で動作するソフトウェア本体３０Ａと、認証局５によって発行されソフトウェア本体３０Ａの作成者及び実行環境の条件を示す要求実行環境情報等を記載したソフトウェア実行環境証明書３０Ｂと、ソフトウェア実行環境証明書３０Ｂを復号するプライベート鍵３０Ｃとを有する。なお、プライベート鍵３０Ｃは、ソフトウェア３０が実行される実行環境が決定すると、後述する実行環境ごとに用意された公開鍵で暗号化される。
【００２９】
要求実行環境情報３０１は、図３（ｂ）に示すように、ソフトウェア本体３０Ａを実行するときに最低限必要な情報資源を示すメモリと、ハードディスクと、ネットワークと、ＣＰＵとを有する。なお、要求実行環境情報３０１は、ソフトウェア３０の作成者が予め定めるものとする。
【００３０】
図４（ａ）及び（ｂ）は、本発明の実施の形態に係る実行サーバ装置が記憶する情報の一例を示す概略図である。
【００３１】
実行環境情報資源証明書１１Ｂは、図４（ａ）に示すように、実行環境１Ａ〜１Ｅごとに認証局５から発行される証明書本体１１０と、実行環境の情報資源を示す実行環境情報資源１１１と、実行環境１Ａ〜１Ｅごとに用意された公開鍵１１２とを有する。
【００３２】
実行環境情報資源１１１は、図４（ｂ）に示すように、例えば、実行環境１Ａの情報資源を示すメモリと、ハードディスクと、ネットワークと、ＣＰＵとを有する。
【００３３】
図５（ａ）〜（ｄ）は、本発明の実施の形態に係る実行サーバ装置が処理する情報の一例を示す概略図である。
【００３４】
ソフトウェア３１は、図５（ａ）に示すように、ソフトウェア３０を図５（ｂ）に示す要求実行環境情報３０１に基づいて、例えば、実行環境１Ａで実行した後のものである。ソフトウェア本体３０Ａは、ソフトウェア３０のソフトウェア本体３０Ａと同一であるが、ソフトウェア実行環境証明書３０Ｂは、証明書本体３００に実行環境１Ａによって電子署名３００ａがなされている点でソフトウェア３０と異なり、また、プライベート鍵３０Ｃは、実行環境１Ａの公開鍵によって暗号化されている点でソフトウェア３０と異なる。ソフトウェア実行環境証明書３０Ｂ及びプライベート鍵３０Ｃは、実行環境１Ａにおける処理結果として端末装置４に送信される。
【００３５】
ソフトウェア３２は、図５（ｃ）に示すように、実行環境の負荷の増加又は実行環境の情報資源の有効活用等の理由に基づいて、ソフトウェア３１の実行が実行環境１Ａから実行環境１Ｂに委託されて生成されたものであり、ソフトウェア３１の内容に加えて、プライベート鍵３０Ｃによって暗号化されたソフトウェア実行環境証明書４０Ｂと、実行環境１Ｂの公開鍵で暗号化されたプライベート鍵４０Ｃとを有する。電子署名４００ａは、実行環境１Ａによってなされたものである。
【００３６】
要求実行環境情報４０１は、実行環境１Ａがソフトウェア３０を実行したときに実際に必要とした情報資源で、要求実行環境情報３０１から更新された内容になっており、実行環境１Ｂに参照される。
【００３７】
（動作）
以下に、本発明の一実施の形態における認証システムの動作を各図を参照しつつ説明する。
【００３８】
まず、利用者は、ソフトウェア３０を端末装置４において作成し、インターネット６を介してファイルサーバ装置３にアップロードする。そのとき、利用者は、認証局５に利用者認証されることでソフトウェア３０に電子証明書の証明書本体３００を発行してもらうとともに、ソフトウェア３０の実行に必要な情報資源を入力して要求実行環境情報３０１を作成し、証明書本体３００と要求実行環境情報３０１とをソフトウェア実行環境証明書３０Ｂとしてソフトウェア３０に添付する。次に、ソフトウェア実行環境証明書３０Ｂをプライベート鍵３０Ｃによって暗号化してファイルサーバ装置３に格納する。
【００３９】
次に、利用者は、実行サーバ装置１又は２においてソフトウェア３０を起動及び実行させるため、端末装置４を操作する。ソフトウェア３０は、実行環境１Ａ〜１Ｅのいずれかで実行され、実行結果が端末装置４に送信される。
【００４０】
以下において、実行環境１Ａ〜１Ｅのいずれかがソフトウェア３０を実行する動作を説明する。
【００４１】
図６は、本発明の実施の形態に係るソフトウェア管理システムの動作例を示すフローチャートである。
【００４２】
まず、端末装置４は、利用者からソフトウェア３０の起動要求を受け付けると（Ｓ１０）、実行サーバ装置１又は２のサーバＯＳ１１Ａに対してソフトウェア処理依頼を送信する（Ｓ１１）。
【００４３】
次に、例えば、実行サーバ装置１が、ソフトウェア処理依頼を受け付けると（Ｓ３０）、ソフトウェア取得手段１０Ａは、ファイルサーバ装置３からソフトウェア３０を取得する（Ｓ３１）。このとき、認証局５は、ソフトウェア３０のプライベート鍵３０Ｃを実行環境の公開鍵１１２で暗号化する。
【００４４】
次に、実行環境証明書処理手段１０Ｂは、取得したソフトウェア３０のプライベート鍵３０Ｃを公開鍵１１２で復号するとともに、プライベート鍵３０Ｃでソフトウェア実行環境証明書３０Ｂを復号することで要求実行環境情報３０１を参照する。そして、実行環境確保手段１０Ｃは、要求実行環境情報３０１に基づいて、実行環境１Ａの実行環境情報資源１１１が条件を満たすか否かを確認する。（Ｓ３２）複数の実行環境のうち、実行環境１Ａの実行環境情報資源１１１が条件を満たす場合は、実行環境１Ａを確保する（Ｓ３３）。
【００４５】
次に、ソフトウェア実行手段１０Ｄは、実行環境１Ａにおいてソフトウェア本体３０Ａを実行する（Ｓ３４）。そして、処理結果を図５（ａ）に示す電子署名されたソフトウェア実行環境証明書３０Ｂとともに端末装置４へ送信する（Ｓ３５）。なお、ソフトウェア実行環境証明書３０Ｂは、プライベート鍵３０Ｃで暗号化され、プライベート鍵３０Ｃは、実行環境１Ａの公開鍵で暗号化されている。
【００４６】
次に、端末装置４は、処理結果を受信する（Ｓ１２）。このとき、ソフトウェア実行環境証明書３０Ｂを実行環境１Ａの公開鍵及びプライベート鍵３０Ｃによって復号し、電子署名３００ａを確認することで安全性を確保する。
【００４７】
次に、実行環境１Ａが、例えば、上記ステップＳ３４におけるソフトウェア実行の際に、実行環境の負荷の増加又は実行環境の情報資源の有効活用等の理由に基づいて、他の実行環境、例えば、実行環境１Ｂに処理を移行する状況を記載する。この場合、上記のＳ３５とＳ１２は実行されず、以下に記述するステップＳ３６以降の処理が行われる。
【００４８】
実行環境証明書処理手段１０Ｂは、図５（ｃ）に示すように、新たなソフトウェア実行環境証明書４０Ｂを作成し、ソフトウェア３０のプライベート鍵３０Ｃで暗号化する（Ｓ３６）。次に、ソフトウェア実行委託手段１０Ｅは、実行環境１Ｂに対してソフトウェア３２の処理依頼を送信する（Ｓ３７）。
【００４９】
次に、実行環境１ＢにおいてステップＳ３０〜Ｓ３５と同様の動作を実行し（Ｓ５０〜Ｓ５５）、端末装置４は、処理結果を受信する（Ｓ１３）。
【００５０】
［他の実施の形態］
なお、本発明は、上記実施の形態に限定されず、本発明の趣旨を逸脱しない範囲で種々な変形が可能である。例えば、ソフトウェア３０は、端末装置４から実行サーバ装置１又は２に対して直接アップロードしてもよいし、実行サーバ装置１又は２に格納してもよい。
【００５１】
また、上記実施の形態で使用されるソフトウェア取得手段１０Ａと、実行環境証明書処理手段１０Ｂと、実行環境確保手段１０Ｃと、ソフトウェア実行手段１０Ｄと、ソフトウェア実行委託手段１０Ｅとは、ＣＤ−ＲＯＭ等の記憶媒体から装置内の記憶部に読み込んでも良く、インターネット等のネットワークに接続されているサーバ装置等から装置内の記憶部にダウンロードしてもよい。また、上記実施の形態で使用される手段の一部または全部をＡＳＩＣ等のハードウェアによって実現してもよい。
【符号の説明】
【００５２】
１、２…実行サーバ装置、１Ａ-１Ｅ…実行環境、３…ファイルサーバ装置、４…端末装置、５…認証局、６…インターネット、７…ソフトウェア管理システム、１０…制御部、１０Ａ…ソフトウェア取得手段、１０Ｂ…実行環境証明書処理手段、１０Ｃ…実行環境確保手段、１０Ｄ…ソフトウェア実行手段、１０Ｅ…ソフトウェア実行委託手段、１１…記憶部、１１Ａ…サーバＯＳ、１１Ｂ…実行環境情報資源証明書、１１Ｃ…実行環境使用領域、１２…メモリ、１２Ａ…実行環境使用領域、１３…通信部、３０…ソフトウェア、３０Ａ…ソフトウェア本体、３０Ｂ…ソフトウェア実行環境証明書、３０Ｃ…プライベート鍵、３１…ソフトウェア、３２…ソフトウェア、４０…ソフトウェア、４０Ｂ…ソフトウェア実行環境証明書、４０Ｃ…プライベート鍵、１００…分散実行環境、１１０…証明書本体、１１１…実行環境情報資源、１１２…公開鍵、３００…証明書本体、３００ａ…電子署名、３０１…要求実行環境情報、４００ａ…電子署名、４０１…要求実行環境情報
【図１】
2011034530.tif 000003
【図２】
2011034530.tif 000004
【図３】
2011034530.tif 000005
【図４】
2011034530.tif 000006
【図５】
2011034530.tif 000007
【図６】
2011034530.tif 000008