Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7826705B2 - 生成装置、生成方法、生成プログラム、および更新システム - Google Patents
[go: Go Back, main page]

JP7826705B2 - 生成装置、生成方法、生成プログラム、および更新システム - Google Patents

生成装置、生成方法、生成プログラム、および更新システム

Info

Publication number
JP7826705B2
JP7826705B2 JP2022005889A JP2022005889A JP7826705B2 JP 7826705 B2 JP7826705 B2 JP 7826705B2 JP 2022005889 A JP2022005889 A JP 2022005889A JP 2022005889 A JP2022005889 A JP 2022005889A JP 7826705 B2 JP7826705 B2 JP 7826705B2
Authority
JP
Japan
Prior art keywords
inspection
firmware
information
vendor
results
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
JP2022005889A
Other languages
English (en)
Other versions
JP2023104724A (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.)
Fuji Electric Co Ltd
Original Assignee
Fuji Electric 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 Fuji Electric Co Ltd filed Critical Fuji Electric Co Ltd
Priority to JP2022005889A priority Critical patent/JP7826705B2/ja
Publication of JP2023104724A publication Critical patent/JP2023104724A/ja
Application granted granted Critical
Publication of JP7826705B2 publication Critical patent/JP7826705B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Stored Programmes (AREA)

Description

本発明は、生成装置、生成方法、生成プログラム、および更新システムに関する。
例えば、車両に搭載された機器を制御する電子制御ユニット(ECU:Electronic Control Unit)などの組み込み機器のファームウェア(FW:firmware)が更新されることがある。こうした場合、ファームウェアには、配布前に事前に動作検証などの検査が行われており、更新対象の装置に導入した際に正常に動作することの確認が行われている。
これに関し、ファームウェアの更新に関連する技術が知られている(例えば、特許文献1から特許文献4)。
特開2020-173832号公報 特開2017-173893号公報 特開2015-97022号公報 特開2021-121963号公報
しかしながら、ファームウェアの更新の際に、ファームウェアを提供する機器ベンダにおいて更新に用いるファームウェアにどのような検査がされたのかが、ファームウェアの提供を受ける顧客には分からないことがある。そのため、顧客は、更新を適用してよいのかの判断が難しいことがある。
本発明は係る点に鑑みてなされたものであり、更新に用いるファームウェアの検査結果を、真正性を保証して提供することを可能にする生成装置、生成方法、生成プログラム、および更新システムを提供することを目的とする。
本発明の一つの態様の生成装置は、検査ベンダの秘密鍵を備えた検査ソフトウェアの実行によりファームウェアを機器に適用して検査する検査部であって、検査対象としたファームウェアを示す検査対象情報と、ファームウェアを検査した検査結果とを生成し、検査対象情報および検査結果に基づくデータに検査ベンダの秘密鍵で電子署名した検査結果署名と、検査対象情報と、検査結果とを含む検査情報を生成する、検査部と、ファームウェアに関する情報と、検査情報とに基づくデータに機器を提供する機器ベンダの秘密鍵で電子署名したレポート署名と、検査情報とを含むレポート情報を生成する生成部と、を含む。
更新に用いるファームウェアの検査結果を、真正性を保証して提供することを可能にする。
実施形態に係る更新システムを例示する図である。 実施形態に係る生成装置の機能ブロック構成を例示する図である。 実施形態に係るローダの機能ブロック構成を例示する図である。 実施形態に係るレポート情報を例示する図である。 実施形態に係るレポート情報の生成処理の動作フローを例示する図である。 実施形態に係る検査ソフトウェアの実行により行うファームウェアの検査処理の動作フローを例示する図である。 実施形態に係る検査結果を例示する図である。 実施形態に係るファームウェアの更新処理の動作フローを例示する図である。 実施形態に係る表示画面を例示する図である。 実施形態に係るコンピュータのハードウェア構成を例示する図である。
以下、図面を参照しながら、本発明のいくつかの実施形態について詳細に説明する。なお、複数の図面において対応する要素には同一の符号を付す。
例えば、機器ベンダが、提供している機器に対する更新用のファームウェアを配布することがある。この場合に、更新用のファームウェアを配布する前に、そのファームウェアに動作検証などの検査を実行し、検査が正常に成功した場合に、ファームウェアが検査済みであることを示す情報を、ファームウェアとともに提供することが考えられる。それにより、例えば、顧客は更新用のファームウェアが検査済みであることを知ることができる。
しかしながら、ファームウェアが検査済みであることを示す情報だけでは、検査結果が含まれていないため、更新用のファームウェアに対して実行された検査内容までは分からない。そのため、例えば、機器ベンダが検査結果を隠して虚偽の検査済みの情報を提供していたとしても、顧客は気づくことができず、ファームウェアの更新を実行してしまうことあがる。そのため、例えば、ファームウェアの提供を受ける顧客が、ファームウェアの更新の際に、ファームウェアにどのような検査が実行されているのかを確認することのできる技術の提供が望まれている。
以下、実施形態を更に詳細に説明する。
図1は、実施形態に係る更新システム100を例示する図である。図1において更新システム100は、例えば、生成装置101、配布サーバ102、検査対象機器103、ローダ104、および更新対象機器105を含む。生成装置101、配布サーバ102、およびローダ104は、例えば、サーバ、パーソナルコンピュータ(PC)、モバイルPC、タブレット端末などのコンピュータである。
また、生成装置101、配布サーバ102、検査対象機器103は、例えば、更新用のファームウェアを配布する機器ベンダが利用する装置である。生成装置101は、例えば、有線、無線、またはネットワークを介して配布サーバ102および検査対象機器103と通信可能に接続されている。
ローダ104および更新対象機器105は、例えば、顧客が利用する装置である。ローダ104は、例えば、配布サーバ102および更新対象機器105と、有線、無線、またはネットワークを介して通信可能に接続されている。
生成装置101は、例えば、更新用のファームウェアの検査を実行し、検査についてのレポート情報400を生成する装置である。なお、レポート情報400の詳細については後述する。生成装置101は、例えば、更新用のファームウェアを検査するための検査ソフトウェア110を備える。
検査ソフトウェア110は、例えば、ファームウェアが導入されている機器の性能などを検査するサービスを行う検査ベンダが、ファームウェアの検査のために提供しているソフトウェアである。検査ソフトウェア110は、例えば、内部に検査ベンダの秘密鍵を備えている。そのため、検査ソフトウェア110は、例えば、ファームウェアの検査を実行した後、検査結果に検査ベンダの秘密鍵で電子署名を行うことができる。なお、検査ソフトウェア110の内部の検査ベンダの秘密鍵は、例えば、機器ベンダが取り出すことができないように構成されていてよい。また、検査ソフトウェア110は、例えば、機器ベンダが改造できないように構成されていてよい。検査ソフトウェア110が、検査結果に検査ベンダの秘密鍵で電子署名を行うことで、検査結果に示される検査を検査ソフトウェア110が実行したことの真正性を証明することができる。
また、生成装置101は、例えば、レポート情報400を生成するためのソフトウェアと、機器ベンダの秘密鍵とを備えている。
生成装置101は、例えば、更新用のファームウェアの入力を受けると、検査ソフトウェア110を実行してファームウェアを検査し、その検査結果を含むレポート情報400を生成する。そして、生成装置101は、生成したレポート情報400を配布サーバ102に格納する。
配布サーバ102は、例えば、顧客のローダ104などの外部の装置からアクセスできるコンピュータであり、クラウドなどに設置されている。配布サーバ102は、例えば、生成装置101が生成したレポート情報400と、更新用のファームウェアとを記憶しており、アクセスしてきた外部の装置に提供する。
検査対象機器103は、例えば、機器ベンダの開発現場などで更新用のファームウェアの検査を行うために、更新用のファームウェアを動作させる機器である。検査対象機器103は、例えば、電子制御ユニット、インバータ、およびコントローラなどのファームウェアが動作する様々な組み込み機器を含む。
ローダ104は、例えば、機器ベンダの公開鍵と、検査ベンダの公開鍵、更新対象機器105のファームウェアを更新させるための更新ソフトウェアとを導入したコンピュータである。
ローダ104は、例えば、配布サーバ102から更新用のファームウェアと、レポート情報400とを取得する。そして、ローダ104は、レポート情報400の真正性の検査を実行する。また、ローダ104は、例えば、表示装置の表示画面に検査結果を表示したり、更新ソフトウェアを実行してファームウェアを更新対象機器105に書き込み、ファームウェアの更新を実行したりする。
更新対象機器105は、例えば、ファームウェアが動作する顧客が利用している機器である。更新対象機器105は、ファームウェアの更新時にはローダ104に接続される。更新対象機器105は、例えば、検査対象機器103と同じファームウェアが動作する機器であり、一例では同じ種別の機器である。更新対象機器105は、例えば、電子制御ユニット、インバータ、およびコントローラなどのファームウェアが動作する様々な組み込み機器を含む。
図2は、実施形態に係る生成装置101の機能ブロック構成を例示する図である。生成装置101は、例えば、制御部201、記憶部202、および通信部203を含む。制御部201は、例えば検査部211、生成部212などを含み、またその他の機能部を含んでもよい。また、検査部211は、例えば、記憶部202に記憶されている検査ソフトウェア110のプログラムを実行して、検査ソフトウェア110を動作させる。生成装置101の記憶部202は、例えば、検査ソフトウェア110のプログラム、およびレポート情報400、検査結果700などの情報を記憶している。通信部203は、例えば、制御部201の指示に従って配布サーバ102および検査対象機器103などの他の装置と通信する。これらの各部の詳細および記憶部202に格納されている情報の詳細については後述する。
図3は、実施形態に係るローダ104の機能ブロック構成を例示する図である。ローダ104は、例えば、制御部301、記憶部302、および通信部303を含む。制御部301は、例えば、ローダ104の各部を制御する。ローダ104の記憶部302は、例えば、ファームウェア、レポート情報400、検査ベンダの公開鍵、および機器ベンダ公開鍵などの情報を記憶している。通信部303は、例えば、制御部301の指示に従って配布サーバ102および更新対象機器105などの他の装置と通信する。これらの各部の詳細および記憶部302に格納されている情報の詳細については後述する。
続いて、実施形態に係る顧客に通知されるレポート情報400の例を説明する。図4は、実施形態に係るレポート情報400を例示する図である。レポート情報400は、例えば、ファームウェア情報(FW情報)、検査情報、およびレポート署名を含む。
ファームウェア情報には、例えば、検査対象のファームウェアに関する情報が登録されている。図4の例ではファームウェア情報は、ファームウェアのバージョンと、ファームウェアのハッシュ値と、ファームウェアのファイルサイズとを含む。ファームウェアのハッシュ値は、例えば、ファームウェアのデータの全体から生成したハッシュ値である。ファームウェア情報は、例えば、レポート情報400と検査対象のファームウェアとを対応づけて、確認するために用いられる。なお、ハッシュ値は、例えば、一般的なハッシュの生成技術を用いて生成されてよい。一例では、制御部201は、データを所定のハッシュ関数に入力することで、ハッシュ値を生成する。
検査情報は、例えば、検査対象情報、検査結果、および検査結果署名を含む。検査対象情報は、例えば、検査対象としたファームウェアを示す情報である。検査対象情報は、例えば、ファームウェアの一部分のデータを指定する指定情報と、指定情報で指定される一部分のデータのハッシュ値とを含む。図4の例では指定情報として、検査対象となったファームウェアのデータの所定領域を指定するハッシュ取得範囲が示されている。ハッシュ取得範囲は、例えば、ハッシュを取得した部分の領域を示す開始オフセットおよび終了オフセットなどの情報である。
なお、指定情報は、例えば、ファームウェアのデータの任意の領域を指定する。一例では、ハッシュ指定情報が指定するファームウェアのデータの領域は、ランダムに決定される。検査ソフトウェア110が、指定情報を随時決定することで、レポート情報400の検査情報を偽装することを難しくすることができる。
検査結果は、例えば、検査ソフトウェア110が実行したファームウェアの検査の結果を示す情報である。検査結果は、例えば、テキストおよびHTML(HyperText Markup Language)のデータまたはファイルとして埋め込まれる。検査結果署名は、例えば、検査ソフトウェア110が検査対象情報および検査結果が改ざんされていないことを、検査ソフトウェア110を提供する検査ベンダが証明するための署名データである。例えば、検査結果署名は、検査ソフトウェア110の内部に備えられている検査ベンダの秘密鍵で、検査対象情報および検査結果を結合して得たデータのハッシュ値に署名したデータである。
レポート署名は、例えば、ファームウェア情報および検査情報に改ざんが行われていないことを機器ベンダが証明するための署名データである。レポート署名は、例えば、生成装置101が備えている機器ベンダの秘密鍵で、ファームウェア情報および検査情報を結合して得たデータのハッシュ値に署名したデータである。
続いて、実施形態に係るレポート情報400の生成について説明する。図5は、実施形態に係るレポート情報400の生成処理の動作フローを例示する図である。例えば、生成装置101の制御部201は、ファームウェアの検査指示が入力されると、図5の動作フローを開始する。一例では、図5の動作フローは、更新するファームウェアを配布するために配布サーバ102に格納する際に実行される。
ステップ501(以降、ステップを“S”と記載し、例えば、S501と表記する)において制御部201は、検査対象として指定されたファームウェアを、検査ソフトウェア110に入力し、検査ソフトウェア110に検査対象のファームウェアの検査処理を指示する。
S502において制御部201は、検査ソフトウェア110を実行してファームウェアの検査処理を実行する。
図6は、制御部201が、検査ソフトウェア110の実行により行うファームウェアの検査処理の動作フローを例示する図である。制御部201により実行される検査ソフトウェア110は、例えば、検査対象のファームウェアの検査処理の実行指示が入力されると、図6の動作フローを開始する。なお、以下の図6の動作フローにおいて検査ソフトウェア110が実行する動作は、制御部201が検査ソフトウェア110を実行することで実行される。
S601において検査ソフトウェア110は、レポート情報400の検査対象情報を生成する。例えば、検査ソフトウェア110は、検査対象のファームウェアの任意の一部分のハッシュ値を取得する。そして、検査ソフトウェア110は、例えば、ハッシュを取得した一部分の領域を示す指定情報(例えば、開始オフセットおよび終了オフセット)とそのハッシュ値とを組にした情報を検査対象情報として生成する。
S602において検査ソフトウェア110は、検査対象のファームウェアを検査対象機器103に送信し、検査対象機器103を検査して、検査結果を出力する。なお、検査は、例えば、ファームウェアの既存の検査ソフトウェアで実行する場合と同様に実行することができる。例えば、検査ソフトウェア110は、異常を引き起こす通信メッセージを検査対象のファームウェアが動作する検査対象機器103に送信し、検査対象機器103からの応答を確認することで検査を実施する。
S603において検査ソフトウェア110は、例えば、実施した検査の結果を、テキストまたはHTMLなどのファイル形式で検査結果として生成する。
S604において検査ソフトウェア110は、例えば、検査対象情報、検査結果、および検査結果署名を含む検査情報を生成して出力し、本動作フローは終了し、フローはS503に進む。なお、検査ソフトウェア110は、例えば、検査ベンダの秘密鍵により検査結果または検査結果のハッシュ値に電子署名を行って検査結果署名を取得する。検査結果署名は、例えば、検査結果が確かに検査ソフトウェア110の出力であることを証明する情報であり、検査対象情報、検査結果に検査ベンダの秘密鍵で署名を行い、得られたデータである。
S503において制御部201は、レポート情報400のファームウェア情報を生成する。制御部201は、例えば、検査対象のファームウェアに格納されているバージョン情報と、ファームウェアのファイルサイズ、およびファームウェアのハッシュ値とを含む。なお、ファームウェアのハッシュ値は、例えば、ファームウェアの全体から生成したハッシュ値である。
S504において制御部201は、レポート署名を生成する。例えば、制御部201は、検査ソフトウェア110から受け取った検査情報と、S504で取得したファームウェア情報とを結合して得たデータのハッシュ値に、機器ベンダの秘密鍵で署名を行い、レポート署名を生成する。
S505において制御部201は、検査情報と、ファームウェア情報と、レポート署名とを含むレポート情報400を生成する。
S506において制御部201は、更新用のファームウェアと、そのファームウェアに対して生成したレポート情報400とを配布サーバ102に格納し、本動作フローは終了する。例えば、制御部201は、更新用のファームウェアと、そのファームウェアに対して生成したレポート情報400を配布サーバ102に送信し、配布サーバ102の記憶装置に記憶させる。
なお、配布サーバ102は、更新用のファームウェアとレポート情報400とを受信すると、更新用のファームウェアとレポート情報400とを記憶装置における外部からアクセス可能な記憶領域に格納する。例えば、配布サーバ102は、レポート情報400に格納されているファームウェア情報と同様のファームウェア情報を、ファームウェアと、レポート情報400の格納先を示す情報と結合してファームウェアパッケージとして格納する。そして、制御部201は、例えば、ファームウェアパッケージを外部からアクセス可能な記憶領域に格納する。また、別の実施形態では制御部201は、例えば、更新用のファームウェアとレポート情報400とをパッケージとして、外部からアクセス可能な記憶領域に格納する。
以上で述べたように、実施形態によれば、検査ソフトウェア110が備える検査ベンダの秘密鍵を用いて機器ベンダが改ざんできない検査結果を含むレポート情報400を生成し、配布サーバ102から配布することができる。そのため、顧客はレポート情報400を参照することで、配布サーバ102から入手したファームウェアに対してどのような検査が実行されているかを知ることができる。
なお、図7は、実施形態に係る検査結果700を例示する図である。検査結果700には、例えば、検査で実行されたそれぞれの検査についての結果が登録されている。例えば、検査ソフトウェア110が、通信メッセージの規定長を超過したか否かの検査を実施したとする。検査結果700には、この場合の検査と対応づけて、検査の結果に問題がなかったことを示す「問題なし」の情報が登録されている。図7の例では、通信メッセージの書式異常、通信シーケンスの途中断絶、および通信タイムアウトについても、同様に「問題なし」の情報が登録されている。そのため、レポート情報400の検査結果を参照することで、顧客は更新に用いるファームウェアに異常が生じていないことを確認することができる。また、検査を行った検査ベンダが保証している検査結果を参照することができるため、顧客は安心してファームウェアの更新などの処理を実行することができる。
続いて、顧客が所有するローダ104が実行するファームウェアの更新処理の例を説明する。図8は、実施形態に係るファームウェアの更新処理の動作フローを例示する図である。例えば、ローダ104の制御部301は、更新対象機器105のファームウェアの更新指示が入力されると、図8の動作フローを開始する。
S801においてローダ104の制御部301は、更新に用いるファームウェアを取得する。例えば、制御部301は、配布サーバ102から更新対象機器105の更新用のファームウェアを取得する。
S802においてローダ104の制御部301は、更新用のファームウェアと対応するレポート情報400を、格納先から取得する。例えば、ローダ104の制御部301は、配布サーバ102の記憶装置の記憶領域から更新用のファームウェアと対応するレポート情報400を取得する。なお、レポート情報400の格納先は、例えば、ファームウェアに記述されている。また、別の実施形態では、レポート情報400とファームウェアとがパッケージとして配布サーバ102から取得される。
S803において制御部301は、レポート情報400のレポート署名を確認する。例えば、制御部301は、機器ベンダの公開鍵でレポート情報400のレポート署名を検証し、レポート情報400が改ざんされていないことを確認する。例えば、制御部301は、レポート情報400のファームウェア情報および検査情報のデータのハッシュ値を取得し、レポート署名を機器ベンダの公開鍵で復号して得た値と一致するかを確認する。それにより、制御部301は、例えば、レポート情報400が改ざんされていないことを確認する。レポート情報400が改ざんされている場合、制御部301は、例えば、S803においてNOと判定し、この場合、本動作フローは終了する。一方、レポート情報400が改ざんされていない場合、制御部301は、例えば、S803においてYESと判定し、この場合、フローはS804に進む。
S804において制御部301は、更新用のファームウェアの情報が正しいかを確認する。例えば、制御部301は、レポート情報400のファームウェア情報に含まれるファームウェアのファイルサイズおよびファームウェアのハッシュ値と、更新用のファームウェアのファイルサイズおよびファームウェアのハッシュ値とが一致するかを確認する。情報が一致しない場合、制御部301は、例えば、S804においてNOと判定し、この場合、本動作フローは終了する。一方、情報が一致している場合、制御部301は、例えば、S804においてYESと判定し、この場合、フローはS805に進む。
S805において制御部301は、検査結果が正当な検査ソフトウェア110で生成されているかを確認する。例えば、制御部301は、レポート情報400の検査結果署名を検査ベンダの公開鍵で検証し、検査結果が正当な検査ソフトウェア110で生成されていることの真正性を確認する。例えば、制御部301は、レポート情報400に含まれる検査対象情報および検査結果に基づくデータのハッシュ値と、検査結果署名を検査ベンダの公開鍵で復号して得たハッシュ値とが一致する場合に、検査結果が正当な検査ソフトウェア110で生成されていると判定する。検査結果が正当な検査ソフトウェア110で生成されていない場合(S805がNO)、本動作フローは終了する。一方、検査結果が正当な検査ソフトウェア110で生成されている場合(S805がYES)、フローはS806に進む。
S806において制御部301は、レポート情報400の検査結果が検査対象としているファームウェアと、更新用のファームウェアとが一致しているかを確認する。例えば、制御部301は、レポート情報400の検査対象情報の指定情報で指定される更新用のファームウェアの一部分の領域のデータからハッシュ値を生成する。そして、制御部301は、更新用のファームウェアの一部分の領域のデータから得たハッシュ値と、検査対象情報のハッシュ値とが一致している場合に、検査結果が検査対象としているファームウェアと、更新用のファームウェアとが一致していると判定する。検査結果が検査対象としているファームウェアと、更新用のファームウェアとが一致していない場合(S806がNO)、本動作フローは終了する。一方、検査結果が検査対象としているファームウェアと、更新用のファームウェアとが一致している場合(S806がYES)、フローはS807に進む。
S807において制御部301は、レポート情報400に基づいて検査結果の表示画面900を表示する。
図9は、実施形態に係る表示画面900を例示する図である。図9の例では、表示画面900は、確認結果と検査結果とを含む。確認結果は、例えば、レポート情報の改ざんの確認結果と、検査されたFWと更新FWとの一致の確認結果と、検査結果の真正性の確認結果とを含む。レポート情報の改ざんの確認結果には、例えば、S803の処理で実行されるレポート情報400の改ざんの確認結果が登録されている。また、検査されたFWと更新FWとの一致の確認結果には、例えば、S806の処理で実行される検査されたFWと更新FWとの一致の確認結果が登録される。検査結果の真正性の確認結果には、例えば、S805の検査結果の真正性の確認結果が登録される。
また、表示画面900の検査結果にはレポート情報400に含まれる検査結果が登録される。図9の例では、図7の検査結果700が表示画面900に検査結果として表示されている。
S808において制御部301は、更新用のファームウェアを更新対象機器105に書き込んで更新対象機器105のファームウェアを更新用のファームウェアで更新し、本動作フローは終了する。
以上で述べたように、実施形態によれば、更新用のファームウェアが検査ソフトウェア110で検査されていることの真正性を保証して検査結果を顧客に提供することができる。それにより、顧客は、ファームウェアの更新の妥当性を判断することが可能である。例えば、顧客は検査結果の表示画面900を確認することで、ファームウェアの更新後に機器が規定の数値を満たす性能を有していることを確認することができる。そのため、顧客は、例えば、更新を適用すべきか否かを判断することが可能である。
一例として、例えば、機器ベンダが検査で定められている規定を満たしていないファームウェアを配布した場合にも、その検査結果が顧客に提供される。そのため、顧客は、検査結果を見ることでファームウェアの更新が妥当ではないことを判断することができる。また、検査結果が顧客に提供されるため、例えば、機器ベンダも、不正なファームウェアを配布することを抑制される。一例として、ファームウェアの更新後に検査結果において、機器が規定の性能条件を満たさなかったとする。この場合にも、検査結果の内容を機器が規定の性能条件を満たすように改ざんしてファームウェアを配布するといった、検査結果の偽装を抑制することができる。
また、実施形態では、レポート情報400に検査対象としたファームウェアの一部分の領域のハッシュ値と、その領域を指定する指定情報とが含まれている。そのため、検査結果が、更新用のファームウェアに対する検査の内容であることを顧客側で確認することが可能になる。従って、例えば、別のファームウェアで得た検査結果を、更新用のファームウェアの検査結果として偽装したりすることを抑制することができる。
なお、上述の実施形態において図6の処理では制御部201は、例えば、検査部211として動作する。S505の処理では制御部201は、例えば、生成部212として動作する。
図10は、実施形態に係る生成装置101、配布サーバ102、およびローダ104など装置を実現するためのコンピュータ1000のハードウェア構成を例示する図である。図10のコンピュータのハードウェア構成は、例えば、プロセッサ1001、メモリ1002、記憶装置1003、読取装置1004、通信インタフェース1006、および入出力インタフェース1007を備える。なお、プロセッサ1001、メモリ1002、記憶装置1003、読取装置1004、通信インタフェース1006、入出力インタフェース1007は、例えば、バス1008を介して互いに接続されている。
プロセッサ1001は、例えば、シングルプロセッサであっても、マルチプロセッサやマルチコアであってもよい。プロセッサ1001は、メモリ1002を利用して例えば上述の動作フローの手順を記述したプログラムを実行することにより、上述した各部の一部または全部の機能を提供する。例えば、生成装置101のプロセッサ1001は、記憶装置1003に格納されているプログラムを読み出して実行することで、制御部201、検査部211、および生成部212として動作する。また、例えば、ローダ104のプロセッサ1001は、記憶装置1003に格納されているプログラムを読み出して実行することで、制御部301として動作する。
メモリ1002は、例えば半導体メモリであり、RAM領域およびROM領域を含んでいる。記憶装置1003は、例えばハードディスク、フラッシュメモリ等の半導体メモリ、または外部記憶装置である。なお、RAMは、Random Access Memoryの略称である。また、ROMは、Read Only Memoryの略称である。
読取装置1004は、プロセッサ1001の指示に従って着脱可能記憶媒体1005にアクセスする。着脱可能記憶媒体1005は、例えば、半導体デバイス、磁気的作用により情報が入出力される媒体、光学的作用により情報が入出力される媒体などにより実現される。なお、半導体デバイスは、例えば、USB(Universal Serial Bus)メモリである。また、磁気的作用により情報が入出力される媒体は、例えば、磁気ディスクである。光学的作用により情報が入出力される媒体は、例えば、CD-ROM、DVD、Blu-ray Disc等(Blu-rayは登録商標)である。CDは、Compact Discの略称である。DVDは、Digital Versatile Diskの略称である。
生成装置101の記憶部202は、例えば、メモリ1002、記憶装置1003、着脱可能記憶媒体1005などを含む。例えば、生成装置101の記憶装置1003は、ファームウェア、レポート情報400、内部に検査ベンダの秘密鍵を含む検査ソフトウェア110、検査ベンダの公開鍵、並びに機器ベンダの秘密鍵および公開鍵を記憶している。
配布サーバ102の記憶装置は、例えば、ファームウェア、およびファームウェアと対応するレポート情報400を記憶している。
ローダ104の記憶部302は、例えば、メモリ1002、記憶装置1003、着脱可能記憶媒体1005などを含む。例えば、ローダ104の記憶装置1003は、ファームウェア、レポート情報400、検査ベンダの公開鍵、および機器ベンダ公開鍵を記憶している。
通信インタフェース1006は、例えば、プロセッサ1001の指示に従って、他の装置と通信する。一例では、通信インタフェース1006は、例えば、有線通信、無線通信、およびネットワークを介した通信などを用いて他の装置とデータを送受信する。
通信インタフェース1006は、例えば、生成装置101の通信部203の一例である。生成装置101の通信インタフェース1006は、例えば、プロセッサ1001の指示に従って、配布サーバ102および検査対象機器103と通信する。
配布サーバの通信インタフェース1006は、例えば、プロセッサ1001の指示に従って、生成装置101およびローダ104と通信する。
また、通信インタフェース1006は、例えば、ローダ104の通信部303の一例である。ローダ104の通信インタフェース1006は、例えば、プロセッサ1001の指示に従って、配布サーバ102および更新対象機器105と通信する。
入出力インタフェース1007は、例えば、入力装置および出力装置との間のインタフェースである。入力装置は、例えばユーザからの指示を受け付けるキーボード、マウス、タッチパネルなどのデバイスである。出力装置は、例えばディスプレーなどの表示装置、およびスピーカなどの音声装置である。
例えば、生成装置101の入出力インタフェース1007は、検査対象機器103と接続するためのインタフェースを含む。また、ローダ104の入出力インタフェース1007は、例えば、更新対象機器105と接続するためのインタフェースを含む。また、ローダ104の入出力インタフェース1007は、表示装置と接続されていてよく、ローダ104のプロセッサ1001は、例えば、入出力インタフェース1007を介して接続された表示装置に表示画面900を表示させる。
実施形態に係る各プログラムは、例えば、下記の形態で生成装置101、配布サーバ102、およびローダ104に提供される。
(1)記憶装置1003に予めインストールされている。
(2)着脱可能記憶媒体1005により提供される。
(3)プログラムサーバなどのサーバから提供される。
なお、図10を参照して述べたコンピュータ1000のハードウェア構成は、例示であり、実施形態はこれに限定されるものではない。例えば、上述の構成の一部が、削除されてもよく、また、新たな構成が追加されてもよい。また、別の実施形態では、例えば、上述の一部または全部の機能がFPGA、SoC、ASIC、およびPLDなどによるハードウェアとして実装されてもよい。なお、FPGAは、Field Programmable Gate Arrayの略称である。SoCは、System-on-a-chipの略称である。ASICは、Application Specific Integrated Circuitの略称である。PLDは、Programmable Logic Deviceの略称である。
以上において、いくつかの実施形態が説明される。しかしながら、実施形態は上記の実施形態に限定されるものではなく、上述の実施形態の各種変形形態および代替形態を包含するものとして理解されるべきである。例えば、各種実施形態は、その趣旨および範囲を逸脱しない範囲で構成要素を変形して具体化できることが理解されよう。また、前述した実施形態に開示されている複数の構成要素を適宜組み合わせることにより、種々の実施形態が実施され得ることが理解されよう。更には、実施形態に示される全構成要素からいくつかの構成要素を削除して、または実施形態に示される構成要素にいくつかの構成要素を追加して種々の実施形態が実施され得ることが当業者には理解されよう。
100 :更新システム
101 :生成装置
102 :配布サーバ
103 :検査対象機器
104 :ローダ
105 :更新対象機器
110 :検査ソフトウェア
201 :制御部
202 :記憶部
203 :通信部
211 :検査部
212 :生成部
301 :制御部
302 :記憶部
303 :通信部
400 :レポート情報
700 :検査結果
900 :表示画面
1000 :コンピュータ
1001 :プロセッサ
1002 :メモリ
1003 :記憶装置
1004 :読取装置
1005 :着脱可能記憶媒体
1006 :通信インタフェース
1007 :入出力インタフェース
1008 :バス

Claims (7)

  1. 検査ベンダの秘密鍵を備えた検査ソフトウェアの実行によりファームウェアを機器に適用して検査する検査部であって、検査対象とした前記ファームウェアを示す検査対象情報と、前記ファームウェアを検査した検査結果とを生成し、前記検査対象情報および前記検査結果に基づくデータに前記検査ベンダの秘密鍵で電子署名した検査結果署名と、前記検査対象情報と、前記検査結果とを含む検査情報を生成する、検査部と、
    前記ファームウェアに関する情報と、前記検査情報とに基づくデータに前記機器を提供する機器ベンダの秘密鍵で電子署名したレポート署名と、前記検査情報とを含むレポート情報を生成する生成部と、
    を含む、生成装置。
  2. 前記検査対象情報は、前記ファームウェアの一部分のデータを指定する指定情報と、前記指定情報で指定される前記一部分のデータのハッシュ値とを含む、請求項1に記載の生成装置。
  3. 前記ファームウェアに関する情報は、前記ファームウェアのデータの全体のハッシュ値を含む、請求項1または2に記載の生成装置。
  4. 前記検査結果は、前記ファームウェアが適用された前記機器が、所定の性能条件を満たしているかを示す情報を含む、請求項1から3のいずれか1項に記載の生成装置。
  5. 生成装置が実行する生成方法であって
    前記生成装置が、検査ベンダの秘密鍵を備えた検査ソフトウェアの実行によりファームウェアを機器に適用して検査するステップであって、検査対象とした前記ファームウェアを示す検査対象情報と、前記ファームウェアを検査した検査結果とを生成し、前記検査対象情報および前記検査結果に基づくデータに前記検査ベンダの秘密鍵で電子署名した検査結果署名と、前記検査対象情報と、前記検査結果とを含む検査情報を生成する、検査するステップと、
    前記生成装置が、前記ファームウェアに関する情報と、前記検査情報とに基づくデータに前記機器を提供する機器ベンダの秘密鍵で電子署名したレポート署名と、前記検査情報とを含むレポート情報を生成するステップと、
    を含む、生成方法。
  6. 検査ベンダの秘密鍵を備えた検査ソフトウェアの実行によりファームウェアを機器に適用して検査することであって、検査対象とした前記ファームウェアを示す検査対象情報と、前記ファームウェアを検査した検査結果とを生成し、前記検査対象情報および前記検査結果に基づくデータに前記検査ベンダの秘密鍵で電子署名した検査結果署名と、前記検査対象情報と、前記検査結果とを含む検査情報を生成する、検査することと、
    前記ファームウェアに関する情報と、前記検査情報とに基づくデータに前記機器を提供する機器ベンダの秘密鍵で電子署名したレポート署名と、前記検査情報とを含むレポート情報を生成することと、
    を含む処理を、生成装置に実行させる生成プログラム。
  7. 生成装置と、
    ローダと、
    を含む、更新システムであって、
    前記生成装置は、
    検査ベンダの秘密鍵を備えた検査ソフトウェアの実行によりファームウェアを機器に適用して検査する検査部であって、検査対象とした前記ファームウェアを示す検査対象情報と、前記ファームウェアを検査した検査結果とを生成し、前記検査対象情報および前記検査結果に基づくデータに前記検査ベンダの秘密鍵で電子署名した検査結果署名と、前記検査対象情報と、前記検査結果とを含む検査情報を生成する、検査部と、
    前記ファームウェアに関する情報と、前記検査情報とに基づくデータに前記機器を提供する機器ベンダの秘密鍵で電子署名したレポート署名と、前記検査情報とを含むレポート情報を生成する生成部と、
    を含み、
    前記ローダは、
    前記レポート情報の前記検査情報に含まれる前記検査結果署名と、前記検査ベンダの公開鍵とを用いて、前記検査情報に含まれる前記検査結果が前記検査ソフトウェアにより生成されていることを検証し、
    前記検査結果が前記検査ソフトウェアにより生成されている場合に、前記検査結果を表示装置に表示させ、
    前記ファームウェアで更新対象機器を更新する、
    ことを特徴とする、更新システム。




JP2022005889A 2022-01-18 2022-01-18 生成装置、生成方法、生成プログラム、および更新システム Active JP7826705B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2022005889A JP7826705B2 (ja) 2022-01-18 2022-01-18 生成装置、生成方法、生成プログラム、および更新システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2022005889A JP7826705B2 (ja) 2022-01-18 2022-01-18 生成装置、生成方法、生成プログラム、および更新システム

Publications (2)

Publication Number Publication Date
JP2023104724A JP2023104724A (ja) 2023-07-28
JP7826705B2 true JP7826705B2 (ja) 2026-03-10

Family

ID=87379555

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022005889A Active JP7826705B2 (ja) 2022-01-18 2022-01-18 生成装置、生成方法、生成プログラム、および更新システム

Country Status (1)

Country Link
JP (1) JP7826705B2 (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005222341A (ja) 2004-02-05 2005-08-18 Trend Micro Inc 情報機器上および伝送経路上でのプログラム分析によるセキュリティの確保
JP2007299222A (ja) 2006-04-28 2007-11-15 Nec Electronics Corp データ更新方法、データ更新プログラム、及びそれらを用いた情報端末装置
JP2015058896A (ja) 2013-09-20 2015-03-30 国立大学法人名古屋大学 書換検出システム、書換検出装置及び情報処理装置
JP2018055645A (ja) 2016-09-30 2018-04-05 株式会社日立製作所 計算機システム、計算機システムによるソフトウェアの更新方法、及び、そのためのプログラム
JP2021072047A (ja) 2019-11-01 2021-05-06 株式会社東芝 セキュリティ管理システム及びセキュリティ管理方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005222341A (ja) 2004-02-05 2005-08-18 Trend Micro Inc 情報機器上および伝送経路上でのプログラム分析によるセキュリティの確保
JP2007299222A (ja) 2006-04-28 2007-11-15 Nec Electronics Corp データ更新方法、データ更新プログラム、及びそれらを用いた情報端末装置
JP2015058896A (ja) 2013-09-20 2015-03-30 国立大学法人名古屋大学 書換検出システム、書換検出装置及び情報処理装置
JP2018055645A (ja) 2016-09-30 2018-04-05 株式会社日立製作所 計算機システム、計算機システムによるソフトウェアの更新方法、及び、そのためのプログラム
JP2021072047A (ja) 2019-11-01 2021-05-06 株式会社東芝 セキュリティ管理システム及びセキュリティ管理方法

Also Published As

Publication number Publication date
JP2023104724A (ja) 2023-07-28

Similar Documents

Publication Publication Date Title
CN101960464B (zh) 信息处理装置
US20250103321A1 (en) Automated deployment of changes to applications on a cloud computing platform
US7788730B2 (en) Secure bytecode instrumentation facility
US11138343B2 (en) Multiple signatures in metadata for the same data record
US20070079112A1 (en) Secure execution environment by preventing execution of unautorized boot loaders
CN102289612A (zh) 用于安全协处理器中的n元局部性的系统和方法
CN107403089A (zh) 基于应用程序的资源篡改识别方法和装置
CN114547521A (zh) 基于权限的交互式接口发布方法、装置及电子设备
US8079028B2 (en) Information processing device and method, recording medium and program
US10129278B2 (en) Detecting malware in content items
CN111857883B (zh) 页面数据校验方法、装置、电子设备及存储介质
JP7826705B2 (ja) 生成装置、生成方法、生成プログラム、および更新システム
CN111666219A (zh) 业务功能的验证方法和装置、计算机系统和存储介质
KR20100028026A (ko) 디지털 컨텐츠를 변경 및 리컴파일해야 함이 없이 디지털 컨텐츠의 기능들을 위한 활성화 키들을 변경 및 추가하기 위한 방법 및 장치
CN115391168A (zh) 沙盒测试方法、装置、设备及存储介质
JP2020129166A (ja) 計算機システム、インシデントによる業務システムへの影響の分析方法、及び分析装置
CN115997210B (zh) 攻击手段评价装置、攻击手段评价方法以及计算机能读取的存储介质
JP2025107928A (ja) 脆弱性影響評価支援装置、及び脆弱性影響評価支援方法
JP7622870B2 (ja) 判定システム、判定方法及びプログラム
WO2020261430A1 (ja) 情報処理装置、情報処理方法及び情報処理プログラム
WO2019142267A1 (ja) セキュリティ設計装置、セキュリティ設計方法およびセキュリティ設計プログラム
JP2024544759A (ja) 安全なソフトウェア・コンパイルおよびソフトウェア検証
US20230396444A1 (en) Data transaction management apparatus, data transaction management method, and computer readable medium
WO2019142335A1 (ja) セキュリティ設計装置、セキュリティ設計方法およびセキュリティ設計プログラム
KR20230119548A (ko) 소스 코드 관리 방법 및 시스템

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20231019

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20241216

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20251006

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20251014

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20251105

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20260209

R150 Certificate of patent or registration of utility model

Ref document number: 7826705

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150