(57)【要約】【課題】製品の製造コストを低減しながら、認証デバイスを用いた正規品認証を行う。【解決手段】本発明にかかる認証システムは、認証デバイスを用いて情報処理装置の正規品認証を行う認証システムであって、情報端末は、認証デバイスと、情報処理装置が有する保守部の改ざんを検知する監視部とを有し、情報処理装置は、情報端末が有する認証デバイスを認証する保守部を有し、監視部が保守部の改ざんを検知しなかった場合であって、保守部が認証デバイスを認証した場合、情報処理装置を正規品と判定する。【選択図】図１
2014238721.tif 000002
【特許請求の範囲】
【請求項１】
認証デバイスを用いて情報処理装置の正規品認証を行う認証システムであって、
情報端末は、
前記認証デバイスと、
情報処理装置が有する保守部の改ざんを検知する監視部とを有し、
情報処理装置は、
情報端末が有する前記認証デバイスを認証する保守部を有し、
前記監視部が前記保守部の改ざんを検知しなかった場合であって、前記保守部が前記認証デバイスを認証した場合、情報処理装置を正規品と判定すること、
を特徴とする認証システム。
【請求項２】
情報端末は、
正規品の情報処理装置が有する正規の保守部と同一のソフトウェアデータを記憶し、
前記監視部は、
前記正規の保守部のソフトウェアデータが記憶されている全記憶領域のうち、ランダムに一部記憶領域を決定し、情報処理装置に対して該一部記憶領域を特定するための情報を送信し、
情報処理装置から、一部記憶領域に基づくデータを受信し、
前記正規の保守部から取得した一部記憶領域に基づくデータと、情報処理装置から取得した一部記憶領域に基づくデータとが一致しない場合、情報処理装置が有する保守部の改ざんを検知すること、
を特徴とする請求項１記載の認証システム。
【請求項３】
前記監視部は、
複数回、ランダムに一部記憶領域を決定し
情報処理装置から、前記複数回分の一部記憶領域に基づくデータを受信し、
前記複数回分の全てについて、前記正規の保守部から取得した一部記憶領域に基づくデータと、情報処理装置から取得した一部記憶領域に基づくデータとが一致する場合、情報処理装置が有する保守部の改ざんを非検知すること、
を特徴とする請求項２記載の認証システム。
【請求項４】
情報処理装置は、
情報処理装置を動作させる暗号化されたアプリケーションを有し、
前記保守部は、
情報処理装置が正規品と判定された場合、情報端末から鍵を取得し、該鍵を用いて前記アプリケーションを復号化し実行させること、
を特徴とする請求項１ないし３何れか一項記載の認証システム。
【請求項５】
認証デバイスを用いて情報処理装置の正規品認証を行う認証方法であって、
情報端末の監視部は、情報処理装置が有する保守部の改ざんを検知し、
情報処理装置の保守部は、情報端末が有する前記認証デバイスを認証し、
前記監視部が前記保守部の改ざんを検知しなかった場合であって、前記保守部が前記認証デバイスを認証した場合、情報処理装置を正規品と判定すること、
を特徴とする認証方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、認証システム及び認証方法に関する。
【背景技術】
【０００２】
近年、正規品を真似た模造品の出現による被害が増加してきている。模造品のターゲットは、バッテリーやプリンタインクなどの消耗品から組込製品などにも及ぶ。
【０００３】
組込製品の模造品に関しては、正規品のハードウェア（部品）を解体・解析し、同等部品で再設計し、正規品のソフトウェアを不正入手して、これらを組み合わせるデッドコピーが主流である。
【０００４】
従来、このようなデッドコピーを防ぐ手立てとして、認証デバイス（例えば、セキュリティチップ等）が用いられる。製品ソフトウェアは、認証処理により認証デバイスの存在を確認し、正規製品上でしか動作できないようにアプリケーションの実行可否を制御する（例えば、特許文献１、２参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１１−１６５０４１号公報
【特許文献２】特開２００７−１８４７３５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述の従来技術では、製品毎に認証デバイスを組み込まなければならず、その分、製品の製造コストが増加してしまうという問題がある。
【０００７】
また、年々と模造品製作の技術は高くなってきており、例えば上述の従来技術では、製品内の製品ソフトウェア（正規品）が解析された上、改ざんされるという事態も想定される。例えば、製品ソフトウェア（正規品）が認証を行う箇所だけを無効化するように改ざんがなされた場合、正規品上でしか動作できないはずのアプリケーションが機能してしまうという問題がある。
【０００８】
上記の点に鑑みて、本発明の実施形態においては、製品の製造コストを低減しながら、認証デバイスを用いた正規品認証を行える認証システム等を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の一態様における認証システムは、認証デバイスを用いて情報処理装置の正規品認証を行う認証システムであって、情報端末は、前記認証デバイスと、情報処理装置が有する保守部の改ざんを検知する監視部とを有し、情報処理装置は、情報端末が有する前記認証デバイスを認証する保守部を有し、前記監視部が前記保守部の改ざんを検知しなかった場合であって、前記保守部が前記認証デバイスを認証した場合、情報処理装置を正規品と判定する。
【発明の効果】
【００１０】
開示の技術によれば、製品の製造コストを低減しながら、認証デバイスを用いた正規品認証を行うことができる。
【図面の簡単な説明】
【００１１】
【図１】認証システム構成の一例を示す図である。
【図２】製品本体装置１、端末２及び管理装置３のハードウェア構成の一例を示す図である。
【図３】認証処理を説明するシーケンス図（その１）である。
【図４】チャレンジ算出の概念図を示す図である。
【図５】認証処理を説明するシーケンス図（その２）である。
【発明を実施するための形態】
【００１２】
以下、上記課題を解決する実施形態例について、添付図面を参照しながら説明する。
【００１３】
＜システム構成＞
図１は、本実施形態にかかる認証システム構成の一例を示す図である。図１に示す認証システム１００は、製品本体装置１、端末２、及び管理装置３を有する。
【００１４】
製品本体装置１は、認証対象となる製品本体である。製品本体装置１は端末２との相互認証を実施し、相互認証に成功した場合、製品本体のアプリケーション実行が許可される。つまり、製品本体装置１は、端末２との相互認証に成功した場合、製品本体装置１として正常に動作することができる。
【００１５】
端末２は、製品本体装置１を認証するための端末装置である。例えば、端末２は、正規の保守員が保持する携帯型端末（ハンディターミナル）として実現される。また、端末２は、後述するように、複数の正規な製品本体装置１が登録された製品ＩＤリストを有しており、保守員は１台の端末２を用いて複数の製品本体装置１に対し相互認証を実施することが可能となっている。
【００１６】
管理装置３は、製品本体装置１及び端末２を管理するための管理用の装置である。例えば、管理装置３は、保守員が保持する端末２内の各種データ（例えば、上述の製品ＩＤリスト等）を更新する。また、例えば、製品本体装置１と端末２との認証に関する履歴（ログ）を収集する。
【００１７】
続いて、再び図１を参照し、製品本体装置１及び端末２の有する機能について説明する。
【００１８】
まず、製品本体装置１は、保守部１０１、アプリ１０２、ＲＡＭ１０３を有する。
【００１９】
保守部１０１は、製品本体装置１の認証ソフトウェアに相当し、端末２との相互認証を行うことで、製品本体装置１の動作を制御する機能を有している。例えば、保守部１０１は、端末２との相互認証により、保守部（認証ソフトウェア）１０１自体が改ざんされていないことを確認させると共に、且つ、端末２の正規な認証デバイスの存在を確認する。保守部１０１は、何れもが確認された場合、端末２より取得される鍵を用いることで、暗号化されているアプリ１０２を復号化しこれを実行する。この点、詳細は再度後述する。
【００２０】
アプリ１０２は、製品本体装置１としての機能を実現するためのアプリケーションである。アプリ１０２は、初期状態において暗号化されている。このため、アプリ１０２は、保守部１０１による復号化を前提として、ＲＡＭ１０３に展開され実行される。なお、暗号化されている状態で、アプリ１０２を実行することはできない。
【００２１】
ＲＡＭ１０３は、揮発性メモリにより実現され、アプリ１０２を展開し実行するための作業領域としての機能を有している。
【００２２】
次に、端末２は、監視部２０１、耐タンパメモリ２０２、認証デバイス２０３、履歴用メモリ２０４を有する。
【００２３】
監視部２０１は、製品本体装置１との相互認証を行う機能を有している。例えば、監視部２０１は、製品本体装置１との相互認証により、製品本体装置１の保守部（認証ソフトウェア）１０１自体が改ざんされていないことを確認すると共に、且つ、製品本体装置１に対し端末２の正規な認証デバイスの存在を確認させる。監視部２０１は、何れもが確認された場合、製品本体装置１に対して、アプリ１０２を復号化する鍵を渡すことで、アプリケーションを実行させる。この点、詳細は再度後述する。
【００２４】
耐タンパメモリ２０２は、製品本体装置１と端末２との相互認証に用いられる各種データを格納するためのメモリである。例えば、管理装置３を介して入力される「製品ＩＤリスト」、「履歴用認証キー」、「鍵情報」、「保守部（写し）」、及び「有効期限情報」を保持する。なお、耐タンパ（性）とは、一つに、格納されるデータなどに対する解析の困難さをいう。よって、耐タンパメモリ２０２は、外部から読み取りにくいようにその機密性を高めた構造となっており、また、外部から無理にデータを読み取ろうとすると、データが破壊される機構が設けられている。また、耐タンパメモリ２０２では、不正な本体製品装置１を検知した場合や、「有効期限情報」で規定されている有効期限を経過した場合についても、メモリ内に格納される全データが消去されるようになっている。よって、端末２の盗難時などでも耐タンパメモリ２０２内の各種データを保護するので、例えば、端末２の模造品等を用いて製品本体装置１との相互認証が行われるといった事態を防止できる。
【００２５】
認証デバイス２０３は、製品本体装置１の認証を行うための認証デバイス（例えば、セキュリティチップ等）である。本実施形態にかかる認証デバイス２０３は、製品本体装置１の製造コスト低減の観点から、製品本体装置１側ではなく端末２側に設けられている。なお、これに対し、従来の認証デバイスは、製品本体装置１の基盤上などに設けられており、製品本体装置１がアプリケーションを実行する際、基板上の認証デバイスとの認証プロセスを経てアプリケーションの実行が可能となる。
【００２６】
履歴用メモリ２０４は、監視部２０１からの相互認証に関する履歴（ログ）を格納するためのメモリである。履歴用メモリ２０４の履歴は、管理装置３により読み出され、管理等に活用される。なお、履歴用メモリ２０４に対して書き込みを行う場合、耐タンパメモリ２０２の「履歴用認証キー」が必要である。但し、読み出しを行う場合、「履歴用認証キー」は必要ない。
【００２７】
以上、これらの各機能部は、製品本体装置１及び端末２を構成するコンピュータのＣＰＵ、ＲＯＭ、ＲＡＭ等のハードウェア資源上で実行されるコンピュータプログラムによって実現されるものである。「手段」、「モジュール」、「ユニット」、又は「回路」などと読替えてもよい。また、耐タンパメモリ２０２や履歴用メモリ２０４は、不揮発性メモリにより実現されうるが、揮発性メモリであっても本実施形態の目的を遂行しうる範囲内でデータを保持可能であればよい。
【００２８】
（ハードウェア）
図２は、本実施形態にかかる製品本体装置１、端末２及び管理装置３のハードウェア構成の一例を示す図である。製品本体装置１、端末２及び管理装置３は、主要な構成として、ＣＰＵ１１、ＲＯＭ１２、ＲＡＭ１３、ＨＤＤ１４、インターフェース１５、入力装置１６、表示装置１７、及び通信装置１８を有する。
【００２９】
ＣＰＵ１１は、マイクロプロセッサ及びその周辺回路から構成され、装置全体を制御する回路である。また、ＲＯＭ１２は、ＣＰＵ１１で実行される所定の制御プログラムを格納するメモリである。また、ＲＡＭ１３は、ＣＰＵ１１がＲＯＭ１２に格納された所定の制御プログラムを実行して各種の制御を行うときの作業領域として使用するメモリである。
【００３０】
ＨＤＤ１４は、ＯＳや各種プログラムを含む各種情報を格納する装置であり、不揮発性の記憶装置である。
【００３１】
インターフェース１５は、外部機器と接続するためのインターフェースである。
【００３２】
入力装置１６は、ユーザが各種入力操作を行うための装置である。
【００３３】
表示装置１７は、各種データを表示画面に表示する装置である。
【００３４】
通信装置１８は、ネットワークを介して他の機器との通信を行う装置である。有線ネットワークや無線ネットワークなど含む各種ネットワーク形態に応じた通信をサポートする。
【００３５】
なお、上記ハードウェア構成はあくまで一例である。よって、特に製品本体装置１（例えば、自動販売機等）などは製品に応じて特有のハードウェアを有してよい。
【００３６】
＜事前準備＞
次に、端末２に対する事前準備作業について説明する。管理者等は、保守員が製品本体装置１の認証を行うにあたり、例えば営業所毎に設置される管理装置３を用い、以下の通り、端末２のセットアップを行う。
【００３７】
（１）管理者等は、管理装置３と端末２とを接続する。なお、管理装置３が端末２にアクセスする際、必要に応じて認証等を行ってよい。
【００３８】
（２）管理装置３は、端末２の現在時刻を正確に調整（設定）する。
【００３９】
（３）管理装置３は、端末２の耐タンパメモリ２０２内に「有効期限情報」を格納することで、耐タンパメモリ２０２の有効期限を設定する。耐タンパメモリ２０２では、「有効期限情報」で設定された有効期限を経過した場合、メモリに格納される全データが消去される。なお、有効期限情報は、具体的な年月日時分を指定してもよいし、有効とされる期間を指定してもよい。
【００４０】
（４）管理装置３は、端末２の耐タンパメモリ２０２内に「製品ＩＤリスト」、「履歴用認証キー」、「鍵情報」、「保守部（写し）」を格納する（書き込む）。
【００４１】
「製品ＩＤリスト」は、認証予定の製品本体装置１の有する製品ＩＤのリストである。保守員は１台の端末２を用いて複数の製品本体装置１に対し認証を実施することが可能となっている。よって例えば、「製品ＩＤリスト」には、保守先に設置される製品本体装置１の製品ＩＤが複数登録される。
【００４２】
「履歴用認証キー」は、監視２０１が履歴用メモリ２０４に履歴（ログ）の書込みを行う際に用いられるアクセス用の認証キーである。
【００４３】
「鍵情報」は、製品本体装置１で暗号化されているアプリ１０２を復号化するための鍵及び鍵情報の有効期限である。
【００４４】
「保守部（写し）」は、製品本体装置１に格納されているべき正規の保守部１０１と同一データの写しである。なお、保守部１０１は製品本体装置１の認証ソフトウェアで実現されるので、「保守部（写し）」は、同認証ソフトウェアと同一のソフトウェアデータである。
【００４５】
以上、端末２のセットアップが完了すると、保守員は端末２を用いることで、製品本体装置１の認証を行えるようになる。なお、管理者等は、保守の観点から、端末２の履歴用メモリ２０４からそれまでに蓄積されている履歴（ログ）を読み出し取得してもよい。
【００４６】
＜情報処理＞
（認証処理）
図３は、本実施形態にかかる認証処理を説明するシーケンス図（その１）である。上述の端末２のセットアップは完了しており、保守員は端末２を用いることで、製品本体装置１の認証を行うものである。以下詳しく説明する。
【００４７】
Ｓ１：端末２の監視部２０１は、製品本体装置１の保守部１０１に対し、製品ＩＤを要求する。
【００４８】
Ｓ２：保守部１０１は、監視部２０１に対し、自装置の製品ＩＤを応答する。なお、製品ＩＤは、各装置が有する固有の識別子（シリアルＩＤ等）である。
【００４９】
Ｓ３：監視部２０１は、耐タンパメモリ２０２から「製品リストＩＤ」を取得する。
【００５０】
Ｓ４：監視部２０１は、「製品リストＩＤ」を取得すると、Ｓ２で取得した製品ＩＤが「製品リストＩＤ」に登録されているか否かを判定することで、製品ＩＤのチェックを行う。監視部２０１は、Ｓ２で取得した製品ＩＤが「製品リストＩＤ」に登録されていない場合、製品本体装置１を非正規（不正）と判定する。
【００５１】
Ｓ５：監視部２０１は、耐タンパメモリ２０２から「履歴用認証キー」を取得する。履歴用メモリ２０４に対して書き込みを行うには、耐タンパメモリ２０２の「履歴用認証キー」が必要だからである。
【００５２】
Ｓ６：監視部２０１は、「履歴用認証キー」を用いて、履歴用メモリ２０４に対し、製品ＩＤチェック履歴（ログ）として、Ｓ２で取得した製品ＩＤとチェック結果（製品リストＩＤに登録あり又は登録なし）とを書き込む。なお、監視部２０１は、製品リストＩＤに登録なしとのチェック結果である場合、本シーケンスの処理をＳ６で終了させる。
【００５３】
Ｓ７：次に、監視部２０１は、耐タンパメモリ２０２から「保守部（写し）」を取得する。
【００５４】
Ｓ８：監視部２０１は、取得した「保守部（写し）」を用いて、「保守部（写し）」の全領域（全記憶領域）の中から、ランダムに、ある一部領域（一部記憶領域）を決定する。なお、一部領域は、「保守部（写し）」の全領域の中、特に保守部の主要部領域の中から、ランダムにある一部領域を決定してもよい。
【００５５】
Ｓ９：監視部２０１は、保守部１０１に対し、Ｓ８で決定した一部領域を特定するための情報（例えば、その一部領域の位置する先頭アドレス、先頭アドレスからのデータ容量等）を指定パラメータとして、チャレンジ認証を要求する。
【００５６】
Ｓ１０：製品本体装置１の保守部１０１は、チャレンジ認証の要求を受け取ると、監視部２０１から受け取った一部領域を特定するための情報（例えば、その一部領域の位置する先頭アドレス、先頭アドレスからのデータ容量等）に基づいて、保守部１０１自身から、その一部領域データ（例えば、０１０１０１０・・・）を取得する。そして保守部１０１は、取得した一部領域データをハッシュ演算の入力として、チャレンジ値（ハッシュ値等）を生成する。
【００５７】
Ｓ１１：保守部１０１は、監視部２０１に対し、生成したチャレンジ値を応答する。
【００５８】
Ｓ１２：監視部２０１は、製品本体装置１の保守部１０１からチャレンジ値を受け取ると、受け取ったチャレンジ値が正しいかどうか確認することで、チャレンジ認証を実行する。
【００５９】
まず、監視部２０１は、Ｓ７で取得した「保守部（写し）」から、Ｓ８で決定した一部領域データを取得する。そして監視部２０１は、取得したその一部領域データをハッシュ演算の入力として、チャレンジ期待値を生成する。そして監視部２０１は、生成したチャレンジ期待値と、Ｓ１１で製品本体装置１の保守部１０１から受け取ったチャレンジ値とを比較し一致するか否かを判定する。監視部２０１は、生成したチャレンジ期待値と、受け取ったチャレンジ値とが一致しない場合、製品本体装置１を非正規（不正）と判定する。
【００６０】
ここで、生成したチャレンジ期待値と、受け取ったチャレンジ値とが一致しない場合には、製品本体装置１側と端末２側とで、保守部の不整合が存在する。よって、監視部２０１は、この場合、製品本体装置１側の保守部１０１は改ざんされていると判定（検知）し、製品本体装置１を非正規（不正）と判定する。
【００６１】
なお、「保守部（写し）」は保守部１０１の写しであるので、正規には本来同一であるはずである。よって、監視部２０１は、生成したチャレンジ期待値と、受け取ったチャレンジ値とが一致する場合、端末２（監視部２０１）は製品本体装置１（保守部１０１）を正規と判断する。
【００６２】
図４は、本実施形態にかかるチャレンジ算出の概念図を示す図である。監視部２０１は、保守部の全領域中から、一部領域をランダムに決定する。なお、保守部１０１が改ざんされたことがクリティカルに影響する箇所を検証できるよう主要部領域の中から一部領域をランダムに決定するとよい。
【００６３】
また、入力は、より改ざん検視品質の向上のため、一部領域データに加え、製品ＩＤや現在日時刻などの情報を入れてもよい。現在日時刻に関しては、製品本体装置１と端末２とでどこまで時刻のずれを許容できるかが問題となるが、例えば、「年月日時分」までをハッシュ演算の入力対象とした場合、端末２（監視部２０１）側では、±1分の計3つの検証値でチャレンジ検証を行えば、2分以上の時刻のずれが発生した場合に、時刻改ざんを検知することができる。
【００６４】
Ｓ１３：次に、監視部２０１は、Ｓ１１で受け取ったチャレンジ値を、認証デバイス２０３に渡す。
【００６５】
Ｓ１４：認証デバイス２０３は、監視部２０１からチャレンジ値を受け取ると、認証デバイス２０３の有する認証キー（例えば、対称キー）を用いて、チャレンジ値から不可逆のレスポンス値を生成する。なお、製品本体装置１側の保守部１０１も、認証デバイス２０３の認証キーと対になる認証キーを有している。
【００６６】
Ｓ１５：認証デバイス２０３は、生成したレスポンス値を監視部２０１に応答する。
【００６７】
Ｓ１６：監視部２０１は、保守部１０１に対し、Ｓ１２でのチャレンジ認証結果を送信すると共に、認証デバイス２０３により生成されたレスポンス値をパラメータとしてレスポンス認証を要求する。
【００６８】
Ｓ１７：製品本体装置１の保守部１０１は、一致とのチャレンジ認証結果を受け取ると、端末２側が製品本体装置１側を認証（成功）したことを認識する。そしてその上で、レスポンス認証の要求を受け取ると、今度は、Ｓ１０で生成したチャレンジ値に対してレスポンス値が正しいかどうか確認することで、製品本体装置１側が端末２側を認証するためのレスポンス認証を実行する。
【００６９】
まず、保守部１０１は、保守部１０１の有する認証キー（例えば、対称キー）を用いて、Ｓ１０で生成したチャレンジ値からレスポンス期待値を生成する。そして保守部１０１は、生成したレスポンス期待値と、Ｓ１６で端末２の監視部２０１から受け取ったレスポンス値とを比較し一致するか否かを判定する。保守部１０１は、生成したレスポンス期待値と、受け取ったレスポンス値とが一致しない場合、製品本体装置１を非正規（不正）と判定する。そしてこの場合、監視部２０１は、端末２（認証デバイス２０３）を非正規（不正）と判定する。一方、監視部２０１は、生成したレスポンス期待値と、受け取ったレスポンス値とが一致する場合、製品本体装置１（保守部１０１）は端末２（認証デバイス２０３）を正規と判断する。
【００７０】
なお、保守部１０１及び監視部２０１の有する認証キーが非対称キーの場合、監視部２０１は、公開キーを用いて、チャレンジ値からレスポンス値を生成する。一方、保守部１０１は、秘密キーを用いて、受け取ったレスポンス値からチャレンジ期待値を生成する。
保守部１０１は、チャレンジ値同士を比較し一致するか否かを判定してもよい。
【００７１】
Ｓ１８：保守部１０１は、監視部２０１に対し、Ｓ１７でのレスポンス認証結果（一致又は不一致）を送信する。
【００７２】
なお、Ｓ７〜Ｓ１８の処理については、たとえ１回の実行だけでは問題なくとも、改ざん検知の品質を向上するため、繰り返し複数回実行し、実行分全てのチャレンジ認証及びレスポンス認証において、一致との認証結果を得るようにすることが望ましい。
【００７３】
特にＳ７〜Ｓ１２のステップは、製品本体装置１の保守部１０１（認証ソフトウェア）自体が改ざんされていないかどうかを確認するものである。ここで、保守部１０１中、ランダムな一部領域に基づいてチャレンジ認証を行うため、仮に改ざん部分がランダムな一部領域外に存在する場合、改ざんの存在を検知することはできない。その一方、保守部１０１中、全領域に基づいてチャレンジ認証を行えば、もれなく改ざんの存在を検知することはできるが、反面、その認証にかかる処理負荷は増大してしまう。
【００７４】
よって、本実施形態では、一部領域をチャレンジ認証の対象領域とすることで処理負担を抑えると共に、複数回の実行により改ざん検知の品質を向上させるようにしたものである。また、一部領域は、常に固定の一部領域ではなくランダムな一部領域が決定されるので、これにより、改ざん検知の品質をより向上させることができる。なお、固定の一部領域が決定されるとすると、改ざん部分が固定の一部領域外に存在する場合、改ざんの存在を検知することはできないからである。
【００７５】
Ｓ１９：監視部２０１は、「履歴用認証キー」を用いて、履歴用メモリ２０４に対し、チャレンジ認証及びレスポンス認証履歴（ログ）として、Ｓ２で取得した製品ＩＤと認証結果（一致又は不一致）とを書き込む。監視部２０１は、不一致との認証結果である場合、本シーケンスの処理をＳ１９で終了させる。なお、上述したように、Ｓ１９に至る前に、Ｓ７〜Ｓ１８の処理は繰り返し複数回実行されていることが望ましい。
【００７６】
図５は、本実施形態にかかる認証処理を説明するシーケンス図（その２）である。上述のＳ１９に続くステップについて説明する。
【００７７】
Ｓ２０：端末２の監視部２０１は、Ｓ７で取得した「保守部（写し）」を用いて、改めて「保守部（写し）」の全領域の中から、ランダムにある一部領域を決定する。また、一部領域は、「保守部（写し）」の全領域の中、特に保守部の主要部領域の中から、ランダムにある一部領域を決定してもよい。
【００７８】
Ｓ２１：監視部２０１は、「保守部（写し）」から、Ｓ２０で決定した一部領域データを取得する。そして監視部２０１は、取得したその一部領域データを用いて、通信鍵を生成する。通信鍵とは、製品本体装置１に「鍵情報」を安全に送信するための暗号化鍵である。
【００７９】
Ｓ２２：監視部２０１は、耐タンパメモリ２０２から「鍵情報」を取得する。
【００８０】
Ｓ２３：監視部２０１は、取得した「鍵情報」を、Ｓ２１で生成した通信鍵で暗号化する。
【００８１】
Ｓ２４：監視部２０１は、保守部１０１に対し、Ｓ２０で決定した一部領域を特定するための情報（例えば、その一部領域の位置する先頭アドレス、先頭アドレスからのデータ容量等）を指定パラメータとして、暗号化した「鍵情報」を送信する。
【００８２】
Ｓ２５：製品本体装置１の保守部１０１は、暗号化された「鍵情報」を受け取ると、監視部２０１から受け取った一部領域を特定するための情報（例えば、その一部領域の位置する先頭アドレス、先頭アドレスからのデータ容量等）に基づいて、保守部１０１自身から、一部領域データを取得する。そして保守部１０１は、取得したその一部領域データを用いて、通信鍵を生成する。この通信鍵とは、保守部１０１で暗号化された「鍵情報」を復号するための復号化鍵ある。
【００８３】
Ｓ２６：保守部１０１は、暗号化された「鍵情報」を、Ｓ２５で生成した通信鍵で復号化する。
【００８４】
Ｓ２７：保守部１０１は、復号化した「鍵情報」でアプリ１０２を復号する。なお、
上述したように、アプリ１０２は、初期状態において暗号化されている。
【００８５】
Ｓ２８：保守部１０１は、復号したアプリ１０２をＲＡＭ１０３に展開することで、アプリ１０２を実行する。これにより、製品本体装置１が製品としての機能を実行（稼働）させることができる。
【００８６】
なお、上述したように、「鍵情報」は、製品本体装置１で暗号化されているアプリ１０２を復号化するための鍵の他、鍵情報の有効期限を含んでいる。従って、保守部１０１は、「鍵情報」の有効期限を管理し、有効期限が切れた場合、アプリ１０２の実行を停止する。例えば、ＲＡＭ１０３上に展開されているアプリ１０２を消去してよい。これにより、例えば、製品本体装置１が稼働中に盗難された場合でも、有効期限経過後には、製品本体装置１は製品としての機能を停止させることができる。
【００８７】
また、保守部１０１は、「鍵情報」のうち、アプリ１０２を復号化するための鍵については、例えばＳ２７の後に消去する。鍵の盗難を防止するためである。
【００８８】
（端末２が耐タンパメモリ２０２をクリアするケース）
以上より、端末２が耐タンパメモリ２０２をクリア（消去）するケースは、以下の通りである。
【００８９】
（ａ１）端末２が製品本体装置１を非正規（不正）と判断
・製品本体装置１から取得した製品ＩＤが製品ＩＤリストに登録なし
・製品本体装置１から取得得したチャレンジ値の認証結果が不一致（図３のＳ１２）
（ａ２）端末２の耐タンパメモリ２０２の有効期限切れ
（ａ３）端末２がタンパ検知（耐タンパメモリ２０２のこじ開け等）
（製品本体装置１がアプリ１０２を停止しＲＡＭ１０３をクリアするケース）
また、製品本体装置１がアプリ１０２を停止しＲＡＭ１０３をクリアするケースは、以下の通りである。
【００９０】
（ｂ１）製品本体装置１が端末２を非正規（不正）と判断
・端末２から取得したレスポンス値の認証結果が不一致（図３のＳ１７）
（ｂ２）製品本体装置１の「鍵情報」の有効期限切れ
＜総括＞
本実施形態にかかる製品本体装置１は、デッドコピーを防ぐ手立てとしての認証デバイスを有しない。これにより、製品毎に認証デバイスを組み込まなくてよいので、製品の製造コストを低減することができる。一方、認証デバイスは端末２側で有しており、１台の端末２を用いて複数の製品本体装置１に対し認証を実施することが可能である。
【００９１】
また、製品本体装置１と認証デバイス（端末２）とを分離したことに伴い、製品本体装置１及び認証デバイス（端末２）それぞれが正規品であることを確認するため、製品本体装置１及び端末２は相互認証を行う。これにより、製品本体装置１及び端末２のそれぞれが、非正規（不正）な相手を用いて認証がなされてしまうことを防止できる。
【００９２】
以上のように、本実施形態によれば、製品の製造コストを低減しながら、認証デバイスを用いた正規品認証を行える認証システム等を提供することが可能である。なお、本発明は、特定の実施形態例に限定されるものではなく、特許請求の範囲に記載された範囲内において、種々の変形及び変更が可能である。また、実施形態例の構成要素を全部又は複数を組み合わせることも可能である。
【符号の説明】
【００９３】
１           製品本体装置
２           端末
３           管理装置
１１       ＣＰＵ
１２       ＲＯＭ
１３       ＲＡＭ
１４       ＨＤＤ
１５       インターフェース
１６       入力装置
１７       表示装置
１８       通信装置
１００    認証システム
１０１    保守部
１０２    アプリ
１０３    ＲＡＭ
２０１    監視部
２０２    耐タンパメモリ
２０３    認証デバイス
２０４    履歴用メモリ
【図１】
2014238721.tif 000003
【図２】
2014238721.tif 000004
【図３】
2014238721.tif 000005
【図４】
2014238721.tif 000006
【図５】
2014238721.tif 000007