(57)【要約】【課題】誤ったデータを書いてしまう可能性のある上位装置による再書込み処理を必要としないデータ保護機能を備えたＩＣカードを提供すること。【解決手段】このＩＣカードでは、ＩＣチップ１内の読出し書込み可能不揮発性メモリ４が複数のブロックから成るデータ記憶領域、及び複数のブロック管理部を含むブロック管理領域を有し、演算処理部５がデータ記憶領域における各ブロックに記憶されているデータの有効，無効，或いは未使用の何れか一つを示すデータステータスをデータ管理領域における各ブロック管理部にブロックステータス情報として記憶すると共に、データが格納されているデータ記憶領域の一つ以上のブロックを表わすファイルにおいて他のファイルと区別するためのファイル識別情報とデータが格納されている一つ以上のブロックのブロック情報とを対応付けてデータ管理領域にブロック割当情報として記憶する機能を持つ。【選択図】      図１
2004151958.tif 000002
【特許請求の範囲】
【請求項１】
演算処理部，読出し専用不揮発性メモリ，及び読出し書込み可能不揮発性メモリを備えると共に、通信対象となる端末との間でデータ交換を行うインタフェース部を具備したＩＣカードにおいて、前記読出し書込み可能不揮発性メモリは、データを記憶するための複数のブロックから成るデータ記憶領域、及び該データ記憶領域における該複数のブロックのそれぞれについてのブロック情報を管理するための複数のブロック管理部を含むデータ管理領域を有しており、更に、前記データ記憶領域における前記複数のブロックにそれぞれ記憶されているデータの有効，無効，或いは未使用の何れか一つを示すデータステータスを前記データ管理領域における前記複数のブロック管理部にブロックステータス情報として記憶すると共に、データが格納されている該データ記憶領域の一つ以上のブロックを表わすファイルにおいて他のファイルと区別するためのファイル識別情報と該データが格納されている一つ以上のブロックのブロック情報とを対応付けて該データ管理領域にブロック割当情報として記憶する機能を有することを特徴とするＩＣカード。
【請求項２】
請求項１記載のＩＣカードにおいて、前記データ管理領域に記憶する前記ブロック割当情報は、以前の情報を残したまま追記記憶するもので、前記演算処理部は、前記ブロック割当情報における最も新しいものをデータが記憶されているファイルのものとして判断する機能を有することを特徴とするＩＣカード。
【請求項３】
請求項１又は２記載のＩＣカードにおいて、データをカード内のファイルに書き込み記憶する際、仮に書き込み対象のファイルと同じファイル識別情報を持つファイルが既に存在すれば、前記ブロック割当情報を参照して前記複数のブロック管理部において対応する一つ以上のものの前記ブロックステータス情報を無効とした後、該ブロックステータス情報により未使用なものを探索して該書き込み記憶の対象となる該複数のブロック管理部に記憶された該ブロックステータス情報の一つ以上のものを同時又は順次無効として書き換えると共に、データを書き込む一つ以上のブロックに関するブロック割当情報を前記データ管理領域における該ブロック割当情報に追記した後、前記データ記憶領域における前記複数のブロックのそれぞれに対して複数のデータ要素から成るデータ列を少なくともデータ要素毎に同時又は順次書込み記憶し、更に、前記データ管理領域における前記複数のブロック管理部に記憶された前記ブロックステータス情報の一つ以上のものを同時又は順次有効として書き換え記憶する機能を有することを特徴とするＩＣカード。
【請求項４】
請求項１〜３の何れか一つに記載のＩＣカードにおいて、起動時に前記データ管理領域における前記ブロック割当情報にある最も新しいファイルに対応する前記複数のブロック管理部における一つ以上のものの前記ブロックステータス情報を検証して少なくとも一つのものが無効を示す際、該ブロック割当情報において同じファイル識別情報を持つファイルについての別の情報がある場合には、該ブロック割当情報の中で２番目に新しい情報に対応する該ブロック管理部の該ブロックステータス情報を有効とし、該ブロック割当情報に同じファイルについての情報が無い場合には、無効なブロックを含むファイルに対応する該ブロック管理部の該ブロックステータス情報を未使用とし、更に、前記複数のブロック管理部における前記ブロック割当情報にある検出した無効なブロックを含むファイルに関する情報を削除する機能を有することを特徴とするＩＣカード。
【請求項５】
請求項１〜４の何れか一つに記載のＩＣカードにおいて、前記データ管理領域にある前記ブロック割当情報のうち、一定回数以前に追記した情報に対応する前記複数のブロック管理部における一つ以上のものの前記データステータス情報を無効から未使用に書き換えた上、該ブロック割当情報から該当する一つ以上のファイルの情報を削除する機能を有することを特徴とするＩＣカード。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、主としてＩＣカード及びその情報処理に関し、特に具備される読出し書込み可能不揮発性メモリに対するデータ書込み処理におけるデータ保護機能を持たせたＩＣカードに関する。
【０００２】
【従来の技術】
近年、ＩＣカードでは、内蔵される読出し書込み可能不揮発性メモリに対するデータ書込処理時間が３ｍｓ〜５ｍｓ程度必要とされている。この書込み処理中にＩＣカードに供給される電流が低下又は遮断したり、或いはそれらの双方が生じた場合、書込み処理が完了せずに書込み処理未完了となり、書込み対象となる読出し書込み可能な不揮発性メモリの書込み対象領域のデータが破壊されるという問題があった。
【０００３】
そこで、こうした問題を回避するため、現状では書込み処理未完了の場合、書込みデータをＩＣカードに送った上位装置に対し、書込み対象領域のデータ破壊を示すデータ又は上位装置がＩＣカードの書き戻し処理を再実行するように要求するデータ列（或いはそれらの双方）をＩＣカードのインタフェースを介して通知している。
【０００４】
【発明が解決しようとする課題】
上述した書込み対象領域のデータ破壊を回避するための書込み処理未完了時における動作の場合、書込み処理を失敗したときの上位装置と、再書込みを行おうとしている上位装置とが必ずしも一致しないことがあり、こうした場合に上位装置による再書込み処理に用いるデータが異なってしまうという危険性がある。
【０００５】
本発明は、このような問題点を解決すべくなされたもので、その技術的課題は、誤ったデータを書いてしまう可能性のある上位装置による再書込み処理を必要としないデータ保護機能を備えたＩＣカードを提供することにある。
【０００６】
【課題を解決するための手段】
本発明によれば、演算処理部，読出し専用不揮発性メモリ，及び読出し書込み可能不揮発性メモリを備えると共に、通信対象となる端末との間でデータ交換を行うインタフェース部を具備したＩＣカードにおいて、読出し書込み可能不揮発性メモリは、データを記憶するための複数のブロックから成るデータ記憶領域、及び該データ記憶領域における該複数のブロックのそれぞれについてのブロック情報を管理するための複数のブロック管理部を含むデータ管理領域を有しており、更に、データ記憶領域における複数のブロックにそれぞれ記憶されているデータの有効，無効，或いは未使用の何れか一つを示すデータステータスをデータ管理領域における複数のブロック管理部にブロックステータス情報として記憶すると共に、データが格納されている該データ記憶領域の一つ以上のブロックを表わすファイルにおいて他のファイルと区別するためのファイル識別情報と該データが格納されている一つ以上のブロックのブロック情報とを対応付けて該データ管理領域にブロック割当情報として記憶する機能を有するＩＣカードが得られる。
【０００７】
又、本発明によれば、上記ＩＣカードにおいて、データ管理領域に記憶するブロック割当情報は、以前の情報を残したまま追記記憶するもので、演算処理部は、ブロック割当情報における最も新しいものをデータが記憶されているファイルのものとして判断する機能を有するＩＣカードが得られる。
【０００８】
更に、本発明によれば、上記何れかのＩＣカードにおいて、データをカード内のファイルに書き込み記憶する際、仮に書き込み対象のファイルと同じファイル識別情報を持つファイルが既に存在すれば、ブロック割当情報を参照して複数のブロック管理部において対応する一つ以上のもののブロックステータス情報を無効とした後、該ブロックステータス情報により未使用なものを探索して該書き込み記憶の対象となる該複数のブロック管理部に記憶された該ブロックステータス情報の一つ以上のものを同時又は順次無効として書き換えると共に、データを書き込む一つ以上のブロックに関するブロック割当情報をデータ管理領域における該ブロック割当情報に追記した後、データ記憶領域における複数のブロックのそれぞれに対して複数のデータ要素から成るデータ列を少なくともデータ要素毎に同時又は順次書込み記憶し、更に、データ管理領域における複数のブロック管理部に記憶されたブロックステータス情報の一つ以上のものを同時又は順次有効として書き換え記憶する機能を有するＩＣカードが得られる。
【０００９】
加えて、本発明によれば、上記何れか一つのＩＣカードにおいて、起動時にデータ管理領域におけるブロック割当情報にある最も新しいファイルに対応する複数のブロック管理部における一つ以上のもののブロックステータス情報を検証して少なくとも一つのものが無効を示す際、該ブロック割当情報において同じファイル識別情報を持つファイルについての別の情報がある場合には、該ブロック割当情報の中で２番目に新しい情報に対応する該ブロック管理部の該ブロックステータス情報を有効とし、該ブロック割当情報に同じファイルについての情報が無い場合には、無効なブロックを含むファイルに対応する該ブロック管理部の該ブロックステータス情報を未使用とし、更に、複数のブロック管理部におけるブロック割当情報にある検出した無効なブロックを含むファイルに関する情報を削除する機能を有するＩＣカード得られる。
【００１０】
又、本発明によれば、上記何れか一つのＩＣカードにおいて、データ管理領域にあるブロック割当情報のうち、一定回数以前に追記した情報に対応する複数のブロック管理部における一つ以上のもののデータステータス情報を無効から未使用に書き換えた上、該ブロック割当情報から該当する一つ以上のファイルの情報を削除する機能を有するＩＣカードが得られる。
【００１１】
【発明の実施の形態】
以下に本発明の実施の形態について、図面を参照して詳細に説明する。最初に、本発明のＩＣカードの技術的概要を簡単に説明する。本発明のＩＣカードは、演算処理部，読出し専用不揮発性メモリ，及び読出し書込み可能不揮発性メモリを備えると共に、通信対象となる端末との間でデータ交換を行うインタフェース部を具備している。但し、本発明のＩＣカードの場合、読出し書込み可能不揮発性メモリは、データを記憶するための複数のブロックから成るデータ記憶領域、及びそのデータ記憶領域における各ブロックのそれぞれについてのブロック情報を管理するための複数のブロック管理部を含むブロック管理領域を有しており、更に、データ記憶領域における各ブロックにそれぞれ記憶されているデータの有効，無効，或いは未使用の何れか一つを示すデータステータスをデータ管理領域における各ブロック管理部にブロックステータス情報として記憶すると共に、データが格納されているデータ記憶領域の一つ以上のブロックを表わすファイルにおいて他のファイルと区別するためのファイル識別情報とデータが格納されている一つ以上のブロックのブロック情報とを対応付けてデータ管理領域にブロック割当情報として記憶する機能を有している。
【００１２】
又、本発明のＩＣカードの場合、データ管理領域に記憶するブロック割当情報は、以前の情報を残したまま追記記憶するもので、演算処理部は、ブロック割当情報における最も新しいものをデータが記憶されているファイルのものとして判断する機能を有する。
【００１３】
更に、本発明のＩＣカードの場合、データをカード内のファイルに書き込み記憶する際、仮に書き込み対象のファイルと同じファイル識別情報を持つファイルが既に存在すれば、ブロック割当情報を参照して各ブロック管理部において対応する一つ以上のもののブロックステータス情報を無効とした後、ブロックステータス情報により未使用なものを探索して書き込み記憶の対象となる各ブロック管理部に記憶されたブロックステータス情報の一つ以上のものを同時又は順次無効と書き換えると共に、データを書き込む一つ以上のブロックに関するブロック割当情報をデータ管理領域におけるブロック割当情報に追記した後、データ記憶領域における各ブロックのそれぞれに対して複数のデータ要素から成るデータ列を少なくともデータ要素毎に同時又は順次書込み記憶し、更に、データ管理領域における各ブロック管理部に記憶されたブロックステータス情報の一つ以上のものを同時又は順次有効として書き換え記憶する機能を有する。
【００１４】
加えて、本発明のＩＣカードの場合、起動時にデータ管理領域におけるブロック割当情報にある最も新しいファイルに対応する各ブロック管理部における一つ以上のもののブロックステータス情報を検証して少なくとも一つのものが無効を示す際、ブロック割当情報に同じ識別情報を持つファイルについての別の情報がある場合には、ブロック割当情報の中で２番目に新しい情報に対応するブロック管理部のブロックステータス情報を有効とし、ブロック割当情報に同じファイルについての情報が無い場合には、無効なブロックを含むファイルに対応するブロック管理部のブロックステータス情報を未使用とし、更に、各ブロック管理部におけるブロック割当情報により検出した無効なブロックを含むファイルに関する情報を削除する機能を有する。
【００１５】
又、本発明のＩＣカードの場合、データ管理領域にあるブロック割当情報のうち、一定回数以前に追記した情報に対応する各ブロック管理部における一つ以上のもののデータステート情報を無効から未使用に書き換えた上、ブロック割当情報から該当する一つ以上のファイルの情報を削除する機能を有する。
【００１６】
このような構成のＩＣカードによれば、最新の書込みデータが正常に書込まれていない場合であっても、正常に書込まれている古いデータを使用するか、或いは古いデータがない場合は未使用とすることで、正常に書込まれていないデータは存在しなくなるため、上位装置による再書込み処理は必要なくなる。
【００１７】
図１は、本発明の一つの実施の形態に係るＩＣカードの基本構成を示したブロック図である。このＩＣカードは、カード内に搭載されたＩＣチップ１上には、通信対象となる上位装置７との間でデータ交換を行うインタフェース６と、制御プログラムに従って演算処理を行って各部を動作制御する演算処理部５と、揮発性メモリ（ＲＡＭ）２と、制御プログラムが格納された読出し専用不揮発性メモリ（ＲＯＭ）３と、書込み又は書き換えされるデータを格納する読出し書込み可能不揮発性メモリ（ＥＥＰＲＯＭ）４とが具備されている。
【００１８】
このうち、読出し書込み可能不揮発性メモリ４は、電気的に書込み及び消去ができる読出し専用メモリ（ＥＥＰＲＯＭ）であるが、この他に強誘電体不揮発性メモリを代用することも可能である。又、読出し専用不揮発性メモリ３内には、上述した技術的概要で説明した諸機能を得るための動作処理を行う制御プログラムが格納されているものとするが、こうした制御プログラムは揮発性メモリ２や読出し書込み可能不揮発性メモリ４に格納することも可能である。
【００１９】
図２は、このＩＣカードに備えられる読出し書込み可能不揮発性メモリ４の内部構造を例示した模式図である。この読出し書込み可能不揮発性メモリ４は、データを記憶するためのブロック１〜ブロック６から成るデータ記憶領域と、これらの各ブロック１〜６のそれぞれについてのブロック情報を管理するためのブロック管理部１〜６を含むと共に、ブロック割当情報を含むデータ管理領域とを有している。
【００２０】
ここでは、読出し書込み可能不揮発性メモリに２つのファイルを格納した様子を示しており、データ管理領域におけるブロック割当情報として、ブロック１及びブロック２を使用したファイル１と、ブロック３及びブロック４を使用したファイル２とが記憶されている。尚、ファイル２の方がファイル１よりも新しいファイルであり、ファイル１及びファイル２のブロックステータス情報は何れも有効を示している。
【００２１】
図３は、このＩＣカードの演算処理部５による読出し書込み可能不揮発性メモリ４にブロック１を使用してファイル１を上書き処理する場合の正常状態での書込み動作処理の前半部分を示したフローチャートであり、図４はその後半部分を示したフローチャートである。但し、ここでは読出し書込み可能不揮発性メモリ４の初期状態における内容は図２に示した状態であるとする。
【００２２】
こうした条件下において、書込み処理がスタートすると、先ずデータ管理領域のブロック割当情報を検索（図３上段のステップＳ１）し、ファイル１が既に存在しているか否かを判別する。ここではファイル１が存在しているため、ブロック管理部１及びブロック管理部２のブロックステータス情報を有効から無効に変更（図３上段のステップＳ２）する。
【００２３】
次に、空き領域であるブロック管理部５を選択（図３上段のステップＳ３）した後、ブロック管理部５のブロックステータス情報を未使用から無効に変更（図３下段のステップＳ４）する。
【００２４】
引き続き、データ管理領域のブロック割当情報に新しいファイル１の情報を３番目（＃３）に追記（図４上段のステップＳ５）し、データ記憶領域におけるブロック５に新しいファイル１のデータを書込み（図４下段のステップＳ６）、この後にブロック管理部５のブロックステータス情報を無効から有効に変更（図４下段のステップＳ７）することにより、ファイル１の書込みを終了する。
【００２５】
図５は、このＩＣカードの演算処理部５による起動時の動作処理の概略を示したフローチャートである。
【００２６】
上述したＩＣカードでは、起動時にブロック割当情報にある最も新しいファイルを選択（ステップＳ１）し、その最も新しいファイルに対応する一つ以上の各ブロック管理部のブロックステータス情報参照（ステップＳ２）した後、各ブロック管理部のブロックステータス情報を検証して有効であるか否かを判定（ステップＳ３）する。この結果、ブロックステータス情報の少なくとも一つのブロック管理部のものが無効を示せば、ブロック割当情報に同じ識別情報を持つファイルを選択（ステップＳ４）した後、同じ識別情報を持つファイルが有るか否かを判定（ステップＳ５）する。
【００２７】
この結果、同じ識別情報を持つファイルが有り、しかも使用したブロック割当情報に同じ識別情報を持つファイルについての別の情報がある場合には、ブロック割当情報の中で２番目に新しいファイルを有効に変更（ステップＳ６／即ち、そのブロック割当情報に対応するブロック管理部のブロックステータス情報を有効に変更するもので、詳細は図６に示すフローチャートを参照）するが、ブロック割当情報に同じファイルについての情報が無ければ、無効なブロックを含むファイルに対応するブロックステータス情報を未使用に変更（ステップＳ７）してからそのブロック割当情報にある検出した無効なブロックを含むファイルに関する情報を削除（詳細は図７に示すフローチャートを参照）した後、各ブロック管理部のブロックステータス情報を検証して有効であるか否かの判定（ステップＳ３）で有効であった場合と同様に、異なる識別子を持つ全てのファイルに対して処理が完了したか否かを判定（ステップＳ８）する。
【００２８】
この結果、全てのファイルに対して処理が完了していれば、動作処理を終了して受信待ち状態とするが、全てのファイルに対して処理が完了していなければ、ブロック割当情報にある最も新しいファイルを選択（ステップＳ１）する処理に戻って上述した各処理（ステップＳ１〜Ｓ８）を繰り返すようにする。
【００２９】
図６は、図３及び図４に示したフローチャートで書き込み動作処理を行ったときに新しいファイル１のブロックステータス情報が無効を示していた場合のＩＣカード起動時の演算処理部５による動作処理を示したフローチャートである。
【００３０】
ここでは、先ずＩＣカードの起動時に際して演算処理部５がデータ管理領域におけるブロック割当情報を検索（図６上段のステップＳ８）して同一のファイル１を見つけた後、新しいファイル１のブロック管理部５のブロックステータス情報を参照（図６上段のステップＳ９）するが、ここではブロックステータス情報が無効を示しているため、古いファイル１のブロックのデータを正常なデータとして扱うための処理を実行する。
【００３１】
そこで、先ずブロック割当情報により古いファイル１のブロック番号を入手（図６下段のステップＳ１０）し、そのブロック管理部１及びブロック管理部２のブロックステータス情報を有効に変更（図６下段のステップＳ１１）する。この後、ブロックステータス情報が無効を示す新しいファイル１に関する情報として、ブロック５のデータ，ブロック管理部５のブロックステータス情報，及びブロック割当情報の新しいファイル１を削除（図６下段のステップＳ１２及びステップＳ１３）してからブロック管理部５のブロックステータス情報を未使用に変更（図６下段のステップＳ１４）する。
【００３２】
図７は、図３及び図４のフローチャートで書き込み動作処理を行ったときに古いファイルが存在しないファイル３の書き込みを行ったブロックステータス情報が無効を示していた場合のＩＣカード起動時の演算処理部５による動作処理を示したフローチャートである。
【００３３】
ここでは、先ずＩＣカードの起動時に演算処理部５がデータ管理領域におけるブロック割当情報を検索（図７上段のステップＳ１５）して単独のファイル３を見つけた後、ブロック管理部５のブロックステータス情報を参照（図７上段のステップＳ１６）するが、ここではブロックステータス情報が無効を示しているため、ファイル３に関する情報として、ブロック５のデータ，ブロック管理部５のブロックステータス情報，及びブロック割当情報のファイル３を削除（図７下段のステップＳ１７及びステップＳ１８）してからブロック管理部５のブロックステータス情報を未使用に変更（図７下段のステップＳ１９）する。
【００３４】
図８は、読出し書込み可能不揮発性メモリ４にある無効を示すファイルを未使用とする場合の動作処理を示したフローチャートである。
【００３５】
即ち、ここではデータ管理領域にあるブロック割当情報のうち、一定回数以前に追記した情報に対応する各ブロック管理部における一つ以上のもののデータステータス情報を無効から未使用に書き換えた上、ブロック割当情報から該当する一つ以上のファイルの情報を削除する場合の動作処理を示しており、具体的には、データ管理領域の内容においてブロック管理部５のブロックステータス情報の無効を示す状態（図８上段のステップＳ２０）にあってブロック割当情報に一定回数の追記を行った時点でブロックステータス情報が無効を示すブロック５のデータ，ブロック管理部５の情報，及びブロック割当情報のファイル１を削除（図８下段のステップＳ２１，ステップＳ２２）し、ブロック管理部５のブロックステータス情報を未使用に変更（図８下段のステップＳ２３）ことにより、無効ブロックを再利用する処理が可能となる。
【００３６】
【発明の効果】
以上に述べた通り、本発明のＩＣカードによれば、最新の書込みデータが正常に書込まれていない場合であっても、正常に書込まれている古いデータを使用するか、古いデータがない場合は未使用とすることで、上位装置による誤った書き込みデータを使用する危険を回避できる（誤ったデータを書いてしまう可能性のある上位装置による再書込み処理を不要にすることができる）データ保護機能を構築しているため、結果としてＩＣカード利用の信頼性を向上することができるようになる。
【図面の簡単な説明】
【図１】本発明の一つの実施の形態に係るＩＣカードの基本構成を示したブロック図である。
【図２】図１に示すＩＣカードに備えられる読出し書込み可能不揮発性メモリに２つのファイルを格納した様子を示した模式図である。
【図３】図２に示した読出し書込み可能不揮発性メモリにファイル１を上書き処理する場合の書込み動作処理の前半部分を示したフローチャートである。
【図４】図２に示した読出し書込み可能不揮発性メモリにファイル１を上書き処理する場合の書込み動作処理の後半部分を示したフローチャートである。
【図５】図１に示すＩＣカードの演算処理部による起動時の動作処理の概略を示したフローチャートである。
【図６】図２に示した読出し書込み可能不揮発性メモリに古いファイル１が存在し、新しいファイル１のデータが無効を示した場合のＩＣカードの起動時の動作処理を示したフローチャートである。
【図７】図２に示した読出し書込み可能不揮発性メモリに古いファイル３が存在せず、新しいファイル３のデータが無効を示した場合のＩＣカードの起動時の動作処理を示したフローチャートである。
【図８】図２に示した読出し書込み可能不揮発性メモリにある無効を示すファイルを未使用とする場合の動作処理を示したフローチャートである。
【符号の説明】
１  ＩＣチップ
２  揮発性メモリ（ＲＡＭ）
３  読出し専用不揮発性メモリ（ＲＯＭ）
４  読出し書込み可能不揮発性メモリ（ＥＥＰＲＯＭ）
５  演算処理部
６  インタフェース
７  上位装置（端末）
【図１】
2004151958.tif 000003
【図２】
2004151958.tif 000004
【図３】
2004151958.tif 000005
【図４】
2004151958.tif 000006
【図５】
2004151958.tif 000007
【図６】
2004151958.tif 000008
【図７】
2004151958.tif 000009
【図８】
2004151958.tif 000010