(57)【要約】【課題】ＩＣカードのメモリ書き換え回数の増加による退避領域のメモリ劣化を防ぐ。【解決手段】ＩＣモジュールアクセス装置から受信したデータを不揮発性メモリのファイルに書込む前に前記ファイルの元データを前記不揮発性メモリの退避領域に退避して記憶する手段と、前記退避領域に記憶されている前記元データを前記ファイルに書き戻す手段を有し、前記ファイルのファイル管理情報に、前記ファイルを前記不揮発性メモリの退避領域に退避する対象にするか否かを記憶したロールバック可否識別情報を記憶したＩＣカードを用いる。【選択図】図２
2020112855.tif 000002
【特許請求の範囲】
【請求項１】
ＩＣモジュールアクセス装置とデータ交換を行う通信手段と、ファイルを記憶する不揮発性メモリを具備するＩＣカードであって、
前記ＩＣモジュールアクセス装置から受信したデータを前記不揮発性メモリの前記ファイルに書込む前に前記ファイルの元データを前記不揮発性メモリの退避領域に退避して記憶する手段と、前記退避領域に記憶されている前記元データを前記ファイルに書き戻す手段を有し、前記ファイルのファイル管理情報に、前記ファイルを前記不揮発性メモリの退避領域に退避する対象にするか否かを記憶したロールバック可否識別情報を記憶したことを特徴とするＩＣカード。
【請求項２】
請求項１記載のＩＣカードであって、前記ファイルのファイル管理情報に、前記不揮発性メモリの前記退避領域に記憶されている前記元データを前記ファイルに書き戻す処理のタイミングを、リセット時の処理、又は、それ以外のタイミングでの処理を指定して記憶したことを特徴とするＩＣカード。
【請求項３】
高セキュリティモジュール用のＩＣチップであって、
ＩＣモジュールアクセス装置とデータ交換を行う通信手段と、ファイルを記憶する不揮発性メモリを具備し、前記ＩＣモジュールアクセス装置から受信したデータを前記不揮発性メモリの前記ファイルに書込む前に前記ファイルの元データを前記不揮発性メモリの退避領域に退避して記憶する手段と、前記退避領域に記憶されている前記元データを前記ファイルに書き戻す手段を有し、前記ファイルのファイル管理情報に、前記ファイルを前記不揮発性メモリの退避領域に退避する対象にするか否かを記憶したロールバック可否識別情報を記憶したことを特徴とするＩＣチップ。
【請求項４】
請求項３記載のＩＣチップであって、前記ファイルのファイル管理情報に、前記不揮発性メモリの前記退避領域に記憶されている前記元データを前記ファイルに書き戻す処理のタイミングを、リセット時の処理、又は、それ以外のタイミングでの処理を指定して記憶したことを特徴とするＩＣチップ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＩＣチップが実装されたＩＣカードに関し、ＩＣチップに対するデータの書き込みを保証した高セキュリティモジュールのＩＣチップ及びＩＣカードに関する。
【背景技術】
【０００２】
近年、ＩＣカードがマイナンバーカードやパスポート、クレジットカード等で利用されている。ＩＣカードは自身では電源を持たず、リーダ／ライタ（Ｒ／Ｗ）等のＩＣモジュールアクセス装置がＩＣカードへ電力を供給してＩＣカードを動作させる。ＩＣカードが接触型ＩＣカードの場合は、ＩＣカードがＩＣモジュールアクセス装置の電源に直接に接続されて電源を共有して電源を得る。ＩＣカードが非接触型ＩＣカードの場合は、ＩＣカードはＩＣモジュールアクセス装置が発生する電磁界を元にして、ＩＣカードのアンテナで、その電磁界の電磁誘導による起電力によって電源を得る。
【０００３】
ＩＣカードのＩＣチップには不揮発性メモリが搭載され、その不揮発性メモリに様々なデータを保持できる仕組みになっている。ＩＣチップの不揮発性メモリへデータを書き込みまたは書き換えする場合に、例えば以下のような事象が想定される。(以後、書き込み(初期書き込み)、書き換え(データ更新) は区別せず“書き込み”と表現する)
【０００４】
（１）書き込み途中の引き抜き。
（２）書き込み途中の電源遮断。
（３）書き込み途中の誤動作。
【０００５】
これらの事象が発生して、書込み処理中にＩＣカードに供給される電流が低下及び／または遮断される場合、書込み処理が完了せず、書込み対象となる不揮発性メモリへの想定した書き込みが正しく実施されず、データが不定な状態となる場合がある。
【０００６】
そのため、従来は、特許文献１の様に、ＩＣカードは、ＩＣモジュールアクセス装置から不揮発性メモリへ書き込むデータを受信した場合に、そのデータをＩＣカードの指定されたファイルに書き込む処理を開始するまでに、そのＩＣカードのファイルの元データをＩＣカードの不揮発性メモリの退避領域に退避させて記憶する処理を行う。
【０００７】
そして、ＩＣカードは、ＩＣモジュールアクセス装置から受信したデータを、指定されたファイルに書き込む処理を実行する。その処理の際に、もし書き込みが途中で中断した場合には、次回のＩＣカードの起動時等に、退避領域に退避させておいたデータを元のファイルの領域に書き戻すことで、中断時のエラーを復旧させる。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開平１０−１８７５４９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
こうして、従来の技術では、データを書き込みファイルの元データを一旦退避することにより、書き込み前後でデータの完全性を担保するが、全てのファイルに対して、データの書き込み処理の際に、データが書き込まれるファイルの元データを退避することにより以下のデメリットがある。
（１）メモリ書き換え回数の増加による退避領域のメモリ劣化。
（２）退避処理及び復旧処理に関わる処理時間の増加。
【００１０】
そのため、本発明の課題は、データが書き込まれるファイルの元データを退避させるファイルの他に、元データを退避させないファイルを定めて上記の問題を解決したＩＣカード及び高セキュリティモジュールのＩＣチップを提供することにある。
【課題を解決するための手段】
【００１１】
本発明は、上記課題を解決するために、ＩＣモジュールアクセス装置とデータ交換を行う通信手段と、ファイルを記憶する不揮発性メモリを具備するＩＣカードであって、
前記ＩＣモジュールアクセス装置から受信したデータを前記不揮発性メモリの前記ファイルに書込む前に前記ファイルの元データを前記不揮発性メモリの退避領域に退避して記憶する手段と、前記退避領域に記憶されている前記元データを前記ファイルに書き戻す手段を有し、前記ファイルのファイル管理情報に、前記ファイルを前記不揮発性メモリの退避領域に退避する対象にするか否かを記憶したロールバック可否識別情報を記憶したことを特徴とするＩＣカードである。
【００１２】
本発明は、この構成により、ＩＣカードのファイル創成（発行）時に、ファイルの発行者が、そのファイルを退避処理の対象とするか否かを自由に設定できる効果がある。
【００１３】
また、本発明は、上記のＩＣカードであって、前記ファイルのファイル管理情報に、前記不揮発性メモリの前記退避領域に記憶されている前記元データを前記ファイルに書き戻す処理のタイミングを、リセット時の処理、又は、それ以外のタイミングでの処理を指定して記憶したことを特徴とするＩＣカードである。
【００１４】
また、本発明は、高セキュリティモジュール用のＩＣチップであって、
ＩＣモジュールアクセス装置とデータ交換を行う通信手段と、ファイルを記憶する不揮発性メモリを具備し、前記ＩＣモジュールアクセス装置から受信したデータを前記不揮発性メモリの前記ファイルに書込む前に前記ファイルの元データを前記不揮発性メモリの退避領域に退避して記憶する手段と、前記退避領域に記憶されている前記元データを前記ファイルに書き戻す手段を有し、前記ファイルのファイル管理情報に、前記ファイルを前記不揮発性メモリの退避領域に退避する対象にするか否かを記憶したロールバック可否識別情報を記憶したことを特徴とするＩＣチップである。
【００１５】
また、本発明は、上記のＩＣチップであって、前記ファイルのファイル管理情報に、前記不揮発性メモリの前記退避領域に記憶されている前記元データを前記ファイルに書き戻す処理のタイミングを、リセット時の処理、又は、それ以外のタイミングでの処理を指定して記憶したことを特徴とするＩＣチップである。
【発明の効果】
【００１６】
本発明によれば、ＩＣカードのファイル創成（発行）時に、ファイルの発行者が、そのファイルを退避処理の対象とするか否かを自由に設定できる効果がある。そして、それにより、退避処理が不要なファイルには、ファイルへのデータの書き込みの際に不要な退避処理を行わないようにできる、データの退避処理によるメモリへの負担軽減及び処理時間を低減できる効果がある。
【００１７】
また、本発明は、ファイル管理情報に、退避した元データをファイルに書き戻す処理のタイミングを、リセット時に処理する場合と、それ以外のタイミングでの処理を指定して記憶する。それにより、ＩＣカードのリセットの際にＩＣカードがファイルの復旧に時間をかけずに、時間的に余裕を持って規定された時間内にＩＣモジュールアクセス装置に応答できる効果がある。
【図面の簡単な説明】
【００１８】
【図１】本発明の実施形態のシステム構成を示すブロック図である。
【図２】本発明の実施形態のＩＣカードの概略構成を示すブロック図である。
【図３】本発明の実施形態のＩＣチップのファイル管理情報ＦＣＬと退避管理情報ＲＬＣＬのデータの構造を示すブロック図である。
【図４】本発明の実施形態のＩＣチップのファイルへのデータ書き込み処理の際にファイルの元データを退避させる処理のデータの流れを示すブロック図である。
【図５】本発明の実施形態のＩＣチップのファイルの元データを復旧させる処理のデータの流れを示すブロック図である。
【図６】本発明の実施形態のＩＣチップへのデータの書き込み処理の主要な処理手順を示すフローチャートである。
【図７】本発明の実施形態のＩＣチップへのデータの書き込み処理におけるデータ書込処理の手順を示すフローチャートである。
【図８】本発明の実施形態のＩＣチップへのデータの書き込み処理におけるリセット処理の手順を示すフローチャートである。
【図９】本発明の実施形態のＩＣチップへのデータの書き込み処理におけるコマンド処理の手順を示すフローチャートである。
【発明を実施するための形態】
【００１９】
＜第１の実施形態＞
以下、本発明の第１の実施形態に係るＩＣカード１００へのデータ書込みシステムについて図１から図９を参照して説明する。
【００２０】
図１に示すように、本実施形態のＩＣカード１００へのデータ書込みシステムは、リーダ／ライタ（Ｒ／Ｗ）等のＩＣモジュールアクセス装置２００と情報を交換するＩＣカード１００で構成する。
【００２１】
（ＩＣカード１００の構成）
図２のブロック図に、本発明の実施形態のＩＣカード１００の概略構成を示す。ＩＣカード１００は、アンテナコイル１と高セキュリティモジュールである集積回路のＩＣチップ１０を有する。
【００２２】
図２のブロック図に示すように、本実施形態のＩＣカード１００は、当該カードの面上に、ＩＣモジュールアクセス装置２００に備えられた端子と直接接続して通信する接触端子、又は、アンテナコイル１による非接触でＩＣモジュールアクセス装置２００と通信する通信手段１１を有する。ＩＣカード１００は、接触端子とアンテナコイル１の両方を備えることもできる。
【００２３】
（ＩＣチップ１０）
ＩＣカード１００用の高セキュリティモジュールのＩＣチップ１０には、ＩＣモジュールアクセス装置２００から接触端子を通じて直接に電力を供給されるか、又は、ＩＣモジュールアクセス装置２００のリーダ／ライタの電磁界からＩＣカード１００のアンテナコイル１を介して電力を供給されて、電源１５が充電される。
【００２４】
ＩＣチップ１０には、通信手段１１と、ＩＣチップ１０全体の制御を行うマイクロプロセッサ等の制御手段１２と、記憶手段１３と、電源１５を有する。ＩＣカード１００のアンテナコイル１をＩＣチップ１０の通信手段１１に接続する。そして、ＩＣチップ１０の通信手段１１が、ＩＣモジュールアクセス装置２００から通信データを受け取り、また、電力を受電し電源１５を充電する。
【００２５】
（ＩＣチップ１０の記憶手段１３）
図２のブロック図の様に、ＩＣチップ１０の記憶手段１３は、ブートプログラムや各種固定データが記憶された固定記憶手段ＲＯＭと、各種データを一時的に記憶する揮発性メモリＲＡＭと、データの読出し及び書込みが可能な不揮発性メモリを備えて構成する。不揮発性メモリには、フラッシュメモリやＥＥＰＲＯＭ(Electrically Erasable and Programmable ROM)等を用いる事ができる。
【００２６】
記憶手段１３の固定記憶手段ＲＯＭ及び不揮発性メモリに、図２の様に、プログラム手段１３ａ、ファイル管理情報領域１３ｂ及びファイル実体領域１３ｃ、ロールバック制御情報領域１３ｄ及び退避領域１３ｅを設ける。
【００２７】
（プログラム手段１３ａ）
プログラム手段１３ａは、固定記憶手段ＲＯＭ等で構成し、カードＯＳ（Operating System）等のプログラムを記憶し、また、各種設定情報などをはじめとするシステム情報を記憶させる。カードＯＳには、カードマネージャ１４のプログラムを記憶し、また、ファイルのデータを復旧する復旧手段１４ａのプログラムを記憶する。
【００２８】
（ファイル管理情報領域１３ｂ）
ファイル管理情報領域１３ｂにファイル管理情報ＦＣＬを記憶し、ファイル管理情報ＦＣＬによって、ＩＣチップ１０のファイル実体領域１３ｃに記憶されるデータをファイル単位で管理する。
【００２９】
（ファイル管理情報ＦＣＬ）
ファイル管理情報ＦＣＬには、ファイル識別子、ファイルが置かれるファイル構造上の位置（ディレクトリ）の情報などを持つ。ファイル管理情報ＦＣＬには、図３（ａ）の様なファイルタイプ欄Ｆ−１と、ファイル権限欄Ｆ−２と、ファイルサイズ欄Ｆ−３と、ファイルアドレス欄Ｆ−４と、ロールバック可否識別情報欄Ｆ−５とロールバック実施タイミング欄Ｆ−６を設ける。
【００３０】
ファイルタイプ欄Ｆ−１には、ファイルがＤＦであるかＷＥＦであるかＩＥＦであるかのファイルの種別情報を記憶する。ファイル権限欄Ｆ−２には、ファイルの読み・書き・更新の権限情報を記憶する。ファイルサイズ欄Ｆ−３には、ファイルのデータの大きさの情報を記憶する。ファイルアドレス欄Ｆ−４には、ファイルが記憶される先頭のアドレス（例えば、クラスタ番号）等にファイルの実体領域のアドレス情報を記憶する。
【００３１】
ロールバック可否識別情報欄Ｆ−５には、そのファイルのデータをロールバック対象とするか否かの情報を示すフラグを記憶する。ロールバック実施タイミング欄Ｆ−６には、そのファイルのデータをロールバックするタイミングの種別の情報を記憶する。ロールバックするタイミングの種別の情報は、リセット時にロールバックするか、それ以外のタイミングでの処理を指定してロールバックするタイミングを定めた情報である。
【００３２】
本発明は、ファイル管理情報ＦＣＬに、ロールバック可否識別情報欄Ｆ−５を設けて、ファイル毎に、そのファイルの記憶するデータをロールバック対象とするか否かを区別することで、このＩＣチップ１０のファイル創成（発行）時に、ファイルの発行者が、そのファイルを退避処理の対象とするか否かを自由に設定できる効果がある。
【００３３】
それにより、退避処理が不要なファイルには、ファイルへのデータの書き込みの際に不要な退避処理を行わないようにできる、データの退避処理によるメモリへの負担軽減及び処理時間を低減できる効果がある。
【００３４】
本発明は、ファイル管理情報ＦＣＬに１−６：ロールバック実施タイミング欄Ｆ−６を設ける。それにより、退避したデータをファイルにロールバックしてファイルを復旧するタイミングを、リセット時にロールバックするか、それ以外のタイミングでロールバックするかを自由に設定できる。
【００３５】
これにより、退避したデータでファイルを復旧させるタイミングを自由に設定できる効果がある。それにより、ＩＣチップ１０のリセットの際にＩＣチップ１０がファイルの復旧に時間をかけずに、時間的に余裕を持ってISO7816等で規定された時間内にＩＣモジュールアクセス装置２００に応答できる。そのため、処理時間等の規格に関する制約に対してＩＣチップ１０が余裕を持った時間で処理できる様になる効果がある。
【００３６】
（ロールバック制御情報領域１３ｄ）
ロールバック制御情報領域１３ｄには、退避管理情報ＲＬＣＬを記憶する。退避管理情報ＲＬＣＬは、ＩＣモジュールアクセス装置２００から、ＩＣチップ１０のファイル実体領域１３ｃのファイルにデータが書き込まれる際に、ファイル実体領域１３ｃのファイルの元データを退避領域１３ｅへ退避して記憶する処理を制御する。
【００３７】
（退避管理情報ＲＬＣＬ）
退避管理情報ＲＬＣＬは、図３（ｂ）の様に構成し、ロールバックデータ有無識別情報欄Ｒ−１と、ロールバックファイルアドレス欄Ｒ−２と、ロールバック実施タイミング欄Ｒ−３を設ける。
【００３８】
ロールバックデータ有無識別情報欄Ｒ−１には、退避領域１３ｅへ退避されたデータが有効か無効かの識別情報を示すフラグを記憶する。ロールバックファイルアドレス欄Ｒ−２には、ロールバック元のアドレスを記憶する。ロールバック実施タイミング欄Ｒ−３には、ロールバックをいつ行うかの、即ち、リセット時にロールバックするか、最初にコマンドを受信した時にロールバックするかを定めた情報を記憶する。
【００３９】
（退避領域１３ｅ）
退避領域１３ｅには、図１のＩＣモジュールアクセス装置２００がＩＣカード１００のＩＣチップ１０のファイル実体領域１３ｃのファイルを書き換える際に、あるいは、プログラム手段１３ａのプログラムファイルを書き換える際に、その、書き換えるファイルの元データを退避領域１３ｅに退避させてロールバック用に記憶させる。
【００４０】
例えば、ＩＣモジュールアクセス装置２００が、ＩＣチップ１０のファイル実体領域１３ｃの作業基礎ファイルＷＥＦや内部基礎ファイルＩＥＦや専用ファイルＤＦのデータを書き換える際に、その、書き換えるファイルの元データを退避領域１３ｅに退避させてロールバック用に記憶させる。
【００４１】
（ファイル実体領域１３ｃ）
ファイル実体領域１３ｃは、アプリケーションが使用するユーザデータを記憶する領域である。
【００４２】
（専用ファイルＤＦの階層構造）
図２のように、ファイル実体領域１３ｃには、主ファイルＭＦ（Master File）の下に階層構造で接続する専用ファイルＤＦ（Dedicated File）を記憶する。専用ファイルＤＦは、下位のファイルをグループ化するためのファイルであり、専用ファイルＤＦの配下に基礎ファイルＥＦ（Elementary File）や他の専用ファイルＤＦを記憶する。
【００４３】
（基礎ファイルＥＦ）
専用ファイルＤＦの配下に作成する基礎ファイルＥＦはデータを格納するファイルであり、ＩＥＦ（Internal Elementary File：内部基礎ファイル）とＷＥＦ（作業基礎ファイル）との２つの種別に分けられる。
【００４４】
（作業基礎ファイルＷＥＦ）
作業基礎ファイルＷＥＦは、ＩＣチップ１０から外部への出力が可能なファイルである。作業基礎ファイルＷＥＦには、ＩＣチップ１０の個別ファイルを記憶する。
【００４５】
（内部基礎ファイルＩＥＦ）
ＩＣチップ１０の内部基礎ファイルＩＥＦは、セキュリティ上、ＩＣモジュールアクセス装置２００から読出しができないファイルであり、ＩＣチップ１０内においてのみ使用される。
【００４６】
内部基礎ファイルＩＥＦは、ＩＣモジュールアクセス装置２００がＩＣチップ１０の作業基礎ファイルＷＥＦ内の個別ファイルを読み出すアクセス権を認証するためのセキュア通信用鍵情報や認証用鍵情報等の鍵情報を記憶し、その鍵情報を割り付けるキー区分を記憶する。
【００４７】
（復旧手段１４ａ）
ＩＣモジュールアクセス装置２００がＩＣカード１００のＩＣチップ１０のファイル実体領域１３ｃにデータを書き込む書込み処理中に、電源電圧低下、電源電圧再投入等によって、データの書込み処理に失敗する場合がある。その場合に、ＩＣチップ１０のカードＯＳの機能の一つである復旧手段１４ａが、退避領域１３ｅに格納されている元データをロールバックするデータの書き戻し処理によって元データを復元する。
【００４８】
（データ書込処理）
復旧手段１４ａの行う処理によるデータの流れを図４と図５のブロック図に示す。すなわち、復旧手段１４ａは、図４の様に、ＩＣチップ１０のファイルへのデータ書込処理において、ステップＳ４で、作業基礎ファイルＷＥＦに書き込むべきデータを一時的に揮発性メモリＲＡＭで記憶する。そして、ステップＳ６で、作業基礎ファイルＷＥＦの元データを退避領域１３ｅに退避させて記憶する。そうしてファイルの元データを記憶させて退避させた後に、ステップＳ８で、一時的に揮発性メモリＲＡＭで記憶していた書込み用の新データを作業基礎ファイルＷＥＦに書き込む。
【００４９】
（ロールバック処理）
その作業基礎ファイルＷＥＦへのデータの書込処理が正常に完了した場合は、データを復旧する必要は無い。しかし、データの書込処理が正常に完了せず中断した場合は、図５の様に、復旧手段１４ａが、リセット処理の際に、又は、コマンド処理の際に、ステップＳ１２又はステップＳ２２で、退避領域１３ｅに退避させていた元データを作業基礎ファイルＷＥＦに書き戻すロールバック処理を行い作業基礎ファイルＷＥＦのデータを復旧する。
【００５０】
（ＩＣチップ１０へのデータ書込み処理手順）
以下で、図６のフローチャートと、図７から図９の個別機能の処理手順のフローチャートを参照して、ＩＣモジュールアクセス装置２００がＩＣカード１００のＩＣチップ１０にデータを書き込む処理と、データの書込み処理に失敗した場合に、ＩＣチップ１０が復旧手段１４ａを用いて退避領域１３ｅに格納されている元データを復元する処理の手順を説明する。
【００５１】
（ステップＳ１）ＩＣチップ１０へ電源供給
ＩＣモジュールアクセス装置２００からＩＣカード１００のＩＣチップ１０に電源電圧を供給する。
【００５２】
非接触型ＩＣカードの場合は、ＩＣモジュールアクセス装置２００のアンテナからＩＣカード１００のアンテナに電磁誘導によって電圧が誘起され、それによりＩＣカード１００のＩＣチップ１０が受電し、電源１５に電力が充電される。電源１５の電源電圧が動作しきい値以上になると、ＩＣチップ１０の電源制御部から制御手段１２にリセット信号が出力され、これにより制御手段１２はリセットされる。
【００５３】
接触型ＩＣカードの場合は、ＩＣモジュールアクセス装置２００からＩＣカード１００のＩＣチップ１０に電源電圧を供給するとともにＩＣモジュールアクセス装置２００からＩＣチップ１０のリセット端子にリセット信号が送信され、これによりＩＣチップ１０はリセットされ、初期応答を返信する。
【００５４】
（ステップＳ１ｂ）
ＩＣチップ１０はリセットされた場合はステップＳ１０のリセット処理に進む。リセット処理においては、ステップＳ１０からＳ１４の処理により、先ずは、データの復旧が必要なファイルがある場合はデータを復旧した上で、リセット後の初期化処理を行う。既にリセット信号の処理を終えているＩＣチップ１０は、ＩＣモジュールアクセス装置２００から最初のコマンドを受信するべく待機し、コマンドを受信するとステップＳ２０のコマンド処理に進む。
【００５５】
（ステップＳ２）ファイル選択処理
ＩＣモジュールアクセス装置２００は、ＩＣチップ１０に、ＩＣチップ１０のファイル実体領域１３ｃの作業基礎ファイルＷＥＦを選択するＳＥＬＥＣＴ  ＦＩＬＥコマンドを送信する。
【００５６】
（ステップＳ２ｂ）第１のコマンド処理
ＩＣチップ１０は、ＩＣモジュールアクセス装置２００からＳＥＬＥＣＴ  ＦＩＬＥコマンドを受信した場合は、ステップＳ２０のコマンド処理によって、先ずは、データの復旧が必要なファイルがある場合はデータを復旧した上で、そのＳＥＬＥＣＴ  ＦＩＬＥコマンドに従った処理により、、ＩＣチップ１０のデータを書き込むべきファイルを準備する。
【００５７】
（ステップＳ３）ファイル書込み処理
次に、ＩＣモジュールアクセス装置２００は、ＩＣチップ１０に、先に選択した作業基礎ファイルＷＥＦに対して値を書き込むＷＲＩＴＥ  ＢＩＮＡＲＹコマンドを送信する。
【００５８】
（ステップＳ３ｂ）
ＩＣチップ１０は、ＩＣモジュールアクセス装置２００からＷＲＩＴＥ  ＢＩＮＡＲＹコマンドを受信した場合は、ステップＳ２０のコマンド処理によって、先ずは、データの復旧が必要なファイルがある場合はデータを復旧した上で、そのＷＲＩＴＥ  ＢＩＮＡＲＹコマンドに従った処理を行い、ステップＳ２のＳＥＬＥＣＴ  ＦＩＬＥコマンドによって選択された作業基礎ファイルＷＥＦにデータを書き込む準備をする。
【００５９】
（データ書込処理）
図７のステップＳ４からステップＳ９に従って、以下の様にして、指定されたファイルにデータを書き込む。
【００６０】
（ステップＳ４）書込データを揮発性メモリＲＡＭで記憶
ＩＣチップ１０は、ＷＲＩＴＥ  ＢＩＮＡＲＹコマンドを受信すると、そのコマンドからファイルに書き込むべきデータを抽出して揮発性メモリＲＡＭで記憶する。
【００６１】
（ステップＳ５）ファイルのロールバック可否識別情報の確認
次に、ステップＳ５の処理によって、ＳＥＬＥＣＴ  ＦＩＬＥコマンドによって選択された作業基礎ファイルＷＥＦのファイル管理情報ＦＣＬをファイル管理情報領域１３ｂから読出し、そのファイル管理情報ＦＣＬの図３（ａ）のロールバック可否識別情報欄Ｆ−５によって、そのファイルが退避処理の対象か否かを確認する。
【００６２】
そして、ＩＣチップ１０は、選択された作業基礎ファイルＷＥＦのファイル管理情報ＦＣＬのロールバック可否識別情報欄Ｆ−５に記憶したフラグにより、そのファイルがロールバックの対象にされている事を判定した場合は、以下のステップＳ６に進み、そうで無い場合はステップＳ８に進む。
【００６３】
（ステップＳ６）データ退避処理
復旧手段１４ａは、選択された作業基礎ファイルＷＥＦがロールバックの対象にされている場合は、その元データを退避領域１３ｅの退避領域１３ｅに記憶させて退避させる。
【００６４】
（ステップＳ７）
復旧手段１４ａは、ファイルのデータを退避させた場合は、図３（ｂ）の様な、ロールバック制御情報領域１３ｄの退避管理情報ＲＬＣＬのロールバックデータ有無識別情報欄Ｒ−１に、退避領域１３ｅへ退避されたデータが有効である旨の情報を示すフラグを記憶する。ロールバックファイルアドレス欄Ｒ−２にはロールバック元の作業基礎ファイルＷＥＦのアドレスを記憶する。また、ロールバック実施タイミング欄Ｒ−３には、選択された作業基礎ファイルＷＥＦのファイル管理情報ＦＣＬのロールバック実施タイミング欄Ｆ−６の情報を書き込む。
【００６５】
（ステップＳ８）
次に、ＩＣチップ１０は、揮発性メモリＲＡＭに記憶していた書込データを、選択された作業基礎ファイルＷＥＦに書き込む。
【００６６】
（ステップＳ９）
ＩＣチップ１０が、ステップＳ８の処理の結果、揮発性メモリＲＡＭに記憶していたデータを作業基礎ファイルＷＥＦに書き込む処理が正常に完了した場合は、復旧手段１４ａが、退避管理情報ＲＬＣＬのロールバックデータ有無識別情報欄Ｒ−１に、退避領域１３ｅへ退避されたデータが無い旨の情報を示すフラグを記憶する。そして、データ書込処理を終えて、最初のステップＳ１に戻る。
【００６７】
（リセット処理）
ＩＣチップ１０は、ステップＳ１の処理でＩＣモジュールアクセス装置２００からリセットされた場合は、図８のステップＳ１０からステップＳ１４に従って、以下の様にして、データの復旧が必要なファイルがある場合はデータを復旧した上で、リセット後の初期化処理を行う。
【００６８】
（ステップＳ１０）
ＩＣチップ１０は、ステップＳ１の処理でＩＣモジュールアクセス装置２００からリセットされた場合は、図８の処理手順のリセット処理を開始する。そして、ＩＣチップ１０の復旧手段１４ａが、ロールバック制御情報領域１３ｄから退避管理情報ＲＬＣＬを読出し、そのロールバックデータ有無識別情報欄Ｒ−１を確認する。
【００６９】
そのロールバックデータ有無識別情報欄Ｒ−１に、退避領域１３ｅへ退避されたデータが無い旨の情報を示すフラグが記憶されている場合は、復旧手段１４ａは、未完の書込み処理が無いと判定し、ステップＳ１４に進む。
【００７０】
特に、ロールバックデータ有無識別情報欄Ｒ−１に、退避領域１３ｅへ退避されたデータが無い旨の情報を示すフラグが記憶されている場合は、先のファイルの書込み処理中に電源電圧低下が発生する等でファイルの書込み処理が完了していない場合であっても、その書込み処理が完了していないファイルをロールバックで復元せず、ステップＳ１４に進む。
【００７１】
復旧手段１４ａは、図３（ｂ）のロールバックデータ有無識別情報欄Ｒ−１に、退避領域１３ｅへ退避されたデータが有効である旨の情報を示すフラグが記憶されている場合は、ファイルの書込み処理が完了していないと判定し、ステップＳ１１に進む。
【００７２】
（ステップＳ１１）
復旧手段１４ａは、図３（ｂ）の退避管理情報ＲＬＣＬのロールバック実施タイミング欄Ｒ−３を読出し、ロールバック実施タイミング欄Ｒ−３に、リセット時にロールバックする旨の情報が記載されていない場合は、ロールバック処理はせずにステップＳ１４に進む。
【００７３】
（ステップＳ１２）
復旧手段１４ａは、図３（ｂ）のロールバック実施タイミング欄Ｒ−３にリセット時にロールバックする旨の情報が記載されている場合は、退避領域１３ｅに退避させて記憶させていた作業基礎ファイルＷＥＦの元データを読出し、その作業基礎ファイルＷＥＦに書き戻すロールバック処理を行いその作業基礎ファイルＷＥＦのデータを復元する。
【００７４】
（ステップＳ１３）
復旧手段１４ａは、退避管理情報ＲＬＣＬのロールバックデータ有無識別情報欄Ｒ−１に、退避領域１３ｅへ退避されたデータが無い旨の情報を示すフラグを記憶する。
【００７５】
（ステップＳ１４）
そして、ＩＣチップ１０がリセット後の初期化処理を行い、ＩＣモジュールアクセス装置２００から最初のコマンドを受信するべく待機する。
【００７６】
（コマンド処理）
ＩＣチップ１０は、ステップＳ２の処理等でＩＣモジュールアクセス装置２００からコマンドを受信した場合は、図９のステップＳ２０からステップＳ２４に従って、以下の様にして、データの復旧が必要なファイルがある場合はデータを復旧した上で、コマンド処理を行う。
【００７７】
（ステップＳ２０）
ＩＣチップ１０は、ステップＳ２の処理、及び、ステップＳ３の処理でＩＣモジュールアクセス装置２００からコマンドを受信した場合は、コマンド処理を開始する。先ず、ＩＣチップ１０の復旧手段１４ａが、ロールバック制御情報領域１３ｄから退避管理情報ＲＬＣＬを読出し、そのロールバックデータ有無識別情報欄Ｒ−１を確認する。
【００７８】
そして、ロールバックデータ有無識別情報欄Ｒ−１に、退避領域１３ｅへ退避されたデータが有効である旨の情報を示すフラグが記憶されている場合は、復旧手段１４ａは、先に行われたファイルの書込み処理が完了していないと判定し、ステップＳ２１に進む。
【００７９】
また、ロールバックデータ有無識別情報欄Ｒ−１に、退避領域１３ｅへ退避されたデータが無い旨の情報を示すフラグが記憶されている場合は、復旧手段１４ａは、未完の書込み処理が無いと判定し、ステップＳ２４のコマンド処理に進む。
【００８０】
特に、ロールバックデータ有無識別情報欄Ｒ−１に、退避領域１３ｅへ退避されたデータが無い旨の情報を示すフラグが記憶されている場合は、先のファイルの書込み処理中に電源電圧低下が発生する等でファイルの書込み処理が完了していない場合であっても、その書込み処理が完了していないファイルをロールバックで復元せず、ステップＳ２４に進む。
【００８１】
（ステップＳ２１）
復旧手段１４ａは、ステップＳ２０の処理で読み出した図３（ｂ）の退避管理情報ＲＬＣＬのロールバックデータ有無識別情報欄Ｒ−１に、退避領域１３ｅへ退避されたデータが有効である旨の情報を示すフラグが記憶されていた場合は、退避管理情報ＲＬＣＬのロールバック実施タイミング欄Ｒ−３を読出す。
【００８２】
復旧手段１４ａは、ロールバック実施タイミング欄Ｒ−３に、最初にコマンドを受信した時にロールバックする旨の情報が記載されていなかった場合は、ステップＳ２４のコマンドの処理に進む。
【００８３】
復旧手段１４ａは、ロールバック実施タイミング欄Ｒ−３に、最初にコマンドを受信した時にロールバックする旨の情報が記載されている場合は、ステップＳ２２に進む。
【００８４】
（ステップＳ２２）
復旧手段１４ａは、退避領域１３ｅに退避させて記憶させていた作業基礎ファイルＷＥＦの元データを読出し、作業基礎ファイルＷＥＦに書き戻してデータを復元するロールバック処理を行う。
【００８５】
（ステップＳ２３）
復旧手段１４ａは、退避管理情報ＲＬＣＬのロールバックデータ有無識別情報欄Ｒ−１に、退避領域１３ｅへ退避されたデータが無い旨の情報を示すフラグを記憶する。
【００８６】
（ステップＳ２４）
次に、ＩＣチップ１０は、受信したコマンドの処理に進む。ここで、データ書込みコマンドを処理は、ステップＳ４からステップＳ９のデータ書込処理を実行する。そして、コマンド処理を終えて、図６の主要な処理手順に戻って、主要な処理の次の処理に進む。
【００８７】
なお、本発明は以上の実施形態に限定されず、ＩＣカード以外の高セキュリティモジュール用のＩＣチップ１０に適用することもできる。例えば、携帯端末装置に搭載する高セキュリティモジュールであるＳＩＭカードのＩＣチップ１０に、携帯端末装置がＩＣモジュールアクセス装置２００としてデータを書き込むシステムに適用することもできる。
【００８８】
また、本発明は、ＩＣチップ１０に電源が供給された場合に、ＩＣチップ１０の以前の処理で作業基礎ファイルＷＥＦへのデータの書込みが中断している場合は、復旧手段１４ａが、種々のタイミングで退避領域１３ｅに退避させていたデータを作業基礎ファイルＷＥＦに書き戻すロールバック処理を行い作業基礎ファイルＷＥＦのデータを復旧する様に、ファイル管理情報ＦＣＬのロールバック実施タイミング欄Ｆ−６のロールバックを実施するタイミングを、以上の実施形態で示したタイミングの指定の他の種々のタイミングも指定する様にすることもできる。
【００８９】
例えば、リセット以前であっても、電源が供給されていれば、退避領域１３ｅに退避させていたデータを作業基礎ファイルＷＥＦに書き戻すロールバック処理を行い作業基礎ファイルＷＥＦのデータを復旧する様にすることもできる。
【００９０】
また、リセット後に、電源が供給されて最初のコマンドを待っている間に、退避領域１３ｅに退避させていたデータを作業基礎ファイルＷＥＦに書き戻すロールバック処理を行い作業基礎ファイルＷＥＦのデータを復旧する様にすることもできる。
【符号の説明】
【００９１】
１・・・アンテナコイル
１０・・・ＩＣチップ
１１・・・通信手段
１２・・・制御手段
１３・・・記憶手段
１３ａ・・・プログラム手段
１３ｂ・・・ファイル管理情報領域
１３ｃ・・・ファイル実体領域
１３ｄ・・・ロールバック制御情報領域
１３ｅ・・・退避領域
１４・・・カードマネージャ
１４ａ・・・復旧手段
１５・・・電源
１００・・・ＩＣカード
２００・・・ＩＣモジュールアクセス装置
ＤＦ・・・専用ファイル
ＥＦ・・・基礎ファイル
ＦＣＬ・・・ファイル管理情報
Ｆ−１・・・ファイルタイプ欄
Ｆ−２・・・ファイル権限欄
Ｆ−３・・・ファイルサイズ欄
Ｆ−４・・・ファイルアドレス欄
Ｆ−５・・・ロールバック可否識別情報欄
Ｆ−６・・・ロールバック実施タイミング欄
ＩＥＦ・・・内部基礎ファイル
ＲＡＭ・・・揮発性メモリ
ＲＯＭ・・・固定記憶手段
ＲＬＣＬ・・・退避管理情報
Ｒ−１・・・ロールバックデータ有無識別情報欄
Ｒ−２・・・ロールバックファイルアドレス欄
Ｒ−３・・・ロールバック実施タイミング欄
ＷＥＦ・・・作業基礎ファイル
【図１】
2020112855.tif 000003
【図２】
2020112855.tif 000004
【図３】
2020112855.tif 000005
【図４】
2020112855.tif 000006
【図５】
2020112855.tif 000007
【図６】
2020112855.tif 000008
【図７】
2020112855.tif 000009
【図８】
2020112855.tif 000010
【図９】
2020112855.tif 000011