説明

認証装置、認証方法、その方法を実現するプログラム、およびそのプログラムを記録した記録媒体

【課題】 認証結果を受信するための独自の待ち受け状態処理を備えていない端末を用いて、認証装置でユーザ認証に成功したユーザと端末ユーザが同一人であることを保証し、ICカードを安全に利用させることができる認証装置および方法を提供する。
【解決手段】 認証装置200の特定情報通知部M20は、ユーザ認証部M10から受信したユーザ認証結果情報P14をもとに特定情報P16を生成し、ユーザ400に通知する。ユーザ400は、通知された特定情報P16に基づいて、入力データP18を端末300に入力する。認証装置200は、入力データ関連情報P20を受信すると、入力データ関連情報判断部M30が、特定情報P16で入力データ関連情報P20を復号化する。復号化した結果が、ICカード100へ送信することが許されるフォーマットの認証成功情報であった場合に、ICカード100へ復号化済みの認証成功情報P24を送信する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、認証装置に関し、特に、2つの装置の間に設けられる認証装置および認証方法に関する。
【背景技術】
【0002】
近年の情報セキュリティに対する市場の要求の増大に伴い、さまざまなセキュリティ対策システムが商品化されている。特に2005年4月より日本国内で施行された個人情報保護法に対応するための情報管理システムに対する企業の注目度は高く、各企業が保有する情報の流出の防止は急務の課題となっている。こうした情報管理システムに限らず、さまざまなセキュリティシステムやセキュリティサービスにおいて、必須要件の1つがユーザ認証であり、情報を操作できるユーザ権限を厳密に管理したり、情報の伝達経路をトレースバックできたりすることが重要となっている。こうした時代の背景にも押され、バイオメトリクス(生体)情報を用いたユーザ認証技術が注目されつつある。たとえば、指紋センサを搭載した携帯電話やモバイルPC(Personal Computer)、PDA(Personal Data Assistant)といった端末が市場に出回り始めている。
【0003】
ところで、生体情報に代表されるユーザ認証用データは究極の個人情報であるため、その管理手段としては個人で管理可能で、かつ耐タンパ性を持ったセキュリティデバイスであるICカードやICチップが適している。実際に一部の銀行では、従来の磁気方式によるキャッシュカードに代えて、生体情報を格納したICカードの発行とそのカードに対応した自動現金支払機の運用を開始している。またワールドワイドに見ても、生体情報を格納して本人確認を行なうことができるICチップ内蔵の電子パスポートの試験運用が開始されている。
【0004】
こうしたセキュリティデバイスは、単なる記憶媒体としての機能だけではなく、正規ユーザだけにセキュリティデバイス内のデータファイルやアプリケーションを利用させることができるアクセスコントロール機能を有する。アクセスコントロール機能を実現するために、セキュリティデバイスはアクセスコントロール状態を内部で管理し、たとえば外部で行なったユーザ認証結果に応じてそのアクセスコントロール状態を変更する必要がある。
【0005】
一般的なアクセスコントロール状態の変更手法としては、ユーザ認証が必要なサービスを実行する端末において、セキュリティデバイスから読出したユーザ認証用データをもとに、端末上でユーザ認証を行い、認証が成功したことをセキュリティデバイスに通知することで、セキュリティデバイス内部のアクセスコントロール状態を変更し、アクセスコントロールされたファイルやアプリケーションを使用することができる。
【0006】
また、端末上でユーザ認証を行なう場合、端末側に生体情報を取得するためのセンサデバイスや、ICカードリーダライタを備える構成にすることによるコストや構造上の問題を回避するために、外部周辺機器にその機能を備えるシステムが存在する。
【0007】
このような、外部周辺機器にセンサデバイスや、ICカードリーダライタを備えることで、端末側からセキュリティデバイスのファイルやアプリケーションを使用することができる技術が、たとえば特開2000−215172号公報(特許文献1)および特開2002−269055号公報(特許文献2)に開示されている。
【0008】
特許文献1に開示された認証システムは、情報機器の使用者を認証するシステムであって、登録された使用者であることを特定できる生体情報およびパスワードが格納された個人認証用のカードと、カードに格納された生体情報およびパスワードを読取るカード読取装置と、使用者から生体情報を読取る生体情報読取装置と、カード読取装置から出力される生体情報およびパスワードと、生体情報読取装置から出力される生体情報および情報機器に格納されているパスワードとを照合する照合装置とを含む。
【0009】
この公報により開示された個人認証システムによると、カード読取装置が個人認証用のカードから読取った生体情報およびパスワードと、生体情報読取装置が使用者から読取った生体情報および情報機器に格納されているパスワードとを照合する照合装置を備えたので、生体情報およびパスワードの双方で個人認証を行なうことができる。これにより、正当な使用者ではない者によるコンピュータの不正使用を防止することができる。その結果、使用者個人の認証を必要とする業務における情報機器の使用管理をより堅牢なセキュリティで実現することができる。
【0010】
また、特許文献2により開示されたICカードシステムは、ICカードを所持する特定ユーザの生体情報を読取ってユーザ認証を行い、特定ユーザを予め登録された正規ユーザと判断した場合には、認証結果と正規ユーザに対応して予め登録されたユーザ識別番号とを送信し、特定ユーザを正規ユーザではないと判断した場合には、認証結果を送信する生体認証装置と、ICカードから情報を読出し、読出した情報に基づいて特定ユーザにサービスを提供する際、生体認証装置から受信した認証結果が正規ユーザであることを示し、かつ生体認証装置から受信したユーザ識別番号とICカードから読出したカード識別番号とが予め対応付けられて登録されている場合のみ、特定ユーザに対してICカードの利用を許可するサービス提供装置とを含む。
【0011】
この公報により開示されたICカードシステムによると、ICカードを所持する特定ユーザの生体情報を用いて生体認証装置でユーザ認証を行い、認証結果が正規ユーザであることを示す場合のみ、特定ユーザに対してサービス提供装置におけるICカードの利用を許可するようにしたので、正規ユーザではない第三者が暗号鍵を含む個人情報まで含めてICカードを偽造したとしても、偽造ICカードの使用を拒否することができる。また第三者が正規ユーザのICカードを不正に使用しようとしても、ICカードの使用を拒否することができる。これにより、ICカードの不正使用の可能性を低減することができる。また、サービス提供装置において受信した認証結果が正規ユーザであることを示し、かつ受信したユーザ識別番号とICカードから読出したカード識別番号とが予め対応付けられて登録されている場合のみ、特定ユーザに対してサービス提供装置におけるICカードの利用を許可するようにしたので、特定ユーザが予めシステムに登録された正規ユーザで、かつICカードが正規ユーザが所有する正規のICカードである場合のみICカードの使用を許可することができる。したがって、正規ユーザではない第三者が暗号鍵を含む個人情報まで含めてICカードを偽造したとしても、偽造ICカードの使用を拒否することができる。また第三者が正規ユーザのICカードを不正に使用しようとしても、ICカードの使用を拒否することができる。さらに正規ユーザが他の正規ユーザのICカードを不正に使用しようとしても、ICカードの使用を拒否することができる。したがって、ICカードの不正使用の可能性を低減することができる。
【特許文献1】特開2000−215172号公報
【特許文献2】特開2002−269055号公報
【発明の開示】
【発明が解決しようとする課題】
【0012】
しかしながら、特許文献1および特許文献2に開示された認証システムおよびICカードシステムでは、生体情報読取装置および生体認証装置に生体情報を入力したユーザと、個人認証用のカードおよびICカードの正規ユーザとが同一人であることを保証できるが、情報機器およびサービス提供装置のユーザと認証に成功したユーザが同一人であることは保証していない。このため、たとえば、情報機器およびサービス提供装置が、生体情報読取装置および生体認証装置から離れた場所にある場合には、生体情報を入力したユーザが認証に成功してから、情報機器およびサービス提供装置のある場所に移動するまでの時間は、誰でも自由にICカードを利用できてしまう。その結果、認証に成功していないユーザが情報機器およびサービス提供装置から個人認証用のカードおよびICカードの内部に記憶された情報を利用できてしまうという問題がある。
【0013】
また、特許文献1および特許文献2に開示された認証システムおよびICカードシステムでは、生体情報読取装置および生体認証装置から生体情報や認証結果を受信するための独自の待ち受け状態処理が、情報機器およびサービス提供装置に必要となる。さらに、情報機器およびサービス提供装置と、生体情報読取装置および生体認証装置との互換性を実現するためには、両者の通信プロトコルの標準化が必要となってしまう問題もある。
【0014】
本発明は、上述の問題点を解決するためになされたものであって、その目的は、生体情報や認証結果を受信するための独自の待ち受け状態処理を備えていない端末を用いて、認証装置でユーザ認証に成功したユーザと端末ユーザが同一人であることを保証し、ICカードを安全に利用させることができる認証装置および方法を提供することである。
【課題を解決するための手段】
【0015】
第1の発明に係る認証装置は、第1の装置に記憶された情報を第2の装置において利用するために、第1の装置と第2の装置との間に設けられる認証装置であって、第1の装置は、第2の装置のユーザが第1の装置の正規ユーザであるという認証に成功したことを表わす認証成功情報を受信した場合に、第2の装置により第1の装置に記憶された情報を利用することができ、第2の装置は、第2の装置に入力された入力データが認証装置で判断された結果に基づいて、認証装置を介して第1の装置に記憶された情報を利用することができ、認証装置は、ユーザ認証用データを第1の装置から取得するための第1の取得手段と、ユーザがユーザ情報を入力するための入力手段と、ユーザ認証用データとユーザ情報とが認証条件を満足すると、ユーザが第1の装置の正規ユーザであると認証するための認証手段と、正規ユーザであることを特定するための特定情報を正規ユーザに通知するための通知手段と、第2の装置に入力された入力データに関連する入力データ関連情報を第2の装置から取得するための第2の取得手段と、入力データ関連情報と特定情報とを照合して、入力データが特定情報に関連するデータであるか否かを判断するための判断手段と、入力データ関連情報が特定情報に関連するデータであると判断された場合に、第1の装置に認証成功情報を送信するための送信手段とを含む。
【0016】
第1の発明によると、認証装置は、ユーザ認証用データとユーザ情報とが認証条件を満足すると、ユーザが第1の装置(たとえば、ICカード、ICチップ)の正規ユーザであると認証し、正規ユーザのみに特定情報を通知する。第2の装置(たとえば、PC、携帯電話)のユーザにより第2の装置に入力された入力データに関連する入力データ関連情報を第2の装置から取得し、正規ユーザのみに通知した特定情報とを照合して、入力データが特定情報に関連するデータであるか否かを判断する。この判断により、第2の装置のユーザが第2の装置に入力した入力データが、第1の装置の正規ユーザのみに通知される特定情報であったのか否かを判断できる。そのため、第2の装置のユーザが第1の装置の正規ユーザであることを保証できる。また、ユーザが第1の装置の正規ユーザであると認証装置が認証した場合、第2の装置に認証結果を送信するのではなく、ユーザに特定情報を通知する。ユーザが第2の装置に特定情報を入力することで、第2の装置のユーザが第1の装置の正規ユーザであることが認証装置において判断される。このため、第2の装置に認証手段を備える必要がなく、ユーザ情報や認証結果を認証装置から受信するための独自の待ち受け状態処理を備える必要もない。さらに、認証装置は、入力データが特定情報に関連するデータであると判断した場合にのみ第1の装置に認証成功情報を送信する。これにより、第2の装置のユーザが第1の装置の正規ユーザである場合に限り、第2の装置のユーザは、第1の装置に記憶された情報を利用することができる。その結果、生体情報や認証結果を受信するための独自の待ち受け状態処理を備えていない端末を用いて、認証装置でユーザ認証に成功したユーザと端末ユーザが同一人であることを保証し、ICカードを安全に利用させることができる認証装置を提供することができる。
【0017】
第2の発明に係る認証装置においては、第1の発明の構成に加えて、特定情報は、認証の結果に関連する情報を含む。
【0018】
第2の発明によると、特定情報は、認証の結果(たとえば本人である確率の高さを示す割合や認証時の環境)に関連した情報を含む。これにより、特定情報は、ユーザ自身が予測できる情報となり、認証時の環境などにより異なった情報となる。そのため、特定情報を、ユーザが予測しやすい特定情報とする一方、毎回異なる情報にして通知することが容易にできる。
【0019】
第3の発明に係る認証装置においては、第1または第2の発明の構成に加えて、入力データ関連情報は、認証成功情報を、入力データで符号化したデータであり、判断手段は、特定情報で入力データ関連情報を復号化し、認証成功情報として正しく復号できるか否かを判断するための手段を含む。
【0020】
第3の発明によると、認証装置は、ユーザが第1の装置の正規ユーザである場合、第2の装置から受信する入力データ関連情報を特定情報で復号化することにより、第1の装置を利用するための認証成功情報を取得することができる。これにより、認証装置が第1の装置を利用するための認証成功情報を予め保持していなくても第1の装置に対して認証成功情報を送信できる。そのため、不特定多数のユーザが多様な第1の装置を使用する場合であっても、それぞれに要求される認証成功情報をすべて記憶しておく必要はなく、認証装置を不特定多数のユーザが利用する公共の場などの環境で利用することができる。さらに、特定情報と正しい認証成功情報との両方に関連したデータを第2の装置から認証装置が受信した場合のみ第1の装置を利用できる。そのため、二重の利用制限が課せられることとなり、セキュリティレベルをより高くすることができる。また、正規ユーザであることを保証するために必要な特定情報と、第1の装置を利用するために必要な認証成功情報を第2の装置から認証装置へ同時に送信する。これにより、認証装置と第1の装置との1往復のみの通信により、第1の装置を利用できる。そのため、第2の装置のソフトウェア実装が容易である。
【0021】
第4の発明に係る認証装置は、第1〜第3の発明のいずれかの発明の構成に加えて、認証成功情報の送信に対する第1の装置からの応答情報を受信し、第1の装置に記憶された情報を利用できる状態であるか否かを確認するための確認手段と、確認の結果を特定情報と対応させて管理するための管理手段とをさらに含む。
【0022】
第4の発明によると、確認手段は、第1の装置に記憶された情報を利用できる状態であるか否かを確認する。管理手段は、確認の結果を特定情報と対応させて管理する。これにより、第1の装置を利用できる特定情報とそれ以外の特定情報とを別けて管理することができる。
【0023】
第5の発明に係る認証装置は、第4の発明の構成に加えて、第1の装置を検出するための検出手段をさらに含み、管理手段は、検出手段が第1の装置が検出しなくなった場合に、特定情報を無効にするための手段を含む。
【0024】
第5の発明によると、管理手段は、検出手段が第1の装置が検出しなくなった場合に、たとえば、第1の装置が物理的に移動して認証装置から利用できない範囲に離れたり、電源供給が停止されたり、通信路が切断されたり、意図的な利用停止操作が行なわれたりなどの要因で、第1の装置と認証装置とが通信できない状態になった場合、特定情報を無効にする。これにより、ユーザが意図的に特定情報を無効化できる。そのため、よりセキュリティレベルを高めることができるとともに、特定情報の管理に必要な記憶容量を低減できる。
【0025】
第6の発明に係る認証装置においては、第4または第5の発明の構成に加えて、管理手段は、確認手段が、応答情報を受信する回数が予め設定された回数を超えても、第1の装置に記憶された情報を利用できる状態であることを確認しない場合、特定情報を無効にするための手段を含む。
【0026】
第6の発明によると、管理手段は、第1の装置からの応答受信を予め設定された回数を超えても、第1の装置を利用できない場合に、特定情報を無効にする。これにより、第2の装置のユーザが第1の装置の正規ユーザでない可能性の高い特定情報を無効化できる。そのため、よりセキュリティレベルを高めることができるとともに、特定情報の管理に必要な記憶容量を低減できる。
【0027】
第7の発明に係る認証装置においては、第4〜第6のいずれかの発明の構成に加えて、管理手段は、確認手段が、予め設定された時間を超えても、第1の装置に記憶された情報を利用できる状態であることを確認しない場合、特定情報を無効にするための手段を含む。
【0028】
第7の発明によると、管理手段は、予め設定された時間を超えても、第1の装置を利用できない場合に、特定情報を無効にする。これにより、第2の装置のユーザが第1の装置の正規ユーザでない可能性の高い特定情報を無効化できる。そのため、よりセキュリティレベルを高めることができるとともに、特定情報の管理に必要な記憶容量を低減できる。
【0029】
第8の発明に係る認証装置においては、第4〜第7の発明のいずれかの発明の構成に加えて、管理手段は、確認手段が、第1の装置に記憶された情報を利用できる状態であることを確認した場合、予め設定された時間以内であれば、特定情報を無効にしないための手段を含む。
【0030】
第8の発明によると、管理手段は、第1の装置に記憶された情報を利用できる状態となっても、予め設定された時間以内であれば、特定情報を無効にしない。これにより、第2の装置を再起動したり、再接続したり、認証装置との通信が途切れて再接続したりした場合に、その都度ユーザ認証を行なう必要がない。また、同じユーザが追加で第2の装置とは異なる別の装置から第1の装置を利用する場合に、予め定められた時間内であれば同じ特定情報を使用できる。これにより、それぞれの装置毎にユーザ認証を行なう必要がないようにすることができ、利便性を向上することができる。
【0031】
第9の発明に係る認証装置においては、第1〜第8の発明のいずれかの発明の構成に加えて、送信手段は、ユーザ認証用データのうち、認証に成功したユーザ認証用データを識別する情報を第1の装置に送信する手段を含む。
【0032】
第9の発明によると、ユーザ認証用データのうち、認証に成功したユーザ認証用データを識別する情報を第1の装置に送信する。これにより、複数のユーザ認証方式(たとえば、指紋認証、虹彩認証)に関するユーザ認証用データを備える第1の装置であっても、どの認証方式でユーザ認証が成功したのかが通知される。そのため、第1の装置は、認証方式毎に異なる認証成功情報の検証を行なうことができる。これにより、第1の装置では、認証方式毎に異なる利用権限の管理を行なうことができる。また、複数のユーザに対するユーザ認証用データを備える第1の装置であっても、どのユーザが認証に成功したのか通知されるため、複数の異なるユーザが同じ認証装置を用いて第1の装置に対するユーザ認証を行っても、ユーザ毎の利用権限に応じた範囲で第1の装置を利用することができる。
【0033】
第10の発明に係る認証方法は、第1の装置に記憶された情報を第2の装置において利用するために、第1の装置と第2の装置との間に設けられる装置における認証方法であって、第1の装置は、第2の装置のユーザが第1の装置の正規ユーザであるという認証に成功したことを表わす認証成功情報を受信した場合に、第2の装置により第1の装置に記憶された情報を利用することができ、第2の装置は、第2の装置に入力された入力データが認証装置で判断された結果に基づいて、認証装置を介して第1の装置に記憶された情報を利用することができ、認証方法は、ユーザ認証用データを第1の装置から取得する第1の取得ステップと、ユーザがユーザ情報を入力する入力ステップと、ユーザ認証用データとユーザ情報とが認証条件を満足すると、ユーザが第1の装置の正規ユーザであると認証する認証ステップと、正規ユーザであることを特定するための特定情報を正規ユーザに通知する通知ステップと、第2の装置に入力された入力データに関連する入力データ関連情報を第2の装置から取得する第2の取得ステップと、入力データ関連情報と特定情報とを照合して、入力データが特定情報に関連するデータであるか否かを判断する判断ステップと、入力データ関連情報が特定情報に関連するデータであると判断された場合に、第1の装置に認証成功情報を送信する送信ステップとを含む。
【0034】
第10の発明によると、認証方法は、ユーザ認証用データとユーザ情報とが認証条件を満足すると、ユーザが第1の装置の正規ユーザであると認証し、正規ユーザのみに特定情報を通知する。第2の装置のユーザにより第2の装置に入力された入力データに関連する入力データ関連情報を第2の装置から取得し、正規ユーザのみに通知した特定情報とを照合して、入力データが特定情報に関連するデータであるか否かを判断する。この判断により、第2の装置のユーザが第2の装置に入力した入力データが、第1の装置の正規ユーザのみに通知される特定情報であったのか否かを判断できる。そのため、第2の装置のユーザが第1の装置の正規ユーザであることを保証できる。また、ユーザが第1の装置の正規ユーザであると認証装置が認証した場合、第2の装置に認証結果を送信するのではなく、ユーザに特定情報を通知する。ユーザが第2の装置に特定情報を入力することで、第2の装置のユーザが第1の装置の正規ユーザであることが認証装置において判断される。このため、第2の装置に認証ステップを備える必要がなく、また、認証情報を認証装置から受信するための独自の待ち受け状態処理を備える必要もない。
【0035】
さらに、認証方法は、入力データが特定情報に関連するデータであると判断した場合にのみ第1の装置に認証成功情報を送信する。これにより、第2の装置のユーザが第1の装置の正規ユーザである場合に、第2の装置のユーザは、第1の装置に記憶された情報を利用することができる。
【0036】
その結果、生体情報や認証結果を受信するための独自の待ち受け状態処理を備えていない端末を用いて、認証装置でユーザ認証に成功したユーザと端末ユーザが同一人であることを保証し、ICカードを安全に利用させることができる装置の認証方法を提供することができる。
【0037】
第11の発明に係る認証プログラムは、第10の発明の認証方法を実現するプログラムである。これにより、生体情報や認証結果を受信するための独自の待ち受け状態処理を備えていない端末を用いても、認証装置でユーザ認証に成功したユーザと端末ユーザが同一人であることを保証し、ICカードを安全に利用させることができる装置の認証方法を実現させることができるプログラムを提供することができる。また、汎用のコンピュータに、本発明の認証方法を実行させることができる。
【0038】
第12の発明に係る記録媒体は、第11の発明の認証プログラムを記録したコンピュータ読取可能な記録媒体である。これにより、生体情報や認証結果を受信するための独自の待ち受け状態処理を備えていない端末を用いても、認証装置でユーザ認証に成功したユーザと端末ユーザが同一人であることを保証し、ICカードを安全に利用させることができる装置の認証方法を実現させることができるプログラムを記録したコンピュータ読取可能な記録媒体を提供することができる。また、記録媒体から汎用のコンピュータに、認証プログラムをインストールすることによって、本発明の認証方法を実行させることができる。
【発明を実施するための最良の形態】
【0039】
以下、図面を参照しつつ、本発明の実施の形態について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。
【0040】
<第1の実施の形態>
図1を参照して、本実施の形態に係るICカード100、ICカードを利用する端末300および認証装置200のハードウェア構成について説明する。
【0041】
ICカード100は、通信部110と、CPU(Central Processing Unit)120と、記憶部130とから構成される。なお、ICカード100は、セキュリティデバイスの一例であって、外部から物理的および電気的に解析されないような耐タンパ性を備えていることが望ましい。また本発明では必ずしも認証装置と分離している必要はなく、たとえば認証装置200や端末300の筐体の中にICチップとして組込まれていてもよい。ただし認証装置200や端末300に組込む場合は、ICカードを検出していない状態と同様な効果を実現するために、外部からのユーザ操作により、電気的に利用を制御できる機能を持つことが望ましい。たとえば、内蔵ICチップ専用の電源スイッチを設ける方法などがある。
【0042】
通信部110は、認証装置200のICカード通信部270との間でデータを交換する通信機能を持った通信モジュールである。有線や端子による接触型通信と、無線による非接触型通信とのどちらでもよい。通信機能を持った通信ソフトウェアであってもよい。なお、国際的に標準化された通信方式としては、ISO/IEC7816やISO/IEC14443などがある。
【0043】
CPU120は、16ビットや32ビットなどの比較的小規模なCPUであり、ICカード内部のデータに関するアクセスコントロールや暗号化演算を実行することができる。つまり、CPU120によりアクセスコントロール状態を満たされた場合に限り、そのユーザの権限に応じて記憶部130に記憶されたファイルへのアクセスや記憶されたアプリケーションの実行を行なうことができる。暗号化演算の高速化のために、CPU120とは別に専用の演算チップを搭載してもよい。
【0044】
記憶部130は、ユーザ認証用の複数のデータを格納することができる十分な容量を持つ不揮発性の半導体メモリ(たとえば、1MBのフラッシュメモリ)である。また、CPU120の作業用領域として、読書き速度が高速なRAMを備える。記憶部130には、ユーザ認証用データと認証成功情報を検証するためのデータとが記憶されている。なお、認証成功情報とは、ICカード100に対して外部でユーザ認証が成功したことを通知する情報である。認証成功情報が通知されることよりアクセルコントロール状態が変更され、記憶部130に記憶されたファイルへのアクセスや記憶されたアプリケーションの実行を行なうことができる。
【0045】
認証装置200は、通信部210と、CPU220と、記憶部230と、電源部240と、特定情報通知部250と、ユーザ情報入力部260と、ICカード通信部270とから構成される。
【0046】
通信部210は、端末300の通信部310との間でデータ通信を行なう通信モジュールである。通信方式は、認証装置200の利用方法や利用場所に応じて有線でも無線でもよい。有線なら100Base-TなどのLAN、RS−232CまたはUSB(Universal Serial Bus)などがあり、無線なら無線LAN、UWB(Ultra Wide Band)、BluetoothまたはIrDAなどがある。いずれの通信方式においても、端末300以外の装置とも通信される構成であってもよい。たとえば、端末300であるノートPCとデスクトップPCとが、1台の認証装置200に接続される構成でもよい。
【0047】
通信部210と通信部310との間の通信プロトコルXと、ICカード通信部270と通信部110との間の通信プロトコルYとが異なる場合、端末300とICカード100との間のデータを送受信するため、CPU220は伝達する内容が等価になるように双方向変換する。たとえば、通信プロトコルXがTCP/IPであり、通信プロトコルYがISO/IEC7816である場合、端末300からIPパケットのデータ部にISO/IEC7816に準拠したAPDU(Application Protocol Data Unit)をそのまま包んだパケットを受信し、取出したAPDUをICカード100に送信する。
【0048】
CPU220は、認証装置200の各部を制御するための演算素子である。記憶部230は、ユーザ認証に成功したユーザを特定するための特定情報などを記憶している。なお、特定情報とは、認証装置200に認証に必要な情報(たとえば生体情報)を入力したユーザが、ICカード100の正規ユーザであると認証された場合に、情報を入力したユーザに通知される情報である。
【0049】
電源部240は、認証装置200に必要な電気を外部から取得し、各部に供給する。特定情報通知部250は、特定情報を紙へ印字してユーザに通知する印字モジュールである。なお、視覚的に通知する他の例として液晶やLEDなどの表示モジュール、聴覚的に通知する例としてスピーカや、触覚的に通知する例として振動モジュールであってもよい。別の実現方法として、可搬性のある半導体メモリであるRFID(Radio Frequency Identification)やUSBメモリなどに対する書込みモジュールであってもよい。実施上配慮すべき点は、ユーザ認証を行ったユーザ以外の他人に、できるだけ特定情報が漏洩しないように考慮することである。
【0050】
ユーザ情報入力部260は、ユーザ認証を行なうために、ユーザの生体情報などのユーザ情報を取得するモジュールである。たとえば指紋認証の場合、エリア型のセンサやライン型のセンサなどさまざまな形状のセンサがあり、センシング方式も静電容量式や光学式などがある。ユーザ情報入力部260は、認証装置200に複数備えられていてもよい。
【0051】
ICカード通信部270は、ICカード100の通信部110との間でデータを交換する通信モジュールである。ICカード100の代わりにICチップを認証装置200に内蔵する場合は、ICチップ通信インタフェースとなる。またICカードリーダライタ装置のように、認証装置200の外部機器として接続され、必要なときのみ認証装置200に接続する場合もある。必要なときのみ認証装置200に接続する場合のICカードリーダライタと認証装置200との接続方式は、RS−232CやUSB、PCMCIA(Personal Computer Memory Card International Association)カードなどがある。
【0052】
端末300は、通信部310と、CPU320と、記憶部330と、電源部340と、特定情報入力部350とから構成される。端末300は、PCやPDA、携帯電話、カーナビゲーション装置、テレビ、ホームサーバ、ホームゲートウェイといった民生装置に限らず、ネットワークに接続されるほとんどの装置である。たとえば、マルチファンクションプリンタや、自動改札機、自動販売機なども含まれる。
【0053】
CPU320は、端末300の各部を制御するための演算素子である。記憶部330は、ICカード100を利用するために必要な認証成功情報などを記憶している半導体メモリである。電源部340は、端末300に必要な電気を外部から取得し、各部に供給する。特定情報入力部350は、端末300のユーザが、認証装置200より通知された特定情報を入力するための入力モジュールである。表示部360は、特定情報を表示するための液晶画面であり、必ずしも必須ではない。
【0054】
図2を参照して、特定情報のテーブルの構成について説明する。なお、特定情報とは、認証装置200のユーザがICカード100の正規ユーザであると認証装置200が判断した場合に、認証装置200のユーザに通知する情報である。通知を受けた認証装置200のユーザが、特定情報を端末300に入力することで、認証装置200のユーザがICカード100の正規ユーザと同一人であることが保証される。
【0055】
照合スコア情報C10は、ユーザが認証装置200でICカード100の正規ユーザであると認証された場合に出力される値で、単位がパーセントである2桁の数字である。たとえば、ユーザの生体情報が認証に使用される場合、特徴点や特徴量の類似度や一致度によって本人性を数値化し、100パーセントに近いほど本人である確率が高いことを表わす。本人性を数値化した照合スコア情報C10の値は、たとえ正規ユーザであっても、ユーザ情報入力部260が生体情報を読取る環境が毎回異なるため、同じ照合スコア情報にならないことが多い。たとえば指紋認証の場合は、指紋の状態(たとえば汚れや汗)や指紋を読取る操作(たとえば置く位置や角度の違い)などが、照合スコア情報C10の値が毎回異なる要因となる。よって照合スコア情報C10の値を特定情報に用いると、ユーザにわかりやすい数値でかつ比較的容易に特定情報を乱数化することができる。なお、ユーザ認証用データとユーザ情報が、完全に一致した場合、照合スコア情報C10が100パーセントとなる可能性もあるが、これはユーザ認証用データが不正に複製されて使用された可能性が高いため、あえてユーザ認証成功としていないことで、2桁でも十分である。また、複数の認証方式(たとえば指紋認証方式と虹彩認証方式)によりユーザ認証が実施された場合、認証結果は最終的には一つの照合スコアへ統合して判断されるため、照合スコア情報C10ではその統合された照合スコアを管理すればよい。
【0056】
乱数情報C20は、特定情報を生成するたびに異なる数字である。図2に示す例では2桁としたが桁数は2桁以外でもよい。乱数情報C20は、照合スコア情報C10が、70〜80パーセント以上であることが予測されるため、予測困難性を持たせる効果と、万一通知する特定情報が現在有効な他の特定情報と重複した場合に、新たに異なる特定情報を生成し直すことができるような効果とを目的として付加される。なお、特定情報は最初から乱数情報C20のみで構成されてもよい。
【0057】
認証環境情報C30は、ユーザ認証を行ったユーザなら知っている認証実行時の環境に関する情報を予め決められたルールで数値化したものである。たとえば指紋認証や指静脈認証の場合、どの指を用いたのかが認証環境情報C30に該当し、用いた指を指番号として特定情報に含める。他に、虹彩認証ではどちらの目を用いたか、顔認証では表情や装飾品や髪型、音声認証では発声した音節数やイントネーションなどがある。また認証成功までの入力繰返し回数や、複数実行した認証方式の組合せ順序であってもよい。
【0058】
認証環境情報C30は、ユーザに対して特定情報を通知する際に、特定情報に含めて発行しなくてもユーザは端末300へ入力することが可能である。このため、特定情報の長さを増やすことなく、ユーザの本人性を高める効果がある。つまり、たとえば印刷された特定情報を落として他人に拾われたり表示されたままの特定情報を他人に見られたりすることで特定情報が他人に漏洩したりしても、認証環境情報C30が含まれていなければ、他人は容易に悪用することができない。
【0059】
図3を参照して、認証装置200が記憶部230に管理する特定情報管理リストのテーブルの構成について説明する。特定情報管理リストとは、ユーザ認証により生成される特定情報を記憶部230で記憶して管理するリストである。C10〜C30までは、図2を参照して説明した特定情報そのものである。したがって、それらについての詳細な説明は繰り返さない。
【0060】
テンプレートID情報(C40)は、認証に成功したテンプレートIDである。なお、テンプレートIDとは、1枚のICカード100に複数の認証方式や複数のユーザに対するユーザ認証用データが格納されることを想定し、ICカード100内でこれらを区別して特定できるように、ユーザ認証用データに関連付けられている情報である。これによりICカード100から複数のユーザ認証用データを読出してユーザ認証を行った場合に、ユーザ認証に成功したときに照合に使われたテンプレートに対するテンプレートID情報(C40)をICカード100に送信することで、ICカード100内で異なる認証方式や異なるユーザ毎に細かくアクセスコントロール状態を設定することができる。なお、1つのファイルにバイオメトリクステンプレート(生体情報にヘッダ情報を付加したデータ)が1つである場合は、テンプレートIDの変わりにファイルIDを用いてもよい。複数の認証方式でユーザ認証を実施した場合はそれぞれ異なるテンプレートIDが通知されるため、テンプレートID情報(C40)の項目に列挙する。
【0061】
リトライ回数情報C50は、ICカード100に対する認証成功情報の送信に対する応答情報の内容が、検証失敗であった場合に、初期値0から失敗毎に1増加させる項目である。リトライ回数情報C50は認証成功情報が予め定められたリトライ回数内で正しく照合されない場合に、特定情報を無効化するために用いる情報である。
【0062】
管理状態情報C60は、複数通知された特定情報の管理状態を示す項目である。具体的には特定情報を通知してから、ICカード100に認証成功情報を送信するまでを「通知前」、認証成功情報をICカード100に送信し、ICカードからの検証成功の応答を受けるまでを「通知応答待ち」、検証成功の応答を受けた後からその特定情報が無効化されるまでを「検証完了」とする。
【0063】
なお「通知応答待ち」状態は、ICカードの通信プロトコルの仕様により、特定情報管理リストには1つ以下しか存在しない。また「検証完了」状態の特定情報を無効化されるまで残す理由は、端末のアプリケーションの再起動時や同じユーザが複数の端末から同じICカードを利用する場合に、毎回ユーザ認証を行なう手間を省くことができるためである。
【0064】
無効化された特定情報は「無効」とするか、特定情報管理リストから削除してしまってもよい。図3に示す状態は、下から4つ分の特定情報が「無効」状態のまま削除されずに特定情報管理リストに保持されている。
【0065】
発行日時情報C70は、特定情報が発行された日時を年月日時分秒の各数字を続けた形式の時間情報である。特定情報が特定情報管理リストに登録された日時であってもよい。発行日時情報C70は特定情報の新旧の比較や、予め決められた期限を越えた場合の無効化処理に用いる。
【0066】
図4を参照して、認証装置200の制御ブロックおよびデータの流れについて、ICカード100、端末300およびユーザ400の処理内容およびデータの流れとともに説明する。
【0067】
ICカード100の記憶部130に記憶されているユーザ認証用データP10は、ユーザの生体情報である。たとえば指紋や指静脈、虹彩、音声(声紋)、顔などの生体認証技術が実用化されており、複数の生体認証に対応した生体情報を格納することもできる。一般的に生体情報は、ユーザ固有の特徴点や特徴量を抽出した後の圧縮されたデータである。またこれらのデータは、認証を効率よく行ったり、複数のユーザや複数の認証アルゴリズムに対するデータを管理しやすくしたりするために格納される生体情報に関してヘッダ情報を付加したバイオメトリクステンプレートとして形成される。国際的に規定されているバイオメトリクステンプレート形式としてCBEFF(Common Biometric Exchange File Format)がある。なお、ユーザ認証用データP10は必ずしも生体情報である必要はなく、PIN(Personal Identification Number)であってもよい。
【0068】
また、図4には記載しないが、認証装置200が信用できる装置であることを認証した上でのみ、ICカード100からユーザ認証用データP10を読み出すことができるほうが望ましく、さらにはユーザ認証用データP10は暗号化されて読み出されることが望ましい。
【0069】
認証装置200のユーザ認証部M10は、ICカード100からユーザ認証用データP10を取得し、ユーザ情報入力部260からユーザ400のユーザ情報P12を取得する。ユーザ情報入力部260から入力されたユーザ情報P12が生体情報である場合は、予めICカード100に記録されたユーザ認証用データP10を生成したアルゴリズムと同じアルゴリズムを用いて、CPU220が特徴点や特徴量を抽出し、ユーザ認証用データP10との照合を行なう。照合したユーザ認証結果情報P14は、特定情報通知部M20に送信される。ユーザ認証結果情報P14には、認証が成功だと判断された一致率度合いである照合スコア情報C10や、認証に用いられた状況に関連する情報(たとえば右手人差し指の指紋情報、左目の虹彩情報など)などを示す認証環境情報C30、照合されたテンプレートID情報(C40)が含まれる。また、ユーザ認証結果情報P14のうち、テンプレートID(P13)のみが、ICカード100へも送信される。
【0070】
特定情報通知部M20は、ユーザ認証部M10から受信したユーザ認証結果情報P14をもとに特定情報P16を生成し、特定情報通知部250からユーザ400に対して特定情報P16を通知する。
【0071】
ユーザ400は、通知された特定情報P16に基づいて、入力データP18を端末300の特定情報入力部350に入力する。ICカードへの認証成功情報を合わせて入力するようにしてもよい。
【0072】
端末300のCPU320は、入力データP18で認証成功情報を符号化した入力データ関連情報P20を入力データ関連情報生成部T10で生成し、通信部310から認証装置200の通信部210へ送信する。
【0073】
認証装置200は、入力データ関連情報P20を受信すると、入力データ関連情報判断部M30が、特定情報通知部M20からその時点で有効なすべての特定情報である全有効特定情報P22を取得し、その特定情報P22で入力データ関連情報P20を復号化する。復号化した結果が、ICカード100へ送信することが許されるフォーマットの認証成功情報であった場合に、ICカード通信部270からICカード100の通信部110へ復号化済みの認証成功情報P24を送信する。
【0074】
ICカード100では、認証成功情報検証部D10が、まずユーザ認証部M10から、ユーザ認証結果のテンプレートID(P13)を取得し、ICカード内に予め記憶された認証成功情報検証用データP26から、対応する認証成功情報検証用データP26を取得(D10(1))し、認証成功情報P24の検証を行い、検証結果を応答情報P28として認証装置200へ返信(D10(2))する(図10参照)。
【0075】
認証成功情報検証用データP26は、ICカード100の外部でユーザ認証用データP10を用いてユーザ認証が成功した場合に、ICカード100のアクセスコントロール状態を変えるためにICカード100に通知される認証成功情報P24を検証するためのデータである。テンプレートID情報(C40)に関連付けられて管理されている。つまり、多数ある認証成功情報検証用データP26のうちのテンプレートID(P13)に対応したデータを特定することができる。
【0076】
応答確認部M40は、応答情報P28を受信し、端末300へ転送する。応答情報P28を転送する際に、ICカード100が利用できる状態か否かを判断し、特定情報通知部M20へ判断通知情報P30を送信する。なお、入力データ関連情報判断部M30が、1つの認証成功情報を送信してから、対応する応答確認部M40が応答情報P28を受信するまでの間は、他の認証成功情報やそれ以外のICカードに対するコマンドは送信しないように制御する必要がある。これはICカード100が半二重のコマンド・レスポンス通信プロトコルであることによる。
【0077】
検出部M50は、たとえば、ICカード100が物理的に移動して認証装置200から利用できない範囲に離れたり、ICカード100の電源供給が停止されたり、ICカード通信部270とICカードの通信部110との間の通信路が切断されたり、ユーザによる意図的なICカード100の利用停止操作が行なわれたりなどの要因で、検出部M50がICカード100を検出しなくなった場合に、ICカード未検出情報P32を特定情報通知部M20へ送信し、特定情報通知部M20で管理している特定情報を全て無効化する。
【0078】
ここで、端末300における認証成功情報の符号化方法および端末300にて符号化された入力データ関連情報P20の認証装置200における復号化方法についての一例を説明する。
【0079】
認証成功情報は、ICカード100に対して外部でユーザ認証が成功したことを通知することが目的であり、PIN認証で代用することができる。たとえばICカード内で、あるテンプレートID情報(C40)を持つユーザ認証用データP10に対する認証成功情報は、データが0x01020304であるPIN認証と関連付けられていることをユーザ400は知っていることとする。また認証装置200で通知された特定情報P16が図2に示す例であるとすると、ユーザ400は端末300に特定情報として「86,25,2」と入力する。さらに認証成功情報としてのPINを「01020304」と入力する。入力されたPINをICカードに送信するときのAPDUは、ISO/IEC7816のVerifyコマンドの規定に基づき、たとえば「002000000401020304」というバイト列になる。
【0080】
なおPINは手間を減らすために予め端末300に設定されていてもよい。端末300では入力された特定情報P16を複数桁の数字「86252」とみなして暗号鍵として扱い、認証成功情報を符合化する。暗号アルゴリズムはDESやAESなどがあるが、セキュリティ要件によっては実装の容易さを考慮して単純に排他的論理和(XOR)をとったものであってもよい。
【0081】
認証装置200では、符合化された認証成功情報を、同じ特定情報P16と同じ暗号アルゴリズムを用いて復号化することで上記APDUを取得することができる。暗号化した端末300と復号化した認証装置200が同じ暗号鍵である特定情報P16を用いていれば、APDUのフォーマットがISO/IEC7816のVerifyコマンドの規定を満たすフォーマットに復元できる。これにより、正しい特定情報を持つユーザ400が端末300を操作していることを保証できる。
【0082】
ここまでの実施例では、認証成功情報の内容自身は認証装置200が関知しないことを想定したが、認証装置200がICカード100と同様に認証成功情報を各テンプレートID情報(C40)と関連付けて記憶していてもよい。認証装置200が認証成功情報を記憶する場合は、端末300で符号化した認証成功情報は、認証装置200で復号するのではなく、同様の符号化を行って一致するかどうかを判定することで特定情報P16を検証することができるため、端末300および認証装置200ともに復号化処理のための部位を備える必要がなくなる。符号化の例としては、特定情報P16と認証成功情報との連結したデータをSHA−1(Secure Hash Algorithm 1)のような一方向関数で符号化する方法がある。
【0083】
このように、認証装置200は、ユーザ400に対して特定情報P16を通知し、端末300からICカード100へ送信される入力データ関連情報P20をその特定情報P16を用いて判断する。特定情報P16のユーザへの通知と、ユーザにより入力される入力データにより、認証装置200とユーザ400と端末300を結びつけ、さらに同じ特定情報P16を端末からICカードへの認証成功情報に関連付けることで、ユーザ400からICカード100までの信頼連鎖を非常にシンプルな通信プロトコルで実現している特長がある。
【0084】
図5を参照して、認証装置200で実行されるプログラムの制御構造について説明する。このプログラムは、ユーザ認証部M10でユーザ認証を行なう場合に実行される。
【0085】
ステップ(以下、ステップをSと略す)102にて、CPU220は、ユーザ認証が成功したか否かを判断する。この判断は、ICカード100から取得したユーザ認証用データP10と、ユーザ情報入力部260から入力されたユーザ情報P12とが照合したか否かにより行なわれる。ユーザ認証が成功したと判断されると(S102にてYES)、処理はS104に移される。もしそうでないと(S102にてNO)、処理はS106に移される。
【0086】
S104にて、CPU220は、ICカード100から取得したユーザ認証用データP10のうちの認証に成功したテンプレートID(P13)を、ICカード100に、通知するようICカード通信部270に指示する。
【0087】
S106にて、CPU220は、サービス提供を拒否し、処理を終了させる。
図6を参照して、認証装置200で実行されるプログラムの制御構造について説明する。このプログラムは、特定情報通知部M20にて特定情報P16を通知する場合に実行される。
【0088】
S202にて、CPU220は、ユーザ認証結果情報P14を取得するよう特定情報通知部M20に指示する。
【0089】
S204にて、CPU220は、記憶部230に記憶している特定情報管理リストから有効なすべての特定情報を取得するよう指示する。ここで有効な特定情報とは、管理状態情報C60が「通知前」または「通知応答待ち」または「検証完了」となっている特定情報である。
【0090】
S206にて、CPU220は、S202で取得したユーザ認証結果情報P14から、照合スコア情報C10を取出し、生成した乱数情報C20を連結して特定情報P16を生成する。
【0091】
S208にて、CPU220は、生成した特定情報P16がS204で取得した有効なすべての特定情報と重複するか否かを判断する。重複すると判断されると(S208にてYES)、処理はS206に戻される。もしそうでないと(S208にてNO)、処理はS210に移される。
【0092】
S210にて、CPU220は、同じテンプレートID(P13)が登録済みか否かを判断する。この判断は、S204で取得した有効なすべての特定情報のテンプレートID情報(C40)のうち、ユーザ認証結果情報P14のテンプレートID(P13)と同じものがあるか否かで行なわれる。同じテンプレートID情報(C40)が登録済みと判断されると(S210にてYES)、処理はSA0に移される。もしそうでないと(S210にてNO)、処理はS212に移される。
【0093】
SA0にて、CPU220は、古い特定情報のテンプレートIDを指定して無効化処理を行なう。詳細は後述する。
【0094】
S212にて、CPU220は、特定情報通知部250に特定情報P16を通知するよう指示する。
【0095】
S214にて、CPU220は、特定情報管理リストのC10からC70までの各項目に、S206で生成した特定情報P16に関連する各項目を新たに追加し、リトライ回数情報C50を0とし、管理状態情報C60を「通知前」に設定して記憶する。
【0096】
図7を参照して、認証装置200で実行されるプログラムの制御構造について説明する。このプログラムは、入力データ関連情報判断部M30にて、入力データP18に関連するデータが特定情報P16に関連するデータであるか否かを判断する場合に実行される。
【0097】
S302にて、CPU220は、端末300から符号化された認証完了情報である入力データ関連情報P20を受信するよう通信部210に指示する。
【0098】
SA0にて、CPU220は、特定情報の管理状態情報C60を最新の状況にするために、特定情報の無効化処理を行なう。詳細は後述する。
【0099】
S304にて、CPU220は、すべての特定情報を記憶部230から取得する。S306にて、CPU220は、有効な特定情報があるか否かを判断する。この判断は、管理状態情報C60が「通知前」、「通知応答待ち」または「検証完了」となっている特定情報があるか否かにより行なわれる。有効な特定情報があると判断されると(S306にてYES)、処理はS308に移される。もしそうでないと(S306にてNO)、処理はS318に移される。
【0100】
S308にて、CPU220は、入力データP18で認証成功情報を符号化した入力データ関連情報P20を、まず1つの特定情報P16で復号化するよう指示する。
【0101】
S310にて、CPU220は、復号化された認証成功情報が正しいフォーマットか否かを判断する。この判断は、たとえばISO/IEC7816に規定されるAPDUフォーマットの各フィールドの値の長さ、または各フィールドの値そのものが正しいか否かで行なわれる。正しいフォーマットと判断されると(S310にてYES)、処理はS312に移される。もしそうでないと(S310にてNO)、処理はS316に移される。
【0102】
S312にて、CPU220は、復号に成功した特定情報P16の管理状態情報C60を「通知応答待ち」に変更して、特定情報管理リストに記憶する。
【0103】
S314にて、CPU220は、ICカード100に、復号化した認証成功情報P24を送信する。
【0104】
S316にて、CPU220は、有効な特定情報が他にあるか否かを判断する。他にあると判断されると(S316にてYES)、処理はS308に戻される。もしそうでないと(S316にてNO)、処理はS318に移される。
【0105】
S318にて、CPU220は、端末300に特定情報の判断に失敗した旨の通知を送信する。
【0106】
図8を参照して、認証装置200で実行されるプログラムの制御構造について説明する。このプログラムは、応答確認部M40にて、応答情報P28を受信した場合に実行される。
【0107】
S402にて、CPU220は、ICカード100から認証成功情報に対する応答情報P28を受信するようICカード通信部270に指示する。
【0108】
S404にて、CPU220は、応答情報P28の内容が、ICカード100を利用できる内容であるか否かを判断する。この判断は、たとえばISO/IEC7816の場合はレスポンスAPDUのSW(Status Word)を確認することで行なわれる。ICカード100を利用できると判断されると(S404にてYES)、処理はS406に移される。もしそうでないと(S404にてNO)、処理はS410に移される。
【0109】
S406にて、CPU220は、特定情報管理リストの管理状態情報C60の「通知応答待ち」となっている特定情報の状態を「検証完了」に変更する。
【0110】
S408にて、CPU220は、応答情報P28を端末300に送信する。S410にて、CPU220は、特定情報管理リストの管理状態情報C60の「通知応答待ち」となっている特定情報のリトライ回数情報C50を1増加する。
【0111】
S412にて、CPU220は、リトライ回数情報C50が予め設定された回数を越えたか否かを判断する。越えたと判断されると(S412にてYES)、処理はSA0に移される。もしそうでないと(S412にてNO)、処理はS414に移される。
【0112】
SA0にて、CPU220は、特定情報の無効化処理を行なう。詳細は後述する。S414にて、CPU220は、特定情報管理リストの管理状態情報C60の「通知応答待ち」となっている特定情報の状態を「通知前」に変更する。
【0113】
S416にて、CPU220は、応答情報P28を端末300へ送信する。S418にて、CPU220は、特定情報が無効化されたか否かを判断する。無効化されたと判断されると(S418にてYES)、処理は終了する。もしそうでないと(S418にてNO)、処理は図7のB(S302)に戻される。
【0114】
図9を参照して、認証装置200で実行されるプログラムの制御構造について説明する。このプログラムは、特定情報を無効化する場合に実行される。
【0115】
SA02にて、CPU220は、有効な特定情報があるか否かを判断する。この判断は、記憶部130に記憶された特定情報管理リストの管理状態情報C60に「無効」以外のものがあるか否かで行なわれる。有効な特定情報があると判断されると(SA02にてYES)、処理はSA04に移される。もしそうでないと(SA02にてNO)、処理は終了する。
【0116】
SA04にて、CPU220は、有効な特定情報の発行日時情報C70を現在日時と比較し、予め定められた時間を越えているか否かをすべての特定情報について判断する。予め定められた時間を越えていると判断されると(SA04にてYES)、処理はSA06に移される。もしそうでないと(SA04にてNO)、処理はSA14に移される。
【0117】
SA06にて、CPU220は、予め定められた時間を越えている特定情報の管理状態情報C60が「検証完了」であるか否かを判断する。「検証完了」であると判断されると(SA06にてYES)、処理はSA08に移される。もしそうでないと(SA06にてNO)、処理はSA10に移される。
【0118】
SA08にて、CPU220は、「検証完了」状態の特定情報が、予め定められた維持時間を越えているか否かを判断する。越えていると判断されると(SA08にてYES)、処理はSA10に移される。もしそうでないと(SA08にてNO)、処理はSA14に移される。
【0119】
SA10にて、CPU220は、該当する特定情報を無効化する。
SA14にて、CPU220は、無効化通知があるか否かを判断する。無効化通知は、検出部M50により、ICカード100が検出できなくなったことを表わすICカード未検出情報P32が送信された場合や、手動の操作でICカード100を使用できないように切り替えられた場合に記憶部230に記憶される。S412にて、リトライ回数が予め設定された回数を越えたと判断された場合(S412にてYES)に、特定情報無効化処理SA0の実行開始時に通知される。無効化通知があると判断されると(SA14にてYES)、処理はSA16に移される。もしそうでないと(SA14にてNO)、処理は終了する。
【0120】
SA16にて、CPU220は、無効化通知のあった特定情報にテンプレートID情報(C40)の指定があるか否かを判断する。指定があると判断されると(SA16にてYES)、処理はSA20に移される。もしそうでないと(SA16にてNO)、処理はSA18に移される。
【0121】
SA18にて、CPU220は、すべての特定情報を無効化する。SA20にて、CPU220は、指定されたテンプレートID情報(C40)の特定情報を無効化する。
【0122】
なお、SA04の予め定められた時間の判定は、絶対的な時間ではなくタイマを用いても良い。また、無効化を行なう場合は、特定情報管理テーブルから特定情報自体を削除してもよい。
【0123】
この方法により、たとえば第1のユーザと第2のユーザが同じICカード100を使用する状況で、第1のユーザの特定情報だけを無効化できるため、第2のユーザの認証処理を妨げることがない。
【0124】
図10を参照して、以上のような構造およびフローチャートに基づく、認証装置200動作について説明する。
【0125】
[ユーザ認証動作]
認証装置200が、ICカード100からのユーザ認証用データP10を受信し、ユーザ400がユーザ情報P12を入力すると、ユーザ認証部M10にてユーザ認証が行なわれる。ユーザ認証部M10にて、ユーザ認証が成功すると(S102にてYES)、ICカード100から取得したユーザ認証用データP10のうちの認証に成功したテンプレートID(P13)が、ICカード100に通知される(S104)。
【0126】
[特定情報通知動作]
特定情報通知部M20にて、ユーザ認証結果情報P14が取得されると(S202)、記憶部230に記憶している特定情報管理リストから有効なすべての特定情報を取得され(S204)、ユーザ認証結果情報P14から、照合スコア情報C10が取出され、生成した乱数情報C20を連結して特定情報P16が生成される(S206)。生成した特定情報P16が有効なすべての特定情報と重複しない場合(S208にてNO)、ユーザ認証結果情報P14のテンプレートID(P13)と同じものがあると(S210にYES)、特定情報の無効化処理が行なわれる(SA0)。特定情報通知部250からユーザに特定情報P16が通知され(S212)、特定情報管理リストのC10からC70までの各項目に、通知した特定情報P16に関連する各項目が新たに追加され、リトライ回数情報C50が0とされ、管理状態情報C60が「通知前」に設定される。
【0127】
[入力データ関連情報判断動作]
端末300の入力データ関連情報生成部T10にて、符号化された認証完了情報である入力データ関連情報P20が認証装置200に受信されると(S302)、入力データ関連情報判断部M30にて、特定情報の無効化処理が行なわれる(SA0)。記憶部230からすべての特定情報が取得され(S304)、有効な特定情報があると(S306にてYES)、入力データP18で認証成功情報を符号化した入力データ関連情報P20が、特定情報P16で復号化される(S308)。復号化された認証成功情報が正しいフォーマットであると(S310にてYES)、復号に成功した特定情報P16の管理状態情報C60が「通知応答待ち」に変更され、特定情報管理リストに記憶される(S312)。ICカード100に、復号化した認証成功情報P24が送信される(S314)。
【0128】
[応答確認動作]
ICカード100の認証成功情報検証部D10から応答情報P28を受信すると(S402)、応答確認部M40にて、応答情報P28がICカード100を利用できる内容でない場合(S404にてNO)、特定情報管理リストの管理状態情報C60の「通知応答待ち」となっている特定情報のリトライ回数情報C50が1増加され(S410)、リトライ回数情報C50が予め設定された回数を越えた場合(S412にてYES)、「通知応答待ち」の特定情報が無効化処理される(SA0)。応答情報P28が端末300へ送信され(S416)、特定情報が無効化された場合(S418にてYES)、動作が終了する。
【0129】
[特定情報無効化動作]
有効な特定情報があると(SA02にてYES)、有効な特定情報の発行日時情報C70と現在日時とが比較され、予め定められた時間を越えている場合で(SA04にてYES)、特定情報の管理状態情報C60が「検証完了」でないか(SA06にてNO)、「検証完了」状態の特定情報が、予め定められた維持時間を越えている場合(SA08にてYES)、該当する特定情報を無効化する(SA10)。無効化通知があり(SA14にてYES)、無効化通知のあった特定情報にテンプレートID情報(C40)の指定があると(SA16にてYES)、指定されたテンプレートID情報(C40)の特定情報が無効化される(SA20)。
【0130】
以上のようにして、本実施の形態に係る認証装置は、ユーザ認証用データとユーザ情報とが認証条件を満足すると、ユーザがICカードの正規ユーザであると認証し、正規ユーザのみに特定情報を通知する。端末のユーザにより端末に入力された入力データに関連する入力データ関連情報を端末から取得し、正規ユーザのみに通知した特定情報とを照合して、入力データが特定情報に関連するデータであるか否かを判断する。この判断により、端末のユーザが端末に入力した入力データが、ICカードの正規ユーザのみに通知される特定情報であったのか否かを判断できる。
【0131】
そのため、端末のユーザがICカードの正規ユーザであることを保証できる。また、ユーザがICカードの正規ユーザであると認証装置が認証した場合、端末に認証結果を送信するのではなく、ユーザに特定情報を通知する。ユーザが端末に特定情報を入力することで、端末のユーザがICカードの正規ユーザであることが認証装置において判断される。このため、端末に認証機能を備える必要がなく、ユーザ情報や認証結果を認証装置から受信するための独自の待ち受け状態処理を備える必要もない。
【0132】
さらに、認証装置は、入力データが特定情報に関連するデータであると判断した場合にのみICカードに認証成功情報を送信する。これにより、端末のユーザがICカードの正規ユーザである場合に限り、端末のユーザは、ICカードに記憶された情報を利用することができる。その結果、生体情報や認証結果を受信するための独自の待ち受け状態処理を備えていない端末を用いて、認証装置でユーザ認証に成功したユーザと端末ユーザが同一人であることを保証し、ICカードを安全に利用させることができる認証装置を提供することができる。
【0133】
また、特定情報に、認証の結果(たとえば本人である確率の高さを示す割合や認証時の環境)に関連した照合スコア情報を含むこととしたため、特定情報は、ユーザ自身が予測できる情報となり、認証時の環境などにより異なった情報となる。そのため、特定情報を、ユーザ400にわかりやすい数値でかつ比較的容易に特定情報を乱数化することができる。
【0134】
さらに、本実施の形態に係る認証装置は、ユーザがICカードの正規ユーザである場合、端末から受信する入力データ関連情報を特定情報で復号化することにより、ICカードを利用するための認証成功情報を取得することができる。これにより、認証装置がICカードを利用するための認証成功情報を予め保持していなくてもICカードに対して認証成功情報を送信できる。そのため、不特定多数のユーザが多様なICカードを使用する場合であっても、それぞれに要求される認証成功情報をすべて記憶しておく必要はなく、認証装置を不特定多数のユーザが利用する公共の場などの環境で利用することができる。さらに、特定情報と正しい認証成功情報との両方に関連したデータを端末から認証装置が受信した場合のみICカードを利用できる。そのため、二重の利用制限が課せられることとなり、セキュリティレベルをより高くすることができる。また、正規ユーザであることを保証するために必要な特定情報と、ICカードを利用するために必要な認証成功情報を端末から認証装置へ同時に送信する。これにより、認証装置とICカードとの1往復のみの通信により、ICカードを利用できる。そのため、端末のソフトウェア実装が容易である。
【0135】
さらに、本実施の形態に係る認証装置は、たとえば、ICカードが物理的に移動して認証装置から利用できない範囲に離れたり、電源供給が停止されたり、通信路が切断されたり、意図的な利用停止操作が行なわれたりなどの要因で、ICカードと認証装置とが通信できない状態になった場合、特定情報を無効にする。これにより、ユーザが意図的に特定情報を無効化できる。そのため、よりセキュリティレベルを高めることができるとともに、特定情報の管理に必要な記憶容量を低減できる。
【0136】
さらに、本実施の形態に係る認証装置は、ICカードからの応答受信を予め設定された回数を超えても、ICカードを利用できない場合に、特定情報を無効にする。これにより、端末のユーザがICカードの正規ユーザでない可能性の高い特定情報を無効化できる。また、予め設定された時間を超えても、ICカードを利用できない場合に、特定情報を無効にする。これにより、端末のユーザがICカードの正規ユーザでない可能性の高い特定情報を無効化できる。そのため、よりセキュリティレベルを高めることができるとともに、特定情報の管理に必要な記憶容量を低減できる。
【0137】
さらに、本実施の形態に係る認証装置は、ICカードに記憶された情報を利用できる状態となっても、予め設定された時間以内であれば、特定情報を無効にしない。これにより、端末を再起動したり、再接続したり、認証装置との通信が途切れて再接続したりした場合に、その都度ユーザ認証を行なう必要がない。また、同じユーザが追加で端末とは異なる別の装置からICカードを利用する場合に、予め定められた時間内であれば同じ特定情報を使用できる。これにより、それぞれの装置毎にユーザ認証を行なう必要がないようにすることができ、利便性を向上することができる。
【0138】
さらに、本実施の形態に係る認証装置は、ユーザ認証用データのうち、認証に成功したユーザ認証用データを識別する情報をICカードに送信する。これにより、たとえば指紋認証と虹彩認証との複数のユーザ認証方式に関するユーザ認証用データを備えるICカードであっても、どの認証方式でユーザ認証が成功したのかが通知される。そのため、ICカードは、認証方式毎に異なる認証成功情報の検証を行なうことができる。これにより、ICカードでは、認証方式毎に異なる利用権限の管理を行なうことができる。また、複数のユーザに対するユーザ認証用データを備えるICカードであっても、どのユーザが認証に成功したのか通知されるため、複数の異なるユーザが同じ認証装置を用いてICカードに対するユーザ認証を行っても、ユーザ毎の利用権限に応じた範囲でICカードを利用することができる。
【0139】
なお、ICカード100は同等の機能を持つサーバ装置であってもよい。
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、認証装置200に供給し、CPU220が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成される。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになることは言うまでもない。
【0140】
プログラムコードを供給するための記憶媒体としては、たとえば、フロッピディスク、ハードディスク、光ディスク、光磁気ディスク、磁気テープ、不揮発性のメモリカード等を用いることができる。
【0141】
また、上記プログラムコードは、通信ネットワークのような伝送媒体を介して、他のコンピュータシステムから記憶部230へダウンロードされるものであってもよい。
【0142】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0143】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0144】
本発明を上記記憶媒体に適用する場合、その記憶媒体には、先に説明したフローチャートに対応するプログラムコードを格納することになる。
【0145】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【図面の簡単な説明】
【0146】
【図1】本発明の実施の形態に係る認証装置、ICカード、端末、およびこれらを用いたシステムのハードウェア構成図である。
【図2】本発明の実施の形態に係る認証装置の特定情報生成部で生成される特定情報のテーブルの構成図である。
【図3】本発明の実施の形態に係る認証装置の記憶部に記憶される特定情報管理リストのテーブルの構成図である。
【図4】本発明の実施の形態に係る認証装置、ICカードおよび端末の制御ブロック図である。
【図5】本発明の実施の形態に係る認証装置のCPUで実行されるプログラムの制御構造についての説明図である。
【図6】本発明の実施の形態に係る認証装置のCPUで実行されるプログラムの制御構造についての説明図である。
【図7】本発明の実施の形態に係る認証装置のCPUで実行されるプログラムの制御構造についての説明図である。
【図8】本発明の実施の形態に係る認証装置のCPUで実行されるプログラムの制御構造についての説明図である。
【図9】本発明の実施の形態に係る認証装置のCPUで実行されるプログラムの制御構造についての説明図である。
【図10】本発明の実施の形態に係る認証装置の動作についての説明図である。
【符号の説明】
【0147】
100 ICカード、110,210,310 通信部、120,220,320 CPU、130,230,330 記憶部、200 認証装置、240,340 電源部、250 特定情報通知部、260 ユーザ情報入力部、270 ICカード通信部、300 端末、350 特定情報入力部、360 表示部、400 ユーザ、C10 照合スコア情報、C20 乱数情報、C30 認証環境情報、C40 テンプレートID情報、C50 リトライ回数情報、C60 管理状態情報、C70 発行日時情報、D10 認証成功情報検証部、T10 入力データ関連情報生成部、M10 ユーザ認証部、M20 特定情報通知部、M30 入力データ関連情報判断部、M40 応答確認部、M50 検出部、P10 ユーザ認証用データ、P12 ユーザ情報、P13 テンプレートID、P14 認証結果情報、P16 特定情報、P18 入力データ、P20 入力データ関連情報、P22 全有効特定情報、P24 認証成功情報、P26 認証成功情報検証用データ、P28 応答情報、P30 判断通知情報、P32 ICカード未検出情報。

【特許請求の範囲】
【請求項1】
第1の装置に記憶された情報を第2の装置において利用するために、第1の装置と第2の装置との間に設けられる認証装置であって、
前記第1の装置は、前記第2の装置のユーザが前記第1の装置の正規ユーザであるという認証に成功したことを表わす認証成功情報を受信した場合に、前記第2の装置により前記第1の装置に記憶された情報を利用することができ、
前記第2の装置は、前記第2の装置に入力された入力データが前記認証装置で判断された結果に基づいて、前記認証装置を介して前記第1の装置に記憶された情報を利用することができ、
前記認証装置は、
ユーザ認証用データを前記第1の装置から取得するための第1の取得手段と、
ユーザが、ユーザ情報を入力するための入力手段と、
前記ユーザ認証用データと前記ユーザ情報とが認証条件を満足すると、前記ユーザが前記第1の装置の正規ユーザであると認証するための認証手段と、
前記正規ユーザであることを特定するための特定情報を前記正規ユーザに通知するための通知手段と、
前記第2の装置に入力された入力データに関連する入力データ関連情報を前記第2の装置から取得するための第2の取得手段と、
前記入力データ関連情報と前記特定情報とを照合して、前記入力データが前記特定情報に関連するデータであるか否かを判断するための判断手段と、
前記入力データ関連情報が前記特定情報に関連するデータであると判断された場合に、前記第1の装置に前記認証成功情報を送信するための送信手段とを含む、認証装置。
【請求項2】
前記特定情報は、前記認証の結果に関連する情報を含む、請求項1に記載の認証装置。
【請求項3】
前記入力データ関連情報は、前記認証成功情報を、前記入力データで符号化したデータであり、
前記判断手段は、前記特定情報で前記入力データ関連情報を復号化し、前記認証成功情報として正しく復号できるか否かを判断するための手段を含む、請求項1または2に記載の認証装置。
【請求項4】
前記認証装置は、
前記認証成功情報の送信に対する第1の装置からの応答情報を受信し、前記第1の装置に記憶された情報を利用できる状態であるか否かを確認するための確認手段と、
前記確認の結果を前記特定情報に対応させて管理するための管理手段とをさらに含む、請求項1〜3のいずれかに記載の認証装置。
【請求項5】
前記認証装置は、前記第1の装置を検出するための検出手段をさらに含み、
前記管理手段は、前記検出手段により前記第1の装置が検出しなくなった場合に、前記特定情報を無効にするための手段を含む、請求項4に記載の認証装置。
【請求項6】
前記管理手段は、前記確認手段が、前記応答情報を受信する回数が予め設定された回数を超えても、前記第1の装置に記憶された情報を利用できる状態であることを確認しない場合、前記特定情報を無効にするための手段を含む、請求項4または5に記載の認証装置。
【請求項7】
前記管理手段は、前記確認手段が、予め設定された時間を超えても、前記第1の装置に記憶された情報を利用できる状態であることを確認しない場合、前記特定情報を無効にするための手段を含む、請求項4〜6のいずれかに記載の認証装置。
【請求項8】
前記管理手段は、前記確認手段が、前記第1の装置に記憶された情報を利用できる状態であることを確認した場合、予め設定された時間以内であれば、前記特定情報を無効にしないための手段を含む、請求項4〜7のいずれかに記載の認証装置。
【請求項9】
前記送信手段は、前記ユーザ認証用データのうち、前記認証に成功したユーザ認証用データを識別する情報を前記第1の装置に送信する手段を含む、請求項1〜8のいずれかに記載の認証装置。
【請求項10】
第1の装置に記憶された情報を第2の装置において利用するために、第1の装置と第2の装置との間に設けられる装置における認証方法であって、
前記第1の装置は、前記第2の装置のユーザが前記第1の装置の正規ユーザであるという認証に成功したことを表わす認証成功情報を受信した場合に、前記第2の装置により前記第1の装置に記憶された情報を利用することができ、
前記第2の装置は、前記第2の装置に入力された入力データが前記認証装置で判断された結果に基づいて、前記認証装置を介して前記第1の装置に記憶された情報を利用することができ、
前記認証装置は、
ユーザ認証用データを前記第1の装置から取得する第1の取得ステップと、
ユーザが、ユーザ情報を入力する入力ステップと、
前記ユーザ認証用データと前記ユーザ情報とが認証条件を満足すると、前記ユーザが前記第1の装置の正規ユーザであると認証する認証ステップと、
前記正規ユーザであることを特定するための特定情報を前記正規ユーザに通知する通知ステップと、
前記第2の装置に入力された入力データに関連する入力データ関連情報を前記第2の装置から取得する第2の取得ステップと、
前記入力データ関連情報と前記特定情報とを照合して、前記入力データが前記特定情報に関連するデータであるか否かを判断する判断ステップと、
前記入力データ関連情報が前記特定情報に関連するデータであると判断された場合に、前記第1の装置に前記認証成功情報を送信する送信ステップとを含む、認証方法。
【請求項11】
請求項10に記載の認証方法を実現するプログラム。
【請求項12】
請求項11に記載の認証プログラムを記録したコンピュータ読取可能な記録媒体。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公開番号】特開2007−11498(P2007−11498A)
【公開日】平成19年1月18日(2007.1.18)
【国際特許分類】
【出願番号】特願2005−188559(P2005−188559)
【出願日】平成17年6月28日(2005.6.28)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.Bluetooth
【出願人】(000005049)シャープ株式会社 (33,933)
【Fターム(参考)】