JP5278520B2 - 情報処理装置、情報保護方法 - Google Patents

情報処理装置、情報保護方法 Download PDF

Info

Publication number
JP5278520B2
JP5278520B2 JP2011227709A JP2011227709A JP5278520B2 JP 5278520 B2 JP5278520 B2 JP 5278520B2 JP 2011227709 A JP2011227709 A JP 2011227709A JP 2011227709 A JP2011227709 A JP 2011227709A JP 5278520 B2 JP5278520 B2 JP 5278520B2
Authority
JP
Japan
Prior art keywords
information
processing apparatus
information processing
access control
firmware
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2011227709A
Other languages
English (en)
Other versions
JP2012064225A5 (ja
JP2012064225A (ja
Inventor
秀一 瀬川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2011227709A priority Critical patent/JP5278520B2/ja
Publication of JP2012064225A publication Critical patent/JP2012064225A/ja
Publication of JP2012064225A5 publication Critical patent/JP2012064225A5/ja
Application granted granted Critical
Publication of JP5278520B2 publication Critical patent/JP5278520B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、情報処理装置、情報保護方法に係り、特に自装置内の秘密情報を保護する情報処理装置、情報保護方法に関する。
セキュリティを重視するPC等の情報処理装置や複合機(MFP)等の画像処理装置においては、自装置内の秘密情報を保護する必要がある。近年、PC等の情報処理装置や複合機等の画像処理装置ではセキュリティ意識の高まりに伴い、盗聴等を防ぐため、装置内部に保存している秘密情報の暗号化が可能となった。
例えば特許文献1にはTCPA(Trusted Computing Platform Alliance)の仕様に基づいたPCにおいて、TPM(Trusted Platform Module )を用いた情報の暗号化について記載されている。TPMを用いることにより、情報処理装置や画像処理装置は秘密情報を暗号化できる。TPMは例えばマザーボードに直付けされるチップで実現される。秘密情報は、通常、パスワード等の特定の利用者と紐づけられた保護情報により保護される。
また、特許文献2にはバグやセキュリティホール、又は機能の追加、変更等に対処するため、情報処理装置や画像処理装置において、プログラムの更新を行うことが記載されている。
しかし、設定情報がシステム管理者の権限によりコントロールされており、システム管理者不在の状況でも再起動などの初期化と再スタートを実施できることを要求される情報処理装置や画像処理装置では、特定の利用者と紐づけられた保護情報により秘密情報を保持することが困難である。システム管理者不在の状況での起動時には、システム管理者が保護情報を情報処理装置や画像処理装置へ入力できない為である。
設定情報がシステム管理者の権限によりコントロールされており、システム管理者不在の状況でも再起動などの初期化と再スタートを実施できることを要求される情報処理装置や画像処理装置で自装置内の秘密情報を保護する場合には、起動時に装置内の構成(システム)の真正性を確認する必要がある。
この為、TPM内にあるPCR(Platform Configuration Register)へファームウェアから計算したハッシュ値を登録し、PCRに登録されたハッシュ値を秘密情報の復号条件とすることで、情報処理装置や画像処理装置は自装置内の秘密情報を、不正なシステムによるデータ窃取から保護している。
しかしながら、ファームウェアの更新(ファームウェアアップデート)を行う情報処理装置や画像処理装置では、秘密情報の復号条件に含まれているハッシュ値の更新が必要となるが、更新に用いるハッシュ値の真正性の確保が困難であった。そこで、従来の情報処理装置や画像処理装置では、ファームウェアの更新に利用するファームウェア更新ファイルから信頼できる方法で計算されたハッシュ値を用いていた。
従来の情報処理装置や画像処理装置は、暗号化に利用した暗号鍵や暗号化された秘密情報を書き換え可能な記憶媒体に記憶している。通常の書き換え可能な記憶媒体は通常の物理インタフェースにより書き換えが実施されるため、単純な攻撃でデータの破壊や改竄の被害を受けやすい。
したがって、従来の情報処理装置や画像処理装置では記憶媒体に記憶されている暗号化に利用した暗号鍵や暗号化された秘密情報がブルートフォース攻撃などの暗号解読の攻撃にさらされやすいという問題を有していた。
本発明は、上記の点に鑑みなされたもので、自装置内の暗号化された秘密情報を高いセキュリティレベルで保護することが可能な情報処理装置、情報保護方法を提供することを目的とする。
上記課題を解決する為、本発明は、自装置内の情報を保護する情報処理装置であって、前記情報の暗号化のための暗号情報を記憶する記憶手段と、ファームウェアから一意に値を算出する算出手段と、算出された前記値に基づき、前記値に関して規定された定義に従って、前記記憶手段に記憶された前記暗号情報へのアクセス制御を行うアクセス制御手段と、を備え、前記記憶手段は、前記定義の変更の権限を有するオーナであることを認証する為のオーナ認証情報を記憶しており、前記アクセス制御手段は、前記値に関して規定された定義に従って、前記記憶手段に記憶されたオーナ認証情報へのアクセス制御を行うことを特徴とする。
なお、本発明の構成要素、表現または構成要素の任意の組合せを、方法、装置、システム、コンピュータプログラム、記録媒体、データ構造などに適用したものも本発明の態様として有効である。
本発明によれば、自装置内の暗号化された秘密情報を高いセキュリティレベルで保護することが可能な情報処理装置、情報保護方法を提供できる。

本発明による情報処理装置の一実施例のハードウェア構成図である。 本発明による情報処理装置の一実施例のソフトウェア構成図である。 TPMの起動時の動作を表した模式図である。 NV領域の特徴を表した模式図である。 起動時にデバイス暗号鍵を取得する処理を表した模式図である。 起動時にデバイス暗号鍵を取得する処理を表したシーケンス図である。 NV領域からのデータの読み出し処理又はNV領域へのデータの書き込み処理を表したフローチャートである。 NV領域を定義する処理を表したフローチャートである。 ファームウェアの更新に利用するファームウェア更新ファイルの一例の構造図である。 PCR値フィールドの一例の構成図である。 ファームウェア更新ファイルの頒布形態を表した模式図である。 ファームウェアを更新する処理を表した模式図である。 ネットワーク経由でファームウェアを更新する処理を表したフローチャートである。 本発明の情報処理装置におけるデータ/プログラムの一例の配置図である。 TPM内のデータ構成を表した模式図である。 起動時にデバイス暗号鍵を取得する処理を表した他の例の模式図である。 TPM内のデータ構成を表した他の例の模式図である。 本発明による情報処理装置の他の実施例のソフトウェア構成図である。 セキュアデバイスの起動時の動作を表した模式図である。 セキュアデバイスの起動時の動作を表した他の例の模式図である。
次に、本発明を実施するための最良の形態を、以下の実施例に基づき図面を参照しつつ説明していく。なお、本実施例ではPC等の情報処理装置を例に説明しているが、複合機等の画像処理装置であってもよい。また、本発明による情報処理装置はファームウェアを用いて秘密情報を保護する必要があり、そのファームウェアの更新を行う可能性のある装置の一例である。本発明による情報処理装置は、例えば携帯電話や車載情報装置なども含まれる。
図1は本発明による情報処理装置の一実施例のハードウェア構成図である。図1の情報処理装置は、CPU1,ASIC2,揮発性メモリ3,エンジンコントローラ4,TPM5,不揮発メモリ6,ネットワークデバイス7,sdカードI/F8を有するように構成される。
CPU1は、メインバス9を介してASIC2,エンジンコントローラ4に接続されている。ASIC2は揮発性メモリ3と接続されると共に、ローカルバス10を介してTPM5,不揮発メモリ6,ネットワークデバイス7,sdカードI/F8に接続される。
図1の情報処理装置は、ローカルバス10上にTPM5が搭載されており、秘密情報の暗号化や復号、プラットフォームの真正性を確認するプラットフォーム検証の機能を提供できる構成となっている。
図2は本発明による情報処理装置の一実施例のソフトウェア構成図である。図2の情報処理装置は、BIOS20,基本パッケージ21,アプリケーションパッケージ22,アプリケーションパッケージ23を有するように構成される。
また、基本パッケージ21は、ネットワーク更新モジュール31,flashメディア更新モジュール32,基本アプリケーション(コピー)33,システム管理モジュール34,システム起動モジュール35,システム更新モジュール36,ファームウェア認証モジュール37,暗号鍵管理モジュール38,TPM管理モジュール(TSS)39,オペレーティングシステム40を有する構成である。なお、オペレーティングシステム40はファイルシステム41,不揮発メモリドライバ42,TPMドライバ43を有する構成である。
アプリケーションパッケージ22は、基本アプリケーション(プリンタ)44,基本アプリケーション(ネットワーク)45を有する構成である。アプリケーションパッケージ23は基本アプリケーション(スキャナ)46を有する構成である。
BIOS20は、システムの起動の初期を担うモジュールである。BIOS20はTPM5へのアクセス手段を有している。オペレーティングシステム40は他のソフトウェアモジュールからハードウェア機能を利用する機能を提供する。オペレーティングシステム40のファイルシステム41はデータを管理する。不揮発メモリドライバ42は不揮発メモリ6へアクセスを行うためのソフトウェアである。TPMドライバ43はTPM5へアクセスを行うためのソフトウェアである。
情報処理装置の起動時、BIOS20はオペレーティングシステム40を起動する。オペレーティングシステム40の起動後は、システム内の他のソフトウェアを起動する為のシステム起動モジュール35が起動される。システム起動モジュール35は、他のソフトウェア(モジュール)を規定された順に起動する。
BIOS20,オペレーティングシステム40,ファイルシステム41等のモジュールは、CPU1により揮発性メモリ3等へ読み込まれて実行される。以下の説明では、説明の便宜上、BIOS20,オペレーティングシステム40,ファイルシステム41等のモジュールを処理主体として説明する。なお、図1及び図2に示した情報処理装置の動作の詳細は後述する。
ここで、TPM5を用いた情報の暗号化及び復号について簡単に説明する。図3はTPMの起動時の動作を表した模式図である。プラットフォーム50では、まず、BIOS20が自身のハッシュ値を計算し、TPM5内のPCR51へ登録する。BIOS20は例えば原文から固定長の疑似乱数を生成する演算手法によって計算されるハッシュ値をPCR51へ登録する。
次に、BIOS20は基本パッケージ21のハッシュ値を計算し、TPM5内のPCR52へ登録した後、基本パッケージ21を起動する。また、基本パッケージ21は、アプリケーションパッケージ22のハッシュ値を計算し、TPM5内のPCR52へ登録した後、アプリケーションパッケージ22を起動する。
このように、TPM5のPCR51〜53には、情報処理装置の起動に伴い、BIOS20,基本パッケージ21及びアプリケーションパッケージ22から計算されるハッシュ値が登録される。TPM5はNV領域と呼ばれる不揮発領域を有している。NV領域は記憶しているデータのアクセスコントロール(制御)が可能である。したがって、NV領域に記憶されているデータは改竄が困難である。
図4は、NV領域の特徴を表した模式図である。図4のTPM5は、2つのNV領域54a及び54bを有する例を表している。なお、2つのNV領域54a及び54bの何れでもよい場合は、単にNV領域54と呼ぶ。
NV領域54はTPM5のオーナのみが定義,変更,破棄できる。NV領域54はPCR,オーナ認証,領域固有の認証情報(パスワード)など、様々な要因でアクセスコントロールできる。また、NV領域54はデータの読み出し(read)又はデータの書き込み(write)双方に、要因構成の異なるアクセスコントロールができる。さらにTPM5は、インデックスによって識別される1つ以上のNV領域54ごとにアクセスコントロールの定義を規定できる。
例えば図4のTPM5は、インデックス「index:1」によって識別されるNV領域54aと、インデックス「index:2」によって識別されるNV領域54bとを有する。
NV領域54aは、インデックス(index)及びサイズ(size)からなる情報55a、読み出し許可の定義(read permission)56a、書き込み許可の定義(write permission)57a、実データ58aを有する。
インデックスは何番目のNV領域54であるかを表す。サイズはどれだけのデータを配置できるかを表す。読み出し許可の定義56aは、PCR,オーナ認証(OwnerAuth),領域固有の認証情報(AuthData)を要因として規定されている。書き込み許可の定義57aは、PCR,オーナ認証,領域固有の認証情報を要因として規定されている。また、実データ58aは、実際に配置され、アクセスコントロールが掛かる対象となるデータである。
なお、読み出し許可の定義56a及び書き込み許可の定義57aは、オーナの所在を物理的手段で伝えられた場合にのみアクセスを許可することや、特定のアクセス経路からのアクセスのみ許可することなどを要因として規定することもできる。特定のアクセス経路からのアクセスのみ許可することなどを要因として規定する例としては、例えばハードやカーネルレベルのアクセスのみ許可し、ユーザランドからのアクセスを許可しない、などが考えられる。
PCRはPCR51〜53を利用したアクセスコントロールに利用されるハッシュ値を表すものであり、特定のPCR構成以外でのデータの読み出し又は書き込みを禁止するためのものである。
オーナ認証(OwnerAuth)はデータへのアクセスのためにオーナ認証を必要とするか否かを表すものであり、データへのアクセス時にオーナであるかを認証するためのものである。領域固有の認証情報(AuthData)はデータへのアクセスのために領域固有の認証を必要とするか否か、及び認証情報を表すものであり、データへのアクセス時にオーナ認証と別の認証を掛けるものである。なお、NV領域54bはNV領域54aと同様である。
NV領域54aは、読み出し許可の定義56aに「PCR0:X」,「PCR1:Y」及び「PCR:Z」が規定されている。また、NV領域54aは、書き込み許可の定義57aに「PCR0:G」,「PCR1:Y」及び「PCR:Z」が規定されている。更に、PCR51〜53には情報処理装置を起動する際に、BIOS20,基本パッケージ21及びアプリケーションパッケージ22から計算された3つのハッシュ値「X」〜「Z」が登録されている。
図4の場合、TPM5は読み出し許可の定義56aに規定されているハッシュ値の組み合わせが、PCR51〜53に登録されているハッシュ値の組み合わせと一致する為、実データ58aの読み出しを許可する。また、TPM5は書き込み許可の定義57aに規定されているハッシュ値の組み合わせが、PCR51〜53に登録されているハッシュ値の組み合わせと一致しない為、実データ58aの書き込みを許可しない。なお、図4のNV領域54aは、実データ58aの読み出し及び書き込みのためにオーナ認証及び領域固有の認証を必要としないアクセスコントロールの例を表している。
上記のように、NV領域54aは読み出し許可の定義56a及び書き込み許可の定義57aに従って、実データ58aの読み出し又は書き込み双方でアクセスコントロールが実現できる。
本発明による情報処理装置は、プラットフォーム50内のファイルシステム41にデバイス暗号鍵によって暗号化された秘密情報が含まれ、TPM5内のNV領域54にデバイス暗号鍵が含まれる。デバイス暗号鍵の取得可否は、図5に示すように、PCR51〜53に登録されているハッシュ値と、読み出し許可の定義56aに規定されている値とにより制御される。デバイス暗号鍵は、ファイルシステム41上に配置された秘密情報の暗号化又は暗号化された秘密情報の復号に用いられる。
図5は起動時にデバイス暗号鍵を取得する処理を表した模式図である。TPM5は情報処理装置の起動時、BIOS20,基本パッケージ21及びアプリケーションパッケージ22から計算された3つのハッシュ値「X」〜「Z」が「PCR0」〜「PCR2」へ登録されている。一方、NV領域54の読み出し許可の定義56には「X」〜「Z」が「PCR0」〜「PCR2」に登録されている。
図5の場合、TPM5は読み出し許可の定義56に規定されているハッシュ値の組み合わせが、PCR51〜53に登録されているハッシュ値の組み合わせと一致するため、実データ58に含まれるデバイス暗号鍵71の読み出しを許可する。暗号鍵管理モジュール38は、デバイス暗号鍵71を用いて、暗号化された秘密情報72から秘密情報73を復号できる。
図6は起動時にデバイス暗号鍵を取得する処理を表したシーケンス図である。ステップS1に進み、BIOS20は自身のハッシュ値を計算し、TPM5内のPCR51へ登録する。次に、ステップS2へ進み、BIOS20は基本パッケージ21のハッシュ値を計算する。ステップS3に進み、BIOS20は基本パッケージ21を展開する。ステップS4に進み、BIOS20は基本パッケージ21のハッシュ値を、TPM5内のPCR52へ登録する。ステップS5に進み、BIOS20はオペレーティングシステム40を起動する。
ステップS6に進み、オペレーティングシステム40はシステム起動モジュール35を起動する。ステップS7に進み、システム起動モジュール35はシステム管理モジュール34を起動する。また、ステップS8に進み、システム起動モジュール35は基本アプリケーション33を起動する。
ステップS9に進み、システム起動モジュール35はアプリケーションパッケージ22のハッシュ値を計算する。ステップS10に進み、システム起動モジュール35はアプリケーションパッケージ22のハッシュ値を、TPM5内のPCR53へ登録する。
ステップS11に進み、システム起動モジュール35は暗号鍵管理モジュール38を起動する。そして、ステップS12に進み、暗号鍵管理モジュール38は前述のようにNV領域54からデバイス暗号鍵71を取得する。暗号鍵管理モジュール38はデバイス暗号鍵71を用いて、暗号化された秘密情報72から秘密情報73を復号できる。
なお、TPM5はBIOS20,基本パッケージ21及びアプリケーションパッケージ22から計算されるハッシュ値がPCR51〜53に登録されたあと、NV領域54からの暗号鍵71の読み出しを受け付ける。暗号鍵モジュール38はTPM5がNV領域54からの暗号鍵71の読み出しを受け付けるようになったタイミングで、NV領域54からの暗号鍵71の取得をTPM5へ依頼する。この後、暗号鍵管理モジュール38はTPM5がNV領域54から読み出したデバイス暗号鍵71を取得できる。
図7はNV領域からのデータの読み出し処理又はNV領域へのデータの書き込み処理を表したフローチャートである。ステップS21に進み、TPM5はプラットフォーム50側からオペレーションリクエストを受け付ける。ステップS22に進み、TPM5は受け付けたオペレーションリクエストに対応するインデックスのNV領域54が存在するかを判定する。
受け付けたオペレーションリクエストに含まれるインデックスのNV領域54が存在すれば、TPM5はステップS23に進み、オペレーションリクエストに含まれる認証情報が読み出し許可の定義56,書き込み許可の定義57に矛盾していないかを判定する。
オペレーションリクエストに含まれる認証情報が読み出し許可の定義56,書き込み許可の定義57に矛盾していなければ、TPM5はステップS24に進み、オーナ認証によるアクセスコントロールをクリアしているかを確認する。
オーナ認証によるアクセスコントロールをクリアしていれば、TPM5はステップS25に進み、PCR値の条件をクリアしているかを判定する。PCR値の条件をクリアしていれば、TPM5はステップS26に進み、オペレーションリクエストを実行し、そのオペレーション結果をプラットフォーム50側に通知する。ここで言うオペレーションリクエストとは、NV領域54からのデータの読み出し処理又はNV領域54へのデータの書き込み処理等である。
なお、受け付けたオペレーションリクエストに含まれるインデックスのNV領域54が存在しない場合、オペレーションリクエストに含まれる認証情報が読み出し許可の定義56又は書き込み許可の定義57に矛盾している場合、オーナ認証によるアクセスコントロールをクリアしていない場合、又はPCR値の条件をクリアしていない場合、TPM5はステップS26に進み、オペレーションリクエストを実行せず、そのオペレーション結果をプラットフォーム50側に通知する。
図8は、NV領域を定義する処理を表したフローチャートである。ステップS31に進み、TPM5はプラットフォーム50側からNV領域54を定義するオペレーションリクエストを受け付ける。
ステップS32に進み、TPM5はオーナ認証によるアクセスコントロールをクリアしているかを確認する。オーナ認証によるアクセスコントロールをクリアしていれば、TPM5はステップS33に進み、オペレーションリクエストに対応するインデックスが定義可能かを確認する。
オペレーションリクエストに対応するインデックスが定義可能であれば、TPM5はステップS34に進み、オペレーションリクエストで指定されたNV領域54の認証情報が書き込み許可の定義57に矛盾していないかを判定する。オペレーションリクエストで指定されたNV領域54の認証情報が書き込み許可の定義57に矛盾していなければ、TPM5はステップS35に進み、読み出し許可の定義56及び書き込み許可の定義57を規定してNV領域54を実際に確保する。そして、TPM5はNV領域54の確保に成功すれば、ステップS36に進み、NV領域54を定義するオペレーションリクエストのオペレーション結果をプラットフォーム50側に通知する。
なお、オーナ認証によるアクセスコントロールをクリアしていない場合、定義できないインデックスである場合、レーションリクエストで指定されたNV領域54の認証情報が書き込み許可の定義57に矛盾している場合、NV領域54の確保に失敗した場合、TPM5はステップS36に進み、オペレーションリクエストを実行できなかったというオペレーション結果をプラットフォーム50側に通知する。
以下、ファームウェアから計算したハッシュ値の真正性を確保しつつ、情報処理装置においてファームウェアの更新を行う手順について説明する。
図9はファームウェアの更新に利用するファームウェア更新ファイルの一例の構造図である。図9のファームウェア更新ファイル(FWUファイル)80は、ファームウェア用ヘッダ81,ファームウェアROMイメージ82,PCR値83,公開鍵署名84を有する構成である。
ファームウェア用ヘッダ81には、ファームウェア更新ファイル80に関する情報が格納されている。ファームウェアROMイメージ82には、更新するファームウェアそのものが格納されている。PCR値83にはファームウェアROMイメージ82から計算したハッシュ値(PCR値)の予測値を含んだ図10のようなPCR値フィールドが格納されている。PCR値は、例えば疑似TPMによるPCR値の予測により取得できる。
図10はPCR値フィールドの一例の構成図である。図10のPCR値フィード91はPCRの見出し(index)と、このファームウェアを情報処理装置に適用したときの起動後のPCR値の予測値とを含んでいる。図10は「PCR0」のPCR値フィールド91の例を表している。公開鍵署名84には、改竄を防止する為、秘密鍵により算出されたファームウェアROMイメージ82及びPCR値83の電子署名が格納されている。
図11はファームウェア更新ファイルの頒布形態を表した模式図である。ベンダー管理者は管理用PC100を操作して、秘密鍵を保持している署名管理サーバ101にアクセスし、秘密鍵を利用して図9のようなファームウェア更新ファイル80を作成する。ベンダー管理者は管理用PC100を操作して、ファームウェア更新ファイル80をファームウェア管理サーバ102に登録する。
利用者であるシステム管理者はファームウェア管理サーバ102からファームウェア更新ファイル80を取得し、そのファームウェア更新ファイル80を用いて対象機器103のファームウェアを更新する。なお、ファームウェア管理サーバ102の信頼性は電子認証等に基づいて確認する形態とする。
図12はファームウェアを更新する処理を表した模式図である。図12では一例として基本パッケージ21を更新する例を表している。
ファームウェア更新ファイル(FWUファイル)110は、対象機器である情報処理装置内の改竄不可領域に格納されている公開鍵113を利用することで、公開鍵署名が正しいことを確認される。公開鍵署名が正しければ、ファームウェア更新ファイル110は改竄されていないと判定される。なお、情報処理装置内の改竄不可領域はTPM5内でなくてもよく、改竄の防止された記憶領域であればよい。
改竄されていないと判定すると、基本パッケージ21は、ファームウェア更新ファイル110のファームウェアROMイメージにより基本パッケージ21aへ更新される。基本パッケージ21aへ更新されると、TPM5のPCR52は再起動により基本パッケージ21aのハッシュ値となる。
したがって、PCR51〜53に登録されているハッシュ値によって実データ58の取得可否が制御されるNV領域54は基本パッケージ21aから計算されるハッシュ値に基づいて読み出し許可の定義56及び書き込み許可の定義57を規定し直す必要がある。
そこで、本発明による情報処理装置は、TPM5内のNV領域54からデバイス暗号鍵71,PCR値リポジトリ111,オーナパスワード112を取得する。情報処理装置は取得したPCR値リポジトリ111をファームウェア更新ファイル110のPCR値「YYY」によりPCR値リポジトリ111cに更新する。PCR値リポジトリ111cは再起動後、TPM5のPCR51〜53へ登録されるハッシュ値となっている。
情報処理装置は、デバイス暗号鍵71,PCR値リポジトリ111,オーナパスワード112を実データ58に書き込み、取得したオーナパスワード112によるオーナの権限で読み出し許可の定義56及び書き込み許可の定義57を規定し直したNV領域54cに更新できる。
図13はネットワーク経由でファームウェアを更新する処理を表したフローチャートである。ステップS41に進み、ネットワーク更新モジュール31はファームウェア更新ファイル110を受け付ける。
ステップS42に進み、ネットワーク更新モジュール31はファームウェア更新ファイル110の内容を受け付け、システム管理モジュール34へファームウェアの更新依頼を行う。
ステップS43に進み、システム管理モジュール34はファームウェア認証モジュール37へファームウェア更新ファイル110の認証依頼を行う。すると、ファームウェア認証モジュール37は、読み出し専用領域等、情報処理装置内の改竄不可領域に格納されている公開鍵113を取得する。ファームウェア認証モジュール37は、取得した公開鍵113を用いて、ファームウェア更新ファイル110の認証を行う。
具体的に、ファームウェア認証モジュール37はステップS43aにおいて、ファームウェア更新ファイル110のファームウェアROMイメージ及びPCR値のダイジェストを計算する。ステップS43bにおいて、ファームウェア認証モジュール37はファームウェア更新ファイル110の公開鍵署名を公開鍵113で復号し、ステップS43aで計算したダイジェストと照合することで署名検証を行う。署名検証により、ファームウェア認証モジュール37はファームウェア更新ファイル110の認証を行う。
認証が成功すると、ステップS44に進み、システム管理モジュール34はシステム更新モジュール36へファームウェアの更新依頼を行う。ファームウェアの更新依頼を受けたシステム更新モジュール36は、ファームウェア更新ファイル110を用いてファームウェアを更新する。
ステップS45に進み、システム管理モジュール34は暗号鍵管理モジュール38へPCR値リポジトリ111の更新依頼を行う。PCR値リポジトリ111の更新依頼を受けた暗号鍵管理モジュール38は、ファームウェア更新ファイル110のPCR値を用いてNV領域54の実データ58に含まれるPCR値リポジトリ112の更新を行う。
具体的に、暗号鍵管理モジュール38はステップS45aにおいて、TPM5内のNV領域54からデバイス暗号鍵71を読み出す。ステップS45bにおいて、暗号鍵管理モジュール38はNV領域54からPCR値リポジトリブロブ111を読み出す。ステップS45cにおいて、暗号鍵管理モジュール38はNV領域54からオーナパスワード112を読み出す。
ステップS45dにおいて、暗号鍵管理モジュール38はファームウェア更新ファイル110のPCR値を用いて、新しいPCR値リポジトリ111cを作成する。ステップS45eにおいて、暗号鍵管理モジュール38は、取得したオーナパスワード112によるオーナの権限で読み出し許可の定義56及び書き込み許可の定義57を規定し直す。
ステップS45fに進み、暗号鍵管理モジュール38は、オーナパスワード112を実データ58に書き込む。ステップS45gに進み、暗号鍵管理モジュール38はデバイス暗号鍵71を実データ58に書き込む。ステップS45hに進み、暗号鍵管理モジュール38はPCR値リポジトリ111cを実データ58に書き込む。したがって、NV領域54cの実データ58に含まれるPCR値リポジトリ111cは、ファームウェアの更新後の再起動によりPCR51〜53へ登録されるハッシュ値となる。
ステップS46に進み、システム管理モジュール34はファームウェアの更新依頼に対する結果通知をネットワーク更新モジュール31へ行う。ネットワーク更新モジュール31は結果通知をファームウェア更新の依頼元に対して行う。なお、ステップS43において認証が失敗した場合も、システム管理モジュール34はステップS46に進む。例えばネットワーク更新モジュール31はファームウェアの更新成功又は失敗、ファームウェア更新ファイル110の認証失敗などをファームウェア更新の依頼元に通知する。
図14は本発明の情報処理装置におけるデータ/プログラムの一例の配置図である。図14の情報処理装置は揮発性メモリ3等のプログラム配置用デバイス150にBIOS20,基本パッケージ21及びアプリケーションパッケージ22が配置され、図示していない不揮発メモリ6等のデータ配置用デバイスにデバイス暗号鍵71によって暗号化された秘密情報72が配置され、TPM5にPCR51〜53及びNV領域54が配置され、読み出し専用領域152にファームウェア認証用の公開鍵113が配置される。
図15は、TPM内のデータ構成を表した模式図である。図15のTPM5は、PCR51〜53,インデックス「index:1」によって識別されるNV領域54を有している。
NV領域54は、実データ58と管理情報59とを有する。実データ58は、オーナパスワード112、デバイス暗号鍵71及びPCR値リポジトリ111を含む。また、管理情報59は、インデックス及びサイズからなる情報55、読み出し許可の定義56及び書き込み許可の定義57を含む。
また、本発明による情報処理装置は、プラットフォーム50内のファイルシステム41にデバイス暗号鍵71によって暗号化された秘密情報72と、デバイス暗号鍵71を暗号化したブロブ(以下、暗号鍵ブロブと呼ぶ)70とが含まれる。
暗号鍵ブロブ70の復号可否は図16に示すように、NV領域54の実データ58に含まれるSRKパスワード75により制御される。また、SRKパスワード75の取得可否は、図16に示すように、PCR51〜53に登録されているハッシュ値と、読み出し許可の定義56に規定されている値とにより制御される。SRKパスワード75はファイルシステム41上に配置された暗号鍵ブロブ70の復号に用いられる。デバイス暗号鍵71はファイルシステム41上に配置された秘密情報73の暗号化又は暗号化された秘密情報72の復号に用いられる。TPM5の暗号処理部(SRK)は、SRKパスワード75によって暗号鍵ブロブ70の復号を行う。
図16は起動時にデバイス暗号鍵を取得する処理を表した他の例の模式図である。TPM5は情報処理装置の起動時、BIOS20,基本パッケージ21及びアプリケーションパッケージ22から計算された3つのハッシュ値「X」〜「Z」が「PCR0」〜「PCR2」へ登録されている。また、TPM5は、「X」〜「Z」が、NV領域54の読み出し許可の定義56の「PCR0」〜「PCR2」に登録されている。
図16の場合、TPM5は読み出し許可の定義56に規定されているハッシュ値の組み合わせが、PCR51〜53に登録されているハッシュ値の組み合わせと一致する為、実データ58に含まれるSRKパスワード75の読み出しを許可する。
SRK74はSRKパスワード75を用いて、暗号鍵ブロブ70からデバイス暗号鍵71を復号できる。暗号鍵管理モジュール38、デバイス暗号鍵71を用いて、暗号化された秘密情報72から秘密情報73を復号できる。
図17は、TPM内のデータ構成を表した他の例の模式図である。図17のTPM5はPCR51〜53,インデックス「index:1」によって識別されるNV領域54及びSRK74を有している。
NV領域54は、実データ58と管理情報59とを有する。実データ58は、オーナパスワード112、SRKパスワード75及びPCR値リポジトリ111を含む。また、管理情報59は、インデックス及びサイズからなる情報55、読み出し許可の定義56及び書き込み許可の定義57を含む。また、SRK74は復号許可の定義76を含む。
上記の情報処理装置では、TPM5を用いていたが、セキュアデバイス11を用いてもよい。図18は本発明による情報処理装置の他の実施例のソフトウェア構成図である。図18の情報処理装置は、図2に示した情報処理装置と以下の点で異なっている。
まず、図18の情報処理装置は、TPM管理モジュール39と、オペレーティングシステム40内のTPMドライバ43とが無く、オペレーティングシステム40内にセキュアデバイスドライバ47が設けられている。図18の情報処理装置は、ファームウェア認証モジュール37及び暗号鍵管理モジュール38がセキュアデバイスドライバ47と接続されている。セキュアデバイスドライバ47は後述のセキュアデバイス11へアクセスを行うためのソフトウェアである。その他は図2の情報処理装置と同様である為、説明を省略する。
セキュアデバイス11を用いた情報の暗号化及び復号について簡単に説明する。図19はセキュアデバイスの起動時の動作を表した模式図である。図19のセキュアデバイス11は、インデックス「index 1」〜「index 3」によって識別されているセキュア領域191〜193を有している。
セキュア領域191〜193は管理情報および実データを有する。なお、セキュア領域191〜193が有する実データは、管理情報によってデータの読み出し等のアクセスコントロールが可能である。
まず、BIOS20は自身のハッシュ値(RAP1)を計算する。次に、BIOS20はハッシュ値(RAP1)を読み出しアクセスパスワードとしてセキュア領域191にアクセスする。なお、セキュア領域191の管理情報には読み出しアクセスパスワードとしてRAP1が規定されている。従って、BIOS20はセキュア領域191の実データからハッシュ値(RAP2−0)を読み出せる。
BIOS20は基本パッケージ21のハッシュ値(AP2−1)を計算したあと、基本パッケージ21を起動する。基本パッケージ21はセキュア領域191の実データから読み出されたハッシュ値(AP2−0)と、自身のハッシュ値(AP2−1)とを合成したハッシュ値(RAP2)を読み出しアクセスパスワードとしてセキュア領域192にアクセスする。なお、セキュア領域192の管理情報には読み出しアクセスパスワードとしてRAP2が規定されている。従って、BIOS20はセキュア領域192の実データからハッシュ値(RAP3)を読み出せる。
以後、同様にプラットフォーム50側からは、ハッシュ値(RAP3)を読み出しアクセスパスワードとしてセキュア領域193にアクセスすることにより、セキュア領域193の実データからデバイス暗号鍵(K1)を読み出せる。
なお、図19のセキュア領域191,192は、TPM5を利用する場合のPCR51及び52に相当するものである。セキュア領域193は、TPM5を利用する場合のNV領域54に相当するものである。セキュア領域191〜193に含まれる「AdminAccessPass」はTPM5を利用する場合のオーナパスワード112に相当するものである。
このように、セキュアデバイス11のセキュア領域191〜193には、情報処理装置の起動に伴い、BIOS20,基本パッケージ21から計算されるハッシュ値を用いたアクセスコントロールが連続して行われるため、セキュアデバイス11のセキュア領域193の実データは改竄が困難である。
図20はセキュアデバイスの起動時の動作を表した他の例の模式図である。図20のセキュアデバイス11は、インデックス「index 1」〜「index 2」によって識別されているセキュア領域201〜202を有している。
セキュア領域201〜202は管理情報および実データを有する。なお、セキュア領域201〜202が有する実データは、管理情報によってデータの読み出し等のアクセスコントロールが可能である。
まず、BIOS20は自身のハッシュ値(AP1)を計算する。次に、BIOS20はハッシュ値(AP1)を読み出しアクセスパスワードとしてセキュア領域201にアクセスする。なお、セキュア領域201の管理情報にはエリアパスワードとしてAP1が規定されている。従って、BIOS20はセキュア領域201の実データからハッシュ値(AP2−0)を読み出せる。
BIOS20は基本パッケージ21のハッシュ値(AP2−1)を計算したあと、基本パッケージ21を起動する。基本パッケージ21はセキュア領域201の実データから読み出されたハッシュ値(AP2−0)と、自身のハッシュ値(AP2−1)とを合成したハッシュ値(AP2)を読み出しアクセスパスワードとしてセキュア領域202にアクセスする。なお、セキュア領域202の管理情報には読み出しアクセスパスワードとしてAP2が規定されている。従って、BIOS20はセキュア領域202の実データからデバイス暗号鍵(K1)を読み出せる。
以上、本発明によれば、信頼できるハードウェアであるTPM5やセキュアデバイス11にデバイス暗号鍵71を保持することで、物理的にハードウェアを破壊する以外にデバイス暗号鍵71の破壊を不可能にできる。また、本発明によれば、デバイス暗号鍵71を物理的に保護することにより、暗号解読の攻撃にさらされることがないようにすることができる。結果として、本発明による情報処理装置は、自装置内の暗号化された秘密情報を高いセキュリティレベルで保護することが可能である。
本発明は、具体的に開示された実施例に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
1 CPU
2 ASIC
3 揮発性メモリ
4 エンジンコントローラ
5 TPM
6 不揮発メモリ
7 ネットワークデバイス
8 sdカードI/F
9 メインバス
10 ローカルバス
20 BIOS
21 基本パッケージ
22,23 アプリケーションパッケージ
31 ネットワーク更新モジュール
32 flashメディア更新モジュール
33 基本アプリケーション(コピー)
34 システム管理モジュール
35 システム起動モジュール
36 システム更新モジュール
37 ファームウェア認証モジュール
38 暗号鍵管理モジュール
39 TPM管理モジュール(TSS)
40 オペレーティングシステム
41 ファイルシステム
42 不揮発メモリドライバ
43 TPMドライバ
44 基本アプリケーション(プリンタ)
45 基本アプリケーション(ネットワーク)
46 基本アプリケーション(スキャナ)
47 セキュアデバイスドライバ
50 プラットフォーム
51〜53 PCR
54 NV領域
56 読み出し許可の定義
57 書き込み許可の定義
58 実データ
59 管理情報
70 暗号鍵ブロブ
71 デバイス暗号鍵
72 暗号化された秘密情報
73 秘密情報
74 暗号処理部(SRK)
75 SRKパスワード
76 復号許可の定義
80,110 ファームウェア更新ファイル
81 ファームウェア用ヘッダ
82 ファームウェアROMイメージ
83 PCR値
84 公開鍵署名
91 PCR値フィード
100 管理用PC
101 署名管理サーバ
102 ファームウェア管理サーバ
103 対象機器
111 PCR値リポジトリ
112 オーナパスワード
113 公開鍵
150 プログラム配置用デバイス
152 読み出し専用領域
191〜193,201,202 セキュア領域
特開2004−282391号公報 特開2005−196745号公報

Claims (14)

  1. 自装置内の情報を保護する情報処理装置であって、
    前記情報の暗号化のための暗号情報を記憶する記憶手段と、
    ファームウェアから一意に値を算出する算出手段と、
    算出された前記値に基づき、前記値に関して規定された定義に従って、前記記憶手段に記憶された前記暗号情報へのアクセス制御を行うアクセス制御手段と、を備え、
    前記記憶手段は、前記定義の変更の権限を有するオーナであることを認証する為のオーナ認証情報を記憶しており、
    前記アクセス制御手段は、前記値に関して規定された定義に従って、前記記憶手段に記憶されたオーナ認証情報へのアクセス制御を行うことを特徴とする情報処理装置。
  2. 前記アクセス制御手段は、前記記憶手段に記憶されたオーナ認証情報に基づき、前記定義の変更を許可することを特徴とする請求項1記載の情報処理装置。
  3. 前記ファームウェアの更新を行うファームウェア更新手段と、
    更新後のファームウェアから一意に算出される値の予測値を用いて、前記定義を変更する管理手段と、をさらに備え、
    前記管理手段は、前記値に関して規定された定義に従ってアクセス制御がなされる前記記憶手段から前記暗号情報および前記オーナ認証情報を読み出し、変更された前記値に関して規定された定義に従ってアクセス制御がなされるように新たに定義された前記記憶手段に前記暗号情報および前記オーナ認証情報を書き込むことを特徴とする請求項1又は2に記載の情報処理装置。
  4. 前記ファームウェア更新手段は、前記予測値を含むファームウェア更新ファイルを用いて前記ファームウェアの更新を行うことを特徴とする請求項記載の情報処理装置。
  5. 前記ファームウェア更新ファイルに含まれる電子署名を用いて前記ファームウェア更新ファイルの認証を行うファームウェア認証手段をさらに備えることを特徴とする請求項4に記載の情報処理装置。
  6. 前記ファームウェア認証手段は、改竄の防止された公開鍵を用いて前記電子署名を照合することにより前記ファームウェア更新ファイルの認証を行うことを特徴とする請求項5に記載の情報処理装置。
  7. 前記アクセス制御手段は、前記記憶手段に記憶されたオーナ認証情報に基づき、前記記憶手段に記憶された前記暗号情報へのアクセス制御を行うことを特徴とする請求項1〜6のいずれか1項に記載の情報処理装置。
  8. 前記アクセス制御手段は、前記記憶手段に設けられた認証情報、物理的手段により取得可能な識別情報、アクセス経路の少なくとも1つ以上に関して規定された定義に従って、前記記憶手段に記憶された前記暗号情報へのアクセス制御を行うことを特徴とする請求項1〜7のいずれか1項に記載の情報処理装置。
  9. 前記記憶手段は、複数の領域を有し、前記暗号情報および前記オーナ認証情報を前記領域ごとに記憶していることを特徴とする請求項1〜8のいずれか1項に記載の情報処理装置。
  10. 前記複数の領域は、インデックスによって識別されることを特徴とする請求項9に記載の情報処理装置。
  11. 前記アクセス制御手段は、前記暗号情報の読み出し及び書き込み双方で異なる前記定義に従ってアクセス制御を行うことを特徴とする請求項1〜10のいずれか1項に記載の情報処理装置。
  12. 記アクセス制御手段は、TPM(Trusted Platform Module)又はセキュアデバイスで実現されることを特徴とする請求項1〜11のいずれか1項に記載の情報処理装置。
  13. プロッタ部とスキャナ部とを有する画像処理装置であることを特徴とする請求項1〜12のいずれか1項に記載の情報処理装置。
  14. 自装置内の情報を保護する情報処理装置の情報保護方法であって、
    ァームウェアから一意に値を算出する算出ステップと、
    算出された前記値に基づき、前記値に関して規定された定義に従って、前記情報の暗号化のための暗号情報を記憶する記憶手段に記憶された前記暗号情報へのアクセス制御を行う第1アクセス制御ステップと、
    前記値に関して規定された定義に従って、前記定義の変更の権限を有するオーナであることを認証する為のオーナ認証情報を記憶する前記記憶手段に記憶されたオーナ認証情報へのアクセス制御を行う第2アクセス制御ステップと
    を有することを特徴とする情報保護方法。
JP2011227709A 2011-10-17 2011-10-17 情報処理装置、情報保護方法 Active JP5278520B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011227709A JP5278520B2 (ja) 2011-10-17 2011-10-17 情報処理装置、情報保護方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011227709A JP5278520B2 (ja) 2011-10-17 2011-10-17 情報処理装置、情報保護方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2007071605A Division JP4890309B2 (ja) 2007-03-19 2007-03-19 情報処理装置及び情報保護方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2012257479A Division JP5500232B2 (ja) 2012-11-26 2012-11-26 情報処理装置及び情報保護方法

Publications (3)

Publication Number Publication Date
JP2012064225A JP2012064225A (ja) 2012-03-29
JP2012064225A5 JP2012064225A5 (ja) 2013-02-14
JP5278520B2 true JP5278520B2 (ja) 2013-09-04

Family

ID=46059799

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011227709A Active JP5278520B2 (ja) 2011-10-17 2011-10-17 情報処理装置、情報保護方法

Country Status (1)

Country Link
JP (1) JP5278520B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015053015A (ja) * 2013-09-09 2015-03-19 京セラドキュメントソリューションズ株式会社 ファームウェア、及び電子機器

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4578088B2 (ja) * 2003-11-20 2010-11-10 大日本印刷株式会社 情報処理装置、情報処理システム及びプログラム
JP4772291B2 (ja) * 2004-04-09 2011-09-14 富士通株式会社 セキュリティ機能を備えた情報処理装置
US7725703B2 (en) * 2005-01-07 2010-05-25 Microsoft Corporation Systems and methods for securely booting a computer with a trusted processing module

Also Published As

Publication number Publication date
JP2012064225A (ja) 2012-03-29

Similar Documents

Publication Publication Date Title
JP5116325B2 (ja) 情報処理装置、ソフトウェア更新方法及び画像処理装置
JP4890309B2 (ja) 情報処理装置及び情報保護方法
JP6595822B2 (ja) 情報処理装置及びその制御方法
JP6720581B2 (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
EP1422591B1 (en) Program update method and server
JP4982825B2 (ja) コンピュータおよび共有パスワードの管理方法
JP5096022B2 (ja) 情報処理装置、ソフトウェア検証方法及びソフトウェア検証プログラム
US8839451B1 (en) Activation and security of software
TW201415280A (zh) 用於確保連網至雲端運算環境的系統免於惡意程式碼攻擊之方法及服務
JP2016146618A (ja) 情報処理装置
JP6930884B2 (ja) Bios管理装置、bios管理システム、bios管理方法、及び、bios管理プログラム
JP5582231B2 (ja) 情報処理装置、真正性確認方法、及び記録媒体
JP5574007B2 (ja) 情報処理装置及び情報保護方法
JP5278520B2 (ja) 情報処理装置、情報保護方法
JP2008234079A (ja) 情報処理装置、ソフトウェア正当性通知方法及び画像処理装置
JP5500232B2 (ja) 情報処理装置及び情報保護方法
JP2021164009A (ja) デバイス、セキュアエレメント及びデバイスのセキュアブート方法
JP5310897B2 (ja) 情報処理装置、ソフトウェア更新方法及び記録媒体
JP5234217B2 (ja) 情報処理装置、ソフトウェア更新方法及びプログラム
JP2013191226A (ja) 情報処理装置、ソフトウェア更新方法及び画像処理装置
US20230126541A1 (en) Information processing apparatus, control method for controlling the same and storage medium
JP2023136601A (ja) ソフトウェア管理装置、ソフトウェア管理方法、及びプログラム
KR20240006658A (ko) 소프트웨어의 사용을 보안하는 방법
JP4580030B2 (ja) セキュアデバイス
JP2007272923A (ja) サーバ

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121221

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130412

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130423

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130506

R151 Written notification of patent or utility model registration

Ref document number: 5278520

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151