説明

認証装置及び認証システム

【課題】認証装置を動作させるためのプログラムの更新時にも認証処理を可能にすると共に、プログラム更新時に障害が発生した場合でも速やかに認証処理を開始することを可能とする認証装置を提供する。
【解決手段】認証装置100は、第1プログラムを実行することにより、サーバから第1プログラムの更新要求を受領させ(ステップS301)、第1プログラムによる認証を終了させ(ステップS302)、第2プログラムを実行させ(ステップS303)、第2プログラムによる認証を開始させる(ステップS306)。また、認証装置100は、第2プログラムを実行することにより、第1プログラムのバックアップを作成させた上で(ステップS305)、更新後の第1プログラムである新第1プログラムを自装置に保存させる(ステップS311)。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、認証装置及び認証システムに関し、認証装置を動作させるためのプログラムの更新技術に関する。
【背景技術】
【0002】
近年、企業等においては、セキュリティ確保の観点から種々の認証、例えば入退室のための認証を行う認証装置が導入されている。
このような認証装置には、専用データ記録媒体、例えばICカードを用いてICカード利用者の認証を行うものがあり、一般的に、認証装置は、以下のように認証処理を行う。
認証装置は、ICカードに記憶されたICカード利用者を識別するための情報(以下、「利用者情報」という)を読み取り、ICカードから読み取った利用者情報と、利用者情報と照合して認証を行うための情報(以下、「認証情報」という)とを用いて認証処理を行い、認証処理結果に応じて所定の処理、例えば、入退室に関する認証装置において、読み取った利用者情報が認証情報に登録されているという認証処理結果であった場合には、ドア等に設置された電子錠を開錠する処理を行う。
【0003】
この認証処理は、一般的に認証装置に記憶されたプログラムによって実現されており、認証情報のフォーマットが更新された場合や、プログラムに不具合(バグ)が発見された場合等には、プログラムの更新が必要になる場合がある。
一般的なプログラムの更新方法として、例えば更新対象となるプログラムを実行している装置が、外部から通信回線を通じて更新対象となるプログラムの更新後のプログラム(以下、「更新プログラム」という)を取得して、更新対象となるプログラムが記憶されている領域(以下、「主プログラム領域」という)に、取得した更新プログラムを上書きする方法がある(例えば、特許文献1)。
【0004】
認証装置においても、このプログラムの更新方法を適用し、プログラムを更新することが考えられる。
【特許文献1】特開平8−55068号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
しかし、更新プログラムを主プログラム領域に上書きする際には、認証装置において、更新前のプログラムにより実行中の認証処理を停止させる必要があり、上書き後、更新プログラムを実行させるまで認証処理ができないこととなる。
また、上書き時に何らかの障害が発生して上書きが正常に終了しなかった場合には、その復旧処理が完了するまで認証処理ができないこととなる。
【0006】
認証処理が停止している間は、電子錠を開錠する処理ができないため、ドア等を開放したままにして警備員による警備を行う等の代替手段によりセキュリティを確保する必要がある。
そこで、本発明はかかる問題に鑑みてなされたものであり、認証装置を動作させるためのプログラムの更新時にも認証処理を可能にすると共に、プログラム更新時に障害が発生した場合でも速やかに認証処理を開始することを可能とする認証装置を提供することを目的とする。
【課題を解決するための手段】
【0007】
上記課題を解決するために本発明に係る認証装置は、認証用識別情報を逐次取得する取得部と、前記認証用識別情報と照合して認証を行うために用いられる認証情報を記憶している第1領域と、当該認証情報と前記取得部が取得した前記認証用識別情報とに基づいて自装置に認証を行わせるための第1プログラムを記憶している第2領域とを有する記憶部と、前記第1プログラムの実行中に、当該第1プログラムの更新の必要性を検出すると、当該第1プログラムの実行による認証を終了し、前記記憶部に記憶している前記認証情報を用いない方法での認証を行う第2プログラムの実行による認証を開始し、外部サーバから更新プログラムを取得し、前記第1領域と前記第2領域とを利用して前記第1プログラムの保持と取得した前記更新プログラムとの書込みを行い、当該更新プログラムの書込みが完了すると、前記外部サーバから前記認証情報を取得して前記更新プログラムを記憶した領域以外の前記記憶部の領域に取得した当該認証情報の書込みを開始し、当該認証情報の書込みが完了すると、前記第2プログラムの実行による認証を終了し、前記更新プログラムの実行による認証を開始する実行制御部とを備えることを特徴とする。
【0008】
また、上記課題を解決するために本発明に係る認証装置を備える認証システムは、認証装置と当該認証装置と通信可能な外部サーバとを備える認証システムであって、前記認証装置は、認証用識別情報を逐次取得する取得部と、前記認証用識別情報と照合して認証を行うために用いられる認証情報を記憶している第1領域と、当該認証情報と前記取得部が取得した前記認証用識別情報とに基づいて自装置に認証を行わせるための第1プログラムを記憶している第2領域とを有する第1記憶部と、前記第1プログラムの実行中に、当該第1プログラムの更新の必要性を検出すると、当該第1プログラムの実行による認証を終了し、前記認証情報を用いない方法での認証を行う第2プログラムの実行による認証を開始し、前記外部サーバから更新プログラムを取得し、前記第1領域と前記第2領域とを利用して前記第1プログラムの保持と取得した前記更新プログラムの書込みを行い、当該更新プログラムの書込みが完了すると、前記外部サーバから前記認証情報を取得して前記更新プログラムを記憶した領域以外の前記第1記憶部の領域に取得した当該認証情報の書込みを開始し、当該認証情報の書込みが完了すると、前記第2プログラムの実行による認証を終了し、前記更新プログラムの実行による認証を開始する実行制御部とを有し、前記外部サーバは、前記認証情報と前記更新プログラムとを記憶する第2記憶部と、前記認証情報、又は前記更新プログラムを前記認証装置に送出する送出部とを有することを特徴とする。
【0009】
ここで、認証用識別情報とは、ICカード等の媒体に記憶されたICカード利用者を識別する情報や、生体情報、例えば指紋、声紋、静脈等の認証対象者を識別する情報をいう。
また、認証とは、認証用識別情報を用いて所定の処理を行わせるか否かに関する制御を行うことをいう。
【0010】
また、第1プログラムの保持とは、第1プログラムを記憶部に記憶させた状態をいい、取得した更新プログラムを書き込む領域に第2領域が含まれる場合には、第1プログラムの複製を記憶部に記憶させた状態を含む。
【発明の効果】
【0011】
上述の構成を備える本発明にかかる認証装置、及び認証システムにおいて、実行制御部は、第1プログラムの更新の必要性を検出すると、第2プログラムの実行による認証を開始するため、第1プログラムの更新中においても認証処理を行うことができる。
また、実行制御部は、第1プログラムの更新中においても第1プログラムを保持するため、第1プログラムの更新中に停電等の障害が発生し、更新が正常に終了しなかった場合でも、保持している第1プログラムを用いて、速やかに第1プログラムの実行による認証を開始させることができる。
【0012】
ここで、前記実行制御部は、取得した前記更新プログラムを前記記憶部の前記第1領域に書き込み、取得した前記認証情報を当該第1領域以外の前記記憶部の領域に書き込むこととしてもよい。
これにより、実行制御部は、更新プログラムを記憶部の第1領域に記憶するため、第1プログラムの複製を行わなくても、第1プログラムを記憶部の第2領域に保持でき、第1プログラムの更新中に停電等の障害が発生し、更新が正常に終了しなかった場合でも、第2領域に保持された第1プログラムを用いて、速やかに第1プログラムの実行による認証を開始させることができる。
【0013】
ここで、前記第2プログラムの実行による前記認証は、前記取得部が取得した前記認証用識別情報を前記外部サーバに送出して当該外部サーバに前記認証情報を用いた認証の問い合わせをし、外部サーバから受領した認証処理結果に基づいて行うこととしてもよい。
これにより、外部サーバは認証情報を用いて認証を行うため、第1プログラムの更新中においても、第1プログラムの実行による認証と同様のセキュリティレベルを確保した認証を行うことができる。
【0014】
ここで、前記第2プログラムの実行による前記認証は、
前記取得部が所定時間内に前記認証用識別情報を所定回取得するか否かに基づいて行うこととしてもよい。
これにより、実行制御部は、取得部が所定時間内に認証用識別情報を所定回取得するか否かに基づいて認証するため、外部装置等への認証の問合せを行うことなく、高速に認証処理を行うことができる。
【発明を実施するための最良の形態】
【0015】
以下、本発明の実施形態に係る認証装置について、入退室に関する認証を行う場合を例に、図面を参照しながら説明する。
≪実施の形態1≫
<概要>
実施の形態1に係る認証装置100は、ICカードにより入退室に関する認証を行う認証装置であって、従来の認証装置を改良したものである。
【0016】
認証装置100は、自装置内に入退室を許可する者を定義したリストである認証情報と第1プログラムと第2プログラムとを記憶する。
第1プログラムは、認証装置100に実行されることにより認証情報を用いた認証処理を行い、第1プログラムの更新が必要な場合に第2プログラムを実行させるプログラムである。
【0017】
また、第2プログラムは、第1プログラムの更新が必要な場合に実行されるプログラムであり、認証装置100に実行されることにより外部のサーバへの問合せによる認証処理を行い、また、第1プログラムの更新処理を行い、第1プログラムの更新が完了した場合に、更新後の第1プログラム(以下、「新第1プログラム」という)を実行させるプログラムである。
【0018】
以下、第1プログラムを実行することにより実現される認証を「第1プログラムによる認証」と、第2プログラムを実行することにより実現される認証を「第2プログラムによる認証」という。
認証装置100は、第1プログラムによる認証中に、各ICカードに記憶された各ICカード利用者を識別する情報である利用者情報をICカードから読み取ると、読み取った利用者情報と認証情報とを照合し、認証情報に読み取った利用者情報が存在する場合には、ドア等に設置された電子錠を開錠するよう制御する。
【0019】
また、認証装置100は、第1プログラムによる認証中に外部のサーバから第1プログラムの更新要求を受領すると、第2プログラムを起動し、第1プログラムによる認証から第2プログラムによる認証に認証処理を切替えた上で、第1プログラムの更新処理を開始する。
ここで、第1プログラムの更新処理では、認証情報を記憶していた自装置内の記憶領域に第1プログラムのバックアップを作成した上で、第1プログラムが記憶されている自装置内の記憶領域に、第1プログラムの更新後のプログラムを上書きする。
【0020】
これにより、第1プログラムの更新処理中に、停電等の障害が発生し、更新処理が正常に終了しなかった場合でも、第1プログラムのバックアップを用いて、速やかに第1プログラムによる認証を開始することができる。
また、認証装置100は、第1プログラムの更新中であって、第2プログラムによる認証中にICカードから利用者情報を読み取ると、読み取った利用者情報を外部のサーバに送出して認証の問合せを行い、外部のサーバによる認証処理結果に基づいてドア等に設置された電子錠を開錠するか否かの制御を行う。
【0021】
このように、認証装置100は、第1プログラムが更新中であっても第2プログラムにより継続して認証処理を行い、電子錠の開錠等の制御を行うことができる。
<構成>
以下、実施の形態1に係る認証装置100の構成について説明する。
図1は、後述する第1プログラム122を実行中の認証装置100の構成図である。
【0022】
認証装置100は、LAN(Local Area Network)200を介してサーバ300と接続している。
なお、サーバ300は、入退室を許可する者を定義したリストである後述する認証情報121と第1プログラム122の更新後のプログラムである後述する新第1プログラム124とを記憶し、これらを認証装置100に送付する機能を有する。
【0023】
また、サーバ300は、認証装置100からの要求に応じて、自サーバ内に記憶する認証情報121を用いた認証処理を行う機能を有する。
認証装置100は、同図に示すとおり、読取部110、記憶部120、通信部130、実行制御部140から構成される。
読取部110は、いわゆるカードリーダであり、ICカードに記憶されたICカード利用者を識別する利用者情報を読み取り、実行制御部140に送出する機能を有する。
【0024】
記憶部120は、図1に示す認証情報121、第1プログラム122、第2プログラム123、図2に示す新第1プログラム124を記憶する不揮発性のメモリである。
認証情報121は、読取部110が読み取った利用者情報と照合して認証を行うために用いられるデータベースにおけるテーブルである。テーブルには、入退室を許可するICカード利用者の対比用の利用者情報が各レコードとして登録されている。
【0025】
認証情報121は、後述する初期化部142により、通信部130を介してサーバ300から取得され、記憶部120に記憶される。
第1プログラム122、第2プログラム123、新第1プログラム124は、実行制御部140により実行されるプログラムである。これらのプログラムを実行することにより実現される機能の詳細については、後述する。
【0026】
通信部130は、LAN200を介して、サーバ300とデータの送受信を行う回路である。
実行制御部140は、図示していないが、CPU(Central Processing Unit)を備え、第1プログラム122、第2プログラム123、又は新第1プログラム124を実行する機能を有する。
【0027】
実行制御部140は、第1プログラム122、第2プログラム123、又は新第1プログラム124を実行することにより、読取部110が送出した利用者情報を受領する。
以下では、実行制御部140が、上記各プログラムを実行することにより実現される機能について説明する。
なお、新第1プログラム124は、認証情報121のフォーマットが更新された場合や第1プログラム122に不具合(バグ)が発見された場合等に、これらに対応して第1プログラム122を更新したプログラムである。
【0028】
第1プログラム122の更新について説明する場合に、便宜上、更新前の第1プログラムを第1プログラム122と、更新後の第1プログラムを新第1プログラム124として説明するが、第1プログラム122の更新後においては、新第1プログラム124が第1プログラム122として認証装置100で実行されていくこととなる。
実行制御部140が、新第1プログラム124を実行することにより実現される機能は、後述する第1プログラム122を実行することにより実現される機能と同様であるため、新第1プログラム124についての詳細な説明は省略する。
<第1プログラム122の機能>
まず、実行制御部140が、第1プログラム122を実行することにより実現される機能について説明する。
【0029】
実行制御部140は、機能面において、図1に示すように、第1受付部141、初期化部142、第1認証部143、処理部144、第1切替制御部145を備える。
第1受付部141は、第1プログラム122の外部から送出された情報や要求を受け付け、受領した情報等の内容に応じて転送先を判断して転送する機能を有する。
具体的には、読取部110から利用者情報を受領すると、第1認証部143に転送し、通信部130を介してサーバ300から第1プログラム122の更新を要求する旨の更新要求、又は第2プログラム123から第1プログラム122の停止を要求する停止要求を受領すると、第1切替制御部145に転送する。
【0030】
初期化部142は、第1プログラム122の起動直後の初期化処理を行う機能を有する。
具体的には、通信部130を介して、サーバ300から認証情報121を取得し、記憶部120の予め定められた領域に取得した認証情報121を記憶する。
より詳細には、サーバ300から取得した、認証情報121の基となる情報に、認証処理を高速に行うための補助データを付加した認証情報121を記憶する。
【0031】
なお、初期化部142は、認証情報121を記憶すべき記憶部120の領域に、後述する第1プログラム122の複製が記憶されているときは、これを削除した上で認証情報121を記憶する。
また、初期化部142は、初期化処理が完了した際に、第2プログラム123が実行制御部140により実行されているときは、第2プログラム123に対し、初期化処理が完了した旨の初期化完了通知を行う。
【0032】
第1認証部143は、第1受付部141を介して、読取部110から利用者情報を取得すると、この利用者情報と記憶部120に記憶された認証情報121とを照合する認証処理を行い、取得した利用者情報が認証情報121に存在するか否かを示す認証処理結果を処理部144に送出する機能を有する。
なお、第1認証部143は、後述する第1切替制御部145から認証処理を停止するよう制御された場合には、認証処理を停止する。
【0033】
処理部144は、第1認証部143から受領した認証処理結果に基づいて、ドア等に設置された電子錠を開錠するか否かについての制御を行う機能を有する。
具体的には、第1認証部143から、記憶部120に記憶された認証情報121に第1認証部143が取得した利用者情報が存在する旨の認証処理結果を受領した場合には、ドア等に設置された電子錠を開錠するよう制御する。
【0034】
第1切替制御部145は、第1プログラム122による認証から第2プログラム123による認証に切替えるため、第1プログラム122による認証の停止、第1プログラム122の実行停止、第2プログラム123の実行開始についての制御を行う機能を有する。
具体的には、第1受付部141を介して、サーバ300から第1プログラム122の更新要求を受領すると、第1認証部143の認証処理を停止するよう制御し、第2プログラム123を実行するよう制御し、また、通信部130を介して、サーバ300に対し、第1プログラム122の更新が可能である旨の応答(ACK)を行う。
【0035】
また、第1受付部141を介して、第2プログラム123から第1プログラム122の停止要求を受領すると、第1プログラム122を停止させるよう制御する。
<第2プログラム123の機能>
次に、実行制御部140が、第2プログラム123を実行することにより実現される機能について、図2を用いて説明する。
【0036】
同図は、第2プログラム123を実行中の認証装置100の構成図である。なお、同図に示す認証装置100の構成は、実行制御部140の機能面における構成を除き、図1に示す認証装置100と同様である。
実行制御部140は、機能面において、図2に示すように、処理部144、第2受付部146、第2認証部147、更新部148、第2切替制御部149を備える。
【0037】
なお、処理部144は、第2認証部147から認証処理結果を受領する以外は、第1プログラム122における処理部144と同様の機能を有するため、説明は省略する。
第2受付部146は、第2プログラム123の外部から送出された情報や要求を受け付け、受領した情報等の内容に応じて転送先を判断して転送する機能を有する。
具体的には、読取部110から利用者情報を受領すると、第2認証部147に転送し、第1プログラム122から初期化完了通知を受領すると、第2切替制御部149に転送する。
【0038】
また、第2受付部146は、更新部148から後述する新第1プログラム124の書込みが完了した旨の応答(ACK)を受領すると、通信部130を介して、サーバ300へ転送する機能を有する。
第2認証部147は、第2受付部146を介して、読取部110から利用者情報を取得すると、通信部130を介してサーバ300へ取得した利用者情報を送出して認証の問い合わせを行い、通信部130を介してサーバ300から認証処理結果を受領すると、認証処理結果を処理部144に転送する機能を有する。
【0039】
なお、サーバ300は、認証装置100から受領した利用者情報と自サーバが記憶する認証情報121とを照合し、受領した利用者情報が認証情報121に存在するか否かを示す認証処理結果を認証装置100へ送出する。
更新部148は、記憶部120に記憶する第1プログラム122のバックアップを作成した上で、第1プログラム122を、通信部130を介して受領した新第1プログラム124に更新する機能を有する。
【0040】
具体的には、記憶部120の認証情報121を削除し、削除した認証情報121が記憶されていた記憶部120の領域に、第1プログラム122を複製し、第2切替制御部149に第1プログラム122の複製が完了した旨の通知を送出する。
また、更新部148は、通信部130を介して、サーバ300から新第1プログラム124を受領すると、もともと第1プログラム122が記憶されている記憶部120の領域に、受領した新第1プログラム124の書込みを開始し、書込みが完了すると、第2受付部146と第2切替制御部149とに書込みが完了した旨の応答(ACK)を送出する。
【0041】
第2切替制御部149は、認証機能のみを停止した第1プログラム122の実行の停止を要求する停止要求を送出する機能を有し、また、第1プログラム122の更新後に、第2プログラム123による認証から新第1プログラム124による認証に切替えるため、第2プログラム123の実行停止、新第1プログラム124の実行開始についての制御を行う機能を有する。
【0042】
具体的には、更新部148から第1プログラム122の複製が完了した旨の通知を受領すると、第1プログラム122に停止要求を送出し、更新部148から新第1プログラム124の書込みが完了した旨の応答(ACK)を受領すると、新第1プログラム124を実行するよう制御する。
また、第2切替制御部149は、第2受付部146を介して第1プログラム122から初期化完了通知を受領すると、第1プログラム122に対し、初期化完了通知を受領した旨の応答(ACK)を送出し、第2プログラム123を終了させる。
【0043】
なお、更新部148が受領した新第1プログラム124を記憶部120に書き込んでいる最中に、停電などの障害が発生し、更新処理が正常に終了しなかった場合には、次のように処理することにより復旧させることができる。
認証装置100の管理者等は、認証装置100の記憶部120に複製してある第1プログラム122を、もともと第1プログラム122が記憶されていた記憶部120の領域に複製し、その複製した第1プログラム122を実行させる。
【0044】
第1プログラム122が実行されると、第1プログラム122の初期化部142により、サーバ300から認証情報121が取得され、取得された認証情報121が記憶部120に記憶されるため、更新処理が行われる前の認証装置100の状態に復旧させることができる。
<データ>
以下、認証装置100で使用するデータについて説明する。
【0045】
<利用者情報>
まず、ICカードに記憶された利用者情報について説明する。
利用者情報は、各ICカードに記憶されているICカード利用者を識別する情報である。利用者情報は、ICカード利用者を識別できる情報であればどのような情報であってもよいが、以下では、他のICカードと重複しない数字であるとして説明する。
【0046】
<認証情報>
次に、記憶部120に記憶する認証情報121について説明する。
認証情報121は、読取部110がICカードから読み取った利用者情報と照合して認証を行うために用いられる対比用の利用者情報からなるレコードを登録したデータベースのテーブルである。
【0047】
例えば、鈴木さんが利用するICカードには利用者情報「1」が記憶され、佐藤さんが利用するICカードには利用者情報「2」が記憶され、中村さんが利用するICカードには利用者情報「3」が記憶されている場合に、鈴木さんと佐藤さんとに入退室が許可されているとすると、認証情報121には対比用の利用者情報「1」と「2」とのレコードが登録されていることとなる。
【0048】
なお、新たに入退室を許可する者が発生した場合等の認証情報121の更新はサーバ300上で行われ、例えば、サーバ300の管理者等が所定の操作を行うことにより、更新された部分のデータ(以下、「差分データ」という)がサーバ300から認証装置100に送出される。
通信部130を介して差分データを受領した認証装置100の認証情報更新部(図示しない)は、差分データを記憶部120に記憶する認証情報121に反映し、認証情報121を最新の状態にすることができる。
<動作>
以下、上記構成を備え、上記データを取り扱う認証装置100の動作を説明する。
【0049】
<処理シーケンス>
まず、サーバ300から第1プログラム122の更新要求がなされた場合のサーバ300と認証装置100との処理シーケンスについて、図3に示すシーケンス図を用いて説明する。
なお、以下では、第1プログラム122と第2プログラム123とが共に実行される場合があるが、マルチタスクOS(Operating System)の下で、両プログラムは並列実行、又は擬似並列実行されるものとし、両プログラム間でのデータの授受は、一般的なプロセス間通信により行われるものとする。
【0050】
また、以下の説明では、ステップS301の時点においては、第1プログラム122のみが実行されているものとする。
サーバ300は、認証装置100に第1プログラム122の更新要求を送出する(ステップS301)。
認証装置100は、第1プログラム122を実行することにより、サーバ300からの第1プログラム122の更新要求を受領させ、第1プログラム122による認証を終了させる(ステップS302)。
【0051】
認証装置100は、第1プログラム122を実行することにより、第2プログラム123を実行させる(ステップS303)。
認証装置100は、第2プログラム123を実行するにより、記憶部120に記憶された認証情報121を削除させ(ステップS304)、削除された認証情報121が記憶されていた記憶部120の領域に第1プログラム122を複製させる(ステップS305)。
【0052】
認証装置100は、第2プログラム123を実行することにより、第2プログラム123による認証を開始させ(ステップS306)、第1プログラム122に対し、第1プログラム122の停止要求を送出させる(ステップS307)。
認証装置100は、第1プログラム122を実行することにより、第1プログラム122の停止要求を受領させ、ステップS301の第1プログラム122の更新要求に対して更新が可能である旨の応答(ACK)をサーバ300に送出させる(ステップS308)。
【0053】
認証装置100は、第1プログラム122を実行することにより、第1プログラム122を停止させる(ステップS309)。
サーバ300は、第1プログラム122の更新が可能である旨の応答(ACK)を受領すると、新第1プログラム124を認証装置100に送出する(ステップS310)。
認証装置100は、第2プログラム123を実行することにより、新第1プログラム124を受領させ、記憶部120の第1プログラム122が記憶されている領域に受領した新第1プログラム124の書込みを開始させ(ステップS311)、書込みが完了すると、サーバ300に対し、書込みが完了した旨の応答(ACK)を送出させる(ステップS312)。
【0054】
認証装置100は、第2プログラム123を実行することにより、新第1プログラム124を実行させる(ステップS313)。
認証装置100は、新第1プログラム124を実行することにより、初期化処理として、記憶部120に複製された第1プログラム122を削除させ、サーバ300から認証情報121を取得させ、削除させた領域に認証情報121を記憶させる(ステップS314)。
【0055】
認証装置100は、初期化処理が完了すると、新第1プログラム124を実行することにより、第2プログラム123に対し、初期化処理が完了した旨の初期化完了通知を送出させる(ステップS315)。
認証装置100は、第2プログラム123を実行させることにより初期化完了通知を受領させ、新第1プログラム124に対し、初期化完了通知を受領した旨の応答(ACK)を送出させる(ステップS316)。
【0056】
認証装置100は、第2プログラム123を実行することにより第2プログラムを終了させ(ステップS317)、新第1プログラム124を実行することにより新第1プログラム124による認証を開始させる(ステップS318)。
<第1プログラム122>
次に、第1プログラム122の動作について、図4に示すフローチャートに基づき、説明する。
【0057】
なお、上述の通り、説明の便宜上、更新後の第1プログラムを新第1プログラム124として説明しており、第2プログラム123により実行された新第1プログラム124は、認証装置100において、第1プログラム122として下記フローチャートに従い、動作する。
初期化部142は、初期化処理として、通信部130を通じて、サーバ300から認証情報121を取得して、記憶部120の予め定められた所定の領域に記憶する(ステップS401)。
【0058】
なお、その所定の領域に第1プログラム122の複製が記憶されているときは、それを削除した上で削除したその領域に認証情報121を記憶し、また、第2プログラム123が実行されているときは、初期化処理が完了すると、第2プログラム123に対し、初期化完了通知を通知する。
第1受付部141は、情報の受領等のイベントが発生したかを確認する(ステップS402)。
【0059】
イベントが発生していない場合には(ステップS402:N)、ステップS402に戻り、イベントが発生した場合には(ステップS402:Y)、第1受付部141は、そのイベントが読取部110からの利用者情報の受領かを確認する(ステップS403)。
発生したイベントが利用者情報の受領である場合には(ステップS403:Y)、第1受付部141は、第1認証部143の認証処理が実行中かを確認する(ステップS404)。
【0060】
認証処理が停止している場合には(ステップS404:N)、ステップS402に戻り、認証処理が実行中の場合には(ステップS404:Y)、第1受付部141は、受領した利用者情報を第1認証部143に転送する。
第1認証部143は、受領した利用者情報と記憶部120に記憶する認証情報121とを照合し(ステップS405)、認証処理結果を処理部144に送出する。
【0061】
処理部144は、受領した認証処理結果が、利用者情報が認証情報121に存在する旨の認証処理結果かを確認する(ステップS406)。
利用者情報が認証情報121に存在しない旨の認証処理結果である場合には(ステップS406:N)、ステップS402に戻り、利用者情報が認証情報121に存在する旨の認証処理結果である場合には(ステップS406:Y)、処理部144は、ドア等に設置された電子錠を開錠するよう制御する(ステップS407)。
【0062】
発生したイベントが利用者情報の受領でない場合(ステップS403:N)、第1受付部141は、そのイベントがサーバ300からの第1プログラム122の更新要求であるかを確認する(ステップS408)。
発生したイベントが第1プログラム122の更新要求である場合には(ステップS408:Y)、第1受付部141は、第1切替制御部145に受領した第1プログラム122の更新要求を転送する。
【0063】
第1切替制御部145は、第1プログラム122の更新要求を受領すると、第1認証部143に対し、認証処理を停止するよう制御する(ステップS409)。
第1切替制御部145は、記憶部120に記憶された第2プログラム123を実行するよう制御する(ステップS410)。
発生したイベントが第1プログラム122の更新要求でない場合には(ステップS408:N)、第1受付部141は、そのイベントが第2プログラム123からの第1プログラム122の停止要求であるかを確認する(ステップS411)。
【0064】
発生したイベントが第1プログラム122の停止要求でない場合には(ステップS411:N)、ステップS402に戻り、発生したイベントが第1プログラム122の停止要求である場合には(ステップS411:Y)、第1受付部141は、第1切替制御部145に受領した第1プログラム122の停止要求を転送する。
第1切替制御部145は、通信部130を介して、サーバ300に対し、第1プログラム122の更新が可能である旨の応答(ACK)を送出し(ステップS412)、第1プログラム122の処理を終了させるよう制御する。
【0065】
<第2プログラム123>
次に、第2プログラム123の動作について、図5に示すフローチャートに基づき、説明する。
更新部148は、記憶部120に記憶されている認証情報121を削除する(ステップS501)。
【0066】
更新部148は、削除した認証情報121が記憶されていた記憶部120の領域に、第1プログラム122を複製し、第2切替制御部149に第1プログラム122の複製が完了した旨の通知を送付する(ステップS502)。
第2切替制御部149は、実行制御部140が実行する第1プログラム122に対し、第1プログラム122の停止要求を送出する(ステップS503)。
【0067】
更新部148は、通信部130を介して、サーバ300から新第1プログラム124を受領すると、第1プログラム122が記憶されている記憶部120の領域に、受領した新第1プログラム124の書込みを開始する(ステップS504)。
なお、更新部148は、書込みが完了すると、第2受付部146と第2切替制御部149とに書込みが完了した旨の応答(ACK)を送付し、ステップS502で複製された第1プログラム122を削除する。
【0068】
第2受付部146は、情報の受領等のイベントが発生したかを確認する(ステップS505)。
イベントが発生していない場合には(ステップS505:N)、ステップS505に戻り、イベントが発生した場合には(ステップS505:Y)、第2受付部146は、そのイベントが読取部110からの利用者情報の受領かを確認する(ステップS506)。
【0069】
発生したイベントが利用者情報の受領である場合には(ステップS506:Y)、第2受付部146は、第2認証部147に受領した利用者情報を転送する。
第2認証部147は、利用者情報を受領すると、通信部130を介して、サーバ300に受領した利用者情報を送付して認証の問合せを行う(ステップS507)。
第2認証部147は、通信部130を介して、サーバ300から認証処理結果を受領したかを確認する(ステップS508)。
【0070】
サーバ300から認証処理結果を受領していない場合には(ステップS508:N)、ステップS508に戻り、ステップS507の認証の問合せを行ってから所定時間以内、例えば、10秒以内に認証処理結果を受領しない場合には(ステップS508:タイムアウト)、ステップS505に戻り、サーバ300から認証処理結果を受領した場合には(ステップS508:Y)、第2認証部147は、認証処理結果を処理部144に転送する。
【0071】
処理部144は、受領した認証処理結果が、利用者情報が認証情報121に存在する旨の認証処理結果かを確認する(ステップS509)。
利用者情報が認証情報121に存在しない旨の認証処理結果である場合には(ステップS509:N)、ステップS505に戻り、利用者情報が認証情報121に存在する旨の認証処理結果である場合には(ステップS509:Y)、処理部144は、ドア等に設置された電子錠を開錠するよう制御する(ステップS510)。
【0072】
発生したイベントが利用者情報の受領でない場合(ステップS506:N)、第2受付部146は、そのイベントが更新部148からの新第1プログラム124の書込みが完了した旨の応答(ACK)の受領かを確認する(ステップS511)。
発生したイベントが新第1プログラム124の書込みが完了した旨の応答(ACK)の受領である場合には(ステップS511:Y)、第2受付部146は、受領した新第1プログラム124の書込みが完了した旨の応答(ACK)を、通信部130を介してサーバ300に転送する(ステップS512)。
【0073】
また、第2切替制御部149は、新第1プログラム124の書込みが完了した旨の応答(ACK)を受領すると、記憶部120に記憶された新第1プログラム124を実行するよう制御する(ステップS513)。
発生したイベントが新第1プログラム124の書込みが完了した旨の応答(ACK)の受領でない場合には(ステップS511:N)、第2受付部146は、そのイベントが新第1プログラム124からの初期化完了通知の受領であるかを確認する(ステップS514)。
【0074】
発生したイベントが初期化完了通知の受領でない場合には(ステップS514:N)、ステップS505に戻り、発生したイベントが初期化完了通知の受領である場合には(ステップS514:Y)、第2受付部146は、第2切替制御部149に受領した初期化完了通知を転送する。
第2切替制御部149は、初期化完了通知を受領すると、新第1プログラム124に対し、初期化完了通知を受領した旨の応答(ACK)を送出し(ステップS515)、第2プログラム123の処理を終了する。
<補足>
以上、本発明に係る認証装置について実施の形態に基づいて説明したが、以下のように変形することも可能であり、本発明は上述した実施の形態で示した通りの認証装置に限られないことは勿論である。
(1)実施の形態1においては、入退室に関する認証装置を例に、本発明に係る認証装置を説明したが、入退室に関する認証を行う場合に限られず、例えば、認証処理結果に応じて施錠/開錠されるキーボックス等の認証を行う場合も含まれる。
(2)実施の形態1においては、第1プログラム122を更新する際に、記憶部120の認証情報121を記憶していた領域に第1プログラム122を複製し、第1プログラムが記憶されている領域に新第1プログラム124を上書きすることとして説明したが、第1プログラム122の複製を行わず、認証情報121を記憶していた領域に新第1プログラム124を書き込むこととしてもよい。これにより、第1プログラム122の複製の処理を省略することができる。
【0075】
(3)図3に示すシーケンス図において、第2プログラム123が実行(ステップS303)された後、認証情報121の削除(ステップS304)と第1プログラム122のバックアップを作成(ステップS305)した後、第2プログラム123による認証処理を開始する(ステップS306)として説明したが、認証処理のための別スレッドを立て、第2プログラム123起動後に直ちに認証処理を開始することとしてもよい。
(4)実施の形態1において、更新部148は、記憶部120に記憶された認証情報121を削除した上で、削除された認証情報121が記憶された領域に第1プログラム122を複製することとして説明したが、認証情報121を削除することなく、直接第1プログラム122を上書きすることとしてもよい。
(5)実施の形態1においては、第2プログラム123による認証として、サーバ300に認証の問合せを行うこととしたが、これよりも簡易な認証として、読取部110が所定時間内に利用者情報を所定回取得するか否かに基づいて認証することとしてもよい。例えば、読取部110が10秒間に3回連続して同じ利用者情報を取得した場合に、ドア等に設置された電子錠を開錠するようにする。
【0076】
これにより、サーバ300への認証の問合せを行うことなく、高速な認証処理を実現できる。
なお、このような認証を行う場合には、10秒間に3回連続して同じ利用者情報を取得した場合に、ドア等に設置された電子錠を開錠するという情報をICカード利用者に事前に通知しておく必要がある。
(6)実施の形態1においては、入退室許可者の変更があった場合には、サーバ300上で認証情報121の更新を行なうとして説明したが、認証装置100の管理者等が所定の操作、例えば別途用意された管理者用のICカードを読み込ませた後に、新たに入退室が許可された者のICカード、又は入退室の許可が解除された者のICカードを読み込ませることで、認証装置100上で、認証情報121の更新ができるようにし、更新された部分の差分データを認証装置100からサーバ300に送出できるようにしてもよい。
(7)実施の形態1において、初期化部142は、記憶部120に第1プログラム122の複製が記憶されている場合に、これを削除した上で認証情報121を記憶するとして説明したが、直接上書きすることとしてもよい。
(8)実施の形態1においては、第1プログラム122の更新処理が正常に終了しなかった場合に、認証装置100の管理者等が所定の操作を行うことにより更新処理が行われる前の認証装置100の状態に復旧できるとして説明したが、復旧処理を自動で行えるようにしてもよい。
【0077】
具体的には、例えば第2プログラム123の更新部148は、記憶部120への新第1プログラム124の書込みを開始する前に、更新中であるかを示す更新フラグを「1」に設定し、新第1プログラム124の書込みが完了すると、更新フラグを「0」に設定するようにする。
また、認証装置100が起動されたときに最初に実行されるプログラム(以下、「ブートプログラム」という)において、更新フラグを確認するようにする。
【0078】
更新フラグが「1」の場合には、更新処理が正常に終了しなかったと判断できるため、ブートプログラムは、認証装置100の記憶部120に複製してある第1プログラム122を、もともと第1プログラム122が記憶されていた記憶部120の領域に複製し、この複製した第1プログラム122を実行する。
これにより、自動で復旧処理を行うことができる。
【図面の簡単な説明】
【0079】
【図1】実施の形態1に係る第1プログラム122を実行中の認証装置100の構成図である。
【図2】実施の形態1に係る第2プログラム123を実行中の認証装置100の構成図である。
【図3】第1プログラム122の更新要求がなされた場合の処理を示すシーケンス図である。
【図4】第1プログラム122による処理を示すフローチャートである。
【図5】第2プログラム123による処理を示すフローチャートである。
【符号の説明】
【0080】
100 認証装置
110 読取部
120 記憶部
121 認証情報
122 第1プログラム
123 第2プログラム
124 新第1プログラム
130 通信部
140 実行制御部
141 第1受付部
142 初期化部
143 第1認証部
144 処理部
145 第1切替制御部
146 第2受付部
147 第2認証部
148 更新部
149 第2切替制御部
200 LAN
300 サーバ

【特許請求の範囲】
【請求項1】
認証用識別情報を逐次取得する取得部と、
前記認証用識別情報と照合して認証を行うために用いられる認証情報を記憶している第1領域と、当該認証情報と前記取得部が取得した前記認証用識別情報とに基づいて自装置に認証を行わせるための第1プログラムを記憶している第2領域とを有する記憶部と、
前記第1プログラムの実行中に、当該第1プログラムの更新の必要性を検出すると、当該第1プログラムの実行による認証を終了し、前記記憶部に記憶している前記認証情報を用いない方法での認証を行う第2プログラムの実行による認証を開始し、外部サーバから更新プログラムを取得し、前記第1領域と前記第2領域とを利用して前記第1プログラムの保持と取得した前記更新プログラムとの書込みを行い、当該更新プログラムの書込みが完了すると、前記外部サーバから前記認証情報を取得して前記更新プログラムを記憶した領域以外の前記記憶部の領域に取得した当該認証情報の書込みを開始し、当該認証情報の書込みが完了すると、前記第2プログラムの実行による認証を終了し、前記更新プログラムの実行による認証を開始する実行制御部とを備える
ことを特徴とする認証装置。
【請求項2】
前記実行制御部は、取得した前記更新プログラムを前記記憶部の前記第1領域に書き込み、取得した前記認証情報を当該第1領域以外の前記記憶部の領域に書き込む
ことを特徴とする認証装置。
【請求項3】
前記第2プログラムの実行による前記認証は、
前記取得部が取得した前記認証用識別情報を前記外部サーバに送出して当該外部サーバに前記認証情報を用いた認証の問い合わせをし、外部サーバから受領した認証処理結果に基づいて行う
ことを特徴とする請求項1記載の認証装置。
【請求項4】
前記第2プログラムの実行による前記認証は、
前記取得部が所定時間内に前記認証用識別情報を所定回取得するか否かに基づいて行う
ことを特徴とする請求項1記載の認証装置。
【請求項5】
認証装置と当該認証装置と通信可能な外部サーバとを備える認証システムであって、
前記認証装置は、
認証用識別情報を逐次取得する取得部と、
前記認証用識別情報と照合して認証を行うために用いられる認証情報を記憶している第1領域と、当該認証情報と前記取得部が取得した前記認証用識別情報とに基づいて自装置に認証を行わせるための第1プログラムを記憶している第2領域とを有する第1記憶部と、
前記第1プログラムの実行中に、当該第1プログラムの更新の必要性を検出すると、当該第1プログラムの実行による認証を終了し、前記認証情報を用いない方法での認証を行う第2プログラムの実行による認証を開始し、前記外部サーバから更新プログラムを取得し、前記第1領域と前記第2領域とを利用して前記第1プログラムの保持と取得した前記更新プログラムの書込みを行い、当該更新プログラムの書込みが完了すると、前記外部サーバから前記認証情報を取得して前記更新プログラムを記憶した領域以外の前記第1記憶部の領域に取得した当該認証情報の書込みを開始し、当該認証情報の書込みが完了すると、前記第2プログラムの実行による認証を終了し、前記更新プログラムの実行による認証を開始する実行制御部とを有し、
前記外部サーバは、
前記認証情報と前記更新プログラムとを記憶する第2記憶部と、
前記認証情報、又は前記更新プログラムを前記認証装置に送出する送出部とを有する
ことを特徴とする認証システム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate