図面 (/)

技術 認証システム、認証方法、認証プログラム、認証装置及び依頼装置

出願人 三菱電機株式会社
発明者 泉幸雄佐藤恒夫山口晃由村上ユミコ
出願日 2008年10月28日 (12年3ヶ月経過) 出願番号 2008-276816
公開日 2010年5月13日 (10年9ヶ月経過) 公開番号 2010-108054
状態 未査定
技術分野 記憶装置の機密保護 オンライン・システムの機密保護 暗号化・復号化装置及び秘密通信
主要キーワード 対策コスト 書き込み読み出し装置 エラーケース 装置認証情報 解析目的 物理的アクセス 認証命令 再同期処理
関連する未来課題
重要な関連分野

この項目の情報は公開日時点(2010年5月13日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (20)

課題

認証装置200からホスト装置100へ認証結果を安全に(改ざんされることなく)送信することを目的とする。

解決手段

ホスト装置100と認証装置200との間で予め所定の情報(カウンタ値秘密情報等)を共有する。認証装置200は、認証結果をホスト装置100へ送信する際、結果情報(認証成功又は認証失敗)と共有情報とを合わせた情報のハッシュ値をホスト装置100へ送信する。ホスト装置100は、ハッシュ値を受信すると、判定情報(例えば、認証成功)と共有情報とを合わせた情報のハッシュ値を計算し、受信したハッシュ値と比較することにより、認証が成功したか否かを判定する。

概要

背景

認証処理暗号処理等のアルゴリズム実装していない装置やマイクロコントローラ認証依頼装置、以下依頼装置)と、認証処理や暗号処理等のアルゴリズムを実装している装置やマイクロコントローラ(認証装置)とを備える認証システムがある。この認証システムにおいて、認証装置の処理によって得られた認証結果を依頼装置へ送信する場合、依頼装置と認証装置との間で通信データ(認証結果)が改ざんされる虞がある。例えば、認証失敗にもかかわらず認証成功と改ざんされる可能性がある。つまり、認証を行う装置が認証処理や暗号処理等のアルゴリズムを実装していたとしても、認証結果を受信する装置が認証処理や暗号処理等のアルゴリズムを実装していない装置である場合、装置間で通信データが改ざんされ、正当な認証結果とは異なる認証結果が伝達される虞がある。
特開2006−283507号公報
特開2006−283383号公報

概要

認証装置200からホスト装置100へ認証結果を安全に(改ざんされることなく)送信することを目的とする。ホスト装置100と認証装置200との間で予め所定の情報(カウンタ値秘密情報等)を共有する。認証装置200は、認証結果をホスト装置100へ送信する際、結果情報(認証成功又は認証失敗)と共有情報とを合わせた情報のハッシュ値をホスト装置100へ送信する。ホスト装置100は、ハッシュ値を受信すると、判定情報(例えば、認証成功)と共有情報とを合わせた情報のハッシュ値を計算し、受信したハッシュ値と比較することにより、認証が成功したか否かを判定する。

目的

上記認証システムにおいて、正当な(改ざんされていない)認証結果を送受信するには、物理対策通信路への物理的アクセスを防ぐ)や暗号化通信を行うなどの対策が必要であり、対策コストが高いことや、処理速度が遅くなることや、通信量が増えること等の課題がある。
この発明は、例えば、低コストでかつ処理速度や通信速度に大きな影響を与えることなく、正当な認証結果を高速に送受信可能とする認証装置を提供することを目的とする。

効果

実績

技術文献被引用数
0件
牽制数
2件

この技術が所属する分野

(分野番号表示ON)※整理標準化データをもとに当社作成

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

依頼装置認証装置とを備える認証システムであり、前記認証装置は、認証情報通信装置を介して受信する認証装置通信部と、前記認証装置通信部が受信した認証情報に基づき、認証成功又は認証失敗処理装置により判定する認証部と、前記依頼装置との間で予め共有した共有情報記憶装置に記憶する認証装置記憶部と、認証成功を示す成功情報と認証失敗を示す失敗情報とから前記認証部が判定した認証成功又は認証失敗に従い選択された結果情報と、前記認証装置記憶部が記憶した共有情報とから所定の方法により応答情報を処理装置により生成する応答情報生成部とを備え、前記認証装置通信部は、前記応答情報生成部が生成した応答情報を前記依頼装置へ送信し、前記依頼装置は、前記認証装置通信部が送信した応答情報を通信装置を介して受信する依頼装置通信部と、前記認証装置との間で予め共有した共有情報を記憶装置に記憶する依頼装置記憶部と、前記成功情報と前記失敗情報とのいずれか一方の情報である判定情報と、前記依頼装置記憶部が記憶した共有情報とから前記所定の方法により検証情報を処理装置により生成する検証情報生成部と、前記依頼装置通信部が受信した応答情報と、前記検証情報生成部が生成した検証情報とを比較して、認証成功又は認証失敗を処理装置により判定する結果判定部とを備えることを特徴とする認証システム。

請求項2

前記認証装置は、さらに、所定のタイミングで前記認証装置記憶部が記憶した共有情報を処理装置により変更する認証装置変更部を備え、前記応答情報生成部は、前記結果情報と、前記認証装置変更部が変更した共有情報とから応答情報を生成し、前記依頼装置は、さらに、所定のタイミングで前記依頼装置記憶部が記憶した共有情報を処理装置により変更する依頼装置変更部を備え、前記検証情報生成部は、前記判定情報と、前記依頼装置変更部が変更した共有情報とから検証情報を生成することを特徴とする請求項1に記載の認証システム。

請求項3

前記認証装置記憶部と前記依頼装置記憶部とは、共有情報としてカウンタ値を記憶し、前記認証装置変更部は、前記認証装置通信部が認証情報を受信すると、前記認証装置記憶部が記憶したカウンタ値に所定の値を加えてカウンタ値を変更し、前記応答情報生成部は、前記結果情報と、変更したカウンタ値とから応答情報を生成し、前記依頼装置変更部は、前記依頼装置通信部が応答情報を受信すると、前記依頼装置記憶部が記憶したカウンタ値に前記所定の値を加えてカウンタ値を変更し、前記検証情報生成部は、前記判定情報と、変更したカウンタ値とから検証情報を生成することを特徴とする請求項2に記載の認証システム。

請求項4

前記認証装置記憶部と前記依頼装置記憶部とは、共有情報として複数の秘密情報を記憶し、前記依頼装置通信部は、秘密情報を特定するための特定情報を送信し、前記認証装置通信部は、前記依頼装置通信部が送信した特定情報を受信し、前記応答情報生成部は、前記結果情報と、前記複数の秘密情報のうち前記認証装置通信部が受信した特定情報により特定される秘密情報とから応答情報を生成し、前記検証情報生成部は、前記判定情報と、前記複数の秘密情報のうち前記依頼装置通信部が送信した特定情報から特定される秘密情報とから検証情報を生成することを特徴とする請求項1に記載の認証システム。

請求項5

前記認証装置記憶部と前記依頼装置記憶部とは、共有情報として識別情報が付された複数の秘密情報を記憶し、前記依頼装置通信部は、乱数を送信し、前記認証装置通信部は、前記依頼装置通信部が送信した乱数を受信し、前記認証装置は、さらに、前記認証装置通信部が受信した乱数から識別情報を処理装置により計算する認証装置計算部を備え、前記応答情報生成部は、前記結果情報と、前記複数の秘密情報のうち前記認証装置計算部が計算した識別情報により特定された秘密情報とから応答情報を生成し、前記依頼装置は、さらに、前記依頼装置通信部が送信した乱数から識別情報を処理装置により計算する依頼装置計算部を備え、前記検証情報生成部は、前記判定情報と、前記複数の秘密情報のうち前記依頼装置計算部が計算した識別情報により特定された秘密情報とから検証情報を生成することを特徴とする請求項4に記載の認証システム。

請求項6

前記応答情報生成部は、前記結果情報と前記秘密情報と前記認証装置通信部が受信した乱数とから応答情報を生成し、前記検証情報生成部は、前記判定情報と前記秘密情報と前記依頼装置通信部が送信した乱数とから検証情報を生成することを特徴とする請求項5に記載の認証システム。

請求項7

前記認証装置記憶部と前記依頼装置記憶部とは、共有情報としてカウンタ値と複数の秘密情報とを記憶し、前記依頼装置通信部は、前記秘密情報を特定する特定情報を送信し、前記認証装置通信部は、前記依頼装置通信部が送信した特定情報を受信し、前記認証装置は、さらに、所定のタイミングで前記認証装置記憶部が記憶したカウンタ値に所定の値を処理装置により加えてカウンタ値を変更する認証装置変更部を備え、前記応答情報生成部は、前記結果情報と、前記複数の秘密情報のうち前記認証装置通信部が受信した特定情報により特定された秘密情報と、前記認証装置変更部が変更したカウンタ値とから応答情報を生成し、前記依頼装置は、さらに、所定のタイミングで前記依頼装置記憶部が記憶したカウンタ値に所定の値を処理装置により加えてカウンタ値を変更する依頼装置変更部を備え、前記検証情報生成部は、前記判定情報と、前記複数の秘密情報のうち前記依頼装置通信部が送信した特定情報により特定された秘密情報と、前記依頼装置変更部が変更したカウンタ値とから検証情報を生成することを特徴とする請求項1に記載の認証システム。

請求項8

前記検証情報生成部は、前記応答情報と前記検証情報とを前記結果判定部が比較した結果、前記応答情報と前記検証情報とが不一致である場合、前記検証情報の生成に使用した判定情報が成功情報である場合には失敗情報に、失敗情報である場合には成功情報に前記判定情報を変えて、新たに検証情報を生成し、前記結果判定部は、前記応答情報と新たに生成した検証情報とを比較し、前記依頼装置変更部は、前記応答情報と新たに生成した検証情報とを前記結果判定部が比較した結果、前記応答情報と新たな検証情報とが不一致である場合、前記カウンタ値に前記所定の値を加えてカウンタ値を変更することを特徴とする請求項3又は7に記載の認証システム。

請求項9

前記検証情報生成部は、前記応答情報と前記検証情報とを前記結果判定部が比較した結果、前記応答情報と前記検証情報とが不一致である場合、前記検証情報の生成に使用した判定情報が成功情報である場合には失敗情報に、失敗情報である場合には成功情報に前記判定情報を変えて、新たに検証情報を生成し、前記結果判定部は、前記応答情報と新たに生成した検証情報とを比較し、前記依頼装置通信部は、前記応答情報と新たに生成した検証情報とを前記結果判定部が比較した結果、前記応答情報と新たな検証情報とが不一致である場合、前記依頼装置記憶部が記憶したカウンタ値を前記認証装置へ送信し、前記認証装置通信部は、前記依頼装置通信部が送信したカウンタ値を受信し、前記認証装置記憶部は、前記認証装置通信部が受信したカウンタ値を記憶することを特徴とする請求項3又は7に記載の認証システム。

請求項10

前記検証情報生成部は、前記応答情報と前記検証情報とを前記結果判定部が比較した結果、前記応答情報と前記検証情報とが不一致である場合、前記検証情報の生成に使用した判定情報が成功情報である場合には失敗情報に、失敗情報である場合には成功情報に前記判定情報を変えて、新たに検証情報を生成し、前記結果判定部は、前記応答情報と新たに生成した検証情報とを比較し、前記依頼装置通信部は、前記応答情報と新たに生成した検証情報とを前記結果判定部が比較した結果、前記応答情報と新たな検証情報とが不一致である場合、カウンタ値要求命令を前記認証装置へ送信し、前記認証装置通信部は、カウンタ値要求命令を受信し、前記認証装置通信部は、前記認証装置通信部がカウンタ値要求命令を受信した場合、前記認証装置記憶部が記憶したカウンタ値を前記依頼装置へ送信することを特徴とする請求項3又は7に記載の認証システム。

請求項11

前記応答情報生成部は、前記認証装置においてエラーが発生した場合、エラーを示すエラー情報を結果情報として、応答情報を生成し、前記検証情報生成部は、エラー情報を判定情報として検証情報を生成し、前記結果判定部は、前記応答情報と前記検証情報とを比較して、エラーが発生したか否かを判定することを特徴とする請求項1から10までのいずれかに記載の認証システム。

請求項12

前記認証装置と前記依頼装置との少なくともいずれかは、所定のアクセス権限情報に基づき、共有情報へのアクセスを制限するアクセス制御部を備えることを特徴とする請求項1から11までのいずれかに記載の認証システム。

請求項13

依頼装置と認証装置とにおける認証方法であり、前記認証装置が、認証情報を受信する依頼受信ステップと、前記認証装置が、前記依頼受信ステップで受信した認証情報に基づき、認証成功又は認証失敗を判定する認証ステップと、前記認証装置が、認証成功を示す成功情報と認証失敗を示す失敗情報とから前記認証ステップで判定した認証成功又は認証失敗に従い選択された結果情報と、前記依頼装置との間で予め共有した共有情報とから応答情報を生成する応答情報生成ステップと、前記認証装置が、前記応答情報生成ステップで生成した応答情報を前記依頼装置へ送信する応答情報送信ステップと、前記依頼装置が、前記応答情報送信ステップで前記認証装置が送信した応答情報を受信する応答情報受信ステップと、前記依頼装置が、前記成功情報と前記失敗情報とのいずれか一方の情報である判定情報と、前記認証装置との間で予め共有した共有情報とから検証情報を処理装置により生成する検証情報生成ステップと、前記依頼装置が、前記応答情報受信ステップで受信した応答情報と、前記検証情報生成ステップで生成した検証情報とを比較して、認証成功又は認証失敗を判定する結果判定ステップとを備えることを特徴とする認証方法。

請求項14

依頼装置の依頼プログラムと認証装置の認証プログラムとを備える認証プログラムであり、前記認証プログラムは、認証情報を受信する依頼受信処理と、前記依頼受信処理で受信した認証情報に基づき、認証成功又は認証失敗を判定する認証処理と、認証成功を示す成功情報と認証失敗を示す失敗情報とから前記認証処理で判定した認証成功又は認証失敗に従い選択された結果情報と、前記認証装置が前記依頼装置との間で予め共有した共有情報とから応答情報を生成する応答情報生成処理と、前記応答情報生成処理で生成した応答情報を前記依頼装置へ送信する応答情報送信処理とをコンピュータに実行させ、前記依頼装置は、前記応答情報送信処理で送信された応答情報を受信する応答情報受信処理と、前記成功情報と前記失敗情報とのいずれか一方の情報である判定情報と、前記依頼装置が前記認証装置との間で予め共有した共有情報とから検証情報を生成する検証情報生成処理と、前記応答情報受信処理で受信した応答情報と、前記検証情報生成処理で生成した検証情報とを比較して、認証成功又は認証失敗を判定する結果判定処理とをコンピュータに実行させることを特徴とする認証プログラム。

請求項15

認証情報を通信装置を介して受信する認証装置通信部と、前記認証装置通信部が受信した認証情報に基づき、認証成功又は認証失敗を処理装置により判定する認証部と、前記依頼装置との間で予め共有した共有情報を記憶装置に記憶する認証装置記憶部と、認証成功を示す成功情報と認証失敗を示す失敗情報とから前記認証部が判定した認証成功又は認証失敗に従い選択された結果情報と、前記認証装置記憶部が記憶した共有情報とから応答情報を処理装置により生成する応答情報生成部とを備え、前記認証装置通信部は、前記応答情報生成部が生成した応答情報を通信装置を介して前記依頼装置へ送信することを特徴とする認証装置。

請求項16

認証装置が認証処理を実行した結果を示す結果情報を含む応答情報を前記認証装置から受信する依頼装置通信部と、前記認証装置との間で予め共有した共有情報を記憶装置に記憶する依頼装置記憶部と、前記成功情報と前記失敗情報とのいずれか一方の情報である判定情報と、前記依頼装置記憶部が記憶した共有情報とから検証情報を処理装置により生成する検証情報生成部と、前記依頼装置通信部が受信した応答情報と、前記検証情報生成部が生成した検証情報とを比較して、認証成功又は認証失敗を処理装置により判定する結果判定部とを備えることを特徴とする依頼装置。

請求項17

依頼装置と認証装置とを備える認証システムであって、前記認証装置が前記依頼装置から所定の情報を受信することにより認証する認証システムにおいて、前記依頼装置は、前記認証装置との間で予め共有した共有情報を記憶装置に記憶する依頼装置記憶部と、前記所定の情報と、前記依頼装置記憶部が記憶した共有情報とから依頼情報を生成する依頼情報生成部と、前記依頼情報生成部が生成した依頼情報を前記認証装置へ通信装置を介して送信する依頼装置通信部を備え、前記認証装置は、前記依頼装置通信部が送信した依頼情報を通信装置を介して受信する認証装置通信部と、前記依頼装置との間で予め共有した共有情報を記憶装置に記憶する認証装置記憶部と、前記所定の情報と、前記認証装置記憶部が記憶した共有情報とから検証情報を処理装置により生成する検証情報生成部と、前記認証装置通信部が受信した依頼情報と、前記検証情報生成部が生成した検証情報とを比較して、認証成功又は認証失敗を処理装置により判定する認証部とを備えることを特徴とする認証システム。

技術分野

0001

本発明は、例えば、認証結果等の改ざんを防止した認証技術に関する。

背景技術

0002

認証処理暗号処理等のアルゴリズム実装していない装置やマイクロコントローラ認証依頼装置、以下依頼装置)と、認証処理や暗号処理等のアルゴリズムを実装している装置やマイクロコントローラ(認証装置)とを備える認証システムがある。この認証システムにおいて、認証装置の処理によって得られた認証結果を依頼装置へ送信する場合、依頼装置と認証装置との間で通信データ(認証結果)が改ざんされる虞がある。例えば、認証失敗にもかかわらず認証成功と改ざんされる可能性がある。つまり、認証を行う装置が認証処理や暗号処理等のアルゴリズムを実装していたとしても、認証結果を受信する装置が認証処理や暗号処理等のアルゴリズムを実装していない装置である場合、装置間で通信データが改ざんされ、正当な認証結果とは異なる認証結果が伝達される虞がある。
特開2006−283507号公報
特開2006−283383号公報

発明が解決しようとする課題

0003

上記認証システムにおいて、正当な(改ざんされていない)認証結果を送受信するには、物理対策通信路への物理的アクセスを防ぐ)や暗号化通信を行うなどの対策が必要であり、対策コストが高いことや、処理速度が遅くなることや、通信量が増えること等の課題がある。
この発明は、例えば、低コストでかつ処理速度や通信速度に大きな影響を与えることなく、正当な認証結果を高速に送受信可能とする認証装置を提供することを目的とする。

課題を解決するための手段

0004

本発明に係る認証システムは、例えば、依頼装置と認証装置とを備える認証システムであり、
前記認証装置は、
認証情報通信装置を介して受信する認証装置通信部と、
前記認証装置通信部が受信した認証情報に基づき、認証成功又は認証失敗を処理装置により判定する認証部と、
前記依頼装置との間で予め共有した共有情報記憶装置に記憶する認証装置記憶部と、
認証成功を示す成功情報と認証失敗を示す失敗情報とから前記認証部が判定した認証成功又は認証失敗に従い選択された結果情報と、前記認証装置記憶部が記憶した共有情報とから所定の方法により応答情報を処理装置により生成する応答情報生成部とを備え、
前記認証装置通信部は、前記応答情報生成部が生成した応答情報を前記依頼装置へ送信し、
前記依頼装置は、
前記認証装置通信部が送信した応答情報を通信装置を介して受信する依頼装置通信部と、
前記認証装置との間で予め共有した共有情報を記憶装置に記憶する依頼装置記憶部と、
前記成功情報と前記失敗情報とのいずれか一方の情報である判定情報と、前記依頼装置記憶部が記憶した共有情報とから前記所定の方法により検証情報を処理装置により生成する検証情報生成部と、
前記依頼装置通信部が受信した応答情報と、前記検証情報生成部が生成した検証情報とを比較して、認証成功又は認証失敗を処理装置により判定する結果判定部と
を備えることを特徴とする。

発明の効果

0005

本発明に係る認証システムでは、認証結果をそのまま認証装置から依頼装置へ送信するのではなく、共有情報に基づき生成された応答情報を認証装置から依頼装置へ送信することにより、認証装置から依頼装置へ認証が成功したか否かを伝える。そのため、認証装置と依頼装置との間で、通信データが改ざんされ、認証失敗にもかかわらず認証成功とされることを防止できる。

発明を実施するための最良の形態

0006

まず、以下の実施の形態で説明する認証システムの一例について説明する。
図1は、認証システムの一例である入退室管理システムを示す図である。
図1に示す入退室管理システムでは、入退室する人が保有するカードカードリーダにかざし、カードの情報がコントローラ(認証装置の一例)へ送られて認証が行われる。その結果、認証が成功した場合には扉に付いている錠(依頼装置の一例)に開錠命令を出し、扉が開く。
この入退室管理システムにおいて、たとえコントローラで認証失敗と判断しても、錠に送る信号を改ざんすることにより開錠の命令を錠に送信することができる。そのため、許可されていない人も扉を開けることが可能となる。

0007

図2は、認証システムの一例であるマイクロコントローラが内蔵された装置を示す図である。
図2に示す装置でも図1に示す入退室管理システムと同様の課題がある。図2に示す装置では、装置外との通信や制御を行うことの認証をとるため、マイクロコントローラA(依頼装置の一例)は認証命令をマイクロコントローラB(認証装置の一例)へ送信する。マイクロコントローラBは認証情報に基づき認証を行い、その結果(認証結果)をマイクロコントローラAへ送信する。
この場合、たとえマイクロコントローラBで認証失敗と判断しても、マイクロコントローラAへ送る信号を改ざんすることにより装置外との通信や制御の許可をマイクロコントローラAへ送信することができる。そのため、不正な通信や制御が可能となる。

0008

つまり、以上のような、入退室管理システムやマイクロコントローラが内蔵された装置等が以下の実施の形態で説明する認証システムの一例である。そして、以下の実施の形態で説明する認証システムでは、上述した認証結果の改ざんを防止し、正当な認証結果を伝えることが可能となる。

0009

実施の形態1.
この実施の形態では、共有情報としてカウンタ値を有する認証システムについて説明する。

0010

図3は、この実施の形態に係る認証システムの機能を示す機能ブロック図である。
この実施の形態に係る認証システムは、ホスト装置100、認証装置200、外部接続機器300を備える。
外部接続機器300はホスト装置100に接続される認証対象の装置である。ホスト装置100は正当な外部接続機器と通信し、利用者や外部接続機器にサービスを提供する装置である。認証装置200はホスト装置100に接続され、受信した認証情報を用いて外部接続機器を認証し、その結果をホスト装置に応答する装置である。

0011

ホスト装置100(依頼装置の一例)は、制御部110、カウンタ部120(依頼装置変更部の一例)、メモリ130(依頼装置記憶部の一例)、依頼装置通信部140、ハッシュ演算部150(検証情報生成部の一例)、結果判定部160を備える。
制御部110は、装置全体の制御を行う。つまり、制御部110は、他の機能を制御する。
カウンタ部120は、内部のメモリ130で記憶しているカウンタ値を1増加させる。なお、ここでは、カウンタ部120はカウンタ値を1増加させるものとするが、増加させる値は1に限らずどのような値でもよい。つまり、カウンタ部120はカウンタ値に所定の値(マイナスの値であってもよい)を加える。
メモリ130は、カウンタ値(共有情報の一例)を記憶する。なお、メモリ130は、カウンタ部120の外部メモリでもよい。
依頼装置通信部140は、認証装置200、外部接続機器300と通信装置を介して通信する。依頼装置通信部140は、認証装置200と通信する第1の通信部と外部接続機器300と通信する第2の通信部とを備えるとしてもよい。
ハッシュ演算部150は、入力データに対して特定のデータ変換を処理装置により施す。ここでは、ハッシュ演算部150は、入力データに対して所定のハッシュ関数によりハッシュ値を計算するものとする。ハッシュ演算部150は、CRCメッセージ認証子チェックサムなどを計算するとしてもよい。
結果判定部160は、入力された2つの情報を比較して、認証成功と判定されたか認証失敗と判定されたかを処理装置により判定する。

0012

認証装置200は、制御部210、カウンタ部220(認証装置変更部の一例)、メモリ230(認証装置記憶部の一例)、認証装置通信部240、ハッシュ演算部250(応答情報生成部の一例)、認証部260を備える。
制御部210は、装置全体の制御を行う。つまり、制御部210は、他の機能を制御する。
カウンタ部220は、内部のメモリ230で記憶しているカウンタ値を1増加させる。なお、ここでは、カウンタ部220はカウンタ値を1増加させるものとするが、増加させる値は1に限らずどのような値でもよい。つまり、カウンタ部220はカウンタ値に所定の値を加える。但し、カウンタ部220は、カウンタ部120と同一の値をカウンタ値に加えるものとする。
メモリ230は、カウンタ値を記憶する。なお、メモリ230は、カウンタ部220の外部メモリでもよい。
認証装置通信部240は、ホスト装置100と通信装置を介して通信する。
ハッシュ演算部250は、入力データに対して特定のデータ変換(ハッシュ演算部150と同一のデータ変換)を処理装置により施す。ここでは、ハッシュ演算部250は、入力データに対してハッシュ演算部150と同一のハッシュ関数によりハッシュ値を計算するものとする。ハッシュ演算部250は、CRC、メッセージ認証子、チェックサムなどを計算するとしてもよい。
認証部260は、ホスト装置100から受信した認証情報により、認証成功又は認証失敗を処理装置により判定する。

0013

図4は、この実施の形態に係る認証システムの動作を示すフローチャートである。
外部接続機器300は、認証情報をホスト装置100へ通信装置を介して送信する(S100:認証情報送信ステップ)。
ホスト装置100の依頼装置通信部140は、外部接続機器300が送信した認証情報を通信装置を介して受信する(S101:認証情報受信ステップ)。依頼装置通信部140は、受信した認証情報を含む認証命令を認証装置200へ通信装置を介して送信する(S102:依頼ステップ)。この際、外部接続機器300から受信したすべての認証情報ではなく、一部の認証情報を認証装置200へ送信してもよい。すなわち認証装置200での認証に必要とされている情報のみを送信してもよい。
認証装置200の認証装置通信部240は、ホスト装置100が送信した認証命令を通信装置を介して受信する(S103:依頼受信ステップ)。次に、認証部260は、受信した認証命令に含まれる認証情報に基づき、処理装置により認証処理を行い認証成功又は認証失敗を判定する(S104:認証ステップ)。認証後、カウンタ部220は、メモリ230が記憶するカウンタ値を処理装置により1増加させる(S105:変更ステップ)。次に、ハッシュ演算部250は、認証の結果情報とカウンタ値とを合わせた情報のハッシュ値(H)を応答情報として処理装置により生成する(S106:応答情報生成ステップ)。ここで、結果情報とは、認証成功を示す成功情報と認証失敗を示す失敗情報とから認証部260が判定した認証成功又は認証失敗に従い選択された情報である。そして、認証装置通信部240は、応答情報(ハッシュ値(H))をホスト装置100へ通信装置を介して送信(応答)する(S107:応答情報送信ステップ)。
ホスト装置100の依頼装置通信部140は、認証装置200が送信した応答情報(ハッシュ値(H))を通信装置を介して受信する(S108:応答情報受信ステップ)。次に、カウンタ部120は、メモリ130が記憶するカウンタ値を処理装置により1増加する(S109:変更ステップ)。次に、ハッシュ演算部150は、認証成功(判定情報の一例)とカウンタ値とのハッシュ値(H’)を検証情報として処理装置により生成する(S110:検証情報生成ステップ)。そして、結果判定部160は、受信した応答情報(ハッシュ値(H))と生成した検証情報(ハッシュ値(H’))とを処理装置により比較する(S111:結果判定ステップ)。結果判定部160は、比較の結果、応答情報と検証情報とが一致した場合、認証成功としてその後の処理、例えば、外部接続機器300との通信を開始する(S112:成功処理ステップ)。一方、結果判定部160は、比較の結果、応答情報と検証情報とが一致しない場合、認証失敗として処理し、例えば外部接続機器300に認証失敗を応答する(S113:失敗処理ステップ)。

0014

なお、ホスト装置100のカウンタ値と認証装置200のカウンタ値とは原則として同期している。つまり、ホスト装置100が受信したハッシュ値(H)の生成に使用されたカウンタ値と、ホスト装置100が計算するハッシュ値(H’)の生成に使用されたカウンタ値とは同じ値である。これは、認証装置200のカウンタ部220がカウンタ値を1増加した場合、ホスト装置100のカウンタ部120もカウンタ値を1増加するためである。

0015

以上のように、認証装置200は、認証の結果をホスト装置100へ送信するために、認証結果を示す結果情報と、送信の度に値が変わるカウンタ値とを合わせた情報のハッシュ値をホスト装置100へ送信する。そして、ホスト装置100では、内部で演算したハッシュ値と受信したハッシュ値とを比較して認証が成功したか否かを判断する。そのため、実装コストが高い暗号アルゴリズムを使用しなくてもホスト装置100と認証装置200との間における認証結果の改ざんや、以前に応答した認証結果の再利用を防ぐことができる。つまり、物理的対策を施すことなく、低コストで正しく認証結果を認証装置200からホスト装置100へ伝えることができる。
また、ホスト装置100では、受信したハッシュ値(H)と、認証成功に関するハッシュ値(H’)のみを演算・比較しているので、高速に処理することが可能である。
さらに、認証装置200からホスト装置100へ送信するデータはハッシュ値であるため、通信データ量が増えることもない。

0016

なお、カウンタを1増加するタイミングは上述した以外であっても、ホスト装置100のカウンタ値と認証装置200のカウンタ値とがハッシュ値の計算時に同期していればよい。例えば、認証装置200ではハッシュ値(H)をホスト装置100へ送信した後(S107の後)1増加し、ホスト装置100ではハッシュ値の比較後(S111の後)に1増加してもよい。

0017

さらに、ホスト装置100と認証装置200とでハッシュ値を演算する際、結果情報とカウンタ値とを合わせた情報を生成するが、結果情報とカウンタ値とを合わせる方法はどのようなものであってもよい。

0018

実施の形態2.
実施の形態1では、ホスト装置100と認証装置200とは同期しているカウンタ値を共有し、結果情報とカウンタ値とのハッシュ値を認証装置200からホスト装置100へ応答した。この実施の形態では、ホスト装置100と認証装置200とが複数の秘密情報を共有する認証システムについて説明する。

0019

図5は、この実施の形態に係る認証システムの機能を示す機能ブロック図である。
この実施の形態に係る認証システムの機能について、実施の形態1に係る認証システムの機能と異なる部分のみ説明する。

0020

ホスト装置100のメモリ130と認証装置200のメモリ230とは、共有情報として識別情報が付された複数の秘密情報を記憶する。なお、ホスト装置100と認証装置200とは、カウンタ部120を備えていないため、メモリ130とメモリ230とは、カウンタ部120の外部メモリである。
ホスト装置100は、実施の形態1に係るホスト装置100の機能に加え、秘密情報決定部170を備える。秘密情報決定部170は、メモリ130が記憶した複数の秘密情報のうち、どの秘密情報を使用するかを処理装置により決定する。

0021

図6は、メモリ130とメモリ230とが記憶する秘密情報とその識別情報の一例を示す図である。
図6に示すように、秘密情報を一意識別するための識別情報とその識別情報に対応する秘密情報とがペアとなって複数個ある。複数ある秘密情報は、それぞれに相関関係がない値、例えば生成された複数個の乱数を使用することが望ましい。

0022

図7は、この実施の形態に係る認証システムの動作を示すフローチャートである。図7は、ホスト装置100が外部接続機器300から認証情報を受信した以降の処理を示す。
ホスト装置100の秘密情報決定部170は、外部接続機器300から認証情報を受信した後、認証装置200との通信で使用する秘密情報を決定する(S201:秘密情報決定ステップ)。決定方法は、秘密情報1、秘密情報2と順番に決定する方法やホスト装置100が取得できるのであれば、現在の時刻や日付を元に決定する方法でもよい。そして、依頼装置通信部140は、認証情報と使用する秘密情報の識別情報(特定情報の一例)を含む認証命令を認証装置200へ通信装置を介して送信する(S202:依頼ステップ)。この際、外部接続機器300から受信したすべての認証情報ではなく、一部の認証情報を認証装置200へ送信してもよい。すなわち認証装置200での認証に必要とされている情報のみを送信してもよい。
認証装置200の認証装置通信部240は、ホスト装置100が送信した認証命令を通信装置を介して受信する(S203:依頼受信ステップ)。次に、認証部260は、受信した認証命令に含まれる認証情報に基づき、処理装置により認証を行い認証成功又は認証失敗を判定する(S204:認証ステップ)。認証後、ハッシュ演算部250は、受信した秘密情報の識別情報から該当する秘密情報をメモリ230から読み出す(S205:秘密情報取得ステップ)。ハッシュ演算部250は、結果情報と読み出した秘密情報とを合わせた情報のハッシュ値(H)を応答情報として処理装置により生成する(S206:応答情報生成ステップ)。そして、認証装置通信部240は、応答情報(ハッシュ値(H))をホスト装置100へ通信装置を介して送信(応答)する(S207:応答情報送信ステップ)。
ホスト装置100の依頼装置通信部140は、認証装置200が送信した応答情報(ハッシュ値(H))を通信装置を介して受信する(S208:応答情報受信ステップ)。次に、ハッシュ演算部150は、秘密情報決定部170が決定した秘密情報をメモリから読み出す(S209:秘密情報取得ステップ)。つまり、ハッシュ演算部150は、依頼装置通信部140が認証装置200へ送信した認証命令に含まれる秘密情報の識別情報から特定される秘密情報を読み出す。そして、ハッシュ演算部150は、認証成功(判定情報の一例)と読み出した秘密情報とを合わせた情報のハッシュ値(H’)を検証情報として処理装置により生成する(S210:検証情報生成ステップ)。結果判定部160は、受信した応答情報(ハッシュ値(H))と生成した検証情報(ハッシュ値(H’))とを比較する(S211:結果判定ステップ)。結果判定部160は、比較の結果、応答情報と検証情報とが一致した場合、認証成功としてその後の処理、例えば、外部接続機器300との通信を開始する(S212:成功処理ステップ)。一方、結果判定部160は、比較の結果、応答情報と検証情報とが一致しない場合、認証失敗として処理し、例えば外部接続機器300に認証失敗を応答する(S213:失敗処理ステップ)。

0023

以上のように、認証装置200は、認証の結果をホスト装置100へ送信するために、認証結果と、送信の度に異なる秘密情報とを合わせた情報のハッシュ値をホスト装置100へ送信する。そして、ホスト装置100では、内部で演算したハッシュ値と受信したハッシュ値とを比較して認証が成功したか否かを判断している。したがって、実施の形態1に係る認証システムと同様の効果を得つつ、予測可能なカウンタ値を用いる実施の形態1に係る認証システムよりも通信データの解析を困難にし、セキュリティの面での信頼度が向上する。

0024

なお、ホスト装置100で秘密情報を読み出すタイミング(S209)は、認証装置200からの応答を受信した後でなくてもよい。例えば、使用する秘密情報を決定した後(S201の後)でも、認証装置200に認証命令を送信した後(S202の後)でもよい。
また、ホスト装置100が認証装置200へ秘密情報の識別情報を送信するタイミングは、認証命令と同時でなくてもよい。例えば、外部接続機器300から認証情報を受信する前に送信しておいてもよく、外部接続機器300から認証情報を受信した後に、認証命令と区別して認証装置200に識別情報を送信してもよい。

0025

実施の形態3.
実施の形態2では、認証装置200とホスト装置100で複数の秘密情報を共有し、ホスト装置100が使用する秘密情報の識別情報を認証装置200へ送信した。次に、ホスト装置100が生成した乱数を元に使用する秘密情報を決定し、乱数を認証装置200へ送信する認証システムについて説明する。

0026

図8は、この実施の形態に係る認証システムの機能を示す機能ブロック図である。
この実施の形態に係る認証システムの機能について、実施の形態2に係る認証システムの機能と異なる部分のみ説明する。

0027

ホスト装置100は、実施の形態2に係るホスト装置100の機能に加え、乱数生成部180、秘密情報特定部190を(依頼装置計算部の一例)備える。乱数生成部180は、処理装置により乱数を生成する。秘密情報特定部190は、乱数から秘密情報の識別情報を処理装置により計算する。
認証装置200は、実施の形態2に係る認証装置200の機能に加え、秘密情報特定部270(認証装置計算部の一例)を備える。秘密情報特定部270は、乱数から秘密情報の識別情報を処理装置により計算する。
なお、ホスト装置100の秘密情報特定部190と認証装置200の秘密情報特定部270とは、同じ入力データであれば、同じ秘密情報の識別情報を計算する。
ホスト装置100は、秘密情報決定部170を備えていない。

0028

図9は、この実施の形態に係る認証システムの動作を示すフローチャートである。図9は、ホスト装置100が外部接続機器300から認証情報を受信した以降の処理を示す。
ホスト装置100の乱数生成部180は、外部接続機器300から認証情報を受信した後、処理装置により乱数を生成する(S301:乱数生成ステップ)。そして、依頼装置通信部140は、認証情報と乱数と含む認証命令を認証装置200へ通信装置を介して送信する(S302:依頼ステップ)。この際、外部接続機器300から受信したすべての認証情報ではなく、一部の認証情報を認証装置200へ送信してもよい。すなわち認証装置200での認証に必要とされている情報のみを送信してもよい。
認証装置200の認証装置通信部240は、ホスト装置100が送信した認証命令を通信装置を介して受信する(S303:依頼受信ステップ)。次に、認証部260は、受信した認証命令に含まれる認証情報に基づき、処理装置により認証を行い認証成功又は認証失敗を判定する(S304:認証ステップ)。認証後、秘密情報特定部270は、受信した認証命令に含まれる乱数から秘密情報の識別情報を処理装置により計算して秘密情報を特定し、メモリ230から特定した秘密情報を読み出す(S305:秘密情報取得ステップ)。ここで、秘密情報の識別情報を計算する方法は、例えば、N個の秘密情報があった場合、生成した乱数のモジュロN(乱数をNで割った余り)の値を識別情報とする。次に、ハッシュ演算部250は、結果情報と秘密情報特定部270が読み出した秘密情報とを合わせた情報のハッシュ値(H)を応答情報として処理装置により生成する(S306:応答情報生成ステップ)。そして、認証装置通信部240は、応答情報(ハッシュ値(H))をホスト装置100へ通信装置を介して送信(応答)する(S307:応答情報送信ステップ)。
ホスト装置100の依頼装置通信部140は、認証装置200が送信した応答情報(ハッシュ値(H))を通信装置を介して受信する(S308:応答情報受信ステップ)。次に、秘密情報特定部190は、乱数生成部180が生成した乱数から秘密情報の識別情報を処理装置により計算して秘密情報を特定し、メモリ130から特定した秘密情報を読み出す(S309:秘密情報取得ステップ)。ここで、ホスト装置100の秘密情報特定部190と認証装置200の秘密情報特定部270とは、同じ入力データであれば、同じ秘密情報の識別情報が計算されるように同じメカニズム具備している。ここでは、ホスト装置100の秘密情報特定部190と認証装置200の秘密情報特定部270とへの入力は同じ値(同じ乱数)であるため、同じ秘密情報を読み出すことになる。そして、ハッシュ演算部150は、認証成功(判定情報の一例)と秘密情報特定部190が読み出した秘密情報とを合わせた情報のハッシュ値(H’)を検証情報として処理装置により生成する(S310:検証情報生成ステップ)。結果判定部160は、受信した応答情報(ハッシュ値(H))と生成した検証情報(ハッシュ値(H’))とを処理装置により比較する(S311:結果判定ステップ)。結果判定部160は、比較の結果、応答情報と検証情報とが一致した場合、認証成功としてその後の処理、例えば、外部接続機器300との通信を開始する(S312:成功処理ステップ)。一方、結果判定部160は、比較の結果、応答情報と検証情報とが一致しない場合、認証失敗として処理し、例えば外部接続機器300に認証失敗を応答する(S313:失敗処理ステップ)。

0029

以上のように、使用する秘密情報を特定するための情報として、秘密情報の識別情報に代え、乱数をホスト装置100から認証装置200へ送信している。実施の形態2に係る認証システムでは、同じ秘密情報を使用する場合には同じ認証命令をホスト装置100から認証装置200へ送信することになるが、この実施の形態に係る認証システムでは、同じ秘密情報を使用する場合でも異なる認証命令をホスト装置100から認証装置200へ送信することになる。そのため、認証命令と応答情報の対応関係が複雑になる。したがって、実施の形態2に係る認証システムと同様の効果を得つつ、実施の形態2に係る認証システムよりも通信データの解析が困難になり、セキュリティの面での信頼度がさらに向上する。

0030

なお、ホスト装置100で秘密情報を読み出すタイミング(S309)は、認証装置200から応答情報を受信した後でなくてもよい。例えば、乱数を生成した後(S301の後)でも、認証装置200へ認証命令を送信した後(S310の後)でも構わない。
また、ホスト装置100が認証装置200へ乱数を送信するタイミングは、認証命令と同じでなくてもよい。例えば、外部接続機器300から認証情報を受信する前に、生成した乱数を送信しておいてもよく、外部接続機器300から認証情報を受信した後に、認証命令と区別して認証装置200に乱数を送信してもよい。

0031

実施の形態4.
実施の形態2,3では、認証装置200からホスト装置100への応答情報を、結果情報と秘密情報とを合わせた情報のハッシュ値とした。そのため、実施の形態2,3では、認証成功時の応答情報のパターン数は秘密情報の個数になる。この実施の形態では、認証装置200からホスト装置100への応答情報を、結果情報と秘密情報とを合わせた情報に、さらに乱数を合わせた情報のハッシュ値とすることで、認証応答のパターン数を秘密情報の個数以上にする認証システムについて説明する。

0032

この実施の形態に係る認証システムの機能構成は、実施の形態3に係る認証システムの機能構成と同様である。

0033

図10は、この実施の形態に係る認証システムの動作を示すフローチャートである。図10は、ホスト装置100が外部接続機器300から認証情報を受信した以降の処理を示す。ここでは、この実施の形態に係る認証システムの動作について、実施の形態3に係る認証システムの動作と異なる部分のみ説明する。
(S401)から(S405)までは、実施の形態3の(S301)から(S305)までと同様である。
(S405)の次に、認証装置200のハッシュ演算部250は、結果情報と、秘密情報特定部270が読み出した秘密情報と、認証装置通信部240が受信した乱数とを合わせた情報のハッシュ値(H)を応答情報として処理装置により生成する(S406:応答情報生成ステップ)。
(S407)から(S409)までは、実施の形態3の(S307)から(S309)までと同様である。
(S409)の次に、ホスト装置100のハッシュ演算部150は、認証成功(判定情報の一例)と、秘密情報特定部190が読み出した秘密情報と、乱数生成部180が生成した乱数とを合わせた情報のハッシュ値(H’)を検証情報として処理装置により生成する(S410:検証情報生成ステップ)。
(S411)から(S413)までは、実施の形態3の(S311)から(S313)までと同様である。

0034

以上のように、認証装置200からホスト装置100へ送信する応答情報は、結果情報と秘密情報と乱数とを合わせた情報のハッシュ値である。そのため、同じ秘密情報を使用する場合でも異なる応答情報になる。したがって、実施の形態3に係る認証システムと同様の効果を得つつ、実施の形態3に係る認証システムよりも通信データの解析が困難になり、セキュリティの面での信頼度がさらに向上する。

0035

なお、(S406)において、認証装置200がハッシュ値を演算する際、結果情報と秘密情報とホスト装置100から受信した乱数とを合わせた情報のハッシュ値を生成した。しかし、認証装置200に乱数生成部を持たせ、認証装置200が生成した乱数をハッシュ値の対象としてもよい。そして、認証装置200は生成した乱数とハッシュ値(H)をホスト装置100に送信し、ホスト装置100では、ハッシュ値を演算する場合に、認証装置200から受信した乱数を使用してハッシュ値(H’)を演算してもよい。

0036

実施の形態5.
実施の形態4では、結果情報と秘密情報と乱数とを合わせた情報のハッシュ値を応答情報とした。この実施の形態では、結果情報と秘密情報とカウンタ値とを合わせた情報のハッシュ値を応答情報とする認証システムについて説明する。

0037

図11は、この実施の形態に係る認証システムの機能を示す機能ブロック図である。
この実施の形態に係る認証システムの機能について、実施の形態3に係る認証システムの機能と異なる部分のみ説明する。
ホスト装置100は、実施の形態3に係るホスト装置100の機能に加え、カウンタ部120を備える。カウンタ部120は、実施の形態1に係るカウンタ部120と同様である。
認証装置200は、実施の形態3に係る認証装置200の機能に加え、カウンタ部220を備える。カウンタ部220は、実施の形態1に係るカウンタ部220と同様である。
ホスト装置100のメモリ130と認証装置200のメモリ230とは、共有情報として、識別情報が付された複数の秘密情報とカウンタ値とを記憶する。

0038

図12は、この実施の形態に係る認証システムの動作を示すフローチャートである。図12は、ホスト装置100が外部接続機器300から認証情報を受信した以降の処理を示す。ここでは、この実施の形態に係る認証システムの動作について、実施の形態3に係る認証システムの動作と異なる部分のみ説明する。
(S501)から(S505)までは、実施の形態3の(S301)から(S305)までと同様である。
(S505)の次に、認証装置200のカウンタ部220は、メモリ230が記憶するカウンタ値を処理装置により1増加させる(S506:変更ステップ)。そして、ハッシュ演算部250は、結果情報と、秘密情報特定部270が読み出した秘密情報と、メモリ230が記憶するカウンタ値とを合わせた情報のハッシュ値(H)を応答情報として処理装置により生成する(S507:応答情報生成ステップ)。
(S508)から(S510)までは、実施の形態3の(S307)から(S309)までと同様である。
(S510)の次に、ホスト装置100のカウンタ部120は、メモリ130が記憶するカウンタ値を処理装置により1増加させる(S511:変更ステップ)。ハッシュ演算部150は、認証成功(判定情報の一例)と、秘密情報特定部190が読み出した秘密情報と、メモリ130が記憶するカウンタ値とを合わせた情報のハッシュ値(H’)を検証情報として処理装置により生成する(S512:検証情報生成ステップ)。
(S513)から(S515)までは、実施の形態3の(S311)から(S313)までと同様である。

0039

以上のように、認証装置200からホスト装置100へ送信する応答情報は、結果情報と秘密情報とカウンタ値とを合わせた情報のハッシュ値である。そのため、同じ秘密情報を使用する場合でも異なる応答情報になる。したがって、実施の形態4に係る認証システムと同様に、実施の形態3に係る認証システムと同様の効果を得つつ、実施の形態3に係る認証システムよりも通信データの解析が困難になり、セキュリティの面での信頼度がさらに向上する。

0040

なお、カウンタを1増加するタイミングは上記の述べた以外でも、ホスト装置100のカウンタ部と認証装置200のカウンタ部が同期していればよい。例えば、認証装置200ではハッシュ値(H)をホスト装置100に送信した後1増加し、ホスト装置100ではハッシュ値の比較後に1増加してもよい。

0041

また、以上の実施の形態(実施の形態1−5)では、ホスト装置100が認証装置200へ認証情報を送信すると説明した。しかし、外部接続機器300から認証装置200へ認証情報が送信されてもよい。つまり、認証装置200は外部接続機器300から受信した認証情報に基づき認証処理を行い、その結果をホスト装置100へ送信するとしてもよい。この場合、認証装置200と外部接続機器300とは通信回線により接続され、通信可能である。
また、この場合、例えば秘密情報を特定するための特定情報は、認証情報とは別にホスト装置100から認証装置200へ送信されることになる。例えば、認証装置200は、外部接続機器300から認証情報を受信すると、ホスト装置100へ特定情報を要求し、ホスト装置100から特定情報を取得するとしてもよい。

0042

同様に、以上の実施の形態(実施の形態1−5)では、ハッシュ演算部150は、認証成功(判定情報の一例)とカウンタ値とのハッシュ値(H’)を検証情報として生成した。しかし、認証失敗(判定情報の一例)とカウンタ値とのハッシュ値(H’)を検証情報として生成してもよい。この場合、結果判定部160は、応答情報と検証情報とが不一致であれば、認証成功と判断し、一致すれば認証失敗と判断する。以下の実施の形態においても同様である。

0043

実施の形態6.
実施の形態1,5では、結果情報にカウンタ値を付加した情報のハッシュ値を応答情報とした。しかし、ホスト装置100と認証装置200との間の通信路に何らかの障害が発生し、ホスト装置100が応答情報を受信できなかった場合や、攻撃者解析目的で認証装置200へ不正な認証命令を送信した場合等には、ホスト装置100と認証装置200との間でカウンタ値がずれてしまう虞がある。この実施の形態では、ホスト装置100と認証装置200との間でカウンタ値がずれた場合に、カウンタ値を再同期する認証システムについて説明する。

0044

この実施の形態に係る認証システムの機能構成は、実施の形態1又は5に係る認証システムの機能構成と同様である。

0045

図13は、この実施の形態に係る認証システムのカウンタ値再同期処理の動作を示すフローチャートである。
カウンタ値再同期処理は、ホスト装置100が受信したハッシュ値(H)とホスト装置100で演算したハッシュ値(H’)とを比較し、ハッシュ値(H)とハッシュ値(H’)とが不一致である場合に実行される。つまり、カウンタ値再同期処理は、ハッシュ値(H)とハッシュ値(H’)とが不一致である場合に必要な処理であり、ハッシュ値(H)とハッシュ値(H’)とが一致した場合はカウンタ値が一致しているとみなせるため不要である。
つまり、図13の(S601)は、実施の形態1であれば、図4の(S111)であり、実施の形態5であれば、図12の(S513)である。つまり、図13は、実施の形態1であれば、図4の(S111)以降の処理を置き換えるものであり、実施の形態5であれば、図12の(S513)以降の処理を置き換えるものである。
なお、ここでは、実施の形態1の図4の(S111)以降の処理を置き換えるものとして説明する。つまり、応答情報は、実施の形態1と同様に結果情報とカウンタ値とを合わせた情報のハッシュ値とする。図12の(S513)以降の処理を置き換える場合には、応答情報の生成処理を結果情報と秘密情報とカウンタ値とを合わせた情報のハッシュ値を計算する処理に置き換えればよい。

0046

ホスト装置100の結果判定部160は、受信した応答情報(ハッシュ値(H))と生成した検証情報(ハッシュ値(H’))とを処理装置により比較する(S601:結果判定ステップ)。比較の結果、応答情報と検証情報とが一致した場合、結果判定部160は、認証成功としてその後の処理、例えば、外部接続機器300との通信を開始する(S602:成功処理ステップ)。
一方、比較の結果、応答情報と検証情報とが一致しない場合、ハッシュ演算部150は、認証失敗(判定情報の一例)とカウンタ値とのハッシュ値(H’’)を新たに検証情報として処理装置により生成する(S603:検証情報生成ステップ)。結果判定部160は、受信した応答情報(ハッシュ値(H))と新たに生成した検証情報(ハッシュ値(H’’))とを処理装置により比較する(S604:結果判定ステップ)。比較の結果、応答情報と検証情報とが一致した場合、結果判定部160は、認証失敗としてその後の処理、例えば外部接続機器300に認証失敗を応答する(S605:失敗処理ステップ)。
一方、比較の結果、応答情報と検証情報とが一致しない場合、カウンタ値がずれていると判断し、カウンタ部120は、メモリ130が記憶するカウンタ値を処理装置により1増加する(S606:変更ステップ)。そして、ハッシュ演算部150は、認証成功とカウンタ値とを合わせた情報のハッシュ値(H’’’)を新たに検証情報として処理装置により生成する(S607:検証情報生成ステップ)。結果判定部160は、受信した応答情報(ハッシュ値(H))と新たに生成した検証情報(ハッシュ値(H’’’))とを処理装置により比較する(S608:結果判定ステップ)。比較の結果、応答情報と検証情報とが一致した場合、結果判定部160は、認証成功としてその後の処理、例えば、外部接続機器300との通信を開始する(S602:成功処理ステップ)。一方、比較の結果、応答情報と検証情報とが一致しない場合、ハッシュ演算部150は、認証失敗(判定情報の一例)とカウンタ値とのハッシュ値(H’’’’)を新たに検証情報として処理装置により生成する(S609:検証情報生成ステップ)。結果判定部160は、受信した応答情報(ハッシュ値(H))と新たに生成した検証情報(ハッシュ値(H’’’’))とを処理装置により比較する(S610:結果判定ステップ)。比較の結果、応答情報と検証情報とが一致した場合、結果判定部160は、認証失敗としてその後の処理、例えば外部接続機器300に認証失敗を応答する(S605:失敗処理ステップ)。一方、比較の結果、応答情報と検証情報とが一致しない場合、制御部110は、(S606)へ戻り処理を繰り返す。

0047

以上のように、ホスト装置100は、受信したハッシュ値(H)と生成したハッシュ値(H’)とが不一致の場合、認証失敗とカウンタ値のハッシュ値(H’’)を新たに生成して、受信したハッシュ値(H)と新たに生成したハッシュ値(H’’)とを比較する。ホスト装置100は、受信したハッシュ値(H)と新たに生成したハッシュ値(H’’)とが不一致の場合には、カウンタ値にずれが生じていると判断する。そして、ホスト装置100は、カウンタ値を増加させて新たにハッシュ値を生成して、受信したハッシュ値(H)との比較を繰り返す。これにより、ホスト装置100と認証装置200のカウンタ値がずれた場合にも再同期することが可能である。したがって、実施の形態1,5に係る認証システムの信頼性をさらに向上させることができる。
また、カウンタ値を減少させることなく、増加させて比較しているので、一度利用された情報を再利用して認証結果を改ざんする攻撃対抗することができる。

0048

なお、(S606)から(S610)までの処理の繰り返し回数を所定の回数に制限してもよい。

0049

実施の形態7.
実施の形態6では、ホスト装置100と認証装置200との間でずれたカウンタ値を再同期する場合に、ホスト装置100側で増加させたカウンタ値を含めたハッシュ値を演算し、受信したハッシュ値との比較を行った。この実施の形態では、ホスト装置100から認証装置200へ現在のカウンタ値を送信することによりカウンタ値を再同期する認証システムについて説明する。

0050

この実施の形態に係る認証システムの機能構成は、実施の形態6に係る認証システムと同様に、実施の形態1又は5に係る認証システムの機能構成と同様である。

0051

図14は、この実施の形態に係る認証システムのカウンタ値再同期処理の動作を示すフローチャートである。ここでは、この実施の形態に係る認証システムのカウンタ値再同期処理の動作について、実施の形態6に係る認証システムのカウンタ値再同期処理の動作と異なる部分のみ説明する。
カウンタ値再同期処理は、実施の形態6と同様に、ハッシュ値(H)とハッシュ値(H’)とが不一致である場合に実行される。
図14の(S701)は、実施の形態1であれば、図4の(S111)であり、実施の形態5であれば、図12の(S513)である。つまり、図13は、実施の形態1であれば、図4の(S111)以降の処理を置き換えるものであり、実施の形態5であれば、図12の(S513)以降の処理を置き換えるものである。
なお、ここでは、実施の形態1の図4の(S111)以降の処理を置き換えるものとして説明する。つまり、応答情報は、実施の形態1と同様に結果情報とカウンタ値とを合わせた情報のハッシュ値とする。図12の(S513)以降の処理を置き換える場合には、応答情報の生成処理を結果情報と秘密情報とカウンタ値とを合わせた情報のハッシュ値を計算する処理に置き換えればよい。

0052

(S701)から(S705)までは、実施の形態6の(S601)から(S605)までと同様である。
(S704:結果判定ステップ)で比較の結果、応答情報と検証情報とが一致しない場合、ホスト装置100の依頼装置通信部140は、認証情報と現在のカウンタ値とを含む再認証命令を認証装置200へ通信装置を介して送信する(S706:再依頼ステップ)。
認証装置200の認証装置通信部240は、ホスト装置100が送信した再認証命令を通信装置を介して受信する(S707:再依頼受信ステップ)。そして、認証部260は、受信した再認証命令に含まれる認証情報に基づき、処理装置により認証処理を行い認証成功又は認証失敗を判定する(S708:認証ステップ)。次に、制御部210は、受信したカウンタ値をメモリ230に設定する(S709:変更ステップ)。次に、ハッシュ演算部250は、結果情報とメモリ230が記憶するカウンタ値とを合わせた情報のハッシュ値(H)を新たに応答情報として処理装置により生成する(S710:応答情報生成ステップ)。そして、認証装置通信部240は、応答情報(ハッシュ値(H))をホスト装置100へ通信装置を介して送信(応答)する(S711:応答情報送信ステップ)。
ホスト装置100の依頼装置通信部140は、認証装置200が送信した応答情報(ハッシュ値(H))を通信装置を介して受信する(S712:応答情報受信ステップ)。次に、ハッシュ演算部150は、認証成功(判定情報の一例)とメモリ130が記憶するカウンタ値とを合わせた情報のハッシュ値(H’)を検証情報として処理装置により生成する(S713:検証情報生成ステップ)。そして、結果判定部160は、受信した応答情報(ハッシュ値(H))と生成した検証情報(ハッシュ値(H’))とを処理装置により比較する(S714:結果判定ステップ)。結果判定部160は、比較の結果、応答情報と検証情報とが一致した場合、認証成功としてその後の処理、例えば、外部接続機器300との通信を開始する(S715:成功処理ステップ)。一方、結果判定部160は、比較の結果、応答情報と検証情報とが一致しない場合、認証失敗として処理し、例えば外部接続機器300に認証失敗を応答する(S716:失敗処理ステップ)。

0053

以上のように、実施の形態7では、実施の形態6と同様の処理により、カウンタ値にずれが生じていると判断する。そして、ホスト装置100は、カウンタ値にずれが生じていると判断すると、カウンタ値を含む再認証命令を認証装置200へ送信する。認証装置200は、再認証命令を受信すると、再認証命令に含まれるカウンタ値をメモリ230に設定するとともに、そのカウンタ値で再度ハッシュ値を演算して応答情報を生成し、ホスト装置100へ送信する。これにより、ホスト装置100と認証装置200のカウンタ値がずれた場合にも確実に再同期することが可能である。したがって、実施の形態1,5に係る認証システムの信頼性をさらに向上させることができる。また、実施の形態6に係る認証システムでは、カウンタ値のずれた量に比例して処理が多くなるが、この実施の形態に係る認証システムでは、カウンタ値のずれた量とは無関係に1度の処理で再同期することができる。

0054

なお、認証装置200が再認証命令に含まれるカウンタ値を設定する処理(S709)は、ホスト装置100から再認証命令を受信した後であれば、認証後(S708の後)でなくてもよい。また、認証装置200は、再認証命令に含めて受信したカウンタ値を1増加させた値をカウンタ値に設定するとともにハッシュ値(H)を計算し、ホスト装置100は応答情報を受信した後、カウンタ値を1増加させてハッシュ値(H’)を計算するとしてもよい。つまり、再認証命令に含まれるカウンタ値をそのまま利用することによるセキュリティの低下を防止するようにしてもよい。

0055

また、上記説明では、ホスト装置100でハッシュ値の比較の結果、認証成功とも認証失敗とも一致しない場合に(カウンタ値がずれていると判断した場合に)、認証装置200へカウンタ値を含む再認証命令を送信した。しかし、通常の認証命令にカウンタ値を含めて認証装置200へ送信するとしてもよい。つまり、認証命令には必ずカウンタ値を含めるとしてもよい。
また、認証命令を送信する前の所定のタイミングで、例えば電源投入直後にホスト装置100から認証装置200へカウンタ値を送信してカウンタ値を同期させ、それ以降はカウンタ値を含めない認証命令を送信するようにしてもよい。

0056

さらに、上記説明では、応答情報受信後、ホスト装置100が認証情報とカウンタ値とを含む再認証命令を認証装置200へ再送信した。そして、認証装置200は受信した再認証命令に含まれる認証情報で再び認証した。しかし、ホスト装置100は、再認証命令にカウンタ値のみを含めて(認証情報を含めずに)送信し、認証装置200は前回の認証情報に基づき認証した際の結果情報と受信したカウンタ値とを合わせた情報のハッシュ値を応答情報として生成してもよい。

0057

実施の形態8.
実施の形態7では、ホスト装置100から認証装置200へ現在のカウンタ値を送信することによってずれたカウンタ値を再同期した。この実施の形態では、認証装置200からホスト装置100へ現在のカウンタ値を送信することによりカウンタ値を再同期する認証システムについて説明する。

0058

この実施の形態に係る認証システムの機能構成は、実施の形態6,7に係る認証システムと同様に、実施の形態1又は5に係る認証システムの機能構成と同様である。

0059

図15は、この実施の形態に係る認証システムのカウンタ値再同期処理の動作を示すフローチャートである。ここでは、この実施の形態に係る認証システムのカウンタ値再同期処理の動作について、実施の形態6に係る認証システムのカウンタ値再同期処理の動作と異なる部分のみ説明する。
カウンタ値再同期処理は、実施の形態6と同様に、ハッシュ値(H)とハッシュ値(H’)とが不一致である場合に実行される。
図15の(S801)は、実施の形態1であれば、図4の(S111)であり、実施の形態5であれば、図12の(S513)である。つまり、図13は、実施の形態1であれば、図4の(S111)以降の処理を置き換えるものであり、実施の形態5であれば、図12の(S513)以降の処理を置き換えるものである。
なお、ここでは、実施の形態1の図4の(S111)以降の処理を置き換えるものとして説明する。つまり、応答情報は、実施の形態1と同様に結果情報とカウンタ値とを合わせた情報のハッシュ値とする。図12の(S513)以降の処理を置き換える場合には、応答情報の生成処理を結果情報と秘密情報とカウンタ値とを合わせた情報のハッシュ値を計算する処理に置き換えればよい。

0060

(S801)から(S805)までは、実施の形態6の(S601)から(S605)までと同様である。
(S804:結果判定ステップ)で比較の結果、応答情報と検証情報とが一致しない場合、ホスト装置100の依頼装置通信部140は、カウンタ値要求命令を認証装置200へ通信装置を介して送信する(S806:カウンタ値要求ステップ)。
認証装置200の認証装置通信部240は、ホスト装置100が送信したカウンタ値要求命令を通信装置を介して受信する(S807:カウンタ値要求受信ステップ)。次に、ハッシュ演算部250は、前回応答情報を送信した際のカウンタ値のハッシュ値(h)を処理装置により生成する(S808:カウンタ情報生成ステップ)。そして、認証装置通信部240は、カウンタ値のハッシュ値(h)をホスト装置100へ通信装置を介して送信(応答)する(S809:カウンタ情報送信ステップ)。
ホスト装置100の依頼装置通信部140は、認証装置200が送信したハッシュ値(h)を通信装置を介して受信する(S810:カウンタ情報受信ステップ)。次に、カウンタ部120は、メモリ130が記憶するカウンタ値を処理装置により1増加する(S811:変更ステップ)。次に、ハッシュ演算部150は、メモリ130が記憶するカウンタ値のハッシュ値(h’)を処理装置により計算する(S812:カウンタ検証情報生成ステップ)。そして、結果判定部160は、受信したハッシュ値(h)と算出したハッシュ値(h’)とを処理装置により比較する(S813:カウンタ値検証ステップ)。比較の結果、ハッシュ値(h)とハッシュ値(h’)とが一致した場合、認証成功とメモリ130が記憶するカウンタ値とを合わせた情報のハッシュ値(H’)を新たに検証情報として処理装置により生成する(S814:検証情報生成ステップ)。一方、比較の結果、ハッシュ値(h)とハッシュ値(h’)とが一致しない場合、(S811)へ戻り処理を繰り返す。つまり、(S813)でハッシュ値が一致するまで(S811)から(S813)の処理を繰り返す。
(S814)に続き、結果判定部160は、受信した応答情報(ハッシュ値(H))と新たに生成した検証情報(ハッシュ値(H’))とを処理装置により比較する(S815:結果判定ステップ)。結果判定部160は、比較の結果、応答情報と検証情報とが一致した場合、認証成功としてその後の処理、例えば、外部接続機器300との通信を開始する(S816:成功処理ステップ)。一方、結果判定部160は、比較の結果、応答情報と検証情報とが一致しない場合、認証失敗として処理し、例えば外部接続機器300に認証失敗を応答する(S817:失敗処理ステップ)。

0061

以上のように、実施の形態8では、実施の形態6と同様の処理により、カウンタ値にずれが生じていると判断する。そして、カウンタ値にずれが生じていると判断すると、ホスト装置100は、カウンタ値要求命令を認証装置200へ送信する。すると、認証装置200はカウンタ値のハッシュ値を計算してホスト装置100へ送信する。ホスト装置100は、受信したカウンタ値のハッシュ値に基づき、メモリ130が記憶するカウンタ値を変更する。これにより、ホスト装置100と認証装置200のカウンタ値がずれた場合にも確実に再同期することが可能である。したがって、実施の形態1,5に係る認証システムの信頼性をさらに向上させることができる。また、応答情報を生成するための元情報であるカウンタ値が直接ホスト装置100と認証装置200間の通信路を流れないので、通信データの解析を困難にし、セキュリティの面で信頼度が向上する。

0062

なお、上記説明では、ホスト装置100でハッシュ値の比較の結果、認証成功とも認証失敗とも一致しない場合に(カウンタ値がずれていると判断した場合に)、認証装置200にカウンタ値要求命令を送信した。しかし、通常の応答情報に結果情報とカウンタ値とを合わせた情報のハッシュ値(H)とカウンタ値のみのハッシュ値(h)とを含めてホスト装置100へ送信するとし、ホスト装置100では、応答情報(ハッシュ値(H’))と検証情報(ハッシュ値(H))との比較で一致しない場合に、(S811)以降の処理を行うようにしてもよい。
また、認証命令を送信する前の所定のタイミングで、例えば電源投入直後に(S806)から(S813)までの処理を実行してカウンタ値を同期させ、その以降では通常の認証命令を送信するようにしてもよい。

0063

実施の形態9.
以上の実施の形態では、認証成功又は認証失敗を示す応答情報の送信に関するものであった。この実施の形態では、認証装置200でエラー(認証失敗とは異なる、例えば認証命令のフォーマット異常やデータ長異常等)が発生した場合に、発生したエラーを示すエラーコードを認証装置200がホスト装置100へ送信する認証システムについて説明する。

0064

この実施の形態に係る認証システムの機能構成は、各実施の形態に係る認証システムの機能構成と同様である。ここでは、実施の形態1に係る認証システムの機能構成を例として説明する。

0065

図16は、この実施の形態に係る認証システムのエラー発生処理の動作を示すフローチャートである。
エラー発生処理は、認証装置200の処理においてエラーが発生した場合に実行される。つまり、図16の(S901)は、実施の形態1であれば、図4の(S103)から(S107)までの間でエラーが発生すると実行される。実施の形態2であれば、図7の(S203)から(S207)までの間でエラーが発生すると実行される。実施の形態3であれば、図9の(S303)から(S307)までの間でエラーが発生すると実行される。実施の形態4であれば、図10の(S403)から(S407)までの間でエラーが発生すると実行される。実施の形態5であれば、図12の(S503)から(S508)までの間でエラーが発生すると実行される。

0066

認証装置200の制御部210がエラーを検出した場合、ハッシュ演算部250は、該当エラーを表すエラーコードとメモリ230が記憶するカウンタ値とを合わせた情報のハッシュ値(H)を応答情報として処理装置により生成する(S901:応答情報生成ステップ)。そして、認証装置通信部240は、応答情報をホスト装置100へ通信装置を介して送信する(S902:応答情報送信ステップ)。
ホスト装置100の依頼装置通信部140は、応答情報(ハッシュ値(H))を通信装置を介して受信する(S903:応答情報受信ステップ)。すると、まず通常の処理として、ハッシュ演算部150は、認証成功とカウンタ値とのハッシュ値を検証情報として処理装置により生成する(S904:検証情報生成ステップ)。この時、ホスト装置100と認証装置200とのカウンタ値は同じ値である(もし異なる場合には実施の形態6,7,8で説明した方法により同期させる必要がある)。そして、結果判定部160は、応答情報(ハッシュ値(H))と検証情報(ハッシュ値(H’))を処理装置により比較する(S905:結果判定ステップ)。比較の結果、応答情報と検証情報とが一致した場合、結果判定部160は、認証成功としてその後の処理、例えば、外部接続機器300との通信を開始する(S906:成功処理ステップ)。
一方、比較の結果、応答情報と検証情報とが一致しない場合、ハッシュ演算部150は、認証失敗(判定情報の一例)とカウンタ値とのハッシュ値(H’’)を新たに検証情報として生成する(S907:検証情報生成ステップ)。結果判定部160は、受信した応答情報(ハッシュ値(H))と新たに生成した検証情報(ハッシュ値(H’’))とを比較する(S908:結果判定ステップ)。比較の結果、応答情報と検証情報とが一致した場合、結果判定部160は、認証失敗としてその後の処理、例えば外部接続機器300に認証失敗を応答する(S909:失敗処理ステップ)。
一方、比較の結果、応答情報と検証情報とが一致しない場合、ハッシュ演算部150は、エラーコードとカウンタ値とのハッシュ値(H’’’)を新たに検証情報として処理装置により生成する(S910:検証情報生成ステップ)。そして、結果判定部160は、応答情報(ハッシュ値(H))と新たに生成した検証情報(ハッシュ値(H’’’))とを処理装置により比較する(S911:結果判定ステップ)。比較の結果、応答情報と検証情報が一致した場合、検証情報の生成に使用したエラーコードでエラーが発生したとして処理、例えば、認証装置200へ認証情報の再送を行う(S912:エラー処理ステップ)。一方、比較の結果、応答情報と検証情報とが一致しない場合、(S910)へ戻り処理を繰り返す。つまり、エラーコードが特定されるか、又は全てのエラーコードについて比較処理を行うまで処理を繰り返す。

0067

以上のように、認証装置200で発生したエラーを表すエラーコードを認証成功及び認証失敗の場合と同様の形式で応答する。そのため、認証成功及び認証失敗とエラーコードとを区別して応答する場合、つまり、認証成功及び認証失敗の場合はハッシュ値による応答、エラーコードはそのまま(エラーコード自体で)応答する場合に比べ、通信データからエラーケースを特定することが困難になる。そのため、ホスト装置100と認証装置200との間での通信データを解析することがより困難になり、セキュリティの面での信頼度が向上する。

0068

実施の形態10.
実施の形態2−5では、ホスト装置100と認証装置200とは予め共有した秘密情報を用いて応答情報を送受信した。秘密情報は、ホスト装置100と認証装置200との製造者関係者以外には知られてはならない情報である。秘密情報が第三者漏洩した場合や、ホスト装置100や認証装置200から容易に読み出せる場合、認証結果の改ざんが起こりえる。一方、ホスト装置100や認証装置200の製造者や保守する者は、秘密情報をメモリから読み出したり、書き込んだりしなければならない場合もある。この実施の形態では、秘密情報が正当な者のみがアクセスできるようにする利用者認証を備える認証システムについて説明する。

0069

図17は、この実施の形態に係る認証システムの機能を示す機能ブロック図である。
図17において、対象装置(ホスト装置100又は認証装置200)は秘密情報を書き込まれ、読み出しされる装置である。図17では、この実施の形態に関わる機能構成のみを記述している。つまり、図17に示す機能構成にハッシュ演算部150、結果判定部160や、ハッシュ演算部250、認証部260等を追加することで上述した実施の形態のホスト装置100や認証装置200が実現できる。秘密情報書き込み読み出し装置400は、接続された対象装置に秘密情報を書き込んだり、読み出したりする装置である。

0070

対象装置は、制御部510、通信部520、メモリ530、アクセス制御部540を備える。
制御部510は、装置全体の制御を行う。制御部510は、ホスト装置100であれば制御部110であり、認証装置200であれば制御部210である。
通信部520は、秘密情報書き込み読み出し装置400と通信装置を介して通信を行う。通信部520は、ホスト装置100であれば依頼装置通信部140、認証装置200であれば認証装置通信部240であってもよいし、依頼装置通信部140や認証装置通信部240とは別に設けられてもよい。
メモリ530は、複数の秘密情報とその識別情報とを記憶する。対象装置のメモリ530が記憶する秘密情報とその識別情報は図6と同様の構成である。
アクセス制御部540は、秘密情報書き込み読み出し装置400を認証して、メモリ530へのアクセスを処理装置により制御する。

0071

秘密情報書き込み読み出し装置400は、ホスト装置100や認証装置200の製造者や保守する者のみが扱える装置である。秘密情報書き込み読み出し装置400に利用者認証機能を設けて、正当な製造者や保守する者のみが扱えるようにしてもよい。

0072

図18は、秘密情報書き込み読み出し装置400と対象装置との動作を示すフローチャートである。図18では、秘密情報書き込み読み出し装置400が対象装置に秘密情報を書き込み、その後対象装置から秘密情報を読み出すフローである。
前提として、対象装置は、秘密情報書き込み読み出し装置400からの命令を受信可能な状態であるとする。秘密情報書き込み読み出し装置400からの命令を受信可能な状態とは、上述した実施の形態における通常の利用状態でもよいし、対象装置に設けられたスイッチを操作したり、端子を設定したりすることで設定される通常の利用状態ではない特殊な状態でもよい。

0073

秘密情報書き込み読み出し装置400は、正当な装置であることを認証するための装置認証情報を含む装置認証命令を対象装置へ通信装置を介して送信する(S1001:装置認証命令送信ステップ)。
対象装置の通信部520は、装置認証命令を通信装置を介して受信する(S1002:装置認証命令受信ステップ)。アクセス制御部540は、受信した装置認証情報に基づき、秘密情報書き込み読み出し装置400を処理装置により認証する(S1003:認証ステップ)。そして、通信部520は、認証結果を秘密情報書き込み読み出し装置400へ通信装置を介して送信する(S1004:認証結果送信ステップ)。
秘密情報書き込み読み出し装置400は、対象装置が送信した認証結果を受信する(S1005:認証結果受信ステップ)。

0074

次に、認証されたことを示す認証結果を受信した秘密情報書き込み読み出し装置400は、対象装置のメモリ530に記憶させる秘密情報を含む秘密情報書き込み命令を対象装置へ通信装置を介して送信する(S1006:書き込み命令送信ステップ)。ここでは、記憶させる秘密情報が複数ある場合には複数の秘密情報を秘密情報書き込み命令に含める。
対象装置の通信部520は、秘密情報書き込み命令を通信装置を介して受信する(S1007:書き込み命令受信ステップ)。上述した装置認証が成功した場合、すなわち秘密情報書き込み読み出し装置400が正当な装置であると認証された場合には、制御部510は秘密情報書き込み命令を実行し、秘密情報書き込み命令に含まれる秘密情報をメモリ530に記憶させる(S1008:書き込みステップ)。なお、秘密情報書き込み命令に複数の秘密情報が含まれている場合には、全ての秘密情報を記憶する。そして、通信部520は、秘密情報書き込み命令を実行したことを示す応答情報を秘密情報書き込み読み出し装置400へ通信装置を介して送信する(S1009:結果送信ステップ)。一方、装置認証に失敗していた場合、制御部510は、秘密情報をメモリ530に記憶させず、通信部520はエラーを秘密情報書き込み読み出し装置400へ通信装置を介して送信(応答)する。
秘密情報書き込み読み出し装置400は、対象装置が送信した応答を通信装置を介して受信する(S1010:結果受信ステップ)。

0075

次に、秘密情報書き込み読み出し装置400は、対象装置のメモリ530が記憶する秘密情報を読み出す秘密情報読み出し命令を対象装置へ通信装置を介して送信する(S1011:読み出し命令送信ステップ)。
対象装置の通信部520は、秘密情報読み出し命令を通信装置を介して受信する(S1012:読み出し命令受信ステップ)。上述した装置認証が成功した場合、すなわち秘密情報書き込み読み出し装置400が正当な装置であると認証された場合には、制御部510は秘密情報読み出し命令を実行し、メモリ530から秘密情報を読み出す(S1013:読み出しステップ)。そして、通信部520は、読み出した秘密情報を秘密情報書き込み読み出し装置400へ通信装置を介して送信する(S1014:結果送信ステップ)。一方、装置認証に失敗していた場合、制御部510は、秘密情報をメモリ530から読み出さず、エラーを秘密情報書き込み読み出し装置400へ通信装置を介して送信(応答)する。
秘密情報書き込み読み出し装置400は、対象装置が送信した応答を通信装置を介して受信する(S1015:結果受信ステップ)。

0076

書き込みや読み出しを実施した後、秘密情報書き込み読み出し装置400は、装置認証を解除する装置認証解除命令を対象装置へ通信装置を介して送信する(S1016:認証解除命令送信ステップ)。
対象装置の通信部520は、装置認証解除命令を通信装置を介して受信する(S1017:認証解除命令受信ステップ)。そして、アクセス制御部540は、認証成功を解除してその結果を秘密情報書き込み読み出し装置400へ通信装置へ送信する(S1018:認証解除ステップ)。
秘密情報書き込み読み出し装置400は、対象装置が送信した結果を通信装置を介して受信する(S1019:結果受信ステップ)。

0077

以上のように、対象装置にて、ホスト装置100や認証装置200の製造者や保守する者のみが扱える秘密情報書き込み読み出し装置400を認証し、認証に成功した場合のみ秘密情報の書き込みや読み出しを許可する。そのため、正当な秘密情報書き込み読み出し装置400、つまり、正当なホスト装置100や認証装置200の製造者や保守する者のみが対象装置に秘密情報の書き込みや読み出しができ、不正な第三者がホスト装置100や認証装置200から秘密情報を改ざんや読み出したりすることができない。したがって、セキュリティの面での信頼性が向上すると共に、製造や保守の面で利便性が向上する。

0078

なお、上記説明では、秘密情報の書き込みを実施した後、読み出しを実施する動作を示した。しかし、読み出しのみ実施する場合には、装置認証成功後(S1005の後)に(S1011)以降を実行し、書き込みのみを実施する場合には(S1010)の後に装置認証解除(S1016)を実行すればよい。

0079

また、秘密情報の書き込みは、上記説明のように複数をまとめて書き込む形態でも、いくつかに分割して書き込む形態でもよい。秘密情報の読み出しは、識別情報を読み出して、その後、各識別情報を指定して対応する秘密情報を読み出すようにしてもよい。いずれの場合であっても、装置認証に成功した場合のみ実施可能である。

0080

さらに、上記説明では、秘密情報の書き込みや読み出しの処理が終了した後、認証解除命令を対象装置に送信することで、成功した認証を解除している。しかし、電源オフや所定時間経過した場合に認証を解除するようにしてもよい。

0081

また、さらに、上記説明では、装置認証に失敗した場合、認証失敗の結果を応答するのみであった。しかし、連続認証失敗回数をメモリ530に記憶し、所定回数に達した場合に、所定時間もしくは永久に装置認証命令を無効するような構成にしてもよい。このような構成では、装置認証を解析しようとする攻撃を無効にでき、セキュリティの面での信頼性を向上することができる。

0082

さらに、装置認証命令や装置認証情報(アクセス権限情報の一例)を2種類に持つ構成としてもよい。つまり、装置認証情報Aを扱う装置認証命令Aは、秘密情報の書き込みと読み出しとが実施可能な命令と認証情報とする。他方の装置認証情報Bを扱う装置認証命令Bは、秘密情報の読み出しのみが実施可能な命令と認証情報とする。このような構成で、装置認証命令Aを受信した対象装置のアクセス制御部540は、装置認証情報Aを用いて装置認証を行い、認証に成功した場合には秘密情報の書き込みと読み出しとを許可する。一方、装置認証命令Bを受信した対象装置のアクセス制御部540は、装置認証情報Bを用いて装置認証を行い、認証に成功した場合には秘密情報の読み出しのみを許可し、書き込みは許可しない。
このような構成では、秘密情報の書き込みと読み出しに関する権限を詳細化し、必要最小限の権限のみを保守員や他の製造者に与えることができ、セキュリティの面での信頼性が向上させることができる。

0083

なお、以上の実施形態は、一般的な適用例を示している。認証装置200によって得た認証結果を他の装置へ伝送することによって装置やシステムの制御を行う他の製品やシステム、例えば、上述した退室管理システム、マイクロコントローラが内蔵された装置や、電子キーデジタル家電機器認証等にも適用できる。
例えば、入退室管理装置の場合、外部接続機器300は、入退室者などからのICカード指紋などの入退室を制御するために使用される認証情報が入力される装置であり、例えばカードリーダや指紋リーダなどの入力装置に相当する。認証装置200は、カードリーダや指紋リーダに接続されカード情報指紋情報などの認証情報を用いて入退室者を認証する認証装置に相当する。ホスト装置100は、認証装置200からの命令により扉を開閉する電気錠に相当する。このような構成で、入力装置から受信した認証情報によって認証装置は認証を行い、認証に成功した場合、電気錠へ開錠信号を送信する。
また、車両に搭載され、運転者が保有するカードキーによって車両のドアを開錠する電子キーの場合、外部接続機器300はカードキーに、認証装置200はカードキーからの信号を受信して正当な運転者であることを認証する認証装置に、ホスト装置100は車両のドアを開錠するドア制御装置に相当する。このような構成で、カードキーから受信した情報によって認証装置200は認証を行い、その結果に応じてドア開閉装置へ開錠信号を送信する。つまり、以上の実施の形態に係る認証システムによって開錠信号の改ざんや再利用を防ぐことができる。

0084

実施の形態11.
上述した実施の形態では、応答情報の改ざんを防止することについて説明した。この実施の形態では、機器固有の識別情報を用いて、その機器が正当な機器であることを認証する機器認証に上述した実施の形態に係る認証システムを応用する方法について説明する。

0085

上述したどの実施の形態に係る認証システムについても機器認証に応用することができるが、ここでは、実施の形態1に係る認証システムを機器認証に応用した例を説明する。

0086

図19は、この実施の形態に係る認証システムの機能を示す機能ブロック図である。この実施の形態に係る認証システムの機能について、実施の形態1に係る認証システムの機能と異なる部分のみ説明する。
ホスト装置100は、結果判定部160を備えていない。

0087

図20は、この実施の形態に係る認証システムの動作を示すフローチャートである。ホスト装置100が外部接続機器300から機器固有の識別情報を受信した以降の処理を示す。
ホスト装置100のカウンタ部120は、メモリ130が記憶するカウンタ値を処理装置により1増加させる(S1101:変更ステップ)。ハッシュ演算部150は、機器(外部接続機器300)固有の識別情報とカウンタ値とを合わせた情報のハッシュ値(H)を認証情報として処理装置により生成する(S1102:認証情報生成ステップ)。そして、依頼装置通信部140は、ハッシュ演算部150が生成した認証情報を含む認証命令を通信装置を介して認証装置200へ送信する(S1103:依頼ステップ)。
認証装置200の認証装置通信部240は、ホスト装置100が送信した認証命令を通信装置を介して受信する(S1104:依頼受信ステップ)。次に、カウンタ部220は、メモリ230が記憶するカウンタ値を処理装置により1増加させる(S1105:変更ステップ)。ハッシュ演算部250は、認証する対象の機器(外部接続機器300)固有の識別情報とメモリ230が記憶するカウンタ値とを合わせた情報のハッシュ値(H’)を検証情報として処理装置により生成する(S1106:検証情報生成ステップ)。なお、認証装置200は、機器固有の識別情報を予め取得しているものとする。そして、認証部260は、受信した認証情報(ハッシュ値(H))と生成した検証情報(ハッシュ値(H’))とを処理装置により比較する(S1107:認証ステップ)。認証部260は、比較の結果、認証情報と検証情報とが一致した場合、認証成功と判断する(S1108:成功処理ステップ)。一方、認証部260は、比較の結果、認証情報と検証情報とが一致しない場合、認証失敗と判断する(S1109:失敗処理ステップ)。

0088

以上のように、機器固有の識別情報を上述した実施の形態に係る認証システムの認証結果に当てはめてれば、他方の機器に安全に機器固有の識別情報を送信することができる。

0089

以上をまとめると次のようになる。
以上の実施の形態に係る認証方式及び認証装置は、認証装置は認証結果とカウンタ値の変換値を認証応答として送信し、認証結果受信装置は認証成功とカウンタ値の変換値と受信した変換値とを比較することで認証結果を受信することを特徴とする。

0090

また、以上の実施の形態に係る認証方式及び認証装置は、認証装置は認証結果受信装置から受信した秘密情報識別情報が示す秘密情報と認証結果の変換値を認証応答として送信し、認証結果受信装置は認証成功と秘密情報の変換値と受信した変換値とを比較することで認証結果を受信することを特徴とする。

0091

さらに、以上の実施の形態に係る認証方式及び認証装置は、認証装置は認証結果受信装置から受信した乱数から特定した秘密情報と認証結果の変換値を認証応答として送信し、認証結果受信装置は認証成功と乱数から特定した秘密情報の変換値と受信した変換値とを比較することで認証結果を受信することを特徴とする。

0092

また、さらに、以上の実施の形態に係る認証方式及び認証装置は、認証装置は認証結果受信装置から受信した乱数から特定した秘密情報と、認証結果と、受信した乱数の変換値を認証応答として送信し、認証結果受信装置は認証成功と乱数から特定した秘密情報と乱数の変換値と受信した変換値とを比較することで認証結果を受信することを特徴とする。

0093

また、以上の実施の形態に係る認証方式及び認証装置は、認証装置は認証結果受信装置から受信した乱数から特定した秘密情報と、認証結果と、カウンタ値の変換値を認証応答として送信し、認証結果受信装置は認証成功と乱数から特定した秘密情報とカウンタ値の変換値と受信した変換値とを比較することで認証結果を受信することを特徴とする。

0094

さらに、以上の実施の形態に係る認証方式及び認証装置は、認証結果受信装置は、認証成功とカウンタ値の変換値と受信した変換値とを比較した後、不一致の場合、認証失敗とカウンタ値の変換値と受信した変換値とを比較し、不一致の場合、カウンタ値を変えて同様の処理を行うことを特徴とする。

0095

また、さらに、以上の実施の形態に係る認証方式及び認証装置は、認証結果受信装置は、現在のカウンタ値を認証装置に送信し、認証装置は受信したカウンタ値を内部で保存すると共に、認証成功とカウンタ値の変換値を応答することを特徴とする。

0096

また、以上の実施の形態に係る認証方式及び認証装置は、前記認証方式において、認証装置は、現在のカウンタ値の変換値を認証結果受信装置に送信し、認証結果受信装置は、受信したカウンタ値の変換値を元にカウンタ値を特定することを特徴とする。

0097

さらに、以上の実施の形態に係る認証方式及び認証装置は、エラーコード送信時も変換値を送信することを特徴とする。

0098

また、さらに、以上の実施の形態に係る認証方式及び認証装置は、認証結果受信装置は認証成功から求めた変換値のみを比較し、不一致の場合は認証失敗とみなすことを特徴とする。

0099

また、以上の実施の形態に係る認証方式及び認証装置は、認証結果受信装置または/かつ認証装置は、認証に成功した場合のみ、メモリへの秘密情報書き込みまたは/かつメモリから秘密情報読み出しを許可することを特徴とする。

0100

さらに、以上の実施の形態に係る認証方式及び認証装置は、認証結果受信装置または/かつ認証装置は、メモリへの秘密情報書き込みかつメモリから秘密情報読み出しを行う権限と、メモリから秘密情報読み出しのみを行う権限を分割して許可することを特徴とする。

0101

また、以上の実施の形態に係る認証方式及び認証装置は、付与された機器固有の識別情報を用いて、その機器が正当な機器であることを認証する機器認証において、機器間で送信する機器固有の識別情報を認証結果に当てはめて適用することを特徴とする。

0102

次に、実施の形態におけるホスト装置100、認証装置200、外部接続機器300のハードウェア構成について説明する。
図21は、ホスト装置100、認証装置200、外部接続機器300のハードウェア構成の一例を示す図である。
図21に示すように、ホスト装置100、認証装置200、外部接続機器300は、プログラムを実行するCPU911(Central・Processing・Unit、中央処理装置、処理装置、演算装置マイクロプロセッサマイクロコンピュータプロセッサともいう)を備えている。CPU911は、バス912を介してROM913、RAM914、LCD901(Liquid Crystal Display)、キーボード902(K/B)、通信ボード915、磁気ディスク装置920と接続され、これらのハードウェアデバイスを制御する。磁気ディスク装置920の代わりに、光ディスク装置メモリカード読み書き装置などの記憶装置でもよい。

0103

ROM913、磁気ディスク装置920は、不揮発性メモリの一例である。RAM914は、揮発性メモリの一例である。ROM913とRAM914と磁気ディスク装置920とは、記憶装置(メモリ)の一例である。また、キーボード902、通信ボード915は、入力装置の一例である。また、通信ボード915は、通信装置の一例である。さらに、LCD901は、表示装置の一例である。

0104

磁気ディスク装置920又はROM913などには、オペレーティングシステム921(OS)、ウィンドウシステム922、プログラム群923、ファイル群924が記憶されている。プログラム群923のプログラムは、CPU911、オペレーティングシステム921、ウィンドウシステム922により実行される。

0105

プログラム群923には、上記の説明において「制御部110」、「カウンタ部120」、「依頼装置通信部140」、「ハッシュ演算部150」、「結果判定部160」、「秘密情報決定部170」、「乱数生成部180」、「秘密情報特定部190」、「制御部210」、「カウンタ部220」、「認証装置通信部240」、「ハッシュ演算部250」、「認証部260」、「秘密情報特定部270」、「制御部510」、「通信部520」、「アクセス制御部540」等として説明した機能を実行するソフトウェアやプログラムやその他のプログラムが記憶されている。プログラムは、CPU911により読み出され実行される。
ファイル群924には、上記の説明において「認証情報」、「応答情報」、「結果情報」、「判定情報」等の情報やデータや信号値変数値パラメータが、「ファイル」や「データベース」の各項目として記憶される。「ファイル」や「データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してCPU911によりメインメモリキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示などのCPU911の動作に用いられる。抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示のCPU911の動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリやキャッシュメモリやバッファメモリに一時的に記憶される。

0106

また、上記の説明におけるフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号値は、RAM914のメモリ、その他光ディスク等の記録媒体やICチップに記録される。また、データや信号は、バス912や信号線ケーブルその他の伝送媒体電波によりオンライン伝送される。
また、上記の説明において「〜部」として説明するものは、「〜回路」、「〜装置」、「〜機器」、「〜手段」、「〜機能」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。また、「〜装置」として説明するものは、「〜回路」、「〜装置」、「〜機器」、「〜手段」、「〜機能」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。さらに、「〜処理」として説明するものは「〜ステップ」であっても構わない。すなわち、「〜部」として説明するものは、ROM913に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子デバイス基板配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、ROM913等の記録媒体に記憶される。プログラムはCPU911により読み出され、CPU911により実行される。すなわち、プログラムは、上記で述べた「〜部」としてコンピュータ等を機能させるものである。あるいは、上記で述べた「〜部」の手順や方法をコンピュータ等に実行させるものである。

図面の簡単な説明

0107

認証システムの一例である入退室管理システムを示す図。
認証システムの一例であるマイクロコントローラが内蔵された装置を示す図。
実施の形態1に係る認証システムの機能を示す機能ブロック図。
実施の形態1に係る認証システムの動作を示すフローチャート。
実施の形態2に係る認証システムの機能を示す機能ブロック図。
メモリ130とメモリ230とが記憶する秘密情報とその識別情報の一例を示す図。
実施の形態2に係る認証システムの動作を示すフローチャート。
実施の形態3に係る認証システムの機能を示す機能ブロック図。
実施の形態3に係る認証システムの動作を示すフローチャート。
実施の形態4に係る認証システムの動作を示すフローチャート。
実施の形態5に係る認証システムの機能を示す機能ブロック図。
実施の形態5に係る認証システムの動作を示すフローチャート。
実施の形態6に係る認証システムのカウンタ値再同期処理の動作を示すフローチャート。
実施の形態7に係る認証システムのカウンタ値再同期処理の動作を示すフローチャート。
実施の形態8に係る認証システムのカウンタ値再同期処理の動作を示すフローチャート。
実施の形態9に係る認証システムのエラー発生処理の動作を示すフローチャート。
実施の形態10に係る認証システムの機能を示す機能ブロック図。
秘密情報書き込み読み出し装置400と対象装置との動作を示すフローチャート。
実施の形態11に係る認証システムの機能を示す機能ブロック図。
実施の形態11に係る認証システムの動作を示すフローチャート。
ホスト装置100、認証装置200、外部接続機器300のハードウェア構成の一例を示す図。

符号の説明

0108

100ホスト装置、110 制御部、120カウンタ部、130メモリ、140依頼装置通信部、150ハッシュ演算部、160 結果判定部、170秘密情報決定部、180乱数生成部、190 秘密情報特定部、200認証装置、210 制御部、220 カウンタ部、230 メモリ、240 認証装置通信部、250 ハッシュ演算部、260 認証部、270 秘密情報特定部、300外部接続機器、400 秘密情報書き込み読み出し装置、510 制御部、520 通信部、530 メモリ、540アクセス制御部。

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

関連する公募課題

ページトップへ

技術視点だけで見ていませんか?

この技術の活用可能性がある分野

分野別動向を把握したい方- 事業化視点で見る -

(分野番号表示ON)※整理標準化データをもとに当社作成

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

新着 最近 公開された関連が強い技術

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する社会課題

関連する挑戦したい社会課題一覧

この 技術と関連する公募課題

関連する公募課題一覧

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ