JP2020188345A - 制御基板、制御装置、情報配信システム及び復号方法 - Google Patents

制御基板、制御装置、情報配信システム及び復号方法 Download PDF

Info

Publication number
JP2020188345A
JP2020188345A JP2019090967A JP2019090967A JP2020188345A JP 2020188345 A JP2020188345 A JP 2020188345A JP 2019090967 A JP2019090967 A JP 2019090967A JP 2019090967 A JP2019090967 A JP 2019090967A JP 2020188345 A JP2020188345 A JP 2020188345A
Authority
JP
Japan
Prior art keywords
puf
information
control board
bit
circuit
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.)
Ceased
Application number
JP2019090967A
Other languages
English (en)
Inventor
西前 悦史
Etsushi Nishimae
悦史 西前
成寿 亀尾
Shigetoshi Kameo
成寿 亀尾
将仁 都築
Masahito Tsuzuki
将仁 都築
安西 史圭
Fumiyoshi Anzai
史圭 安西
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.)
Mitsubishi Heavy Industries Ltd
Original Assignee
Mitsubishi Heavy Industries 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 Mitsubishi Heavy Industries Ltd filed Critical Mitsubishi Heavy Industries Ltd
Priority to JP2019090967A priority Critical patent/JP2020188345A/ja
Publication of JP2020188345A publication Critical patent/JP2020188345A/ja
Ceased legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

【課題】PUFに基づくデバイス固有データのエラー訂正を行うために必要な情報量を低減する。【解決手段】制御基板は、電源が供給されている間、個体固有のPUF情報を出力するPUF回路と、前記PUF回路が出力するPUF情報に対しエラー訂正処理を施した訂正後PUF情報を出力する訂正部と、暗号化された被暗号化情報を入力し、当該被暗号化情報を前記訂正部が出力する訂正後PUF情報に基づく暗号鍵で復号する復号部と、を備える。前記訂正部は、前記PUF回路から複数回入力したPUF情報の演算結果に基づいて、当該PUF情報のうち0、1のいずれとなるかが不定である不定ビットを特定するとともに、当該不定ビットを0又は1の値で上書きして前記訂正後PUF情報を生成する。【選択図】図2A

Description

本発明は、制御基板、制御装置、情報配信システム及び復号方法に関する。
組込みシステムのソフトウェアを保護する手法として、TPM(Trusted Platform Module)を使った暗号化による保護や、環境変化を検知してソフトウェアを消去する手法が提案されている。また、物理的複製困難関数(Physically Unclonable Function;PUF)と呼ばれる、半導体チップの製造ばらつき、物理特性の違いなどの物理量を当該半導体チップの固有値として出力し、その真贋判定に用いることが提案されている。さらには当該半導体チップの固有値を暗号鍵に利用することが提案されている。
上記に関連する技術として、特許文献1には、ヘルパーデータを用いて、PUFに基づくデバイス固有データの誤りを訂正する技術が開示されている。
特開2015−065495号公報
デバイス固有データに生じる誤りを訂正するためには、ヘルパーデータとして事前に記録しておくべき情報量(データサイズ)が大きくなる。さらには、FPGAに大規模なエラー訂正回路を実装すると、FPGAリソースを消費してしまう場合がある。
本発明の少なくとも一実施形態は、PUFに基づくデバイス固有データのエラー訂正を行うために必要な情報量を低減可能な制御基板、制御装置、情報配信システム及び復号方法を提供することを目的とする。
本発明の第1の態様によれば、制御基板は、電源が供給されている間、個体固有のPUF情報を出力するPUF回路と、前記PUF回路が出力するPUF情報に対しエラー訂正処理を施した訂正後PUF情報を出力する訂正部と、暗号化された被暗号化情報を入力し、当該被暗号化情報を前記訂正部が出力する訂正後PUF情報に基づく暗号鍵で復号する復号部と、を備える。前記訂正部は、前記PUF回路から複数回入力したPUF情報の演算結果に基づいて、当該PUF情報のうち0、1のいずれとなるかが不定である不定ビットを特定するとともに、当該不定ビットを0又は1の値で上書きして前記訂正後PUF情報を生成する。
また、本発明の第2の態様によれば、前記PUF情報の演算結果とは、PUF情報のビットごとの積算結果である。
また、本発明の第3の態様によれば、前記PUF情報の演算結果とは、1回目に取得されたPUF情報と2回目以降に取得されたPUF情報との排他的論理和に基づく結果である。
また、本発明の第4の態様によれば、前記訂正部は、予め定められた同一の値で、全ての前記不定ビットを上書きする。
また、本発明の第5の態様によれば、前記訂正部は、当該PUF情報のうち0、1が特定できたビットの値から演算した結果で、前記不定ビットの値を決める。
また、本発明の第6の態様によれば、前記訂正部は、事前に外部記憶装置に記録された所定のデータ列に示される0又は1の情報を、前記不定ビットのそれぞれに上書きする。
また、本発明の第7の態様によれば、上述の制御基板は、前記データ列のビット数と、前記不定ビットの数とが一致していない場合に、前記PUF回路の動作条件を変更する変更部をさらに備える。
また、本発明の第8の態様によれば、上述の制御基板は、前記被暗号化情報が正しく復号されたか否かを判定し、当該被暗号化情報が正しく復号されていなかった場合に、前記PUF回路の動作条件を変更する変更部をさらに備える。
また、本発明の第9の態様によれば、前記変更部は、前記動作条件として、前記PUF回路に供給される電源電圧を変更する。
また、本発明の第10の態様によれば、前記変更部は、前記動作条件として、前記PUF回路の雰囲気温度を変更する。
また、本発明の第11の態様によれば、前記被暗号化情報は、制御プログラムを復号するための共通暗号鍵である。
また、本発明の第12の態様によれば、制御装置は、上述の制御基板を備える。
また、本発明の第13の態様によれば、情報配信システムは、上述の制御基板と、情報配信装置と、を備え、前記情報配信装置は、前記制御基板に実装された前記PUF回路から、事前に前記暗号鍵を取得して記録し、記録した前記暗号鍵を用いて前記被暗号化情報を生成するとともに、前記制御基板に対し当該被暗号化情報を配信する。
また、本発明の第14の態様によれば、復号方法は、電源が供給されている間、制御基板のPUF回路から個体固有のPUF情報を出力するステップと、前記制御基板の訂正部から、前記PUF回路が出力するPUF情報に対しエラー訂正処理を施した訂正後PUF情報を出力するステップと、暗号化された被暗号化情報を入力し、当該被暗号化情報を前記訂正部が出力する訂正後PUF情報に基づく暗号鍵で復号するステップと、を有する。前記訂正後PUF情報を出力するステップでは、前記PUF回路から複数回入力したPUF情報の演算結果に基づいて、当該PUF情報のうち0、1のいずれとなるかが不定である不定ビットを特定するとともに、当該不定ビットを0又は1の値で上書きして前記訂正後PUF情報を生成する。
上述の発明の各態様によれば、PUFに基づくデバイス固有データのエラー訂正を行うために必要な情報量を低減できる。
本発明の一実施形態に係る制御装置の製造工程の概要を示す図である。 本発明の一実施形態に係るPUF回路等の構成を示す図である。 本発明の一実施形態に係る制御基板の機能構成を示す図である。 本発明の一実施形態に係るPUF回路の模式図を示す図である。 本発明の一実施形態に係るPUF回路の特性を説明するための図である。 本発明の一実施形態に係るレスポンス値取得冶具及び情報配信装置が実行する処理フローを示す図である。 本発明の一実施形態に係る情報配信装置が実行するエラー訂正処理の処理フローを示す図である。 本発明の一実施形態に係る情報配信装置のエラー訂正処理を説明するための図である。 本発明の一実施形態に係る情報配信装置のエラー訂正処理を説明するための図である。 本発明の一実施形態に係る制御基板及び情報配信装置が実行する処理フローを示す図である。 本発明の一実施形態に係る制御基板が実行する処理フローを示す図である。 本発明の一実施形態に係る情報配信装置が実行するエラー訂正処理の処理フローを示す図である。 本発明の一実施形態に係る情報配信装置のエラー訂正処理を説明するための図である。 本発明の一実施形態に係る訂正部が実行するエラー訂正処理の処理フローを示す図である。 本発明の一実施形態に係る訂正部のエラー訂正処理を説明するための図である。 本発明の一実施形態に係る制御基板の機能構成を示す図である。 本発明の一実施形態に係る制御基板が実行する処理フローを示す図である。 本発明の一実施形態に係る情報配信装置及び訂正部のエラー訂正処理を説明するための図である。 本発明の一実施形態に係る情報配信装置及び訂正部のエラー訂正処理を説明するための図である。
<第1の実施形態>
以下、第1の実施形態に係る制御基板について、図1〜図6を参照しながら説明する。
(制御装置の製造工程の概要)
図1は、第1の実施形態に係る制御装置の製造工程の概要を示す図である。
第1の実施形態において、メーカーMは、ガスタービン、ボイラー等を制御するための制御装置を生産する。当該制御装置は、ある制御プログラムPdataで動作する制御基板1を具備する。
図1に示す情報配信システム9は、以下に説明する制御基板1と情報配信装置2とを有してなる。
図1に示すように、制御基板1に実装されるFPGA11は、メーカーMが国内に保有する開発工場(以下、「国内開発拠点L1」とも記載する。)で製造される。また、制御基板1を動作させるための制御プログラムPdataも国内開発拠点L1で開発される。本実施形態において、制御プログラムPdataにはメーカーMのノウハウが多く含まれている。そのため、国内開発拠点L1は、開発した制御プログラムPdata等の情報が外部に流出しないよう、十分なセキュリティが担保されている。
また、図1に示すように、制御装置に具備される制御基板1は、例えば、メーカーMが海外に保有する生産工場(以下、「海外生産拠点L2」とも記載する。)で生産される。ここで、メーカーMは、国内開発拠点L1で製造したFGPA11を海外生産拠点L2へ出荷する。海外生産拠点L2では、国内開発拠点L1から出荷されたFPGA11の、制御基板1への実装が行われる。
図1に示すように、国内開発拠点L1には、情報配信装置2が設置されている。情報配信装置2は、広域通信網(例えば、インターネット回線等)を通じて、海外生産拠点L2で製造された制御装置(制御基板1)に対し、制御プログラムPdataを配信する。ここで、第三者によって広域通信網を盗聴される可能性があるため、制御プログラムPdataは所定の暗号鍵(後述する「レスポンス値」)で暗号化された状態で送信される。なお、以下の説明において、暗号鍵で暗号化された制御プログラムPdataを「被暗号化制御プログラムenc_Pdata」とも表記する。また、制御プログラムPdataは、暗号鍵で暗号化される、被暗号化情報の一態様である。
制御基板1は、国内開発拠点L1に設置された情報配信装置2から被暗号化制御プログラムenc_Pdataを受信し、制御基板1に実装された不揮発性メモリ(後述するフラッシュROM18)に記録する。
実際に制御装置として動作する場合、制御基板1に実装されたCPU(後述するCPU10)は、FPGA11を用いて、フラッシュROM18に記録された暗号化制御プログラムenc_Pdataを復号し、制御基板1に実装された揮発性メモリ(後述するRAM17)に展開する。制御基板1に実装されたCPUは、復号された制御プログラムPdataに従って動作する。
なお、国内開発拠点L1では、FPGA11の出荷前に、当該FPGA11の個体識別情報(製造番号等)と当該FPGA11(PUF回路110)から固有に出力される暗号鍵(レスポンス値)とを関連付けて情報配信装置2に記録しておく。
(出荷前におけるPUF回路等の構成)
図2Aは、第1の実施形態のPUF回路等の構成を示す図である。
国内開発拠点L1では、出荷される前のFPGA11(PUF回路110)から暗号鍵(レスポンス値)を取得して、情報配信装置2に記録する工程が行われる。図2Aは、この工程に用いられる構成を示している。
図2Aに示すように、レスポンス値取得冶具1Aは、PUF回路110が形成されたFPGA11と、通信回路112とを備えている。このFPGA11は、情報配信装置2によってレスポンス値が取得された後、レスポンス値取得冶具1Aから取り外されて、海外生産拠点L2に出荷される。
FPGA11は、論理構成を自由に書き換え可能な論理回路である。レスポンス値取得冶具1Aに取り付けられている段階においては、FPGA11にはPUF回路110のみが形成されている。
PUF回路110は、FPGA11に電源が供給されている間、所定のチャレンジ値を入力した場合に、個体固有のPUF(Physically Unclonable Function)情報(レスポンス値)を出力する。ここで、PUF情報とは、FPGA11の製造工程で生じる物理的、電気的特性のばらつきに応じて固有に生成される情報であって、FPGA11の個体ごとに異なるデバイス固有データである。
本実施形態に係るPUF回路110は、既知のPUF技術として、アービターPUFが適用される。また、本実施形態に係るPUF回路110は、128種類の128ビットデータ列からなるチャレンジ値を入力し、1つの128ビットデータ列からなるレスポンス値を、PUF情報として出力する。ただし、他の実施形態においてはこの態様に限定されず、PUF情報は、128ビットよりも長い、又は、短いデータ列であってもよい。
レスポンス値取得冶具1Aに備えられた通信回路112は、情報配信装置2から出力されたチャレンジ値(128ビット×128種類)を受信してFPGA11のPUF回路110に入力する。そして、通信回路112は、このチャレンジ値に対応してPUF回路110から出力されたレスポンス値を情報配信装置2に向けて送信する。
情報配信装置2は、チャレンジ値をレスポンス値取得冶具1Aに向けて送信する。このとき、本実施形態に係る情報配信装置2は、後述するように、複数回(N回)繰り返し、同一のチャレンジ値を送信する。また、情報配信装置2は、複数回のチャレンジ値のそれぞれに対応して出力されたレスポンス値を取得する。情報配信装置2は、複数回に渡って取得されたレスポンス値について所定のエラー訂正処理を施すとともに、エラー訂正処理後のレスポンス値(訂正後PUF情報)を、FPGA11の個体識別情報と関連付けて記録する。
なお、本実施形態においては、FPGA11(PUF回路110)から外部に送信される暗号鍵は、エラー訂正処理後のレスポンス値(訂正後PUF情報)そのものであるものとして説明するが、他の実施形態においてはこの態様に限定されない。例えば、他の実施形態に係るFPGA11は、エラー訂正処理後のレスポンス値に所定の変換アルゴリズムを施して得られるデータ列を暗号鍵として出力してもよい。この場合、エラー訂正処理後のレスポンス値と、暗号鍵であるデータ列とは、上記変換アルゴリズムを介して1対1に対応して相互に変換可能であるものとする。
(制御基板の機能構成)
図2Bは、第1の実施形態に係る制御基板の機能構成を示す図である。
図2Bは、図2Aに示したFPGA11がレスポンス値取得冶具1Aから取り外された後、海外生産拠点L2に出荷され、制御基板1に実装された後の構成を示している。
図2Bに示すように、制御基板1は、CPU10と、FPGA11と、外部通信回路12と、RAM13と、フラッシュROM14と、ROM15とを備えている。
CPU10は、制御基板1の動作全体を司るプロセッサである。CPU10は、後述する揮発性メモリ(RAM17)に展開されたプログラムに従って動作する。
制御基板1に実装された後のFPGA11は、図2Aに示したPUF回路110の他、訂正部111及び復号部113としての機能を有する回路が新たに形成されている。FPGA11の各回路の機能については後述する。
外部通信回路12は、制御基板1の外部(特に、情報配信装置2)と通信するための通信インタフェースである。外部通信回路12を介しての外部への情報送信処理は、CPU10によって制御される。したがって、外部通信回路12を介して、外部から直接的に、RAM17に展開されている情報や、FPGA11内部で生成される情報(PUF情報など)にはアクセスすることはできない。
RAM13は、情報を書き換え可能な揮発性メモリである。RAM13は、いわゆる主記憶装置であって、CPU10を動作させるためのプログラムが展開される。特に、RAM17には、CPU10が制御装置として動作するための制御プログラムPdataが展開される。
フラッシュROM14は、情報を書き換え可能な不揮発性メモリである。本実施形態に係るフラッシュROM14には、情報配信装置2から受信した被暗号化制御プログラムenc_Pdataが格納される。また、フラッシュROM14には、PUF回路110に入力するチャレンジ値等が記録される。ここで、フラッシュROM14に記録されるチャレンジ値は、FPGA11の出荷前の段階(図2A参照)において、情報配信装置2から受信したチャレンジ値と同一のものとされる。
ROM15は、情報を書き換え不能な不揮発性メモリである。ROM14には、電源が投入された際に自動的にRAM13に展開され、CPU10によって実行されるブートプログラムが格納されている。このブートプログラムは、制御装置の製造過程において、情報配信装置2が制御基板1に向けて制御プログラムPdataを安全に送信するための処理フロー(後述)を実行するためのプログラムである。
FPGA11に構成された各回路(PUF回路110、訂正部111、及び復号部113)について詳しく説明する。
制御基板1に実装された後の段階において、PUF回路110は、FPGA11に電源が供給されている間、フラッシュROM14に記録されているチャレンジ値を入力し、当該チャレンジ値に応じたレスポンス値(PUF情報)を出力する。
訂正部111は、FPGA11に電源が供給されている間、PUF回路110から出力されるレスポンス値(PUF情報)に対し、所定のエラー訂正処理を施した後のレスポンス値(訂正後PUF情報)を出力する。訂正部111のエラー訂正処理については後述する。
復号部113は、制御装置の組み立て後の段階で、外部(情報配信装置2)から受信した被暗号化制御プログラムenc_Pdataを、訂正部111から出力されている訂正後PUF情報で復号する。復号部113は、復号した制御プログラムPdataをRAM13に展開する。
(PUF回路の模式図)
図3は、第1の実施形態に係るPUF回路の模式図を示す図である。
第1の実施形態に係るPUF回路110は、アービターPUFが適用されている。具体的には、図3に示すように、PUF回路110は、128個の遅延回路110aで構成される(図3には、1つの遅延回路110aのみを図示している)。
遅延回路110aは、128個のセレクタSLa、SLbの対と、D型フリップフロップFFと、を有する。
遅延回路110aの各セレクタSLa、SLbの対には、チャレンジ値に含まれる128種類の128ビットデータ列のうちの1つ(チャレンジビット列)が入力される。1対のセレクタSLa及びセレクタSLbには同じ値が入力される。
セレクタSLa、SLbは、2つに分岐した配線のうち、入力された値(0、1)に応じた配線に信号を伝送する。
D型フリップフロップFFは、128個のセレクタSLa、SLbのそれぞれを伝送して到達した2つの信号A、Bの入力を受け付ける。信号A、Bはいずれもパルス信号であるが、セレクタSLa、SLbの各々を構成する半導体素子固有の特性に応じた遅延時間(D型フリップフロップFFに到達する時刻)が発生する。D型フリップフロップFFは、信号Aに対する信号Bの到達時間差Δtに応じて、0又は1の値を出力する。128個の遅延回路110aのそれぞれから出力される値の組み合わせ(128ビットデータ列)が、PUF回路110から出力されるレスポンス値となる。
(PUF回路の特性)
図4は、第1の実施形態に係るPUF回路の特性を説明するための図である。
PUF回路110は、理想的には、同一のチャレンジ値(128ビット×128種類)の入力に対しては、常に同一のレスポンス値(128ビット)を出力する。しかし、個々の遅延回路110aにおいて生じる到達時間差Δt(図3)は、所定の分布関数(例えば、平均、分散によって規定されるガウス分布。図4の分布関数D0、D1、D2参照)に従ってばらつく。
図4に示す分布関数D0は、D型フリップフロップFFが0を出力する範囲内に含まれている。したがって、遅延時間差Δtが分布関数D0に従ってばらつく遅延回路110aは、パルス信号を何回入力しても、常に0を出力する。
同様に、図4に示す分布関数D1は、D型フリップフロップFFが1を出力する範囲内に含まれている。したがって、遅延時間差Δtが分布関数D1に従ってばらつく遅延回路110aは、パルス信号を何回入力しても、常に1を出力する。
しかしながら、図4に示す分布関数D2は、D型フリップフロップFFが0を出力する範囲と、D型フリップフロップFFが1を出力する範囲との両方を含んでいる。遅延時間差Δtがこのような分布関数D2に従ってばらつく場合、遅延回路110aは、パルス信号を入力する度に0が出力されたり1が出力されたりして、一意に定まらなくなる。つまり、PUF回路110の中に分布関数D2の特性を有する遅延回路110aが含まれていると、PUF回路110に同一のチャレンジ値を入力したとしても、常に同一のレスポンス値を得られるとは言えなくなる。
(出荷前における処理フロー)
図5は、第1の実施形態に係るレスポンス値取得冶具及び情報配信装置が実行する処理フローを示す図である。
以下、図5を参照しながら、FPGA11の出荷前の段階で、当該レスポンス値取得冶具及び情報配信装置2が実行する処理フローについて詳しく説明する。
図5に示す処理フローは、国内開発拠点L1において、FPGA11の出荷前の段階であって、FPGA11がレスポンス値取得冶具1A(図2A)に取り付けられている段階で実行される。
国内開発拠点L1にて、情報配信装置2は、128種類の128ビットデータ列からなるチャレンジ値を、レスポンス値取得冶具1Aに向けて送信する(ステップS01a)。このステップS01aにおいて、情報配信装置2は、N回(例えば1024回)、同一のチャレンジ値を送信する。同一のチャレンジ値をN回送信することの意味については後述する。
以下に説明するステップS01〜S02の処理は、レスポンス値取得冶具1Aによって実行される。
レスポンス値取得冶具1Aの通信回路112は、情報配信装置2からチャレンジ値を受信する(ステップS01)。なお、制御基板1のフラッシュROM14には、ここで受信したチャレンジ値と同様の値が記録される。
通信回路112は、ステップS01で受信したチャレンジ値をFPGA11のPUF回路110に入力する。PUF回路110は、チャレンジ値に対応するレスポンス値を出力する。ここで、PUF回路110は、N回のチャレンジ値の入力に応じて、N回レスポンス値を出力する。
続いて、レスポンス値取得冶具1Aの通信回路112は、PUF回路110から出力された、個体固有のレスポンス値(PUF情報)を送信する(ステップS02)。
情報配信装置2は、レスポンス値取得冶具1Aの通信回路112からレスポンス値を受信する(ステップS02a)。このステップS02aにおいて、情報配信装置2は、N回のチャレンジ値のそれぞれに対応する、N個のレスポンス値を受信する。
情報配信装置2は、ステップS02aで受信したN個のレスポンス値に対し、所定のエラー訂正処理を施す(ステップS03a)。そして、情報配信装置2は、エラー訂正処理後のレスポンス値(訂正後PUF情報)を、FPGA11の製造番号等と紐づけて記録する(ステップS04a)。このエラー訂正処理後のレスポンス値は、制御基板1についての暗号鍵として扱われる。
エラー訂正処理後のレスポンス値が記録された後、FPGA11は、レスポンス値取得冶具1Aから取り外されて、訂正部111及び復号部113が形成される。その後、FPGA11は、海外生産拠点L2に出荷され、制御基板1に実装される(図2B参照)。
(エラー訂正処理の処理フロー)
図6は、第1の実施形態に係る情報配信装置が実行するエラー訂正処理の処理フローを示す図である。
図7、図8は、第1の実施形態に係る情報配信装置のエラー訂正処理を説明するための図である。
以下、図6〜図8を参照しながら、情報配信装置2がステップS03aにおいて実行するエラー訂正処理について詳しく説明する。
上述したように、図5のステップS01において、FPGA11のPUF回路110には、同一のチャレンジ値がN回入力される(Nは整数)。そして、PUF回路110は、チャレンジ値が入力される度にレスポンス値を出力する。情報配信装置2は、N回に渡ってPUF回路110から出力されるレスポンス値をビットごとに積算する(ステップS031)。
次に、情報配信装置2は、レスポンス値に含まれる不定ビットを特定する(ステップS032)。不定ビットの特定の仕方は、図7に示す判定条件に従って行われる。
即ち、図7に示すように、N回に渡る積算の結果、積算値が0となったビットは、N回に渡って0が出力されたビットである。したがって、情報配信装置2は、レスポンス値における当該ビットの値を0として扱う。
同様に、N回に渡る積算の結果、積算値がNとなったビットは、N回に渡って1が出力されたビットである。したがって、情報配信装置2は、レスポンス値における当該ビットの値を1として扱う。
更に、N回に渡る積算の結果、積算値が1〜N−1のいずれかとなったビットは、N回に渡るレスポンス値の出力において0と1の両方が出力されたビットである。したがって、情報配信装置2は、レスポンス値における当該ビットを、0、1のいずれとなるかが不定である「不定ビット」として特定する。
次に、情報配信装置2は、ステップS032で特定した不定ビットを、所定の値に上書きする上書処理を行う(ステップS033)。ここで、本実施形態においては、情報配信装置2は、不定ビットを0で上書きする(図7参照)。この上書処理により、レスポンス値の不定ビットは、一律に0で固定される(図8参照)。図8に示すように、不定ビットが0に上書き(固定)されたレスポンス値(訂正後PUF情報)が暗号鍵として記録される。
(出荷後における処理フロー)
図9は、第1の実施形態に係る制御基板及び情報配信装置が実行する処理フローを示す図である。
図10は、第1の実施形態に係る制御基板が実行する処理フローを示す図である。
以下、図9、図10を参照しながら、FPGA11の出荷後(制御装置組み立て後)の段階で、制御基板1及び情報配信装置2が実行する処理フローについて詳しく説明する。
図9に示す処理フローは、海外生産拠点L2にて制御基板1を具備する制御装置の組み立てが完成した後に実施される。
まず、情報配信装置2は、制御プログラムPdataを暗号鍵で暗号化する(ステップS11a)。ここで用いられる暗号鍵は、出荷前(図5のステップS04a)の段階で記録した、エラー訂正処理後のレスポンス値である。これにより、被暗号化制御プログラムenc_Pdataが生成される。
情報配信装置2は、被暗号化制御プログラムenc_Pdataを、広域通信網を介して、制御基板1に配信する(ステップS12a)。
以下に説明するステップS11〜S12の処理は、制御基板1に実装されたCPU10が、電源投入時に自動的に読み出されるブートプログラムに従って動作することにより実行される。
制御基板1のCPU10は、外部通信回路12を介して、被暗号化制御プログラムenc_Pdataを受信する(ステップS11)。
次に、CPU10は、受信した被暗号化制御プログラムenc_PdataをフラッシュROM14に記録する(ステップS12)。これにより、被暗号化制御プログラムenc_Pdataが制御基板1に記録される。
なお、図9に示す処理フローは、海外生産拠点L2において制御装置の組み立て完了時に実行されるものとして説明したが、これに限られない。図9に示す処理フローは、例えば、現地での実運用中において、制御プログラムPdataの更新(バージョンアップ)を行う際にも実行されてよい。
図10は、制御装置の起動時において、被暗号化制御プログラムenc_Pdataが記録された制御基板1の処理フローを示している。被暗号化制御プログラムenc_Pdataが記録された制御基板1は、制御装置の起動時において、目的の制御を実行するための以下の処理フローを実行する。
以下に説明するステップS21〜S23の処理は、制御基板1のCPU10が、電源投入時に自動的に読み出されるブートプログラムに従って動作することにより実行される。
制御基板1のCPU10は、フラッシュROM14に記録されているチャレンジ値(図5のステップS01aで情報配信装置2が送信したものと同一のチャレンジ値)を読み出し、これをFPGA11のPUF回路110に入力する。
このステップS21において、CPU10は、N回、同一のチャレンジ値をPUF回路110に入力する。
ステップS21にて、チャレンジ値がN回に渡ってPUF回路110に入力されると、訂正部111は、図6のステップS031〜S033で情報配信装置2が実行したエラー訂正処理と同等の処理を行う。訂正部111による処理の結果、出荷前と同じ手順(図6のステップS031〜S033)で不定ビットが特定され、当該不定ビットが0に上書きされる。訂正部111は、このようにして得られた、エラー訂正処理後のレスポンス値を復号部113に出力する。
次に、CPU10は、フラッシュROM14から被暗号化制御プログラムenc_Pdataを読み出して、FPGA11の復号部113に入力する。復号部113は、ステップS21の結果得られたレスポンス値を暗号鍵として、被暗号化制御プログラムenc_Pdataを復号する。CPU10は、復号部113による復号処理により得られた制御プログラムPdataをRAM13に展開する(ステップS22)。
ここで、FPGA11の出荷前に得られた暗号鍵、及び、出荷後に(ステップS21で)得られた暗号鍵は、いずれも、情報配信装置2、又は、訂正部111による同一のエラー訂正処理を経て得られたものである。即ち、どちらの暗号鍵も、エラー訂正処理によりレスポンス値の不定ビットが0に上書きされているため、出荷の前後において不定ビットによる暗号鍵の相違は生じない。したがって、復号部113は、被暗号化制御プログラムenc_Pdataを正しく復号することができる。
制御プログラムPdataがRAM13に展開されると、CPU10は、ブートプログラムによる動作から制御プログラムPdataによる動作に切り替える(ステップS23)。これにより、制御基板1において目的の制御が実行される。
(作用、効果)
以上、第1の実施形態に係る制御基板1によれば、PUF回路110が出力するPUF情報(レスポンス値)に対しエラー訂正処理を施した訂正後PUF情報(エラー訂正処理後のレスポンス値)を出力する訂正部111を有している。そして、訂正部111は、PUF回路110から複数回入力したPUF情報(レスポンス値)の積算結果に基づいて、当該PUF情報のうち0、1のいずれとなるかが不定である不定ビットを特定するとともに、当該不定ビットを0又は1の値で上書きして訂正後PUF情報を生成する。
このようにすることで、PUF情報(レスポンス値)の不定ビットが所定の値に固定(エラー訂正)されるので、出荷前に生成された暗号鍵と出荷後に生成された暗号鍵とが異なってしまうことを抑制することができる。
以上より、PUFに基づくデバイス固有データのエラー訂正を行うために必要な情報量を低減できる。
また、第1の実施形態に係る訂正部111は、予め定められた同一の値(0)で、全ての不定ビットを上書きする。
このようにすることで、不定ビットを一律に、予め定められた値に上書きするので、エラー訂正のために必要な情報を事前に記録しておく必要がない。したがって、訂正部111の構成の簡素化を図ることができる。
なお、第1の実施形態では、訂正部111は、不定ビットを0で上書きするものとして説明したが、他の実施形態においてはこの態様に限定されない。即ち、他の実施形態に係る訂正部111は、不定ビットを1で上書きしてもよい。
<第2の実施形態>
以下、第2の実施形態に係る制御基板について、図11〜図14を参照しながら説明する。
(出荷前における情報配信装置の処理フロー)
図11は、第2の実施形態に係る情報配信装置が実行するエラー訂正処理の処理フローを示す図である。
図12は、第2の実施形態に係る情報配信装置のエラー訂正処理を説明するための図である。
第2の実施形態に係る情報配信装置2は、エラー訂正処理(図5のステップS03a)の内容が第1の実施形態と異なる。
以下、図11及び図12を参照しながら、第2の実施形態に係る情報配信装置2が図5のステップS03aで実行するエラー訂正処理について詳しく説明する。なお、ステップS031〜S032の処理は、第1の実施形態(図6)と同様であるため、説明を省略する。
情報配信装置2は、ステップS032で特定した不定ビットを、所定の値に上書きする上書処理を行う(ステップS033)。ここで、本実施形態においては、情報配信装置2は、各不定ビットのそれぞれを0又は1のいずれか一方で上書きする。図12に示す例では、レスポンス値に2つの不定ビットが特定されている。情報配信装置2は、1つ目の不定ビットに対しては0で上書きし、2つ目の不定ビットに対しては1で上書きする。
このとき、情報配信装置2は、各不定ビットに対し0、1のいずれで上書きするかを、不定ビットごとにランダムに決定してもよいし、所定のルールに従って決定してもよい。「所定のルール」の一例として、情報配信装置2は、積算値が1〜N/2の範囲であった場合には0で上書きし、積算値がN/2〜N−1の範囲であった場合には1で上書きするものとしてもよい。
図12に示すように、不定ビットのそれぞれに対し0又は1のいずれか一方で上書き(固定)されたレスポンス値(訂正後PUF情報)が暗号鍵として記録される。
次に、情報配信装置2は、各不定ビットに上書きした情報を示すヘルパーデータを作成する。情報配信装置2は、作成したヘルパーデータを、情報配信装置2に別途用意された不揮発性メモリに記録する(ステップS033a)。
図12に示す例では、情報配信装置2は、1つ目の不定ビットを0で上書きし、2つ目の不定ビットを1で上書きした。そこで、情報配信装置2は、1つ目の不定ビットを0で上書きし、2つ目の不定ビットを1で上書きしたことを示す、“01”なる2ビットデータ列である上書データを作成する。
次に、情報配信装置2は、“01”なる2ビットデータ列である上書データを、所定の変換アルゴリズムを介して、他の2ビットデータ列(以下、「ヘルパーデータ」と表記する。)に変換する。上書データと、上記変換アルゴリズムを介して得られたヘルパーデータとは1対1に対応するものとし、逆変換できるものとする。
(訂正部の処理フロー)
図13は、第2の実施形態に係る訂正部が実行するエラー訂正処理の処理フローを示す図である。
図14は、第2の実施形態に係る訂正部のエラー訂正処理を説明するための図である。
図13に示す処理フローは、図10のステップS21でPUF回路110にチャレンジ値が入力されてから、図10のステップS22で復号部113にレスポンス値が入力されるまでの過程において、訂正部111が実行する処理フローである。なお、図13のステップS211〜S212の処理は、図6又は図11に示すステップS031〜S032の処理と同様であるため、説明を省略する。
訂正部111は、ステップS211〜ステップS212の処理で不定ビットを特定すると、次に、情報配信装置2にアクセスし、出荷前の段階で事前に情報配信装置2の不揮発性メモリに記録していたヘルパーデータを読み出す(ステップS213)。
訂正部111は、ステップS213で読み出したヘルパーデータを用いて、不定ビットに対する上書処理を行う(ステップS214)。
ステップS213〜S214の処理については、図14を参照しながら説明する。
図14に示す例では、訂正部111は、ステップS213において、2ビットデータ列からなるヘルパーデータを情報配信装置2の不揮発性メモリから読み出す。そして、訂正部111は、ヘルパーデータを所定の変換アルゴリズムに基づいて逆変換し、“01”なる2ビットデータ列である上書データを取得する。
更に、訂正部111は、PUF回路110から読み出したレスポンス値に含まれる不定ビットそれぞれに対し、上書データで示される情報で上書きする。
具体的には、図14に示すように、訂正部111は、ステップS211〜S212で特定した1つ目の不定ビットに対しては、上書データの1ビット目に示される値(0)で上書きし、2つ目の不定ビットに対しては、上書データの2ビット目に示される値(1)で上書きする。
訂正部111は、上述の上書き処理によって得られたレスポンス値を暗号鍵として、復号部113に出力する。
(作用、効果)
以上の通り、第2の実施形態に係る訂正部111は、複数の不定ビットのそれぞれに上書きした0又は1の情報を示すデータ列(ヘルパーデータ)を情報配信装置2(外部記憶装置)に記録する。
このようにすることで、不定ビットと特定されたビットに対してのみ、エラー訂正に必要な情報(ヘルパーデータ)が記録されるので、エラー訂正に必要な情報量が削減される。したがって、訂正部111の構成の簡素化を図ることができる。
また、複数の不定ビットのそれぞれについて、0又は1のいずれで上書きされるかが決定されるので、第1の実施形態のように不定ビットが一律に0又は1に上書きされる場合よりも安全性を高めることができる。
なお、第2の実施形態においては、安全性を高める目的で、上書データを他のデータ列(ヘルパーデータ)に変換して記録するものとして説明したが、他の実施形態においてはこの態様に限定されない。即ち、他の実施形態においては、上書データそのものをヘルパーデータとして扱ってもよい。
<第3の実施形態>
以下、第3の実施形態に係る制御基板について、図15〜図16を参照しながら説明する。
(制御基板の機能構成)
図15は、第3の実施形態に係る制御基板の機能構成を示す図である。
図15に示すように、第3の実施形態に係る制御基板1は、CPU10が変更部100としての機能を有する点で、第1、第2の実施形態と相違する。
変更部100は、被暗号化制御プログラムenc_Pdataが正しく復号されたか否かを判定し、当該被暗号化制御プログラムenc_Pdataが正しく復号されていなかった場合に、FPGA11(PUF回路110)の動作条件を変更する。
(出荷後における処理フロー)
図16は、第3の実施形態に係る制御基板が実行する処理フローを示す図である。
以下、図16を参照しながら、FPGA11の出荷後(制御装置組み立て後)の段階で、制御装置起動時に、当該制御基板1が実行する処理フローについて詳しく説明する。
図16に示すステップS21、S22、S23の処理は、第1の実施形態(図10)と同様であるため説明を省略する。
CPU10は、ステップS22で復号されて、RAM13に展開された制御プログラムに対し、正しく復号されたか否かを判定する(ステップS22a)。ステップS22aでは、CPU10は、例えば、制御プログラムに不正な命令やデータが含まれていないか否かをチェックする。
RAM13に展開された制御プログラムが正しく復号されたものであった場合(ステップS22b;YES)、CPU10は、ブートプログラムによる動作から制御プログラムPdataによる動作に切り替える(ステップS23)。これにより、制御基板1において目的の制御が実行される。
他方、RAM13に展開された制御プログラムが正しく復号されたものではなかった場合(ステップS22b;NO)、出荷前に取得した暗号鍵とステップS22の復号処理で用いた暗号鍵とが異なっていることが想定される。例えば、出荷後におけるFPGA11の動作環境(室温等)が、出荷前に暗号鍵を取得した際の動作環境と異なる場合、図4に示したPUF回路110の特性(分布関数D0〜D2)が変化し得る。そうすると、例えば、出荷前にはN回に渡って常に0又は1が出力されていたビットが、出荷後の動作環境では不定ビットとして振る舞うことが起こり得る。また、出荷前には不定ビットと判断されていたビットが、出荷後の動作環境では、常に0又は1が出力される正常なビットとして振る舞うことも起こり得る。このようなことが起きた場合、第1、第2の実施形態においては、被暗号化制御プログラムenc_Pdataを正しく復号することができなくなる。
そこで、ステップS22b;NOの判定がなされた場合、CPU10の変更部100は、FPGA11の動作条件を変更する(ステップS22c)。具体的には、変更部100は、FPGA11に供給される電源電圧を変更する。このとき、変更部100は、例えば、FPGA11に供給される電源電圧Vdcを、予め規定された微小電圧ΔVだけ増加、又は、減少させる。
ステップS22cを行った後、CPU10は、ステップS21に戻り、同様の処理を繰り返す。
(作用、効果)
以上の通り、第3の実施形態に係るCPU10(変更部100)は、被暗号化制御プログラムenc_Pdataが正しく復号されたか否かを判定し、当該被暗号化制御プログラムenc_Pdataが正しく復号されていなかった場合に、FPGA11(PUF回路110)の動作条件を変更する。
このようにすることで、被暗号化制御プログラムenc_Pdataを正しく復号できなかった場合には、変更部100によってPUF回路110の動作条件が変更されるので、これに応じてPUF回路110の特性(分布関数)も変化する。したがって、出荷前後における動作環境の変化に起因してPUF回路110の特性が変化した場合であっても、出荷後において正しく復号することができる。
なお、動作条件の変更の例としては、FPGA11に印加する電源電圧の他、エージング処理などを用いてFPGA11の雰囲気温度を変化させるものであってもよい。
(第3の実施形態の変形例)
第3の実施形態に係るCPU10は、被暗号化制御プログラムenc_Pdataを正しく復号できたか否かの判定結果に基づいて、PUF回路110の動作条件を変更するものとして説明したが、他の実施形態においてはこの態様に限定されない。
例えば、第2の実施形態では、FPGA11の内蔵メモリに記録されるヘルパーデータ(上書データ)のビット数は、ビットごとの積算値に基づいて特定された不定ビットの数と一致すべきである。即ち、FPGA11の内蔵メモリに記録されるヘルパーデータ(上書データ)のビット数と、レスポンス値に含まれる不定ビットの数とが一致していないのであれば、出荷前と同一の不定ビットが特定されていないことが想定されるため、正しい暗号鍵を得ることが困難である。
そこで、第3の実施形態の変形例に係るCPU10(変更部100)は、ヘルパーデータのビット数と、レスポンス値に含まれる不定ビットの数とが一致していない場合に、PUF回路110の動作条件を変更するものとしてもよい。
このようにすることで、被暗号化制御プログラムenc_Pdataを実際に復号する前の段階で、PUF回路110の動作条件を変更するか否かの判断を行うことができる。
(その他の変形例)
以上、第1〜第3の実施形態に係る制御基板1について詳細に説明したが、制御基板1の具体的な態様は、上述のものに限定されることはなく、要旨を逸脱しない範囲内において種々の設計変更等を加えることは可能である。
第1〜第3の実施形態に係る情報配信システム9においては、暗号鍵(レスポンス値)によって暗号化される被暗号化情報は、制御プログラムPdataであるものとして説明したが、他の実施形態においてはこの態様に限定されない。
例えば、被暗号化情報は、制御プログラムPdataの暗号化に用いた共通暗号鍵であってもよい。この場合、制御プログラムPdataは、この共通暗号鍵によって暗号化された状態で、情報配信装置2から制御基板1に向けて配信される。更に、情報配信装置2は、この共通暗号鍵をレスポンス値(第1〜第3の実施形態における暗号鍵)で暗号化して制御基板1に配信する。制御基板1は、レスポンス値で暗号化された共通暗号鍵を復号部113で復号し、更に、この共通暗号鍵を用いて、共通暗号鍵で暗号化された制御プログラムPdataを復号してもよい。
第1〜第3の本実施形態においては、情報配信装置2及びFPGA11(訂正部111)は、N個のレスポンス値を演算する方法の一態様として、ビットごとに積算する方法を採用するものとして説明した。しかし、他の実施形態においてはこの態様に限定されない。
即ち、他の実施形態に係る情報配信装置2及びFPGA11(訂正部111)は、N個のレスポンス値をビットごとに演算する方法の一態様として、1回目に取得されたビットの値と2回目以降に取得されたビットの値との排他的論理和を計算した結果の論理和を取得してもよい。
具体的には、図17に示すように、他の実施形態に係る情報配信装置2及び訂正部111は、チャレンジ値をPUF回路110に入力する(ステップS41)。
次に、情報配信装置2及び訂正部111は、1回目のレスポンス値と2回目以降のレスポンス値との排他的論理和を演算する(ステップS42)。
次に、情報配信装置2及び訂正部111は、排他的論理和によって得られたビット値の論理和を取得する(ステップS43)。
次に、情報配信装置2及び訂正部111は、2回目以降のレスポンス値について繰り返し実行される排他的論理和(ステップS42)及び論理和(ステップS43)の結果に基づいて不定ビットを特定する(ステップS44)。
以上のようにすることで、不定ビットを特定する回路規模を小さくし、FPGAリソースの消費量を低減することが可能となる。
第1の実施形態に係る情報配信装置2及び訂正部111は、予め定められた同一の値(0)で、全ての不定ビットを上書きするものとして説明した。また、第2の実施形態に係る情報配信装置2及び訂正部111は、不定ビットのそれぞれを0又は1で上書きするとともに、0又は1のいずれで上書きしたかを示すヘルパーデータを別途記録するものとして説明した。他の実施形態においては、上記の態様に限定されない。
即ち、他の実施形態に係る情報配信装置2及び訂正部111は、レスポンス値(PUF情報)のうち0、1が特定できたビットの値から演算した結果で、不定ビットの値を決めてもよい。
例えば、図18に示すように、情報配信装置2及び訂正部111は、1つ目の不定ビットまでに特定できたビット部分(1つ目の正常ビット列)で1の個数を数え、1が偶数個あれば1つ目の不定ビットの値を0に決定し、1が奇数個あれば1つ目の不定ビットの値を1に決定する。同様に、情報配信装置2及び訂正部111は、1つ目の不定ビットから2つ目の不定ビットまでに特定できたビット部分(2つ目の正常ビット列)で1の個数を数え、1が偶数個あれば2つ目の不定ビットの値を0に決定し、1が奇数個あれば2つ目の不定ビットの値を1に決定する。
以上のようにすることで、暗号鍵の暗号強度低下を防止することが可能となる。
以上のとおり、本発明に係るいくつかの実施形態を説明したが、これら全ての実施形態は、例として提示したものであり、発明の範囲を限定することを意図していない。これらの実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で種々の省略、置き換え、変更を行うことができる。これらの実施形態及びその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
1 制御基板
1A レスポンス値取得冶具
10 CPU
100 変更部
11 FPGA
110 PUF回路
111 訂正部
112 通信回路
113 復号部
12 外部通信回路
13 RAM(揮発性メモリ)
14 フラッシュROM(不揮発性メモリ)
15 ROM(不揮発性メモリ)
2 情報配信装置
9 情報配信システム
L1 国内開発拠点
L2 海外生産拠点
Pdata 制御プログラム
enc_Pdata 被暗号化制御プログラム(被暗号化情報)

Claims (14)

  1. 電源が供給されている間、個体固有のPUF情報を出力するPUF回路と、
    前記PUF回路が出力するPUF情報に対しエラー訂正処理を施した訂正後PUF情報を出力する訂正部と、
    暗号化された被暗号化情報を入力し、当該被暗号化情報を前記訂正部が出力する訂正後PUF情報に基づく暗号鍵で復号する復号部と、
    を備え、
    前記訂正部は、
    前記PUF回路から複数回入力したPUF情報の演算結果に基づいて、当該PUF情報のうち0、1のいずれとなるかが不定である不定ビットを特定するとともに、当該不定ビットを0又は1の値で上書きして前記訂正後PUF情報を生成する
    制御基板。
  2. 前記PUF情報の演算結果とは、PUF情報のビットごとの積算結果である
    請求項1に記載の制御基板。
  3. 前記PUF情報の演算結果とは、1回目に取得されたPUF情報と2回目以降に取得されたPUF情報との排他的論理和に基づく結果である
    請求項1に記載の制御基板。
  4. 前記訂正部は、
    予め定められた同一の値で、全ての前記不定ビットを上書きする
    請求項1から請求項3のいずれか一項に記載の制御基板。
  5. 前記訂正部は、
    当該PUF情報のうち0、1が特定できたビットの値から演算した結果で、前記不定ビットの値を決める
    請求項1に記載の制御基板。
  6. 前記訂正部は、
    事前に外部記憶装置に記録された所定のデータ列に示される0又は1の情報を、前記不定ビットのそれぞれに上書きする
    請求項1に記載の制御基板。
  7. 前記データ列のビット数と、前記不定ビットの数とが一致していない場合に、前記PUF回路の動作条件を変更する変更部をさらに備える
    請求項6に記載の制御基板。
  8. 前記被暗号化情報が正しく復号されたか否かを判定し、当該被暗号化情報が正しく復号されていなかった場合に、前記PUF回路の動作条件を変更する変更部をさらに備える
    請求項1から請求項7のいずれか一項に記載の制御基板。
  9. 前記変更部は、前記動作条件として、前記PUF回路に供給される電源電圧を変更する
    請求項8に記載の制御基板。
  10. 前記変更部は、前記動作条件として、前記PUF回路の雰囲気温度を変更する
    請求項8または請求項9に記載の制御基板。
  11. 前記被暗号化情報は、制御プログラムを復号するための共通暗号鍵である
    請求項1から請求項10のいずれか一項に記載の制御基板。
  12. 請求項1から請求項11の何れか一項に記載の制御基板を備える制御装置。
  13. 請求項1から請求項11の何れか一項に記載の制御基板と、
    情報配信装置と、を備え、
    前記情報配信装置は、
    前記制御基板に実装された前記PUF回路から、事前に前記暗号鍵を取得して記録し、
    記録した前記暗号鍵を用いて前記被暗号化情報を生成するとともに、前記制御基板に対し当該被暗号化情報を配信する
    情報配信システム。
  14. 電源が供給されている間、制御基板のPUF回路から個体固有のPUF情報を出力するステップと、
    前記制御基板の訂正部から、前記PUF回路が出力するPUF情報に対しエラー訂正処理を施した訂正後PUF情報を出力するステップと、
    暗号化された被暗号化情報を入力し、当該被暗号化情報を前記訂正部が出力する訂正後PUF情報に基づく暗号鍵で復号するステップと、
    を有し、
    前記訂正後PUF情報を出力するステップでは、
    前記PUF回路から複数回入力したPUF情報の演算結果に基づいて、当該PUF情報のうち0、1のいずれとなるかが不定である不定ビットを特定するとともに、当該不定ビットを0又は1の値で上書きして前記訂正後PUF情報を生成する
    復号方法。
JP2019090967A 2019-05-13 2019-05-13 制御基板、制御装置、情報配信システム及び復号方法 Ceased JP2020188345A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019090967A JP2020188345A (ja) 2019-05-13 2019-05-13 制御基板、制御装置、情報配信システム及び復号方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019090967A JP2020188345A (ja) 2019-05-13 2019-05-13 制御基板、制御装置、情報配信システム及び復号方法

Publications (1)

Publication Number Publication Date
JP2020188345A true JP2020188345A (ja) 2020-11-19

Family

ID=73222974

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019090967A Ceased JP2020188345A (ja) 2019-05-13 2019-05-13 制御基板、制御装置、情報配信システム及び復号方法

Country Status (1)

Country Link
JP (1) JP2020188345A (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010134192A1 (ja) * 2009-05-22 2010-11-25 三菱電機株式会社 電子機器及び鍵生成プログラム及び記録媒体及び鍵生成方法
WO2012164721A1 (ja) * 2011-06-02 2012-12-06 三菱電機株式会社 鍵情報生成装置及び鍵情報生成方法
US20150092939A1 (en) * 2013-09-27 2015-04-02 Kevin Gotze Dark bits to reduce physically unclonable function error rates
JP2018050103A (ja) * 2016-09-20 2018-03-29 ウィンボンド エレクトロニクス コーポレーション 半導体装置およびセキュリティシステム
JP2018121141A (ja) * 2017-01-24 2018-08-02 セイコーエプソン株式会社 回路装置、発振デバイス、物理量測定装置、電子機器及び移動体

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010134192A1 (ja) * 2009-05-22 2010-11-25 三菱電機株式会社 電子機器及び鍵生成プログラム及び記録媒体及び鍵生成方法
WO2012164721A1 (ja) * 2011-06-02 2012-12-06 三菱電機株式会社 鍵情報生成装置及び鍵情報生成方法
US20150092939A1 (en) * 2013-09-27 2015-04-02 Kevin Gotze Dark bits to reduce physically unclonable function error rates
JP2018050103A (ja) * 2016-09-20 2018-03-29 ウィンボンド エレクトロニクス コーポレーション 半導体装置およびセキュリティシステム
JP2018121141A (ja) * 2017-01-24 2018-08-02 セイコーエプソン株式会社 回路装置、発振デバイス、物理量測定装置、電子機器及び移動体

Similar Documents

Publication Publication Date Title
US10216964B2 (en) Semiconductor integrated circuit and system
US8700916B2 (en) Utilizing physically unclonable functions to derive device specific keying material for protection of information
US8719585B2 (en) Secure update of boot image without knowledge of secure key
US10833878B2 (en) Integrated circuit with parts activated based on intrinsic features
US7613931B2 (en) Copy protection method and system for programmable gate array
US20090204803A1 (en) Handling of secure storage key in always on domain
US20180076959A1 (en) Information processing device, server device, information processing system, moving object, and information processing method
JP7147024B2 (ja) 乱数生成装置および乱数生成方法
TW201915748A (zh) 半導體裝置
CN111512593B (zh) 半导体设备、提供更新数据的方法、接收更新数据的方法以及介质
JP2012003311A (ja) フィールド機器システム
GB2457172A (en) Securely downloading boot code to a locked system
JP5964460B2 (ja) データの暗号化記憶システム
JP2020188345A (ja) 制御基板、制御装置、情報配信システム及び復号方法
US20190207775A1 (en) Integrated circuit, control device, information distribution method, and information distribution system
JP6348273B2 (ja) 情報処理システム
EP3214797B1 (en) Deriving a device unique encryption key of a system on chip using a physical unclonable function
JP2019095969A (ja) 半導体装置、認証システム及び認証方法
JP6752247B2 (ja) 情報配信装置、配信対象装置、情報配信システム、情報配信方法及びプログラム
JP2014222420A (ja) 半導体記憶装置及びデータ処理システム
JP2007027955A (ja) 移動通信システム、移動通信端末装置および認証データ格納方法
JP6987112B2 (ja) 集積回路
JP7123887B2 (ja) データ転送制御装置、データ転送制御システム及びデータ転送制御方法
JP2008185616A (ja) 秘密鍵暗号方法、秘密鍵暗号装置、及びコンピュータプログラム
JP2017108293A (ja) 半導体集積回路装置およびデータ処理装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220324

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20221227

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230207

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230327

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230404

A045 Written measure of dismissal of application [lapsed due to lack of payment]

Free format text: JAPANESE INTERMEDIATE CODE: A045

Effective date: 20230829