(57)【要約】【課題】アプリケーションの実行環境を確認でき、信頼性を向上させる。【解決手段】コンピュータ１０がアプリケーション２０の処理を開始する前に、アプリケーションの実行環境を確認するようにする。具体的には、アプリケーション２０のインストール時の実行環境を示す実行環境情報ｄが記憶された検証用ＤＢ２２を設け、実行環境収集ユーティリティ２１が、起動されると、実行環境から実行環境情報を収集し、得られた実行環境情報を検証用ＤＢ２２に基づいて検証し、検証の結果、実行環境が正当なとき、アプリケーションの処理の開始を許可する。【選択図】　図３
2004110232.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータがアプリケーションの処理を開始する前に、前記アプリケーションの実行環境を確認するための実行環境確認システムであって、
前記アプリケーションのインストール時の実行環境を示す実行環境情報が記憶された実行環境記憶手段と、
起動されると、前記実行環境から実行環境情報を収集し、得られた実行環境情報を前記実行環境記憶手段に基づいて検証する実行環境検証手段と、
前記実行環境検証手段による検証の結果、前記収集された実行環境が正当なとき、前記処理の開始を許可する処理開始許可手段と、
を備えたことを特徴とする実行環境確認システム。
【請求項２】
請求項１に記載の実行環境確認システムにおいて、
前記アプリケーションから処理の開始前に受けた起動信号、又は外部から受けた起動信号により、前記実行環境検証手段を起動する起動手段を備えたことを特徴とする実行環境確認システム。
【請求項３】
アプリケーションの実行環境を収集して検証するための実行環境検証手段を有するサーバ装置と、
処理を実行するためのアプリケーションを保持し、このアプリケーションの処理開始前に、前記実行環境検証手段のダウンロードを前記サーバ装置に要求し、得られた前記実行環境検証手段による検証結果が正当なとき、前記アプリケーションの処理を開始させるクライアント装置と、
を備えたことを特徴とする実行環境確認システム。
【請求項４】
処理を実行するためのアプリケーション及び前記アプリケーションの実行環境を収集して検証するための実行環境検証手段を有するサーバ装置と、
前記実行環境検証手段のダウンロードを前記サーバ装置に要求し、得られた前記実行環境検証手段による検証結果が正当なとき、前記アプリケーションのダウンロードを前記サーバ装置に要求するクライアント装置と、
を備えたことを特徴とする実行環境確認システム。
【請求項５】
コンピュータがアプリケーションの処理を開始する前に、前記アプリケーションの実行環境を確認するための実行環境確認プログラムであって、
前記コンピュータを、
前記アプリケーションのインストール時の実行環境を示す実行環境情報を設定する手段、
起動されると、前記実行環境から実行環境情報を収集し、得られた実行環境情報を前記設定に基づいて検証する手段、
前記検証の結果、前記収集された実行環境が正当なとき、前記処理の開始を許可する手段、
として機能させるための実行環境確認プログラム。
【請求項６】
請求項５に記載の実行環境確認プログラムにおいて、
前記コンピュータを、
前記アプリケーションから処理の開始前に受けた起動信号、又は外部から受けた起動信号により、前記実行環境検証手段を起動する手段、として機能させるための実行環境確認プログラム。
【請求項７】
請求項５又は請求項６に記載の実行環境確認プログラムを用いるサーバ装置のプログラムにおいて、
前記サーバ装置のコンピュータを、
前記実行環境確認プログラムのダウンロードを要求されたとき、このダウンロードの要求元に当該実行環境確認プログラムを送信する手段、
として機能させるためのプログラム。
【請求項８】
請求項７に記載のサーバ装置のプログラムにおいて、
前記サーバ装置のコンピュータを、
前記送信した実行環境確認プログラムにより前記処理の開始が許可されたとき、前記アプリケーションを前記ダウンロードの要求元に送信する手段、
として機能させるためのプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、アプリケーションの処理開始前にその実行環境を確認し、信頼性を向上し得る実行環境確認システム及びプログラムに関する。
【０００２】
【従来の技術】
一般に、ユーザがコンピュータ上でアプリケーションプログラム（以下、アプリケーションという）を実行させる際には、まず、ユーザのダブルクリック操作やコマンド操作などにより、実行対象のアプリケーションが指定される。
【０００３】
続いて、このアプリケーションは、予めインストール時に設定された実行環境に従い、コンピュータのＯＳ（Ｏｐｅｒａｔｉｎｇ　ｓｙｓｔｅｍ）により実行される。なお、この実行環境としては、既にコンピュータ上に存在しているライブラリ、ＯＳ、デバイスドライバ及び設定などがある。また、実行環境の管理に関しては、特許出願された技術がある（例えば、特許文献１参照）。
【０００４】
【特許文献１】
特願２００１−７５８９６号
【０００５】
【発明が解決しようとする課題】
しかしながら本発明者の考察によれば、前述したアプリケーションは、実行環境がインストール時と同一であることを前提として実行される。
一方、実行環境は、悪意の第三者による改ざんや、各ユーザによる故意・過失の操作などにより、インストール時とは異なっている可能性がある。
【０００６】
本発明は上記実情を考慮してなされたもので、アプリケーションの実行環境を確認でき、アプリケーション処理の信頼性を向上し得る実行環境確認システム及びプログラムを提供することを目的とする。
【０００７】
【課題を解決するための手段】
第１の発明は、コンピュータがアプリケーションの処理を開始する前に、前記アプリケーションの実行環境を確認するための実行環境確認システムであって、前記アプリケーションのインストール時の実行環境を示す実行環境情報が記憶された実行環境記憶手段と、起動されると、前記実行環境から実行環境情報を収集し、得られた実行環境情報を前記実行環境記憶手段に基づいて検証する実行環境検証手段と、前記実行環境検証手段による検証の結果、前記収集された実行環境が正当なとき、前記処理の開始を許可する処理開始許可手段と、を備えた実行環境確認システムである。
これにより、アプリケーションの処理開始前にその実行環境を確認でき、アプリケーション処理の信頼性を向上させることができる。
【０００８】
第２の発明は、アプリケーションの実行環境を収集して検証するための実行環境検証手段を有するサーバ装置と、処理を実行するためのアプリケーションを保持し、このアプリケーションの処理開始前に、前記実行環境検証手段のダウンロードを前記サーバ装置に要求し、得られた前記実行環境検証手段による検証結果が正当なとき、前記アプリケーションの処理を開始させるクライアント装置と、を備えた実行環境確認システムである。
これにより、第１の発明の作用と同様の作用をクライアント・サーバシステムによっても奏することができる。
【０００９】
第３の発明は、処理を実行するためのアプリケーション及び前記アプリケーションの実行環境を収集して検証するための実行環境検証手段を有するサーバ装置と、前記実行環境検証手段のダウンロードを前記サーバ装置に要求し、得られた前記実行環境検証手段による検証結果が正当なとき、前記アプリケーションのダウンロードを前記サーバ装置に要求するクライアント装置と、を備えた実行環境確認システムである。
これにより、第１の発明の作用と同様の作用をクライアント・サーバシステムによっても奏することができる。
【００１０】
なお、第１乃至第３の発明は、それぞれ「システム」として表現した場合を示すが、これに限らず、適宜、システム全体又は各装置毎に「装置」、「方法」、「記憶媒体」又は「プログラム」として表現しても良いことは言うまでもない。
【００１１】
【発明の実施の形態】
以下、本発明の各実施形態について図面を参照しながら説明する。
（第１の実施形態）
図１は本発明の第１の実施形態に係る実行環境確認システムが適用されたコンピュータのソフトウェア構成を示す模式図である。このコンピュータ１０は、ＯＳ１１、ライブラリ１２、デバイスドライバ１３及びレジストリ１４等の実行環境の他、予めインストールされたアプリケーション２０を実行可能に保持している。
【００１２】
ここで、アプリケーション２０は、自己のアプリケーション実行前に自コンピュータ１０の実行環境を収集して確認するための実行環境収集ユーティリティ（ライブラリ）２１を備えている。
【００１３】
実行環境収集ユーティリティ２１は、予めインストール時の実行環境が登録された検証用ＤＢ２２を備えており、起動時に自コンピュータ１０の実行環境情報を実行環境１１〜１４から収集する機能と、収集した実行環境情報を検証用ＤＢ２２に基づいて検証する機能と、検証結果が正当性を示すとき、自己のアプリケーション２０の処理を開始させる機能とをもっている。ここで、実行環境収集ユーティリティ２１の起動は、アプリケーション２０から処理開始前に受けた起動信号又は他のコンピュータ（図示せず）から受けた起動信号をトリガとして行なってもよい。
【００１４】
検証用ＤＢ２２は、インストール時に書込まれ、実行環境収集ユーティリティ２１から読出可能なものであり、具体的には、ファイルサイズ、変更日付、プロパティ情報、ファイル内容のハッシュ値などの実行環境情報が記憶されている。なお、ハッシュ値は、平文がハッシュされたハッシュ値に限らず、平文と鍵とがハッシュされた鍵付きハッシュ値でもよい。
【００１５】
次に、以上のように構成されたコンピュータによる実行環境の確認動作を図２のフローチャート及び図３の模式図を用いて説明する。
【００１６】
いま、コンピュータ１０では、ユーザの操作により、アプリケーション２０が指定されると共に起動されたとする（ＳＴ１０）。
アプリケーション２０は、起動されたとき、本来の処理を開始する前に、実行環境を確認するための実行環境収集ユーティリティ２１を起動する（ＳＴ２０）。
【００１７】
実行環境収集ユーティリティ２１は、コンピュータ１０内のアプリケーション実行に関する実行環境情報ｄを実行環境１１〜１４から収集する（ＳＴ３０）。続いて、実行環境収集ユーティリティ２１は、収集した実行環境情報ｄと、検証用ＤＢ２２の記憶内容とを比較することにより、実行環境１１〜１４が正当か否かを判定する（ＳＴ４０）。
【００１８】
ステップＳＴ４０の判定の結果、実行環境情報ｄが正当でないとき（＝改ざん・改変されたとき）には処理を終了するが、実行環境情報ｄが正当のとき、実行環境収集ユーティリティ２１は、アプリケーション２０に本来の処理を開始させる（ＳＴ５０）。
【００１９】
上述したように本実施形態によれば、アプリケーション２０を実行する際に、実行環境収集ユーティリティ２１が実行環境情報ｄを検証用ＤＢ２２の参照により確認するので、アプリケーション２０の本来予定されていた処理機能を忠実に実行することができる。
【００２０】
また、実行環境収集ユーティリティ２１を他のコンピュータ（図示せず）から起動可能とした場合、他のコンピュータからもアプリケーション２０の実行環境を確認することができる。
【００２１】
（第２の実施形態）
図４は本発明の第２の実施形態に係る実行環境確認システムが適用されたコンピュータのソフトウェア構成を示す模式図であり、図１乃至図３と同一又はほぼ同一部分には同一符号を付してその詳しい説明を省略し、ここでは異なる部分について主に述べる。なお、以下の各実施形態も同様にして重複した説明を省略する。
【００２２】
すなわち、本実施形態は、第１の実施形態の変形例であり、実行環境収集ユーティリティ２１をアプリケーションとは独立に設けたものである。
【００２３】
具体的には本実施形態は、図１及び図３に示したアプリケーション２０に代えて、実行環境収集ユーティリティ２１を含まないアプリケーション２０ａを有し、且つＣＤ−Ｒ等のライトワンスな記憶媒体により配布される実行環境収集ユーティリティ２１をコンピュータ１０にインストールした構成となっている。
【００２４】
以上のような構成としても、図５及び図６に示すように、第１の実施形態と同様の作用効果を得ることができる。
また、実行環境収集ユーティリティ２１をアプリケーション２０ａとは独立に設けるので、アプリケーション２０ａを作成する際の手間を低減できると共に、アプリケーション２０ａをサイズの縮小化を実現することができる。
【００２５】
また、複数のアプリケーションがある場合でも、実行環境収集ユーティリティ２１を共通に使用できるので、各アプリケーション毎に、作成の手間の低減とサイズの縮小化とを実現することができる。
【００２６】
さらに、実行環境収集ユーティリティ２１をアプリケーション２０ａとは独立に設けるので、図６に示したアプリケーション２０ａからの調査要求・結果返信という方式に代えて、ＯＳ１１からの調査要求・結果返信という方式に変形して実施することができる。具体的には、例えばユーザがアプリケーション２０ａの起動をＯＳ１１に要求し（ＳＴ１０’）、ＯＳ１１が実行環境収集ユーティリティ２１を起動して実行環境が正当か否かを判定させ（ＳＴ２０’〜ＳＴ４０’）、この判定結果が正当であればＯＳ１１が（直接に又は実行環境収集ユーティリティ２１を介して）アプリケーション２０ａの処理を開始させるといった手順で実施すればよい。
【００２７】
（第３の実施形態）
図７は本発明の第３の実施形態に係る実行環境確認システムが適用されたクライアント・サーバシステムのソフトウェア構成を示す模式図である。
本実施形態は、第２の実施形態の変形例であり、実行環境収集ユーティリティ２１をサーバ装置３０からダウンロードする構成となっている。また、これに伴い、前述したコンピュータ１０をクライアント装置１０ｂと呼ぶ。
【００２８】
ここで、ダウンロードされる実行環境収集ユーティリティ２１’は、前述した機能のうち、収集機能を有するものであり、前述した検証機能及び処理開始機能をサーバ装置３０側で実行させるために、収集結果をサーバ装置３０に送信する機能をもっている。
【００２９】
なお、サーバ装置３０側の実行環境収集ユーティリティ２１は、クライアント装置１０ｂから送信された実行環境情報ｄの検証機能及びアプリケーション２０ａの処理開始機能とをもっている。
【００３０】
また、サーバ装置３０は、クライアント装置１０ｂと通信可能な管理部３１を備えている。
管理部３１は、クライアント装置１０ｂから受けたダウンロード要求に応じて実行環境収集ユーティリティ２１’をクライアント装置１０ｂに送信する機能と、クライアント装置１０ｂから受けた実行環境情報ｄを実行環境収集ユーティリティ２１に渡す機能と、この実行環境収集ユーティリティ２１によるアプリケーション２０ａの処理開始の許可をクライアント装置１０ｂに送信する機能とをもっている。
【００３１】
次に、以上のように構成されたコンピュータによる実行環境の確認動作を図８のフローチャート及び図９の模式図を用いて説明する。
【００３２】
いま、クライアント装置１０ｂでは、前述同様に、アプリケーション２０ａが起動されたとする（ＳＴ１０）。
アプリケーション２０は、起動されたとき、本来の処理を開始する前に、実行環境収集ユーティリティ２１’のダウンロード要求をサーバ装置３０に送信する（ＳＴ１１）。
【００３３】
サーバ装置３０は、管理部３１がこのダウンロード要求に従い、実行環境収集ユーティリティ２１’をクライアント装置１０ｂに送信する（ＳＴ１２）。
【００３４】
クライアント装置１０ｂは、ダウンロードした実行環境収集ユーティリティ２１’を起動し（ＳＴ２０）、実行環境収集ユーティリティ２１’は、前述同様に、アプリケーションの実行環境情報ｄを実行環境１１〜１４から収集するが（ＳＴ３０）、前述とは異なり、これら実行環境情報ｄをサーバ装置３０に送信する（ＳＴ３１）。
【００３５】
サーバ装置３０は、受信した実行環境情報ｄを実行環境収集ユーティリティ２１により、前述同様に正当か否かを判定する（ＳＴ４０）。
【００３６】
ここで、実行環境情報ｄが正当でないときには処理終了通知をクライアント装置１０ｂに送信するが、実行環境情報ｄが正当のときには、サーバ装置３０は、処理開始通知をクライアント装置１０ｂに送信し、アプリケーション２０ａに本来の処理を開始させる（ＳＴ５０）。
【００３７】
上述したように本実施形態によれば、実行環境収集ユーティリティ２１をサーバ装置３０からダウンロードする構成としても、第２の実施形態と同様の効果を得ることができる。
【００３８】
なお、本実施形態は、例えば図１０及び図１１に示すように、検証機能を備えた実行環境収集ユーティリティ２１がクライアント装置１０ｂにダウンロードされ、クライアント装置１０ｂ内で実行環境情報ｄの検証処理と処理開始の許可とを行なうように変形してもよい。
【００３９】
また、図９及び図１０に示したように、実行環境収集ユーティリティ２１をアプリケーション２０ａとは独立に設けた場合、図６の変形例と同様に、アプリケーション２０ａからのＤＬ要求・結果返信という方式に代えて、ＯＳ１１からのＤＬ要求・結果返信という方式に変形して実施することができる。
【００４０】
また、本実施形態は、例えば図１２及び図１３に示すように、サーバ装置３０を、クライアント装置１０ｂからの１回目のダウンロード要求に応じて実行環境収集ユーティリティ２１を送信すると共に、この実行環境収集ユーティリティ２１による検証結果が正当なときの２回目のダウンロード要求に応じてアプリケーション２０ａをクライアント装置に送信する構成に、変形してもよい。この場合、クライアント装置１０ｂは、例えばダウンロード要求をインターネット経由で送信するためのＷｅｂブラウザ１５を備えてもよい。なお、本明細書中の「ダウンロード」は「配信」と読み替えてもよい。
【００４１】
（第４の実施形態）
図１４は本発明の第４の実施形態に係る実行環境確認システムに用いられる検証用ＤＢの構成を示す模式図である。
【００４２】
本実施形態は、前述した第１乃至第３の実施形態等の具体例であり、検証用ＤＢ２２がファイル検証用ＤＢ２３及び設定値検証用ＤＢ２４を備えた構成となっている。
【００４３】
ここで、ファイル検証用ＤＢ２３は、前述した実行環境１１〜１４のうち、ファイルに該当するライブラリ１２、ＯＳ（ファイル）１１及びデバイスドライバ１３がそれぞれハッシュ関数により処理され、ハッシュ値として記憶されるものである。
【００４４】
換言すると、ファイル検証用ＤＢ２３は、ライブラリ１２、ＯＳ（ファイル）１１及びデバイスドライバ１３の各ファイル名毎に、該当するファイルのサイズ・作成／更新日付・内容をハッシュしたハッシュ値が記憶されるものである。なお、記憶されるタイミングは、実行環境収集ユーティリティ２１のインストール時であり、ハッシュ処理を行なうのは実行環境収集ユーティリティ２１である。
【００４５】
同様に、設定値検証用ＤＢ２４は、前述した実行環境１１〜１４のうち、設定値に該当するＯＳ（設定）１１及びレジストリ１４がそれぞれハッシュ関数により処理され、ハッシュ値として記憶されるものである。
【００４６】
換言すると、設定値検証用ＤＢ２４は、ＯＳ（設定）１１及びレジストリ１４の各設定項目毎に、該当する設定値をハッシュしたハッシュ値が記憶されるものである。なお、記憶されるタイミングは、実行環境収集ユーティリティ２１のインストール時であり、ハッシュ処理を行なうのは実行環境収集ユーティリティ２１である。
以上のような構成としても、適用した第１乃至第３の実施形態等を同様に実施して同様の効果を得ることができる。
【００４７】
なお、上記各実施形態に記載した手法は、コンピュータに実行させることのできるプログラムとして、磁気ディスク（フロッピー（登録商標）ディスク、ハードディスクなど）、光ディスク（ＣＤ−ＲＯＭ、ＤＶＤなど）、光磁気ディスク（ＭＯ）、半導体メモリなどの記憶媒体に格納して頒布することもできる。
【００４８】
また、この記憶媒体としては、プログラムを記憶でき、かつコンピュータが読み取り可能な記憶媒体であれば、その記憶形式は何れの形態であっても良い。
【００４９】
また、記憶媒体からコンピュータにインストールされたプログラムの指示に基づきコンピュータ上で稼働しているＯＳ（オペレーティングシステム）や、データベース管理ソフト、ネットワークソフト等のＭＷ（ミドルウェア）等が本実施形態を実現するための各処理の一部を実行しても良い。
【００５０】
さらに、本発明における記憶媒体は、コンピュータと独立した媒体に限らず、ＬＡＮやインターネット等により伝送されたプログラムをダウンロードして記憶または一時記憶した記憶媒体も含まれる。
【００５１】
また、記憶媒体は１つに限らず、複数の媒体から本実施形態における処理が実行される場合も本発明における記憶媒体に含まれ、媒体構成は何れの構成であっても良い。
【００５２】
尚、本発明におけるコンピュータは、記憶媒体に記憶されたプログラムに基づき、本実施形態における各処理を実行するものであって、パソコン等の１つからなる装置、複数の装置がネットワーク接続されたシステム等の何れの構成であっても良い。
【００５３】
また、本発明におけるコンピュータとは、パソコンに限らず、情報処理機器に含まれる演算処理装置、マイコン等も含み、プログラムによって本発明の機能を実現することが可能な機器、装置を総称している。
【００５４】
なお、本願発明は、上記各実施形態に限定されるものでなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。また、各実施形態は可能な限り適宜組み合わせて実施してもよく、その場合、組み合わされた効果が得られる。さらに、上記各実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適宜な組み合わせにより種々の発明が抽出され得る。例えば実施形態に示される全構成要件から幾つかの構成要件が省略されることで発明が抽出された場合には、その抽出された発明を実施する場合には省略部分が周知慣用技術で適宜補われるものである。
【００５５】
その他、本発明はその要旨を逸脱しない範囲で種々変形して実施できる。
【００５６】
【発明の効果】
以上説明したように本発明によれば、アプリケーションの実行環境を確認でき、アプリケーション処理の信頼性を向上できる。
【図面の簡単な説明】
【図１】本発明の第１の実施形態に係る実行環境確認システムが適用されたコンピュータのソフトウェア構成を示す模式図
【図２】同実施形態における動作を説明するためのフローチャート
【図３】同実施形態における動作を説明するための模式図
【図４】本発明の第２の実施形態に係る実行環境確認システムが適用されたコンピュータのソフトウェア構成を示す模式図
【図５】同実施形態における動作を説明するためのフローチャート
【図６】
同実施形態における動作を説明するための模式図
【図７】本発明の第３の実施形態に係る実行環境確認システムが適用されたクライアント・サーバシステムのソフトウェア構成を示す模式図
【図８】同実施形態における動作を説明するためのフローチャート
【図９】同実施形態における動作を説明するための模式図
【図１０】同実施形態の変形形態における動作を説明するための模式図
【図１１】同変形形態における動作を説明するためのフローチャート
【図１２】同実施形態の他の変形形態における動作を説明するための模式図
【図１３】同変形形態における動作を説明するためのフローチャート
【図１４】本発明の第４の実施形態に係る実行環境確認システムに用いられる検証用ＤＢの構成を示す模式図
【符号の説明】
１０，１０ａ…コンピュータ
１０ｂ…クライアント装置
１１…ＯＳ
１２…ライブラリ
１３…デバイスドライバ
１４…レジストリ
１５…Ｗｅｂブラウザ
２０，２０ａ…アプリケーション
２１，２１’…実行環境収集ユーティリティ
２２…検証用ＤＢ
２３…ファイル検証用ＤＢ
２４…設定値検証用ＤＢ
３０…サーバ装置
３１…管理部
ｄ…実行環境情報
【図１】
2004110232.tif 000003
【図２】
2004110232.tif 000004
【図３】
2004110232.tif 000005
【図４】
2004110232.tif 000006
【図５】
2004110232.tif 000007
【図６】
2004110232.tif 000008
【図７】
2004110232.tif 000009
【図８】
2004110232.tif 000010
【図９】
2004110232.tif 000011
【図１０】
2004110232.tif 000012
【図１１】
2004110232.tif 000013
【図１２】
2004110232.tif 000014
【図１３】
2004110232.tif 000015
【図１４】
2004110232.tif 000016