(57)【特許請求の範囲】
【請求項１】
ターゲット装置の動作ステータスに関係するサイドチャネル情報を捕捉するように構成されたプローブであって、寿命中前記ターゲット装置に関連して永続的な固定位置にあり、前記ターゲット装置における異常検出するプローブと、
前記プローブが、前記ターゲット装置に対して永続的な固定位置にあるように、前記プローブを固定的に保持するように構成された取り付け具と、
前記プローブに通信可能に結合されたプロセッサであって、
前記サイドチャネル情報の第１の特性を抽出するために、前記サイドチャネル情報を処理し、
第２の特性を有し、前記ターゲット装置の正常動作を表す、以前に格納された基準サイドチャネル情報を検索し、
前記ターゲット装置の異常を決定するために、前記第１の特性を前記第２の特性と比較し、
前記第１の特性及び前記第２の特性に基づいて、前記異常を示す警告をユーザインターフェースに送信するように構成されたプロセッサと、
を含む機器。
【請求項２】
前記取り付け具が、前記プローブのセンサを保持するために、前記ターゲット装置上に集積回路ソケットを含み、前記取り付け具が、前記ターゲット装置の基板の一部である、請求項１に記載の機器。
【請求項３】
前記取り付け具が、意図した位置に前記プローブを保持するために、チップ、回路基板又は前記ターゲット装置の容器のいずれかに装着された機械的留め具を含む、請求項１に記載の機器。
【請求項４】
前記取り付け具が、前記ターゲット装置に前記プローブを固定するように構成される結合器を含む前記ターゲット装置のカスタマイズされたシャーシ又はカスタマイズされたカバーを含む、請求項１に記載の機器。
【請求項５】
前記プローブを含む複数のプローブのマトリックスであって、前記複数のプローブが、空間的に分散されるマトリックスを更に含む、請求項１に記載の機器。
【請求項６】
前記プローブを含む複数のプローブのマトリックスであって、前記複数のプローブが、空間的に分散され、前記複数のプローブが、前記ターゲット装置の異常検出中に動作可能に再構成できるマトリックスを更に含む、請求項１に記載の機器。
【請求項７】
前記プローブを含む複数のプローブのマトリックスであって、前記複数のプローブが、空間的に分散され、前記プロセッサが、
第１の特徴に関連する第１のサイドチャネル情報セットを捕捉する要求を取得し、前記第１のサイドチャネル情報セットが、前記サイドチャネル情報を含むように、
前記第１の特徴に基づいて、前記複数のプローブから第１のプローブを選択するように、
前記第１のプローブを介して、前記第１のサイドチャネル情報セットを捕捉するように構成され、
第１のプローブが、前記複数のプローブから、第２の前記プローブ用の前記第１の特徴に関するデータ品質を超える、前記第１の特徴に関するデータ品質を備えた第１のサイドチャネル情報セットを補足するように構成されるマトリックスを更に含む、請求項１に記載の機器。
【請求項８】
前記第１のプローブが、前記第１の特徴の収集を改善するために、時間及びチップ動作に基づいて選択される、請求項７に記載の機器。
【請求項９】
前記プローブを含む複数のプローブのマトリックスであって、前記複数のプローブが、空間的に分散され、
前記複数のプローブが、
空間的に分散された前記複数のプローブからの多数の同一プローブと、
相異なる信号を捕捉するように構成される、前記複数のプローブからの多数の相異なるプローブと、又は
相異なる特性を備えた組み合わせプローブを形成するように動的に構成されるブロック素子と、のいずれかを含むマトリックスを更に含む、請求項１に記載の機器。
【請求項１０】
前記プローブを含む複数のプローブのマトリックスであって、前記複数のプローブが、空間的に分散され、前記複数のプローブからの少なくとも１つのプローブが、再構成可能なアンテナコンポーネントを有する電磁プローブを含むマトリックスを更に含む、請求項１に記載の機器。
【請求項１１】
前記ターゲット装置が、ターゲット回路チップを含み、
前記プローブが、前記ターゲット回路チップに含まれる、請求項１に記載の機器。
【請求項１２】
ターゲット回路チップ上の再プログラム可能なコンポーネントが、前記ターゲット回路チップの最初の製造から動作の終了まで再プログラムされることを示す前記ターゲット回路チップのピンにおける状態変化を監視するように構成された回路異常検出器と、
前記状態変化の表現を含む通知メッセージを、検出された異常に応答するように指示されたエンティティに送信するように構成される、前記回路異常検出器に通信可能に結合された通知プロセッサと、
を含む機器。
【請求項１３】
前記回路異常検出器が、電磁センサ、又は前記ターゲット回路チップへの直接回路接続のいずれかを含む、請求項１２に記載の機器。
【請求項１４】
前記再プログラム可能なコンポーネントが、フラッシュメモリユニット、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、又は基本入出力システム（ＢＩＯＳ）のいずれかを含む、請求項１２に記載の機器。
【請求項１５】
前記通知メッセージが、ユーザインターフェースを介してユーザに提示される、請求項１２に記載の機器。
【請求項１６】
前記通知メッセージが、前記ターゲット回路チップでインスタンス化されたモジュールに送信され、前記モジュールが、前記検出された異常に応答するように指示される、請求項１２に記載の機器。
【請求項１７】
前記回路異常検出器が、前記ターゲット回路チップの前記ピンにおける複数の状態変化を監視するように構成され、前記複数の状態変化からの各状態変化が、複数の時間からの時間に一意に関連付けられ、
前記通知プロセッサが、前記複数の状態変化に基づいて通知メッセージを送信するように構成される、請求項１２に記載の機器。
【請求項１８】
前記回路異常検出器が、前記ターゲット回路チップにおける電磁センサのいずれかを含む、請求項１２に記載の機器。
【請求項１９】
前記通知メッセージが、前記検出された異常に応じて修復をトリガするために、前記ターゲット回路チップにおける応答回路に送信される、請求項１２に記載の機器。
【請求項２０】
前記通知メッセージが、前記検出された異常に応じて、前記ターゲット回路チップの前記ピンにおける周知の状態への修復をトリガするために、前記ターゲット回路チップにおける応答回路に送信される、請求項１２に記載の機器。
【請求項２１】
前記ターゲット回路チップの前記ピンにおける前記状態変化を測定するように構成された複数のプローブのマトリックスと、
前記回路異常検出器に送信される前記複数のプローブの出力と、
を更に含む、請求項１２に記載の機器。
【請求項２２】
前記ターゲット回路チップの前記ピンにおける前記状態変化を測定するように構成された複数のプローブのマトリックスと、
前記回路異常検出器に送信される前記複数のプローブの出力と、
前記ターゲット回路チップの異常検出中に動作可能に再構成できる前記複数のプローブと、
を更に含む、請求項１２に記載の機器。
【請求項２３】
前記ターゲット回路チップが、ファームウェアを含み、
前記ターゲット回路チップの前記ピンにおける前記状態変化が、前記ファームウェア用のパッチに関連付けられ、
前記状態変化が前記パッチに関連付けられることを前記通知メッセージが示す、請求項１２に記載の機器。
【請求項２４】
前記回路異常検出器が、前記ターゲット回路における複数の状態変化を監視するように構成され、前記複数の状態変化からの各状態変化が、複数の時間からの時間に一意に関連付けられ、
前記通知プロセッサが、前記複数の状態変化に基づいて前記通知メッセージを送信するように構成される、請求項１２に記載の機器。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本出願は、２０１５年１０月１３日出願の米国特許出願第１４／８８１，８６２号の継続出願であり、その優先権を主張し、今度は米国特許出願第１４／８８１，８６２号は、２０１５年５月２２日出願の米国特許出願第１４／７２０，４９７号の優先権を主張する。本出願はまた、２０１５年５月２２日出願の米国特許出願第１４／７２０，４９７号の継続出願であり、その優先権を主張する。
【０００２】
上記の出願の内容は、参照によって、それらの全体において本明細書に援用される。
【背景技術】
【０００３】
プロセッサベースの装置又はシステムは、電力によって動力を供給されるが、それは、回路ユニットのデータ交換及び記憶を容易にする。例えば、相補型金属酸化膜半導体（ＣＭＯＳ）デジタル回路において、ビット遷移毎に、過渡電流ドレインが、ゲートにおける短時間の短絡、並びに回路の出力部における寄生容量の充電及び放電にから結果として生じる。従って、特定のクロックサイクルにおいて消費される総電力は、そのクロックサイクルにおいて起こるビット遷移の総数によって決定される。ビット遷移の数は、実行される特定の命令シーケンスと同様に、それらのアドレス及びパラメータによって決定される。特定の命令シーケンスの実行に混乱が発生した場合に、かかる混乱は、デジタル回路レベルにおける過渡電流、従って電力の消費に反映される。
【発明の概要】
【課題を解決するための手段】
【０００４】
本明細書で説明される幾つかの実施形態は、機器を含む。機器は、プローブコンポーネントがターゲット装置の近くに配置された場合にターゲット装置の動作ステータスに関係するサイドチャネル情報を捕捉するように構成されるプローブコンポーネントを含む。機器は、取り付け機構を更に含み、取り付け機構は、ターゲット装置上にプローブコンポーネントを固定的に保持するように構成される。機器は、プローブコンポーネントに通信可能に結合されたプロセッサを更に含む。プロセッサは、サイドチャネル情報の第１の特性を抽出するために、サイドチャネル情報を処理するように構成される。プロセッサは、第２の特性を有してターゲット装置の正常動作度を表す、以前に格納された基準サイドチャネル情報を検索するように、ターゲット装置の異常を判定するために、第１の特性を第２の特性と比較するように更に構成される。プロセッサは、第１の特性及び第２の特性に基づいて、異常を示す警告をユーザインターフェースに送信するように更に構成される。
【０００５】
本明細書で説明される幾つかの実施形態は、機器を含む。機器は、プローブコンポーネントがターゲット装置の近くに配置された場合にターゲット装置の動作ステータスに関係するサイドチャネル情報を捕捉するように構成されたプローブコンポーネントを含む。機器は、プローブコンポーネントに関連して配置され、プローブコンポーネントの位置を調整するように構成されたポジショナ装置を更に含む。機器は、プローブコンポーネント及びポジショナ装置に通信可能に結合されたプロセッサを更に含む。プロセッサは、ポジショナ装置を介して、プローブコンポーネントを第１の位置に配置し、第１の位置におけるプローブコンポーネントを介して、第１のサイドチャネルデータセットを捕捉するように構成される。プロセッサは、第１のサイドチャネルデータセットに関係するフィードバックをデータ分析コンポーネントから取得するように更に構成され、それに基づいて、第１の位置に関係する品質メトリックを決定する。プロセッサは、品質メトリックが所定の閾値レベル未満である場合に、プローブコンポーネントを第２の位置に配置するようにポジショナ装置を調整するために、ポジショナ装置に信号を送信するように更に構成される。
【０００６】
本明細書で説明される幾つかの実施形態は、機器を含む。機器は、複数のプローブ素子を含み、そのそれぞれは、プローブコンポーネントがターゲット装置の近くに配置された場合に、ターゲット装置の動作ステータスに関係するサイドチャネル情報を捕捉するように構成される。機器は、プローブコンポーネント及び位置決め装置に通信可能に結合されたプロセッサを更に含む。プロセッサは、第１の特徴に関連する第１のサイドチャネル情報セットを捕捉する要求を取得するように構成される。プロセッサは、第１の特徴に基づいて複数のプローブ素子から第１のプローブ素子を選択し、第１のプローブ素子を介して第１のサイドチャネル情報セットを捕捉するように更に構成される。第１のプローブ素子は、複数のプローブ素子から、第２のプローブ素子用の第１の特徴に関するデータ品質を超える、第１の特徴に関するデータ品質を備えた第１のサイドチャネル情報セットを捕捉するように構成される。
【０００７】
本明細書で説明される幾つかの実施形態は、プロセッサ実行方法を含む。方法は、サイドチャネル情報セットを捕捉する要求を取得することと、次にコードセグメントの実行を介して動作するターゲット装置の動作ステータスに関係するサイドチャネル情報セットをプローブコンポーネントに捕捉させる信号を送信することと、を含む。方法は、サイドチャネル情報セットと共にタイムスタンプを含む指示を外部タイミングソースから受信することを更に含む。タイムスタンプは、ターゲット装置の動作ステータスに関係するタイミング基準を示す。方法は、タイムスタンプに基づいて、ターゲット装置の動作ステータスにサイドチャネル情報セットを関連付けることと、タイムスタンプにおいてターゲット装置の動作ステータスと関連付けられるサイドチャネル情報セットをデータ記憶素子に送信することと、を更に含む。
【０００８】
本明細書で説明される幾つかの実施形態は、機器を含む。機器は、ターゲット回路チップ上の再プログラム可能なコンポーネントが再プログラムされることを示すターゲット回路チップ上のピンにおける状態変化を監視するように構成された回路異常検出コンポーネントを含む。機器は、回路異常検出コンポーネントに通信可能に結合され通知コンポーネントを更に含む。通知コンポーネントは、検出された異常に応答するように指示されたエンティティに、状態変化を含む通知メッセージを送信するように構成される。
【図面の簡単な説明】
【０００９】
【図１】実施形態に従い、サイドチャネルプローブによって測定されたサイドチャネル情報に基づいた異常検出の態様を示す組み合わせシステム構造及びワークフローダイアグラムである。
【図２Ａ】様々な実施形態に従って、サイドチャネルプローブを用いた電力指紋付け（ＰＦＰ）システムのシステムインフラストラクチャを示す様々なシステム図を提供する。
【図２Ｂ】様々な実施形態に従って、サイドチャネルプローブを用いた電力指紋付け（ＰＦＰ）システムのシステムインフラストラクチャを示す様々なシステム図を提供する。
【図２Ｃ】様々な実施形態に従って、サイドチャネルプローブを用いた電力指紋付け（ＰＦＰ）システムのシステムインフラストラクチャを示す様々なシステム図を提供する。
【図２Ｄ】様々な実施形態に従って、サイドチャネルプローブを用いた電力指紋付け（ＰＦＰ）システムのシステムインフラストラクチャを示す様々なシステム図を提供する。
【図３Ａ】様々な実施形態に従って、プローブ（例えば図２Ａ〜２Ｄにおける２０１）の例示的な構成を示すブロック図を提供する。
【図３Ｂ】様々な実施形態に従って、プローブ（例えば図２Ａ〜２Ｄにおける２０１）の例示的な構成を示すブロック図を提供する。
【図４】実施形態に従い、プローブ素子のマトリックスに基づいてサイドチャネル情報を捕捉するワークフローの態様を示す論理流れ図を提供する。
【図５】実施形態に従い、サイドチャネル収集のフィードバックに基づいたプローブ位置の自動調整の態様を示す論理流れ図を提供する。
【図６Ａ】実施形態に従って、アナログ処理モジュール（例えば図２Ａ〜２Ｄにおける２０２）のワークフローを示す例示的なブロック図を提供する。
【図６Ｂ】実施形態に従って、アナログ処理モジュール（例えば図２Ａ〜２Ｄにおける２０２）のワークフローを示す例示的なブロック図を提供する。
【図７Ａ】実施形態に従って、分析モジュール（例えば図２Ａにおける２１４）からの例示的なスペクトログラムを示す例示的なデータプロット図を提供する。
【図７Ｂ】実施形態に従って、分析モジュール（例えば図２Ａにおける２１４）の例示的なインフラストラクチャを示すブロック図を提供する。
【図７Ｃ】実施形態に従って、分析モジュール（例えば図２Ａにおける２１４）の例示的なインフラストラクチャを示すブロック図を提供する。
【図７Ｄ】実施形態に従って、分析モジュール（例えば図２Ａにおける２１４）の例示的なインフラストラクチャを示すブロック図を提供する。
【図８】実施形態に従って、ネットワーク実装モジュール（例えば図２Ａにおける２１１）の例示的なインフラストラクチャを示すブロック図を提供する。
【図９】実施形態に従って、機械学習モジュール（例えば図２Ａにおける２１５）によるユーザ事例の例を示すブロック図を提供する。
【図１０】実施形態に従って、フラッシュ又は基本入出力システム（ＢＩＯＳ）を監視するための例示的なＰＦＰの適用の態様を示すブロック図を提供する。
【図１１】実施形態に従って、ファウンドリ及び偽造識別の例示的なＰＦＰの適用の態様を示すブロック図を提供する。
【図１２Ａ】実施形態に従って、偽造測定の例を示す例示的なデータプロット図を提供する。
【図１２Ｂ】実施形態に従って、偽造測定の例を示す例示的なデータプロット図を提供する。
【発明を実施するための形態】
【００１０】
詳細な説明
本明細書で開示される実施形態は、クリティカル埋め込みシステム、コプロセッサ及びフィールドプログラマブルゲートアレイ（ＦＰＧＡ）を含むデジタル回路及びコンピュータベースシステムにおける悪意のある侵入、不正変更、及び改竄を検出できる完全性評価及び侵入検出システムに関する。幾つかの例において、物理的サイドチャネル（例えば、電力消費又は電磁放射及び他の物理信号などのプログラム実行の間接測定）は、外部モニタを用いてターゲットプロセッサシステム（例えばデジタル回路又はコンピュータシステム）における実行ステータスを評価し、不正実行が、ターゲット装置又はシステムの正常動作をうまく混乱させた場合に検出するために用いることができる。プログラム実行異常を検出するこのプロセスは、本明細書では「指紋付け」と呼ばれる。指紋付けを実行する方法及び機器は、指紋付けシステム又はシステムと呼ぶことができ、それは、多くの相異なる方法及び形態で具体化することができる。幾つかの例において、かかる指紋付けは、ターゲット装置又はシステムの動作における異常を検出するために、例えば物理的サイドチャネルを用いることができる。
【００１１】
図１は、サイドチャネルプローブによって測定されたサイドチャネル情報に基づいた異常検出用の指紋付けシステム１００の態様を示す組み合わせシステム構造及びワークフローダイアグラムである。図１に示されているように、サイドチャネルプローブ１０１は、サイドチャネル情報（例えば電力消費又は電磁放射及び他の物理信号等）を捕捉することができる。幾つかの例において、サイドチャネル情報は、温度、振動、圧力、タイミング、全地球測位システム（ＧＰＳ）座標などの他の物理センサ信号と共に用いることができる。指紋付けシステム１００は、１０２において新しいサイドチャネル収集情報を収集し、次に新しく収集されたサイドチャネル情報を以前に格納された基準データ（例えば履歴の基準電力消費記録等）と１０３で比較することができる。比較に基づいて、指紋付けシステム１００は、測定されたターゲット装置／システムの異常が存在するかどうかを１０４で決定することができる。存在する場合に、指紋付けシステムは、１０６でユーザに警告することができる。又はそうではなく、異常が、１０４で検出されない場合に、指紋付けシステム１００は、１０５で次の装置又はモジュールを評価するために先に進むことができる。
【００１２】
多くの実施形態が、電子装置の動作中にサイドチャネル情報の捕捉に関係するように本明細書で説明されるが、代替実施形態において、サイドチャネル情報は、外部信号を用いた励起中に電子装置から捕捉することができることに留意されたい。かかる外部信号は、例えば、電磁干渉（ＥＭＩ）パルス、白色雑音信号、及び／又は超広帯域信号とすることができる。外部信号を用いた励起中のかかる捕捉は、電子装置が動作していない場合又は電子装置が動作している場合に実行することができる。
【００１３】
図２Ａ〜２Ｄは、サイドチャネルプローブを用いる電力指紋付け（ＰＦＰ）システムのシステムインフラストラクチャの様々な例を示す様々なシステム図を提供する。図２Ａに示されているように、ＰＦＰシステムは、テスト下の電子装置（ターゲット装置又はターゲットとも呼ばれる）用のアナログ処理ユニット２０２に、収集されたサイドチャネル情報を送信するアナログサイドチャネルプローブ２０１を含むことができる。テスト下の電子装置は、例えば集積回路（ＩＣ）（「チップ」とも呼ばれる）を含み、オペレーティングシステム（ＯＳ）、及びアプリケーションイベントを生成できるソフトウェアアプリケーションを用いて動作することができる。本明細書の説明は、一般に単一のターゲット装置の文脈であるが、多数のターゲット装置が、同時に分析され得ることを理解されたい。ＰＦＰシステムにおけるプローブは、テスト下の電子装置からサイドチャネル情報及び他の物理情報を捕捉し、それらの情報は、次に、ＰＦＰシステムの他のコンポーネントに供給される。ＰＦＰは、幾らかより多くの又は全ての利用可能な信号を捕捉するために、多様性を測定に追加する（かかる多様性が可能で有用な場合に）ために、相異なる物理位置、構成及び／又は向きを備えた相異なるプローブを相異なるサイドチャネル用に使用することができる。指紋付けシステムによって使用できるプローブ２０１は、限定するわけではないが、音響及び振動検出器、温度検出器、電磁気（電流（例えば電流プローブ、ホール効果センサ、無線周波数（ＲＦ）変圧器、電流ミラー、分路抵抗器等）検出器、電束及び磁束検出器、電磁放射検出器、近接場放射検出器など）、位置検出器、距離検出器、角度検出器、速度検出器、加速度検出器、光及び光学検出器、環境検出器：水分、湿度、圧力、力、レベル、回路遅延等を含む。
【００１４】
次に、アナログ処理ユニット２０２は、アナログデータをデジタル信号に変換するために、受信サイドチャネル情報をデジタイザ２０３に送信することができる。アナログ処理ユニット２０２は、デジタル化の前に信号調整及び処理を実行し、デジタル化される必要のない外部情報を低減するために、入力アナログ信号を変形してスペクトルを監視する。例えば、アナログ処理ユニット２０２の基本構造は、プローブ２０１からの受信信号をフィルタリング及び増幅するために、フィルタ及び低雑音増幅器を含む。アナログ処理ユニット２０２において処理されたアナログ信号は、或る代替及び／又は集中位置におけるデジタル化用に、光ファイバなどの搬送機構に置かれてもよい。アナログ信号処理ユニット２０２は、多素子センサ処理を含むことができる。例えば、センサアレイの素子は、選択又はアナログ結合を通して、デジタル化の前に処理されてもよい。アナログ信号処理ユニット２０２は、アナログ同期化を用いるクロック回復、及び望ましい帯域上のより低速な変換器を用いる並列サンプリング用の様々な帯域への信号のチャネル化を含むことができる。アナログ処理２０２の更なる例示的なインフラストラクチャ及び機能は、図６Ａ〜６Ｂに関連して説明される。
【００１５】
デジタイザ２０３は、コンピュータ及び／又はデジタル回路で処理されるように、アナログ信号をデジタル領域に変換することができる。デジタイザ２０３は、アナログ／デジタル変換器（ＡＤＣ）を用いて実現することができる。代替として、デジタイザ２０３は、ほとんど処理資源を用いないか又は専用のハードウェアなしに変換を実行するために、他の技術及びアプローチを用いることができる。例えば、デジタイザ２０３は、プローブ２０１からの信号をデジタル化するために、又はそれらの信号のスペクトルを評価するために、ゼロ交差を用いることができる。かかる技術は、信号の周波数成分を推測するためにゼロ交差分離の期間に基づく。ゼロ交差間隔のヒストグラムは、信号のスペクトル成分を明らかにすることができる。ゼロ交差検出器は、比較器バイアス上の入力を伴うゼロ交差検出器（比較器）に基づいて、アンロード及びクリアを用いる高速カウンタ（レジスタ）によって作成することができる。ゼロ交差検出器を実現する更なる詳細は、「ゼロ交差ベースのスペクトル分析器及び方法（Zero Crossing Based Spectrum Analyzer And Method）」なる名称の米国特許第５，３０１，１２３号で見つけることができ、その特許は、参照によって本明細書に明白に援用される。
【００１６】
別の例として、デジタイザ２０３は、ＰＦＰにおけるサンプリングレートの低減を可能にする圧縮サンプリング技術を採用でき、その場合に、或る領域における信号のスパース性又は圧縮性が、歪みなしに又は最小の歪みで信号をやはり再構成可能にする一方で、アンダーサンプリングを可能にする。図２Ａに示されている指紋付けシステムの究極の目的が、ターゲットシステムの完全性を評価することであり、プローブセンサ２０１によって捕捉された信号を再構成することではないので、デジタイザ２０３は、デジタル変換中に導入されるエイリアシングの或るレベルに堅牢であるのが望ましい。従って、デジタイザ２０３のサンプリングレートが、シャノン−ナイキストサンプリング基準を厳密には満たさない場合でさえ、許容可能な性能評価を取得することが可能である。例示的な実装は、最初に、シャノン−ナイキストサンプリング基準を満たす速度で波形をサンプリングしてもよく、圧縮サンプリング技術は、サンプリングレートをシャノン−ナイキスト閾値未満に低減することにより最小の歪みを見つけるために適用されることになろう。
【００１７】
しかしながら、デジタイザ２０３におけるこのデジタル化プロセスの一部として、圧縮サンプリング用のＡＤＣサンプリングレート制御を処理モジュールから提供することがまた可能である。代替として、サンプリングレート制御及びフィルタリング制御は、信号の最も望ましい部分（例えば、よりよく異常を検出するために用いることができる信号の特徴が豊富な部分）をサンプリングするように調整されてもよい。サンプリングレートを制御するための一例は、後続の異常検出用の明確な特徴を見つけるために、図２Ａにおける構造を用いてオーバーサンプリングレートを調べることである。この場合に、プローブ２０１からの信号を回復することは必要ではないかもしれない。代わりに、指紋付けシステムは、以前に識別された異常から変則的なスペクトル特性を識別することができ、従ってエイリアシングは、或る程度まで許容可能である。
【００１８】
デジタイザ２０３からのデジタル化信号は、例えば、周波数領域の分析用にデジタル化信号の周波数領域信号成分を生成するために、例えばリンク又はネットワーク接続の２０４を介して、離散時間信号プロセッサ（ＤＳＰ）２０５に伝達することができる。デジタイザ２０３、及びデジタル信号処理コンポーネントの残りが一緒に置かれた場合に、デジタル化信号は、例えばメモリバッファ、プロセス間通信などを通して、ＤＳＰモジュール２０５にトレースを直接転送することができる。しかしながら、信号が、デジタル化された後で、それらは、後で処理するために格納するか、又は処理のために別の位置に転送することができる。従って、デジタイザ２０３とＤＳＰ２０５との間のリンク又はネットワーク２０４は、直接接続、後の処理のための記憶素子、又は遠隔位置にデジタル化信号を送信するためのネットワーク接続とすることができる。追加のセキュリティ用に、ネットワーク２０４は、監視される装置用のトラフィックを伝達する他のネットワークから物理的又は論理的に分離されてもよい。幾つかの場合に、追加のセキュリティ用のリンク又はネットワークの２０４の暗号化が、望ましくなり得る。このリンク２０４の例は、直接線、イーサネット、又はWiFi接続などの無線接続を含んでもよい。
【００１９】
ＰＦＰ分析２０６は、ＤＳＰ２０５から受信されたデータを処理し（例えばデジタル化されたサイドチャネル情報等の周波数成分）、異常又は侵入を判定するためにＰＦＰ分析を実行することができる。ＰＦＰ分析２０６は、特徴を抽出し、センサにヒューズを取り付け、評価決定を行い、学習し、全般的な実行を制御するために、多数のプロセッサエンジンを含むことができる、例えば、ＰＦＰ分析２０６は、サイドチャネル情報から特徴を抽出することができるが、それは、ＰＦＰ分析２０６においてローカルに、又は代替としてクラウドインフラストラクチャ／サービス２１３内で若しくはそれと共に、基準抽出モジュール２１８において実行することができる。
【００２０】
ＰＦＰ分析２０６は、ターゲットシステムにおける実行ステータスを一意に識別するプローブセンサ２０１によって捕捉された信号から識別的特徴を抽出する相異なる信号処理アプローチを実行するために、特徴抽出エンジンを含むことができる。特徴抽出は、限定するわけではないが、時間領域、周波数領域及び周期定常領域を含む相異なる領域における分析を含むことができる。最良の識別的特徴をもたらす特定の特徴抽出アルゴリズム及びパラメータは、典型的には、特定のターゲットに依存する。従って、選択される特徴は、分析アプローチ、アルゴリズム及びパラメータのセットからの最良の識別的特性をもたらす特徴である。時間領域相関、高次統計、順序統計、ウェーブレット解析等を含む特徴抽出アプローチ数を選択することができる。更に、選択された領域及び分析用に、幾つかの変形を検討することができる。例えば、周波数領域における分析用に、相異なるアプローチは、ウェルチの方法、バートレットの方法、自己回帰移動平均推定、周期スペクトル分析など、信号におけるスペクトル成分、並びにまた同じ周波数領域の例として、信号スペクトルの代わりのケプストラムなど分析自体への相異なる変形及び修正を評価することができる。
【００２１】
更なる実装において、ＰＦＰ分析２０６は、特定の特徴抽出技術を選択することができる。又は特定のプラットホーム用の技術は、利用可能な分析方法、処理資源、及びサブサンプリングからのエイリアシングなどの他の設計要素を含む、相異なる制限下の特徴付けプロセス中に最良の特徴及び／又は特徴の組み合わせを見つけることによって選択することができる。ＰＦＰ分析２０６の更なる実装及び性能は、図７Ａ〜７Ｄで説明される。
【００２２】
更なる実装において、特徴抽出エンジンはまた、他のモジュール及びプロセスを制御する適応アルゴリズム、例えば適応アレイアルゴリズム及び電力調整を駆動する。例えば、或る周波数成分は、特徴認識を補足し、ランダムデータ、漂遊電磁（ＥＭ）界又は電力線歪みの影響を低減するために、強調されるか又は強調を抑えられてもよい。電力調整もまた、特徴抽出用の分析窓とプログラム実行を同期させる際の支援のために用いることができる。
【００２３】
次に、ＰＦＰ分析２０６は、ＤＳＰ２０５からの受信サイドチャネル情報と基準データを比較するために、基準データをＰＦＰ基準データベース２０７から検索することができる。別の例として、ＰＦＰ分析２０６は、限定するわけではないが、オペレーティングシステム（ＯＳ）、アプリケーションイベント、ターゲット装置／システム（例えば電子装置、計算装置又はプロセッサ）における同期イベント、外部トリガなどの様々な入力源から追加のサイドチャネル信号２２０を取得することができる。基準データは、評価プロセスにおいて用いられるＰＦＰ基準データベース２０７に安全に格納することができる。これらの基準データは、通常は特徴付けプロセス中に抽出され、ターゲットシステムにおけるソフトウェア又はハードウェアの新バージョンがリリースされた場合に、更新することができる。基準データは、ローカルに又は遠隔に格納されてもよい。
【００２４】
比較及び分析を実行すると、ＰＦＰ分析２０６は、侵入又は異常が存在するかどうかを決定するために、比較データを決定モジュール２０６ｂに転送することができる。他の例において、ＰＦＰ分析２０６は、他の侵入検出器２２３、例えば別の分散ＰＦＰシステム、第三者監視検出器等に分析データを送信することができる。
【００２５】
一実装において、決定モジュール２０６ｂは、ターゲット装置の管理モジュール及びＣＰＵ２０８に異常検出の判定を送信することができ、今度は管理モジュール及びＣＰＵ２０８が、検出された異常に対する応答２２１を生成するために、応答モジュール２１０を制御する。管理モジュール及びＣＰＵ２０８は、ホストの一般的な機能を実行し、ターゲット装置用のユーザインターフェース２０９を含む。ユーザインターフェース２０９をホストすることに加えて、管理モジュール及びＣＰＵ２０８は、応答モジュール２１０及びネットワークモジュール２１１とインターフェースで接続する。管理モジュール及びＣＰＵ２０８はまた、アーキテクチャにおける処理モジュールのいずれか又は全てをホストすることができる。
【００２６】
応答モジュール２１０は、完全性の侵害に応じて、ターゲット装置に影響する自動動作をトリガする。動作／応答２２１の幾つかは、限定するわけではないが、別の装置を起動すること、ターゲット装置の制御ポートをディスエーブルにすること、ターゲット装置のユーザに通知すること、再起動用にターゲット装置をトリガして仮想化を再開すること、追加のインテリジェンス／分析、フォレンジック目的用のデータ収集、侵入を見抜くためのブラックリスト用のデータ収集等を含むことができる。ターゲット装置が、本明細書では個別のプロセッサとして頻繁に説明されるが、ターゲット装置は、スイッチ、バルブ、ポンプなどの電子装置又は物理装置とし得ることに留意されたい。
【００２７】
実際の応答をトリガしターゲット装置とインターフェースで接続することに加えて、応答モジュール２１０は、特定の状況下の所与の侵害に対する正しい応答を決定するために、応答ポリシーを評価してもよい。応答ポリシー、及び応答ポリシーを解釈し、推論し、強化する関連ツールは、種々様々な方法で実現することができる。例えば、応答ポリシーは、ＵＩ２０９を用いるユーザに、どんな異常も単純に通知するようにすることができるが、しかしまたそれは、形式言語で表現された複雑な規則によって表すことができる。また異常な署名が検出され、確信をもってマルウェアであると分かった場合に、マルウェアは、他の装置におけるマルウェアの検出を改善するために、マルウェアがどのように、どの程度まで拡散しているかの分析のために（クラウドに常駐する共有データベースを介して）格納し利用することができる。
【００２８】
その場合に、仮想マシンが、ターゲット装置において走行し、異常動作は、サイドチャネルの１つで発見され、仮想マシンは、再始動又はマイグレートすることができる。これは、前回の再始動以来に発生した可能性があるあらゆる感染を取り除くために、仮想マシンが時々（規則的又は不規則に）再始動される周知のシステムに勝る利点であることに留意されたい。
【００２９】
応答モジュール２１０はまた、ポリシーエンジン、即ち特定の用途のために決定を適用する適合性に基づいて決定を制約するエンジンを含んでもよい。
【００３０】
管理モジュール及びＣＰＵ２０８はまた、検出された異常に関するユーザ警告を、ユーザインターフェース２０９を介して送信することができる。ユーザインターフェース２０９は、管理モジュール及びＣＰＵ２０８においてホストされるが、限定するわけではなく、ダッシュボード（テスト下のターゲット装置又はシステムのステータス）、ユーザ入力を収集するインターフェース、ユーザ構成、ユーザ設定の信頼レベル（例えば検出及び統計メトリック用の閾値）、一般的な動作統計（例えば異常イベントの数、稼働時間、傾向）等を含む。
【００３１】
更なる実装において、管理モジュール及びＣＰＵ２０８は、ネットワーク２１１（図８を示されているような）及び／又はゲートウェイ２１２を介してクラウド２１３に、検出された異常又は侵入の警告メッセージを送信することができる。ゲートウェイ２１２は、プライベートネットワーク２１１とクラウド２１３との間のインターフェースポイントである。ゲートウェイ２１２は、プライベートネットワーク２１１用の基本保護及びセキュリティ（ファイアウォールなど）を提供する。
【００３２】
クラウド２１３は、ネットワークを通してアクセスでき、分析用に利用可能な容量を拡張できる、プライベート又はパブリックの遠隔位置で利用可能な追加処理資源の集合を含む。クラウド２１３は、通常、パブリック又はプライベートネットワークを通して利用可能な多数のプロセッサ及び記憶素子を含む。クラウド２１３は、更なる分析２１４（図７Ａ〜７Ｄで説明されるような）又は第三者分析２１６、機械学習モジュール２１５（図９で更に説明されるような）、基準抽出モジュール２１８（抽出された基準は、ＰＦＰ基準データベース２０７で更新することができる）、管理モジュール２１７等のための検出された異常又は侵入情報を格納し統合することができる。
【００３３】
マルウェア検出用にクラウド２１３を効果的に用いるために、システムトラフィックを保護し、トラフィック、データ及びサービスのプライバシ、利用可能性及び完全性を保護するためのサイバーセキュリティ対策を提供することが望ましい。保護の一部には、相異なるサブシステム用の強い認証を含むことができる。従って、クラウド２１３はまた、ＰＦＰシステム評価及びセキュリティ用の更新を送出するために用いることができる。
【００３４】
更に、クラウドベースの分散並列処理は、評価を加速し、ローカル処理要件を更に低減するために、比較的多量で安価な計算資源を備えた遠隔コンピュータクラスタへの指紋付けシステム処理のオフローディングを可能にする。
【００３５】
（遠隔）分析モジュール２１４は、遠隔位置で利用可能な追加の計算資源によって可能にされる一層多量のデータ分析を可能にする。分析モジュール２１４によって実行される分析の一部は、フォレンジック分析を含み、他の侵入検出アプローチとインターフェースで接続することができる。指紋付けシステムはまた、ターゲット装置をシミュレート、エミュレート（同様のタイプのハードウェア）又はモデル構築することによって、遠隔で新しい基準セットを構築することができる。このアプローチを用いれば、基準データ（又はトレース）に対して遠隔で比較を実行することによって、ＰＦＰシステムのセキュリティ及び信頼性を更に改善することが可能である。この場合に、ターゲット装置は、チャレンジ／応答アプローチにおいて、特定の入力ベクトルセットを用いた実行から結果として得られる識別的特徴を送信することを要求され得る。かかる入力ベクトルは、例えば、ターゲット装置のトリガ操作に用いられるデータ又は条件とすることができる。かかる入力ベクトルは、ターゲット装置の実行時に特定の（又は望ましい）特徴を生成するために、又はターゲット装置の相異なるセクション（又は部分）を働かせるために、例えばランダムに選択することができる。次に、観察された特徴は、遠隔位置におけるエミュレーション又はシミュレーションを通して取得された基準データに対して比較され、ローカルレベルにおける指紋付けシステムどんな潜在的な改竄も検出する。
【００３６】
機械学習モジュール２１５は、分析モジュール２１４からの分析で識別されたパターン及び相関を用いる。機械学習は、潜在的な攻撃の予測に使用することができる。機械学習モジュール２１５の更なる詳細は、図９で説明される。
【００３７】
幾つかの例において、指紋付けシステムはまた、一般的傾向に対する洞察力を獲得するために、第三者分析２１６とインターフェースで接続して支援するか又は活用する。指紋付けシステムはまた、一般的データ分析の改善を支援するために、微細な粒度及び詳細なタイミング情報を備えた有益な完全性データ及び脅威伝播を提供することができる。例として、セキュリティ情報イベント管理（ＳＩＥＭ）ソフトウェアは、典型的には、監視制御及びデータ収集システム（ＳＣＡＤＡ）の動作を監視するために、工業環境において用いられ、セキュリティは、かかるソフトウェア用の望ましい適用である。ＳＩＥＭソフトウェアを用いるシステムは、データ分析から獲得された情報を実行又は提示することができる。指紋付けシステムは、ＳＩＥＭソフトウェアを用いるシステムを提供するが、しかし処理データ又は生データ、更にデータの文脈の提示もまた、指紋付けシステムによって提供される。かかる文脈は、仮説検証、イベントを測定し無視するための時間窓、閾値、及びＰＦＰシステムによって検出されたイベントをどのように扱うかのポリシー用のパラメータを含むことが可能である。サイドチャネル異常の時間における共同の処理及び／又は表示は、マルウェアがどのように拡散するか及びそのオリジンに対する洞察を提供することができる。
【００３８】
更に別の例において、第三者分析２１６は、他のタイプのセキュリティ関連データ及び／又は警告に加えて又はその代替として、指紋付けシステムからデータ及び／又は警告を受信するセキュリティ動作センタ（ＳＯＣ）とするか、それを含むか、又はそれに結合することができる。かかるＳＯＣにおいて、指紋付けシステムからのデータ及び／又は警告は、起こり得るセキュリティ違反の場所に関して、（例えば装置、チップ又はコンポーネントレベルにおける）特定のターゲット情報を提供することができる。かかる情報は、指紋付けシステムによって識別された特定のセキュリティ問題が、急増した、又はネットワーク若しくはシステムの他の部分に影響した範囲を決定するために、例えば、他のセキュリティ関連データ及び／又は警告に関して分析することができる。指紋付けシステムによって、又は指紋付けデータ／警告を用いて決定されるように、上記の装置（又はチップ若しくはコンポーネント）によって影響を受けたネットワーク又はシステムの一部を識別することによって、ＳＯＣは、ネットワーク又はシステムのそれらの影響された部分を検討から除き、残りの又は潜在的なセキュリティ問題を決定するために、ネットワーク又はシステムの残りの部分に集中することができる。
【００３９】
管理モジュール２１７は、正確に動作する、ハイレベルの侵入検出性能を維持する指紋付けシステムを更新し維持するための一般的なサービスを提供する。管理サービスは、限定するわけではないが、一般的なシステム更新、一般的な保守、ログ及び統計、システム基準分配、イベントをどのように扱うかのポリシーを含む。
【００４０】
基準抽出モジュール２１８は、完全性評価動作を駆動する基準データを生成する（ＰＦＰ基準抽出プロセスは、特徴付けプロセスとも呼ばれる）。基準抽出用の１つの例示的なアプローチは、周知の良好な状態（ハードウェアのマルウェア問題のない）のターゲット装置をテストし、ターゲット装置の可能な実行経路の全て又は一部をカバーするテスト状況セットを提供することである。反復されるテスト及び収集は、ほとんど漂遊特徴（例えば、雑音又はメモリリフレッシュなどの割り込みの処理）のない基準を生成するのを支援するために、雑音を低減するためにかかる特徴を平均するために適用され得る。
【００４１】
信頼できる基準データの抽出を促進し向上させる幾つかの選択肢が存在し、それらは、クラウドソーシング（例えば、何が正常な電力シグネチャであるかを定義するために、多数のソースから多数の基準を取得することによる）、現場での学習（何が履歴的に正常な電力シグネチャを構成するかを定義するための電力トレースの反復観察）等を含む。かかる観察はまた、経年変化した回路に発生し得る正常な電力シグネチャへのゆっくりした変化を較正するのを支援する。学習は、例えばニューラルネットワークを用いた単純な平均化又はより複雑な一般化された学習によって実行されてもよい。加えて、基準抽出は、シミュレーション（基準は、回路又は動作モデル化プログラムから抽出される）、エミュレーション（基準は、テスト下のターゲット装置上を走行する類似又は同一のコードであるか又はコードを実行した相異なるがしかし同一又は類似の装置をテストすることによって抽出される）、製造元及び／又は使用年数の決定、特徴抽出用の広範なパラメータセットの検索を介して実行することができる。基準抽出モジュール２１８は、ファジング攻撃が発生しているかどうかを決定するために、データの統計を更に抽出することができる（例えば、攻撃が、コードレベルではなく、予期されたフォーマットに一致しないデータを提供する攻撃（例えばバッファオーバーフロー攻撃）である場合に支援するために、テスト下のターゲット装置は、種々様々な入力ベクトルを提示され、攻撃を表現し得る異常入力データを決定するための統計基準モデルを定義するために、データの正常な提示に対する応答を統計的に特徴付けることができる）。
【００４２】
例えば、基準抽出モジュール２１８は、類似の装置の母集団を用いるクラウドソース異常検出を含んでもよい。多くのＰＦＰシステムが配置される場合に、各システムの慎重な特徴付け動作の代わりに、基線を確立するクラウドソーシングアプローチに従うことが可能である。かかるＰＦＰシステムは、多数のソースを用いて、正常及び／又は異常動作の識別を可能にする。かかるアプローチを実行するために、特定の要求からの応答としての多数の同一装置からの実行動作は、管理されていないアプローチにおいて特徴付け用に使用される。サイドチャネル指紋付けのデータベースは、幾つか挙げると、実行されるコード、型番、製造年月日、温度及び販売者などの情報で構築することができる。このデータベースは、様々な条件を備えた大きなユーザベースにわたる比較のための基線を提供する。データは、指紋付けシステムによって要請されてもよく、又はそれは、遠隔位置でテスト下のターゲット装置によって提供されてもよい。
【００４３】
別の例として、基準抽出モジュール２１８は、サイドチャネル応答を評価する一方で、例えば、同じ又は類似のコードを実行するテスト下のターゲット装置と類似のユニットを有するために、ハードウェア又はソフトウェアモデルを用いる異常検出ソースとしてエミュレーションを含むことができる。代替として、電力消費モデルが、テスト下のターゲット装置用に定義されてもよい。かかるモデルは、学習技術によって、又は回路若しくは動作シミュレーションアプローチによって定義されてもよい。基準抽出モジュール２１８の更なる例及び適用（フラッシュ／ＢＩＯＳ監視及び偽造識別における適用を含む）は、図１０〜１１に関して提供される。
【００４４】
仮想化又はクラウドサービスなどの幾つかの例において、テストベクトルは、或るマシンから別のマシンに送信されてもよい。受信マシンは、その電力消費プロファイルを要求マシンに提示することになり、制限内であると分かった場合に、アプリケーションが、検証されたマシン上でインスタンス化される。同様に、プログラムが動作するときに、テストベクトルは、ターゲット装置が感染しているかどうかを確かめるために、（内部テストルーチンから）外部装置によってテスト下のターゲット装置に送信することができる。
【００４５】
図２Ａに示されているＰＦＰシステムインフラストラクチャは、ターゲット環境における様々な制約を満たすために修正することができる。例えば、重要インフラストラクチャサイトなど、ネットワークが利用不可能であるか又は外部ネットワークへのアクセスが制限されたターゲット環境用に、図２ＡにおけるＰＦＰシステムは、スタンドアロン構成に修正され、或るモジュールが除去されるが、しかし機能の大部分を維持することができる。図２Ｂは、外部ネットワーク２１１又はクラウドサービス２１３へのアクセスのないターゲット環境用のカスタマイズされた構成を示す。図２Ｂに示されているように、機械学習モジュール２１５、第三者分析２１６、管理モジュール２１７、及び／又は基準抽出２１８は、管理モジュール及びＣＰＵ２０８に接続されることによって、ローカルで実現することができる。
【００４６】
図２Ｃは、例えば最小スタンドアロン構成への更なる修正システムを示し、そこでは、最小モジュールセットだけが、監視機能を提供するために存在する。例えば、図２Ｃにおけるシステムインフラストラクチャは、外部ネットワーク２１１又はゲートウェイ２１２、クラウド２１３、応答モジュール２１０等もなしに操作することができる。
【００４７】
図２Ｄは、サイトで利用可能な資源が制約されているが、しかし遠隔資源の利用を可能にする十分なネットワーク接続を備えたターゲット上の配置用の別の構成を示す。この構成は、ターゲット環境上の最小実装面積を可能にする。例えば、図２Ｄに示されているＰＦＰシステム構成は、システムがクラウド２１３に接続されるように、ネットワーク接続２１１を含む。ローカルＰＦＰ分析モジュール２０６の代わりに、ＰＦＰシステムは、クラウド２１３からのデータに基づいた遠隔分析２１４に依存し、基準データベース２０７において基準データを格納／更新することができ、基準データベース２０７は、ローカルに存在するか又は遠隔データクラウドの一部とすることができる。
【００４８】
図２Ａ〜２Ｄで説明される指紋付けシステムが、チップレベル（半導体）で実現される場合に、センサが、シリコンレベルで実現され、ターゲット装置内の相異なる電気信号が、分析用に、同期用に、一般的な入力としてセンサに利用可能である基本方式においてさえ、指紋付けの性能は、向上させることができる。従って、指紋付けシステムは、半導体設計者が、直交監視システムを用いて、自らのターゲットシステムの監視機能を向上させることができるようにする。チップレベルの実装によって提供される利点の幾つかは、例えば、有効電力指紋付け、莫大な数のセンサ、分析／処理、決定、時間及び位置における電力イベントの順序付け、迅速な応答、電力管理との統合を含む。
【００４９】
オンチップセンサは、プロセッサ、サポートチップ又は電力管理チップに位置してもよく、電圧、電流、電力、信号遅延、放射、オーディオ及び／又は温度を検出してもよい。電力管理チップは、基準収集及び監視プロセスをより良好に可能にするために、回路の動作パラメータ内で電力信号の特徴を変更してもよい。例えば、電力管理シップは、（恐らくスイッチング電源による変調変化を通して）電力信号の周波数成分を等しくするか、又は母線をよりよく分離し、他の回路素子からの相互干渉を低減するために、基線コード、ハードウェア又は微調整回路パラメータのより良い特徴を提供するように入力信号の振幅を微調整してもよい。電力管理チップはまた、電圧スケーリングを実行してもよく、異常サイドチャネル情報の解釈は、電力管理チップからの電圧レベルとの協調に依存してもよい。電力管理チップはまた、周波数スケーリングに関係してもよく（又はそれは、プロセッサによって実行することが可能である）、異常サイドチャネル情報の解釈は、電力管理チップとの協調に再び依存してもよい。異常検出において電力管理における変化に対処するために、この電力条件用に較正される相異なる基準電力シグネチャが利用可能であり、又は新しい電力管理状態を補償するために、変形が、基準シグネチャ又は収集されたシグネチャに適用されてもよく、例えば、より遅いクロック速度が、より遅いクロック速度に対応するように基準信号を時間において引き伸ばすことによって、基準において補償されてもよい。電力管理チップは、電力ポリシー、例えば電力消費を低減するためのラップトップコンピュータ用の低電圧化を実行してもよい。同様に、或る命令のサイドチャネル異常検出又は周知の電力シグネチャ検出を容易にする電力用のセキュリティポリシー（電力管理チップ上に、又は外部プロセッサに常駐する）が存在してもよい。電力レベルの変更は、サイドチャネル監視戦略の全体的な戦略の一部であり得る。何故なら、追加の電力が、より高い供給電圧で発生する追加の熱で、装置の非線形性及び回路性能に影響を与えるからである。更に、外部ソースからの電圧／電流／環境（例えば熱）における著しいスパイクは、電力管理チップの調整機能における或る混乱を引き起こす可能性があり、電力管理機能において検出されたかかるイベントの通知は、意志決定プロセスを通知し、誤警報確率を低減するために用いることができる。後続の処理もまた、電力管理チップにおいて達成されてもよく、電力管理チップは、図２Ａにおけるインフラストラクチャと類似のインフラストラクチャを有することができる。
【００５０】
図３Ａ〜３Ｂは、様々な実施形態に従って、プローブ（例えば図２Ａ〜２Ｄにおける２０１）の例示的な構成を示すブロック図を提供する。図２Ａ〜２Ｄに示されているような指紋付けシステムにおいて、独立したモニタは、１つ又は複数の物理センサを用いて、動作中にターゲットシステムのサイドチャネルを観察（温度、電力、ＥＭ放射、回路遅延など）することができる。捕捉されたデータ（トレース）は、一意のシグネチャ及び微細な粒度のシグネチャを抽出するために処理され得、信頼できる基準からの格納された基準データに対して比較され得、それらは、信号検出及びパターン認識分析を適用することによって、異常検出を実行するために用いられる。
【００５１】
図２Ａに示されている指紋付けシステム用に、プローブ２０１の位置決め及びこの位置の一貫性は、ＰＦＰシステムによって捕捉される使用可能な情報の収集と同様に、指紋付けシステムに進むことが許された雑音及び干渉に影響を与える。監視されるシステムの寿命の全体にわたる一貫したプローブ位置は、評価結果における変動を低減する。従って、各捕捉において、ほぼ正確な同一位置を取得するために、ターゲットシステムにプローブを一貫して又は永続的に固定するための機構を提供することが望ましい。
【００５２】
図３Ａに示されているように、新しいターゲットシステム用に、プローブ３０１の位置決めは、基板設計においてプローブを保持する取り付け具を導入すること、基板又はシステム設計の一部としてプローブ３０１を導入すること、及びプローブを保持する取り付け具を備えたターゲットのシャーシ若しくはカバーを設計すること、又は他の類似のアプローチによって達成することができる。例えば、センサは、チップが、チップの熱を放散するために用いられるヒートシンクに実装されるように、ターゲット装置のシャーシ又はカバー（例えば３０２）におけるＩＣソケットに含むことができる。
【００５３】
代替として、プローブもそれらを固定する設備も装備していなかったターゲット装置の既存のシャーシ又はカバー用に、ターゲット装置にプローブを永続的に接着するか又はテープで留めることによってプローブを固定することが可能である。別のアプローチは、意図した位置にプローブを保持する機械的留め具を導入することである。例えば、かかる機械的留め具は、チップ、回路基板又は容器に装着することが可能である。更に別のアプローチは、オリジナルのシャーシと同一であるが、しかしプローブ３０１用の取り付け具３０１ａ〜ｂを含むカスタムメイドのシャーシ（例えば３０３）で、ターゲットシステムの既存のシャーシ又はカバーを取り替えることである。この後者のアプローチは、オリジナルのシャーシの三次元（３Ｄ）モデルを作成して（例えば３Ｄ走査による）、プローブ又はプローブ取り付け具を追加するように結果としての３Ｄモデルを修正することによって達成され、修正されたシャーシ（例えば３Ｄ印刷を用いることによる）を構築することができる。
【００５４】
図４は、プローブ素子のマトリックスに基づいて、サイドチャネル情報を捕捉するワークフローの態様を示す論理流れ図を提供する。或るタイプのプローブに関し、捕捉された信号に多様性を導入するためにプローブ素子４０１のマトリックスを用いることが可能である。プローブ素子４０１のマトリックスはまた、特定の空間領域における利得を増加することによって信号品質を向上させるか又は干渉信号を低減するために、プローブの柔軟な位置決め及び柔軟な構成を可能にする。
【００５５】
幾つかの例において、プローブ素子のマトリックス４０１は、空間的に分散された多数の同一の素子、相異なる信号の捕捉を可能にする多数の相異なる素子、又は相異なる特性を備えた組み合わせプローブを形成するように動的に構成できる素子を含むことができる。
【００５６】
マトリックス４０１を備えたこれらのプローブ素子の例は、「スマートアンテナ」又は「再構成可能なアンテナ」として構成され管理される電磁気プローブを含むが、しかし同じ原理は、他の全てのタイプのセンサに当てはまる。かかるアンテナは、通信及びレーダ信号処理において適用されるスマートアンテナアルゴリズム（例えば適応ビーム形成等）を用いるＤＳＰ又はアナログベースの組み合わせ／選択回路を提供し得る。例えば、図４に示されているように、プローブ２０１（又はプローブ素子のマトリックス４０１）が、サイドチャネル情報を４０２で捕捉する要求を（例えば図２Ａにおける指紋付けシステムから）受信した場合に、指紋付けシステムは、望ましいサイドチャネル情報のタイプを４０３で識別し（例えば環境情報、回路ステータス情報、物理的な位置決めステータス情報等）、それに基づいて、指紋付けシステムは、要求されたサイドチャネル情報を４０５で捕捉するために、４０４でプローブ素子を（例えばプローブ素子のマトリックス４０１から）選択することができる。指紋付けシステムはまた、特徴収集を改善するために、時間及びチップ動作、又は首尾一貫した結合プローブ素子の関数として、或るプローブ素子を選択することができる。
【００５７】
図５は、サイドチャネル収集のフィードバックに基づいてプローブ位置の自動調整の態様を示す論理流れ図を提供する。プローブの適切な位置決めは、より優れた異常検出の分類精度につながる可能性があり、位置決めは、試行錯誤によって駆動されることが多い。従って、プローブ及びセンサの相対的位置決めは、図２ＡにおけるＤＳＰ２０５又はＰＦＰ分析２０６からのフィードバックを用い、位置決め装置（例えば移動可能なテーブル又はロボットアーム）で手動又は自動的に実行することができる。
【００５８】
図５に示されているように、指紋付けシステムは、５０１において、（例えば、メカニックアームなどの位置決め装置に命令を送信することによって）第１の位置にプローブを配置し、次に５０３において、第１の位置でサイドチャネルデータセットを捕捉することができる。捕捉されたサイドチャネルデータは、データ分析モジュール（例えば図２Ａにおける２０６）に送信され、データ分析モジュールは、サイドチャネルデータの品質を評価するフィードバック、例えば、サイドチャネルデータが、以前に格納されたデータと一貫しているかどうか、捕捉されたグラフィカルコンテンツの焦点が合っているかどうか等を生成する。次に、指紋付けシステムは、５０５において、第１の位置用の品質メトリックを決定することができる。位置決めアーム用のメトリックは、変化し得る。幾つかの例は、関心領域のコア命令の識別と、ハイジャックソフトウェアにおいて用いることが可能な割り込みなど、コード実行の重要な態様の破損に対するテストシーケンスの提供と、暗号化において用いられるコード及び／又はハードウェア領域と、ブートシーケンスと、Ｉ／Ｏポートと、その他と、を含む。別の基準は、例えば、平均二乗誤差、根二乗平均（ＲＭＳ）にわたるピーク、又は特徴の統計的分散を用いるテスト特徴測定に対する応答の一貫性とすることが可能である。
【００５９】
品質メトリック値が、５０６において閾値より大きい場合に、指紋付けシステムは、５１１でターゲット装置／システムの動作ステータスを決定し、分析（例えば図２Ａにおける２０６）を続けるために、サイドチャネルデータを処理することができる。５０６において閾値を超えない場合に、指紋付けシステムは、５０６において、新しい位置に調整されるための命令を位置決め装置に送信し、５１０において、新しい位置における新しいサイドチャネルデータセットを引き続き捕捉することができる。次に、指紋付けシステムは、新しい位置を評価するために、５０４から繰り返すことができる。
【００６０】
更なる実装において、信号は、信号の収集及び処理を同期させる目的で、回路に導入することができる。かかる信号は、収集されている実行状態を決定する方法として働き得る。例えば、実行されているコードを認識するために、スペクトル拡散信号が、収集信号に埋め込まれたパイロットタイミング基準を提供するために電力線に注入され得る。代替として、ＧＰＳなどの正確なタイミングソースが、実行及び指紋処理を同期させるために用いられ得る。
【００６１】
別の実装において、信号注入は、完全性のためにターゲット装置／システムをプローブするために使用することができる。信号は、収集信号に埋め込まれるタイミング基準を確立するために、指紋付けシステムの電力線に注入されてもよい。例えば、低レベル信号が、相異なる位置からの回路経路に導入された場合に、電力消費スペクトルの観察は、外部ハードウェアによって導入された非線形性を識別することができる。ターゲット装置／システムに追加された新しい回路コンポーネントの非線形性による特徴は、ＲＦ回路を評価するための技術を用いて認識することができる。
【００６２】
図６Ａ〜６Ｂは、実施形態に従って、アナログ処理モジュール（例えば図２Ａ〜２Ｄにおける２０２）のワークフローを示す例示的なブロック図を提供する。アナログ領域における処理は、信号を調整して望ましくない成分を除去するために、プローブによって捕捉された信号（トレース）に対して実行することができる。
【００６３】
図６Ａに示されているように、基本アナログ処理は、カスケード構成に配置されるか又は単一回路に組み合わせることができるフィルタ６０２及び低雑音増幅器６０３を含む。プローブ６０１からの信号は、フィルタ６０２及び低雑音増幅器６０３において処理され、その後、デジタイザ６０４に送信される。２０２におけるアナログ処理の一部として、経年変化、環境効果等による符号歪みを補償するために干渉を低減し、またイコライザを導入するために、６０３に加えて差動増幅器を利用することが可能である。
【００６４】
別の例のために、アナログ処理２０２の一部として、１９８８年１１月２９日出願の「ファイバ光センサ（Fiber Optical Sensor）」なる名称の米国特許第４，７８７，７４１号に説明されているアプローチに従うことによって、延長された距離にわたり、劣化が最小のプローブからの信号６０１の転送を可能にする分散処理アプローチをイネーブルにすることが可能であり、その米国特許は、参照によって本明細書で明白に援用される。分散処理アプローチは、ファイバ・トゥ・ザ・アンテナ又はＲＦ・オーバー・ファイバと呼ばれるセルラ基地局において用いられる技術に類似し得る。図６Ｂに示されているように、光変調器６０５は、捕捉された信号６０１を（フィルタ６０２及び低雑音増幅器６０３を通過した後で）光信号に変換するために用いられ、次に光信号は、光ファイバ６０６を用いて遠隔中央処理局に転送され、そこで光信号は、光復調器６０７を介して逆に電気形態に変換され、デジタル化され処理されるようにデジタイザ６０４に送信される。
【００６５】
光変調器６０５は、直接変調器又は外部変調器とすることができる。更に、光変調器６０５は、吸収性又は屈折性とすることができ、それらは、フランツ−ケルディシュ効果、量子閉じ込めシュタルク効果、励起子吸収、フェルミ準位の変化若しくは吸収変調器用の自由キャリア濃度の変化、電気光学効果、音響光学効果、磁気光学効果、又は屈折変調器用の液晶偏光変化などの光変調技術のいずれかを活用することができる。
【００６６】
アナログ処理２０２の一部として、多素子アレイを備えたプローブで利用できるアレイ処理の幾らかを導入することがまた可能である。例えば、アナログ位相／重み付けは、サイドチャネル信号（ＰＦＰ信号又はトレース）において雑音を低減するか又は無関係な背景特徴を除去するために、プローブセンサからの信号６０１に適用することができる。
【００６７】
更なる実装において、追加のアナログアプローチは、サンプリングレートを低減するために用いられてもよい。例えば、相異なる帯域への信号のチャネル化は、フィルタバンク又はアナログＦＦＴなどの技術を用いて達成することができる。アナログスペクトル分析器において用いられる変換に似たアナログチャープ変換は、帯域を通過するために用いられ、移動周波数窓として帯域のサブセットを抽出することができる。
【００６８】
図７Ａは、実施形態に従って、分析モジュール（例えば図２Ａにおける２０６／２１４）からの例示的なスペクトログラムを示す例示的なデータプロット図を提供する。ＰＦＰ分析２０６（又は分析２１４）は、時間及び周波数領域からの情報を組み合わせる特徴抽出アプローチを含むことができ、その特徴抽出アプローチは、ＰＦＰ信号のピリオドグラムに関する平均値の差（ＤｏＭ）を用いる。ひとたびＰＦＰ信号（トレース）が捕捉されると、スペクトログラムは、相異なる時間セグメントにおいて、その周波数成分を抽出するために計算される。スペクトログラムは、次のように離散時間短時間フーリエ変換（ＳＴＦＴ）Ｘ（τ，ω）の二乗振幅である。
spectrogram{x(t)}(τ,ω)=|X(τ,ω)|2
ここで、
【数１】
0006709845.tif 000002
であり、ｘ［ｎ］は、捕捉されたＰＦＰトレースであり、ｗ［ｎ］は、ハン窓、ガウス窓、ハミング窓、バートレット窓などの窓関数である。例えば、実例となる時間周波数空間が、図７Ａに示されている。スペクトログラム７０１は、時間７０３及び周波数７０２に基づいて、ＰＦＰトレースの二次元表現を提供する。この図は、ＰＦＰトレースの時間にわたって周波数成分に関する情報を提供する。
【００６９】
ＰＦＰ分析２０６用に用いられる実際の特徴は、捕捉された信号（多数の捕捉の平均とすることができる）のスペクトログラムと基線基準との間の平滑化された差である。許可された実行を表すターゲット装置用の多数の基線基準が存在し得る。更に、基線基準は、全時間周波数空間又は選択された数の時間周波数ビンだけをカバーすることができる。加えて、スペクトログラムの時間ベース及び周波数分解能、オーバーラップ、窓関数、平滑化窓などの特徴抽出用の処理パラメータは、全ての基線基準用に同じにすることができ、又は基準間で若しくは同じ基準内でさえ変化することができる。スペクトログラムの平均値の差（ＤｏＭ）分析用に用いられる特定パラメータは、特徴付けプロセス中に決定される。スペクトログラムの特性の時間発展はまた、後続の決定プロセスにおいて用いられ得る特徴を表す（例えば図２Ａにおける２０６ｂを参照）。
【００７０】
図７Ｂ〜７Ｄは、分析モジュール（例えば図２Ａにおける２１４）の例示的なインフラストラクチャを示すブロック図を提供する。図２Ａにおける分析２０６又は２１４の例示的な実装は、センサ融合エンジンを含むことができ、そこにおいて、ＰＦＰシステムは、評価結果を改善するために、相異なるソース及びプローブからの捕捉されたデータ及び抽出された特徴を組み合わせる。センサ融合用の相異なる入力は、限定するわけではないが、待ち時間、熱、物理状態（例えばロボットアームの位置）等を含む全ての相異なるサイドチャネルプローブセンサ７１０ａ〜ｎを含む。
【００７１】
センサ融合アルゴリズム７１２は、例えば特定のメトリックの最適化を試みるように適応的にすることができ、特定のメトリックは、例えば、誤警報の確率、検出の確率、決定の平均時間を含むことができる。それはまた、ターゲット装置及びプローブセンサ７１０ａ〜ｎの経年変化を補償するように適応的にすることができる。センサ融合エンジンへの入力（例えばローカルセンサ処理７１１ａ〜ｎ）はまた、異常データ／ネットワークトラフィック、ユーザ動作（誤ったパスワード又は一貫しないキーボード動作など）、異常なプログラム実行経路、保護されたレジスタ及びメモリへのアクセスなどの他の侵入検出及びセキュリティアプローチなど、ＰＦＰから独立したサブシステムを含む相異なるサブシステムから来る可能性がある。融合は、物理センサに制限されず、またメモリポインタからのトリガ、チップからの信号、オペレーティングシステム、又はアプリケーションを含む、利用可能な場合にターゲットシステムから直接のデータ及び信号を含むことができる。
【００７２】
センサ融合エンジン（例えばローカルセンサ処理７１１ａ〜ｎ）は、ターゲットから相異なる情報を捕捉する相異なるセンサからの入力を組み合わせることによって、ＰＦＰ評価の性能を改善することができる。例えば、１つのＰＦＰプローブセンサ（例えば７１０ａ）は、相異なる実行（有効な侵入検出）間を区別するための優れた情報を提供できるが、しかしタイミング推定及び同期化用の限られた情報を提供できるだけであり、一方で別のセンサ（例えば７１０ｂ、…７１０ｎ）は、優れた同期情報だが、しかし貧弱な実行の識別的情報を提供できるだけである。ローカルセンサ処理７１１ａ〜ｎから来る、これらのプローブセンサ７１０ａ〜７１０ｎに基づく信号を組み合わせることは、ほとんど識別的情報の劣化なしに、タイミング推定の精度を改善することができる。別の例は、規則的なＣＰＵ実行、割り込み実行、メモリアクセス、通信、周辺装置など、相異なるタイプの実行識別において優れたセンサを含む。融合アルゴリズム実装７１２においてこれらのプローブセンサを組み合わせることは、ターゲット実行における向上されたシステム図７１３を提供することができる。融合アルゴリズム７１２を実行する追加の例示的なアプローチは、限定するわけではないが、カルマンフィルタ、粒子フィルタ、補色フィルタ、ベイジアンネットワーク等を含む。
【００７３】
図７Ｃは、図２ＡにおけるＰＦＰ分析２０６又は２１４の別の例示的な実装を示す。ＰＦＰ分析２０６又は２１４は、サイドチャネルにおける意味のあるパターン及び関連データを発見するのと同様に、イベント間ＰＦＰと他のセンサとの間の相関を発見することができる。分析２０６又は２１４は、サイドチャネル及び関連データからの有益な知識を識別し抽出するために、説明的、予測のモデルを生成し適用する。分析モジュール２０６又は２１４の実装の例は、Hadoop（登録商標）及び他のオープンソースデータ分析プログラムで見つけることができる。
【００７４】
ＰＦＰ分析２０６又は２１４はまた、最も識別的か若しくは有用な情報（又は他の特徴よりも識別的か若しくは有用な情報）を担持する特徴を識別する特徴抽出ブロック７１５ａを含むことができる。特徴におけるかかる低減は、サイドチャネルを用いる所与のターゲット装置を監視するために使用される処理負荷の低減を支援し、またより速い評価及び低減された計算能力を用いるプラットホーム上のサイドチャネル実装を可能にする。
【００７５】
別の例として、機械学習７１８は、重要な特徴を識別し更新する。機械学習７１８は、許可された場合に連続（又はほぼ連続）してＰＦＰ分析２０６又は２１４を更新できるようにする。機械学習７１８は、図７Ｂで検討されるようなセンサ融合モジュール７１６、特徴抽出モジュール７１５ａ、及び分析用のサブモジュール７１７と通信することができる。分析用のサブモジュールは、重要な命令又はプログラムセグメント、例えば割り込みの実行を認識するために、収集されたサイドチャネルデータを分析することができる。割り込みは、予想されるサイドチャネル応答のタイミングジッタ、例えばメモリリフレッシュを引き起こす場合がある。この場合に、サイドチャネルの応答は、異常が発生したかどうかを決定すること、例えば割り込みの特徴を無視することによって補償することができる。また、多くのサイバー攻撃が割り込みの実行を阻止するので、割り込みタイプの実行のずれを認識することは望ましい。割り込みの正常な実行の文脈から他の重要な命令を認識することは、マルウェアの重要な指標になり得る。別の例として、コードセグメントの識別に加えて電力消費特性の監視は、電力消費を最小化するコードの開発を支援することができる。電力消費を生じるものとして識別されるコードセグメントは、装置の電力消費をよりよく改善するために再構築することができる。実行されているコードセグメントを解釈するためのタイミングは、外部タイミングソースによって達成することができる。このソースからのタイムスタンプは、後続の処理用に、収集された信号と共に送信することができる。
【００７６】
別の実装において、分析モジュール２０６又は２１４は、制御エンジン（図７Ｃには図示せず）を含むことができ、制御エンジンは、サンプリングレート及び／又は統計を適応させ、信号調整（一例として電力調整など）／均等化を変更し、システム及びチップレベルにおいて電力消費制御機構と調和的に働く。制御エンジンが、決定モジュール（例えば図２Ａにおける２０６ｂ）と統合され得るので、制御エンジンはまた、完全性の侵害又は破壊の応答として、特定の動作をトリガする位置にある。制御エンジンはまた、応答又は更新用のポリシーの評価を担当する。
【００７７】
図７Ｄは、分析モジュール２０６若しくは２１４、又は決定モジュール２０６ｂの別の例示的な実装を提供する。図７Ｄに示されているように、決定モジュール２０６ｂは、自動利得制御（ＡＧＣ）装置など、信号を正規化する装置セット７２２、マルチプライヤなど、信号を重み付けする装置セット７２３ａ〜７３２ｎ、加算器７２４、及び追加信号用の閾値比較を実行する１つ又は複数の検出器７２５を含む。適切な検出器７２５は、例えば相異なる識別的特徴を検出することができ、特定のトレースが、正常、異常又は悪意があるものとして考慮されるべきかどうかの最終評価を行う。
【００７８】
決定モジュール２０６ｂの動作は、利用可能な識別的特徴の数及び性質に依存する。例えば、一次元の識別的特徴用に、決定モジュール２０６ｂは、観察された特徴が、許可された実行に対応するか否かを決定するために、ネーマン−ピアソン基準を用いる検出器など、単一の２進検出器（例えば検出器７２５）を用いることができる。多次元の特徴の場合に、特徴及び個別の決定は、最終評価を提供するために組み合わされる。特徴を組み合わせるための多数の選択肢が存在し、選択は、特徴及びターゲットシステムの性質に依存する。検出用の組み合わせ選択肢は、限定するわけではないが、特徴（ｘ１．．．ｘｎ）７２１ａ〜ｎの線形組み合わせ（特徴は、装置セット７２２（例えばＡＧＣ装置）において正規化され、マルチプライヤ７２３ａ〜ｎにおいて重み係数（ｗ１．．．ｗｎ）によって重み付けされる）と、加算器７２４と、を含む。次に、加算器７２４によって生成された加重和は、決定出力７２６を生成するために、検出器７２５によって閾値と比較される。各特徴用の重み（ｗ１．．．ｗｎ）は、動的とすることができ、含まれる有用な情報の量によって決定される。別のアプローチにおいて、個別の検出器が、各特徴用に存在し、次に検出器出力は、最終決定用に多数決を用いて組み合わされる。
【００７９】
決定モジュール２０６ｂは、その評価の基礎をホワイトリスト、ブラックリスト又は両方の組み合わせに置く。ホワイトリストアプローチにおいて、決定モジュール２０６ｂは、起こると予想される実行から取得された信頼され許可された基準セットから異常を検出する。ブラックリストアプローチにおいて、特に無許可と思われる悪意がある又は他の実行の基準が用いられる。これらの２つのアプローチは、相互に排他的ではなく、適切な基準が利用可能な場合に、同じＰＦＰシステムにおいて組み合わせることができる。
【００８０】
決定モジュール２０６ｂの検出器の感度は、ユーザによって定義することができ、ユーザは、警告を発生させるレベル、及びまた完全性の侵害が検出された場合にトリガされると期待される動作を選択することができる。感度はまた、状況に依存してもよい。即ち、高い脅威レベルは、より高い感度レベルをトリガしてもよい。予想されるトレースからのずれが、悪意のある実行だけでなく、ターゲット装置の故障を含む多くの環境条件に起因する可能性があるので、決定モジュール２０６ｂは、可能な場合に、区別する役を担当する。例えば、異常が、停電の結果である場合、又は強い外部信号が、電力センサを妨害している場合である。逸脱した特徴は、セキュリティ侵入故の異常として分類される可能性があり、又は特徴は、ハードウェアエラー、ハードウェア経年変化、又はプラットホーム上を走行する誤ったソフトウェアとして分類される可能性がある。
【００８１】
図８は、実施形態に従って、ネットワーク実装モジュール（例えば図２Ａにおける２１１）の例示的なインフラストラクチャを示すブロック図を提供する。指紋付けシステムにおけるネットワーク２１１は、ローカル又はプライベート通信ネットワーク及びそのインターフェースを表す。それは、監視用の柔軟性及びスケーラビリティをもたらす任意選択の素子とすることができる。このネットワーク２１１は、アプリケーションとサイドチャネル関連データとの間で共有又は分離され得る。ネットワーク２１１は、ＴＣＰ／ＩＰネットワークに基づいて操作することができ、評価を支援するのに必要な実際のネットワーク要件は、数ある要素の中で、ターゲットプラットホーム、特徴抽出技術に依存する。例えば、多数のサイドチャネルモニタ／プローブセンサ８０１ａ〜ｎは、一緒に接続され、サイト制御８０２を介して、多数のターゲットを監視する。次に、監視された情報は、ゲートウェイ８０３を介してデータクラウド８０４（図２Ａにおける２１３と等しい）に伝達することができる。ネットワーク２１１はまた、ユーザ領域内の相異なるモニタ７０１ａ〜ｎに、必要な更新及び制御情報を送出することを支援する。
【００８２】
図９は、実施形態に従って、機械学習モジュール（例えば図２Ａにおける２１５）による使用事例の例を示すブロック図を提供する。機械学習は、全体としての処理チェーン又は産業を通して特定の脅威又は攻撃の発展及び移動を追跡するために用いることができる。このプロセスは、図９に示されており、そこでは、相互接続された別個のネットワークノード９０２が、感染されるか又は改竄される（黒い円を備えたノードとして図９に示されている）。学習プロセスは、ファジー論理又は事例ベース推測を含む多くの相異なる人工知能（ＡＩ）技術を用いて実行することができる。機械学習モジュールによる監視は、攻撃を検出し、危険にさらされたノード９０２の地理的分布を追跡することができる。更に、機械学習モジュールは、どの素子が侵入に寄与するかの洞察力を獲得し、拡散パターン、攻撃者意図、及び可能な軽減を予測するために、その分析エンジンを用いることができ、かかる分析データは、クラウド９０５に格納することができ、クラウド９０５は、ＰＦＰシステム９０１と共有され得る。例として、このアプローチは、装置クラス用のソフトウェア更新からのマルウェア拡散を見つけるために用いることが可能である。
【００８３】
図１０は、フラッシュメモリ、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）又はＢＩＯＳを監視するための例示的なＰＦＰの適用１０００の態様を示すブロック図を提供する。ＰＦＰの適用１０００は、回路異常検出モジュール１００２、回路チップステータスプログラミング分析器１００４、通知コンポーネント１００５、ユーザインターフェース１０１０、及び回路異常ハンドラ１００６を含むことができる。ＥＭセンサ又は直接回路接続は、フラッシュメモリを再プログラムできるようにするか、又はＦＰＧＡ又はＢＩＯＳを再プログラムできるようにするチップ１００１ａ上のピンにおける状態変化を監視するために用いられる。状態変化１００１ａを監視するこの回路は、その情報を回路異常検出モジュール１００２に伝達する。回路チップステータスプログラミング分析器１００４は、１００１ｂにおけるピンの変化の情報を受信すると、通知コンポーネント１００５を更新するために、チップの動作ステータスの変化を判定し、信号を１００３ａに送信することができる。従って、通知コンポーネント１００５は、インターフェース１０１０を通してユーザに通知し、及び／又は可能な侵入に対する応答を実行する責任がある回路異常ハンドラ１００６にメッセージ１００３ｂを送信する。
【００８４】
かかるＰＦＰの適用が、ターゲット装置（例えば再プログラム可能なコンポーネントを含むターゲット回路チップ、又はソフトウェア及び／若しくはファームウェアを有するターゲット装置）の動作寿命にわたって、特定の時間に実行され得るか又は数回反復され得ることに留意されたい。例えば、ＰＦＰの適用は、使用を通じて、ターゲット装置まで動作を止めるまで（即ち「揺りかごから墓場まで」）、ターゲット装置をその最初の製造から監視することができる。別の例として、ＰＦＰの適用は、１日、１週間、１か月、１年又は数年などの動作期間など、より短い期間にわたってターゲット装置を監視することができる。いずれの場合も、ＰＦＰの適用は、長期間にわたって、多数の別個で切り離された時間に、ターゲット装置に関する情報を収集することができる。ターゲット装置の電力分析を監視し実行することによって、ターゲット装置の時間関連情報が、追跡され得る。他の類似の装置は、それらのライフサイクル中の対応する時点で同様に測定することができ、オリジナル／制御ターゲット装置用に収集された情報と比較することができる。ターゲット装置が、再プログラム可能なコンポーネント（例えばターゲット装置上の再プログラム可能なコンポーネント）であるか又はそれを含む例において、再プログラム可能なコンポーネントに対するプログラミング変更（他の任意の時間関連変更に加えて又はその代替における）は、追跡することができる。かかる監視／追跡に基づいて、性能、履歴、完全性及び／又は動作を評価することができる。
【００８５】
更に別の例に関し、ＰＦＰの適用は、様々な構成、位置及び取り付けを通して、長期間にわたってターゲットコンポーネント又はターゲット装置を監視することができる。かかるターゲットコンポーネント／装置は、例えば、最初に製造された再プログラム可能なコンポーネントを含むターゲット回路チップとしてスタートし、次にファームウェア及び／又はＦＰＧＡを含むことができるプリント回路基板アセンブリ（ＰＣＢＡ）に取り付けられ得る。次にＰＣＢＡは、記憶装置に取り付けでき、記憶装置は、今度は１台の車両によって搬送され、別の車両に取り付けることができる。かかるライフサイクル例において、ＰＦＰの適用は、上記の各ステージでターゲット装置を監視し評価することができる。これは、例えば、ターゲットコンポーネント／装置の全ての局面を通してライフサイクル監視を可能にすることができる。
【００８６】
図１１は、ファウンドリ及び偽造識別１１００における例示的なＰＦＰの適用の態様を示すブロック図を提供する。指紋付けシステム（例えば図２Ａ〜２Ｄに示されているＰＦＰシステムのいずれか）は、装置の製造元又はかかる装置が偽造されている可能性があるかどうかを決定するために用いることができる。これは、ファウンドリ又はオリジンで用いられる特定の技術ライブラリのシミュレーション又はエミュレーションを用いて抽出された特徴を照合することによって達成することができる。図１１に示されているように、オリジンのファウンドリ１１２４、ファウンドリ地理情報１１２２、装置の古さ、及び共有されるオリジン１１２３を備えた装置を含む製造情報を決定するために、精巧なテストベクトルのセット１１１１が、テスト下の装置（例えばチップ又はＩＣ）の信頼性の識別を支援するために、ＰＦＰシステムによって定義することができる。次に、テストベクトル１１１１は、ＰＦＰシステムからテスト下の装置（ＤＵＴ）１１１５に送信され、テスト下の装置は、装置状態情報１１６が生成されてＰＦＰシステムに送信されるようにする。生成された装置状態情報１１１６は、１１１７において特徴抽出及び統計分析用にＰＦＰシステムによって用いられ、特徴抽出及び統計分析は、詳細な特徴分析１１１８、外れ値検出１１１９、ホワイトリスティング１１２０等を生成することができる。１１１８〜１１２０からの生成されたデータは、周知のファウンドリデータベース１１２１に格納することができる。このプロセスは、標準チップテスタを用いて、別の相互接続するチップを検証するために、例えば、テスト装置として又は一チップ用に実行されてもよい。加えて、このプロセスは、例えばチップ対チップ認証として実行することができ、その場合に、チャレンジ−レスポンスは、回路における一チップから回路における別のチップに行われる。
【００８７】
図１２Ａ〜１２Ｂは、実施形態に従って、偽造測定の例を示す例示的なデータプロット図を提供する。図１２Ａに示されているように、Intel TB28F400B5-T80メモリチップ（例えば１２３０ａ〜ｂ、１２３２）の偽造測定の例が提供され、それらの幾つかは、再ラベル付けされた古いチップ１２３１である。ここで、特徴抽出及び統計分析（１１１７）は、基線シグネチャ（図示せず）に関して測定された誤差偏差の測定された確率分布関数（ｐｄｆ）に帰着し、Ｘ軸上に提示され（「基線からの距離」としてラベル付けされる）、ｙ軸は、基線からの誤差測定の確率を表す。
【００８８】
図１２Ｂに示されている別の例において、新しい１２５０ａ及び経年変化した１２５０ｂのFPGA Xilinx Spartan 3（Xilinx XC3S500E FPGA）が分析される。再び、電力消費特性（「残余誤差」としてＸ軸上にラベル付けされ、図１２Ａに示されている基線からの距離に似ている）は、確率分布関数を構成するために用いられる。次に、様々な統計テストが、どれが偽造部分（経年変化し、再ラベル付けされたコンポーネント）であるか及びどの部分が正当な部分であるのかの最終決定を行うために適用され得る。右端のグラフは、異なる通し番号（Ｓ／Ｎ）を備えた装置であるが、しかし等価な機能を有し、偽造装置を表す。
【００８９】
指紋付けシステムの適用の更なる例は、ＵＳＢ及び他のプラグアンドプレイ装置を含むことができる。装置が、計算装置に接続されると、接続の文脈を識別し確立するプロトコルが後に続く。ＵＳＢメモリ装置又はプリンタは、この接続の文脈を確立する明確に定義された手順を予め形成する。このプロトコル交換用の電力指紋付け又は応答時間などのサイドチャネルは、マルウェア又はハードウェアのトロイの木馬を示す異常動作用に監視することができる。
【００９０】
指紋付けシステムの適用の追加の例は、ターゲットシステムのサイドチャネル異常動作の監視を含み、限定するわけではないが、半導体、モバイル装置、サプライチェーン、オリジンのファウンドリの識別、ＳＣＡＤＡ及び工業制御、ネットワーキング、ＦＰＧＡセキュリティ、メモリ、モノのインターネット、埋め込みシステムセキュリティ、Linux、仮想化、サーバファーム、プラグイン装置用の信頼、フォレンジック、輸送システム等を含む多くの相異なる用途における悪意のある侵入を検出することができる。例えば、ＰＦＰは、ハードウェアコンポーネントがテストされている指紋付けシステムをキューに入れる一方で、重要なハードウェアコンポーネントを働かすテスト下の装置上を走行するプログラムで実行することができる。別の例として、正当な入力データから指紋付けシステムへと抽出された基線基準に関係付けられる異常サイドチャネル動作を検査することによって、ファジング攻撃を識別するための手順が、ターゲット装置／システム上で実行され得る。
【００９１】
ＰＦＰシステムの更なる実装は、ソフトウェア、ファームウェアにおける不正変更を検出するための方法を含んでもよく、サプライチェーンにおける信頼できないリンクによって導入されたハードウェアは、入ってくる装置用の完全性研究室における、又は配置された装置の現場におけるＰＦＰ分析の適用を含むことができる。ＰＦＰモニタによって検出された悪意のある侵入、改竄又は不正変更に応答する方法は、イベントの警告、ロギング及び報告と、保護されているターゲットシステムを損傷、悪用から防ぐか、又はその情報の漏洩を防ぐために、或る重要な資源へアクセスを防止することと、攻撃又は攻撃者からインテリジェンス及びフォレンジック情報を収集することと、シャットダウン、リセット、又は動作／計算を防ぐことによって、影響を受けた装置を一時的にディスエーブルにすることと、又は装置を物理的に損傷又は破壊することによって、影響を受けた装置を永続的にディスエーブルにすることと、の少なくとも１つを含むことができる。
【００９２】
以下は、ＰＦＰシステムが、異常を検出するために、ターゲット装置又はシステムの信頼性を評価するために使用され得る幾つかの例を提供する。例えば、ＰＦＰシステムは、内部の異常を検出し、無人自動車、無人自律車両（ＵＡＶ）、機器（例えば冷蔵庫家庭用機器）、モノのインターネット（ＩｏＴ）内の装置、ウェアラブルデバイス（例えば運動モニタリング装置）などの自律システムの全体的な信頼性を評価するために用いることができる。かかる自律システム用に、ＰＦＰシステムは、アクセスが実際的でない場合に、遠隔分析、異常検出及び／又は信頼性評価を可能にする。他の例として、ＰＦＰシステムは、内部の異常を検出するために、（１）サーバなどの計算装置の仮想環境内で用いられるハイパーバイザ、（２）ソフトウェア実行シーケンス、（３）緊急指令システム（ＩＣＳ）、及び（４）サーバ、スイッチなど、データセンタ内のコンポーネントの全体的な信頼性を評価するために用いることができる。ＰＦＰシステムはまた、例えば、脳波内に含まれる電力特性又はパラメータの電力分析に基づいて、人で用いることができる。
【００９３】
別の例において、ＰＦＰシステムは、ソフトウェア及び／又はファームウェアパッチ（ソフトウェア／ファームウェア又はその支援データを更新するか、それを修正するか又はそれを改善するために設計されたソフトウェアピース）のインストール、アップロード、及び／又は実行に関連して用いることができる。ＰＦＰシステムは、関連装置にパッチをインストール又はアップロードすること、及びかかるインストール又はアップロードに起因する電力特性／情報を収集することによって、基線を確立することができる。基線は、例えば、将来のアクセス及び比較用にデータベースに格納することができる。ＰＦＰシステムは、ターゲット装置上でのパッチのインストール、アップロード又は実行中に、電力特性／情報を収集することができる。比較は、続いて実行され得、インストール、アップロード又は実行中に、関連する基線をターゲット装置用の電力特性／情報と比較することができる。比較に依存して、決定及び通知は、パッチが正規のバージョンかどうか、又はパッチが不正か、改竄されたか若しくは悪意のあるバージョンかどうかに関して行うことができる。
【００９４】
ファームウェアのかかる分析は、他の文脈及び使用事例において実行することができる。例えば、ファームウェアの電力特性は、メモリの内容を検証するために分析することができる。かかるメモリは、例えば、中央処理装置（ＣＰＵ）における、又はＣＰＵから物理的に分離されてＣＰＵとは別個のメモリにおけるメモリとすることができる。ＰＦＰシステムは、その動作を通して、メモリサイクルとしてかかるメモリの電力消費を監視することができる。例において、ＰＦＰシステムが、ＣＰＵの内のメモリを監視している場合に、ＣＰＵの電力特性は、メモリの電力特性を導き出すために、その動作を通してメモリサイクルとして監視することができる。
【００９５】
比較的低いサンプリングレートが、ＰＦＰシステムによって収集された情報をエイリアスするために用いられ得る。何故なら、ＰＦＰシステムが、メモリに格納された情報を再現するのではなく、異常が存在するかどうかを決定するために、電力特性情報をメモリ用に収集する必要があるからである。換言すれば、サンプリングレートは、異常が存在するが、しかしメモリに格納された情報を再現するほど高くはないかどうかを決定するために十分な電力特性情報をメモリ用に収集することで十分であるように選択することができる。これは、メモリに格納されたプライベート情報にアクセスもせず、メモリの可能な優先コードにアクセスもせずにメモリの分析を可能にすることができる。ＰＦＰシステムの動作は、例えばメモリの読み出し動作に基づいて、メモリの動作と同期させることができる。
【００９６】
ＰＦＰシステムの更なる実装は、ＰＦＰ特徴付け及び指紋基準抽出用の方法を含み、より効果的な特徴付けを可能にするか又は困難な若しくは挑戦的な状況においてターゲットの特徴付けを可能にする検証は、装置の電力消費を取得するためにシミュレーションを用いること、外れ値を識別するために統計分析を用いること、及びハードウェアからの指紋を検証するためにリバースエンジニアリングを用いることの少なくとも１つを含むことができる。
【００９７】
更に別の実装において、ＰＦＰシステムは、特定のターゲット装置の同一性、ターゲット装置の特定ユーザの同一性、及び／又はターゲット装置を製造するために用いられる特定の製作プロセスを識別又は予測することができる。
【００９８】
ＰＦＰシステムの更なる実装は、ＰＦＰ特徴付け及び指紋基準抽出、並びにターゲットシステム内の受動ターゲットコンポーネント自体又は受動コンポーネントの検証用の方法を含む。かかる受動コンポーネントは、例えば、コンデンサ、抵抗器、磁性体（誘導装置）（例えばインダクタ）、及びトランスデューサを含むことができる。受動コンポーネントを含むターゲットコンポーネント又はターゲット装置用に、能動コンポーネント（例えばダイオード、トランジスタ、集積回路又は光電子デバイス）は、含まれなくてもよい。かかる適用において、入力又は入力ベクトルは、その受動コンポーネントに適した電流、電圧又は信号とすることができる。例えば、ＰＦＰ特徴付け用の方法は、一連の相異なる入力電流の印加を含んでもよい。コンデンサの結果としての電力関連動作は、指紋基準を抽出するために、及び／又は許可されたか又は無許可の／改竄されたものとして受動ターゲットコンポーネントを検証するために用いることができる。受動コンポーネントに関連するＰＦＰシステムのこの実装が、受動コンポーネントだけを有するターゲット装置、又は受動コンポーネント及び能動コンポーネントの組み合わせを有するターゲット装置に関連して実行され得ることに留意されたい。（他のところで説明されるＰＦＰシステムの他の実装は、能動コンポーネントだけを有するターゲット装置に用いることができる。）
【００９９】
本明細書で説明される電力特性情報の評価が、全体的な分析のより広い文脈において、電力特性と無関係な他の情報と共に評価され得ることに留意されたい。電力特性と無関係なかかる他の情報は、例えば、他のセンサに関連する情報、他の通信装置に関連する情報、ターゲット装置の文脈に関する情報、ターゲット装置の位置に関する情報、ターゲット装置の動作に関する情報、及び／又はターゲット装置の動作のタイミング若しくはシーケンスに関する情報を含むことができる。かかる電力特性情報、及び電力特性と無関係な他の情報は、受信されたときに（例えばほぼ実時間で）分析されるか、又は格納され、次に後で分析され得る。
【０１００】
幾つかの実施形態において、プロセッサ実行方法は、サイドチャネル情報セットを捕捉する要求を取得することと、ターゲット装置の動作中に、ターゲット装置の動作ステータスに関係するサイドチャネル情報セットをプローブコンポーネントに捕捉させる信号を送信することと、ターゲット装置の動作ステータスに関係するタイミング基準を示すタイムスタンプを含む指示を外部タイミングソースから受信することと、タイムスタンプに基づいて、サイドチャネル情報セットをターゲット装置の動作ステータスと関連付けることと、タイムスタンプにおけるターゲット装置の動作ステータスに関連付けられるサイドチャネル情報セットをデータ記憶素子に送信することと、を含む。外部タイミングソースは、例えば、ターゲット装置の動作ステータスを同期させるために用いられる、サイドチャネル情報セットを捕捉するために用いられる全地球測位システム（ＧＰＳ）を含むことができる。指示は、例えば、ターゲット装置と接続された電力線に注入される、タイミング基準を提供するスペクトル拡散信号を含むことができる。
【０１０１】
本明細書で説明されるシステム及び方法が、ソフトウェア（ハードウェア上で実行される）、ハードウェア、又はそれらの組み合わせによって実行され得ることが意図されている。ハードウェアモジュールは、例えば、汎用プロセッサ、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、及び／又は特定用途向け集積回路（ＡＳＩＣ）を含んでもよい。ソフトウェアモジュール（ハードウェア上で実行される）は、Ｃ、Ｃ＋＋、JavaTM、Ruby、Visual BasicTM、及び他のオブジェクト指向、手続き型、又は他のプログラミング言語及び開発ツールを含む様々なソフトウェア言語（例えばコンピュータコード）で表現することができる。コンピュータコードの例は、限定するわけではないが、マイクロコード又はマイクロ命令と、コンパイラによって生成されるような機械命令と、ウェブサービスを生成するために用いられるコードと、インタープリタを用いてコンピュータによって実行される高水準命令を含むファイルと、を含む。コンピュータコードの追加の例は、限定するわけではないが、制御信号、暗号化されたコード及び圧縮コードを含む。
【０１０２】
本明細書で説明される幾つかの実施形態は、様々なコンピュータ実行動作を実行するための命令又はコンピュータコードを自ら有する非一時的なコンピュータ可読媒体（非一時的なプロセッサ可読媒体とも呼ぶことができる）を備えたコンピュータ記憶プロダクトに関する。コンピュータ可読媒体（又はプロセッサ可読媒体）は、それが、本来、一時的な伝播信号（例えば、空間又はケーブルなどの送信媒体上で情報を担持する伝播電磁波）を含まないという意味で非一時的である。媒体及びコンピュータコード（コードとも呼ぶことができる）は、特定の目的用に設計及び構成されたものでもよい。非一時的なコンピュータ可読媒体の例は、限定するわけではないが、ハードディスク、フロッピーディスク及び磁気テープなどの磁気記憶媒体と、コンパクトディスク／デジタルビデオディスク（ＣＤ／ＤＶＤ）、コンパクトディスク読み出し専用メモリ（ＣＤ−ＲＯＭ）及びホログラフィック装置などの光記憶媒体と、光ディスクなどの光磁気記憶媒体と、搬送波信号処理モジュールと、特定用途向け集積回路（ＡＳＩＣ）、プログラマブル論理装置（ＰＬＤ）、読み出し専用メモリ（ＲＯＭ）及びランダムアクセスメモリ（ＲＡＭ）装置など、プログラムコードを格納し実行するように特に構成されたハードウェア装置と、を含む。
【０１０３】
様々な実施形態を上記で説明したが、それらの実施形態が、限定ではなく、例としてのみ提示されたことを理解されたい。上記の方法及びステップが、或る順序で発生する或るイベントを示す場合に、或るステップの順序は、修正されてもよい。加えて、ステップの或るものは、可能な場合に並列プロセスで同時に実行されてもよく、同様に上記のように連続して実行されてもよい。様々な実施形態が、特定の特徴及び／又はコンポーネントの組み合わせを有するように説明されたが、他の実施形態は、本明細書で説明された実施形態のいずれかからの任意の特徴及び／又はコンポーネントの任意の組み合わせ及びサブ組み合わせを有することが可能である。
【図１】
0006709845.tif 000003
【図２Ａ】
0006709845.tif 000004
【図２Ｂ】
0006709845.tif 000005
【図２Ｃ】
0006709845.tif 000006
【図２Ｄ】
0006709845.tif 000007
【図３Ａ】
0006709845.tif 000008
【図３Ｂ】
0006709845.tif 000009
【図４】
0006709845.tif 000010
【図５】
0006709845.tif 000011
【図６Ａ】
0006709845.tif 000012
【図６Ｂ】
0006709845.tif 000013
【図７Ａ】
0006709845.tif 000014
【図７Ｂ】
0006709845.tif 000015
【図７Ｃ】
0006709845.tif 000016
【図７Ｄ】
0006709845.tif 000017
【図８】
0006709845.tif 000018
【図９】
0006709845.tif 000019
【図１０】
0006709845.tif 000020
【図１１】
0006709845.tif 000021
【図１２Ａ】
0006709845.tif 000022
【図１２Ｂ】
0006709845.tif 000023