(57)【要約】【課題】  セキュリティーを維持したアプリケーションの実行を行うための技術を提供すること。【解決手段】  署名装置２０は、アプリケーションを起動する前に入力された認証情報に基づく署名情報を、認証局によって発行された公開鍵証明書情報に対応する鍵情報を用いて作成する。起動権判定部７０は、公開鍵証明書情報から抽出した鍵情報を用いて求めた署名情報のハッシュ値と、認証情報のハッシュ値とが一致している場合に、認証情報がアプリケーションの起動を許可されたユーザの認証情報であるのかをチェックする。そして、処理部８０は、このチェック結果に応じて、アプリケーションの起動を制御する。【選択図】  図１
2007148676.tif 000002
【特許請求の範囲】
【請求項１】
起動前に認証が必要なアプリケーションを保持する第１の保持手段と、
前記認証を介して前記アプリケーションを起動し、動作させる動作制御手段とを備え、
前記動作制御手段は、
前記アプリケーションを起動する前に、当該起動のための認証情報を入力する入力手段と、
認証局によって発行された公開鍵証明書情報に対応する鍵情報を用いて、前記認証情報に基づく署名情報を作成する作成手段と、
前記公開鍵証明書情報から鍵情報を抽出する抽出手段と、
前記抽出手段が抽出した鍵情報を用いて、前記署名情報に基づく第１の値を求める第１の計算手段と、
前記認証情報に基づく第２の値を求める第２の計算手段と、
前記第１の値と前記第２の値とが一致しているか否かをチェックする第１のチェック手段と、
前記第１の値と前記第２の値とが一致している場合に、前記入力手段が入力した認証情報が、前記アプリケーションの起動を許可されたユーザの認証情報であるのかをチェックする第２のチェック手段と、
前記第２のチェック手段によるチェック結果に応じて、前記アプリケーションの起動を制御する制御手段と
を備えることを特徴とする情報処理装置。
【請求項２】
更に、
前記認証の段階で認証可能な認証情報を保持する第２の保持手段と、
前記入力手段により入力された認証情報が、前記第２の保持手段が保持する認証情報の何れに一致しているのかを判断することで、認証処理を行う認証手段とを備え、
前記制御手段は、前記認証手段による認証処理後に、前記アプリケーションの起動を制御することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記第２のチェック手段は、前記アプリケーションの起動を許可されたユーザの認証情報を保持する第３の保持手段を備え、
前記入力手段が入力した認証情報が、前記第３の保持手段が保持する認証情報の何れに一致するのかをチェックすることで、前記入力手段が入力した認証情報が、前記アプリケーションの起動を許可されたユーザの認証情報であるのかをチェックすることを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
情報処理装置であって、
前記情報処理装置の所在を示す所在情報を保持する第１の保持手段と、
起動前に認証が必要なアプリケーションを保持する第２の保持手段と、
前記認証を介して前記アプリケーションを起動し、動作させる動作制御手段とを備え、
前記動作制御手段は、
前記アプリケーションを起動する前に、当該起動のための認証情報を入力する入力手段と、
認証局によって発行された公開鍵証明書情報に対応する鍵情報を用いて前記認証情報に基づく署名情報を作成する複数の署名手段と、
前記複数の署名手段のうち、前記所在情報が示す所在に応じて１つを選択する選択手段と、
前記選択手段が選択した署名手段によって、前記認証情報に基づく署名情報を作成させる手段と、
前記公開鍵証明書情報から鍵情報を抽出する第１の抽出手段と、
前記第１の抽出手段が抽出した鍵情報を用いて、前記署名情報に基づく第１の値を求める第１の計算手段と、
前記認証情報に基づく第２の値を求める第２の計算手段と、
前記第１の値と前記第２の値とが一致しているか否かをチェックする第１のチェック手段と、
前記第１の値と前記第２の値とが一致している場合に、前記入力手段が入力した認証情報が、前記アプリケーションの起動を許可されたユーザの認証情報であるのかをチェックする第２のチェック手段と、
前記公開鍵証明書情報から、前記公開鍵証明書情報を識別するための識別情報を抽出する第２の抽出手段と、
前記アプリケーションの起動、動作を行う複数の処理手段と、
前記入力手段が入力した認証情報が、前記アプリケーションの起動を許可されたユーザの認証情報である場合に、前記複数の処理手段のうち、前記識別情報に応じた処理手段でもって前記アプリケーションの起動を制御する制御手段と
を備えることを特徴とする情報処理装置。
【請求項５】
情報処理装置であって、
前記情報処理装置の所在を示す所在情報を保持する第１の保持手段と、
起動前に認証が必要なアプリケーションを保持する第２の保持手段と、
前記認証を介して前記アプリケーションを起動し、動作させる動作制御手段とを備え、
前記動作制御手段は、
前記アプリケーションを起動する前に、当該起動のための認証情報を入力する入力手段と、
認証局によって発行された公開鍵証明書情報に対応する鍵情報を用いて前記認証情報に基づく署名情報を作成する複数の署名手段と、
前記複数の署名手段のうち、前記所在情報が示す所在に応じて１つを選択する選択手段と、
前記選択手段が選択した署名手段によって、前記認証情報に基づく署名情報を作成させる手段と、
前記公開鍵証明書情報から鍵情報を抽出する第１の抽出手段と、
前記第１の抽出手段が抽出した鍵情報を用いて、前記署名情報に基づく第１の値を求める第１の計算手段と、
前記認証情報に基づく第２の値を求める第２の計算手段と、
前記第１の値と前記第２の値とが一致しているか否かをチェックする第１のチェック手段と、
前記第１の値と前記第２の値とが一致している場合に、前記入力手段が入力した認証情報が、前記アプリケーションの起動を許可されたユーザの認証情報であるのかをチェックする第２のチェック手段と、
前記公開鍵証明書情報から署名者情報を抽出する第２の抽出手段と、
前記入力手段が入力した認証情報が、前記アプリケーションの起動を許可されたユーザの認証情報である場合に、前記アプリケーションに対して要求された動作の種類と前記署名者情報とに応じて、前記アプリケーションの動作を制御する制御手段と
を備えることを特徴とする情報処理装置。
【請求項６】
前記所在情報は、前記情報処理装置が接続されているネットワーク上における前記情報処理装置のアドレスを示す情報であることを特徴とする請求項５に記載の情報処理装置。
【請求項７】
起動前に認証が必要なアプリケーションを保持する第１の保持手段と、
前記認証を介して前記アプリケーションを起動し、動作させる動作制御手段とを備え、
前記動作制御手段は、
前記アプリケーションを起動する前に、当該起動のための認証情報を入力する入力手段と、
認証局によって発行された公開鍵証明書情報に対応する鍵情報を用いて、前記認証情報に基づく署名情報を作成する作成手段と、
前記公開鍵証明書情報から鍵情報を抽出する抽出手段と、
前記抽出手段が抽出した鍵情報を用いて、前記署名情報に基づく第１の値を求める第１の計算手段と、
前記認証情報に基づく第２の値を求める第２の計算手段と、
前記第１の値と前記第２の値とが一致しているか否かをチェックする第１のチェック手段と、
前記第１の値と前記第２の値とが一致している場合に、前記入力手段が入力した認証情報が、前記アプリケーションの起動を許可されたユーザの認証情報であるのかをチェックする第２のチェック手段と、
前記公開鍵証明書情報から署名者情報を抽出する第２の抽出手段と、
前記入力手段が入力した認証情報が、前記アプリケーションの起動を許可されたユーザの認証情報である場合に、前記アプリケーションに対して要求された動作の種類と前記署名者情報とに応じて、前記アプリケーションの動作を制御する制御手段と
を備えることを特徴とする情報処理装置。
【請求項８】
前記制御手段は、
前記アプリケーションに対して要求可能な複数種の動作毎に、１以上の署名者情報が登録されたリストを保持する手段を備え、
前記第２の抽出手段が抽出した署名者情報が、前記アプリケーションに対して要求された動作の種類に対応づけて前記リストに登録されているか否かをチェックし、登録されている場合には前記アプリケーションに対して要求された動作を実行し、登録されていない場合には前記アプリケーションに対して要求された動作を実行しないことを特徴とする請求項４に記載の情報処理装置。
【請求項９】
前記第１の値、前記第２の値は、ハッシュ値であることを特徴とする請求項１乃至８の何れか１項に記載の情報処理装置。
【請求項１０】
起動前に認証が必要なアプリケーションを保持する第１の保持手段と、
前記認証を介して前記アプリケーションを起動し、動作させる動作制御手段とを備え、
前記動作制御手段は、
前記アプリケーションを起動する前に、当該起動のための認証情報を入力する入力手段と、
認証局によって発行された公開鍵証明書情報に対応する鍵情報を用いて、前記認証情報に基づく署名情報を作成する作成手段と、
前記公開鍵証明書情報から鍵情報を抽出する抽出手段と、
前記抽出手段が抽出した鍵情報を用いて、前記署名情報に基づく第１の値を求める第１の計算手段と、
前記認証情報に基づく第２の値を求める第２の計算手段と、
前記第１の値と前記第２の値とが一致しているか否かをチェックする第１のチェック手段と、
前記第１の値と前記第２の値とが一致している場合に、前記入力手段が入力した認証情報が、前記アプリケーションの起動を許可されたユーザの認証情報であるのかをチェックする第２のチェック手段と、
前記公開鍵証明書情報から、前記公開鍵証明書情報を識別するための識別情報を抽出する第２の抽出手段と、
前記アプリケーションの起動、動作を行う複数の処理手段と、
前記入力手段が入力した認証情報が、前記アプリケーションの起動を許可されたユーザの認証情報である場合に、前記複数の処理手段のうち、前記識別情報に応じた処理手段でもって前記アプリケーションの起動を制御する制御手段と
を備えることを特徴とする情報処理装置。
【請求項１１】
起動前に認証が必要なアプリケーションをメモリに保持する第１の保持工程と、
前記認証を介して前記アプリケーションを起動し、動作させる動作制御工程とを備え、
前記動作制御工程は、
前記アプリケーションを起動する前に、当該起動のための認証情報を入力する入力工程と、
認証局によって発行された公開鍵証明書情報に対応する鍵情報を用いて、前記認証情報に基づく署名情報を作成する作成工程と、
前記公開鍵証明書情報から鍵情報を抽出する抽出工程と、
前記抽出工程で抽出した鍵情報を用いて、前記署名情報に基づく第１の値を求める第１の計算工程と、
前記認証情報に基づく第２の値を求める第２の計算工程と、
前記第１の値と前記第２の値とが一致しているか否かをチェックする第１のチェック工程と、
前記第１の値と前記第２の値とが一致している場合に、前記入力工程で入力した認証情報が、前記アプリケーションの起動を許可されたユーザの認証情報であるのかをチェックする第２のチェック工程と、
前記第２のチェック工程によるチェック結果に応じて、前記アプリケーションの起動を制御する制御工程と
を備えることを特徴とする情報処理方法。
【請求項１２】
情報処理装置が行う情報処理方法であって、
前記情報処理装置の所在を示す所在情報をメモリに保持する第１の保持工程と、
起動前に認証が必要なアプリケーションをメモリに保持する第２の保持工程と、
前記認証を介して前記アプリケーションを起動し、動作させる動作制御工程とを備え、
前記動作制御工程は、
前記アプリケーションを起動する前に、当該起動のための認証情報を入力する入力工程と、
認証局によって発行された公開鍵証明書情報に対応する鍵情報を用いて前記認証情報に基づく署名情報を作成する複数の署名工程と、
前記複数の署名工程のうち、前記所在情報が示す所在に応じて１つを選択する選択工程と、
前記選択工程で選択した署名工程によって、前記認証情報に基づく署名情報を作成させる工程と、
前記公開鍵証明書情報から鍵情報を抽出する第１の抽出工程と、
前記第１の抽出工程で抽出した鍵情報を用いて、前記署名情報に基づく第１の値を求める第１の計算工程と、
前記認証情報に基づく第２の値を求める第２の計算工程と、
前記第１の値と前記第２の値とが一致しているか否かをチェックする第１のチェック工程と、
前記第１の値と前記第２の値とが一致している場合に、前記入力工程で入力した認証情報が、前記アプリケーションの起動を許可されたユーザの認証情報であるのかをチェックする第２のチェック工程と、
前記公開鍵証明書情報から、前記公開鍵証明書情報を識別するための識別情報を抽出する第２の抽出工程と、
前記アプリケーションの起動、動作を行う複数の処理工程と、
前記入力工程で入力した認証情報が、前記アプリケーションの起動を許可されたユーザの認証情報である場合に、前記複数の処理工程のうち、前記識別情報に応じた処理工程でもって前記アプリケーションの起動を制御する制御工程と
を備えることを特徴とする情報処理方法。
【請求項１３】
情報処理装置が行う情報処理方法であって、
前記情報処理装置の所在を示す所在情報をメモリに保持する第１の保持工程と、
起動前に認証が必要なアプリケーションをメモリに保持する第２の保持工程と、
前記認証を介して前記アプリケーションを起動し、動作させる動作制御工程とを備え、
前記動作制御工程は、
前記アプリケーションを起動する前に、当該起動のための認証情報を入力する入力工程と、
認証局によって発行された公開鍵証明書情報に対応する鍵情報を用いて前記認証情報に基づく署名情報を作成する複数の署名工程と、
前記複数の署名工程のうち、前記所在情報が示す所在に応じて１つを選択する選択工程と、
前記選択工程で選択した署名工程によって、前記認証情報に基づく署名情報を作成させる工程と、
前記公開鍵証明書情報から鍵情報を抽出する第１の抽出工程と、
前記第１の抽出工程で抽出した鍵情報を用いて、前記署名情報に基づく第１の値を求める第１の計算工程と、
前記認証情報に基づく第２の値を求める第２の計算工程と、
前記第１の値と前記第２の値とが一致しているか否かをチェックする第１のチェック工程と、
前記第１の値と前記第２の値とが一致している場合に、前記入力工程で入力した認証情報が、前記アプリケーションの起動を許可されたユーザの認証情報であるのかをチェックする第２のチェック工程と、
前記公開鍵証明書情報から署名者情報を抽出する第２の抽出工程と、
前記入力工程で入力した認証情報が、前記アプリケーションの起動を許可されたユーザの認証情報である場合に、前記アプリケーションに対して要求された動作の種類と前記署名者情報とに応じて、前記アプリケーションの動作を制御する制御工程と
を備えることを特徴とする情報処理方法。
【請求項１４】
起動前に認証が必要なアプリケーションをメモリに保持する第１の保持工程と、
前記認証を介して前記アプリケーションを起動し、動作させる動作制御工程とを備え、
前記動作制御工程は、
前記アプリケーションを起動する前に、当該起動のための認証情報を入力する入力工程と、
認証局によって発行された公開鍵証明書情報に対応する鍵情報を用いて、前記認証情報に基づく署名情報を作成する作成工程と、
前記公開鍵証明書情報から鍵情報を抽出する抽出工程と、
前記抽出工程で抽出した鍵情報を用いて、前記署名情報に基づく第１の値を求める第１の計算工程と、
前記認証情報に基づく第２の値を求める第２の計算工程と、
前記第１の値と前記第２の値とが一致しているか否かをチェックする第１のチェック工程と、
前記第１の値と前記第２の値とが一致している場合に、前記入力工程で入力した認証情報が、前記アプリケーションの起動を許可されたユーザの認証情報であるのかをチェックする第２のチェック工程と、
前記公開鍵証明書情報から署名者情報を抽出する第２の抽出工程と、
前記入力工程で入力した認証情報が、前記アプリケーションの起動を許可されたユーザの認証情報である場合に、前記アプリケーションに対して要求された動作の種類と前記署名者情報とに応じて、前記アプリケーションの動作を制御する制御工程と
を備えることを特徴とする情報処理方法。
【請求項１５】
起動前に認証が必要なアプリケーションをメモリに保持する第１の保持工程と、
前記認証を介して前記アプリケーションを起動し、動作させる動作制御工程とを備え、
前記動作制御工程は、
前記アプリケーションを起動する前に、当該起動のための認証情報を入力する入力工程と、
認証局によって発行された公開鍵証明書情報に対応する鍵情報を用いて、前記認証情報に基づく署名情報を作成する作成工程と、
前記公開鍵証明書情報から鍵情報を抽出する抽出工程と、
前記抽出工程で抽出した鍵情報を用いて、前記署名情報に基づく第１の値を求める第１の計算工程と、
前記認証情報に基づく第２の値を求める第２の計算工程と、
前記第１の値と前記第２の値とが一致しているか否かをチェックする第１のチェック工程と、
前記第１の値と前記第２の値とが一致している場合に、前記入力工程で入力した認証情報が、前記アプリケーションの起動を許可されたユーザの認証情報であるのかをチェックする第２のチェック工程と、
前記公開鍵証明書情報から署名者情報を抽出する第２の抽出工程と、
前記アプリケーションの起動、動作を行う複数の処理工程と、
前記入力工程で入力した認証情報が、前記アプリケーションの起動を許可されたユーザの認証情報である場合に、前記複数の処理工程のうち、前記識別情報に応じた処理工程でもって前記アプリケーションの起動を制御する制御工程と
を備えることを特徴とする情報処理方法。
【請求項１６】
起動前に認証が必要なアプリケーションをメモリに保持する第１の保持工程と、
前記認証を介して前記アプリケーションを起動し、動作させる動作制御工程とを備え、
前記動作制御工程は、
前記アプリケーションを起動する前に、当該起動のための認証情報を入力する入力工程と、
認証局によって発行された公開鍵証明書情報に対応する鍵情報を用いて、前記認証情報に基づく署名情報を作成する作成工程と、
前記公開鍵証明書情報から鍵情報を抽出する抽出工程と、
前記抽出工程で抽出した鍵情報を用いて、前記署名情報に基づく第１の値を求める第１の計算工程と、
前記認証情報に基づく第２の値を求める第２の計算工程と、
前記第１の値と前記第２の値とが一致しているか否かをチェックする第１のチェック工程と、
前記第１の値と前記第２の値とが一致している場合に、前記入力工程で入力した認証情報が、前記アプリケーションの起動を許可されたユーザの認証情報であるのかをチェックする第２のチェック工程と、
前記公開鍵証明書情報から、前記公開鍵証明書情報を識別するための識別情報を抽出する第２の抽出工程と、
前記アプリケーションの起動、動作を行う複数の処理工程と、
前記入力工程で入力した認証情報が、前記アプリケーションの起動を許可されたユーザの認証情報である場合に、前記複数の処理工程のうち、前記識別情報に応じた処理工程でもって前記アプリケーションの起動を制御する制御工程と
を備えることを特徴とする情報処理方法。
【請求項１７】
コンピュータに請求項１１乃至１６の何れか１項に記載の情報処理方法を実行させる為のプログラム。
【請求項１８】
請求項１７に記載のプログラムを格納したことを特徴とする、コンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アプリケーションの起動、実行に係る技術に関するものである。
【背景技術】
【０００２】
ユーザがローカル環境にダウンロードし、インストールしたアプリケーションがサーバ上で更新された場合、ユーザは更新されたアプリケーションを再度ダウンロードして、ローカル環境にインストールする必要がある。これに対しては、例えば以下のようなアプリケーションが開示されている。即ち、サーバ上でアプリケーションが更新され、ローカル環境上のアプリケーションを起動するときに、サーバにおけるアプリケーションの更新に関する情報を監視し、ローカル環境上のアプリケーションを更新する（特許文献１を参照）。
【０００３】
また、配付アプリケーションの保護に関して、著作権に基づいた保護を行う技術も開示されている（特許文献２を参照）。この技術によれば、アプリケーションを予め暗号化しておき、実行時に復号する。
【特許文献１】特表２００３−５２１０３６号公報
【特許文献２】特開２００３−３３０５６０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ダウンロードしたアプリケーションが正当なユーザにのみ利用されることを担保する為には、一般的には、アプリケーションの起動時にユーザ認証を求める必要がある。しかし、ユーザが複数のアプリケーションを利用する場合、起動の度にユーザ認証をユーザに求めることになり、利便性に問題がある。暗号・復号によるアプリケーション保護でも同様に、実行時の処理コストが高くなり、利便性に問題がある。
【０００５】
一方、アプリケーションを起動する専用のソフトウェア（一般にランチャと呼ばれる）を準備して、そこで一括してユーザ認証を行えば、このような問題は解消する。しかしその反面、アプリケーションが単独で起動される、あるいは、悪意のユーザが正当なユーザになりすますためランチャが偽造される、等の危惧がある。
【０００６】
本発明は以上の問題に鑑みて成されたものであり、セキュリティーを維持したアプリケーションの実行を行うための技術を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の目的を達成するために、例えば、本発明の情報処理装置は以下の構成を備える。
【０００８】
即ち、起動前に認証が必要なアプリケーションを保持する第１の保持手段と、
前記認証を介して前記アプリケーションを起動し、動作させる動作制御手段とを備え、
前記動作制御手段は、
前記アプリケーションを起動する前に、当該起動のための認証情報を入力する入力手段と、
認証局によって発行された公開鍵証明書情報に対応する鍵情報を用いて、前記認証情報に基づく署名情報を作成する作成手段と、
前記公開鍵証明書情報から鍵情報を抽出する抽出手段と、
前記抽出手段が抽出した鍵情報を用いて、前記署名情報に基づく第１の値を求める第１の計算手段と、
前記認証情報に基づく第２の値を求める第２の計算手段と、
前記第１の値と前記第２の値とが一致しているか否かをチェックする第１のチェック手段と、
前記第１の値と前記第２の値とが一致している場合に、前記入力手段が入力した認証情報が、前記アプリケーションの起動を許可されたユーザの認証情報であるのかをチェックする第２のチェック手段と、
前記第２のチェック手段によるチェック結果に応じて、前記アプリケーションの起動を制御する制御手段と
を備えることを特徴とする。
【０００９】
本発明の目的を達成するために、例えば、本発明の情報処理装置は以下の構成を備える。
【００１０】
即ち、情報処理装置であって、
前記情報処理装置の所在を示す所在情報を保持する第１の保持手段と、
起動前に認証が必要なアプリケーションを保持する第２の保持手段と、
前記認証を介して前記アプリケーションを起動し、動作させる動作制御手段とを備え、
前記動作制御手段は、
前記アプリケーションを起動する前に、当該起動のための認証情報を入力する入力手段と、
認証局によって発行された公開鍵証明書情報に対応する鍵情報を用いて前記認証情報に基づく署名情報を作成する複数の署名手段と、
前記複数の署名手段のうち、前記所在情報が示す所在に応じて１つを選択する選択手段と、
前記選択手段が選択した署名手段によって、前記認証情報に基づく署名情報を作成させる手段と、
前記公開鍵証明書情報から鍵情報を抽出する第１の抽出手段と、
前記第１の抽出手段が抽出した鍵情報を用いて、前記署名情報に基づく第１の値を求める第１の計算手段と、
前記認証情報に基づく第２の値を求める第２の計算手段と、
前記第１の値と前記第２の値とが一致しているか否かをチェックする第１のチェック手段と、
前記第１の値と前記第２の値とが一致している場合に、前記入力手段が入力した認証情報が、前記アプリケーションの起動を許可されたユーザの認証情報であるのかをチェックする第２のチェック手段と、
前記公開鍵証明書情報から、前記公開鍵証明書情報を識別するための識別情報を抽出する第２の抽出手段と、
前記アプリケーションの起動、動作を行う複数の処理手段と、
前記入力手段が入力した認証情報が、前記アプリケーションの起動を許可されたユーザの認証情報である場合に、前記複数の処理手段のうち、前記識別情報に応じた処理手段でもって前記アプリケーションの起動を制御する制御手段と
を備えることを特徴とする。
【００１１】
本発明の目的を達成するために、例えば、本発明の情報処理装置は以下の構成を備える。
【００１２】
即ち、情報処理装置であって、
前記情報処理装置の所在を示す所在情報を保持する第１の保持手段と、
起動前に認証が必要なアプリケーションを保持する第２の保持手段と、
前記認証を介して前記アプリケーションを起動し、動作させる動作制御手段とを備え、
前記動作制御手段は、
前記アプリケーションを起動する前に、当該起動のための認証情報を入力する入力手段と、
認証局によって発行された公開鍵証明書情報に対応する鍵情報を用いて前記認証情報に基づく署名情報を作成する複数の署名手段と、
前記複数の署名手段のうち、前記所在情報が示す所在に応じて１つを選択する選択手段と、
前記選択手段が選択した署名手段によって、前記認証情報に基づく署名情報を作成させる手段と、
前記公開鍵証明書情報から鍵情報を抽出する第１の抽出手段と、
前記第１の抽出手段が抽出した鍵情報を用いて、前記署名情報に基づく第１の値を求める第１の計算手段と、
前記認証情報に基づく第２の値を求める第２の計算手段と、
前記第１の値と前記第２の値とが一致しているか否かをチェックする第１のチェック手段と、
前記第１の値と前記第２の値とが一致している場合に、前記入力手段が入力した認証情報が、前記アプリケーションの起動を許可されたユーザの認証情報であるのかをチェックする第２のチェック手段と、
前記公開鍵証明書情報から署名者情報を抽出する第２の抽出手段と、
前記入力手段が入力した認証情報が、前記アプリケーションの起動を許可されたユーザの認証情報である場合に、前記アプリケーションに対して要求された動作の種類と前記署名者情報とに応じて、前記アプリケーションの動作を制御する制御手段と
を備えることを特徴とする。
【００１３】
本発明の目的を達成するために、例えば、本発明の情報処理装置は以下の構成を備える。
【００１４】
即ち、起動前に認証が必要なアプリケーションを保持する第１の保持手段と、
前記認証を介して前記アプリケーションを起動し、動作させる動作制御手段とを備え、
前記動作制御手段は、
前記アプリケーションを起動する前に、当該起動のための認証情報を入力する入力手段と、
認証局によって発行された公開鍵証明書情報に対応する鍵情報を用いて、前記認証情報に基づく署名情報を作成する作成手段と、
前記公開鍵証明書情報から鍵情報を抽出する抽出手段と、
前記抽出手段が抽出した鍵情報を用いて、前記署名情報に基づく第１の値を求める第１の計算手段と、
前記認証情報に基づく第２の値を求める第２の計算手段と、
前記第１の値と前記第２の値とが一致しているか否かをチェックする第１のチェック手段と、
前記第１の値と前記第２の値とが一致している場合に、前記入力手段が入力した認証情報が、前記アプリケーションの起動を許可されたユーザの認証情報であるのかをチェックする第２のチェック手段と、
前記公開鍵証明書情報から署名者情報を抽出する第２の抽出手段と、
前記入力手段が入力した認証情報が、前記アプリケーションの起動を許可されたユーザの認証情報である場合に、前記アプリケーションに対して要求された動作の種類と前記署名者情報とに応じて、前記アプリケーションの動作を制御する制御手段と
を備えることを特徴とする。
【００１５】
本発明の目的を達成するために、例えば、本発明の情報処理装置は以下の構成を備える。
【００１６】
即ち、起動前に認証が必要なアプリケーションを保持する第１の保持手段と、
前記認証を介して前記アプリケーションを起動し、動作させる動作制御手段とを備え、
前記動作制御手段は、
前記アプリケーションを起動する前に、当該起動のための認証情報を入力する入力手段と、
認証局によって発行された公開鍵証明書情報に対応する鍵情報を用いて、前記認証情報に基づく署名情報を作成する作成手段と、
前記公開鍵証明書情報から鍵情報を抽出する抽出手段と、
前記抽出手段が抽出した鍵情報を用いて、前記署名情報に基づく第１の値を求める第１の計算手段と、
前記認証情報に基づく第２の値を求める第２の計算手段と、
前記第１の値と前記第２の値とが一致しているか否かをチェックする第１のチェック手段と、
前記第１の値と前記第２の値とが一致している場合に、前記入力手段が入力した認証情報が、前記アプリケーションの起動を許可されたユーザの認証情報であるのかをチェックする第２のチェック手段と、
前記公開鍵証明書情報から、前記公開鍵証明書情報を識別するための識別情報を抽出する第２の抽出手段と、
前記アプリケーションの起動、動作を行う複数の処理手段と、
前記入力手段が入力した認証情報が、前記アプリケーションの起動を許可されたユーザの認証情報である場合に、前記複数の処理手段のうち、前記識別情報に応じた処理手段でもって前記アプリケーションの起動を制御する制御手段と
を備えることを特徴とする。
【００１７】
本発明の目的を達成するために、例えば、本発明の情報処理方法は以下の構成を備える。
【００１８】
即ち、起動前に認証が必要なアプリケーションをメモリに保持する第１の保持工程と、
前記認証を介して前記アプリケーションを起動し、動作させる動作制御工程とを備え、
前記動作制御工程は、
前記アプリケーションを起動する前に、当該起動のための認証情報を入力する入力工程と、
認証局によって発行された公開鍵証明書情報に対応する鍵情報を用いて、前記認証情報に基づく署名情報を作成する作成工程と、
前記公開鍵証明書情報から鍵情報を抽出する抽出工程と、
前記抽出工程で抽出した鍵情報を用いて、前記署名情報に基づく第１の値を求める第１の計算工程と、
前記認証情報に基づく第２の値を求める第２の計算工程と、
前記第１の値と前記第２の値とが一致しているか否かをチェックする第１のチェック工程と、
前記第１の値と前記第２の値とが一致している場合に、前記入力工程で入力した認証情報が、前記アプリケーションの起動を許可されたユーザの認証情報であるのかをチェックする第２のチェック工程と、
前記第２のチェック工程によるチェック結果に応じて、前記アプリケーションの起動を制御する制御工程と
を備えることを特徴とする。
【００１９】
本発明の目的を達成するために、例えば、本発明の情報処理方法は以下の構成を備える。
【００２０】
即ち、情報処理装置が行う情報処理方法であって、
前記情報処理装置の所在を示す所在情報をメモリに保持する第１の保持工程と、
起動前に認証が必要なアプリケーションをメモリに保持する第２の保持工程と、
前記認証を介して前記アプリケーションを起動し、動作させる動作制御工程とを備え、
前記動作制御工程は、
前記アプリケーションを起動する前に、当該起動のための認証情報を入力する入力工程と、
認証局によって発行された公開鍵証明書情報に対応する鍵情報を用いて前記認証情報に基づく署名情報を作成する複数の署名工程と、
前記複数の署名工程のうち、前記所在情報が示す所在に応じて１つを選択する選択工程と、
前記選択工程で選択した署名工程によって、前記認証情報に基づく署名情報を作成させる工程と、
前記公開鍵証明書情報から鍵情報を抽出する第１の抽出工程と、
前記第１の抽出工程で抽出した鍵情報を用いて、前記署名情報に基づく第１の値を求める第１の計算工程と、
前記認証情報に基づく第２の値を求める第２の計算工程と、
前記第１の値と前記第２の値とが一致しているか否かをチェックする第１のチェック工程と、
前記第１の値と前記第２の値とが一致している場合に、前記入力工程で入力した認証情報が、前記アプリケーションの起動を許可されたユーザの認証情報であるのかをチェックする第２のチェック工程と、
前記公開鍵証明書情報から、前記公開鍵証明書情報を識別するための識別情報を抽出する第２の抽出工程と、
前記アプリケーションの起動、動作を行う複数の処理工程と、
前記入力工程で入力した認証情報が、前記アプリケーションの起動を許可されたユーザの認証情報である場合に、前記複数の処理工程のうち、前記識別情報に応じた処理工程でもって前記アプリケーションの起動を制御する制御工程と
を備えることを特徴とする。
【００２１】
本発明の目的を達成するために、例えば、本発明の情報処理方法は以下の構成を備える。
【００２２】
即ち、情報処理装置が行う情報処理方法であって、
前記情報処理装置の所在を示す所在情報をメモリに保持する第１の保持工程と、
起動前に認証が必要なアプリケーションをメモリに保持する第２の保持工程と、
前記認証を介して前記アプリケーションを起動し、動作させる動作制御工程とを備え、
前記動作制御工程は、
前記アプリケーションを起動する前に、当該起動のための認証情報を入力する入力工程と、
認証局によって発行された公開鍵証明書情報に対応する鍵情報を用いて前記認証情報に基づく署名情報を作成する複数の署名工程と、
前記複数の署名工程のうち、前記所在情報が示す所在に応じて１つを選択する選択工程と、
前記選択工程で選択した署名工程によって、前記認証情報に基づく署名情報を作成させる工程と、
前記公開鍵証明書情報から鍵情報を抽出する第１の抽出工程と、
前記第１の抽出工程で抽出した鍵情報を用いて、前記署名情報に基づく第１の値を求める第１の計算工程と、
前記認証情報に基づく第２の値を求める第２の計算工程と、
前記第１の値と前記第２の値とが一致しているか否かをチェックする第１のチェック工程と、
前記第１の値と前記第２の値とが一致している場合に、前記入力工程で入力した認証情報が、前記アプリケーションの起動を許可されたユーザの認証情報であるのかをチェックする第２のチェック工程と、
前記公開鍵証明書情報から署名者情報を抽出する第２の抽出工程と、
前記入力工程で入力した認証情報が、前記アプリケーションの起動を許可されたユーザの認証情報である場合に、前記アプリケーションに対して要求された動作の種類と前記署名者情報とに応じて、前記アプリケーションの動作を制御する制御工程と
を備えることを特徴とする。
【００２３】
本発明の目的を達成するために、例えば、本発明の情報処理方法は以下の構成を備える。
【００２４】
即ち、起動前に認証が必要なアプリケーションをメモリに保持する第１の保持工程と、
前記認証を介して前記アプリケーションを起動し、動作させる動作制御工程とを備え、
前記動作制御工程は、
前記アプリケーションを起動する前に、当該起動のための認証情報を入力する入力工程と、
認証局によって発行された公開鍵証明書情報に対応する鍵情報を用いて、前記認証情報に基づく署名情報を作成する作成工程と、
前記公開鍵証明書情報から鍵情報を抽出する抽出工程と、
前記抽出工程で抽出した鍵情報を用いて、前記署名情報に基づく第１の値を求める第１の計算工程と、
前記認証情報に基づく第２の値を求める第２の計算工程と、
前記第１の値と前記第２の値とが一致しているか否かをチェックする第１のチェック工程と、
前記第１の値と前記第２の値とが一致している場合に、前記入力工程で入力した認証情報が、前記アプリケーションの起動を許可されたユーザの認証情報であるのかをチェックする第２のチェック工程と、
前記公開鍵証明書情報から署名者情報を抽出する第２の抽出工程と、
前記入力工程で入力した認証情報が、前記アプリケーションの起動を許可されたユーザの認証情報である場合に、前記アプリケーションに対して要求された動作の種類と前記署名者情報とに応じて、前記アプリケーションの動作を制御する制御工程と
を備えることを特徴とする。
【００２５】
本発明の目的を達成するために、例えば、本発明の情報処理方法は以下の構成を備える。
【００２６】
即ち、起動前に認証が必要なアプリケーションをメモリに保持する第１の保持工程と、
前記認証を介して前記アプリケーションを起動し、動作させる動作制御工程とを備え、
前記動作制御工程は、
前記アプリケーションを起動する前に、当該起動のための認証情報を入力する入力工程と、
認証局によって発行された公開鍵証明書情報に対応する鍵情報を用いて、前記認証情報に基づく署名情報を作成する作成工程と、
前記公開鍵証明書情報から鍵情報を抽出する抽出工程と、
前記抽出工程で抽出した鍵情報を用いて、前記署名情報に基づく第１の値を求める第１の計算工程と、
前記認証情報に基づく第２の値を求める第２の計算工程と、
前記第１の値と前記第２の値とが一致しているか否かをチェックする第１のチェック工程と、
前記第１の値と前記第２の値とが一致している場合に、前記入力工程で入力した認証情報が、前記アプリケーションの起動を許可されたユーザの認証情報であるのかをチェックする第２のチェック工程と、
前記公開鍵証明書情報から署名者情報を抽出する第２の抽出工程と、
前記アプリケーションの起動、動作を行う複数の処理工程と、
前記入力工程で入力した認証情報が、前記アプリケーションの起動を許可されたユーザの認証情報である場合に、前記複数の処理工程のうち、前記識別情報に応じた処理工程でもって前記アプリケーションの起動を制御する制御工程と
を備えることを特徴とする。
【００２７】
本発明の目的を達成するために、例えば、本発明の情報処理方法は以下の構成を備える。
【００２８】
即ち、起動前に認証が必要なアプリケーションをメモリに保持する第１の保持工程と、
前記認証を介して前記アプリケーションを起動し、動作させる動作制御工程とを備え、
前記動作制御工程は、
前記アプリケーションを起動する前に、当該起動のための認証情報を入力する入力工程と、
認証局によって発行された公開鍵証明書情報に対応する鍵情報を用いて、前記認証情報に基づく署名情報を作成する作成工程と、
前記公開鍵証明書情報から鍵情報を抽出する抽出工程と、
前記抽出工程で抽出した鍵情報を用いて、前記署名情報に基づく第１の値を求める第１の計算工程と、
前記認証情報に基づく第２の値を求める第２の計算工程と、
前記第１の値と前記第２の値とが一致しているか否かをチェックする第１のチェック工程と、
前記第１の値と前記第２の値とが一致している場合に、前記入力工程で入力した認証情報が、前記アプリケーションの起動を許可されたユーザの認証情報であるのかをチェックする第２のチェック工程と、
前記公開鍵証明書情報から、前記公開鍵証明書情報を識別するための識別情報を抽出する第２の抽出工程と、
前記アプリケーションの起動、動作を行う複数の処理工程と、
前記入力工程で入力した認証情報が、前記アプリケーションの起動を許可されたユーザの認証情報である場合に、前記複数の処理工程のうち、前記識別情報に応じた処理工程でもって前記アプリケーションの起動を制御する制御工程と
を備えることを特徴とする。
【発明の効果】
【００２９】
本発明の構成により、セキュリティーを維持したアプリケーションの実行を行うことができる。
【発明を実施するための最良の形態】
【００３０】
以下添付図面を参照して、本発明を好適な実施形態に従って詳細に説明する。
【００３１】
［第１の実施形態］
図１は、本実施形態に係る情報処理装置としてのコンピュータ１５００の機能構成を示すブロック図である。このコンピュータ１５００には、例えば、一般のＰＣ（パーソナルコンピュータ）やＷＳ（ワークステーション）などを適用することができる。
【００３２】
同図に示す如く、コンピュータ１５００は、起動装置１０、署名装置２０、アプリケーション３０、表示デバイス２００により構成されている。
【００３３】
先ず、起動装置１０について説明する。起動装置１０は、コンピュータ１５００の操作者がアプリケーション３０を起動する前段で、このユーザに対して認証を行うための一連の処理を行うものであり、認証部４０，起動依頼部５０を有する。
【００３４】
認証部４０は、アプリケーション３０を起動しようとするユーザに対して認証を行うべく、表示デバイス２００に認証のためのＧＵＩ（グラフィカルユーザインターフェース）２１０を表示する。このＧＵＩ２１０は同図に示す如く、ユーザＩＤ、パスワードのセットをユーザに入力させるためのものである。ユーザがこのＧＵＩ２１０を用いてユーザＩＤ、パスワードのセットを入力すると、認証部４０は、後述の認証処理を行う。認証部４０は、この認証処理のために、予め複数ユーザのそれぞれについて、ユーザＩＤ、パスワードのセットを保持している。本実施形態では、その１つとして同図に示す如く、｛ユーザＩＤ、パスワード｝＝｛”ＸＸＸ”、”ｐａｓｓ”｝のセットを保持しているものとする。
【００３５】
また、認証部４０は、認証を行った後に、ＧＵＩ２１０を用いて入力されたセットの一部若しくは全部を含む情報（認証情報）１００を生成する。本実施形態では、この認証情報１００には、ユーザＩＤのみを含めるものとする。
【００３６】
起動依頼部５０は、この認証情報１００を署名装置２０に対して出力する。そして、署名装置２０がこの認証情報１００に基づいて生成した署名情報１１０、公開鍵証明書情報１２０を署名装置２０から取得し、認証情報１００とセットにしてアプリケーション３０に渡す。
【００３７】
次に、署名装置２０について説明する。署名装置２０は、起動装置１０から出力された認証情報１００を受け、これに基づいて署名情報１１０を生成する署名部６０を有する。署名部６０による署名情報１１０の生成処理については後述する。更に、署名部６０は、認証局９０により発行された公開鍵証明書情報１２０と、認証情報１００から署名情報１１０を生成する際に用いる秘密鍵１３０とを保持している。なお、この公開鍵証明書情報１２０は、秘密鍵１３０と一対一に対応するものである。
【００３８】
次に、アプリケーション３０について説明する。アプリケーション３０の起動を許可されたユーザは予め決まっている。そこで、アプリケーション３０は、起動しようとするユーザが、起動許可されているユーザであるのか否かをチェックする起動権判定部７０を有する。起動権判定部７０は、認証局９０が発行した認証局証明書情報１４０と、アプリケーション３０の起動許可を与えられたユーザに係る情報（認可情報）１５０とを有する。本実施形態では、認可情報１５０は、アプリケーション３０の起動許可が与えられたユーザのユーザＩＤとし、同図に示す如く、３人のユーザのそれぞれのユーザＩＤ｛”ＸＸＸ”、”ＹＹＹ”、”ＺＺＺ”｝とする。起動権判定部７０によるチェック処理については後述する。
【００３９】
また、アプリケーション３０は、起動権判定部７０によるチェック処理の結果に応じてアプリケーション３０の起動を制御する処理部８０を有する。
【００４０】
次に、表示デバイス２００について説明する。表示デバイス２００は、ＣＲＴや液晶画面などにより構成された表示装置であり、上記ＧＵＩ２１０を表示する。
【００４１】
図２は、コンピュータ１５００のハードウェア構成を示すブロック図である。
【００４２】
２０１はＣＰＵで、ＲＡＭ２０２やＲＯＭ２０３に格納されているプログラムやデータを用いてコンピュータ１５００全体の制御を行うと共に、コンピュータ１５００が行う後述の各処理を実行する。
【００４３】
２０２はＲＡＭで、外部記憶装置２０６からロードされたプログラムやデータを一時的に記憶するためのエリアや、ＣＰＵ２０１が各種の処理を実行する際に用いるワークエリアなど、各種のエリアを適宜提供することができる。
【００４４】
２０３はＲＯＭで、コンピュータ１５００の設定データや、ブートプログラム等を格納する。
【００４５】
２０４は操作部で、キーボードやマウスなどにより構成されており、コンピュータ１５００のユーザが操作することで、各種の指示をＣＰＵ２０１に対して入力することができる。
【００４６】
２０５は表示部２０５で、ＣＲＴや液晶画面などにより構成されており、ＣＰＵ２０１による処理結果を画像や文字などでもって表示することができる。なお、図１において表示デバイス２００に相当するものである。
【００４７】
２０６は外部記憶装置で、ハードディスクドライブ装置に代表される大容量情報記憶装置である。ここには例えば、ＯＳ（オペレーティングシステム）や、コンピュータ１５００が行う後述の各処理をＣＰＵ２０１に実行させるためのプログラムやデータが保存されている。また、上記アプリケーション３０もここに保存されている。これらの一部若しくは全部はＣＰＵ２０１による制御に基づいて適宜ＲＡＭ２０２にロードされ、ＣＰＵ２０１による処理対象となっている。
【００４８】
２０８は上述の各部を繋ぐバスである。
【００４９】
なお、本実施形態では、図１に示した起動装置１０、署名装置２０、アプリケーション３０については全てプログラムやデータの形態でもって外部記憶装置２０６に保存されており、必要に応じてＲＡＭ２０２にロードされるものであるとする。そして、ＲＡＭ２０２にロードされたこれらプログラムやデータはＣＰＵ２０１による処理対象となり、その結果、ＣＰＵ２０１は、起動装置１０、署名装置２０、アプリケーション３０が行う後述の各機能を実現する。
【００５０】
次に、コンピュータ１５００によって、アプリケーション３０を起動し、動作させるために、図１に示した各部が行う処理について、図３に示すフローチャートを用いて説明する。図３は、アプリケーション３０を起動し、動作させるためにコンピュータ１５００が行う処理のフローチャートである。
【００５１】
ユーザが操作部２０４を用いて起動装置１０を起動する旨を入力すると、ＣＰＵ２０１は起動装置１０を起動する（ステップＳ１）。起動装置１０は認証部４０を起動し、認証部４０は、図４に示す認証に係る一連の処理を実行する（ステップＳ２）。
【００５２】
図４は、ステップＳ２における処理の詳細を示すフローチャートである。
【００５３】
先ず、起動装置１０が認証部４０を起動する（ステップＳ４００）と、ＲＡＭ２０２や外部記憶装置２０６内に認証情報１００が保持されているのか否かをチェックする（ステップＳ４０１）。ここでは保持されていないとするので、処理をステップＳ４０２を介してステップＳ４０３に進め、認証部４０は、ＧＵＩ２１０を表示デバイス２００の表示画面上に表示する（ステップＳ４０３）。そしてこのＧＵＩ２１０を介して入力されるユーザＩＤ、パスワードのセットを受け付ける（ステップＳ４０４）。そして、このセットが入力されると、認証部４０は、入力されたセットが、自身が保持しているセットのうち何れに該当しているのかをチェックする（ステップＳ４０５）。本実施形態では、認証部４０は、｛ユーザＩＤ、パスワード｝＝｛”ＸＸＸ”、”ｐａｓｓ”｝のセットを保持している。
【００５４】
このチェックの結果、ステップＳ４０４で入力されたセットが、認証部４０自身が保持しているセットのうち何れかにも一致していない場合には、本処理を終了する。一方、ステップＳ４０４で入力されたセットが、認証部４０自身が保持しているセットのうち何れかに一致している場合には処理をステップＳ４０６を介してステップＳ４０７に進める。そして、ステップＳ４０４で入力されたセット中のユーザＩＤを認証情報１００として作成し（ステップＳ４０７）、処理をステップＳ３に戻す。
【００５５】
本実施形態の場合、ステップＳ４０４において｛ユーザＩＤ、パスワード｝＝｛”ＸＸＸ”、”ｐａｓｓ”｝のセットを入力すれば、認証部４０が保持しているセットと一致する。従ってこの場合、ステップＳ４０７では、認証情報１００＝｛”ＸＸＸ”｝として作成することになる。
【００５６】
図３に戻って、次に、起動装置１０は、起動依頼部５０を起動する（ステップＳ３）。そして、起動した起動依頼部５０は、図４に示した処理でもって作成した認証情報１００を署名装置２０に送出する（ステップＳ４）。そして、署名装置２０は署名部６０を起動し、署名部６０は図５に示す一連の署名処理、即ち、この認証情報１００に基づく署名情報１１０を作成する処理を行う（ステップＳ５）。
【００５７】
図５は、ステップＳ５における処理の詳細を示すフローチャートである。
【００５８】
先ず、署名装置２０が署名部６０を起動する（ステップＳ５００）と、署名部６０は、認証情報１００のハッシュ値を生成する（ステップＳ５０１）。ハッシュ値の生成方法については様々な方法があり、特に限定するものではないが、例えば、公知の技術であるハッシュ関数ＲＳＡ１を用いてハッシュ値を生成する。
【００５９】
次に、署名部６０は、秘密鍵１３０を用いて、このハッシュ値から署名情報１１０を生成する（ステップＳ５０２）。署名のためのアルゴリズムについては様々なものが考えられるが、例えば、ＤＳＡを用いる。
【００６０】
そして、署名部６０は、生成した署名情報１１０と、公開鍵証明書情報１２０とを、起動装置１０の起動依頼部５０に送出する（ステップＳ５０３）。そして、処理をステップＳ６に進める。
【００６１】
図３に戻って、次に、起動依頼部５０は、アプリケーション３０に対して起動を要求すると共に、認証情報１００、署名情報１１０、公開鍵証明書情報１２０をセットにして、アプリケーション３０に送出する（ステップＳ６）。
【００６２】
次に、アプリケーション３０は、起動権判定部７０を起動し（ステップＳ７）、起動権判定部７０は図６に示す一連の処理、即ち、アプリケーション３０を起動するか否かをチェックするための一連の処理を行う（ステップＳ８）。
【００６３】
図６は、ステップＳ８における処理の詳細を示すフローチャートである。
【００６４】
先ず、起動権判定部７０は、公開鍵証明書情報１２０と、認証局証明書情報１４０とを比較し、公開鍵証明書情報１２０が、認証局９０で発行されたものであるのかのチェックを行う（ステップＳ８０１）。このようなチェックの処理は一般的であるので、ここでの説明は省略する。
【００６５】
このチェック処理の結果、公開鍵証明書情報１２０が認証局９０で発行されたものでは無い場合には本処理を終了する。一方、公開鍵証明書情報１２０が認証局９０で発行されたものである場合には処理をステップＳ８０２に進める。そして、起動権判定部７０は、公開鍵証明書情報１２０から公開鍵を抽出し、抽出した公開鍵を用いて署名情報１１０を復号し、ハッシュ値を取得する（ステップＳ８０２）。
【００６６】
次に、起動権判定部７０は、ハッシュ関数を用いて認証情報１００のハッシュ値を計算する（ステップＳ８０３）。そして、ステップＳ８０２で取得したハッシュ値と、ステップＳ８０３で計算したハッシュ値とを比較し、一致しているのか否かをチェックする（ステップＳ８０４）。このチェックの結果、一致していない場合には、何れかの情報が改竄されているものと判断されるので、本処理を終了する。
【００６７】
一方、一致している場合には処理をステップＳ８０５に進める。そして、認可情報１５０を参照し、認可情報１５０中に、認証情報１００に一致するものが含まれているのか否かをチェックする（ステップＳ８０５）。本実施形態では、認可情報１５０には上述の通り３人のユーザのユーザＩＤ｛”ＸＸＸ”、”ＹＹＹ”、”ＺＺＺ”｝が含まれており、認証情報１００は認証情報１００＝｛”ＸＸＸ”｝である。従って、認可情報１５０中に、認証情報１００に一致するものが含まれている。この場合、処理をステップＳ９に戻す。
【００６８】
図３に戻って、次に、起動権判定部７０は、処理部８０を起動し、処理部８０はアプリケーション３０の起動、及び実行を行う（ステップＳ９）。
【００６９】
以上の説明により、本実施形態によれば、ユーザの認証と署名の検証結果によりアプリケーションの起動を制御することができる。
【００７０】
なお、本実施形態では、認証情報１００にはユーザＩＤを含めるようにしたが、ユーザを識別するためのものであれば、含める情報の種類については特に限定するものではない。その場合、認可情報１５０は、認証情報１００に対応したものを用意する必要がある。例えば、認証情報１００としてパスワードを用いる場合には、認可情報１５０として、アプリケーション３０の起動許可が与えられたユーザのパスワードを用いる。
【００７１】
また、本実施形態では、起動装置１０、署名装置２０、アプリケーション３０、表示デバイス２００は全て１つの装置を構成するものとして説明したが、これに限定するものではなく、適宜別個の構成であっても良い。例えば、起動装置１０、表示デバイス２００、アプリケーション３０でもってコンピュータ１５００を構成し、署名装置２０をこのコンピュータ１５００と別個の装置としても良い。その場合、署名装置２０とコンピュータ１５００とはＬＡＮやインターネットなどの無線／有線ネットワークを介して互いにデータ通信を行うことになる。
【００７２】
［第２の実施形態］
図７は、本実施形態に係る情報処理装置としてのコンピュータ５１５００の機能構成を示すブロック図である。このコンピュータ５１５００には、例えば、一般のＰＣ（パーソナルコンピュータ）やＷＳ（ワークステーション）などを適用することができる。
【００７３】
同図に示す如く、コンピュータ５１５００は、起動装置５１０、署名装置５２０，５２１、アプリケーション５３０、表示デバイス２００により構成されている。
【００７４】
先ず、起動装置５１０について説明する。起動装置５１０は、コンピュータ５１５００の操作者がアプリケーション５３０を起動する前段で、このユーザに対して認証を行うための一連の処理を行うものであり、認証部５４０，位置情報取得部５５０、署名装置選択部５６０、起動依頼部５７０を有する。
【００７５】
認証部５４０は、アプリケーション５３０を起動しようとするユーザに対して認証を行うべく、表示デバイス２００に認証のためのＧＵＩ２１０（グラフィカルユーザインターフェース）を表示する。このＧＵＩ２１０は同図に示す如く、ユーザＩＤ、パスワードのセットをユーザに入力させるためのものである。ユーザがこのＧＵＩ２１０を用いてユーザＩＤ、パスワードのセットを入力すると、認証部５４０は、後述の認証処理を行う。認証部５４０は、この認証処理のために、予め複数ユーザのそれぞれについて、ユーザＩＤ、パスワードのセットを保持している。本実施形態では、その１つとして、｛ユーザＩＤ、パスワード｝＝｛”ＸＸＸ”、”ｐａｓｓ”｝のセットを保持しているものとする。
【００７６】
また、認証部５４０は、認証を行った後に、ＧＵＩ２１０を用いて入力されたセットの一部若しくは全部を含む情報（認証情報）５１２０を生成する。本実施形態では、この認証情報５１２０には、ユーザＩＤのみを含めるものとする。
【００７７】
位置情報取得部５５０は、コンピュータ５１５００の所在を示す情報（所在情報）を取得するものである。コンピュータ５１５００の所在については様々な表現方法があるが、例えば、コンピュータ５１５００がネットワークに接続されている場合には、このネットワーク上におけるＩＰアドレスであっても良い。更にその他の例としては、ＧＰＳ（グローバルポジショニングシステム）でもって取得される地球上のコンピュータ５１５００の位置情報と、アクセス可能範囲を地図上のエリアで決定した地図情報とでもって所在情報を構成するようにしても良い。本実施形態では所在情報にはＩＰアドレスを用いるものとし、更に、このＩＰアドレスを｛１９２．１６８．０．１１｝とする。
【００７８】
署名装置選択部５６０は、位置情報取得部５５０が取得した所在情報に応じて、使用する署名装置を選択する。そのために署名装置選択部５６０には、コンピュータ５１５００が取りうる様々な所在と、それぞれの所在にコンピュータ５１５００が位置する場合に使用する署名装置を識別する情報と、の対応関係が記された署名装置選択表５１３０を保持している。本実施形態では、署名装置選択表５１３０には以下のような対応関係が記されているものとする。
【００７９】
｛所在情報、署名装置ＩＤ｝＝｛”１９２．１６８．０．１１”、  ”１”｝
｛所在情報、署名装置ＩＤ｝＝｛”１９２．１６８．１．１１”、  ”２”｝
従って、署名装置選択部５６０は、この署名装置選択表５１３０を参照し、コンピュータ５１５００のＩＰアドレスが”１９２．１６８．０．１１”であれば、署名装置ＩＤが”１”である署名装置を選択する。同様に、コンピュータ５１５００のＩＰアドレスが”１９２．１６８．１．１１”であれば、署名装置ＩＤが”２”である署名装置を選択する。本実施形態では、署名装置５２０の署名装置ＩＤを”１”とし、署名装置５２１の署名装置ＩＤを”２”とする。
【００８０】
起動依頼部５７０は、認証部５４０が生成した認証情報５１２０を、署名装置選択部５６０が選択した署名装置（署名装置５２０若しくは署名装置５２１）に対して出力する。そして、選択した署名装置がこの認証情報５１２０に基づいて生成した署名情報５１４０、公開鍵証明書情報５５５５を、この選択した署名装置から取得し、認証情報５１２０とセットにしてアプリケーション５３０に渡す。この公開鍵証明書情報５５５５は、選択した署名装置から取得するものであるので、選択した署名装置が署名装置５２０である場合には公開鍵証明書情報５１５０であり、選択した署名装置が署名装置５２１である場合には公開鍵証明書情報５１４１である。
【００８１】
次に、署名装置５２０、５２１について説明する。なお、署名装置５２０、５２１は共に同じ構成を有するものであるので、署名装置５２０についてのみ説明し、署名装置５２１については、これと同様である。
【００８２】
署名装置５２０は、起動装置５１０から出力された認証情報５１２０を受け、これに基づいて署名情報５１４０を生成する署名部５８０を有する。署名部５８０による署名情報５１４０の生成処理については、第１の実施形態における署名部６０が行うものと同様である。更に、署名部５８０は、認証局９０により発行された公開鍵証明書情報５１５０と、認証情報５１２０から署名情報５１４０を生成する際に用いる秘密鍵５１６０とを保持している。なお、この公開鍵証明書情報５１５０は、秘密鍵５１６０と一対一に対応するものである。
【００８３】
ここで、署名装置５２０が保持する公開鍵証明書情報５１５０と、署名装置５２１が保持する公開鍵証明書情報５１４１とは互いに異なる識別情報（識別名）を有していることに注意されたい。
【００８４】
次に、アプリケーション５３０について説明する。アプリケーション５３０の起動を許可されたユーザは予め決まっている。そこで、アプリケーション５３０は、起動しようとするユーザが、起動許可されているユーザであるのか否かをチェックする起動権判定部５９０を有する。起動権判定部５９０は、認証局９０が発行した認証局証明書情報５１７０と、アプリケーション５３０の起動許可を与えられたユーザに係る情報（認可情報）５１８０とを有する。本実施形態では、認可情報５１８０は、アプリケーション５３０の起動許可が与えられたユーザのユーザＩＤとし、同図に示す如く、３人のユーザのそれぞれのユーザＩＤ｛”ＸＸＸ”、”ＹＹＹ”、”ＺＺＺ”｝とする。起動権判定部５９０によるチェック処理については、第１の実施形態における起動権判定部７０が行うものと同様である。
【００８５】
また、アプリケーション５３０は、アプリケーション５３０の起動を制御する処理部を複数有しており、同図では処理部５１１０、５１１１の２つを有している。更に、アプリケーション５３０は、この２つの処理部５１１０、５１１１のうち何れを用いるのかを選択するコンフィグレーション決定部５１００を有している。コンフィグレーション決定部５１００は、コンフィグレーション対応表５１９０を保持している。コンフィグレーション対応表５１９０は、様々な公開鍵証明書情報に含まれている識別名と、それぞれの識別名に対応する処理部ＩＤとの対応関係を記したものであり、例えば、以下のような対応関係が記されている。
【００８６】
｛識別名、処理部ＩＤ｝＝｛”ＣＮ＝ｘｘｘ，Ｏ＝ｈｏｇｅＩｎｃ．，Ｃ＝ＪＰ”、  ”１”｝
｛識別名、処理部ＩＤ｝＝｛”ＣＮ＝ｙｙｙ，Ｏ＝ｈｏｇｅＩｎｃ２．，Ｃ＝ＪＰ”、  ”２”｝
｛識別名、処理部ＩＤ｝＝｛”ＣＮ＝ｚｚｚ，Ｏ＝ｈｏｇｅＩｎｃ．，Ｃ＝ＪＰ”、  ”１”｝
従って、コンフィグレーション決定部５１００は、起動装置５１０から公開鍵証明書情報５５５５を受けると、この公開鍵証明書情報５５５５に含まれている識別名、及びコンフィグレーション対応表５１９０を参照する。そして、公開鍵証明書情報５５５５に含まれている識別名が”ＣＮ＝ｘｘｘ，Ｏ＝ｈｏｇｅＩｎｃ．，Ｃ＝ＪＰ”、若しくは”ＣＮ＝ｚｚｚ，Ｏ＝ｈｏｇｅＩｎｃ．，Ｃ＝ＪＰ”であれば、処理部ＩＤが”１”である処理部を選択する。一方、公開鍵証明書情報５５５５に含まれている識別名が”ＣＮ＝ｙｙｙ，Ｏ＝ｈｏｇｅＩｎｃ２．，Ｃ＝ＪＰ”であれば、処理部ＩＤが”２”である処理部を選択する。本実施形態では、処理部５１１０の処理部ＩＤを”１”とし、処理部５１１１の処理部ＩＤを”２”とする。
【００８７】
そして、このようにして選択された処理部でもってアプリケーション５３０の起動、及び動作を制御する。
【００８８】
次に、表示デバイス２００について説明する。表示デバイス２００は、ＣＲＴや液晶画面などにより構成された表示装置であり、上記ＧＵＩ２１０を表示する。
【００８９】
また、コンピュータ５１５００のハードウェア構成については、第１の実施形態に係るコンピュータ１５００と同様に、図２に示した構成を有する。そして、本実施形態では、図７に示した起動装置５１０、署名装置５２０、５２１、アプリケーション５３０については全てプログラムやデータの形態でもって外部記憶装置２０６に保存されており、必要に応じてＲＡＭ２０２にロードされるものであるとする。そして、ＲＡＭ２０２にロードされたこれらプログラムやデータはＣＰＵ２０１による処理対象となり、その結果、ＣＰＵ２０１は、起動装置５１０、署名装置５２０、５２１、アプリケーション５３０が行う後述の各機能を実現する。
【００９０】
次に、コンピュータ５１５００によって、アプリケーション５３０を起動し、動作させるために、図７に示した各部が行う処理について、図８に示すフローチャートを用いて説明する。図８は、アプリケーション５３０を起動し、動作させるためにコンピュータ５１５００が行う処理のフローチャートである。
【００９１】
ユーザが操作部２０４を用いて起動装置５１０を起動する旨を入力すると、ＣＰＵ２０１は起動装置５１０を起動する（ステップＳ７１）。起動装置５１０は認証部５４０を起動し、認証部５４０は、認証部４０と同様の処理、即ち、図４に示すフローチャートに従った処理と同様の処理を行う（ステップＳ７２）。
【００９２】
次に、起動装置５１０は、位置情報取得部５５０を起動し、位置情報取得部５５０は、コンピュータ５１５００の所在情報（位置情報）を取得する（ステップＳ７３）。この所在情報の取得形態については上述のように様々なものがあるが、例えば、コンピュータ５１５００のＩＰアドレスを外部記憶装置２０６に保存しておき、ステップＳ７３ではこの所在情報をＲＡＭ２０２にロードするようにしても良い。
【００９３】
次に、起動装置５１０は、署名装置選択部５６０を起動し、署名装置選択部５６０は、図９に示したフローチャートに従った処理、即ち、ステップＳ７３で取得した所在情報に基づいて、使用する署名装置を選択する処理を行う（ステップＳ７４）。
【００９４】
図９は、ステップＳ７４における処理の詳細を示すフローチャートである。
【００９５】
起動装置５１０が署名装置選択部５６０を起動する（ステップＳ９０）と、署名装置選択部５６０は、署名装置選択表５１３０を参照し、ステップＳ７３で取得した所在情報に対応する署名装置ＩＤを特定する（ステップＳ９１）。本実施形態ではこの所在情報はＩＰアドレスであるので、上述のように、コンピュータ５１５００のＩＰアドレスが”１９２．１６８．０．１１”であれば、署名装置ＩＤが”１”である署名装置５２０を選択する。同様に、コンピュータ５１５００のＩＰアドレスが”１９２．１６８．１．１１”であれば、署名装置ＩＤが”２”である署名装置５２１を選択する。
【００９６】
そして処理をステップＳ７５に進める。
【００９７】
図８に戻って起動装置５１０は起動依頼部５７０を起動し、起動依頼部５７０は、ステップＳ７２で作成した認証情報５１２０を、図９に示したフローチャートに従った処理でもって選択した署名装置（５２０若しくは５２１）に送出する（ステップＳ７５）。以下の説明では選択された署名装置を署名装置５２０とするが、以下の説明は特定の署名装置が選択されたことに限定するものではない。
【００９８】
署名装置５２０は、署名部５８０を起動し、署名部５８０は署名部６０と同様の処理、即ち、図５に示したフローチャートに従った処理と同様の処理を行う（ステップＳ７６）。これにより、署名装置５２０から起動装置５１０に対して、認証情報５１２０に基づいて作成された署名情報５１４０、及び公開鍵証明書情報５１５０が送出されることになる。
【００９９】
次に、起動依頼部５７０は、アプリケーション５３０に対して起動を要求すると共に、認証情報５１２０、署名情報５１４０、公開鍵証明書情報５１５０をセットにして、アプリケーション５３０に送出する（ステップＳ７７）。
【０１００】
次に、アプリケーション５３０は、起動権判定部５９０を起動し、起動権判定部５９０は起動権判定部７０と同様の処理、即ち、図６に示したフローチャートに従った処理と同様の処理を行う（ステップＳ７８）。
【０１０１】
次に、起動権判定部５９０は、コンフィグレーション決定部５１００に対して公開鍵証明書情報５１５０を渡す（ステップＳ７９）。そして、コンフィグレーション決定部５１００は、図１０に示したフローチャートに従った処理を行うことにより、処理部５１１０、５１１１のうち、使用する処理部を選択する（ステップＳ８０）。
【０１０２】
図１０は、ステップＳ８０における処理の詳細を示すフローチャートである。先ず、起動権判定部５９０は、コンフィグレーション決定部５１００を起動する（ステップＳ１００）。そしてコンフィグレーション決定部５１００は、起動装置５１０から受けた公開鍵証明書情報５１５０に含まれている識別名を抽出する（ステップＳ１０１）。そして、コンフィグレーション決定部５１００は、コンフィグレーション対応表５１９０において、ステップＳ１０１で抽出した識別名に対応する処理部ＩＤを取得する（ステップＳ１０２）。即ち、ステップＳ１０１で抽出した識別名が”ＣＮ＝ｘｘｘ，Ｏ＝ｈｏｇｅＩｎｃ．，Ｃ＝ＪＰ”、若しくは”ＣＮ＝ｚｚｚ，Ｏ＝ｈｏｇｅＩｎｃ．，Ｃ＝ＪＰ”であれば、処理部ＩＤ”１”を取得する。一方、ステップＳ１０１で抽出した識別名が”ＣＮ＝ｙｙｙ，Ｏ＝ｈｏｇｅＩｎｃ２．，Ｃ＝ＪＰ”であれば、処理部ＩＤ”２”を取得する。
【０１０３】
そして、次に、コンフィグレーション決定部５１００は、ステップＳ１０２で取得した処理部ＩＤで特定される処理部に対して、アプリケーション５３０の起動、及びその後の動作を行うよう、依頼する（ステップＳ１０３）。
【０１０４】
これにより、コンフィグレーション決定部５１００によって選択された処理部ＩＤでもって特定される処理部（処理部５１１０若しくは処理部５１１１）により、アプリケーション５３０の起動、及びその後の動作を行わせることができる。
【０１０５】
以上の説明により、本実施形態によれば、ユーザの認証と署名の検証結果によりアプリケーションの起動を制御することができる。
【０１０６】
なお、本実施形態では、認証情報１００にはユーザＩＤを含めるようにしたが、ユーザを識別するためのものであれば、含める情報の種類については特に限定するものではない。その場合、認可情報１５０は、認証情報１００に対応したものを用意する必要がある。例えば、認証情報１００としてパスワードを用いる場合には、認可情報１５０として、アプリケーション３０の起動許可が与えられたユーザのパスワードを用いる。
【０１０７】
また、本実施形態では、起動装置５１０、署名装置５２０、５２１、アプリケーション５３０、表示デバイス２００は全て１つの装置を構成するものとして説明したが、これに限定するものではなく、適宜別個の構成であっても良い。例えば、起動装置５１０、アプリケーション５３０、表示デバイス２００でもってコンピュータ５１５００を構成し、署名装置５２０、５２１をそれぞれこのコンピュータ５１５００と別個の装置としても良い。その場合、署名装置５２０、５２１のそれぞれとコンピュータ５１５００とはＬＡＮやインターネットなどの無線／有線ネットワークを介して互いにデータ通信を行うことになる。
【０１０８】
［第３の実施形態］
図１１は、本実施形態に係る情報処理装置としてのコンピュータ６１５００の機能構成を示すブロック図である。このコンピュータ６１５００は、図７に示した第２の実施形態に係るコンピュータ５１５００の構成において、アプリケーションの構成が異なる点以外については同じである。
【０１０９】
本実施形態では、アプリケーション５９００に対して起動を要求する際に、起動後に行わせる動作の種類を指示する。この動作の種類とは、例えば、ファイルの上書き、編集中のファイルの印刷、ファイルを開く等の動作であり、コンピュータ６１５００のユーザが操作部２０４を用いて指示する。従って本実施形態では、アプリケーション５９００に行わせたい動作の種類を指示すると、アプリケーション５９００側では、指示された種類の動作を行うか否かを、公開鍵証明書情報内の署名者情報に基づいて決定する。
【０１１０】
次に、コンピュータ６１５００によって、アプリケーション５９００を起動し、所望の動作を行わせるために、図１１に示した各部が行う処理について、図１２に示すフローチャートを用いて説明する。図１２は、アプリケーション５９００を起動し、所望の動作を行わせるためにコンピュータ６１５００が行う処理のフローチャートである。
【０１１１】
先ず、第２の実施形態において説明したステップＳ７１〜ステップＳ７６の処理と同様の処理を行う。次に、起動依頼部５７０は、アプリケーション５９００に対して起動を要求すると共に、認証情報５１２０、署名情報５１４０、公開鍵証明書情報５１５０をセットにして、アプリケーション５９００に送出する（ステップＳ１２０１）。なお、本実施形態では上述の通り、ステップＳ１２０１では、アプリケーション５９００に対して起動要求を行うと共に、起動後に行わせる動作の種類を指示する。
【０１１２】
次に、アプリケーション５９００は、起動権判定部５９０を起動し、起動権判定部５９０は起動権判定部７０と同様の処理、即ち、図６に示したフローチャートに従った処理と同様の処理を行う（ステップＳ１２０２）。
【０１１３】
次に、アプリケーション５９００内の起動権判定部５９０は、要求された種類の動作を行うよう、アプリケーション５９００（処理部５４００）に対して指示する（ステップＳ１２０３）。アプリケーション５９００内の処理部５４００は、要求された種類の動作を行うよう指示されると、図１３に示したフローチャートに従った処理を実行する（ステップＳ１２０４）。
【０１１４】
図１３は、ステップＳ１２０４における処理の詳細を示すフローチャートである。
【０１１５】
処理部５４００は先ず、実行制御部５２９０を起動する（ステップＳ１３００）。実行制御部５２９０は、要求された動作の種類（機能情報）をアクセス権判定部５２８０に通知する（ステップＳ１３０１）。本実施形態では要求された動作の種類を”データのプリント”とする。
【０１１６】
アクセス権判定部５２８０は、起動装置５１０から受けた公開鍵証明書情報５１５０（第２の実施形態と同様、本実施形態においても署名装置５２０を使用したものとする）を取得する（ステップＳ１３０２）。本実施形態ではこの公開鍵証明書情報（Ｓｕｂｊｅｃｔの値）を”ｓｉｇｎｅｒＢ”とする。
【０１１７】
次に、アクセス権判定部５２８０は、アクセス権リスト５３００を参照し、ステップＳ１３０２で取得した公開鍵証明書情報を受けた場合に、要求された動作（”データのプリント”）が実行可能か否かを判断する（ステップＳ１３０３）。
【０１１８】
図１４は、アクセス権リスト５３００の構成例を示す図である。同図に示す如く、アプリケーション５９００に対して要求可能な動作の種類毎に、要求可能な公開鍵証明書情報が登録されている。例えば、”データのプリント”なる動作は、”ｓｉｇｎｅｒＡ”、”ｓｉｇｎｅｒＢ”、”ｓｉｇｎｅｒＴ”の何れかの公開鍵証明書情報を取得した場合にのみ行うことが許可される。
【０１１９】
従って、アクセス権判定部５２８０は、公開鍵証明書情報５１５０が、要求された動作の種類に対応づけてアクセス権リスト５３００内に登録されている公開鍵証明書情報のうち何れに該当しているのかをチェックする。
【０１２０】
そして、公開鍵証明書情報５１５０が、要求された動作の種類に対応づけてアクセス権リスト５３００内に登録されている公開鍵証明書情報のうち何れにも該当していない場合、処理をステップＳ１３０４を介してステップＳ１３０５に進める。そして、アクセス権判定部５２８０は、アプリケーション５９００の動作が不可能である旨を示すコード、例えば”ＮＧ”なるコードを、実行制御部５２９０に対して送出する（ステップＳ１３０５）。
【０１２１】
一方、公開鍵証明書情報５１５０が、要求された動作の種類に対応づけてアクセス権リスト５３００内に登録されている公開鍵証明書情報のうち何れかに該当している場合、処理をステップＳ１３０４を介してステップＳ１３０６に進める。そして、アクセス権判定部５２８０は、アプリケーション５９００の動作が可能である旨を示すコード、例えば”ＯＫ”なるコードを、実行制御部５２９０に対して送出する（ステップＳ１３０６）。
【０１２２】
本実施形態の場合、公開鍵証明書情報５１５０が”ｓｉｇｎｅｒＢ”であり、要求された動作の種別は”データのプリント”である。従って、アクセス権リスト５３００が図１４に示したものである場合、公開鍵証明書情報５１５０が、要求された動作の種別に対応づけてアクセス権リスト５３００内に登録されている公開鍵証明書情報のうち何れかに該当していることになる。
【０１２３】
ステップＳ１３０５，Ｓ１３０６の何れの処理の次にも処理はステップＳ１３０７に進み、実行制御部５２９０は、アクセス権判定部５２８０から受けたコードをチェックする（ステップＳ１３０７）。このチェックの結果、このコードが”ＯＫ”である場合には処理をステップＳ１３０８を介してステップＳ１３１０に進める。そして、処理部５４００（実行制御部５２９０）は、要求された種類の動作、即ち、”データのプリント”をアプリケーション５９００に対して行わせる（ステップＳ１３１０）。
【０１２４】
一方、チェックしたコードが”ＮＧ”である場合には処理をステップＳ１３０８を介してステップＳ１３０９に進める。そして、処理部５４００（実行制御部５２９０）は、表示デバイス２００の表示画面上に、要求された種類の動作、即ち、”データのプリント”をアプリケーション５９００に対して行わせることができない旨を表示する（ステップＳ１３０９）。
【０１２５】
［第４の実施形態］
図１５は、本実施形態に係る情報処理装置としてのコンピュータ７１５００の機能構成を示すブロック図である。本実施形態に係るコンピュータ７１５００は、第１の実施形態に係るコンピュータ１５００が有するアプリケーション３０に第３の実施形態で説明したアクセス権判定部５２８０を加えている。更に、処理部８０の代わりに第３の実施形態で説明した処理部５４００を用いている。また、同図において図１、１１と同じ部分については同じ番号を付けていると共に、同じ番号が付いている部分は、第１、３の実施形態で説明したものと同じ動作を行う。
【０１２６】
以下に、コンピュータ７１５００によって、アプリケーション７３０を起動し、所望の動作を行わせるために、図１５に示した各部が行う処理について、図１６に示すフローチャートを用いて説明する。図１６は、アプリケーション７３０を起動し、所望の動作を行わせるためにコンピュータ７１５００が行う処理のフローチャートである。
【０１２７】
先ず、第１の実施形態において説明したステップＳ１〜ステップＳ５における処理と同様の処理を行う。次に、起動依頼部５０は、アプリケーション７３０に対して起動を要求すると共に、認証情報１００、署名情報１１０、公開鍵証明書情報１２０をセットにして、アプリケーション７３０に送出する（ステップＳ１６０１）。
【０１２８】
次に、アプリケーション７３０は、起動権判定部７０を起動し（ステップＳ１６０２）、起動権判定部７０は図６に示す一連の処理、即ち、アプリケーション７３０を起動するか否かをチェックするための一連の処理を行う（ステップＳ１６０３）。
【０１２９】
次に、アプリケーション７３０内の起動権判定部７０は、要求された種類の動作を行うよう、アプリケーション７３０（処理部５４００）に対して指示する（ステップＳ１６０４）。アプリケーション７３０内の処理部５４００は、要求された種類の動作を行うよう指示されると、図１３に示したフローチャートに従った処理を実行する（ステップＳ１６０５）。
【０１３０】
［第５の実施形態］
本実施形態では、図１に示した起動装置、署名装置、表示デバイスでもって構成するコンピュータを複数台ネットワークに接続する。
【０１３１】
図１７は、本実施形態に係るシステムの機能構成を示すブロック図である。同図に示す如く、本実施形態に係るシステムは、コンピュータ１７００，１８００、アプリケーション５３０、認証局９０により構成されている。コンピュータ１７００，１８００についてはそれぞれ同じ構成を有し、且つ同じ動作を行うので、以下では、コンピュータ１７００を例に取り説明する。
【０１３２】
アプリケーション５３０については図７に示したものと同じで、第２の実施形態で説明した構成を有すると共に、同じ動作を行う。更に、アプリケーション５３０は、それぞれのコンピュータ１７００，１８００にダウンロードされているものである。
【０１３３】
次に、コンピュータ１７００によって、アプリケーション５３０を起動し、動作させるために、図１７に示した各部が行う処理について、図１８に示すフローチャートを用いて説明する。図１８は、アプリケーション５３０を起動し、動作させるためにコンピュータ１７００が行う処理のフローチャートである。
【０１３４】
コンピュータ１７００は、第１の実施形態において説明したステップＳ１〜ステップＳ５における処理と同様の処理を行う。
【０１３５】
次に、起動依頼部５０は、アプリケーション５３０に対して起動を要求すると共に、認証情報１００、署名情報１１０、公開鍵証明書情報１２０をセットにして、アプリケーション５３０に送出する（ステップＳ１８００）。
【０１３６】
次に、アプリケーション５３０は、起動権判定部５９０を起動する（ステップＳ１８０１）。そして、起動権判定部５９０は起動権判定部７０と同様の処理、即ち、図６に示したフローチャートに従った処理と同様の処理を行う（ステップＳ１８０２）。
【０１３７】
次に、起動権判定部５９０は、コンフィグレーション決定部５１００に対して公開鍵証明書情報１２０を渡す（ステップＳ１８０３）。そして、コンフィグレーション決定部５１００は、図１０に示したフローチャートに従った処理を行うことにより、処理部５１１０、５１１１のうち、使用する処理部を選択する（ステップＳ１８０４）。
【０１３８】
［その他の実施形態］
また、本発明の目的は、以下のようにすることによって達成されることはいうまでもない。即ち、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体（または記憶媒体）を、システムあるいは装置に供給する。そして、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムコードを読み出し実行する。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
【０１３９】
また、コンピュータが読み出したプログラムコードを実行することにより、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行う。その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１４０】
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれたとする。その後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１４１】
本発明を上記記録媒体に適用する場合、その記録媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
【図面の簡単な説明】
【０１４２】
【図１】本発明の第１の実施形態に係る情報処理装置としてのコンピュータ１５００の機能構成を示すブロック図である。
【図２】コンピュータ１５００のハードウェア構成を示すブロック図である。
【図３】アプリケーション３０を起動し、動作させるためにコンピュータ１５００が行う処理のフローチャートである。
【図４】ステップＳ２における処理の詳細を示すフローチャートである。
【図５】ステップＳ５における処理の詳細を示すフローチャートである。
【図６】ステップＳ８における処理の詳細を示すフローチャートである。
【図７】本発明の第２の実施形態に係る情報処理装置としてのコンピュータ５１５００の機能構成を示すブロック図である。
【図８】アプリケーション５３０を起動し、動作させるためにコンピュータ５１５００が行う処理のフローチャートである。
【図９】ステップＳ７４における処理の詳細を示すフローチャートである。
【図１０】ステップＳ８０における処理の詳細を示すフローチャートである。
【図１１】本発明の第３の実施形態に係る情報処理装置としてのコンピュータ６１５００の機能構成を示すブロック図である。
【図１２】アプリケーション５９００を起動し、所望の動作を行わせるためにコンピュータ６１５００が行う処理のフローチャートである。
【図１３】ステップＳ１２０４における処理の詳細を示すフローチャートである。
【図１４】アクセス権リスト５３００の構成例を示す図である。
【図１５】本発明の第４の実施形態に係る情報処理装置としてのコンピュータ７１５００の機能構成を示すブロック図である。
【図１６】アプリケーション７３０を起動し、所望の動作を行わせるためにコンピュータ７１５００が行う処理のフローチャートである。
【図１７】本発明の第５の実施形態に係るシステムの機能構成を示すブロック図である。
【図１８】アプリケーション５３０を起動し、動作させるためにコンピュータ１７００が行う処理のフローチャートである。
【図１】
2007148676.tif 000003
【図２】
2007148676.tif 000004
【図３】
2007148676.tif 000005
【図４】
2007148676.tif 000006
【図５】
2007148676.tif 000007
【図６】
2007148676.tif 000008
【図７】
2007148676.tif 000009
【図８】
2007148676.tif 000010
【図９】
2007148676.tif 000011
【図１０】
2007148676.tif 000012
【図１１】
2007148676.tif 000013
【図１２】
2007148676.tif 000014
【図１３】
2007148676.tif 000015
【図１４】
2007148676.tif 000016
【図１５】
2007148676.tif 000017
【図１６】
2007148676.tif 000018
【図１７】
2007148676.tif 000019
【図１８】
2007148676.tif 000020