説明

ICカード及びICカード用のコンピュータプログラム

【課題】WarmResetによってRAMの内容が消去されるICチップを使用した場合であっても、ColdReset後のPPS処理手続きによって通信プロトコルが変更された後にWarmResetを受信した際、PPS処理手続きを実行することなく、WarmResetを受信する前の通信プロトコルを再開することのできるICカードを提供する。
【解決手段】ICカード1は、ColdReset後のPPS処理手続きにて通信パラメータを選択すると、選択した通信パラメータを電気的に書き換え可能な不揮発性メモリに記憶しておき、ColdReset後にWarmResetを受けると、前記不揮発性メモリに記憶されている通信パラメータとSpecificModeが少なくとも示されるWarmATRを生成して送信した後(S24)、前記不揮発性メモリに記憶されている通信パラメータに従う通信プロトコルに設定する(S26)。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ICカードの伝送制御に関し、更に詳しくは、WarmReset時にRAMが消去されても前回の通信パラメータをWarmATRへ反映させ、WarmResetを受ける前の通信プロトコルを再開するための技術に関する。
【背景技術】
【0002】
接触式のICカードとターミナル間における伝送制御手順では、国際規格ISO/IEC7816-3 にて定義されている以下の手続きが実行される。
手順1. ターミナルはIC カードへリセット信号を送信する。
手順2. IC カードはリセット信号を受信する。
手順3. IC カードはターミナルへATRを送信する。
手順4. ターミナルはATRを受信する。
手順5. 通信プロトコルを変更する。
手順6. ターミナルはICカードへメッセージを送信する。
手順7. IC カードはターミナルへメッセージを送信する。
【0003】
伝送制御手順の手順1においてターミナルが実施するリセット動作には2種類の方式が存在する。電源投入後の最初のリセット動作であるColdReset と、ColdReset以外のリセット動作であるWarmResetである。
【0004】
伝送制御手順の手順3においてICカードがターミナルへ送信するATR (Answer To Reset:初期応答情報) は、主に通信プロトコルに関するICカードの性能を現し、このATRにもColdATRとWarmATRの2 種類が存在する。ColdATRはColdResetに対する応答で、WarmATRはWarmResetに対する応答で、これらのATR送信には、ICカードとターミナル間で予め定義されているデフォルトの通信プロトコルが使用される。
【0005】
伝送制御手順の手順5におけるICカードの動作モードには2つのモードが存在し、いずれの方式を選択しているかは、ICカードから応答されるATRに記述されており、ターミナルはATRの記述に従わなければならない。
【0006】
1つはNegociableModeと称される動作モードで、このNegociableModeでは、ターミナルとICカードがお互いに実行可能な通信パラメータを交換し、その中から最適なものがPPS(Protocol and Parameter Selection) によって選択される。NegociableModeでは、ターミナルとICカードはお互いの合意に基づいて通信プロトコルを変更するため、通信プロトコルの変更に失敗する可能性は極めて低く、NegociableModeは、オープンなシステムに使用されることが多い。
【0007】
もう一つはSpecificModeと称される動作モードで、このSpecificModeでは、ICカードからターミナルへ変更する通信パラメータを通知し、ATR送信完了後に、明示的な変更指示を交換することなく、ICカードは該通信パラメータに基づく通信プロトコルに変更する。SpecicModeでは、ターミナルがATRで示される通信プロトコルをサポートしていない場合、通信プロトコルの設定に失敗するため、SpecicModeはクローズドなシステムに使用されることが多い。
【0008】
このように、オープンなシステムであれば、Cold ATR(Negotiable Mode) →PPS →Warm ATR(Negotiable Mode) →PPSの流れが最も安定して動作するが、リセットから通信プロトコル変更完了までの間にPPSを必要とするため、通信プロトコルが確定するまでに時間を要してしまう。
【0009】
一方で、ColdATR(SpecificMode) → WarmATR(SpecificMode)の流れであれば、最も速く通信プロトコル変更が完了するものの、ターミナルが必ずしもICカードの要求する通信プロトコルをサポートしているわけではないため、安定して動作しない可能性が高い。
【0010】
これを解消すべく、ETSI(欧州電気通信標準化機構) は、非特許文献1の仕様において「Type 2 UICC」なるICカードを定義している。ETSIが定義した「Type 2 UICC」に準拠したICカードは、ColdReset後のPPSによって通信プロトコルが変更された後にWarmResetを受信すると、直前まで動作していた通信プロトコルを瞬時に再開するために、直前の通信にて使用されていた通信パラメータとSpecificModeが示されるATRを応答し、このときの流れは、ColdATR(NegotiableMode) → PPS → WarmATR(SpecificMode)になり、これを実現するためのICカードの挙動は以下のような手順になる。
手順 1.ColdResetを受信
手順 2.RAMを初期化
手順 3.通信プロトコルをデフォルトに設定
手順 4.ColdATRを送信
手順 5.PPS要求を受信
手順 6.通信パラメータを選択
手順 7.通信パラメータをRAMに保存
手順 8.PPS応答を送信
手順 9.通信プロトコルを変更
手順10.データ交換
手順11.WarmResetを受信
手順12.直前に使用していた通信パラメータをRAMから取得
手順13.WarmATRを生成
手順14.通信プロトコルをデフォルトに設定
手順15.WarmATRを送信
手順16.通信プロトコルを変更
手順17.データ交換
【0011】
上述したICカードの挙動では、ColdReset後のPPSによって選択した通信パラメータはRAMに保存され、その後にWarmResetを受けると、RAMに保存している通信パラメータとSpecificModeが示されるATRを応答するため、WarmResetが実施されても、RAMに保存している通信パラメータの内容が消去されないようにする必要があり、ETSIの仕様に対応するように設計された接触式のICカード用ICチップでは、WarmResetが実施されてもRAMの内容が消去されないようにハードウェア設計されているものもある。
【0012】
しかし、汎用の接触式のICカード向けに設計されたICチップの中には、WarmResetによってRAMの内容が初期化されてしまうものが存在するため、この場合には、WarmResetの後であればNegotiableModeに留まり、直前の通信にて使用されていた通信パラメータとSpecificModeが示されるATRを応答するのではなく、PPSによる通信プロトコルの変更が実施されるため、WarmResetによってRAMの内容が初期化されてしまうICチップを実装したICカードでは、前述したICカードの挙動を実現できなかった。
【0013】
なお、ターミナルとICカード間の通信プロトコルの変更に基づいて処理を変更する発明としては、特許文献1、2において、変更後の通信プロトコル(例えば、伝送速度)に基づいて選択するアプリケーションを変更する発明が開示されているが、上記問題に着目した発明ではない。
【先行技術文献】
【特許文献】
【0014】
【特許文献1】特開2004−139244号公報
【特許文献2】特開2005−11008号公報
【非特許文献】
【0015】
【非特許文献1】ETSI TS 102 221 V9.2.0 (2010-10): Technical Specification Smart Cards; UICC-Terminal interface; Physical and logical characteristics(Release 9)
【発明の概要】
【発明が解決しようとする課題】
【0016】
そこで、本発明は、WarmResetによってRAMの内容が消去されるICチップを使用した場合であっても、ColdReset後のPPS処理手続きによって通信プロトコルが変更された後にWarmResetを受信した際、PPS処理手続きを実行することなく、WarmResetを受信する前に用いていた通信プロトコルを再開することのできるICカード及びICカード用のコンピュータプログラムを提供する。
【課題を解決するための手段】
【0017】
上述した課題を解決する第1の発明は、ColdReset後のPPS処理手続きにて通信パラメータを選択すると、選択した通信パラメータを電気的に書き換え可能な不揮発性メモリに記憶しておき、ColdReset後にWarmResetを受けると、前記不揮発性メモリに記憶されている通信パラメータとSpecificModeが少なくとも示されるWarmATRを生成して送信した後、前記不揮発性メモリに記憶されている通信パラメータに従う通信プロトコルに設定する伝送制御手段を備えたことを特徴とするICカードである。
【0018】
更に、第2の発明は、ColdReset後のPPS処理手続きにて通信パラメータを選択すると、選択した通信パラメータを電気的に書き換え可能な不揮発性メモリに記憶しておき、ColdReset後にWarmResetを受けると、前記不揮発性メモリに記憶されている通信パラメータとSpecificModeが少なくとも示されるWarmATRを生成して送信した後、前記不揮発性メモリに記憶されている通信パラメータに従う通信プロトコルに設定する伝送制御手段としてICカードのICチップを機能させるためのコンピュータプログラムである。
【発明の効果】
【0019】
上述した本発明に係るICカードによれば、ColdReset後のPPS処理手続きにて決定した通信パラメータは不揮発性メモリに保存され、WarmResetを受けた後、不揮発性メモリに保存された通信パラメータに基づいてICカードの通信プロトコルが設定されるため、WarmResetによって揮発性メモリの内容が消去されてしまうICチップであっても、ColdReset後のPPS処理手続きによって通信プロトコルが変更された後にWarmResetを受信した際、PPS処理手続きを実行することなく、WarmResetを受信する前に用いていた通信プロトコルを再開することができるようになる。
【図面の簡単な説明】
【0020】
【図1】本実施形態に係る接触式のICカードの構造を説明する図。
【図2】ICモジュールに実装されているICチップを説明する図。
【図3】ICチップのメモリの内容を説明する図。
【図4】本実施形態に係るICカードのステートチャートを説明する図。
【図5】ColdReset時のフローチャートを説明する図。
【図6】PPS処理手続き時のフローチャートを説明する図。
【図7】WarmReset受信時のフローチャートを説明する図。
【発明を実施するための形態】
【0021】
ここから、本発明に係る接触式のICカードの好適な実施形態について、図面を参照しながら詳細に説明する。なお、これから説明する実施形態は本発明の一実施形態にしか過ぎず、本発明は,これから説明する実施形態に限定されることなく、種々の変形や変更が可能である。
【0022】
図1は、本実施形態に係る接触式のICカード1の構造を説明する図である。本実施形態に係るICカード1はICモジュール2が実装されたカードで、このICモジュール2には、ISO/IEC 7816-1に準じて接触端子2bが設けられた接続基板2a上にICチップ3がモールドされた状態で実装され、ICチップ3のそれぞれ入出力端子は、ICチップ3の入出力端子に対応する接続基板2a上の接触端子2bとワイヤボンディング2cで接続している。
【0023】
なお、図1において、ICカード1の形状をISO/IEC 7816-2で規格化されているIDカード型として図示しているが、ICカード1の形状は、ISO/IEC 7816-2で規格化されているPlug-in型でもよく、また、Mini型であってもよい。
【0024】
図2は、ICモジュール2に実装されているICチップ3を説明する図である。図2に示したようにICチップ3には、演算機能等を有するCPU30(Central Processing Unit)と、時間を計測するタイマー31、ターミナル4との伝送制御の機能を担うUART32に加え、メモリとして、ROM34(Read Only Memory)、EEPROMのように電気的に書換え可能な不揮発性メモリ35(以下、単に「NVM」と記す。NVM: Non Volatile Memory)、RAM33(Random Access Memory)を備えている。
【0025】
図3は、ICチップ3のメモリの内容を説明する図である。図3(a)は、ICチップ3のROM34の内容を説明する図で、ROM34には、オペレーティングシステムのプログラムコード34aが実装され、このオペレーティングシステムのプログラムコード34aにはターミナル4と伝送制御を行う伝送制御手段として機能する伝送制御モジュール10が含まれる。
【0026】
図3(b)は、ICチップ3のNVM35の内容を説明する図で、ICチップ3のNVM35は、オペレーティングシステムが利用するデータを格納するオペレーティングシステム領域35aとアプリケーションに係るデータを格納するアプリケーション領域35bとに分割され、オペレーティングシステム領域35aには、ColdReset後のPPS処理手続きにてICカード1が選択した通信パラメータ(ここでは、伝送プロトコル及び伝送速度)を格納する通信パラメータ格納領域11が設けられる。
【0027】
図4は、本実施形態に係るICカード1のステートチャートを説明する図である。通信プロトコルの変更に係る動作モードであるNegotiableModeとSpecificModeのモード間遷移は、図4のステートチャートによって表現され、ICカード1のRAM33には、ICカード1が遷移している動作モードを示すモードフラグが設けられる。
【0028】
ターミナル4が電源を投入し、初期状態となったICカード1は、ターミナル4がColdResetの動作を行うとNegotiableModeへと遷移し、RAM33のモードフラグは、NegotiableModeを示す値に変更される。NegotiableModeにおいてICカード1は、デフォルトの通信パラメータで決定されるデフォルトの通信プロトコルにて動作する。
【0029】
NegotiableModeにあるICカード1に対して、PPS処理手続きがなされるとICカード1とターミナル4間で通信パラメータが交換され、ICカード1は、SpecificModeに遷移し、RAM33のモードフラグがSpecificMode示す値に変更された後に、ICカード1とターミナル4間で交換された通信パラメータに応じた新たな通信プロトコルで動作する。SpecificModeにあるICカード1に対してターミナル4がWarmResetを実行すると、ICカード1は、WarmResetが行われる前に動作していた際に用いていた通信プロトコルを復元し、WarmResetが行われる前に動作していた際の通信プロトコルで動作する。
【0030】
なお、NegotiableModeにあるICカード1に対してWarmResetを実行するケースは本発明のユースケースではないが、実行された際にはデフォルトの通信プロトコルを維持したままSpecificModeにて動作するようにするとよい。
【0031】
また、NegotiableModeまたはSpecificModeにあるICカード1に対してColdResetを実行した場合は、まず電源OFFが発生し、次いで電源ONが発生し、初期状態に遷移した後にColdResetがICカード1になされ、ICカード1はNegotiableModeへ遷移する。
【0032】
図5は、ColdReset時のフローチャートを説明する図である。ターミナル4がICカード1に対してColdReset動作を行うと(S1)、ICカード1の伝送制御モジュール10は、通信パラメータ格納領域11を初期化し(S2)、通信プロトコルをデフォルトに設定する(S3)。次いで、ICカード1の伝送制御モジュール10は、動作モードを示すRAM33のフラグをNegotiableModeに設定し(S4)、デフォルトの通信プロトコルでColdATRを送信する(S5)。ColdATRの送信が完了したら、ICカード1の伝送制御モジュール10は新たなメッセージの受信を待つ(S6)。
【0033】
図6は、PPS処理手続き時のフローチャートを説明する図である。ICカード1の伝送制御モジュール10はターミナル4からPPSリクエストを受信したら(S10)、ターミナル4から受信したPPSリクエストで示される通信パラメータの中からICカード1が動作可能な通信パラメータを選定する(S11)。この際、ICカード1の伝送制御モジュール10は、ターミナル4から受信したPPSリクエストで示される伝送プロトコルのうち、ICカード1が対応している伝送プロトコルを選択し、更に、ターミナル4から受信したPPSリクエストで示される伝送速度の中から、ICカード1が動作できる最高速の伝送速度を選択するのが一般的である。
【0034】
ICカード1の伝送制御モジュール10は通信パラメータを選択すると、選定した通信パラメータをNVM35の通信パラメータ格納領域11へ記録する(S12)。そして、ICカード1の伝送制御モジュール10は、動作モードを示すRAM33のフラグをSpecificModeに設定し(S13)、選定した通信パラメータから決定したPPSレスポンスを送信し(S14)、PPSレスポンスの送信が完了したら、ICチップ3の伝送プロトコル及び伝送速度を選定した通信パラメータで示される伝送プロトコル及び伝送速度に設定することで、該通信パラメータに従って通信プロトコルを設定し(S15)、ターミナル4からの新たなメッセージの受信を待つ(S16)。
【0035】
図7は、WarmReset受信時のフローチャートを説明する図である。ターミナル4がICカード1に対してWarmReset動作を行うと(S20)、ICカード1の伝送制御モジュール10は、WarmResetが行われる前に動作していた通信プロトコルを再現するために、通信パラメータ格納領域11から通信パラメータを取得する(S21)。なお、通信パラメータが初期状態であれば(S22)、PPS処理手続きが実施されていないことを意味するため、ICカード1の伝送制御モジュール10は、デフォルトのWarmATRをNVM35から取得する(S23)。また、NVM35の通信パラメータ格納領域11に記憶されている通信パラメータが初期状態でなければ(S22)、ICカード1の伝送制御モジュール10は、該通信パラメータとSpecificModeが少なくとも示されるWarmATRを作成し(S24)、WarmResetが行われる前に動作していた通信プロトコルをWarmATR送信直後から開始する旨を外部へ通知する準備をしておく。
【0036】
そして、ICカード1の伝送制御モジュール10は、WarmATR送出後に通信プロトコルを切り替えることを意味する通信プロトコル設定情報をRAM33に設定した後(S25)、WarmATR送出のために通信プロトコルをデフォルトに設定する(S26)。
【0037】
そして、ICカード1の伝送制御モジュール10は、NegotiableModeまたはSpecificModeのいずれのモードからのWarmResetであっても、通信プロトコルの交換に係るモードを示すRAM33のフラグをSpecificModeに設定し(S27)、デフォルトの通信プロトコルでWarmATRを送信する(S28)。
【0038】
ICカード1の伝送制御モジュール10は、WarmATRの送信が完了したらRAM33の通信プロトコル設定情報を確認し(S29)、通信プロトコル設定情報が設定されていれば、ICチップ3の伝送プロトコル及び伝送速度をNVM35の通信パラメータ格納領域11に記憶されている通信パラメータに従い設定することで、WarmATRを受ける前の通信プロトコルを復元し(S30)、ターミナル4からの新たなメッセージの受信を待つ(S31)。
【0039】
このように、本実施形態に係るICカード1によれば、ColdReset後のPPS処理手続きにて決定した通信パラメータはNVM35に保存され、WarmResetを受けた後、NVM35に保存されている通信パラメータに基づいてICカード1の通信プロトコルが設定されるため、WarmResetによって揮発性メモリの内容が消去されてしまうICチップ3であっても、ColdReset後のPPS処理手続きによって通信プロトコルが変更された後にWarmResetを受信した際、PPS処理手続きを実行することなく、WarmResetを受信する前に用いていた通信プロトコルを再開することができ、ETSIの仕様「TS 102 221(V9.2.0)」における「Type 2 UICC」を実現することが可能になる。
【符号の説明】
【0040】
1 ICカード
10 伝送制御モジュール
11 通信パラメータ格納領域
2 ICモジュール
3 ICチップ
33 RAM
34 ROM
35 電気的に書き換え可能な不揮発性メモリ(NVM)
4 ターミナル


【特許請求の範囲】
【請求項1】
ColdReset後のPPS処理手続きにて通信パラメータを選択すると、選択した通信パラメータを電気的に書き換え可能な不揮発性メモリに記憶しておき、ColdReset後にWarmResetを受けると、前記不揮発性メモリに記憶されている通信パラメータとSpecificModeが少なくとも示されるWarmATRを生成して送信した後、前記不揮発性メモリに記憶されている通信パラメータに従う通信プロトコルに設定する伝送制御手段を備えたことを特徴とするICカード。
【請求項2】
ColdReset後のPPS処理手続きにて通信パラメータを選択すると、選択した通信パラメータを電気的に書き換え可能な不揮発性メモリに記憶しておき、ColdReset後にWarmResetを受けると、前記不揮発性メモリに記憶されている通信パラメータとSpecificModeが少なくとも示されるWarmATRを生成して送信した後、前記不揮発性メモリに記憶されている通信パラメータに従う通信プロトコルに設定する伝送制御手段としてICカードのICチップを機能させるためのコンピュータプログラム。


【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公開番号】特開2013−105280(P2013−105280A)
【公開日】平成25年5月30日(2013.5.30)
【国際特許分類】
【出願番号】特願2011−248070(P2011−248070)
【出願日】平成23年11月11日(2011.11.11)
【出願人】(000002897)大日本印刷株式会社 (14,506)
【Fターム(参考)】