(57)【要約】【課題】簡単な構造で、サイドチャネル攻撃を検知することができる検知装置を提供すること。【解決手段】サイドチャネル攻撃の検知装置１は、サイドチャネル攻撃の対象となる暗号処理回路３ａなどの情報処理装置３に近接して配置されたインダクタとしてのコイルＬまたはキャパシタを有し、コイルＬ（インダクタ）のインダクタンスまたはキャパシタのキャパシタンスの変化を検知する検知手段２と、検知手段２の出力に基づいてサイドチャネル攻撃によるプローブ７の接近またはＬＳＩパッケージの開封を判定する判定手段（制御回路５）と、を有する。【選択図】図２
2017079336.tif 000002
【特許請求の範囲】
【請求項１】
サイドチャネル攻撃の対象となる情報処理装置に近接して配置されたインダクタを有し、前記インダクタのインダクタンスの変化を検知する検知手段と、
前記検知手段の出力に基づいて前記サイドチャネル攻撃によるプローブの接近またはＬＳＩパッケージの開封を判定する判定手段と、を有することを特徴とする
サイドチャネル攻撃の検知装置。
【請求項２】
前記検知手段は、前記インダクタを含む発振回路を有し、前記発振回路の発振周波数の変化を検知することを特徴とする請求項１に記載のサイドチャネル攻撃の検知装置。
【請求項３】
前記検知手段の前記インダクタは複数であることを特徴とする請求項１または請求項２に記載のサイドチャネル攻撃の検知装置。
【請求項４】
前記複数のインダクタは、それぞれ形状が異なることを特徴とする請求項３に記載のサイドチャネル攻撃の検知装置。
【請求項５】
前記複数のインダクタは、それぞれ巻き数が異なることを特徴とする請求項３または請求項４に記載のサイドチャネル攻撃の検知装置。
【請求項６】
前記検知手段は、前記インダクタを除きロジック回路で構成されていることを特徴とする請求項１から請求項５の何れかに記載のサイドチャネル攻撃の検知装置。
【請求項７】
リング発振回路を備え、該リング発振回路の発振周波数に基づいて、前記検知手段の前記発振回路のキャパシタンスを調整することで該発振回路の発振周波数を較正する手段を有することを特徴とする請求項２から請求項６の何れかに記載のサイドチャネル攻撃の検知装置。
【請求項８】
サイドチャネル攻撃の対象となる情報処理装置に近接して配置されたキャパシタを有し、前記キャパシタのキャパシタンスの変化を検知する検知手段と、
前記検知手段の出力に基づいて前記サイドチャネル攻撃によるプローブの接近またはＬＳＩパッケージの開封を判定する判定手段と、を有することを特徴とする
サイドチャネル攻撃の検知装置。
【請求項９】
前記情報処理装置および前記検知手段は、同一の集積回路チップに設けられていることを特徴とする請求項１から請求項８の何れかに記載のサイドチャネル攻撃の検知装置。
【請求項１０】
請求項１から請求項９の何れかに記載のサイドチャネル攻撃の検知装置によるサイドチャネル攻撃の検知方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サイドチャネル攻撃の検知装置、サイドチャネル攻撃の検知装置によるサイドチャネル攻撃の検知方法に関し、特に、暗号工学分野のうち、暗号ＬＳＩなどの情報処理装置に対するサイドチャネル攻撃の対策技術に関する。
【背景技術】
【０００２】
情報通信機器の携帯が一般的となり、ネットワーク上でのプライバシ保護や高信頼な電子商取引の重要性がますます高まっている。暗号はそのような社会システムを構築する上で欠かすことのできない基盤技術であり、暗号アルゴリズムを実現したソフトウェアやハードウェアが動作する大規模集積回路（以下、暗号ＬＳＩと呼ぶ）は多くの民生品に搭載されている。暗号ＬＳＩには、通常、専門家により十分に安全性評価を行った暗号アルゴリズムが利用される。そのため、アルゴリズムの欠陥から暗号化前のデータ（平文）や秘密鍵などの漏洩の心配は（現在の計算機能力や知られている解読法の観点から）ほとんどない。
【０００３】
一方、暗号ＬＳＩの実装上の脆弱性から現実的な時間で秘密情報を奪う実装攻撃の脅威が指摘されている。特に注目を集めているのが、暗号ＬＳＩの演算中の消費電力や放射電磁波、実行時間等といった本来の入出力以外の情報（サイドチャネル情報）を観察することで秘密情報を奪うサイドチャネル攻撃である。
【０００４】
サイドチャネル攻撃の中でも最もよく知られる攻撃が電力・電磁波解析攻撃である。１９９０年代後半にKocherらによって単純電力解析と差分電力解析が発表されたのを機に、その拡張が盛んに研究され始めた。その後、電力の代わりに漏洩電磁波の波形を用いた電磁波解析攻撃が可能であることが示された。
電力解析攻撃や電磁波解析攻撃では、測定用プローブとデジタルオシロスコープを用いて暗号ＬＳＩから漏洩する電流・電圧の時間変化を計測する。計測した波形を計算機で加工・処理して暗号処理の内容や秘密鍵の値を推定する。
【０００５】
特に、電磁波解析攻撃は、機器に直接プロービングしてＬＳＩ全体の過渡的な電圧変化を測定する電力解析と比べ、非接触な攻撃が可能となる。また、暗号ＬＳＩの局所的な特性を取得できることが報告されており、これまで電力解析の適用は難しいとされてきた機器に対しても脅威となる可能性が指摘されている。とりわけ、近年、一般的な暗号ＬＳＩの最小構成素子（ＡＮＤやＸＯＲ等の基本ゲート）の非対称性により、秘密情報を処理する部分の局所的な電磁波放射から原理的に秘密情報を取得できることが報告されている（例えば、非特許文献１参照）。
【０００６】
従来のサイドチャネル攻撃への対策は、秘密情報と相関のある中間値をサイドチャネル情報として漏洩させないことを目的とし、主に乱数によって中間値を遮蔽するマスキングもしくは中間値を隠ぺいするハイディングという概念で実現されてきた。これまでアルゴリズムレベルやロジックレベル（デジタル回路レベル）で数多くのサイドチャネル攻撃への対策が提案されている（例えば、非特許文献２参照）。
【先行技術文献】
【非特許文献】
【０００７】
【非特許文献１】T. Sugawara, et al., “On Measurable Side-Channel Leaks Inside ASIC Design Primitives,” Proc. CHES, pp.159-178, Aug. 2013.
【非特許文献２】K. Tiri and et al., “Prototype IC with WDDL and differential routing - DPA resistance assessment,” CHES 2005, Lecture Notes in Computer Science, vol. 3659, pp. 354-365, May 2005.
【非特許文献３】S. Mangard, E. Oswald, and T. Popp, “Power Analysis Attacks - Revealing the Secrets of Smart Cards,” Springer, 2007.
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、上述した従来のアルゴリズムレベルやロジックレベル（デジタル回路レベル）でのサイドチャネル攻撃への対策では、ＡＮＤやＸＯＲ演算中の情報は漏洩しないことを前提としているため、その前提を覆す非特許文献１に記載されている攻撃に対しては原理的に対処できない。その前提を実現するためには基本演算素子の設計まで考慮したトランジスタレベルの対策が必要となるが、仮にそうした対策が実現できても、それは従来よりも設計難易度・コストを大幅に高める上に、暗号ＬＳＩの実行速度や消費電力、実装面積などを大きく増加させてしまう。
【０００９】
例えば、ロジックレベルのハイディング対策として知られるＷＤＤＬ（Wave Dynamic Differential Logic）（非特許文献２参照）では、非特許文献１に記載されている攻撃に対処できない。さらに，同対策は少なくとも回路規模を数倍程度増加させることが知られている。
【００１０】
アナログ回路レベルの対策として、暗号ＬＳＩの消費電力を内部動作状態に関わらず均一化する電源電流イコライザ（例えば、非特許文献３参照）も提案されており、それらは比較的低オーバーヘッド（回路規模２倍程度の増加）で実現でき、電力解析攻撃には有効であるが、やはり非特許文献１に記載されているサイドチャネル攻撃には対処できない。
【００１１】
本発明は、このような問題に対処することを課題の一例とするものである。すなわち、簡単な構成で、サイドチャネル攻撃を検知可能な検知装置を提供すること、サイドチャネル攻撃の検知方法を提供すること、などを目的とする。
【課題を解決するための手段】
【００１２】
このような目的を達成するために、本発明によるサイドチャネル攻撃の検知装置は、サイドチャネル攻撃の対象となる情報処理装置に近接して配置されたインダクタを有し、前記インダクタのインダクタンスの変化を検知する検知手段と、前記検知手段の出力に基づいて前記サイドチャネル攻撃によるプローブの接近またはＬＳＩパッケージの開封を判定する判定手段と、を有することを特徴とする。
【００１３】
また、本発明に係るサイドチャネル攻撃の検知装置は、サイドチャネル攻撃の対象となる情報処理装置に近接して配置されたキャパシタを有し、前記キャパシタのキャパシタンスの変化を検知する検知手段と、前記検知手段の出力に基づいて前記サイドチャネル攻撃によるプローブの接近またはＬＳＩパッケージの開封を判定する判定手段と、を有することを特徴とする。
【００１４】
また、本発明のサイドチャネル攻撃の検知方法は、上記本発明に係るサイドチャネル攻撃の検知装置を用いて行われる。
【発明の効果】
【００１５】
本発明によれば、簡単な構造で、サイドチャネル攻撃を検知可能な検知装置を提供することができる。また、本発明によれば、検知装置を用いることで簡単にサイドチャネル攻撃を検知することが可能なサイドチャネル攻撃の検知方法を提供することができる。
【図面の簡単な説明】
【００１６】
【図１】本発明の実施形態に係るサイドチャネル攻撃の検知装置を用いたサイドチャネル攻撃の検知方法の一例を示すフローチャート。
【図２】本発明の実施形態に係るサイドチャネル攻撃の検知装置の一例を示す図。
【図３】検知手段の発振器の発振周波数のシフトからサイドチャネル攻撃を検知する一例を示す図。
【図４】本発明の実施形態に係る検知装置の一例を示す図、（ａ）は検知装置の概念図、（ｂ）は（ａ）に示した検知装置の一具体例を示す回路図。
【図５】２つのＬＣ発振器の周波数差によるサイドチャネル攻撃の検知の一例を説明する図。
【図６】検知装置と情報処理装置（暗号処理回路）の動作の一例を示すタイミングチャート、（ａ）は暗号処理回路の動作の一例を示す図、（ｂ）はＬＣ発振回路に関する信号の一例を示す図、（ｃ）はリング発振回路に関する信号の一例を示す図。
【図７】ＬＣ発振器の発振周波数のばらつきを低減する較正回路の一例を示す図。
【図８】各発振器の発振周波数の各特性の一例を示す図、（ａ）はリング発振器の場合、（ｂ）はＬＣ発振器の場合。
【図９】較正動作の一例を説明するための図。
【図１０】変換テーブル（ルックアップテーブル）の一例を示す図。
【図１１】較正回路を用いたＬＣ発振回路の発振周波数の較正動作の一例を示すフローチャート。
【図１２】実測した各発振器の発振周波数の電源電圧と温度依存性の一例を示す図、（ａ）はリング発振器の場合、（ｂ）はＬＣ発振器（３巻き）の場合、（ｃ）はＬＣ発振器（４巻き）の場合。
【図１３】周波数スペクトラムの一例を示す図、（ａ）は３巻コイルＬ２の場合（プローブ接近なし）、（ｂ）は４巻コイルＬ１の場合（プローブ接近なし）、（ｃ）は３巻コイルＬ２の場合（Ｌ１にプローブ接近あり）、（ｄ）は４巻コイルＬ１の場合（Ｌ１にプローブ接近あり）。
【図１４】サイドチャネル攻撃の検知による動作の一例を説明するための図、（ａ），（ｂ）は攻撃検知による動作切り替えなしの場合の電磁波の波形の一例、相関係数の一例をそれぞれ示す図、（ｃ），（ｄ）は攻撃検知による動作切り替えありの場合の電磁波波形の一例、相関係数の一例をそれぞれ示す図。
【図１５】本発明の他の実施形態に係るサイドチャネル攻撃の検知装置の一例を説明するための概念図。
【図１６】伝達関数の一例を示す図、（ａ）はプローブが検知手段に接近していない場合の伝達関数の一例を示す図、（ｂ）はプローブが検知手段に接近している場合の伝達関数の一例を示す図。
【図１７】入力信号の電圧の周波数特性の一例を示す図。
【発明を実施するための形態】
【００１７】
本発明に係る検知装置は、サイドチャネル攻撃そのものを検知する。詳細には、本発明に係るサイドチャネル攻撃の検知装置は、サイドチャネル攻撃の対象となる情報処理装置に近接して配置されたインダクタまたはキャパシタを有し、インダクタ（コイル）のインダクタンスまたはキャパシタのキャパシタンスの変化を検知する検知手段を備え、その検知手段の出力に基づいてサイドチャネル攻撃によるプローブ（導電体などにより構成される）の接近またはＬＳＩパッケージの開封などを判定する判定手段と、を有する。本発明に係る検知装置は、プローブの接近やＬＳＩパッケージの開封時など、インダクタンスやキャパシタンスの変化を検知手段で検知し、判定手段にてサイドチャネル攻撃を容易に判定することができる。
【００１８】
従来のサイドチャネル攻撃への対策は、攻撃されていることを検知できないことが前提となっており、有意なサイドチャネル情報を漏洩させないことが目的となっていた。本発明に係る検知装置は、電磁気の物理法則に基づいてサイドチャネル攻撃を検知することができ、その攻撃を検知した場合、以降の暗号処理を停止・変更するなどの処理を行うことで、秘密情報の漏洩を防ぐ。
【００１９】
また、検知装置は、例えば、情報処理装置としての暗号ＬＳＩ（暗号アルゴリズムを実現したソフトウェアやハードウェアが動作する大規模集積回路）に対するサイドチャネル攻撃（暗号ＬＳＩの動作中に生じる副次的な情報（サイドチャネル情報）を観察することで秘密情報を奪う攻撃）を検知する。本発明に係る検知装置などの技術の実現にあたっては、集積回路工学と環境電磁工学の理論と技術などを応用している。
【００２０】
また、サイドチャネル攻撃の手段としてのプローブが情報処理装置としての暗号ＬＳＩ（暗号処理回路）などに接近している場合、本発明の実施形態に係る検知装置は、それをプローブによって生じるインダクタンスの変化として、電磁界の乱れ（それに伴う情報処理装置の近傍電磁界や回路内部の特性インピーダンスの変化、回路内部を流れる信号損失の発生などの電気的パラメータの変化）から検知可能であり、局所電磁波解析攻撃を含むプロービングによる電気的情報を用いるサイドチャネル攻撃全般を防ぐ。上記電気的パラメータの変化は、プローブと暗号ＬＳＩとの電界結合、磁界結合、もしくはその両方により生ずるため、これらを避けてプロービングを伴う攻撃を実行することは原理的に困難である。
【００２１】
本発明の実施形態に係る検知装置の攻撃検知センサ部分（検知手段）は、後述するように、インダクタ（コイル）を含むＬＣ発振器などの簡便な回路で実現可能であり、センシング後段の処理回路を含めても対策対象となる暗号ＬＳＩ（情報処理装置）対して僅か数パーセントという面積オーバーヘッドで実現できる。
【００２２】
環境電磁工学の分野では、集積回路内部やプリント基板上の配線パターン近傍から放射される電磁界に測定用プローブを接近配置すると、電磁界分布に変化が生じる物理現象がよく知られている。検知装置は、この物理現象を応用して、攻撃時にプローブが暗号ＬＳＩに接近する際に生じる電磁界の乱れをサイドチャネル攻撃の検知に用いる。攻撃検知後に秘密情報を保護する処理（例えば暗号処理の停止やダミー演算の挿入など動作モードを切り替える処理）で秘密情報の漏洩を防ぐことができる。
【００２３】
図１は本発明の実施形態に係るサイドチャネル攻撃の検知装置を用いたサイドチャネル攻撃の検知方法の一例を示すフローチャートである。図２は本発明の実施形態に係るサイドチャネル攻撃の検知装置１の一例を示す図である。
【００２４】
図２に示した例では、集積回路チップ１０に、サイドチャネル攻撃の対象であり、防御対象の情報処理装置３である暗号処理回路３ａや防御対象としての秘密鍵を記憶する記憶回路３ｂなどが形成されている。
検知装置１は、サイドチャネル攻撃を検知する検知手段２を有する。検知手段２としては、例えば、コイルＬ（インダクタ）を含むＬＣ発振器などを採用することができ、集積回路チップ１０などに形成されている。つまり、情報処理装置３と検知手段２は、同一の集積回路チップ１０に設けられている。本実施形態では、ＬＣ発振器のコイルＬ（インダクタ）は、情報処理装置３と一体もしくは情報処理装置３の近傍に配置されている。図２に示した例では、防御対象の情報処理装置３である暗号処理回路３ａの周囲を囲むように、検知手段２であるＬＣ発振器のコイルＬが形成されている。
【００２５】
また、検知装置１は、検知手段２の出力に基づいて、サイドチャネル攻撃によるプローブの接近やＬＳＩパッケージの開封を判定する判定手段としての制御回路５などを有し、制御回路５は、サイドチャネル攻撃を検知した場合に情報漏洩を防止する所定の処理などを行う。この判定手段としての制御回路５は、集積回路チップ１０に形成されている。尚、制御回路５は、別の集積回路チップに形成されていてもよい。
【００２６】
図３は、検知手段としてのＬＣ発振器の発振周波数のシフトからサイドチャネル攻撃を検知する一例を示す図である。詳細には、図３は検知手段としてのＬＣ発振器の周波数スペクトラムの一例を示し、横軸に発振周波数を示し、縦軸に各周波数成分の大きさを示す。
【００２７】
電磁プローブ（プローブ）の接近により、コイルＬの等価インダクタンスが変化する。このインダクタンスの変化に伴うＬＣ発振器の発振周波数ｆoscのシフトに基づいて、サイドチャネル攻撃を検知する。
詳細には、プローブ７が情報処理装置３の近傍に配置された検知手段２に接近していない場合（Ｐ１）、検知手段２としてのＬＣ発振器の発振周波数ｆoscは近似的に数式（１）に示すようになり、プローブ７が検知手段２に接近した場合（Ｐ２）、ＬＣ発振器の発振周波数ｆoscはプローブ７とコイルＬとの間の相互インダクタンスＭにより、近似的に数式（２）に示すようになる。プローブ７の接近により相互インダクタンスＭが大きくなり、発振周波数ｆoscが大きくなる。つまり、検知手段２により取得されたＬＣ発振器の発振周波数ｆoscが大きくシフトするなどし、予め規定された閾値を超えたか否かに基づいて、制御回路５がプローブ７の接近を検知することが可能である。プローブ７の接近を検知した場合、制御回路５は暗号処理回路の動作モードを、例えば、暗号化停止処理やダミー鍵を用いた処理などに切り替えることで、秘密情報などの漏洩を回避する。
【００２８】
【数１】
2017079336.tif 000003
【００２９】
次に、サイドチャネル攻撃の検知動作の一例について説明する。
ステップＳＴ１において、攻撃検知センサであるコイルＬを含むＬＣ発振器などの検知手段２を起動する。ここで、起動する検知手段２は、防御対象となる暗号処理回路３ａなどと一体もしくはその近傍に設置され、任意の方向から暗号処理回路３ａなどに接近するもしくはあらかじめ接近しているプローブ７によって生じるコイルＬ（インダクタ）のインダクタンスの変化、詳細には、電磁界の乱れ（それに伴う近傍電磁界や回路内部の特性インピーダンスの変化、回路内部を流れる信号損失の発生など）を観測可能とする。例えば、情報処理装置３として暗号処理回路３ａなどを採用した場合、検知手段２としてのセンサは当該回路の内部に実装されるように構成してもよい。
【００３０】
ステップＳＴ２において、検知手段２としてのセンサを用いて、コイルＬ（インダクタ）のインダクタンスの変化、詳細には、電磁界の乱れなど、センサと周囲との電磁界結合度の変化（もしくはそれに伴う物理量）を取得する。例えば、検知手段２を、コイルＬ（インダクタ）を含むＬＣ発振器で実現した場合、センサと周囲との電磁界結合度の変化はＬＣ発振器の発振周波数の変化として得られる。つまり、検知手段２は、コイルＬ（インダクタ）のインダクタンスの変化を、ＬＣ発振器の発振周波数の変化により検知している。さらに、センサを複数の形状・巻き数の異なるコイルにより構成すれば、電磁界結合度の変化は各コイルの発振周波数の相対的な変化として得られる。このとき、絶対的な周波数基準が不要となり、相対的に大きな基準周波数発生回路を省略できるだけでなく、周波数基準を悪用する攻撃の危険性を排除できる。
【００３１】
ステップＳＴ３において、検知手段２により、プローブの接近やパッケージの開封によるコイルのインダクタンスの変化を検知したか否かを、詳細には、電磁界の乱れなど、電磁界結合度の変化を観測したか否かを判定手段としての制御回路５（制御部）などが判定する。詳細には、制御回路５は、例えば、検知手段２をコイルＬを含むＬＣ発振器（コイル）で実現した場合、コイルＬの発振周波数の変化、つまりコイルＬのインダクタンスの変化により判定する。これが変化している場合にはステップＳＴ４の処理に進み、変化していない場合にはステップＳＴ５の処理に進む。
【００３２】
ステップＳＴ４において、検知手段２により上記変化が観測された場合、制御回路５は攻撃検知信号を出力する。ここでは、制御回路５が暗号処理回路３ａなどに攻撃検知信号を出力した場合、暗号処理回路３ａは秘密情報を保護する動作モード（停止やダミー演算の実行、ハイディング処理、マスキング処理）などに切り替える処理を行う。
【００３３】
ステップＳＴ５において、検知手段２としてのセンサにより上記変化が観測されなかった場合、防御対象となる暗号処理回路などの暗号化処理が終了するまでステップＳＴ２，ＳＴ３の処理を適宜繰り返す。
【００３４】
図１に示した処理の頻度は防御する対象に応じて変更する。例えば、単純解析の対象となる公開鍵暗号処理の場合、各鍵ビットの演算が行われる間隔で処理（ステップＳＴ２，ＳＴ３）を繰り返す。差分解析の対象となる共通鍵暗号処理の場合、暗号処理の直前に一度だけ処理（ステップＳＴ２，ＳＴ３）を行う。
【００３５】
＜複数のＬＣ発振器を攻撃検知センサとして用いた検知装置＞
図４は本発明の実施形態に係る検知装置１の一例を示す図である。詳細には、図４（ａ）は複数のＬＣ発振器を有する検知装置１の概念図、図４（ｂ）は図４（ａ）に示した検知装置１の一具体例を示す回路図である。検知手段２は、複数のＬＣ発振器（発振回路）を備えていてもよい。以下、検知手段２として２つのＬＣ発振器を備えた検知装置１を説明する。
【００３６】
詳細には、検知装置１は、情報処理装置３としての暗号処理回路３ａ上またはその近傍に配置されたコイルＬ１，コイルＬ２を有する。また、検知装置１は、コイルＬ１，Ｌ２をそれぞれ備えた発振器５１（ＬＣ発振器を含む），発振器５２（ＬＣ発振器を含む）、およびセンサコア回路５０を有する。例えば、暗号処理回路３ａの秘密情報処理部３ｃ，３ｄなどの秘密情報を処理する機能ブロック（Ｓ−ＢＯＸやレジスタ等）は、それぞれコイルＬ１，Ｌ２の直下に配置し、それ以外の鍵情報を含まない機能ブロック（Ｉ／Ｏインタフェース等）をコイルＬ１，Ｌ２間に配置する。
【００３７】
センサコア回路５０は、例えば、制御回路５（制御部）と、コイルＬ１用の発振器５１（発振回路）、コイルＬ２用の発振器５２（発振回路）を有する。各発振器５１，５２のコイルＬ１，Ｌ２は上述したように、秘密情報処理部３ｃ，３ｄの近傍に配置されている。詳細には、検知手段は、少なくともコイルＬ１（センサコイル）、コイルＬ２（センサコイル）などのコイルを有する。本実施形態では、検知手段は、コイルＬ１，Ｌ２などのコイル、センサコア回路５０（制御回路５（制御部）、発振器５１，５２などの発振器、較正回路、リング発振器等）、などを有する。
【００３８】
コイルＬ１，Ｌ２は、例えば、直交する辺を異なる配線層でレイアウトすることで、各コイル下に配置される暗号処理回路３ａのデジタル信号配線を妨害しないように構成されている（例えば、非特許文献参照：M. Saito, et al., “An Extended XY Coil for Noise Reduction in Inductive-coupling Link,” A-SSCC Dig. Tech. Papers, pp.305-308, Nov. 2009.）。
【００３９】
コイルＬ１，Ｌ２に必要なリソースは、数１０トラック程度の配線リソースのみである。
検知手段２としての２つのコイルＬ１，Ｌ２は、巻き数や直径等の形状が同じであってもよいし、異なるものを用いてもよい。
本実施形態では、検知手段２としての２つのコイルＬ１，Ｌ２は、巻き数や直径等の形状の異なるものを用いる。例えば、サイドチャネル攻撃時にプローブを用いて秘密情報を取得するためには、２つのコイルＬ１，Ｌ２のいずれか一方もしくは両方に接近させる必要がある。プローブが接近した場合、２つの発振器５１，５２（ＬＣ発振器）の発振周波数に差が生じる。ここで、２つのコイルＬ１，Ｌ２の巻き数・形状が異なるため、コイルＬ１，Ｌ２にまたがったプローブの接近（一般的な電磁波解析攻撃）や個々のコイルＬ１，Ｌ２に対して同一のプローブが同時に接近（複数のプローブによる電磁波解析攻撃）した場合であっても、各発振器５１，５２（ＬＣ発振器）の発振周波数に差が生じることに注意されたい。
【００４０】
コイルＬ１，Ｌ２以外のセンサコア回路５０は、完全デジタル回路で構成されている。ＬＣ発振器のコアは、電源スイッチ付きのＣＭＯＳインバータなどで構成されている。詳細には、発振器５１（ＬＣ発振回路）は、コイルＬ１（インダクタ）を除きロジック回路で構成されている。
発振器５１が形成された集積回路は、複数のトランジスタＴ１〜Ｔ３，Ｔ１１〜Ｔ１ａ，Ｔ１ｂ〜Ｔ１ｎ，Ｔ２１〜Ｔ２ａ，Ｔ２ｂ〜Ｔｂｎ、インバータＮ１〜Ｎ８，Ｎ１１〜Ｎ１４、ＮＡＮＤゲートＤ１，Ｄ１１などを有し、図４（ｂ）に示したように各構成要素が接続されている。
本実施形態では、例えば、ＭＯＳ型電界トランジスタのキャパシタとコイルＬ１を用いて発振器５１（８Ｌ）を構成している。発振器５１（ＬＣ発振器）の発振周波数は、予め規定された周波数となるように設定されており、各トランジスタＴ１１〜Ｔ１ａ，Ｔ１ｂ〜Ｔ１ｎ，Ｔ２１〜Ｔ２ａ，Ｔ２ｂ〜Ｔｂｎの接続を切り替えることにより、発振周波数の微調整を行うことができるように構成されている。
【００４１】
リング発振器８Ｒは、図４（ｂ）に示したように、インバータＮ１１〜Ｎ１４、ＮＡＮＤゲートＤ１１により構成されている。このリング発振器８Ｒは、発振器５１のＬＣ発振器８Ｌの発振周波数を較正する際に用いられる。
【００４２】
発振器５２（ＬＣ発振器を含む）は、上述した発振器５１と略同様な構造であり、コイルＬ１をコイルＬ２と読み替えた構造であるので、説明を省略する。つまり、発振器５２は、ＬＣ発振器、リング発振器などを有する。
【００４３】
図５は２つのＬＣ発振器の周波数差によるサイドチャネル攻撃の検知の一例を説明する図である。詳細には、コイルＬ１を有するＬＣ発振器の発振周波数と、コイルＬ２を有するＬＣ発振器の発振周波数を図５に示す。図５において、横軸に検知手段（センサ）としてのコイルＬ１，Ｌ２とプローブとの距離を示し、縦軸に発振周波数を示す。
【００４４】
図５に示した例では、サイドチャネル攻撃によるプローブがコイルＬ１，Ｌ２から離れている場合、各ＬＣ発振器の発振周波数は、閾値ｆｔｈより小さい同じ値を示すとする。尚、各ＬＣ発振器の発振周波数は異なる値を示していてもよい。
【００４５】
例えば、プローブがコイルＬ２に近づいた場合、コイルＬ１を有するＬＣ発振器の発振周波数は僅かに上昇し、コイルＬ２を有するＬＣ発振器の発振周波数は閾値ｆｔｈより大きい値を示す。また、プローブがコイルＬ１に近づいた場合、コイルＬ１を有するＬＣ発振器の発振周波数が閾値ｆｔｈより大きい値を示すことになる。
上述したように、検知手段としてコイルＬ１，Ｌ２を用いた場合、コイルＬ１，Ｌ２の一方または両方に近づいたことを、各ＬＣ発振器の発振周波数に基づいて容易に検知することができる。
【００４６】
尚、各発振器５１，５２（ＬＣ発振器）の発振周波数差は制御回路内のカウンタで計測される。本発明の実施形態に係る検知装置は、検知手段として発振器５１，５２（ＬＣ発振器）の発振周波数差を利用しており、クロックを周波数基準として使用しないため、システムクロックを含む外部入力のクロック源が攻撃者によって任意に変更される攻撃に対して耐性を有する。また、面積と電力の大きいオンチップの高精度な周波数基準発生回路（バンドギャップリファレンスなどのアナログ回路）も不要となる。物理サイズを考慮すると困難ではあるが、万が一、２つの電磁プローブで２つのコイルを同時に攻撃しても、コイル形状が異なるため、両コイルの周波数シフト量を長時間一定に保つのは極めて困難である（攻撃には数時間かかる）。
【００４７】
図６は検知装置と情報処理装置（暗号処理回路）の動作の一例を示すタイミングチャートである。詳細には、図６（ａ）は暗号処理回路の動作の一例を示す図、図６（ｂ）はＬＣ発振回路に関する信号ＬＯｅｎの一例を示す図、図６（ｃ）はリング発振回路に関する信号ＲＯｅｎの一例を示す図である。
【００４８】
本実施形態に係る検知装置は、検知手段としてのＬＣ発振回路を、図６に示すように、暗号処理の動作前後に間欠起動することで、プローブの接近をモニタする。動作間隔は守るべき暗号アルゴリズムに応じて適宜設定することができる。
図６に示した例では、トリガ信号ＬＯｅｎによってＬＣ発振器は、起動時に即座にフルスイング（設定振幅）の安定発振を行うことができる。トリガ信号ＲＯｅｎによりリング発振器は所定の発振周波数で発振を行う。後述するように、本発明の実施形態に係る検知装置は、リング発振器による発振周波数とＬＣ発振器による発振周波数に基づいて、ＬＣ発振器の周波数を較正する。
サイドチャネル攻撃の検知に必要な時間は、１μｓ以下であり、Ｉ／Ｏを含む暗号処理時間（〜１００μｓ）の１％以下の動作時間に抑えることができるため、消費電力のオーバーヘッドを著しく低減できる。
ＬＣ発振器は、暗号処理動作の停止中に起動するように制御回路により制御されるので、コイルからの放射電磁界により暗号情報が漏洩することはない。また、ＬＣ発振器と暗号処理回路の間の干渉は非常に小さい。
【００４９】
＜較正＞
図７はＬＣ発振器の発振周波数のばらつきを低減する較正回路の一例を示す図である。
本発明の実施形態に係るサイドチャネル攻撃の検知装置は、検知手段による検知精度を向上させるために、ＬＣ発振器の発振周波数のＰＶＴ（プロセス，電圧、温度）ばらつきを低減する機構を有する。詳細には、ローカルにリング発振器を搭載し、ＰＶＴばらつきに応じてＬＣ発振周波数を適応的に較正する。詳細には、集積回路チップに形成されたセンサコア回路内にリング発振器８Ｒが設けられている。例えば、較正回路５５は、制御回路５（制御部）などに形成されている。
較正回路５５には、ＬＣ発振器８Ｌ、リング発振器８Ｒがそれぞれカウンタ５７ａ（５７），５７ｂ（５７）を介して接続されている。カウンタ５７ａ（５７）はＬＣ発振器８Ｌによる発振周波数を計測し、信号ＬＯｃｌｋ（＃ＬＯｃｌｋ）を較正回路５５に出力する。カウンタ５７ｂ（５７）はリング発振器８Ｒによる発振周波数を計測し、デジタル信号ＲＯｃｌｋ（＃ＲＯｃｌｋ）を較正回路５５に出力する。
【００５０】
図８は各発振器の発振周波数の各特性の一例を示す図である。詳細には、図８（ａ）はリング発振器の場合、図８（ｂ）はＬＣ発振器の場合をそれぞれ示す。図９は、較正動作の一例を説明するための図である。図８（ａ），図８（ｂ），図９において、横軸に供給電圧ＶDD［Ｖ］を示し、縦軸に発振周波数のシフト割合［％］を示す。図８において、ＦＦ、ＴＴ、ＳＳの各左側はＮＭＯＳの特性を示し、右側はＰＭＯＳの特性を示す。Ｆ（Ｆａｓｔ）は、トランジスタがオンしやすいことを示し、Ｓ（ｓｌｏｗ）は、トランジスタがオンし難いことを示し、Ｔ（Ｔｙｐｉｃａｌ）は、設計通りであることを示す。図９において、供給電圧の増加により発振周波数のシフト割合が増加する曲線はリング発振器の特性を示し、供給電圧の増加により発振周波数のシフト割合が減少する曲線はＬＣ発振器の特性を示し、略一定値を示す直線は較正曲線を示す。
図１０は変換テーブル（ルックアップテーブル：ＬＵＴ）の一例を示す図である。図１０において、横軸に較正のための周波数、縦軸に容量値を示す。
【００５１】
検知手段としてのセンサに使用するＬＣ発振器には、正の温度係数を持つバラクタダイオード型のキャパシタを使用せずに較正用の小さなＭＯＳキャパシタ（同様に正の温度係数を持つが、温度係数はバラクタダイオードよりも小さい）のみを接続した。このときＬＣ発振器の発振周波数のＰＶＴばらつきは、ＣＭＯＳインバータのトランジスタのｇmに反比例する特性となり、リング発振器の周波数に対して単調な逆特性を有する（図８、図９参照）。尚、図８，図９のグラフには記載していないがＳＦ／ＦＳコーナーにおいても同様である。この特性を利用することで、ＬＣ発振器８Ｌ，リング発振器８Ｒの発振周波数をカウントするためのカウンタ５７ａ（５７），５７ｂ（５７）と小サイズのＬＵＴ（図１０参照）を用いて、ＬＣ発振器の発振周波数をワンステップでデジタル較正を行うことができる。
【００５２】
図１１は較正回路を用いたＬＣ発振回路の発振周波数の較正動作の一例を示すフローチャートである。次に、ＬＣ発振器の発振周波数を較正する方法の一例を、図４，図７〜図１１などを参照しながら説明する。
【００５３】
ステップＳＴ１１において、較正回路５５を含む制御回路５は、リング発振器８Ｒ、ＬＣ発振器８Ｌ、およびカウンタ５７ａ，５７ｂを起動させる。
カウンタ５７ａはＬＣ発振器８Ｌの発振周波数を測定し、カウンタ５７ｂはリング発振器８Ｒの発振周波数を測定する。詳細には、カウンタ５７ａはＬＣ発振器８Ｌのクロック数をカウントし、カウンタ５７ｂはリング発振器８Ｒのクロック数をカウントする。
【００５４】
較正回路５５は、カウンタ５７ａ，５７ｂのいずれか一方がフルカウント（設定値）になった時点で、他方のカウンタのカウント値を読み出し、それに応じて較正値を増減する。較正回路５５は、予め記憶回路などに記憶されているＬＵＴ（図１０）を参照して、得られた較正値に基づいてＬＣ発振器８Ｌの容量値（ΔＣ）に変換し、ＬＣ発振器８Ｌの発振周波数を較正する。
【００５５】
詳細には、ステップＳＴ１２において、較正回路５５は、カウンタ５７ａ，５７ｂによりカウントされる計測値のいずれか一方がフルカウント（設定値）になったか否かを判別し、カウンタ５７ｂ（リング発振器用）のカウント値（＃ＲＯｃｌｋ）がフルカウントになった場合、ステップＳＴ１３の処理に進み、カウンタ５７ａ（ＬＣ発振器８Ｌ用）のカウント値（＃ＬＯｃｌｋ）がフルカウントになった場合、ステップＳＴ２３の処理に進む。
【００５６】
ステップＳＴ１３において、較正回路５５は、カウンタ５７ａ（ＬＣ発振器用）によるカウント値（＃ＬＯｃｌｋ）を読み込む。このカウント値は、リング発振器の発振周波数とＬＯ発振器の発振周波数の差に対応する。
【００５７】
ステップＳＴ１４において、カウンタ５７ａ（ＬＣ発振器用）によるカウント値（＃ＬＯｃｌｋ）に基づいて、ＬＣ発振器の発振周波数が設定値となるように、較正値を減少させる処理を行う。
【００５８】
ステップＳＴ１５において、較正回路５５は、ＬＵＴ（図１０参照）を参照して、較正値（Δｆに対応）から、ＬＣ発振器の容量値ΔＣに変換する処理を行い、ステップＳＴ１６の処理に進む。
【００５９】
ステップＳＴ１６において、較正回路５５は、容量値ΔＣに基づいてＬＣ発振器８Ｌの容量を減少させて、発振周波数を較正する。詳細には、較正回路５５は、信号CalCodeをＬＣ発振器８Ｌに出力し、図４（ｂ）に示したトランジスタＴ２１〜Ｔ２ａ，Ｔ２ｂ〜Ｔ２ｎそれぞれを信号CalCodeに応じてオン接続またはオフ状態とし、トランジスタＴ１１〜Ｔ１ａ，Ｔ１ｂ〜Ｔ１ｎによるＭＯＳキャパシタの容量値を調整することで、ＬＣ発振器８Ｌの発振周波数を較正する。
【００６０】
ステップＳＴ２３において、カウンタ５７ａ（ＬＣ発振器８Ｌ用）のカウント値（＃ＬＯｃｌｋ）がフルカウントになった場合（ステップＳＴ１２）、較正回路５５は、カウンタ５７ｂ（リング発振器用）によるカウント値（＃ＲＯｃｌｋ）を読み込む。このカウント値は、リング発振器の発振周波数とＬＯ発振器の発振周波数の差に対応する。
【００６１】
ステップＳＴ２４において、カウンタ５７ｂ（リング発振器用）によるカウント値（＃ＲＯｃｌｋ）に基づいて、ＬＯ発振器の発振周波数が設定値となるように、較正値を増加させる処理を行い、ステップＳＴ１５の処理に進む。
【００６２】
ステップＳＴ１５において、較正回路５５は、ＬＵＴ（図１０参照）を参照して、較正値（Δｆに対応）から、ＬＣ発振器の容量値ΔＣに変換する処理を行い、ステップＳＴ２６の処理に進む。
【００６３】
ステップＳＴ２６において、較正回路５５は、容量値ΔＣに基づいてＬＣ発振器８Ｌの容量を増加させて、発振周波数を較正する。
【００６４】
ここで、サイドチャネル攻撃の検知手段と同様に、較正回路５５はＬＣ発振回路とリング発振回路の周波数差を利用しているため、他の周波数基準は不要であることに注意されたい。つまり、較正回路５５による較正処理は、システムクロックを含む外部入力のクロック源が攻撃者によって任意に変更される攻撃に対して耐性を有する。
また、上述した較正回路５５を用いたＬＣ発振器の発振周波数の較正方法は、設計段階であらかじめ設定されたＬＵＴ（変換テーブル）に従って容量を調整して、ＬＣ発振器の発振周波数のＰＶＴばらつき成分のみを補正するものであり、プローブの接近に伴うインダクタンスの変化による発振周波数の変化分については、較正後もそのまま残る。
したがって、仮に電源投入前に、プローブを接近させていたとしても、電源投入・較正後に仕様上の発振周波数（設計段階で決定される）と観測された発振周波数との差により正しく攻撃検知が可能である。
【００６５】
また、図８，図９に示したように、リング発振器の電圧特性と、ＬＣ発振器の電圧特性が逆特性となっており、図９に示したように、交点を通る一定値となるように上記較正を行う。つまり、ＬＣ発振器の発振周波数の電圧依存性を小さくするように較正を行う。
供給電圧が比較的高い場合、リング発振器の発振周波数がＬＣ発振器の発振周波数よりも高くなり、その周波数差に基づいて、ＬＣ発振器の発振周波数を較正する。また、供給電圧が比較的低い場合、リング発振器の発振周波数がＬＣ発振器の発振周波数よりも低くなり、その周波数差に基づいて、ＬＣ発振器の発振周波数を較正する。このように、リング発振器の発振周波数とＬＣ発振器の発振周波数の差により、供給電圧が基準の電圧よりも低いまたは高いことを判断することができ、そうした場合であっても、ＬＣ発振器の発振周波数を確実に較正することができる。
【００６６】
また、図８，図９に示したように、リング発振器の温度特性と、ＬＣ発振器の温度特性が逆特性となっており、図９に示したように、交点を通る一定値となるように上記較正を行う。詳細には、リング発振器は温度が高くなると、発振周波数が低くなり、ＬＣ発振器は温度が高くなると発振周波数が高くなる。図９に示したように、例えば、温度が高くなった場合であっても、交点を通る略一定値の較正用曲線が僅かに高くなる程度である。このため、温度が変化した場合であっても、較正の誤差を非常に小さくすることができる。つまり、リング発振回路とＬＣ発振回路の温度依存性が逆特性なので、電圧依存性を補正するときに、温度の変動によるドリフトを少なくすることができる。
【００６７】
また、図８に示したように、リング発振器およびＬＣ発振器のプロセスばらつき特性が逆特性となっており、同様に、プロセスのばらつきがある場合であっても、較正の誤差を非常に小さくすることができる。
【００６８】
＜実験・検証＞
本願発明者は、本願発明に係る検知装置の効果を確認するために、図４に示したような情報処理装置３としての暗号処理回路３ａを有する集積回路のチップ上に、コイルＬ１、コイルＬ２、センサコア回路５０、つまり、コイルＬ１を有するＬＣ発振器、コイルＬ２を有するＬＣ発振器、制御回路５などの回路を、０．１８μｍ ＣＭＯＳテクノロジのＬＳＩとして作製した。
【００６９】
検知手段としてのコイルＬ１は４巻き、コイルＬ２は３巻きである。コイルＬ１は、縦２８５μｍ ｘ 横４００μｍの矩形状であり、コイルＬ２は縦２８５μｍ ｘ 横４８０μｍの矩形状である。
【００７０】
この本発明に係る検知装置を有するＬＳＩを搭載した評価ボードをサイドチャネル攻撃標準評価基板（SASEBO R-II）に搭載し、マイクロマニピュレータで固定した極小電磁プローブを、検知装置を有するＬＳＩに接近させた。
【００７１】
プローブからのＥＭ信号は、１００Ｗのパワーアンプで増幅した後、オシロスコープを介してコンピュータ（ＰＣ）に波形を取り込み、コンピュータにて相関計算を行って、局所ＥＭ解析攻撃を行った。
【００７２】
まず、ＬＣ発振器のデジタル較正を評価した。
図１２は実測した各発振器の発振周波数の電源電圧と温度依存性の一例を示す図である。詳細には、図１２（ａ）はリング発振器の場合、図１２（ｂ）はＬＣ発振器（３巻き）の場合、図１２（ｃ）はＬＣ発振器（４巻き）の場合をそれぞれ示す図である。
【００７３】
リング発振器とＬＣ発振器（３巻き，４巻き）の間にＰＶＴばらつきに対する逆特性を確認した。本願発明者は、上述したデジタル較正を行ったところ、±１０％の電源電圧変動範囲と０〜６０℃の温度変化範囲において、周波数ばらつきを±１％以下に抑えることができた。
【００７４】
次に、本発明に係る検知装置によるサイドチャネル攻撃の検知機能を評価した。
図１３は周波数スペクトラムの一例を示す図である。詳細には、図１３（ａ）は３巻コイルＬ２の場合（プローブ接近なし）、図１３（ｂ）は４巻コイルＬ１の場合（プローブ接近なし）、図１３（ｃ）は３巻コイルＬ２の場合（Ｌ１にプローブ接近あり）、図１３（ｄ）は４巻コイルＬ１の場合（Ｌ１にプローブ接近あり）、をそれぞれ示す。
【００７５】
極小電磁プローブ（プローブ）を４巻きコイルＬ１（センサコイル）に接近させたところ、５．２％発振周波数がシフトし、図１３に示したように、正常に攻撃検知ができることを確認した。
【００７６】
図１４は、サイドチャネル攻撃の検知による動作の一例を説明するための図である。詳細には図１４（ａ），図１４（ｂ）は攻撃検知による動作切り替えなしの場合の電磁波の波形の一例、相関係数の一例をそれぞれ示す図であり、図１４（ｃ），図１４（ｄ）は攻撃検知による動作切り替えありの場合の電磁波波形の一例、相関係数の一例をそれぞれ示す図である。
【００７７】
制御回路（制御部）は、サイドチャネル攻撃の検知装置による攻撃検知後、暗号処理回路に、停止やダミー演算の実行などの漏洩防止処理を行う動作を行わせることで、鍵情報の漏洩を防げることも実測により確認することができた。詳細には、図１４に示したように、相関係数に基づいた正解鍵の検出を防止することができた。
【００７８】
表１に、本発明に係るサイドチャネル攻撃の検知装置の機能と、暗号処理回路（１ラウンド／１クロックのループアーキテクチャに基づくＡＥＳ暗号回路）に対する搭載時の面積、電力、性能オーバーヘッドを記載する。
本発明に係るサイドチャネル攻撃の検知装置（本対策回路）は、２．４％の面積と１％の電力と性能のわずかなオーバーヘッドで、従来の対策では防ぐことが困難な局所的な電磁波解析攻撃に対する耐性を実現できる。
【００７９】
また、本発明に係るサイドチャネル攻撃の検知装置は、ハイディングやマスキングなどの先行するサイドチャネル攻撃対策とも組み合わせ可能であり、相補的に組み合わせることにより、より堅牢なセキュリティを有する暗号処理回路を実現できる。
【００８０】
【表１】
2017079336.tif 000004
【００８１】
＜本発明の他の実施形態＞
上記実施形態に係るサイドチャネル攻撃の検知装置は、図２、図４などに示したように、検知手段としてコイル（インダクタ）を備えたＬＣ発振器を採用し、導電体などにより構成されるプローブなどの接近によるインダクタンス（相互インダクタンス）の変化に応じた発振周波数の変化や、暗号処理回路などの情報処理装置を含むＬＳＩのパッケージ（導電体や樹脂などにより構成される）の開封によるインダクタンス（相互インダクタンス）の変化に応じた発振周波数の変化に基づいて判定手段としての制御回路がサイドチャネル攻撃によるプローブの接近やＬＳＩパッケージの開封などを判定したが、この形態に限られるものではない。
【００８２】
例えば、本発明に係る検知装置は、プローブなどの接近によるキャパシタンス（相互キャパシタンス）の変化に基づいて、プローブなどを検知する検知手段と、その検知手段の出力に基づいてサイドチャネル攻撃によるプローブの接近やＬＳＩパッケージの開封などを判定する制御回路などの判定手段を有してもよい。
【００８３】
図１５は本発明の他の実施形態に係るサイドチャネル攻撃の検知装置の一例を説明するための概念図である。図１６は伝達関数の一例を示す図である。詳細には、図１６（ａ）はプローブが検知手段に接近していない場合の伝達関数の一例を示す図、図１６（ｂ）はプローブが検知手段に接近している場合の伝達関数の一例を示す図である。図１７は入力信号の電圧の周波数特性の一例を示す図である。
例えば、図１５に示した本発明に係る検知装置は、集積回路チップ１０に形成された情報処理装置３の近傍に、検知手段として、導電体により細長の伝送路２０１を設けることによりキャパシタを形成し、その伝送路２０１の一方の端部から所定の信号（図１７参照）を入力し、伝送路２０１の他方の端部で信号を受信し、その信号に基づいて判定手段としての制御回路５が伝達関数の変化によりプローブ７の接近を判定してもよい。つまり、図１６に示した例では、検知手段による、プローブ７の接近による容量結合の変化（キャパシタンスの変化）を示す出力に基づいて、判定手段としての制御回路５がサイドチャネル攻撃によるプローブの接近を判定する。
また、上述した暗号処理回路などの情報処理装置を含むＬＳＩ（集積回路チップ１０）が導電体や樹脂などにより構成されるＬＳＩパッケージに収容されている場合、上記検知装置は、パッケージの開封による容量結合の変化（キャパシタンスの変化）に基づいてサイドチャネル攻撃を検知してもよい。詳細には、上述したように、集積回路チップ１０に形成された情報処理装置３の近傍に、検知手段として、導電体などにより伝送路２０１を設けることによりキャパシタを形成し、その伝送路２０１の一方の端部から、所定の信号（図１７参照）を入力し、伝送路２０１の他方の端部で信号を受信し、伝達関数の変化に基づいて判定手段としての制御回路５がＬＳＩパッケージの開封を判定してもよい。つまり、検知手段により、パッケージの開封時の容量結合による容量結合の変化（キャパシタンスの変化）に基づいて、判定手段としての制御回路５がＬＳＩパッケージの開封を判定する。
【００８４】
以上、説明したように、本発明の実施形態に係るサイドチャネル攻撃の検知装置１は、サイドチャネル攻撃の対象となる情報処理装置に近接して配置されたコイル（インダクタ）またはキャパシタを有し、コイル（インダクタ）のインダクタンスまたはキャパシタのキャパシタンスの変化を検知する検知手段と、その検知手段によりサイドチャネル攻撃によるプローブの接近またはＬＳＩパッケージの開封を判定する判定手段としての制御回路５と、を有する。
このため、簡単な構成で、サイドチャネル攻撃を検知可能な検知装置を提供することができる。
【００８５】
また、本発明に係る検知装置は、上記検知手段を有するので、従来対策では防ぐことが困難な局所電磁波解析攻撃も含めてプロービングによる電気的情報を用いるサイドチャネル攻撃全般を防ぐことができる。
【００８６】
また、本発明に係る検知装置は、集積回路内部やプリント基板上の配線パターンから放射される電磁界を測定するためにプローブを接近させると、コイルのインダクタンスの変化、詳細には、例えば、集積回路やプリント基板上の配線と（プローブを含む）周囲との電磁界結合度が変化し、不可避に電磁界分布に変化が生じるという物理法則に基づいて、サイドチャネル攻撃を検知することができ、攻撃者は原理的に検知されることなく攻撃を行うことは困難となる。
【００８７】
また、本発明では、従来対策に対して、暗号ＬＳＩの実行速度や消費電力、実装面積などのオーバーヘッドを大きく削減している。従来対策は少なくとも回路規模を数倍程度増加する。一方、本発明では、検知手段をＬＣ発振器により構成した場合、対策対象となる暗号処理回路に対して２．４％というわずかな面積オーバーヘッドで実現できる。また、コイル以外のすべての回路は完全デジタル回路（ロジック回路）で構成できるので、集積回路製造プロセスの微細化に応じて、暗号コアと同様に面積を縮小できる。
また、コイルについても集積回路製造プロセスの微細化によるトランジスタ性能の改善により縮小可能であり、暗号コアに対するセンサ全体の面積オーバーヘッドについても一定に保つことが出来る。
【００８８】
また、本発明に係る検知装置は、検知手段をＬＣ発振器により構成した場合、コイル以外の回路を完全デジタル回路（ロジック回路）で構成できるため、設計容易性が高く、集積回路製造プロセスの微細化に応じて、暗号コアと同様に面積を縮小できる。
【００８９】
また、本発明に係る検知装置は、形状・巻き数の異なる２つ以上のコイルを用いた攻撃検知方式により、多様なプロービング方法を検知可能にするとともに、高精度な周波数基準を不要にすることで周波数基準に対する攻撃も不可能にする。
【００９０】
また、本発明では、２コイル以上を用いた攻撃検知方式により高精度な周波数基準を不要にし、周波数基準に対する攻撃を不可能にするだけでなく、本発明による回路面積や消費電力の増加を大きく削減することに寄与する。さらに、リング発振器を用いたセンサのワンステップデジタル較正により、ＰＶＴばらつきにも対応可能である。
【００９１】
さらに、リング発振器を用いたＬＣ発振器の発振周波数のワンステップデジタル較正により、様々な動作環境にも対応可能である。
本発明は、上記機能を実現した場合でも、対策対象となる暗号処理回路（情報処理装置）に対して、例えば、２．４％程度という僅かな面積オーバーヘッドで実現できる。
【符号の説明】
【００９２】
１…検知装置
２…検知手段
３…情報処理装置
３ａ…暗号処理回路
５…制御回路（判定手段：制御部）
７…プローブ
８Ｌ…ＬＣ発振器
８Ｒ…リング発振器
１０…集積回路チップ
５０…センサコア回路
５５…較正回路
５７，５７ａ，５７ｂ…カウンタ
Ｌ，Ｌ１，Ｌ２…コイル。
【図１】
2017079336.tif 000005
【図２】
2017079336.tif 000006
【図３】
2017079336.tif 000007
【図４】
2017079336.tif 000008
【図５】
2017079336.tif 000009
【図６】
2017079336.tif 000010
【図７】
2017079336.tif 000011
【図８】
2017079336.tif 000012
【図９】
2017079336.tif 000013
【図１０】
2017079336.tif 000014
【図１１】
2017079336.tif 000015
【図１２】
2017079336.tif 000016
【図１３】
2017079336.tif 000017
【図１４】
2017079336.tif 000018
【図１５】
2017079336.tif 000019
【図１６】
2017079336.tif 000020
【図１７】
2017079336.tif 000021