JP2004164261A - Ic card and command processing method in the ic card - Google Patents

Ic card and command processing method in the ic card Download PDF

Info

Publication number
JP2004164261A
JP2004164261A JP2002329036A JP2002329036A JP2004164261A JP 2004164261 A JP2004164261 A JP 2004164261A JP 2002329036 A JP2002329036 A JP 2002329036A JP 2002329036 A JP2002329036 A JP 2002329036A JP 2004164261 A JP2004164261 A JP 2004164261A
Authority
JP
Japan
Prior art keywords
command
card
processing
application
terminal device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2002329036A
Other languages
Japanese (ja)
Other versions
JP4139674B2 (en
Inventor
Takashi Haginiwa
崇 萩庭
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dai Nippon Printing Co Ltd
Original Assignee
Dai Nippon Printing Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Dai Nippon Printing Co Ltd filed Critical Dai Nippon Printing Co Ltd
Priority to JP2002329036A priority Critical patent/JP4139674B2/en
Publication of JP2004164261A publication Critical patent/JP2004164261A/en
Application granted granted Critical
Publication of JP4139674B2 publication Critical patent/JP4139674B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Credit Cards Or The Like (AREA)
  • Stored Programmes (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To reduce the number of times for command issuing, and to reduce processing time in an IC card which successively executes a plurality of applications. <P>SOLUTION: The IC card is characterized by being provided with a multicast command storing a processing command, a management table managing an application which can be executed by the IC card, a control shifting means which sequentially selects a plurality of applications which execute the processing command and shifts the control of the execution of the processing command to the application, a response-retaining area, which temporally retains each execution result data of the plurality of applications, and a response transmitting means which transmits the execution result data retained, in the response retaining area to a terminal device; and a command processing method which enables one processing command to be executed in the plurality of applications, based on the multicast command. <P>COPYRIGHT: (C)2004,JPO

Description

【0001】
【発明の属する技術分野】
本発明は、複数のアプリケーションプログラム(以下、単にアプリケーションという)を実行可能なICカードに関し、特に、連続で実行する複数のアプリケーションにおけるコマンドの処理方法に関するものである。
【0002】
【従来の技術】
従来、JavaCard(登録商標)やMultosのような複数のアプリケーションプログラムを実行可能なICカードは、ISO7816−4に従い、国内および世界中で重複がないように登録制により付与されるAIDという5〜16バイトの固有の識別子を付けてアプリケーションを一意に特定し、そのAIDによりアプリケーションを選択してから、続く処理を指示するという手順を取っている。
【0003】
例えば、クレジットの支払い処理とポイント加算処理を行うには、まず、端末装置が、「SELECT FILE xxxx」(xxxxは、クレジットアプリケーションを示すAID)というコマンドをICカードに送信し、ICカードが、クレジットアプリケーションを選択し、次に、認証コマンドや支払いコマンドを端末装置からICカードに送信すると、ICカードは、それらのコマンドの実行制御を、選択済みのクレジットアプリケーションに移動するという手順になる。
【0004】
ISO7816−4において、コマンド実行の制御は、選択されているアプリケーションに対して移動するため、クレジットの支払い処理に続いてポイント加算処理を行うには、新たにポイントアプリケーションを選択し直して、ポイント加算コマンドを端末装置からカードに送信する必要がある。
【0005】
つまり、必ず連続して複数のアプリケーションで処理したい同一のコマンドにおいても、アプリケーションが異なる場合は、その都度、アプリケーションの選択コマンドの送信、および選択したアプリケーションへのコマンドへの実行制御の移動を行わなければならない。
【0006】
また、近い将来、ICカードは、携帯電話、携帯情報端末(PDA:Personal Digital Assistant)、情報家電などの様々な機器を介してネットワーク、特にインターネットに接続し、インターネットの標準的なプロトコルであるTCP/IP(プロトコルの詳細については、非特許文献1を参照)による通信を行うことが予想されており、従来のように端末装置の要求にICカードが応えるだけでなく、ICカードに搭載されたアプリケーションがインターネットに接続しにいくようになる。
【0007】
しかしながら、ICカードで使用されるISO規格の下位層(ISO7816−3)は、半二重の通信プロトコルであるため、ICカード側から送信を開始することは想定されておらず、ICカードは、必ず端末装置側からコマンドを受信し、ICカード内部の処理結果を端末装置に返信する仕組みとなっている。
【0008】
ICカードからネットワークへ送信したい場合には、まず端末装置から定期的に「送信するかどうか(ネットワークと通信を行うかどうか)」をICカードへ問い合わせし(ポーリング)、それに応える形でICカードが通信を開始する方式が、IETF(Internet Engineering Task Force)に対して提案されている(例えば、非特許文献2参照。)。
【0009】
【非特許文献1】
Postel, J.、“Transmission Control Protocol”、RFC 793、1981年9月
【非特許文献2】
Mobile−Mind社、“IP and ARP over ISO 7816”、[online]、2001年1月、[平成14年10月12日検索]、インターネット<URL:http://www.scdk.com/draft−guthery−ip7816−01.txt>
【0010】
しかしながら、ポーリング方式は、例えば、10個のアプリケーションを実行可能なICカードの場合、各々のアプリケーションに対してポーリングを発行する必要があるため、ポーリングのコマンドを処理するために選択コマンドを10回発行するし、ポーリングのコマンドも10回送信する必要があり、通信コストと処理時間が掛るという問題がある。
【0011】
【発明が解決しようとする課題】
本発明は上述の問題点に鑑みてなされたものであり、複数のアプリケーションを連続して実行可能なICカードにおいて、コマンド発行回数を減らし、処理時間を減らすことを目的とする。
【0012】
【課題を解決するための手段】
上記目的を達成するために、本発明の第1の態様は、端末装置から処理コマンドを受信し、該処理コマンドをアプリケーションプログラムにおいて実行し、該処理コマンドの実行結果データを前記端末装置に送信するICカードにおいて、複数のアプリケーションプログラムにより実行される処理コマンドを格納するマルチキャストコマンドと、該ICカードが実行可能なアプリケーションプログラムを管理する管理テーブルと、前記処理コマンドを実行する複数のアプリケーションプログラムを順次選択し、前記選択された複数のアプリケーションプログラムを順次指定し前記処理コマンド実行の制御を該アプリケーションプログラムに移動する制御移動手段と、前記処理コマンドを実行した複数のアプリケーションプログラムの各々の実行結果データを一時的に保持するレスポンス保持領域と、前記複数のアプリケーションプログラムによる処理コマンドの実行が全て終了した後に前記レスポンス保持領域に保持する実行結果データを前記端末装置に送信するレスポンス送信手段とを設けたものである。
【0013】
本発明の第2の態様は、上述の第1の態様に係るICカードにおいて、前記制御移動手段が、前記マルチキャストコマンドの中のクラスバイトおよび命令種類と呼ばれるコマンド識別情報により、複数のアプリケーションプログラムにおいて実行するマルチキャストコマンドと特定のアプリケーションプログラムにおいて実行する通常コマンドとを識別するようにしたものである。
【0014】
本発明の第3の態様は、上述の第1または2の態様に係るICカードにおいて、前記管理テーブルに、アプリケーションプログラムを一意に特定可能なアプリケーション識別情報を設け、前記制御移動手段が、予め定めた規則に従い、前記アプリケーション識別情報が前記マルチキャストコマンドに格納されているアプリケーションプログラムを指定する指定情報と一致する複数のアプリケーションプログラムを順次選択し、処理コマンド実行の制御を順次移動するようにしたものである。
【0015】
本発明の第4の態様は、端末装置から処理コマンドを受信し、該処理コマンドをアプリケーションプログラムにおいて実行し、該処理コマンドの実行結果データを前記端末装置に送信するICカードにおけるコマンドの処理方法において、該ICカードにおいて実行可能なアプリケーションプログラムを管理テーブルに記憶する段階と、前記端末装置が、複数のアプリケーションプログラムにより実行する処理コマンドを格納するマルチキャストコマンドをICカードへ送信する段階と、前記マルチキャストコマンドに基づき、連続実行する複数のアプリケーションプログラムを順次選択し前記処理コマンド実行の制御を選択された該アプリケーションプログラムに移動する段階と、前記処理コマンドを実行した各々のアプリケーションプログラムが、実行結果データを一時的にレスポンス保持領域へ保持する段階と、前記複数のアプリケーションプログラムによる処理コマンドの実行が全て終了した後に、前記レスポンス保持領域に保持する実行結果データを前記端末装置に送信する段階とを行うようにしたものである。
【0016】
本発明の第5の態様は、上述の第4の態様に係るICカードにおけるコマンド方法において、前記処理コマンドが、複数のアプリケーションプログラムに対して通信開始要求があるかどうかを確認するための処理コマンドであり、前記処理コマンドにより各々のアプリケーションプログラムが、通信開始要求の有無を一時的にレスポンス保持領域へ保持する段階を行うようにしたものである。
【0017】
【発明の実施の形態】
以下、本発明を図示する実施形態に基づいて説明する。図1は、本発明のICカード内部の概要構成図である。ICカード1は、I/O制御部2、CPU3、記憶手段4、プログラム格納部5、作業用メモリ6を備えている。
【0018】
I/O制御部2は、ICカード1がICカード用リーダ/ライタ7と通信を行うためのインタフェースである。
【0019】
CPU3は、プログラム格納部5内に記録している様々なアプリケーションを実行するものである。アプリケーションを実行する際に、必要に応じて記憶手段4や作業用メモリ6を使用する。
【0020】
記憶手段4は、実際には不揮発メモリであるEEPROM(Electrically Erasable Programmable Read−Only Memory)であり、様々なデータを記憶し、保持するのに使用する。記憶手段4は、その一部にアプリケーションの管理テーブル8を記憶する領域を備えている。
【0021】
管理テーブル8は、OSまたはカードマネージャ(アプリケーションの選択、インストール、削除、メモリ管理などを行う一種のアプリケーション。OSの一部に組み込まれている場合もある)が、アプリケーションの管理用に使用し、アプリケーション毎のAIDを記憶するものである。
【0022】
プログラム格納部5は、OSおよびCPU3が実行可能なAIDに対応するアプリケーション本体を記憶するものである。OSやカード製造時に予めアプリケーションを記録するROM(Read Only Memory)か、アプリケーションをロードして使用することが可能なEEPROMがある。
【0023】
プログラム格納部5は、制御移動手段9およびレスポンス送信手段10を記憶する。制御移動手段9およびレスポンス送信手段10は、OSやカードマネージャの一部、またはOSやカードマネージャと緊密に連携するアプリケーションである。
【0024】
制御移動手段9は、端末装置から受信する同一のコマンドを実行する複数のアプリケーションを順次選択し、該コマンドの実行制御を該アプリケーションに移動するものである。
【0025】
複数のアプリケーションにおいて、アプリケーションを選択し、実行制御を移動する順番は、管理テーブル8の記憶順序でもよいし、別途用意する優先順位を設定するテーブルの順序でもよいし、現在選択されているアプリケーションを最優先にしてもよい。
【0026】
各々のアプリケーションは、コマンドを実行した結果を一時的にレスポンス保持領域へ記憶する。レスポンス送信手段10は、複数のアプリケーションによる同一コマンドの実行が全て終了した後に、レスポンス保持領域に保持する実行結果を前記端末装置に送信するものである。
【0027】
ここで、ICカード1が実行するコマンドおよび該コマンドに対するレスポンスについて説明する。
【0028】
図2は、ISO7816−4により規定されている端末装置からICカード1へ送られるAPDUコマンドの構造を示すものである。
【0029】
APDUコマンドの先頭のCLAは、クラスバイトと呼ばれるものであり、該コマンドの内容がISO7816−4に準拠するか否かを表し、INSは、コマンドコードと呼ばれるコマンドの種類を表すものであり、P1およびP2がコマンドに与えるパラメータを表し、Lcはデータの長さを表す。
【0030】
APDUコマンドは、図2の形式の他に、Lc以下を省略する、データ部の後ろにLeと呼ばれるICカードからの返信の長さを付ける、付けない、という複数の構造を用いることが可能である。
【0031】
また、図3は、ISO7816−4により規定されているICカード1から端末装置からへ送られるレスポンスデータの構造を示すものである。
【0032】
レスポンスデータは、アプリケーションの処理結果と、2バイトのステータスワード(SW1、SW2)から構成されており、アプリケーションからOSを経由して端末装置に送信される。
【0033】
本発明においては、構造やコーディングはISO7816−4のAPDUコマンドに準拠するが、当該コマンドが複数のアプリケーションにより実行されるコマンドであるという、意味的に拡張したマルチキャストコマンドを定義する。図4にマルチキャストコマンドの構造を示す。
【0034】
マルチキャストコマンドは、例えば、CLAが「0xD0(0xは、16進表記。以下、同じ)」、INSが「0x00」、データ部にアプリケーションが実行すべきコマンド(以下、処理コマンドという)を格納することにより、定義する。
【0035】
更に、マルチキャストコマンドは、P1またはP2を使用するかどうかで、2種類のマルチキャストコマンドを定義することが可能である。
【0036】
例えば、P2の値を「0x00」に設定し、データ部に通常のAPDUコマンドそのものを格納することにより、管理テーブル8に記憶されている全てのアプリケーションが、該APDUコマンドを実行するようにする。
【0037】
マルチキャストコマンドのデータ部に格納するAPDUコマンドから、CLA、INSなどのヘッダー情報を省略して、通常のAPDUコマンドのデータ部だけを格納することにより、通信量を減らすことも可能である。
【0038】
P2にAIDの長さを格納、すなわちP2の値が「0x00」以外の場合は、該マルチキャストコマンドのデータ部の処理コマンドの先頭にAIDを格納し、管理テーブル8に記憶しているAIDが、処理コマンドの先頭からAID長で指定された長さのAIDと部分一致する全てのアプリケーションが、該処理コマンドを実行するようにする。
【0039】
また、マルチキャストコマンドにより、複数のアプリケーションが処理コマンドを実行した結果を一括して送信するためのレスポンス保持領域の構造を、図5に示す。
【0040】
レスポンス保持領域には、コマンドの実行結果を格納するISO7816−4におけるレスポンスの領域に、アプリケーション毎の区別をつけるために、AID長と、AIDと、該アプリケーションの処理結果と、SWとを一組にして、順次記憶する。アプリケーション毎の区別がつくのであれば、AID以外の情報を用いてもよい。
【0041】
以下、図6のフローチャートに従い、複数のアプリケーションを実行可能なICカード1が、支払い処理とポイント加算処理を連続して行う場合を例に、アプリケーションを選択し、処理コマンドを実行する手順を説明する。
【0042】
図7に、ICカード1において、クレジット処理と入退室管理の2つの業務を実現する複数のアプリケーションを管理する管理テーブル8の例を示す。
【0043】
図7は、クレジットカードの決済機能(AIDが「0x01 02 03 04 05 01」)、ポイント管理機能(AIDが「0x01 02 03 04 05 02」)、入退室管理(AIDが「0x05 06 07 08 09 0A」)の3つのアプリケーションをICカード1が実行可能であることを示している。
【0044】
また、図7は、クレジットカードでの支払い金額に応じてポイントを加算するなど、関連する複数のアプリケーションが連続実行することを示すように、クレジットカードの決済機能とポイント管理機能が、「0x01 02 03 04
05」というAIDの上5桁を共通にすることも示している。
【0045】
また、入退室管理(AIDが「0x05 06 07 08 09 0A」)は、一つのアプリケーションであるが、いくつかあるドアゲートを開閉する認証処理と、どのドアをいつ開閉したかの記録を保存する機能などを備えるものとする。
【0046】
ICカード1は、端末装置から電源の供給を受け、OS部を起動し、APDUコマンドの受信まで待機する。以下の説明においては、APDUコマンドがICカードに届く過程などは、端末装置などのネットワーク機器の処理であるから説明を省略する。
【0047】
ICカード1がAPDUコマンドを受信すると、制御移動手段9は、CLAおよびINSを参照して、マルチキャストコマンドであるか否かを判定する。
【0048】
受信したAPDUコマンドが、マルチキャストコマンドではなく、通常のAPDUコマンドであった場合、制御移動手段9は、INSが選択コマンド(SELECT FILE:実際の値は「0xA4」)かどうか判定する。
【0049】
クレジットカードの決済機能を選択する選択コマンドは、図8(a)に示す、INSに選択コマンドを、P1およびP2にAIDを用いてアプリケーションを選択することを示す「0x04 00」を、データ部に決済機能のAID「0x01 02 03 04 05 01」を、Lcにデータ部の長さ、すなわちAIDの長さ「6バイト」を格納したAPDUコマンドとなる。
【0050】
次に、INSが選択コマンドである場合、制御移動手段9は、P1、P2、Lc、およびデータ部に格納されているAID「0x01 02 03 04 05 01」に基づいて管理テーブル8を参照し、決済機能が存在するか否かを確認する。
【0051】
決済機能が管理テーブル8に存在する場合、制御移動手段9は、決済機能を選択し、選択済みのマークを付け、次に、選択済み決済機能に制御を移す。
【0052】
決済機能は、自分の処理結果(例えば、「選択OK」を示すコード)をOSへ返し、OSは決済機能のレスポンスを端末装置に送信し、コマンド受信待ち状態に戻る。
【0053】
受信したAPDUコマンドが、図8(b)に示すマルチキャストコマンドの場合、P2の値が「0x05」であり、データ部の先頭にAIDが格納されいることを示しているから、制御移動手段9は、データ部の先頭に格納されているAIDの5バイト分「0x01 02 03 04 05」と、処理コマンド「DEBIT 100yen」を取り出す。
【0054】
制御移動手段9は、5バイトの「0x01 02 03 04 05」を用いて管理テーブル8を検索し、まず、上5桁が「0x01 02 03 04 05」である決済機能を選択し、選択済みのマークを付け、次に、選択済みの決済機能に処理コマンド「DEBIT 100yen」を渡し、制御を移す。
【0055】
決済機能は、受け取った処理コマンド「DEBIT 100yen」により、100円の支払い処理を行い、AID長と、AIDと、例えば「支払い終了」などのコード(ここでは、Null「0x00」とする)と、SWを一組にして、レスポンス保持領域に記憶する。この時のレスポンス保持領域を図9(a)に示す。
【0056】
制御移動手段9は、決済機能が終了した後、再び管理テーブル8を検索し、上5桁が「0x01 02 03 04 05」であるポイント管理を選択し、選択済みのマークを付け、次に、選択済みのポイント管理に処理コマンド「DEBIT 100yen」を渡し、制御を移す。
【0057】
ポイント管理は、受け取った処理コマンド「DEBIT 100yen」により、例えば支払い金額100円の10%、すなわち10ポイントを加算し、AID長と、AIDと、例えばポイント残高10(「0x0A」)と、SWを一組にして、レスポンス保持領域に記憶する。この時のレスポンス保持領域を図9(b)に示す。
【0058】
更に、制御移動手段9は、ポイント管理が終了した後、再び管理テーブル8を検索し、上5桁が「0x01 02 03 04 05」のAIDを有するアプリケーションを探すが、入退室管理は「0x05 06 07 08 09」であるから、処理コマンド「DEBIT 100yen」を実行する全てのアプリケーションが終了したことになるので、検索の終了をレスポンス送信手段10へ通知する。
【0059】
レスポンス送信手段10は、決済処理、およびポイント管理の処理結果を保持する図9(b)の状態のレスポンス保持領域を、OSを介して端末装置に送信する。
【0060】
マルチキャストコマンド、制御移動手段9、およびレスポンス送信手段10を用いることにより、従来、「決済機能の選択」、「決済機能の実行」、「ポイント管理の選択」、および「ポイント加算」という4回のコマンド処理を、「アプリケーションの選択」と、「複数アプリケーションの順次実行」という2回のコマンドの処理で行うことが可能になる。
【0061】
また、異なる実施の形態として、IPアドレスを備え、TCP/IPの通信プロトコルを搭載したICカード1が、一定時間が経過した後に、入退室管理のサーバにICカード1内に記憶しているログを保管する通信の開始を行う場合の動作について説明する。
【0062】
上述したように、ICカード1側から通信を開始することはできないため、端末装置が一定間隔でポーリング(例えば、Lcを「0x00」とし、データ部に何も格納せずに、何もしない命令とする)を行い、ICカード1が通信を行うかどうかを確認する。
【0063】
端末装置は、複数のアプリケーションに対して一括でポーリングを行うため、APDUコマンドに、マルチキャストコマンドを示すCLAおよびINSと、ポーリングの命令とを格納した「0xD0 00 00 00 00」をICカード1へ送信する。
【0064】
ICカード1は、受信した選択したAPDUコマンドが、マルチキャストコマンドであり、Lcの値が「0x00」であるから、制御移動手段9は、該APDUコマンドが、複数のアプリケーションに対するポーリングコマンドであると判定する。
【0065】
制御移動手段9は、P2が「0x00」であるから管理テーブル8に記憶している全てのアプリケーションを対象として、ポーリングを試みる。
【0066】
まず、管理テーブル8に記憶している最初のアプリケーションである決済機能を選択し、選択済みのマークを付け、選択済みの決済機能に制御を移す。
【0067】
決済機能が通信を行う必要がない場合、決済機能は、AID長と、自身のAIDと、例えばSW1、およびSW2が「0x90 00」をレスポンス保持領域に記憶し、制御を返す。
【0068】
制御移動手段9は、決済機能がレスポンスを返した後、管理テーブル8の次のアプリケーションであるポイント管理を選択し、選択済みのマークを付け、選択済みのポイント管理に制御を移す。
【0069】
ポイント管理も通信を行う必要がない場合、ポイント管理は、決済機能と同様に、AID長と、自身のAIDと、例えばSW1、およびSW2が「0x90 00」をレスポンス保持領域に記憶し、制御を返す。
【0070】
制御移動手段9は、ポイント管理がレスポンスを返した後、更に、管理テーブル8の次のアプリケーションである入退室管理を選択し、選択済みのマークを付け、選択済みの入退室管理に制御を移す。
【0071】
入退室管理は、現在時刻をチェックし、前回通信から一定時間が経過している場合、AID長と、自身のAIDと、例えば、SW1およびSW2が「0x91
00」をレスポンス保持領域に記憶させ、制御を返す。
【0072】
更に、制御移動手段9は、入退室管理が制御を戻した後、再び管理テーブル8を検索するが、管理テーブル8には、次のアプリケーションがないので、ポーリングを行う全てのアプリケーションが終了したことを、レスポンス送信手段10へ通知する。
【0073】
レスポンス送信手段10は、レスポンス保持領域を、OSを介して端末装置に送信する。
【0074】
端末装置は、レスポンスを受信し、「0x91 00」を返したAID「0x05 06 07 08 09 0A」が通信を開始する要求を出したことを検知し、該AIDの入退室管理に対して、コマンドを発行し、以降の処理を継続させることが可能になる。
【0075】
以上、本発明を実施の形態に基づいて詳細に説明してきたが、本発明によるICカードおよびICカードにおけるコマンド処理方法は、上述の実施の形態に何ら限定されるものではなく、本発明の趣旨を逸脱しない範囲において種々の変更が可能なことは当然のことである。
【0076】
【発明の効果】
以上のとおり、本発明に係るICカードおよびICカードにおけるコマンド処理方法によれば、ICカードが実行可能な全てのアプリケーション、または一部のアプリケーションにおいて、受信した一つのコマンドを連続して実行することができるため、アプリケーションの選択回数、および通信回数を減らすことが可能となる。
【0077】
また、各々のアプリケーションのコマンド実行結果も一括して端末装置に送信することにより、通信回数と通信量を減らすことが可能になる。
【0078】
また、ISO7816−3と互換性を保ったまま、ICカード側からの通信開始に対して、一度のポーリングで通信開始要求があるかどうかを確認することができ、仮想的な全二重通信により、各々のアプリケーションに対するポーリングの回数を減らすことが可能になる。
【図面の簡単な説明】
【図1】本発明のICカード内部の概要構造図である。
【図2】ISO7816−4におけるAPDUコマンドの構成を示す説明図である。
【図3】ISO7816−4におけるレスポンスの構成を示す説明図である。
【図4】本発明のマルチキャストコマンドの構成を示す説明図である。
【図5】本発明のレスポンス保持領域の構造を示す説明図である。
【図6】本発明のICカードにおけるコマンド処理方法を示すフローチャートである。
【図7】本発明の管理テーブルの例である。
【図8】本発明のマルチキャストコマンドの例である。
【図9】本発明のレスポンス保持領域の例である。
【符号の説明】
1 ICカード
2 I/O制御部
3 CPU
4 記憶手段
5 プログラム格納部
6 作業用メモリ
7 ICカード用リーダ/ライタ
8 管理テーブル
9 制御移動手段
10 レスポンス送信手段
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to an IC card capable of executing a plurality of application programs (hereinafter, simply referred to as applications), and more particularly, to a method of processing commands in a plurality of applications executed continuously.
[0002]
[Prior art]
Conventionally, an IC card such as JavaCard (registered trademark) or Multitos that can execute a plurality of application programs has an AID of 5 to 16 provided by a registration system in accordance with ISO7816-4 so that there is no duplication in Japan and the world. An application is uniquely specified by attaching a unique identifier of a byte, an application is selected by the AID, and then a subsequent process is instructed.
[0003]
For example, in order to perform credit payment processing and point addition processing, first, a terminal device transmits a command “SELECT FILE xxxx” (xxxx is AID indicating a credit application) to an IC card, and the IC card When an application is selected and then an authentication command or a payment command is transmitted from the terminal device to the IC card, the IC card moves the execution control of those commands to the selected credit application.
[0004]
In ISO7816-4, the command execution control moves to the selected application. Therefore, in order to perform the point addition processing following the credit payment processing, a new point application is selected again, and the point addition is performed. Commands must be sent from the terminal to the card.
[0005]
In other words, even if the same command is to be processed by a plurality of applications consecutively, if the application is different, each time the application selection command must be transmitted and the execution control must be transferred to the selected application. Must.
[0006]
In the near future, an IC card will be connected to a network, particularly the Internet, through various devices such as a mobile phone, a personal digital assistant (PDA), and an information home appliance, and will be a standard protocol of the Internet, TCP. / IP (for details of the protocol, see Non-Patent Document 1), communication is expected to be performed. In addition to the conventional technology, the IC card responds to the request of the terminal device and is mounted on the IC card. The application starts to connect to the Internet.
[0007]
However, since the lower layer (ISO7816-3) of the ISO standard used for the IC card is a half-duplex communication protocol, it is not assumed that transmission is started from the IC card side. It is a mechanism that always receives a command from the terminal device side and returns a processing result inside the IC card to the terminal device.
[0008]
When transmitting from the IC card to the network, first, the terminal device periodically inquires of the IC card whether or not to transmit (whether or not to communicate with the network) (polling), and the IC card responds accordingly. A method of starting communication has been proposed for IETF (Internet Engineering Task Force) (for example, see Non-Patent Document 2).
[0009]
[Non-patent document 1]
Postel, J.M. , "Transmission Control Protocol", RFC 793, September 1981 [Non-Patent Document 2]
Mobile-Mind, Inc., “IP and ARP over ISO 7816”, [online], January 2001, [searched on October 12, 2002], Internet <URL: http: // www. scdk. com / draft-guttery-ip7816-01. txt>
[0010]
However, in the polling method, for example, in the case of an IC card capable of executing ten applications, it is necessary to issue a polling to each application, and therefore, a selection command is issued ten times to process the polling command. In addition, the polling command needs to be transmitted ten times, which causes a problem that communication cost and processing time are required.
[0011]
[Problems to be solved by the invention]
The present invention has been made in view of the above problems, and has as its object to reduce the number of command issuances and the processing time in an IC card capable of continuously executing a plurality of applications.
[0012]
[Means for Solving the Problems]
In order to achieve the above object, a first aspect of the present invention receives a processing command from a terminal device, executes the processing command in an application program, and transmits execution result data of the processing command to the terminal device. In the IC card, a multicast command for storing processing commands executed by a plurality of application programs, a management table for managing application programs executable by the IC card, and a plurality of application programs for executing the processing commands are sequentially selected. A control moving means for sequentially designating the plurality of selected application programs and transferring control of the execution of the processing command to the application program; A response holding area for temporarily holding result data, and a response sending unit for sending to the terminal device execution result data to be held in the response holding area after all of the execution of the processing commands by the plurality of application programs are completed. It is provided.
[0013]
According to a second aspect of the present invention, in the IC card according to the first aspect described above, the control transfer means uses a class byte in the multicast command and command identification information called an instruction type to execute a plurality of application programs. This is to distinguish a multicast command to be executed from a normal command to be executed in a specific application program.
[0014]
According to a third aspect of the present invention, in the IC card according to the first or second aspect described above, the management table is provided with application identification information capable of uniquely specifying an application program, and the control moving means is configured to perform the predetermined operation. According to the rules, the application identification information sequentially selects a plurality of application programs that match the specification information specifying the application program stored in the multicast command, and sequentially shifts the control of the processing command execution. is there.
[0015]
According to a fourth aspect of the present invention, there is provided a command processing method in an IC card for receiving a processing command from a terminal device, executing the processing command in an application program, and transmitting execution result data of the processing command to the terminal device. Storing an application program executable in the IC card in a management table; transmitting, by the terminal device, a multicast command storing processing commands to be executed by the plurality of application programs to the IC card; Sequentially selecting a plurality of application programs to be continuously executed based on the application command, and transferring control of the processing command execution to the selected application program; Ram temporarily holds execution result data in a response holding area, and after the execution of all processing commands by the plurality of application programs is completed, execution result data held in the response holding area to the terminal device. And a transmitting step.
[0016]
According to a fifth aspect of the present invention, in the command method for an IC card according to the fourth aspect, the processing command is a processing command for confirming whether there is a communication start request for a plurality of application programs. According to the processing command, each application program performs a step of temporarily storing the presence or absence of a communication start request in the response storage area.
[0017]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, the present invention will be described based on an illustrated embodiment. FIG. 1 is a schematic configuration diagram of the inside of an IC card according to the present invention. The IC card 1 includes an I / O control unit 2, a CPU 3, a storage unit 4, a program storage unit 5, and a work memory 6.
[0018]
The I / O control unit 2 is an interface for the IC card 1 to communicate with the IC card reader / writer 7.
[0019]
The CPU 3 executes various applications recorded in the program storage unit 5. When executing the application, the storage unit 4 and the working memory 6 are used as needed.
[0020]
The storage means 4 is an EEPROM (Electrically Erasable Programmable Read-Only Memory) which is actually a nonvolatile memory, and is used to store and hold various data. The storage unit 4 has an area for storing the application management table 8 in a part thereof.
[0021]
The management table 8 is used by an OS or a card manager (a kind of application for selecting, installing, deleting, and managing memory of an application, which may be incorporated in a part of the OS) for managing the application. The AID for each application is stored.
[0022]
The program storage unit 5 stores an OS and an application main body corresponding to an AID executable by the CPU 3. There is a ROM (Read Only Memory) that records an application in advance when an OS or a card is manufactured, or an EEPROM that can load and use an application.
[0023]
The program storage unit 5 stores the control moving unit 9 and the response transmitting unit 10. The control moving unit 9 and the response transmitting unit 10 are a part of the OS or the card manager, or an application that cooperates closely with the OS or the card manager.
[0024]
The control moving means 9 sequentially selects a plurality of applications that execute the same command received from the terminal device, and moves the execution control of the command to the application.
[0025]
In the plurality of applications, the order in which the applications are selected and the execution control is moved may be the order of storage in the management table 8, the order of a table for setting a priority order separately prepared, or the order of the currently selected application. The highest priority may be given.
[0026]
Each application temporarily stores the result of executing the command in the response holding area. The response transmitting unit 10 transmits the execution result held in the response holding area to the terminal device after the execution of the same command by all of the plurality of applications is completed.
[0027]
Here, a command executed by the IC card 1 and a response to the command will be described.
[0028]
FIG. 2 shows the structure of an APDU command sent from the terminal device to the IC card 1 specified by ISO7816-4.
[0029]
The CLA at the beginning of the APDU command is called a class byte, and indicates whether or not the content of the command conforms to ISO7816-4. INS indicates a type of command called a command code. And P2 represent parameters given to the command, and Lc represents the length of data.
[0030]
The APDU command can use a plurality of structures in addition to the format shown in FIG. 2, such as omitting Lc and below, and adding or not adding a reply length from the IC card called Le after the data portion. is there.
[0031]
FIG. 3 shows the structure of response data sent from the IC card 1 to the terminal device specified by ISO 7816-4.
[0032]
The response data includes a processing result of the application and a 2-byte status word (SW1, SW2), and is transmitted from the application to the terminal device via the OS.
[0033]
In the present invention, the structure and coding conform to the APDU command of ISO7816-4, but define a multicast command that is semantically expanded such that the command is a command executed by a plurality of applications. FIG. 4 shows the structure of the multicast command.
[0034]
As the multicast command, for example, the CLA stores “0xD0 (0x is a hexadecimal notation; the same applies hereinafter)”, the INS stores “0x00”, and the command to be executed by the application (hereinafter referred to as a processing command) in the data section. Is defined by
[0035]
Furthermore, two types of multicast commands can be defined depending on whether the multicast command uses P1 or P2.
[0036]
For example, by setting the value of P2 to “0x00” and storing the normal APDU command itself in the data part, all the applications stored in the management table 8 execute the APDU command.
[0037]
By omitting header information such as CLA and INS from the APDU command stored in the data part of the multicast command and storing only the data part of the normal APDU command, it is also possible to reduce the traffic.
[0038]
When the length of the AID is stored in P2, that is, when the value of P2 is other than “0x00”, the AID is stored at the beginning of the processing command in the data part of the multicast command, and the AID stored in the management table 8 is All applications that partially match the AID with the length specified by the AID length from the beginning of the processing command execute the processing command.
[0039]
FIG. 5 shows the structure of a response holding area for collectively transmitting the results of execution of processing commands by a plurality of applications using a multicast command.
[0040]
In the response holding area, a set of an AID length, an AID, a processing result of the application, and a SW are set in order to distinguish each application in a response area in ISO7816-4 that stores a command execution result. And sequentially store them. If a distinction can be made for each application, information other than the AID may be used.
[0041]
In the following, a procedure for selecting an application and executing a processing command will be described with reference to the flowchart of FIG. 6, taking as an example a case where the IC card 1 capable of executing a plurality of applications performs payment processing and point addition processing continuously. .
[0042]
FIG. 7 shows an example of the management table 8 that manages a plurality of applications that realize two tasks of credit processing and entry / exit management in the IC card 1.
[0043]
FIG. 7 shows a credit card settlement function (AID is “0x01 02 03 04 05 01”), a point management function (AID is “0x01 02 03 04 05 02”), and an entry / exit management (AID is “0x05 06 07 08 09”). 0A ”) can be executed by the IC card 1.
[0044]
FIG. 7 shows that the payment function of the credit card and the point management function are set to “0x01 02” so as to indicate that a plurality of related applications are continuously executed, such as adding points according to the amount of money paid by the credit card. 03 04
It also shows that the first five digits of the AID "05" are made common.
[0045]
In addition, entry / exit management (AID is “0x05 06 07 08 09 0A”) is one application, but is a function of authentication processing for opening and closing some door gates and a function of storing records of which doors were opened and closed and when. And so on.
[0046]
The IC card 1 receives power supply from the terminal device, activates the OS unit, and waits until an APDU command is received. In the following description, the process in which the APDU command reaches the IC card is a process of a network device such as a terminal device, and thus the description is omitted.
[0047]
When the IC card 1 receives the APDU command, the control moving means 9 determines whether or not the command is a multicast command by referring to the CLA and the INS.
[0048]
When the received APDU command is not a multicast command but a normal APDU command, the control moving means 9 determines whether the INS is a selection command (SELECT FILE: the actual value is “0xA4”).
[0049]
The selection command for selecting the payment function of the credit card includes, as shown in FIG. 8A, a selection command for INS and "0x04 00" for P1 and P2 indicating that an application is to be selected using an AID in the data portion. The AID “0x01 02 03 04 05 01” of the payment function is an APDU command in which the length of the data portion, that is, the length of the AID “6 bytes” is stored in Lc.
[0050]
Next, when INS is a selection command, the control transfer means 9 refers to the management table 8 based on P1, P2, Lc, and AID “0x01 02 03 04 05 01” stored in the data section, Check whether the payment function exists.
[0051]
If the payment function is present in the management table 8, the control moving means 9 selects the payment function, marks it as selected, and then transfers control to the selected payment function.
[0052]
The payment function returns its own processing result (for example, a code indicating “selection OK”) to the OS, and the OS transmits a response of the payment function to the terminal device, and returns to a command reception waiting state.
[0053]
When the received APDU command is the multicast command shown in FIG. 8B, the value of P2 is “0x05”, indicating that the AID is stored at the head of the data portion. , 5 bytes of AID “0x01 02 03 04 05” stored at the head of the data section and the processing command “DEBIT 100yen” are extracted.
[0054]
The control transfer means 9 searches the management table 8 using 5 bytes of “0x01 02 03 04 05”, and first selects a payment function whose first five digits are “0x01 02 03 04 05”, and Then, a processing command “DEBIT 100yen” is passed to the selected payment function, and control is transferred.
[0055]
The payment function performs a payment process of 100 yen according to the received processing command “DEBIT 100yen”, and sets the AID length, the AID, and a code such as “payment completed” (here, Null “0x00”), A set of SWs is stored in the response holding area. The response holding area at this time is shown in FIG.
[0056]
After the settlement function is completed, the control moving means 9 searches the management table 8 again, selects the point management whose first five digits are “0x01 02 03 04 05”, attaches a mark of selection, and The processing command “DEBIT 100yen” is passed to the selected point management, and the control is transferred.
[0057]
In the point management, for example, 10% of the payment amount of 100 yen, that is, 10 points is added by the received processing command “DEBIT 100yen”, and the AID length, the AID, for example, the point balance 10 (“0x0A”), and the SW are added. One set is stored in the response holding area. FIG. 9B shows the response holding area at this time.
[0058]
Further, after the point management is completed, the control moving means 9 searches the management table 8 again to find an application having an AID whose first five digits are “0x01 02 03 04 05”, but the entry / exit management is “0x05 06”. Since it is “07 08 09”, it means that all the applications that execute the processing command “DEBIT 100yen” have ended, so the end of the search is notified to the response transmission unit 10.
[0059]
The response transmitting unit 10 transmits the response holding area in the state of FIG. 9B holding the processing results of the settlement processing and the point management to the terminal device via the OS.
[0060]
Conventionally, by using the multicast command, the control moving means 9 and the response transmitting means 10, four times of “selection of payment function”, “execution of payment function”, “selection of point management”, and “point addition” are conventionally performed. Command processing can be performed by processing two commands, “select an application” and “execute multiple applications sequentially”.
[0061]
Further, as a different embodiment, a log stored in the IC card 1 in a server for entry / exit management after a certain period of time has elapsed after the IC card 1 having the IP address and the TCP / IP communication protocol is mounted. An operation for starting communication for storing the information will be described.
[0062]
As described above, since communication cannot be started from the IC card 1 side, the terminal device performs polling at a fixed interval (for example, a command that sets Lc to “0x00”, stores nothing in the data section, and does nothing). Is performed) to confirm whether the IC card 1 performs communication.
[0063]
The terminal device transmits “0xD0 00 00 00 00 00” storing the CLA and INS indicating the multicast command and the polling command to the IC card 1 in order to perform polling for a plurality of applications at once. I do.
[0064]
The IC card 1 determines that the received selected APDU command is a multicast command, and the value of Lc is “0x00”. Therefore, the control transfer unit 9 determines that the APDU command is a polling command for a plurality of applications. I do.
[0065]
Since P2 is “0x00”, the control transfer unit 9 attempts polling for all applications stored in the management table 8.
[0066]
First, the payment function, which is the first application stored in the management table 8, is selected, marked as selected, and control is transferred to the selected payment function.
[0067]
If the payment function does not need to perform communication, the payment function stores the AID length, its own AID, and, for example, SW1 and SW2, “0x900” in the response holding area, and returns control.
[0068]
After the settlement function returns a response, the control transfer unit 9 selects the point management, which is the next application in the management table 8, attaches the selected mark, and transfers control to the selected point management.
[0069]
If the point management does not need to perform communication, the point management stores the AID length, its own AID, and, for example, SW1 and SW2 in the response holding area in the response holding area, as in the settlement function, and performs control. return.
[0070]
After the point management returns a response, the control moving unit 9 further selects the entry / exit management, which is the next application in the management table 8, attaches the selected mark, and transfers the control to the selected entry / exit management. .
[0071]
The entry / exit management checks the current time, and if a certain time has elapsed since the previous communication, the AID length, its own AID, and, for example, SW1 and SW2 are set to “0x91”.
00 ”is stored in the response holding area, and control is returned.
[0072]
Further, the control transfer means 9 searches the management table 8 again after the entry / exit management returns the control. However, since there is no next application in the management table 8, all the polling applications are terminated. Is notified to the response transmission means 10.
[0073]
The response transmitting unit 10 transmits the response holding area to the terminal device via the OS.
[0074]
The terminal device receives the response, detects that the AID “0x05 06 07 08 09 0A” that has returned “0x91 00” has issued a request to start communication, and issues a command to the entry / exit management of the AID. Is issued, and the subsequent processing can be continued.
[0075]
As described above, the present invention has been described in detail based on the embodiments. However, the IC card and the command processing method in the IC card according to the present invention are not limited to the above-described embodiments, and the gist of the present invention is as follows. Of course, various changes can be made without departing from the scope of the present invention.
[0076]
【The invention's effect】
As described above, according to the IC card and the command processing method in the IC card according to the present invention, a single received command is continuously executed in all applications or some applications that can be executed by the IC card. Therefore, the number of application selections and the number of communication times can be reduced.
[0077]
In addition, by transmitting the command execution results of each application to the terminal device at a time, the number of times of communication and the amount of communication can be reduced.
[0078]
Also, while maintaining compatibility with ISO7816-3, it is possible to confirm whether or not there is a communication start request by polling once with respect to communication start from the IC card side. , It is possible to reduce the number of polls for each application.
[Brief description of the drawings]
FIG. 1 is a schematic structural view of the inside of an IC card of the present invention.
FIG. 2 is an explanatory diagram showing a configuration of an APDU command in ISO7816-4.
FIG. 3 is an explanatory diagram showing a configuration of a response in ISO7816-4.
FIG. 4 is an explanatory diagram showing a configuration of a multicast command of the present invention.
FIG. 5 is an explanatory diagram showing the structure of a response holding area according to the present invention.
FIG. 6 is a flowchart showing a command processing method in the IC card of the present invention.
FIG. 7 is an example of a management table according to the present invention.
FIG. 8 is an example of a multicast command of the present invention.
FIG. 9 is an example of a response holding area according to the present invention.
[Explanation of symbols]
1 IC card 2 I / O control unit 3 CPU
Reference Signs List 4 storage means 5 program storage section 6 working memory 7 IC card reader / writer 8 management table 9 control moving means 10 response transmission means

Claims (5)

端末装置から処理コマンドを受信し、該処理コマンドをアプリケーションプログラムにおいて実行し、該処理コマンドの実行結果データを前記端末装置に送信するICカードであって、
複数のアプリケーションプログラムにより実行される処理コマンドを格納するマルチキャストコマンドと、
該ICカードが実行可能なアプリケーションプログラムを管理する管理テーブルと、
前記処理コマンドを実行する複数のアプリケーションプログラムを順次選択し、前記処理コマンド実行の制御を該アプリケーションプログラムに移動する制御移動手段と、
前記処理コマンドを実行した複数のアプリケーションプログラムの各々の実行結果データを一時的に保持するレスポンス保持領域と、
前記複数のアプリケーションプログラムによる処理コマンドの実行が全て終了した後に、前記レスポンス保持領域に保持する実行結果データを前記端末装置に送信するレスポンス送信手段と、
を備えることを特徴とするICカード。
An IC card for receiving a processing command from a terminal device, executing the processing command in an application program, and transmitting execution result data of the processing command to the terminal device,
A multicast command for storing processing commands executed by a plurality of application programs;
A management table for managing application programs executable by the IC card;
Control moving means for sequentially selecting a plurality of application programs for executing the processing command, and transferring control of the processing command execution to the application program;
A response holding area for temporarily holding execution result data of each of the plurality of application programs that have executed the processing command,
Response transmission means for transmitting, to the terminal device, execution result data held in the response holding area after all of the execution of the processing commands by the plurality of application programs are completed,
An IC card comprising:
請求項1記載のICカードであって、
前記制御移動手段が、
前記マルチキャストコマンドの中のクラスバイト、および命令種類と呼ばれるコマンド識別情報により、複数のアプリケーションプログラムにおいて実行するマルチキャストコマンドと、特定のアプリケーションプログラムにおいて実行する通常コマンドとを識別する、
ことを特徴とするICカード。
The IC card according to claim 1,
The control moving means,
Class bytes in the multicast command, and command identification information called instruction type, to identify a multicast command to be executed in a plurality of application programs and a normal command to be executed in a specific application program,
An IC card, characterized in that:
請求項1または2記載のICカードであって、
前記管理テーブルが、
アプリケーションプログラムを一意に特定可能なアプリケーション識別情報を備え、
前記制御移動手段が、
予め定めた規則に従い、前記アプリケーション識別情報が、前記マルチキャストコマンドに格納されているアプリケーションプログラムを指定する指定情報と一致する複数のアプリケーションプログラムを順次選択し、処理コマンド実行の制御を順次移動する、
ことを特徴とするICカード。
The IC card according to claim 1 or 2,
The management table is
With application identification information that can uniquely identify the application program,
The control moving means,
According to a predetermined rule, the application identification information sequentially selects a plurality of application programs that match the specification information specifying the application program stored in the multicast command, and sequentially shifts control of processing command execution.
An IC card, characterized in that:
端末装置から処理コマンドを受信し、該処理コマンドをアプリケーションプログラムにおいて実行し、該処理コマンドの実行結果データを前記端末装置に送信するICカードにおけるコマンドの処理方法であって、
該ICカードにおいて実行可能なアプリケーションプログラムを管理テーブルに記憶する段階と、
前記端末装置が、複数のアプリケーションプログラムにより実行する処理コマンドを格納するマルチキャストコマンドをICカードへ送信する段階と、
前記マルチキャストコマンドに基づき、連続実行する複数のアプリケーションプログラムを順次選択し、前記処理コマンド実行の制御を選択された該アプリケーションプログラムに移動する段階と、
前記処理コマンドを実行した各々のアプリケーションプログラムが、実行結果データを一時的にレスポンス保持領域へ保持する段階と、
前記複数のアプリケーションプログラムによる処理コマンドの実行が全て終了した後に、前記レスポンス保持領域に保持する実行結果データを前記端末装置に送信する段階と、
を設けたことを特徴とするICカードにおけるコマンド処理方法。
A method of processing a command in an IC card that receives a processing command from a terminal device, executes the processing command in an application program, and transmits execution result data of the processing command to the terminal device,
Storing an application program executable in the IC card in a management table;
Transmitting a multicast command, which stores processing commands to be executed by a plurality of application programs, to the IC card,
A step of sequentially selecting a plurality of application programs to be continuously executed based on the multicast command, and moving control of the processing command execution to the selected application program;
Each application program that has executed the processing command, temporarily holding the execution result data in the response holding area,
After all of the execution of the processing commands by the plurality of application programs are completed, transmitting execution result data held in the response holding area to the terminal device,
A command processing method in an IC card, comprising:
請求項4に記載のICカードにおけるコマンド処理方法であって、
前記処理コマンドが、
複数のアプリケーションプログラムに対して通信開始要求があるかどうかを確認するための処理コマンドであり、
前記処理コマンドにより、各々のアプリケーションプログラムが、通信開始要求の有無を一時的にレスポンス保持領域へ保持する段階、
を設けたことを特徴とするICカードにおけるコマンド処理方法。
A command processing method for an IC card according to claim 4, wherein
The processing command is:
A processing command for checking whether there is a communication start request for a plurality of application programs,
According to the processing command, each application program temporarily holds the presence or absence of a communication start request in a response holding area,
A command processing method in an IC card, comprising:
JP2002329036A 2002-11-13 2002-11-13 IC card and command processing method in IC card Expired - Fee Related JP4139674B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002329036A JP4139674B2 (en) 2002-11-13 2002-11-13 IC card and command processing method in IC card

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002329036A JP4139674B2 (en) 2002-11-13 2002-11-13 IC card and command processing method in IC card

Publications (2)

Publication Number Publication Date
JP2004164261A true JP2004164261A (en) 2004-06-10
JP4139674B2 JP4139674B2 (en) 2008-08-27

Family

ID=32807153

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002329036A Expired - Fee Related JP4139674B2 (en) 2002-11-13 2002-11-13 IC card and command processing method in IC card

Country Status (1)

Country Link
JP (1) JP4139674B2 (en)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006023791A (en) * 2004-07-06 2006-01-26 Dainippon Printing Co Ltd Multiapplication type ic card and application program
JP2008015976A (en) * 2006-07-10 2008-01-24 Fuji Electric Retail Systems Co Ltd Communication device
JP2010009467A (en) * 2008-06-30 2010-01-14 Toshiba Corp Information storage medium, information processing system, and command method
US20100056047A1 (en) * 2008-08-28 2010-03-04 Oberthur Technologies Method of exchanging data between two electronic entities
JP2011164677A (en) * 2010-02-04 2011-08-25 Ntt Docomo Inc Communication control device and program
WO2011135721A1 (en) * 2010-04-30 2011-11-03 富士通株式会社 Information processing device and power consumption management program
JP2013069108A (en) * 2011-09-22 2013-04-18 Toshiba Corp Ic card, portable electronic device and ic card control method
JP2016157488A (en) * 2011-03-08 2016-09-01 ソニー株式会社 Information processing apparatus, information processing method, and program
US9760323B2 (en) 2014-09-30 2017-09-12 Brother Kogyo Kabushiki Kaisha Image processing apparatus, and method and computer-readable medium for the same
JP2020512564A (en) * 2017-03-29 2020-04-23 ラトガース,ザ ステート ユニバーシティ オブ ニュー ジャージー System and method for real-time measurement of surface curvature and thermal expansion of small samples

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006023791A (en) * 2004-07-06 2006-01-26 Dainippon Printing Co Ltd Multiapplication type ic card and application program
JP4641157B2 (en) * 2004-07-06 2011-03-02 大日本印刷株式会社 Multi-application IC card and application program
JP2008015976A (en) * 2006-07-10 2008-01-24 Fuji Electric Retail Systems Co Ltd Communication device
JP2010009467A (en) * 2008-06-30 2010-01-14 Toshiba Corp Information storage medium, information processing system, and command method
US20100056047A1 (en) * 2008-08-28 2010-03-04 Oberthur Technologies Method of exchanging data between two electronic entities
US9253628B2 (en) * 2008-08-28 2016-02-02 Oberthur Technologies Method of exchanging data between two electronic entities
JP2011164677A (en) * 2010-02-04 2011-08-25 Ntt Docomo Inc Communication control device and program
JP5438212B2 (en) * 2010-04-30 2014-03-12 富士通株式会社 Information processing apparatus and power consumption management program
WO2011135721A1 (en) * 2010-04-30 2011-11-03 富士通株式会社 Information processing device and power consumption management program
US9298245B2 (en) 2010-04-30 2016-03-29 Fujitsu Limited Information processing apparatus performing processes in parallel
JP2016157488A (en) * 2011-03-08 2016-09-01 ソニー株式会社 Information processing apparatus, information processing method, and program
JP2018088288A (en) * 2011-03-08 2018-06-07 ソニー株式会社 Information processing apparatus, information processing method, and program
JP2020038724A (en) * 2011-03-08 2020-03-12 ソニー株式会社 Information processing device, information processing method, and program
US10949630B2 (en) 2011-03-08 2021-03-16 Sony Corporation Conditional relocation of identification information within a processing instruction for use in execution of a process by a selected application
JP2013069108A (en) * 2011-09-22 2013-04-18 Toshiba Corp Ic card, portable electronic device and ic card control method
US9760323B2 (en) 2014-09-30 2017-09-12 Brother Kogyo Kabushiki Kaisha Image processing apparatus, and method and computer-readable medium for the same
JP2020512564A (en) * 2017-03-29 2020-04-23 ラトガース,ザ ステート ユニバーシティ オブ ニュー ジャージー System and method for real-time measurement of surface curvature and thermal expansion of small samples

Also Published As

Publication number Publication date
JP4139674B2 (en) 2008-08-27

Similar Documents

Publication Publication Date Title
US9854383B2 (en) Method and system for managing multiple applications in near field communication
CN106470049B (en) NFC device and near field communication method with multiple safety elements
JP3834239B2 (en) How to load software components into a smart card, especially a format called &#34;applet&#34;
US7127570B2 (en) Proximity communication system, proximity communication method, data managing apparatus and data management method, storage medium, and computer program
US6676022B1 (en) Smart card system with command queuing
JP6252797B2 (en) Short-range wireless communication device, short-range wireless communication method, computer program, and storage medium
JP4139674B2 (en) IC card and command processing method in IC card
JP4615474B2 (en) Communication terminal, user data movement system, and user data movement method
JP4649578B2 (en) IC card information authentication system
JP2005202914A (en) Secure device and information processor
JP6516133B2 (en) Communication device and communication system
SG179374A1 (en) Ic card, mobile electronic device and data processing method in ic card
CN106033551B (en) Data analysis method, apparatus and system
US20080284572A1 (en) Data control system, control server, data control method, and program
JP2003168092A (en) Combination type ic card, controlling method thereof and system program thereof
JP4283611B2 (en) IC card remote control system
JP4184751B2 (en) IC card and application program selection method in IC card
US20100250838A1 (en) Portable data carrier comprising a web server
JP2006134210A (en) Mobile body terminal and data acquisition method using the same
JP3671238B2 (en) Dynamic interpretation of data for chip cards
JP2004038574A (en) Noncontact ic card communication system, reader/writer and noncontact ic card
JP2004192289A (en) Information processor
JP2005293362A (en) Data carrier and program for it
JP5971713B2 (en) IC card
KR100732333B1 (en) Mobile communication terminal having chip profile generation function and method for managing chip profile using the same

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20051107

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20071018

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080529

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080609

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110613

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110613

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120613

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120613

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130613

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees