(57)【要約】  利用者端末装置（１０）にインストールされた個々のアプリケーションの検証と各アプリケーション間の依存関係の情報収集とを含むクライアント側処理を当該利用者端末装置（１０）が実行し、クライアント側処理の結果に係る情報を受信して各アプリケーション間の依存関係の検証を認証局サーバ装置（２０）が実行し、アプリケーションの検証の結果および各アプリケーション間の依存関係の検証の結果に基づいて利用者端末装置（１０）が正常であるか否かを認証局サーバ装置（２０）が判定する。
2008026287.tif 000002
【特許請求の範囲】
【請求項１】
クライアント装置に導入されたコンピュータ資源の検証をおこなうコンピュータ資源検証方法であって、
前記クライアント装置に導入された個々のコンピュータ資源の検証と各コンピュータ資源間の依存関係の情報収集とを含むクライアント側処理を当該クライアント装置が実行するクライアント側処理実行工程と、
前記クライアント側処理実行工程によりなされたクライアント側処理の結果に係る情報を受信して各コンピュータ資源間の依存関係の検証をサーバ装置が実行するサーバ側処理実行工程と、
前記コンピュータ資源の検証の結果および各コンピュータ資源間の依存関係の検証の結果に基づいて前記クライアント装置が正常であるか否かを前記サーバ装置が判定する判定工程と、
を含んだことを特徴とするコンピュータ資源検証方法。
【請求項２】
前記クライアント装置に導入されたコンピュータ資源の検証をおこなうコンピュータ資源の検証を前記サーバ装置が実行する検証工程をさらに含み、前記クライアント側処理実行工程は、前記検証工程による検証の結果、異常が検出されなかった場合に前記クライアント側処理を実行することを特徴とする請求項１に記載のコンピュータ資源検証方法。
【請求項３】
前記クライアント装置に導入されたコンピュータ資源の検証をおこなうコンピュータ資源に係るハッシュ値を前記クライアント装置がハードウェア処理により生成するハッシュ値生成工程をさらに含み、前記検証工程は、前記ハッシュ値生成工程により生成されたハッシュ値の情報に基づいて当該コンピュータ資源の検証をおこなうことを特徴とする請求項２に記載のコンピュータ資源検証方法。
【請求項４】
前記クライアント側処理実行工程は、前記サーバ装置から特定のコンピュータ資源の検証要求を受け付けた場合に、当該特定のコンピュータ資源との間で依存関係を有するコンピュータ資源の情報を収集し、情報が収集されたコンピュータ資源の検証をおこなうことを特徴とする請求項１、２または３に記載のコンピュータ資源検証方法。
【請求項５】
前記クライアント側処理実行工程は、依存関係の情報収集をおこなうコンピュータ資源の数の指定を前記サーバ装置から受け付けて前記サーバ装置により指定された数のコンピュータ資源に係るハッシュ値を連結し、連結したハッシュ値に係るハッシュ値を生成して生成したハッシュ値の情報を前記サーバ装置に送信し、前記サーバ側処理実行工程は、送信されたハッシュ値の情報に基づいて各コンピュータ資源間の依存関係の検証を実行することを特徴とする請求項１、２または３に記載のコンピュータ資源検証方法。
【請求項６】
前記判定工程は、前記クライアント装置を正常でないと判定した場合に、異常が検出されたコンピュータ資源の情報を前記クライアント装置に送信することを特徴とする請求項１、２または３に記載のコンピュータ資源検証方法。
【請求項７】
前記判定工程により送信されたコンピュータ資源の情報を受信した場合に前記クライアント装置が当該コンピュータ資源を取得して、取得したコンピュータ資源のインストールを実行するインストール実行工程をさらに含んだことを特徴とする請求項６に記載のコンピュータ資源検証方法。
【請求項８】
クライアント装置に導入されたコンピュータ資源の検証をおこなうコンピュータ資源検証方法であって、
前記クライアント装置に導入された個々のコンピュータ資源の検証と各コンピュータ資源間の依存関係の情報収集とを含むクライアント側処理を当該クライアント装置が実行するクライアント側処理実行工程と、
前記クライアント側処理実行工程によりなされたクライアント側処理の結果に係る情報を、各コンピュータ資源間の依存関係の検証をおこない、かつ、前記コンピュータ資源の検証の結果および各コンピュータ資源間の依存関係の検証の結果に基づいて前記クライアント装置が正常であるか否かを判定するサーバ装置に前記クライアント装置が送信する情報送信工程と、
を含んだことを特徴とするコンピュータ資源検証方法。
【請求項９】
クライアント装置に導入されたコンピュータ資源の検証をおこなうコンピュータ資源検証方法であって、
前記クライアント装置に導入された個々のコンピュータ資源の検証と各コンピュータ資源間の依存関係の情報収集とを含むクライアント側処理を当該クライアント装置が実行した実行結果の情報を当該クライアント装置から受信する情報受信工程と、
前記情報受信工程により受信された情報に基づいて各コンピュータ資源間の依存関係の検証をサーバ装置が実行するサーバ側処理実行工程と、
前記コンピュータ資源の検証の結果および各コンピュータ資源間の依存関係の検証の結果に基づいて前記クライアント装置が正常であるか否かを前記サーバ装置が判定する判定工程と、
を含んだことを特徴とするコンピュータ資源検証方法。
【請求項１０】
クライアント装置に導入されたコンピュータ資源の検証をおこなうコンピュータ資源検証プログラムであって、
前記クライアント装置に導入された個々のコンピュータ資源の検証と各コンピュータ資源間の依存関係の情報収集とを含むクライアント側処理を当該クライアント装置が実行するクライアント側処理実行手順と、
前記クライアント側処理実行手順によりなされたクライアント側処理の結果に係る情報を受信して各コンピュータ資源間の依存関係の検証をサーバ装置が実行するサーバ側処理実行手順と、
前記コンピュータ資源の検証の結果および各コンピュータ資源間の依存関係の検証の結果に基づいて前記クライアント装置が正常であるか否かを前記サーバ装置が判定する判定手順と、
をコンピュータに実行させることを特徴とするコンピュータ資源検証プログラム。
【請求項１１】
クライアント装置に導入されたコンピュータ資源の検証をおこなうコンピュータ資源検証プログラムであって、
前記クライアント装置に導入された個々のコンピュータ資源の検証と各コンピュータ資源間の依存関係の情報収集とを含むクライアント側処理を当該クライアント装置が実行するクライアント側処理実行手順と、
前記クライアント側処理実行手順によりなされたクライアント側処理の結果に係る情報を、各コンピュータ資源間の依存関係の検証をおこない、かつ、前記コンピュータ資源の検証の結果および各コンピュータ資源間の依存関係の検証の結果に基づいて前記クライアント装置が正常であるか否かを判定するサーバ装置に前記クライアント装置が送信する情報送信手順と、
をコンピュータに実行させることを特徴とするコンピュータ資源検証プログラム。
【請求項１２】
クライアント装置に導入されたコンピュータ資源の検証をおこなうコンピュータ資源検証プログラムであって、
前記クライアント装置に導入された個々のコンピュータ資源の検証と各コンピュータ資源間の依存関係の情報収集とを含むクライアント側処理を当該クライアント装置が実行した実行結果の情報を当該クライアント装置から受信する情報受信手順と、
前記情報受信手順により受信された情報に基づいて各コンピュータ資源間の依存関係の検証をサーバ装置が実行するサーバ側処理実行手順と、
前記コンピュータ資源の検証の結果および各コンピュータ資源間の依存関係の検証の結果に基づいて前記クライアント装置が正常であるか否かを前記サーバ装置が判定する判定手順と、
をコンピュータに実行させることを特徴とするコンピュータ資源検証プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、クライアント装置に導入されたコンピュータ資源の検証をおこなうコンピュータ資源検証方法およびコンピュータ資源検証プログラムに関し、特に、サービス利用者の数が増加した場合でも、クライアント装置の安全性を検証するサーバ装置の負荷を軽減させることができるコンピュータ資源検証方法およびコンピュータ資源検証プログラムに関する。
【背景技術】
【０００２】
従来、サービス提供者のサービス提供装置から利用者端末装置にネットワークを介してサービスを提供する場合に、サービスの安全性を確保すべく、利用者端末装置に係るハードウェアやソフトウェアなどの環境を検証した上でサービスを提供する技術が提案されている。【０００３】
たとえば、サービス提供装置において、利用者端末装置に係る環境情報（利用者端末装置に組み込まれているソフトウェア（ＯＳ、ＢＩＯＳ、ブラウザ、プラグインソフトウェア等）やハードウェア（ＣＰＵ、メモリ、ＰＣＩボード等）、利用者端末装置に接続されているハードウェアなどの情報）を利用者端末装置から取得した上で、利用者端末装置に安全性を損なうソフトウェア（たとえば、セキュリティホールがケアされていないもの）やハードウェアが組み込まれていないか、利用者端末装置に安全性を損なうハードウェアが接続されていないか等を確認し、不正コピーのおそれなどから安全性を確保できない利用者端末装置に対してはサービスの提供を拒否する技術が開示されている（特許文献１を参照）。【０００４】
【特許文献１】特開２００４−１５７７９０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述した従来技術では、サービスの利用者が増加し、環境を検証する対象となる利用者端末装置の数が多くなった場合には、サービス提供装置に多大な負荷が発生してしまうという問題があった。【０００６】
すなわち、サービス提供者にとっては、サービスの利用者が増えることは望ましいことであるが、利用者が増えるとそれだけ安全性を確認する利用者端末装置の数も増加し、それに対応するためには安全性を確認するサービス提供装置を増強する必要があるので高いコストが発生してしまう。そのため、サービスの利用者数が増加した場合でも、利用者端末装置の安全性を検証する装置の負荷をいかにして軽減させることができるかが重要な課題となってきている。【０００７】
本発明は、上記に鑑みてなされたものであって、サービスの利用者数が増加した場合でも、利用者端末装置の安全性を検証する装置の負荷を軽減させることができるコンピュータ資源検証方法およびコンピュータ資源検証プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上述した課題を解決し、目的を達成するために、本発明は、クライアント装置に導入されたコンピュータ資源の検証をおこなうコンピュータ資源検証方法であって、前記クライアント装置に導入された個々のコンピュータ資源の検証と各コンピュータ資源間の依存関係の情報収集とを含むクライアント側処理を当該クライアント装置が実行するクライアント側処理実行工程と、前記クライアント側処理実行工程によりなされたクライアント側処理の結果に係る情報を受信して各コンピュータ資源間の依存関係の検証をサーバ装置が実行するサーバ側処理実行工程と、前記コンピュータ資源の検証の結果および各コンピュータ資源間の依存関係の検証の結果に基づいて前記クライアント装置が正常であるか否かを前記サーバ装置が判定する判定工程と、を含んだことを特徴とする。【０００９】
また、本発明は、上記発明において、前記クライアント装置に導入されたコンピュータ資源の検証をおこなうコンピュータ資源の検証を前記サーバ装置が実行する検証工程をさらに含み、前記クライアント側処理実行工程は、前記検証工程による検証の結果、異常が検出されなかった場合に前記クライアント側処理を実行することを特徴とする。【００１０】
また、本発明は、上記発明において、前記クライアント装置に導入されたコンピュータ資源の検証をおこなうコンピュータ資源に係るハッシュ値を前記クライアント装置がハードウェア処理により生成するハッシュ値生成工程をさらに含み、前記検証工程は、前記ハッシュ値生成工程により生成されたハッシュ値の情報に基づいて当該コンピュータ資源の検証をおこなうことを特徴とする。【００１１】
また、本発明は、上記発明において、前記クライアント側処理実行工程は、前記サーバ装置から特定のコンピュータ資源の検証要求を受け付けた場合に、当該特定のコンピュータ資源との間で依存関係を有するコンピュータ資源の情報を収集し、情報が収集されたコンピュータ資源の検証をおこなうことを特徴とする。【００１２】
また、本発明は、上記発明において、前記クライアント側処理実行工程は、依存関係の情報収集をおこなうコンピュータ資源の数の指定を前記サーバ装置から受け付けて前記サーバ装置により指定された数のコンピュータ資源に係るハッシュ値を連結し、連結したハッシュ値に係るハッシュ値を生成して生成したハッシュ値の情報を前記サーバ装置に送信し、前記サーバ側処理実行工程は、送信されたハッシュ値の情報に基づいて各コンピュータ資源間の依存関係の検証を実行することを特徴とする。【００１３】
また、本発明は、上記発明において、前記判定工程は、前記クライアント装置を正常でないと判定した場合に、異常が検出されたコンピュータ資源の情報を前記クライアント装置に送信することを特徴とする。【００１４】
また、本発明は、上記発明において、前記判定工程により送信されたコンピュータ資源の情報を受信した場合に前記クライアント装置が当該コンピュータ資源を取得して、取得したコンピュータ資源のインストールを実行するインストール実行工程をさらに含んだことを特徴とする。【００１５】
また、本発明は、クライアント装置に導入されたコンピュータ資源の検証をおこなうコンピュータ資源検証方法であって、前記クライアント装置に導入された個々のコンピュータ資源の検証と各コンピュータ資源間の依存関係の情報収集とを含むクライアント側処理を当該クライアント装置が実行するクライアント側処理実行工程と、前記クライアント側処理実行工程によりなされたクライアント側処理の結果に係る情報を、各コンピュータ資源間の依存関係の検証をおこない、かつ、前記コンピュータ資源の検証の結果および各コンピュータ資源間の依存関係の検証の結果に基づいて前記クライアント装置が正常であるか否かを判定するサーバ装置に前記クライアント装置が送信する情報送信工程と、を含んだことを特徴とする。【００１６】
また、本発明は、クライアント装置に導入されたコンピュータ資源の検証をおこなうコンピュータ資源検証方法であって、前記クライアント装置に導入された個々のコンピュータ資源の検証と各コンピュータ資源間の依存関係の情報収集とを含むクライアント側処理を当該クライアント装置が実行した実行結果の情報を当該クライアント装置から受信する情報受信工程と、前記情報受信工程により受信された情報に基づいて各コンピュータ資源間の依存関係の検証をサーバ装置が実行するサーバ側処理実行工程と、前記コンピュータ資源の検証の結果および各コンピュータ資源間の依存関係の検証の結果に基づいて前記クライアント装置が正常であるか否かを前記サーバ装置が判定する判定工程と、を含んだことを特徴とする。【００１７】
また、本発明は、クライアント装置に導入されたコンピュータ資源の検証をおこなうコンピュータ資源検証プログラムであって、前記クライアント装置に導入された個々のコンピュータ資源の検証と各コンピュータ資源間の依存関係の情報収集とを含むクライアント側処理を当該クライアント装置が実行するクライアント側処理実行手順と、前記クライアント側処理実行手順によりなされたクライアント側処理の結果に係る情報を受信して各コンピュータ資源間の依存関係の検証をサーバ装置が実行するサーバ側処理実行手順と、前記コンピュータ資源の検証の結果および各コンピュータ資源間の依存関係の検証の結果に基づいて前記クライアント装置が正常であるか否かを前記サーバ装置が判定する判定手順と、をコンピュータに実行させることを特徴とする。【００１８】
また、本発明は、クライアント装置に導入されたコンピュータ資源の検証をおこなうコンピュータ資源検証プログラムであって、前記クライアント装置に導入された個々のコンピュータ資源の検証と各コンピュータ資源間の依存関係の情報収集とを含むクライアント側処理を当該クライアント装置が実行するクライアント側処理実行手順と、前記クライアント側処理実行手順によりなされたクライアント側処理の結果に係る情報を、各コンピュータ資源間の依存関係の検証をおこない、かつ、前記コンピュータ資源の検証の結果および各コンピュータ資源間の依存関係の検証の結果に基づいて前記クライアント装置が正常であるか否かを判定するサーバ装置に前記クライアント装置が送信する情報送信手順と、をコンピュータに実行させることを特徴とする。【００１９】
また、本発明は、クライアント装置に導入されたコンピュータ資源の検証をおこなうコンピュータ資源検証プログラムであって、前記クライアント装置に導入された個々のコンピュータ資源の検証と各コンピュータ資源間の依存関係の情報収集とを含むクライアント側処理を当該クライアント装置が実行した実行結果の情報を当該クライアント装置から受信する情報受信手順と、前記情報受信手順により受信された情報に基づいて各コンピュータ資源間の依存関係の検証をサーバ装置が実行するサーバ側処理実行手順と、前記コンピュータ資源の検証の結果および各コンピュータ資源間の依存関係の検証の結果に基づいて前記クライアント装置が正常であるか否かを前記サーバ装置が判定する判定手順と、をコンピュータに実行させることを特徴とする。
【発明の効果】
【００２０】
本発明によれば、クライアント装置に導入された個々のコンピュータ資源の検証と各コンピュータ資源間の依存関係の情報収集とを含むクライアント側処理を当該クライアント装置が実行し、クライアント側処理の結果に係る情報を受信して各コンピュータ資源間の依存関係の検証をサーバ装置が実行し、コンピュータ資源の検証の結果および各コンピュータ資源間の依存関係の検証の結果に基づいてクライアント装置が正常であるか否かをサーバ装置が判定することとしたので、コンピュータ資源の検証をクライアント装置とサーバ装置とで分担しておこなうことにより、サービス利用者の数が増加した場合でも、クライアント装置の安全性を検証するサーバ装置の負荷を軽減させることができるという効果を奏する。【００２１】
また、本発明によれば、クライアント装置に導入されたコンピュータ資源の検証をおこなうコンピュータ資源の検証をサーバ装置が実行し、検証の結果、異常が検出されなかった場合にクライアント側処理を実行することとしたので、クライアント装置に導入されたコンピュータ資源の検証をおこなうコンピュータ資源がそもそも正常であるか否かを検証することにより、コンピュータ資源の検証が不正なものとなることを防止することができるという効果を奏する。【００２２】
また、本発明によれば、クライアント装置に導入されたコンピュータ資源の検証をおこなうコンピュータ資源に係るハッシュ値をクライアント装置がハードウェア処理により生成し、生成されたハッシュ値の情報に基づいてサーバ装置が当該コンピュータ資源の検証をおこなうこととしたので、ハッシュ値の生成をハードウェア処理でおこなうので、ソフトウェア処理によりハッシュ値を生成する場合のように不正にハッシュ値が生成される危険性が少なく、コンピュータ資源の検証を確実におこなうことができるという効果を奏する。【００２３】
また、本発明によれば、クライアント装置が、サーバ装置から特定のコンピュータ資源の検証要求を受け付けた場合に、当該特定のコンピュータ資源との間で依存関係を有するコンピュータ資源の情報を収集し、情報が収集されたコンピュータ資源の検証をおこなうこととしたので、検証すべきコンピュータ資源の情報をサーバ装置がすべて管理する必要がなく、サーバ装置の負荷を軽減することができるという効果を奏する。【００２４】
また、本発明によれば、クライアント装置が、依存関係の情報収集をおこなうコンピュータ資源の数の指定をサーバ装置から受け付けて、サーバ装置により指定された数のコンピュータ資源に係るハッシュ値を連結し、連結したハッシュ値に係るハッシュ値を生成して生成したハッシュ値の情報をサーバ装置に送信し、サーバ装置が、送信されたハッシュ値の情報に基づいて各コンピュータ資源間の依存関係の検証を実行することとしたので、たとえクライアント装置により送信されたハッシュ値の情報が盗み見られた場合でも、依存関係の情報収集をおこなうコンピュータ資源の数が変更されればハッシュ値が変化するので、リプライアタック等を抑止することができるという効果を奏する。【００２５】
また、本発明によれば、サーバ装置が、クライアント装置を正常でないと判定した場合に、異常が検出されたコンピュータ資源の情報をクライアント装置に送信することとしたので、クライアント装置はどのコンピュータ資源に異常が検出されたかを確認することができるという効果を奏する。【００２６】
また、本発明によれば、サーバ装置により送信されたコンピュータ資源の情報をクライアント装置が受信した場合にクライアント装置が当該コンピュータ資源を取得して、取得したコンピュータ資源のインストールを実行することとしたので、異常が検出されたコンピュータ資源の再インストールを効果的に実行することができるという効果を奏する。【００２７】
また、本発明によれば、クライアント装置に導入された個々のコンピュータ資源の検証と各コンピュータ資源間の依存関係の情報収集とを含むクライアント側処理を当該クライアント装置が実行し、クライアント側処理の結果に係る情報を、各コンピュータ資源間の依存関係の検証をおこない、かつ、コンピュータ資源の検証の結果および各コンピュータ資源間の依存関係の検証の結果に基づいてクライアント装置が正常であるか否かを判定するサーバ装置にクライアント装置が送信することとしたので、コンピュータ資源の検証をクライアント装置とサーバ装置とで分担しておこなうことにより、サービス利用者の数が増加した場合でも、クライアント装置の安全性を検証するサーバ装置の負荷を軽減させることができるという効果を奏する。【００２８】
また、本発明によれば、サーバ装置が、クライアント装置に導入された個々のコンピュータ資源の検証と各コンピュータ資源間の依存関係の情報収集とを含むクライアント側処理を当該クライアント装置が実行した実行結果の情報を当該クライアント装置から受信し、受信した情報に基づいて各コンピュータ資源間の依存関係の検証をサーバ装置が実行し、コンピュータ資源の検証の結果および各コンピュータ資源間の依存関係の検証の結果に基づいてクライアント装置が正常であるか否かをサーバ装置が判定することとしたので、コンピュータ資源の検証をクライアント装置とサーバ装置とで分担しておこなうことにより、サービス利用者の数が増加した場合でも、クライアント装置の安全性を検証するサーバ装置の負荷を軽減させることができるという効果を奏する。
【図面の簡単な説明】
【００２９】
【図１】図１は、本発明に係るアプリケーション検証システムを説明する図である。
【図２】図２は、基盤アプリケーション、検証アプリケーション、および、依存アプリケーションについて説明する図である。
【図３】図３は、図１に示した利用者端末装置１０の機能構成を示す図である。
【図４】図４は、図３に示したアプリケーション基本データ１０１ｃの一例を示す図である。
【図５】図５は、図３に示したアプリケーション拡張データ１０１ｄの一例を示す図である。
【図６】図６は、図３に示したアプリケーション必要機能データ１０１ｅの一例を示す図である。
【図７】図７は、図３に示したアプリケーション提供機能データ１０１ｆの一例を示す図である。
【図８】図８は、認証局サーバ装置２０により送信される通知要求応答７０について説明する図である。
【図９】図９は、検証処理制御部１０８により送信される検証要求８０について説明する図である。
【図１０】図１０は、図１に示した認証局サーバ装置２０の機能構成を示す図である。
【図１１】図１１は、図１０に示した検証設定データ２０１ａの一例を示す図である。
【図１２−１】図１２−１は、本実施例に係るアプリケーション検証処理の処理手順を示すフローチャート（１）である。
【図１２−２】図１２−２は、本実施例に係るアプリケーション検証処理の処理手順を示すフローチャート（２）である。
【図１２−３】図１２−３は、本実施例に係るアプリケーション検証処理の処理手順を示すフローチャート（３）である。
【図１２−４】図１２−４は、本実施例に係るアプリケーション検証処理の処理手順を示すフローチャート（４）である。
【図１３】図１３は、図３あるいは図１０に示した利用者端末装置１０あるいは認証局サーバ装置２０となるコンピュータのハードウェア構成を示す図である。
【符号の説明】
【００３０】
１０  利用者端末装置
１００  通信処理部
１０１  記憶部
１０１ａ  アプリケーション
１０１ｂ  ユーザデータ
１０１ｃ  アプリケーション基本データ
１０１ｄ  アプリケーション拡張データ
１０１ｅ  アプリケーション必要機能データ
１０１ｆ  アプリケーション提供機能データ
１０１ｇ  アプリケーション管理データ
１０２  アプリケーション実行処理部
１０３  基盤アプリケーションハッシュ値生成部
１０４  依存アプリケーション抽出部
１０５  検証／依存アプリケーションハッシュ値生成部
１０６  アプリケーション検証部
１０７  アプリケーション導入管理部
１０８  検証処理制御部
２０  認証局サーバ装置
２００  通信処理部
２０１  記憶部
２０１ａ  検証設定データ
２０１ｂ  アプリケーション基本データ
２０１ｃ  アプリケーション拡張データ
２０１ｄ  アプリケーション必要機能データ
２０１ｅ  アプリケーション提供機能データ
２０２  基盤アプリケーションハッシュ値比較部
２０３  アプリケーション検証部
２０４  検証／依存アプリケーションハッシュ値生成部
２０５  検証／依存アプリケーションハッシュ値比較部
２０６  検証結果通知部
２０７  検証処理制御部
３０  ネットワーク事業者サーバ装置
４０，５０  ネットワーク
６０ａ，６０ｂ  基盤アプリケーション
６１  検証アプリケーション
６２ａ〜６２ｅ  依存アプリケーション
７０  通知要求応答
８０  検証要求
【発明を実施するための最良の形態】
【００３１】
以下に、本発明に係るコンピュータ資源検証方法およびコンピュータ資源検証プログラムの実施例を図面に基づいて詳細に説明する。なお、ここでは、コンピュータ資源として利用者端末装置にインストールされているアプリケーションプログラムを検証する場合について説明するが、アプリケーションプログラムに加えてさらにハードウェアの検証をおこなうこととしてもよい。
【実施例】
【００３２】
まず、本発明に係るアプリケーション検証システムについて説明する。図１は、本発明に係るアプリケーション検証システムを説明する図である。このアプリケーション検証システムは、利用者端末装置１０、認証局サーバ装置２０、および、ネットワーク事業者サーバ装置３０がそれぞれネットワーク４０に接続され、ネットワーク事業者サーバ装置３０はさらにネットワーク５０に接続されている。【００３３】
利用者端末装置１０は、各種のアプリケーションプログラム（以下、アプリケーションプログラムを単にアプリケーションと呼ぶ。）がインストールされたパーソナルコンピュータなどの端末装置であり、ネットワーク事業者サーバ装置３０を介してネットワーク５０に接続し、データの授受をおこなう端末装置である。【００３４】
認証局サーバ装置２０は、ネットワーク５０に接続するためのアプリケーションが利用者端末装置１０に適切にインストールされているか否か、アプリケーションが改竄されていないか否かの認証をおこない、利用者端末装置１０のアプリケーション環境が正常であると判定した場合にのみ、ネットワーク事業者サーバ装置３０に対して利用者端末装置１０のアプリケーション環境が正常であるとの通知をおこなうサーバ装置である。【００３５】
ネットワーク事業者サーバ装置３０は、利用者端末装置１０からネットワーク５０に対する接続要求を受け付けた場合に、利用者端末装置１０のアプリケーション環境が正常であるか否かに基づいて、ネットワーク５０に対する利用者端末装置１０の接続制御をおこなうサーバ装置である。【００３６】
ここで、利用者端末装置１０は、アプリケーション検証部１０６を備えている。利用者端末装置１０がネットワーク５０に接続しようとする場合には、このアプリケーション検証部１０６は、認証局サーバ装置２０から検証すべき検証アプリケーションの情報を取得して、検証アプリケーションと依存関係を有する依存アプリケーションを抽出し、検証アプリケーションおよび依存アプリケーションの検証をおこなう。【００３７】
図２は、基盤アプリケーション、検証アプリケーション、および、依存アプリケーションについて説明する図である。基盤アプリケーション６０ａ，６０ｂとは、アプリケーションの検証をおこなう場合に、前もって検証すべきアプリケーションのことである。たとえば、基盤アプリケーション６０ａ，６０ｂとしては、他のアプリケーションの検証をおこなう検証用のアプリケーションなどが挙げられる。【００３８】
検証アプリケーション６１とは、ネットワーク５０に接続するために、利用者端末装置１０に正常にインストールされなくてはならないアプリケーションであり、認証局サーバ装置２０により検証すべきアプリケーションとして指定されたアプリケーションである。依存アプリケーション６２ａ〜６２ｅとは、検証アプリケーション６１が機能するために必要とされるアプリケーションである。【００３９】
検証アプリケーション６１と依存アプリケーション６２ａ〜６２ｅとは、階層構造を形成している。図２の例では、検証アプリケーション６１が機能するためには、依存アプリケーション６２ａ，６２ｂが必要であり、依存アプリケーション６２ａが機能するためには、依存アプリケーション６２ｃが必要であり、依存アプリケーション６２ｂが機能するためには、依存アプリケーション６２ｄ，６２ｅが必要である場合が示されている。【００４０】
図１の説明に戻ると、検証アプリケーションおよび依存アプリケーションの検証後、アプリケーション検証部１０６は、その検証結果（アプリケーション検証結果）の情報と、アプリケーション間の依存関係の情報（アプリケーション依存関係情報）とを認証局サーバ装置２０に送信する（図１の（１）に対応する）。【００４１】
ここで、アプリケーション間の依存関係の情報としては、検証アプリケーションおよび検証アプリケーションと依存関係を有する依存アプリケーションのそれぞれのハッシュ値を連結し、その連結したハッシュ値から生成されたハッシュ値の情報などが含まれる。【００４２】
一方、認証局サーバ装置２０は、アプリケーション検証部２０３および検証／依存アプリケーションハッシュ値比較部２０５を備えている。そして、アプリケーション検証結果の情報、および、アプリケーション依存関係情報を利用者端末装置１０から受信した場合には、アプリケーション検証部２０３は、利用者端末装置１０により送信されたアプリケーション検証結果に対応する検証アプリケーションおよび依存アプリケーションが、正当な検証アプリケーションおよび依存アプリケーションの情報が登録された認証局サーバ装置２０のデータベースに登録されているか否かを調べることにより、アプリケーション間の依存関係の検証をおこなう。【００４３】
また、検証／依存アプリケーションハッシュ値比較部２０５は、利用者端末装置１０により送信されたハッシュ値の情報を取得し、取得したハッシュ値と、検証アプリケーションおよび依存アプリケーションの正当なハッシュ値を連結することにより生成されたハッシュ値とを比較することにより、アプリケーション間の依存関係の検証をおこなう。【００４４】
利用者端末装置１０によりなされたアプリケーションに係る検証の結果に問題がなく、利用者端末装置１０により抽出された依存アプリケーションの情報が認証局サーバ装置２０のデータベースに登録されており、利用者端末装置１０により送信されたハッシュ値の情報が、認証局サーバ装置２０により正当なアプリケーションのハッシュ値から生成されたハッシュ値と一致する場合には、認証局サーバ装置２０は、ネットワーク事業者サーバ装置３０に対して、利用者端末装置１０のアプリケーション環境が正常であることを示す正常環境通知を送信する（図１の（２）に対応する）。【００４５】
正常環境通知を受信したネットワーク事業者サーバ装置３０は、利用者端末装置１０からネットワーク５０に対する接続要求を受け付けた場合に、認証局サーバ装置２０からその利用者端末装置１０に対応する正常環境通知を受信しているか否かを判定し、正常環境通知を受信している場合にのみ、利用者端末装置１０をネットワーク５０に接続させる（図１の（３）に対応する）。【００４６】
このように、認証局サーバ装置２０側ですべての検証をおこなうのではなく、利用者端末装置１０に個々のアプリケーションの検証を実行させ、認証局サーバ装置２０はアプリケーション間の依存関係を検証することにより、認証精度を高水準に維持したまま、認証局サーバ装置２０の処理にかかる負荷を軽減することができる。【００４７】
つぎに、図１に示した利用者端末装置１０の機能構成について説明する。図３は、図１に示した利用者端末装置１０の機能構成を示す図である。図３に示すように、この利用者端末装置１０は、通信処理部１００、記憶部１０１、アプリケーション実行処理部１０２、基盤アプリケーションハッシュ値生成部１０３、依存アプリケーション抽出部１０４、検証／依存アプリケーションハッシュ値生成部１０５、アプリケーション検証部１０６、アプリケーション導入管理部１０７、検証処理制御部１０８を有する。【００４８】
通信処理部１００は、認証局サーバ装置２０やネットワーク事業者サーバ装置３０との間でネットワーク４０を介してデータ通信をおこなうネットワークインターフェースである。【００４９】
記憶部１０１は、ハードディスク装置などの記憶デバイスである。この記憶部１０１は、アプリケーション１０１ａ、ユーザデータ１０１ｂ、アプリケーション基本データ１０１ｃ、アプリケーション拡張データ１０１ｄ、アプリケーション必要機能データ１０１ｅ、アプリケーション提供機能データ１０１ｆ、アプリケーション管理データ１０１ｇを記憶している。【００５０】
アプリケーション１０１ａは、利用者端末装置１０で利用されるアプリケーションプログラムである。このアプリケーション１０１ａには、図２で説明したような、基盤アプリケーション、検証アプリケーション、依存アプリケーションが含まれる。ユーザデータ１０１ｂは、利用者端末装置１０の利用者が作成した個人データである。【００５１】
アプリケーション基本データ１０１ｃは、利用者端末装置１０にインストールされている各アプリケーションの基本データである。図４は、図３に示したアプリケーション基本データ１０１ｃの一例を示す図である。【００５２】
図４に示すように、アプリケーション基本データ１０１ｃには、アプリケーション識別子、アプリケーション名、バージョン、リリース、アーキテクチャ種別の情報が登録されている。【００５３】
アプリケーション識別子は、各アプリケーションを一意に識別する識別子である。アプリケーション名は、各アプリケーションの名称である。バージョンおよびリリースは、各アプリケーションのバージョンおよび同一バーションにおけるリリース番号である。アーキテクチャ種別は、各アプリケーションが対応しているコンピュータアーキテクチャの情報である。【００５４】
図３の説明に戻ると、アプリケーション拡張データ１０１ｄは、利用者端末装置１０にインストールされている各アプリケーションの拡張データである。図５は、図３に示したアプリケーション拡張データ１０１ｄの一例を示す図である。【００５５】
図５に示すように、アプリケーション拡張データ１０１ｄには、アプリケーション識別子、ハッシュ値、パッケージＩＤの情報が登録されている。アプリケーション識別子は、図４で説明したアプリケーション識別子と同様のものであり、各アプリケーションを一意に識別する識別子である。ハッシュ値は、各アプリケーションが含まれているソフトウェアパッケージのハッシュ値である。パッケージＩＤは、各アプリケーションが含まれているソフトウェアパッケージを一意に識別するＩＤである。【００５６】
図３の説明に戻ると、アプリケーション必要機能データ１０１ｅは、各アプリケーションが機能するために必要とされる他のアプリケーションに係るデータである。図６は、図３に示したアプリケーション必要機能データ１０１ｅの一例を示す図である。【００５７】
図６に示すように、アプリケーション必要機能データ１０１ｅには、アプリケーション識別子および必要機能情報が登録されている。アプリケーション識別子は、図４で説明したアプリケーション識別子と同様のものであり、各アプリケーションを一意に識別する識別子である。【００５８】
必要機能情報は、各アプリケーションが機能するために必要とされる他のアプリケーションの情報である。この必要機能情報には、シンボル名、バージョン、符号の情報が登録されている。【００５９】
シンボル名は、各アプリケーションが機能するために必要とされる他のアプリケーションの名称である。バージョンは、各アプリケーションが機能するために最低限必要とされる他のアプリケーションのバージョンである。符号は、各アプリケーションが機能するために必要とされる他のアプリケーションのバージョンの範囲を定義するものである。【００６０】
たとえば、符号「＝」は、当該アプリケーションが、上記バージョンと同一のバージョンのアプリケーションを必要とすることを示している。また、符号「＝＜」は、当該アプリケーションが、上記バージョン以降のバージョンのアプリケーションを必要とすることを示している。また、符号「＞＝」は、当該アプリケーションが、上記バージョン以前のバージョンのアプリケーションを必要とすることを示している。【００６１】
図３の説明に戻ると、アプリケーション提供機能データ１０１ｆは、各アプリケーションが提供する機能に係るデータである。図７は、図３に示したアプリケーション提供機能データ１０１ｆの一例を示す図である。【００６２】
図７に示すように、アプリケーション提供機能データ１０１ｆには、アプリケーション識別子および提供機能情報が登録されている。アプリケーション識別子は、図４で説明したアプリケーション識別子と同様のものであり、各アプリケーションを一意に識別する識別子である。提供機能情報は、各アプリケーションが提供する機能の情報である。この提供機能情報には、シンボル名、バージョン、符号の情報が登録されている。【００６３】
シンボル名は、各アプリケーションが提供する機能に対応するアプリケーションの名称である。バージョンは、各アプリケーションが提供する機能に対応するアプリケーションのバージョンである。符号は、各アプリケーションが提供する機能に対応するアプリケーションのバージョンの範囲を定義するものである。【００６４】
たとえば、符号「＝」は、当該アプリケーションが、上記バージョンと同一のバージョンのアプリケーションの機能を提供することを示している。また、符号「＝＜」は、当該アプリケーションが、上記バージョン以降のバージョンのアプリケーションの機能を提供することを示している。また、符号「＞＝」は、当該アプリケーションが、上記バージョン以前のバージョンのアプリケーションの機能を提供することを示している。【００６５】
アプリケーション管理データ１０１ｇは、利用者端末装置１０にインストールされている各アプリケーションの管理情報を記憶したデータである。このアプリケーション管理データ１０１ｂには、各アプリケーションのファイルサイズ、ハッシュ値、読み／書き／実行が許可されているか否かを示す許可属性、ファイルタイプ、ファイルの修正時刻、デバイスファイル、シンボリックリンク、ファイルの所有者、ファイルを所有するグループの情報が登録されている。【００６６】
図３の説明に戻ると、アプリケーション実行処理部１０２は、記憶部１０１に記憶されているアプリケーション１０１ａを読み出してアプリケーションを実行する処理部である。基盤アプリケーションハッシュ値生成部１０３は、基盤アプリケーションのハッシュ値を生成するハードウェア回路である。【００６７】
ハッシュ値を生成する基盤アプリケーションの情報は、検証処理制御部１０８が認証局サーバ装置２０に検証対象となるアプリケーションの通知要求を送信した場合に、認証局サーバ装置２０により送信される通知要求応答に含まれている。【００６８】
図８は、認証局サーバ装置２０により送信される通知要求応答７０について説明する図である。図８に示すように、この通知要求応答７０には、データタイプ、検証階層、検証最大数、基盤／検証アプリケーション情報が含まれる。【００６９】
データタイプは、このデータが通知要求応答７０であることを示す識別情報である。検証階層は、利用者端末装置１０にインストールされているアプリケーションの依存関係を検証する際の検証すべき依存関係の階層の情報である。【００７０】
たとえば、図２の例において検証階層が「２」と指定された場合には、２階層分（検証アプリケーション６１および依存アプリケーション６２ａ，６２ｂを含む階層）のアプリケーションの依存関係が抽出される。【００７１】
検証最大数は、依存関係を有するアプリケーションのハッシュ値を連結し、連結したハッシュ値のハッシュ値を用いてアプリケーションの依存関係の検証をおこなう場合の、連結するハッシュ値の数の情報である。【００７２】
基盤／検証アプリケーション情報は、検証対象となる検証アプリケーションおよび基盤アプリケーションの情報である。ここでは、基盤アプリケーションは１つまたは複数指定され、検証アプリケーションは１つだけ指定される。【００７３】
図３の説明に戻ると、依存アプリケーション抽出部１０４は、図８に示した通知要求応答７０により認証局サーバ装置２０から検証すべき検証アプリケーションの指定を受け付けた場合に、記憶部１０１に記憶されたアプリケーション基本データ１０１ｃ、アプリケーション必要機能データ１０１ｅ、アプリケーション提供機能データ１０１ｆを読み出して、アプリケーション必要機能データ１０１ｅの必要機能情報およびアプリケーション提供機能データ１０１ｆの提供機能情報を辿ることによりアプリケーション間の依存関係を抽出する抽出部である。【００７４】
その際、依存アプリケーション抽出部１０４は、通知要求応答７０に含まれる検証階層および検証最大数の情報を取得し、依存関係の階層が検証階層を越えるか、あるいは、認証局サーバ装置２０により指定された検証アプリケーションの数（ここでは、１つ）と、当該検証アプリケーションと依存関係がある依存アプリケーションとの数の和が検証最大数となるまで、検証アプリケーションと依存関係がある依存アプリケーションを抽出する。【００７５】
ここで、図４、図６、図７に示した例において、検証階層が「２」であり、検証最大数が「３」である場合について考える。アプリケーション「Ａ」は、アプリケーション基本データ１０１ｃおよびアプリケーション必要機能データ１０１ｅから分かるように、バージョンが「２．３．５」以降のシンボル名が「Ｄ」の機能と、バージョンが「１．５」以降のシンボル名が「Ｅ」の機能とを必要としている。【００７６】
また、アプリケーション基本データ１０１ｃおよびアプリケーション提供機能データ１０１ｆから分かるように、アプリケーション「Ｂ」は、バージョンが「２．３．６」のシンボル名が「Ｄ」の機能を提供することができ、また、アプリケーション「Ｃ」は、バージョンが「１．５」のシンボル名が「Ｅ」の機能を提供することができる。【００７７】
これにより、アプリケーション「Ａ」は、アプリケーション「Ｂ」およびアプリケーション「Ｃ」に依存していると判定されるので、アプリケーション「Ｂ」およびアプリケーション「Ｃ」はアプリケーション「Ａ」の依存アプリケーションとなる。【００７８】
また、この時点で検証アプリケーションおよび依存アプリケーションの数が「３」で検証最大数と等しくなったため、依存アプリケーション抽出部１０４は、依存関係の抽出を終了する。このようにして、依存アプリケーション抽出部１０４は、アプリケーション間の依存関係を抽出する。【００７９】
検証／依存アプリケーションハッシュ値生成部１０５は、依存アプリケーション抽出部１０４がアプリケーション間の依存関係を抽出した場合に、依存アプリケーション抽出部１０４により依存関係が抽出された各アプリケーションのハッシュ値を、図５に示したアプリケーション拡張データ１０１ｄから読み出して連結し、連結したハッシュ値のハッシュ値を生成する生成部である。【００８０】
アプリケーション検証部１０６は、依存アプリケーション抽出部１０４により依存関係が抽出された各アプリケーションのファイルの検証をおこなう検証部である。具体的には、アプリケーション検証部１０６は、アプリケーションのファイルサイズ、ハッシュ値、許可属性、ファイルタイプ、修正時刻、デバイスファイル、シンボリックリンク、所有者、グループが、アプリケーション管理データ１０１ｇに登録されているファイルサイズ、ハッシュ値、許可属性、ファイルタイプ、修正時刻、デバイスファイル、シンボリックリンク、所有者、グループの情報とそれぞれ一致するか否かを調べることにより各アプリケーションの検証をおこなう。【００８１】
アプリケーション導入管理部１０７は、図示しないアプリケーションサーバ装置からアプリケーションを含むパッケージソフトウェアを受信し、利用者端末装置１０にインストールする管理部である。【００８２】
具体的には、アプリケーション導入管理部１０７は、アプリケーションサーバ装置から受信したパッケージソフトウェアを展開し、記憶部１０１にアプリケーション１０１ａとして記憶するとともに、アプリケーション１０１ａが使用可能となるようにＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）などに対する環境設定をおこなうインストール処理を実行する。【００８３】
また、アプリケーション導入管理部１０７は、認証局サーバ装置２０から検証結果が正常でないアプリケーションの情報を受信した場合に、そのアプリケーションを含むパッケージソフトウェアをアプリケーションサーバ装置から受信し、アプリケーションのインストールを実行する。【００８４】
アプリケーションをインストールした場合には、アプリケーション導入管理部１０７は、アプリケーション基本データ１０１ｃ、アプリケーション拡張データ１０１ｄ、アプリケーション必要機能データ１０１ｅ、アプリケーション提供機能データ１０１ｆ、および、アプリケーション管理データ１０１ｇに、当該アプリケーションに係る情報を登録する処理をおこなう。【００８５】
検証処理制御部１０８は、記憶部１０１、基盤アプリケーションハッシュ値生成部１０３、依存アプリケーション抽出部１０４、検証／依存アプリケーションハッシュ値生成部１０５、アプリケーション検証部１０６、アプリケーション導入管理部１０７間のデータの授受を司る制御部である。また、検証処理制御部１０８は、認証局サーバ装置２０との間で利用者端末装置１０におけるアプリケーション環境の検証処理に係る種々の情報を送受信する。【００８６】
具体的には、検証処理制御部１０８は、アプリケーション環境の検証を開始する際に、認証局サーバ装置２０に検証対象となるアプリケーションの通知要求を、自装置を識別する識別情報とともに送信する。また、検証処理制御部１０８は、図８で説明した通知要求応答７０を認証局サーバ装置２０から受信する。【００８７】
さらに、検証処理制御部１０８は、基盤アプリケーションハッシュ値生成部１０３により生成された基盤アプリケーションのハッシュ値を認証局サーバ装置２０に送信する処理をおこなう。【００８８】
また、検証処理制御部１０８は、認証局サーバ装置２０に対して、アプリケーション検証部１０６によりなされたアプリケーションの検証結果と、検証／依存アプリケーションハッシュ値生成部１０５により生成されたハッシュ値の情報とを含んだ検証要求を送信し、利用者端末装置１０のアプリケーション環境が正常であるか否かを検証するよう要求する。【００８９】
図９は、検証処理制御部１０８により送信される検証要求８０について説明する図である。図９に示すように、この検証要求８０には、データタイプ、アプリケーション検証情報、セパレタ、全アプリケーションのハッシュ値に対するハッシュ値の情報が含まれる。ここで、アプリケーション検証情報およびセパレタは、図８で説明した検証最大数と同じ数だけ含まれている。【００９０】
データタイプは、このデータが検証要求８０であることを示す識別情報である。アプリケーション検証情報は、アプリケーション検証部１０６によりなされたアプリケーションの検証結果の情報である。このアプリケーション検証情報には、検証がなされたアプリケーション名、バージョン、リリース、アーキテクチャ種別および検証結果の情報が含まれる。【００９１】
検証結果とは、具体的には、アプリケーションのファイルサイズ、ハッシュ値、許可属性、ファイルタイプ、修正時刻、デバイスファイル、シンボリックリンク、所有者、グループが、アプリケーション管理データ１０１ｇに登録されているファイルサイズ、ハッシュ値、許可属性、ファイルタイプ、修正時刻、デバイスファイル、シンボリックリンク、所有者、グループの情報とそれぞれ一致したか否かを示す情報である。【００９２】
セパレタは、アプリケーション検証情報が複数ある場合に、各アプリケーション検証情報を区別するためにアプリケーション検証情報の間に挿入されるブランクである。全アプリケーションのハッシュ値に対するハッシュ値は、検証／依存アプリケーションハッシュ値生成部１０５により生成されたハッシュ値の情報である。【００９３】
ここで、検証／依存アプリケーションハッシュ値生成部１０５は、全アプリケーションのハッシュ値に対するハッシュ値を生成する場合に、依存関係を有する各アプリケーションのハッシュ値を連結するが、検証要求８０におけるアプリケーション検証情報の順番は、ハッシュ値を連結した順番と同じになるように並べられる。【００９４】
つぎに、図１に示した認証局サーバ装置２０の機能構成について説明する。図１０は、図１に示した認証局サーバ装置２０の機能構成を示す図である。図１０に示すように、この認証局サーバ装置２０は、通信処理部２００、記憶部２０１、基盤アプリケーションハッシュ値比較部２０２、アプリケーション検証部２０３、検証／依存アプリケーションハッシュ値生成部２０４、検証／依存アプリケーションハッシュ値比較部２０５、検証結果通知部２０６、検証処理制御部２０７を有する。【００９５】
通信処理部２００は、利用者端末装置１０やネットワーク事業者サーバ装置３０との間でネットワーク４０を介してデータ通信をおこなうネットワークインターフェースである。【００９６】
記憶部２０１は、ハードディスク装置などの記憶デバイスである。この記憶部２０１は、検証設定データ２０１ａ、アプリケーション基本データ２０１ｂ、アプリケーション拡張データ２０１ｃ、アプリケーション必要機能データ２０１ｄ、アプリケーション提供機能データ２０１ｅを記憶している。【００９７】
検証設定データ２０１ａは、利用者端末装置１０のアプリケーション環境を検証する際の設定に係るデータである。図１１は、図１０に示した検証設定データ２０１ａの一例を示す図である。図１１に示すように、この検証設定データ２０１ａには、検証アプリケーション識別子、基盤アプリケーション識別子、検証階層、検証最大値の情報が含まれる。【００９８】
検証アプリケーション識別子および基盤アプリケーション識別子は、それぞれ検証対象となる検証アプリケーションおよび基盤アプリケーションを識別する識別子であり、図４で説明したアプリケーション識別子に対応するものである。【００９９】
検証階層および検証最大値は、図８で説明した検証階層および検証最大値と同様のものである。ここで、検証階層および検証最大値は、定期的に変更される。これにより、利用者端末装置１０により送信された検証要求８０における全アプリケーションのハッシュ値に対するハッシュ値の情報が盗み見られた場合でも、依存関係を検証するアプリケーションの数が変更されればそのハッシュ値は変化するので、リプライアタック等を抑止することができる。【０１００】
図１０の説明に戻ると、アプリケーション基本データ２０１ｂ、アプリケーション拡張データ２０１ｃ、アプリケーション必要機能データ２０１ｄ、アプリケーション提供機能データ２０１ｅはそれぞれ、図３で説明したアプリケーション基本データ１０１ｃ、アプリケーション拡張データ１０１ｄ、アプリケーション必要機能データ１０１ｅ、アプリケーション提供機能データ１０１ｆと同様のデータである。【０１０１】
ただし、アプリケーション基本データ２０１ｂ、アプリケーション拡張データ２０１ｃ、アプリケーション必要機能データ２０１ｄ、アプリケーション提供機能データ２０１ｅには、ネットワーク５０への接続を許可するために利用者端末装置１０にインストールすることを要求するアプリケーションの情報が登録される。【０１０２】
基盤アプリケーションハッシュ値比較部２０２は、基盤アプリケーションの検証をおこなう場合に、利用者端末装置１０から受信した基盤アプリケーションのハッシュ値と、アプリケーション拡張データ２０１ｃに登録されている基盤アプリケーションのハッシュ値とを比較することにより、基盤アプリケーションが正常であるか否かを判定する比較部である。【０１０３】
アプリケーション検証部２０３は、図９に示した検証要求８０を利用者端末装置１０から受信した場合に、検証要求８０に含まれる情報に基づいて、利用者端末装置１０のアプリケーション環境を検証する検証部である。【０１０４】
具体的には、アプリケーション検証部２０３は、検証要求８０に含まれるアプリケーション検証情報を抽出し、抽出したアプリケーション検証情報に含まれる検証結果を確認し、検証結果に異常があった場合にアプリケーション環境に異常があると判定する。【０１０５】
また、アプリケーション検証部２０３は、アプリケーション検証情報に含まれるアプリケーション名、バージョン、リリース、アーキテクチャ種別に対応するアプリケーションがアプリケーション基本データ２０１ｂに登録されているか否かを判定し、アプリケーションが登録されていなかった場合にアプリケーション環境に異常があると判定する。【０１０６】
検証／依存アプリケーションハッシュ値生成部２０４は、検証要求８０にアプリケーション検証情報が含まれる検証アプリケーションおよび依存アプリケーションのハッシュ値の情報をアプリケーション拡張データ２０１ｃから読み出して、読み出したハッシュ値をアプリケーション検証情報が検証要求８０に含まれる順番で連結し、連結したハッシュ値のハッシュ値を生成する生成部である。【０１０７】
検証／依存アプリケーションハッシュ値比較部２０５は、検証要求８０に含まれる全アプリケーションのハッシュ値に対するハッシュ値と、検証／依存アプリケーションハッシュ値生成部２０４により生成されたハッシュ値とを比較して一致するか否かを検出し、一致しない場合に利用者端末装置１０のアプリケーション環境に異常があると判定する比較部である。【０１０８】
検証結果通知部２０６は、利用者端末装置１０のアプリケーション環境の検証結果の情報を利用者端末装置１０およびネットワーク事業者サーバ装置３０に送信し、検証結果を通知する通知部である。【０１０９】
具体的には、検証結果通知部２０６は、アプリケーション検証部２０３および検証／依存アプリケーションハッシュ値比較部２０５により、アプリケーション環境に異常がないと判定された場合に、利用者端末装置１０にネットワーク５０への接続を許可することを示す情報を送信する。【０１１０】
また、検証結果通知部２０６は、アプリケーション検証部２０３および検証／依存アプリケーションハッシュ値比較部２０５により、アプリケーション環境に異常がないと判定された場合に、ネットワーク事業者サーバ装置３０に利用者端末装置１０のアプリケーション環境が正常であることを示す情報を、当該利用者端末装置１０を特定する識別情報とともに送信する。【０１１１】
さらに、検証結果通知部２０６は、アプリケーション検証部２０３により、アプリケーション環境に異常があると判定された場合に、利用者端末装置１０に接続を不許可とすることを示す情報と、異常があると判定されたアプリケーションを特定するアプリケーション識別子の情報とを送信する。【０１１２】
検証処理制御部２０７は、記憶部２０１、基盤アプリケーションハッシュ値比較部２０２、アプリケーション検証部２０３、検証／依存アプリケーションハッシュ値生成部２０４、検証／依存アプリケーションハッシュ値比較部２０５、検証結果通知部２０６間のデータの授受を司る制御部である。また、検証処理制御部２０７は、利用者端末装置１０との間で利用者端末装置１０におけるアプリケーション環境の検証処理に係る種々の情報を送受信する。【０１１３】
具体的には、検証処理制御部２０７は、利用者端末装置１０から利用者端末装置１０を識別する識別情報とともに、検証対象となるアプリケーションの通知要求を受信する。また、検証処理制御部２０７は、図８で説明した通知要求応答７０を利用者端末装置１０に送信する。【０１１４】
さらに、検証処理制御部２０７は、利用者端末装置１０により生成された基盤アプリケーションのハッシュ値を利用者端末装置１０から受信する。また、検証処理制御部２０７は、受信したハッシュ値に基づいて基盤アプリケーションが正常であると判定された場合に利用者端末装置１０に検証／依存アプリケーションの検証実行通知を送信する。また、検証処理制御部２０７は、図９に示したような検証要求８０を利用者端末装置１０から受信する。【０１１５】
つぎに、本発明に係るアプリケーション検証処理の処理手順について説明する。図１２−１、図１２−２、図１２−３、および、図１２−４は、それぞれ、本実施例に係るアプリケーション検証処理の処理手順を示すフローチャート（１）、（２）、（３）および（４）である。【０１１６】
図１２−１に示すように、まず、利用者端末装置１０の検証処理制御部１０８は、検証対象となるアプリケーションの通知要求を認証局サーバ装置２０に送信する（ステップＳ１０１）。【０１１７】
そして、認証局サーバ装置２０の検証処理制御部２０７は、当該通知要求を受信する（ステップＳ１０２）。続いて、検証処理制御部２０７は、検証対象となる基盤アプリケーションおよび検証アプリケーション、検証階層および検証最大数の情報を検証設定データ２０１ａから読み出す（ステップＳ１０３）。【０１１８】
そして、検証処理制御部２０７は、図８に示したような、検証対象となる基盤アプリケーションおよび検証アプリケーション、検証階層および検証最大数の情報を含んだ通知要求応答７０を利用者端末装置１０に送信する（ステップＳ１０４）。【０１１９】
その後、利用者端末装置１０の検証処理制御部１０８は、通知要求応答７０を認証局サーバ装置２０から受信する（ステップＳ１０５）。そして、利用者端末装置１０の基盤アプリケーションハッシュ値生成部１０３は、認証局サーバ装置２０により指定された基盤アプリケーションのハッシュ値をハードウェア処理により生成する（ステップＳ１０６）。【０１２０】
続いて、利用者端末装置１０の検証処理制御部１０８は、生成されたハッシュ値の情報を認証局サーバ装置２０に送信する（ステップＳ１０７）。そして、認証局サーバ装置２０の検証処理制御部２０７は、利用者端末装置１０により送信されたハッシュ値の情報を受信する（ステップＳ１０８）。【０１２１】
その後、認証局サーバ装置２０の基盤アプリケーションハッシュ値比較部２０２は、自装置のデータベースであるアプリケーション拡張データ２０１ｃに登録された基盤アプリケーションのハッシュ値の情報を取得する（ステップＳ１０９）。【０１２２】
そして、基盤アプリケーションハッシュ値比較部２０２は、取得したハッシュ値と利用者端末装置１０から受信したハッシュ値とを比較し（ステップＳ１１０）、ハッシュ値が一致するか否かを調べる（ステップＳ１１１）。【０１２３】
ハッシュ値が一致しない場合には（ステップＳ１１１，Ｎｏ）、図１２−２に示すように、認証局サーバ装置２０の検証処理制御部２０７は、ハッシュ値が一致しなかった基盤アプリケーションの情報を含むアクセス拒否通知を利用者端末装置１０に送信し（ステップＳ１１３）、図１２−１に示すステップＳ１０８に移行する。【０１２４】
ハッシュ値が一致した場合には（ステップＳ１１１，Ｙｅｓ）、認証局サーバ装置２０の検証処理制御部２０７は、利用者端末装置１０に検証実行通知を送信し（ステップＳ１１２）、図１２−３に示すステップＳ１２２に移行する。【０１２５】
続いて、図１２−２に示すように、利用者端末装置１０の検証処理制御部１０８は、認証局サーバ装置２０からアクセス拒否通知あるいは検証実行通知を受信する（ステップＳ１１４）。そして、検証処理制御部１０８は、受信した通知がアクセス拒否通知であるか否かを調べる（ステップＳ１１５）。【０１２６】
受信した通知がアクセス拒否通知であった場合には（ステップＳ１１５，Ｙｅｓ）、図１２−４に示すステップＳ１３６に移行して、利用者端末装置１０のアプリケーション導入管理部１０７は、アクセス拒否通知を受けた基盤アプリケーションをアプリケーションサーバ装置から取得する（ステップＳ１３６）。【０１２７】
そして、アプリケーション導入管理部１０７は、取得したアプリケーションのインストールを実行し（ステップＳ１３７）、図１２−１のステップＳ１０６に移行して、それ以後のアプリケーション検証処理を実行する。【０１２８】
図１２−２のステップＳ１１５において、受信した通知がアクセス拒否通知でなく、検証実行通知であった場合には（ステップＳ１１５，Ｎｏ）、利用者端末装置１０の依存アプリケーション抽出部１０４は、通知された検証アプリケーションと依存関係にある依存アプリケーションを抽出する（ステップＳ１１６）。【０１２９】
そして、利用者端末装置１０のアプリケーション検証部１０６は、通知された検証アプリケーションおよび抽出された依存アプリケーションの検証を実行する（ステップＳ１１７）。【０１３０】
続いて、利用者端末装置１０の検証／依存アプリケーションハッシュ値生成部１０５は、通知された検証アプリケーションおよび抽出された依存アプリケーションのハッシュ値の情報をアプリケーション拡張データ１０１ｄから取得する（ステップＳ１１８）。【０１３１】
そして、検証／依存アプリケーションハッシュ値生成部１０５は、取得したハッシュ値を連結し（ステップＳ１１９）、連結したハッシュ値に対するハッシュ値を生成する（ステップＳ１２０）。【０１３２】
その後、図１２−３に示すように、検証／依存アプリケーションハッシュ値生成部１０５は、図９に示したような、各アプリケーションの検証結果、および、生成されたハッシュ値の情報を含んだ検証要求８０を認証局サーバ装置２０に送信する（ステップＳ１２１）。【０１３３】
そして、認証局サーバ装置２０の検証処理制御部２０７は、利用者端末装置１０により送信された検証要求８０を受信し（ステップＳ１２２）、検証要求８０に含まれる検証アプリケーションおよび依存アプリケーションの検証結果が正常であるか否かを調べる（ステップＳ１２３）。【０１３４】
そして、検証結果が正常でない場合には（ステップＳ１２３，Ｎｏ）、図１２−４に示すステップＳ１３３に移行して、認証局サーバ装置２０の検証処理制御部２０７は、検証結果が正常でなかった検証アプリケーションまたは依存アプリケーションの情報を含むアクセス拒否通知を利用者端末装置１０に送信し（ステップＳ１３３）、図１２−１に示すステップＳ１０８に移行して、それ以後のアプリケーション検証処理を継続する。【０１３５】
そして、図１２−４に示すように、認証局サーバ装置２０によりアクセス拒否通知が送信されると、利用者端末装置１０の検証処理制御部１０８は、当該通知を受信し（ステップＳ１３４）、受信した通知がアクセス拒否通知であるか否かを調べる（ステップＳ１３５）。【０１３６】
この場合、受信した通知はアクセス拒否通知であるので（ステップＳ１３５，Ｙｅｓ）、利用者端末装置１０のアプリケーション導入管理部１０７は、アクセス拒否通知により検証結果が正常でなかったアプリケーションとして通知を受けた検証アプリケーションまたは依存アプリケーションをアプリケーションサーバ装置から取得する（ステップＳ１３６）。【０１３７】
そして、アプリケーション導入管理部１０７は、取得した検証アプリケーションまたは依存アプリケーションのインストールを実行し（ステップＳ１３７）、図１２−１のステップＳ１０６に移行して、それ以後のアプリケーション検証処理を実行する。【０１３８】
図１２−３のステップＳ１２３において、検証要求８０に含まれる検証アプリケーションおよび依存アプリケーションの検証結果が正常である場合には（ステップＳ１２３，Ｙｅｓ）、認証局サーバ装置２０のアプリケーション検証部２０３は、検証要求８０にアプリケーション検証情報として含まれている検証アプリケーションおよび依存アプリケーションのアプリケーション名、バージョン、リリース、アーキテクチャ種別の情報を抽出する（ステップＳ１２４）。【０１３９】
そして、アプリケーション検証部２０３は、抽出したアプリケーション名、バージョン、リリース、アーキテクチャ種別の情報と一致する情報がアプリケーション基本データ２０１ｂに登録されているか否かを調べる（ステップＳ１２５）。【０１４０】
そして、一致する情報がアプリケーション基本データ２０１ｂに登録されていない場合には（ステップＳ１２５，Ｎｏ）、図１２−４のステップＳ１３３に移行して、認証局サーバ装置２０の検証処理制御部２０７は、検証要求８０に検証結果の情報が含まれるアプリケーションすべてを正常でないものとして、それらのアプリケーションの情報を含んだアクセス拒否通知を利用者端末装置１０に送信し（ステップＳ１３３）、図１２−１に示すステップＳ１０８に移行して、それ以後のアプリケーション検証処理を継続する。【０１４１】
そして、図１２−４に示すように、認証局サーバ装置２０によりアクセス拒否通知が送信されると、利用者端末装置１０の検証処理制御部１０８は、当該通知を受信し（ステップＳ１３４）、受信した通知がアクセス拒否通知であるか否かを調べる（ステップＳ１３５）。【０１４２】
この場合、受信した通知はアクセス拒否通知であるので（ステップＳ１３５，Ｙｅｓ）、利用者端末装置１０のアプリケーション導入管理部１０７は、アクセス拒否通知により検証結果が正常でなかったアプリケーションとして通知を受けたアプリケーションすべてをアプリケーションサーバ装置から取得する（ステップＳ１３６）。【０１４３】
そして、アプリケーション導入管理部１０７は、取得した検証アプリケーションおよび依存アプリケーションのインストールを実行し（ステップＳ１３７）、図１２−１のステップＳ１０６に移行して、それ以後のアプリケーション検証処理を実行する。【０１４４】
図１２−３のステップＳ１２５において、一致する情報がアプリケーション基本データ２０１ｂに登録されている場合には（ステップＳ１２５，Ｙｅｓ）、検証／依存アプリケーションハッシュ値生成部２０４は、検証要求８０に検証結果の情報が含まれる各アプリケーションのハッシュ値の情報を、記憶部２０１にデータベースとして記憶されているアプリケーション拡張データ２０１ｃから読み込む（ステップＳ１２６）。【０１４５】
そして、検証／依存アプリケーションハッシュ値生成部２０４は、アプリケーション拡張データ２０１ｃから読み込んだハッシュ値を、検証要求８０に各アプリケーションのアプリケーション検証情報が登録されている順番で連結し（ステップＳ１２７）、連結されたハッシュ値に対するハッシュ値を生成する（ステップＳ１２８）。【０１４６】
その後、検証／依存アプリケーションハッシュ値比較部２０５は、検証／依存アプリケーションハッシュ値生成部２０４により生成されたハッシュ値と、利用者端末装置１０から受信した検証要求８０に含まれるハッシュ値とを比較し（ステップＳ１２９）、ハッシュ値が一致するか否かを調べる（ステップＳ１３０）。【０１４７】
ハッシュ値が一致しない場合には（ステップＳ１３０，Ｎｏ）、認証局サーバ装置２０の検証処理制御部２０７は、検証要求８０に検証結果の情報が含まれるアプリケーションすべてを正常でないものとして、それらのアプリケーションの情報を含んだアクセス拒否通知を利用者端末装置１０に送信する（ステップＳ１３３）。【０１４８】
そして、認証局サーバ装置２０によりアクセス拒否通知が送信されると、利用者端末装置１０の検証処理制御部１０８は、当該通知を受信し（ステップＳ１３４）、受信した通知がアクセス拒否通知であるか否かを調べる（ステップＳ１３５）。【０１４９】
この場合、受信した通知はアクセス拒否通知であるので（ステップＳ１３５，Ｙｅｓ）、利用者端末装置１０のアプリケーション導入管理部１０７は、アクセス拒否通知により検証結果が正常でなかったアプリケーションとして通知を受けたアプリケーションすべてをアプリケーションサーバ装置から取得する（ステップＳ１３６）。【０１５０】
そして、アプリケーション導入管理部１０７は、取得したアプリケーションのインストールを実行し（ステップＳ１３７）、図１２−１のステップＳ１０６に移行して、それ以後のアプリケーション検証処理を実行する。【０１５１】
図１２−４のステップＳ１３０において、ハッシュ値が一致した場合には（ステップＳ１３０，Ｙｅｓ）、認証局サーバ装置２０の検証処理制御部２０７は、利用者端末装置１０のアプリケーション環境が正常であったことを示す正常環境通知をネットワーク事業者サーバ装置３０に送信する（ステップＳ１３１）。【０１５２】
この正常環境通知を受信したネットワーク事業者サーバ装置３０は、利用者端末装置１０からネットワーク５０への接続要求を受信した場合に、利用者端末装置１０をネットワーク５０に接続させる。【０１５３】
そして、認証局サーバ装置２０の検証処理制御部２０７は、ネットワーク５０に対する接続を許可することを示すアクセス許可通知を利用者端末装置１０に送信し（ステップＳ１３２）、認証局サーバ装置２０側のアプリケーション検証処理を終了する。【０１５４】
その後、利用者端末装置１０の検証処理制御部１０８は、認証局サーバ装置２０からアクセス許可通知を受信し（ステップＳ１３４）、その通知がアクセス拒否通知であるか否かを調べる（ステップＳ１３５）。【０１５５】
この場合、通知はアクセス拒否通知ではないので（ステップＳ１３５，Ｎｏ）、そのまま利用者端末装置１０側のアプリケーション検証処理を終了する。その後、利用者端末装置１０は、ネットワーク事業者サーバ装置３０にネットワーク５０への接続要求を送信し、ネットワーク５０への接続処理をおこなう。【０１５６】
上記実施例で説明した各種の処理は、あらかじめ用意されたプログラムをコンピュータで実行することによって実現することができる。そこで、以下では、上記各種処理を実現するプログラムを実行するコンピュータの一例について説明する。【０１５７】
図１３は、図３あるいは図１０に示した利用者端末装置１０あるいは認証局サーバ装置２０となるコンピュータのハードウェア構成を示す図である。このコンピュータは、ユーザからのデータの入力を受け付ける入力装置９０、データを表示する表示装置９１、各種プログラムを記録した記録媒体からプログラムを読み取る媒体読取装置９２、ネットワークを介して他のコンピュータとの間でデータの授受をおこなうネットワークインターフェース９３、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）９４、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）９５、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）９６およびＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）９７をバス９８で接続して構成される。【０１５８】
そして、ＨＤＤ９７には、利用者端末装置１０あるいは認証局サーバ装置２０の機能と同様の機能を発揮するアプリケーション検証プログラム９７ｃが記憶されている。なお、アプリケーション検証プログラム９７ｃは、適宜分散して記憶することとしてもよい。そして、ＣＰＵ９６が、アプリケーション検証プログラム９７ｃをＨＤＤ９７から読み出して実行することにより、アプリケーション検証プロセス９６ａが起動される。【０１５９】
このアプリケーション検証プロセス９６ａは、図３に示した利用者端末装置１０のアプリケーション実行処理部１０２、基盤アプリケーションハッシュ値生成部１０３、依存アプリケーション抽出部１０４、検証／依存アプリケーションハッシュ値生成部１０５、アプリケーション検証部１０６、アプリケーション導入管理部１０７、検証処理制御部１０８の各機能部、あるいは、図１０に示した認証局サーバ装置２０の基盤アプリケーションハッシュ値比較部２０２、アプリケーション検証部２０３、検証／依存アプリケーションハッシュ値生成部２０４、検証／依存アプリケーションハッシュ値比較部２０５、検証結果通知部２０６、検証処理制御部２０７の各機能部に対応する。【０１６０】
また、ＨＤＤ９７には、各種データ９７ａおよび各種アプリケーション９７ｂが記憶される。各種データ９７ａは、図３に示した利用者端末装置１０の記憶部１０１に記憶されるユーザデータ１０１ｂ、アプリケーション基本データ１０１ｃ、アプリケーション拡張データ１０１ｄ、アプリケーション必要機能データ１０１ｅ、アプリケーション提供機能データ１０１ｆ、アプリケーション管理データ１０１ｇ、あるいは、認証局サーバ装置２０の記憶部２０１に記憶される検証設定データ２０１ａ、アプリケーション基本データ２０１ｂ、アプリケーション拡張データ２０１ｃ、アプリケーション必要機能データ２０１ｄ、アプリケーション提供機能データ２０１ｅに対応する。また、各種アプリケーション９７ｂは、図３に示した利用者端末装置１０の記憶部１０１に記憶されるアプリケーション１０１ａに対応する。【０１６１】
そして、ＣＰＵ９６は、各種データ９７ａあるいは各種アプリケーション９７ｂをＨＤＤ９７に記憶するとともに、各種データ９７ａあるいは各種アプリケーション９７ｂをＨＤＤ９７から読み出してＲＡＭ９４に格納し、ＲＡＭ９４に格納された各種データ９４ａあるいは各種アプリケーション９４ｂに基づいて各種データ処理を実行する。【０１６２】
ところで、アプリケーション検証プログラム９７ｃは、必ずしも最初からＨＤＤ９７に記憶させておく必要はない。たとえば、当該コンピュータに挿入されるフレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」、または、コンピュータの内外に備えられるハードディスクドライブ（ＨＤＤ）などの「固定用の物理媒体」、さらには、公衆回線、インターネット、ＬＡＮ、ＷＡＮなどを介してコンピュータに接続される「他のコンピュータ（またはサーバ）」などに各プログラムを記憶しておき、コンピュータがこれらから各プログラムを読み出して実行するようにしてもよい。【０１６３】
上述してきたように、本実施例では、利用者端末装置１０にインストールされた個々のアプリケーションの検証と各アプリケーション間の依存関係の情報収集とを含むクライアント側処理を当該利用者端末装置１０が実行し、クライアント側処理の結果に係る情報を受信して各アプリケーション間の依存関係の検証を認証局サーバ装置２０が実行し、アプリケーションの検証の結果および各アプリケーション間の依存関係の検証の結果に基づいて利用者端末装置１０が正常であるか否かを認証局サーバ装置２０が判定することとしたので、アプリケーションの検証を利用者端末装置１０と認証局サーバ装置２０とで分担しておこなうことにより、利用者の数が増加した場合でも、利用者端末装置１０の安全性を検証する認証局サーバ装置２０の負荷を軽減させることができる。【０１６４】
また、本実施例では、利用者端末装置１０にインストールされたアプリケーションの検証をおこなうアプリケーションの検証を認証局サーバ装置２０が実行し、検証の結果、異常が検出されなかった場合にクライアント側処理を実行することとしたので、利用者端末装置１０にインストールされたアプリケーションの検証をおこなうアプリケーションがそもそも正常であるか否かを検証することにより、アプリケーションの検証が不正なものとなることを防止することができる。【０１６５】
また、本実施例では、利用者端末装置１０にインストールされたアプリケーションの検証をおこなうアプリケーションに係るハッシュ値を利用者端末装置１０がハードウェア処理により生成し、生成されたハッシュ値の情報に基づいて認証局サーバ装置２０が当該アプリケーションの検証をおこなうこととしたので、ハッシュ値の生成をハードウェア処理でおこなうので、ソフトウェア処理によりハッシュ値を生成する場合のように不正にハッシュ値が生成される危険性が少なく、アプリケーションの検証を確実におこなうことができる。【０１６６】
また、本実施例では、利用者端末装置１０が、認証局サーバ装置２０から特定のアプリケーションの検証要求を受け付けた場合に、当該特定のアプリケーションとの間で依存関係を有するアプリケーションの情報を収集し、情報が収集されたアプリケーションの検証をおこなうこととしたので、検証すべきアプリケーションの情報を認証局サーバ装置２０がすべて管理する必要がなく、認証局サーバ装置２０の負荷を軽減することができる。【０１６７】
また、本実施例では、利用者端末装置１０が、依存関係の情報収集をおこなうアプリケーションの数の指定を認証局サーバ装置２０から受け付けて、認証局サーバ装置２０により指定された数のアプリケーションに係るハッシュ値を連結し、連結したハッシュ値に係るハッシュ値を生成して生成したハッシュ値の情報を認証局サーバ装置２０に送信し、認証局サーバ装置２０が、送信されたハッシュ値の情報に基づいて各アプリケーション間の依存関係の検証を実行することとしたので、たとえ利用者端末装置１０により送信されたハッシュ値の情報が盗み見られた場合でも、依存関係の情報収集をおこなうアプリケーションの数が変更されればハッシュ値が変化するので、リプライアタック等を抑止することができる。【０１６８】
また、本実施例では、認証局サーバ装置２０が、利用者端末装置１０を正常でないと判定した場合に、異常が検出されたアプリケーションの情報を利用者端末装置１０に送信することとしたので、利用者端末装置１０はどのアプリケーションに異常が検出されたかを確認することができる。【０１６９】
また、本実施例では、認証局サーバ装置２０により送信されたアプリケーションの情報を利用者端末装置１０が受信した場合に利用者端末装置１０が当該アプリケーションを取得して、取得したアプリケーションのインストールを実行することとしたので、異常が検出されたアプリケーションの再インストールを効果的に実行することができる。【０１７０】
また、本実施例では、利用者端末装置１０に導入された個々のアプリケーションの検証と各アプリケーション間の依存関係の情報収集とを含むクライアント側処理を当該利用者端末装置１０が実行し、クライアント側処理の結果に係る情報を、各アプリケーション間の依存関係の検証をおこない、かつ、アプリケーションの検証の結果および各アプリケーション間の依存関係の検証の結果に基づいて利用者端末装置１０が正常であるか否かを判定する認証局サーバ装置２０に利用者端末装置１０が送信することとしたので、アプリケーションの検証を利用者端末装置１０と認証局サーバ装置２０とで分担しておこなうことにより、サービス利用者の数が増加した場合でも、利用者端末装置１０の安全性を検証する認証局サーバ装置２０の負荷を軽減させることができる。【０１７１】
また、本実施例では、認証局サーバ装置２０が、利用者端末装置１０に導入された個々のアプリケーションの検証と各アプリケーション間の依存関係の情報収集とを含むクライアント側処理を当該利用者端末装置１０が実行した実行結果の情報を当該利用者端末装置１０から受信し、受信した情報に基づいて各アプリケーション間の依存関係の検証を認証局サーバ装置２０が実行し、アプリケーションの検証の結果および各アプリケーション間の依存関係の検証の結果に基づいて利用者端末装置１０が正常であるか否かを認証局サーバ装置２０が判定することとしたので、アプリケーションの検証を利用者端末装置１０と認証局サーバ装置２０とで分担しておこなうことにより、サービス利用者の数が増加した場合でも、利用者端末装置１０の安全性を検証する認証局サーバ装置２０の負荷を軽減させることができる。【０１７２】
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、特許請求の範囲に記載した技術的思想の範囲内において種々の異なる実施例にて実施されてもよいものである。【０１７３】
また、本実施例において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的におこなうこともでき、あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。【０１７４】
この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。【０１７５】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。【０１７６】
さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、ＣＰＵおよび当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【産業上の利用可能性】
【０１７７】
以上のように、本発明に係るコンピュータ資源検証方法およびコンピュータ資源検証プログラムは、サービス利用者の数が増加した場合に、利用者端末装置の安全性を検証する装置の負荷を軽減させることが必要なコンピュータ資源検証システムに有用である。
【図１】
2008026287.tif 000003
【図２】
2008026287.tif 000004
【図３】
2008026287.tif 000005
【図４】
2008026287.tif 000006
【図５】
2008026287.tif 000007
【図６】
2008026287.tif 000008
【図７】
2008026287.tif 000009
【図８】
2008026287.tif 000010
【図９】
2008026287.tif 000011
【図１０】
2008026287.tif 000012
【図１１】
2008026287.tif 000013
【図１２−１】
2008026287.tif 000014
【図１２−２】
2008026287.tif 000015
【図１２−３】
2008026287.tif 000016
【図１２−４】
2008026287.tif 000017
【図１３】
2008026287.tif 000018
【手続補正書】
【提出日】平成21年2月18日(2009.2.18)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
クライアント装置に導入されたコンピュータ資源の検証をおこなうコンピュータ資源検証方法であって、
前記クライアント装置に導入された個々のコンピュータ資源の検証と各コンピュータ資源間の依存関係の情報収集とを含むクライアント側処理を当該クライアント装置が実行するクライアント側処理実行工程と、
前記クライアント側処理実行工程によりなされたクライアント側処理の結果に係る情報を受信して各コンピュータ資源間の依存関係の検証をサーバ装置が実行するサーバ側処理実行工程と、
前記コンピュータ資源の検証の結果および各コンピュータ資源間の依存関係の検証の結果に基づいて前記クライアント装置が正常であるか否かを前記サーバ装置が判定する判定工程と、
を含んだことを特徴とするコンピュータ資源検証方法。
【請求項２】
前記クライアント装置に導入されたコンピュータ資源の検証をおこなうコンピュータ資源の検証を前記サーバ装置が実行する検証工程をさらに含み、前記クライアント側処理実行工程は、前記検証工程による検証の結果、異常が検出されなかった場合に前記クライアント側処理を実行することを特徴とする請求項１に記載のコンピュータ資源検証方法。
【請求項３】
前記クライアント装置に導入されたコンピュータ資源の検証をおこなうコンピュータ資源に係るハッシュ値を前記クライアント装置がハードウェア処理により生成するハッシュ値生成工程をさらに含み、前記検証工程は、前記ハッシュ値生成工程により生成されたハッシュ値の情報に基づいて当該コンピュータ資源の検証をおこなうことを特徴とする請求項２に記載のコンピュータ資源検証方法。
【請求項４】
前記クライアント側処理実行工程は、前記サーバ装置から特定のコンピュータ資源の検証要求を受け付けた場合に、当該特定のコンピュータ資源との間で依存関係を有するコンピュータ資源の情報を収集し、情報が収集されたコンピュータ資源の検証をおこなうことを特徴とする請求項１、２または３に記載のコンピュータ資源検証方法。
【請求項５】
前記クライアント側処理実行工程は、依存関係の情報収集をおこなうコンピュータ資源の数の指定を前記サーバ装置から受け付けて前記サーバ装置により指定された数のコンピュータ資源に係るハッシュ値を連結し、連結したハッシュ値に係るハッシュ値を生成して生成したハッシュ値の情報を前記サーバ装置に送信し、前記サーバ側処理実行工程は、送信されたハッシュ値の情報に基づいて各コンピュータ資源間の依存関係の検証を実行することを特徴とする請求項１、２または３に記載のコンピュータ資源検証方法。
【請求項６】
前記判定工程は、前記クライアント装置を正常でないと判定した場合に、異常が検出されたコンピュータ資源の情報を前記クライアント装置に送信することを特徴とする請求項１、２または３に記載のコンピュータ資源検証方法。
【請求項７】
前記判定工程により送信されたコンピュータ資源の情報を受信した場合に前記クライアント装置が当該コンピュータ資源を取得して、取得したコンピュータ資源のインストールを実行するインストール実行工程をさらに含んだことを特徴とする請求項６に記載のコンピュータ資源検証方法。
【請求項８】
クライアント装置に導入されたコンピュータ資源の検証をおこなうコンピュータ資源検証方法であって、
前記クライアント装置に導入された個々のコンピュータ資源の検証と各コンピュータ資源間の依存関係の情報収集とを含むクライアント側処理を当該クライアント装置が実行するクライアント側処理実行工程と、
前記クライアント側処理実行工程によりなされたクライアント側処理の結果に係る情報を、各コンピュータ資源間の依存関係の検証をおこない、かつ、前記コンピュータ資源の検証の結果および各コンピュータ資源間の依存関係の検証の結果に基づいて前記クライアント装置が正常であるか否かを判定するサーバ装置に前記クライアント装置が送信する情報送信工程と、
を含んだことを特徴とするコンピュータ資源検証方法。
【請求項９】
クライアント装置に導入されたコンピュータ資源の検証をおこなうコンピュータ資源検証方法であって、
前記クライアント装置に導入された個々のコンピュータ資源の検証と各コンピュータ資源間の依存関係の情報収集とを含むクライアント側処理を当該クライアント装置が実行した実行結果の情報を当該クライアント装置から受信する情報受信工程と、
前記情報受信工程により受信された情報に基づいて各コンピュータ資源間の依存関係の検証をサーバ装置が実行するサーバ側処理実行工程と、
前記コンピュータ資源の検証の結果および各コンピュータ資源間の依存関係の検証の結果に基づいて前記クライアント装置が正常であるか否かを前記サーバ装置が判定する判定工程と、
を含んだことを特徴とするコンピュータ資源検証方法。
【請求項１０】
クライアント装置に導入されたコンピュータ資源の検証をおこなうコンピュータ資源検証プログラムであって、
前記クライアント装置に導入された個々のコンピュータ資源の検証と各コンピュータ資源間の依存関係の情報収集とを含むクライアント側処理を当該クライアント装置が実行するクライアント側処理実行手順と、
前記クライアント側処理実行手順によりなされたクライアント側処理の結果に係る情報を受信して各コンピュータ資源間の依存関係の検証をサーバ装置が実行するサーバ側処理実行手順と、
前記コンピュータ資源の検証の結果および各コンピュータ資源間の依存関係の検証の結果に基づいて前記クライアント装置が正常であるか否かを前記サーバ装置が判定する判定手順と、
をコンピュータに実行させることを特徴とするコンピュータ資源検証プログラム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、クライアント装置に導入されたコンピュータ資源の検証をおこなうコンピュータ資源検証方法およびコンピュータ資源検証プログラムに関し、特に、サービス利用者の数が増加した場合でも、クライアント装置の安全性を検証するサーバ装置の負荷を軽減させることができるコンピュータ資源検証方法およびコンピュータ資源検証プログラムに関する。
【背景技術】
【０００２】
従来、サービス提供者のサービス提供装置から利用者端末装置にネットワークを介してサービスを提供する場合に、サービスの安全性を確保すべく、利用者端末装置に係るハードウェアやソフトウェアなどの環境を検証した上でサービスを提供する技術が提案されている。
【０００３】
たとえば、サービス提供装置において、利用者端末装置に係る環境情報（利用者端末装置に組み込まれているソフトウェア（ＯＳ、ＢＩＯＳ、ブラウザ、プラグインソフトウェア等）やハードウェア（ＣＰＵ、メモリ、ＰＣＩボード等）、利用者端末装置に接続されているハードウェアなどの情報）を利用者端末装置から取得した上で、利用者端末装置に安全性を損なうソフトウェア（たとえば、セキュリティホールがケアされていないもの）やハードウェアが組み込まれていないか、利用者端末装置に安全性を損なうハードウェアが接続されていないか等を確認し、不正コピーのおそれなどから安全性を確保できない利用者端末装置に対してはサービスの提供を拒否する技術が開示されている（特許文献１を参照）。
【０００４】
【特許文献１】特開２００４−１５７７９０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述した従来技術では、サービスの利用者が増加し、環境を検証する対象となる利用者端末装置の数が多くなった場合には、サービス提供装置に多大な負荷が発生してしまうという問題があった。
【０００６】
すなわち、サービス提供者にとっては、サービスの利用者が増えることは望ましいことであるが、利用者が増えるとそれだけ安全性を確認する利用者端末装置の数も増加し、それに対応するためには安全性を確認するサービス提供装置を増強する必要があるので高いコストが発生してしまう。そのため、サービスの利用者数が増加した場合でも、利用者端末装置の安全性を検証する装置の負荷をいかにして軽減させることができるかが重要な課題となってきている。
【０００７】
本発明は、上記に鑑みてなされたものであって、サービスの利用者数が増加した場合でも、利用者端末装置の安全性を検証する装置の負荷を軽減させることができるコンピュータ資源検証方法およびコンピュータ資源検証プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上述した課題を解決し、目的を達成するために、本発明は、クライアント装置に導入されたコンピュータ資源の検証をおこなうコンピュータ資源検証方法であって、前記クライアント装置に導入された個々のコンピュータ資源の検証と各コンピュータ資源間の依存関係の情報収集とを含むクライアント側処理を当該クライアント装置が実行するクライアント側処理実行工程と、前記クライアント側処理実行工程によりなされたクライアント側処理の結果に係る情報を受信して各コンピュータ資源間の依存関係の検証をサーバ装置が実行するサーバ側処理実行工程と、前記コンピュータ資源の検証の結果および各コンピュータ資源間の依存関係の検証の結果に基づいて前記クライアント装置が正常であるか否かを前記サーバ装置が判定する判定工程と、を含んだことを特徴とする。
【０００９】
また、本発明は、上記発明において、前記クライアント装置に導入されたコンピュータ資源の検証をおこなうコンピュータ資源の検証を前記サーバ装置が実行する検証工程をさらに含み、前記クライアント側処理実行工程は、前記検証工程による検証の結果、異常が検出されなかった場合に前記クライアント側処理を実行することを特徴とする。
【００１０】
また、本発明は、上記発明において、前記クライアント装置に導入されたコンピュータ資源の検証をおこなうコンピュータ資源に係るハッシュ値を前記クライアント装置がハードウェア処理により生成するハッシュ値生成工程をさらに含み、前記検証工程は、前記ハッシュ値生成工程により生成されたハッシュ値の情報に基づいて当該コンピュータ資源の検証をおこなうことを特徴とする。
【００１１】
また、本発明は、上記発明において、前記クライアント側処理実行工程は、前記サーバ装置から特定のコンピュータ資源の検証要求を受け付けた場合に、当該特定のコンピュータ資源との間で依存関係を有するコンピュータ資源の情報を収集し、情報が収集されたコンピュータ資源の検証をおこなうことを特徴とする。
【００１２】
また、本発明は、上記発明において、前記クライアント側処理実行工程は、依存関係の情報収集をおこなうコンピュータ資源の数の指定を前記サーバ装置から受け付けて前記サーバ装置により指定された数のコンピュータ資源に係るハッシュ値を連結し、連結したハッシュ値に係るハッシュ値を生成して生成したハッシュ値の情報を前記サーバ装置に送信し、前記サーバ側処理実行工程は、送信されたハッシュ値の情報に基づいて各コンピュータ資源間の依存関係の検証を実行することを特徴とする。
【００１３】
また、本発明は、上記発明において、前記判定工程は、前記クライアント装置を正常でないと判定した場合に、異常が検出されたコンピュータ資源の情報を前記クライアント装置に送信することを特徴とする。
【００１４】
また、本発明は、上記発明において、前記判定工程により送信されたコンピュータ資源の情報を受信した場合に前記クライアント装置が当該コンピュータ資源を取得して、取得したコンピュータ資源のインストールを実行するインストール実行工程をさらに含んだことを特徴とする。
【００１５】
また、本発明は、クライアント装置に導入されたコンピュータ資源の検証をおこなうコンピュータ資源検証方法であって、前記クライアント装置に導入された個々のコンピュータ資源の検証と各コンピュータ資源間の依存関係の情報収集とを含むクライアント側処理を当該クライアント装置が実行するクライアント側処理実行工程と、前記クライアント側処理実行工程によりなされたクライアント側処理の結果に係る情報を、各コンピュータ資源間の依存関係の検証をおこない、かつ、前記コンピュータ資源の検証の結果および各コンピュータ資源間の依存関係の検証の結果に基づいて前記クライアント装置が正常であるか否かを判定するサーバ装置に前記クライアント装置が送信する情報送信工程と、を含んだことを特徴とする。
【００１６】
また、本発明は、クライアント装置に導入されたコンピュータ資源の検証をおこなうコンピュータ資源検証方法であって、前記クライアント装置に導入された個々のコンピュータ資源の検証と各コンピュータ資源間の依存関係の情報収集とを含むクライアント側処理を当該クライアント装置が実行した実行結果の情報を当該クライアント装置から受信する情報受信工程と、前記情報受信工程により受信された情報に基づいて各コンピュータ資源間の依存関係の検証をサーバ装置が実行するサーバ側処理実行工程と、前記コンピュータ資源の検証の結果および各コンピュータ資源間の依存関係の検証の結果に基づいて前記クライアント装置が正常であるか否かを前記サーバ装置が判定する判定工程と、を含んだことを特徴とする。
【００１７】
また、本発明は、クライアント装置に導入されたコンピュータ資源の検証をおこなうコンピュータ資源検証プログラムであって、前記クライアント装置に導入された個々のコンピュータ資源の検証と各コンピュータ資源間の依存関係の情報収集とを含むクライアント側処理を当該クライアント装置が実行するクライアント側処理実行手順と、前記クライアント側処理実行手順によりなされたクライアント側処理の結果に係る情報を受信して各コンピュータ資源間の依存関係の検証をサーバ装置が実行するサーバ側処理実行手順と、前記コンピュータ資源の検証の結果および各コンピュータ資源間の依存関係の検証の結果に基づいて前記クライアント装置が正常であるか否かを前記サーバ装置が判定する判定手順と、をコンピュータに実行させることを特徴とする。
【発明の効果】
【００１８】
本発明によれば、クライアント装置に導入された個々のコンピュータ資源の検証と各コンピュータ資源間の依存関係の情報収集とを含むクライアント側処理を当該クライアント装置が実行し、クライアント側処理の結果に係る情報を受信して各コンピュータ資源間の依存関係の検証をサーバ装置が実行し、コンピュータ資源の検証の結果および各コンピュータ資源間の依存関係の検証の結果に基づいてクライアント装置が正常であるか否かをサーバ装置が判定することとしたので、コンピュータ資源の検証をクライアント装置とサーバ装置とで分担しておこなうことにより、サービス利用者の数が増加した場合でも、クライアント装置の安全性を検証するサーバ装置の負荷を軽減させることができるという効果を奏する。
【００１９】
また、本発明によれば、クライアント装置に導入されたコンピュータ資源の検証をおこなうコンピュータ資源の検証をサーバ装置が実行し、検証の結果、異常が検出されなかった場合にクライアント側処理を実行することとしたので、クライアント装置に導入されたコンピュータ資源の検証をおこなうコンピュータ資源がそもそも正常であるか否かを検証することにより、コンピュータ資源の検証が不正なものとなることを防止することができるという効果を奏する。
【００２０】
また、本発明によれば、クライアント装置に導入されたコンピュータ資源の検証をおこなうコンピュータ資源に係るハッシュ値をクライアント装置がハードウェア処理により生成し、生成されたハッシュ値の情報に基づいてサーバ装置が当該コンピュータ資源の検証をおこなうこととしたので、ハッシュ値の生成をハードウェア処理でおこなうので、ソフトウェア処理によりハッシュ値を生成する場合のように不正にハッシュ値が生成される危険性が少なく、コンピュータ資源の検証を確実におこなうことができるという効果を奏する。
【００２１】
また、本発明によれば、クライアント装置が、サーバ装置から特定のコンピュータ資源の検証要求を受け付けた場合に、当該特定のコンピュータ資源との間で依存関係を有するコンピュータ資源の情報を収集し、情報が収集されたコンピュータ資源の検証をおこなうこととしたので、検証すべきコンピュータ資源の情報をサーバ装置がすべて管理する必要がなく、サーバ装置の負荷を軽減することができるという効果を奏する。
【００２２】
また、本発明によれば、クライアント装置が、依存関係の情報収集をおこなうコンピュータ資源の数の指定をサーバ装置から受け付けて、サーバ装置により指定された数のコンピュータ資源に係るハッシュ値を連結し、連結したハッシュ値に係るハッシュ値を生成して生成したハッシュ値の情報をサーバ装置に送信し、サーバ装置が、送信されたハッシュ値の情報に基づいて各コンピュータ資源間の依存関係の検証を実行することとしたので、たとえクライアント装置により送信されたハッシュ値の情報が盗み見られた場合でも、依存関係の情報収集をおこなうコンピュータ資源の数が変更されればハッシュ値が変化するので、リプライアタック等を抑止することができるという効果を奏する。
【００２３】
また、本発明によれば、サーバ装置が、クライアント装置を正常でないと判定した場合に、異常が検出されたコンピュータ資源の情報をクライアント装置に送信することとしたので、クライアント装置はどのコンピュータ資源に異常が検出されたかを確認することができるという効果を奏する。
【００２４】
また、本発明によれば、サーバ装置により送信されたコンピュータ資源の情報をクライアント装置が受信した場合にクライアント装置が当該コンピュータ資源を取得して、取得したコンピュータ資源のインストールを実行することとしたので、異常が検出されたコンピュータ資源の再インストールを効果的に実行することができるという効果を奏する。
【００２５】
また、本発明によれば、クライアント装置に導入された個々のコンピュータ資源の検証と各コンピュータ資源間の依存関係の情報収集とを含むクライアント側処理を当該クライアント装置が実行し、クライアント側処理の結果に係る情報を、各コンピュータ資源間の依存関係の検証をおこない、かつ、コンピュータ資源の検証の結果および各コンピュータ資源間の依存関係の検証の結果に基づいてクライアント装置が正常であるか否かを判定するサーバ装置にクライアント装置が送信することとしたので、コンピュータ資源の検証をクライアント装置とサーバ装置とで分担しておこなうことにより、サービス利用者の数が増加した場合でも、クライアント装置の安全性を検証するサーバ装置の負荷を軽減させることができるという効果を奏する。
【００２６】
また、本発明によれば、サーバ装置が、クライアント装置に導入された個々のコンピュータ資源の検証と各コンピュータ資源間の依存関係の情報収集とを含むクライアント側処理を当該クライアント装置が実行した実行結果の情報を当該クライアント装置から受信し、受信した情報に基づいて各コンピュータ資源間の依存関係の検証をサーバ装置が実行し、コンピュータ資源の検証の結果および各コンピュータ資源間の依存関係の検証の結果に基づいてクライアント装置が正常であるか否かをサーバ装置が判定することとしたので、コンピュータ資源の検証をクライアント装置とサーバ装置とで分担しておこなうことにより、サービス利用者の数が増加した場合でも、クライアント装置の安全性を検証するサーバ装置の負荷を軽減させることができるという効果を奏する。
【発明を実施するための最良の形態】
【００２７】
以下に、本発明に係るコンピュータ資源検証方法およびコンピュータ資源検証プログラムの実施例を図面に基づいて詳細に説明する。なお、ここでは、コンピュータ資源として利用者端末装置にインストールされているアプリケーションプログラムを検証する場合について説明するが、アプリケーションプログラムに加えてさらにハードウェアの検証をおこなうこととしてもよい。
【実施例】
【００２８】
まず、本発明に係るアプリケーション検証システムについて説明する。図１は、本発明に係るアプリケーション検証システムを説明する図である。このアプリケーション検証システムは、利用者端末装置１０、認証局サーバ装置２０、および、ネットワーク事業者サーバ装置３０がそれぞれネットワーク４０に接続され、ネットワーク事業者サーバ装置３０はさらにネットワーク５０に接続されている。
【００２９】
利用者端末装置１０は、各種のアプリケーションプログラム（以下、アプリケーションプログラムを単にアプリケーションと呼ぶ。）がインストールされたパーソナルコンピュータなどの端末装置であり、ネットワーク事業者サーバ装置３０を介してネットワーク５０に接続し、データの授受をおこなう端末装置である。
【００３０】
認証局サーバ装置２０は、ネットワーク５０に接続するためのアプリケーションが利用者端末装置１０に適切にインストールされているか否か、アプリケーションが改竄されていないか否かの認証をおこない、利用者端末装置１０のアプリケーション環境が正常であると判定した場合にのみ、ネットワーク事業者サーバ装置３０に対して利用者端末装置１０のアプリケーション環境が正常であるとの通知をおこなうサーバ装置である。
【００３１】
ネットワーク事業者サーバ装置３０は、利用者端末装置１０からネットワーク５０に対する接続要求を受け付けた場合に、利用者端末装置１０のアプリケーション環境が正常であるか否かに基づいて、ネットワーク５０に対する利用者端末装置１０の接続制御をおこなうサーバ装置である。
【００３２】
ここで、利用者端末装置１０は、アプリケーション検証部１０６を備えている。利用者端末装置１０がネットワーク５０に接続しようとする場合には、このアプリケーション検証部１０６は、認証局サーバ装置２０から検証すべき検証アプリケーションの情報を取得して、検証アプリケーションと依存関係を有する依存アプリケーションを抽出し、検証アプリケーションおよび依存アプリケーションの検証をおこなう。
【００３３】
図２は、基盤アプリケーション、検証アプリケーション、および、依存アプリケーションについて説明する図である。基盤アプリケーション６０ａ，６０ｂとは、アプリケーションの検証をおこなう場合に、前もって検証すべきアプリケーションのことである。たとえば、基盤アプリケーション６０ａ，６０ｂとしては、他のアプリケーションの検証をおこなう検証用のアプリケーションなどが挙げられる。
【００３４】
検証アプリケーション６１とは、ネットワーク５０に接続するために、利用者端末装置１０に正常にインストールされなくてはならないアプリケーションであり、認証局サーバ装置２０により検証すべきアプリケーションとして指定されたアプリケーションである。依存アプリケーション６２ａ〜６２ｅとは、検証アプリケーション６１が機能するために必要とされるアプリケーションである。
【００３５】
検証アプリケーション６１と依存アプリケーション６２ａ〜６２ｅとは、階層構造を形成している。図２の例では、検証アプリケーション６１が機能するためには、依存アプリケーション６２ａ，６２ｂが必要であり、依存アプリケーション６２ａが機能するためには、依存アプリケーション６２ｃが必要であり、依存アプリケーション６２ｂが機能するためには、依存アプリケーション６２ｄ，６２ｅが必要である場合が示されている。
【００３６】
図１の説明に戻ると、検証アプリケーションおよび依存アプリケーションの検証後、アプリケーション検証部１０６は、その検証結果（アプリケーション検証結果）の情報と、アプリケーション間の依存関係の情報（アプリケーション依存関係情報）とを認証局サーバ装置２０に送信する（図１の（１）に対応する）。
【００３７】
ここで、アプリケーション間の依存関係の情報としては、検証アプリケーションおよび検証アプリケーションと依存関係を有する依存アプリケーションのそれぞれのハッシュ値を連結し、その連結したハッシュ値から生成されたハッシュ値の情報などが含まれる。
【００３８】
一方、認証局サーバ装置２０は、アプリケーション検証部２０３および検証／依存アプリケーションハッシュ値比較部２０５を備えている。そして、アプリケーション検証結果の情報、および、アプリケーション依存関係情報を利用者端末装置１０から受信した場合には、アプリケーション検証部２０３は、利用者端末装置１０により送信されたアプリケーション検証結果に対応する検証アプリケーションおよび依存アプリケーションが、正当な検証アプリケーションおよび依存アプリケーションの情報が登録された認証局サーバ装置２０のデータベースに登録されているか否かを調べることにより、アプリケーション間の依存関係の検証をおこなう。
【００３９】
また、検証／依存アプリケーションハッシュ値比較部２０５は、利用者端末装置１０により送信されたハッシュ値の情報を取得し、取得したハッシュ値と、検証アプリケーションおよび依存アプリケーションの正当なハッシュ値を連結することにより生成されたハッシュ値とを比較することにより、アプリケーション間の依存関係の検証をおこなう。
【００４０】
利用者端末装置１０によりなされたアプリケーションに係る検証の結果に問題がなく、利用者端末装置１０により抽出された依存アプリケーションの情報が認証局サーバ装置２０のデータベースに登録されており、利用者端末装置１０により送信されたハッシュ値の情報が、認証局サーバ装置２０により正当なアプリケーションのハッシュ値から生成されたハッシュ値と一致する場合には、認証局サーバ装置２０は、ネットワーク事業者サーバ装置３０に対して、利用者端末装置１０のアプリケーション環境が正常であることを示す正常環境通知を送信する（図１の（２）に対応する）。
【００４１】
正常環境通知を受信したネットワーク事業者サーバ装置３０は、利用者端末装置１０からネットワーク５０に対する接続要求を受け付けた場合に、認証局サーバ装置２０からその利用者端末装置１０に対応する正常環境通知を受信しているか否かを判定し、正常環境通知を受信している場合にのみ、利用者端末装置１０をネットワーク５０に接続させる（図１の（３）に対応する）。
【００４２】
このように、認証局サーバ装置２０側ですべての検証をおこなうのではなく、利用者端末装置１０に個々のアプリケーションの検証を実行させ、認証局サーバ装置２０はアプリケーション間の依存関係を検証することにより、認証精度を高水準に維持したまま、認証局サーバ装置２０の処理にかかる負荷を軽減することができる。
【００４３】
つぎに、図１に示した利用者端末装置１０の機能構成について説明する。図３は、図１に示した利用者端末装置１０の機能構成を示す図である。図３に示すように、この利用者端末装置１０は、通信処理部１００、記憶部１０１、アプリケーション実行処理部１０２、基盤アプリケーションハッシュ値生成部１０３、依存アプリケーション抽出部１０４、検証／依存アプリケーションハッシュ値生成部１０５、アプリケーション検証部１０６、アプリケーション導入管理部１０７、検証処理制御部１０８を有する。
【００４４】
通信処理部１００は、認証局サーバ装置２０やネットワーク事業者サーバ装置３０との間でネットワーク４０を介してデータ通信をおこなうネットワークインターフェースである。
【００４５】
記憶部１０１は、ハードディスク装置などの記憶デバイスである。この記憶部１０１は、アプリケーション１０１ａ、ユーザデータ１０１ｂ、アプリケーション基本データ１０１ｃ、アプリケーション拡張データ１０１ｄ、アプリケーション必要機能データ１０１ｅ、アプリケーション提供機能データ１０１ｆ、アプリケーション管理データ１０１ｇを記憶している。
【００４６】
アプリケーション１０１ａは、利用者端末装置１０で利用されるアプリケーションプログラムである。このアプリケーション１０１ａには、図２で説明したような、基盤アプリケーション、検証アプリケーション、依存アプリケーションが含まれる。ユーザデータ１０１ｂは、利用者端末装置１０の利用者が作成した個人データである。
【００４７】
アプリケーション基本データ１０１ｃは、利用者端末装置１０にインストールされている各アプリケーションの基本データである。図４は、図３に示したアプリケーション基本データ１０１ｃの一例を示す図である。
【００４８】
図４に示すように、アプリケーション基本データ１０１ｃには、アプリケーション識別子、アプリケーション名、バージョン、リリース、アーキテクチャ種別の情報が登録されている。
【００４９】
アプリケーション識別子は、各アプリケーションを一意に識別する識別子である。アプリケーション名は、各アプリケーションの名称である。バージョンおよびリリースは、各アプリケーションのバージョンおよび同一バーションにおけるリリース番号である。アーキテクチャ種別は、各アプリケーションが対応しているコンピュータアーキテクチャの情報である。
【００５０】
図３の説明に戻ると、アプリケーション拡張データ１０１ｄは、利用者端末装置１０にインストールされている各アプリケーションの拡張データである。図５は、図３に示したアプリケーション拡張データ１０１ｄの一例を示す図である。
【００５１】
図５に示すように、アプリケーション拡張データ１０１ｄには、アプリケーション識別子、ハッシュ値、パッケージＩＤの情報が登録されている。アプリケーション識別子は、図４で説明したアプリケーション識別子と同様のものであり、各アプリケーションを一意に識別する識別子である。ハッシュ値は、各アプリケーションが含まれているソフトウェアパッケージのハッシュ値である。パッケージＩＤは、各アプリケーションが含まれているソフトウェアパッケージを一意に識別するＩＤである。
【００５２】
図３の説明に戻ると、アプリケーション必要機能データ１０１ｅは、各アプリケーションが機能するために必要とされる他のアプリケーションに係るデータである。図６は、図３に示したアプリケーション必要機能データ１０１ｅの一例を示す図である。
【００５３】
図６に示すように、アプリケーション必要機能データ１０１ｅには、アプリケーション識別子および必要機能情報が登録されている。アプリケーション識別子は、図４で説明したアプリケーション識別子と同様のものであり、各アプリケーションを一意に識別する識別子である。
【００５４】
必要機能情報は、各アプリケーションが機能するために必要とされる他のアプリケーションの情報である。この必要機能情報には、シンボル名、バージョン、符号の情報が登録されている。
【００５５】
シンボル名は、各アプリケーションが機能するために必要とされる他のアプリケーションの名称である。バージョンは、各アプリケーションが機能するために最低限必要とされる他のアプリケーションのバージョンである。符号は、各アプリケーションが機能するために必要とされる他のアプリケーションのバージョンの範囲を定義するものである。
【００５６】
たとえば、符号「＝」は、当該アプリケーションが、上記バージョンと同一のバージョンのアプリケーションを必要とすることを示している。また、符号「＝＜」は、当該アプリケーションが、上記バージョン以降のバージョンのアプリケーションを必要とすることを示している。また、符号「＞＝」は、当該アプリケーションが、上記バージョン以前のバージョンのアプリケーションを必要とすることを示している。
【００５７】
図３の説明に戻ると、アプリケーション提供機能データ１０１ｆは、各アプリケーションが提供する機能に係るデータである。図７は、図３に示したアプリケーション提供機能データ１０１ｆの一例を示す図である。
【００５８】
図７に示すように、アプリケーション提供機能データ１０１ｆには、アプリケーション識別子および提供機能情報が登録されている。アプリケーション識別子は、図４で説明したアプリケーション識別子と同様のものであり、各アプリケーションを一意に識別する識別子である。提供機能情報は、各アプリケーションが提供する機能の情報である。この提供機能情報には、シンボル名、バージョン、符号の情報が登録されている。
【００５９】
シンボル名は、各アプリケーションが提供する機能に対応するアプリケーションの名称である。バージョンは、各アプリケーションが提供する機能に対応するアプリケーションのバージョンである。符号は、各アプリケーションが提供する機能に対応するアプリケーションのバージョンの範囲を定義するものである。
【００６０】
たとえば、符号「＝」は、当該アプリケーションが、上記バージョンと同一のバージョンのアプリケーションの機能を提供することを示している。また、符号「＝＜」は、当該アプリケーションが、上記バージョン以降のバージョンのアプリケーションの機能を提供することを示している。また、符号「＞＝」は、当該アプリケーションが、上記バージョン以前のバージョンのアプリケーションの機能を提供することを示している。
【００６１】
アプリケーション管理データ１０１ｇは、利用者端末装置１０にインストールされている各アプリケーションの管理情報を記憶したデータである。このアプリケーション管理データ１０１ｂには、各アプリケーションのファイルサイズ、ハッシュ値、読み／書き／実行が許可されているか否かを示す許可属性、ファイルタイプ、ファイルの修正時刻、デバイスファイル、シンボリックリンク、ファイルの所有者、ファイルを所有するグループの情報が登録されている。
【００６２】
図３の説明に戻ると、アプリケーション実行処理部１０２は、記憶部１０１に記憶されているアプリケーション１０１ａを読み出してアプリケーションを実行する処理部である。基盤アプリケーションハッシュ値生成部１０３は、基盤アプリケーションのハッシュ値を生成するハードウェア回路である。
【００６３】
ハッシュ値を生成する基盤アプリケーションの情報は、検証処理制御部１０８が認証局サーバ装置２０に検証対象となるアプリケーションの通知要求を送信した場合に、認証局サーバ装置２０により送信される通知要求応答に含まれている。
【００６４】
図８は、認証局サーバ装置２０により送信される通知要求応答７０について説明する図である。図８に示すように、この通知要求応答７０には、データタイプ、検証階層、検証最大数、基盤／検証アプリケーション情報が含まれる。
【００６５】
データタイプは、このデータが通知要求応答７０であることを示す識別情報である。検証階層は、利用者端末装置１０にインストールされているアプリケーションの依存関係を検証する際の検証すべき依存関係の階層の情報である。
【００６６】
たとえば、図２の例において検証階層が「２」と指定された場合には、２階層分（検証アプリケーション６１および依存アプリケーション６２ａ，６２ｂを含む階層）のアプリケーションの依存関係が抽出される。
【００６７】
検証最大数は、依存関係を有するアプリケーションのハッシュ値を連結し、連結したハッシュ値のハッシュ値を用いてアプリケーションの依存関係の検証をおこなう場合の、連結するハッシュ値の数の情報である。
【００６８】
基盤／検証アプリケーション情報は、検証対象となる検証アプリケーションおよび基盤アプリケーションの情報である。ここでは、基盤アプリケーションは１つまたは複数指定され、検証アプリケーションは１つだけ指定される。
【００６９】
図３の説明に戻ると、依存アプリケーション抽出部１０４は、図８に示した通知要求応答７０により認証局サーバ装置２０から検証すべき検証アプリケーションの指定を受け付けた場合に、記憶部１０１に記憶されたアプリケーション基本データ１０１ｃ、アプリケーション必要機能データ１０１ｅ、アプリケーション提供機能データ１０１ｆを読み出して、アプリケーション必要機能データ１０１ｅの必要機能情報およびアプリケーション提供機能データ１０１ｆの提供機能情報を辿ることによりアプリケーション間の依存関係を抽出する抽出部である。
【００７０】
その際、依存アプリケーション抽出部１０４は、通知要求応答７０に含まれる検証階層および検証最大数の情報を取得し、依存関係の階層が検証階層を越えるか、あるいは、認証局サーバ装置２０により指定された検証アプリケーションの数（ここでは、１つ）と、当該検証アプリケーションと依存関係がある依存アプリケーションとの数の和が検証最大数となるまで、検証アプリケーションと依存関係がある依存アプリケーションを抽出する。
【００７１】
ここで、図４、図６、図７に示した例において、検証階層が「２」であり、検証最大数が「３」である場合について考える。アプリケーション「Ａ」は、アプリケーション基本データ１０１ｃおよびアプリケーション必要機能データ１０１ｅから分かるように、バージョンが「２．３．５」以降のシンボル名が「Ｄ」の機能と、バージョンが「１．５」以降のシンボル名が「Ｅ」の機能とを必要としている。
【００７２】
また、アプリケーション基本データ１０１ｃおよびアプリケーション提供機能データ１０１ｆから分かるように、アプリケーション「Ｂ」は、バージョンが「２．３．６」のシンボル名が「Ｄ」の機能を提供することができ、また、アプリケーション「Ｃ」は、バージョンが「１．５」のシンボル名が「Ｅ」の機能を提供することができる。
【００７３】
これにより、アプリケーション「Ａ」は、アプリケーション「Ｂ」およびアプリケーション「Ｃ」に依存していると判定されるので、アプリケーション「Ｂ」およびアプリケーション「Ｃ」はアプリケーション「Ａ」の依存アプリケーションとなる。
【００７４】
また、この時点で検証アプリケーションおよび依存アプリケーションの数が「３」で検証最大数と等しくなったため、依存アプリケーション抽出部１０４は、依存関係の抽出を終了する。このようにして、依存アプリケーション抽出部１０４は、アプリケーション間の依存関係を抽出する。
【００７５】
検証／依存アプリケーションハッシュ値生成部１０５は、依存アプリケーション抽出部１０４がアプリケーション間の依存関係を抽出した場合に、依存アプリケーション抽出部１０４により依存関係が抽出された各アプリケーションのハッシュ値を、図５に示したアプリケーション拡張データ１０１ｄから読み出して連結し、連結したハッシュ値のハッシュ値を生成する生成部である。
【００７６】
アプリケーション検証部１０６は、依存アプリケーション抽出部１０４により依存関係が抽出された各アプリケーションのファイルの検証をおこなう検証部である。具体的には、アプリケーション検証部１０６は、アプリケーションのファイルサイズ、ハッシュ値、許可属性、ファイルタイプ、修正時刻、デバイスファイル、シンボリックリンク、所有者、グループが、アプリケーション管理データ１０１ｇに登録されているファイルサイズ、ハッシュ値、許可属性、ファイルタイプ、修正時刻、デバイスファイル、シンボリックリンク、所有者、グループの情報とそれぞれ一致するか否かを調べることにより各アプリケーションの検証をおこなう。
【００７７】
アプリケーション導入管理部１０７は、図示しないアプリケーションサーバ装置からアプリケーションを含むパッケージソフトウェアを受信し、利用者端末装置１０にインストールする管理部である。
【００７８】
具体的には、アプリケーション導入管理部１０７は、アプリケーションサーバ装置から受信したパッケージソフトウェアを展開し、記憶部１０１にアプリケーション１０１ａとして記憶するとともに、アプリケーション１０１ａが使用可能となるようにＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）などに対する環境設定をおこなうインストール処理を実行する。
【００７９】
また、アプリケーション導入管理部１０７は、認証局サーバ装置２０から検証結果が正常でないアプリケーションの情報を受信した場合に、そのアプリケーションを含むパッケージソフトウェアをアプリケーションサーバ装置から受信し、アプリケーションのインストールを実行する。
【００８０】
アプリケーションをインストールした場合には、アプリケーション導入管理部１０７は、アプリケーション基本データ１０１ｃ、アプリケーション拡張データ１０１ｄ、アプリケーション必要機能データ１０１ｅ、アプリケーション提供機能データ１０１ｆ、および、アプリケーション管理データ１０１ｇに、当該アプリケーションに係る情報を登録する処理をおこなう。
【００８１】
検証処理制御部１０８は、記憶部１０１、基盤アプリケーションハッシュ値生成部１０３、依存アプリケーション抽出部１０４、検証／依存アプリケーションハッシュ値生成部１０５、アプリケーション検証部１０６、アプリケーション導入管理部１０７間のデータの授受を司る制御部である。また、検証処理制御部１０８は、認証局サーバ装置２０との間で利用者端末装置１０におけるアプリケーション環境の検証処理に係る種々の情報を送受信する。
【００８２】
具体的には、検証処理制御部１０８は、アプリケーション環境の検証を開始する際に、認証局サーバ装置２０に検証対象となるアプリケーションの通知要求を、自装置を識別する識別情報とともに送信する。また、検証処理制御部１０８は、図８で説明した通知要求応答７０を認証局サーバ装置２０から受信する。
【００８３】
さらに、検証処理制御部１０８は、基盤アプリケーションハッシュ値生成部１０３により生成された基盤アプリケーションのハッシュ値を認証局サーバ装置２０に送信する処理をおこなう。
【００８４】
また、検証処理制御部１０８は、認証局サーバ装置２０に対して、アプリケーション検証部１０６によりなされたアプリケーションの検証結果と、検証／依存アプリケーションハッシュ値生成部１０５により生成されたハッシュ値の情報とを含んだ検証要求を送信し、利用者端末装置１０のアプリケーション環境が正常であるか否かを検証するよう要求する。
【００８５】
図９は、検証処理制御部１０８により送信される検証要求８０について説明する図である。図９に示すように、この検証要求８０には、データタイプ、アプリケーション検証情報、セパレタ、全アプリケーションのハッシュ値に対するハッシュ値の情報が含まれる。ここで、アプリケーション検証情報およびセパレタは、図８で説明した検証最大数と同じ数だけ含まれている。
【００８６】
データタイプは、このデータが検証要求８０であることを示す識別情報である。アプリケーション検証情報は、アプリケーション検証部１０６によりなされたアプリケーションの検証結果の情報である。このアプリケーション検証情報には、検証がなされたアプリケーション名、バージョン、リリース、アーキテクチャ種別および検証結果の情報が含まれる。
【００８７】
検証結果とは、具体的には、アプリケーションのファイルサイズ、ハッシュ値、許可属性、ファイルタイプ、修正時刻、デバイスファイル、シンボリックリンク、所有者、グループが、アプリケーション管理データ１０１ｇに登録されているファイルサイズ、ハッシュ値、許可属性、ファイルタイプ、修正時刻、デバイスファイル、シンボリックリンク、所有者、グループの情報とそれぞれ一致したか否かを示す情報である。
【００８８】
セパレタは、アプリケーション検証情報が複数ある場合に、各アプリケーション検証情報を区別するためにアプリケーション検証情報の間に挿入されるブランクである。全アプリケーションのハッシュ値に対するハッシュ値は、検証／依存アプリケーションハッシュ値生成部１０５により生成されたハッシュ値の情報である。
【００８９】
ここで、検証／依存アプリケーションハッシュ値生成部１０５は、全アプリケーションのハッシュ値に対するハッシュ値を生成する場合に、依存関係を有する各アプリケーションのハッシュ値を連結するが、検証要求８０におけるアプリケーション検証情報の順番は、ハッシュ値を連結した順番と同じになるように並べられる。
【００９０】
つぎに、図１に示した認証局サーバ装置２０の機能構成について説明する。図１０は、図１に示した認証局サーバ装置２０の機能構成を示す図である。図１０に示すように、この認証局サーバ装置２０は、通信処理部２００、記憶部２０１、基盤アプリケーションハッシュ値比較部２０２、アプリケーション検証部２０３、検証／依存アプリケーションハッシュ値生成部２０４、検証／依存アプリケーションハッシュ値比較部２０５、検証結果通知部２０６、検証処理制御部２０７を有する。
【００９１】
通信処理部２００は、利用者端末装置１０やネットワーク事業者サーバ装置３０との間でネットワーク４０を介してデータ通信をおこなうネットワークインターフェースである。
【００９２】
記憶部２０１は、ハードディスク装置などの記憶デバイスである。この記憶部２０１は、検証設定データ２０１ａ、アプリケーション基本データ２０１ｂ、アプリケーション拡張データ２０１ｃ、アプリケーション必要機能データ２０１ｄ、アプリケーション提供機能データ２０１ｅを記憶している。
【００９３】
検証設定データ２０１ａは、利用者端末装置１０のアプリケーション環境を検証する際の設定に係るデータである。図１１は、図１０に示した検証設定データ２０１ａの一例を示す図である。図１１に示すように、この検証設定データ２０１ａには、検証アプリケーション識別子、基盤アプリケーション識別子、検証階層、検証最大値の情報が含まれる。
【００９４】
検証アプリケーション識別子および基盤アプリケーション識別子は、それぞれ検証対象となる検証アプリケーションおよび基盤アプリケーションを識別する識別子であり、図４で説明したアプリケーション識別子に対応するものである。
【００９５】
検証階層および検証最大値は、図８で説明した検証階層および検証最大値と同様のものである。ここで、検証階層および検証最大値は、定期的に変更される。これにより、利用者端末装置１０により送信された検証要求８０における全アプリケーションのハッシュ値に対するハッシュ値の情報が盗み見られた場合でも、依存関係を検証するアプリケーションの数が変更されればそのハッシュ値は変化するので、リプライアタック等を抑止することができる。
【００９６】
図１０の説明に戻ると、アプリケーション基本データ２０１ｂ、アプリケーション拡張データ２０１ｃ、アプリケーション必要機能データ２０１ｄ、アプリケーション提供機能データ２０１ｅはそれぞれ、図３で説明したアプリケーション基本データ１０１ｃ、アプリケーション拡張データ１０１ｄ、アプリケーション必要機能データ１０１ｅ、アプリケーション提供機能データ１０１ｆと同様のデータである。
【００９７】
ただし、アプリケーション基本データ２０１ｂ、アプリケーション拡張データ２０１ｃ、アプリケーション必要機能データ２０１ｄ、アプリケーション提供機能データ２０１ｅには、ネットワーク５０への接続を許可するために利用者端末装置１０にインストールすることを要求するアプリケーションの情報が登録される。
【００９８】
基盤アプリケーションハッシュ値比較部２０２は、基盤アプリケーションの検証をおこなう場合に、利用者端末装置１０から受信した基盤アプリケーションのハッシュ値と、アプリケーション拡張データ２０１ｃに登録されている基盤アプリケーションのハッシュ値とを比較することにより、基盤アプリケーションが正常であるか否かを判定する比較部である。
【００９９】
アプリケーション検証部２０３は、図９に示した検証要求８０を利用者端末装置１０から受信した場合に、検証要求８０に含まれる情報に基づいて、利用者端末装置１０のアプリケーション環境を検証する検証部である。
【０１００】
具体的には、アプリケーション検証部２０３は、検証要求８０に含まれるアプリケーション検証情報を抽出し、抽出したアプリケーション検証情報に含まれる検証結果を確認し、検証結果に異常があった場合にアプリケーション環境に異常があると判定する。
【０１０１】
また、アプリケーション検証部２０３は、アプリケーション検証情報に含まれるアプリケーション名、バージョン、リリース、アーキテクチャ種別に対応するアプリケーションがアプリケーション基本データ２０１ｂに登録されているか否かを判定し、アプリケーションが登録されていなかった場合にアプリケーション環境に異常があると判定する。
【０１０２】
検証／依存アプリケーションハッシュ値生成部２０４は、検証要求８０にアプリケーション検証情報が含まれる検証アプリケーションおよび依存アプリケーションのハッシュ値の情報をアプリケーション拡張データ２０１ｃから読み出して、読み出したハッシュ値をアプリケーション検証情報が検証要求８０に含まれる順番で連結し、連結したハッシュ値のハッシュ値を生成する生成部である。
【０１０３】
検証／依存アプリケーションハッシュ値比較部２０５は、検証要求８０に含まれる全アプリケーションのハッシュ値に対するハッシュ値と、検証／依存アプリケーションハッシュ値生成部２０４により生成されたハッシュ値とを比較して一致するか否かを検出し、一致しない場合に利用者端末装置１０のアプリケーション環境に異常があると判定する比較部である。
【０１０４】
検証結果通知部２０６は、利用者端末装置１０のアプリケーション環境の検証結果の情報を利用者端末装置１０およびネットワーク事業者サーバ装置３０に送信し、検証結果を通知する通知部である。
【０１０５】
具体的には、検証結果通知部２０６は、アプリケーション検証部２０３および検証／依存アプリケーションハッシュ値比較部２０５により、アプリケーション環境に異常がないと判定された場合に、利用者端末装置１０にネットワーク５０への接続を許可することを示す情報を送信する。
【０１０６】
また、検証結果通知部２０６は、アプリケーション検証部２０３および検証／依存アプリケーションハッシュ値比較部２０５により、アプリケーション環境に異常がないと判定された場合に、ネットワーク事業者サーバ装置３０に利用者端末装置１０のアプリケーション環境が正常であることを示す情報を、当該利用者端末装置１０を特定する識別情報とともに送信する。
【０１０７】
さらに、検証結果通知部２０６は、アプリケーション検証部２０３により、アプリケーション環境に異常があると判定された場合に、利用者端末装置１０に接続を不許可とすることを示す情報と、異常があると判定されたアプリケーションを特定するアプリケーション識別子の情報とを送信する。
【０１０８】
検証処理制御部２０７は、記憶部２０１、基盤アプリケーションハッシュ値比較部２０２、アプリケーション検証部２０３、検証／依存アプリケーションハッシュ値生成部２０４、検証／依存アプリケーションハッシュ値比較部２０５、検証結果通知部２０６間のデータの授受を司る制御部である。また、検証処理制御部２０７は、利用者端末装置１０との間で利用者端末装置１０におけるアプリケーション環境の検証処理に係る種々の情報を送受信する。
【０１０９】
具体的には、検証処理制御部２０７は、利用者端末装置１０から利用者端末装置１０を識別する識別情報とともに、検証対象となるアプリケーションの通知要求を受信する。また、検証処理制御部２０７は、図８で説明した通知要求応答７０を利用者端末装置１０に送信する。
【０１１０】
さらに、検証処理制御部２０７は、利用者端末装置１０により生成された基盤アプリケーションのハッシュ値を利用者端末装置１０から受信する。また、検証処理制御部２０７は、受信したハッシュ値に基づいて基盤アプリケーションが正常であると判定された場合に利用者端末装置１０に検証／依存アプリケーションの検証実行通知を送信する。また、検証処理制御部２０７は、図９に示したような検証要求８０を利用者端末装置１０から受信する。
【０１１１】
つぎに、本発明に係るアプリケーション検証処理の処理手順について説明する。図１２−１、図１２−２、図１２−３、および、図１２−４は、それぞれ、本実施例に係るアプリケーション検証処理の処理手順を示すフローチャート（１）、（２）、（３）および（４）である。
【０１１２】
図１２−１に示すように、まず、利用者端末装置１０の検証処理制御部１０８は、検証対象となるアプリケーションの通知要求を認証局サーバ装置２０に送信する（ステップＳ１０１）。
【０１１３】
そして、認証局サーバ装置２０の検証処理制御部２０７は、当該通知要求を受信する（ステップＳ１０２）。続いて、検証処理制御部２０７は、検証対象となる基盤アプリケーションおよび検証アプリケーション、検証階層および検証最大数の情報を検証設定データ２０１ａから読み出す（ステップＳ１０３）。
【０１１４】
そして、検証処理制御部２０７は、図８に示したような、検証対象となる基盤アプリケーションおよび検証アプリケーション、検証階層および検証最大数の情報を含んだ通知要求応答７０を利用者端末装置１０に送信する（ステップＳ１０４）。
【０１１５】
その後、利用者端末装置１０の検証処理制御部１０８は、通知要求応答７０を認証局サーバ装置２０から受信する（ステップＳ１０５）。そして、利用者端末装置１０の基盤アプリケーションハッシュ値生成部１０３は、認証局サーバ装置２０により指定された基盤アプリケーションのハッシュ値をハードウェア処理により生成する（ステップＳ１０６）。
【０１１６】
続いて、利用者端末装置１０の検証処理制御部１０８は、生成されたハッシュ値の情報を認証局サーバ装置２０に送信する（ステップＳ１０７）。そして、認証局サーバ装置２０の検証処理制御部２０７は、利用者端末装置１０により送信されたハッシュ値の情報を受信する（ステップＳ１０８）。
【０１１７】
その後、認証局サーバ装置２０の基盤アプリケーションハッシュ値比較部２０２は、自装置のデータベースであるアプリケーション拡張データ２０１ｃに登録された基盤アプリケーションのハッシュ値の情報を取得する（ステップＳ１０９）。
【０１１８】
そして、基盤アプリケーションハッシュ値比較部２０２は、取得したハッシュ値と利用者端末装置１０から受信したハッシュ値とを比較し（ステップＳ１１０）、ハッシュ値が一致するか否かを調べる（ステップＳ１１１）。
【０１１９】
ハッシュ値が一致しない場合には（ステップＳ１１１，Ｎｏ）、図１２−２に示すように、認証局サーバ装置２０の検証処理制御部２０７は、ハッシュ値が一致しなかった基盤アプリケーションの情報を含むアクセス拒否通知を利用者端末装置１０に送信し（ステップＳ１１３）、図１２−１に示すステップＳ１０８に移行する。
【０１２０】
ハッシュ値が一致した場合には（ステップＳ１１１，Ｙｅｓ）、認証局サーバ装置２０の検証処理制御部２０７は、利用者端末装置１０に検証実行通知を送信し（ステップＳ１１２）、図１２−３に示すステップＳ１２２に移行する。
【０１２１】
続いて、図１２−２に示すように、利用者端末装置１０の検証処理制御部１０８は、認証局サーバ装置２０からアクセス拒否通知あるいは検証実行通知を受信する（ステップＳ１１４）。そして、検証処理制御部１０８は、受信した通知がアクセス拒否通知であるか否かを調べる（ステップＳ１１５）。
【０１２２】
受信した通知がアクセス拒否通知であった場合には（ステップＳ１１５，Ｙｅｓ）、図１２−４に示すステップＳ１３６に移行して、利用者端末装置１０のアプリケーション導入管理部１０７は、アクセス拒否通知を受けた基盤アプリケーションをアプリケーションサーバ装置から取得する（ステップＳ１３６）。
【０１２３】
そして、アプリケーション導入管理部１０７は、取得したアプリケーションのインストールを実行し（ステップＳ１３７）、図１２−１のステップＳ１０６に移行して、それ以後のアプリケーション検証処理を実行する。
【０１２４】
図１２−２のステップＳ１１５において、受信した通知がアクセス拒否通知でなく、検証実行通知であった場合には（ステップＳ１１５，Ｎｏ）、利用者端末装置１０の依存アプリケーション抽出部１０４は、通知された検証アプリケーションと依存関係にある依存アプリケーションを抽出する（ステップＳ１１６）。
【０１２５】
そして、利用者端末装置１０のアプリケーション検証部１０６は、通知された検証アプリケーションおよび抽出された依存アプリケーションの検証を実行する（ステップＳ１１７）。
【０１２６】
続いて、利用者端末装置１０の検証／依存アプリケーションハッシュ値生成部１０５は、通知された検証アプリケーションおよび抽出された依存アプリケーションのハッシュ値の情報をアプリケーション拡張データ１０１ｄから取得する（ステップＳ１１８）。
【０１２７】
そして、検証／依存アプリケーションハッシュ値生成部１０５は、取得したハッシュ値を連結し（ステップＳ１１９）、連結したハッシュ値に対するハッシュ値を生成する（ステップＳ１２０）。
【０１２８】
その後、図１２−３に示すように、検証／依存アプリケーションハッシュ値生成部１０５は、図９に示したような、各アプリケーションの検証結果、および、生成されたハッシュ値の情報を含んだ検証要求８０を認証局サーバ装置２０に送信する（ステップＳ１２１）。
【０１２９】
そして、認証局サーバ装置２０の検証処理制御部２０７は、利用者端末装置１０により送信された検証要求８０を受信し（ステップＳ１２２）、検証要求８０に含まれる検証アプリケーションおよび依存アプリケーションの検証結果が正常であるか否かを調べる（ステップＳ１２３）。
【０１３０】
そして、検証結果が正常でない場合には（ステップＳ１２３，Ｎｏ）、図１２−４に示すステップＳ１３３に移行して、認証局サーバ装置２０の検証処理制御部２０７は、検証結果が正常でなかった検証アプリケーションまたは依存アプリケーションの情報を含むアクセス拒否通知を利用者端末装置１０に送信し（ステップＳ１３３）、図１２−１に示すステップＳ１０８に移行して、それ以後のアプリケーション検証処理を継続する。
【０１３１】
そして、図１２−４に示すように、認証局サーバ装置２０によりアクセス拒否通知が送信されると、利用者端末装置１０の検証処理制御部１０８は、当該通知を受信し（ステップＳ１３４）、受信した通知がアクセス拒否通知であるか否かを調べる（ステップＳ１３５）。
【０１３２】
この場合、受信した通知はアクセス拒否通知であるので（ステップＳ１３５，Ｙｅｓ）、利用者端末装置１０のアプリケーション導入管理部１０７は、アクセス拒否通知により検証結果が正常でなかったアプリケーションとして通知を受けた検証アプリケーションまたは依存アプリケーションをアプリケーションサーバ装置から取得する（ステップＳ１３６）。
【０１３３】
そして、アプリケーション導入管理部１０７は、取得した検証アプリケーションまたは依存アプリケーションのインストールを実行し（ステップＳ１３７）、図１２−１のステップＳ１０６に移行して、それ以後のアプリケーション検証処理を実行する。
【０１３４】
図１２−３のステップＳ１２３において、検証要求８０に含まれる検証アプリケーションおよび依存アプリケーションの検証結果が正常である場合には（ステップＳ１２３，Ｙｅｓ）、認証局サーバ装置２０のアプリケーション検証部２０３は、検証要求８０にアプリケーション検証情報として含まれている検証アプリケーションおよび依存アプリケーションのアプリケーション名、バージョン、リリース、アーキテクチャ種別の情報を抽出する（ステップＳ１２４）。
【０１３５】
そして、アプリケーション検証部２０３は、抽出したアプリケーション名、バージョン、リリース、アーキテクチャ種別の情報と一致する情報がアプリケーション基本データ２０１ｂに登録されているか否かを調べる（ステップＳ１２５）。
【０１３６】
そして、一致する情報がアプリケーション基本データ２０１ｂに登録されていない場合には（ステップＳ１２５，Ｎｏ）、図１２−４のステップＳ１３３に移行して、認証局サーバ装置２０の検証処理制御部２０７は、検証要求８０に検証結果の情報が含まれるアプリケーションすべてを正常でないものとして、それらのアプリケーションの情報を含んだアクセス拒否通知を利用者端末装置１０に送信し（ステップＳ１３３）、図１２−１に示すステップＳ１０８に移行して、それ以後のアプリケーション検証処理を継続する。
【０１３７】
そして、図１２−４に示すように、認証局サーバ装置２０によりアクセス拒否通知が送信されると、利用者端末装置１０の検証処理制御部１０８は、当該通知を受信し（ステップＳ１３４）、受信した通知がアクセス拒否通知であるか否かを調べる（ステップＳ１３５）。
【０１３８】
この場合、受信した通知はアクセス拒否通知であるので（ステップＳ１３５，Ｙｅｓ）、利用者端末装置１０のアプリケーション導入管理部１０７は、アクセス拒否通知により検証結果が正常でなかったアプリケーションとして通知を受けたアプリケーションすべてをアプリケーションサーバ装置から取得する（ステップＳ１３６）。
【０１３９】
そして、アプリケーション導入管理部１０７は、取得した検証アプリケーションおよび依存アプリケーションのインストールを実行し（ステップＳ１３７）、図１２−１のステップＳ１０６に移行して、それ以後のアプリケーション検証処理を実行する。
【０１４０】
図１２−３のステップＳ１２５において、一致する情報がアプリケーション基本データ２０１ｂに登録されている場合には（ステップＳ１２５，Ｙｅｓ）、検証／依存アプリケーションハッシュ値生成部２０４は、検証要求８０に検証結果の情報が含まれる各アプリケーションのハッシュ値の情報を、記憶部２０１にデータベースとして記憶されているアプリケーション拡張データ２０１ｃから読み込む（ステップＳ１２６）。
【０１４１】
そして、検証／依存アプリケーションハッシュ値生成部２０４は、アプリケーション拡張データ２０１ｃから読み込んだハッシュ値を、検証要求８０に各アプリケーションのアプリケーション検証情報が登録されている順番で連結し（ステップＳ１２７）、連結されたハッシュ値に対するハッシュ値を生成する（ステップＳ１２８）。
【０１４２】
その後、検証／依存アプリケーションハッシュ値比較部２０５は、検証／依存アプリケーションハッシュ値生成部２０４により生成されたハッシュ値と、利用者端末装置１０から受信した検証要求８０に含まれるハッシュ値とを比較し（ステップＳ１２９）、ハッシュ値が一致するか否かを調べる（ステップＳ１３０）。
【０１４３】
ハッシュ値が一致しない場合には（ステップＳ１３０，Ｎｏ）、認証局サーバ装置２０の検証処理制御部２０７は、検証要求８０に検証結果の情報が含まれるアプリケーションすべてを正常でないものとして、それらのアプリケーションの情報を含んだアクセス拒否通知を利用者端末装置１０に送信する（ステップＳ１３３）。
【０１４４】
そして、認証局サーバ装置２０によりアクセス拒否通知が送信されると、利用者端末装置１０の検証処理制御部１０８は、当該通知を受信し（ステップＳ１３４）、受信した通知がアクセス拒否通知であるか否かを調べる（ステップＳ１３５）。
【０１４５】
この場合、受信した通知はアクセス拒否通知であるので（ステップＳ１３５，Ｙｅｓ）、利用者端末装置１０のアプリケーション導入管理部１０７は、アクセス拒否通知により検証結果が正常でなかったアプリケーションとして通知を受けたアプリケーションすべてをアプリケーションサーバ装置から取得する（ステップＳ１３６）。
【０１４６】
そして、アプリケーション導入管理部１０７は、取得したアプリケーションのインストールを実行し（ステップＳ１３７）、図１２−１のステップＳ１０６に移行して、それ以後のアプリケーション検証処理を実行する。
【０１４７】
図１２−４のステップＳ１３０において、ハッシュ値が一致した場合には（ステップＳ１３０，Ｙｅｓ）、認証局サーバ装置２０の検証処理制御部２０７は、利用者端末装置１０のアプリケーション環境が正常であったことを示す正常環境通知をネットワーク事業者サーバ装置３０に送信する（ステップＳ１３１）。
【０１４８】
この正常環境通知を受信したネットワーク事業者サーバ装置３０は、利用者端末装置１０からネットワーク５０への接続要求を受信した場合に、利用者端末装置１０をネットワーク５０に接続させる。
【０１４９】
そして、認証局サーバ装置２０の検証処理制御部２０７は、ネットワーク５０に対する接続を許可することを示すアクセス許可通知を利用者端末装置１０に送信し（ステップＳ１３２）、認証局サーバ装置２０側のアプリケーション検証処理を終了する。
【０１５０】
その後、利用者端末装置１０の検証処理制御部１０８は、認証局サーバ装置２０からアクセス許可通知を受信し（ステップＳ１３４）、その通知がアクセス拒否通知であるか否かを調べる（ステップＳ１３５）。
【０１５１】
この場合、通知はアクセス拒否通知ではないので（ステップＳ１３５，Ｎｏ）、そのまま利用者端末装置１０側のアプリケーション検証処理を終了する。その後、利用者端末装置１０は、ネットワーク事業者サーバ装置３０にネットワーク５０への接続要求を送信し、ネットワーク５０への接続処理をおこなう。
【０１５２】
上記実施例で説明した各種の処理は、あらかじめ用意されたプログラムをコンピュータで実行することによって実現することができる。そこで、以下では、上記各種処理を実現するプログラムを実行するコンピュータの一例について説明する。
【０１５３】
図１３は、図３あるいは図１０に示した利用者端末装置１０あるいは認証局サーバ装置２０となるコンピュータのハードウェア構成を示す図である。このコンピュータは、ユーザからのデータの入力を受け付ける入力装置９０、データを表示する表示装置９１、各種プログラムを記録した記録媒体からプログラムを読み取る媒体読取装置９２、ネットワークを介して他のコンピュータとの間でデータの授受をおこなうネットワークインターフェース９３、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）９４、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）９５、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）９６およびＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）９７をバス９８で接続して構成される。
【０１５４】
そして、ＨＤＤ９７には、利用者端末装置１０あるいは認証局サーバ装置２０の機能と同様の機能を発揮するアプリケーション検証プログラム９７ｃが記憶されている。なお、アプリケーション検証プログラム９７ｃは、適宜分散して記憶することとしてもよい。そして、ＣＰＵ９６が、アプリケーション検証プログラム９７ｃをＨＤＤ９７から読み出して実行することにより、アプリケーション検証プロセス９６ａが起動される。
【０１５５】
このアプリケーション検証プロセス９６ａは、図３に示した利用者端末装置１０のアプリケーション実行処理部１０２、基盤アプリケーションハッシュ値生成部１０３、依存アプリケーション抽出部１０４、検証／依存アプリケーションハッシュ値生成部１０５、アプリケーション検証部１０６、アプリケーション導入管理部１０７、検証処理制御部１０８の各機能部、あるいは、図１０に示した認証局サーバ装置２０の基盤アプリケーションハッシュ値比較部２０２、アプリケーション検証部２０３、検証／依存アプリケーションハッシュ値生成部２０４、検証／依存アプリケーションハッシュ値比較部２０５、検証結果通知部２０６、検証処理制御部２０７の各機能部に対応する。
【０１５６】
また、ＨＤＤ９７には、各種データ９７ａおよび各種アプリケーション９７ｂが記憶される。各種データ９７ａは、図３に示した利用者端末装置１０の記憶部１０１に記憶されるユーザデータ１０１ｂ、アプリケーション基本データ１０１ｃ、アプリケーション拡張データ１０１ｄ、アプリケーション必要機能データ１０１ｅ、アプリケーション提供機能データ１０１ｆ、アプリケーション管理データ１０１ｇ、あるいは、認証局サーバ装置２０の記憶部２０１に記憶される検証設定データ２０１ａ、アプリケーション基本データ２０１ｂ、アプリケーション拡張データ２０１ｃ、アプリケーション必要機能データ２０１ｄ、アプリケーション提供機能データ２０１ｅに対応する。また、各種アプリケーション９７ｂは、図３に示した利用者端末装置１０の記憶部１０１に記憶されるアプリケーション１０１ａに対応する。
【０１５７】
そして、ＣＰＵ９６は、各種データ９７ａあるいは各種アプリケーション９７ｂをＨＤＤ９７に記憶するとともに、各種データ９７ａあるいは各種アプリケーション９７ｂをＨＤＤ９７から読み出してＲＡＭ９４に格納し、ＲＡＭ９４に格納された各種データ９４ａあるいは各種アプリケーション９４ｂに基づいて各種データ処理を実行する。
【０１５８】
ところで、アプリケーション検証プログラム９７ｃは、必ずしも最初からＨＤＤ９７に記憶させておく必要はない。たとえば、当該コンピュータに挿入されるフレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」、または、コンピュータの内外に備えられるハードディスクドライブ（ＨＤＤ）などの「固定用の物理媒体」、さらには、公衆回線、インターネット、ＬＡＮ、ＷＡＮなどを介してコンピュータに接続される「他のコンピュータ（またはサーバ）」などに各プログラムを記憶しておき、コンピュータがこれらから各プログラムを読み出して実行するようにしてもよい。
【０１５９】
上述してきたように、本実施例では、利用者端末装置１０にインストールされた個々のアプリケーションの検証と各アプリケーション間の依存関係の情報収集とを含むクライアント側処理を当該利用者端末装置１０が実行し、クライアント側処理の結果に係る情報を受信して各アプリケーション間の依存関係の検証を認証局サーバ装置２０が実行し、アプリケーションの検証の結果および各アプリケーション間の依存関係の検証の結果に基づいて利用者端末装置１０が正常であるか否かを認証局サーバ装置２０が判定することとしたので、アプリケーションの検証を利用者端末装置１０と認証局サーバ装置２０とで分担しておこなうことにより、利用者の数が増加した場合でも、利用者端末装置１０の安全性を検証する認証局サーバ装置２０の負荷を軽減させることができる。
【０１６０】
また、本実施例では、利用者端末装置１０にインストールされたアプリケーションの検証をおこなうアプリケーションの検証を認証局サーバ装置２０が実行し、検証の結果、異常が検出されなかった場合にクライアント側処理を実行することとしたので、利用者端末装置１０にインストールされたアプリケーションの検証をおこなうアプリケーションがそもそも正常であるか否かを検証することにより、アプリケーションの検証が不正なものとなることを防止することができる。
【０１６１】
また、本実施例では、利用者端末装置１０にインストールされたアプリケーションの検証をおこなうアプリケーションに係るハッシュ値を利用者端末装置１０がハードウェア処理により生成し、生成されたハッシュ値の情報に基づいて認証局サーバ装置２０が当該アプリケーションの検証をおこなうこととしたので、ハッシュ値の生成をハードウェア処理でおこなうので、ソフトウェア処理によりハッシュ値を生成する場合のように不正にハッシュ値が生成される危険性が少なく、アプリケーションの検証を確実におこなうことができる。
【０１６２】
また、本実施例では、利用者端末装置１０が、認証局サーバ装置２０から特定のアプリケーションの検証要求を受け付けた場合に、当該特定のアプリケーションとの間で依存関係を有するアプリケーションの情報を収集し、情報が収集されたアプリケーションの検証をおこなうこととしたので、検証すべきアプリケーションの情報を認証局サーバ装置２０がすべて管理する必要がなく、認証局サーバ装置２０の負荷を軽減することができる。
【０１６３】
また、本実施例では、利用者端末装置１０が、依存関係の情報収集をおこなうアプリケーションの数の指定を認証局サーバ装置２０から受け付けて、認証局サーバ装置２０により指定された数のアプリケーションに係るハッシュ値を連結し、連結したハッシュ値に係るハッシュ値を生成して生成したハッシュ値の情報を認証局サーバ装置２０に送信し、認証局サーバ装置２０が、送信されたハッシュ値の情報に基づいて各アプリケーション間の依存関係の検証を実行することとしたので、たとえ利用者端末装置１０により送信されたハッシュ値の情報が盗み見られた場合でも、依存関係の情報収集をおこなうアプリケーションの数が変更されればハッシュ値が変化するので、リプライアタック等を抑止することができる。
【０１６４】
また、本実施例では、認証局サーバ装置２０が、利用者端末装置１０を正常でないと判定した場合に、異常が検出されたアプリケーションの情報を利用者端末装置１０に送信することとしたので、利用者端末装置１０はどのアプリケーションに異常が検出されたかを確認することができる。
【０１６５】
また、本実施例では、認証局サーバ装置２０により送信されたアプリケーションの情報を利用者端末装置１０が受信した場合に利用者端末装置１０が当該アプリケーションを取得して、取得したアプリケーションのインストールを実行することとしたので、異常が検出されたアプリケーションの再インストールを効果的に実行することができる。
【０１６６】
また、本実施例では、利用者端末装置１０に導入された個々のアプリケーションの検証と各アプリケーション間の依存関係の情報収集とを含むクライアント側処理を当該利用者端末装置１０が実行し、クライアント側処理の結果に係る情報を、各アプリケーション間の依存関係の検証をおこない、かつ、アプリケーションの検証の結果および各アプリケーション間の依存関係の検証の結果に基づいて利用者端末装置１０が正常であるか否かを判定する認証局サーバ装置２０に利用者端末装置１０が送信することとしたので、アプリケーションの検証を利用者端末装置１０と認証局サーバ装置２０とで分担しておこなうことにより、サービス利用者の数が増加した場合でも、利用者端末装置１０の安全性を検証する認証局サーバ装置２０の負荷を軽減させることができる。
【０１６７】
また、本実施例では、認証局サーバ装置２０が、利用者端末装置１０に導入された個々のアプリケーションの検証と各アプリケーション間の依存関係の情報収集とを含むクライアント側処理を当該利用者端末装置１０が実行した実行結果の情報を当該利用者端末装置１０から受信し、受信した情報に基づいて各アプリケーション間の依存関係の検証を認証局サーバ装置２０が実行し、アプリケーションの検証の結果および各アプリケーション間の依存関係の検証の結果に基づいて利用者端末装置１０が正常であるか否かを認証局サーバ装置２０が判定することとしたので、アプリケーションの検証を利用者端末装置１０と認証局サーバ装置２０とで分担しておこなうことにより、サービス利用者の数が増加した場合でも、利用者端末装置１０の安全性を検証する認証局サーバ装置２０の負荷を軽減させることができる。
【０１６８】
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、特許請求の範囲に記載した技術的思想の範囲内において種々の異なる実施例にて実施されてもよいものである。
【０１６９】
また、本実施例において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的におこなうこともでき、あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。
【０１７０】
この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【０１７１】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
【０１７２】
さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、ＣＰＵおよび当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【産業上の利用可能性】
【０１７３】
以上のように、本発明に係るコンピュータ資源検証方法およびコンピュータ資源検証プログラムは、サービス利用者の数が増加した場合に、利用者端末装置の安全性を検証する装置の負荷を軽減させることが必要なコンピュータ資源検証システムに有用である。
【図面の簡単な説明】
【０１７４】
【図１】図１は、本発明に係るアプリケーション検証システムを説明する図である。
【図２】図２は、基盤アプリケーション、検証アプリケーション、および、依存アプリケーションについて説明する図である。
【図３】図３は、図１に示した利用者端末装置１０の機能構成を示す図である。
【図４】図４は、図３に示したアプリケーション基本データ１０１ｃの一例を示す図である。
【図５】図５は、図３に示したアプリケーション拡張データ１０１ｄの一例を示す図である。
【図６】図６は、図３に示したアプリケーション必要機能データ１０１ｅの一例を示す図である。
【図７】図７は、図３に示したアプリケーション提供機能データ１０１ｆの一例を示す図である。
【図８】図８は、認証局サーバ装置２０により送信される通知要求応答７０について説明する図である。
【図９】図９は、検証処理制御部１０８により送信される検証要求８０について説明する図である。
【図１０】図１０は、図１に示した認証局サーバ装置２０の機能構成を示す図である。
【図１１】図１１は、図１０に示した検証設定データ２０１ａの一例を示す図である。
【図１２−１】図１２−１は、本実施例に係るアプリケーション検証処理の処理手順を示すフローチャート（１）である。
【図１２−２】図１２−２は、本実施例に係るアプリケーション検証処理の処理手順を示すフローチャート（２）である。
【図１２−３】図１２−３は、本実施例に係るアプリケーション検証処理の処理手順を示すフローチャート（３）である。
【図１２−４】図１２−４は、本実施例に係るアプリケーション検証処理の処理手順を示すフローチャート（４）である。
【図１３】図１３は、図３あるいは図１０に示した利用者端末装置１０あるいは認証局サーバ装置２０となるコンピュータのハードウェア構成を示す図である。
【符号の説明】
【０１７５】
１０  利用者端末装置
１００  通信処理部
１０１  記憶部
１０１ａ  アプリケーション
１０１ｂ  ユーザデータ
１０１ｃ  アプリケーション基本データ
１０１ｄ  アプリケーション拡張データ
１０１ｅ  アプリケーション必要機能データ
１０１ｆ  アプリケーション提供機能データ
１０１ｇ  アプリケーション管理データ
１０２  アプリケーション実行処理部
１０３  基盤アプリケーションハッシュ値生成部
１０４  依存アプリケーション抽出部
１０５  検証／依存アプリケーションハッシュ値生成部
１０６  アプリケーション検証部
１０７  アプリケーション導入管理部
１０８  検証処理制御部
２０  認証局サーバ装置
２００  通信処理部
２０１  記憶部
２０１ａ  検証設定データ
２０１ｂ  アプリケーション基本データ
２０１ｃ  アプリケーション拡張データ
２０１ｄ  アプリケーション必要機能データ
２０１ｅ  アプリケーション提供機能データ
２０２  基盤アプリケーションハッシュ値比較部
２０３  アプリケーション検証部
２０４  検証／依存アプリケーションハッシュ値生成部
２０５  検証／依存アプリケーションハッシュ値比較部
２０６  検証結果通知部
２０７  検証処理制御部
３０  ネットワーク事業者サーバ装置
４０，５０  ネットワーク
６０ａ，６０ｂ  基盤アプリケーション
６１  検証アプリケーション
６２ａ〜６２ｅ  依存アプリケーション
７０  通知要求応答
８０  検証要求
【国際調査報告】
2008026287.tif 000019
2008026287.tif 000020