説明

ICカード

【課題】 本発明の目的は、ICカードとリーダライタ間の通信処理時間を短縮することができるICカードを提供することである。
【解決手段】 ICカード2は、ステップ205で、最大通信速度識別子を最大通信速度より1段階遅くした通信速度を示す通信速度パラメータに書き換え、書き換えた最大通信速度識別子を保存するとともに、カウントダウンまたはカウントアップした通信エラーの発生回数をクリアする。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ICカードに関するものである。
【背景技術】
【0002】
ICカードは、情報記録媒体として様々な分野で利用されており、例えば、学生証、社員証、免許証などの個人身分証明書等に用いられている。ICカードには、カード基材にICチップとアンテナを内蔵し、電波を用いて外部機器との情報のやり取りを行う非接触型ICカードと、ICチップと電気的に接続する外部接触端子を備え、ICチップを樹脂封止して内蔵したICモジュールをカード基材に設け、外部接触端子を介して外部機器との情報のやり取りを行う接触型ICカードと、非接触型ICカード及び接触型ICカードの両方の通信手段を備えた、接触非接触共用型ICカードがある。
【0003】
非接触型ICカード、接触型ICカード、接触非接触共用型ICカードの何れのICカードも、専用のリーダライタを介して通信をし、情報のやり取りを行う。ICカード用リーダライタ(以下、リーダライタと記す。)は、パーソナルコンピュータや、各種情報処理及び各種演算装置等で構成される上位装置に接続され、ICカードから得た情報を上位装置に送り、上位装置からの必要な情報をICカードに送る働きをする。これら、ICカード、リーダライタ、上位装置等で構成されるシステムをICカードシステムと呼ぶ。
【0004】
ICカードシステムでは、1つのリーダライタに対して通信速度が異なる複数のICカードが使用される場合があり、ICカードとリーダライタが通信するためには、ICカードの通信速度とリーダライタの通信速度を一致させる必要がある。
【0005】
1つのリーダライタに対して通信速度の異なる複数のICカードが使用される場合において、ICカードの通信速度とリーダライタの通信速度を一致させる手段を備えたICカードが、特許文献1に記載されている。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2001−312699号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
近年、ICカードシステムは、多様なアプリケーションの普及に伴って、処理の高速化が望まれている。特に、ICカードとリーダライタ間の通信を高速化することが望まれている。しかしながら、従来のICカードでは、ICカードとリーダライタ間の通信速度を最大通信速度とした際、ICカードの電気的特性のばらつきや、リーダライタの電気的特性のバラツキ等の影響で通信状態が不安定となり、通信で授受する情報の一部に欠落が生じて通信エラーが発生する場合がある。ICカード及びリーダライタは、この通信エラーに対して、通信リトライと呼ばれる、規定時間内で繰り返し再送受信を行う処理を行っている。その為、ICカード及びリーダライタは、最大通信速度で通信を行うと、正常な通信を図るために通信処理時間が増えてしまう場合があるという問題がある。更に、ICカード及びリーダライタは、通信リトライ処理後も正常な通信が得られなかった場合、通信速度を下げて最適化処理を行う必要があり、更に通信処理時間が増える場合がある。特に、ICカード及びリーダライタは、通信リトライ処理中に正常な情報の授受が一度でも行えた場合、この通信速度を下げる最適化処理が行われず、通信の都度、通信リトライ処理を伴うために通信処理時間が長くなってしまう場合があるという問題があった。
【0008】
更に、従来のICカードは、ICカードの通信速度の設定値上限を示す通信速度パラメータ等の情報をリーダライタに供給するだけであり、当該通信の前の通信において、通信速度を下げて最適化処理を行ったICカードであっても、一旦通信が終了し、通信が再開した場合には、最適化された通信速度が設定されて通信が再開されるのではなく、当該通信の前の通信と同様に、ICカードから得た通信速度の設定値上限が設定されて通信が再開されるため、通信リトライ処理が発生する可能性が高く、通信時間が長くなってしまう場合があるという問題があった。
【0009】
本発明は、これら問題点を鑑みなされたものであって、その目的は、ICカードとリーダライタ間の通信処理時間を短縮することができるICカードを提供することである
【課題を解決するための手段】
【0010】
本発明のICカードとリーダライタは、ISO/IEC7816及びISO/IEC14443等で標準化されている、ICカードとリーダライタ間の通信規約(プロトコル)を基本技術としている。本発明のICカードとリーダライタ間の通信フローは、ICカードとリーダライタとの間の通信に必要な通信速度等のパラメータを設定し、通信路を確立する初期応答と呼ばれる処理部分と、各種アプリケーションに応じた情報の授受を行う活性化状態と呼ばれる処理部分で構成される。
【0011】
ICカードとリーダライタ間の基本の通信フローは、初めにリーダライタからICカードにコマンドと呼ばれる情報を送り、そのコマンドを受けて、ICカードからリーダライタにレスポンスと呼ばれる情報を返す。ICカードとリーダライタは、この基本の通信フローを繰り返して通信をし、情報の授受を行う。
【0012】
ICカード及びリーダライタの通信では、ICカードの通信速度とリーダライタの通信速度を一致させる必要があり、ICカードとリーダライタの最初の通信に用いる通信速度は、予め、ICカードとリーダライタの共通する最低の通信速度とし、それをICカードとリーダライタの基本通信速度とする。
【0013】
ISO/IEC7816及びISO/IEC14443等に準拠した通信規約(プロトコル)に基づいたICカードとリーダライタでは、一般に、リーダライタが、通信速度の設定値上限を含む通信速度パラメータの情報をICカードから得て、ICカード及びリーダライタ間の通信速度を通信速度の設定値上限に設定する。その後、通信で授受する情報の一部欠落による通信エラー、つまり、通信速度に起因する通信エラーが発生した場合には、通信リトライ処理を行う。更に、通信リトライ処理後も通信エラーが発生する場合、リーダライタは、通信速度の設定値上限未満の通信速度に設定し直す、つまり通信速度を下げることで、通信エラーを解消し、通信を正常に再開する。
【0014】
このようなICカードの基本技術について、図2を参照して詳細に説明する。
【0015】
図2は、ICカードの基本技術を説明する通信フローを示す図であり、ISO/IEC7816及びISO/IEC14443に準拠したICカードの、リーダライタとの間の通信フローを示している。尚、図2では、リーダライタとリーダライタに接続する上位装置間の通信を省略して説明する。
【0016】
図2において、ICカード4及びリーダライタ3は、使用可能な通信速度パラメータとして通信速度を段階的に変えた通信速度パラメータを複数備え、ICカード4及びリーダライタ3には駆動電力が供給され、ICカード4及びリーダライタ3が使用できる通信速度パラメータの中で、一番遅い通信速度パラメータが示す通信速度を基本通信速度に設定している。
【0017】
ICカードとリーダライタ間の通信フローは、図2のように、まず、リーダライタ3は、ステップ301で、ICカードとリーダライタとの通信路を確立する為に必要なパラメータ等を含む情報の送信を指示する第1のコマンドS101を、基本通信速度でICカード4に送信する。その後、リーダライタ3は、ステップ301からステップ302に移行する。
【0018】
次に、ICカード4は、ステップ401で第1のコマンドS101を受信する。その後、ICカード4は、ステップ401からステップ402に移行し、ステップ402で、ICカード4及びリーダライタ3が使用できる通信速度パラメータの内、最も速い最大通信速度を示す最大通信速度パラメータを最大通信速度識別子に設定し、最大通信速度識別子を含む情報である第1のレスポンスS102をリーダライタ3に送信する。その後、ICカード4は、ステップ402からステップ403に移行する。
【0019】
次に、リーダライタ3は、ステップ302で第1のレスポンスS102を受信する。その後、リーダライタ3は、ステップ302からステップ303に移行する。
【0020】
次に、リーダライタ3は、ステップ303で、受信した第1のレスポンスS102の最大通信速度識別子から最大通信速度を得て、通信速度を最大通信速度に変更する通信速度変更機能を有する第2のコマンドS103をICカード4に送信する。その後、リーダライタ3は、ステップ303からステップ304に移行する。
【0021】
次に、ICカード4は、ステップ403で第2のコマンドS103を受信する。その後、ICカード4は、ステップ403からステップ404に移行し、ステップ404で、第2のコマンドS103を受信したことを示す第2のレスポンスS104をリーダライタ3に送信する。
【0022】
次に、ICカード4は、第2のレスポンスS104の送信後、ステップ404からステップ405に移行し、ステップ405で、ICカード4の通信速度を基本通信速度から最大通信速度に変更する。その後、ICカード4は、ステップ405からステップ406に移行する。
【0023】
次に、リーダライタ3は、ステップ304で第2のレスポンスS104を受信する。その後、リーダライタ3は、ステップ304からステップ305に移行する。
【0024】
次に、リーダライタ3は、ステップ305で、リーダライタ3の通信速度を基本通信速度から最大通信速度に変更する。その後、リーダライタ3は、ステップ305からステップ306に移行する。
【0025】
次に、リーダライタ3は、ステップ306で、任意のアプリケーションに対応した情報の授受を行う処理機能を有する第3のコマンドS105をICカード4に送信する。その後、リーダライタ3は、ステップ306からステップ307に移行する。
【0026】
次に、ICカード4は、ステップ406で第3のコマンドS105を受信する。その後、ICカード4は、ステップ406からステップ407に移行し、ステップ407で、第3のコマンドS105に基づき、任意のアプリケーションに対応した情報を含む第3のレスポンスS106をリーダライタ3に送信する。
【0027】
次に、リーダライタ3は、ステップ307で第3のレスポンスS106を受信し、第3のレスポンスS106から任意のアプリケーションに対応した情報を得ることができる。
【0028】
以降、ICカード4は、上述のように、ステップ306、ステップ406、ステップ407、ステップ307と、順に処理するルーチンを繰り返すことにより、リーダライタ3との間で情報の授受を繰り返し行うことが可能である。
【0029】
ICカード4及びリーダライタ3間の通信が終了した後で通信を再開する場合には、ICカード4は、ステップ401の処理から改めて行い、リーダライタ3は、ステップ301の処理から改めて行う。
【0030】
ICカード4及びリーダライタ3の通信速度を変更する場合には、次のような処理を行う。まず、リーダライタ3は、図2のように、ステップ1303に移行し、最大通信速度より1段階遅くした通信速度に変更する通信速度変更機能を有する第4のコマンドS1103をICカード4に送信する。その後、リーダライタ3は、ステップ1303からステップ1304に移行する。
【0031】
次に、ICカード4は、ステップ1403で、第4のコマンドS1103を受信する。その後、ICカード4は、ステップ1403からステップ1404に移行し、ステップ1404で、第4のコマンドS1103を受信したことを示す第4のレスポンスS1104をリーダライタ3に送信する。
【0032】
次に、ICカード4は、第4のレスポンスS1104の送信後、ステップ1404からステップ1405に移行し、ステップ1405で、ICカード4の通信速度を最大通信速度より1段階遅くした通信速度に変更する。
【0033】
以降、ICカード4は、最大通信速度より1段階遅くした通信速度で通信できる。
【0034】
ICカード4の第4のレスポンスS1104の送信後、リーダライタ3は、ステップ1304で、第4のレスポンスS1104を受信する。その後、リーダライタ3は、ステップ1304からステップ1305に移行し、ステップ1305で、リーダライタ3の通信速度を最大通信速度より1段階遅くした通信速度に変更する。
【0035】
以降、リーダライタ3は、最大通信速度より1段階遅くした通信速度で通信できる。
【0036】
高速の通信で発生する通信エラーは、ICカードの電気的特性とリーダライタの電気的特性のズレ、つまり不一致によって引き起こされる場合がある。リーダライタでは、構成する電気回路に電気的特性の値を調整できる電子部品を設けることで、複数のリーダライタの電気特性をほぼ同一にすることが可能である。しかし、ICカードは、非接触型ICカードのように、樹脂からなるカード基体にカード基材にICチップとアンテナを内蔵する構成や、接触型ICカードのように、外部接触端子を有する基板に設けたICチップを樹脂封止して内蔵したICモジュールを用いる構成からなり、ICカードを構成するICチップ及びアンテナ等の電気的特性の値を調整する機能を有しておらず、ICカードが有する電気的特性は固定である。つまり、ICカードは、固有の電気的特性を持つ。
【0037】
本発明では、ICカードにリーダライタ間の通信速度の設定値上限を示す最大通信速度識別子を設け、この最大通信速度識別子に、リーダライタ間の通信速度を段階的に変えた2つ以上の通信速度パラメータの内、最も速い最大通信速度を示す最大通信速度パラメータを書き込み、最大通信速度パラメータを書き込んだ最大通信速度識別子をリーダライタに送信する。その後、リーダライタは、最大通信速度識別子から最大通信速度パラメータの示す最大通信速度を得て、ICカードとリーダライタ間の通信速度に最大通信速度を設定し、通信を行う。
【0038】
本発明のICカードは、ICカードとリーダライタ間の通信において、発生する通信エラーの回数を、通信エラーの発生毎にカウントアップまたはカウントダウンし、予め設定した閾値以上または閾値以下となった場合に、最大通信速度識別子を最大通信速度パラメータから、最大通信速度より1段階またはそれ以上遅い通信速度を示す通信速度パラメータに書き換え、更に、次回書き換え時まで、書き換えた最大通信速度パラメータを保存する。
【0039】
本発明のICカードは、書き換えた最大通信速度パラメータを保存した後、一旦通信を終了し、通信を再開した場合に、最大通信速度より1段階またはそれ以上遅い通信速度を示す通信速度パラメータに書き換えた最大通信速度識別子をリーダライタに与えることができるので、ICカードとリーダライタ間の通信速度を最大通信速度より1段階またはそれ以上遅い通信速度に設定することが可能となり、ICカードとリーダライタ間の通信に発生する通信エラーを抑制することができる。
【0040】
本発明によれば、リーダライタとの通信速度を設定する通信速度パラメータを2つ以上備えたICカードであって、前記リーダライタとの通信速度の設定値上限を示す最大通信速度識別子を設け、前記最大通信速度識別子に前記通信速度パラメータの中で最も速い通信速度を示す最大通信速度パラメータを書き込み、前記リーダライタを介して前記最大通信速度識別子の示す通信速度を前記リーダライタとの通信速度に設定して通信を行い、前記リーダライタとの通信に発生する通信エラーの回数を計数し、前記通信エラーの回数が予め定めた回数に達した場合に、前記最大通信速度識別子を前記最大通信速度パラメータより遅い通信速度を示す前記通信速度パラメータに書き換え、前記リーダライタとの通信速度を下げることを特徴とするICカードが得られる。
【0041】
また、本発明によれば、前記最大通信速度識別子は、次回書き換え時まで、書き換えた情報を保存する機能を備えたことを特徴とする上記のICカードが得られる。
【発明の効果】
【0042】
本発明によれば、リーダライタとの通信速度を設定する通信速度パラメータを2つ以上備え、リーダライタとの通信エラーの発生回数が予め定めた回数に達した場合に、最大通信速度識別子に書き込む通信速度パラメータを一段階以上遅くした通信速度パラメータに書き換え、保存することで、通信を再開する際に、当該通信の前の通信で最適化した通信速度パラメータを最大通信速度識別子から得て使用することができ、通信リトライ処理を減らし、ICカードとリーダライタ間の通信処理時間を短縮することができるICカードが得られる。
【図面の簡単な説明】
【0043】
【図1】本発明のICカードに係るリーダライタとの間の通信フローを示す図。
【図2】ICカードの基本技術を説明する通信フローを示す図。
【発明を実施するための形態】
【0044】
本発明のICカードの実施の形態について、図1を参照して説明する。図1は、本発明のICカードに係るリーダライタとの間の通信フローを示す図である。
【0045】
本発明のICカードに係る実施の形態の通信フローにおいて、図2に示した通信フローの内、リーダライタの通信速度を基本通信速度から最大通信速度に変更するステップ301からステップ305までの処理部分と、ICカードの通信速度を基本通信速度から最大通信速度に変更するステップ401からステップ405までの処理部分と、リーダライタの通信速度を最大通信速度より1段階遅くした通信速度に変更するステップ1303からステップ1305までの処理部分と、ICカードの通信速度を最大通信速度より1段階遅くした通信速度に変更するステップ1403からステップ1405までの処理部分は、共通する処理であり、図1では、これら処理の説明を省略して説明する。
【0046】
まず、リーダライタ1は、図1のように、ステップ101で、リーダライタ1の通信速度を最大通信速度に変更する。その後、リーダライタ1は、ステップ101からステップ102に移行する。尚、ステップ101の処理は、図2のステップ301からステップ305までの処理に該当する。
【0047】
次に、リーダライタ1は、ステップ102で、任意のアプリケーションに対応した情報の送信を指示する第5のコマンドS1をICカード2に送信する。その後、リーダライタ1は、ステップ102からステップ103に移行する。
【0048】
次に、ICカード2は、ステップ201で、ICカード2の通信速度を最大通信速度に変更する。その後、ICカード2は、ステップ201からステップ202に移行する。尚、ステップ201の処理は、図2のステップ401からステップ405までの処理に該当する。
【0049】
次に、ICカード2は、ステップ202で、第5のコマンドS1を受信し、第5のコマンドS1の情報に通信エラーが発生していないかを、情報の誤りを検出するコード(EDC)等を用いて確認し、通信エラーの発生を未検出の場合には、NOと記した矢印の処理のステップ207に移行し、通信エラーの発生を検出した場合には、YESと記した矢印の処理のステップ203に移行する。
【0050】
次に、ステップ202からステップ207に移行したICカード2は、ステップ207で、第5のコマンドS1に基づき任意のアプリケーションに対応した情報を含む第6のレスポンスS3をリーダライタ1に送信する。
【0051】
次に、リーダライタ1は、ステップ1103で、第6のレスポンスS3を受信する。その後、リーダライタ1は、ステップ1103からステップ1104に移行する。
【0052】
次に、リーダライタ1は、ステップ1104で、第6のレスポンスS3に通信エラーの発生を示す情報の有無を確認し、通信エラーの発生を示す情報がない場合には、NOと記した矢印の処理のステップ107に移行し、通信エラーの発生を示す情報がある場合には、YESと記した矢印の処理のステップ105に移行する。
【0053】
次に、リーダライタ1は、第6のレスポンスS3に通信エラーの発生を示す情報がないので、ステップ1104からステップ107に移行し、ステップ107で、第6のレスポンスS3から任意のアプリケーションに対応した情報を得る。
【0054】
次に、ステップ202からステップ203に移行したICカード2は、ステップ203で、通信エラーが発生した場合の通信エラーの発生回数をカウントアップ、あるいはカウントダウンのどちらかの方法で計数する。その後、ICカード2は、ステップ203からステップ204に移行する。
【0055】
次に、ICカード2は、ステップ204で、通信エラーの発生回数と予め設定した閾値との比較を行い、カウントアップした通信エラーの発生回数が閾値未満、あるいはカウントダウンした通信エラーの発生回数が閾値より大きい場合には、NOと記した矢印の処理のステップ206に移行し、カウントアップした通信エラーの発生回数が閾値以上、あるいはカウントダウンした通信エラーの発生回数が閾値以下の場合には、ステップ205に移行する。
【0056】
次に、ステップ204からステップ205に移行したICカード2は、ステップ205で、最大通信速度識別子を最大通信速度より1段階遅くした通信速度を示す通信速度パラメータに書き換え、書き換えた最大通信速度識別子を保存するとともに、カウントダウンまたはカウントアップした通信エラーの発生回数をクリアする。ICカード2は、最大通信速度識別子を保存する手段として、ICカードを構成するICチップの読み出し書き込みが可能な不揮発性メモリ等を用いることができる。
【0057】
次に、ICカード2は、最大通信速度識別子を書き換えた後、ステップ205からステップ206に移行する。
【0058】
次に、ステップ204及びステップ205からステップ206に移行したICカード2は、ステップ206で、通信エラーの発生を示す第5のレスポンスS2をリーダライタ1に送信する。
【0059】
次に、リーダライタ1は、ステップ103で、第5のレスポンスS2を受信する。その後、リーダライタ1は、ステップ103からステップ104に移行する。
【0060】
次に、リーダライタ1は、ステップ104で、第5のレスポンスS2に通信エラーの発生を示す情報の有無を確認し、通信エラーの発生を示す情報があるので、YESと記した矢印の処理のステップ105に移行する。
【0061】
次に、リーダライタ1は、第5のレスポンスS2に通信エラーを示す情報があるので、ステップ104からステップ105に移行する。
【0062】
次に、リーダライタ1は、ステップ105で、第5のレスポンスS2の入力が規定時間内の入力かどうかを確認し、規定時間内の場合には、YESと記した矢印の処理のステップ102に移行し、規定時間を越えている場合には、NOと記した矢印の処理のステップ106に移行する。
【0063】
次に、ステップ105からステップ102に移行したリーダライタ1は、ステップ102で、再度、任意のアプリケーションに対応した情報の送信を指示する第5のコマンドS1をICカード2に送信し、通信リトライ処理を行う。
【0064】
次に、ステップ105からステップ106に移行したリーダライタ1は、ステップ106で、通信を終了する。尚、ステップ106の処理は、リーダライタ及び上位装置の指示に従い、通信速度の変更等の処置を行っても良い。
【0065】
以上の構成によって、通信を再開する際に、通信速度パラメータを一段階以上遅くした通信速度パラメータ、つまり当該通信処理の前に行った通信処理で最適化した通信速度パラメータを最大通信速度識別子から得て使用することができ、通信リトライ処理を減らし、ICカードとリーダライタ間の通信処理時間を短縮することができるICカードが得られる。
【0066】
以上、図面を用いて本発明の実施の形態を説明したが、本発明は、この実施の形態に限られるものでなく、本発明の趣旨を逸脱しない範囲で部材や構成の変更があっても本発明に含まれる。すなわち、当事者であれば、当然なしえるであろう各種変形、修正もまた本発明に含まれることは勿論である。
【符号の説明】
【0067】
2、4 ICカード
1、3 リーダライタ
S101 第1のコマンド
S102 第1のレスポンス
S103 第2のコマンド
S104 第2のレスポンス
S105 第3のコマンド
S106 第3のレスポンス
S1103 第4のコマンド
S1104 第4のレスポンス
S1 第5のコマンド
S2 第5のレスポンス
S3 第6のレスポンス
101、102、103、104、105、106、107、201、202、203、204、205、206、207、301、302、303、304、305、306、307、401、402、403、404、405、406、407、1103、1104、1303、1304、1305、1403、1404、1405 ステップ

【特許請求の範囲】
【請求項1】
リーダライタとの通信速度を設定する通信速度パラメータを2つ以上備えたICカードであって、前記リーダライタとの通信速度の設定値上限を示す最大通信速度識別子を設け、前記最大通信速度識別子に前記通信速度パラメータの中で最も速い通信速度を示す最大通信速度パラメータを書き込み、前記リーダライタを介して前記最大通信速度識別子の示す通信速度を前記リーダライタとの通信速度に設定して通信を行い、前記リーダライタとの通信に発生する通信エラーの回数を計数し、前記通信エラーの回数が予め定めた回数に達した場合に、前記最大通信速度識別子を前記最大通信速度パラメータより遅い通信速度を示す前記通信速度パラメータに書き換え、前記リーダライタとの通信速度を下げることを特徴とするICカード。
【請求項2】
前記最大通信速度識別子は、次回書き換え時まで、書き換えた情報を保持する機能を備えたことを特徴とする請求項1に記載のICカード。

【図1】
image rotate

【図2】
image rotate