(57)【要約】【課題】高級プログラミング言語の解釈・実行機能を備えた仮想マシンが実装されたＩＣカードにおいて、アプリケーションに含まれるデータ部を効率よく書き込むことができるＩＣカードを提供する。【解決手段】ＩＣカード１のＥＥＰＲＯＭのアプリケーション領域２２には、アプリケーションのデータ部の初期値として利用される可能性が高い複数の値でそれぞれパディングされた複数のパターン領域２２２が形成されている。ＩＣカード１へアプリケーションを書き込むときは、アプリケーションのデータの初期値と同じ値でパディングされているパターン領域にデータを割当てることで、アプリケーションの書込み時間の短縮を図る。【選択図】図４
2007249881.tif 000002
【特許請求の範囲】
【請求項１】
電気的に書換え可能な不揮発性メモリを備え、高級プログラミング言語の解釈・実行機能を備えた仮想マシンが実装された携帯型情報処理装置であって、前記不揮発性メモリには、互いに異なる値でパディングされた複数のパターン領域が設けられ、前記仮想マシンは、前記携帯型情報処理装置にアプリケーションを実装するときに、前記不揮発性メモリに書き込む前記アプリケーションが使用するそれぞれデータの初期値と前記パターン領域をパディングしている値であるパターン値とを比較し、前記データの初期値と前記パターン値が一致する前記パターン領域がある場合は、前記パターン値が初期値と一致する前記パターン領域に前記データを割当て、前記データの初期値と前記パターン値が一致する前記パターン領域がない場合は、前記パターン領域以外の前記不揮発性メモリの領域に前記データを割当て、、前記データを割当てた領域を前記データの初期値でパディングすることを特徴とする携帯型情報処理装置。
【請求項２】
請求項１に記載の携帯型情報処理装置において、前記携帯型情報処理装置は、前記データを前記パターン領域に割当てる前に、割当てる前記パターン領域の残容量を確認し、前記データを割当てる前記パターン領域に前記データを記憶する残容量がないときには、前記パターン領域以外の前記不揮発性メモリの領域に前記データを割り当て、前記データを割当てた領域を前記データの初期値でパディングすること特徴とする携帯型情報処理装置。
【請求項３】
請求項１または請求項２に記載の携帯型情報処理装置において、前記携帯型情報処理装置は、電気的に書換え可能な前記不揮発性メモリに書き込んだ前記アプリケーションを削除するときに、削除する前記アプリケーションの前記データが記憶されている前記パディング領域の箇所を、前記パディング領域の前記パターン値に戻すことを特徴とする携帯型情報処理装置。
【請求項４】
電気的に書換え可能な不揮発性メモリを備え、高級プログラミング言語の解釈・実行機能を備えた仮想マシンが実装された携帯型情報処理装置へアプリケーションを実装する方法であって、
前記携帯型情報処理装置にアプリケーションを書き込む前に、互いに異なる値でパディングされた複数のパターン領域を前記不揮発性メモリに形成し、
前記携帯型情報処理装置へアプリケーションを書き込むときは、
ステップａ：前記不揮発性メモリに書き込む前記アプリケーションが使用するそれぞれデータの初期値と前記パターン領域をパディングしている値であるパターン値とを比較するステップ、
ステップｂ：前記データの初期値と前記パターン値が一致する前記パターン領域がある場合は、前記パターン値が初期値と一致する前記パターン領域に前記データを割当て、一致する前記パターン領域がない場合は、前記パターン領域以外の前記不揮発性メモリの領域に前記データを割当て、前記データを割当てた領域を前記データの初期値でパディングするステップ、
が順に実行されることを特徴とするアプリケーションの実装方法。
【請求項５】
請求項４に記載のアプリケーションの実装方法において、前記アプリケーションの実装方法の前記ステップｂは、前記データを前記パターン領域に割当てる前に、この前記パターン領域の残容量を確認し、前記データを割当てる前記パターン領域に前記データを記憶する残容量がないときは、前記パターン領域以外の前記不揮発性メモリの領域に前記データを割り当て、前記データを割当てた領域を、前記データの初期値でパディングするステップであることを特徴とするアプリケーションの実装方法。
【請求項６】
請求項４または請求項５に記載のアプリケーションの実装方法において、前記アプリケーションの実装方法は、前記携帯型情報処理装置に実装されたアプリケーションを削除するときに実行され、削除する前記アプリケーションの前記データを前記パディング領域内に割当てているときに、削除する前記アプリケーションの前記データを割当てている前記パディング領域の箇所を、前記パディング領域の前記パターン値に戻すステップｃを備えることを特徴とするアプリケーションの実装方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、高級プログラミング言語の解釈・実行機能を備えた仮想マシンが実装されたＩＣカード、および、アプリケーションの書き込み方法に関するものである。
【背景技術】
【０００２】
ＩＣカード用ＩＣチップの高速化・記憶容量の大容量化を受け、Ｊａｖａ（登録商標）に代表される高級プログラミング言語の解釈・実行機能を備えた仮想マシンをＩＣカードに実装することが可能となった（例えば、特許文献１）。
【０００３】
ＩＣカードが仮想マシンを備えることで、ＩＣカードに実装するアプリケーションを高級プログラミング言語で効率よく開発できるばかりか、１枚のＩＣカードに複数のアプリケーションの実装が可能となり、ＩＣカードの利便性を高めることができる。
【０００４】
このようにＩＣカード用ＩＣチップの高速化・記憶容量の増加は、ＩＣカードへの仮想マシンの実装を可能とするが、その一方、アプリケーションに対する要求も高機能化し、ＩＣカードに実装するアプリケーションの容量を増加させる。
【０００５】
仮想マシンを備えたＩＣカードにアプリケーションを実装するためには、ＩＣカードの電気的に書換え可能な不揮発性メモリにアプリケーションを書き込まなければならないが、アプリケーションの容量が増加するにつれて、アプリケーションの書き込み時間も増加してしまう。
【０００６】
アプリケーションの書き込み時間の増加は、大量にＩＣカードを発行するＩＣカード製造者にとっては、ＩＣカード製造時のネックとなるため、容量の大きいアプリケーションの書込み時間の短縮がＩＣカード製造者にとって一つの課題となっている。
【特許文献１】特開２００３−１４１４８８号公報
【特許文献２】特開２００３−１６２６９９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
仮想マシンを備えたＩＣカードへのアプリケーションの書込み時間を短縮する一つの発明として、ＩＣカードに実装するアプリケーションのプログラムコードの一部或いはすべてを予めＲＯＭに実装しておくことで、ＩＣカードへ書き込む容量を減らし、アプリケーションの書込み時間を短縮する発明が特許文献２で開示されている。
【０００８】
しかしながら、特許文献２で開示されている発明は、ＩＣカードに実装されるアプリケーションに含まれるプログラムコードに着目した発明で、プログラムコードに対応するデータを効率よく書き込める発明ではない。
【０００９】
実際、アプリケーションには、プログラムコード以外に、プログラムコードのパラメータとして扱われるデータや、プログラムコードで操作されるファイルなど、多くのデータが含まれ、アプリケーションの容量が増加するにつれ、アプリケーションのデータの容量も増加する。
【００１０】
そこで、本発明は、高級プログラミング言語の解釈・実行機能を備えた仮想マシンが実装されたＩＣカードにおいて、アプリケーションに含まれるデータを効率よく書き込むことができるＩＣカード、および、アプリケーションに含まれるデータを効率よく書き込むことができるアプリケーションの書込み方法を提供することを目的とする。
【課題を解決するための手段】
【００１１】
上述した課題を解決する第１の発明は、電気的に書換え可能な不揮発性メモリを備え、高級プログラミング言語の解釈・実行機能を備えた仮想マシンが実装された携帯型情報処理装置であって、前記不揮発性メモリには、互いに異なる値でパディングされた複数のパターン領域が設けられ、前記仮想マシンは、前記携帯型情報処理装置にアプリケーションを実装するときに、前記不揮発性メモリに書き込む前記アプリケーションが使用するそれぞれデータの初期値と前記パターン領域をパディングしている値であるパターン値とを比較し、前記データの初期値と前記パターン値が一致する前記パターン領域がある場合は、前記パターン値が初期値と一致する前記パターン領域に前記データを割当て、前記データの初期値と前記パターン値が一致する前記パターン領域がない場合は、前記パターン領域以外の前記不揮発性メモリの領域に前記データを割当て、前記データを割当てた領域を前記データの初期値でパディングすることを特徴とする。
【００１２】
第１の発明に記載の携帯型情報処理装置において、前記携帯型情報処理装置は、前記データを前記パターン領域に割当てる前に、割当てる前記パターン領域の残容量を確認し、前記データを割当てる前記パターン領域に前記データを記憶する残容量がないときには、前記パターン領域以外の前記不揮発性メモリの領域に前記データを割り当て、前記データを割当てた領域を前記データの初期値でパディングすることが望ましい。
【００１３】
更に、第１の発明に記載の携帯型情報処理装置において、電気的に書換え可能な前記不揮発性メモリに書き込んだ前記アプリケーションを削除するときに、削除する前記アプリケーションの前記データが記憶されている前記パディング領域の箇所を、前記パディング領域の前記パターン値に戻すことが望ましい。
【００１４】
また、第２の発明は、電気的に書換え可能な不揮発性メモリを備え、高級プログラミング言語の解釈・実行機能を備えた仮想マシンが実装された携帯型情報処理装置へアプリケーションを実装する方法であって、
前記携帯型情報処理装置にアプリケーションを書き込む前に、互いに異なる値でパディングされた複数のパターン領域を前記不揮発性メモリに形成し、
前記携帯型情報処理装置へアプリケーションを書き込むときは、
ステップａ：前記不揮発性メモリに書き込む前記アプリケーションが使用するそれぞれデータの初期値と前記パターン領域をパディングしている値であるパターン値とを比較するステップ、
ステップｂ：前記データの初期値と前記パターン値が一致する前記パターン領域がある場合は、前記パターン値が初期値と一致する前記パターン領域に前記データを割当て、一致する前記パターン領域がない場合は、前記パターン領域以外の前記不揮発性メモリの領域に前記データを割当て、前記データを割当てた領域を前記データの初期値でパディングするステップ、
が順に実行されることを特徴とする。
【００１５】
第２の発明に記載のアプリケーションの実装方法において、前記アプリケーションの実装方法の前記ステップｂは、前記データを前記パターン領域に割当てる前に、この前記パターン領域の残容量を確認し、前記データを割当てる前記パターン領域に前記データを記憶する残容量がないときは、前記パターン領域以外の前記不揮発性メモリの領域に前記データを割り当て、前記データを割当てた領域を、前記データの初期値でパディングするステップであることが望ましい。
【００１６】
更に、第２の発明に記載のアプリケーションの実装方法において、前記アプリケーションの実装方法は、前記携帯型情報処理装置に実装されたアプリケーションを削除するときに実行され、削除する前記アプリケーションの前記データを前記パディング領域内に割当てているときに、削除する前記アプリケーションの前記データを割当てている前記パディング領域の箇所を、前記パディング領域の前記パターン値に戻すステップｃを備えることが望ましい。
【００１７】
なお、本発明において携帯型情報処理装置とは、ＩＣカードやＳＩＭ（Subscriber Identity Module）などを意味している。
【発明の効果】
【００１８】
上述した本発明によれば、予め、アプリケーションを書き込む前に、データの初期値として利用される可能性の高い値でパディングした領域を不揮発性メモリに設けておくことで、アプリケーションを書き込む時間を短縮できる。実際には、アプリケーションのデータの初期値は数パターンに限定されることが多いため、予め、パターン領域を設けておくことは有用である。
【００１９】
更に、前記パターン領域に前記データを割当てる前に、前記パターン領域の容量を確認することで、前記パターン領域の容量が足りないにも関わらず、前記パターン領域に前記データを割当てられることを防止できる。
【００２０】
更に、前記携帯型情報処理装置に実装された前記アプリケーションを削除するときに、削除する前記アプリケーションの前記データを割当てている前記パディング領域の箇所を、前記パディング領域の前記パターン値に戻すことで、前記アプリケーションを削除した後でも、前記アプリケーションの書込み時間を短縮できる。
【発明を実施するための最良の形態】
【００２１】
ここから、前記携帯型情報処理装置をＩＣカードとしたときの実施の形態ついて、図を参照しながら詳細に説明する。図１は、ＩＣカード１を説明する図である。
【００２２】
図１に示したＩＣカード１は、電気的に書き換え可能な不揮発性メモリとしてＥＥＰＲＯＭを有し、Ｊａｖａ（登録商標）やＭＵＬＴＯＳ（登録商標）などに代表される仮想マシンが実装されたＩＣカードで、仮想マシンで解釈実行される中間コードで記述された複数のアプリケーションを、ＩＣカード１のＥＥＰＲＯＭに登録／削除できる。
【００２３】
アプリケーションのデータの初期値として利用される可能性が高い値をパターン値とし、本発明に係るＩＣカード１のＥＥＰＲＯＭには、互いに異なるパターン値でパディングされた複数のパターン領域が形成されている。
【００２４】
そして、ＩＣカード１へアプリケーションを書き込むときは、アプリケーションのデータの初期値と同じパターン値でパディングされているパターン領域にデータを割当てることで、アプリケーションの書込み時間を短縮する。
【００２５】
図２は、図１で示したＩＣカード１に実装されるＩＣチップ２の構成図で、図３は、ＩＣカード１に実装されるソフトウェアを説明する図である。
【００２６】
図２に示したようにＩＣカード１のＩＣチップ２には、演算機能およびＩＣチップ２が具備するデバイスを制御する機能を備えた中央演算装置２０（CPU：Central Processing Unit）、読み出し専用の不揮発性メモリ２３（ROＭ：Read Only Memory、）、電気的に書換え可能な不揮発性メモリとしてＥＥＰＲＯＭ２２（EEPROM：Electrically Erasable Programmable Read-Only Memoryの略）、揮発性メモリとしてランダムアクセスメモリ２１（RAM：Random Access Memory）、および、外部の端末装置とデータ通信するための通信Ｉ／Ｆ回路２４とを少なくとも備なえている。
【００２７】
本発明は、ＩＣカード１に実装されるＩＣチップ２の仕様をなんら限定するものではなく、ＩＣカード１の用途に適した仕様のＩＣチップ２を選択することができる。例えば、ＲＯＭ２３およびＥＥＰＲＯＭ２２の容量については限定しないし、書換え可能な不揮発性メモリはフラッシュメモリ等であっても構わない。またＩＣチップ２は乱数を生成する乱数生成回路等の図示していない他のデバイスを備えていても構わない。
【００２８】
なお、図１においては、ＩＣカード１を接触ＩＣカードとして図示しているが、本発明は何らＩＣカード１の通信方式に依存するものではなく、無線でデータ通信する非接触ＩＣカード、または、接触データ通信と非接触データ通信の２つの通信機能を備えたデュアルインターフェースＩＣカードであってもよい。加えて、ＩＣカード１は、ＩＣチップ２の近辺を短冊状に切り取った形状をしているＳＩＭ（Subscriber Identity Module）であってもよい。
【００２９】
図３で示したように、ＩＣカード１の不揮発性メモリであるＲＯＭ２３には、ＩＣカード１に実装されるＩＣチップ２ごとの仕様差分を吸収するためのプログラムであるカードＯＳ１０上に、高級プログラミング言語の解釈・実行機能を備えた仮想マシン１１が実装されている。
【００３０】
更に、ＩＣカード１の電気的に書換え可能な不揮発性メモリであるＥＥＰＲＯＭ２２は、カードＯＳ１０および仮想マシン１１が利用するシステム領域２２０と、アプリケーション１２を実装するための領域であるアプリケーション領域２２１に論理的に分割され、アプリケーション領域２２１には少なくとも一つのアプリケーション１２が実装され、システム領域２２０には、アプリケーションがＥＥＰＲＯＭ２２に書き込まれた情報を記憶するために、アプリケーション用のエントリテーブル１３が設けらる。
【００３１】
アプリケーション領域２２１に実装される一つのアプリケーション１２は、複数のオブジェクトを有し、アプリケーション１２が有するオブジェクトには、アプリケーション１２に要求される機能を実現するためプログラムコードと、プログラムコードによって操作されるデータが含まれる。
【００３２】
ここで、アプリケーション１２のデータとは、プログラムコードで宣言される変数を意味し、例えば、プログラムコードが実行するときに利用するパラメータ、または、プログラムコードが操作するファイルなどを意味している。
【００３３】
すでに、上述しているように、ＩＣカード１のＥＥＰＲＯＭ２２の大容量化が進むにつれて、アプリケーション１２の容量、すなわち、プログラムコードの容量およびデータの容量も増加する傾向にあり、ＩＣカード１を大量に発行するＩＣカード製造会社などでは、アプリケーション１２の書込み時間が問題になってしまう。
【００３４】
そこで、本発明では、アプリケーション１２のデータの初期値は数パターンに限定されることが多いことに着目し、予め、アプリケーションを書き込む前に、データの初期値として利用される可能性の高い値をパターン値とし、互いに異なるパターン値でパディングした複数のパターン領域をＥＥＰＲＯＭ２２に設けておくことで、アプリケーション１２の書込み時間を短縮する。
【００３５】
図４は、ＥＥＰＲＯＭ１２に設けられたパターン領域２２２を説明する図である。図に示したように、アプリケーション領域２２１の一部の領域には、アプリケーションのデータを記憶する領域である複数のパターン領域２２２が設けられ、それぞれのパターン領域２２２は互いに異なるパターン値でパディングされている。
【００３６】
パターン領域２２２へのパディングは、アプリケーション１２をＥＥＰＲＯＭ２２に書き込む前に実施されていることが望ましく、例えば、カードＯＳ１０または仮想マシン１１に備えられた書込みコマンドでパターン領域２２２にパターン値をパディングしておくとよい。
【００３７】
アプリケーションのデータの初期値として利用される可能性の高い値をパターン値として、それぞれのパターン領域２２２を一括してパターン値でパディングしておくことで、アプリケーション１２を書き込むときに、ＥＥＰＲＯＭ２２にデータを書き込む量が減るため、アプリケーションの書き込む時間を短縮できる効果を得ることができる。
【００３８】
また、パターン領域２２２をパターン値でパディングする時間は無駄な時間に思われるかも知れないが、データの初期値を個別にＥＥＰＲＯＭ２２に書き込むときよりも、パターン領域２２２に一括でパターン値を書き込むの方が効率よく書き込めるため、パターン領域２２２をパターン値でパディングする時間を考慮しても、ＥＥＰＲＯＭ２２に書き込む時間を短縮できる効果は期待できる。
【００３９】
図５は、アプリケーション１２が有するデータの一例を示した図で、図６は、ＥＥＰＲＯＭ２２のパターン領域２２２の一例を示した図である。
【００４０】
図５において、アプリケーション（JCApplet）は、データとして、bField、sField、barray、iFieldそしてbContextの５つの異なる変数を有している。図５において、bFieldおよびiFieldの初期値は宣言されていないが、Ｊａｖａ（登録商標）では、初期値が宣言されていない変数については、変数の型宣言で示される長さすべてを０ｘ００（０ｘは１６進表記）でパディングすることが定められている。
【００４１】
また、図６に示したように、ＥＥＰＲＯＭ２２には、パターン領域２２２として、０ｘ００でパディングされたパターン領域２２２ａ、０ｘ０１でパディングされたパターン領域２２２ｂ、０ｘ０Ｆでパディングされたパターン領域２２２ｃ、０ｘＦＦでパディングされたパターン領域２２２ｄそして他の値パディングされたパターン領域２２２ｅとが設けられている。
【００４２】
図５で示されたアプリケーション１２の変数をＥＥＰＯＭ１２に書き込むときは、仮想マシン１１は、それぞれの変数の初期値を参照し、初期値と同じパターン値でパディングされているパターン領域２２２に変数を割当て、変数を識別する情報に関連付けて、それぞれの変数を割当てたアドレスを、アプリケーション１２用のエントリーテーブル１３に記憶する。
【００４３】
例えば、変数のbFieldおよびiFieldは初期値が宣言されていないため、０ｘ００でパディングされたパターン領域２２２ａに割り当てられ、また、変数のsFieldの初期値は０ｘ０１であるため、０ｘ０１でパディングされたパターン領域２２２ｂに割り当てられる。
【００４４】
ここから、図を参照しながら、仮想マシン１１がアプリケーション１２のデータをＥＥＰＲＯＭ２２に書き込む一連の手順と、仮想マシン１１がアプリケーション１２のデータをＥＥＰＲＯＭ２２から削除するときの手順について説明する。図７は、仮想マシン１１がデータをＥＥＰＲＯＭ２２に書き込む一連の手順を示したフロー図である。
【００４５】
この手順の最初のステップＳ１は、仮想マシン１１がデータをＥＥＰＲＯＭ２２に書込み開始するステップである。
【００４６】
このステップでは、アプリケーション１２をＥＥＰＲＯＭ２２に書き込むコマンドＡＰＤＵをカードＯＳ１０が受信し、受信したコマンドＡＰＤＵがＲＡＭ２１を介して仮想マシン１１に引渡される。そして、引渡されたコマンドＡＰＤＵを仮想マシン１１が解釈実行し、コマンドＡＰＤＵに含まれるアプリケーション１２のデータをＥＥＰＲＯＭ２２にそれぞれ書き込むときに、これ以降のステップが実行される。
【００４７】
次のステップＳ２は、仮想マシン１１がデータの初期値を確認するステップである。このステップでは、仮想マシン１１はデータの初期値を確認し、ＥＥＰＲＯＭ２２のデータの初期値でパディングされたパターン領域２２２がＥＥＰＲＯＭ２２にあればステップＳ３に進み、なければステップＳ５に進む。
【００４８】
ステップＳ３では、パターン領域２２２の残容量を確認するステップである。このステップでは、仮想マシン１１は、パターン領域２２２に割当てるデータの容量と、データを割当てるパターン領域２２２の中で未使用の領域の容量（残容量）とを比較し、パターン領域２２２にデータを割当てることができる残容量がある場合は、ステップＳ４に進み、残容量がなければステップＳ５に進む。
【００４９】
ステップＳ４では、データの初期値と同じパターン値でパディングされたパターン領域２２２にデータを割当て、ステップＳ５では、パターン領域２２２以外のＥＥＰＲＯＭ２２の領域にデータを割当てる。そして、ステップＳ４またはステップＳ５が実行された後はステップＳ６に進む。
【００５０】
ステップＳ４またはステップＳ５の後に実行されるステップＳ６では、データを割当てたアドレスを含み、ステップＳ４またはステップＳ５でデータを割当てた内容をエントリテーブル１３に記憶するステップである。この手順をもって、仮想マシン１１がデータをＥＥＰＲＯＭ２２に書き込む一連の手順は終了する。
【００５１】
次に、仮想マシン１１がアプリケーション１２のデータをＥＥＰＲＯＭ２２から削除するときの手順について説明する。図８は、仮想マシン１１がアプリケーション１２をＥＥＰＲＯＭ２２から削除するときの手順を示したフロー図である。
【００５２】
この手順は、アプリケーション１２用のエントリテーブル１３で示されるデータの数だけ繰り返し実行される処理で、繰り返し実行される処理の内容はループ１で定義される。このループ１で最初に実行されるステップＳ１０は、エントリーテーブル１３から、データが割り当てられている内容を取得するステップである。データが割り当てられている内容には、少なくとも、データが記憶しているアドレスが含まれる。
【００５３】
次のステップＳ１１は、データが記憶されているアドレスがパターン領域２２２であるか確認するステップである。仮想マシン１１は、データが記憶されているアドレスがパターン領域２２２であればステップＳ１２に進み、パターン領域２２２外であればステップＳ１３に進む。
【００５４】
ステップＳ１２は、仮想マシン１１は、データが記憶されていたパターン領域２２２の箇所を、パターン領域２２２のパターン値に戻すステップである。また、ステップ１３は、データ記憶されていたＥＥＰＲＯＭ２２の領域を乱数値などでパディングするステップである。
【００５５】
ステップＳ１２またはステップＳ１３が終了した後、アプリケーション１２用のエントリテーブル１３で示されるデータすべてについて、ループ１で定義される処理を実施したときにこの手順は終了し、未処理のデータがある場合は、そのデータについてループ１で定義される処理が実施される。
【図面の簡単な説明】
【００５６】
【図１】ＩＣカードを説明する図。
【図２】ＩＣカードに実装されるＩＣチップの構成図。
【図３】ＩＣカードに実装されるソフトウェアを説明する図。
【図４】パターン領域を説明する図。
【図５】アプリケーションが有するデータの一例を示した図。
【図６】パターン領域の一例を示した図。
【図７】仮想マシンがデータをＥＥＰＲＯＭに書き込む手順を示したフロー図。
【図８】仮想マシンがデータをＥＥＰＲＯＭから削除する手順を示したフロー図。
【符号の説明】
【００５７】
１  ＩＣカード
１１  仮想マシン
１２  アプリケーション
２  ＩＣチップ
２２  ＥＥＰＲＯＭ
２２１  アプリケーション領域
２２２  パターン領域
【図１】
2007249881.tif 000003
【図２】
2007249881.tif 000004
【図３】
2007249881.tif 000005
【図４】
2007249881.tif 000006
【図５】
2007249881.tif 000007
【図６】
2007249881.tif 000008
【図７】
2007249881.tif 000009
【図８】
2007249881.tif 000010