IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 独立行政法人産業技術総合研究所の特許一覧

特許7249633半導体デバイスのセキュリティ機能の検査装置
<>
  • 特許-半導体デバイスのセキュリティ機能の検査装置 図1
  • 特許-半導体デバイスのセキュリティ機能の検査装置 図2
  • 特許-半導体デバイスのセキュリティ機能の検査装置 図3
  • 特許-半導体デバイスのセキュリティ機能の検査装置 図4
  • 特許-半導体デバイスのセキュリティ機能の検査装置 図5
  • 特許-半導体デバイスのセキュリティ機能の検査装置 図6
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-03-23
(45)【発行日】2023-03-31
(54)【発明の名称】半導体デバイスのセキュリティ機能の検査装置
(51)【国際特許分類】
   H04L 9/10 20060101AFI20230324BHJP
【FI】
H04L9/10 Z
【請求項の数】 8
(21)【出願番号】P 2019122969
(22)【出願日】2019-07-01
(65)【公開番号】P2021010108
(43)【公開日】2021-01-28
【審査請求日】2022-05-13
(73)【特許権者】
【識別番号】301021533
【氏名又は名称】国立研究開発法人産業技術総合研究所
(72)【発明者】
【氏名】小笠原 泰弘
(72)【発明者】
【氏名】堀 洋平
【審査官】行田 悦資
(56)【参考文献】
【文献】米国特許出願公開第2015/0195088(US,A1)
【文献】米国特許出願公開第2017/0141930(US,A1)
【文献】特開2017-010530(JP,A)
【文献】米国特許出願公開第2017/0242660(US,A1)
【文献】特開2002-245796(JP,A)
【文献】特開平02-170566(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 9/10
(57)【特許請求の範囲】
【請求項1】
半導体デバイスに組み込まれ、セキュリティ機能を検査するための検査装置であって、
セキュリティ機能を有する回路と、
乱数列を生成するための乱数生成器と、
前記乱数生成器の無効化回路と、を含み、
前記乱数生成器が生成した乱数列に基づくnビットのチャレンジと、当該チャレンジを受けて前記セキュリティ機能を有する回路が出力するnビットのレスポンスの複数のペアが得られた後に、前記無効化回路によって前記乱数生成器が永久に無効化されることを特徴とする、検査装置。
【請求項2】
前記無効化回路は、前記乱数生成器の動作不能化回路、または前記乱数生成器の出力無効化回路を含む、請求項1に記載の検査装置。
【請求項3】
前記乱数生成器の動作不能化回路は、前記乱数生成器への電力を遮断するためのヒューズを含む、請求項2に記載の検査装置。
【請求項4】
前記乱数生成器の出力無効化回路は、前記乱数生成器からの出力を遮断するためのヒューズを含む、請求項2に記載の検査装置。
【請求項5】
前記乱数生成器は真正乱数生成器を含む、請求項1から4のいずれか1項に記載の検査装置。
【請求項6】
前記セキュリティ機能は、半導体の特性ばらつきを利用する物理的に複製困難な関数(PUF)を含む、請求項1から5のいずれか1項に記載の検査装置。
【請求項7】
前記PUFは、擬似LFSR PUF(PL-PUF)またはArbiter PUFを含む、請求項6に記載の検査装置。
【請求項8】
請求項1から7のいずれか1項の検査装置を内蔵する半導体デバイス。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、半導体デバイスのセキュリティ機能の検査装置に関し、具体的には、半導体デバイスに組み込まれるセキュリティ機能の検査装置に関する。
【背景技術】
【0002】
半導体デバイスに、そのデバイスの模倣(複製)品を判別する等のために、デバイスの識別等の何らかのセキュリティ機能を組み込みたい要請がある。その場合、従来から物理的特性に基づき複製困難な固有情報を生成するPUF(Physically Unclonable Function:物理複製困難関数)の技術を用いることが知られている(例えば、特許文献1、2参照)。
【0003】
PUFの技術に基づく回路(以下、PUF回路)では、同じレイアウト構成で同一の製造工程で製造された回路であっても、制御不能な製造ばらつきによりPUF回路個々の物理的特性(伝送信号遅延時間、配線容量、素子特性その他)が僅かに異なることを利用する。任意の複数ビットの入力(チャレンジと呼ぶ)に対し、物理的特性に基づいて生成した1~複数ビットの出力(レスポンスと呼ぶ)を返す処理を、チャレンジのパターンを変えながら複数回繰り返して、複数ビットのレスポンスからなる応答を生成する。
【0004】
このチャレンジとレスポンスの関係は、同一のPUF回路では同じチャレンジに対し常に同一のレスポンスを返すという再現性がある。一方、回路構成が同じでも異なるPUF回路では物理的特性が異なるため、それらの間では同じチャレンジに対して互いに相関の無いレスポンスを返すというランダム性(ユニーク性)がある。上記の物理的特性の相違は、前述したように制御不能な製造ばらつきに基づくもので複製困難である。従って、PUF回路の出力であるレスポンスは、複製困難な固有情報(ID)として用いることができる。
【0005】
これにより、半導体デバイスにPUF回路を組み込んだ場合は、PUF回路に既知のチャレンジを入力した場合に出力されるレスポンスは、その半導体デバイスの固有情報となる。チャレンジを入力した場合に得られるレスポンスが本来の値の固有情報であるか否か、予め登録した本来の値の固有情報と比較することで、その半導体デバイスの真贋判定などに使用することができる。このようなPUF回路が生成する固有情報は、人間の指紋のような生体情報に喩えられる。
【0006】
半導体デバイスに組み込まれたPUF回路の性能検証は、同様に予め半導体デバイスに組み込まれたテスト回路(BIST)を用いて行うことが提案されている(例えば、非特許文献1、2参照)。しかし、半導体デバイスの出荷後にテスト回路が攻撃者に利用されてPUFの解析に用いられてしまう可能性がある。
【先行技術文献】
【特許文献】
【0007】
【文献】特開2011-198317号公報
【文献】特開2017-183944号公報
【非特許文献】
【0008】
【文献】Siam U. Hussain, et al. ” A Built-In-Self-Test Scheme for OnlineEvaluation of Physical Unclonable Functions and True Random Number Generators”, IEEE TRANSACTIONS ON MULTI-SCALE COMPUTING SYSTEMS, VOL. 2, NO. 1, JANUARY-MARCH 2016
【文献】Siam U. Hussain, et al. ” BIST-PUF: Online, Hardware-based Evaluation of Physically Unclonable Circuit Identifiers”, 2014 IEEE/ACM International Conference on Computer-Aided Design (ICCAD)
【発明の概要】
【発明が解決しようとする課題】
【0009】
本発明の目的は、出荷前に半導体デバイスのセキュリティ機能の検査のための認証用情報の取得ができ、出荷後にはその認証用情報の取得を不可能にして第三者によるセキュリティ機能の解析ができないようにすることが可能な、半導体デバイスに組み込まれるセキュリティ機能の検査(BIST)装置を提供することである。なお、本明細書で使用する「セキュリティ機能」は、半導体デバイスの識別、真贋判定、認証等を含み、「セキュリティ機能の検査」は、セキュリティ特性の優劣の検査を含む意味でも用いられる。
【課題を解決するための手段】
【0010】
本発明の一態様では、半導体デバイスに組み込まれ、セキュリティ機能を検査するための検査装置を提供する。その検査装置は、セキュリティ機能を有する回路と、乱数列を生成するための乱数生成器と、乱数生成器の無効化回路と、を含む。乱数生成器が生成した乱数列に基づくnビットのチャレンジと、当該チャレンジを受けてセキュリティ機能を有する回路が出力するnビットのレスポンスの複数のペアが得られた後に、無効化回路によって乱数生成器が永久に無効化される。
【発明の効果】
【0011】
本発明の検査装置によれば、半導体デバイス内に埋め込むことによって検査のコストを下げ、かつ無効化回路も埋め込むことで、半導体デバイスの出荷後に第三者が大量のチャレンジーレスポンスペアを取得してセキュリティ機能を有する回路の解析を行うことを完全に防ぐことができる。
【図面の簡単な説明】
【0012】
図1】本発明の一実施形態の半導体デバイスに組み込まれた検査装置の基本構成を示すブロック図である。
図2】本発明の一実施形態の乱数生成器の構成を示す図である。
図3】本発明の一実施形態の乱数生成器を無効化するための無効化回路の構成を示す図である。
図4】本発明の一実施形態の乱数生成器を無効化するための無効化回路の構成を示す図である。
図5】本発明の一実施形態の乱数生成器を無効化するための無効化回路の構成を示す図である。
図6】本発明の一実施形態の乱数生成器とその無効化回路の構成を示す図である。
【発明を実施するための形態】
【0013】
図面を参照しながら本発明の実施形態について説明する。図1は、半導体デバイスに組み込まれた検査装置の基本構成を示すブロック図である。半導体デバイス1の中に検査装置として、乱数列を生成するための乱数生成器2と、セキュリティ機能を有する回路4と、乱数生成器の無効化回路6と、乱数列を保持するレジスタ8を含む。レジスタ8は、乱数生成器2が出力する乱数列の一時保管と、セキュリティ機能を有する回路4が出力するレスポンスを一時保管の双方の機能を含むように構成される。半導体デバイス1は、Siなどの半導体で作られる1つのデバイス(素子、チップ、IC、LSI、モジュール等)を意味し、「半導体回路」、「半導体集積回路」、「半導体装置」等の用語と同様な意味で使用されるものである。
【0014】
乱数生成器2が生成した乱数列に基づくnビットのチャレンジと、当該チャレンジを受けてセキュリティ機能を有する回路4が出力するnビットのレスポンスの複数のペアが得られる。乱数生成器2とセキュリティ機能を有する回路4は、半導体デバイス1の製造工程において同時に製造されるので、その製造工程における制御不能な同一の製造ばらつきが反映されている。したがって、nビットのチャレンジとnビットのレスポンスの複数のペアは、半導体デバイス1固有の値を有し、他の半導体デバイスとは異なる値を持つ。
【0015】
ビットのチャレンジとnビットのレスポンスの複数のペアは、半導体デバイス1の出荷前の検査で取得され、外部のコンピュータ(サーバ等)へ送られる。外部のコンピュータ(サーバ等)は、入手したチャレンジとレスポンスの複数のペアを用いて出荷後に半導体デバイスの識別、真贋判定、認証等を行う。詳細は後述するが、この複数のペアの取得後で出荷前に無効化回路6によって乱数生成器2が永久に無効化される。これにより、半導体デバイスの出荷後に第三者が大量のチャレンジーレスポンスペアを取得してセキュリティ機能を有する回路の解析を行うことを完全に防ぐことができる。
【0016】
セキュリティ機能を有する回路4は、例えば半導体の特性ばらつきを利用する物理的に複製困難な関数(PUF)を生成する回路を含む。PUFは、例えば擬似LFSR PUF(PL-PUF)またはArbiter PUFを含む。PL-PUFは、PL-PUFの技術に基づき、LFSRの構造を模した回路を用いて、その構成回路素子の物理的特性に基づき複製困難な複数ビットの固有情報を生成する公知の回路を用いて実現することができる。一例として、本出願の発明者による既出の特許文献2(特開2017-183944号公報)の図2のPL-PUF回路(LFSRを模した回路構成の発振回路111とレスポンスを保持するためのレジスタ112を含む)と同様な構成により実現することができる。
【0017】
Arbiter PUFは、2つのセレクタの列の出力の遅延量に応じてアービタ回路の出力が0(L)または1(H)で変化する公知の回路を用いて実現することができる。一例として、既出の特許文献1(特開2011-198317号公報)の図4のArbiter PUF回路、あるいは本出願の発明者らによる特許(特許6445703)の図5のArbiter PUF回路と同様な構成により実現することができる。
【0018】
図2は、本発明の一実施形態の乱数生成器2の構成を示す図である。図2の乱数生成器2は、並列接続された複数のラッチ回路16と、ラッチ回路16への電力(Vdd_V)をオン、オフするための2つのゲート回路12、14と、複数のラッチ回路16の出力を受けて乱数列の出力OUTを出す排他的論理ゲート(XOR)22を含む。ゲート回路12、14は、電源VddとグランドVssの間で直列接続されたp型トランジスタ12とn型トランジスタ14で構成される。p型トランジスタ12とn型トランジスタ14のゲートは、制御信号pgatepによってオン、オフ制御される。
【0019】
ラッチ回路16の数は、生成する乱数列のビット数に応じて設定される。ラッチ回路16は、例えばインバータ18と接合型トランジスタ20を含むバスキーパー(Buskeeper)セルを用いて構成されている。接合型トランジスタ20は、制御信号pgatep、pgatenによってオン、オフ制御される。乱数生成器2は、制御信号pgatepによる電力(Vdd_V)のオン、オフ制御と、制御信号pgatep、pgatenによる各ラッチ内の接合型トランジスタ20のオン、オフ制御によって真正乱数を生成し、排他的論理ゲート(XOR)22からその乱数列を出力(OUT)する。
【0020】
図3図5を参照しながら本発明の一実施形態の乱数生成器の無効化回路6について説明する。図3は、無効化回路6の一例として、乱数生成器自体を無効化する場合に用いる乱数生成器2の動作不能化回路を示す。動作不能化回路は、電源とNANDゲート28の一方の入力線との間に設けられたヒューズ24と、その一方の入力線とグランドとの間に設けられたn型トランジスタ26と、NANDゲート28の出力の分岐線に接続するインバータ30を含む。ヒューズ24は、従来からある抵抗線を過電流により溶融切断するタイプを用いることができる。ヒューズ24には、その切断のための電流印加回路(図示なし)が接続されている。
【0021】
NANDゲート28の他方の入力線には、乱数生成器2の2つのゲート回路12、14と各ラッチ回路16内の接合型トランジスタ20の制御信号pgatep、pgatenを切り替えるための別の制御信号INが入力される。ヒューズ24を切ることによりNANDゲート28の一方の入力線がロー(L)に固定される。NANDゲート28の出力がハイ(H)に固定され、すなわち制御信号pgatep、pgatenがハイ(H)とロー(L)に固定され、図2の乱数生成器2において電源Vddが各ラッチ16に印加されなくなる。その結果、ラッチ回路16の動作が停止し乱数生成器2は永久に無効化(停止)する。
【0022】
図4は、無効化回路6の他の一例として、乱数生成器の出力を無効化する場合に用いる乱数生成器2の出力無効化回路を示す。出力無効化回路は、電源とNANDゲート36の一方の入力線との間に設けられたヒューズ32と、その一方の入力線とグランドとの間に設けられたn型トランジスタ34を含む。ヒューズ32は、従来からある抵抗線を過電流により溶融切断するタイプを用いることができる。ヒューズ32には、その切断のための電流印加回路(図示なし)が接続されている。
【0023】
NANDゲート36の他方の入力線には、乱数生成器2の出力OUTが入力される。NANDゲート36の出力は、セキュリティ機能を有する回路4(例えばPL-PUF回路)へ向けて出力する。ヒューズ32を切ることによりNANDゲート36の出力がハイ(H)に固定され、図2の乱数生成器2の出力OUTの乱数列が出力されなくなる。その結果、ラッチ回路16の出力、すなわち乱数生成器2の出力は永久に無効化する。
【0024】
図5は、無効化回路6の他の一例として、アンチヒューズを用いて乱数生成器自体またはその出力を無効化する場合の無効化回路を示す。図5の無効化回路6は、NANDゲート44と、NANDゲート44の一方の入力線に接続する、2つのp型トランジスタ38、40と、nMOSからなるアンチヒューズ42と、n型トランジスタ43とを含む。NANDゲート44の他方の入力線には、図3の制御信号pgatep、pgatenを切り替えるための制御信号INまたは図2の乱数生成器2の出力OUTが入力される。
【0025】
乱数生成器2の無効化前の状態では、p型トランジスタ40がオンし、かつn型トランジスタ43も制御信号IN2のハイ(H)によりオンして、NANDゲート44の一方の入力線がハイ(H)になっている。NANDゲート44の他方の入力線へ入力される制御信号INまたは出力OUTに応じてNANDゲート44の出力が変化する。
【0026】
乱数生成器2を無効化する際には、最初に制御信号IN2をロー(L)にしてp型トランジスタ40をオフし、NANDゲート44の一方の入力線への入力を遮断する。その後、制御信号IN1をハイ(H)にして、アンチヒューズ42のゲートに高電圧Vddを印加してゲートを絶縁破壊して、ゲートとソース・ドレイン間を導通状態とする。NANDゲート44の一方の入力線がグランドに落ちてロー(L)状態になる。制御信号IN2がハイ(H)になってもそのロー(L)状態は維持される。NANDゲート44の出力は、入力される制御信号INまたは出力OUTに応じて変化せずハイ(H)に固定される。その結果、乱数生成器はそれ自体またはその出力が永久に無効化する。
【0027】
図6は、本発明の他の一実施形態の乱数生成器とその無効化回路の構成を示す図である。図6は、リングオシレータを用いた乱数生成器の一例である。乱数生成器は、長周期のリングオシレータ1と短周期のリングオシレータ2を含む。各リングオシレータは直列接続するNANDゲート46と複数のインバータ48を含む。各リングオシレータはラッチ回路(D-FF)54に接続する。ラッチ回路(D-FF)54において、短周期のリングオシレータ2の出力を長周期のリングオシレータ1の出力でラッチして出力OUTする方式の真正乱数生成器を構成する。
【0028】
図6のリングオシレータ1、2の各々の入力に接続するNANDゲート50、52と、NANDゲート50、52の一方の入力線に接続するヒューズ56とn型トランジスタ58は、図3の無効化回路と同様に乱数生成器自体の無効化回路を構成する。ヒューズ56は、図3のヒューズ23と図4のヒューズ32と同様に、従来からある抵抗線を過電流により溶融切断するタイプを用いることができる。
【0029】
無効化前の状態では、NANDゲート50、52の一方の入力線はハイ(H)状態にあるので、他方の入力線へのリングオシレータ1、2の動作(発振)を制御する信号INに応じてリングオシレータ1、2の動作(発振)が制御される。乱数生成器を無効化する際には、ヒューズ56を切ることにより2つのNANDゲート50、52の一方の入力線がロー(L)に固定される。発振を制御する信号INの値に関係なく2つのNANDゲート50、52の出力がハイ(H)に固定されたままになる。その結果、リングオシレータ1、2の動作が停止し、乱数生成器が永久に無効化(停止)する。
【0030】
本発明の実施形態について、図を参照しながら説明をした。しかし、本発明はこれらの実施形態に限られるものではない。さらに、本発明はその趣旨を逸脱しない範囲で当業者の知識に基づき種々なる改良、修正、変形を加えた態様で実施できるものである。
【産業上の利用可能性】
【0031】
本発明の検査装置は、PUF等のセキュリティ機能を持つ汎用的なIC(LSI)、各種のカスタムIC、例えば模倣品が出回りやすいゲーム用IC、不揮発性半導体メモリ等、基本的にあらゆる用途の半導体デバイスのセキュリティ機能の出荷前検査(認証用情報の取得)に利用することが可能である。
【符号の説明】
【0032】
1:半導体デバイス
2:乱数生成器
4:セキュリティ機能を有する回路
6:乱数生成器の無効化回路
8:レジスタ
12:ゲート回路(p型トランジスタ)
14:ゲート回路(n型トランジスタ)
16:ラッチ回路
18、30、48:インバータ
20:接合型トランジスタ
22:排他的論理ゲート(XOR)
24、32、56:ヒューズ
26、34、43、58:n型トランジスタ
28、36、44、46、50、52:NANDゲート
38、40:p型トランジスタ
42:nMOSからなるアンチヒューズ
54:ラッチ回路(D-FF)
図1
図2
図3
図4
図5
図6