JP7182966B2 - 情報処理装置、情報処理装置の起動方法、及びプログラム - Google Patents

情報処理装置、情報処理装置の起動方法、及びプログラム Download PDF

Info

Publication number
JP7182966B2
JP7182966B2 JP2018170613A JP2018170613A JP7182966B2 JP 7182966 B2 JP7182966 B2 JP 7182966B2 JP 2018170613 A JP2018170613 A JP 2018170613A JP 2018170613 A JP2018170613 A JP 2018170613A JP 7182966 B2 JP7182966 B2 JP 7182966B2
Authority
JP
Japan
Prior art keywords
program
setting
area
tampering detection
detection processing
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
JP2018170613A
Other languages
English (en)
Other versions
JP2020042632A (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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2018170613A priority Critical patent/JP7182966B2/ja
Priority to KR1020190106265A priority patent/KR102467636B1/ko
Priority to US16/560,868 priority patent/US11514169B2/en
Priority to CN201910859663.1A priority patent/CN110895609B/zh
Publication of JP2020042632A publication Critical patent/JP2020042632A/ja
Application granted granted Critical
Publication of JP7182966B2 publication Critical patent/JP7182966B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/575Secure boot
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1211Improving printing performance
    • G06F3/1212Improving printing performance achieving reduced delay between job submission and print start
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1222Increasing security of the print job
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1229Printer resources management or printer maintenance, e.g. device status, power levels
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1229Printer resources management or printer maintenance, e.g. device status, power levels
    • G06F3/123Software or firmware update, e.g. device firmware management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1253Configuration of print job parameters, e.g. using UI at the client
    • G06F3/1254Automatic configuration, e.g. by driver
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4406Loading of operating system
    • G06F9/441Multiboot arrangements, i.e. selecting an operating system to be loaded
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating

Description

本発明は、改ざん検知を行うことが可能な情報処理の技術に関するものである。
プログラムの脆弱性をついて、プログラムを改ざんし、コンピュータを悪用する攻撃が問題となっている。特許文献1には、プログラムの改ざん検知を行う技術が記載されている。具体的には、特許文献1には、耐タンパーモジュールを用いてプログラムのハッシュ値を計算して、保存しておき、起動するたびにプログラムのハッシュ値を再計算して検証を行うことで改ざん検知を行う技術が記載されている。
国際公開第2009/044533号
しかしながら、特許文献1の技術では、改ざん検知処理が必ず実行されることになる。このため、例えば改ざん検知よりも起動速度を優先したいユーザーにとっては、起動処理に時間を要する事態が生じてしまう。
本発明の一態様に係る情報処理装置は、プログラムの起動ごとに改ざん検知処理を行う情報処理装置であって、改ざん検知処理を行うか否かを示す設定を、第二のプログラムより先に他のプログラムの改ざん検知処理を行う第一のプログラムが参照可能な第一領域と、前記第一のプログラムが起動された時点では前記第一のプログラムが参照できず、かつ、前記第二のプログラムが参照可能な第二領域と、に書き込み可能な書き込み手段を備え、前記第一のプログラムは、前記第一領域に書き込まれている前記設定に応じて前記改ざん検知処理を行い、前記第二領域を参照可能な第二のプログラムは、前記第二領域に書き込まれている前記設定に応じて前記改ざん検知処理を行う、ことを特徴とする。
本発明によれば、改ざん検知よりも起動速度を優先したい場合に、起動に要する時間を短縮できる。
複合機のハードウェア構成図。 複合機のソフトウェア構成図。 起動時の動作を示す模式図。 設定画面を示す模式図。 設定変更時の処理を示すフローチャート。 改ざん検知処理を示すフローチャート。
以下、添付図面を参照して本発明の実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。尚、以下の実施形態では、情報処理装置として複合機(MFP)を例に挙げて説明する。しかしながら複合機に限定されるものではなく、任意のタイプの情報処理装置を用いることができる。
<<実施形態1>>
本実施形態の情報処理装置の構成の説明に先立って、改ざん検知処理の概要を説明する。情報処理装置を起動する際には、一般的に、複数のプログラムが順次起動されることになる。例えば、ブートプログラム、BIOS、ローダー、カーネル、アプリケーションの順に、段階的にプログラムが起動される。ブートプログラム、BIOS、ローダー、カーネル、およびアプリケーションは、それぞれが別個のプログラムである。他のプログラムによって起動される各プログラムには、署名が格納されている。各プログラムを起動するときに、署名検証が行われ、検証に成功した場合のみ、プログラムを起動することで、改ざん検知処理が行われる。
このように、改ざん検知処理が実行される場合には、通常の起動処理に加えて検証処理が行われることになる。このため、情報処理装置が起動完了するまでに要する時間が長くなる。そこで、改ざん検知処理の実行の有効(ON)または無効(OFF)をアプリケーションによって設定して制御する構成が考えられる。改ざん検知処理を省略して、情報処理装置の起動を早めたいと考えるユーザーもいるからである。
ここで、アプリケーション(以下、アプリという)が一般的に利用する記憶領域(例えばHDDの記憶領域)に、改ざん検知処理の有効・無効の設定情報を格納する形態を想定する。この場合、アプリが起動される段階よりも前の段階で起動されるプログラムは、その設定情報を参照することができない。例えば、BIOSおよびローダーは、必要最低限のハードウェアが利用できる状態で起動処理が行われる。従って、アプリが一般的に利用する記憶領域(例えばHDDの記憶領域)に改ざん検知処理の有効・無効の設定情報が格納されると、BIOSおよびローダーは、その設定情報を参照することができない。この結果、セキュリティを担保するために、常にBIOS、ローダー、およびカーネルの検証を行わざるを得ず、設定情報が無効(OFF)に設定されていたとしても、起動は遅くなる。
一方で、BIOS等から利用できる記憶領域に改ざん検知の有効・無効の設定情報を格納する方法も考えられる。しかしながら、BIOS等から利用できる記憶領域に設定情報を格納すると、アプリで管理される通常の設定情報の管理とは別の管理が必要となる。例えば、バックアップおよびリストアに際して別個の手当てが必要となり、管理が煩雑になる。
以下で説明する実施形態では、改ざん検知処理が有効であるかまたは無効であるかを適切に設定して、改ざん検知処理を実行するかを切り替えることができる形態を説明する。また、改ざん検知処理の実行の有効・無効の設定情報を、異なる記憶領域に重複して格納することで、設定情報が無効に設定されている場合に、検証処理を行わずに起動を早めることができる形態を説明する。また、設定情報を、異なる記憶領域に重複して格納することで、管理を容易にする形態を説明する。
<ハードウェア構成>
図1は、複合機100のハードウェア構成を説明するブロック図である。複合機100は、CPU101、ROM102、RAM103、HDD104、ネットワークI/F制御部105、スキャナI/F制御部106、プリンタI/F制御部107、パネル制御部108、を備えている。また、操作パネル110、スキャナ111、プリンタ112、およびフラッシュメモリ114を備えている。
CPU101は、各種のソフトウェアプログラムを実行し、装置全体の制御を行う。ROM102は、リードオンリーメモリである。ROM102には、複合機100の電源が投入されると、CPU101によって最初に直接読み込まれて、実行されるプログラムであるブートプログラムが格納されている。
RAM103は、ランダムアクセスメモリである。RAM103は、CPU101が複合機100を制御する際に、プログラムや一時的なデータの格納などに使用される。特に断りがない限り、本明細書では、各プログラムがRAM103に読み込まれ、CPU101によって実行されることを、プログラムを「起動する」と呼ぶ。
フラッシュメモリ114は、不揮発性のメモリである。フラッシュメモリ114には、ブートプログラムによって起動されるプログラムであるBIOSと、BIOSによって参照される設定情報であるBIOS設定とが格納されている。HDD104には、プログラムであるローダー、カーネル、およびアプリケーション(アプリ)が記憶されている。
ネットワークI/F制御部105は、外部機器とのネットワーク113を介するデータの送受信を制御する。スキャナI/F制御部106は、スキャナ111による原稿の読み取りを制御する。プリンタI/F制御部107は、プリンタ112による印刷処理などを制御する。パネル制御部108は、タッチパネル式の操作パネル110を制御し、各種情報の表示や使用者からの指示入力を制御する。
バス109は、CPU101、ROM102、RAM103、HDD104、ネットワークI/F制御部105、スキャナI/F制御部106、プリンタI/F制御部107、パネル制御部108、およびフラッシュメモリ114を相互に接続する。バス109を介して、CPU101からの制御信号や各装置間のデータ信号が送受信される。
<ソフトウェアモジュール>
図2は、複合機100が有するソフトウェアモジュールを説明するブロック図である。また、各ソフトウェアモジュールが格納されるハードウェアも併せて記載している。複合機100は、ブートプログラム209、BIOS210、ローダー211、カーネル212、アプリ213、および通信管理部208を備えている。ブートプログラム209は、ROM102に格納されている。BIOS210は、フラッシュメモリ114に格納されている。ローダー211、カーネル212、アプリ213、および通信管理部208は、HDD104に格納されている。
ブートプログラム209は、BIOS改ざん検知処理部201を有する。BIOS210は、BIOS設定部202とローダー改ざん検知処理部203とを有する。ローダー211は、カーネル改ざん検知処理部204を有する。カーネル212は、アプリ改ざん検知処理部205を有する。アプリ213は、UI制御部206を有する。各プログラムが起動されると、CPU101が、各プログラムに格納されている各検知処理部として機能する。
通信管理部208は、ネットワーク113に接続されるネットワークI/F制御部105を制御して外部とデータの送受信を行う。UI制御部206は、パネル制御部108を介して操作パネル110への入力を受け取り、入力に応じた処理や操作パネル110への画面出力を行う。
ブートプログラム209は、複合機100の電源が投入されるとCPU101によって実行されるプログラムである。ブートプログラム209に従って、CPU101は、起動に関わる処理を行う。また、ブートプログラム209は、BIOS210の改ざん検知処理を行うBIOS改ざん検知処理部201を有する。
BIOS210は、ブートプログラム209によって起動されるプログラムである。BIOS210は、ハードウェアの初期化等の起動に関わる処理を行うプログラムである。BIOS210は、この起動処理に関わる設定を行うBIOS設定部202と、ローダー211の改ざん検知処理を行うローダー改ざん検知処理部203とを有する。なお、BIOS210が起動している時点ではカーネル212が起動していないので、HDD104にアクセスするためのドライバ(後述する)が存在していない。このため、BIOS210は、HDD104の領域のうち、ローダー211が格納されている所定の領域にしかアクセスできない。
ローダー211は、BIOS210によって起動されるプログラムである。ローダー211は、カーネル212を選択して起動する処理を行うプログラムである。ローダー211は、カーネル212の改ざん検知処理を行うカーネル改ざん検知処理部204を有する。
カーネル212は、ローダー211によって起動されるプログラムである。カーネル212は、各種ドライバを読み込み、アプリ213の動作を補助する。ドライバは、アプリ213が、ハードウェアであるCPU101、RAM103、またはHDD104にアクセスし、利用することを可能にする機能を持つ。さらにカーネル212は、アプリ213の改ざん検知処理を行うアプリ改ざん検知処理部205を有する。
アプリ213は、カーネル212によって起動されるプログラムである。たとえば、アプリ213の例として、パネル制御部108および操作パネル110を制御して、ユーザーによる複合機100の操作を受け入れるUI制御部206がある。なお、アプリ213は、この例に限られるものではない。例えば、ネットワーク113からネットワークI/F制御部105が受信した印刷データを、プリンタI/F制御部107およびプリンタ112を利用して印刷する印刷機能を有するアプリも含まれる。その他、複合機が備えている機能を実行するアプリが複数存在し得るが、ここでの説明は省略する。
<起動動作の流れ>
図3は、複合機100の起動時における各プログラムの動作処理を説明する模式図である。図3(a)は、比較例を示す図であり、改ざん検知処理の実行の有効・無効を切り替える設定値(設定情報)が、HDD104に格納されているケースの図である。まず図3(a)を用いて、ブートプログラム209、BIOS210、ローダー211、カーネル212、アプリ213の順に各プログラムを起動する処理を説明する。また、各プログラムが、次段で起動されるプログラムに対して改ざん検知処理を行いながら段階的にプログラムを起動する処理の流れを説明する。なお、図3(a)では、各プログラム、デジタル署名(以下「署名」と呼ぶ)、公開鍵、および設定値が格納(記憶)されたハードウェアも併せて示されている。
ブートプログラム209には、BIOS検証用公開鍵300が含まれている。BIOS210には、BIOS署名302とローダー検証用公開鍵303とが含まれている。フラッシュメモリ114内において、BIOS210とは別の領域に、BIOS210の動作設定を示す情報であるBIOS設定310が格納されている。BIOS設定の例としては、複数の記憶装置が接続されている場合、どの記憶装置から優先して読み込み起動処理を行うかの設定などがある。本実施形態では、HDD104が優先されて読み込まれて起動する設定がされているものとして説明する。
ローダー211には、ローダー署名304とカーネル検証用公開鍵305とが含まれている。カーネル212には、カーネル署名306とアプリ検証用公開鍵307とが含まれている。アプリ213には、アプリ署名308が含まれている。またHDD104内において、アプリ213から利用される設定値309が保存されているものとする。なお、各プログラムにおける公開鍵および署名は、あらかじめ複合機100の出荷前に各プログラムに対して付与されているものとする。
図2および図3(a)に示しているように、BIOS改ざん検知処理部201、ローダー改ざん検知処理部203、カーネル改ざん検知処理部204、およびアプリ改ざん検知処理部205の各検知部が、次に起動するプログラムの署名を検証する。検証の結果、問題がなければ、次のプログラムを起動する。このような処理を行うことで、段階的に改ざん検知処理を行いながら複合機100の起動が行われる。このように改ざん検知処理を行いながら起動を行う複合機100では、改ざん検知処理を行わない複合機に比べて処理が増えるので、起動が遅くなる。
複合機100のユーザーのなかには、改ざん検知処理で得られるセキュリティの向上よりも起動時間が高速な方が良いというユーザーもいる。このため、ユーザーによる設定によって、改ざん検知機能の有効および無効が切り替えられることが望ましい。
図4は、UI制御部206によって操作パネル110に表示される複合機100の設定画面401の模式図である。ボタン402およびボタン403は、留め置き印刷機能を有効にするか無効にするかを選択するボタンである。留め置き印刷機能とは、複合機の備える印刷機能において、ネットワークI/F制御部105に受信した印刷データを直ちにプリンタ112から印刷するのではなく、UI制御部206から印刷を指示した場合のみ印刷する機能である。
ボタン404およびボタン405は、複合機100の改ざん検知機能を有効にするか無効にするかを選択するボタンである。ボタン406が選択されると、設定画面401の設定内容がHDD104に記憶される。ボタン407が選択されると、設定画面401で選択された内容はキャンセルされる。
設定画面401を通じて選択された内容は、図3(a)に示す設定値309として、HDD104に格納される。設定値309は、アプリ213の各機能で利用される。設定値309がアプリ213と同じ記憶装置(HDD104)に格納されている方が、アプリ213は、設定値309の管理が容易である。例えば、アプリ213は、同一のアクセスインターフェースで設定値309を操作することができるからである。また、バックアップおよびリストア処理をする際にも管理が容易となる。従って、設定値309は、アプリ213と同じHDD104に格納されている。
UI制御部206は、設定画面401を表示する際には、HDD104の設定値309を読み取って現在の設定内容を表示する。図4の例では、ボタン402およびボタン404が選択された状態で設定画面401が表示されている例を示している。即ち、ボタン402およびボタン404の選択内容が、設定値309によって設定されている現在の設定内容であることを示している。なお、図4では、留め置きプリントの利用に関する設定値と改ざん検知の利用に関する設定値とを同じ設定画面401から設定する形態を説明したが、夫々を別の画面から設定する形態であってもよい。また、他の設定値を同一画面で設定する構成でもよい。
このように、改ざん検知処理の利用に関する設定情報(設定値309)をHDD104に格納し、ユーザーによって設定情報が変更されることが可能であれば、改ざん検知処理の実行の有効・無効をユーザーが切り替えることは、可能である。しかしながら、BIOS210およびローダー211が起動している時点では、HDD104の設定値309にアクセスするためのドライバが読み込まれていない。HDD104にアクセスするためのドライバは、カーネル212の起動によって読み込まれることになる。従って、BIOS210およびローダー211では、設定値309を取得することができない。このため、改ざん検知処理の有効・無効を切り替えることができない。設定値309を参照して改ざん検知処理の有効・無効を切り替えることができるのは、図3(a)では、ドライバを有効化するカーネル212からとなる。
つまり、図3(a)のように、改ざん検知機能を有する複合機100で改ざん検知機能を無効にしたとしても、改ざん検知機能のない複合機と概ね同等の起動時間を達成することはできない。なお、仮にフラッシュメモリ114に改ざん検知処理の設定を格納すると、前述したように、アプリ213が、他の設定値と同一のアクセスインターフェースで操作ができず、バックアップやリストアの際にも特別な処理を行う必要がある。このため、設定値の管理が煩雑となる。
図3(b)は、本実施形態において、複合機100の起動時における各プログラムの動作処理を説明する模式図である。図3(b)では、フラッシュメモリ114内において、BIOS210およびBIOS設定310とは別の領域に、改ざん検知設定311(設定情報)を格納している。改ざん検知設定311は、改ざん検知処理の有効・無効を示す設定情報であり、設定値309と同期がとられる。改ざん検知設定311の内容に応じて、BIOS210およびローダー211による改ざん検知処理(図3(a)における(3)検証および(5)検証)の実行の有無が切り替えられる。図3(b)のその他については、図3(a)で説明した内容と同一である。本実施形態では、複数の記憶領域に改ざん検知処理の実行の有無を示す設定を同期して格納することで、管理が煩雑とならずに改ざん検知処理の実行の有無を切り替えることができる。また、改ざん検知機能を無効にした場合、改ざん検知処理を行う場合に比べて起動時間を早めることができる。
<改ざん検知の設定変更のフローチャート>
図5は、UI制御部206によって設定変更が行われるときの処理を説明するフローチャートである。図5のフローチャートで示される一連の処理は、複合機100のCPU101が、HDD104に記憶されているアプリ213のプログラムコードをRAMに展開し実行することにより行われる。なお、各処理の説明における記号「S」は、当該フローチャートにおけるステップであることを意味する。
UI制御部206は、操作パネル110から設定変更指示を受け取ると、S501にて変更指示を受けた設定が、改ざん検知の設定か否かを判定する。改ざん検知の設定ではない場合、処理はS503に進む。続いてS503においてUI制御部206は、HDD104の設定値309に変更内容を格納して処理を終了する。
一方、S501にて改ざん検知の設定であると判定した場合、UI制御部206は、S502に処理を進める。S502にてUI制御部206は、フラッシュメモリ114に、改ざん検知設定の変更内容を改ざん検知設定311として格納する。その後、S503に進み、UI制御部206は、同様に、改ざん検知設定の変更内容をHDD104の設定値309に含めて格納して処理を終了する。即ち、改ざん検知設定の変更内容は、フラッシュメモリ114とHDD104との両方に書き込まれて格納される。
なお、UI制御部206は、改ざん検知に関する設定を操作パネル110に表示する際は、HDD104の設定値309の改ざん検知設定を読み取って表示する。つまり、アプリ213であるUI制御部206は、改ざん検知の設定変更があった場合には、フラッシュメモリ114の記憶領域に改ざん検知設定311として設定変更の内容を格納する処理を追加的に行う。それ以外の改ざん検知設定に関する処理については、アプリ213であるUI制御部206は、比較例と同様の処理をすることになる。即ち、HDD104の記憶領域に設定値309に含めて改ざん検知設定を格納したり、HDD104の設定値309を参照した表示処理が行われたりする。従って、アプリ213は、改ざん検知に関する設定を、他の設定値と同一のアクセスインターフェースで操作することができる。また、バックアップやリストアの際にも特別な処理を行わなくて済む。
<改ざん検知のフローチャート>
図6は、改ざん検知設定311および設定値309の内容を参照しながら行われる処理を説明するフローチャートである。図6のフローチャートで示される一連の処理は、複合機100のCPU101が、フラッシュメモリ114およびHDD104に記憶されているプログラムコードをRAMに展開し、実行することにより行われる。即ち、CPU101が、BIOS210、ローダー211、カーネル212、およびアプリ213の各プログラムコードを実行することにより行われる。また、図6に示す一部の処理は、CPU101が、ROM102に記憶されているブートプログラム209のプログラムコードを実行することにより行われる。
複合機100の電源が投入されると、CPU101は、ROM102から直接ブートプログラム209を読み取り、ブートプログラム209を実行する。ブートプログラム209が実行されると、S601において、BIOS改ざん検知処理部201は、BIOS210、ローダー検証用公開鍵303、およびBIOS署名302をフラッシュメモリ114からCPU101に読み込む。そして、BIOS改ざん検知処理部201は、BIOS検証用公開鍵300を用いてBIOS署名302の検証を行い、検証に成功したかを判定する。
署名の検証に失敗した場合、S613に処理が進む。そしてS613においてBIOS改ざん検知処理部201は、操作パネル110にエラーメッセージを表示して処理を終了する。一方、署名の検証に成功した場合、BIOS改ざん検知処理部201は、改ざん検知処理を終了し、S602に処理が進む。続いて、S602においてブートプログラム209は、BIOS210を起動する。
BIOS210が起動されると、BIOS210は、BIOS設定310に従ってハードウェアの初期化などの起動処理を行う。次にS603において、BIOS210に含まれるローダー改ざん検知処理部203は、フラッシュメモリ114の改ざん検知設定311を取得し、改ざん検知設定311が有効を示す設定であるかを判定する。
改ざん検知設定311が無効を示す設定であると判定した場合、ローダー改ざん検知処理部203は、処理を終了し、S605に処理が進む。S605においてBIOS210は、ローダー211の検証は行わずに、「改ざん検知処理なし」でローダー211を起動する。即ち、BIOS210は、ローダー211をHDD104からRAM103に読み込み、起動する。ローダー211は、「改ざん検知処理なし」で起動されると、改ざん検知処理を行わずにカーネル212を起動するように構成されている。S605の後、S608に処理が進む。S608においてローダー211は、改ざん検知処理は行わずにカーネル212を起動する。即ち、ローダー211は、カーネル212、をHDD104からRAM103に読み込み、起動する。
一方、S603にて改ざん検知設定311が有効を示す設定であると判定された場合、S604に処理が進む。S604においてBIOS210に含まれるローダー改ざん検知処理部203は、ローダー211、カーネル検証用公開鍵305、およびローダー署名304をHDD104からRAM103に読み込む。そして、ローダー改ざん検知処理部203は、ローダー検証用公開鍵303を用いてローダー署名304の検証を行い、成功したかを判定する。
S604にてローダー署名304の検証に失敗した場合、S613に処理が進む。S613においてローダー改ざん検知処理部203は、操作パネル110にエラーメッセージを表示し処理を終了する。
一方、S604にてローダー署名304の検証に成功した場合、S606に処理が進む。S606においてローダー改ざん検知処理部203の処理は終了し、BIOS210は、「改ざん検知処理あり」でローダー211を起動する。ローダー211は、「改ざん検知処理あり」で起動されると、改ざん検知処理を行ってカーネル212を起動するように構成されている。このため、「改ざん検知処理あり」で起動されると、S606においてローダー211に含まれるカーネル改ざん検知処理部204は、カーネル212、アプリ検証用公開鍵307、およびカーネル署名306をHDD104からRAM103に読み込む。S607においてカーネル改ざん検知処理部204は、カーネル検証用公開鍵305を用いて、カーネル署名306の検証を行い成功したかを判定する。
S607にてカーネル署名306の検証に失敗した場合、S613に処理が進む。S613においてカーネル改ざん検知処理部204は、操作パネル110にエラーメッセージを表示し処理を終了する。
一方、S607にてカーネル署名306の検証に成功した場合、S608に処理が進む。S608においてカーネル改ざん検知処理部204の処理は終了し、ローダー211は、カーネル212を起動する。
このように、S608でカーネルが起動されるケースとして、2通りのケースがある。2通りのケースは、改ざん検知設定311に基づいて切り替えられる。即ち、改ざん検知設定311が無効を示す設定の場合には、ローダー211およびカーネル212は、改ざん検知処理が行われずに起動される。改ざん検知設定311が有効を示す設定の場合には、ローダー211およびカーネル212は、改ざん検知処理が行われて起動される。本実施形態では、改ざん検知設定311が、BIOS210が参照可能な記憶領域に記憶されている。このため、BIOS210とローダー211は、HDD104に格納されている設定値309を参照せずに、改ざん検知を実行するかを切り替えることができる。
引き続き、図6の処理を説明する。カーネル212が起動されると、カーネル212は、各種ドライバの読み込みなどの初期化処理を行う。各種ドライバの読み込みが行われることで、HDD104の設定値309が参照可能になる。S609において、カーネル212に含まれるアプリ改ざん検知処理部205が起動する。そして、アプリ改ざん検知処理部205は、HDD104の設定値309から改ざん検知の設定を取得し、かつ、フラッシュメモリ114から改ざん検知設定311を取得する。そして、アプリ改ざん検知処理部205は、HDD104およびフラッシュメモリ114からそれぞれ取得した改ざん検知の設定を比較する。図5で説明したように、フラッシュメモリ114の改ざん検知設定311と、HDD104の設定値とは、同期が取られている。従って、基本的には、フラッシュメモリ114の改ざん検知設定311と、HDD104の設定値とは同じ設定を示す値になっている。しかしながら、デバイス(HDD104およびフラッシュメモリ114)が故障等によって交換された場合には、同期が取れていない場合がある。S609の比較処理は、このような同期が取れていない場合が起こり得ることを考慮した処理である。詳細は後述する。
S609にて、HDD104およびフラッシュメモリ114からそれぞれ取得した改ざん検知の設定が一致していると判定された場合、S610に処理が進む。S610においてアプリ改ざん検知処理部205は、改ざん検知の設定が有効を示す設定であるか判定する。
S610にて改ざん検知の設定が無効を示す設定であると判定された場合、S612に処理が進む。S612においてアプリ改ざん検知処理部205の処理は終了し、カーネル212は、アプリ213を起動する。即ち、カーネル212は、改ざん検知処理を行わずに、HDD104からアプリ213をRAM103に読み込み、起動する。そして、一例の処理が終了する。
一方、S610にて改ざん検知の設定が有効を示す設定であると判定された場合、S611に処理が進む。S611においてアプリ改ざん検知処理部205は、HDD104からアプリ213およびアプリ署名308をRAM103に読み込む。次にアプリ改ざん検知処理部205は、アプリ検証用公開鍵307を用いて、アプリ署名308の検証を行い、成功したかを判定する。
S610にてアプリ署名308の検証に失敗した場合、S613に処理が進む。S613においてアプリ改ざん検知処理部205は、操作パネル110にエラーメッセージを表示し処理を終了する。
一方、S610にてアプリ署名308の検証に成功した場合、S612に処理が進む。S612においてカーネル212は、前述したように、アプリ213を起動する。そして、一例の処理が終了する。
次に、S609にて、HDD104およびフラッシュメモリ114から取得した改ざん検知の設定が一致していないと判定された場合の処理を説明する。S609で設定が一致していないと判定された場合、S614に処理が進む。S614においてアプリ改ざん検知処理部205は、フラッシュメモリ114の改ざん検知設定311が有効を示す設定であり、かつHDD104の設定値309が無効を示す設定であるかを判定する。
フラッシュメモリ114の改ざん検知設定311が有効を示す設定であり、かつHDD104の設定値309が無効を示す設定である場合、S615に処理が進む。S615においてアプリ改ざん検知処理部205は、HDD104の設定値309の改ざん検知設定311を、有効を示す設定に更新する。そして、S611に処理が進む。S611では、前述のように、アプリ改ざん検知処理部205がアプリ署名308の検証を行う処理が行われる。
このS614からS615に続く処理は、フラッシュメモリ114の改ざん検知設定311とHDD104の設定値309が、いずれも有効を示す設定で同期が行われている状態において、HDD104が故障等によって交換された場合の処理に相当する。即ち、HDD104が交換されたことで、設定値309が、改ざん検知設定が無効であることを示す設定になってしまったときに必要な処理である。この処理が行われない場合には、改ざん検知処理は、BIOS210からカーネル212までしか行われない。つまり、アプリ213の検証が行われない。このため、HDD104の交換前と異なる設定で動作してしまい、セキュリティが低下する。さらに、操作パネル110で改ざん検知設定を参照した場合に、設定値309が、改ざん検知が無効であることを示す設定になっているにも関わらず、実際には一部の改ざん検知処理が行われることになる。即ち、BIOS210からカーネル212までの改ざん検知処理が行われることになる。このため、操作パネル110で参照される改ざん検知の設定と、実動作とで不整合が生じてしまい、ユーザーに正しい複合機100の動作情報が伝わらなくなる。S614からS615に続く処理を行うことで、このような事態が生じてしまうことを防止できる。
一方、S614にて、フラッシュメモリ114の改ざん検知設定311が無効を示す設定であり、かつHDD104の設定値309が有効を示す設定である場合、S616に処理が進む。S616においてアプリ改ざん検知処理部205は、フラッシュメモリ114の改ざん検知設定311を、有効を示す設定に更新する。そして、S617に処理が進む。S617においてアプリ改ざん検知処理部205は、複合機100の再起動を行う。そして、一例の処理が終了する。
このS614、S616、S617と続く処理は、フラッシュメモリ114が故障等によって交換され、改ざん検知設定311が無効を示す設定になってしまったときに必要な処理である。この処理が行われない場合、操作パネル110で改ざん検知設定を参照した場合に、改ざん検知設定が有効であると表示されるにも関わらず、アプリ213以外の改ざん検知処理が行われておらずセキュリティが低下する。また、操作パネル110で参照される改ざん検知の設定と、実動作とで不整合が生じてしまい、ユーザーに正しい複合機100の動作情報が伝わらなくなる。S614、S616、S617と続く処理を行うことで、改ざん検知設定311が有効を示す設定である状態で再起動が行われる。なお、S616に処理が進んでいる場合とは、フラッシュメモリ114の改ざん検知設定311が無効であることを示す設定で処理が行われている状態である。このため、改ざん検知処理なしでローダー211およびカーネル212が起動されている状態である。S616およびS617により、フラッシュメモリ114の改ざん検知設定311が有効を示す設定である状態に変更され、その後、改めて図6のフローチャートの処理が行われることになる。従って、ローダー211およびカーネル212が改ざん検知処理ありで起動されることになる。
以上説明したように、本実施形態においては、改ざん検知処理に関する設定を、BIOS210が起動時に参照可能な第一領域と、BIOS210が起動時に参照不可能な第二領域に格納する。第一領域および第二領域は、アプリ213から参照可能な領域である。また、この第一領域の設定と第二領域の設定とは、アプリ213によって同期された状態になっている。このようにして、改ざん検知に関する設定を格納しておくことにより、改ざん検知処理を実行するかを切り替えることができる。また、改ざん検知機能を持つ情報処理装置において、改ざん検知機能を無効にすることで、起動時間を早めることができる。
また、アプリ213は、改ざん検知処理の設定を同期して格納する場合を除いて、改ざん検知の設定を他の設定値と同じように扱うことができるので、管理が容易になる。また、本実施形態では、改ざん検知処理の設定を、HDD104とフラッシュメモリ114との2か所に格納し、かつ同期しながら処理が行われることになる。このため、攻撃者が不正に設定を書き換えて改ざん検知設定をOFFにしようとする場合、二箇所同時に書き換える必要が出てくるので、攻撃難易度が上がる効果も得られる。
<<その他の実施形態>>
以上説明した実施形態では、改ざん検知の方法として公開鍵と署名を使う方式を例に挙げて説明したが、他の方式を用いてもよい。また記憶装置として、HDD104とフラッシュメモリ114とが存在するものとして説明したが、他の記憶装置であってもよい。情報処理装置の起動時に動作する起動プログラムが参照可能な記憶装置、および、起動プログラムが参照不可能な記憶装置となり得る複数の記憶装置が存在する形態であれば、いずれの記憶装置でもよい。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
201 BIOS改ざん検知処理部
203 ローダー改ざん検知処理部
204 カーネル改ざん検知処理部
205 アプリ改ざん検知処理部
309 設定値
311 改ざん検知設定

Claims (13)

  1. プログラムの起動ごとに改ざん検知処理を行う情報処理装置であって、
    改ざん検知処理を行うか否かを示す設定を、第二のプログラムより先に他のプログラムの改ざん検知処理を行う第一のプログラムが参照可能な第一領域と、前記第一のプログラムが起動された時点では前記第一のプログラムが参照できず、かつ、前記第二のプログラムが参照可能な第二領域と、に書き込み可能な書き込み手段を
    備え、
    前記第一のプログラムは、前記第一領域に書き込まれている前記設定に応じて前記改ざん検知処理を行い、
    前記第二領域を参照可能な第二のプログラムは、前記第二領域に書き込まれている前記設定に応じて前記改ざん検知処理を行う、
    ことを特徴とする情報処理装置。
  2. 前記第一領域と前記第二領域とは、異なる記憶装置の記憶領域であることを特徴とする請求項1に記載の情報処理装置。
  3. 前記第一領域は、前記第一のプログラムが格納されている記憶装置の領域であり、
    前記第二領域は、前記第二のプログラムが格納されている記憶装置の領域であることを特徴とする請求項1または2に記載の情報処理装置。
  4. 前記第一のプログラムは、BIOSであり、
    前記第二のプログラムは、前記第二領域を参照可能なドライバを有効にする処理を含むプログラムであることを特徴とする請求項1から3のいずれか一項に記載の情報処理装置。
  5. 前記改ざん検知処理を行うか否かを示す設定をユーザーに選択させる選択手段をさらに備えることを特徴とする請求項1から4のいずれか一項に記載の情報処理装置。
  6. 前記書き込み手段は、前記ユーザーによって選択された設定を、前記第一領域および前記第二領域の両方に書き込むことを特徴とする請求項5に記載の情報処理装置。
  7. 前記書き込み手段および前記選択手段は、前記第二のプログラムによって起動される第三のプログラムによって機能することを特徴とする請求項5または6に記載の情報処理装置。
  8. 前記第二のプログラムは、前記第一領域の設定と前記第二領域の設定とが一致していない場合、改ざん検知処理を行う設定となるように前記第一領域の設定と前記第二領域の設定とを一致させる処理をすることを特徴とする請求項1から7のいずれか一項に記載の情報処理装置。
  9. 前記第一領域の設定が改ざん検知処理を行う設定であり、かつ前記第二領域の設定が改ざん検知処理を行わない設定である場合、
    前記第二のプログラムは、前記第二領域の設定を、改ざん検知処理を行う設定に変更し、その後、前記第二領域に書き込まれている前記設定に応じて前記改ざん検知処理を行うことを特徴とする請求項8に記載の情報処理装置。
  10. 前記第一領域の設定が改ざん検知処理を行わない設定であり、かつ前記第二領域の設定が改ざん検知処理を行う設定である場合、
    前記第二のプログラムは、前記第一領域の設定を、改ざん検知処理を行う設定に変更し、その後、前記情報処理装置を再起動する処理を行うことを特徴とする請求項8に記載の情報処理装置。
  11. プログラムの起動ごとに改ざん検知処理を行う情報処理装置の起動方法であって、
    他のプログラムの改ざん検知処理を最初に行う第一のプログラムが起動されると、該第一のプログラムは、該第一のプログラムが参照可能な第一領域に書き込まれている、改ざん検知処理を行うか否かを示す設定に応じて前記改ざん検知処理を行い、
    前記第一のプログラムが起動されている時点では前記第一のプログラムが参照できない第二領域を参照可能な第二のプログラムが起動されると、該第二のプログラムは、前記第二領域に書き込まれている前記設定に応じて前記改ざん検知処理を行う
    ことを特徴とする、情報処理装置の起動方法。
  12. プログラムの起動ごとに改ざん検知処理を行う情報処理装置に用いられるプログラムであって、
    前記情報処理装置に、
    改ざん検知処理を行うか否かを示す設定を、第二のプログラムより先に他のプログラムの改ざん検知処理を行う第一のプログラムが参照可能な第一領域と、前記第一のプログラムが起動されている時点では前記第一のプログラムが参照できず、かつ、改ざん検知処理を行う前記第二のプログラムが参照可能な第二領域と、に書き込むステップと、
    前記第一領域に書き込まれている前記設定に応じて、前記第一のプログラムによって前記改ざん検知処理を行うステップと、
    前記第二領域に書き込まれている前記設定に応じて、前記第二領域を参照可能な第二のプログラムによって前記改ざん検知処理を行うステップと、
    前記第二領域を参照可能なドライバを有効にするステップと、
    前記第一領域の設定と前記第二領域の設定とが一致していない場合、改ざん検知処理を行う設定となるように前記第一領域の設定と前記第二領域の設定とを一致させる処理をするステップと
    を実行させるためのプログラム。
  13. プログラムの起動ごとに改ざん検知処理を行う情報処理装置に用いられるプログラムであって、
    前記情報処理装置に、
    改ざん検知処理を行うか否かを示す設定を、第二のプログラムより先に他のプログラムの改ざん検知処理を行う第一のプログラムが参照可能な第一領域と、前記第一のプログラムが起動されている時点では前記第一のプログラムが参照できず、かつ、改ざん検知処理を行う前記第二のプログラムが参照可能な第二領域と、に書き込むステップと、
    前記第一領域に書き込まれている前記設定に応じて、前記第一のプログラムによって前記改ざん検知処理を行うステップと、
    前記第二領域に書き込まれている前記設定に応じて、前記第二領域を参照可能な第二のプログラムによって前記改ざん検知処理を行うステップと、
    前記改ざん検知処理を行うか否かを示す設定をユーザーに選択させるステップと、
    前記ユーザーによって選択された設定を、前記第一領域および前記第二領域の両方に書き込むステップと
    を実行させるためのプログラム。
JP2018170613A 2018-09-12 2018-09-12 情報処理装置、情報処理装置の起動方法、及びプログラム Active JP7182966B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2018170613A JP7182966B2 (ja) 2018-09-12 2018-09-12 情報処理装置、情報処理装置の起動方法、及びプログラム
KR1020190106265A KR102467636B1 (ko) 2018-09-12 2019-08-29 정보 처리장치, 정보 처리장치의 제어방법, 및 기억매체
US16/560,868 US11514169B2 (en) 2018-09-12 2019-09-04 Information processing apparatus, method of controlling information processing apparatus, and storage medium
CN201910859663.1A CN110895609B (zh) 2018-09-12 2019-09-11 信息处理设备及其控制方法以及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018170613A JP7182966B2 (ja) 2018-09-12 2018-09-12 情報処理装置、情報処理装置の起動方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2020042632A JP2020042632A (ja) 2020-03-19
JP7182966B2 true JP7182966B2 (ja) 2022-12-05

Family

ID=69719200

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018170613A Active JP7182966B2 (ja) 2018-09-12 2018-09-12 情報処理装置、情報処理装置の起動方法、及びプログラム

Country Status (4)

Country Link
US (1) US11514169B2 (ja)
JP (1) JP7182966B2 (ja)
KR (1) KR102467636B1 (ja)
CN (1) CN110895609B (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2831787B1 (en) * 2012-03-30 2020-07-08 Irdeto B.V. Method and system for preventing and detecting security threats

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009009372A (ja) 2007-06-28 2009-01-15 Panasonic Corp 情報端末、クライアントサーバシステムおよびプログラム
WO2009044533A1 (ja) 2007-10-05 2009-04-09 Panasonic Corporation セキュアブート端末、セキュアブート方法、セキュアブートプログラム、記録媒体及び集積回路
JP2009301429A (ja) 2008-06-16 2009-12-24 Ricoh Co Ltd ソフトウェア改ざん検知方法、機器及び画像処理装置
JP2012118947A (ja) 2010-12-03 2012-06-21 Ricoh Co Ltd 組み込み機器、暗号化・復号方法、プログラム
JP2013149135A (ja) 2012-01-20 2013-08-01 Lenovo Singapore Pte Ltd コンピュータをブートする方法およびコンピュータ
JP2016516230A (ja) 2013-03-05 2016-06-02 ウインコール ニックスドルフ インターナショナル ゲーエムベーハーWincor Nixdorf International GmbH 高信頼端末プラットフォーム

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0666751B2 (ja) 1986-07-25 1994-08-24 日本電信電話株式会社 シグナリング信号伝送装置
US7334157B1 (en) * 2004-02-26 2008-02-19 Symantec Operating Corporation Restore of data to a computer system having different hardware
US7765393B1 (en) * 2006-07-11 2010-07-27 Network Appliance, Inc. Method and system of embedding a boot loader as system firmware
JP2009037467A (ja) * 2007-08-02 2009-02-19 Konica Minolta Business Technologies Inc 起動制御方法及び起動制御プログラム並びに画像形成装置
WO2012148422A1 (en) * 2011-04-29 2012-11-01 Hewlett-Packard Development Company, L.P. Embedded controller to verify crtm
EP2729870A4 (en) 2011-07-08 2014-12-17 Openpeak Inc SYSTEM AND METHOD FOR VALIDATING COMPONENTS DURING A STARTING PROCESS
JP6124531B2 (ja) * 2012-08-06 2017-05-10 キヤノン株式会社 情報処理システム、画像処理装置及びその制御方法、並びにプログラム
CN103810430B (zh) * 2012-11-13 2018-02-27 联想(北京)有限公司 一种控制电子设备的方法及电子设备
JP6066751B2 (ja) * 2013-01-31 2017-01-25 キヤノン株式会社 情報処理システム及びその制御方法、並びにプログラム
US11194586B2 (en) * 2013-05-01 2021-12-07 Insyde Software Corp. Secure boot override in a computing device equipped with unified-extensible firmware interface (UEFI)-compliant firmware
JP6659150B2 (ja) * 2016-02-05 2020-03-04 キヤノン株式会社 装置及びその制御方法、並びにプログラム
JP6373888B2 (ja) * 2016-03-01 2018-08-15 株式会社東芝 情報処理装置及び制御方法
JP6942601B2 (ja) 2017-10-18 2021-09-29 キヤノン株式会社 情報処理装置、その制御方法、及びプログラム
US11861011B2 (en) * 2019-06-25 2024-01-02 ZPE Systems, Inc. Secure boot process

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009009372A (ja) 2007-06-28 2009-01-15 Panasonic Corp 情報端末、クライアントサーバシステムおよびプログラム
WO2009044533A1 (ja) 2007-10-05 2009-04-09 Panasonic Corporation セキュアブート端末、セキュアブート方法、セキュアブートプログラム、記録媒体及び集積回路
JP2009301429A (ja) 2008-06-16 2009-12-24 Ricoh Co Ltd ソフトウェア改ざん検知方法、機器及び画像処理装置
JP2012118947A (ja) 2010-12-03 2012-06-21 Ricoh Co Ltd 組み込み機器、暗号化・復号方法、プログラム
JP2013149135A (ja) 2012-01-20 2013-08-01 Lenovo Singapore Pte Ltd コンピュータをブートする方法およびコンピュータ
JP2016516230A (ja) 2013-03-05 2016-06-02 ウインコール ニックスドルフ インターナショナル ゲーエムベーハーWincor Nixdorf International GmbH 高信頼端末プラットフォーム

Also Published As

Publication number Publication date
KR20200030448A (ko) 2020-03-20
JP2020042632A (ja) 2020-03-19
US11514169B2 (en) 2022-11-29
CN110895609A (zh) 2020-03-20
CN110895609B (zh) 2023-11-14
KR102467636B1 (ko) 2022-11-16
US20200082093A1 (en) 2020-03-12

Similar Documents

Publication Publication Date Title
CN109684849B (zh) 信息处理装置、其控制方法和存储介质
JP6226709B2 (ja) 画像形成装置及びその制御方法、並びにプログラム
US11669609B2 (en) Information processing apparatus, control method of the same, and storage medium
US11010153B2 (en) Information processing apparatus that detects falsification of a program, method of controlling the same, and storage medium
US11681809B2 (en) Information processing apparatus, control method, and storage medium
JP2019212114A (ja) 情報処理装置、その制御方法およびプログラム
JP2021117928A (ja) 情報処理装置とその起動方法
JP6147240B2 (ja) 情報処理装置、該装置の制御方法、並びにプログラム
JP7182966B2 (ja) 情報処理装置、情報処理装置の起動方法、及びプログラム
JP2022135443A (ja) 情報処理装置、情報処理方法及びプログラム
JP7374780B2 (ja) 情報処理装置および情報処理装置の制御方法
JP2020082441A (ja) 画像形成装置、その制御方法、及びプログラム
KR102402373B1 (ko) 정보 처리 장치 및 정보 처리 방법
JP2021140601A (ja) 情報処理装置、その制御方法、及びプログラム
JP2020053002A (ja) 情報処理装置とその制御方法、及びプログラム
JP2020154601A (ja) 情報処理装置とその制御方法、及びプログラム
JP2020052597A (ja) 情報処理装置、情報処理装置の制御方法、及び、プログラム
JP7282616B2 (ja) 情報処理装置、情報処理方法およびプログラム
US11928217B2 (en) Information processing apparatus, control method of information processing apparatus, and storage medium
JP2021128469A (ja) 情報処理装置と、情報処理装置における起動方法
JP2022157063A (ja) 情報処理装置、情報処理方法およびプログラム
JP2021114156A (ja) 情報処理装置、情報処理装置の処理方法およびプログラム
JP2023064046A (ja) 情報処理装置、及びその起動方法
JP2021117523A (ja) 情報処理装置、情報処理装置の処理方法およびプログラム
JP2023124089A (ja) 情報処理装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210826

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220428

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220510

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220707

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: 20221025

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20221122

R151 Written notification of patent or utility model registration

Ref document number: 7182966

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151