(57)【要約】【課題】命令が実行される前に照合試行許容回数カウンタのカウント値の正当性を確認するため、正当でないと判断した場合はあらかじめ登録された所定値に再設定することにより、照合試行許容回数の最大値よりも多くの試行が実施されることがなくなり、セキュリティ性が著しく向上する携帯可能電子装置およびＩＣカードを提供する。【解決手段】照合機能および認証機能をサポートしているＩＣカードにおいて、電源投入に基づき照合試行許容回数カウンタの正当性を確認することで、コマンドが実行される前に照合試行許容回数カウンタのカウント値の正当性を確認し、正当でないと判断した場合は照合試行許容回数カウンタをあらかじめ登録された所定値に再設定する。【選択図】      図５
2008059272.tif 000002
【特許請求の範囲】
【請求項１】
あらかじめ認証用情報を記憶している認証用情報記憶手段と、
外部から照合命令とともに照合用の認証用情報が入力されると、当該認証用情報と前記認証用情報記憶手段に記憶されている認証用情報とを照合することにより両認証用情報の間に所定の関係が成立するか否かを判定する照合手段と、
この照合手段による判定の結果、両認証用情報の間に所定の関係が成立しなかった場合、加算あるいは減算動作する照合試行許容回数カウンタと、
前記照合手段による判定の結果、両認証用情報の間に所定の関係が成立した場合、前記照合試行許容回数カウンタのカウント値をあらかじめ登録された照合試行許容回数の最大値に設定する第１の設定手段と、
当該携帯可能電子装置の電源投入に基づき、前記照合試行許容回数カウンタのカウント値が正当であるか否かを確認するカウンタ確認手段と、
このカウンタ確認手段による確認の結果、前記照合試行許容回数カウンタのカウント値が正当でない場合、前記照合試行許容回数カウンタのカウント値をあらかじめ登録された再設定値に設定する第２の設定手段と、
を具備したことを特徴とする携帯可能電子装置。
【請求項２】
あらかじめ認証用情報を記憶している認証用情報記憶手段と、
外部から照合命令とともに照合用の認証用情報が入力されると、当該認証用情報と前記認証用情報記憶手段に記憶されている認証用情報とを照合することにより両認証用情報の間に所定の関係が成立するか否かを判定する照合手段と、
この照合手段による判定の結果、両認証用情報の間に所定の関係が成立しなかった場合、加算あるいは減算動作する照合試行許容回数カウンタと、
前記照合手段による判定の結果、両認証用情報の間に所定の関係が成立した場合、前記照合試行許容回数カウンタのカウント値をあらかじめ登録された照合試行許容回数の最大値に設定する第１の設定手段と、
当該携帯可能電子装置の電源投入に基づき、最初に受信した第１命令を実行する前に前記照合試行許容回数カウンタのカウント値が正当であるか否かを確認するカウンタ確認手段と、
このカウンタ確認手段による確認の結果、前記照合試行許容回数カウンタのカウント値が正当でない場合、前記照合試行許容回数カウンタのカウント値をあらかじめ登録された再設定値に設定する第２の設定手段と、
を具備したことを特徴とする携帯可能電子装置。
【請求項３】
あらかじめ認証用情報を記憶している認証用情報記憶手段と、
外部から照合命令とともに照合用の認証用情報が入力されると、当該認証用情報と前記認証用情報記憶手段に記憶されている認証用情報とを照合することにより両認証用情報の間に所定の関係が成立するか否かを判定する照合手段と、
この照合手段による判定の結果、両認証用情報の間に所定の関係が成立しなかった場合、加算あるいは減算動作する照合試行許容回数カウンタと、
前記照合手段による判定の結果、両認証用情報の間に所定の関係が成立した場合、前記照合試行許容回数カウンタのカウント値をあらかじめ登録された照合試行許容回数の最大値に設定する第１の設定手段と、
外部から照合命令を受信すると、当該照合命令を実行する前に前記照合試行許容回数カウンタのカウント値が正当であるか否かを確認するカウンタ確認手段と、
このカウンタ確認手段による確認の結果、前記照合試行許容回数カウンタのカウント値が正当でない場合、前記照合試行許容回数カウンタのカウント値をあらかじめ登録された再設定値に設定する第２の設定手段と、
を具備したことを特徴とする携帯可能電子装置。
【請求項４】
前記カウンタ確認手段は、前記照合試行許容回数カウンタのカウント値と前記照合試行許容回数の最大値とを比較し、前記照合試行許容回数カウンタのカウント値が前記照合試行許容回数の最大値以下のとき、前記照合試行許容回数カウンタのカウント値が正当であると判定し、前記照合試行許容回数カウンタのカウント値が前記照合試行許容回数の最大値以上のとき、前記照合試行許容回数カウンタのカウント値が正当でないと判定することを特徴とする請求項１〜３のうちいずれか１つに記載の携帯可能電子装置。
【請求項５】
前記照合試行許容回数カウンタは、国際標準仕様のＩＳＯ／ＩＥＣ７８１６−４で規定されている照合機能あるいは認証機能で使用されることを特徴とする請求項１〜３のうちいずれか１つに記載の携帯可能電子装置。
【請求項６】
前記再設定値として前記照合試行許容回数の最大値を用いることを特徴とする請求項１〜３のうちいずれか１つに記載の携帯可能電子装置。
【請求項７】
前記再設定値は１回のみ試行可能とする値（１）であることを特徴とする請求項１〜３のうちいずれか１つに記載の携帯可能電子装置。
【請求項８】
前記再設定値は試行不可とする値（０）であることを特徴とする請求項１〜３のうちいずれか１つに記載の携帯可能電子装置。
【請求項９】
あらかじめ認証用情報を記憶している認証用情報記憶手段と、外部から照合命令とともに照合用の認証用情報が入力されると、当該認証用情報と前記認証用情報記憶手段に記憶されている認証用情報とを照合することにより両認証用情報の間に所定の関係が成立するか否かを判定する照合手段と、この照合手段による判定の結果、両認証用情報の間に所定の関係が成立しなかった場合、加算あるいは減算動作する照合試行許容回数カウンタと、前記照合手段による判定の結果、両認証用情報の間に所定の関係が成立した場合、前記照合試行許容回数カウンタのカウント値をあらかじめ登録された照合試行許容回数の最大値に設定する第１の設定手段と、当該ＩＣカードの電源投入に基づき、前記照合試行許容回数カウンタのカウント値が正当であるか否かを確認するカウンタ確認手段と、このカウンタ確認手段による確認の結果、前記照合試行許容回数カウンタのカウント値が正当でない場合、前記照合試行許容回数カウンタのカウント値をあらかじめ登録された再設定値に設定する第２の設定手段とを有して構成されるＩＣモジュールと、
このＩＣモジュールを収納したＩＣカード本体と、
を具備したことを特徴とするＩＣカード。
【請求項１０】
あらかじめ認証用情報を記憶している認証用情報記憶手段と、外部から照合命令とともに照合用の認証用情報が入力されると、当該認証用情報と前記認証用情報記憶手段に記憶されている認証用情報とを照合することにより両認証用情報の間に所定の関係が成立するか否かを判定する照合手段と、この照合手段による判定の結果、両認証用情報の間に所定の関係が成立しなかった場合、加算あるいは減算動作する照合試行許容回数カウンタと、前記照合手段による判定の結果、両認証用情報の間に所定の関係が成立した場合、前記照合試行許容回数カウンタのカウント値をあらかじめ登録された照合試行許容回数の最大値に設定する第１の設定手段と、当該ＩＣカードの電源投入に基づき、最初に受信した第１命令を実行する前に前記照合試行許容回数カウンタのカウント値が正当であるか否かを確認するカウンタ確認手段と、このカウンタ確認手段による確認の結果、前記照合試行許容回数カウンタのカウント値が正当でない場合、前記照合試行許容回数カウンタのカウント値をあらかじめ登録された再設定値に設定する第２の設定手段とを有して構成されるＩＣモジュールと、
このＩＣモジュールを収納したＩＣカード本体と、
を具備したことを特徴とするＩＣカード。
【請求項１１】
あらかじめ認証用情報を記憶している認証用情報記憶手段と、外部から照合命令とともに照合用の認証用情報が入力されると、当該認証用情報と前記認証用情報記憶手段に記憶されている認証用情報とを照合することにより両認証用情報の間に所定の関係が成立するか否かを判定する照合手段と、この照合手段による判定の結果、両認証用情報の間に所定の関係が成立しなかった場合、加算あるいは減算動作する照合試行許容回数カウンタと、前記照合手段による判定の結果、両認証用情報の間に所定の関係が成立した場合、前記照合試行許容回数カウンタのカウント値をあらかじめ登録された照合試行許容回数の最大値に設定する第１の設定手段と、外部から照合命令を受信すると、当該照合命令を実行する前に前記照合試行許容回数カウンタのカウント値が正当であるか否かを確認するカウンタ確認手段と、このカウンタ確認手段による確認の結果、前記照合試行許容回数カウンタのカウント値が正当でない場合、前記照合試行許容回数カウンタのカウント値をあらかじめ登録された再設定値に設定する第２の設定手段とを有して構成されるＩＣモジュールと、
このＩＣモジュールを収納したＩＣカード本体と、
を具備したことを特徴とするＩＣカード。
【請求項１２】
前記カウンタ確認手段は、前記照合試行許容回数カウンタのカウント値と前記照合試行許容回数の最大値とを比較し、前記照合試行許容回数カウンタのカウント値が前記照合試行許容回数の最大値以下のとき、前記照合試行許容回数カウンタのカウント値が正当であると判定し、前記照合試行許容回数カウンタのカウント値が前記照合試行許容回数の最大値以上のとき、前記照合試行許容回数カウンタのカウント値が正当でないと判定することを特徴とする請求項９〜１１のうちいずれか１つに記載のＩＣカード。
【請求項１３】
前記照合試行許容回数カウンタは、国際標準仕様のＩＳＯ／ＩＥＣ７８１６−４で規定されている照合機能あるいは認証機能で使用されることを特徴とする請求項９〜１１のうちいずれか１つに記載のＩＣカード。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、たとえば、書換え可能な不揮発性メモリおよびＣＰＵ（セントラル・プロセッシング・ユニット）などの制御素子を有するＩＣ（集積回路）チップを内蔵し、外部から供給されるコマンドに基づき各種処理を実行してその処理結果を外部へ出力するＩＣカードなどの携帯可能電子装置およびＩＣカードに係り、特に国際標準仕様のＩＳＯ／ＩＥＣ７８１６−４で規定されている照合機能および認証機能をサポートしている携帯可能電子装置およびＩＣカードに関する。
【背景技術】
【０００２】
最近、携帯可能電子装置として、書換え可能な不揮発性メモリとしてのＥＥＰＲＯＭ、揮発性メモリとしてのＲＡＭ、これらのメモリに対してアクセス（データの読出しおよびまたは書込み等）を行なう制御素子としてのＣＰＵ、および、ＣＰＵの動作用プログラム等を格納したＲＯＭを有し、カードリーダ・ライタを含む端末装置から供給されるコマンド（命令）に対応した処理を実行して、その処理結果を端末装置へ出力する手段を備えたＩＣチップを内蔵したＩＣカードが産業各方面で利用されている。  
一般に、この種のＩＣカードは、コマンドやレスポンスを用いて、端末装置との間でデータの入出力を行なうようになっている。
【０００３】
ところで、このようなＩＣカードにあっては、国際標準仕様のＩＳＯ／ＩＥＣ７８１６−４で規定されている照合機能および認証機能をサポートしている。照合機能は、当該ＩＣカードの所持者の正当性を確認する機能であり、認証機能は、当該ＩＣカードが使用される端末装置の正当性を確認する機能であり、不揮発性メモリ内には、固有の認証用情報（たとえば、ＰＩＮ）、および、照合可能な回数をカウントする照合試行許容回数カウンタ、および、この照合試行許容回数カウンタの設定値を示す照合試行許容回数の最大値が格納されている（たとえば、特許文献１、非特許文献１参照）。
【０００４】
すなわち、端末装置は、ＩＣカードに対し照合コマンドとともに照合用の認証用情報を送信し、ＩＣカードはその照合コマンドを受信すると、照合コマンドとともに受信した認証用情報と不揮発性メモリ内に格納されている認証用情報とを照合することにより、両認証用情報の間に所定の関係が成立するか否か、たとえば、両認証用情報が一致するか否かを判定する。判定の結果、両認証用情報が一致した場合（照合一致の場合）、照合成功（当該ＩＣカードの所有者は正当である、あるいは、当該端末装置は正当である）と判断し、照合試行許容回数カウンタのカウント値を照合試行許容回数の最大値に設定し、照合成功のステータスワードを端末装置に返す。
【０００５】
逆に、両認証用情報が一致しなかった場合（照合不一致の場合）、照合失敗（当該ＩＣカードの所有者は正当でない、あるいは、当該端末装置は正当でない）と判断し、照合試行許容回数カウンタを減算（または加算）し、照合失敗のステータスワードを端末装置に返す。  
照合試行許容回数カウンタのカウント値が所定値を超えた場合、対象の認証用情報はロックされ、以降、その対象の認証用情報をアンロックしない限り、照合することが不可能となる。
【特許文献１】特許第２５５５０９６号公報
【非特許文献１】ＩＳＯ／ＩＥＣ７８１６−４
【発明の開示】
【発明が解決しようとする課題】
【０００６】
ところが、たとえば、不揮発性メモリ内に設けられている照合試行許容回数カウンタのカウント値を書換えている際に、端末装置からの当該ＩＣカードの引き抜きなどにより電源遮断が発生した場合、あるいは、何らかの原因（データ化け等）により照合試行許容回数カウンタのカウント値が不定な値になる場合がある。
【０００７】
その場合、照合機能、認証機能は照合試行許容回数カウンタで示された回数だけ試行が行なわれてしまうため、上記不定値が照合試行許容回数の最大値よりも大きくなってしまった場合、照合試行許容回数の最大値よりも多くの試行ができてしまい、セキュリティ上の問題が発生する可能性がある。
【０００８】
そこで、本発明は、命令が実行される前に照合試行許容回数カウンタのカウント値の正当性を確認するため、正当でないと判断した場合はあらかじめ登録された所定値に再設定することにより、照合試行許容回数の最大値よりも多くの試行が実施されることがなくなり、セキュリティ性が著しく向上する携帯可能電子装置およびＩＣカードを提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の携帯可能電子装置は、あらかじめ認証用情報を記憶している認証用情報記憶手段と、外部から照合命令とともに照合用の認証用情報が入力されると、当該認証用情報と前記認証用情報記憶手段に記憶されている認証用情報とを照合することにより両認証用情報の間に所定の関係が成立するか否かを判定する照合手段と、この照合手段による判定の結果、両認証用情報の間に所定の関係が成立しなかった場合、加算あるいは減算動作する照合試行許容回数カウンタと、前記照合手段による判定の結果、両認証用情報の間に所定の関係が成立した場合、前記照合試行許容回数カウンタのカウント値をあらかじめ登録された照合試行許容回数の最大値に設定する第１の設定手段と、当該携帯可能電子装置の電源投入に基づき、前記照合試行許容回数カウンタのカウント値が正当であるか否かを確認するカウンタ確認手段と、このカウンタ確認手段による確認の結果、前記照合試行許容回数カウンタのカウント値が正当でない場合、前記照合試行許容回数カウンタのカウント値をあらかじめ登録された再設定値に設定する第２の設定手段とを具備している。
【００１０】
また、本発明のＩＣカードは、あらかじめ認証用情報を記憶している認証用情報記憶手段と、外部から照合命令とともに照合用の認証用情報が入力されると、当該認証用情報と前記認証用情報記憶手段に記憶されている認証用情報とを照合することにより両認証用情報の間に所定の関係が成立するか否かを判定する照合手段と、この照合手段による判定の結果、両認証用情報の間に所定の関係が成立しなかった場合、加算あるいは減算動作する照合試行許容回数カウンタと、前記照合手段による判定の結果、両認証用情報の間に所定の関係が成立した場合、前記照合試行許容回数カウンタのカウント値をあらかじめ登録された照合試行許容回数の最大値に設定する第１の設定手段と、当該ＩＣカードの電源投入に基づき、前記照合試行許容回数カウンタのカウント値が正当であるか否かを確認するカウンタ確認手段と、このカウンタ確認手段による確認の結果、前記照合試行許容回数カウンタのカウント値が正当でない場合、前記照合試行許容回数カウンタのカウント値をあらかじめ登録された再設定値に設定する第２の設定手段とを有して構成されるＩＣモジュールと、このＩＣモジュールを収納したＩＣカード本体とを具備している。
【発明の効果】
【００１１】
本発明によれば、命令が実行される前に照合試行許容回数カウンタのカウント値の正当性を確認するため、正当でないと判断した場合はあらかじめ登録された所定値に再設定することにより、照合試行許容回数の最大値よりも多くの試行が実施されることがなくなり、セキュリティ性が著しく向上する携帯可能電子装置およびＩＣカードを提供できる。
【発明を実施するための最良の形態】
【００１２】
以下、本発明の実施の形態について図面を参照して説明する。  
図１は、本発明の実施の形態に係る携帯可能電子装置としてのＩＣカードを取扱うＩＣカードシステムの構成例を示すものである。このＩＣカードシステムは、ＩＣカード１１をカードリーダ・ライタ１２を介してパーソナルコンピュータなどの端末装置１３と接続可能にするとともに、端末装置１３にキーボード１４、ＣＲＴディスプレイ装置１５、および、プリンタ１６を接続して構成される。
【００１３】
図２は、ＩＣカード１１の構成を示すもので、制御素子としてのＣＰＵ１０１、記憶内容が書換え可能な記憶手段（メモリ）としてのデータメモリ１０２、ワーキングメモリ１０３、プログラムメモリ１０４、および、カードリーダ・ライタ１２との通信を行なうための通信部１０５によって構成されている。そして、これらのうち、破線内の部分（ＣＰＵ１０１、データメモリ１０２、ワーキングメモリ１０３、プログラムメモリ１０４）は１つ（あるいは複数）のＩＣチップ１０６で構成され、さらに、このＩＣチップ１０６と通信部１０５とが一体的にＩＣモジュール化されて、ＩＣカード本体１１ａ内に埋設されている。
【００１４】
ＣＰＵ１０１は、各種の判定処理や判断処理およびメモリへの書込みや読出しなどのデータ処理を行なう制御部である。
【００１５】
データメモリ１０２は、アプリケーションデータなどの各種データの記憶に使用され、たとえば、ＥＥＰＲＯＭ（エレクトリカリ・イレーザブル・アンド・プログラマブル・リード・オンリ・メモリ）などの消去（書換え）可能な不揮発性メモリで構成されている。
【００１６】
ワーキングメモリ１０３は、ＣＰＵ１０１が処理を行なう際の処理データを一時的に保持するための作業用のメモリであり、たとえば、ＲＡＭ（ランダム・アクセス・メモリ）などの揮発性メモリで構成されている。
【００１７】
プログラムメモリ１０４は、たとえば、マスクＲＯＭ（リード・オンリ・メモリ）などの書換え不可能な固定メモリで構成されており、ＣＰＵ１０１の制御プログラムなどを記憶している。
【００１８】
通信部１０５は、ＩＣカード１１が非接触式（無線式）ＩＣカードの場合にはアンテナ部として構成され、リーダライタ１２から送信された変調波を非接触で受信したり外部へ変調波を発信したりするようになっている。また、この通信部１０５で受信した変調波から内部回路に供給するための電源やクロックを生成するようになっている。また、接触式ＩＣカードの場合にはコンタクト部として構成され、リーダライタ１２に設けられたＩＣカード端子部（図示しない）と接触することにより電源やクロックを得るようになっている。
【００１９】
図３は、データメモリ１０２に対する照合試行許容回数カウンタ関連データの格納例を示している。図３において、カウンタ格納領域３１１には、照合機能に使用される複数の照合試行許容回数カウンタＳＣ１，ＳＣ２、認証機能に使用される複数の照合試行許容回数カウンタＮＣ１，ＮＣ２がそれぞれ参照キー番号（参照ファイル番号）ｎ１，ｎ２に対応させて格納されている。
【００２０】
最大値格納領域３１２には、照合機能に使用される複数の照合試行許容回数の最大値ＳＭ１（たとえば、「０３」），ＳＭ２（たとえば、「０３」）、認証機能に使用される複数の照合試行許容回数の最大値ＮＭ１（たとえば、「０Ｆ」），ＮＭ２（たとえば、「０Ａ」）がそれぞれ参照キー番号（参照ファイル番号）ｎ１，ｎ２に対応させて格納されている。
【００２１】
再設定値格納領域３１３には、照合機能に使用される複数の照合試行許容回数の再設定値ＳＲ１（たとえば、最大値ＳＭ１と同じ「０３」），ＳＲ２（たとえば、「０１」）、認証機能に使用される複数の照合試行許容回数の再設定値ＮＲ１（たとえば、「０１」），ＮＲ２（たとえば、「００」）がそれぞれ参照キー番号（参照ファイル番号）ｎ１，ｎ２に対応させて格納されている。
【００２２】
認証用情報格納領域３１４には、照合機能に使用される複数の認証用情報ＳＤ１（たとえば、「１１  ２２  ３３  ４４  ５５  ６６  ７７  ８８」），ＳＤ２（たとえば、「０１  ０２  ０３  ０４」）、認証機能に使用される複数の認証用情報ＮＤ１（たとえば、「１２  ３４  ５６  ７８  ９Ａ  ＢＣ  ＤＥ  Ｆ０」），ＮＤ２（たとえば、「８０  ００  ００  ００  ００  ００  ００  ００  ０１」）がそれぞれ参照キー番号（参照ファイル番号）ｎ１，ｎ２に対応させて格納されている。
【００２３】
図４（ａ）は、認証用情報の照合を行なう際の照合コマンド（命令）のフォーマット例を示すものである。照合コマンドは、外部の端末装置１３からカードリーダ・ライタ１２を介して入力されるもので、コマンドを識別する機能などを持つ分類部（ＣＬＡ：ｃｌａｓｓ）、命令部（ＩＮＳ：ｉｎｓｔｒｕｃｔｉｏｎ）、パラメータデータ（Ｐ１、Ｐ２）、ＤＡＴＡ部のデータの長さを表すデータ長（Ｌｃ）、および、照合するデータ（ＤＡＴＡ）から構成されている。
【００２４】
ＣＬＡ部およびＩＮＳ部には、当該コマンドの種類を示す情報が格納される。図４（ａ）に示す例では、ＣＬＡ部およびＩＮＳ部には、照合コマンドであることを示す「００」および「２０」が格納されている。
【００２５】
Ｐ１部およびＰ２部には、当該コマンドの処理パラメータを示す情報が格納される。すなわち、この例の場合、Ｐ１部には、あらかじめ定められた固定情報「００」が格納され、Ｐ２部には、照合する認証用情報の参照キー番号が格納される。図４（ａ）に示す例では、Ｐ２部には、「８１（１６進数）＝１００００００１（２進数）」が格納されている。図４（ｂ）にＰ２部の指定例（バイナリイメージ）を示す。
【００２６】
Ｌｃ部には、ＤＡＴＡ部に格納されるデータ全体の長さ（データ長）を示す情報が格納される。図４（ａ）に示す例では、Ｌｃ部には、「０８」が格納されている。  
ＤＡＴＡ部には、照合用の認証用情報が格納される。図４（ａ）に示す例では、ＤＡＴＡ部には、「１１  ２２  ３３  ４４  ５５  ６６  ７７  ８８」が格納されている。
【００２７】
次に、このような構成において、電源投入に基づき各カウンタの正当性を確認する動作について図５に示すフローチャートを参照して説明する。  
たとえば、ＩＣカード１１がカードリーダ・ライタ１２にセットされ、当該ＩＣカード１１に電源が投入されると（ステップＳ１）、ＣＰＵ１０１は、まず認証機能で使用する照合試行許容回数カウンタ（ＮＣ）の正当性を確認する。すなわち、データメモリ１０２に格納されている認証機能の照合試行許容回数の最大値（ＮＭ）と認証機能で使用する照合試行許容回数カウンタ（ＮＣ）のカウント値（Ｙ）とを参照キー番号ごとにそれぞれ比較する（ステップＳ２）。図３の例では、参照キー番号（ｎ１）に対応する照合試行許容回数の最大値（ＮＭ１）と照合試行許容回数カウンタ（ＮＣ１）のカウント値（Ｙ１）とが比較され、参照キー番号（ｎ２）に対応する照合試行許容回数の最大値（ＮＭ２）と照合試行許容回数カウンタ（ＮＣ２）のカウント値（Ｙ２）とが比較される。
【００２８】
ステップＳ２における比較の結果、照合試行許容回数の最大値（ＮＭ）が照合試行許容回数カウンタ（ＮＣ）のカウント値（Ｙ）よりも小さい場合、ＣＰＵ１０１は、照合試行許容回数カウンタ（ＮＣ）のカウント値（Ｙ）が不正であると判断して、照合試行許容回数カウンタ（ＮＣ）に認証機能の照合試行許容回数の再設定値（ＮＲ）を設定する（ステップＳ３）。これも参照キー番号ごとに行なう。
【００２９】
ステップＳ２における比較の結果、照合試行許容回数の最大値（ＮＭ）が照合試行許容回数カウンタ（ＮＣ）のカウント値（Ｙ）よりも大きい場合、ＣＰＵ１０１は、照合試行許容回数カウンタ（ＮＣ）のカウント値（Ｙ）が正しいと判断して、ステップＳ４に進む。また、ステップＳ３の処理が終了すると、ステップＳ４に進む。
【００３０】
ステップＳ４では、照合機能で使用する照合試行許容回数カウンタ（ＳＣ）の正当性を確認する。すなわち、データメモリ１０２に格納されている照合機能の照合試行許容回数の最大値（ＳＭ）と照合機能で使用する照合試行許容回数カウンタ（ＳＣ）のカウント値（Ｘ）とを参照キー番号ごとにそれぞれ比較する。図３の例では、参照キー番号（ｎ１）に対応する照合試行許容回数の最大値（ＳＭ１）と照合試行許容回数カウンタ（ＳＣ１）のカウント値（Ｘ１）とが比較され、参照キー番号（ｎ２）に対応する照合試行許容回数の最大値（ＳＭ２）と照合試行許容回数カウンタ（ＳＣ２）のカウント値（Ｘ２）とが比較される。
【００３１】
ステップＳ４における比較の結果、照合試行許容回数の最大値（ＳＭ）が照合試行許容回数カウンタ（ＳＣ）のカウント値（Ｘ）よりも小さい場合、ＣＰＵ１０１は、照合試行許容回数カウンタ（ＳＣ）のカウント値（Ｘ）が不正であると判断して、照合試行許容回数カウンタ（ＳＣ）に照合機能の照合試行許容回数の再設定値（ＳＲ）を設定する（ステップＳ５）。これも参照キー番号ごとに行なう。
【００３２】
ステップＳ４における比較の結果、照合試行許容回数の最大値（ＳＭ）が照合試行許容回数カウンタ（ＳＣ）のカウント値（Ｘ）よりも大きい場合、ＣＰＵ１０１は、照合試行許容回数カウンタ（ＳＣ）のカウント値（Ｘ）が正しいと判断して、ステップＳ６に進む。また、ステップＳ５の処理が終了すると、ステップＳ６に進む。
【００３３】
ステップＳ６では、当該ＩＣカード１１が接触式ＩＣカードであれば、初期応答データをカードリーダ・ライタ１２へ送信し、非接触式ＩＣカードであれば、ＩＳＯ１１４３で規定されているアンチコリジョン処理を行なう。
【００３４】
その後、各通信方式により、カードリーダ・ライタ１２を介してコマンドが入力されると（ステップＳ７）、ＣＰＵ１０１は、それに応じたコマンド処理を行ない（ステップＳ８）、その処理結果を示すレスポンスデータをカードリーダ・ライタ１２へ送信し（ステップＳ９）、ステップＳ７に戻って上記同様な動作を繰り返す。
【００３５】
このように、電源投入に基づきに照合試行許容回数カウンタの正当性を確認することで、コマンドが実行される前に照合試行許容回数カウンタのカウント値の正当性を確認するため、正当でないと判断した場合はあらかじめ登録された所定値に再設定することにより、照合試行許容回数の最大値よりも多くの試行が実施されることがなくなり、セキュリティ性が著しく向上する。
【００３６】
次に、電源投入に基づき、最初に受信した第１コマンドを実行する前に各カウンタの正当性を確認する動作について図６に示すフローチャートを参照して説明する。  
たとえば、ＩＣカード１１がカードリーダ・ライタ１２にセットされ、当該ＩＣカード１１に電源が投入されると（ステップＳ１１）、ＣＰＵ１０１は、当該ＩＣカード１１が接触式ＩＣカードであれば、初期応答データをカードリーダ・ライタ１２へ送信し、非接触式ＩＣカードであれば、ＩＳＯ１１４３で規定されているアンチコリジョン処理を行なう（ステップＳ１２）。
【００３７】
その後、各通信方式により、カードリーダ・ライタ１２を介して電源投入に基づく最初のコマンド（第１コマンド）が入力されると（ステップＳ１３）、ＣＰＵ１０１は、それに応じたコマンド処理を行なう前に、まず認証機能で使用する照合試行許容回数カウンタ（ＮＣ）の正当性を確認する。すなわち、データメモリ１０２に格納されている認証機能の照合試行許容回数の最大値（ＮＭ）と認証機能で使用する照合試行許容回数カウンタ（ＮＣ）のカウント値（Ｙ）とを参照キー番号ごとにそれぞれ比較する（ステップＳ１４）。図３の例では、参照キー番号（ｎ１）に対応する照合試行許容回数の最大値（ＮＭ１）と照合試行許容回数カウンタ（ＮＣ１）のカウント値（Ｙ１）とが比較され、参照キー番号（ｎ２）に対応する照合試行許容回数の最大値（ＮＭ２）と照合試行許容回数カウンタ（ＮＣ２）のカウント値（Ｙ２）とが比較される。
【００３８】
ステップＳ１４における比較の結果、照合試行許容回数の最大値（ＮＭ）が照合試行許容回数カウンタ（ＮＣ）のカウント値（Ｙ）よりも小さい場合、ＣＰＵ１０１は、照合試行許容回数カウンタ（ＮＣ）のカウント値（Ｙ）が不正であると判断して、照合試行許容回数カウンタ（ＮＣ）に認証機能の照合試行許容回数の再設定値（ＮＲ）を設定する（ステップＳ１５）。これも参照キー番号ごとに行なう。
【００３９】
ステップＳ１４における比較の結果、照合試行許容回数の最大値（ＮＭ）が照合試行許容回数カウンタ（ＮＣ）のカウント値（Ｙ）よりも大きい場合、ＣＰＵ１０１は、照合試行許容回数カウンタ（ＮＣ）のカウント値（Ｙ）が正しいと判断して、ステップＳ１６に進む。また、ステップＳ１５の処理が終了すると、ステップＳ１６に進む。
【００４０】
ステップＳ１６では、照合機能で使用する照合試行許容回数カウンタ（ＳＣ）の正当性を確認する。すなわち、データメモリ１０２に格納されている照合機能の照合試行許容回数の最大値（ＳＭ）と照合機能で使用する照合試行許容回数カウンタ（ＳＣ）のカウント値（Ｘ）とを参照キー番号ごとにそれぞれ比較する。図３の例では、参照キー番号（ｎ１）に対応する照合試行許容回数の最大値（ＳＭ１）と照合試行許容回数カウンタ（ＳＣ１）のカウント値（Ｘ１）とが比較され、参照キー番号（ｎ２）に対応する照合試行許容回数の最大値（ＳＭ２）と照合試行許容回数カウンタ（ＳＣ２）のカウント値（Ｘ２）とが比較される。
【００４１】
ステップＳ１６における比較の結果、照合試行許容回数の最大値（ＳＭ）が照合試行許容回数カウンタ（ＳＣ）のカウント値（Ｘ）よりも小さい場合、ＣＰＵ１０１は、照合試行許容回数カウンタ（ＳＣ）のカウント値（Ｘ）が不正であると判断して、照合試行許容回数カウンタ（ＳＣ）に照合機能の照合試行許容回数の再設定値（ＳＲ）を設定する（ステップＳ１７）。これも参照キー番号ごとに行なう。
【００４２】
ステップＳ１６における比較の結果、照合試行許容回数の最大値（ＳＭ）が照合試行許容回数カウンタ（ＳＣ）のカウント値（Ｘ）よりも大きい場合、ＣＰＵ１０１は、照合試行許容回数カウンタ（ＳＣ）のカウント値（Ｘ）が正しいと判断して、ステップＳ１８に進む。また、ステップＳ１７の処理が終了すると、ステップＳ１８に進む。
【００４３】
ステップＳ１８では、ステップＳ１３で受信した第１コマンドに対するコマンド処理を行ない、その処理結果を示すレスポンスデータをカードリーダ・ライタ１２へ送信する（ステップＳ１９）。
【００４４】
次に、ＣＰＵ１０１は、カードリーダ・ライタ１２を介して次のコマンド（第２コマンド）が入力されると（ステップＳ２０）、ＣＰＵ１０１は、それに応じたコマンド処理を行ない（ステップＳ２１）、その処理結果を示すレスポンスデータをカードリーダ・ライタ１２へ送信し（ステップＳ２２）、ステップＳ２０に戻って上記同様な動作を繰り返す。
【００４５】
このように、電源投入されたのに基づき、最初に受信した第１コマンドを実行する前に照合試行許容回数カウンタの正当性を確認することで、コマンドが実行される前に照合試行許容回数カウンタのカウント値の正当性を確認するため、正当でないと判断した場合はあらかじめ登録された所定値に再設定することにより、照合試行許容回数の最大値よりも多くの試行が実施されることがなくなり、セキュリティ性が著しく向上する。
【００４６】
次に、照合コマンドを受信したのに基づき、当該照合コマンドを実行する前に各カウンタの正当性を確認する動作について図７に示すフローチャートを参照して説明する。  
たとえば、ＩＣカード１１がカードリーダ・ライタ１２にセットされ、当該ＩＣカード１１に電源が投入されると（ステップＳ３１）、ＣＰＵ１０１は、当該ＩＣカード１１が接触式ＩＣカードであれば、初期応答データをカードリーダ・ライタ１２へ送信し、非接触式ＩＣカードであれば、ＩＳＯ１１４３で規定されているアンチコリジョン処理を行なう（ステップＳ３２）。
【００４７】
その後、各通信方式により、カードリーダ・ライタ１２を介してコマンドが入力されると（ステップＳ３３）、ＣＰＵ１０１は、受信したコマンドは照合機能の照合コマンドか、認証機能の照合コマンド（認証コマンド）かを確認する（ステップＳ３４）。
【００４８】
この確認の結果、照合コマンド（認証コマンド）でない場合、ＣＰＵ１０１は、ステップＳ３３で受信したコマンドに対するコマンド処理を行ない（ステップＳ３５）、その処理結果を示すレスポンスデータをカードリーダ・ライタ１２へ送信し（ステップＳ３６）、ステップＳ３３に戻って上記同様な動作を繰り返す。
【００４９】
ステップＳ３４における確認の結果、たとえば、照合コマンドである場合、ＣＰＵ１０１は、当該照合コマンド処理で使用する照合試行許容回数カウンタ（ＳＣ）の正当性を確認する。すなわち、当該照合コマンドのＰ２部で指定された参照キー番号に対応する照合機能の照合試行許容回数の最大値（ＳＭ）と照合機能で使用する照合試行許容回数カウンタ（ＳＣ）のカウント値（Ｘ）とを比較する（ステップＳ３７）。たとえば、図３の例において、Ｐ２部で指定された参照キー番号が（ｎ１）である場合、それに対応する照合試行許容回数の最大値（ＳＭ１）と照合試行許容回数カウンタ（ＳＣ１）のカウント値（Ｘ１）とが比較される。
【００５０】
ステップＳ３７における比較の結果、照合試行許容回数の最大値（ＳＭ）が照合試行許容回数カウンタ（ＳＣ）のカウント値（Ｘ）よりも小さい場合、ＣＰＵ１０１は、照合試行許容回数カウンタ（ＳＣ）のカウント値（Ｘ）が不正であると判断して、照合試行許容回数カウンタ（ＳＣ）に照合機能の照合試行許容回数の再設定値（ＳＲ）を設定する（ステップＳ３８）。
【００５１】
ステップＳ３７における比較の結果、照合試行許容回数の最大値（ＳＭ）が照合試行許容回数カウンタ（ＳＣ）のカウント値（Ｘ）よりも大きい場合、ＣＰＵ１０１は、照合試行許容回数カウンタ（ＳＣ）のカウント値（Ｘ）が正しいと判断して、ステップＳ３５に進む。また、ステップＳ３８の処理が終了すると、ステップＳ３５に進む。
【００５２】
ステップＳ３５では、ステップＳ３３で受信した照合コマンドに対するコマンド処理（照合処理）を行ない、その処理結果を示すレスポンスデータをカードリーダ・ライタ１２へ送信し（ステップＳ３６）、ステップＳ３３に戻って上記同様な動作を繰り返す。
【００５３】
このように、照合コマンドを受信したのに基づき、当該照合コマンドを実行する前に照合試行許容回数カウンタの正当性を確認することで、コマンドが実行される前に照合試行許容回数カウンタのカウント値の正当性を確認するため、正当でないと判断した場合はあらかじめ登録された所定値に再設定することにより、照合試行許容回数の最大値よりも多くの試行が実施されることがなくなり、セキュリティ性が著しく向上する。
【００５４】
次に、前記ステップＳ８，Ｓ２１，Ｓ３５における各コマンド処理の１つである照合コマンド（認証コマンド）に対する処理について図８に示すフローチャートを参照して説明する。
【００５５】
まず、ＣＰＵ１０１は、受信した照合コマンドのフォーマットを確認する（ステップＳ４１）。すなわち、照合コマンドは図４に示すように構成されており、このコマンド内のＰ１部、Ｐ２部の各パラメータが正しいか否かを確認する。この確認の結果、Ｐ１部、Ｐ２部の各パラメータが想定されない値であると、パラメータエラーを意味するステータスワードをカードリーダ・ライタ１２へ送信し（ステップＳ４２）、当該処理を終了する。
【００５６】
ステップＳ４１における確認の結果、Ｐ１部、Ｐ２部の各パラメータが正しい場合、ＣＰＵ１０１は、当該照合コマンドのＰ２部で指定された参照キー番号に対応する照合機能で使用する照合試行許容回数カウンタ（ＳＣ）のカウント値（Ｘ）が「００」であるか否かを確認する（ステップＳ４３）。この確認の結果、カウント値（Ｘ）が「００」である場合、ＣＰＵ１０１は、参照キー番号で指定された参照キー（すなわち、データメモリ１０２内の認証用情報ＳＤ）はロックしていることを意味するステータスワードをカードリーダ・ライタ１２へ送信し（ステップＳ４４）、当該処理を終了する。
【００５７】
ステップＳ４３における確認の結果、カウント値（Ｘ）が「００」でない場合、ＣＰＵ１０１は、当該照合コマンドのＤＡＴＡ部に格納された照合用の認証用情報と、データメモリ１０２内の当該照合コマンドのＰ２部で指定された参照キー番号に対応する認証用情報ＳＤとを照合することにより、両認証用情報の間に所定の関係が成立するか否か、たとえば、この例では両認証用情報が一致するか否かを判定する（ステップＳ４５）。
【００５８】
この判定の結果、両認証用情報が一致した場合（照合一致の場合）、ＣＰＵ１０１は、対応する照合試行許容回数カウンタＳＣのカウント値（Ｘ）を対応する照合試行許容回数の最設定値ＳＲ（たとえば、照合試行許容回数の最大値と同じ値）に設定し（ステップＳ４６）、照合成功（ＯＫ）を意味するステータスワードをカードリーダ・ライタ１２へ送信し（ステップＳ４７）、コマンド受信ステップへ進む。
【００５９】
ステップＳ４５における判定の結果、両認証用情報が一致しない場合（照合不一致の場合）、ＣＰＵ１０１は、対応する照合試行許容回数カウンタＳＣのカウント値（Ｘ）を例えば「−１」し（ステップＳ４８）、照合不成功（ＮＧ）を意味するステータスワードをカードリーダ・ライタ１２へ送信し（ステップＳ４９）、コマンド受信ステップへ進む。
【図面の簡単な説明】
【００６０】
【図１】本発明の実施の形態に係る携帯可能電子装置としてのＩＣカードを取扱うＩＣカードシステムの構成例を示すブロック図。
【図２】ＩＣカードの構成を概略的に示すブロック図。
【図３】データメモリに対する照合試行許容回数カウンタ関連データの格納例を模式的に示す図。
【図４】認証用情報の照合を行なう際の照合コマンド（命令）のフォーマット例を模式的に示す図。
【図５】電源投入されたのに基づき各カウンタの正当性を確認する動作について説明するフローチャート。
【図６】電源投入されたのに基づき、最初に受信した第１コマンドを実行する前に各カウンタの正当性を確認する動作について説明するフローチャート。
【図７】照合コマンドを受信したのに基づき、当該照合コマンドを実行する前に各カウンタの正当性を確認する動作について説明するフローチャート。
【図８】照合コマンド（認証コマンド）に対する処理について説明するフローチャート。
【符号の説明】
【００６１】
１１…ＩＣカード（携帯可能電子装置）、１２…カードリーダ・ライタ、１３…端末装置、１４…キーボード、１５…ＣＲＴ表示部、１６…プリンタ、１０１…ＣＰＵ（制御素子、制御手段）、１０２…データメモリ（記憶手段）、１０３…ワーキングメモリ、１０４…プログラムメモリ、１０５…通信部、１０６…ＩＣチップ、１１ａ…ＩＣカード本体、３１１…カウンタ格納領域、３１２…最大値格納領域、３１３…再設定値格納領域、３１４…認証用情報格納領域。
【図１】
2008059272.tif 000003
【図２】
2008059272.tif 000004
【図３】
2008059272.tif 000005
【図４】
2008059272.tif 000006
【図５】
2008059272.tif 000007
【図６】
2008059272.tif 000008
【図７】
2008059272.tif 000009
【図８】
2008059272.tif 000010