(57)【要約】【課題】  暗号アルゴリズムに基づいた演算を行うことなく、被認証装置を認証するための鍵が取得されるのを困難にし、秘匿性の高い認証を行う技術的手段を提供する。【解決手段】  セキュリティ装置１０は、複数回に亙って被認証装置である制御装置２０に応答要求を送信し、応答要求を送信する都度、当該応答要求を送信してから当該応答要求に対する応答を受信するまでの経過時間を求め、この経過時間と、応答要求と応答との間の時間間隔をｍ値情報（本実施例ではｍ＝２）の各値に対応付ける対応表１３４ｂとから制御装置２０の鍵４０を構成する各ｍ値情報を判定する。判定して得たｍ値情報の情報列（ビット列）とセキュリティ装置１０が予め記憶している制御装置２０の固有鍵４０ａとを照合して制御装置２０の認証を行う。【選択図】図４
2015015536.tif 000002
【特許請求の範囲】
【請求項１】
認証対象となる被認証装置に応答要求を送信してから応答を受信するまでの時間間隔に基づいて前記被認証装置が記憶している認証用の鍵を復元して前記被認証装置の認証を行う認証手段を具備することを特徴とするセキュリティ装置。
【請求項２】
前記鍵は、複数のｍ値情報（ｍは２以上の整数）の情報列であり、
前記認証手段は、
応答要求と応答との間の時間間隔を前記ｍ値情報の各値に対応付ける対応表と、
複数回に亙って前記被認証装置に応答要求を送信し、前記応答要求を送信する都度、当該応答要求を送信してから当該応答要求に対する応答を受信するまでの経過時間を求め、この経過時間と前記対応表とから前記鍵を構成する各ｍ値情報を判定する鍵復元手段と、
を具備することを特徴とする請求項１に記載のセキュリティ装置。
【請求項３】
新しい前記鍵を生成し、生成した前記鍵を構成する各ｍ値情報を前記対応表に従って応答要求と応答との間の時間間隔に変換し、複数回に亙って前記被認証装置から応答を受信し、前記応答を受信する都度、当該応答を受信してから前記対応表に従って変換して得た時間間隔が示す時間が経過したときに次の応答要求を送信して、前記被認証装置に応答の送信から応答要求の受信までの経過時間を取得させる鍵更新手段、
を具備することを特徴とする請求項１または２に記載のセキュリティ装置。
【請求項４】
請求項１または２に記載のセキュリティ装置と、
応答要求と応答との間の時間間隔を示すデータのデータ列の形態で前記鍵を記憶しており、応答要求を受信してから前記鍵が示す時間間隔が経過したときに当該応答要求に対する応答を送信する制御を行う被認証装置と、
を具備することを特徴とする認証システム。
【請求項５】
請求項３に記載のセキュリティ装置と、
応答を送信してから次の応答要求を受信するまでの経過時間を求め、この経過時間が示すデータのデータ列を前記鍵として記憶する制御を行う被認証装置と、
を具備することを特徴とする認証システム。
【請求項６】
コンピュータを、
認証対象となる被認証装置に応答要求を送信してから応答を受信するまでの時間間隔に基づいて前記被認証装置が記憶している認証用の鍵を復元して前記被認証装置の認証を行う認証手段として機能させることを特徴とする認証プログラム。
【請求項７】
セキュリティ装置が、認証対象となる被認証装置に応答要求を送信してから応答を受信するまでの時間間隔に基づいて前記被認証装置が記憶している認証用の鍵を復元して前記被認証装置の認証を行うことを特徴とする認証方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、セキュリティ装置、セキュリティ装置を含む認証システム、認証プログラムおよび認証方法に関する。
【背景技術】
【０００２】
各種の制御装置（例えばインバータ装置など）が正規品であるか否かを確認する認証技術がある。この種の技術では、一般に、認証対象である被認証装置（すなわち各種の制御装置）に当該被認証装置を認証するための鍵を記憶しておくとともに、当該被認証装置とは別個の外部装置であり、被認証装置の認証を行う装置であるセキュリティ装置に当該被認証装置の鍵を記憶しておく。セキュリティ装置は、被認証装置が記憶している鍵とセキュリティ装置が記憶している鍵とを照合してそれらが一致する場合、当該被認証装置は正規品である、と判断する。
【０００３】
また、特許文献１に被認証装置が正規品であるか否かを暗号アルゴリズムを用いて認証するシステムが開示されている。特許文献１の認証システムにおいて、セキュリティ装置（ホストコンピュータ）は、複数の乱数を発生してそれらを記憶するとともに被認証装置（小型情報機器）に送信する。被認証装置は、受信した複数の乱数のうち何れかを選択して、選択した乱数に所定の暗号アルゴリズムに基づいた演算を施して加工信号を生成し、生成した加工信号をセキュリティ装置に送信する。セキュリティ装置は、被認証装置から加工信号を受信するとともに、記憶した複数の乱数に所定の暗号アルゴリズムに基づいた演算を施して正規品の判定に用いる複数の判定演算結果を生成する。そして、セキュリティ装置は、受信した加工信号と生成した複数の判定演算結果とを照合して、加工信号が複数の判定演算結果のうちの何れかと一致する場合、被認証装置は正規品である、と判断する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−１８７６７９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
被認証装置が記憶している鍵とセキュリティ装置が記憶している鍵とを照合する認証技術は、一般に、セキュリティ装置と被認証装置との間の通信のフレームに鍵を示す情報を格納して当該鍵の授受を行っている。このため、盗聴などにより通信のフレームの内容を知られてしまうと、当該鍵を容易に取得されてしまう、という問題がある。当該鍵が容易に取得されると、取得された鍵を記憶した模倣品を正規品と判断してしまう恐れがある。
【０００６】
また、特許文献１の認証システムは、盗聴などにより通信のフレームの内容を知られてしまっても、被制御装置が何れの乱数を選択したかを容易に判定することができないため、認証アルゴリズムを容易に解読することができない、という効果がある。しかし、この認証システムは、乱数に所定の暗号アルゴリズムに基づいた演算を施すプログラムを実装するだけのプログラム実装容量がなく動作クロック数の低い安価なマイクロプロセッサユニットを搭載している被認証装置の認証に適用することができない、という問題がある。
【０００７】
この発明は以上のような事情に鑑みてなされたものであり、暗号アルゴリズムに基づいた演算を行うことなく、被認証装置を認証するための鍵が取得されるのを困難にし、秘匿性の高い認証を行う技術的手段を提供することを目的としている。
【課題を解決するための手段】
【０００８】
この発明によるセキュリティ装置は、認証対象となる被認証装置に応答要求を送信してから応答を受信するまでの時間間隔に基づいて前記被認証装置が記憶している認証用の鍵を復元して前記被認証装置の認証を行う認証手段を具備することを特徴とする。ここでは、装置として表現されているが、システム、プログラムおよび方法により実現されるとしてもよい。
【発明の効果】
【０００９】
この発明によれば、被認証装置に応答要求を送信してから応答を受信するまでの時間間隔に基づいて鍵を復元しており、被認証装置とセキュリティ装置との間の通信のフレームに鍵を示す情報を含めなくて良いため、盗聴などにより通信のフレームの内容が知られたとしても鍵が取得されるのを困難にすることができる。また、暗号アルゴリズムに基づいた演算を行っていないため、プログラム実装容量が少なく動作クロック数の低い安価なマイクロプロセッサユニットを搭載している被認証装置が認証対象であっても当該被認証装置の認証を行うことができる。従って、本発明のセキュリティ装置を用いて秘匿性の高い認証システムを実現することができる。
【図面の簡単な説明】
【００１０】
【図１】この発明の一実施形態であるセキュリティ装置１０を含む認証システム１の構成を示すブロック図である。
【図２】同セキュリティ装置１０の不揮発性記憶部１３４に記憶されている対応表１３４ｂの例を示す図である。
【図３】同セキュリティ装置１０が制御装置２０を認証するときのセキュリティ装置１０および制御装置２０の各動作を示すフローチャートである。
【図４】同セキュリティ装置１０が制御装置２０を認証するときのセキュリティ装置１０と制御装置２０との間の通信の内容を示すシーケンス図である。
【図５】制御装置２０の固有鍵を更新するときのセキュリティ装置１０および制御装置２０の各動作を示すフローチャートである。
【図６】制御装置２０の固有鍵を更新するときのセキュリティ装置１０と制御装置２０との間の通信の内容を示すシーケンス図である。
【図７】制御装置２０に初めて電源が投入される場合においてセキュリティ装置１０が制御装置２０を認証するときのセキュリティ装置１０および制御装置２０の各動作を示すフローチャートである。
【図８】この発明の他の実施形態において用いる対応表の内容を例示する図である。
【発明を実施するための形態】
【００１１】
以下、図面を参照し、この発明の実施形態について説明する。
＜実施形態＞
（セキュリティ装置１０を含む認証システム１の構成）
図１は、この発明の一実施形態によるセキュリティ装置１０を含む認証システム１の構成を示すブロック図である。認証システム１は、認証を行う装置であるセキュリティ装置１０と、認証対象となる被認証装置（本実施形態では制御装置２０）と、セキュリティ装置１０と制御装置２０との間の通信を媒介する通信線３０とから構成される。認証システム１において、被認証装置である制御装置２０は、当該制御装置２０に固有の鍵（以下、固有鍵という）４０ｂを記憶している。また、セキュリティ装置１０は、正規の制御装置２０が記憶している固有鍵４０ｂと同じ内容を示す固有鍵４０ａを記憶している。認証システム１では、セキュリティ装置１０が制御装置２０から固有鍵４０ｂの内容に関する情報を受け取り、この受け取った情報に基づいて制御装置２０が記憶している固有鍵４０ｂを求め、この固有鍵４０ｂを固有鍵４０ａと比較することにより、制御装置２０が正規品であるか否かを確認するシステムである。本実施形態の特徴は、セキュリティ装置１０が制御装置２０から固有鍵４０ｂの内容に関する情報を受け取るための方法にある。なお、以下では、制御装置２０が記憶している固有鍵４０ｂとセキュリティ装置１０が記憶している制御装置２０の固有鍵４０ａを各々区別する必要がない場合には、制御装置２０の固有鍵４０という。
【００１２】
制御装置２０は、例えば、インバータ装置や自動販売機などの認証すべき各種装置である。制御装置２０は、制御部２１０、通信インターフェース（以下、通信Ｉ／Ｆという）２２０、記憶部２３０、およびこれら構成要素間のデータの授受を媒介するバス２４０を有している。記憶部２３０は、揮発性記憶部２３２および不揮発性記憶部２３４を有している。揮発性記憶部２３２は、例えばＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）であり、制御部２１０によりワークエリアとして利用される。不揮発性記憶部２３４は、例えばハードディスクドライブ、フラッシュメモリ、ＥＥＰＲＯＭ（Ｅｌｅｃｔｒｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ：電気的に書き換え可能な読み出し専用メモリ）などである。不揮発性記憶部２３４には、本実施形態に特有なものとして当該制御装置２０の固有鍵４０ｂが格納されている。制御部２１０は、例えばコンピュータのＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ：中央処理装置）であり、記憶部２３０に格納されているプログラムを実行することにより制御装置２０の各部を制御する制御中枢である。通信Ｉ／Ｆ２２０は、外部機器と制御部２１０との間の通信を行うための回路である。通信Ｉ／Ｆ２２０には、セキュリティ装置１０と接続している通信線３０が接続されている。本実施形態において、制御装置２０は、セキュリティ装置１０から送信される応答要求（リクエスト：Ｒｅｑｕｅｓｔ）に対する応答（レスポンス：Ｒｅｓｐｏｎｓｅ）を行う。
【００１３】
固有鍵４０ｂは、複数の応答要求／応答間の時間間隔を示すデータを並べたデータ列の形態で不揮発性記憶部２３４に格納されている。より詳細に説明すると、固有鍵４０ｂは、制御装置２０が応答要求を受信してから応答要求に対する応答を送信するまでの時間間隔（すなわち待機時間）を示すデータを並べたものである。例えば、待機時間１２０ｍｓ（ミリ秒）を示すデータ「１２０」と待機時間１４０ｍｓを示すデータ「１４０」とが、１２０、１４０、１４０、１２０、１４０・・・のように並べられている、という具合である。また、固有鍵４０ｂは、認証すべき制御装置２０毎に固有に設定されている。例えば、応答要求／応答間の時間間隔を示すデータが異なる順序で並べられるなどである。
【００１４】
セキュリティ装置１０は、制御部１１０、通信Ｉ／Ｆ１２０、記憶部１３０、およびこれら構成要素間のデータ授受を媒介するバス１４０を有している。通信Ｉ／Ｆ１２０は、外部機器と制御部１１０との間の通信を行うための回路である。通信Ｉ／Ｆ１２０には、制御装置２０と接続している通信線３０が接続されている。制御部１１０は、例えばコンピュータのＣＰＵであり、記憶部１３０に格納されているプログラムを実行することによりセキュリティ装置１０の各部を制御する制御中枢である。記憶装置１３０は、揮発性記憶部１３２および不揮発性記憶部１３４を有している。揮発性記憶部１３２は、例えばＲＡＭである。揮発性記憶部１３２は、制御部１１０によりワークエリアとして利用される。不揮発性記憶部１３４は、例えばハードディスクドライブ、フラッシュメモリ、ＥＥＰＲＯＭなどである。不揮発性記憶部１３４には、本実施形態に特有なものとして認証プログラム１３４ａ、対応表１３４ｂおよび制御装置２０の固有鍵４０ａが格納されている。本実施形態において、制御装置２０の固有鍵４０ａは、制御装置２０を認証するための制御装置２０毎に固有に設定されている鍵であり、複数の２値情報（ビット）を並べたビット列の形態で不揮発性記憶部１３４に格納されている。
【００１５】
本実施形態において、セキュリティ装置１０は、制御装置２０が記憶している固有鍵４０ａの各ビットの内容を問い合わせるために、複数回に亙って応答要求を制御装置２０に送信する。制御装置２０は、応答要求を受け取る都度、固有鍵４０ｂの先頭のデータから順に送信対象として選択し、応答要求の受信から送信対象のデータが示す待機時間だけ経過したタイミングにおいてセキュリティ装置１０に応答を返す。このように本実施形態において、制御装置２０は、応答要求を受け取ってから応答を返すまでの待機時間により、送信対象である固有鍵４０ｂの内容をセキュリティ装置１０に引き渡す。そして、セキュリティ装置１０では、応答要求を送信してから当該応答要求に対する応答を受信するまでの時間間隔に基づき、送信対象である固有鍵４０ｂの内容を判断する。対応表１３４ｂは、この応答要求の送信から応答の受信までの時間間隔から制御装置２０に記憶された固有鍵４０ｂの内容を判断するときに参照する表である。
【００１６】
対応表１３４ｂは、応答要求と応答との間の時間間隔をｍ値情報（ｍは２以上の整数、本実施形態ではｍ＝２）の各値に対応付けた表である。図２は、対応表１３４ｂの例を示す図である。この例において、対応表１３４ｂは、応答要求／応答間の時間間隔Ａが１１０ｍｓ以上１３０ｍｓ未満の場合、当該応答要求／応答間の時間間隔Ａを固有鍵の構成ビットの０に対応付け、応答要求／応答間の時間間隔Ａが１３０ｍｓ以上１５０ｍｓ未満の場合、当該応答要求／応答間の時間間隔Ａを固有鍵の構成ビットの１に対応付けている。すなわち、対応表１３４ｂは、１の応答要求／応答間の時間間隔を１ビットにおける０または１に対応付けている。この対応表１３４ｂを用いることにより、複数の応答要求／応答間の時間間隔を複数の２値情報（ビット）を並べたビット列に変換することができ、また、２値情報（ビット）を並べたビット列を複数の応答要求／応答間の時間間隔に変換することができる。すなわち、この対応表１３４ｂを用いることにより、応答要求／応答間の時間間隔の形態で表現されている固有鍵４０ｂとビット列の形態で表現されている固有鍵４０ａとを比較することができる。
【００１７】
認証プログラム１３４ａは、認証対象となる制御装置２０（被認証装置）に応答要求を送信してから応答を受信するまでの時間間隔に基づいて制御装置２０が記憶している認証用の鍵を復元して制御装置２０の認証を行うプログラムである。認証プログラム１３４ａは、鍵復元処理１３４ａ１、認証処理１３４ａ２、鍵更新処理１３４ａ３を含んでいる。鍵復元処理１３４ａ１は、制御装置２０に記憶されている固有鍵４０ｂを取得して復元する処理である。具体的には、複数回に亙って制御装置２０に応答要求を送信し、応答要求を送信する都度、当該応答要求を送信してから当該応答要求に対する応答を受信するまでの経過時間を求め、この経過時間と対応表１３４ｂとから制御装置２０の固有鍵４０を構成する各ｍ値情報を判定する。これにより、制御装置２０に記憶されている当該制御装置２０の固有鍵４０ｂが示すｍ値情報の情報列が復元される。認証処理１３４ａ２は、鍵復元処理１３４ａ１により得られたｍ値情報の情報列（ビット列）とセキュリティ装置１０の不揮発性記憶部１３４に格納されている制御装置２０の固有鍵４０ａ（ビット列）とを照合することにより制御装置２０の認証を行う処理である。鍵更新処理１３４ａ３は、新しい固有鍵４０を生成し、生成した固有鍵４０を構成する各ｍ値情報を対応表１３４ｂに従って応答要求と応答との間の時間間隔に変換し、複数回に亙って制御装置２０から応答を受信し、応答を受信する都度、当該応答を受信してから対応表１３４ｂに従って変換して得た時間間隔が示す時間が経過したときに次の応答要求を送信して、制御装置２０に応答の送信から応答要求の受信までの経過時間を取得させる処理である。認証プログラム１３４ａの各処理の内容は、動作の説明において詳述する。そして、制御部１１０は、認証プログラム１３４ａを実行する認証手段として機能する。
以上が、セキュリティ装置１０を含む認証システム１の構成である。
【００１８】
（動作例１）
次に、セキュリティ装置１０を含む認証システム１における認証動作について説明する。図３は、セキュリティ装置１０が制御装置２０を認証するときのセキュリティ装置１０および制御装置２０の各動作を示すフローチャートである。図３のフローチャートは、セキュリティ装置１０の制御部１１０が認証プログラム１３４ａを実行することにより行われる処理の内の鍵復元処理１３４ａ１および認証処理１３４ａ２に関連する内容を示したものである。なお、図３は、すでに一度電源が投入されたことのある制御装置２０に対して行われる処理を示している。また、認証プログラム１３４ａは、定期的または不定期に実行される。
【００１９】
図４は、セキュリティ装置１０が制御装置２０を認証するときのセキュリティ装置１０と制御装置２０との間の通信の内容を示すシーケンス図である。図４に示すシーケンスは、図３のフローチャートにおける認証開始要求ＳＡ３０１、固有鍵の伝達ＳＡ３０２および認証結果通知ＳＡ３０３およびＳＡ３０４の詳細を示したものである。図４に示すように、セキュリティ装置１０と制御装置２０との間は、応答要求（リクエスト）／応答（レスポンス）型の通信が行われる。以下、図３および図４を参照しながら説明する。
【００２０】
セキュリティ装置１０の制御部１１０は、認証の開始を要求する応答要求ＲＱＳ（認証開始要求）を制御装置２０に送信する（ＳＡ３０１）とともに、不揮発性記憶部１３４に記憶されている制御装置２０の固有鍵４０ａを揮発性記憶部１３２の所定の記憶領域に読み込む（ＳＡ１０２）。制御装置２０は、受信した認証開始要求に対する応答ＲＳＳ（認証開始応答）をセキュリティ装置１０に送信するとともに、不揮発性記憶部２３４に記憶されている固有鍵４０ｂを揮発性記憶部２３２の所定の記憶領域に読み込む（ＳＡ２０２）。制御装置２０は、この認証開始要求ＲＱＳおよび認証開始応答ＲＳＳを契機として、以後、セキュリティ装置１０からの応答要求に対して固有鍵４０ｂが示す待機時間（応答要求／応答間の時間間隔）が経過した後に応答を送信する（ＳＡ２０３）。
【００２１】
より詳細に説明すると、認証開始応答ＲＳＳを受信したセキュリティ装置１０は、認証開始後の最初の応答要求ＲＱ１を制御装置２０に送信するとともに、セキュリティ装置１０が内蔵するタイマにより応答要求ＲＱ１を送信してからの経過時間を計時する。制御装置２０は、応答要求ＲＱ１を受信すると、制御装置２０が内蔵するタイマにより応答要求ＲＱ１を受信してからの経過時間を計時する。そして、制御装置２０は、固有鍵４０ｂが示す一連の待機時間データにおける先頭のデータが示す待機時間（例えば１２０ｍｓ）が経過したときに応答ＲＳ１をセキュリティ装置１０に送信する。このとき、応答要求ＲＱ１および応答ＲＳ１には、各々任意のデータ、すなわち認証や固有鍵４０に関するデータとは無関係のデータが格納されている。応答要求ＲＱ１に対する応答ＲＳ１を受信したセキュリティ装置１０は、セキュリティ装置１０のタイマにより応答要求ＲＱ１を送信してから応答ＲＳ１を受信するまでの経過時間Ａ１（応答要求ＲＱ１／応答ＲＳ１間の時間間隔Ａ１）を取得する。
【００２２】
次に、セキュリティ装置１０の制御部１１０は、取得した応答要求ＲＱ１／応答ＲＳ１間の時間間隔Ａ１と対応表１３４ｂとを照合して、当該応答要求ＲＱ１／応答ＲＳ１間の時間間隔Ａ１を２値情報に変換する。例えば、取得した応答要求ＲＱ１／応答ＲＳ１間の時間間隔Ａ１が１２２ｍｓの場合、１１０ｍｓ以上１３０ｍｓ未満であるため、当該応答要求ＲＱ１／応答ＲＳ１間の時間間隔Ａ１は２値情報の０に変換される。そして、変換された２値情報（先の例における０）は、制御装置２０の固有鍵４０を示すビット列における１桁目のビットを示す値としてレジスタに格納される。
【００２３】
引き続き同様にして、セキュリティ装置１０は、応答要求の送信と応答の受信を認証開始後からｎ回（ｎは複数）順次交互に繰り返す。このとき、認証開始後の応答要求と応答は、セキュリティ装置１０が予め記憶している制御装置２０の固有鍵４０ａのビット列の桁数分だけ繰り返される。そして、セキュリティ装置１０は、認証開始後からｎ回目の応答要求の送信の後に、固有鍵４０ｂにおける先頭からｎ番目のデータが示す待機時間が経過したときに制御装置２０が送信する応答ＲＳｎを受信する。このとき、応答要求ＲＱｎおよび応答ＲＳｎには各々任意のデータが格納されている。セキュリティ装置１０は、計時により取得したｎ回目の応答要求ＲＱｎ／応答ＲＳｎ間の時間間隔Ａｎと対応表１３４ｂとを照合して、応答要求ＲＱｎ／応答ＲＳｎ間の時間間隔Ａｎを２値情報に変換する。そして、セキュリティ装置１０は、変換した２値情報をｎ桁目のビットを示す値としてレジスタに格納する。このようにしてレジスタに２値情報が順次格納されて蓄積される。このとき、具体的には、１〜８回目までの応答要求／応答間の時間間隔Ａ１〜Ａ８に対応する各々の２値情報は、１バイト目の１桁目から８桁目のビットを示す値としてレジスタに順次格納され、９回目〜１６回目までの応答要求／応答間の時間間隔Ａ９〜Ａ１６に対応する各々の２値情報は、２バイト目の１桁目から８桁目のビットを示す値としてレジスタに順次格納されるという具合に、ｋ（ｋは複数であり、ｋ×８＝ｎ）バイト分のデータがレジスタに順次格納される。このようにして、セキュリティ装置１０は、制御装置２０が記憶している固有鍵４０ｂの内容を示すｎ桁（ｋバイト）のビット列を取得する。（以上、ＳＡ２０３、ＳＡ３０２、ＳＡ１０３およびＳＡ１０４）。
【００２４】
次に、セキュリティ装置１０の制御部１１０は、応答要求と応答により取得した制御装置２０の固有鍵４０ｂの内容を示すビット列と予めセキュリティ装置１０に記憶されている制御装置２０の固有鍵４０ａのビット列とを照合してそれらが一致するか否かの判断を行う（ＳＡ１０５）。制御部１１０は、これらが一致する場合、取得した制御装置２０の固有鍵４０ｂを受理（アクセプト）して認証が成功する（すなわち、制御装置２０は正規品であると判断する）（ＳＡ１０６）。一方、これらが一致しない場合、取得した制御装置２０の固有鍵４０ｂを棄却（リジェクト）して認証が失敗する（すなわち、制御装置２０は正規品ではないと判断する）（ＳＡ１０７）。なお、この判断結果は、セキュリティ装置１０の表示装置などに表示されても良い。
【００２５】
セキュリティ装置１０は、ステップＳＡ１０５の判断結果を含む応答要求ＲＱＥ（認証結果通知）を制御装置２０に送信する（ＳＡ３０３、ＳＡ３０４）。制御装置２０は、応答要求ＲＱＥに対する応答ＲＳＥ（認証結果応答）をセキュリティ装置１０に送信するとともに、認証結果の内容を判断する（ＳＡ２０５）。すなわち、制御装置２０の制御部２１０は、固有鍵４０ｂが受理されて認証が成功した旨を示す応答要求ＲＱＥを受信した場合、以後、制御装置２０が本来すべき制御（例えば制御装置２０がインバータ装置であれば電動機の駆動制御など）における機能の制限を行わない設定を行う（ＳＡ２０６）。一方、固有鍵４０ｂが棄却されて認証が失敗した旨を示す応答要求ＲＱＥを受信した場合、以後、制御装置２０が本来すべき制御における機能の制限を付加する制御や制御装置２０の一部を停止する制御などを行う（ＳＡ２０７）。
以上が、セキュリティ装置１０が制御装置２０を認証する認証動作である。
【００２６】
（動作例２）
次に、制御装置２０の固有鍵４０ｂを更新する鍵更新動作を説明する。図５は、制御装置２０の固有鍵４０ｂを更新するときのセキュリティ装置１０および制御装置２０の各動作を示すフローチャートである。図５のフローチャートは、セキュリティ装置１０の制御部１１０が認証プログラム１３４ａを実行することにより行われる処理の内の鍵更新処理１３４ａ３に関連する内容を示したものである。また、図６は、制御装置２０の固有鍵４０ｂを更新するときのセキュリティ装置１０と制御装置２０との間の通信の内容を示すシーケンス図である。図６は、図５のフローチャートにおける新しい固有鍵の伝達ＳＢ３０１および更新結果通知ＳＢ３０２の詳細を示したものである。
【００２７】
まず、セキュリティ装置１０の制御部１１０は、当該セキュリティ装置１０の不揮発性記憶部１３４に記憶する制御装置２０の新しい固有鍵４０を示すビット列を生成する（ＳＢ１０１）。次に、生成した新しい固有鍵４０と対応表１３４ｂとを照合して新しい固有鍵４０をビット列から応答要求／応答間の時間間隔を示すデータ列に変換する（ＳＢ１０２）。次に、セキュリティ装置１０は、鍵更新動作を開始する応答要求ＲＱＫＳ（鍵更新要求）を制御装置２０に送信する。制御装置２０は、応答要求ＲＱＫＳを受信すると、固有鍵４０の更新を開始する。より詳細に説明すると、制御装置２０は、鍵更新開始後の最初の応答ＲＳＫＳ（鍵更新応答）をセキュリティ装置１０に送信するとともに、応答ＲＳＫＳを送信してからの経過時間を計時する。応答ＲＳＫＳを受信したセキュリティ装置１０は、応答ＲＳＫＳを受信してからの経過時間を計時する。そして、セキュリティ装置１０は、対応表１３４ｂにより変換して得た応答要求／応答間の時間間隔を示すデータ列における先頭のデータが示す待機時間が経過したときに鍵更新開始後の最初の応答要求ＲＱＫ１を制御装置２０に送信する。応答要求ＲＱＫ１を受信した制御装置２０は、応答ＲＳＫＳを送信してから応答要求ＲＱＫ１を受信するまでの経過時間（応答ＲＳＫＳ／応答要求ＲＱＫ１間の時間間隔ＡＫ１）を取得する。そして、制御装置２０は、取得した応答ＲＳＫＳ／応答要求ＲＱＫ１間の時間間隔ＡＫ１を示すデータを、制御装置２０の新しい固有鍵４０における先頭のデータとしてレジスタに格納する。
【００２８】
引き続き同様にして、セキュリティ装置１０は、応答要求の送信と応答の受信とを鍵更新開始後からｎ回順次繰り返す。このとき、鍵更新開始後の応答要求と応答は、新しい固有鍵４０のビット列の桁数分だけ繰り返される。そして、セキュリティ装置１０は、鍵更新開始後からｎ−１回目の応答ＲＳＫｎ−１を受信してから、対応表１３４ｂにより変換して得た応答要求／応答間の時間間隔を示すデータ列におけるｎ番目のデータが示す待機時間が経過したときに次の（ｎ回目の）応答要求ＲＱＫｎを送信する。なお、応答要求および応答は任意のデータが格納されている。そして、制御装置２０は、応答ＲＳＫｎ−１／応答要求ＲＱＫｎ間の時間間隔ＡＫｎを示すデータを、制御装置２０の新しい固有鍵４０における先頭からｎ番目のデータとしてレジスタに格納する。このようにしてレジスタに応答／応答要求間の時間間隔を示すデータが順次格納されて蓄積される（以上、ＳＢ１０３およびＳＢ２０１）。
【００２９】
制御装置２０は、このようにしてレジスタに蓄積した応答／応答要求間の時間間隔ＡＫ１〜ｎを当該制御装置２０の新たな固有鍵４０ｂ（すなわち、新たな応答要求／応答間の時間間隔を示すデータ列）として不揮発性記憶部２３４に上書きする（ＳＢ２０２）。その後、制御装置２０は、セキュリティ装置１０から送信される鍵更新が完了したか否かを確認するための応答要求ＲＱＫＥ（鍵更新結果要求）に対して、鍵更新結果を通知する応答ＲＳＫＥ（鍵更新結果応答）をセキュリティ装置１０に送信する（ＳＢ２０３）。セキュリティ装置１０は、応答ＲＳＫＥを受信すると（ＳＢ１０４）、制御装置２０において鍵更新が正常に完了したか否かを判断する（ＳＢ１０５）。鍵更新が正常に完了した場合、セキュリティ装置１０は、新しい固有鍵４０のビット列を制御装置２０の固有鍵４０ａとして不揮発性記憶部１３４に上書きする（ＳＢ１０６）。そして、次回の制御装置２０の認証は、上書きされた新しい固有鍵４０ａにより行われる。一方、鍵更新が正常に完了しなかった場合、セキュリティ装置１０は、新しい固有鍵４０を破棄（ＳＢ１０７）して鍵更新処理１３４ａ３を終了する。
【００３０】
（動作例３）
次に、図７のフローチャートを参照して、制御装置２０に初めて電源が投入される場合における認証動作について説明する。制御装置２０に初めて電源が投入される前、制御装置２０に記憶されている当該制御装置２０の固有鍵４０ｂおよびセキュリティ装置１０に記憶されている制御装置２０の固有鍵４０ａは、各々デフォルト値が設定されている。従って、制御装置２０に初めて電源が投入された場合、セキュリティ装置１０は、デフォルト値に設定されている制御装置２０の固有鍵４０ａにより当該制御装置２０の認証を行う。なお、セキュリティ装置１０が行う制御装置２０からの固有鍵４０ｂの取得および制御装置２０の認証は、先述の図３および図４と同様である。デフォルト値に設定されている固有鍵４０により認証が成功した場合、セキュリティ装置１０は、制御装置２０の固有鍵４０をデフォルト値から個別の新しい値に更新する処理を行う。これは、制御装置２０のセキュリティを向上させるためである。このときの固有鍵４０の更新は、先述の図５および図６と同様である。そして、次回の制御装置２０の認証は、デフォルト値から更新された新しい固有鍵４０により行われる。
【００３１】
（効果）
このように、本実施形態によるセキュリティ装置１０は、認証対象となる制御装置２０（被認証装置）に応答要求を送信してから応答を受信するまでの時間間隔に基づいて制御装置２０が記憶している認証用の鍵を復元して制御装置２０の認証を行う。すなわち、本実施形態によるセキュリティ装置１０では、認証対象となる制御装置２０との間の通信のフレームに当該制御装置２０を認証するための固有鍵４０を示すデータを格納する必要がない。このため、盗聴などにより通信のフレームの内容が知られたとしても、当該制御装置２０の固有鍵４０が直接に知られることがない。また、応答要求／応答間の時間間隔を示すデータ列を制御装置２０に、対応表１３４ｂをセキュリティ装置１０に、それぞれ分散して記憶している。これらより、当該制御装置２０の固有鍵４０が取得されることを困難にすることができる。また、当該制御装置２０の固有鍵４０を秘匿しつつ当該制御装置２０の認証を行うことができる。
【００３２】
また、本実施形態によるセキュリティ装置１０は、暗号アルゴリズムに基づいた演算を行っていないため、プログラム実装容量が少なく動作クロック数の低い安価なマイクロプロセッサユニットを搭載している制御装置２０が認証対象であっても当該制御装置２０の認証を行うことができる。
【００３３】
また、本実施形態によるセキュリティ装置１０を用いることにより、秘匿性の高い認証システムを実現することができる。
【００３４】
＜他の実施形態＞
以上、この発明の一実施形態について説明したが、この発明には他にも実施形態が考えられる。例えば次の通りである。
【００３５】
（１）上記実施形態によるセキュリティ装置１０の対応表１３４ｂは、応答要求／応答間の時間間隔を２値情報に対応付けていた。しかし、応答要求／応答間の時間間隔を対応付ける情報は２値情報に限られない。例えば、図８に示すように、応答要求／応答間の時間間隔を１０進数の０から９に対応付ける態様としても良い。
【００３６】
（２）セキュリティ装置１０の対応表１３４ｂにおける応答要求／応答間の時間間隔は、図２に示すものに限られない。
【００３７】
（３）上記実施形態によるセキュリティ装置１０は、応答要求／応答間の時間間隔を示すデータ列における各々のデータ（制御装置２０の固有鍵４０ｂのデータ）をセキュリティ装置１０の固有鍵４０ａのビット列における１桁目のビットから順に対応させていた。しかし、応答要求／応答間の時間間隔を示すデータ列における各々のデータをセキュリティ装置１０の固有鍵４０ａのビット列における任意の桁に対応させても良い。このとき、どの桁に対応付けているかを示す対応表を有していても良いし、どの桁に対応付けているかを示す情報を通信のフレームに格納させても良い。
【００３８】
（４）上記実施形態による認証システム１において応答要求および応答は、任意のデータ（認証や固有鍵４０に関するデータとは無関係のデータ）が格納されていた。しかし、応答要求および応答に認証や固有鍵４０に関するデータの一部などを格納しても良い。
【００３９】
（５）上記実施形態によるセキュリティ装置１０は、制御部１１０を認証プログラム１３４ａを実行する認証手段として機能させていた。しかし、認証手段を電子回路により実現しても良い。
【００４０】
（６）上記実施形態による認証システム１においてセキュリティ装置１０と制御装置２０との間の通信は、通信線３０を介した有線通信であったがこの態様に限られない。例えば、セキュリティ装置１０と制御装置２０との間の通信を無線通信や赤外線通信などとしても良い。
【符号の説明】
【００４１】
１…認証システム、１０…セキュリティ装置、２０…制御装置、３０…通信線、１１０，２１０…制御部、１２０，２２０…通信Ｉ／Ｆ、１３０，２３０…記憶部、１３２，２３２…揮発性記憶部、１３４，２３４…不揮発性記憶部、１３４ａ…認証プログラム、１３４ａ１…鍵復元処理、１３４ａ２…認証処理、１３４ａ３…鍵更新処理、１３４ｂ…対応表、４０，４０ａ，４０ｂ…制御装置の固有鍵、１４０，２４０…バス、ＲＱＳ，ＲＱ１，ＲＱ２，ＲＱｎ，ＲＱＥ，ＲＱＫＳ，ＲＱＫ１，ＲＱＫ２，ＲＱＫｎ，ＲＱＫＥ…応答要求、ＲＳＳ，ＲＳ１，ＲＳ２，ＲＳｎ，ＲＳＥ，ＲＳＫＳ，ＲＳＫ１，ＲＳＫ２，ＲＳＫｎ，ＲＳＫＥ…応答。
【図１】
2015015536.tif 000003
【図２】
2015015536.tif 000004
【図３】
2015015536.tif 000005
【図４】
2015015536.tif 000006
【図５】
2015015536.tif 000007
【図６】
2015015536.tif 000008
【図７】
2015015536.tif 000009
【図８】
2015015536.tif 000010