JP5736994B2 - 情報処理装置、正当性検証方法、及びプログラム - Google Patents
情報処理装置、正当性検証方法、及びプログラム Download PDFInfo
- Publication number
- JP5736994B2 JP5736994B2 JP2011133505A JP2011133505A JP5736994B2 JP 5736994 B2 JP5736994 B2 JP 5736994B2 JP 2011133505 A JP2011133505 A JP 2011133505A JP 2011133505 A JP2011133505 A JP 2011133505A JP 5736994 B2 JP5736994 B2 JP 5736994B2
- Authority
- JP
- Japan
- Prior art keywords
- tpm
- hash value
- data
- bit
- register
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Facsimile Transmission Control (AREA)
- Storage Device Security (AREA)
Description
この問題に対処するため、機器内部に保有する使用者のプライベートな情報を保護し、機器ソフトウェアの不正な改ざんを防止すべく、その機器に対して製造メーカが保証できる正当なソフトウェアが動作することを保証する正当性検証を行うことで、不正ソフトの動作を防止するTPM(Trusted Platform Module)又はTPMチップと称されるセキュリティチップ(セキュリティ専用集積回路)を用いた仕組みが提案されている。
図9の上部は、情報処理装置のプラットフォーム70、即ちCPU(Central Processing Unit)その他の、プログラムを実行するための基盤となるハードウェアの総体を示し、当該プラットフォーム70上で、各種のソフトウェア・プログラムが実行される。一例として図9においては、3つのモジュール(プログラム)、すなわち、BIOS(Basic Input/Output System)72と、OS(Operating System、オペレーティングシステム)等を含む基本パッケージ74と、各種のアプリケーション・ソフトウェアを含むアプリケーションパッケージ76とが、プラットフォーム70を構成するROM(Read Only Memory)等の不揮発性メモリからRAM(Random Access Memory)等の揮発性メモリに、それらの一部あるいは全部がロードされてCPUで実行される。また、図9下部は、当該情報処理装置が有するTPM80を示し、このTPM80は、後述するハッシュ値を記憶するレジスタであるPCR(Platform Configuration Register)82ないし84を有している。
さらに、基本パッケージ74のハッシュ値の算出後に、揮発性メモリにロードされた基本パッケージ74に実行が移され、基本パッケージ74により、次にロードされるアプリケーションパッケージ76のハッシュ値が算出されて、算出されたハッシュ値がPCR84に記憶され、アプリケーションパッケージ76に実行が移管される。
図10Aは、暗号化動作を示す模式図であり、図10Bは、復号動作を示す模式図である。
また、伝達された暗号データの改ざん検出(データ正当性検証)に使用されるハッシュ関数についても、広く使用されているハッシュ関数SHA−1では改ざんを検出できない事態が発生する可能性が高まっていることから、より安全性の高いハッシュ関数への変更が必要となっている。
また、本発明は、ソフトウェアのプログラム・コードから算出されるハッシュ値を記憶するレジスタと、前記レジスタに記憶された前記ハッシュ値が予め指定された指定値と一致することを条件として、前記ソフトウェアを正当と判断し、暗号化されたデータの復号を行う復号手段と、を有するTPM(Trusted Platform Module)を備えた情報処理装置における正当性検証方法であって、前記ハッシュ値を分割して、前記レジスタのbit長以下の長さを持つ複数のbit列を生成する分割工程と、前記分割工程において前記ハッシュ値を分割して生成された前記複数のbit列を、前記TPMに入力して、それぞれ前記レジスタに記憶させる工程と、を有する正当性検証方法である。
また、本発明は、ソフトウェアのプログラム・コードから算出されるハッシュ値を記憶するレジスタと、前記レジスタに記憶された前記ハッシュ値が予め指定された指定値と一致することを条件として、前記ソフトウェアを正当と判断し、暗号化されたデータの復号を行う復号手段とを有するTPM(Trusted Platform Module)を備えた情報処理装置のコンピュータを、前記ハッシュ値を分割して、前記レジスタのbit長以下の長さを持つ複数のbit列を生成する分割手段と、前記複数のbit列を前記TPMに入力して、それぞれ前記レジスタに記憶させる手段、として機能させるプログラムである。
本実施形態に係る画像形成装置は、印刷動作等の制御を行うコンピュータ(情報処理装置)を備え、当該情報処理装置は、ハッシュ関数SHA−1にのみ対応する160bit長のPCRを有するTPMを備える。そして、本画像形成装置は、ハッシュ関数SHA−256を用いて、ソフトウェア・プログラムについての256bit長のハッシュ値を算出し、当該ハッシュ値を分割して128bit長の2つのbit列を生成し、各bit列を個別のハッシュ値として上記160bit長の2つのPCRにそれぞれ記憶する。
すなわち、本画像形成装置は、正当性検証を行なう対象であるソフトウェア毎に、PCRを2つずつペアにして用いて当該ソフトウェアのハッシュ値を記憶し、当該ペアを構成するPCR毎に復号条件を設定してBlobを生成することで、160bitのハッシュ値にしか対応していない従来のTPMチップを使用して、256bitのハッシュ値に基づく正当性検証を行なうものである。
本画像形成装置1は、印刷機能、画像読取機能、及びファクシミリ通信機能を備えた複合プリンタ(MFP:Multifunction Printer)であって、プリンタ(不図示)やスキャナ(不図示)により記録用紙への画像形成や原稿読み取り等を行うエンジンサブシステム2と、ファクシミリ装置(不図示)により公衆回線を介してファクシミリ通信を行なうFAX(facsimile、ファックス)サブシステム4と、操作用キーボード(不図示)等によりユーザからの入力を取得する操作部サブシステム6と、これら3つのサブシステムの動作を統括的に制御する情報処理装置である本体制御部8と、を有している。
本体制御部8は、CPU20と、CPU20の起動時に実行されるBIOS220等のプログラムが書き込まれたROM22と、データの一時記憶のためのRAM24とで構成されるコンピュータと、データを記憶し保存する固定ディスク装置(HDD、Hard Disk Drive)26と、HDD26へ記憶するデータの暗号化及びHDD26から読み出されたデータの復号を行なうエンコーダ/デコーダ28と、ユーザに対しデータの表示等を行なう液晶表示装置(LCD、Liquid Crystal Display)30と、LCD30の表示画面上に配置され、ユーザがデータ等を入力する際に使用するタッチパネル32と、を有している。
図3上部は、本体制御部8のプラットフォーム60、即ちCPU20その他の、プログラムを実行するための基盤となるハードウェアの総体を示し、当該プラットフォーム60上で、BIOS220と、基本パッケージ502と、アプリケーションパッケージ504とが実行される。また、図3下部はTPM40のPCR404ないし409を示している。
図4は、画像形成装置1における、データの暗号化動作及び復号動作を表した模式図である。
図4Aは、暗号化動作を示す模式図であり、図4Bは、復号動作を示す模式図である。
このTPM40のPCR404ないし409には、それぞれ、BIOS220のハッシュ値を分割したX1、X2、基本パッケージ502のハッシュ値を分割したY1、Y2、及びアプリケーションパッケージ504のハッシュ値を分割したZ1、Z2が記憶されている。さらに、図4Bの図示右側には、各Blob506ないし508に含まれるデータの復号が行なわれるか否かが、それぞれ、○及び×で示されている。
画像形成装置1は、起動時にソフトウェア・プログラムのハッシュ値を算出してTPM40のPCR404ないし409に記録するハッシュ値記録処理、初回起動時に秘密情報を暗号化してBlobを生成するブロブ生成処理、アプリケーションパッケージ504に含まれるアプリケーショ・ソフトウェア等の実行時において、データ保存の際に保存データを暗号化してHDD26に記憶するデータ保存処理、及び、HDD26に保存されたデータを読み出して復号するデータ読出し処理を行う。
まず、ユーザが画像形成装置1の電源を投入すると、CPU20は、ROM22が記憶するBIOS220を、RAM24にダウンロードして実行し(S101)、BIOS220自身のハッシュ値をハッシュ関数SHA−256により算出する(S102)。次に、分割手段202は、算出されたハッシュ値を分割して2つの128bit長のbit列を生成し(S103)、記録手段204は、生成した2つのbit列を個別のハッシュ値としてTPM40に入力し、PCR404、405にそれぞれ記憶させる(S104)。
本処理は、画像形成装置1の初回起動時に、初期設定としてユーザが秘密情報であるデータを入力したときに、開始する。
本処理は、アプリケーションパッケージ504に含まれるアプリケーショ・ソフトウェア等の実行時において、HDD26へのデータ保存を行う際に開始する。
処理を開始すると、データ保存手段210は、まずBlob506をNVRAM50から読み出して、TPM40に入力する(S301)。
本処理は、アプリケーションパッケージ504に含まれるアプリケーショ・ソフトウェア等の実行時において、HDD26からデータ読出しを行う際に開始する。
処理を開始すると、データ読出し手段212は、Blob506をNVRAM50から読み出して、TPM40に入力する(S401)。
Claims (4)
- ソフトウェアのプログラム・コードから算出されるハッシュ値を記憶するレジスタと、前記レジスタに記憶された前記ハッシュ値が予め指定された指定値と一致することを条件として、前記ソフトウェアを正当と判断し、暗号化されたデータの復号を行う復号手段と、を有するTPM(Trusted Platform Module)を備えた情報処理装置であって、
前記ハッシュ値を分割して、前記レジスタのbit長以下の長さを持つ複数のbit列を生成する分割手段と、
前記複数のbit列を前記TPMに入力して、それぞれ前記レジスタに記憶させる手段と、
を有する情報処理装置。 - 請求項1に記載された情報処理装置において、
前記複数のbit列が記憶されている前記レジスタ毎の前記指定値を、前記ソフトウェア毎に前記TPMに入力する条件指定手段を有する情報処理装置。 - ソフトウェアのプログラム・コードから算出されるハッシュ値を記憶するレジスタと、前記レジスタに記憶された前記ハッシュ値が予め指定された指定値と一致することを条件として、前記ソフトウェアを正当と判断し、暗号化されたデータの復号を行う復号手段と、を有するTPM(Trusted Platform Module)を備えた情報処理装置における正当性検証方法であって、
前記ハッシュ値を分割して、前記レジスタのbit長以下の長さを持つ複数のbit列を生成する分割工程と、
前記分割工程において前記ハッシュ値を分割して生成された前記複数のbit列を、前記TPMに入力して、それぞれ前記レジスタに記憶させる工程と、
を有する正当性検証方法。 - ソフトウェアのプログラム・コードから算出されるハッシュ値を記憶するレジスタと、前記レジスタに記憶された前記ハッシュ値が予め指定された指定値と一致することを条件として、前記ソフトウェアを正当と判断し、暗号化されたデータの復号を行う復号手段とを有するTPM(Trusted Platform Module)を備えた情報処理装置のコンピュータを、
前記ハッシュ値を分割して、前記レジスタのbit長以下の長さを持つ複数のbit列を生成する分割手段と、
前記複数のbit列を前記TPMに入力して、それぞれ前記レジスタに記憶させる手段、
として機能させるプログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011133505A JP5736994B2 (ja) | 2011-06-15 | 2011-06-15 | 情報処理装置、正当性検証方法、及びプログラム |
US13/483,627 US20120324238A1 (en) | 2011-06-15 | 2012-05-30 | Information processing apparatus, verification method, and storage medium storing verification program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011133505A JP5736994B2 (ja) | 2011-06-15 | 2011-06-15 | 情報処理装置、正当性検証方法、及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013003786A JP2013003786A (ja) | 2013-01-07 |
JP5736994B2 true JP5736994B2 (ja) | 2015-06-17 |
Family
ID=47354709
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011133505A Active JP5736994B2 (ja) | 2011-06-15 | 2011-06-15 | 情報処理装置、正当性検証方法、及びプログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US20120324238A1 (ja) |
JP (1) | JP5736994B2 (ja) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2508052A (en) * | 2012-11-18 | 2014-05-21 | Nds Ltd | Glitch resistant device |
US20140244513A1 (en) * | 2013-02-22 | 2014-08-28 | Miguel Ballesteros | Data protection in near field communications (nfc) transactions |
CN103473487B (zh) * | 2013-09-23 | 2017-01-11 | 中标软件有限公司 | 一种产品的软件网络验证加密方法及其系统 |
JP6263981B2 (ja) | 2013-11-20 | 2018-01-24 | 株式会社リコー | 情報処理装置、情報処理装置の起動方法、及び、プログラム |
US10146942B2 (en) * | 2015-02-24 | 2018-12-04 | Dell Products, Lp | Method to protect BIOS NVRAM from malicious code injection by encrypting NVRAM variables and system therefor |
CN105743918A (zh) * | 2016-04-05 | 2016-07-06 | 浪潮电子信息产业股份有限公司 | 一种信息加密传输的方法、装置及系统 |
US10346343B2 (en) * | 2016-06-24 | 2019-07-09 | Intel Corporation | Hardware accelerator for platform firmware integrity check |
TWI700627B (zh) * | 2017-05-23 | 2020-08-01 | 慧榮科技股份有限公司 | 認證韌體資料之資料儲存裝置與資料儲存方法 |
CN108229144B (zh) * | 2018-01-12 | 2020-04-03 | 百富计算机技术(深圳)有限公司 | 一种应用程序的验证方法、终端设备及存储介质 |
CN110245466B (zh) * | 2019-06-19 | 2021-08-24 | 苏州科达科技股份有限公司 | 软件完整性保护和验证方法、系统、设备及存储介质 |
JP7378980B2 (ja) * | 2019-06-27 | 2023-11-14 | キヤノン株式会社 | 情報処理装置、情報処理方法およびプログラム |
US11588646B2 (en) * | 2019-09-05 | 2023-02-21 | Cisco Technology, Inc. | Identity-based application and file verification |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7343493B2 (en) * | 2002-03-28 | 2008-03-11 | Lenovo (Singapore) Pte. Ltd. | Encrypted file system using TCPA |
US20050021968A1 (en) * | 2003-06-25 | 2005-01-27 | Zimmer Vincent J. | Method for performing a trusted firmware/bios update |
GB2404537B (en) * | 2003-07-31 | 2007-03-14 | Hewlett Packard Development Co | Controlling access to data |
US7318150B2 (en) * | 2004-02-25 | 2008-01-08 | Intel Corporation | System and method to support platform firmware as a trusted process |
US7484241B2 (en) * | 2004-11-22 | 2009-01-27 | Lenovo (Singapore) Pte. Ltd. | Secure single sign-on to operating system via power-on password |
US7725703B2 (en) * | 2005-01-07 | 2010-05-25 | Microsoft Corporation | Systems and methods for securely booting a computer with a trusted processing module |
JP4565427B2 (ja) * | 2005-06-14 | 2010-10-20 | 富士ゼロックス株式会社 | 画像処理装置、認証装置、これらのプログラム及びシステム |
US8429418B2 (en) * | 2006-02-15 | 2013-04-23 | Intel Corporation | Technique for providing secure firmware |
US8631507B2 (en) * | 2006-03-27 | 2014-01-14 | Intel Corporation | Method of using signatures for measurement in a trusted computing environment |
JP2008234079A (ja) * | 2007-03-16 | 2008-10-02 | Ricoh Co Ltd | 情報処理装置、ソフトウェア正当性通知方法及び画像処理装置 |
US7958367B2 (en) * | 2007-05-30 | 2011-06-07 | Hitachi, Ltd. | Authentication system and apparatus |
JP5389401B2 (ja) * | 2007-10-31 | 2014-01-15 | 株式会社日立製作所 | 暗号化装置、復号装置及び暗号システム |
JP5085287B2 (ja) * | 2007-11-21 | 2012-11-28 | 株式会社リコー | 情報処理装置、正当性検証方法および正当性検証プログラム |
US7971048B2 (en) * | 2008-03-27 | 2011-06-28 | Intel Corporation | System and method for establishing a trust domain on a computer platform |
-
2011
- 2011-06-15 JP JP2011133505A patent/JP5736994B2/ja active Active
-
2012
- 2012-05-30 US US13/483,627 patent/US20120324238A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
US20120324238A1 (en) | 2012-12-20 |
JP2013003786A (ja) | 2013-01-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5736994B2 (ja) | 情報処理装置、正当性検証方法、及びプログラム | |
EP2741228B1 (en) | System on chip to perform a secure boot, an image forming apparatus using the same, and method thereof | |
JP5537742B2 (ja) | 多ユーザ機密コードおよびデータを保護するためのアーキテクチャを含む方法および装置 | |
KR100792287B1 (ko) | 자체 생성한 암호화키를 이용한 보안방법 및 이를 적용한보안장치 | |
JP5116325B2 (ja) | 情報処理装置、ソフトウェア更新方法及び画像処理装置 | |
TWI581630B (zh) | 保全金鑰產生裝置和方法、主機元件以及儲存元件 | |
JP6720581B2 (ja) | 情報処理装置、情報処理方法、及び情報処理プログラム | |
JP2004164491A (ja) | プログラム更新方法およびサーバ | |
JP2009294859A (ja) | 機器、機器管理装置、機器管理システム及び機器管理方法、並びにプログラム及び記憶媒体 | |
CN108369626B (zh) | 用于生成密钥的系统和方法以及非暂时性计算机可读介质 | |
KR20180015076A (ko) | 정보 처리장치와 그 제어방법, 및 기억매체 | |
JP2016146618A (ja) | 情報処理装置 | |
CN110674525A (zh) | 一种电子设备及其文件处理方法 | |
JP4724107B2 (ja) | リムーバブル・デバイスを用いたユーザの認証方法およびコンピュータ | |
JP2011150524A (ja) | ソフトウェア実行システム | |
JP5617981B2 (ja) | 機器、管理装置、機器管理システム、及びプログラム | |
JP5582231B2 (ja) | 情報処理装置、真正性確認方法、及び記録媒体 | |
JP2007282064A (ja) | データ処理装置、データ処理方法、記憶媒体、プログラム | |
CN114995918A (zh) | 基板管理控制器的启动方法、配置方法、装置及电子设备 | |
JP2011164858A (ja) | ライセンス設定システムおよびライセンス設定方法 | |
JP2008252290A (ja) | 画像処理装置および画像処理装置のプログラム処理方法 | |
KR101765209B1 (ko) | 안전 부팅 장치 및 방법 | |
JP5234217B2 (ja) | 情報処理装置、ソフトウェア更新方法及びプログラム | |
JP4580030B2 (ja) | セキュアデバイス | |
JP2013191226A (ja) | 情報処理装置、ソフトウェア更新方法及び画像処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140516 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20141215 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150106 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150304 |
|
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: 20150324 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150406 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 5736994 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |