説明

機器、機器管理装置、機器管理システム及び機器管理方法、並びにプログラム及び記憶媒体

【課題】機器にインストールされたソフトウェアの改竄の検知、及び機器の記憶デバイス対する記憶データを暗号化するためのデバイス暗号鍵の管理を、ユーザに手間をかけずに確実に実行する。
【解決手段】複合機1を出荷するとき、複合機1にインストールしたファ―ムウェアのバージョン情報をTPM20で生成した機器固有IDとともに、管理サーバ2のファ―ムウェアバージョンDB(データベース)28に保存する。複合機1のHDD14を暗号化したとき、そのデバイス暗号鍵を機器固有ID及びパスフレーズとともに、管理サーバ2のデバイス鍵用DBに29に保存する。複合機1にインストールされているファ―ムウェアのバージョン情報と、管理サーバ2に保存されているバージョン情報とを比較して改竄を検知する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ソフトウェア及びデバイス暗号鍵が実装される機器、その機器の管理装置、管理システム及び管理方法、並びにプログラム及びその記憶媒体に関する。
【背景技術】
【0002】
コンピュータにインストールされたソフトウェアの改竄を検知する方法として、ハッシュ値を利用した方法がある(特許文献1参照)。この方法では、ソフトウェアをイントスールするときに、そのハッシュ値を計算して二次記憶装置に保存しておき、次にコンピュータを起動したとき、ソフトウェアを読み出してハッシュ値を計算し、二次記憶装置に保存しておいたハッシュ値と一致するか否かに基づいてソフトウェアの改竄の有無を判定する。
【0003】
しかしながら、この改竄検知方法では、ソフトウェアと共に、二次記憶装置に保存しておいたハッシュ値も改竄されると、ソフトウェアの改竄を検知できないという問題がある。
【0004】
この問題を解決する方法として、二次記憶装置に保存するハッシュ値を暗号化しておくことで、ハッシュ値の改竄を防ぐことが考えられる。しかし、ハッシュ値を暗号化/復号するための暗号化/復号鍵が二次記憶装置に保存されるため、悪意の第三者が復号鍵を不正に入手し、暗号化されたハッシュ値を復号することを阻止できないという問題がある。
【0005】
そこで、本願の出願人は、TPM(Trusted Platform Module)を用いて、ファームウェアの改竄を検知する方法を提案し、特許出願した(特願2008−36267号)。
【0006】
TPMは、業界標準団体であるTCG(Trusted Computing Group)によって定義された仕様に準拠するセキュリティチップであり、例えば、複合機のマザーボードに実装され、外部に取り出せない秘密鍵及び外部に取り出せる公開鍵からなる非対称鍵ペア(Endorsement key)を格納する不揮発性メモリや、暗号処理専用のマイクロプロセッサを備えている。
【0007】
先に出願した発明では、予め非対称鍵ペアの公開鍵で暗号化した暗号鍵(鍵ブロブ)を複合機内部の二次記憶装置(不揮発性メモリ等)に保存しておき、工場出荷時等にファームウェアをインストールするとき、ハッシュ値を計算し、TPMにより鍵ブロブから暗号鍵を復号し、その暗号鍵でハッシュ値を暗号化して、外部の二次記憶装置(SDカード等)に保存しておく。その後、複合機の設置時に、内部の二次記憶装置から読み出した鍵ブロブをTPMにより復号し、外部の二次記憶装置から読み出した暗号化されたハッシュ値を、鍵ブロブから復号した暗号鍵により復号し、そのハッシュ値と、ファームウェアから再計算されたハッシュ値とを比較する。そして、比較の結果、一致していればファームウェアの改竄はなかったものと判定し、一致しなければ改竄されたものと判定することにより、複合機の輸送過程におけるファ―ムウェアの改竄を検知することができる。
【0008】
しかしながら、この方法の場合、ソフトウェアの改竄の検知処理が複合機内で閉じているため、例えば比較の結果の一致/不一致を判定するソフトウェアが改竄された場合、ファームウェアの改竄を検知できないという問題がある。
【0009】
また、このような機器では、内部に保存しているデータの盗聴を防ぐため、ハードディスク装置(以下、HDDと言う)などの記憶デバイスに記憶する情報を暗号化することが行われている。そして、文献に記載されたものではないが、TPMの非対称鍵ペアの公開鍵を用いて、記憶デバイスに対する記憶データを暗合化するためのデバイス暗合鍵を暗号化して鍵ブロブとし、機器の不揮発性メモリに保管することが考えられている。
【0010】
しかしながら、TPMを搭載しているボードが故障した場合、デバイス暗号鍵を復号することができなくなるため、HDDなどの記憶デバイスが正常であっても、その記憶デバイスに保存した暗号化データを利用することができなくなるという問題がある。鍵ブロブを何らかの形でユーザが保管(バックアップ)する手段を設ければ、この問題は解決されるが、安全性のため鍵の変更をユーザが行う度に鍵をバックアップする必要が生じる。この処理はユーザの手間となるばかりでなく、運用によっては鍵情報の流出が懸念され、システムの安全性が損なわれる。
【特許文献1】特開2005−84989号公報
【発明の開示】
【発明が解決しようとする課題】
【0011】
本発明は、このような問題を解決するためになされたもので、その目的は、機器にインストールされたソフトウェアの改竄の検知、及び機器の記憶デバイス対する記憶データを暗号化するためのデバイス暗号鍵の管理を、ユーザに手間をかけることなく、確実に実行できるようにすることである。
【課題を解決するための手段】
【0012】
本発明は、外部に取り出し不能な秘密鍵及び取り出し可能な公開鍵を保持するとともに、前記公開鍵で暗号化された入力データを前記秘密鍵で復号して出力する機能を有するセキュリティ手段を内蔵した機器にインストールされるソフトウェア、及びその機器の記憶デバイスに対する記憶データを暗号化するためのデバイス暗号鍵を管理する機器管理方法であって、前記機器にソフトウェアをインストールする工程と、前記機器に固有の機器識別情報及びインストールしたソフトウェアのソフトウェア識別情報を関連付けて、外部の管理装置に保存する工程と、前記デバイス暗号鍵を作成する工程と、前記デバイス暗号鍵を前記公開鍵で暗号化したデバイス暗号鍵ブロブを機器の二次記憶装置に保存する工程と、前記デバイス暗号鍵を前記機器識別情報に関連付けて、前記管理装置に保存する工程とを有することを特徴とする機器管理方法である。
また、本発明は、外部に取り出し不能な秘密鍵及び取り出し可能な公開鍵を保持するとともに、前記公開鍵で暗号化された入力データを前記秘密鍵で復号して出力する機能を有するセキュリティ手段を内蔵した機器にインストールされるソフトウェア、及びその機器の記憶デバイスに対する記憶データを暗号化するためのデバイス暗号鍵を管理する機器管理装置であって、前記機器にソフトウェアがインストールされたとき、前記機器に固有の機器識別情報及びインストールしたソフトウェアのソフトウェア識別情報を関連付けて保存する手段と、前記デバイス暗号鍵が作成されたとき、そのデバイス暗号鍵を前記機器識別情報に関連付けて保存する手段とを有することを特徴とする機器管理装置である。
また、本発明は、外部に取り出し不能な秘密鍵及び取り出し可能な公開鍵を保持するとともに、前記公開鍵で暗号化された入力データを前記秘密鍵で復号して出力する機能を有するセキュリティ手段を内蔵するとともに、ソフトウェア、及び記憶デバイスに対する記憶データを暗号化するためのデバイス暗号鍵が実装される機器であって、前記ソフトウェアがインストールされたとき、前記機器に固有の機器識別情報及びインストールしたソフトウェアのソフトウェア識別情報を関連付けて外部の管理装置へ送信する手段と、前記デバイス暗号鍵を前記公開鍵で暗号化したデバイス暗号鍵ブロブを機器の二次記憶装置に保存する手段と、前記デバイス暗号鍵及び記憶デバイスの識別情報を関連付けて前記管理装置へ保存させる手段とを有することを特徴とする機器である。
本発明において、「デバイス暗号鍵を作成する」とは、デバイス暗号鍵を新規に作成すること、及び既存のデバイス暗号鍵を変更(更新)することを意味する。
【0013】
〔作用〕
本発明では、機器にソフトウェアをインストールしたとき、その機器に固有の機器識別情報及びインストールしたソフトウェアのソフトウェア識別情報を関連付けて、外部の管理装置に保存し、デバイス暗号鍵を作成したとき、そのデバイス暗号鍵をセキュリティ手段の外部に取り出し可能な公開鍵で暗号化したデバイス暗号鍵ブロブを機器の二次記憶装置に保存し、かつそのデバイス暗号鍵を機器識別情報に関連付けて、管理装置に保存する。従って、機器にインストールされているソフトウェアのソフトウェア識別情報と管理装置に保存されているソフトウェア識別情報とを比較することにより、ソフトウェアが改竄されたか否かを検知することができる。また、セキュリティ手段が故障し、機器内でデバイス暗号鍵を復号できなくなっても、管理装置に保存したデバイス暗号鍵を利用することができる。
【発明の効果】
【0014】
本発明によれば、機器にインストールされたソフトウェアの改竄の検知、及び機器の記憶デバイス対する記憶データを暗号化するためのデバイス暗号鍵の管理を、ユーザに手間をかけることなく、確実に行える。
【発明を実施するための最良の形態】
【0015】
以下、本発明の実施形態について図面を参照しながら説明する。
図1に示すように、本発明の実施形態の機器管理システムは、管理対象機器である複合機1と、管理サーバ2とを、ネットワーク3により通信可能に接続したものである。
【0016】
複合機1は、コピー機能、ファクシミリ機能、プリンタ機能、スキャナ機能などを備えた画像形成装置であって、バス10と、それぞれがバス10に接続されたコントローラボード11、操作・表示部12、不揮発性メモリ13、及びHDD14を備えている。操作・表示部12は、各種操作キー及びLCDなどからなる。不揮発性メモリ13は、NVRAM、FRAM等からなり、電源オフ時にも保持されるべき各種のデータが書き込まれる。
【0017】
コントローラボード12は、CPU15、ROM16、RAM17、ネットワークI/F(インタフェース)18、エンジンコントローラ19、及びTPM20を備えている。これらはバス10を介して接続されている。
【0018】
CPU15は、この複合機1全体の制御などを行う。ROM16は、NANDフラッシュメモリ、NORフラッシュメモリ等からなり、BIOS、OS(オペレーティングシステム)、プログラム等のファームウェアが格納される。RAM17は、CPU15が動作するときに、プログラムやデータを一時的に記憶するワークエリアとなる。ネットワークI/F18は、複合機1をネットワーク3に接続するためのインタフェースである。エンジンコントローラ19は、図示されていないプリンタエンジン、スキャナエンジン等を制御する。
【0019】
TPM20は、図2に示すように、ルート鍵161と、双方向通信インタフェース162とを有する。ルート鍵161はTPM20の外部に取り出し不能な秘密鍵(復号鍵)と取り出し可能な公開鍵(暗号鍵)からなる非対称鍵ペアである。双方向通信インタフェース162は、入力された平文データをルート鍵161の公開鍵で暗号化して出力し、入力された、ルート鍵161の公開鍵で暗号化されたデータをルート鍵161の秘密鍵で復号して出力するインタフェースである。以下の説明では、ルート鍵161の公開鍵で暗号化すること、ルート鍵161の秘密鍵で復号することを、それぞれ、ルート鍵161で暗号化する、ルート鍵161で復号する、と言う。TPM20は、コントローラボード12に直付けされており、取り外して別のボードに取り付けて利用することはできない。
【0020】
不揮発性メモリ13には、図3に示すように、ルート鍵161の公開鍵で暗号化したデバイス暗号鍵/復号鍵(デバイス暗号鍵ブロブ)が非暗号化領域に格納される。また、不揮発性メモリ13の暗号化領域に記憶されるデータは、デバイス暗号鍵/復号鍵で暗号化された暗号化データであり、この暗号化データを読み出したときは、デバイス暗号鍵/復号鍵で復号することで、利用可能となる。HDD14に保存するデータの暗号化に用いるデバイス暗号鍵、及びその暗号化データの復号に用いるデバイス復号鍵も、不揮発性メモリ13にデバイス暗号鍵ブロブとして保存される。
【0021】
図1の説明に戻る。管理サーバ2は、バス21と、それぞれがバス21に接続されたCPU22、ROM23、RAM24、ネットワークI/F25、操作・表示部26、及びHDD27を備えている。これらの各構成要素の機能は、複合機1の同名の構成要素と同様である。HDD27には、複合機1の不揮発性ソモリ13に書き込まれているファームウェアのバージョン情報を保存するファームウェアバージョンDB(データベース)26、及び複合機1のHDD14のデバイス暗号鍵/復号鍵などのようなデバイス鍵を保存するデバイス鍵用DB29が作成され、保存される。
【0022】
以上の構成を有する機器管理システムにおいて、複合機1を工場から出荷するときに、TPM20を初期化する。この初期化では、非対称鍵ペア(Endorsement key)を作成する。この非対称鍵ペアが前述したルート鍵161である。非対称鍵ペアの公開鍵は、そのまま、或いはコントローラボード11の型番・製造番号等、一意に識別可能なIDと組み合わせて機器固有識別ID情報とする。また、管理サーバ2との所定の通信に用いる通信鍵(以下、出荷時設定通信鍵と言う)が管理サーバ2から供給される。複合機1は、この出荷時設定通信鍵をルート鍵161で暗号化して通信鍵ブロブとし、不揮発性メモリ13に保存するか、又はTPM20内のNVRAMに保存する。
【0023】
TPM20の初期化が終了したら、次に複合機1にファームウェアをインストールする。図4は、複合機1にファームウェアをインストールするときに使用されるソフトウェアを示す図であり、プラットフォーム132として構成された、OS(オペレーティングシステム)133、インストールアプリ180、及びインストール用ファイル群185からなる。インストール用ファイル群185には、ファームウェア群182及びそれぞれのバージョンファイル群186が含まれている。バージョンファイル群186の各バージョンファイル1〜nは、ファームウェア群182の対応するファームウェア1〜nのバージョン情報の文字列のテキストファイルである。ここで、インストールアプリ180、及びインストール用ファイル群185は、管理サーバ2からネットワークを介して供給するか、又はそれらを記録した記録媒体の読取(再生)装置を複合機1に接続して読み込む。
【0024】
図5は、複合機1にファームウェアをインストールするときの動作を示すシーケンス図である。まず、ステップS1で、インストールアプリ180は、インストール用ファイル群185、即ちファームウェア群182、及びバージョンファイル群186をROM16及びHDD14にインストールし、次にステップS2で管理サーバ2に対して、バージョンレポートを送信する。
【0025】
バージョンレポートは、図6に示すように、機器固有ID情報と、ファームウェアバージョンリストからなる。ファームウェアバージョンリストは、図5のバージョンファイル群186に相当するものであり、ファームウェア識別子及びそのバージョン情報からなる。
【0026】
図7は、図5のステップS2の詳細な手順のシーケンス図である。
まず、ステップS11で、複合機1は管理サーバ2に対して、セッション通信鍵の送付を要求する。このセッション通信鍵要求信号は、TPM20の初期化時にコントローラボード11内に保存した通信鍵ブロブをTPM20のルート鍵で復号して得た出荷時通信鍵により暗号化されている。
【0027】
管理サーバ2は、セッション通信鍵要求信号を受信し、内部に保持している出荷時設定通信鍵により復号する。そして、ステップS12で、複合機1に対し、セッション通信鍵を送付する。このセッション通信鍵は、出荷時設定通信鍵により暗号化されている。
【0028】
複合機1は、暗号化されたセッション通信鍵を受信し、出荷時設定通信鍵により復号して、セッション通信鍵を取得した後、ステップS13で、バージョンレポートを送信する。このバージョンレポートは、セッション通信鍵により暗号化されている。
【0029】
管理サーバ2は、暗号化されたバージョンレポートを受信し、セッション通信鍵により復号して、バージョンレポートを取得したら、それをHDD27内のファームウェアバージョンDB28に保存する。図8にファームウェアバージョンDB28の一例を示す。
【0030】
管理サーバ2は、バージョンレポートを正常に取得し、保存できた場合は内容受付OK通知を、正常に取得できなかった場合は内容受付NG通知を、ステップS14で複合機1へ送信する。この通知はセッション通信鍵で暗号化されている。
【0031】
以上が複合機1の出荷時の処理である。次に複合機1を出荷先で設置し、記憶デバイスであるHDD14を暗号化するときの処理について説明する。
図9は、複合機1にインストールされるソフトウェアの内、複合機1の起動時にデバイス暗号鍵の処理に係わるソフトウェアであり、BIOS220、基本パッケージ221、第1のアプリケーションパッケージ222、第2のアプリケーションパッケージ223からなる。これらのソフトウェアは複合機1の出荷時にインストールされるものであり、その内BIOS220はROM16に、それ以外のファームウェアはROM16及びHDD14にインストールされる。
【0032】
基本パッケージ221は、OS133、システム起動モジュール231、システム管理モジュール232、暗号鍵管理モジュール233、及び基本アプリケーション(コピー)234を有する。また、第1のアプリケーションパッケージ222は、基本アプリケーション(プリンタ)244、基本アプリケーション(ネットワーク)245を有し、第2のアプリケーションパッケージ223は基本アプリケーション(スキャナ)246を有する。
【0033】
BIOS220は、システムの起動の初期を担うモジュールであり、TPM20へのアクセス手段を有する。OS133は他のソフトウェアモジュールからハードウェア機能を利用する機能を提供する。OS133のファイルシステム241はデータを管理する。
【0034】
複合機1の起動時、BIOS220はOS133を起動する。OS133の起動後は、システム内の他のソフトウェアを起動する為のシステム起動モジュール231が起動される。システム起動モジュール231は、他のソフトウェア(モジュール)を規定された順に起動する。BIOS220、OS133、ファイルシステム241等のモジュールはCPU15によりRAM17に読み込まれて実行される。
【0035】
ここで、TPM20を用いた情報の暗号化及び復号について簡単に説明する。図10は、複合機1の起動時のTPM20の動作を示す図である。プラットフォーム132では、まずBIOS220が自身のハッシュ値を計算し、TPM20内のPCR(PCR_0)251へ登録する。BIOS120は例えば原文から固定長の疑似乱数を生成する演算手法によって自身のハッシュ値を計算する。
【0036】
次に、BIOS220は第1の基本パッケージ221のハッシュ値を計算し、TPM20内のPCR(PCR_1)252へ登録した後、基本パッケージ221を起動する。また、基本パッケージ221は、アプリケーションパッケージ222のハッシュ値を計算し、TPM5内のPCR(PCR_2)253へ登録した後、アプリケーションパッケージ222を起動する。
【0037】
このように、TPM20のPCR251〜253には、複合機1の起動に伴い、BIOS220、基本パッケージ221及びアプリケーションパッケージ222から計算されるハッシュ値が登録される。
【0038】
図11は、TPM20を用いた情報の暗号化及び復号を示す図である。この図のAはTPM20による情報「Data P」の暗号化を表す。TPM20は暗号化を行う情報「Data P」と、「PCR_0」〜「PCR_2」に格納するハッシュ値「X」〜「Z」とに基づいて、ブロブ(BLOB)260を作成する。
【0039】
図11BはTPM20によるブロブ261〜263の復号を示す。TPM20では、複合機1を起動した際に、例えばBIOS220、基本パッケージ221及びアプリケーションパッケージ222から計算された3つのハッシュ値「X」〜「Z」が「PCR_0」〜「PCR_2」に登録されている。
【0040】
情報「Data P」を含むブロブ261〜263は、ファイルシステム241が管理している。ブロブ261には、「PCR_0」〜「PCR_2」に「X」〜「Z」が登録されている。ブロブ262には、「PCR_0」〜「PCR_2」に「X」,「G」及び「Z」が登録されている。また、ブロブ263には「PCR_0」に「X」が登録されている。
【0041】
ブロブ261の「PCR_0」〜「PCR_2」とTPM20の「PCR_0」〜「PCR_2」に登録されているハッシュ値とが同じであるため、TPM20はブロブ261からの情報「Data P」の取り出しを許可する。しかし、ブロブ262の「PCR_1」とTPM20の「PCR_1」とに登録されているハッシュ値が異なるため、TPM20はブロブ262からの情報「Data P」の取り出しを許可しない。ブロブ63については、その「PCR_0」とTPM5の「PCR_0」に登録されているハッシュ値とが同じであるため、TPM20はブロブ263からの情報「Data P」の取り出しを許可する。なお、TPM20はブロブ263の「PCR_1」、「PCR_2」のようなハッシュ値が登録されていないPCRについては、情報「Data P」の取り出しの許可又は不許可の判定に利用しない。
【0042】
図12は、複合機1の起動時にデバイス暗号鍵を取得する処理を示す図である。複合機1のプラットフォーム132内のファイルシステム241にデバイス暗号鍵271をルート鍵161で暗号化したブロブ(デバイス暗号鍵ブロブ)270が予め出荷時等に保存されている。このデバイス暗号鍵ブロブ270の復号可否は、PCR251〜253に登録されているハッシュ値によって制御される。デバイス暗号鍵271は、ファイルシステム241上に配置された秘密情報の暗号化又は暗号化された秘密情報の復号に用いられる。
【0043】
TPM20では、複合機1の起動時、BIOS220、基本パッケージ221及びアプリケーションパッケージ222から計算された3つのハッシュ値「X」〜「Z」が「PCR_0」〜「PCR_2」に登録されている。
【0044】
一方、暗号鍵ブロブ270では、「PCR_0」〜「PCR_2」に「X」〜「Z」が登録されている。暗号鍵ブロブ270の「PCR_0」〜「PCR_2」とTPM20の「PCR_0」〜「PCR_2」に登録されているハッシュ値とが同じであるため、TPM20は暗号鍵ブロブ270からデバイス暗号鍵271を復号する。暗号鍵管理モジュール238は、デバイス暗号鍵271を用いて、暗号化された秘密情報272から秘密情報273を復号することができる。
【0045】
図13は起動時にデバイス暗号鍵を取得する処理を表したシーケンス図である。まずステップS21で、BIOS220は自身のハッシュ値を計算し、TPM20内のPCR251に登録する。次に、ステップS22に進み、BIOS220は基本パッケージ221のハッシュ値を計算する。ステップS23に進み、BIOS220は基本パッケージ221を展開する。ステップS24に進み、BIOS220は基本パッケージ221のハッシュ値をTPM20内のPCR252に登録する。ステップS25に進み、BIOS220はOS133を起動する。
【0046】
ステップS26に進み、OS133はシステム起動モジュール235を起動する。ステップS27に進み、システム起動モジュール235はシステム管理モジュール234を起動する。ステップS28に進み、システム起動モジュール235は基本アプリケーション233を起動する。
【0047】
ステップS29に進み、システム起動モジュール235はアプリケーションパッケージ222のハッシュ値を計算する。ステップS30に進み、システム起動モジュール235はアプリケーションパッケージ222のハッシュ値をTPM20内のPCR253に登録する。
【0048】
ステップS31に進み、システム起動モジュール235は暗号鍵管理モジュール238を起動する。そして、ステップS32に進み、暗号鍵管理モジュール238は前述のように暗号鍵ブロブ270からデバイス暗号鍵271を復号(展開)する。暗号鍵管理モジュール238はデバイス暗号鍵271を用いて、暗号化された秘密情報272から秘密情報273を復号することができる。
【0049】
なお、TPM20はBIOS220、基本パッケージ221及びアプリケーションパッケージ222から計算されるハッシュ値がPCR251〜253に登録されたあと、暗号鍵ブロブ270の復号を受け付ける。暗号鍵モジュール238はTPM20が暗号鍵ブロブ270の復号を受け付けるようになったタイミングで、暗号鍵ブロブ270の復号をTPM20へ依頼する。この後、暗号鍵管理モジュール238はTPM20が暗号鍵ブロブ270から復号したデバイス暗号鍵271を取得できる。
【0050】
上記のようにして取得したデバイス暗号鍵271を用いて、HDD14に対して、データを暗号化しながら書き込みを行い、復号化しながら読み込みを行うことで、HDD14上のデータを使用することができる。デバイス暗号鍵271を更新し、新しいデバイス暗号鍵でHDD14を初期化した場合には、管理サーバ2に対し、図14に示すシーケンスで鍵レポートを送信する。なお、この鍵レポートの送信は、複合機1の出荷時又は設置時に、デバイス暗号鍵を新規に作成した場合にも実行する。
【0051】
この図のシーケンスにおいて、ステップS41、S42は、それぞれ図7のステップS11、S12と同じである。次のステップS43では、複合機1は管理サーバ2に対し、鍵レポートを送信する。この鍵レポートはセッション通信鍵により暗号化されている。
【0052】
図15に示すように、鍵レポートは、機器固有ID情報、デバイス種別(HDD等)、デバイスID情報(HDDの場合、ATAコマンドで得られるID情報等)、デバイス暗号鍵、及びシステム管理者が操作・表示部12から入力したパスフレーズからなる。
【0053】
管理サーバ2は、暗号化された鍵レポートを受信し、セッション通信鍵により復号して、鍵レポートを取得したら、それをHDD27内のデバイス鍵用DB30に保存する。図16にデバイス鍵用DB29の一例を示す。
【0054】
管理サーバ2は、鍵レポートを正常に取得し、保存できた場合は内容受付OK通知を、正常に取得できなかった場合は内容受付NG通知を、ステップS44で複合機1へ送信する。この通知は、セッション通信鍵で暗号化されている。
【0055】
次に、出荷時にインストールされたファームウェアの改竄を検知する手順について、図17に示すシーケンス図を参照しながら説明する。この手順は、出荷後、設置時までの間、即ち輸送中に意図しない改竄を受けたことを検知するものである。
【0056】
複合機1は、ステップS51で、管理サーバ2に対し、セッション通信鍵を要求する。管理サーバ2は、この要求に応じて、ステップS52で、セッション通信鍵を複合機1へ送付する。これらの通信は図10の手順S11、S12と同様、出荷時設定通信鍵で暗号化してもよい。
【0057】
次いで複合機1は、ステップS53で、セッション通信鍵により暗号化した機器固有ID検索要求信号を管理サーバ2へ送信する。この機器固有ID検索要求信号には、複合機1の機器固有IDが添付されている。
【0058】
機器固有ID検索要求信号を受信した管理サーバ2は、ファ―ムウェアバージョンデータベース28を検索し、ステップS54で、その検索結果を応答する。この検索結果応答通知は、要求された機器固有IDの有無を示す通知であり、セッション通信鍵により暗号化されている。
【0059】
複合機1は、管理サーバ2から、自分の機器固有IDが有るとの通知を受けた場合、ステップS55で、ファームウェア比較要求信号を送信する。このファームウェア比較要求信号には、複合機1の機器固有ID、及びその時点で不揮発性メモリ13にインストールされているファームウェアのバージョン情報が添付されており、かつセッション通信鍵により暗号化されている。
【0060】
ファームウェア比較要求信号を受信した管理サーバ2は、受信した機器固有IDを用いてファームウェアバージョンデータベース29を参照し、そこに書き込まれているバージョン情報と、受信したバージョン情報とが一致するか否かを判断し、その判断結果をセッション通信鍵で暗号化し、ステップS56で複合機1に応答するとともに、その判断結果をHDD14に保存する。複合機1では、受信した応答により、一致の場合は改竄無し、不一致の場合は改竄有りと判断することができる。
【0061】
このように、本実施形態では、複合機1を出荷するときに、インストールしたファームウェアのバージョン情報を管理サーバ2に保存しておき、設置時に、複合機1が管理サーバ2に問い合わせ、管理サーバ2でバージョン情報を比較するので、改竄検知処理が複合機内に閉じていた従来方法と比べ、より確実に改竄検知が可能となる。
【0062】
次にデバイス暗号鍵の復活処理について説明する。従来、デバイス暗号鍵がHDD等の二次記憶装置にデバイス暗号鍵ブロブとして保存されているため、コントローラボード11が使用できなくなると、デバイス暗号鍵ブロブからデバイス暗号鍵を復号することができないため、HDD14内に暗号化されて保存されているデータを利用することはできなかった。本実施形態では、管理サーバ2のデバイス鍵用データベース29にデバイス鍵が保存されている場合は、それを受け取ることで、HDD14内に暗号化されて保存されているデータを利用できる。
【0063】
以下、この手順の一例について、図18のシーケンス図を参照しながら説明する。この図の手順は、コントローラボード11が使用できなくなったため、HDD14を別の複合機1に取り付け、その複合機1を起動したときに実行する手順である。
【0064】
まず、複合機1のシステムがHDD14のデバイスIDを読み出したとき、既に認識したIDでなかった場合、ステップS61で、新しいHDDが複合機1に接続されたことを検知する。
【0065】
次のステップS62と、その次のステップS63は、図17のステップS51、S52と同じである。次いで複合機1は、ステップS64で、セッション通信鍵により暗号化したデバイス固有ID検索要求信号を管理サーバ2へ送信する。このデバイス固有ID検索要求信号には、HDD14のデバイス固有IDが添付されている。
【0066】
デバイス固有ID検索要求信号を受信した管理サーバ2は、デバイス鍵用データベース30を検索し、ステップS65で、その検索結果を応答する。この検索結果応答通知は、検索要求されたデバイス固有IDの有無を示す通知であり、セッション通信鍵により暗号化されている。
【0067】
複合機1は、管理サーバ2から、検索要求したデバイス固有IDが有るとの通知を受けた場合、ステップS66で、デバイス鍵要求信号を送信する。このデバイス鍵要求信号には、複合機1の機器固有ID、及びパスフレーズが添付されており、かつセッション通信鍵により暗号化されている。
【0068】
デバイス暗号鍵要求信号を受信した管理サーバ2は、受信した機器固有IDを用いてデバイス鍵用データベース29を参照し、そこに書き込まれているパスフレーズと、受信したパスフレーズとを比較し、一致した場合はデバイス暗号鍵を、一致しなかった場合は、送付拒否通知を、それぞれセッション通信鍵で暗号化し、ステップS67で複合機1へ送付する。複合機1は、受信したデバイス暗号鍵を用いて、HDD14から読み出したデータを復号することができる。
【0069】
なお、以上は、HDD14を別の複合機1に取り付けた場合にHDD14のデバイス暗号鍵を復元する手順であるが、コントローラボード11を交換した場合も同じ手順でデバイス暗号鍵を復活させることができる。
【図面の簡単な説明】
【0070】
【図1】本発明の実施形態の機器管理システムの構成を示す図である。
【図2】TPMの概略構成を示す図である。
【図3】HDDの暗号化を説明するための図である。
【図4】複合機にファームウェアをインストールするときに使用されるソフトウェアを示す図である。
【図5】複合機にファームウェアをインストールするときの動作を示すシーケンス図である。
【図6】バージョンレポートの一例を示す図である。
【図7】図5のバージョンレポート送信手順の詳細を示すシーケンス図である。
【図8】ファームウェアバージョンデータベースの一例を示す図である。
【図9】複合機の起動時にデバイス暗号鍵の処理に係わるソフトウェアを示す図である。
【図10】複合機の起動時のTPMの動作を示す図である。
【図11】TPMを用いた情報の暗号化及び復号を示す図である。
【図12】複合機の起動時にデバイス暗号鍵を取得する処理を示す図である。
【図13】複合機の起動時にデバイス暗号鍵を取得する処理を示すシーケンス図である。
【図14】鍵レポート送信手順を示すシーケンス図である。
【図15】鍵レポートの一例を示す図である。
【図16】デバイス鍵用データベースの一例を示す図である。
【図17】出荷時にインストールされたファームウェアの改竄を検知する手順を示すシーケンス図である。
【図18】デバイス暗号鍵を復活させる手順の一例を示すシーケンス図である。
【符号の説明】
【0071】
1・・・複合機、2・・・管理サーバ、13・・・不揮発性メモリ、14・・・HDD、20・・・TPM、28・・・ファ―ムウェアバージョンDB、29・・・デバイス鍵用DB、161・・・ルート鍵、270・・・デバイス暗号鍵ブロブ。

【特許請求の範囲】
【請求項1】
外部に取り出し不能な秘密鍵及び取り出し可能な公開鍵を保持するとともに、前記公開鍵で暗号化された入力データを前記秘密鍵で復号して出力する機能を有するセキュリティ手段を内蔵した機器にインストールされるソフトウェア、及びその機器の記憶デバイスに対する記憶データを暗号化するためのデバイス暗号鍵を管理する機器管理方法であって、
前記機器にソフトウェアをインストールする工程と、前記機器に固有の機器識別情報及びインストールしたソフトウェアのソフトウェア識別情報を関連付けて、外部の管理装置に保存する工程と、前記デバイス暗号鍵を作成する工程と、前記デバイス暗号鍵を前記公開鍵で暗号化したデバイス暗号鍵ブロブを機器の二次記憶装置に保存する工程と、前記デバイス暗号鍵を前記機器識別情報に関連付けて、前記管理装置に保存する工程とを有することを特徴とする機器管理方法。
【請求項2】
請求項1に記載されている機器管理方法において、
前記機器にインストールされているソフトウェアのソフトウェア識別情報と前記管理装置に保存されているソフトウェア識別情報とを比較するソフトウェア識別情報比較工程と、比較の結果を基にソフトウェアが改竄されたか否かを判断するソフトウェア改竄判断工程とを有することを特徴とする機器管理方法。
【請求項3】
請求項2に記載されている機器管理方法において、
前記インスールする工程を前記機器の出荷時に行い、ソフトウェア識別情報比較工程及びソフトウェア改竄判断工程を前記機器の設置時に行うことを特徴とする機器管理方法。
【請求項4】
請求項1に記載されている機器管理方法において、
前記機器識別情報は、前記公開鍵であることを特徴とする機器管理方法。
【請求項5】
請求項1に記載されている機器管理方法において、
前記ソフトウェア識別情報は、ソフトウェアのバージョン情報を含むことを特徴とする機器管理方法。
【請求項6】
請求項1に記載された機器管理方法において、
前記管理装置に保存されているデバイス暗号鍵を前記機器に供給することにより、前記機器でデバイス暗号鍵を復活させる暗号鍵復活工程を有することを特徴とする機器管理方法。
【請求項7】
請求項6に記載されている機器管理方法において、
前記デバイス暗号鍵を前記管理装置に保存する工程は、ユーザが設定したパスワードを前記デバイス暗号鍵とともに前記機器識別情報に関連付けて保存することを特徴とする機器管理方法。
【請求項8】
請求項2に記載された機器管理方法において、
ソフトウェア識別情報比較工程は、前記機器が、自分の機器識別情報の検索要求信号を前記管理装置へ送信する工程と、前記管理装置が、受信した検索情報要求信号を基に先に保存した機器識別情報を検索する工程と、前記管理装置が、検索結果応答信号を前記機器へ送信する工程と、前記機器が、自分の機器識別情報が存在するとの検索結果応答信号を受信したとき、インストールされているソフトウェアのソフトウェア識別情報を前記管理装置へ送信する工程と、前記管理装置が、受信したそのソフトウェア識別情報と先に記憶したソフトウェア識別情報とを比較する工程とからなることを特徴とするソフトウェア管理方法。
【請求項9】
請求項7に記載されている機器管理方法において、
前記暗号鍵復活工程は、前記機器が、前記管理装置に対し、デバイス識別情報の検索要求信号を送信する工程と、前記管理装置が、受信した検索情報要求信号を基に先に保存したデバイス識別情報を検索する工程と、検索結果応答信号を前記機器へ送信する工程と、前記機器が、検索要求したデバイス識別情報が存在するとの検索結果応答信号を受信したとき、パスワードを前記管理装置送信する工程と、前記管理装置が、受信したパスワードが前記デバイス識別情報及びデバイス暗号鍵に関連付けて保存されているパスワードと一致した場合に、そのデバイス暗号鍵を前記機器へ送信する工程とを有することを特徴とする機器管理方法。
【請求項10】
外部に取り出し不能な秘密鍵及び取り出し可能な公開鍵を保持するとともに、前記公開鍵で暗号化された入力データを前記秘密鍵で復号して出力する機能を有するセキュリティ手段を内蔵した機器にインストールされるソフトウェア、及びその機器の記憶デバイスに対する記憶データを暗号化するためのデバイス暗号鍵を管理する機器管理装置のコンピュータに、
前記機器にソフトウェアがインストールされたとき、前記機器に固有の機器識別情報及びインストールしたソフトウェアのソフトウェア識別情報を関連付けて保存する工程と、前記デバイス暗号鍵が作成されたとき、そのデバイス暗号鍵を前記機器識別情報に関連付けて保存する工程とを実行させるためのプログラム。
【請求項11】
請求項10に記載されたプログラムを記憶したコンピュータ読み取り可能な記憶媒体。
【請求項12】
外部に取り出し不能な秘密鍵及び取り出し可能な公開鍵を保持するとともに、前記公開鍵で暗号化された入力データを前記秘密鍵で復号して出力する機能を有するセキュリティ手段を内蔵した機器にインストールされるソフトウェア、及びその機器の記憶デバイスに対する記憶データを暗号化するためのデバイス暗号鍵を管理する機器管理装置であって、
前記機器にソフトウェアがインストールされたとき、前記機器に固有の機器識別情報及びインストールしたソフトウェアのソフトウェア識別情報を関連付けて保存する手段と、前記デバイス暗号鍵が作成されたとき、そのデバイス暗号鍵を前記機器識別情報に関連付けて保存する手段とを有することを特徴とする機器管理装置。
【請求項13】
外部に取り出し不能な秘密鍵及び取り出し可能な公開鍵を保持するとともに、前記公開鍵で暗号化された入力データを前記秘密鍵で復号して出力する機能を有するセキュリティ手段を内蔵するとともに、ソフトウェア、及び記憶デバイスに対する記憶データを暗号化するためのデバイス暗号鍵が実装される機器であって、
前記ソフトウェアがインストールされたとき、前記機器に固有の機器識別情報及びインストールしたソフトウェアのソフトウェア識別情報を関連付けて外部の管理装置へ送信する手段と、前記デバイス暗号鍵を前記公開鍵で暗号化したデバイス暗号鍵ブロブを機器の二次記憶装置に保存する手段と、前記デバイス暗号鍵及び記憶デバイスの識別情報を関連付けて前記管理装置へ保存させる手段とを有することを特徴とする機器。
【請求項14】
請求項12に記載された機器管理装置と、請求項13に記載された機器とからなる機器管理システム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate


【公開番号】特開2009−294859(P2009−294859A)
【公開日】平成21年12月17日(2009.12.17)
【国際特許分類】
【出願番号】特願2008−147100(P2008−147100)
【出願日】平成20年6月4日(2008.6.4)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.FRAM
【出願人】(000006747)株式会社リコー (37,907)
【Fターム(参考)】