(57)【要約】      （修正有）【課題】集積回路の正当性をチェックする処理装置及び処理方法を提供する。【解決手段】処理方法は、比較データを取得しＳ１１、集積回路データを取得しＳ１２、判定するＳ１４。Ｓ１１は、集積回路の正当性を判定するための比較データを取得する。Ｓ１２は、正当性を判定する集積回路に関連する集積回路データを取得する。Ｓ１４は、前記比較データと前記集積回路データとに基づいて前記集積回路の正当性を判定する。【選択図】図５
2018157376.tif 000002
【特許請求の範囲】
【請求項１】
集積回路の正当性を判定するための比較データを取得する比較データ取得部と、
正当性を判定する集積回路に関連する集積回路データを取得する集積回路データ取得部と、
前記比較データと前記集積回路データとに基づいて前記集積回路の正当性を判定する判定部と、
を備える処理装置。
【請求項２】
前記比較データは、集積回路の写真画像を含み、
前記集積回路データは、正当性を判定する前記集積回路の写真画像を含み、
前記判定部は、前記比較データが含む前記写真画像と前記集積回路データが含む前記写真画像とが一致しない場合に、正当性を判定する前記集積回路は不正な集積回路であると判定する、
前記請求項１に記載の処理装置。
【請求項３】
前記比較データが含む前記写真画像及び前記集積回路データが含む前記写真画像は、Ｘ線写真である、
前記請求項２に記載の処理装置。
【請求項４】
前記比較データは、集積回路のサイドチャネル情報を含み、
前記集積回路データは、正当性を判定する前記集積回路の挙動を測定した測定値を含み、
前記判定部は、前記サイドチャネル情報と前記測定値とが一致しない場合に、正当性を判定する前記集積回路は不正な集積回路であると判定する、
前記請求項１乃至３の何れか１項に記載の処理装置。
【請求項５】
前記サイドチャネル情報は、集積回路の消費電力を含み、
前記測定値は、正当性を判定する前記集積回路の消費電力を含む、
前記請求項４に記載の処理装置。
【請求項６】
前記比較データは、集積回路のソフトウェアの実行コードから算出されるハッシュ値を含み、
前記集積回路データは、正当性を判定する前記集積回路のソフトウェアの実行コードから算出されるハッシュ値を含み、
前記判定部は、前記比較データが含む前記ハッシュ値と前記集積回路データが含む前記ハッシュ値とが一致しない場合、正当性を判定する前記集積回路は不正な集積回路であると判定する、
前記請求項１乃至５の何れか１項に記載の処理装置。
【請求項７】
前記比較データ取得部は、前記比較データに署名を付した署名比較データを取得し、前記署名比較データから前記比較データを取得する、
前記請求項１乃至６の何れか１項に記載の処理装置。
【請求項８】
正当性を判定する前記集積回路は、ＬＳＩである、
前記請求項１乃至７の何れか１項に記載の処理装置。
【請求項９】
前記ＬＳＩは、ＩＣモジュールを構成する、
前記請求項８に記載の処理装置。
【請求項１０】
集積回路の正当性を判定するための比較データを取得し、
正当性を判定する集積回路に関連する集積回路データを取得し、
前記比較データと前記集積回路データとに基づいて前記集積回路の正当性を判定する、
処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、処理装置及び処理方法に関する。
【背景技術】
【０００２】
ＩＣカードのＬＳＩを提供するＬＳＩベンダなどは、認定機関にサンプルを提供しＬＳＩの認定を受ける。ＬＳＩベンダなどは、一旦認証を受けると、生産したＬＳＩのチェックを受けない。
【０００３】
そのため、ＬＳＩベンダなどからＬＳＩの提供を受けた者は、提供されたＬＳＩが認定を受けたＬＳＩと同一であるかチェックすることができない。
【０００４】
従来、ＬＳＩの正当性をチェックする装置は、提供されていない。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１４−５９７２４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上記の課題を解決するために、集積回路の正当性をチェックする処理装置及び処理方法を提供する。
【課題を解決するための手段】
【０００７】
実施形態によれば、処理装置は、比較データ取得部と、集積回路データ取得部と、判定部と、を備える。比較データ取得部は、集積回路の正当性を判定するための比較データを取得する。集積回路データ取得部は、正当性を判定する集積回路に関連する集積回路データを取得する。判定部は、前記比較データと前記集積回路データとに基づいて前記集積回路の正当性を判定する。
【図面の簡単な説明】
【０００８】
【図１】図１は、第１の実施形態に係る製造システムの構成例を示すブロック図である。
【図２】図２は、第１の実施形態に係る比較データの構成例を示す図である。
【図３】図３は、第１の実施形態に係るサイドチャネル情報の構成例を示す図である。
【図４】図４は、第１の実施形態に係る判定システムの構成例を示すブロック図である。
【図５】図５は、第１の実施形態に係る情報処理装置の動作例を示すフローチャートである。
【図６】図６は、第２の実施形態に係る製造システムの構成例を示すブロック図である。
【図７】図７は、第２の実施形態に係る情報処理装置の動作例を示すフローチャートである。
【発明を実施するための形態】
【０００９】
以下、図面を参照して実施形態について説明する。
（第１実施形態）
まず、第１実施形態について説明する。  
第１実施形態に係る製造システムは、ＩＣカードを生成する。製造システムは、ＬＳＩ（Ｌａｒｇｅ−Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｉｏｎ）（集積回路）を製造し、ＬＳＩを含むＩＣモジュールを製造し、ＩＣモジュールを含むＩＣカードを生成する。製造システムでは、各工程を異なる者が行う。製造されたＩＣカードは、銀行又はクレジットカード会社などの発注者へ提供される。ここでは、集積回路は、ＬＳＩ及びＩＣ（Ｉｎｔｅｇｒａｔｅｄ  ｃｉｒｃｕｉｔ）などを含む。
【００１０】
図１は、製造システム１００の構成例を示すブロック図である。図１が示すように、製造システム１００は、認定機関１０１、認定機関１０２、ＬＳＩベンダ１０３、ＯＳ・アプリ開発者１０４、印刷会社１０５及び発注者１０６などから構成される。
【００１１】
図１に従って、製造システム１００がＩＣカードを製造する工程について説明する。  
ＬＳＩベンダ１０３は、ＩＣカードのＬＳＩを製造する。ＬＳＩベンダ１０３は、製造したＬＳＩの認証を受けるために、サンプル（サンプルＡ）として製造したＬＳＩを認定機関１０１に提供する。
【００１２】
認定機関１０１は、ＬＳＩを認定する機関である。認定機関１０１は、たとえば、ＥＭＶＣｏである。認定機関１０１は、ＬＳＩがセキュリティ基準などの認定基準を満たすものであるかを判定する。認定機関１０１は、ＬＳＩが認定基準を満たすと判定すると、ＬＳＩベンダ１０３に対してＬＳＩの認証（認証Ａ）を提供する。
【００１３】
また、認定機関１０１は、ＬＳＩが認定されたものであるかを判定するための比較データ（比較データＡ）をＯＳ・アプリ開発者１０４へ提供する。比較データＡは、認定したＬＳＩの特徴を示すデータである。比較データについては、後に詳述する。
【００１４】
ＬＳＩベンダ１０３は、認証を受けると、サンプルＡと同一のＬＳＩをＯＳ・アプリ開発者１０４へ提供する。
【００１５】
ＯＳ・アプリ開発者１０４は、ＬＳＩベンダ１０３からＬＳＩの提供を受ける。また、ＯＳ・アプリ開発者１０４は、認定機関１０１から比較データＡの提供を受ける。ＯＳ・アプリ開発者１０４は、比較データＡを用いてＬＳＩベンダ１０３から提供を受けたＬＳＩの正当性をチェックする。即ち、ＯＳ・アプリ開発者１０４は、提供を受けたＬＳＩが認定を受けたＬＳＩと同一であるかチェックする。正当性をチェックする方法については、後述する。
【００１６】
ＬＳＩが正当であると判定すると、ＯＳ・アプリ開発者１０４は、ＬＳＩにＯＳ及びアプリケーションプログラムを格納する。また、ＯＳ・アプリ開発者１０４は、ＬＳＩにコンタクト部などを付加して、ＩＣモジュールを製造する。
【００１７】
ＯＳ・アプリ開発者１０４は、製造したＩＣモジュールの認定を受けるために、サンプル（サンプルＢ）として、製造したＩＣモジュールを認定機関１０２に提供する。
【００１８】
認定機関１０２は、ＩＣモジュールを認定する機関である。認定機関１０１は、たとえば、ＶＩＳＡなど、ＩＣカードによって提供されるサービスに関連するブランドである。認定機関１０２は、ＩＣモジュールがセキュリティ基準又は動作基準などの認定基準を満たすものであるかを判定する。認定機関１０２は、ＩＣモジュールが認定基準を満たすと判定すると、ＯＳ・アプリ開発者１０４に対してＩＣモジュールの認証（認証Ｂ）を提供する。
【００１９】
また、認定機関１０２は、ＩＣモジュールのＬＳＩが認定されたものであるかを判定するための比較データ（比較データＢ）を印刷会社１０５へ提供する。比較データＢは、認定したＩＣモジュールのＬＳＩの特徴を示すデータである。
【００２０】
ＯＳ・アプリ開発者１０４は、認証を受けると、サンプルＢと同一のＩＣモジュールを印刷会社１０５へ提供する。
【００２１】
印刷会社１０５は、ＯＳ・アプリ開発者１０４からＩＣモジュールの提供を受ける。また、印刷会社１０５は、認定機関１０２から比較データＢの提供を受ける。印刷会社１０５は、比較データＢを用いてＯＳ・アプリ開発者１０４から提供を受けたＩＣモジュールのＬＳＩの正当性をチェックする。
【００２２】
ＩＣモジュールのＬＳＩが正当であると判定すると、印刷会社１０５は、カードにＩＣモジュールをセットしてＩＣカードを製造する。また、印刷会社１０５は、ＩＣカードに所定の文字列又は絵柄などを印刷してもよい。  
印刷会社１０５は、製造したＩＣカードを発注者１０６に提供する。
【００２３】
発注者１０６は、ＩＣカードの発注を依頼した依頼元である。たとえば、発注者１０６は、銀行又はクレジットカード会社などである。発注者１０６は、印刷会社１０５からＩＣカードの提供を受ける。たとえば、発注者１０６は、提供を受けたＩＣカードをエンドユーザなどに配布して所定のサービスを提供する。
【００２４】
なお、製造システム１００が製造するＩＣカードは、運賃などの支払い又は放送の受信などに用いられるものであってもよい。製造システム１００が製造するＩＣカードの用途は、特定の構成に限定されるものではない。
【００２５】
次に、比較データ（比較データＡ及びＢ）について説明する。  
比較データは、ＬＳＩが認定を受けたものであるか判定するためのデータである。即ち、比較データは、提供されたＬＳＩが、認定機関１０１に認定されたＬＳＩ又は認定機関１０２に認定されたＩＣモジュールのＬＳＩと同一であるか判定するためのデータである。
【００２６】
比較データは、認定を受けたＬＳＩの特徴を示す。たとえば、比較データは、認定を受けたＬＳＩのハードウェア的な特徴及びソフトウェア的な特徴を示す。
【００２７】
図２は、比較データ５０の構成例を示す。図２が示すように、比較データ５０は、写真情報５１、サイドチャネル情報５２及びハッシュ値情報５３などから構成される。なお、比較データ５０は、図２が示すような構成の他に必要に応じた構成を具備したり、特定の構成を除外したりしてもよい。
【００２８】
写真情報５１は、ＬＳＩのハードウェアの特徴を示す。写真情報５１は、ＬＳＩの写真画像である。たとえば、写真情報５１は、ＬＳＩをＸ線写真で撮影した画像である。写真情報５１は、ＬＳＩの内部構造を写す写真である。たとえば、写真情報５１は、ＬＳＩの部品及び部品の位置などが写る画像である。
【００２９】
サイドチャネル情報５２は、ＬＳＩのハードウェアの特徴を示す。サイドチャネル情報５２は、所定の処理（たとえば、ＲＳＡ演算などの暗号化処理）時におけるＬＳＩの挙動を示す。サイドチャネル情報５２は、ＬＳＩのＩ／Ｏ以外の挙動を示す。たとえば、サイドチャネル情報５２は、消費電力、熱、音又は電磁的ノイズなどである。サイドチャネル情報５２の構成は、特定の構成に限定されるものではない。
【００３０】
図３は、サイドチャネル情報５２の構成例を示す。図３は、ＲＳＡ演算を行うＬＳＩの消費電力を示すサイドチャネル情報５２の例である。ここでは、図３は、さらに、Ｉ／Ｏ及び入力電圧を示す。
【００３１】
図３は、グラフ６１乃至６３を備える。いずれのグラフにおいても、横軸は、時間を示す。
【００３２】
グラフ６１は、Ｉ／Ｏを示す。たとえば、グラフ６１は、ハイであれば、「１」を示し、ローであれば、「０」を示す。
【００３３】
グラフ６２は、入力電圧を示す。縦軸は、電圧を示す。ここでは、グラフ６２は、一定の入力電圧がＬＳＩに入力されることを示す。
【００３４】
グラフ６３は、消費電力を示す。縦軸は、電圧又は電力を示す。グラフ６３は、ＬＳＩがＲＳＡ演算中に消費する電力を示す。即ち、グラフ６３は、ＬＳＩがＲＳＡ演算中に消費する電力の波形パターンを示す。
【００３５】
また、サイドチャネル情報５２は、複数回測定された挙動に基づいて揺らぎを相殺するための統計処理を施したものであってもよい。たとえば、サイドチャネル情報５２は、統計的な揺らぎを含む値（たとえば、所定の幅を有する値）であってもよい。また、サイドチャネル情報５２は、時間的な揺らぎを含む値であってもよい。
【００３６】
なお、サイドチャネル情報５２は、所定の処理の一部の区間におけるＬＳＩの挙動を示すものであってもよい。また、サイドチャネル情報５２は、複数の処理におけるＬＳＩの挙動を示すものであってもよい。  
サイドチャネル情報５２の構成は、特定の構成に限定されるものではない。
【００３７】
ハッシュ値情報５３は、ＬＳＩのソフトウェアの特徴を示す。ハッシュ値情報５３は、ＬＳＩに組み込まれるソフトウェアの実行コードから算出されるハッシュ値を示す。たとえば、ハッシュ値は、所定のハッシュ関数を用いてソフトウェアの実行コードから算出される。
【００３８】
たとえば、ハッシュ値情報５３は、ＯＳ又はアプリケーションの実行コードから算出されるハッシュ値を示す。また、ハッシュ値情報５３は、ＬＳＩに組み込まれるソフトウェアの一部から算出されるハッシュ値を示すものであってもよい。
【００３９】
次に、ＯＳ・アプリ開発者１０４又は印刷会社１０５がＬＳＩの正当性をチェックする方法について説明する。  
ＯＳ・アプリ開発者１０４又は印刷会社１０５は、判定システムを用いてＬＳＩの正当性をチェックする。
【００４０】
図４は、実施形態に係る判定システム１の構成例を示すブロック図である。  
図４が示す構成例において、判定システム１は、情報処理装置１０（処理装置）、撮影部２０、センサ部３０及びソフトウェア取得部４０などを備える。情報処理装置１０と撮影部２０、センサ部３０及びソフトウェア取得部４０とは、データバスを介して互いに接続される。なお、判定システム１は、図４が示すような構成の他に必要に応じた構成を具備したり、特定の構成を除外したりしてもよい。
【００４１】
また、情報処理装置１０は、基本的な構成として、プロセッサ１１、ＲＯＭ１２、ＲＡＭ１３、ＮＶＭ１４、通信部１５、インターフェース１６、操作部１７及び表示部１８などを備える。これらの各部は、データバスを介して互いに接続される。なお、情報処理装置１０は、図４が示すような構成の他に必要に応じた構成を具備したり、特定の構成を除外したりしてもよい。
【００４２】
プロセッサ１１は、情報処理装置１０全体の動作を制御する機能を有する。プロセッサ１１は、内部キャッシュおよび各種のインターフェースなどを備えても良い。プロセッサ１１は、内部キャッシュ、ＲＯＭ１２又はＮＶＭ１４が予め記憶するプログラムを実行することにより種々の処理を実現する。
【００４３】
なお、プロセッサ１１がプログラムを実行することにより実現する各種の機能のうちの一部は、ハードウェア回路により実現されるものであっても良い。この場合、プロセッサ１１は、ハードウェア回路により実行される機能を制御する。
【００４４】
ＲＯＭ１２は、予め制御用のプログラム及び制御データなどが記憶された不揮発性のメモリである。ＲＯＭ１２に記憶される制御プログラム及び制御データは、予め情報処理装置１０の仕様に応じて組み込まれる。ＲＯＭ１２は、たとえば、情報処理装置１０の回路基板を制御するプログラムなどを格納する。
【００４５】
ＲＡＭ１３は、揮発性のメモリである。ＲＡＭ１３は、プロセッサ１１の処理中のデータなどを一時的に格納する。ＲＡＭ１３は、プロセッサ１１からの命令に基づき種々のアプリケーションプログラムを格納する。また、ＲＡＭ１３は、アプリケーションプログラムの実行に必要なデータ及びアプリケーションプログラムの実行結果などを格納してもよい。
【００４６】
ＮＶＭ１４は、データの書き込み及び書き換えが可能な不揮発性のメモリである。ＮＶＭ１４は、例えば、ハードディスク、ＳＳＤ、ＥＥＰＲＯＭ（登録商標）又はフラッシュメモリなどにより構成される。ＮＶＭ１４は、情報処理装置１０の運用用途に応じて制御プログラム、アプリケーション、及び種々のデータを格納する。
【００４７】
通信部１５は、通信網などを通じて外部装置とデータを送受信するためのインターフェースである。通信部１５は、たとえば、ＬＡＮ接続をサポートするインターフェースである。
【００４８】
インターフェース１６は、撮影部２０、センサ部３０及びソフトウェア取得部４０とデータを送受信するためのインターフェースである。インターフェース１６は、たとえば、ＬＡＮ接続、ＵＳＢ接続又はＢｌｕｅｔｏｏｔｈ（登録商標）接続をサポートするインターフェースである。
【００４９】
操作部１７は、情報処理装置１０の操作者によって、種々の操作指示が入力される。操作部１７は、操作者に入力された操作指示の信号をプロセッサ１１へ送信する。操作部１７は、たとえば、キーボード、テンキー及びタッチパネルなどである。
【００５０】
表示部１８は、プロセッサ１１の制御により種々の情報を表示する表示装置である。表示部１８は、たとえば、液晶モニタなどである。なお、操作部１７がタッチパネルなどで構成される場合、表示部１８は、操作部１７と一体的に形成されてもよい。
【００５１】
撮影部２０は、ＬＳＩの写真を撮影する。たとえば、撮影部２０は、ＬＳＩのＸ線写真を撮影する。撮影部２０は、ＬＳＩにＸ線を照射しＬＳＩを透過したＸ線を測定する。たとえば、撮影部２０は、Ｘ線照射部及びＸ線センサなどから構成される。
【００５２】
撮影部２０は、比較データ５０の写真情報に対応する写真を撮影する。即ち、撮影部２０は、写真情報と比較可能な写真を撮影する。たとえば、撮影部２０は、写真情報の画像に写るＬＳＩと同一の位置及び同一の大きさとなるようにＬＳＩを撮影する。  
撮影部２０は、撮影した画像を情報処理装置１０に送信する。
【００５３】
センサ部３０は、ＬＳＩの挙動を測定する。センサ部３０は、比較データ５０のサイドチャネル情報５２と比較可能な挙動を測定する。即ち、センサ部３０は、サイドチャネル情報５２が示す挙動と同一の挙動を測定する。
【００５４】
たとえば、センサ部３０は、ＬＳＩの消費電力を測定するセンサ、ＬＳＩが発する熱を測定するセンサ、ＬＳＩが発する音を測定するセンサ又はＬＳＩが発する電磁的ノイズを測定するセンサなどから構成される。  
センサ部３０は、測定した挙動を示す測定値を情報処理装置１０へ送信する。
【００５５】
ソフトウェア取得部４０は、ＬＳＩからソフトウェアの実行コードを取得する。たとえば、ソフトウェア取得部４０は、ＬＳＩに取得コマンドを送信し、当該取得コマンドのレスポンスとしてＬＳＩからソフトウェアの実行コードを取得する。
【００５６】
ソフトウェア取得部４０は、比較データ５０のハッシュ値情報５３と比較可能なハッシュ値を算出するための実行コードを取得する。即ち、ソフトウェア取得部４０は、ハッシュ値情報５３のハッシュ値の元となった実行コードに対応する実行コードをＬＳＩから取得する。  
ソフトウェア取得部４０は、取得した実行コードを情報処理装置１０へ送信する。
【００５７】
なお、ソフトウェア取得部４０は、取得した実行コードから所定のハッシュ関数を用いてハッシュ値を算出してもよい。ソフトウェア取得部４０は、算出したハッシュ値を情報処理装置１０へ送信してもよい。
【００５８】
次に、情報処理装置１０のプロセッサ１１が実現する機能について説明する。  
まず、プロセッサ１１は、比較データ５０（比較データＡ又はＢ）を取得する機能を有する（比較データ取得部）。
【００５９】
プロセッサ１１は、通信部１５を通じて認定機関１０１又は１０２のサーバなどから比較データ５０を取得する。たとえば、プロセッサ１１は、通信部１５を通じて比較データを要求するリクエストを認定機関１０１又は１０２のサーバへ送信し、当該リクエストのレスポンスとして比較データ５０を取得する。
【００６０】
プロセッサ１１は、比較データ５０をＮＶＭ１４などに格納してもよい。また、プロセッサ１１は、ＮＶＭ１４などから比較データ５０を取得してもよい。  
また、プロセッサ１１は、オペレータが接続するメディアから比較データお５０を取得してもよい。
【００６１】
また、プロセッサ１１は、インターフェース１６を通じて、比較データ５０と比較するためのＬＳＩデータ（集積回路データ）を取得する機能を有する（集積回路データ取得部）。ＬＳＩデータは、ＬＳＩに関連するデータである。ＬＳＩデータは、ＬＳＩのハードウェア的な特徴及びソフトウェア的な特徴を示す。
【００６２】
プロセッサ１１は、正当性を判定するＬＳＩを用いてＬＳＩデータを取得する。プロセッサ１１は、ＬＳＩデータとして、インターフェース１６を通じて、撮影部２０が撮影した撮影画像、センサ部３０が測定した挙動及びソフトウェア取得部４０が取得した実行コードのハッシュ値を取得する。
【００６３】
たとえば、プロセッサ１１は、図示しない搬送部などを用いてＬＳＩを撮影部２０が撮影可能な位置まで搬送する。プロセッサ１１は、撮影部２０にＬＳＩを撮影させる信号を送信する。プロセッサ１１は、撮影部２０からＬＳＩを撮影した撮影画像を取得する。
【００６４】
また、プロセッサ１１は、搬送部などを用いてＬＳＩをセンサ部３０が挙動を測定可能な位置まで搬送する。プロセッサ１１は、ＬＳＩに所定の処理（たとえば、ＲＳＡ演算などの暗号化処理）を行わせる。プロセッサ１１は、センサ部３０にＬＳＩの挙動を測定させる信号を送信する。プロセッサ１１は、センサ部３０からＬＳＩの挙動を測定した測定値を取得する。
【００６５】
また、プロセッサ１１は、搬送部などを用いてＬＳＩをソフトウェア取得部４０が実行コードを取得可能な位置まで搬送する。プロセッサ１１は、ソフトウェア取得部４０にＬＳＩから実行コードを取得させる信号を送信する。プロセッサ１１は、ソフトウェア取得部４０から実行コードを取得する。プロセッサ１１は、所定のハッシュ関数を用いてソフトウェア取得部４０が取得した実行コードからハッシュ値を算出する。  
ソフトウェア取得部４０がハッシュ値を算出する場合、プロセッサ１１は、ソフトウェア取得部４０からハッシュ値を取得する。
【００６６】
なお、プロセッサ１１は、ＬＳＩを搬送しなくともよい。たとえば、ＬＳＩは、他の装置からの制御に基づいて搬送されてもよい。また、ＬＳＩは、搬送されなくともよい。  
また、プロセッサ１１は、撮影部２０、センサ部３０及びソフトウェア取得部４０が所定のタイミングで送信するデータを取得してもよい。
【００６７】
また、プロセッサ１１は、比較データとＬＳＩデータとに基づいてＬＳＩの正当性を判定する機能を有する（判定部）。プロセッサ１１は、比較データとＬＳＩデータとを比較して、両者が一致するか判定する。
【００６８】
プロセッサ１１は、比較データ５０の写真情報５１と撮影部２０が撮影した撮影画像とが一致するか判定する。たとえば、プロセッサ１１は、パターンマッチングなどの画像処理を用いて、同一の部品が同一の位置にあるかを判定する。写真情報５１と撮影画像とにおいて同一の部品が同一の位置にあると判定すると、プロセッサ１１は、比較データ５０の写真情報５１と撮影部２０が撮影した撮影画像とが一致すると判定する。
【００６９】
また、プロセッサ１１は、比較データ５０のサイドチャネル情報５２とセンサ部３０が測定した挙動とが一致するか判定する。たとえば、プロセッサ１１は、パターンマッチングなどの技術を用いて、サイドチャネル情報とセンサ部３０とが測定した挙動とが時系列で一致するか判定する。
【００７０】
たとえば、プロセッサ１１は、サイドチャネル情報とセンサ部３０とが測定した挙動との類似度を算出する。プロセッサ１１は、類似度が所定の閾値を超えた場合に、比較データ５０のサイドチャネル情報５２とセンサ部３０が測定した挙動とが一致したと判定する。
【００７１】
また、プロセッサ１１は、センサ部３０が測定した挙動を示す測定値がサイドチャネル情報５２の揺らぎ内に含まれている場合には、サイドチャネル情報５２と測定値とが一致したと判定してもよい。
【００７２】
また、プロセッサ１１は、ハッシュ値情報５３のハッシュ値とソフトウェア取得部４０が取得した実行コードから算出したハッシュ値とが一致するか判定する。  
プロセッサ１１は、比較データ５０の写真情報５１、サイドチャネル情報５２及びハッシュ値情報５３が何れもＬＳＩデータの各データと一致した場合、比較データ５０とＬＳＩデータとが一致したと判定する。他方、プロセッサ１１は、比較データ５０の写真情報５１、サイドチャネル情報５２及びハッシュ値情報５３の少なくとも１つがＬＳＩデータのデータと一致しない場合、比較データ５０とＬＳＩデータとが一致しないと判定する。
【００７３】
また、プロセッサ１１は、比較データ５０とＬＳＩデータとの比較結果を表示部１８に表示する。たとえば、両者が一致した場合、プロセッサ１１は、ＬＳＩが正当であることを示すメッセージを表示部１８に表示する。また、両者が一致しない場合、プロセッサ１１は、ＬＳＩが不正であることを示す警告メッセージを表示部１８に表示する。  
なお、プロセッサ１１は、外部装置に比較結果を送信してもよい。
【００７４】
次に、情報処理装置１０の動作例について説明する。  
図５は、情報処理装置１０の動作例を説明するためのフローチャートである。  
まず、情報処理装置１０のプロセッサ１１は、比較データ５０を取得する（Ｓ１１）。比較データを取得すると、プロセッサ１１は、インターフェース１６を通じて、正当性を判定するＬＳＩのＬＳＩデータを取得する（Ｓ１２）。
【００７５】
ＬＳＩデータを取得すると、プロセッサ１１は、比較データ５０とＬＳＩデータとを比較する（Ｓ１３）。比較データ５０とＬＳＩデータとが一致すると判定すると（Ｓ１４、ＹＥＳ）、プロセッサ１１は、ＬＳＩが正当であることを示すメッセージを表示部１８に表示する（Ｓ１５）。
【００７６】
比較データ５０とＬＳＩデータとが一致しないと判定すると（Ｓ１４、ＮＯ）、プロセッサ１１は、ＬＳＩが不正であることを示す警告メッセージを表示部１８に表示する（Ｓ１６）。
【００７７】
ＬＳＩが正当であることを示すメッセージを表示部１８に表示した場合（Ｓ１５）、又は、ＬＳＩが不正であることを示す警告メッセージを表示部１８に表示した場合（Ｓ１６）、プロセッサ１１は、動作を終了する。
【００７８】
なお、正当性を判定するＬＳＩが複数個ある場合、プロセッサ１１は、各ＬＳＩについてＳ１１乃至Ｓ１６を行ってもよい。
【００７９】
また、製造システム１００は、他の工程を含んでもよい。たとえば、製造システム１００は、他のアプリケーションをＬＳＩに格納する工程を実行するアプリ開発者をさらに含んでもよい。当該アプリ開発者は、判定システム１を用いてＬＳＩの正当性をチェックしてもよい。
【００８０】
以上のように構成された情報処理装置は、認定機関が提供する比較データに基づいて提供されたＬＳＩの正当性をチェックすることができる。その結果、情報処理装置は、ＬＳＩベンダなどが不正なＬＳＩを提供した場合であっても、不正なＬＳＩが出回ることを防止することができる。
（第２実施形態）
次に、第２実施形態について説明する。  
第２実施形態に係る製造システム１００’は、比較データに署名が付いている点及び認定機関が他の認定機関に比較データを送信する点で第１実施形態の製造システム１００と異なる。従って、他の構成については、同一の符号を伏して詳細な説明を省略する。
【００８１】
図６は、製造システム１００’の構成例を示すブロック図である。  
認定機関１０１は、比較データＡに自身の署名を付してＯＳ・アプリ開発者１０４へ提供する。たとえば、認定機関１０１は、自身の秘密鍵を用いて比較データＡを暗号化することで比較データＡに署名を付す。  
認定機関１０１は、認定機関１０１の署名を付した比較データＡ（署名比較データＡ）を認定機関１０２に提供する。
【００８２】
認定機関１０２は、認定機関１０１から署名比較データＡを取得する。認定機関１０２は、署名比較データＡと比較データＢとに自身の署名を付して印刷会社１０５に提供する。たとえば、認定機関１０２は、自身の秘密鍵を用いて署名比較データＡと比較データＢを暗号化することで署名比較データＡ及び比較データＢに署名を付す。ここでは、認定機関１０２の署名を付された署名比較データＡ及び比較データＢを署名比較データＢと呼ぶ。
【００８３】
印刷会社１０５は、署名比較データＢを取得する。  
なお、認定機関１０２は、署名比較データＡと自身の署名を付した比較データＢとを印刷会社１０５へ提供してもよい。
【００８４】
次に、情報処理装置１０のプロセッサ１１が実現する機能について説明する。  
プロセッサ１１は、署名の付されたデータを復号化して比較データを取得する機能を有する（比較データ取得部）。  
たとえば、署名比較データＡを取得した場合、プロセッサ１１は、認定機関１０１の公開鍵を取得する。プロセッサ１１は、当該公開鍵を用いて署名比較データＡを復号化して比較データＡを取得する。
【００８５】
また、署名比較データＢを取得した場合、プロセッサ１１は、認定機関１０２の公開鍵を取得する。プロセッサ１１は、当該公開鍵を用いて署名比較データＢを復号化して署名比較データＡ及び比較データＢを取得する。
【００８６】
また、プロセッサ１１は、直前の認定を行った認定機関が提供する比較データを用いてＬＳＩの正当性をチェックする。  
たとえば、印刷会社１０５では、情報処理装置１０は、署名比較データＢを復号化して得られた比較データＢを用いてＬＳＩの正当性をチェックする。  
また、ＯＳ・アプリ開発者１０４では、情報処理装置１０は、署名比較データＡを復号化して得られた比較データＡを用いてＬＳＩの正当性をチェックする。
【００８７】
次に、情報処理装置１０の動作例について説明する。  
図７は、情報処理装置１０の動作例を説明するためのフローチャートである。  
まず、情報処理装置１０のプロセッサ１１は、署名された比較データ５０を取得する（Ｓ２１）。署名された比較データを取得すると、プロセッサ１１は、インターフェース１６を通じて、正当性を判定するＬＳＩのＬＳＩデータを取得する（Ｓ１２）。
【００８８】
ＬＳＩデータを取得すると、プロセッサ１１は、署名された比較データ５０を復号化して比較データ５０を取得する（Ｓ２２）。比較データ５０を取得すると、プロセッサ１１は、比較データ５０とＬＳＩデータとを比較する（Ｓ１３）。  
Ｓ１４以降は、第１実施形態と同様であるため説明を省略する。
【００８９】
以上のように構成された情報処理装置は、署名を付された比較データに基づいてＬＳＩの正当性をチェックする。そのため、情報処理装置は、改ざんされた比較データを用いて正当性をチェックする危険を軽減することができる。
【００９０】
また、認定機関は、前の認定機関が提供した比較データを含んだデータを提供する。その結果、情報処理装置は、前の認定機関が提供した比較データが改ざんされている危険を軽減することができる。また、情報処理装置は、ＬＳＩが不正であった場合、前の認定機関が認定したベンダ（又は、開発者）が不正を行ったことを認識することができる。
【００９１】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００９２】
１…判定システム、１０…情報処理装置、１１…プロセッサ、１６…インターフェース、２０…撮影部、３０…センサ部、４０…ソフトウェア取得部、５０…比較データ、５１…写真情報、５２…サイドチャネル情報、５３…ハッシュ値情報、１００及び１００’…製造システム、１０１及び１０２…認定機関、１０３…ＬＳＩベンダ、１０４…ＯＳ・アプリ開発者、１０５…印刷会社、１０６…発注者。
【図１】
2018157376.tif 000003
【図２】
2018157376.tif 000004
【図３】
2018157376.tif 000005
【図４】
2018157376.tif 000006
【図５】
2018157376.tif 000007
【図６】
2018157376.tif 000008
【図７】
2018157376.tif 000009