(57)【要約】      （修正有）【課題】被管理装置の使用時間を精度良く管理するとともに改ざんを防止することができるようにする。【解決手段】被管理サーバ１０００の電源モジュールとメインＣＰＵの間に管理コントローラを設け、電源モジュールからメインＣＰＵへの通電開始時刻と通電停止時刻を対応付けて不揮発メモリに記録するとともに、通電開始時刻と通電停止時刻から算出したハッシュ値も記録する。被管理サーバ１０００に対して管理用サーバ２０００から使用時間データの要求があったとき、通電開始時刻と、通電停止時刻と、ハッシュ値を管理用サーバ２０００に送信する。管理用サーバ２０００では、通電開始時刻と、通電停止時刻と、ハッシュ値とに基づいて、被管理サーバ１０００の使用時間が算出されるとともに、改ざんの有無がチェックされる。【選択図】図１
2008250833.tif 000002
【特許請求の範囲】
【請求項１】
管理対象となる電子機器と前記電子機器の使用時間を管理する管理装置とからなる使用時間管理システムであって、
前記電子機器は、
電源から制御部への通電を管理する通電管理手段と、
前記電源から前記制御部への通電が開始された時刻を検出し、所定の記録媒体に記録する通電開始時刻検出記録手段と、
前記電源から前記制御部への通電が行われている間、所定の時間間隔で時刻データを前記記憶媒体に記録する通電経過時刻記録手段と、
前記電源から前記制御部への通電が停止された時刻を検出し、前記通電開始時刻と対応付けて前記記録媒体に記録する通電停止時刻検出記録手段と、
前記通電開始時刻および前記通電停止時刻からなる使用時間データを暗号化する暗号化手段と、
暗号化された前記使用時間データを前記管理装置に送信する送信手段と
を備え、
前記管理装置は、
前記電子機器に対して、前記使用時間データを要求する要求手段と、
前記要求手段による要求に基づいて前記電子機器から送信されてきた前記使用時間データを復号化する復号化手段と、
復号化された前記使用時間データに基づいて、前記使用時間データの改ざんの有無を検出する改ざん検出手段と
を備える
ことを特徴とする使用時間管理システム。
【請求項２】
前記電子機器は、前記記録媒体に記録されている前記使用時間データの件数が複数の場合、その件数を前記記録媒体に記録する件数記録手段をさらに備え、
前記送信手段は、前記暗号化手段によって暗号化された前記件数と前記使用時間データを前記管理装置に送信し、
前記管理装置の改ざん検出手段は、前記件数に基づいて、前記使用時間データの削除または追加の有無を検出する
ことを特徴とする請求項１に記載の使用時間管理システム。
【請求項３】
前記暗号化手段は、前記使用時間データに基づいてハッシュ値を算出することにより前記使用時間データの暗号化を行う
ことを特徴とする請求項１に記載の使用時間管理システム。
【請求項４】
管理対象となる電子機器と、前記電子機器の使用時間を管理する管理装置とからなる使用時間管理システムにおける電子機器であって、
電源から制御部への通電を管理する通電管理手段と、
前記電源から前記制御部への通電が開始された時刻を検出し、所定の記録媒体に記録する通電開始時刻検出記録手段と、
前記電源から前記制御部への通電が行われている間、所定の時間間隔で時刻データを前記記憶媒体に記録する通電経過時刻記録手段と、
前記電源から前記制御部への通電が停止された時刻を検出し、前記通電開始時刻と対応付けて前記記録媒体に記録する通電停止時刻検出記録手段と、
前記通電開始時刻および前記通電停止時刻からなる使用時間データを暗号化する暗号化手段と、
暗号化された前記使用時間データを前記管理装置に送信する送信手段と
を備えることを特徴とする電子機器。
【請求項５】
管理対象となる電子機器と前記電子機器の使用時間を管理する管理装置とからなる使用時間管理システムにおける使用時間管理方法であって、
前記電子機器は、
電源から制御部への通電を管理する通電管理ステップと、
前記電源から前記制御部への通電が開始された時刻を検出し、所定の記録媒体に記録する通電開始時刻検出記録ステップと、
前記電源から前記制御部への通電が行われている間、所定の時間間隔で時刻データを前記記憶媒体に記録する通電経過時刻記録ステップと、
前記電源から前記制御部への通電が停止された時刻を検出し、前記通電開始時刻と対応付けて前記記録媒体に記録する通電停止時刻検出記録ステップと、
前記通電開始時刻および前記通電停止時刻からなる使用時間データを暗号化する暗号化ステップと、
暗号化された前記使用時間データを前記管理装置に送信する送信ステップと
を備え、
前記管理装置は、
前記電子機器に対して、前記使用時間データを要求する要求ステップと、
前記要求ステップにおける要求に基づいて前記電子機器から送信されてきた前記使用時間データを復号化する復号化ステップと、
復号化された前記使用時間データに基づいて、前記使用時間データの改ざんの有無を検出する改ざん検出ステップと
を備える
ことを特徴とする使用時間管理方法。
【請求項６】
管理対象となる電子機器と前記電子機器の使用時間を管理する管理装置とからなる使用時間管理システムにおける使用時間管理プログラムであって、
前記電子機器に、
電源から制御部への通電を管理する通電管理ステップと、
前記電源から前記制御部への通電が開始された時刻を検出し、所定の記録媒体に記録する通電開始時刻検出記録ステップと、
前記電源から前記制御部への通電が行われている間、所定の時間間隔で時刻データを前記記憶媒体に記録する通電経過時刻記録ステップと、
前記電源から前記制御部への通電が停止された時刻を検出し、前記通電開始時刻と対応付けて前記記録媒体に記録する通電停止時刻検出記録ステップと、
前記通電開始時刻および前記通電停止時刻からなる使用時間データを暗号化する暗号化ステップと、
暗号化された前記使用時間データを前記管理装置に送信する送信ステップと
を実行させ、
前記管理装置に、
前記電子機器に対して、前記使用時間データを要求する要求ステップと、
前記要求ステップにおける要求に基づいて前記電子機器から送信されてきた前記使用時間データを復号化する復号化ステップと、
復号化された前記使用時間データに基づいて、前記使用時間データの改ざんの有無を検出する改ざん検出ステップと
を実行させる
ことを特徴とする使用時間管理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は電子機器の使用時間管理システムに関し、特に、電源モジュールからメインＣＰＵへの通電時間を管理することにより、精度の高い使用時間管理を行い、かつその使用時間情報の改ざん防止を実現する電子機器の使用時間管理システムに関するものである。
【背景技術】
【０００２】
近年、急激に変化するビジネス環境に対応できるＩＴシステムが要求されている。特に、サーバを必要時に必要量を使用する、いわゆるプロビジョニング環境やグリッドコンピューティング環境を適用して、柔軟にシステムの組み換えができ、かつインフラ管理に要するコストをできるだけ下げたいという要求が増えている。このような要求を実現するためには、サーバ使用量に応じて課金する課金システムの導入や、ソフトウェアライセンス体系の整備が必要となる。
また、従来は、特許文献１の図２に記載されているように、実際に稼動する装置とは別の外部の装置を用いて稼動状況管理を行っていた。
また、特許文献２に記載の発明のように、個々の装置で稼動時間を計測する仕組みのものがあった。
また、特許文献３の図１に記載されているように、実際に通電した時間で稼動状況を管理する方法もある。
【特許文献１】特開平５−１２９４１２号公報
【特許文献２】特開平１１−２０４３８７号公報
【特許文献３】特開２００３−３３３７６８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、現在、サーバの使用時間を計算する有効な方法がなく、サーバの使用時間に応じて課金することができる柔軟な課金システムやソフトウェアライセンス体系を整備することが困難であるという問題があった。
また、特許文献１に記載の方法では、実際に稼動する装置と稼動状況管理を行う装置との間のネットワークなどに障害が発生した場合、正確な稼動状況を把握することができないという問題があった。
また、特許文献２に記載の発明では、上位制御装置と密な関係を持っているため、汎用的に使用することが難しいという問題があった。
また、特許文献３に記載の方法では、電力消費量が異なる装置を管理する場合には有効であるが、サーバのように同等の電力消費量のものが複数台並ぶような環境には適さないという問題があった。
本発明はこのような状況に鑑みてなされたものであり、上記問題点を解決し、電子機器の使用時間を計算するとともに、計算結果に対する改ざんを抑制することができるようにするものである。
【課題を解決するための手段】
【０００４】
請求項１に記載の使用時間管理システムは、管理対象となる電子機器と前記電子機器の使用時間を管理する管理装置とからなる使用時間管理システムであって、前記電子機器は、電源から制御部への通電を管理する通電管理手段と、前記電源から前記制御部への通電が開始された時刻を検出し、所定の記録媒体に記録する通電開始時刻検出記録手段と、前記電源から前記制御部への通電が行われている間、所定の時間間隔で時刻データを前記記憶媒体に記録する通電経過時刻記録手段と、前記電源から前記制御部への通電が停止された時刻を検出し、前記通電開始時刻と対応付けて前記記録媒体に記録する通電停止時刻検出記録手段と、前記通電開始時刻および前記通電停止時刻からなる使用時間データを暗号化する暗号化手段と、暗号化された前記使用時間データを前記管理装置に送信する送信手段とを備え、前記管理装置は、前記電子機器に対して、前記使用時間データを要求する要求手段と、前記要求手段による要求に基づいて前記電子機器から送信されてきた前記使用時間データを復号化する復号化手段と、復号化された前記使用時間データに基づいて、前記使用時間データの改ざんの有無を検出する改ざん検出手段とを備えることを特徴とする。
また、前記電子機器は、前記記録媒体に記録されている前記使用時間データの件数が複数の場合、その件数を前記記録媒体に記録する件数記録手段をさらに備え、前記送信手段は、前記暗号化手段によって暗号化された前記件数と前記使用時間データを前記管理装置に送信し、前記管理装置の改ざん検出手段は、前記件数に基づいて、前記使用時間データの削除または追加の有無を検出するようにすることができる。
また、前記暗号化手段は、前記使用時間データに基づいてハッシュ値を算出することにより前記使用時間データの暗号化を行うようにすることができる。
請求項４に記載の電子機器は、管理対象となる電子機器と、前記電子機器の使用時間を管理する管理装置とからなる使用時間管理システムにおける電子機器であって、電源から制御部への通電を管理する通電管理手段と、前記電源から前記制御部への通電が開始された時刻を検出し、所定の記録媒体に記録する通電開始時刻検出記録手段と、前記電源から前記制御部への通電が行われている間、所定の時間間隔で時刻データを前記記憶媒体に記録する通電経過時刻記録手段と、前記電源から前記制御部への通電が停止された時刻を検出し、前記通電開始時刻と対応付けて前記記録媒体に記録する通電停止時刻検出記録手段と、前記通電開始時刻および前記通電停止時刻からなる使用時間データを暗号化する暗号化手段と、暗号化された前記使用時間データを前記管理装置に送信する送信手段とを備えることを特徴とする。
請求項５に記載の使用時間管理方法は、管理対象となる電子機器と前記電子機器の使用時間を管理する管理装置とからなる使用時間管理システムにおける使用時間管理方法であって、前記電子機器は、電源から制御部への通電を管理する通電管理ステップと、前記電源から前記制御部への通電が開始された時刻を検出し、所定の記録媒体に記録する通電開始時刻検出記録ステップと、前記電源から前記制御部への通電が行われている間、所定の時間間隔で時刻データを前記記憶媒体に記録する通電経過時刻記録ステップと、前記電源から前記制御部への通電が停止された時刻を検出し、前記通電開始時刻と対応付けて前記記録媒体に記録する通電停止時刻検出記録ステップと、前記通電開始時刻および前記通電停止時刻からなる使用時間データを暗号化する暗号化ステップと、暗号化された前記使用時間データを前記管理装置に送信する送信ステップとを備え、前記管理装置は、前記電子機器に対して、前記使用時間データを要求する要求ステップと、前記要求ステップにおける要求に基づいて前記電子機器から送信されてきた前記使用時間データを復号化する復号化ステップと、復号化された前記使用時間データに基づいて、前記使用時間データの改ざんの有無を検出する改ざん検出ステップとを備えることを特徴とする。
請求項６に記載の使用時間管理プログラムは、管理対象となる電子機器と前記電子機器の使用時間を管理する管理装置とからなる使用時間管理システムにおける使用時間管理プログラムであって、前記電子機器に、電源から制御部への通電を管理する通電管理ステップと、前記電源から前記制御部への通電が開始された時刻を検出し、所定の記録媒体に記録する通電開始時刻検出記録ステップと、前記電源から前記制御部への通電が行われている間、所定の時間間隔で時刻データを前記記憶媒体に記録する通電経過時刻記録ステップと、前記電源から前記制御部への通電が停止された時刻を検出し、前記通電開始時刻と対応付けて前記記録媒体に記録する通電停止時刻検出記録ステップと、前記通電開始時刻および前記通電停止時刻からなる使用時間データを暗号化する暗号化ステップと、暗号化された前記使用時間データを前記管理装置に送信する送信ステップとを実行させ、前記管理装置に、前記電子機器に対して、前記使用時間データを要求する要求ステップと、前記要求ステップにおける要求に基づいて前記電子機器から送信されてきた前記使用時間データを復号化する復号化ステップと、復号化された前記使用時間データに基づいて、前記使用時間データの改ざんの有無を検出する改ざん検出ステップとを実行させることを特徴とする。
【発明の効果】
【０００５】
本発明によれば、各装置ごとに通電開始時間と停止時間を管理することができる。また、ネットワーク経由で被管理サーバにログインしてサーバ使用量データを取得できるので、管理用サーバと被管理サーバはそれぞれ独立して運用することができる。また、単なる起動／停止時間のログではなく暗号化などでそのデータを保証する仕組みを保持するので、データの改ざんを抑制することができる。
【発明を実施するための最良の形態】
【０００６】
以下、本発明が適用される実施の形態を図面を参照して説明する。図１は、本発明が適用されるサーバ使用時間管理システムの機能ブロック図である。図２は、本実施の形態の全体的な構成を示すブロック図である。本実施の形態は、サーバの使用時間を計算し、管理するものである。
【０００７】
本実施の形態では、後述する被管理サーバ１０００のメインＣＰＵ（Central Processing Unit）１３００から独立し、メインＣＰＵ１３００上でのＯＳ（Operating System）の稼動状況に関わらず動作が可能な管理コントローラ１１００を、メインＣＰＵ１３００と電源モジュール１２００との間に設け、電源モジュール１２００からメインＣＰＵ１３００への通電時間を管理するようになっている。そのために、通電開始時刻と通電停止時刻をサーバ使用時間データとして不揮発メモリ１１１０に保存しておき、ネットワークで接続された外部の管理用サーバ２０００からサーバ使用時間データの要求があった場合に、管理用サーバ２０００に対してサーバ使用時間データを送信するようになっている。サーバ使用時間データに基づいて、管理用サーバ２０００上で稼動時間等の算出が行われ、その算出データをもとに課金管理やライセンス管理が行われるようになっている。
【０００８】
以下、本実施の形態の構成および動作について図面を参照して詳細に説明する。図１は、本実施の形態の全体的な構成、および機能ブロックを示している。同図に示すように、本実施の形態は、サーバ使用時間計算の対象となる被管理サーバ１０００と、そのサーバ使用時間計算によって得られたサーバ使用時間データを収集、集計、管理する管理用サーバ２０００とにより構成されている。
【０００９】
被管理サーバ１０００は、「稼動開始時刻検出／記録手段Ａ１」と、「稼動経過時刻検出／記録手段Ａ２」と、「稼動停止時刻検出手段Ａ３」と、「稼動データ記録手段Ａ４」等を有している。管理用サーバ２０００は、「改ざん検査手段Ｂ１」等を有している。さらに、被管理サーバ１０００と管理用サーバ２０００の共通機能として、稼動データの収集および管理を行う「稼動データ収集・管理手段Ｃ１」を有している。これらの手段は、各サーバが備えるＣＰＵによって実行されるプログラムによって実現される。
【００１０】
図１では、管理用サーバ２０００と被管理サーバ１０００は１対１の関係になっているが、もちろん１台の管理用サーバ２０００が複数台の被管理サーバ１０００を管理するようにしても良い。
【００１１】
図２は、被管理サーバ１０００の構成例を示すブロック図である。同図に示すように、被管理サーバ１０００は、管理コントローラ１１００と、電源モジュール１２００と、メインＣＰＵ１３００等により構成されている。
【００１２】
電源モジュール１２００は、被管理サーバ１０００全体と管理コントローラ１１００に電源供給を行う装置である。メインＣＰＵ１３００は、プログラム制御により被管理サーバ１０００を動作させる装置である。管理コントローラ１１００は、電源モジュール１２００とメインＣＰＵ１３００の間に設けられ、サーバ稼動開始時刻およびサーバ停止時刻を計算し格納する装置であり、メインＣＰＵ１３００から独立し、ＯＳの稼動状況に関わらず遠隔制御が可能とされている。さらに、管理コントローラ１１００は、電源モジュール１２００からメインＣＰＵ１３００への電源供給制御を行うようになっている。
【００１３】
図３は、被管理サーバ１０００に搭載される管理コントローラ１１００の構成例を示すブロック図である。同図に示すように、管理コントローラ１１００は、データ処理装置１１２０と不揮発メモリ１１１０とにより構成されている。
【００１４】
データ処理装置１１２０は、電源モジュール１２００からメインＣＰＵ１３００への通電時間を監視することにより稼動時間を計算し、計算によって得られた稼動時間データを暗号化する装置である。
【００１５】
不揮発メモリ１１１０は、データ処理装置１１２０で計算され、暗号化された稼動時間データを格納する装置である。不揮発メモリ１１１０には、暗号化用の公開鍵情報が格納されるが、これはサーバ出荷時に書き換え不可の組み込みデータとしても良いし、初回起動時もしくはその後に書き換え可能なデータとしても良い。
【００１６】
公開鍵は、例えばＭＡＣアドレスなどのように、被管理サーバ１０００を一意に特定できる情報とあわせて発行される。管理用サーバ２０００側では、ＭＡＣアドレスなどのように被管理サーバ１０００を一意に特定できる情報とあわせて秘密鍵を記憶し管理する。
【００１７】
次に、図４、図５、図６に示した不揮発メモリ１１１０上に格納される稼動時間データ格納用テーブルについて説明する。
【００１８】
図４は、過去に電源モジュール１２００からメインＣＰＵ１３００へ通電した時間（稼動開始時刻および稼動停止時刻からなる稼動時間データ）を記録するテーブル３００１を示している。テーブル３００１の各レコードを構成する項目「装置特定情報」には、ＭＡＣアドレスのような被管理用サーバ１０００を一意に特定できる情報が格納される。次の項目「ステータス」には、”Ｓｔａｒｔ”または”Ｅｎｄ”が格納される。”Ｓｔａｒｔ”が格納されたレコードの項目「時刻」に格納されたデータは、稼動開始時刻を表し、”Ｅｎｄ”が格納されたレコードの項目「時刻」に格納されたデータは、稼動停止時刻を表している。
【００１９】
次の項目「日付」には、稼動開始又は稼動停止した日付が格納される。次の項目「時刻」には、稼動開始時刻または稼動停止時刻が格納される。次の項目「暗号化されたハッシュ値」には、記録されている稼動開始時刻または稼動停止時刻等の時刻データが改ざんされていないかを検査するための暗号化されたハッシュ値が格納される。その計算方法については後述する。
【００２０】
管理用サーバ２０００から被管理サーバ１０００に対して稼動時間データ送信要求がなされた場合、このテーブル３００１に格納されている稼動時間データが被管理サーバ１０００から管理用サーバ２０００にネットワークを介して送信される。
【００２１】
図５は、テーブル３００１に記録された総レコード件数からなる総レコード件数データを記録するテーブル３００２を示している。テーブル３００２の各レコードを構成する項目「装置特定情報」には、ＭＡＣアドレスのように、装置を一意に特定できる情報が格納される。次の項目「レコード件数」には、テーブル３００１に記録されている総レコード件数が格納され、テーブル３００１に記録されたデータが削除されていないかどうかを検査するために使用される。次の項目「暗号化されたハッシュ値」には、項目「レコード件数」に記録されているデータが改ざんされていないかを検査するための暗号化されたハッシュ値が格納される。その、計算方法については後述する。
【００２２】
管理用サーバ２０００から被管理サーバ１０００に対して総レコード件数データ送信要求がなされた場合、このテーブル３００２に格納されている総レコード件数データが被管理サーバ１０００から管理用サーバ２０００にネットワークを介して送信される。
【００２３】
図６は、電源モジュール１２００からメインＣＰＵ１３００への現在の通電状況が所定の時間間隔で記録更新されるテーブル３００３を示している。テーブル３００３の各レコードを構成する項目「ステータス」には、「Ｓｔａｒｔ」または「Ｅｎｄ」が格納される。”Ｓｔａｒｔ”が格納されたレコードの項目「時刻」に格納されるデータは、通電開始時刻を表し、”Ｒｕｎｎｉｎｇ”が格納されたレコードの項目「時刻」に格納されるデータは、最終通電確認時刻を表している。
【００２４】
次の項目「時刻」には、通電開始時刻または最終通電確認時刻が格納されている。次の項目「暗号化されたハッシュ値」は、記録されている時刻データが改ざんされていないかを検査するためのものであり、計算方法については後述する。
【００２５】
このテーブル３００３は、電源モジュール１２００からメインＣＰＵ１３００への通電中に使用される一時的なテーブルである。したがって、通電終了時には通電開始時刻と通電停止時刻（最後に格納された最終通電確認時刻に対応する）がテーブル３００１に転記された後、テーブル３００３のデータは全て削除される。
【００２６】
不揮発メモリ１１１０に格納されている公開鍵が書き換え可能なデータとされている場合、旧公開鍵を新公開鍵に書き換える作業と同時に、旧公開鍵に対応する秘密鍵で暗号化された各ハッシュ値を一旦復号化し、新公開鍵で再度各ハッシュ値を暗号化する処理が実行される。
【００２７】
次に、図７を参照して、被管理サーバ１０００の起動時における稼動開始時刻検出／記録手段Ａ１の動作について説明する。ユーザから被管理サーバ１０００の起動指示が出ると、データ処理装置１１２０は被管理サーバ１０００の起動指示が出た時刻データ（時刻のみ、または日付および時刻からなるデータ）を取得し、「装置特定情報」＋「ステータス」＋「時刻データ」から算出されたハッシュ値を管理コントローラ１１００の不揮発メモリ１１１０に格納された公開鍵で暗号化する。その際、ステータスは”Ｓｔａｒｔ”とされる。
【００２８】
ここで、「装置特定情報」＋「ステータス」＋「時刻データ」から算出されたハッシュ値とは、例えば、項目「装置特定情報」のデータと、項目「ステータス」のデータと、時刻データ（項目「時刻」のデータのみ、または項目「日付」のデータに項目「時刻」のデータを加えたもの）を足し合わせたものから算出されるハッシュ値とすることができる。
【００２９】
次に、項目「ステータス」、「時刻データ」、「暗号化されたハッシュ値」の各データをテーブル３００３の対応する項目にそれぞれ格納する。テーブル３００３へ「ステータス」、「時刻データ」、「暗号化されたハッシュ値」の各データの格納が完了すると、管理コントローラ１１００は、電源モジュール１２００からメインＣＰＵ１３００への通電を開始し、被管理サーバ１０００の起動処理を開始する。
【００３０】
次に、図８を参照して、被管理サーバ１０００の稼動中における稼動経過時刻検出／記録手段Ａ２の動作について説明する。データ処理装置１１２０は、現在の時刻データを取得し、「装置特定情報」＋「ステータス」＋「時刻データ」から算出されたハッシュ値を管理コントローラ１１００の不揮発メモリ１１１０に格納された公開鍵で暗号化する。その際、ステータスは”Ｒｕｎｎｉｎｇ”にする。この”Ｒｕｎｎｉｎｇ”ステータスを持つレコードは、停電などの電源供給が突然停止した場合の被管理サーバ稼動停止時刻確認用として使用される。詳細は後述する。
【００３１】
次に、項目「ステータス」、「時刻データ」、「暗号化されたハッシュ値」をテーブル３００３に格納する。すでに、”Ｒｕｎｎｉｎｇ”ステータスを持つレコードがテーブル３００３に存在した場合は、既存のレコードを新規のレコードで上書きする。”Ｒｕｎｎｉｎｇ”ステータスを持つレコードは、電源供給が突然停止した場合における被管理サーバ稼動停止時刻確認用として使用されるので、最新のレコードのみ存在すれば良い。したがって、不要なレコードで不揮発メモリ１１１０の容量が圧迫されないよう、”Ｒｕｎｎｉｎｇ”ステータスを持つ過去のレコードは破棄される。電源モジュール１２００からメインＣＰＵ１３００へ電源供給されている間は、単位時間ごとに上記処理が繰り返される。
【００３２】
次に、図９を参照して、被管理サーバ１０００の停止処理における稼動停止時刻検出／記録手段Ａ３および稼動データ記録手段Ａ４の動作について説明する。稼動停止時刻検出手段Ａ３の制御により、ユーザが図示しないキーボード等の入力装置を操作しサーバ停止指示を出すと、管理コントローラ１１００は、サーバ停止処理を行い、電源モジュール１２００からメインＣＰＵ１３００への通電を停止させる。通電が停止すると、データ処理装置１１２０は、被管理サーバ１０００が稼動を停止した時刻（日付および時刻からなるデータ）を「稼動停止時刻データ」として取得し、「装置特定情報」＋「ステータス」＋「時刻データ（稼動停止時刻データ）」から算出したハッシュ値を管理コントローラ１１００に格納された公開鍵で暗号化する。
【００３３】
稼動データ記録手段Ａ４は、テーブル３００３から”Ｓｔａｒｔ”ステータスがついた項目「日付」のデータおよび項目「時刻」のデータからなる時刻データを「稼動開始時刻データ」として取り出すとともに、「暗号化されたハッシュ値」を取り出し、それらのデータと「装置特定情報」、「ステータス」を同時にテーブル３００１の対応する項目に格納する。その際、ステータスは”Ｓｔａｒｔ”にする。
【００３４】
また、稼動停止時刻検出手段Ａ３によって算出された稼動停止時のデータとして、「装置特定情報」、「ステータス」、「稼動停止時刻データ」、「暗号化されたハッシュ値」をテーブル３００１に格納する。その際、ステータスは”Ｅｎｄ”にする。
【００３５】
次に、テーブル３００１に記録されている総レコード数を算出し、「装置特定情報」＋「総レコード数」のハッシュ値を暗号化し、「装置特定情報」、「総レコード数」、「暗号化されたハッシュ値」をテーブル３００２に記録する。すでにテーブル３００２にレコードがある場合は、既存のレコードを新規のレコードで上書きする。最後に、テーブル３００３に格納されている全てのデータを削除する。
【００３６】
次に、図１０を参照して、テーブル３００３に、”Ｓｔａｒｔ”および”Ｒｕｎｎｉｎｇ”ステータスのレコードが残っている場合の処理について説明する。停電や電源モジュール故障などにより、電源供給が突然停止し、図９に示した正常な処理が行われずに被管理サーバ１０００が停止すると、テーブル３００３には、”Ｓｔａｒｔ”ステータスおよび”Ｒｕｎｎｉｎｇ”ステータスのレコードが残る。
【００３７】
“Ｒｕｎｎｉｎｇ”ステータスのレコードは、単位時間ごとに記録されるレコードであるので、被管理サーバ１０００が突然停止した時刻の直前のレコードとみなすことができる。したがって、テーブル３００３に、”Ｓｔａｒｔ”ステータスおよび”Ｒｕｎｎｉｎｇ”ステータスのレコードが残っている場合は、”Ｒｕｎｎｉｎｇ”ステータスのレコードの時刻データ（項目「日付」および項目「時刻」の各データ）と暗号化されたハッシュ値（項目「暗号化されたハッシュ値」のデータ）を、サーバが稼動停止した時刻に記録されたレコードのデータであるとみなし、図７を参照して上述したテーブル３００３の初期化処理時に、例外処理として図９を参照して上述した処理と同様の処理を行い、テーブル３００１およびテーブル３００２を更新するとともに、テーブル３００３のデータを削除する。
【００３８】
次に、図１１を参照して、被管理サーバ１０００から管理用サーバ２０００が稼動時間データを取り出す稼動データ収集／管理手段Ｃ１の処理内容について説明する。管理コントローラ１１００は、認証機能をもち、管理用サーバ２０００からのログインを待つ。ログインが成功したら、管理用サーバ２０００の要求（稼動データ要求）に応じて、被管理サーバ１０００の管理コントローラ１１００は、不揮発メモリ１１１０に記憶されているテーブル３００１の内容（サーバ稼動開始時刻データおよびサーバ停止時刻データ等）と、テーブル３００２の内容（テーブル３００１のレコード件数データ等）を稼動データ（サーバ使用時間データ）として応答する。
【００３９】
管理用サーバ２０００では、データ記憶部２２００に記憶されている秘密鍵を用いて、受信したサーバ使用時間データの中から暗号化されたハッシュ値を復号化し、各時刻データが改ざんされていないかを確認する。改ざん検査の詳細については図１２を参照して後述する。改ざん検査に問題が無い場合は、テーブル３００１において連続する”Ｓｔａｒｔ”ステータスと”Ｅｎｄ”ステータスの各レコードの時刻データの差分を計算し、稼動時間を計算する。連続する”Ｓｔａｒｔ”ステータスと”Ｅｎｄ”ステータスが複数ある場合は、各差分データを合計することで、トータルの稼動時間を算出する。
【００４０】
次に、図１２を参照して、時刻データの改ざん検査を行う改ざん検査手段Ｂ１について説明する。被管理サーバ１０００側では、「装置特定情報」＋「ステータス」＋「取得した時刻データ」からハッシュ値を生成し、それを管理コントローラ１１００の不揮発メモリ１１１０に記録された公開鍵で暗号化している。また、「装置特定情報」＋「テーブル３００１のレコード件数」からハッシュ値を生成し、それを管理コントローラ１１００の不揮発メモリ１１１０に記録された公開鍵で暗号化している。
【００４１】
管理用サーバ２０００からデータ送信要求がきた場合、被管理サーバ１０００は、テーブル３００１に格納されている「装置特定情報」、「ステータス」、「時刻データ」に加えて、「公開鍵で暗号化したハッシュ値」も管理用サーバ２０００に送信する。また、テーブル３００２にある「装置特定情報」、「レコード件数」に加え、「暗号化したハッシュ値」も管理用サーバ２０００に送信する。これらのデータは稼動データとして被管理サーバ１０００から管理用サーバ２０００に送信される。
【００４２】
管理用サーバ２０００側では、送信されてきた稼動データに含まれる「テーブル３００２に記録されたレコード件数」と受信したテーブル３００１のレコードの件数を比較する。
【００４３】
「テーブル３００２に記録されたレコード件数」と受信したテーブル３００１のレコードの件数が一致しない場合は、不揮発メモリ１１１０に格納されたテーブル３００１のレコード（稼動時間レコード）の一部もしくはすべてが削除されたと考えられるため、課金計算時に不正利用を考慮した請求などを行うことができる。
【００４４】
次に、管理用サーバ２０００は、「テーブル３００２に記録された暗号化されたハッシュ値」を秘密鍵で復号化し、「テーブル３００２に記録された装置特定情報」＋「テーブル３００２に記録されたレコード件数」のハッシュ値と比較する。また「テーブル３００１に記録された暗号化されたハッシュ値」を秘密鍵で復号化し、「テーブル３００１に記録された装置特定情報」＋「テーブル３００１に記録されたステータス」＋「テーブル３００１に記録された時刻データ」のハッシュ値と比較する。
【００４５】
ハッシュ関数は不可逆な一方向関数を含むため、ハッシュ値から原文を再現することはできず、また同じハッシュ値を持つ異なるデータを作成することは極めて困難である。さらに公開鍵で暗号化されたデータはその公開鍵に対応する秘密鍵でしか復号化できない。したがって、それぞれのハッシュ値を比較した際に（送られてきたハッシュ値と、送られてきた原文から作成したハッシュ値とを比較した際に）、比較対象となる両者の値が一致すれば改ざんがされていないことが保証される。
【００４６】
仮に上記のハッシュ値比較においてデータが一致しない場合は、
・不揮発メモリ１１１０に格納されたテーブル３００１、３００２のデータが改ざんされた。
・不揮発メモリ１１１０に格納されたテーブル３００１、３００２の暗号化されたハッシュ値が改ざんされた。
・不揮発メモリ１１１０に格納された各種データと暗号化されたハッシュ値の両方が改ざんされた。
のいずれかの事象が発生しており、被管理サーバ１０００を不正利用したと考えられるため、課金計算時に不正利用を考慮した請求などを行うことができる。
【００４７】
以上説明したように、上記実施の形態では、被管理サーバ１０００には、メインＣＰＵ１３００から独立し、ＯＳの稼動状況に関わらず遠隔制御可能な管理コントローラ１１００が実装され、被管理サーバ１０００の使用時間管理機能を提供することができる。管理コントローラ１１００は、サーバ使用時間情報を格納するための不揮発メモリ１１１０と使用時間改ざんを防止するための暗号化機能を提供し、メインＣＰＵ１３００への通電開始と通電終了の時刻を暗号化して不揮発メモリ１１１０に格納する。管理用サーバ２０００は、被管理サーバ１０００の管理コントローラ１１００にネットワーク経由で遠隔地からログインし、その被管理サーバ１０００が記録した情報を必要に応じて取得して使用時間を計算することができる。このように、メインＣＰＵ１３００から独立し、ＯＳの稼動状況に関わらず遠隔制御可能な管理コントローラ１１００が電源モジュール１２００からメインＣＰＵ１３００への通電時間を管理し、さらに改ざん防止策を施すことができるので、精度の高い被管理サーバ１０００の使用時間管理を行うことができる。また、総稼動時間も計算可能になるため、被管理サーバ１０００を構成する各部品の保守時期なども算出できるようになる。
【００４８】
なお、本実施の形態では、サーバの使用時間を管理するサーバ使用時間管理システムについて説明したが、他の電気製品全般においても、電源モジュールと装置の核となる部品の間に本実施の形態と同様の仕組みを組み込むことにより、サーバ製品に限らず電気製品全般で使用時間に応じて課金する例えばリース等における課金システムの用途にも適用することができる。
【００４９】
また、上記実施の形態の構成及び動作は例であって、本発明の趣旨を逸脱しない範囲で適宜変更することができることは言うまでもない。
【産業上の利用可能性】
【００５０】
本発明は、サーバの使用時間を管理する場合のみならず、他の電気製品全般において使用時間を管理する場合にも適用することができる。
【図面の簡単な説明】
【００５１】
【図１】本発明が適用されるサーバ使用時間管理システムの機能ブロック図である。
【図２】本実施の形態の全体的な構成を示すブロック図である。
【図３】被管理サーバに搭載される管理コントローラの構成例を示すブロック図である。
【図４】稼動時間データ格納用テーブルの例を示す図である。
【図５】稼動時間データ格納用テーブルの例を示す図である。
【図６】稼動時間データ格納用テーブルの例を示す図である。
【図７】被管理サーバの起動時における稼動開始時刻検出／記録手段の動作について説明するための図である。
【図８】被管理サーバの稼動中における稼動経過時刻検出／記録手段の動作について説明するための図である。
【図９】被管理サーバの停止処理における稼動停止時刻検出／記録手段および稼動データ記録手段の動作について説明するための図である。
【図１０】”Ｓｔａｒｔ”および”Ｒｕｎｎｉｎｇ”ステータスのレコードが残っている場合の処理について説明するための図である。
【図１１】被管理サーバから管理用サーバが稼動時間データを取り出す稼動データ収集／管理手段について説明するための図である。
【図１２】時刻データの改ざん検査を行う改ざん検査手段の動作について説明するための図である。
【符号の説明】
【００５２】
１０００  被管理サーバ
１１００  管理コントローラ
１１１０  不揮発メモリ
１１２０  データ処理装置
１２００  電源モジュール
１３００  ＣＰＵ  
２０００  管理用サーバ
２１００  データ処理装置
２２００  データ記憶部
３００１，３００２，３００３  テーブル
【図１】
2008250833.tif 000003
【図２】
2008250833.tif 000004
【図３】
2008250833.tif 000005
【図４】
2008250833.tif 000006
【図５】
2008250833.tif 000007
【図６】
2008250833.tif 000008
【図７】
2008250833.tif 000009
【図８】
2008250833.tif 000010
【図９】
2008250833.tif 000011
【図１０】
2008250833.tif 000012
【図１１】
2008250833.tif 000013
【図１２】
2008250833.tif 000014