(57)【要約】【課題】誤ったデータを書いてしまう可能性のある上位装置による再書き込み処理を必要としないデータ保護機能と、データ書き戻し処理を行った場合、書き戻したことを上位装置に通知する機能を備えたＩＣカードを提供すること。【解決手段】演算処理部５、揮発性メモリ２、読み出し専用不揮発性メモリ３及び読み出し書き込み可能不揮発性メモリ４を具備する。前記第２の不揮発性メモリ４に対しデータを書き込む前に、書き込みが行われるデータを前記第２の不揮発性メモリ４の別の領域に書き込む機能、及び前記第２の不揮発性メモリ４に対するデータを書き戻したことを示す書き戻し情報１４を第２の不揮発性メモリ４に記録する機能を具備する。【選択図】        図１
2004152056.tif 000002
【特許請求の範囲】
【請求項１】
読み出し専用の不揮発性メモリ、読み出し書き込み可能な不揮発性メモリ、及び通信対象とする端末である上位装置とデータ交換を行うインタフェース部を具備するＩＣカードにおいて、上位装置より受信したデータを前記読み出し書き込み可能な不揮発性メモリの所定の領域に書き込む時、すでに読み出し書き込み可能な不揮発性メモリの書き込み対象の領域に書き込まれているデータを前記読み出し書き込み可能な不揮発性メモリの別の領域に書き込む機能、及び前記読み出し書き込み可能な不揮発性メモリに対して新たに書き込むデータのデータの長さ、先頭アドレスを示す書き込み処理情報を前記読み出し書き込み可能な不揮発性メモリのメモリ管理部に記憶する機能、さらに新しく書き込むデータの最後に、データの終了を示すデータ列及び書き込んだデータから計算した特徴データ（チェックサム）、書き戻しを行ったかどうかを示す書き戻し情報を書き込む機能を有することを特徴とするＩＣカード。
【請求項２】
請求項１に記載のＩＣカードにおいて、ＩＣカード起動時に書き込み処理情報を元に、前回最後に書き込みを行った読み出し書き込み可能な不揮発性メモリの領域を検証し、データの長さの後のデータの終了を示すデータ列の検証、及び書き込まれているデータを元に特徴データを計算して書き込まれている特徴データと比較することにより、書き込み完了してなかったことを検知する機能を有することを特徴とするＩＣカード。
【請求項３】
請求項１又は２に記載のＩＣカードにおいて、書き込み完了してないことを検知後、前回別の領域に書き込んだデータを書き戻し、また書き戻したデータの最後に書き戻しを行ったことを示す書き戻し情報を書き込み、更に上位装置に前回データの書き込みが正常に完了していないことを通知する機能を有することを特徴とするＩＣカード。
【請求項４】
請求項１から３のいずれかに記載のＩＣカードにおいて、書き戻したデータに上位装置が読み出しや書き込み、照合などの処理を行うとき、書き戻し情報を参照することによって、該データが書き戻したデータであることを上位装置に通知する機能を有することを特徴とするＩＣカード。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はＩＣカード及びその情報処理に関し、特にＩＣカードの読み出し書き込み可能な不揮発性メモリに対するデータ書き込み処理におけるデータ保護に関する。
【０００２】
【従来の技術】
近年、様々な分野においてＩＣカードが使用されている。各ＩＣカードは、少なくとも、読み出し専用不揮発性メモリ、及び読み出し書き込み可能不揮発性メモリを具備している。読み出し書き込み可能不揮発性メモリに対しては、データの書き込み及び読み出しが随時行なわれる。データを書き込むときのデータ書き込処理時間は３ｍｓ〜５ｍｓ程度必要とされている。
【０００３】
特別な場合として、書き込み処理中にＩＣカードに供給される電源が低下あるいは遮断されることを想定する。その特別な場合には、書き込み処理が完了せず、書き込み対象となる読み出し書き込み可能不揮発性メモリ領域のデータが破壊されることがある。
【０００４】
この問題を回避するために従来は書き込み処理未完了の場合、書き込みデータをＩＣカードに送った上位装置に対し、書き込み対象領域のデータ破壊を示すデータ及び／または上位装置がＩＣカードの書き戻し処理を再実行するように要求するデータ列をＩＣカードのインタフェースを介して上位装置に通知していた。
【０００５】
【発明が解決しようとする課題】
前記の従来手法では、書き込み処理を失敗した時の上位装置と、再書き込みを行おうとしている上位装置が必ずしも一致することはないため、上位装置による再書き込み処理に用いるデータが異なる危険性がある。
【０００６】
そこで、本発明の技術的課題は、誤ったデータを書いてしまう可能性のある上位装置による再書き込み処理を必要としないよう、ＩＣカードが書き戻し処理を行いデータを保護し、また書き戻し処理を行ったことを上位装置に通知する機能を備えたＩＣカードを提供することにある。
【０００７】
【課題を解決するための手段】
本発明によれば、読み出し専用の不揮発性メモリ、読み出し書き込み可能な不揮発性メモリ、及び通信対象とする端末である上位装置とデータ交換を行うインタフェース部を具備するＩＣカードにおいて、上位装置より受信したデータを前記読み出し書き込み可能な不揮発性メモリの所定の領域に書き込む時、すでに読み出し書き込み可能な不揮発性メモリの書き込み対象の領域に書き込まれているデータを前記読み出し書き込み可能な不揮発性メモリの別の領域に書き込む機能、及び前記読み出し書き込み可能な不揮発性メモリに対して新たに書き込むデータのデータの長さ、先頭アドレスを示す書き込み処理情報を前記読み出し書き込み可能な不揮発性メモリのメモリ管理部に記憶する機能、さらに新しく書き込むデータの最後に、データの終了を示すデータ列及び書き込んだデータから計算した特徴データ（チェックサム）、書き戻しを行ったかどうかを示す書き戻し情報を書き込む機能を有することを特徴とするＩＣカードが得られる。
【０００８】
また、本発明によれば、前記ＩＣカードにおいて、ＩＣカード起動時に書き込み処理情報を元に、前回最後に書き込みを行った読み出し書き込み可能な不揮発性メモリの領域を検証し、データの長さの後のデータの終了を示すデータ列の検証、及び書き込まれているデータを元に特徴データを計算して書き込まれている特徴データと比較することにより、書き込み完了してなかったことを検知する機能を有することを特徴とするＩＣカードが得られる。
【０００９】
また、本発明によれば、前記ＩＣカードにおいて、書き込み完了してないことを検知後、前回別の領域に書き込んだデータを書き戻し、また書き戻したデータの最後に書き戻しを行ったことを示す書き戻し情報を書き込み、更に上位装置に前回データの書き込みが正常に完了していないことを通知する機能を有することを特徴とするＩＣカードが得られる。
【００１０】
さらに、本発明によれば、前記ＩＣカードにおいて、書き戻したデータに上位装置が読み出しや書き込み、照合などの処理を行うとき、書き戻し情報を参照することによって、該データが書き戻したデータであることを上位装置に通知する機能を有することを特徴とするＩＣカードが得られる。
【００１１】
【発明の実施の形態】
以下、本発明の実施の形態について説明する。
【００１２】
図１は本発明の実施の形態によるＩＣカードの概略構成を示すブロック図である。図１に示すように、本実施の形態によるＩＣカード内に搭載されたＩＣチップ１上には、上位装置７とデータ交換を行うインタフェース６と制御プログラムを処理する演算処理部５と、揮発性メモリ（ＲＡＭ）２と、制御プログラムを格納しておく読み出し専用不揮発性メモリ（ＲＯＭ，第１の不揮発性メモリ）３と、書き込みまたは書換えデータを格納する読み出し書き込み可能不揮発性メモリ（ＥＥＰＲＯＭ、第２の不揮発性メモリ）４とが具備されている。
【００１３】
本実施の形態では、読み出し書き込み可能不揮発性メモリとして電気的に書き込みと消去ができる読み出し専用メモリ（ＥＥＰＲＯＭ）４としたが、強誘電体不揮発性メモリとすることも可能である。
【００１４】
また、読み出し専用不揮発性メモリ３内にデータ書き込み処理、データ書き込み未完了検知処理、及びデータ書き戻し処理を行う制御プログラムを格納しているが、揮発性メモリ２及びまたは読み出し書き込み可能不揮発性メモリ４に格納することも可能である。
【００１５】
図２は図１のＩＣカードの読み出し書き込み可能な不揮発性メモリ４を示す構造図である。読み出し書き込み可能な不揮発性メモリ４は、新たにデータを書き込む書き込み対象領域８に、データを書き込む領域１１と、データ終了を示すデータ列１２と、データの特徴データ（チェックサム）１３と、データの書き戻し情報１４を具備している。また、新たに書き込むデータのデータの長さ１５、先頭アドレス１６を示す書き込み処理情報を保持しておくメモリ管理部９と、書き込み対象領域８にデータを書き込む前に書き込み対象領域８のデータを書き込み、ＩＣカード内に保持しておく退避用メモリ領域１０を具備している。
【００１６】
次に、図１及び図２に加えて図３をも参照して、ＩＣカードに対するデータ書き込み処理、データ書き込み未完了検知処理、及びデータ書き戻し処理について説明する。本実施の形態においては、書き込み処理を行うデータ列としてライトコマンドを用い、書き込み処理を行わないデータ列としてリードコマンドを使用する。
【００１７】
１）上位装置７から電源電圧が供給され初期応答動作を求められた場合（図３のＳ１）、ＩＣカードは上位装置に対して初期応答（図３のＳ２）した後、受信待ち状態に留まる。このとき、データ終了を示すデータ列１２は正常データ列、データの特徴データ（チェックサム）１３は正常チェックサム、データの書き戻し情報１４は書き戻し無しを示すものとする。
【００１８】
２）リードコマンドにより書き込み対象領域８に対して読み出しを行う場合（図３のＳ３）、ＩＣカードはデータの書き戻し情報１４を参照しデータが書き戻されていないことを検知した後、上位装置に対してコマンド処理結果を通知する（図３のＳ５）。
【００１９】
３）ライトコマンドにより書き込み対象領域８に対して書き込みを行う場合（図３のＳ６）、ＩＣカードは書き込み対象領域８に書き込まれているデータを退避用メモリ領域１０に書き込んだ後、新たに書き込むデータのデータ長１５と先頭アドレス１６をメモリ管理部９に書き込み、次に書き込み対象領域８にデータ（Ａ）を書き込み、データの最後にデータ終了を示すデータ列１２と、データ（Ａ）から計算した特徴データ（チェックサム）１３と、データ書き戻し情報１４を書き込む（図３のＳ７）。
【００２０】
４）書き込み処理中に電源電圧低下が発生した場合（図３のＳ８）、書き込み処理は未完了となり（図３のＳ９）、データ終了を示すデータ列１２、及びデータの特徴データ（チェックサム）１３は、共に異常を示す。
【００２１】
５）上位装置７から電源電圧が再供給され初期応答動作を求められた場合（図３のＳ１０）、ＩＣカードは、メモリ管理部９に示される書き込み処理情報２先頭アドレス１６と、書き込み処理情報１データ長１５を参照し、前回最後に書き込みを行った書き込み対象領域８を検証する。データ終了を示すデータ列１２の検証、及び書き込まれているデータを元に特徴データを計算して書き込まれている特徴データ（チェックサム）１３と比較することにより、書き込みが正常に完了していなかったことを検知（図３のＳ１１）する。その後ＩＣカードは、退避用メモリ領域１０に書き込まれているデータを書き込み対象領域８に書き戻し、データの書き戻し情報１４を書き戻し有りと変更した後、上位装置に対して前回データの書き込みが正常に終了していなかったことを示す初期応答（図３のＳ１３）した後、受信待ち状態に留まる。
【００２２】
６）再び、リードコマンドにより書き込み対象領域８に対して読み出しを行う場合（図３のＳ１４）、ＩＣカードはデータの書き戻し情報１４を参照しデータが書き戻されていることを検知した後（図３のＳ１５）、上位装置に対してコマンド処理結果、及び該データは書き戻したデータであることを通知する（図３のＳ１７）。
【００２３】
７）再び、ライトコマンドにより書き込み対象領域８に対して書き込みを行う場合（図３のＳ１８）、ＩＣカードは書き込み対象領域８に書き込まれているデータを退避用メモリ領域１０に書き込んだ後、書き込み対象領域８にデータ（Ａ）を書き込み、データの最後にデータ終了を示すデータ列１２と、データ（Ａ）から計算した特徴データ（チェックサム）１３と、データ書き戻し情報１４を書き込み（図３のＳ１９）、上位装置に対して、コマンド処理結果を通知する（図３のＳ２０）。
【００２４】
８）再び、リードコマンドにより書き込み対象領域８に対して読み出しを行う場合（図３のＳ２１）、ＩＣカードはデータの書き戻し情報１４を参照しデータが書き戻されていないことを検知した後、上位装置に対してコマンド処理結果を通知する（図３のＳ２３）。
【００２５】
なお、次に述べるように様々な変形が可能なことは言うまでもない。
【００２６】
例えば、データ終了を示すデータ列１２の検証、及び書き込まれているデータを元に特徴データを計算して書き込まれている特徴データ（チェックサム）１３と比較することにより、書き込みが正常に完了していなかったことを検知する機能はソフトウェアプログラムにより実現され得る。勿論、ＩＣカードは書き込みが未完了の場合、書き込みが正常に完了していなかったことを通知する機能を具備しているが、この機能はソフトウェアプログラムにより実現されてもよい。
【００２７】
また、書き込み対象領域８に書き込むデータ長は、退避用メモリ領域１０と同じデータ長まで可能であり、その長さは任意に設定できる。
【００２８】
さらに、この書き込み対象領域が、複数存在してもよく、その場合書き込み対象領域８と同数のメモリ管理部９と最大の書き込み対象領域８と同じデータ長の退避用メモリ領域１０が１つ必要である。
【００２９】
【発明の効果】
以上の説明の通り本発明によれば、ＩＣカード自らが書き込み未完了データ領域の書き戻しを行うため、誤ったデータを書いてしまう可能性のある上位装置による再書き込み処理を必要としないデータ保護機能を備えたＩＣカードを提供することができる。
【００３０】
また、電源電圧低下によるデータ書き戻し処理を行った場合、データを書き戻したことを上位装置に通知する機能を備えたＩＣカードを提供することができる。
【００３１】
さらに、読み出し書き込み可能な不揮発性メモリに書き込むデータに、データ終了を示すデータ列、及びデータの特徴データ（チェックサム）を付与することにより、少なくとも１ビットのデータ書き込み失敗が発生した場合においても、本効果は得られる。
【図面の簡単な説明】
【図１】本発明の実施の形態に係るＩＣカードのブロック図である。
【図２】図１のＩＣカードにおける読み出し書き込み可能不揮発性メモリの構造図である。
【図３】図１のＩＣカードにおけるデータ保護処理を示すフローチャートである。
【符号の説明】
１  ＩＣチップ
２  揮発性メモリ（ＲＡＭ）
３  読み出し専用不揮発性メモリ（ＲＯＭ）
４  読み出し書き込み可能不揮発性メモリ（ＥＥＰＲＯＭ）
５  演算処理部
６  インタフェース
７  上位装置
８  書き込み対象領域
９  メモリ管理部
１０  退避用メモリ領域
１１  データを書き込む領域
１２  データ終了を示すデータ列
１３  データの特徴データ（チェックサム）
１４  データの書き戻し情報
１５  データ長
１６  先頭アドレス
【図１】
2004152056.tif 000003
【図２】
2004152056.tif 000004
【図３】
2004152056.tif 000005