(57)【特許請求の範囲】
【請求項１】
プログラムの実行指示と該プログラムの実行結果の判断と、複数のプログラム間での情報のやりとりを、制御スクリプトを用いてＩＣカード内の制御手段において行うＩＣカード内プログラム実行制御方法において、
前記制御スクリプトを解釈し、
必要なコマンドをＩＣカードＯＳに発行し、
前記ＩＣカード内のプログラムからの実行結果を受け取り、
前記実行結果と前記制御スクリプトに基づいて、次に行う処理を決定して、実行を指示し、
取得した実行結果を処理して、他のプログラムへ通知することを特徴とするＩＣカード内プログラム実行制御方法。
【請求項２】
制御スクリプトを送信する外部機器と、該制御スクリプトを取得して、該制御スクリプトに基づいてプログラムを実行するＩＣカードと、を有するＩＣカード内プログラム実行制御システムであって、
前記ＩＣカードは、
前記ＩＣカード内のプログラムと、
前記ＩＣカード内のプログラムの実行、実行結果取得を行うＩＣカードＯＳと、
前記ＩＣカード内において、プログラムの実行指示と、取得した該プログラムの実行結果の判断と、複数のプログラム間での情報のやりとりを、制御スクリプトを用いて行う制御手段と、を有し、
前記制御手段は、
前記制御スクリプトを解釈する手段と、
必要なコマンドを前記ＩＣカードＯＳに発行する手段と、
前記ＩＣカード内のプログラムから実行結果を受け取り、前記実行結果と前記制御スクリプトに基づいて、次に行う処理を決定して、実行を指示する手段と、
取得した実行結果を処理して、他のプログラムへ通知する手段と、
を含むことを特徴とするＩＣカード内プログラム実行システム。
【請求項３】
ＩＣカード内において、プログラムの実行指示と、取得した該プログラムの実行結果の判断と、複数のプログラム間での情報のやりとりを、制御スクリプトを用いて行う制御を実行させる実行制御プログラムを格納した記憶媒体であって、
前記制御スクリプトを解釈するステップと、
必要なコマンドをＩＣカードＯＳに発行するステップと、
前記ＩＣカード内のプログラムからの実行結果を受け取り、該実行結果と前記制御スクリプトに基づいて、次に行う処理を決定して、実行を指示するステップと、
取得した前記実行結果を処理し、他のプログラムへ通知させるステップと、
を実行するプログラムを格納したことを特徴とする実行制御プログラムを格納した記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ＩＣカード内プログラム実行制御方法及びシステム及び実行制御プログラムを格納した記憶媒体に係り、特に、制御スクリプトを用いたＩＣカード内のプログラムの実行を制御するためのＩＣカード内プログラム実行制御方法及びシステム及び実行制御プログラムを格納した記憶媒体に関する。
【０００２】
近年、１枚のＩＣカード内に複数のプログラムを格納し、多目的に利用できるＩＣカードが登場してきている。今後は、ＩＣカード内に格納されている複数のプログラムを利用した、高付加価値サービスの提供を行うことが重要になってくる。このような場合、ＩＣカード内の各プログラムの起動や、プログラム間でのデータの受渡しを行うような仕組みが必要である。本発明は、このようなＩＣカード内のプログラムを制御するためのＩＣカード内プログラム実行制御方法及びシステム及び実行制御プログラムを格納した記憶媒体に関する。
【０００３】
【従来の技術】
図６は、従来の第１のＩＣカード内プログラム実行制御システムを説明するための図である。同図に示すシステムは、外部機器とＩＣカードから構成され、ＩＣカードには、ＩＣカードＯＳとＩＣカード内プログラムが存在する。
同図に示すシステムにおいて、ＩＣカード内プログラムを実行させる場合、外部機器が、ＩＣカードＯＳに対して、複数のコマンドを発行する必要がある。よって、ＩＣカード内プログラムを複数実行させる場合は、外部機器が各プログラム毎にＩＣカードＯＳに対して複数のコマンドを発行することにより、実行する。
【０００４】
図７は、従来の第２のＩＣカード内プログラム実行システムを説明するための図である。同図に示すシステムは、外部機器とＩＣカードから構成され、ＩＣカードには、スクリプト処理部とＩＣカード内プログラムが存在する。
同図に示すシステムのＩＣカードは、複数のコマンドを一度に送る機能を有する。この機能は、外部域からＩＣカードへ送る複数のコマンドを、まとめて１つのスクリプトとして記述しておき、それをＩＣカードへ送信すると、ＩＣカード内のスクリプト処理部がそれを解釈／実行するというものである。この機能を利用すると、ＩＣカード内プログラムを実行させるための複数のコマンドをスクリプトとして記述し、それをＩＣカードへ発行することで通信回数を減らすことが可能である。
【０００５】
【発明が解決しようとする課題】
しかしながら、上記従来の第１のＩＣカード内プログラム実行システムでは、外部機器が各プログラム毎にＩＣカードＯＳに対して複数のコマンドを発行しなければならない。このような場合、ＩＣカード−外部機器間の通信が多数発生してしまい、通信時間のオーバーヘッドが問題になる。
【０００６】
また、上記従来の第２のＩＣカード内プログラム実行システムでは、ＩＣカード内プログラム実行時の通信効率の向上が見込める。しかし、このシステムは、スクリプトとして記述された命令を、ただ順番に実行する機能しか持っていないため、複数のプログラムを実行する際に、１つ目のプログラムの処理結果を処理して次のプログラムへ渡すといったことや、プログラムの処理結果を判断し、次の処理を行うといった、動的な処理を行うことはできない。
【０００７】
つまり、ＩＣカード内プログラムを複数実行させる場合、かつ、それらのＩＣカード内プログラム間で動的な処理を行う場合、それぞれのプログラム毎にスクリプトを記述し、処理結果を外部機器へ返却し、外部機器内で必要な処理や判断を行わなければならない。従って、複数のプログラムを実行させる場合、外部機器とＩＣカード間の通信は複数回行われるため、通信時間のオーバーヘッドの問題が発生する。
【０００８】
また、ＩＣカード内プログラムの処理結果が、ＩＣカード外へ出てしまうため、安全性が低下する恐れがある。
本発明は、上記の点に鑑みなされたもので、ＩＣカード内プログラム実行制御において、ＩＣカードと外部機器との効率的な通信を行いながら、安全性を確保することが可能なＩＣカード内プログラム実行制御方法及びシステム及び実行制御プログラムを格納した記憶媒体を提供することを目的とする。
【０００９】
【課題を解決するための手段】
本発明（請求項１）は、プログラムの実行指示と該プログラムの実行結果の判断と、複数のプログラム間での情報のやりとりを、制御スクリプトを用いてＩＣカード内の制御手段において行うＩＣカード内プログラム実行制御方法において、
制御スクリプトを解釈し、
必要なコマンドをＩＣカードＯＳに発行し、
ＩＣカード内のプログラムからの実行結果を受け取り、
実行結果と制御スクリプトに基づいて、次に行う処理を決定して、実行を指示し、
取得した実行結果を処理して、他のプログラムへ通知する。
【００１１】
図１は、本発明の原理構成図である。
本発明（請求項２）は、制御スクリプトを送信する外部機器と、該制御スクリプトを取得して、該制御スクリプトに基づいてプログラムを実行するＩＣカードと、を有するＩＣカード内プログラム実行制御システムであって、
ＩＣカードは、
ＩＣカード内のプログラム１３０と、
ＩＣカード内のプログラムの実行、実行結果取得を行うＩＣカードＯＳ１１０と、
ＩＣカード内において、プログラムの実行指示と、取得した該プログラムの実行結果の判断と、複数のプログラム間での情報のやりとりを、制御スクリプトを用いて行う制御手段１２０と、を有し、
制御手段１２０は、
制御スクリプトを解釈する手段と、
必要なコマンドをＩＣカードＯＳ１１０に発行する手段と、
ＩＣカード内のプログラム１３０から実行結果を受け取り、実行結果と制御スクリプトに基づいて、次に行う処理を決定して、実行を指示する手段と、
取得した実行結果を処理して、他のプログラムへ通知する手段と、を含む。
【００１３】
本発明（請求項３）は、ＩＣカード内において、プログラムの実行指示と、取得した該プログラムの実行結果の判断と、複数のプログラム間での情報のやりとりを、制御スクリプトを用いて行う制御を実行させる実行制御プログラムを格納した記憶媒体であって、
制御スクリプトを解釈するステップと、
必要なコマンドをＩＣカードＯＳに発行するステップと、
ＩＣカード内のプログラムからの実行結果を受け取り、該実行結果と制御スクリプトに基づいて、次に行う処理を決定して、実行を指示するステップと、
取得した実行結果を処理し、他のプログラムへ通知させるステップと、
を実行するプログラムを格納した記憶媒体である。
【００１５】
上記のように、本発明は、ＩＣカード内で、ＩＣカード内プログラムの実行結果の判断とＩＣカード内の複数のプログラム間での情報のやり取りを、制御スクリプトを用い、ＩＣカード内の制御機能において行うことにより、従来、外部で行っていた各ＩＣカード内プログラム処理結果判断をＩＣカード内だけで処理することが可能となる。
【００１６】
【発明の実施の形態】
図２は、本発明のＩＣカードシステムの構成を示す。
同図に示すＩＣカードシステムは、ＩＣカード１００、当該ＩＣカード１００を読み取るＩＣカードリーダ・ライタ等の外部機器２００及び、当該外部機器２００と接続されているＰＣ等の外部機器３００から構成される。
【００１７】
図３は、本発明のＩＣカードの構成を示す。
同図に示すＩＣカード１００は、ＩＣカードＯＳ１１０、制御部１２０、複数のプログラム１３０から構成される。
外部機器２００からＩＣカード１００へ制御スクリプトを渡すと、ＩＣカードＯＳ１１０は、当該制御スクリプトをＩＣカード内の制御部１２０に渡す。これにより、制御部１２０は、制御スクリプトを解釈し、必要なコマンドをＩＣカードＯＳ１１０に発行し、プログラム１３０の実行結果を受け取る。また、制御部１２０は、実行結果と制御スクリプトに基づいて次に行う処理を決定し、実行を指示し、実行結果を処理して、他のプログラムへの通知等を行う。制御部１２０は、制御スクリプトに記述された処理がすべて終了した後、スクリプト自体の処理結果を外部機器２００へ出力し、処理を終了させる。
【００１８】
上記のようなＩＣカード内プログラム実行制御を行うことで、ＩＣカード１００と外部機器２００、３００との通信は、最小限に抑えることができる。
【００１９】
【実施例】
以下、図面と共に本発明の実施例を説明する。
図４は、本発明の一実施例の動作を説明するための図であり、図５は、本発明の一実施例の制御スクリプトの例を示す。
ステップ１０１）  外部機器２００から図５のような制御スクリプトをＩＣカード１００に送信する。
【００２０】
ステップ１０２）  ＩＣカード１００のＩＣカードＯＳ１１０は、制御スクリプトをＩＣカード１００内の制御部１２０に渡す。制御部１２０において、制御スクリプトを解釈し、必要なコマンドをＩＣカードＯＳ１１０に発行する。
ステップ１０３）  ＩＣカード内のプログラム１３０からＩＣカードＯＳ１１０が実行結果を受け取り、当該実行結果を制御部１２０に渡す。これにより、制御部１２０は、実行結果を取得し、実行結果と制御スクリプトに基づき、次に行う処理を決定し、実行を指示する、または、実行結果を処理して他のプログラムへの通知を行う。
【００２１】
ステップ１０４）  制御部１２０は、制御スクリプトに記述された処理が全て終了すると、スクリプト自体の処理結果を外部機器２００へ出力し、処理を終了する。
上記の処理により、ＩＣカード１００と外部機器２００（または、３００）との通信は最小限に抑えることができ、通信効率を向上させることが可能となる。また、ＩＣカード内のプログラム１３０の処理結果が、ＩＣカード外に出ることによる安全性の低下を防ぐことができる。
【００２２】
なお、本発明は、上記の実施例に限定されることなく、特許請求の範囲内において種々変更・応用が可能である。
【００２３】
【発明の効果】
上述のように、ＩＣカード内プログラム実行制御をＩＣカード内に取り入れることで、従来は外部機器が行っていた各ＩＣカード内プログラム処理結果判断が、ＩＣカード内だけで処理することが可能となり、これにより、ＩＣカード−外部機器の通信回数が削減され、通信時間のオーバーヘッドは最小になる。
【００２４】
また、従来のように、各プログラムの処理結果を外部機器に与える必要がなくなり、安全性の低下を防ぐことができる。
【図面の簡単な説明】
【図１】本発明の原理構成図である。
【図２】本発明のＩＣカードシステムの構成図である。
【図３】本発明のＩＣカードの構成図である。
【図４】本発明の一実施例の動作を説明するための図である。
【図５】本発明の一実施例の制御スクリプトの例である。
【図６】従来の第１のＩＣカード内プログラム実行制御システムを説明するための図である。
【図７】従来の第２のＩＣカード内プログラム実行制御システムを説明するための図である。
【符号の説明】
１００  ＩＣカード
１１０  ＩＣカードＯＳ
１２０  制御手段、制御部
１３０  プログラム
【図１】
0003744286.tif 000002
【図２】
0003744286.tif 000003
【図３】
0003744286.tif 000004
【図４】
0003744286.tif 000005
【図５】
0003744286.tif 000006
【図６】
0003744286.tif 000007
【図７】
0003744286.tif 000008