(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-12-06
(45)【発行日】2024-12-16
(54)【発明の名称】携帯可能電子装置およびICカード
(51)【国際特許分類】
G06F 21/32 20130101AFI20241209BHJP
【FI】
G06F21/32
(21)【出願番号】P 2020212444
(22)【出願日】2020-12-22
【審査請求日】2023-09-22
(73)【特許権者】
【識別番号】000003078
【氏名又は名称】株式会社東芝
(73)【特許権者】
【識別番号】598076591
【氏名又は名称】東芝インフラシステムズ株式会社
(74)【代理人】
【識別番号】110003708
【氏名又は名称】弁理士法人鈴榮特許綜合事務所
(72)【発明者】
【氏名】栗山 量一
【審査官】宮司 卓佳
(56)【参考文献】
【文献】特開2008-090712(JP,A)
【文献】特開2003-203213(JP,A)
【文献】特表2006-501583(JP,A)
【文献】特開2003-123032(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 21/31-21/46
(57)【特許請求の範囲】
【請求項1】
人物の生体情報を取得する生体センサと、
上位装置と通信する通信インターフェースと、
登録者の生体情報を記憶する第1メモリと、
パスワードを記憶する第2メモリと、
前記通信インターフェースにより上位装置から受信する生体認証を要求するコマンドに応じて前記生体センサが取得する生体情報と前記第1メモリが記憶する生体情報とによる生体認証を実行し、前記生体認証が成功した場合に前記第2メモリ
に記憶したパスワードのうち前記生体認証に用いた前記第1メモリが記憶する生体情報に紐づけられているパスワードに対する照合状態を照合済の状態とするプロセッサと、
を有する携帯可能電子装置。
【請求項2】
人物の生体情報を取得する生体センサと、
上位装置と通信する通信インターフェースと、
登録者の生体情報を記憶する第1メモリと、
パスワードを記憶する第2メモリと、
前記第1メモリは、前記第2メモリが記憶するパスワードに対応づけた生体情報を記憶し、
前記通信インターフェースにより上位装置から受信する生体認証を要求するコマンドに応じて前記生体センサが取得する生体情報と前記第1メモリが記憶する生体情報のうち前記コマンドで指定されたパスワードに対応する生体情報を用いて生体認証を実行し、前記生体認証が成功した場合に前記第2メモリに記憶したパスワードのうち前記コマンドで指定されたパスワードの照合状態を照合済とするプロセッサと、
を有する携帯可能電子装置。
【請求項3】
前記プロセッサは、前記
第2メモリが記憶するパスワードに対するリトライ数と前記第2メモリが記憶するパスワードに対応する前記第1メモリが記憶する生体情報に対するリトライ数とを共通のリトライ数として管理する、
請求項
2に記載の携帯可能電子装置。
【請求項4】
前記プロセッサは、前記第2メモリが記憶するパスワードに対するリトライ数と前記第2メモリが記憶するパスワードに対応する前記第1メモリが記憶する生体情報に対するリトライ数とをそれぞれ別々に管理する、
請求項
2に記載の携帯可能電子装置。
【請求項5】
前記プロセッサは、
前記第1メモリが記憶する生体情報に対するリトライ数と前記第2メモリが記憶するパスワードに対応するリトライ数との何れか一方がリトライ上限数を超えた場合に生体情報による生体認証およびパスワードの照合の両方をロックする、
請求項
2に記載の携帯可能電子装置。
【請求項6】
前記プロセッサは、前記
通信インターフェースにより上位装置から生体認証を要求する照合コマンドを受信した場合に生体認証を実行する、
請求項
1乃至5の何れか1項に記載の携帯可能電子装置。
【請求項7】
前記プロセッサは、
前記通信インターフェースにより上位装置から特定コマンドを受信した場合に生体認証を実行する、
請求項1乃至
5の何れか1項に記載の携帯可能電子装置。
【請求項8】
前記特定コマンドは、前記通信インターフェースにより初期応答を出力した後に最初に受信するコマンドである、
請求項
7に記載の携帯可能電子装置。
【請求項9】
前記特定コマンドは、アプリケーション選択コマンドである、
請求項
7に記載の携帯可能電子装置。
【請求項10】
前記プロセッサは、前記通信インターフェースにより初期応答を出力した後に前記生体センサの自己診断を実行し、前記生体センサの自己診断結果が正常の場合に生体認証を実施する、
請求項
7に記載の携帯可能電子装置。
【請求項11】
前記プロセッサは、
前記特定コマンドを受信した場合に実行する生体認証が成功しなければ前記特定コマンドが要求する処理を実行しない、
請求項
7に記載の携帯可能電子装置。
【請求項12】
前記プロセッサは、前記特定コマンドを受信した場合に実行する生体認証が成功しな
い場合、前記生体センサにより改めて生体情報を取得し、前記生体センサが改めて取得した生体情報と前記第1メモリが記憶する生体情報とによる生体認証を再度実行する、
請求項
7に記載の携帯可能電子装置。
【請求項13】
点灯状態が制御されるLEDを有し、
前記プロセッサは、前記生体認証の結果に応じてLEDの表示状態を制御する、
請求項
1乃至12の何れか1項に記載の携帯可能電子装置。
【請求項14】
前記生体センサは、指紋情報を取得する指紋センサである、
請求項1乃至1
3の何れか1項に記載の携帯可能電子装置。
【請求項15】
人物の生体情報を取得する生体センサと、
上位装置と通信する通信インターフェースと、登録者の生体情報を記憶する第1メモリと、パスワードを記憶する第2メモリと、前記通信インターフェースにより上位装置から受信する生体認証を要求するコマンドに応じて前記生体センサが取得する生体情報と前記第1メモリが記憶する生体情報とによる生体認証を実行し、前記生体認証が成功した場合に前記第2メモリに記憶したパスワードのうち前記コマンドで指定されたパスワードの照合状態を照合済とするプロセッサと、を有するモジュールと、
前記生体センサと前記モジュールとを接続した状態を保持する本体と、
を有するICカード。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、携帯可能電子装置およびICカードに関する。
【背景技術】
【0002】
従来、携帯可能電子装置としてのICカードには、パスワードを用いて人物認証を行う機能を有するものがある。例えば、ICカードには、アプリケーションプログラム(以下、アプリケーション)に依存しない共通のパスワードが登録されたり、アプリケーション毎に設定されるパスワードが登録されたりすることがある。近年、ICカードは、多用途化が進み、複数のパスワードを登録されるものが多くなってきている。
【0003】
ICカードは、パスワード照合として、ユーザが入力するパスワードと登録されているパスワードとが一致するか否かを照合する。複数のパスワードや認証方法が登録されている場合、ICカードのユーザは、使用目的ごとの複数のパスワード等を記憶しておき、当該ICカードの使用目的に応じたパスワードを入力する必要がある。一方、ユーザの利便性を考慮して、1つのICカードに単一のパスワードだけを登録するように運用すると、セキュリティが低くなってしまう。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
上記の課題を解決するために、本発明は、生体認証を用いて利便性を高めながらセキュリティを向上できる携帯可能電子装置およびICカードを提供する。
【課題を解決するための手段】
【0006】
実施形態によれば、携帯可能電子装置は、生体センサと、通信インターフェースと、第1メモリと、第2メモリと、プロセッサと、を有する。生体センサは、人物の生体情報を取得する。通信インターフェースは、上位装置と通信する。第1メモリは、登録者の生体情報を記憶する。第2メモリは、パスワードを記憶する。プロセッサは、通信インターフェースにより上位装置から受信する生体認証を要求するコマンドに応じて生体センサが取得する生体情報と第1メモリが記憶する生体情報とによる生体認証を実行し生体認証が成功した場合に第2メモリに記憶したパスワードのうち前記生体認証に用いた前記第1メモリが記憶する生体情報に紐づけられているパスワードに対する照合状態を照合済の状態とする。
【図面の簡単な説明】
【0007】
【
図1】
図1は、実施形態に係る携帯可能電子装置としてのICカードの構成例を示すブロック図である。
【
図2】
図2は、実施形態に係る携帯可能電子装置としてのICカードによる照合コマンドに対する処理例を説明するためのフローチャートである。
【
図3】
図3は、実施形態に係る携帯可能電子装置としてのICカードに供給される照合コマンドの例を示す図である。
【
図4】
図4は、実施形態に係る携帯可能電子装置としてのICカードに供給される照合コマンドの例を示す図である。
【
図5】
図5は、実施形態に係る携帯可能電子装置としてのICカードに供給される照合コマンドの例を示す図である。
【
図6】
図6は、実施形態に係る携帯可能電子装置としてのICカードに供給される照合コマンドにおける第1パラメータの設定例を示す図である。
【
図7】
図7は、実施形態に係る携帯可能電子装置としてのICカードに供給される照合コマンドにおける第2パラメータの設定例を示す図である。
【
図8】
図8は、実施形態に係る携帯可能電子装置としてのICカードにおける複数のパスワードの照合状態(照合結果)を格納するテーブルの例を示す図である。
【
図9】
図9は、実施形態に係る携帯可能電子装置としてのICカードによる照合コマンドに対するパスワード照合の処理例を説明するためのフローチャートである。
【
図10】
図10は、実施形態に係る携帯可能電子装置としてのICカードにおける複数のパスワードの管理情報を格納するテーブルの例を示す図である。
【
図11】
図11は、実施形態に係る携帯可能電子装置としてのICカードによるバイナリ読出コマンドに対する処理例を説明するためのフローチャートである。
【
図12】
図12は、実施形態に係る携帯可能電子装置としてのICカードに供給されるバイナリ読出コマンドの例を示す図である。
【
図13】
図13は、実施形態に係る携帯可能電子装置としてのICカードに供給されるバイナリ読出コマンドにおける第1パラメータの設定例を示す図である。
【
図14】
図14は、実施形態に係る携帯可能電子装置としてのICカードに供給される照合コマンドにおける第2パラメータの設定例を示す図である。
【
図15】
図15は、実施形態に係る携帯可能電子装置としてのICカードにおけるデータ(EF)の管理情報を格納するテーブルの例を示す図である。
【
図16】
図16は、実施形態に係る携帯可能電子装置としてのICカードにおけるデータ(EF)の構成例を示す図である。
【
図17】
図17は、実施形態に係る携帯可能電子装置としてのICカードによる照合コマンドに対する処理例を説明するためのフローチャートである。
【
図18】
図18は、実施形態に係る携帯可能電子装置としてのICカードにおいて指紋登録データに紐づけたパスワードを示す情報を格納するテーブルの例を示す図である。
【
図19】
図19は、実施形態に係る携帯可能電子装置としてのICカードにおける複数のパスワードの管理情報を格納するテーブルの例を示す図である。
【
図20】
図20は、実施形態に係る携帯可能電子装置としてのICカードによる照合コマンドに対する処理例を説明するためのフローチャートである。
【
図21】
図21は、実施形態に係る携帯可能電子装置としてのICカードにおける複数のパスワードの管理情報を格納するテーブルの例を示す図である。
【
図22】
図22は、実施形態に係る携帯可能電子装置としてのICカードによる照合コマンドに対する処理例を説明するためのフローチャートである。
【
図23】
図23は、実施形態に係る携帯可能電子装置としてのICカードにおけるIEF毎に登録される指紋登録データの管理情報を格納するテーブルの例を示す図である。
【
図24】
図24は、実施形態に係る携帯可能電子装置としてのICカードによる特定コマンドに対する生体認証を含む処理例を説明するためのフローチャートである。
【
図25】
図25は、実施形態に係る携帯可能電子装置としてのICカードによる特定コマンドに対する生体認証を含む処理例を説明するためのフローチャートである。
【
図26】
図26は、実施形態に係る携帯可能電子装置としてのICカードによる
図25に示す処理の第1の変形例を説明するためのフローチャートである。
【
図27】
図27は、実施形態に係る携帯可能電子装置としてのICカードによる
図25に示す処理の第2の変形例を説明するためのフローチャートである。
【
図28】
図28は、実施形態に係る携帯可能電子装置としてのICカードによる
図25に示す処理の第3の変形例を説明するためのフローチャートである。
【
図29】
図29は、実施形態に係る携帯可能電子装置としてのICカードによる
図25に示す処理の第4の変形例を説明するためのフローチャートである。
【
図30】
図30は、実施形態に係る携帯可能電子装置としてのICカードによる
図25に示す処理の第5の変形例を説明するためのフローチャートである。
【
図31】
図31は、実施形態に係る携帯可能電子装置としてのICカードによる
図25に示す処理の第6の変形例を説明するためのフローチャートである。
【
図32】
図32は、実施形態に係る携帯可能電子装置としてのICカードによる
図25に示す処理の第7の変形例を説明するためのフローチャートである。
【発明を実施するための形態】
【0008】
以下、実施形態について、図面を参照しつつ説明する。
まず、実施形態に係る携帯可能電子装置としてのICカード1の構成について説明する。
図1は、実施形態に係る携帯可能電子装置としてのICカード1の構成例を示すブロック図である。
ICカード1は、外部装置から供給される電力により活性化する(動作可能な状態になる)携帯可能電子装置の一例である。ICカード1は、上位装置からのコマンドに応じて処理を実行する。本実施形態において、携帯可能電子装置としてのICカード1は、生体情報を用いて認証を実行する機能を有するものとする。例えば、ICカード1は、スマートカードとも称される。また、ICカード1は、携帯可能電子装置の他の例としてのスマートフォンなどのモバイル端末が備える1つの機能に置き換えて実施しても良い。
【0009】
実施形態に係る携帯可能電子装置としてのICカード1は、人物から取得する生体情報を用いた生体照合によって人物を認証する生体認証機能を有する。実施形態では、ICカード1は、生体情報の一例としての指紋を用いた指紋照合によって人物を認証する生体(指紋)認証機能を有するものとして説明する。ただし、実施形態に係る携帯可能電子装置としてのICカード1が備える生体認証機能は、指紋による生体照合に限定されるものではない。例えば、ICカード1で例示される携帯可能電子装置は、指紋以外の生体情報によって生体認証を行うものであっても良い。
【0010】
図1に示す構成例において、ICカード1は、本体Cを有する。本体Cは、例えば、プラスチックなどによりカード状に形成される。ICカード1は、本体C内に制御部11としてのモジュールM、生体照合部12およびLED13などを備える。例えば、モジュールMは、1つ又は複数のICチップに通信インターフェースが接続された状態で一体的に形成される。制御部11としてのモジュールMは、MPU31および生体センサ32を有する生体照合部12、および、LED13に接続された状態で本体Cに設けられる。
【0011】
図1に示す構成例において、制御部11を構成するモジュールMは、プロセッサ21、ROM22、RAM23、データメモリ24および通信インターフェース25を有する。
プロセッサ21は、種々の処理を実行する回路を含む。プロセッサ21は、例えば、CPU(Central Processing Unit)である。プロセッサ21は、ICカード1全体の制御を司る。プロセッサ21は、ROM22あるいはデータメモリ24に記憶されているプログラムを実行することにより、種々の処理機能を実現する。ただし、後述するプロセッサ21が実行する各種の機能のうち一部又は全部は、ハードウエア回路により実現されるようにしても良い。
【0012】
ROM22は、プログラムメモリとして機能する不揮発性のメモリである。ROM22は、予め制御用のプログラムおよび制御データなどが記憶される。ROM22は、製造段階で制御プログラムや制御データなどが記憶された状態でICカード1内に組み込まれるものである。ROM22に記憶される制御プログラムや制御データは、予め当該ICカード1の仕様に応じて組み込まれる。例えば、ROM22には、外部装置(カードリーダライタ)から受信するコマンドに応じた処理をプロセッサ21が実行するためのプログラムが記憶される。
【0013】
RAM23は、ワーキングメモリとして機能する揮発性のメモリである。また、RAM23は、プロセッサ21が処理中のデータなどを一時保管するバッファとしても機能する。例えば、RAM23は、通信インターフェース25を介して外部装置との間で送受信するデータを一時保管する通信バッファとして機能する。
【0014】
データメモリ24は、データの書き込みおよび書換えが可能な不揮発性のメモリである。データメモリ24は、例えば、EEPROM(登録商標)(Electrically Erasable Programmable Read Only Memory)などで構成する。データメモリ24には、当該ICカード1の運用用途に応じたプログラムや種々のデータが書き込まれる。データメモリ24には、プログラムファイルあるいはデータファイルなどが定義され、それらのファイルに制御プログラムや種々のデータが書き込まれる。また、データメモリ24は、一部又は全部の領域が耐タンパー性を有し、セキュアにデータが格納できる。
【0015】
データメモリ24は、正当な利用者(登録者)の生体情報(認証データ)を記憶する第1メモリとパスワード照合を行うためのパスワード登録データを記憶する第2メモリとを含む。また、データメモリ24は、後述する各種のテーブルを記憶する。
【0016】
例えば、第1メモリとしてのデータメモリ24は、生体認証を実行するためのデータとして登録者の生体情報(生体登録データ)を記憶する。ICカード1が指紋による生体認証を実行する場合、データメモリ24は、登録者の指紋データ(指紋登録データ)を記憶する。登録者の指紋データは、生体センサ32としての指紋センサで取得する指紋情報と照合するための指紋画像又は指紋の特徴データである。また、データメモリ24には、1人の登録者に対して複数の指ごとに指紋データを登録して良い。また、1つのICカード1を複数の利用者が使用する場合、データメモリ24には、正当な利用者である複数の登録者の指紋データを登録するようにしても良い。
【0017】
通信インターフェース25は、通信制御部とインターフェース部とを有し、通信部を構成する。通信インターフェース25は、当該ICカード1に対して電源電力およびコマンドを供給する上位装置と通信するためのインターフェースである。通信インターフェース25は、外部装置のインターフェースに対応した通信方式による通信機能を実現する。また、通信インターフェース25は、複数の通信方式(例えば、接触通信と非接触通信)をサポートするものとして構成しても良い。
【0018】
当該ICカード1が接触型のICカードとして実現される場合、通信インターフェース25は、外部装置と接触して通信する通信部を構成する。この場合、通信インターフェース25は、外部装置のカードリーダライタに設けられたコンタクト部と物理的かつ電気的に接触するコンタクト部を備え、コンタクト部を介した信号の送受信を制御する通信制御回路などにより構成される。
【0019】
また、当該ICカード1が非接触型のICカードとして実現される場合、通信インターフェース25は、外部装置のカードリーダライタと非接触(無線)で通信する通信部を構成する。この場合、通信インターフェース25は、電波の送受信を行うアンテナを備え、アンテナから送信する電波を生成するための変調回路およびアンテナが受信した電波から信号を生成するための復調回路などにより構成される。
【0020】
生体照合部12は、MPU31および生体センサ32を有し、制御部11としてのモジュールMに接続される。また、生体照合部12は、MPU31が生体(指紋)照合による生体認証を実行するための認証用プログラムなどを記憶するメモリも有する。
【0021】
生体センサ32は、生体情報としての指紋情報を取得する生体情報取得部の一例である。本実施形態において、生体センサ32は、利用者の指紋情報(指紋画像)を読み取る指紋センサである。生体センサ32としての指紋センサは、指紋を読み取るセンサがICカード1の本体Cの表面に露出するように設けられ、露出したセンサ部分に翳された人物の指の指紋を読み取る。なお、生体センサ32は、指紋センサに限定されるものではなく、指紋以外の生体情報を取得するものであっても良い。
【0022】
MPU31は、生体認証用のプログラムを実行することにより生体センサ32が取得する生体情報としての指紋情報を用いた生体認証を実行する。例えば、MPU31は、生体センサ32としての指紋センサが読み取った画像から指紋画像を抽出し、指紋センサが読み取った画像から抽出した指紋画像とデータメモリ24に登録している登録者の指紋画像(又は指紋の特徴データ)とを照合するにより指紋認証を実行する。
【0023】
なお、
図1に示す構成例では、プロセッサ21とは別に設けたMPU31が生体(指紋)照合による生体認証を実行する構成としたが、プロセッサ21が生体認証を実行するようにしても良い。プロセッサ21に生体認証を実行させる場合、生体センサ32が読み取った生体情報がプロセッサ21へ供給されるようにすれば良い。例えば、プロセッサ21は、生体センサ32としての指紋センサから供給される画像から指紋情報を抽出し、抽出した指紋情報とデータメモリ24に登録している登録者の指紋情報とを照合するようにすれば良い。
【0024】
LED13は、発光素子を有する。LED13は、制御部11の制御によって発光素子の発光状態が制御される。LED13は、例えば、点灯状態が本体Cの表面において視認できる状態で本体Cに設けられる。
【0025】
次に、本実施形態に係るICカード1の動作について説明する。
実施形態に係るICカード1は、国際規格などで標準化されたICカードに用いられる既存の通信プロトコルに準じて動作する機能を有する。また、ICカード1は、生体センサ32が取得する生体情報を用いた生体認証機能、および、パスワード照合による認証機能を有する。ICカード1は、パスワード照合に用いる少なくとも1つ以上のパスワードデータを記憶(保持)する。実施形態に係るICカード1は、パスワード照合の一部又は全部を生体認証に書き換えることが可能な機能を有する。
【0026】
以下、ICカード1において、生体認証が成功した場合に一部又は全部のパスワードの照合状態(照合結果)を照合済(照合成功、照合OK)の状態に書き換えるための幾つかの動作例について説明する。
図2は、ICカード1が照合コマンドを受信した場合の処理例とICカード1における生体認証の成功に応じて全てのパスワードの照合結果を照合済に置き換える処理例とを示すフローチャートである。
【0027】
ICカード1は、上位装置からの電源電力の供給を受けて起動し、上位装置からのコマンドが受信可能な状態となる。ICカード1のプロセッサ21は、通信インターフェース25を介して上位装置からの所定のフォーマットで構成されるコマンドを受信し、受信したコマンドで要求された処理を実行する。
【0028】
図2に示すように、ICカード1のプロセッサ21は、通信インターフェース25を介して上位装置からのコマンドを受信した場合(S11、YES)、受信したコマンドが照合を要求する照合コマンドであるか否かを判断する(S12)。ここで、上位装置からICカード1に供給されるコマンドは、予め規定されている規格に準じて構成されるものとする。ICカード1のプロセッサ21は、ROM22又はデータメモリ24に記憶されているプログラムを実行することにより、規格に準じて構成されるコマンドを解釈し、コマンドに応じた処理を実行する。
【0029】
本実施形態において、プロセッサ21は、受信したコマンドが照合コマンドでない場合(S12、NO)、当該コマンドで指定されたコマンド処理を実行する(S13)。他のコマンド処理の一例としては、バイナリデータ読出コマンドに対する処理について後で説明する。
受信したコマンドが照合コマンドである場合(S12、YES)、プロセッサ21は、受信した照合コマンドが処理内容を示す情報として指定するパラメータをチェックし、パラメータで指定される内容の処理を実行する。
【0030】
図3乃至5は、上位装置からICカード1に供給される照合コマンドの構成例を示す図である。
本実施形態において、上位装置からICカード1に供給されるコマンドは、
図3乃至5に示すように、「CLA」、「INS」、P1」、「P2」、「Lc」、および、「Data」を並べたフォーマットで構成されるものとする。「CLA」および「INS」は、コマンドの内容を示す。例えば、照合コマンドは、
図3乃至5に示すように、「CLA」「INS」が「00」「20」となる。また、「P1」および「P2」は、「CLA」および「INS」で示されるコマンドに応じた意味が定義されるパラメータである。「Lc」は、「Data」に格納されるデータの長さを示し、「Data」は、添付されるデータを示す。
【0031】
図6は、照合コマンドにおける第1のパラメータである「P1」の意味を示す図である。
図6に示す例では、照合コマンドにおける「P1」が「00」である場合、当該照合コマンドがパスワード照合を要求するコマンドであることを示す。例えば、
図5に示す照合コマンドは、「P1」が「00」であるため、パスワード照合を要求するコマンドであることを示す。
図5に示すコマンドでは、「Data」に「Lc」が示す長さ(サイズ)のパスワードデータ(入力パスワードデータ)が格納される。
【0032】
また、
図6では、照合コマンドにおける「P1」が「01」である場合、当該照合コマンドが指紋情報の入力および照合(生体認証)を要求するコマンドであることを示す。例えば、
図3および
図4に示す照合コマンドは、「P1」が「01」であるため、生体認証を要求するコマンドであることを示す。
【0033】
図6に例示するような定義に従って、プロセッサ21は、照合コマンドがパスワード照合を指定するものであるか否かを判断する(S14)。ここでは、プロセッサ21は、照合コマンドにおけるパラメータ「P1」が「00」であるか否かによりパスワード照合であるか否かを判断するものとする。
受信した照合コマンドのP1が「00」である場合、つまり、照合コマンドがパスワード照合を要求するコマンドである場合(S14、YES)、プロセッサ21は、パスワード照合を実行する(S15)。パスワード照合の処理については、後で詳細に説明する。
【0034】
受信した照合コマンドのP1が「00」でない場合、つまり、照合コマンドがパスワード照合を要求するコマンドでない場合(S14、NO)、プロセッサ21は、照合コマンドが生体(指紋)認証を要求するものであるか否かを判断する(S16)。
受信した照合コマンドのP1が「00」でも「01」でもない場合、つまり、照合コマンドがパスワード照合も生体認証も指定していない場合(S16、NO)、プロセッサ21は、照合コマンドによる照合方法の指定が不明(P1の値が異常)であると判定する。この場合、プロセッサ21は、照合コマンドにおけるP1の値が異常であることを示すエラー通知を含むステータスワードを生成し、生体したステータスワードを当該コマンドに対する応答として上位装置へ送信し(S17)、次のコマンド受信待ち状態となる。
【0035】
受信した照合コマンドのP1が「01」である場合、つまり、照合コマンドが生体照合を要求するコマンドである場合(S16、YES)、プロセッサ21は、生体認証の結果を反映させるパスワード(生体認証の成功に応じて照合済とするパスワード)を特定する。ここでは、プロセッサ21は、当該照合コマンドにおける第2のパラメータであるP2の値に基づいて生体認証の認証結果を反映させるパスワードを特定するものとする。
【0036】
図7は、照合コマンドにおける第2のパラメータである「P2」の意味を示す図である。
図7に示す設定例では、照合コマンドにおける「P1」が「00」である場合、「P2」に格納される値が生体認証の成功に応じて照合状態(照合結果)を照合済(照合成功、OK)とするパスワードを示す情報となる。
【0037】
図7に示す定義に従えば、ICカード1は、上位装置から受信する「P1」が「01」のコマンド(生体認証を要求する照合コマンド)における「P2」が「FF」である場合、生体認証の成功に応じて全てのパスワードに対する照合結果を照合済(照合成功、照合OK)にセットされるものと解釈する。つまり、
図3に示すような「P2」が「FF」である照合コマンドを受信した場合、ICカード1は、生体認証の成功に応じて全てのパスワードに対する照合結果を照合済にセットする処理を実行する。
【0038】
また、生体認証を要求する照合コマンドにおける「P2」が「FE」である場合、ICカード1は、生体認証が成功すると生体照合が成功した生体情報(指紋登録データ)に紐づけられたパスワードに対する照合結果を照合済(照合成功、照合OK)にセットするものと解釈する。つまり、
図4に示すような「P2」が「FE」である照合コマンドを受信した場合、ICカード1は、生体認証の成功に応じて生体照合に用いた指紋登録データに紐づけられたパスワードに対する照合結果を照合済にセットする処理を実行する。
【0039】
また、生体認証を要求する照合コマンドにおける「P2」が特殊値(例えば、「FF」および「FE」)以外の値である場合、P2の値が生体認証の成功に応じて照合結果を照合済とするパスワードを示す値(IEF:Internal Elementary File)であるものと解釈する。つまり、生体認証を要求する照合コマンドにおける「P2」がパスワードを示す値(IEF:Internal Elementary File)である場合、ICカード1は、生体認証の成功に応じて指定されたパスワード(IEF)に対する照合結果を照合済(照合成功、照合OK)にセットするものと解釈する。
【0040】
ここで、プロセッサ21は、
図7に例示する定義に従って動作するものとする。この場合、プロセッサ21は、受信した照合コマンドのP2が「FF」である場合に生体認証の成功に応じて全てのパスワードの照合結果を照合済とするものと判断する。つまり、受信した照合コマンドのP1が「01」で、かつ、P2が「FF」ある場合(S18、YES)、プロセッサ21は、生体認証の成功に応じて全てのパスワードの照合結果を照合済とするものと解釈し、生体照合部12に生体情報の入力および生体照合を実行させる(S20、S21)。
【0041】
例えば、プロセッサ21は、データメモリ24に登録されている登録者の指紋データ(指紋登録データ)を生体照合部12へ送信し、生体照合部12に生体センサ32による指紋データ(入力指紋データ)の入力および指紋登録データと入力指紋データとの照合とを指示する。生体照合部12のMPU31は、プロセッサ21の制御によって供給される指紋登録データを保持し、生体センサ32による指紋データの入力を行う(S20)。生体センサ32が指紋データを入力すると、MPU31は、生体センサ32が取得した指紋データ(入力指紋データ)と指紋登録データとを照合し(S21)、その照合結果をプロセッサ21へ供給する。
【0042】
プロセッサ21は、生体照合部12からの照合結果に応じて生体認証が成功したか否かを判断する。また、プロセッサ21は、LED13を生体認証の結果に応じて点灯させる。例えば、プロセッサ21は、生体照合部12における生体情報の入力および生体照合を実行中には生体認証が実行中であることを示す点灯状態でLED13を点灯させる。さらに、プロセッサ21は、生体認証が成功した場合には生体認証が成功したことを示す点灯状態でLED13を点灯させ、生体認証が失敗した場合には生体認証が失敗したことを示す点灯状態でLED13を点灯させる。
【0043】
生体照合部12での生体照合による生体認証が失敗した場合(S22、YES)、プロセッサ21は、照合失敗(NG)を示すステータスワードを生成し、生成したステータスワードを照合コマンドの送信元である上位装置へ送信する(S23)。
生体照合部12での生体照合による生体認証が成功した場合(S22、YES)、プロセッサ21は、全てのパスワード(IEF)に対して照合結果が照合済み(成功、OK)であることを示す情報(フラグ)を記憶する(S24)。
【0044】
図8は、パスワードに対する照合結果(照合状態)を記録するパスワード照合の照合状態テーブルの構成例を示す図である。
図8に示す例は、全てのパスワードに対する照合状態が照合済みであることを示す情報を照合状態テーブルに記憶した状態を示す。
図8に示すような照合状態テーブルは、データメモリ24又はRAM23に設けられる。例えば、プロセッサ21は、
図8に示すような照合状態テーブルをデータメモリ24に設け、生体照合部12による生体照合による生体認証が成功した場合に照合状態テーブルにある全てのパスワードに対する照合結果(照合状態)を照合済であることを示す情報にセットする。
【0045】
生体認証を要求する照合コマンドの第2パラメータ(P2)が「FF」である場合、プロセッサ21は、生体照合部12による生体照合が成功すると(S22、YES)、全てのパスワードに対して照合結果が照合済(照合成功)であることを示す情報(フラグ)を記憶する(S24)。生体認証の成功に応じて全てのパスワードに対する照合結果を照合済とした後、プロセッサ21は、当該照合コマンドの送信元である上位装置へ正常終了を示すステータスワードを送信し(S25)、照合コマンドに対する一連の処理を終了する。
【0046】
次に、
図2に示すS15の処理としてのパスワード照合処理について説明する。
図9は、ICカード1におけるパスワード照合処理の処理例を説明するためのフローチャートである。
上述したように、
図2に示す処理において、受信した照合コマンドにおける第1パラメータ(P1)が「00」である場合(S14、YES)、プロセッサ21は、パスワード照合処理を実行する(S15)。
【0047】
図9に示すパスワード照合処理の処理例において、プロセッサ21は、受信したパスワード照合を要求する照合コマンドにおける第2パラメータ(P2)で指定されるIEFが存在するか否かを判定する(S31)。IEFは、データメモリ24に記憶されるパスワードを格納するファイルである。プロセッサ21は、受信したパスワード照合を要求する照合コマンドが指定するIEFが存在するか否かにより指定されたパスワードが存在するか否かを判定する。
【0048】
図10は、パスワードを管理するパスワード管理テーブルの例を示す図である。
図10に示す例において、パスワード管理テーブルには、IEFごとに、パスワード登録データ、長さ情報、リトライカウンタ、および、リトライカウンタの初期値が対応づけて記憶される。IEFは、パスワード(IEF)を示す識別情報(ID)としての番号で特定される。パスワード登録データは、予め登録されるパスワードデータである。長さ情報は、パスワード登録データとして格納されるパスワードデータの長さを示す。
【0049】
リトライカウンタは、対応するパスワードを用いてパスワード照合が実行可能な残り回数(リトライ数)を示す値を格納する。リトライカウンタの初期値は、対応するパスワードによる照合の上限値を示す。リトライカウンタは、リセットされると上限値であるリトライカウンタの初期値がセットされ、照合が失敗するごとにカウントダウンされるカウンタである。リトライカウンタは、対応するパスワードによる照合状態が照合成功となった場合に初期値に戻される。ただし、リトライカウンタが0である場合、当該ICカード1は、ロック状態となるため、パスワード照合などによってリトライカウンタを初期値に戻すことはできなくなる。
【0050】
受信した照合コマンドで指定されるIEFが存在しない場合(S31、NO)、プロセッサ21は、指定されたIEF(パスワード)が無いことを示すステータスワードを生成し、生成したステータスワードを当該照合コマンドの送信元である上位装置へ送信する(S32)。指定されたIEFが無いことを示すステータスワードを送信した場合、プロセッサ21は、次のコマンドの入力待ち状態となる。
【0051】
受信した照合コマンドで指定されるIEFが存在する場合(S31、YES)、プロセッサ21は、受信した照合コマンドが指定するIEFがロック状態ではないか否かを判定する(S33)。プロセッサ21は、
図10に示すようなパスワード管理テーブルに格納されるリトライカウンタの値に基づいてコマンドで指定されたパスワード(IEF)がロック状態であるか否かを判断する。例えば、プロセッサ21は、指定されたIEFに対応するリトライカウンタが0であれば当該IEFがロック状態であると判断する。
【0052】
照合コマンドで指定されたIEFがロック状態である場合(S33、YES)、プロセッサ21は、ロック状態を示すステータスワードを生成し、生成したステータスワードを当該照合コマンドの送信元である上位装置へ送信する(S34)。指定されたIEFがロック状態であることを示すステータスワードを送信した場合、プロセッサ21は、次のコマンドの入力待ち状態となる。
【0053】
照合コマンドで指定されるIEFがロック状態でない(アンロック状態である)場合(S33、YES)、プロセッサ21は、当該照合コマンドのDataに格納されるパスワードデータ(入力パスワード)と当該照合コマンドが指定するIEFのパスワードデータ(パスワード登録データ)とを照合する(S35)。入力パスワードと指定IEFのパスワード登録データとが一致する場合、プロセッサ21は、当該照合コマンドが要求するパスワード照合が成功したものと判断する。また、入力パスワードと指定IEFのパスワード登録データとが一致しない場合、プロセッサ21は、当該照合コマンドが要求するパスワード照合が失敗したものと判断する。
【0054】
パスワード照合が失敗した場合(S36、NO)、プロセッサ21は、指定IEFに対するリトライカウンタをカウントダウンすることでリトライ数を改めてセットし、照合結果を示す情報(フラグ)を未照合の状態にリセットする(S37)。さらに、プロセッサ21は、パスワード照合が失敗したことを示すステータスワードを照合コマンドの送信元である上位装置へ送信し(S38)、次のコマンド受信待ちの状態となる。
【0055】
パスワード照合が成功した場合(S36、YES)、プロセッサ21は、指定IEFに対するリトライカウンタを初期値にすることでリトライ数を初期値にリセットし、照合結果を示す情報(フラグ)を照合済(照合成功)の状態にセットする(S39)。さらに、プロセッサ21は、パスワード照合が成功したことを示すステータスワードを照合コマンドの送信元である上位装置へ送信し(S40)、次のコマンド受信待ちの状態となる。
【0056】
次に、ICカード1におけるコマンド処理の一例としてのバイナリデータの読出を要求するバイナリ読出コマンドに対するコマンド処理(データ読出処理)について説明する。
図11は、ICカード1によるコマンド処理の一例としてのバイナリ読出コマンドに対するデータ読出処理を説明するためのフローチャートである。
上述したような
図2に示す処理において、受信したコマンドが照合コマンドでない場合(S12、NO)、プロセッサ21は、受信したコマンドに応じたコマンド処理を実行する(S13)。
図11に示す処理例では、受信したコマンドがバイナリデータの読出を要求するバイナリ読出コマンドであった場合の処理例を示す。
【0057】
図12は、バイナリ読出コマンドの構成例を示す図である。また、
図13は、バイナリ読出コマンドにおける第1のパラメータ(P1)の構成例を示す図である。
図14は、バイナリ読出コマンドにおける第2のパラメータ(P2)の構成例を示す図である。
図12に示すように、バイナリ読出コマンドは、「CLA」「INS」が「00」「B0」となる。また、バイナリ読出コマンドの「P1」は、読出対象となるバイナリデータを示す値を格納する。
図13に示す例において、バイナリ読出コマンドの「P1」には、読出対象となるデータが格納されるファイル(EF:Elementary File)を示す値が格納される。バイナリ読出コマンドの「P2」は、読出対象となるアドレスを示す値を格納する。
図14に示す例において、バイナリ読出コマンドの「P2」には、「P1」で指定されるEFにおける読出位置を示すアドレス(相対アドレス)が格納される。
【0058】
図15は、データを格納するEFの管理情報を記憶するEF管理テーブルの例を示す図である。また、
図16は、データメモリ24におけるEFの構成例を示す図である。
図15に示すようなEF管理テーブルは、例えば、データメモリ24に記憶される。EF管理テーブルでは、各EFに対して、サイズ、物理アドレス、読み出しアクセス権、書き込みアクセス権などを示すデータが格納される。サイズは、当該EFにおける実データのサイズを示す。物理アドレスは、当該EFの実データが格納されるデータメモリ24における場所(書込み開始位置)を示す。
【0059】
読み出しアクセス権は、当該EFに対するデータの読み出し権限を示す情報が記憶される。例えば、読み出しアクセス権において、「00」は、当該EFのデータに対するアクセスがフリーであることを示す。「0x」は、当該EFのデータにアクセスするにはIEF(0x)に格納される認証情報による照合が成功したことが必要であることを示す。ここで、番号(ID)がxxのIEFをIEF(xx)と示すものとする。
【0060】
図15に示すようなEF管理テーブルでは、当該EFに対する読み出しアクセス権、書き込みアクセス権を示す情報が記憶される。読み出しアクセス権が「01」であるEFのデータを読み出すには、IEF(01)のパスワードによるパスワード照合の照合結果が照合済であることが必要であることを示す。読み出しアクセス権が「01」、「02」、「03」、「04」であるEFは、IEF(01)、IEF(02)、IEF(03)、IEF(04)のパスワードの照合結果が照合済であることがデータを読み出すための条件(権限)として必要であることを示し、「00」は、当該EFのデータに対するアクセスがフリーであることを示す。
【0061】
書き込みアクセス権が「04」であるEFのデータを読み出すには、IEF(04)のパスワードによるパスワード照合の照合結果が照合済であることが必要であることを示す。書き込みアクセス権が「01」、「02」、「03」、「04」であるEFは、IEF(01)、IEF(02)、IEF(03)、IEF(04)のパスワードの照合結果が照合済であることがデータを書き込むための条件(権限)として必要であることを示し、「00」は、当該EFのデータに対するアクセスがフリーであることを示す。
【0062】
また、EFは、
図16に示すように、
図15に示すようなEF管理テーブルで指定される物理アドレスに実データが記憶される。例えば、
図16に示すアドレス「1000h」に記憶される「実データ1」は、
図15に示すEF「01」(データ番号が「01」のEF)のサイズが「100h」のデータであり、読み出しアクセス権が「00」で、書き込みアクセス権が「04」であることを意味する。
【0063】
図11に示す処理例において、受信したコマンドがバイナリ読出コマンドでない場合(S51、NO)、プロセッサ21は、受信したコマンドに応じたコマンド処理を実行する(S52)。受信したコマンドがバイナリ読出コマンドである場合(S51、YES)、プロセッサ21は、受信したバイナリ読出コマンドの「P1」および「P2」に格納された値に応じてデータの読出処理を実行する。
【0064】
すなわち、バイナリ読出コマンドを受信した場合(S51、YES)、プロセッサ21は、当該コマンドで指定される読出対象とするデータのファイル(EF)が存在するか否かを判定する(S53)。バイナリ読出コマンドで指定されたEFが存在しない場合(S53、NO)、プロセッサ21は、指定されたデータ(EF)が存在しないことを示すステータスワードを当該コマンドの送信元である上位装置へ送信し(S54)、次のコマンドの受信待ち状態となる。
【0065】
受信したバイナリ読出コマンドで指定されたデータ(EF)が存在する場合(S53、YES)、プロセッサ21は、指定されたEFに対する読み出しアクセス権を確認する(S55)。例えば、プロセッサ21は、指定されたEFに対する読み出しアクセス権を
図15に示すようなEF管理テーブルに格納されている情報を参照して確認する。
【0066】
バイナリ読出コマンドで指定されたEFに対する読み出しアクセス権を満たしていない場合(S56、NO)、プロセッサ21は、バイナリ読出コマンドで指定されたEFからのデータの読出しが不可であると判断する。この場合、プロセッサ21は、指定されたEFのデータを読み出す権限(アクセス権)がないことを示すステータスワードを当該バイナリ読出コマンドの送信元である上位装置へ送信し(S57)、次のコマンドの受信待ち状態となる。
【0067】
また、バイナリ読出コマンドで指定されたEFに対するアクセス権を満たしている場合(S56、YES)、プロセッサ21は、当該コマンドで指定されたEFのデータを読み出す(S58)。例えば、プロセッサ21は、EF管理テーブルに格納された情報を参照し、当該コマンドで相対アドレスとして指定される読出開始位置から当該EFのデータを読み出す。データを読み出すと、プロセッサ21は、読み出したデータと正常終了を示す情報とを含むステータスワードをバイナリ読出コマンドの送信元である上位装置へ送信し(S59)、次のコマンドの受信待ち状態となる。
【0068】
以上の処理がICカード1において生体認証が成功した場合に全てのパスワードの照合結果を照合済(照合成功)の状態とする処理例である。以上の処理によれば、生体照合の要求に応じて生体認証が成功すると、当該ICカード1に登録されているパスワードに対する照合結果を一律に照合済(照合成功)とすることでき、パスワード照合を簡単な処理でセキュリティ性が高い生体認証に置き換えることができる。また、上述した処理例によれば、ICカードは、生体認証だけでなく、パスワード照合も行えるようにすることで、生体認証機能に不具合が発生した場合であっても、パスワードでの照合を行うことができる。
【0069】
次に、ICカード1における生体認証が成功した場合に生体認証に用いた登録済みの生体情報(指紋登録データ)に紐づいたパスワードの照合結果を照合済の状態にする処理について説明する。
図17は、ICカード1における生体認証が成功した場合に生体認証に用いた指紋登録データに紐づいたパスワードの照合結果を照合済にセットする処理例を示すフローチャートである。
上述したような
図2に示す処理において、受信した照合コマンドのP1が「01」で、かつ、P2が「FE」である場合(S19、YES)、プロセッサ21は、
図3に示すように、生体認証が成功した場合に指紋登録データに紐づいたパスワードに対する照合結果を照合済にする処理を行う。
【0070】
図18は、生体認証としての指紋照合に用いる登録者の生体情報としての指紋登録データにパスワードを紐づけた対応パスワードの設定テーブルの例を示す図である。
図18に示す例では、対応パスワードの設定テーブルにおいて、1つの指紋登録データに複数のパスワード(IEF)が紐づけられている。
図18に示す例によれば、指紋登録データを用いた生体認証が成功した場合、IEF(01)のパスワードとIEF(03)のパスワードとが照合済(照合成功)の状態とされる。なお、
図18に示すような対応パスワードの設定テーブルにおいて、指紋登録データに対して全てのパスワードを紐づけるようにすれば、当該指紋登録データを用いた生体認証が成功した場合に全てのパスワードの照合結果を照合済とするようにすることもできる。
【0071】
すなわち、受信した照合コマンドのP1が「01」で、かつ、P2が「FE」である場合(S17、YES)、プロセッサ21は、
図18に示すように、対応するパスワードが設定されている指紋登録データを用いた生体認証を生体照合部12に実行させる(S61、S62)。
【0072】
例えば、プロセッサ21は、データメモリ24において対応パスワードを紐づけた状態で登録されている登録者の指紋データ(指紋登録データ)を生体照合部12へ送信し、生体照合部12に生体センサ32による指紋データ(入力指紋データ)の入力および指紋登録データと入力指紋データとの照合とを指示する。生体照合部12のMPU31は、生体センサ32により指紋データの入力し(S61)、生体センサ32で入力した指紋データ(入力指紋データ)と指紋登録データとを照合し(S62)、その照合結果をプロセッサ21へ供給する。
【0073】
プロセッサ21は、生体照合部12からの照合結果に応じて生体認証が成功したか否かを判断する。また、プロセッサ21は、LED13を生体認証の結果に応じて点灯させる。例えば、プロセッサ21は、生体照合部12における生体情報の入力および生体照合を実行中には生体認証が実行中であることを示す点灯状態でLED13を点灯させる。さらに、プロセッサ21は、生体認証が成功した場合には生体認証が成功したことを示す点灯状態でLED13を点灯させ、生体認証が失敗した場合には生体認証が失敗したことを示す点灯状態でLED13を点灯させる。
【0074】
生体照合部12での生体照合による生体認証が失敗すると(S63、NO)、プロセッサ21は、生体認証の失敗(照合NG)を示すステータスワードを生成し、生成したステータスワードを照合コマンドの送信元である上位装置へ送信し(S64)、次のコマンドの受信待ち状態となる。
【0075】
生体照合部12での生体照合による生体認証が成功すると(S63、YES)、プロセッサ21は、当該生体認証に用いた指紋登録データに紐づけられているパスワード(IEF)に対して照合結果が照合済(照合成功、OK)であることを示す情報(フラグ)を記憶する(S65)。
【0076】
図19は、
図18に示す指紋登録データに紐づけられたパスワードに対する照合結果を照合済(照合成功、OK)とした場合の照合状態テーブルの例を示す図である。
図19に示す例では、IEF(01)とIEF(03)とが照合状態が照合済となっており、それら以外のIEFに対する照合状態が未照合となっている。
図18に示すテーブルを参照すれば、プロセッサ21は、
図18に示す指紋登録データを用いた生体認証に成功した場合、当該指紋登録データに紐づけられているIEF(01)とIEF(03)との照合状態を照合済みにセットする。
【0077】
すなわち、受信した照合コマンドの第2パラメータ(P2)が「FE」である場合、プロセッサ21は、生体照合部12による生体照合が成功すると、生体照合に用いた生体登録データに紐づけられているパスワードの照合結果を照合済(照合成功)にセットする。生体認証の成功に応じて指紋登録データに紐づくパスワードの照合結果を照合済とした後、プロセッサ21は、当該照合コマンドの送信元である上位装置へ正常終了を示すステータスワードを送信し(S66)、次のコマンドの受信待ち状態となる。
【0078】
以上の処理によれば、ICカードは、生体照合を要求する照合コマンドに応じて生体認証を実行し、生体認証が成功した場合に当該生体認証に用いた生体登録情報(指紋登録データ)に紐づけられたパスワードの照合結果を照合済(照合成功)の状態とする。これにより、ICカードは、生体照合の要求に応じた生体認証が成功すると、生体登録情報に紐づいたパスワードに対する照合結果を照合済(照合成功)とすることでき、生体登録情報に紐づけたパスワードの照合をセキュリティ性が高い生体認証に置き換えることができる。また、上述した処理例によれば、ICカードは、生体認証だけでなく、パスワード照合も行えるようにすることで、生体認証機能に不具合が発生した場合であっても、パスワードでの照合を行うことができる。
【0079】
次に、ICカード1における生体認証が成功した場合に照合コマンドにおいて指定されたIEFのパスワードの照合結果を照合済の状態にする処理について説明する。
図20は、
図2に示す処理において、ICカード1における生体認証が成功した場合にコマンドで指定されたパスワードに対する照合結果を照合済にセットする処理例を示すフローチャートである。
上述したような
図2に示す処理において、受信した照合コマンドのP1が「01」で、かつ、P2が「FF」および「FE」以外の値である場合(S19、NO)、プロセッサ21は、受信した照合コマンドのP2で指定されるIEFが存在するか否かを判断する(S71)。P2で指定されるIEFが存在しない場合(S71、NO)、プロセッサ21は、指定されたIEFが存在しないことを示すステータスワードをコマンドの送信元である上位装置へ送信し(S72)、次のコマンド待ち状態となる。
【0080】
生体認証を要求する照合コマンドのP2で指定されるIEFが存在する場合(S71、YES)、プロセッサ21は、受信した照合コマンドで指定されるIEFに対応して登録されている指紋登録データを用いた生体認証を実行する。
【0081】
プロセッサ21は、指定されたIEFに対応する指紋登録データを生体照合部12へ送信し、生体センサ32による指紋データの入力および指紋登録データと入力指紋データとの照合とを生体照合部12に指示する。生体照合部12のMPU31は、生体センサ32により指紋データの入力し(S73)、生体センサ32で入力した指紋データ(入力指紋データ)とプロセッサ21から指定される指紋登録データとを照合し(S74)、その照合結果をプロセッサ21へ供給する。
【0082】
プロセッサ21は、生体照合部12からの照合結果に応じて生体認証が成功したか否かを判断する(S75)。また、プロセッサ21は、LED13を生体認証の結果に応じて点灯させる。例えば、プロセッサ21は、生体照合部12における生体情報の入力および生体照合を実行中には生体認証が実行中であることを示す点灯状態でLED13を点灯させる。さらに、プロセッサ21は、生体認証が成功した場合には生体認証が成功したことを示す点灯状態でLED13を点灯させ、生体認証が失敗した場合には生体認証が失敗したことを示す点灯状態でLED13を点灯させる。
【0083】
指定されたIEFに対応する指紋登録データを用いた生体認証が失敗すると(S75、NO)、プロセッサ21は、指定されたIEFのパスワードに対する照合結果を示す情報を未照合の状態にリセットし(S76)、生体認証の失敗(照合NG)を示すステータスワードを照合コマンドの送信元である上位装置へ送信し(S77)、次のコマンドの受信待ち状態となる。
【0084】
例えば、
図21は、パスワードに対する照合結果を照合済(照合成功、OK)とした場合の照合状態テーブルの例を示す図である。
受信した照合コマンドのP2で指定されるIEFがIEF(01)である場合、プロセッサ21は、IEF(01)に対応する指紋登録データを用いた生体認証が失敗すると、
図21に示す照合状態テーブルのように、IEF(01)の照合状態が未照合の状態にリセットする。
【0085】
指定されたIEFに対応する指紋登録データを用いた生体認証が成功した場合(S75、YES)、プロセッサ21は、指定されたIEFのパスワードに対する照合結果を照合済(照合成功、OK)であることを示す情報(フラグ)にセットする(S78)。例えば、受信した照合コマンドのP2で指定されるIEFがIEF(02)である場合にIEF(02)に対応する指紋登録データを用いた生体認証が成功すると、プロセッサ21は、
図21に示す照合状態テーブルのように、IEF(02)の照合状態を照合済であることを示す値である「01」にセットする。
【0086】
生体認証の成功に応じて指定されたIEFのパスワードの照合結果を照合済とした後、プロセッサ21は、当該照合コマンドの送信元である上位装置へ正常終了を示すステータスワードを送信し(S79)、次のコマンドの受信待ち状態とする。
【0087】
次に、ICカード1がパスワードを格納するIEFごとに照合処理のリトライ回数に対する上限値を設定する場合について説明する。
図23は、IEFごとに登録する生体登録データを管理するための管理テーブル(登録データの管理テーブル)の構成例を示す図である。
図23に示す例において、登録データの管理テーブルでは、パスワードを格納するIEFごとに、指紋登録データ、長さ、リトライカウンタ、および、リトライカウンタの初期値を記憶する。
図23に示すようなテーブルによって、指紋登録データとパスワードとがペアで登録される。これにより、ICカード1は、コマンドで指定されたIEF(ID)のパスワードと対になる指紋登録データを用いて生成認証を実行し、その生体認証の成功に応じて対となるパスワードの照合結果を照合済みとすることができる。
【0088】
また、
図23に示す管理テーブルでは、IEFに対応する指紋登録データごとにリトライカウンタを設定する。リトライカウンタは、対応する指紋登録データによる生体認証が実行可能な残りの照合回数を示す。リトライカウンタは、許容される照合回数(照合失敗の回数)の上限値が初期値として設定され、照合が失敗するごとにカウントダウンされるものとする。これにより、リトライカウンタは、指紋登録データによる生体認証が実行可能な残りの照合回数(リトライ数)を示す値が格納される。
【0089】
また、リトライカウンタは、対となる生体登録データ(指紋登録データ)とパスワードとで共通の値としても良い。対となる生体登録データとパスワードとで共通のリトライカウンタとする場合、
図23に示す登録データの管理テーブルに記憶される生体登録データを用いた生体照合の残り回数を示すリトライカウンタは、対となるパスワードに対するパスワード照合の残り回数(対となるパスワードに対するリトライカウンタ)と共通化される。
【0090】
例えば、対となる生体登録データとパスワードとでリトライカウンタを共通化する場合、パスワード照合が失敗すると、当該パスワードと対となる生体登録データに対応するリトライカウンタもカウントダウンされる。また、生体登録データを用いた生体認証が失敗すると、当該生体登録データと対となるパスワードに対応するリトライカウンタもカウントダウンされる。
【0091】
また、リトライカウンタは、対となる生体登録データとパスワードとでそれぞれ別の値としても良い。この場合、登録データの管理テーブルにおける生体登録データを用いた生体照合の残り回数は、対となるパスワードに対するパスワード照合の残り回数とは別々にカウントされる値となる。
【0092】
例えば、対となる生体登録データとパスワードとでリトライカウンタを別々の値で管理する場合、パスワード照合が失敗すると、当該パスワードに対応するリトライカウンタはカウントダウンされるが、当該パスワードと対となる生体登録データに対応するリトライカウンタは更新されない。また、生体登録データを用いた生体認証が失敗すると、当該生体登録データに対するリトライカウンタはカウントダウンされるが、当該生体登録データと対となるパスワードに対応するリトライカウンタは更新(カウントダウン)されない。
【0093】
また、対となる生体登録データとパスワードとでリトライカウンタを別々の値で管理する場合、プロセッサ21は、対となる生体登録データ又はパスワードの何れか一方のリトライカウンタが0になる(リトライ数が上限値を超える)と、対となる生体登録データおよびパスワードの両方をロック状態するようにしても良い。これにより、ICカードは、パスワード照合のリトライ回数が上限値を超えると、当該パスワードと対となる生体登録データによる生体認証もロック状態とすることができ、生体登録データによる生体認証のリトライ数が上限値を超えると、当該生体登録データと対となるパスワードによるパスワード照合もロック状態とすることができる。
【0094】
なお、ICカード1の運用によっては、対となる生体登録データとパスワードとでリトライカウンタを別々の値で管理する場合であっても、プロセッサ21は、対となる生体登録データおよびパスワードについて、それぞれ別々にロック状態を制御するようにしても良い。すなわち、ICカードは、パスワード照合のリトライ回数が上限値を超えた場合であっても、当該パスワードと対となる生体登録データのリトライカウンタが上限値を超えていなければ生体登録データによる生体認証はロック状態としないようにしても良い。この場合、ICカード1は、生体登録データによる生体認証が成功すると、対となるパスワードに対応するリトライカウンタもリセットするようにしても良い。
【0095】
また、ICカードは、生体登録データによる生体認証のリトライ数が上限値を超えた場合であっても、当該生体登録データと対となるパスワードのリトライカウンタが上限値を超えていなければ当該パスワードによるパスワード照合もロック状態としないようにしても良い。この場合も、ICカード1は、パスワード照合が成功すると、対となる生体登録データに対応するリトライカウンタもリセットするようにしても良い。
【0096】
図22に示す処理例において、コマンドで指定されたIEFが存在する場合(S81、YES)、プロセッサ21は、指定されるIEFに対応する指紋登録データがロック状態でるか否かを判定する(S83)。例えば、プロセッサ21は、
図23に示すような登録データの管理テーブルにおいて、指定されたIEFに対応する指紋登録データに対するリトライカウンタが0であるか否かによりロック状態であるか否かを判定する。
【0097】
指定されたIEFに対応する生体認証のリトライカウンタが0である場合、つまり、ロック状態である場合(S83、YES)、プロセッサ21は、ロック状態であることを示すステータスワードをコマンドの送信元である上位装置へ送信し(S84)、次のコマンドの受信待ち状態となる。
【0098】
指定されたIEFに対応する生体認証のリトライカウンタが0でない場合、つまり、ロック状態でない場合(S83、NO)、プロセッサ21は、当該IEFに対応する指紋登録データを用いた生体認証を実行する。プロセッサ21は、指定されたIEFに対応する指紋登録データを生体照合部12へ送信し、生体センサ32による指紋データの入力および指紋登録データと入力指紋データとの照合とを生体照合部12に指示する。生体照合部12のMPU31は、生体センサ32により指紋データの入力し(S85)、生体センサ32で入力した指紋データ(入力指紋データ)とプロセッサ21から指定される指紋登録データとを照合し(S86)、その照合結果をプロセッサ21へ供給する。
【0099】
プロセッサ21は、生体照合部12からの照合結果に応じて生体認証が成功したか否かを判断する。また、プロセッサ21は、LED13を生体認証の結果に応じて点灯させる。例えば、プロセッサ21は、生体照合部12における生体情報の入力および生体照合を実行中には生体認証が実行中であることを示す点灯状態でLED13を点灯させる。さらに、プロセッサ21は、生体認証が成功した場合には生体認証が成功したことを示す点灯状態でLED13を点灯させ、生体認証が失敗した場合には生体認証が失敗したことを示す点灯状態でLED13を点灯させる。
【0100】
指定されたIEFに対応する指紋登録データを用いた生体認証が失敗すると(S87、NO)、プロセッサ21は、指定されたIEFに対応する指紋登録データを用いた生体認証のリトライカウンタをカウントダウンする(S88)。また、プロセッサ21は、当該IEFのパスワードに対する照合結果を示す情報を未照合の状態にリセットし(S89)、生体認証の失敗(照合NG)を示すステータスワードを照合コマンドの送信元である上位装置へ送信し(S90)、次のコマンドの受信待ち状態となる。
【0101】
指定されたIEFに対応する指紋登録データを用いた生体認証が成功した場合(S87、YES)、プロセッサ21は、当該コマンドで指定されたIEFに対応する指紋登録データを用いた生体認証のリトライカウンタをリセットすることによりリトライカウンタの値を初期値にする(S91)。また、プロセッサ21は、生体認証の成功に応じて当該コマンドで指定されたIEFのパスワードに対する照合結果を照合済(照合成功、OK)であることを示す情報(フラグ)にセットする(S92)。生体認証の成功に応じて指定されたIEFのパスワードの照合結果を照合済とした後、プロセッサ21は、当該照合コマンドの送信元である上位装置へ正常終了を示すステータスワードを送信し(S93)、次のコマンドの受信待ち状態とする。
【0102】
以上の処理によれば、ICカードは、生体照合を要求する照合コマンドに応じて指定されたIEFに対応する生体(指紋)登録データを用いて生体認証を実行し、生体認証が成功した場合に当該IEFのパスワードの照合結果を照合済(照合成功)とする。これにより、ICカードは、指定したIEFのパスワード照合をセキュリティ性が高い生体認証に置き換えることができる。この結果、生体認証に用いる指紋登録データとパスワードとを対で管理でき、指定するパスワードの照合を予めペアに設定した生体情報による生体認証に置き換えることができる。
【0103】
また、上述の処理例によれば、生体登録データごとに生体認証のリトライカウンタを設定でき、生体登録データごとに生体認証を制限できる。生体登録データごとに設ける生体認証のリトライカウンタは、対となるパスワードによるパスワード照合に対するリトライカウンタと共通化することで、対となるパスワードと生体登録データとを1組の認証データとして認証回数を制限することができる。
【0104】
また、生体登録データごとに設ける生体認証のリトライカウンタは、対応するパスワードによるパスワード照合に対するリトライカウンタと別々に設けることもできる。この場合、ICカードは、対となるパスワードと生体登録データとの何れか一方のリトライカウンタが認証回数の上限を超えた場合、対となるパスワードと生体登録データとの両方をロック状態する制御が可能である。
【0105】
次に、照合コマンド以外の特定コマンドを受信した場合に生体認証を実行する処理例について説明する。
上述した処理例では、生体認証を要求する照合コマンドを受信した場合に生体認証の成功をパスワードの照合結果に反映させる処理について説明した。ただし、ICカード1は、照合コマンド以外の特定コマンドを受信した場合に生体認証を実行するようにしても良い。ここで、実施形態に係る携帯可能電子装置としてのICカード1が生体認証を実行する特定コマンドとして初期応答後の最初に受信したコマンド(第1コマンド)およびセレクトコマンドを受信した場合に、コマンドの処理に先立って生体認証を行う場合について説明する。
【0106】
図24は、ICカード1がセレクトコマンドを受信した場合に生体認証を実行する処理例を説明するためのフローチャートである。
まず、ICカード1は、上位装置との通信を開始する場合、上位装置からの電源電力の供給を受けて起動する。ICカード1のプロセッサ21は、上位装置から供給される電力によって起動した後、上位装置に対して初期応答を通信インターフェース25を介して送信する(S101)。
【0107】
プロセッサ21は、初期応答を送信した直後に自己診断処理として生体(指紋)センサ32が正常に動作するかをチェックする(S102)。自己診断処理により指紋センサ32が正常に動作しないことを確認した場合、プロセッサ21は、指紋センサ32の自己診断結果として指紋センサが異常であることを記憶する(S104)。また、自己診断処理により指紋センサ32が正常に動作すること確認した場合、プロセッサ21は、指紋センサ32の自己診断結果として指紋センサが正常であることを記憶する(S105)。例えば、プロセッサ21は、RAM23又はデータメモリ24に指紋センサ32の自己診断結果を記憶する。
【0108】
ICカード1のプロセッサ21は、初期応答後(自己診断後)、コマンドの受信待ち状態となる(S106)。この状態において上位装置からコマンドを受信した場合(S106、YES)、プロセッサ21は、受信したコマンドがセレクトコマンドであるか否かを判定する(S107)。受信したコマンドがセレクトコマンドでない場合(S107、NO)、プロセッサ21は、S114へ進み、受信したコマンドに応じたコマンド処理を実行する。
【0109】
受信したコマンドがセレクトコマンドである場合(S107、YES)、プロセッサ21は、自己診断処理で指紋センサ32が正常であったか否かを判定する(S109)。自己診断処理で指紋センサ32が異常であった場合(S109、NO)、プロセッサ21は、S114へ進み、受信したコマンド(セレクトコマンド)に応じた処理を実行する。
【0110】
自己診断処理で指紋センサ32が正常であった場合(S109、YES)、プロセッサ21は、S114へ進み、データメモリ24に登録されている指紋登録データを用いた生体認証を実行する。プロセッサ21は、指紋登録データを生体照合部12へ送信し、生体センサ32による指紋データの入力および指紋登録データと入力指紋データとの照合とを生体照合部12に指示する。この場合、プロセッサ21は、LED13を生体(指紋)照合中であることを示す点灯状態で点灯させる。
【0111】
生体照合部12のMPU31は、生体センサ32により指紋データの入力し(S110)、生体センサ32で入力した指紋データ(入力指紋データ)とプロセッサ21から指定される指紋登録データとを照合し(S111)、その照合結果をプロセッサ21へ供給する。
【0112】
プロセッサ21は、生体照合部12の照合結果に基づいて生体認証の成否を判定する。プロセッサ21は、LED13を生体認証の結果に応じて点灯させる。例えば、プロセッサ21は、生体認証が成功した場合には生体認証が成功したことを示す点灯状態でLED13を点灯させ、生体認証が失敗した場合には生体認証が失敗したことを示す点灯状態でLED13を点灯させる。
【0113】
生体認証(照合)が成功した場合(S112、YES)、プロセッサ21は、生体認証の認証結果を反映させるパスワードの照合結果を照合済にセットする(S113)。例えば、プロセッサ21は、生体認証の成功に応じて全てのパスワードの照合結果を照合済にセットする。また、プロセッサ21は、セレクトコマンドが選択されるDFの配下にあるIEFのパスワードの照合結果を照合済にセットするようにしても良い。プロセッサ21は、生体認証(照合)の成功に応じてパスワードの照合結果を照合済にセットした後、当該コマンドで要求されるコマンド処理を実行する(S114)。
【0114】
また、生体認証(照合)が失敗した場合(S112、NO)、プロセッサ21は、パスワードの照合結果を変更することなく、受信したコマンドに応じたコマンド処理を実行する(S114)。
コマンド処理が終了すると、プロセッサ21は、コマンド処理の実行結果を示すステータスワードを上位装置へ送信し(S115)、次のコマンド待ち状態となる。
【0115】
以上の処理によれば、ICカードは、セレクトコマンドを受信した場合に生体認証を実行し、生体認証が成功すればパスワードの照合結果を照合済とする処理を実行する。これにより、ICカードは、上位装置から生体認証を要求する照合コマンドを受信しなくてもセレクトコマンドを受信した場合に生体認証を実行することができる。これにより、生体認証あるいはパスワード照合を上位装置からICカードへ供給する処理を省略でき、さらに生体認証によるセキュリティの向上を望める。
【0116】
次に、照合コマンド以外の特定コマンドを受信した場合に生体認証を実行し、生体認証が成功しなければコマンド処理を実行しないようにする処理例について説明する。
図25乃至32は、ICカード1が特定コマンドを受信した場合に実行する生体認証が成功しなければコマンド処理を実行しない処理例を説明するためのフローチャートである。
図25は、照合コマンド以外の特定のコマンドとして、初期応答後の最初のコマンド(第1コマンド)を受信した場合に生体認証を実行するものする。
【0117】
まず、ICカード1は、上位装置からの電源電力の供給を受けて起動する。ICカード1のプロセッサ21は、上位装置から供給される電力によって起動した後、上位装置に対して初期応答を通信インターフェース25を介して送信する(S121)。
【0118】
初期応答後、ICカード1のプロセッサ21は、初期応答後(自己診断後)、コマンドの受信待ち状態となる。ただし、プロセッサ21は、初期応答後に
図24のS102-S105で説明したような生体(指紋)センサ32の自己診断処理を実行しても良い。
【0119】
コマンドの受信待ち状態において上位装置からのコマンドを受信した場合(S122、YES)、プロセッサ21は、受信したコマンドが初期応答後の最初のコマンドであるか否かを判定する(S123)。ここで、初期応答後の最初のコマンド(第1コマンド)は、生体認証を行う特定コマンドとする。受信したコマンドが第1コマンドでない場合(S123、NO)、プロセッサ21は、S129へ進み、受信したコマンドに応じたコマンド処理を実行する。
【0120】
受信したコマンドが第1コマンドである場合(S123、YES)、プロセッサ21は、データメモリ24に登録されている指紋登録データを用いた生体認証を実行する。プロセッサ21は、指紋登録データを生体照合部12へ送信し、生体センサ32による指紋データの入力および指紋登録データと入力指紋データとの照合とを生体照合部12に指示する。このような生体認証を実行中において、プロセッサ21は、LED13を生体(指紋)照合中であることを示す点灯状態で点灯させる。
【0121】
生体照合部12のMPU31は、生体センサ32により指紋データの入力し(S125)、生体センサ32で入力した指紋データ(入力指紋データ)とプロセッサ21から指定される指紋登録データとを照合し(S126)、その照合結果をプロセッサ21へ供給する。プロセッサ21は、生体照合部12の照合結果に基づいて生体認証の成否を判定する。また、プロセッサ21は、LED13を生体認証の結果に応じて点灯させる。例えば、プロセッサ21は、生体認証が成功した場合には生体認証が成功したことを示す点灯状態でLED13を点灯させ、生体認証が失敗した場合には生体認証が失敗したことを示す点灯状態でLED13を点灯させる。
【0122】
生体認証(照合)が成功した場合(S127、YES)、プロセッサ21は、生体認証の成功に応じてパスワードの照合結果を照合済にセットする処理を行う(S128)。生体認証の成功に応じてパスワードの照合結果を照合済にセットした後、プロセッサ21は、当該コマンドで要求されるコマンド処理を実行する(S129)。コマンド処理が終了すると、プロセッサ21は、コマンド処理の実行結果を示すステータスワードを上位装置へ送信し(S130)、次のコマンド待ち状態となる。
【0123】
生体認証(照合)が失敗した場合(S127、NO)、プロセッサ21は、当該コマンド処理を実行せずに、次のコマンド待ち状態となる。この場合、プロセッサ21は、受信したコマンドに対する応答として生体認証が成功しなかったためにコマンドが実行できなかったことを示すステータスワードを上位装置へ送信するようにしても良い。
なお、初期応答後の最初のコマンドによって実行した生体認証が成功しなかった場合、プロセッサ21は、次に受信するコマンドも特定コマンドとしてS125の処理へ進み、生成認証を実行するようにしても良い。
【0124】
図26は、
図25に示す処理の第1の変形例としての処理の流れを示すフローチャートである。
図26に示す処理は、
図25の処理例と同様に、照合コマンド以外の特定のコマンドとして、初期応答後の最初のコマンド(第1コマンド)を受信した場合に生体認証を実行する処理である。ただし、
図26に示す処理は、生体認証が失敗した場合に再度生体認証を実行する点が
図25に示す処理例と異なる。
【0125】
すなわち、
図26に示す処理例において、ICカード1のプロセッサ21は、生体認証(照合)が失敗した場合、S125へ戻り、生体センサ32による指紋データの入力を改めて実行し(S125)、生体センサ32が改めて入力した指紋データ(入力指紋データ)とプロセッサ21から指定される指紋登録データとの生体照合を再度実行する(S126)。
【0126】
なお、
図26に示す処理例において、プロセッサ21は、指紋データの入力および照合を連続して実行する回数が所定上限回数を超える場合に、S130へ進み、受信したコマンドに対する応答として生体認証が成功しなかったためにコマンドが実行できなかったことを示すステータスワードを上位装置へ送信するようにしても良い。
以上のような第1の変形例によれば、ICカード1は、生体センサ32による指紋データの入力に不具合があった場合に、再度の指紋データの入力および照合を行えるようになる。
【0127】
図27は、
図25に示す処理の第2の変形例としての処理の流れを示すフローチャートである。
図27は、照合コマンド以外の特定のコマンドとしてセレクトコマンドを受信した場合に生体認証を実行する処理例を示す。ただし、
図27に示す処理は、照合コマンド以外の特定のコマンドをセレクトコマンドする点以外は
図25に示す処理例と同様である。
【0128】
すなわち、
図27に示す処理例において、ICカード1のプロセッサ21は、受信したコマンドがセレクトコマンドである場合(S124、YES)、S125へ進み、データメモリ24に登録されている指紋登録データを用いた生体認証を実行する。また、受信したコマンドがセレクトコマンド以外のコマンドである場合(S124、NO)、プロセッサ21は、S129へ進み、受信したコマンドに応じた処理を実行する。
以上のような第2の変更例によれば、ICカード1は、セレクトコマンドを受信した場合に生体認証を実行するようにすることができる。
【0129】
図28は、
図25に示す処理の第3の変形例としての処理の流れを示すフローチャートである。
図28は、
図27の処理例と同様に、照合コマンド以外の特定のコマンドとしてセレクトコマンドを受信した場合に生体認証を実行する処理例を示す。ただし、
図28に示す処理は、生体認証が失敗した場合に再度生体認証を実行する点が
図27に示す処理例と異なる。
【0130】
すなわち、
図28に示す処理例において、ICカード1のプロセッサ21は、セレクトコマンドを受信した後に実行する生体認証(照合)が失敗した場合(S127、NO)、S125へ戻り、生体センサ32による指紋データの入力を改めて実行し(S125)、生体センサ32が改めて入力した指紋データ(入力指紋データ)とプロセッサ21から指定される指紋登録データとの生体照合を再度実行する(S126)。
【0131】
なお、
図28に示す処理例において、プロセッサ21は、指紋データの入力および照合を連続して実行する回数が所定上限回数を超える場合に、S130へ進み、生体認証が成功しなかったためにセレクトコマンドが実行できなかったことを示すステータスワードを生体認証の失敗を示すステータスワードを上位装置へ送信するようにしても良い。
以上のような第3の変形例によれば、ICカード1は、セレクトコマンドを受信した場合に生体認証を実行するようにすることができ、さらに、生体センサ32による指紋データの入力に不具合があった場合には再度の指紋データの入力および照合を行えるようになる。
【0132】
また、
図29乃至32は、
図25乃至28に示す処理のさらなる変形例としての第4乃至7の変形例を示すフローチャートである。例えば、
図29は、
図25に示す処理の第4の変形例であり、
図25に示す処理におけるS128の処理を省略した場合の処理例を示す。
図30は、
図25に示す処理の第5の変形例であり、
図26に示す処理におけるS128の処理を省略した場合の処理例を示す。
図31は、
図25に示す処理の第6の変形例であり、
図27に示す処理におけるS128の処理を省略した場合の処理例を示す。
図32は、
図25に示す処理の第7の変形例であり、
図28に示す処理におけるS128の処理を省略した場合の処理例を示す。
【0133】
すなわち、ICカード1は、
図26乃至32に示すように、生体認証(照合)が成功した場合にパスワードの照合結果を照合済にセットする処理を省略するようにしても良い。この場合、ICカードは、第1コマンドあるいはセレクトコマンドなどの特定コマンドを受信した場合、生体認証(照合)が成功した場合にコマンド処理を実行でき、生体認証(照合)が失敗した場合にはコマンド処理を実行しないようにすることができる。
【0134】
以上の処理によれば、ICカードは、初期応答後の最初のコマンド又はセレクトコマンドなどの特定コマンドを受信した場合に生体認証を実行し、生体認証が成功すればコマンド処理を実行し、生体認証が失敗すれば当該コマンドに対するコマンド処理を実行しないようにする。これにより、ICカードは、第1コマンドやセレクトコマンドなどの特定コマンドを受信した場合に実行する生体認証が成功しなければ、コマンド処理を実行しないようにすることができる。
【0135】
また、ICカードは、初期応答後の最初のコマンド又はセレクトコマンドなどの特定コマンドを受信した場合に実行する生体認証が成功すればパスワードの照合結果を照合済にセットしてコマンド処理を実行するようにできる。これにより、ICカードは、特定コマンドに応じて実行する生体認証が成功すればパスワードの照合結果を照合済にセットすることでき、コマンド処理の高速化を図ることができる。
【0136】
上述の各実施形態で説明した機能は、ハードウエアを用いて構成するに留まらず、ソフトウエアを用いて各機能を記載したプログラムをコンピュータに読み込ませて実現することもできる。また、各機能は、適宜ソフトウエア、ハードウエアのいずれかを選択して構成するものであっても良い。
【0137】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0138】
1…ICカード(携帯可能電子装置)、C…本体、M…モジュール、11…制御部、12…生体照合部、13…LED、21…プロセッサ、22…ROM、23…RAM、24…データメモリ(第1メモリ、第2メモリ)、25…通信インターフェース、31…MPU、32…生体センサ(指紋センサ)。