"ColdReset後のPPS処理手続きにて通信パラメータを選択すると、選択した通信パラメータを電気的に書き換え可能な不揮発性メモリに記憶しておき、ColdReset後にWarmResetを受けると、前記不揮発性メモリに記憶されている通信パラメータとSpecificModeが少なくとも示されるWarmATRを生成して送信した後、前記不揮発性メモリに記憶されている通信パラメータに従う通信プロトコルに設定する伝送制御手段を備えたことを特徴とするICカード。ColdReset後のPPS処理手続きにて通信パラメータを選択すると、選択した通信パラメータを電気的に書き換え可能な不揮発性メモリに記憶しておき、ColdReset後にWarmResetを受けると、前記不揮発性メモリに記憶されている通信パラメータとSpecificModeが少なくとも示されるWarmATRを生成して送信した後、前記不揮発性メモリに記憶されている通信パラメータに従う通信プロトコルに設定する伝送制御手段としてICカードのICチップを機能させるためのコンピュータプログラム。そこで、本発明は、WarmResetによってRAMの内容が消去されるICチップを使用した場合であっても、ColdReset後のPPS処理手続きによって通信プロトコルが変更された後にWarmResetを受信した際、PPS処理手続きを実行することなく、WarmResetを受信する前に用いていた通信プロトコルを再開することのできるICカード及びICカード用のコンピュータプログラムを提供する。上述した課題を解決する第1の発明は、ColdReset後のPPS処理手続きにて通信パラメータを選択すると、選択した通信パラメータを電気的に書き換え可能な不揮発性メモリに記憶しておき、ColdReset後にWarmResetを受けると、前記不揮発性メモリに記憶されている通信パラメータとSpecificModeが少なくとも示されるWarmATRを生成して送信した後、前記不揮発性メモリに記憶されている通信パラメータに従う通信プロトコルに設定する伝送制御手段を備えたことを特徴とするICカードである。更に、第2の発明は、ColdReset後のPPS処理手続きにて通信パラメータを選択すると、選択した通信パラメータを電気的に書き換え可能な不揮発性メモリに記憶しておき、ColdReset後にWarmResetを受けると、前記不揮発性メモリに記憶されている通信パラメータとSpecificModeが少なくとも示されるWarmATRを生成して送信した後、前記不揮発性メモリに記憶されている通信パラメータに従う通信プロトコルに設定する伝送制御手段としてICカードのICチップを機能させるためのコンピュータプログラムである。上述した本発明に係るICカードによれば、ColdReset後のPPS処理手続きにて決定した通信パラメータは不揮発性メモリに保存され、WarmResetを受けた後、不揮発性メモリに保存された通信パラメータに基づいてICカードの通信プロトコルが設定されるため、WarmResetによって揮発性メモリの内容が消去されてしまうICチップであっても、ColdReset後のPPS処理手続きによって通信プロトコルが変更された後にWarmResetを受信した際、PPS処理手続きを実行することなく、WarmResetを受信する前に用いていた通信プロトコルを再開することができるようになる。ここから、本発明に係る接触式のICカードの好適な実施形態について、図面を参照しながら詳細に説明する。なお、これから説明する実施形態は本発明の一実施形態にしか過ぎず、本発明は,これから説明する実施形態に限定されることなく、種々の変形や変更が可能である。図1は、本実施形態に係る接触式のICカード1の構造を説明する図である。本実施形態に係るICカード1はICモジュール2が実装されたカードで、このICモジュール2には、ISOIEC78161に準じて接触端子2bが設けられた接続基板2a上にICチップ3がモールドされた状態で実装され、ICチップ3のそれぞれ入出力端子は、ICチップ3の入出力端子に対応する接続基板2a上の接触端子2bとワイヤボンディング2cで接続している。なお、図1において、ICカード1の形状をISOIEC78162で規格化されているIDカード型として図示しているが、ICカード1の形状は、ISOIEC78162で規格化されているPlugin型でもよく、また、Mini型であってもよい。図2は、ICモジュール2に実装されているICチップ3を説明する図である。図2に示したようにICチップ3には、演算機能等を有するCPU30CentralProcessingUnitと、時間を計測するタイマー31、ターミナル4との伝送制御の機能を担うUART32に加え、メモリとして、ROM34ReadOnlyMemory、EEPROMのように電気的に書換え可能な不揮発性メモリ35以下、単にNVMと記す。NVMNonVolatileMemory、RAM33RandomAccessMemoryを備えている。図3は、ICチップ3のメモリの内容を説明する図である。図3aは、ICチップ3のROM34の内容を説明する図で、ROM34には、オペレーティングシステムのプログラムコード34aが実装され、このオペレーティングシステムのプログラムコード34aにはターミナル4と伝送制御を行う伝送制御手段として機能する伝送制御モジュール10が含まれる。図3bは、ICチップ3のNVM35の内容を説明する図で、ICチップ3のNVM35は、オペレーティングシステムが利用するデータを格納するオペレーティングシステム領域35aとアプリケーションに係るデータを格納するアプリケーション領域35bとに分割され、オペレーティングシステム領域35aには、ColdReset後のPPS処理手続きにてICカード1が選択した通信パラメータここでは、伝送プロトコル及び伝送速度を格納する通信パラメータ格納領域11が設けられる。図4は、本実施形態に係るICカード1のステートチャートを説明する図である。通信プロトコルの変更に係る動作モードであるNegotiableModeとSpecificModeのモード間遷移は、図4のステートチャートによって表現され、ICカード1のRAM33には、ICカード1が遷移している動作モードを示すモードフラグが設けられる。ターミナル4が電源を投入し、初期状態となったICカード1は、ターミナル4がColdResetの動作を行うとNegotiableModeへと遷移し、RAM33のモードフラグは、NegotiableModeを示す値に変更される。NegotiableModeにおいてICカード1は、デフォルトの通信パラメータで決定されるデフォルトの通信プロトコルにて動作する。NegotiableModeにあるICカード1に対して、PPS処理手続きがなされるとICカード1とターミナル4間で通信パラメータが交換され、ICカード1は、SpecificModeに遷移し、RAM33のモードフラグがSpecificMode示す値に変更された後に、ICカード1とターミナル4間で交換された通信パラメータに応じた新たな通信プロトコルで動作する。SpecificModeにあるICカード1に対してターミナル4がWarmResetを実行すると、ICカード1は、WarmResetが行われる前に動作していた際に用いていた通信プロトコルを復元し、WarmResetが行われる前に動作していた際の通信プロトコルで動作する。なお、NegotiableModeにあるICカード1に対してWarmResetを実行するケースは本発明のユースケースではないが、実行された際にはデフォルトの通信プロトコルを維持したままSpecificModeにて動作するようにするとよい。また、NegotiableModeまたはSpecificModeにあるICカード1に対してColdResetを実行した場合は、まず電源OFFが発生し、次いで電源ONが発生し、初期状態に遷移した後にColdResetがICカード1になされ、ICカード1はNegotiableModeへ遷移する。図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。図6は、PPS処理手続き時のフローチャートを説明する図である。ICカード1の伝送制御モジュール10はターミナル4からPPSリクエストを受信したらS10、ターミナル4から受信したPPSリクエストで示される通信パラメータの中からICカード1が動作可能な通信パラメータを選定するS11。この際、ICカード1の伝送制御モジュール10は、ターミナル4から受信したPPSリクエストで示される伝送プロトコルのうち、ICカード1が対応している伝送プロトコルを選択し、更に、ターミナル4から受信したPPSリクエストで示される伝送速度の中から、ICカード1が動作できる最高速の伝送速度を選択するのが一般的である。ICカード1の伝送制御モジュール10は通信パラメータを選択すると、選定した通信パラメータをNVM35の通信パラメータ格納領域11へ記録するS12。そして、ICカード1の伝送制御モジュール10は、動作モードを示すRAM33のフラグをSpecificModeに設定しS13、選定した通信パラメータから決定したPPSレスポンスを送信しS14、PPSレスポンスの送信が完了したら、ICチップ3の伝送プロトコル及び伝送速度を選定した通信パラメータで示される伝送プロトコル及び伝送速度に設定することで、該通信パラメータに従って通信プロトコルを設定しS15、ターミナル4からの新たなメッセージの受信を待つS16。図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送信直後から開始する旨を外部へ通知する準備をしておく。そして、ICカード1の伝送制御モジュール10は、WarmATR送出後に通信プロトコルを切り替えることを意味する通信プロトコル設定情報をRAM33に設定した後S25、WarmATR送出のために通信プロトコルをデフォルトに設定するS26。そして、ICカード1の伝送制御モジュール10は、NegotiableModeまたはSpecificModeのいずれのモードからのWarmResetであっても、通信プロトコルの交換に係るモードを示すRAM33のフラグをSpecificModeに設定しS27、デフォルトの通信プロトコルでWarmATRを送信するS28。ICカード1の伝送制御モジュール10は、WarmATRの送信が完了したらRAM33の通信プロトコル設定情報を確認しS29、通信プロトコル設定情報が設定されていれば、ICチップ3の伝送プロトコル及び伝送速度をNVM35の通信パラメータ格納領域11に記憶されている通信パラメータに従い設定することで、WarmATRを受ける前の通信プロトコルを復元しS30、ターミナル4からの新たなメッセージの受信を待つS31。このように、本実施形態に係るICカード1によれば、ColdReset後のPPS処理手続きにて決定した通信パラメータはNVM35に保存され、WarmResetを受けた後、NVM35に保存されている通信パラメータに基づいてICカード1の通信プロトコルが設定されるため、WarmResetによって揮発性メモリの内容が消去されてしまうICチップ3であっても、ColdReset後のPPS処理手続きによって通信プロトコルが変更された後にWarmResetを受信した際、PPS処理手続きを実行することなく、WarmResetを受信する前に用いていた通信プロトコルを再開することができ、ETSIの仕様TS102221におけるType2UICCを実現することが可能になる。"