JP6867582B2 - 信号処理システム - Google Patents

信号処理システム Download PDF

Info

Publication number
JP6867582B2
JP6867582B2 JP2017030983A JP2017030983A JP6867582B2 JP 6867582 B2 JP6867582 B2 JP 6867582B2 JP 2017030983 A JP2017030983 A JP 2017030983A JP 2017030983 A JP2017030983 A JP 2017030983A JP 6867582 B2 JP6867582 B2 JP 6867582B2
Authority
JP
Japan
Prior art keywords
circuit
output
chip
input
delay
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
JP2017030983A
Other languages
English (en)
Other versions
JP2018136757A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2017030983A priority Critical patent/JP6867582B2/ja
Publication of JP2018136757A publication Critical patent/JP2018136757A/ja
Application granted granted Critical
Publication of JP6867582B2 publication Critical patent/JP6867582B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Semiconductor Integrated Circuits (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Description

本発明は、信号処理システムに関する。
プリンタカートリッジ、電池等のバッテリー、ゲーム機のカートリッジといった製品のクローン品(偽造品)を防止するために、正規品に認証機能を付与することが行われている。認証機能を実現するためには、正規品であることを保証する秘密情報が必要である。一般に、秘密情報はICチップ内の不揮発性メモリに書き込まれている。しかし、ICチップの内部構造を顕微鏡で詳細に観察し、不揮発性メモリの構造を解析することによって、格納されている秘密情報の値を特定する攻撃の手口が知られている。
そこで、ICチップ内の不揮発性メモリに秘密情報を格納することなく、認証機能をセキュアに実現する有効な手段がPUF(Physically Unclonable Function:物理的クローン作製不能機能)である(例えば、特許文献1、2参照)。物理的クローン作製不能機能を有するPUF回路は、回路レイアウト構造が同じであるが、デバイス内の信号遅延や素子特性のわずかな違いを利用することで、出力値がデバイス毎に異なる値となる。つまり、PUF回路は、回路レイアウト構造が同じであるにもかかわらず、出力値がデバイス固有の値となる。
PUF回路には、ラッチPUF回路やSRAM PUF回路等のメモリ型PUF回路、及びアービターPUF回路やリングオシレータPUF回路等の遅延型PUF回路がある。図5に、メモリ型PUF回路の1つであるラッチPUF回路501の構成例を示す。PUF回路501は、複数のRSラッチ502−0、502−1、502−2、・・・を有する。RSラッチ502−0、502−1、502−2、・・・の各々は、2つのNANDゲート(否定論理積演算ゲート)503、504を有する。
各RSラッチ502−0、502−1、502−2、・・・において、NANDゲート503に信号SIN及びNANDゲート504の出力が入力され、NANDゲート504に信号SIN及びNANDゲート503の出力が入力される。図5に示した例では、各RSラッチ502−0、502−1、502−2、・・・のNANDゲート503の出力を、PUF回路501の出力(レスポンス)SOUT[0]、SOUT[1]、SOUT[2]、・・・とする。
図5に示したPUF回路501において、信号SINが“0”であるとき、NANDゲート503、504の出力はともに“1”で安定している。しかし、信号SINが“0”から“1”へと変化すると、NANDゲート503の出力が“1”となりNANDゲート504の出力が“0”となる場合もあれば、NANDゲート503の出力が“0”となりNANDゲート504の出力が“1”となる場合もある。これは、NANDゲート503、504で構成されたRSラッチ502がメタステーブルとなり、出力が不確定となるためである。
したがって、信号SINが“0”から“1”へと変化したとき、NANDゲート503、504の出力は、NANDゲート503、504に係る信号遅延や素子特性のわずかな違いによって、どちらかの状態に確定する。つまり、各RSラッチ502−0、502−1、502−2、・・・のNANDゲート503、504に係る信号遅延や素子特性のわずかな違いによって、PUF回路501の出力SOUT[0]、SOUT[1]、SOUT[2]、・・・が“0”もしくは“1”にそれぞれ決定する。PUF回路501は、この不確定性を利用し、物理的クローン作製不能機能を実現する。
図6に、遅延型PUF回路の1つであるアービターPUF回路601の構成例を示す。アービターPUF回路は回路遅延を利用したPUF回路である。PUF回路601は、nビットの入力(チャレンジ)ch[0]〜ch[n−1]に対して、1ビットの出力(レスポンス)SOUTを出力するPUF回路であり、n個の経路制御回路602−i(iは添え字であり、0〜n−1の整数)及びアービター(Dフリップフロップ、D−FF)605を有する。経路制御回路602−iの各々は、2つのセレクタ603、604を有する。
経路制御回路602−iのセレクタ603、604には、制御信号として入力ch[i]が入力されるとともに、前段の経路制御回路602−(i−1)のセレクタ603、604のそれぞれの出力が入力される。なお、経路制御回路602−0のセレクタ603、604には、信号SINが入力される。アービター605は、経路制御回路602−(n−1)のセレクタ603の出力がデータ入力端子Dに入力され、経路制御回路602−(n−1)のセレクタ604の出力がクロック入力端子CLKに入力され、PUF回路601の出力SOUTを出力する。
経路制御回路602−iのセレクタ603は、入力ch[i]が“0”であれば経路制御回路602−(i−1)のセレクタ603の出力を選択して出力し、入力ch[i]が“1”であれば経路制御回路602−(i−1)のセレクタ604の出力を選択して出力する。また、経路制御回路602−iのセレクタ604は、入力ch[i]が“0”であれば経路制御回路602−(i−1)のセレクタ604の出力を選択して出力し、入力ch[i]が“1”であれば経路制御回路602−(i−1)のセレクタ603の出力を選択して出力する。すなわち、経路制御回路602−iは、入力ch[i]が“0”である場合、前段からの信号をそのままストレートに出力し、入力ch[i]が“1”である場合、前段からの信号をクロスさせるように出力する。
図6に示したPUF回路601において、立ち上がり(“0”→“1”)信号SINが入力されると、n個の経路制御回路602−iを経由して、アービター605に信号が到達する。このとき、入力chの値に応じて、信号経路が変化し、信号遅延や素子特性の違いによって、アービター605のデータ入力端子D及びクロック入力端子CLKに信号が到達するまでの時間に差が発生する。その結果、アービター605のデータ入力端子D及びクロック入力端子CLKに入力される信号のうち、どちらの信号が先にアービター605に到達するかで、PUF回路601の出力SOUTの値が決定する。データ入力端子Dに入力される信号が先に到達すればPUF回路601の出力SOUTは“1”となり、クロック入力端子CLKに入力される信号が先に到達すればPUF回路601の出力SOUTは“0”となる。PUF回路601は、この不確定性を利用し、物理的クローン作製不能機能を実現する。
このようにPUF回路は、デバイス内の信号遅延や素子特性のわずかな違いを利用することで、出力値がデバイス毎に異なる値となる。PUF回路は、回路レイアウト構造と出力値に相関性がないため、PUF回路が実装されたチップの構造解析により回路情報を入手できたとしてもクローン品を作成することはできない。このチップ毎に固有の出力値を持つことを利用し、デバイスが正規品であるか認証機能を持つ認証チップが実現できる。
例えば、図7(A)に示すようにデバイス(電子機器)A701において、デバイスAの機能を実現する各種モジュールや電子部品が搭載されている電子基板上に、PUF回路703を有する認証チップ702が搭載されているとする。このデバイスA701を認証しようとする場合、デバイスAを認証する検証部(エンティティ)704が、まずデバイスA701に搭載する認証チップ702の製造時などに、認証チップ702が有するPUF回路703の出力値(レスポンス)を取得し登録する。そして、デバイスA701の認証を行うとき、検証部(エンティティ)704が、デバイスA701に搭載されている認証チップ702のPUF回路703の出力値(レスポンス)を取得し、予め登録しておいたPUF回路703の出力値(レスポンス)と比較する。その結果、PUF回路703の出力値(レスポンス)の一致度が所定のレベルを越えていれば、デバイスA701が正規品であると認証される。
国際公開第2011/155011号 特開2015−139010号公報
前述のようにPUF回路を有するチップを用いて、デバイスを認証する認証機能が実現できる。しかし、PUF回路で認証機能を実現するには、PUF回路を有するチップとそれを搭載するデバイスとが不可分であることが前提となる。例えば、図7(B)に示すように、正規品であるデバイスA701から搾取した認証チップ702を、偽造品であるデバイスB710に搭載すると、認証チップ702自体は同じものであるため、PUF回路703の出力値(レスポンス)は変わらず、デバイスB710が正規品であると認識してしまう。1つの側面では、本発明の目的は、PUF回路を有するチップとそれを搭載するデバイスとの一体性を実現し偽造耐性を向上させた信号処理システムを提供することにある。
信号処理システムの一態様は、物理的クローン作製不能機能を有する第1の回路の論理ゲートをそれぞれ有する複数のチップと、複数のチップを搭載した基板に形成され、複数のチップを接続し第1の回路の信号経路の一部を形成する信号線とを有する。複数のチップの内の1つのチップであって、第1の回路の出力を出力するチップは、第1の回路の信号経路に挿入された遅延回路と、第1の回路の出力を検出しその出力に応じて遅延回路の遅延量を制御する制御回路とを有する。
発明の一態様においては、偽造耐性を向上させた信号処理システムを提供することができる。
図1は、第1の実施形態における信号処理システムの構成例を示す図である。 図2は、第1の実施形態における遅延回路の構成例を示す図である。 図3は、第1の実施形態における制御回路の処理例を示すフローチャートである。 図4は、第2の実施形態における信号処理システムの構成例を示す図である。 図5は、PUF回路の構成例を示す図である。 図6は、PUF回路の他の構成例を示す図である。 図7は、PUF回路を用いたデバイスの認証を説明する図である。 図8は、PUF回路を分割して実装する例を示す図である。 図9は、PUF回路を分割して実装する例を説明する図である。
以下、本発明の実施形態を図面に基づいて説明する。
PUF回路を有するチップとそれを搭載するデバイスとの一体性を実現する技術として、1つの遅延型PUF回路を分割して複数のチップに分けて実装する技術がある(例えば、特許文献1参照)。例えば、図8に示すように、デバイス801に搭載される複数のチップ811、821、831に1つの遅延型PUF回路を分割して実装する。図8においては、遅延型PUF回路の一部である部分回路(PUF−A)812、部分回路(PUF−B)822、部分回路(PUF−C)832が、それぞれチップ(LSI−A)811、チップ(LSI−B)821、チップ(LSI−C)831に実装されている。
また、部分回路(PUF−A)812と部分回路(PUF−B)822とがデバイス801の基板上の信号線W81により接続され、部分回路(PUF−B)822と部分回路(PUF−C)832とがデバイス801の基板上の信号線W82により接続されている。このデバイス801の基板上の信号線W81、W82もPUF回路の一部を構成しており、部分回路812、822、832と信号線W81、W82とで1つの遅延型PUF回路を構成している。
したがって、デバイス801から部分回路812、822、832を有するチップ811、821、831だけを搾取して他のデバイスに搭載しても、PUF回路の特性が変化するため、PUF回路の出力(レスポンス)が変化することとなる。その結果、チップ811、821、831だけを他のデバイスに搭載しても、そのデバイスが正規品と認識されることを防止できる。このように移し変えることが不能なデバイスの基板上の信号線W81、W82をPUF回路の一部とすることで、PUF回路を有するチップとそれを搭載するデバイスとを不可分にし一体性を実現している。
遅延型PUF回路は、メモリ型PUF回路と比較して回路規模が大きくなる傾向があり、さらに機械学習攻撃などに弱いことが知られている。そこで、PUF回路を分割して複数のチップに分けて実装する前述の技術をメモリ型PUF回路に適用することが考えられるが、前述した技術をメモリ型PUF回路に単純に適用することができない。図9を参照して、PUF回路を分割して複数のチップに分けて実装する前述の技術をメモリ型PUF回路に単純に適用することができないことを、ラッチPUF回路を例に説明する。なお、図9においては、説明の便宜上、ラッチPUF回路における1つのRSラッチだけを示している。
例えば、図9に示すように、デバイス901に搭載されるチップ911、921に1つのラッチPUF回路を分割して実装するとする。ラッチPUF回路の一部である部分回路(PUF−A)912、部分回路(PUF−B)922が、それぞれチップ(LSI−A)911、チップ(LSI−B)921に実装され、部分回路(PUF−A)912がNANDゲート913を有し、部分回路(PUF−B)922がNANDゲート923を有している。
また、NANDゲート913に信号SIN及びNANDゲート923の出力が入力され、NANDゲート923に信号SIN及びNANDゲート913の出力が入力されるように、部分回路(PUF−A)912と部分回路(PUF−B)922とがデバイス901の基板上の信号線W91により接続されている。部分回路912、922と信号線W91とで1つのラッチPUF回路が構成される。このような構成とすることで、PUF回路を有するチップとそれを搭載するデバイスとの一体性を実現することは可能である。
このとき、PUF回路の出力は、デバイス901の基板上の信号線W91の物理特性P1、及びチップ911、921内の物理特性P2に依存することとなる。しかし、基板上の配線(例えばmmオーダ)の方がチップ内の微小な配線やゲート(例えばnmオーダ)よりもスケールが大きいため、信号線W91の物理特性P1とチップ911、921内の物理特性P2とがPUF回路の出力に与える影響がアンバランスとなる問題が生じる。つまり、チップ911、921内の物理特性P2の微小差ではなく、信号線W91の長さ、抵抗、容量等の信号線W91の物理特性P1の違いが支配的にPUF回路の出力に影響を与えることがある。
この問題を解決しない場合、信号線W91の物理特性P1の情報はデバイスの基板上に測定機器のプローブを接触させ測定することで入手可能であるので、攻撃者がチップを物理的に解析することなく、デバイスの外見観察や簡単な測定で容易にPUF回路の出力値を推測できてしまう可能性がある。つまり、同じ出力値を持つPUF回路を製造することが可能となり、結果としてデバイスを偽造することが可能となる。
そこで、以下に説明する実施形態では、前述した問題を解決するため、デバイスの製造時に、PUF回路の部分回路を接続するデバイスの基板上の信号線を調整してそれぞれの信号線の物理特性の差を極小化し、配線の長さや容量等の差をできるだけ小さくする。また、チップに実装されたPUF回路の部分回路の物理特性を調整する機能回路をチップ内に設け、初期設定時(製造時)に部分回路の物理特性を調整することで、PUF回路の出力に与える影響がアンバランスな状況を解消する。
(第1の実施形態)
本発明の第1の実施形態について説明する。第1の実施形態では、メモリ型PUF回路を分割して複数のチップに分けて実装する。以下では、メモリ型PUF回路としてラッチPUF回路を例に説明するが、これに限らず、SRAM PUF回路等の他のメモリ型PUF回路についても同様に適用可能である。
図1は、第1の実施形態における信号処理システムとしてのデバイス100の構成例を示す図である。デバイス100は、例えばプリンタのカートリッジ、電池等のバッテリー、ゲーム機のカートリッジ、スマートカード、携帯電話のSIMカード、無線インターネット接続の端末等の暗号機能を備えた組み込み機器などである。図1に示すように、デバイス100に搭載されるチップ111、112に1つのラッチPUF回路115が分割して実装される。
ラッチPUF回路115は、複数のRSラッチ120と制御回路130とを有する。なお、1つのRSラッチ120を図示しているが、例えばラッチPUF回路115の出力SOUTがNビットであれば、ラッチPUF回路115はN個のRSラッチ120を有する。また、複数のRSラッチ120が制御回路130を共有するようにしても良いし、複数のRSラッチ120のそれぞれに対して制御回路130を設けるようにしても良い。
ラッチPUF回路115が有するRSラッチ120の各々は、NANDゲート(否定論理積演算ゲート)121、122、Dフリップフロップ123、及び遅延回路124、125を有する。RSラッチ120のNANDゲート121は、チップ(LSI−A)111内に収容される。また、RSラッチ120のNANDゲート122、Dフリップフロップ123、及び遅延回路124、125と制御回路130とは、PUF回路115の出力側であるチップ(LSI−B)112内に収容される。
各RSラッチ120において、NANDゲート121には、信号SINが入力されるとともに、NANDゲート122の出力が遅延回路A124及びデバイス100の基板上の信号線W12を介して入力される。また、NANDゲート122には、信号SINが入力されるとともに、NANDゲート121の出力が遅延回路B125及びデバイス100の基板上の信号線W11を介して入力される。したがって、デバイス100の基板上の信号線W11、W12もラッチPUF回路115の一部である。なお、信号SINに係る信号線(配線)は、同じタイミングでNANDゲート121、122に入力されるように形成されている。
Dフリップフロップ123は、NANDゲート122の出力がデータ入力端子Dに入力され、信号SINがクロック入力端子CKに入力され、PUF回路115の出力SOUTを出力する。遅延回路A124は、入力されるNANDゲート122の出力を、制御回路130からの制御信号Z1に応じて遅延させ出力する。また、遅延回路B125は、入力されるNANDゲート121の出力を、制御回路130からの制御信号Z2に応じて遅延させ出力する。
遅延回路124、125は、例えば図2に示すような遅延回路200である。図2は、遅延回路の構成例を示す図である。遅延回路200は、デマルチプレクサ201、マルチプレクサ202、及び複数のディレイチェーンDL0、DL1、DL2、・・・、DLNを有する。各ディレイチェーンDL0、DL1、DL2、・・・、DLNは、互いに異なる数の偶数個のインバータが直列接続されている。図2に示す例では、ディレイチェーンDLk(kは添え字であり、0〜Nの整数)は、2k個のインバータを有する。すなわち、ディレイチェーンDLkは、(1個のインバータの遅延量)×2kの遅延量を有する。
これら複数のディレイチェーンDL0、DL1、DL2、・・・、DLNが、デマルチプレクサ201とマルチプレクサ202との間に並列に接続されている。デマルチプレクサ201は、ディレイチェーンDL0、DL1、DL2、・・・、DLNの内の制御信号Z1(又はZ2)に応じた1つのディレイチェーンに入力信号S1を出力する。また、マルチプレクサ202は、ディレイチェーンDL0、DL1、DL2、・・・、DLNの内の制御信号Z1(又はZ2)に応じた1つのディレイチェーンにより入力される信号を出力信号S2として出力する。
つまり、遅延回路200は、入力される制御信号Z1(又はZ2)によってディレイチェーンDL0、DL1、DL2、・・・、DLNの内の1つのディレイチェーンを選択し、選択したディレイチェーンに応じた遅延量で入力信号S1を遅延させた出力信号S2を出力する。なお、遅延回路124、125は、図2に示した構成に限られるものではなく、入力される制御信号Z1、Z2に応じて遅延量を変化させることができる様々な回路が適用可能である。
図1に戻り、信号線W11、W12は、チップ111、112に分割して実装したラッチPUF回路115を接続するデバイス100の基板上の配線である。例えば、信号線W11、W12は、デバイスの製造時に調整が行われ、信号線W11と信号線W12とで配線の長さ、抵抗、容量等の差ができるだけ小さくなるように形成されている。
制御回路130は、Dフリップフロップ123の出力、すなわちPUF回路115の出力SOUTを検出し、PUF回路115の出力SOUTに基づいて遅延回路124、125の遅延量を制御する。図3は、第1の実施形態における制御回路の処理例を示すフローチャートである。なお、ラッチPUF回路からの出力は、パラレル出力される複数ビットとなるが、図3には、パラレル出力される複数ビットの内の1ビットについての処理を示している。したがって、デバイス100に搭載されるラッチPUF回路115においては、ラッチPUF回路115からパラレル出力される各ビットに対して図3に示す処理が実行されることとなる。
まず、ステップS301にて、制御回路130は、ラッチPUF回路115に対して信号SINにクロック信号(もしくは所定数の立ち上がり信号)を入力することによって取得されるRSラッチ120の出力列(PUF回路の一連の出力)をバッファXに格納する。次に、ステップS302にて、制御回路130は、バッファXに格納されたデータ列の判定を行う。その結果、バッファXに格納されたデータがすべて“0”である場合にはステップS311へ進み、データがすべて“1”である場合にはステップS321へ進む。また、バッファXに格納されたデータ列が“0”と“1”とが混在している状態である場合には、制御回路130は、NANDゲート121、122に係る信号経路の特性の違いがわずかであると判断し処理を終了する。
ステップS302においてバッファXに格納されたデータがすべて“0”であると判定した場合に進むステップS311にて、制御回路130は、制御信号Z1、Z2の値を0に初期化する。次に、ステップS312にて、制御回路130は、遅延回路Aへの制御信号Z1の値をインクリメントする。つまり、制御回路130は、RSラッチ120の出力が“1”となる方向に遅延回路Aの遅延量を増加させるよう制御する。
続いて、ステップS313にて、制御回路130は、インクリメントした制御信号Z1の値の基で、信号SINにクロック信号(もしくは所定数の立ち上がり信号)を入力することによって取得されるRSラッチ120の出力列をバッファXに格納する。そして、ステップS314にて、制御回路130は、ステップS313においてバッファXに格納されたデータがすべて“1”であるか否かの判定を行い、バッファXに格納されたデータがすべて“1”になるまでステップS312〜S314の処理を繰り返す。
このようにして、信号SINに立ち上がり信号を入力することによって得られるRSラッチ120の出力が“0”から“1”に反転するような遅延回路Aに対する制御信号Z1の値の最小値を取得する。ステップS315にて、制御回路130は、前述のようにして取得した制御信号Z1の最小値を変数Tとして保存する。
次に、ステップS316にて、制御回路130は、信号SINに立ち上がり信号を入力したときのRSラッチ120の出力を“0”にするか“1”にするか設定するための1ビット乱数を生成し変数Yとして保存する。続いて、ステップS317にて、制御回路130は、変数Yの値を判定し、変数Yの値が“0”である場合にはステップS318へ進み、変数Yの値が“1”である場合にはステップS319へ進む。
変数Yの値が“0”である場合に進むステップS318にて、制御回路130は、信号SINに立ち上がり信号を入力したときのRSラッチ120の出力を“0”に維持するよう変数T未満の値をランダムに1つ選択して制御信号Z1の設定値として記憶する。一方、変数Yの値が“1”である場合に進むステップS319にて、制御回路130は、信号SINに立ち上がり信号を入力したときのRSラッチ120の出力を“1”に変更するよう変数Tの値を制御信号Z1の設定値として記憶する。そして、処理を終了する。
ステップS302においてバッファXに格納されたデータがすべて“1”であると判定した場合に進むステップS321にて、制御回路130は、制御信号Z1、Z2の値を0に初期化する。次に、ステップS322にて、制御回路130は、遅延回路Bへの制御信号Z2の値をインクリメントする。つまり、制御回路130は、RSラッチ120の出力が“0”となる方向に遅延回路Bの遅延量を増加させるよう制御する。
続いて、ステップS323にて、制御回路130は、インクリメントした制御信号Z2の値の基で、信号SINにクロック信号(もしくは所定数の立ち上がり信号)を入力することによって取得されるRSラッチ120の出力列をバッファXに格納する。そして、ステップS324にて、制御回路130は、ステップS323においてバッファXに格納されたデータがすべて“0”であるか否かの判定を行い、バッファXに格納されたデータがすべて“0”になるまでステップS322〜S324の処理を繰り返す。
このようにして、信号SINに立ち上がり信号を入力することによって得られるRSラッチ120の出力が“1”から“0”に反転するような遅延回路Bに対する制御信号Z2の値の最小値を取得する。ステップS325にて、制御回路130は、前述のようにして取得した制御信号Z2の最小値を変数Tとして保存する。
次に、ステップS326にて、制御回路130は、信号SINに立ち上がり信号を入力したときのRSラッチ120の出力を“0”にするか“1”にするか設定するための1ビット乱数を生成し変数Yとして保存する。続いて、ステップS327にて、制御回路130は、変数Yの値を判定し、変数Yの値が“1”である場合にはステップS328へ進み、変数Yの値が“0”である場合にはステップS329へ進む。
変数Yの値が“1”である場合に進むステップS328にて、制御回路130は、信号SINに立ち上がり信号を入力したときのRSラッチ120の出力を“1”に維持するよう変数T未満の値をランダムに1つ選択して制御信号Z2の設定値として記憶する。一方、変数Yの値が“0”である場合に進むステップS329にて、制御回路130は、信号SINに立ち上がり信号を入力したときのRSラッチ120の出力を“0”に変更するよう変数Tの値を制御信号Z2の設定値として記憶する。そして、処理を終了する。
第1の実施形態におけるデバイス100では、ラッチPUF回路115の出力値(レスポンス)の登録時には、まず制御回路130により図3に示した処理を行い、各RSラッチ120に対する制御信号Z1、Z2の値を決定し設定する。制御信号Z1、Z2の値を設定した後、デバイス100を認証する検証部(エンティティ)が、ラッチPUF回路115の出力値(レスポンス)を取得し登録する。デバイス100の検証時には、検証部(エンティティ)が、デバイス100に搭載されているラッチPUF回路115の出力値(レスポンス)を取得し、予め登録しておいたラッチPUF回路115の出力値(レスポンス)と比較する。その結果、ラッチPUF回路115の出力値(レスポンス)の一致度が所定のレベルを越えていれば、デバイス100が正規品であると認証される。
第1の実施形態によれば、PUF回路を構成する回路を接続するデバイスのそれぞれの信号線の物理特性の差を極小化して配線の長さや容量等の差をできるだけ小さくし、初期設定時にPUF回路を構成する回路の物理特性を調整することで、PUF回路を有するチップとそれを搭載するデバイスとの一体性を実現しPUF回路の出力に与える影響がアンバランスな状況を解消することができる。これにより、PUF回路を有するチップとそれを搭載するデバイスとの一体性を実現し偽造耐性を向上させた信号処理システムを提供することが可能になる。
なお、NANDゲート121、122を用いたRSラッチ120を例に説明したが、これに限定されるものではない。本実施形態は、NORゲート(否定論理和演算ゲート)を用いたRSラッチも適用可能である。すなわち、図1に示したNANDゲート121、122のそれぞれをNORゲートに置き換えた構成も適用可能である。RSラッチにNORゲートを用いた場合には、信号SINに立ち下がり信号を入力することによって得られるRSラッチの出力をラッチPUF回路の出力とすればよい。
(第2の実施形態)
次に、本発明の第2の実施形態について説明する。第1の実施形態ではメモリ型PUF回路を分割して複数のチップに分けて実装する例を示したが、遅延型PUF回路にも同様に適用することができる。以下に説明する第2の実施形態では、遅延型PUF回路であるアービターPUF回路を分割して複数のチップに分けて実装する例を示すが、これに限らず、リングオシレータPUF回路等の他の遅延型PUF回路についても同様に適用可能である。
図4は、第2の実施形態における信号処理システムとしてのデバイス400の構成例を示す図である。デバイス400は、例えばプリンタのカートリッジ、電池等のバッテリー、ゲーム機のカートリッジ、スマートカード、携帯電話のSIMカード、無線インターネット接続の端末等の暗号機能を備えた組み込み機器などである。図4に示すように、デバイス400に搭載されるチップ411、412に1つのアービターPUF回路415が分割して実装される。
アービターPUF回路415は、nビットの入力(チャレンジ)ch[0]〜ch[n−1]に対して1ビットの出力(レスポンス)SOUTを出力する。アービターPUF回路415は、複数の経路制御回路421、アービター(Dフリップフロップ、D−FF)424、遅延回路425、426、及び制御回路430を有する。図4には、n個の経路制御回路421を有する例を示している。
図4に示した例では、入力ch[0]〜ch[m−1](0<m<n)が入力される経路制御回路421がチップ(LSI−A)411に収容される。入力ch[0]〜ch[m−1]が入力される経路制御回路421は縦続接続される。また、入力ch[m]〜ch[n−1]が入力される経路制御回路421、アービター424、遅延回路425、426、及び制御回路430がPUF回路415の出力側であるチップ(LSI−B)412に収容される。入力ch[m]〜ch[n−1]が入力される経路制御回路421は縦続接続される。
チップ411、412に分割して実装したアービターPUF回路415は、デバイス400の基板上の信号線W41、W42で接続されている。したがって、信号線W41、W42は、アービターPUF回路415の一部である。例えば、信号線W41、W42は、デバイスの製造時に調整が行われ、信号線W41と信号線W42とで配線の長さ、抵抗、容量等の差ができるだけ小さくなるように形成されている。
経路制御回路421の各々は、2つのセレクタ422、423を有する。経路制御回路421のセレクタ422、423には、制御信号として入力chが入力されるとともに、前段の経路制御回路421のセレクタ422、423のそれぞれの出力が入力される。経路制御回路421の各々は、例えば入力chの値が“0”である場合、前段からの信号をそのままストレートに出力し、入力chの値が“1”である場合、前段からの信号をクロスさせるように出力する。
なお、入力ch[0]が入力される初段の経路制御回路421のセレクタ422、423には、信号SINが入力される。また、チップ411内の入力ch[m−1]が入力される最終段の経路制御回路421のセレクタ422の出力は、信号線W41及び遅延回路A425を介して、チップ412内の入力ch[m]が入力される初段の経路制御回路421のセレクタ422、423に入力される。また、チップ411内の入力ch[m−1]が入力される最終段の経路制御回路421のセレクタ423の出力は、信号線W42及び遅延回路B426を介して、チップ412内の入力ch[m]が入力される初段の経路制御回路421のセレクタ422、423に入力される。
アービター424は、入力ch[n−1]が入力される経路制御回路421のセレクタ422の出力がデータ入力端子に入力され、入力ch[n−1]が入力される経路制御回路421のセレクタ422の出力がクロック入力端子に入力され、PUF回路415の出力SOUTを出力する。アービター424は、信号SINに立ち上がり信号を入力したとき、信号がクロック入力端子より先にデータ入力端子に到達すれば出力SOUTに“1”を出力し、信号がデータ入力端子より先にクロック入力端子に到達すれば出力SOUTに“0”を出力する。
遅延回路425、426は、例えば図2に示したような遅延回路200である。遅延回路A425は、入力ch[m−1]が入力される経路制御回路421のセレクタ422の出力を、制御回路430からの制御信号Z1に応じて遅延させ出力する。また、遅延回路B426は、入力ch[m−1]が入力される経路制御回路421のセレクタ423の出力を、制御回路430からの制御信号Z2に応じて遅延させ出力する。制御回路430は、PUF回路415(アービター424)の出力SOUTを検出し、検出した出力SOUTに基づいて遅延回路425、426の遅延量を制御する。
なお、第2の実施形態におけるデバイス400の動作については、制御信号Z1、Z2の設定値を決定する際に、RSラッチ120の出力列ではなく、PUF回路415(アービター424)の出力列を基に決定する点が異なるだけで、その他は同様であるので説明は省略する。
第2の実施形態によれば、第1の実施形態と同様に、PUF回路の出力に与える影響がアンバランスな状況を解消することができ、PUF回路を有するチップとそれを搭載するデバイスとの一体性を実現し偽造耐性を向上させた信号処理システムを提供することが可能になる。
なお、前述した実施形態では、2つのチップに分割してPUF回路を実装する例について示したが、3以上のチップに分割してPUF回路を実装するようにしても良い。また、前記実施形態は、何れも本発明を実施するにあたっての具体化のほんの一例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
以上の第1〜第2の実施形態を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)
物理的クローン作製不能機能を有する第1の回路の論理ゲートをそれぞれ有する複数のチップと、
前記複数のチップを搭載した基板に形成され、前記複数のチップを接続し前記第1の回路の信号経路の一部を形成する信号線とを有し、
前記複数のチップの内の前記第1の回路の出力を出力する第1の前記チップは、
前記第1の回路の信号経路に挿入された遅延回路と、
前記第1の回路の出力を検出し該出力に応じて前記遅延回路の遅延量を制御する制御回路とを有することを特徴とする信号処理システム。
(付記2)
前記遅延回路は、前記第1のチップが有する前記論理ゲートと前記第1のチップとは異なる他の前記チップが有する前記論理ゲートとの間で入出力される信号の前記信号経路にそれぞれ挿入されることを特徴とする付記1記載の信号処理システム。
(付記3)
前記制御回路は、検出した前記第1の回路の出力に応じて、前記第1の回路の信号経路に挿入された遅延回路の内の1つの前記遅延回路の遅延量を制御することを特徴とする付記2記載の信号処理システム。
(付記4)
前記第1の回路は、物理的クローン作製不能機能を有するメモリ型の回路であることを特徴とする付記1〜3の何れか1項に記載の信号処理システム。
(付記5)
前記第1の回路は、前記第1のチップが有し前記第1の回路の出力を供給する第1の否定論理積演算ゲートと、前記第1のチップとは異なる他の前記チップが有し前記第1の否定論理積演算ゲートの出力を受けるとともに前記第1の否定論理積演算ゲートに出力を供給する第2の否定論理積演算ゲートとを有するラッチを有することを特徴とする付記1〜3の何れか1項に記載の信号処理システム。
(付記6)
前記第1のチップは、
第1の否定論理積演算ゲートと、
前記第1の否定論理積演算ゲートの出力が入力され前記第1の回路の出力を出力するフリップフロップと、
第1の遅延回路と、
第2の遅延回路とを有し、
前記第1のチップとは異なる第2のチップは、
前記第1の遅延回路を介して前記第1の否定論理積演算ゲートの出力が入力され、出力が前記第2の遅延回路を介して前記第1の否定論理積演算ゲートに入力される第2の否定論理積演算ゲートを有することを特徴とする付記1〜3の何れか1項に記載の信号処理システム。
(付記7)
前記第1の回路は、前記第1のチップが有し前記第1の回路の出力を供給する第1の否定論理和演算ゲートと、前記第1のチップとは異なる他の前記チップが有し前記第1の否定論理和演算ゲートの出力を受けるとともに前記第1の否定論理和演算ゲートに出力を供給する第2の否定論理和演算ゲートとを有するラッチを有することを特徴とする付記1〜3の何れか1項に記載の信号処理システム。
(付記8)
前記第1のチップは、
第1の否定論理和演算ゲートと、
前記第1の否定論理和演算ゲートの出力が入力され前記第1の回路の出力を出力するフリップフロップと、
第1の遅延回路と、
第2の遅延回路とを有し、
前記第1のチップとは異なる第2のチップは、
前記第1の遅延回路を介して前記第1の否定論理和演算ゲートの出力が入力され、出力が前記第2の遅延回路を介して前記第1の否定論理和演算ゲートに入力される第2の否定論理和演算ゲートを有することを特徴とする付記1〜3の何れか1項に記載の信号処理システム。
(付記9)
前記第1の回路は、物理的クローン作製不能機能を有する遅延型の回路であることを特徴とする付記1〜3の何れか1項に記載の信号処理システム。
(付記10)
前記第1のチップは、
第1の遅延回路と、
第2の遅延回路と、
2つのセレクタをそれぞれ有し、縦続接続された複数の経路制御回路と、
前記第1のチップ内で最終段の前記経路制御回路が有する一方の前記セレクタの出力がデータ入力端子に入力され、他方の前記セレクタの出力がクロック入力端子に入力され、前記第1の回路の出力を出力するフリップフロップとを有し、
前記第1のチップとは異なる第2のチップは、
2つのセレクタをそれぞれ有し、縦続接続された複数の経路制御回路を有し、
前記第1のチップ内の初段の前記経路制御回路が有する一方の前記セレクタに、前記第1の遅延回路を介して前記第2のチップ内の最終段の前記経路制御回路が有する一方の前記セレクタの出力が入力され、
前記第1のチップ内の初段の前記経路制御回路が有する他方の前記セレクタに、前記第2の遅延回路を介して前記第2のチップ内の最終段の前記経路制御回路が有する他方の前記セレクタの出力が入力されることを特徴とする付記1〜3の何れか1項に記載の信号処理システム。
100、400 デバイス
111、112、411、412 チップ
115 ラッチPUF回路
120 RSラッチ
121、122 NANDゲート
123 Dフリップフロップ
124、125、425、426 遅延回路
130、430 制御回路
415 アービターPUF回路
421 経路制御回路
422、423 セレクタ
424 アービター
W11、W12、W41、W42 信号線(配線)

Claims (8)

  1. 物理的クローン作製不能機能を有する第1の回路の論理ゲートをそれぞれ有する複数のチップと、
    前記複数のチップを搭載した基板に形成され、前記複数のチップを接続し前記第1の回路の信号経路の一部を形成する信号線とを有し、
    前記複数のチップの内の1つのチップであって、前記第1の回路の出力を出力する第1のチップは、
    前記第1の回路の信号経路に挿入された遅延回路と、
    前記第1の回路の出力を検出し該出力に応じて前記遅延回路の遅延量を制御する制御回路とを有することを特徴とする信号処理システム。
  2. 前記遅延回路は、前記第1のチップが有する前記論理ゲートと前記第1のチップとは異なる他の前記チップが有する前記論理ゲートとの間で入出力される信号の前記信号経路にそれぞれ挿入されることを特徴とする請求項1記載の信号処理システム。
  3. 前記制御回路は、検出した前記第1の回路の出力に応じて、前記第1の回路の信号経路に挿入された遅延回路の内の1つの前記遅延回路の遅延量を制御することを特徴とする請求項2記載の信号処理システム。
  4. 前記第1の回路は、前記第1のチップが有し前記第1の回路の出力を供給する第1の否定論理積演算ゲートと、前記第1のチップとは異なる他の前記チップが有し前記第1の否定論理積演算ゲートの出力を受けるとともに前記第1の否定論理積演算ゲートに出力を供給する第2の否定論理積演算ゲートとを有するラッチを有することを特徴とする請求項1〜3の何れか1項に記載の信号処理システム。
  5. 前記第1のチップは、
    第1の否定論理積演算ゲートと、
    前記第1の否定論理積演算ゲートの出力が入力され前記第1の回路の出力を出力するフリップフロップと、
    第1の遅延回路と、
    第2の遅延回路とを有し、
    前記複数のチップの内の1つのチップであって、前記第1のチップとは異なる第2のチップは、
    前記第1の遅延回路を介して前記第1の否定論理積演算ゲートの出力が入力され、出力が前記第2の遅延回路を介して前記第1の否定論理積演算ゲートに入力される第2の否定論理積演算ゲートを有することを特徴とする請求項1〜3の何れか1項に記載の信号処理システム。
  6. 前記第1の回路は、前記第1のチップが有し前記第1の回路の出力を供給する第1の否定論理和演算ゲートと、前記第1のチップとは異なる他の前記チップが有し前記第1の否定論理和演算ゲートの出力を受けるとともに前記第1の否定論理和演算ゲートに出力を供給する第2の否定論理和演算ゲートとを有するラッチを有することを特徴とする請求項1〜3の何れか1項に記載の信号処理システム。
  7. 前記第1のチップは、
    第1の否定論理和演算ゲートと、
    前記第1の否定論理和演算ゲートの出力が入力され前記第1の回路の出力を出力するフリップフロップと、
    第1の遅延回路と、
    第2の遅延回路とを有し、
    前記複数のチップの内の1つのチップであって、前記第1のチップとは異なる第2のチップは、
    前記第1の遅延回路を介して前記第1の否定論理和演算ゲートの出力が入力され、出力が前記第2の遅延回路を介して前記第1の否定論理和演算ゲートに入力される第2の否定論理和演算ゲートを有することを特徴とする請求項1〜3の何れか1項に記載の信号処理システム。
  8. 前記第1のチップは、
    第1の遅延回路と、
    第2の遅延回路と、
    2つのセレクタをそれぞれ有し、縦続接続された複数の経路制御回路と、
    前記第1のチップ内で最終段の前記経路制御回路が有する一方の前記セレクタの出力がデータ入力端子に入力され、他方の前記セレクタの出力がクロック入力端子に入力され、前記第1の回路の出力を出力するフリップフロップとを有し、
    前記複数のチップの内の1つのチップであって、前記第1のチップとは異なる第2のチップは、
    2つのセレクタをそれぞれ有し、縦続接続された複数の経路制御回路を有し、
    前記第1のチップ内の初段の前記経路制御回路が有する一方の前記セレクタに、前記第1の遅延回路を介して前記第2のチップ内の最終段の前記経路制御回路が有する一方の前記セレクタの出力が入力され、
    前記第1のチップ内の初段の前記経路制御回路が有する他方の前記セレクタに、前記第2の遅延回路を介して前記第2のチップ内の最終段の前記経路制御回路が有する他方の前記セレクタの出力が入力されることを特徴とする請求項1〜3の何れか1項に記載の信号処理システム。
JP2017030983A 2017-02-22 2017-02-22 信号処理システム Active JP6867582B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017030983A JP6867582B2 (ja) 2017-02-22 2017-02-22 信号処理システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017030983A JP6867582B2 (ja) 2017-02-22 2017-02-22 信号処理システム

Publications (2)

Publication Number Publication Date
JP2018136757A JP2018136757A (ja) 2018-08-30
JP6867582B2 true JP6867582B2 (ja) 2021-04-28

Family

ID=63365581

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017030983A Active JP6867582B2 (ja) 2017-02-22 2017-02-22 信号処理システム

Country Status (1)

Country Link
JP (1) JP6867582B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB201919297D0 (en) 2019-12-24 2020-02-05 Aronson Bill Temperature sensing physical unclonable function (puf) authenication system
US11516028B2 (en) 2019-12-24 2022-11-29 CERA Licensing Limited Temperature sensing physical unclonable function (PUF) authentication system
WO2022075585A1 (ko) * 2020-10-05 2022-04-14 엘지전자 주식회사 물리적 복제 방지 장치, 및 이를 구비하는 신호처리장치, 영상표시장치
CN112910653B (zh) * 2021-01-19 2022-04-08 电子科技大学 一种puf结构
CN113505401B (zh) * 2021-07-13 2022-04-26 湖北工业大学 一种可提取芯片和电路板物理指纹的混合puf电路及提取方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NO316700B1 (no) * 2002-02-18 2004-04-05 Odd Viggo Molmann Maleverktoy
US7840803B2 (en) * 2002-04-16 2010-11-23 Massachusetts Institute Of Technology Authentication of integrated circuits
WO2011155011A1 (ja) * 2010-06-07 2011-12-15 三菱電機株式会社 信号処理システム
JP2016171452A (ja) * 2015-03-12 2016-09-23 富士通株式会社 電子回路、認証装置及び認証システム

Also Published As

Publication number Publication date
JP2018136757A (ja) 2018-08-30

Similar Documents

Publication Publication Date Title
JP6867582B2 (ja) 信号処理システム
Gao et al. Obfuscated challenge-response: A secure lightweight authentication mechanism for PUF-based pervasive devices
Roel Physically unclonable functions: Constructions, properties and applications
US10366253B2 (en) Reliability enhancement methods for physically unclonable function bitstring generation
US8782396B2 (en) Authentication with physical unclonable functions
Machida et al. A new arbiter PUF for enhancing unpredictability on FPGA
Lin et al. Low-power sub-threshold design of secure physical unclonable functions
CN105760786B (zh) 一种cpu+fpga集成芯片的强puf认证方法及系统
US20130082733A1 (en) Signal processing system
CN102762994A (zh) 包括物理不可再生功能单元的硅集成电路以及用于测试这种电路的方法和系统
US9712166B2 (en) Data generating device and authentication system
CN110929299B (zh) 针对仲裁器puf的可靠性自检电路与可靠性增强方法
US9712330B2 (en) Physically uncloneable function device using MRAM
JP2016171452A (ja) 電子回路、認証装置及び認証システム
Yao et al. ClockPUF: Physical Unclonable Functions based on clock networks
US11171647B2 (en) Integrated electronic circuit
Zalivaka et al. FPGA implementation of modeling attack resistant arbiter PUF with enhanced reliability
Dey et al. PUF based hardware security: A review
US11861050B2 (en) SR flip-flop based physical unclonable functions for hardware security
US11792025B2 (en) Methods of verifying that a first device and a second device are physically interconnected
Tariguliyev et al. Reliability and security of arbiter‐based physical unclonable function circuits
CN113268745A (zh) 基于Camellia加密算法的软PUF
KR101673163B1 (ko) 듀얼 레일 딜레이 로직을 이용한 물리적 복제 방지 회로
Hiromoto et al. MRO-PUF: Physically Unclonable Function with Enhanced Resistance against Machine Learning Attacks Utilizing Instantaneous Output of Ring Oscillator
CN218825514U (zh) 硬件防护结构及芯片

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20191112

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200925

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201006

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201124

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210322

R150 Certificate of patent or registration of utility model

Ref document number: 6867582

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150