JP7393226B2 - 情報処理装置とその起動方法 - Google Patents
情報処理装置とその起動方法 Download PDFInfo
- Publication number
- JP7393226B2 JP7393226B2 JP2020012890A JP2020012890A JP7393226B2 JP 7393226 B2 JP7393226 B2 JP 7393226B2 JP 2020012890 A JP2020012890 A JP 2020012890A JP 2020012890 A JP2020012890 A JP 2020012890A JP 7393226 B2 JP7393226 B2 JP 7393226B2
- Authority
- JP
- Japan
- Prior art keywords
- cpu
- boot program
- program
- information processing
- verification
- 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
- 230000010365 information processing Effects 0.000 title claims description 27
- 238000000034 method Methods 0.000 claims description 122
- 238000012795 verification Methods 0.000 claims description 78
- 238000012545 processing Methods 0.000 claims description 45
- 230000004913 activation Effects 0.000 claims 1
- 238000001514 detection method Methods 0.000 description 63
- 230000008569 process Effects 0.000 description 63
- 230000006870 function Effects 0.000 description 16
- 230000002093 peripheral effect Effects 0.000 description 16
- 238000010586 diagram Methods 0.000 description 15
- 238000004891 communication Methods 0.000 description 2
- 239000013078 crystal Substances 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 238000003705 background correction Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
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
- G06F21/572—Secure firmware programming, e.g. of basic input output system [BIOS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/00912—Arrangements for controlling a still picture apparatus or components thereof not otherwise provided for
- H04N1/00938—Software related arrangements, e.g. loading applications
-
- 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
-
- 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/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
-
- 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/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/03—Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
- G06F2221/033—Test or assess software
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N2201/00—Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
- H04N2201/0077—Types of the still picture apparatus
- H04N2201/0094—Multifunctional device, i.e. a device capable of all of reading, reproducing, copying, facsimile transception, file transception
Description
情報処理装置であって、
第1CPUと、
第2CPUと、
起動時に、前記第1CPUが実行するブートプログラムを記憶する第1不揮発メモリと、
第1ブートプログラム、及びプログラムを検証する第2ブートプログラムを記憶する第2不揮発メモリと、を有し、
前記第1CPUは、プログラムの改ざんを検証するための設定として暗号化を示す検証方式が前記第1不揮発メモリに設定されているか否かを判定し、前記検証方式が設定されていない場合に、前記第1ブートプログラムを実行して前記検証方式の設定を前記第1不揮発メモリに書き込み、
前記検証方式が設定されている場合に、当該設定に従って前記第2ブートプログラムを実行し、前記第2ブートプログラムによる処理が正常に終了すると前記第2CPUが前記情報処理装置を起動することを特徴とする。
S509でCPU111は、サブブートプログラム217のヘッダであると判定するとS510に進む。S510でCPU111は、サブブートプログラム217のヘッダポインタからサブブートプログラム217のアドレス及びサイズ、署名のアドレスが書かれている場合は、その署名も読み取る。図4(B)の実施形態では、アドレス(0x0004_0000)に設定されている。読み取ったアドレス及びサイズからサブブートプログラム217のハッシュ値を算出する。また暗号化された署名を、S507で読んだ公開鍵を使ってハッシュ値に復号化する。そして、これら2つのハッシュ値を比較することにより、サブブートプログラム217の署名検証を行う。そしてS511に進みCPU111は、これらハッシュ値が一致した場合は、サブブートプログラム217が改ざんされていないと判定してS512に遷移する。一方、これらハッシュ値が一致しなかった場合はサブブートプログラム217が改ざんされていると判定してS513に遷移する。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
Claims (13)
- 情報処理装置であって、
第1CPUと、
第2CPUと、
起動時に、前記第1CPUが実行するブートプログラムを記憶する第1不揮発メモリと、
第1ブートプログラム、及びプログラムを検証する第2ブートプログラムを記憶する第2不揮発メモリと、を有し、
前記第1CPUは、プログラムの改ざんを検証するための設定として暗号化を示す検証方式が前記第1不揮発メモリに設定されているか否かを判定し、前記検証方式が設定されていない場合に、前記第1ブートプログラムを実行して前記検証方式の設定を前記第1不揮発メモリに書き込み、
前記検証方式が設定されている場合に、当該設定に従って前記第2ブートプログラムを実行し、前記第2ブートプログラムによる処理が正常に終了すると前記第2CPUが前記情報処理装置を起動することを特徴とする情報処理装置。 - 前記設定は、前記検証方式の設定、前記第2ブートプログラムを検証するための公開鍵、前記第2ブートプログラムのヘッダポインタを含むことを特徴とする請求項1に記載の情報処理装置。
- 前記検証方式が設定されていない場合、前記第1CPUはハッシュ値による前記第1ブートプログラムの検証を行い、当該検証に成功すると前記第1ブートプログラムを実行することを特徴とする請求項1又は2に記載の情報処理装置。
- 前記検証方式が設定されている場合、前記第1CPUは、前記設定に含まれる前記公開鍵を使用して前記第2ブートプログラムの検証を行い、当該検証に成功すると前記第2ブートプログラムを実行することを特徴とする請求項2に記載の情報処理装置。
- 前記第2ブートプログラムは、前記第2CPUが実行するBIOSの署名検証を行い、当該署名検証に成功すると前記第2CPUのリセットを解除することで前記第2CPUが前記情報処理装置を起動することを特徴とする請求項1に記載の情報処理装置。
- プログラムの改ざんを検証するための前記設定の初期値は、ハッシュ値による検証方式であることを特徴とする請求項1に記載の情報処理装置。
- 前記公開鍵の設定値が初期値の場合、前記第1CPUは、プログラムの改ざんを検証するための設定として暗号化を示す検証方式が設定されていないと判定することを特徴とする請求項2に記載の情報処理装置。
- 前記第1CPUが、前記第1ブートプログラムを実行して前記検証方式の設定を前記第1不揮発メモリに書き込んだ後、前記情報処理装置を再起動することを特徴とする請求項1乃至7のいずれか1項に記載の情報処理装置。
- 前記第1不揮発メモリは、OTP-ROM(One Time Programable ROM)であることを特徴とする請求項1乃至8のいずれか1項に記載の情報処理装置。
- 前記第2不揮発メモリは、フラッシュメモリであることを特徴とする請求項1乃至9のいずれか1項に記載の情報処理装置。
- 第1CPUと、第2CPUと、前記第1CPUが実行するブートプログラムを記憶する第1不揮発メモリと、第1ブートプログラム、及びプログラムを検証する第2ブートプログラムを記憶する第2の不揮発メモリとを有する情報処理装置の起動方法であって、
起動時に、前記第1不揮発メモリに記憶されている前記ブートプログラムを前記第1CPUにより実行し、
前記第1CPUは、プログラムの改ざんを検証するための設定として暗号化を示す検証方式が前記第1不揮発メモリに設定されているか否かを判定し、
前記検証方式が設定されていない場合に、前記第1CPUは前記第1ブートプログラムを実行して前記検証方式の設定を前記第1不揮発メモリに書き込み、
前記検証方式の設定を前記第1不揮発メモリに書き込むと前記情報処理装置を再起動し、
前記検証方式が設定されていると前記第1CPUは、当該設定に従って前記第2ブートプログラムを実行し、
前記第2ブートプログラムによる処理が正常に終了すると、前記第2CPUが前記情報処理装置を起動することを特徴とする起動方法。 - 前記検証方式が設定されていない場合、前記第1CPUはハッシュ値による前記第1ブートプログラムの検証を行い、当該検証に成功すると前記第1ブートプログラムを実行することを特徴とする請求項11に記載の起動方法。
- 前記検証方式が設定されている場合、前記第1CPUは、前記設定に含まれる公開鍵を使用して前記第2ブートプログラムの検証を行い、当該検証に成功すると前記第2ブートプログラムを実行することを特徴とする請求項11に記載の起動方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020012890A JP7393226B2 (ja) | 2020-01-29 | 2020-01-29 | 情報処理装置とその起動方法 |
CN202110100933.8A CN113190879A (zh) | 2020-01-29 | 2021-01-26 | 信息处理装置及其启动方法 |
US17/159,349 US11914714B2 (en) | 2020-01-29 | 2021-01-27 | Information processing apparatus and start-up method of the same |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020012890A JP7393226B2 (ja) | 2020-01-29 | 2020-01-29 | 情報処理装置とその起動方法 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2021117928A JP2021117928A (ja) | 2021-08-10 |
JP2021117928A5 JP2021117928A5 (ja) | 2023-02-07 |
JP7393226B2 true JP7393226B2 (ja) | 2023-12-06 |
Family
ID=76970211
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020012890A Active JP7393226B2 (ja) | 2020-01-29 | 2020-01-29 | 情報処理装置とその起動方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11914714B2 (ja) |
JP (1) | JP7393226B2 (ja) |
CN (1) | CN113190879A (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023002635A1 (ja) * | 2021-07-21 | 2023-01-26 | 三菱電機株式会社 | 情報処理装置、情報処理方法、及び、情報処理プログラム |
US11775694B2 (en) * | 2022-01-05 | 2023-10-03 | International Business Machines Corporation | Validating and securing non-volatile memory |
CN115599407B (zh) * | 2022-11-29 | 2023-08-15 | 深圳宏芯宇电子股份有限公司 | 固件烧录方法、固件烧录系统及存储器存储装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009009372A (ja) | 2007-06-28 | 2009-01-15 | Panasonic Corp | 情報端末、クライアントサーバシステムおよびプログラム |
WO2009013825A1 (ja) | 2007-07-25 | 2009-01-29 | Panasonic Corporation | 情報処理装置、及び改竄検証方法 |
JP2014021953A (ja) | 2012-07-24 | 2014-02-03 | Ricoh Co Ltd | 情報処理装置、画像処理装置、起動制御方法及び起動制御プログラム |
JP2015036847A (ja) | 2013-08-12 | 2015-02-23 | 株式会社東芝 | 半導体装置 |
JP2016511848A (ja) | 2012-12-06 | 2016-04-21 | サムスン エレクトロニクス カンパニー リミテッド | セキュアブート(secureboot)を行うチップシステムと、それを用いる画像形成装置及びそのセキュアブート方法 |
US20180089435A1 (en) | 2016-09-23 | 2018-03-29 | Lntel Corporation | Methods And Apparatus To Use A Security Coprocessor For Firmware Protection |
JP2019133220A (ja) | 2018-01-29 | 2019-08-08 | Necプラットフォームズ株式会社 | 完全性検証装置、完全性検証システム、完全性検証方法、及び、完全性検証プログラム |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8572399B2 (en) * | 2006-10-06 | 2013-10-29 | Broadcom Corporation | Method and system for two-stage security code reprogramming |
JP6942601B2 (ja) * | 2017-10-18 | 2021-09-29 | キヤノン株式会社 | 情報処理装置、その制御方法、及びプログラム |
JP7286381B2 (ja) * | 2019-04-01 | 2023-06-05 | キヤノン株式会社 | 情報処理装置とその制御方法 |
-
2020
- 2020-01-29 JP JP2020012890A patent/JP7393226B2/ja active Active
-
2021
- 2021-01-26 CN CN202110100933.8A patent/CN113190879A/zh active Pending
- 2021-01-27 US US17/159,349 patent/US11914714B2/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009009372A (ja) | 2007-06-28 | 2009-01-15 | Panasonic Corp | 情報端末、クライアントサーバシステムおよびプログラム |
WO2009013825A1 (ja) | 2007-07-25 | 2009-01-29 | Panasonic Corporation | 情報処理装置、及び改竄検証方法 |
JP2014021953A (ja) | 2012-07-24 | 2014-02-03 | Ricoh Co Ltd | 情報処理装置、画像処理装置、起動制御方法及び起動制御プログラム |
JP2016511848A (ja) | 2012-12-06 | 2016-04-21 | サムスン エレクトロニクス カンパニー リミテッド | セキュアブート(secureboot)を行うチップシステムと、それを用いる画像形成装置及びそのセキュアブート方法 |
JP2015036847A (ja) | 2013-08-12 | 2015-02-23 | 株式会社東芝 | 半導体装置 |
US20180089435A1 (en) | 2016-09-23 | 2018-03-29 | Lntel Corporation | Methods And Apparatus To Use A Security Coprocessor For Firmware Protection |
JP2019133220A (ja) | 2018-01-29 | 2019-08-08 | Necプラットフォームズ株式会社 | 完全性検証装置、完全性検証システム、完全性検証方法、及び、完全性検証プログラム |
Also Published As
Publication number | Publication date |
---|---|
JP2021117928A (ja) | 2021-08-10 |
US11914714B2 (en) | 2024-02-27 |
CN113190879A (zh) | 2021-07-30 |
US20210232690A1 (en) | 2021-07-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11520894B2 (en) | Verifying controller code | |
US9880908B2 (en) | Recovering from compromised system boot code | |
KR101209252B1 (ko) | 전자기기의 부팅 방법 및 부팅 인증 방법 | |
US9785596B2 (en) | Redundant system boot code in a secondary non-volatile memory | |
JP7393226B2 (ja) | 情報処理装置とその起動方法 | |
US9292300B2 (en) | Electronic device and secure boot method | |
JP5711160B2 (ja) | パスワードを保護する方法およびコンピュータ | |
TWI390410B (zh) | 不須執行電力開啟自我測試之操作系統傳送及啟動 | |
JP5689429B2 (ja) | 認証装置、および、認証方法 | |
JP6494373B2 (ja) | 情報処理装置、情報処理装置の制御方法、およびコンピュータプログラム | |
WO2022156513A1 (zh) | 一种服务器操作系统引导方法、装置、设备及介质 | |
JP2016099837A (ja) | 情報処理装置、サーバ装置、情報処理システム、制御方法及びコンピュータプログラム | |
KR102547034B1 (ko) | 정보 처리 장치 및 그 제어 방법 | |
JP7263101B2 (ja) | 情報処理装置、データ検証方法 | |
JP2020091698A (ja) | 情報処理装置及びその制御方法 | |
JP5961059B2 (ja) | 情報処理装置およびその起動方法 | |
JP7210238B2 (ja) | 情報処理装置、情報処理装置の制御方法、及び、プログラム | |
JP2020154601A (ja) | 情報処理装置とその制御方法、及びプログラム | |
US11971993B2 (en) | Firmware-based secure tenancy transfer | |
US20220382873A1 (en) | Firmware-based secure tenancy transfer | |
JP2020107003A (ja) | 情報処理装置と当該情報処理装置の起動方法、並びにプログラム | |
JP2020135645A (ja) | 情報処理装置、その制御方法およびプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20210103 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210113 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230127 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230127 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20230907 |
|
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: 20231027 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20231124 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 7393226 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |