(57)【特許請求の範囲】
【請求項１】
演算処理部、揮発性メモリ、読み出し専用不揮発性メモリ、及び読み出し書き込み可能な不揮発性メモリを有し、
前記読み出し専用不揮発性メモリに格納されている前記演算処理部が実行する処理プログラムの一部が前記読み出し書き込み可能な不揮発性メモリ内に格納されているＩＣカードであって、
前記読み出し書き込み可能な不揮発性メモリの領域に対して前記処理プログラムの一部の書き込み、書換え、及び読み出しに制限を設けると共に、書き込み、書換え、及び読み出しを行う権利を許可する認証機能を設け、
前記認証機能により、前記処理プログラムの一部の書き込み、書換え、及び読み出しを行う権利を許可された場合に、
前記読み出し書き込み可能な不揮発性メモリに格納されている前記処理プログラムの一部の実行可否を管理する管理情報が前記書き換え可能な不揮発性メモリの領域内に設定されることを特徴とするＩＣカード。
【請求項２】
前記読み出し書き込み可能な不揮発性メモリが電気的に書き込みおよび消去ができる読み出し専用メモリであることを特徴とする請求項１に記載のＩＣカード。
【請求項３】
前記読み出し書き込み可能な不揮発性メモリが強誘電体不揮発性メモリであることを特徴とする請求項１又は２に記載のＩＣカード。
【請求項４】
マスタファイル（ＭＦ）、専用ファイル（ＤＦ）、基礎ファイル（ＥＦ）からなるファイル情報が前記読み出し書き込み可能な不揮発性メモリ領域に設けられ、前記処理プログラムが前記ファイル情報を管理するファイル管理機能を有することを特徴とする請求項１に記載のＩＣカード。
【請求項５】
前記読み出し書き込み可能な不揮発性メモリ領域に設けた基礎ファイルに前記処理プログラムの一部が格納され、当該基礎ファイルに対して書き込み、書換え、及び読み出しに制限を設けると共に、基礎ファイルに対する書き込み、書換え、及び読み出しを行う権利を許可する認証機能を設けたことを特徴とする請求項１に記載のＩＣカード。
【請求項６】
演算処理部、揮発性メモリ、読み出し専用不揮発性メモリ、及び読み出し書き込み可能な不揮発性メモリを有するＩＣカードにおける、当該ＩＣカードに搭載された処理プログラムの変更・追加方法において、
前記演算処理部にて作成されるパッチプログラム格納ファイルは、当該演算処理部が実行する処理プログラムの一部（以下、パッチプログラムと呼ぶ。）が格納されるものであり、前記パッチプログラム格納ファイルへのアクセス権を得るために、ファイルアクセス用専用キーを照合し、前記ファイルアクセス用専用キーの照合の結果一致した場合にのみ、前記パッチプログラム格納ファイルのプログラム書込み開始アドレスを取得し、ファイルアクセス用専用キーの照合の結果一致しなかった場合には、前記パッチプログラム格納ファイルのプログラム書込み開始アドレスは取得されず、パッチプログラムを実行不可能な状態に保持するステップと、
前記プログラム書込み開始アドレスを取得した後、追加するパッチプログラムを、前記演算処理部が、前記取得したプログラム書込み開始アドレスより書込みあるいは書換えを行うステップと、
パッチプログラム管理情報設定のアクセス権を得るために、ファイルアクセス用専用キーを照合し、ファイルアクセス用専用キーの照合の結果一致した場合にのみ、前記追加するパッチプログラムを動作させるためのパッチ管理情報を設定し、ファイルアクセス用専用キーの照合の結果一致しなかった場合には、前記追加するパッチプログラムを動作させるためのパッチ管理情報が設定されず、パッチプログラム実行不可能な状態を保持するステップを有し、
前記追加するパッチプログラムが動作するように管理情報が設定された後は、前記追加するパッチプログラムを実行可能にする状態へと遷移することを特徴とするＩＣカード搭載処理プログラムの変更・追加方法。
【請求項７】
ＩＣカード起動後、前記演算処理部が実行する処理ステップとしてさらに、
前記読み出し専用不揮発性メモリに格納されている第１のプログラム処理を実行するステップと、
前記変更・追加するパッチプログラムを読み出すためのパッチプログラム読み出しプログラムを実行し、読み出し書き込み可能不揮発性メモリに格納されているパッチプログラム管理情報を読み出すステップと、
前記管理情報が適切に設定されている場合に当該パッチプログラムを実行し、その後前記読み出し専用不揮発性メモリに格納されている第２の処理プログラムを実行し、前記管理情報が適切に設定されていない場合に当該パッチプログラムを実行せず、前記第２の処理プログラムを実行するステップを有する
ことを特徴とする請求項６記載のＩＣカード搭載処理プログラムの変更・追加方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は搭載されているオペレーティングシステムソフトウェアのプログラム修正及び追加することが可能なＩＣカードおよびＩＣカードに搭載されているオペレーティングシステムソフトウェアのプログラムの変更・追加方法に関する。
【０００２】
【従来の技術】
情報化社会の進展に伴って、従来の単純な記録機能を有する例えば磁気カードから、近年メモリとマイクロプロセッサを内蔵し、内部演算機能を有し、記憶容量も大幅に増大したＩＣカードが普及している。
【０００３】
このようなＩＣカードは、少なくとも金融、ポイント管理、入退出管理、個人情報管理に用いられ、搭載されるオペレーティングシステムソフトウェアはその用途専用のコマンドのみが搭載されていた。
【０００４】
従来、このようなＩＣカードにおいては、処理プログラムの機能修正あるいは追加の際、該当する機能を修正あるいは追加した処理プログラムを搭載したＩＣチップを作り直し、新しいＩＣカードを作成し、ユーザーへ提供していた。
【０００５】
しかし、上記従来方法では、現在ユーザーが使用しているＩＣカードを破棄すると共に、ユーザーが使用している情報を新たに作成したＩＣカードに載せかえる必要があった。
【０００６】
【発明が解決しようとする課題】
前述の従来ＩＣカードでは、ＩＣチップ内に読み出し専用不揮発性メモリに処理プログラムを格納し、ユーザーが使用する情報を読み出し書き込み可能な不揮発性メモリに格納している。処理プログラムは書き換え不可能なメモリ領域に格納されているため現在使用しているＩＣカードの処理プログラム変更、追加をすることができない。従って新規にＩＣカードを作り直している。
【０００７】
例えば入退室管理システムのようなアプリケーションを搭載したＩＣカードに入退室管理以外のアプリケーションを追加する場合、処理プログラムに必要な機能を追加しなければならない。そのため現在ユーザーが使用しているＩＣカードを破棄すると共にユーザーが使用している情報を新たに作成したＩＣカードに載せ替える必要がある。
【０００８】
従って、ＩＣチップ及びＩＣカードを新規に作成し直すため、費用がかかると共に迅速にユーザーへ提供することができないという問題があった。
【０００９】
本発明は、現在使用しているＩＣカードを破棄することなく、搭載されている処理プログラムの変更、追加が可能なＩＣカードおよびＩＣカードに搭載されているオペレーティングシステムソフトウェアのプログラムの変更・追加方法を提供することである。
【００１０】
【課題を解決するための手段】
本発明のＩＣカードは、読み出し専用不揮発性メモリに格納されている処理プログラムの一部（以下パッチプログラムと呼ぶ。）を読み出し書き込み可能な不揮発性メモリ内に格納すると共にパッチプログラムを実行するためのプログラムを読み出し専用不揮発性メモリ領域内に設けたことを特徴としている。
【００１１】
ＩＣカード起動時に読み出し専用不揮発性メモリに格納されている処理プログラムを実行する。その処理プログラムの一部であるパッチプログラムを実行するためのプログラムを実行すると読み出し書き込み可能な不揮発性メモリ内に格納されているパッチプログラムを実行する。このパッチプログラムは読み出し書き込み可能な不揮発性メモリ内に格納されているため変更、追加することが可能となる。
【００１２】
また、本発明はパッチプログラム実行可否の情報を読み出し書き込み可能不揮発性メモリに格納し、それを参照することによりパッチプログラムの実行可否を決定することも可能である。
【００１３】
また、本発明はパッチプログラムの書き込み、書換え及び読み出しに制限を設けると共に書き込み、書換え及び読み出し権利を許可する認証機能を内蔵することによりプログラムの改ざんを防ぐことが可能である。
【００１４】
【発明の実施の形態】
本発明は、読み出し専用不揮発性メモリに格納されている処理プログラムの一部（以下パッチプログラムと呼ぶ。）を読み出し書き込み可能な不揮発性メモリ内に格納すると共に前記パッチプログラムを実行するためのプログラムを読み出し専用不揮発性メモリ領域内に設けることを特徴としている。以下、本発明に係るＩＣカードの一実施の形態について図面を参照して詳細に説明する。
【００１５】
ここでは、ＭＦ（マスタファイル）、ＤＦ（専用ファイル）、ＥＦ（基礎ファイル）等のファイル情報を読み出し書き込み可能な不揮発性メモリ領域に設け、そのファイル情報を管理するファイル管理機能を具備したＩＣカードの例について説明する。
【００１６】
尚、前記ＭＦ（マスタファイル）はカード内にただ一つのみ存在するファイルであり、その領域はユーザーが利用可能なメモリ領域全体を包含する領域である。前記ＤＦ（専用ファイル）は、カード内に複数存在するファイルであって、一般にアプリケーション単位に割り当てられる。前記ＥＦ（基礎ファイル）は、上記したＭＦ又はＤＦ配下に属するファイルであり、アプリケーションが運用される時に使用する実データ（取引データ／キーデータ等）を格納する領域として利用されるファイルである。このうち、ＭＦ配下のＥＦはすべてのアプリケーション運用時に利用可能である。
【００１７】
図１は本発明のパッチプログラム及びユーザーが使用する情報が格納される読み出し書き込み可能不揮発性メモリ内のファイル構成の一例を示すものである。
【００１８】
本実施の形態では読み出し書き込み可能不揮発性メモリを電気的に書き込みと消去ができる読み出し専用メモリ（ＥＥＰＲＯＭ）とした。また強誘電体不揮発性メモリとすることも可能である。
【００１９】
ファイル構成として最上位に不揮発性メモリ全体を統括するＭＦ、アプリケーションで使用するデータ及びプログラムを格納するＥＦがあり、ＭＦの下位に存在しＥＦを格納するＤＦにて構成されている。
【００２０】
上記ＭＦ下にパッチプログラム格納用ＥＦ▲１▼、ＥＦ▲２▼を作成し、それぞれのＥＦにパッチプログラムを格納する。パッチプログラムは必要数だけ作成することが可能である。尚、ＥＦ▲３▼、ＥＦ▲４▼、ＥＦ▲５▼はアプリケーションが運用されるときに使用する実データ（取引データ／キーデータ等）を格納する領域として利用されるファイルである。
【００２１】
また、本実施例では読み出し書き込み可能不揮発性メモリ内にファイルシステムを格納しているが、ファイルシステム以外の情報でも可能である。
【００２２】
以下、図２を参照してパッチプログラム格納ＥＦの作成からパッチプログラム格納ＥＦにパッチプログラムが格納されてパッチプログラム実行許可設定がなされるまでの間の処理シーケンスについて説明する。図２はパッチプログラム格納ＥＦの作成からパッチプログラム格納ＥＦにパッチプログラムが格納されてパッチプログラム実行許可設定がなされるまでの間の処理シーケンスを示したフローチャートである。
【００２３】
まず、パッチプログラムを格納するＥＦを作成する（ステップＳ１）。次に、パッチプログラム格納ＥＦへのアクセス権を得るために、ファイルアクセス用専用キーを照合する（ステップＳ２）。ここで、ファイルアクセス用専用キーの照合の結果一致した場合にのみ、パッチプログラム格納ＥＦのプログラム書込み開始アドレスが取得される（ステップＳ３）。ファイルアクセス用専用キーの照合の結果一致しなかった場合には、パッチプログラム格納ＥＦのプログラム書込み開始アドレスは取得されず、パッチプログラム実行不可能な状態が保持されて（ステップＳ８）、処理は終了する。パッチプログラム格納ＥＦのプログラム書込み開始アドレスを取得した後は、アッセンブルによるＨｅｘコード作成によってパッチプログラムを作成する（ステップＳ４）。次に、作成したパッチプログラム（Ｈｅｘコード）を、パッチプログラム格納ファイルが取得した前記プログラム書込み開始アドレスより書込みあるいは書換えを行う（ステップＳ５）。但し、この時点ではパッチプログラムは動作しない。次に、パッチプログラム管理情報設定のアクセス権を得るために、ファイルアクセス用専用キーを照合する（ステップＳ６）。ここで、ファイルアクセス用専用キーの照合の結果一致した場合にのみ、パッチプログラムを動作させるためのパッチ管理情報が設定される（ステップＳ７）。ファイルアクセス用専用キーの照合の結果一致しなかった場合には、パッチプログラムを動作させるためのパッチ管理情報が設定されず、パッチプログラム実行不可能な状態が保持されて（ステップＳ８）、処理は終了する。パッチプログラムが動作するように管理情報が設定された後は、前記パッチプログラムを実行可能にする状態へと遷移する。
【００２４】
以下、図３を参照して、どのようなシーケンスでパッチプログラムが処理されるのか、すなわち、どのようなコマンド分岐の処理が行われているのかを説明する。図３は本実施例におけるパッチプログラム処理シーケンスを示したフローチャートである。
【００２５】
ＩＣカード起動後、読み出し専用不揮発性メモリに格納されているプログラム処理１を実行する（ステップＳ１０）。その後パッチプログラムを読み出すためのパッチプログラム読み出しプログラムを実行し、読み出し書き込み可能不揮発性メモリに格納されているパッチプログラム管理情報を読み出す（ステップＳ２０，３０）。このとき実行許可がされた場合、すなわちパッチプログラムが動作するように管理情報が適切に設定されている場合には（ステップＳ４０でＹｅｓ）、パッチプログラムは実行され（ステップＳ５０，６０）、その後処理２が実行される（ステップＳ７０）。実行許可されない場合、すなわちパッチプログラムが動作するように管理情報が適切に設定されていない場合には（ステップＳ４０でＮｏ）、パッチプログラムは実行されずに処理２が実行される（ステップＳ７０）。
【００２６】
以上、本発明者によってなされた発明を実施の形態に基づき、具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることは、いうまでもない。
【００２７】
【発明の効果】
本発明によれば、コマンドプログラムの修正及び追加をカード利用者が現在有しているカードに対して実施可能であるため、新規にＩＣチップ及びＩＣカードを作成する必要がなく、ユーザー領域内の情報もそのまま使用することが可能になる。したがって、現在使用しているＩＣカードを破棄することなく使用し続けることができ、資源の有効利用が図れる。
【００２８】
又、本発明によれば、カード発行者は新規カードの作成、発行、配布の作業負担及びカード利用者のカード変更に伴う負担が軽減できるという効果も得られる。
【００２９】
又、本発明によれば、パッチプログラムの書き込み、書換え及び読み出しに制限を設けると共に書き込み、書換え及び読み出し権利を許可する認証機能を内蔵しているので、プログラムの改ざんを防ぐことが可能である。
【図面の簡単な説明】
【図１】図１は本発明のパッチプログラム及びユーザーが使用する情報が格納される読み出し書き込み可能不揮発性メモリ内のファイル構成の一例を示すものである。
【図２】パッチプログラム格納ＥＦの作成からパッチプログラム格納ＥＦにパッチプログラムが格納されてパッチプログラム実行許可設定がなされるまでの間の処理シーケンスを示したフローチャートである。
【図３】本実施例におけるパッチプログラム処理シーケンスを示したフローチャートである。
【図１】
0003899223.tif 000002
【図２】
0003899223.tif 000003
【図３】
0003899223.tif 000004