(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022128434
(43)【公開日】2022-09-01
(54)【発明の名称】ランダム化論理暗号化のためのチップ・デバイス及び方法
(51)【国際特許分類】
G06F 21/62 20130101AFI20220825BHJP
G09C 1/00 20060101ALI20220825BHJP
G06F 21/60 20130101ALI20220825BHJP
【FI】
G06F21/62
G09C1/00 640B
G09C1/00 660Z
G06F21/60 320
【審査請求】未請求
【請求項の数】13
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2022024372
(22)【出願日】2022-02-21
(31)【優先権主張番号】21158414.9
(32)【優先日】2021-02-22
(33)【優先権主張国・地域又は機関】EP
(71)【出願人】
【識別番号】521425984
【氏名又は名称】ヘンゾルト センサーズ ゲーエムベーハー
(74)【代理人】
【識別番号】110000855
【氏名又は名称】特許業務法人浅村特許事務所
(72)【発明者】
【氏名】アレクサンダー ツェー
(72)【発明者】
【氏名】ロルフ バルテス
(72)【発明者】
【氏名】アンドレアス サロモン
(57)【要約】
【課題】不正ユーザによる論理回路構成105の指定使用法を防ぐための、鍵Kに基づくランダム化論理暗号化によって保護された論理回路構成105を有するチップ・デバイスを提供すること。
【解決手段】チップ・デバイスは、物理複製困難関数PUF110と、ストレージ120と、1つ又は複数のレジスタ132を有するチップ・イネーブラ130とを備える。物理複製困難関数PUF110は、チャレンジChに基づいたデバイス個別レスポンスReを生成するように構成される。ストレージ120はチャレンジChとデータ要素Cとを格納しており、データ要素CはPUF110のレスポンスReを暗号鍵として鍵Kを暗号化したものである。イネーブラ130は、鍵Kがレジスタ132に転送されたときのみ、指定使用法について論理回路構成105をイネーブルにするように構成されており、鍵Kは、レスポンスReを暗号鍵としてデータ要素Cを復号化したものである。
【選択図】
図1
【特許請求の範囲】
【請求項1】
不正ユーザによる論理回路構成(105)の指定使用法を防止するための、鍵(K)に基づくランダム化論理暗号化によって保護された前記論理回路構成(105)を有するチップ・デバイスであって、
チャレンジ(Ch)に基づいてデバイス個別レスポンス(Re)を生成するように構成された物理複製困難関数(PUF)(110)と、
前記チャレンジ(Ch)及びデータ要素(C)を格納しているストレージ(120)であって、前記データ要素(C)が、前記PUF(110)の前記レスポンス(Re)を暗号鍵として前記鍵(K)を暗号化したものである、ストレージ(120)と、
1つ又は複数のレジスタ(132)を有するチップ・イネーブラ(130)であって、前記イネーブラ(130)が、前記鍵(K)が前記レジスタ(132)に転送されたときのみ、前記論理回路構成(105)を前記指定使用法についてイネーブルにするように構成されており、前記鍵(K)が前記レスポンス(Re)を前記暗号鍵として前記データ要素(C)を復号化したものである、チップ・イネーブラ(130)と
を備えたチップ・デバイス。
【請求項2】
前記チップ・イネーブラ(130)が、前記鍵(K)を生成するための前記データ要素(C)の前記復号化を行う、暗号モジュール(135)及び/又は処理装置を含む、請求項1に記載のデバイス。
【請求項3】
前記論理回路構成(105)が、正規ゲート(G0、G1、…)と、前記論理暗号化を定義する複数の論理鍵ゲート(KG)とを備え、前記論理暗号化が、前記レジスタにある前記鍵(K)のビットが、前記レジスタに接続された前記論理鍵ゲート(KG)によって正確に受信された場合にのみ、前記指定使用法がイネーブルにされると定義される、請求項1又は2に記載のデバイス。
【請求項4】
前記デバイスが、積層造形された構成要素を備え、前記PUF(110)が前記構成要素の少なくとも一部に含まれており、前記積層造形された構成要素が、デバイス固有特性を生じさせるデバイス固有の微細構造を有し、前記PUF(110)の前記レスポンス(Re)が前記デバイス固有特性に依存する、請求項1から3までのいずれか一項に記載のデバイス。
【請求項5】
前記積層造形された構成要素が、
パッケージ、
回路基板、
はんだ層、
封止材
のうちの少なくとも1つである、請求項4に記載のデバイス。
【請求項6】
前記構成要素が、以下の積層造形された素子、すなわち、コンデンサ、コイル、抵抗器、ストリップ線路、マイクロストリップのうちの少なくとも1つを有する積層造形電気回路構成を含み、前記積層造形された素子の電気特性が積層造形の理由からデバイス固有である、請求項4又は5に記載のデバイス。
【請求項7】
前記デバイス固有特性が、
フォーム・ファクタ、
動作、
抵抗値、
レイテンシ又は位相シフト、
複素インピーダンス値、
共振回路又はその共振周波数、
電磁放射又はその遮蔽
のうちの1つ又は複数によって定義される請求項2から4までのいずれか一項に記載のデバイス。
【請求項8】
前記デバイス固有特性が、以下の光学的識別、すなわち、
一意のラベル刻印、
意図的なエラー画素、
刻印された光学光源
のうちの1つ又は複数によって定義される、請求項4から7までのいずれか一項に記載のデバイス。
【請求項9】
前記チャレンジ(Ch)から前記レスポンス(Re)を生成するために前記PUF(110)を利用するように、及び/又は
前記レスポンス(Re)を前記復号化の鍵として使用して前記データ要素(C)を復号化するように
構成された少なくとも1つの有限状態機械をさらに備えた、請求項1から8までのいずれか一項に記載のデバイス。
【請求項10】
前記積層造形が、誘電構造及び導電構造を形成するように構成された、インクジェット工程、又はレーザ焼結工程を含む、請求項1から9までのいずれか一項に記載のデバイス。
【請求項11】
不正ユーザによる論理回路構成(105)の指定使用法を防ぐための、鍵(K)に基づくランダム化論理暗号化によって前記論理回路構成(105)を保護する方法であって、
物理複製困難関数(PUF)(110)を使用して、チャレンジ(Ch)に基づいたデバイス個別レスポンス(Re)を生成するステップ(S110)と、
ストレージ(120)に、前記チャレンジ(Ch)及びデータ要素(C)を格納するステップ(S120)であって、前記データ要素(C)が、前記PUF(110)の前記レスポンス(Re)を暗号鍵として前記鍵(K)を暗号化したものである、ステップ(S120)と、
1つ又は複数のレジスタ(132)を有するチップ・イネーブラ(130)によって、前記鍵(K)を前記レジスタに転送することで、前記指定使用法について前記論理回路構成(105)をイネーブルにするステップ(S130)であって、前記鍵(K)が前記レスポンス(Re)を前記暗号鍵として前記データ要素(C)を復号化したものである、ステップ(S130)と
を含む方法。
【請求項12】
前記チャレンジ(Ch)に基づいて前記PUF(110)の前記レスポンス(Re)を生成するステップ、及び
前記PUF(110)の前記レスポンス(Re)を暗号鍵として前記鍵(K)を暗号化し、結果を前記データ要素(C)として提供するステップのうちの1つ又は複数をさらに含み、
前記PUF(110)の前記レスポンス(Re)を復号鍵として使用して前記データ要素(C)が復号化される、請求項11に記載の方法。
【請求項13】
処理装置上で実行されたときに、請求項11に記載の方法を実行するプログラム・コードを備えたコンピュータ・プログラム製品。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ランダム化論理暗号化によって回路を保護するチップ・デバイス及び方法に関し、詳細には、積層造形によって強化された論理暗号化に関するものである。
【背景技術】
【0002】
チップの製造において、製造工程は、製造工程に対する限定的な制御のみを有する第三者によってファウンドリにおいて行われることが広く普及している。結果として、潜在的な攻撃者が、セキュリティ上の理由から秘匿しておくべきハードウェアの知的財産(IP)について知ることができる、いくつかの攻撃シナリオがある。
【0003】
例えば、以下の攻撃シナリオが考えられる。
【0004】
攻撃シナリオ1(AS:Attack Scenario-1):このシナリオは、リバース・エンジニアリングとハードウェアのトロイの木馬の挿入に依存している。ここでは、攻撃者はファウンドリにおいてデバイス技術を特定し、そのゲートレベル・ネットリストを抽出することができるか、又は他の方法でその機能性を推測し得る。この知識を使用して、攻撃者は追加のチップを作り得る。
【0005】
攻撃シナリオ2(AS-2):このシナリオは、いわゆるIPを余分に生産すること又は余分に製造すること、すなわち攻撃者が追加のチップを生産することに関する。
【0006】
攻撃シナリオ3(AS-3):このシナリオは、前述の攻撃シナリオに対する対抗策へのハードウェア攻撃に関する。ここで、ハードウェア攻撃とは、例えば、攻撃シナリオ1及び攻撃シナリオ2に対する対抗策を克服するための、いわゆるフォールト・インジェクションである。例えば、このシナリオの攻撃は、保護されたストレージ領域(例えば、内蔵フラッシュ・ストレージ)の読取り/書込み保護を標的とし得る。
【0007】
全ての攻撃シナリオについて、ケース(a)システム・オン・チップ(SoC:System-on-Chip)がファウンドリで初回に生産され、攻撃シナリオAS-1a、AS-2a、AS-3aが生じる場合、及びケース(b)チップがファウンドリでそれ以降複数回生産され、攻撃シナリオAS-1b、AS-2b、AS-3bが生じる場合を、区別することができる。
【0008】
今のところ、3つの攻撃シナリオ全てを確実に防ぐのに利用できるのは、限られた対抗策のみである。しかしながら全ての攻撃シナリオは許容し得るものではないので、攻撃者が、少なくとも生産されたチップを有効化したり、又は生産されたチップを余分に製造したりできないようにする必要がある。
【発明の概要】
【発明が解決しようとする課題】
【0009】
したがって、ハードウェアの知的財産を確実に保護するチップ・デバイス及びそれぞれの方法への需要がある。
【課題を解決するための手段】
【0010】
上述の問題の少なくとも一部は、請求項1に記載のチップ・デバイス、及び請求項11に記載のランダム化論理暗号化による回路を保護する方法によって解決される。従属請求項は、独立請求項の主題を具体的に有利に実現したものを指す。
【0011】
本発明は、不正ユーザによる論理回路構成の指定使用法を防止するための、鍵(例えば、秘密鍵)に基づくランダム化論理暗号化によって保護された論理回路構成を有するチップ・デバイスに関する。チップ・デバイスは、物理複製困難関数(PUF:Physically Unclonable Function)と、ストレージと、1つ又は複数のレジスタを有するチップ・イネーブラとを備える。物理複製困難関数は、チャレンジに基づいてデバイス個別のレスポンスを生成するように構成される。ストレージにはチャレンジ及びデータ要素が格納されており、データ要素はPUFのレスポンスを暗号鍵とする鍵(論理暗号鍵)を暗号化したものである。チップ・イネーブラは、鍵がレジスタに転送されたときにのみ、指定使用法について論理回路構成をイネーブルにするように構成される。鍵は、例えば、データ要素の復号化によって導出された秘密鍵であって、PUFのレスポンスが復号鍵である。
【0012】
任意選択で、チップ・イネーブラは、鍵を生成するためにデータ要素の復号化を行う暗号モジュール及び/又は処理装置を含む。さらなる実施例によれば、暗号化及び復号化などのデータの処理は、外部装置によって行われてよい。さらに、暗号モジュールは、デバイスの一部である専用の暗号ハードウェア・チップであってもよく、又はそうでなくてもよい。
【0013】
任意選択で、論理回路構成は、正規(論理)ゲートと、論理暗号化を定義する複数の論理鍵ゲートとを備える。論理暗号化は、1つ又は複数のレジスタにある鍵のビットが論理鍵ゲートによって正確に受信された場合にのみ、指定使用法がイネーブルにされると定義され得る。この正確さは、イネーブル鍵ビットが自動的に論理回路構成を指定された目的でイネーブルにするように、レジスタを対応する論理鍵ゲートに接続することで確実にされてよい。
【0014】
任意選択で、デバイスが積層造形された構成要素を備え、PUFがこの構成要素の少なくとも一部に含まれる。積層造形構成要素はデバイス固有の微細構造を有し、その結果デバイス固有特性を生じさせる。したがって、PUFのレスポンスはデバイス固有特性に依存する。デバイス固有微細構造は、例えば、ナノ粒子(例えば、導電性積層材料のナノ粒子又は機能性流体中に分散させたナノ粒子)を混入させる又は融合させることによって、ランダムで微細な構造を生成する積層造形の結果として生じる。このランダム構造により、PUFはデバイスごとに異なる個別の特性(すなわち、デバイス固有特性)を有することになる。
【0015】
任意選択で、積層造形構成要素は、パッケージ、回路基板、はんだ層、封止材のうちの少なくとも1つである。例えば、論理回路構成は、集積チップとして、又は集積チップ内に形成されてよく、集積チップは、PUFを収容する積層造形構成要素の中に封入、支持、又は梱包される。
【0016】
任意選択で、構成要素は、以下の積層造形された素子、すなわち、コンデンサ、コイル、抵抗器、ストリップ線路、マイクロストリップ又はその他の素子のうちの少なくとも1つを有する積層造形電気回路構成を含む。これらの素子のそれぞれの電気特性は、積層造形工程の理由からデバイス固有である。
【0017】
任意選択で、デバイス固有特性は、
- 導電性素子のフォーム・ファクタ(例えば、それらのサイズ、形状、寸法比など)、
- 動作、
- 抵抗値(例えば、直流抵抗)、
- レイテンシ又は位相シフト、
- 複素インピーダンス値(例えば、抵抗、静電容量、及びインダクタンス)、
- 共振回路又はその共振周波数、
- 電磁放射又はその遮蔽
のうちの1つ又は複数によって定義される。
【0018】
積層造形素子を従来のように製造された素子と比較すると、ランダム微細構造により、ランダムに(わずかに)異なる有効な特性が生じることになるのは明らかである。したがって、フォーム・ファクタなどの幾何学特性も実質的に異なることになる。例えばストリップ線路に沿った信号伝搬(ランダムな遅延が生じることになる)、又は個別の特性(印加電圧の相関的要素としての速度、力など)を有することになる、3Dプリントされた電気モータ若しくはエンジンにも、同じことが言える。
【0019】
実施例によると、共振回路は、積層造形回路構成内で符号化される複素インピーダンスを測定するために使用されてよい。共振周波数は、PUFとして使用可能なデバイス固有特性を定義するために使用できる高感度な数量である。
【0020】
任意選択で、デバイス固有特性は、以下の光学的識別、すなわち、
- 一意のラベル刻印、
- 意図的なエラー画素、
- 刻印された光学光源
のうちの1つ又は複数によって定義される。
【0021】
これらの実施例は、例えば、チップと基板との間に配置されたチップ・インターポーザ、又は、少なくとも一方がチップを支持する2つの積層造形構造物の組み合わせを用いてよい。エラー画素は、誘電構成要素内に導電性流体で作られた埋込み構造によって実施することができる。例えば、撮影画像の1つ又は複数の画素を表す導電性流体の銀粒子が、誘電構成要素のポリマー表面内に意図的に積層造形されてよい。外観検査時に、これは、任意の実際的な積層造形構成要素に存在し得る、誘電支持構造物における任意の他のランダムな不純物又は極微小な汚染のように見える場合がある。したがって、1つの構造物(例えば、チップを備えたもの)上に、インターポーザを基板に取り付けた後に、1つ又は複数の画像を撮影するカメラが配置されてよい。実施例によると、チップは、ポリマー表面の欠陥画素(例えば、例示した銀粒子)が、それが意図的に形成された正しい所定の位置にあるかを評価する。
【0022】
さらなる実施例によると、ラベル刻印は、基板上のインターポーザの2つの層に形成されるQRコード(登録商標)であってよい。両層は、別々の層に形成されたQRコード(登録商標)の両部分の重ね合わせとして所定のQRコード(登録商標)が見えるように、互いの上面に接して配置される。プリント基板はある程度の透明度を示すので、重ね合わせが所定のQRコード(登録商標)として見える。QRコード(登録商標)部分の一方にわずかなずれがあると、誤ったコードが生じることになる。コードの正確性は、意図的なエラー画素に関するカメラでやはり検査することができる。この場合も、画像評価で正確性が確認されると、チップをイネーブルにすることができる。当然ながら、使用し得るQRコード(登録商標)部分のうち2つを選択することで複数の有効なQRコード(登録商標)を可能にする、2つより多いQRコード(登録商標)部分があってもよい。同様に、3つ以上の部分を組み合わせてもよく、これはコード化(coding)をさらに複雑なものにする。
【0023】
刻印された光源を使用する実施例は、同じ原理に依拠する。光源は、カメラで撮影し、処理デバイスで評価することができる固有の電磁スペクトルを発生させる。この場合も、正しい光源が正しいチップと組み合わせられるとき、チップをイネーブルにすることができる。
【0024】
潜在的な攻撃者は、事前にコード化(coding)(エラー画素、QRコード(登録商標)、又は光源)を知らないので、このPUFも高い安全性をもたらす。
【0025】
任意選択で、デバイスは、チャレンジからレスポンスを生成するためのPUFを利用するように構成された、及び/又は、レスポンスを復号化の鍵として使用してデータ要素を復号化するように構成された少なくとも1つの有限状態機械をさらに備える。
【0026】
任意選択で、積層造形は、誘電構造及び導電構造を有する3次元(3D)デバイスを選択的に形成するように構成された、インクジェット工程又はレーザ焼結工程を含む。インクジェット工程は、導電性素子用及び誘電材料用の異なる機能性流体を基礎とし、例えば各層が印刷された後に硬化ステップを含む。導電性流体は、例えば、(例えばエネルギー照射を用いた)硬化の工程において混入させる又は融合させるナノ粒子を含む。
【0027】
さらなる実施例は、不正ユーザによる論理回路構成の指定使用法を防ぐための、鍵に基づくランダム化論理暗号化によって論理回路構成を保護する方法に関する。この方法は、
物理複製困難関数(PUF)を使用して、チャレンジに基づいたデバイス個別レスポンスを生成するステップと、
ストレージにチャレンジ及びデータ要素を格納するステップであって、データ要素が、PUFのレスポンスを暗号鍵として鍵を暗号化したものである、ステップと、
1つ又は複数のレジスタを有するチップ・イネーブラによって、鍵をレジスタに転送することで、指定使用法について論理回路構成をイネーブルにするステップであって、鍵が、レスポンスを暗号鍵としてデータ要素を復号化したものである、ステップとを含む。
【0028】
任意選択で、方法は、
チャレンジに基づいてPUFのレスポンスを生成するステップ、及び
PUFのレスポンスを暗号鍵として鍵を暗号化し、その結果をデータ要素として提供するステップのうちの1つ又は複数をさらに含み、
データ要素を復号化するステップは、PUFのレスポンスを復号鍵として使用することである。
【0029】
暗号化及び復号化などのデータ処理は専用の暗号ハードウェア・チップなどの(処理)装置によって行われてよく、これはデバイスの外部にあっても、又は外部になくてもよいことが理解される。
【0030】
同様に、さらなる実施例によると、チップ・デバイスと併せて前述した全ての機能は、任意選択の方法ステップとして実施されてよい。方法ステップの順序は、ある方法ステップが他のステップを実行するために事前に必要であるという点でのみ制限されるものとする。
【0031】
この方法は、ソフトウェア又はコンピュータ・プログラム製品において実施されてもよい。したがって、実施例は、プログラム・コードがコンピュータ上又はプロセッサ上で実行されたときに、上述の方法を行う、格納されたプログラム・コードを有するコンピュータ・プログラム製品にも関する。
【0032】
本発明の様々な実施例が、例示の目的だけで、及び添付図面に関して、以下に説明される。
【図面の簡単な説明】
【0033】
【
図1】本発明の実施例によるチップ・デバイスを描写する図である。
【
図2】チップ・デバイスで実施例によって実施される論理暗号化を例示する図である。
【
図3】PUFの実施例で使用される、ランダム性を提供する積層造形から結果として生じる微細構造を例示する図である。
【
図4】PUFを実施するための、チップ・デバイス内の構成要素の実施例としてのストリップ線路を描写する図である。
【
図5】ランダム化論理暗号化によって論理回路構成を保護する方法のための概略フロー・チャートを示す図である。
【発明を実施するための形態】
【0034】
ここで、いくつかの実例が例示されている添付図面を参照して、様々な実施例をより完全に説明する。
【0035】
本明細書で使用される用語は、例示の説明のみを目的としており、限定を意図していない。本明細書で使用される場合、単数形の「1つの(a)」、「1つの(an)」及び「その/前記(the)」は、文脈により明らかに複数形を含まないことが示されている場合を除き、複数形を同様に含むことを意図している。用語「備える(comprises)」、「備えている(comprising)」「含む(includes)」及び/又は「含んでいる(including)」は、本明細書で使用される場合、述べられた特徴、ステップ、動作、要素、及び/又は構成要素の存在を明示するが、1つ又は複数の他の特徴、ステップ、動作、要素、構成要素、及び/又はそれらのグループの存在又は追加を排除するものではないことも、さらに理解される。
【0036】
別途定義されない限り、本明細書で使用される全ての用語(技術用語及び科学用語を含む)は、実例が属する当技術分野の当業者によって一般に理解されているのと同じ意味を有する。用語、例えば、一般に使用されている辞書に定義されている用語は、当技術分野の文脈における意味と一致する意味を有するものとして解釈されるべきであり、本明細書において明示的にそのように定義されない限り、理想化した又は過度に形式的な意味で解釈されるものではないことも、さらに理解されるであろう。
【0037】
図1は、実施例によると、不正ユーザによる論理回路構成105の指定使用法を防止するための鍵Kに基づくランダム化論理暗号化によって保護された、論理回路構成105を有する例示的なSoCデバイスを描写している。言い換えると、論理回路構成105は、正しい鍵Kが論理回路構成105によって受信された場合にのみ、イネーブルにされる。
【0038】
SoCデバイスは、物理複製困難関数(PUF)110と、ストレージ120と、1つ又は複数のレジスタ132を有するチップ・イネーブラ130とを備える。物理複製困難関数(PUF)110は、チャレンジChに基づいてデバイス個別のレスポンスReを生成するように構成されている。ストレージ120には、チャレンジCh及びデータ要素Cが格納されており、データ要素Cは、PUF110のレスポンスReを暗号鍵として鍵K(例えば、論理ロック鍵)を暗号化したものである。イネーブラ130は、鍵Kがレジスタ132に転送されたときのみ、指定使用法について論理回路構成105をイネーブルにするように構成され、鍵Kは、レスポンスReを暗号鍵としてデータ要素Cを復号化したものである。実施例は、どのような種類のチップ・デバイスにも適用可能である。特に、チップ・デバイスはSoC(システム・オン・チップ)デバイスであっても、又はSoCデバイスの一部であってよい。
【0039】
実施例で利用される、基礎となる論理暗号化方式は、
図2に例示されるように要約することができる。論理暗号化(LE:Logic Encryption)(論理ロック/難読化)の目的は、ICサプライ・チェーンを通してハードウェア設計の保全性を保護することである。LEは、秘密鍵Kでロックすることで設計の本来の機能性及び構造を隠すゲートレベル・ネットリスト(NL:NetList)に、追加ゲートを挿入することに基づく。
【0040】
詳細には、
図2は、正規(論理)ゲートG0、G1、G2、…G5を備えた設計に、追加の鍵ゲートKG0、KG1が挿入される実例を描写している。正規ゲート及び鍵ゲートの数は、任意とすることができることが理解される。正規ゲートG0、G1、…は、基礎となるチップの指定された目的、すなわち1セットの入力信号(値)I1、I2、…に基づいた所望の出力信号O1、O2の生成を実現するように適合される。
【0041】
例えば、第0の正規ゲートG0は、2つの入力値I2及びI3を受け取り、出力値を生成し、この出力値は第2のゲートG2によって、及び第3のゲートG3によって受け取られる。第2のゲートG2は、入力信号I1をさらなる入力として受け取る。第3の論理ゲートG3は、第2の鍵値KI2及び第1の論理ゲートG1の出力値を入力値として受け取る第1の論理ゲートKG1の出力をさらなる入力として受け取る。第1の論理ゲートG1は、第4の入力信号I4及び第5の入力信号I5を入力として受け取る。第2の論理ゲートG2の出力は、第1の鍵値KI1をさらなる入力として受け取る第0の鍵ゲートKG0に入力される。第0の鍵ゲートKG0の出力は、第3の論理ゲートG3の出力とともに、第1の出力値O1を生成する第4のゲートG4によって受け取られる。第3の論理ゲートG3の出力は、第1の論理ゲートG1の出力を第2の入力として受け取る第5のゲートG5によって受け取られる。第5のゲートの出力は、第2の出力値O2である。
【0042】
したがって、たとえゲートが(例えばリバース・エンジニアリングによって)全て知られていても、回路構成の正しい(指定された)機能の仕方は、鍵ゲートKG0、KG1によって難読化されている。正しい鍵値KI1、KI2がないと、回路構成は正しく動作しないことになり得る。言い換えると、チップは、指定された場所に格納され、チップに正しく与えられた正しい鍵値KI1、KI2、…でのみ有効化することができる。複数の鍵値KI1、KI2、…は、論理暗号鍵(LEK:Logic Encryption Key)を定義し、論理暗号鍵は、ここでは及び以下ではKで示す。
【0043】
この鍵Kは安全な場所に格納する必要がある。起動時に、鍵Kは(例えば、有限状態機械(FSM:Finite State Machine)を介して)ストレージから読み取られて、例えば、鍵ゲートKG0、KG1、…に接続された専用レジスタに転送されてよい。したがって、鍵Kを保護することで、デバイスの機能性を秘匿しておくことができる。
【0044】
この手順により、先述の攻撃シナリオASの少なくとも一部を軽減することができる。
- AS-1aについて:チップの生産の間、鍵Kが秘匿されている限り、LEによってハードウェアのトロイの木馬(HT:Hardware Trojans)の挿入を防ぐことができる。
- AS-1bについて:攻撃者は、生産されたチップの第1巡目から鍵Kを入手し、第(n+1)巡目が生産されるときにHTを挿入し得る。
- AS-2{a,b}について:攻撃者はKを回収し、チップを有効化/余分に製造し得る。
- AS-3aについて:スロット1に注入された障害Eは伝搬することができ、2つの異なる障害Ei及びEjの小さいばらつきが直接「転送」されるので、K XOR Eが解析され得る。
- AS-3bについて:AS-3aから学習を行って、第(n+1)巡目のSoCに対してフォールト攻撃が再現され得る。
【0045】
したがって、実施例では物理複製困難関数(PUF)を用いて追加のセキュリティ対策が実施される。PUFは、所与の入力及び条件(チャレンジと表記される)に対して、一意の識別子として機能する、物理的に定義された「デジタル指紋」出力(レスポンス)を提供する物理オブジェクトである。実施例によるPUFは、チップ・デバイスの少なくとも1つの積層造形構成要素(例えば、電子構造)の一意のばらつきをデジタル出力にマッピングし、ここで積層造形工程中に発生する一意の物理的ばらつきが利用される。このため、実施例によると、PUFを備えた構成要素は、パッケージ内、又はチップの封止材内、又はチップの回路基板支持体内、又はチップを接続するはんだ層若しくはインターポーザなどの、様々な場所に統合されてよい。
【0046】
実施例で利用される積層造形工程は、積層回路基板(ACB:Additive Circuit Boards)のための3Dプリントされた電子装置である「積層造形電子装置」(AME:Additive Manufactured Electronics)の技術に依存し得る。実施例によると、インクジェット印刷又はレーザ焼結などの様々な積層造形工程が利用されてよく、インクジェット印刷又はレーザ焼結はどちらも、例えば所望の電子回路を生産するための、導電性構造及び誘電性構造の製造を可能にする。
【0047】
インクジェット印刷(いわゆるインクジェット工程)は、導電性機能性流体及び非導電性機能性流体(例えば、インク)を用いてよく、これらの機能性流体はキャリアに付加的に塗布されて3次元構造に加工される。例えば、フォトポリマー流体が非導電性構造用のインクとして使用されてよく、ナノ粒子(例えば、銀のナノ粒子)を含む流体が導電性構造用のインクとして使用されてよい。これらの流体を、何層にも積層させる。各層は、紫外光の照射又はその他の好適な放射によって硬化され得る。その結果、何層にも積層造形された3次元の立体が生じる。
【0048】
レーザ焼結工程は、いわゆる「低温同時焼成セラミック」(LTCC:Low-Temperature Cofired Ceramic)工程を利用してよい。この工程は低温焼結の可撓性セラミック箔を基礎としており、最初に箔が機械的に構造化及び印刷され、積層され、次いで約850~900℃で焼結される。その結果、高集積で、3次元的に網状化した、セラミック製の多層基板をもたらす。さらなる加工では、知られているレイヤー技術、結合技術、又はSMD技術(SMD:Surface Mounted Device、表面実装型デバイス)を用いてよい。キャリア材料はここではセラミックである。その安定性により、高品質な接続及び梱包システムが可能である。
【0049】
両方の工程において、電子構造を一から作り上げて3Dデバイスを完成させる。特に、これらの積層造形工程により、例えば(SoCなどの)チップを積層造形されたパッケージに統合する又は埋め込むことが可能になる。或いは、チップは、積層造形基板上に実装されてもよいし、又は積層造形ハウジングに封入されてもよい。
【0050】
インクジェット工程における導電性/絶縁性流体、若しくは導電性機能性流体のナノ粒子焼結、又は様々な後処理の変形例により、最終的なチップ・デバイス内に一意のナノ粒子構造が生成される。各チップはナノ粒子のフィンガープリントを有し、実施例ではこのフィンガープリントをPUFの組み込みに利用する。
【0051】
図3は、PUFに利用される、又はPUFを含む例示的な電子構造の積層造形から得られる微細構造を例示している。積層造形からは、均一ではないが、製造工程に固有であり、そのため製造された構造ごとに異なることになる微細構造が常に生じることになる。例えば、導電性ナノ粒子310を製造中が混入され、混入させたナノ粒子310の間にランダムな空洞320が残る。
【0052】
したがって、各積層造形導電性構造は自身固有の微細構造を有する。結果として、導電性材料の電気特性は、チップ(又はPUFを定義している積層造形構成要素)ごとにわずかに異なる。さらに、積層造形では、完全な3D配線を実施することが可能であり、垂直相互接続アクセス(VIA:Vertical Interconnect Access)の必要がないので、3Dプリントされた集中素子(コンデンサ、コイル)を生成することができる。他の電気部品(例えば、能動素子など)を統合する又は埋め込むことも可能である。例えば、この積層造形によってコイル又はコンデンサ又は抵抗器を形成すると、得られる特性は構造固有となり、物理複製困難関数として利用することができる。
【0053】
物理複製困難関数は、様々な回路又は構造によって特徴付けられてよい。例えば、
図3に描写されるような微細構造により、固有の複素インピーダンス値が生じ、これにより固有の抵抗値、及び/又は静電容量値、及び/又はインダクタンス値が生じる。次いでこれにより、共振回路の構造固有の共振特性が得られる。例えば、共振周波数は構造ごとに異なることになる。構造はチップ・デバイスの一部なので、共振周波数は同様にデバイスごとに異なることになる。
【0054】
図4は、物理複製困難関数110を統合するのに使用され得るチップ・デバイス内の構成要素の別の実施例を描写している。この実施例では、積層造形構成要素は、誘電材料420内に埋め込まれたストリップ線路410を含む。ストリップ線路410の代わりに、マイクロストリップ構成もPUF110内で使用することができる。ストリップ線路410は、誘電材料420の中に完全に埋め込まれる。導電性ストリップ410並びに誘電材料420は積層造形によって形成されるので、ストリップ線路410に沿った高周波信号の伝搬速度は、個々の構造に、したがってチップ・デバイスに依存することになる。構造固有の伝搬により、信号伝搬における固有のレイテンシ(遅延)及び/又は線路を通しての固有の信号減衰が結果として生じる。
【0055】
したがって、ナノ粒子のフィンガープリントは、伝搬信号のレイテンシ及び位相シフトなどの電気特性に影響し、これらは、例えば、異なる経路を伝搬する2つの信号を比較することによって測定されてよい。同様に、ナノ粒子のフィンガープリントは、電磁放射特性(例えば、遮蔽性)をわずかに変更する。
【0056】
同様に、積層造形により、フォーム・ファクタ又は動作(例えば、3Dプリントされた電気モータの特性)にわずかなばらつきが生じる。
【0057】
さらなる実施例によると、光学特性における光学的ばらつきが、物理複製困難関数にさらに利用されてよい。例えば、積層造形中に、チップ・デバイス内(例えばパッケージ内に)に一意のラベルが刻印されてよく、この一意のラベルは、本発明内で利用される論理暗号化のための暗号化として、読み出して使用することができる。さらなる光学的識別は、意図的なエラー画素、又は刻印された光学光源をも組み込むことであり得る。
【0058】
PUF110の具体的な機能の仕方は、以下のように要約できる。PUF(ファミリー)の第j番目のインスタンスのチャレンジをChiとする。各インスタンスは、1つのチップ・デバイスにおける具体的な実現と関連付けられてよい。レスポンスは、以下のようになる。
Rei=PUFj(Chi) (1)
【0059】
PUFの1つの主要な特性は、チャレンジChlのハミング距離である。
DistH(PUFi(Chl),PUFj(Chl)) (2)
ただし、i≠jは非常に大きい。
【0060】
出力サイズ及び入力サイズWが小さいPUFは、弱いPUFと呼ばれる。この場合、信頼できないファウンドリが、完全な特性評価を行う可能性があり、全てのチップ・デバイスのWの一部である全てのペア{(Chi,Rei)}を保存する可能性があり、ここでWは弱いPUFの入力/出力の全ての可能な値のセットを示す。一方、強いPUFは、非常に大きい入力/出力空間Sを有し、特性評価を行うことが実際的でなく、したがってはるかに高い安全性を実現する。すなわち、{(Chi,Rei)}i∈S、ここで|S|≫|W|である。
【0061】
実施例によると、チップ・デバイス「i」に対して、以下の情報がストレージ120に格納される。
- ENCRei(K)、及び
- (Ch,He)
ここでReiはチップ・デバイス「i」で実現されるPUFiのレスポンスであり、LEK「K」のための暗号鍵として使用される。値Heは、(高エントロピー、再現性、制御性などを確実にする)鍵生成のための任意選択のヘルパー・データを定義している。この情報は、ストレージ120の異なるスロット(例えば、スロット1及びスロット2)に格納されてよい。
【0062】
次に、チップ・デバイスが所望の目的を果たすために有効化される場合、以下のステップが行われてよい。
(1)Ci←ENCRei(K)及び(Ch,He)をストレージから、例えばFSMを介して読み取る。
(2)Rei←PUFi(Ch,He)を、例えばFSMを介して生成する。
(3)K←DECRei(Ci)を、例えば専用のHWモジュール内のFSMを介して復号化する。
(4)Kを(挿入ゲートに接続された)専用のレジスタに転送する。
ここで、任意選択の有限状態機械(FSM)が利用されてよい。
【0063】
実施例によると、これらのステップは方法の一部として行われてよく、PUFiは、チャレンジChを使用した実装された物理困難複製関数の実行を定義する。さらなる実施例によると、チップ・デバイスの一部であってよい、又はそうでなくてもよい処理装置及び/又は暗号ハードウェア・モジュールは、これらのステップを行うように構成され得る。
【0064】
上述の攻撃シナリオに関連して、実施例は以下の利点をもたらす。
【0065】
AS-1aについて:鍵K(それぞれのENCRei(K))はチップ・デバイスの製造中も秘匿されており、ハードウェアのトロイの木馬の挿入を防ぐためのLEの耐性を信頼することができる。
【0066】
AS-1bについて:値ENCRei(K)及びタプル(Ch,He)は回収可能であり得る。しかしながら、対応するReiを生成する関数はPUF110の保護に依存しており、不明又は再現性がない。したがって、Kを復号化するために必要な暗号鍵Reiを取得するのは不可能である。
【0067】
AS-2{a,b}について:攻撃者は、ENCRei(K)及び(Ch,He)を再生し得る。しかしながら、PUF関数110を再構築することは不可能であり、他の攻撃が必要となるであろう。
【0068】
AS-3aについて:変形例1と同様の状況であり、すなわち、スロット1に注入された小さいハミング距離distH(Ei,Ej)を伴う2つの異なる障害EiとEjについて、ハミング距離、すなわち、
distH(DECRei(ENCRei(K) XOR Ei),DECRei(ENCRei(K) XOR Ej))
が非常に大きい。したがって、フォールト攻撃は、(例えば、全ての可能性を試行することによって)「実行する」(execute)のが非常に困難である。
【0069】
AS-3bについて:実施例により、鍵K及び/又は鍵を暗号化したものENC(K)が全てのデバイスで同じである状況と比較すると、安全性が著しく向上する。攻撃者がデバイスAへの攻撃から情報を推測した場合でも、実施例によると、この情報を別のデバイスBへの攻撃に利用することは(PUFの理由から)できない。したがって、ENCRei(K)は各デバイス・チップに対して一意であるので、AS-3aからの学習は、(変形例1aよりも)小さい。
【0070】
結果として、実施例は、3つの攻撃シナリオ全てに対して信頼性のある保護を提供する。
【0071】
図5は、不正ユーザによる論理回路構成105の指定使用法を防ぐために、鍵Kに基づくランダム化論理暗号化により論理回路構成105を保護する方法の概略フロー・チャートを示す。この方法は、
- チャレンジChに基づくデバイス個別レスポンスを、物理複製困難関数を用いて生成するステップS110と、
- チャレンジCh及びデータ要素Cをストレージ120に格納するステップS120であって、データ要素Cが、PUF110のレスポンスReを暗号鍵として鍵Kを暗号化したものである、ステップS120と、
- 1つ又は複数のレジスタ132を有するチップ・イネーブラ130によって、鍵Kをレジスタに転送することによって、指定使用法について論理回路構成105をイネーブルにするステップS130であって、鍵Kが、レスポンスReを暗号鍵としてデータ要素Cを復号化したものである、ステップS130とを含む。
【0072】
さらなる実施例では、前述したチップ・デバイスによって実施されるいくつか又は全ての機能は、
図5の方法における任意選択の方法ステップであり得ることが理解される。特に、さらなる任意選択のステップは、
チャレンジChに基づいてPUF110のレスポンスReを生成するステップ、若しくは
PUF110のレスポンスReを暗号鍵として鍵Kを暗号化し、結果をデータ要素Cとして提供するステップであってよく、又は
データ要素Cを復号化するステップは、PUF110のレスポンスReを復号鍵として使用することである。
【0073】
方法ステップの順番は、ある方法ステップが、別のステップが事前に行われた場合にのみ実行することができるという条件によってのみ制限されるものとする。
【0074】
この方法は、コンピュータにより実施される方法であってもよい。当業者であれば、上述の方法のステップが、プログラムされたコンピュータによって行われてよいことを容易に認識するであろう。また、実施例は、機械又はコンピュータで読み取り可能であり、命令の機械実行可能又はコンピュータ実行可能なプログラムを符号化するプログラム記憶装置、例えばデジタル・データ記憶媒体を網羅することも意図しており、命令は、コンピュータ又はプロセッサ上で実行されるとき、上述の方法の動作の一部又は全てを行う。
【0075】
本明細書及び図面は、本開示の原理を例示しているに過ぎない。したがって、本明細書に明示的に記載されて又は示されていなくても、本開示の原理を具現化する、また本開示の範囲に含まれる様々な構成を、当業者であれば考案できるであろうことが理解されよう。
【0076】
さらに、各実施例は別個の例として独立していてよいが、他の実施例では、定義済の特徴を異なるように組み合わせることができること、すなわち、ある実施例で記述された特定の特徴が他の実施例で実現されてもよいことに留意されたい。そのような組み合わせは、特定の組み合わせが意図されていないことが明記されている場合を除き、本明細書の開示によって網羅される。
【0077】
したがって、複数の可能な変形例が存在することは明らかである。例として述べた実施例は全くの例に過ぎず、本発明の範囲、適用可能性、又は構成をいかようにも限定していると見なすべきではないことも明らかである。実際に、先述の説明及び図の説明により、当業者が例示的な実施例を具体的な方法で実施することが可能になり、当業者は、開示された発明概念を知ることで、例えば例示的な実施例で述べたそれぞれの要素の機能の仕方又は構成に関して、本発明の範囲を逸脱することなく様々な変更を試みることができ、本発明の範囲は、特許請求の範囲、及び本明細書におけるさらなる説明のようなそれらの法的均等物によって定義される。
【符号の説明】
【0078】
105 論理回路構成
110 物理複製困難関数(PUF)
120 ストレージ
130 チップ・イネーブラ
132 1つ又は複数のレジスタ
135 暗号モジュール
310 混入させたナノ粒子
320 積層造形による空洞又は空隙
410 ストリップ線路、マイクロストリップ
420 積層造形誘電材料
K 論理暗号鍵
Re (デバイス個別)レスポンス
Ch レスポンスをトリガするチャレンジ
C データ要素
【外国語明細書】