(57)【特許請求の範囲】
【請求項１】
中央制御装置からの認証用コマンドに応じて認証処理を実行し、その認証結果を前記中央制御装置に出力する認証処理装置であって、
認証処理用入出力ポートと、
複数の周辺装置の夫々に接続される複数の周辺装置用入出力ポートと、
鍵識別子と暗号鍵データとを対応付けて記憶する記憶手段と、
鍵識別子と認証データを含む認証用コマンドが前記認証処理用入出力ポートを介して入力された場合に、当該認証用コマンドに含まれる鍵識別子に対応する暗号鍵データを前記記憶手段から取得する取得手段と、
前記取得された暗号鍵データと、前記認証用コマンドに含まれる認証データとを用いて認証処理を実行する認証手段と、
前記認証処理が成功した場合には、当該認証処理に関係する前記周辺装置用入出力ポートから前記周辺装置を動作させる動作信号を出力させる制御手段と、
を備えることを特徴とする認証処理装置。
【請求項２】
請求項１に記載の認証処理装置において、
前記記憶手段には、各前記周辺装置用入出力ポートを示す入出力ポート識別子が記憶され、前記入出力ポート識別子毎に前記鍵識別子が対応付けられており、
前記制御手段は、前記認証処理が成功した場合には、前記認証処理に用いられた暗号鍵データに対応する鍵識別子に対応付けられた入出力ポート識別子に示される前記周辺装置用入出力ポートから、前記周辺装置を動作させる動作信号を出力させることを特徴とする認証処理装置。
【請求項３】
請求項１に記載の認証処理装置において、
前記記憶手段には、各前記周辺装置用入出力ポートを示す入出力ポート識別子が記憶され、さらに、前記入出力ポート識別子毎に認証状態比較条件情報が対応付けられて記憶されており、
前記認証手段は、前記認証処理を複数回実行し、
前記制御手段は、複数回の前記認証処理による認証結果に該当する前記認証状態比較条件情報に対応付けられた入出力ポート識別子に示される前記周辺装置用入出力ポートから、前記周辺装置を動作させる動作信号を出力させることを特徴とする認証処理装置。
【請求項４】
請求項１乃至３の何れか一項に記載の認証処理装置において、
前記制御手段は、前記周辺装置用入出力ポートのレジスタの状態情報を変化させることにより、当該周辺装置用入出力ポートから前記動作信号を出力させることを特徴とする認証処理装置。
【請求項５】
請求項４に記載の認証処理装置において、
各前記周辺装置用入出力ポートに対応する状態情報と、各前記状態情報に基づき生成されるエラー検出情報を記憶する状態記憶手段を更に備え、
前記制御手段は、
前記認証処理が成功した場合には、前記周辺装置用入出力ポートのレジスタの状態情報を変化させずに、前記状態情報及び前記エラー検出情報を前記状態記憶手段に記憶し、
所定間隔で実行される割り込み処理が開始された場合に、前記状態記憶手段に記憶されている各前記状態情報を、対応する各前記周辺装置用入出力ポートのレジスタに出力して当該レジスタの状態情報を変化させることを特徴とする認証処理装置。
【請求項６】
請求項５に記載の認証処理装置において、
前記制御手段は、
所定間隔で実行される割り込み処理が開始された場合に、前記状態記憶手段に記憶されている各前記状態情報に基づきエラー検出情報を生成し、
前記生成されたエラー検出情報と、前記状態記憶手段に記憶されているエラー検出情報とが一致する場合に、前記状態記憶手段に記憶されている各前記状態情報を、対応する各前記周辺装置用入出力ポートのレジスタに出力して当該レジスタの状態情報を変化させることを特徴とする認証処理装置。
【請求項７】
請求項１乃至６の何れか一項に記載の認証処理装置と、モータ駆動により入出力口が開閉する前記周辺装置と、を備え、
前記周辺装置は、前記認証処理装置により動作制御されることを特徴とすることを特徴とする処理システム。
【請求項８】
請求項１乃至６の何れか一項に記載の認証処理装置と、当該認証処理装置に認証用コマンドを出力する中央制御装置と、前記認証処理装置又は前記中央制御装置により動作制御される複数の周辺装置と、を備えることを特徴とする現金自動預け払い機。
【請求項９】
認証処理用入出力ポートと、複数の周辺装置の夫々に接続される複数の周辺装置用入出力ポートと、鍵識別子と暗号鍵データとを対応付けて記憶する記憶手段と、を備え、中央制御装置からの認証用コマンドに応じて認証処理を実行し、その認証結果を前記中央制御装置に出力するコンピュータにより実行される認証処理方法であって、
鍵識別子と認証データを含む認証用コマンドが前記認証処理用入出力ポートを介して入力された場合に、当該認証用コマンドに含まれる鍵識別子に対応する暗号鍵データを前記記憶手段から取得するステップと、
前記取得された暗号鍵データと、前記認証用コマンドに含まれる認証データとを用いて認証処理を実行するステップと、
前記認証処理が成功した場合には、当該認証処理に関係する前記周辺装置用入出力ポートから前記周辺装置を動作させる動作信号を出力させるステップと、
を備えることを特徴とする認証処理方法。
【請求項１０】
請求項９に記載の認証処理方法をコンピュータに実行させることを特徴とする認証処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子機器に搭載される認証処理用マイクロコントローラに関するものである。
【背景技術】
【０００２】
この種の認証処理用マイクロコントローラ（以下、ＳＡＭ（Secure Application Module）という）は、例えば、決済処理端末に搭載されている。決済処理端末が、例えば、ＩＣ（Integrated Circuit）カードに記録されている情報をチェックコード等によって検証する場合において、ＳＡＭは、このチェックコードの正当性確認のための認証処理を行うようになっている（例えば、特許文献１参照）。
【０００３】
また、例えば、ＩＣキャッシュカードを認証し、ネットワークに接続したホストコンピュータと通信し、所定の情報をＬＥＤ（Light Emitting Diode）、ＬＣＤ（Liquid Crystal Display）、印刷物等によって表示し、現金の預け払いを行う現金自動預け払い機（以下、ＡＴＭ（Automated Teller Machine）という）においても、ＳＡＭが搭載されている。ＡＴＭには、ＳＡＭの他に、ＬＥＤ，監視カメラ，現金支払い機構，プリンタ，ＬＣＤ等の種々の周辺装置と、周辺装置の動作を制御する中央制御装置と、が搭載されている。種々の周辺装置は、入出力ポートによって中央制御装置に接続されている。中央制御装置は、それぞれの周辺装置に対する制御プログラムを備えており、適宜、周辺装置の動作を制御するようになっている。
【０００４】
このようなＡＴＭにおいて、ＳＡＭによる認証結果に従って周辺装置を動作させるケース（例えば「ＡＴＭによるＩＣカードの正当性確認」が終わった後にＬＥＤを点灯させ、「ホストコンピュータによる取引承認」が終わった後に「現金支払い機構のモータを作動させる」ようなケース）において、従来は、中央制御装置に接続されたＳＡＭが認証結果を判断し、ＳＡＭから判断情報を受信した中央制御装置が周辺装置を動作させていた。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平１０−３０７８９９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、従来、悪意ある攻撃者によって中央処理装置が偽装（例えば、中央制御装置のプログラムが改竄されたり、該プログラムを記憶するフラッシュＲＯＭが取り替えられたりすることなどによる）され、改竄された動作命令が周辺装置に送信された場合、改竄された動作命令によって周辺装置が誤動作してしまう可能性があった。これを回避するためには、ＳＡＭから出力される認証結果の判断情報を周辺装置が直接取得することが考えられる。
【０００７】
しかしながら、従来の入出力ポートの制御に必要な制御プログラムは、条件分岐（いわゆるif〜thenルール）によって構成されており、ＳＡＭの少ない記憶領域で実現する場合においては必ずしも有効な手段ではなかった。
【０００８】
また、悪意のある攻撃者によって、ＳＡＭが制御している入出力ポートの状態が不正に変更された場合、周辺装置が誤動作してしまう可能性がある。
【０００９】
加えて、ＳＡＭにおいて、複数の認証結果の組合せによって、単一、または複数の入出力ポートを制御するような処理を実現することが困難であった。
【００１０】
そこで、本発明は、このような点に鑑みてなされたもので、中央処理装置の偽装、又はＳＡＭの入出力ポートの状態の不正な変更等があった場合でも、周辺装置の誤動作を防止することが可能な認証処理装置、認証処理方法、認証処理プログラム、処理システム、及び現金自動預け払い機を提供することを課題の一例とする。
【課題を解決するための手段】
【００１１】
上記課題を解決するために、請求項１に記載の発明は、中央制御装置からの認証用コマンドに応じて認証処理を実行し、その認証結果を前記中央制御装置に出力する認証処理装置であって、認証処理用入出力ポートと、複数の周辺装置の夫々に接続される複数の周辺装置用入出力ポートと、鍵識別子と暗号鍵データとを対応付けて記憶する記憶手段と、鍵識別子と認証データを含む認証用コマンドが前記認証処理用入出力ポートを介して入力された場合に、当該認証用コマンドに含まれる鍵識別子に対応する暗号鍵データを前記記憶手段から取得する取得手段と、前記取得された暗号鍵データと、前記認証用コマンドに含まれる認証データとを用いて認証処理を実行する認証手段と、前記認証処理が成功した場合には、当該認証処理に関係する前記周辺装置用入出力ポートから前記周辺装置を動作させる動作信号を出力させる制御手段と、を備えることを特徴とする。
【００１２】
請求項２に記載の発明は、請求項１に記載の認証処理装置において、前記記憶手段には、各前記周辺装置用入出力ポートを示す入出力ポート識別子が記憶され、前記入出力ポート識別子毎に前記鍵識別子が対応付けられており、前記制御手段は、前記認証処理が成功した場合には、前記認証処理に用いられた暗号鍵データに対応する鍵識別子に対応付けられた入出力ポート識別子に示される前記周辺装置用入出力ポートから、前記周辺装置を動作させる動作信号を出力させることを特徴とする。
【００１３】
請求項３に記載の発明は、請求項１に記載の認証処理装置において、前記記憶手段には、各前記周辺装置用入出力ポートを示す入出力ポート識別子が記憶され、さらに、前記入出力ポート識別子毎に認証状態比較条件情報が対応付けられて記憶されており、前記認証手段は、前記認証処理を複数回実行し、前記制御手段は、複数回の前記認証処理による認証結果に該当する前記認証状態比較条件情報に対応付けられた入出力ポート識別子に示される前記周辺装置用入出力ポートから、前記周辺装置を動作させる動作信号を出力させることを特徴とする。
【００１４】
請求項４に記載の発明は、請求項１乃至３の何れか一項に記載の認証処理装置において、前記制御手段は、前記周辺装置用入出力ポートのレジスタの状態情報を変化させることにより、当該周辺装置用入出力ポートから前記動作信号を出力させることを特徴とする。
【００１５】
請求項５に記載の発明は、請求項４に記載の認証処理装置において、各前記周辺装置用入出力ポートに対応する状態情報と、各前記状態情報に基づき生成されるエラー検出情報を記憶する状態記憶手段を更に備え、前記制御手段は、前記認証処理が成功した場合には、前記周辺装置用入出力ポートのレジスタの状態情報を変化させずに、前記状態情報及び前記エラー検出情報を前記状態記憶手段に記憶し、所定間隔で実行される割り込み処理が開始された場合に、前記状態記憶手段に記憶されている各前記状態情報を、対応する各前記周辺装置用入出力ポートのレジスタに出力して当該レジスタの状態情報を変化させることを特徴とする。
【００１６】
請求項６に記載の発明は、請求項５に記載の認証処理装置において、前記制御手段は、所定間隔で実行される割り込み処理が開始された場合に、前記状態記憶手段に記憶されている各前記状態情報に基づきエラー検出情報を生成し、前記生成されたエラー検出情報と、前記状態記憶手段に記憶されているエラー検出情報とが一致する場合に、前記状態記憶手段に記憶されている各前記状態情報を、対応する各前記周辺装置用入出力ポートのレジスタに出力して当該レジスタの状態情報を変化させることを特徴とする。
【００１７】
請求項７に記載の発明は、請求項１乃至６の何れか一項に記載の認証処理装置と、モータ駆動により入出力口が開閉する前記周辺装置と、を備え、前記周辺装置は、前記認証処理装置により動作制御されることを特徴とすることを特徴とする。
【００１８】
請求項８に記載の発明は、請求項１乃至６の何れか一項に記載の認証処理装置と、当該認証処理装置に認証用コマンドを出力する中央制御装置と、前記認証処理装置又は前記中央制御装置により動作制御される複数の周辺装置と、を備えることを特徴とする。
【００１９】
請求項９に記載の発明は、認証処理用入出力ポートと、複数の周辺装置の夫々に接続される複数の周辺装置用入出力ポートと、鍵識別子と暗号鍵データとを対応付けて記憶する記憶手段と、を備え、中央制御装置からの認証用コマンドに応じて認証処理を実行し、その認証結果を前記中央制御装置に出力するコンピュータにより実行される認証処理方法であって、鍵識別子と認証データを含む認証用コマンドが前記認証処理用入出力ポートを介して入力された場合に、当該認証用コマンドに含まれる鍵識別子に対応する暗号鍵データを前記記憶手段から取得するステップと、前記取得された暗号鍵データと、前記認証用コマンドに含まれる認証データとを用いて認証処理を実行するステップと、前記認証処理が成功した場合には、当該認証処理に関係する前記周辺装置用入出力ポートから前記周辺装置を動作させる動作信号を出力させるステップと、を備えることを特徴とする。
【００２０】
請求項１０に記載の発明は、請求項９に記載の認証処理方法をコンピュータに実行させることを特徴とする。
【発明の効果】
【００２１】
本発明によれば、認証処理に用いられた暗号鍵データに対応する周辺装置用入出力ポートから周辺装置を動作させる動作信号を出力させるように構成したので、中央処理装置が偽装された場合であっても、認証処理装置の少ない記憶領域で周辺装置へセキュリティ性の高い動作信号を送信することができ、その結果、周辺装置の誤動作を防止することができる。
【００２２】
また、認証処理が成功した場合には、周辺装置用入出力ポートのレジスタの状態情報を変化させずに、状態情報及び前記エラー検出情報を状態記憶手段に記憶し、割り込み処理が開始された場合に、状態記憶手段に記憶されている各状態情報を、対応する各周辺装置用入出力ポートのレジスタに出力して当該レジスタの状態情報を変化させるように構成すれば、認証処理装置の周辺装置用入出力ポートの状態が不正に変更された場合であっても、周辺装置の誤動作を防止することができる。
【００２３】
また、複数回の認証処理による認証結果に該当する認証状態比較条件情報に対応付けられた周辺装置用入出力ポートから、周辺装置を動作させる動作信号を出力させるように構成すれば、複数の認証結果の組合せによって、単一、または複数の周辺装置用入出力ポートを制御することができ、認証処理装置の少ない記憶領域で、より一層、セキュリティ性の高い動作信号を送信することができる。
【図面の簡単な説明】
【００２４】
【図１】本実施形態に係るＡＴＭの概要構成例を示す図である。
【図２】ＳＡＭ２の概要構成例を示すブロック図である。
【図３】ＳＡＭ２の電源端子及び入出力ポートの構成例を示す図である。
【図４】暗号鍵の格納形式の一例を示す図である。
【図５】認証用コマンドの電文形式の一例を示す図である。
【図６】第１実施形態に係るＳＡＭ２のＣＰＵ２１におけるコマンド処理を示すフローチャートである。
【図７】各周辺装置用入出力ポートに対応する状態情報及びエラー検出情報の格納形式の一例を示す図である。
【図８】第２実施形態に係るＳＡＭ２のＣＰＵ２１における割り込み処理を示すフローチャートである。
【図９】認証状態情報の格納形式の一例を示す図である。
【図１０】第３実施形態における暗号鍵の格納形式の一例を示す図である。
【図１１】第３実施形態における認証状態比較条件情報の格納形式の一例を示す図である。
【図１２】第３実施形態に係るＳＡＭ２のＣＰＵ２１におけるコマンド処理を示すフローチャートである。
【発明を実施するための形態】
【００２５】
以下、図面を参照して本発明の実施形態について詳細に説明する。なお、以下に説明する実施の形態は、ＡＴＭに対して本発明を適用した場合の実施形態である。
【００２６】
先ず、本発明の一実施形態に係るＡＴＭの構成について、図１を用いて説明する。
【００２７】
図１は、本実施形態に係るＡＴＭの概要構成例を示す図である。
【００２８】
図１に示すように、ＡＴＭは、中央制御装置１、認証処理装置の一例としてのＳＡＭ２、ＬＥＤ３、監視カメラ４、現金支払い機構５、プリンタ６、ＬＣＤ７、及びＩＣカード読み取り装置８等を備えて構成されている。
【００２９】
ここで、ＬＥＤ３、監視カメラ４、現金支払い機構５、プリンタ６、及びＬＣＤ７は、周辺装置の一例である。これらの周辺装置（周辺機器）には、動作に当たって、ＳＡＭ２からの動作信号（トリガ信号）のみを必要とする装置と、ＳＡＭ２からの動作信号に加えて中央制御装置１からの情報を必要とする装置の２種類が存在し、夫々図１に示すように接続される。例えば、ＬＥＤ３、監視カメラ４、及び現金支払い機構５は、夫々のコントローラを介してＳＡＭ２に接続される。一方、プリンタ６及びＬＣＤ７は、夫々のコントローラを介して中央制御装置１及びＳＡＭ２に接続される。
【００３０】
また、中央制御装置１には、ＳＡＭコントローラを介してＳＡＭ２が接続され、ＩＣカードコントローラを介してＩＣカード読み取り装置８が接続される。更に、中央制御装置１には、ネットワークコントローラ及びネットワークを介してホストコンピュータが接続される。
【００３１】
中央制御装置１は、ＣＰＵ（Central Processing Unit）、作業用のＲＡＭ（Random Access Memory）、及び、プログラム及びデータが記憶されたフラッシュＲＯＭ（Read Only Memory）等を備え、ＡＴＭ全体を統括制御する。かかる制御に当たり、中央制御装置１は、ＳＡＭ２に対して種々のコマンドを出力するようになっている。
【００３２】
このように構成されたＡＴＭにおいて、特徴的な構成及び機能を有するＳＡＭ２の詳細について、第１実施形態〜第３実施形態に分けて説明する。
【００３３】
（第１実施形態）
先ず、第１実施形態に係るＳＡＭ２の詳細について説明する。
【００３４】
図２は、ＳＡＭ２の概要構成例を示すブロック図である。図３は、ＳＡＭ２の電源端子及び入出力ポートの構成例を示す図である。
【００３５】
図２に示すように、ＳＡＭ２は、ＣＰＵ２１、ＲＡＭ等の揮発性メモリ２２、フラッシュＲＯＭ等の不揮発性メモリ２３、及び入出力ポート２４等を備え、中央制御装置２からの認証用コマンドに応じて認証処理を実行し、その認証結果を中央制御装置２に出力するようになっている。
【００３６】
図３の例では、入出力ポート２４は、Ｉ／Ｏ１〜Ｉ／Ｏ１２まで複数設けられている。これらの複数の入出力ポートの一つ（例えば、Ｉ／Ｏ８）が認証処理用（認証処理のデータ交換用）入出力ポートに使用され、その他の複数の入出力ポート（例えば、Ｉ／Ｏ１〜Ｉ／Ｏ７）が複数の周辺装置（のコントローラ）の夫々に接続される周辺装置用入出力ポートに使用される。
【００３７】
不揮発性メモリ２３（記憶手段の一例）は、認証処理に使用される複数の暗号鍵データ（以下、「暗号鍵」という）が記憶（格納）されている。
【００３８】
図４は、暗号鍵の格納形式の一例を示す図である。各暗号鍵には、図４に示すように、外部から認証処理用入出力ポートを介して受信（入力）された認証用コマンド（認証処理実行命令）の対象となる暗号鍵を識別するための鍵識別子と、認証処理成功時に状態を変化させる対象となる周辺装置用入出力ポートを示す入出力ポート識別子と、が対応付けられて記憶されている。つまり、この例では、暗号鍵と周辺装置用入出力ポートとは１対１に対応付けられる。
【００３９】
ここで、上記「状態を変化させる」とは、周辺装置用入出力ポートのレジスタに格納される状態情報を変化させることを意味する。なお、状態情報の一例としては、「High（１）」又は「Low（０）」、或いはその組合せ（複数ビットからなるシリアルデータ）が挙げられる。
【００４０】
ＣＰＵ２１（取得手段の一例）は、認証用コマンドが認証処理用入出力ポートを介して受信（入力）された場合に、当該認証用コマンドに含まれる鍵識別子に対応する暗号鍵を不揮発性メモリ２３から取得する。
【００４１】
図５は、認証用コマンドの電文形式の一例を示す図である。図５に示すように、認証用コマンドには、認証処理実行命令を示す命令コード、認証対象の鍵識別子、及び認証データが含まれる。
【００４２】
次に、ＣＰＵ２１（認証手段の一例）は、不揮発性メモリ２３から取得した暗号鍵と、認証用コマンドに含まれる認証データとを用いて認証処理（例えば、認証データを暗号鍵で解読する）を実行する。そして、認証処理が成功した場合には、ＣＰＵ２１（制御手段の一例）は、当該認証処理に関係する周辺装置用入出力ポートから周辺装置を動作させる動作信号を出力させる。つまり、ＣＰＵ２１は、当該周辺装置用入出力ポートのレジスタの状態情報を変化（Low→High）させることにより、当該周辺装置用入出力ポートから動作信号を出力させる。これにより、当該周辺装置は、当該動作信号に応じて動作を開始する。言い換えれば、当該周辺装置は、周辺装置用入出力ポートの変化を動作のトリガとして利用する。
【００４３】
ここで、上記「認証処理に関係する周辺装置用入出力ポート」とは、第１実施形態においては、当該認証処理に用いられた暗号鍵に対応する鍵識別子に対応付けられた入出力ポート識別子に示される周辺装置用入出力ポートである（鍵識別子に対応付けられた入出力ポート識別子は、不揮発性メモリ２３から特定される）。
【００４４】
図６は、第１実施形態に係るＳＡＭ２のＣＰＵ２１におけるコマンド処理を示すフローチャートである。
【００４５】
図６に示す処理が開始されると、ＣＰＵ２１は、コマンド受信を待つ（ステップＳ１）。次いで、ＣＰＵ２１は、中央制御装置１から、認証処理用入出力ポートを介してコマンドを受信した場合には（ステップＳ２：ＹＥＳ）、当該受信したコマンドが認証用コマンドであるか否かを、当該コマンドに含まれる命令コードにより判別する（ステップＳ３）。そして、ＣＰＵ２１は、受信したコマンドが認証用コマンドでない場合には（ステップＳ３：ＮＯ）、ステップＳ４に進み、認証用コマンドである場合には（ステップＳ３：ＹＥＳ）、ステップＳ５に進む。
【００４６】
ステップＳ４では、ＣＰＵ２１は、受信したコマンドに応じたコマンド処理を実行し、ステップＳ１に戻る。
【００４７】
ステップＳ５では、ＣＰＵ２１は、認証用コマンドに含まれる鍵識別子に対応する暗号鍵（鍵識別子にて指定された暗号鍵）を取得し、当該暗号鍵と、認証用コマンドに含まれる認証データとを用いて認証処理を実行する。
【００４８】
次いで、ＣＰＵ２１は、認証処理が成功したか否かを判別し（ステップＳ６）、認証処理が成功しない場合には（ステップＳ６：ＮＯ）、中央制御装置１への応答として、認証処理用入出力ポートを介してエラーメッセージを送信（出力）し（ステップＳ７）、ステップＳ１に戻る。
【００４９】
一方、認証処理が成功した場合には（ステップＳ６：ＹＥＳ）、ＣＰＵ２１は、当該認証処理に用いた暗号鍵に対応する鍵識別子にて指定される周辺装置用入出力ポートのレジスタの状態情報をHighに設定する（ステップＳ８）。これにより、当該周辺装置用入出力ポートに接続された周辺装置に対して動作信号が送信される。
【００５０】
次いで、ＣＰＵ２１は、中央制御装置１への応答として、認証処理用入出力ポートを介して正常終了メッセージを送信（出力）し（ステップＳ９）、ステップＳ１に戻る。
【００５１】
以上説明したように、上記第１実施形態によれば、暗号鍵と周辺装置用入出力ポートとを対応付けておき、認証処理に用いられた暗号鍵に対応する周辺装置用入出力ポートのレジスタの状態情報を変化させることにより、当該周辺装置用入出力ポートから周辺装置を動作させる動作信号を出力させるように構成したので、中央処理装置１が偽装された場合であっても、ＳＡＭ２の少ない記憶領域で周辺装置へセキュリティ性の高い動作信号を送信することができ、その結果、周辺装置の誤動作を防止することができる。特に、レジスタの状態情報を、「１」又は「０」の１ビットの情報とすることで、ＳＡＭ２の少ない記憶領域で効率良く周辺装置用入出力ポートを制御することができる。
【００５２】
（第２実施形態）
次に、第２実施形態に係るＳＡＭ２の詳細について説明する。なお、第２実施形態に係るＳＡＭ２は、図２に示す構成になっていることに加えて、タイマを備えている。また、第２実施形態に係るＳＡＭ２の電源端子及び入出力ポートは、図３に示す構成になっている。また、第２実施形態においても、暗号鍵の格納形式は、図４に示す通りである。また、第２実施形態においても、認証用コマンドの電文形式は、図５に示す通りである。また、第２実施形態においても、ＣＰＵ２１におけるコマンド処理は、ステップＳ８を除き、図６に示す通りである。なお、第１実施形態と重複する部分については説明を省略する。
【００５３】
第２実施形態においては、各周辺装置用入出力ポートに対応する状態情報と、各状態情報に基づき生成されるエラー検出情報が揮発性メモリ２２（状態記憶手段の一例）に記憶されるようになっている。
【００５４】
図７は、各周辺装置用入出力ポートに対応する状態情報及びエラー検出情報の格納形式の一例を示す図である。図７の例では、Ｉ／Ｏ１〜Ｉ／Ｏ７の周辺装置用入出力ポートに対応する状態情報を格納するための記憶領域と、エラー検出情報を格納するための記憶領域が揮発性メモリ２２に割り当てられる。なお、Ｉ／Ｏ１〜Ｉ／Ｏ７の周辺装置用入出力ポートに対応する状態情報を格納するための記憶領域を２重化するように構成しても良い。
【００５５】
ここで、エラー検出情報は、例えば、全ての周辺装置用入出力ポートに対応する状態情報（例えば、１又は０）を足し合わせた値（チェックサム）等であり、周辺装置用入出力ポートのレジスタの状態情報が不正に変更（改竄）されているのを検知するために使用される。
【００５６】
第２実施形態に係るＣＰＵ２１は、認証処理が成功した場合には、周辺装置用入出力ポートのレジスタの状態情報を変化させずに（直ぐには更新しない）、状態情報及び生成したエラー検出情報を揮発性メモリ２２に記憶（更新）する。つまり、図６に示すステップＳ８において、ＣＰＵ２１は、周辺装置用入出力ポートのレジスタの状態情報をHighに設定せずに、当該周辺装置用入出力ポートに対応する記憶領域（揮発性メモリ２２の記憶領域）にHighを示す状態情報を記憶すると共に、生成したエラー検出情報をこれに対応する記憶領域に記憶する。
【００５７】
そして、ＣＰＵ２１は、所定間隔で実行される割り込み処理が開始された場合に、揮発性メモリ２２に記憶されている各状態情報に基づきエラー検出情報を生成する。ここで、割り込み処理は、例えば、インターバルタイマやウォッチドックタイマ等のタイマにより一定の周期（例えば、０．５秒毎）で発生する。
【００５８】
そして、ＣＰＵ２１は、上記生成したエラー検出情報と、揮発性メモリ２２に記憶されているエラー検出情報とが一致する場合に、揮発性メモリ２２に記憶されている各状態情報を、対応する各周辺装置用入出力ポートのレジスタに出力（つまり、レジスタにコピー）して当該レジスタの状態情報を変化させる。
【００５９】
図８は、第２実施形態に係るＳＡＭ２のＣＰＵ２１における割り込み処理を示すフローチャートである。
【００６０】
図８に示す処理が開始されると、ＣＰＵ２１は、揮発性メモリ２２に記憶されている各周辺装置用入出力ポートに対応する状態情報に基づきエラー検出情報を生成する（ステップＳ１１）。
【００６１】
次いで、ＣＰＵ２１は、上記生成したエラー検出情報と、揮発性メモリ２２に記憶されているエラー検出情報とが一致するか否かを判別し（ステップＳ１２）、一致しない場合には（ステップＳ１２：ＮＯ）、ステップＳ１３に進み、一致する場合には（ステップＳ１２：ＹＥＳ）、ステップＳ１４に進む。
【００６２】
ステップＳ１３では、ＣＰＵ２１は、全ての周辺装置用入出力ポートのレジスタを全てLowに設定して、無限ループへ移行する。
【００６３】
一方、ステップＳ１４では、ＣＰＵ２１は、揮発性メモリ２２に記憶されている各状態情報を、対応する各周辺装置用入出力ポートのレジスタにコピーし、当該処理を終了する。
【００６４】
以上説明したように、上記第２実施形態によれば、認証処理が成功した場合には、周辺装置用入出力ポートのレジスタの状態情報を直ぐには更新せずに、状態情報及び生成したエラー検出情報を揮発性メモリ２２に記憶しておき、その後の割り込み処理が開始された場合に、揮発性メモリ２２に記憶されている各状態情報を、対応する各周辺装置用入出力ポートのレジスタに反映するように構成したので、ＳＡＭ２の周辺装置用入出力ポートの状態が不正に変更された場合であっても、周辺装置の誤動作を防止することができる（一瞬、周辺装置が誤動作することもありうるが、状態情報の反映により直ぐに復旧する）。
【００６５】
（第３実施形態）
次に、第３実施形態に係るＳＡＭ２の詳細について説明する。なお、第３実施形態に係るＳＡＭ２は、図２に示す構成になっている。また、第３実施形態に係るＳＡＭ２の電源端子及び入出力ポートは、図３に示す構成になっている。また、第３実施形態においても、認証用コマンドの電文形式は、図５に示す通りである。なお、第１実施形態と重複する部分については説明を省略する。
【００６６】
第３実施形態においては、認証処理が複数回実行され、認証対象の暗号鍵毎に、認証結果（成功／失敗または未実行）を示す認証状態情報が揮発性メモリ２２に記憶されるようになっている。
【００６７】
図９は、認証状態情報の格納形式の一例を示す図である。図９の例では、暗号鍵ａ〜ｈに対応する認証状態情報を格納するための記憶領域が揮発性メモリ２２に割り当てられる。
【００６８】
また、第３実施形態においても、不揮発性メモリ２３には、認証処理に使用される複数の暗号鍵が記憶されている。
【００６９】
図１０は、第３実施形態における暗号鍵の格納形式の一例を示す図である。各暗号鍵には、図１０に示すように、暗号鍵を識別するための鍵識別子が対応付けられて記憶されているが、入出力ポート識別子は対応付けられていない。その代わり、第３実施形態においては、入出力ポート識別子毎に認証状態比較条件情報が対応付けられて不揮発性メモリ２３に記憶される。つまり、この例では、複数の暗号鍵による認証結果の組合せと周辺装置用入出力ポートとが対応付けられる。
【００７０】
図１１は、第３実施形態における認証状態比較条件情報の格納形式の一例を示す図である。各周辺装置用入出力ポートを示す入出力ポート識別子には、図１１に示すように、認証状態比較情報と、認証状態比較条件情報と、が対応付けられて記憶されている。
【００７１】
ここで、認証状態比較情報は、例えば、上記認証状態情報がどのような状態でなければならないかを定義する。例えば、認証状態比較情報には、認証結果が成功であることが定義される。また、認証状態比較条件情報には、認証状態比較情報に示された状態を、全ての暗号鍵が満たさなければならないのか、或いは一部の暗号鍵が満たさなければならないのかを示す比較条件が定義される。例えば、認証状態比較条件情報には、暗号鍵ａと暗号鍵ｂとのＡＮＤ条件が定義される。
【００７２】
第３実施形態に係るＣＰＵ２１は、複数回の認証処理による認証結果に該当する認証状態比較条件情報に対応付けられた入出力ポート識別子を特定する。例えば、複数回の認証処理による認証結果、暗号鍵ａと暗号鍵ｂとが認証処理成功であった場合に、これに該当する認証状態比較条件情報が不揮発性メモリ２３から特定され、当該特定された認証状態比較条件情報に対応付けられた入出力ポート識別子が特定される。そして、ＣＰＵ２１は、当該特定した入出力ポート識別子に示される周辺装置用入出力ポートから、第１実施形態と同様に、周辺装置を動作させる動作信号を出力させる。
【００７３】
図１２は、第３実施形態に係るＳＡＭ２のＣＰＵ２１におけるコマンド処理を示すフローチャートである。なお、図１２に示すステップＳ２１〜Ｓ２７の処理は、図６に示すステップＳ１〜Ｓ７の処理と同様である。
【００７４】
図１２に示すステップＳ２８では、ＣＰＵ２１は、成功した認証処理に用いた暗号鍵に対応する記憶領域に、当該暗号鍵による認証処理に成功したことを示す認証状態情報を記憶する。
【００７５】
次いで、ＣＰＵ２１は、各暗号鍵に対応する認証状態情報（更新した認証状態情報を含む）と一致する（該当する）認証状態比較情報及び認証状態比較条件情報があるか否かを判別し（ステップＳ２９）、ある場合には（ステップＳ２９：ＹＥＳ）、ステップＳ３０に進み、ない場合には（ステップＳ２９：ＮＯ）、ステップＳ３１に進む。
【００７６】
ステップＳ３０では、ＣＰＵ２１は、認証状態情報と一致する認証状態比較情報及び認証状態比較条件情報に対応付けられた入出力ポート識別子に示される周辺装置用入出力ポートのレジスタの状態情報をHighに設定し、ステップＳ３１に進む。これにより、当該周辺装置用入出力ポートに接続された周辺装置に対して動作信号が送信される。
【００７７】
ステップＳ３１では、ＣＰＵ２１は、中央制御装置１への応答として、認証処理用入出力ポートを介して正常終了メッセージを送信（出力）し、ステップＳ２１に戻る。
【００７８】
以上説明したように、上記第３実施形態によれば、複数の暗号鍵による認証結果の組合せと周辺装置用入出力ポートとを対応付けておき、複数回の認証処理による認証結果に該当する認証状態比較条件情報に対応付けられた周辺装置用入出力ポートから、周辺装置を動作させる動作信号を出力させるように構成したので、複数の認証結果の組合せによって、単一、または複数の周辺装置用入出力ポートを制御することができ、ＳＡＭ２の少ない記憶領域で、より一層、セキュリティ性の高い動作信号を送信することができる。
【００７９】
なお、上記実施形態においては、ＡＴＭに対して本発明を適用した場合について説明したが、これに限定されるものではなく、その他の処理システムに対して適用可能である。
【符号の説明】
【００８０】
１  中央制御装置
２  ＳＡＭ
２１  ＣＰＵ
２２  揮発性メモリ
２３  不揮発性メモリ
２４  入出力ポート
【図１】
0005402598.tif 000002
【図２】
0005402598.tif 000003
【図３】
0005402598.tif 000004
【図４】
0005402598.tif 000005
【図５】
0005402598.tif 000006
【図６】
0005402598.tif 000007
【図７】
0005402598.tif 000008
【図８】
0005402598.tif 000009
【図９】
0005402598.tif 000010
【図１０】
0005402598.tif 000011
【図１１】
0005402598.tif 000012
【図１２】
0005402598.tif 000013