JP6750450B2 - Electronic information storage medium, data transmission method, IC card, and data transmission program - Google Patents
Electronic information storage medium, data transmission method, IC card, and data transmission program Download PDFInfo
- Publication number
- JP6750450B2 JP6750450B2 JP2016206059A JP2016206059A JP6750450B2 JP 6750450 B2 JP6750450 B2 JP 6750450B2 JP 2016206059 A JP2016206059 A JP 2016206059A JP 2016206059 A JP2016206059 A JP 2016206059A JP 6750450 B2 JP6750450 B2 JP 6750450B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- tag
- value
- stored
- information
- 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.)
- Active
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
ICカード等の技術分野に関する。 The technical field of IC cards and the like.
近年、ICカードの用途は広がり、個人情報や取引データなど様々なデータがメモリに記録される。図1はアプリケーションに関するデータを格納するファイルの構成例を示す図である。データはデータオブジェクトなどのフォーマットでフォルダの配下にあるファイルに格納される。フォルダには、カード発行時のデータオブジェクトを格納する発行時格納ファイルと、追記されたデータオブジェクトを格納する追記用ファイルがある。こうしたファイル構成において、データオブジェクト1−1の内容を変更する場合に、データオブジェクト1−1を書き換えずにそのまま残した状態で、変更内容が反映されたデータオブジェクト1−2を追記する運用が行われることがある。例えば、ICカード発行時において、住所情報が記述されたデータオブジェクトが格納されるが、その後発行時の住所から変更があった場合、変更後の住所情報が記述されたデータオブジェクトが住所変更の度に追記される。これにより、住所の履歴情報がICカード内に保持されることとなる。 In recent years, the use of IC cards has expanded, and various data such as personal information and transaction data are recorded in a memory. FIG. 1 is a diagram showing a configuration example of a file that stores data regarding an application. The data is stored in a file under the folder in a format such as a data object. The folder has an issuance-time storage file that stores a data object at the time of card issuance and an additional-writing file that stores an additionally-written data object. In such a file structure, when the contents of the data object 1-1 are changed, the data object 1-2 in which the changes are reflected is added to the data object 1-1 without being rewritten. There are times when you are told. For example, when an IC card is issued, a data object in which address information is described is stored, but if the address at the time of issuance is changed after that, the data object in which the changed address information is described is Will be added to. As a result, the address history information is held in the IC card.
データオブジェクトは、例えば、TLV(Tag-Length-Value)形式で記述される。TLV形式は、データの種類(Tag)・長さ(Length)・値(value)を一纏めにして表現するフォーマットである。このICカードの住所の例では、データの種類(Tag)として「住所情報」であることを示す値が設定され、データの値(value)として実際の住所情報(例えば、東京都〇〇市〇〇町1−1−1)を示す値が設定され、データの長さ(Length)として、データの値(value)の長さ(データ長)を示す値が設定される。つまり、一のICカード内に同一のTag値を持つ複数のデータオブジェクトが記憶されることとなる。 The data object is described in, for example, the TLV (Tag-Length-Value) format. The TLV format is a format in which data type (Tag), length (Length), and value (value) are collectively expressed. In the example of the address of this IC card, a value indicating “address information” is set as the data type (Tag), and the actual address information (for example, Tokyo city 〇 〇) is set as the data value (value). A value indicating the town 1-1-1) is set, and a value indicating the length (data length) of the data value (value) is set as the data length (Length). That is, a plurality of data objects having the same Tag value are stored in one IC card.
一方で、特許文献1には、データオブジェクトを読み出す際、検索対象のファイルをカレントファイルだけでなく、指定したファイルまで拡張することで、効率的にデータオブジェクトを読み出すシステムが開示されている。
On the other hand,
特許文献1に記載のシステムによれば、効率的にデータオブジェクトを検索することが可能であるが、同一のTag値を持つデータオブジェクトが存在する場合について考慮されていないという問題がある。
According to the system described in
そこで、本発明は、このような点に鑑みてなされたものであり、同一のTag値を持つデータが複数記憶されている場合であっても、外部機器が効率的に所望のデータを取得することができる電子情報記憶媒体等を提供することを課題とする。 Therefore, the present invention has been made in view of such a point, and even if a plurality of data having the same Tag value is stored, the external device efficiently acquires desired data. It is an object to provide an electronic information storage medium and the like that can be used.
上記課題を解決するために、請求項1に記載の発明は、TLV(Tag-Length-Value)形式のデータであって、同一のT(Tag)値を持つ複数のデータを記憶するデータ記憶手段と、それぞれの前記データについて前記データ記憶手段に記憶された順序を示す記憶順序情報と、記憶された位置を示す位置情報を紐付ける紐付け情報を前記T(Tag)値毎に記憶する紐付け情報記憶手段と、前記データ記憶手段に記憶されているデータを取得する取得コマンドとともに当該取得コマンドで取得するデータのT(Tag)値と、当該データが前記データ記憶手段に記憶された順序を示す順序情報を外部機器から受信した場合、当該T(Tag)値の前記紐付け情報を参照して、当該順序情報に対応する前記記憶順序情報と紐付く位置情報の示す位置に記憶されているデータを前記外部機器に送信する送信手段と、を備えることを特徴とする。
In order to solve the above-mentioned problems, the invention according to
請求項2に記載の発明は、請求項1に記載の電子情報記憶媒体であって、前記送信手段は、前記取得コマンドとともに前記T(Tag)値と、前記順序情報の代わりである第1の所定情報を受信した場合、当該T(Tag)値の前記紐付け情報を参照して、直近に記憶されたデータを前記外部機器に送信することを特徴とする。 A second aspect of the present invention is the electronic information storage medium according to the first aspect, wherein the transmitting means is a substitute for the T(Tag) value and the order information together with the acquisition command. When the predetermined information is received, the most recently stored data is transmitted to the external device by referring to the linking information of the T(Tag) value.
請求項3に記載の発明は、請求項1又は2に記載の電子情報記憶媒体であって、前記送信手段は、前記取得コマンドとともに前記T(Tag)値と、前記順序情報の代わりである第2の所定情報を受信した場合、当該T(Tag)値と同一のT(Tag)値を持つ全データを前記外部機器に送信することを特徴とする。 A third aspect of the present invention is the electronic information storage medium according to the first or second aspect, wherein the transmitting means is a substitute for the T(Tag) value and the order information together with the acquisition command. When the predetermined information No. 2 is received, all data having the same T(Tag) value as the T(Tag) value is transmitted to the external device.
請求項4に記載の発明は、請求項1乃至3の何れか一項に記載の電子情報記憶媒体であって、前記データ記憶手段は、第1の記憶領域と、第2の記憶領域を有し、オブジェクトデータを記憶する際、当該オブジェクトデータのTag値と同じTag値を持つオブジェクトデータを未だ記憶していない場合に前記第1の記憶領域に記憶する一方、当該オブジェクトデータのTag値と同じTag値を持つオブジェクトデータを既に記憶している場合に前記第2の記憶領域に記憶し、前記送信手段は、前記取得コマンドとともに前記T(Tag)値と、前記順序情報の代わりである第3の所定情報を受信した場合、当該T(Tag)値と同一のT(Tag)値を持つオブジェクトデータであって、前記第1の記憶領域に記憶されているオブジェクトデータを前記外部機器に送信することを特徴とする。 A fourth aspect of the present invention is the electronic information storage medium according to any one of the first to third aspects, wherein the data storage means has a first storage area and a second storage area. However, when storing the object data, the object data having the same Tag value as the Tag value of the object data is stored in the first storage area if it is not yet stored, while the same as the Tag value of the object data. If the object data having the Tag value is already stored, the object data is stored in the second storage area, and the transmitting unit replaces the T(Tag) value and the order information together with the acquisition command. When the predetermined information is received, the object data having the same T(Tag) value as the T(Tag) value and stored in the first storage area is transmitted to the external device. It is characterized by
請求項5に記載の発明は、TLV(Tag-Length-Value)形式のデータであって、同一のT(Tag)値を持つ複数のデータを記憶するデータ記憶手段と、それぞれの前記データについて前記データ記憶手段に記憶された順序を示す記憶順序情報と、記憶された位置を示す位置情報を紐付ける紐付け情報を前記T(Tag)値毎に記憶する紐付け情報記憶手段と、を備える電子情報記憶媒体におけるプロセッサによるデータ送信方法であって、前記データ記憶手段に記憶されているデータを取得する取得コマンドとともに当該取得コマンドで取得するデータのT(Tag)値と、当該データが前記データ記憶手段に記憶された順序を示す順序情報を外部機器から受信した場合、当該T(Tag)値の前記紐付け情報を参照して、当該順序情報に対応する前記記憶順序情報と紐付く位置情報の示す位置に記憶されているデータを前記外部機器に送信する送信ステップ、を含むことを特徴とする。 The invention according to claim 5 is a data storage unit for storing a plurality of data having TLV (Tag-Length-Value) format and having the same T (Tag) value, and the data for each of the data. An electronic device comprising storage order information indicating the order stored in the data storage means, and linking information storage means for storing the linking information for linking the position information indicating the stored position for each T(Tag) value. A method for transmitting data by a processor in an information storage medium, comprising: a T(Tag) value of data acquired by the acquisition command together with an acquisition command for acquiring the data stored in the data storage means; When the order information indicating the order stored in the means is received from the external device, the storage order information associated with the order information is referred to by referring to the association information of the T(Tag) value, and the location information associated with the storage order information. A transmitting step of transmitting the data stored in the position shown to the external device.
請求項6に記載の発明は、TLV(Tag-Length-Value)形式のデータであって、同一のT(Tag)値を持つ複数のデータを記憶するデータ記憶手段と、それぞれの前記データについて前記データ記憶手段に記憶された順序を示す記憶順序情報と、記憶された位置を示す位置情報を紐付ける紐付け情報を前記T(Tag)値毎に記憶する紐付け情報記憶手段と、前記データ記憶手段に記憶されているデータを取得する取得コマンドとともに当該取得コマンドで取得するデータのT(Tag)値と、当該データが前記データ記憶手段に記憶された順序を示す順序情報を外部機器から受信した場合、当該T(Tag)値の前記紐付け情報を参照して、当該順序情報に対応する前記記憶順序情報と紐付く位置情報の示す位置に記憶されているデータを前記外部機器に送信する送信手段と、を備えることを特徴とする。 The invention according to claim 6 is a data storage means for storing a plurality of data having TLV (Tag-Length-Value) format and having the same T(Tag) value; Storage order information indicating the order stored in the data storage means, and linking information storage means for storing linking information for linking the position information indicating the stored position for each T(Tag) value; The T(Tag) value of the data acquired by the acquisition command together with the acquisition command for acquiring the data stored in the means, and the order information indicating the order in which the data is stored in the data storage means are received from the external device. In this case, referring to the associating information of the T(Tag) value, the data stored at the position indicated by the position information associated with the storage order information corresponding to the order information is transmitted to the external device. Means and are provided.
請求項7に記載の発明は、TLV(Tag-Length-Value)形式のデータであって、同一のT(Tag)値を持つ複数のデータを記憶するデータ記憶手段と、それぞれの前記データについて前記データ記憶手段に記憶された順序を示す記憶順序情報と、記憶された位置を示す位置情報を紐付ける紐付け情報を前記T(Tag)値毎に記憶する紐付け情報記憶手段と、を備える電子情報記憶媒体におけるプロセッサを、前記データ記憶手段に記憶されているデータを取得する取得コマンドとともに当該取得コマンドで取得するデータのT(Tag)値と、当該データが前記データ記憶手段に記憶された順序を示す順序情報を外部機器から受信した場合、当該T(Tag)値の前記紐付け情報を参照して、当該順序情報に対応する前記記憶順序情報と紐付く位置情報の示す位置に記憶されているデータを前記外部機器に送信する送信手段、として機能させることを特徴とする。 The invention according to claim 7 is a data storage means for storing a plurality of data having TLV (Tag-Length-Value) format and having the same T (Tag) value; An electronic device comprising storage order information indicating the order stored in the data storage means, and linking information storage means for storing the linking information for linking the position information indicating the stored position for each T(Tag) value. The processor in the information storage medium, the T(Tag) value of the data acquired by the acquisition command together with the acquisition command for acquiring the data stored in the data storage unit, and the order in which the data is stored in the data storage unit. When receiving the order information indicating from the external device, it is stored in the position indicated by the position information associated with the storage order information corresponding to the order information with reference to the association information of the T(Tag) value. It is characterized by functioning as transmitting means for transmitting the stored data to the external device.
本発明によれば、同一のTag値を持つデータが複数記憶されている場合でも、外部機器は、取得したいデータが記憶された順序とTag値を指定して取得コマンドとともに送信することにより効率的に当該データを取得することができる。 According to the present invention, even when a plurality of data having the same Tag value is stored, the external device can efficiently send the data together with the acquisition command by specifying the order in which the data to be acquired is stored and the Tag value. The data can be obtained.
以下、図面を参照して本発明の実施形態について詳細に説明する。以下に説明する実施形態は、ICチップを搭載するICカードに対して本発明を適用した場合の実施の形態である。 Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. The embodiment described below is an embodiment in which the present invention is applied to an IC card having an IC chip mounted thereon.
[1.ICチップ1aの構成及び機能概要]
まず、図2を参照して、本実施形態に係るICカード1に搭載されるICチップ1aの構成及び機能概要について説明する。図2は、ICカード1に搭載されるICチップ1aのハードウェア構成例を示す図である。ICカード1は、キャッシュカード、クレジットカード、社員カード等として使用される。或いは、ICカード1は、スマートフォンや携帯電話機等の通信機器に組み込まれる。或いは、ICチップ1aが通信機器の回路基板上に直接組み込まれて構成されるようにしてもよい。なお、ICチップ1aは、本発明の電子情報記憶媒体の一例である。
[1. Configuration and Function Outline of IC Chip 1a]
First, with reference to FIG. 2, an outline of the configuration and function of the IC chip 1a mounted on the
図2に示すように、ICチップ1aは、CPU(Central Processing Unit)10、RAM(Random Access Memory)11、ROM(Read Only Memory)12、不揮発性メモリ13、及びI/O回路14を備えて構成される。CPU10は、ROM12又は不揮発性メモリ13に記憶された各種プログラムを実行するプロセッサ(コンピュータ)である。なお、I/O回路14は、外部機器2とのインターフェイスを担う。これにより、ICチップ1aは、ICリーダ・ライタを備える外部機器2との間で接触又は非接触で通信を行うことができる。接触式のICチップ1aの場合、I/O回路14には、例えば、C1〜C8の8個の端子が備えられている。例えば、C1端子は電源端子(ICチップ1aへ電源供給する端子)、C2端子はリセット端子、C3端子はクロック端子、C5端子はグランド端子、C7端子は外部機器2との間で通信を行うための端子である。一方、非接触式のICチップ1aの場合、I/O回路14には、例えば、アンテナ、及び変復調回路が備えられている。なお、外部機器2の例としては、ICカード発行機、ATM、改札機、認証用ゲート等が挙げられる。或いは、ICチップ1aが通信機器に組み込まれる場合、外部機器2には通信機器の機能を担う制御部が該当する。
As shown in FIG. 2, the IC chip 1a includes a CPU (Central Processing Unit) 10, a RAM (Random Access Memory) 11, a ROM (Read Only Memory) 12, a
不揮発性メモリ13には、例えばフラッシュメモリが適用される。不揮発性メモリ13に記憶される各種プログラム及びデータの一部は、ROM12に記憶されてもよい。なお、不揮発性メモリ13は、「Electrically Erasable Programmable Read-Only Memory」であってもよい。本実施形態において、ROM12と不揮発性メモリ13との何れかに記憶されるプログラムには、オペレーティングシステム(Operating System、以下、「OS」という)、アプリケーションプログラム等が含まれる。
For example, a flash memory is applied to the
ここで、アプリケーションプログラムは、ICカード1においてアプリケーションインスタンスの機能(言い換えれば、モジュール)を実現するためのプログラムである。これにより、CPU10は、アプリケーションとして機能する。
Here, the application program is a program for realizing the function (in other words, module) of the application instance in the
また、不揮発性メモリ13には、アプリケーションに関するデータを格納するフォルダ(図示しない)が設けられており、更にその配下に発行時格納ファイル(図3(A))及び追記用ファイル(図3(B))が設けられている。発行時格納ファイルには、ICカード1が発行された際に発行者により作成されたオブジェクトデータが格納される。図3(A)の例では、オブジェクトデータ101、102が格納されている。オブジェクトデータ101のTag値は「0x005A」であり、オブジェクトデータ102のTag値は「0x5201」である。追記用ファイルには、ICカード1が発行された後に発行者又は第三者により作成されたオブジェクトデータであって、発行時格納ファイルに格納されている何れかのオブジェクトデータと同じTag値を持つオブジェクトデータが格納される。図3(B)の例では、Tag値が「0x005A」であるオブジェクトデータ201、203と、Tag値が「0x5201」であるオブジェクトデータ202が格納されている。すなわち、追記用ファイルには、発行時格納ファイルに格納されている何れかのオブジェクトデータと同じTag値を持ち、value値が異なるオブジェクトデータが格納されている。但し、発行時格納ファイルに格納されている何れかのオブジェクトデータとTag値及びvalue値が同一のオブジェクトデータが追記用ファイルに追加されることがあってもよい。
In addition, the
更に、不揮発性メモリ12には、管理テーブルが記憶される。管理テーブルは、追記用ファイルに格納されるオブジェクトデータのTag値毎に作成される。管理テーブルには、同じTag値を持つオブジェクトデータが追記用ファイルに追記された順序を示す情報(「追記順」という場合がある)と、当該オブジェクトデータが追記された位置を示す基準アドレス(例えば、追記用ファイルに対応するメモリ領域上の先頭アドレス)からのオフセット値を示す情報(「オフセット」という場合がある)が対応付けて記述される。例えば、図3(B)に示すように、オブジェクトデータ201、オブジェクトデータ202、オブジェクトデータ203の順序でオブジェクトデータが追記された場合、まず、オブジェクトデータ201が追加されると、図3(C)に示す管理テーブル(Tag:“0x005A”)が作成され(予めデータが記述されないテーブルの枠組みだけを作成しておいてもよい)、追記順「0x01」とオフセット「0x00」が対応付けて記述される。次いで、オブジェクトデータ202が追加されると、図3(D)に示す管理テーブル(Tag:“0x5201”)が作成され、追記順「0x01」とオフセット「0x02」が対応付けて記述される。次いで、オブジェクトデータ203が追加されると、図3(C)に示す管理テーブル(Tag:“0x005A”)に、追記順「0x02」とオフセット「0x06」が対応付けて記述される。
Furthermore, the
[2.コマンドの概要]
次に、外部機器2からICカード1に送信されるオブジェクトデータを取得するためのコマンド(「データ取得コマンド」という場合がある)について説明する。データ取得コマンドは、図4(A)に示すように、ヘッダとボディから構成される。ヘッダは「CLS」、「INS」、「P1」、「P2」から構成される。CLAは、INSにて指定したコマンドがISO準拠であるか否かを示す情報や、論理チャンネルのチャンネル番号を示す情報が格納される。INSはオブジェクトデータの取得を意味する情報が格納される。一方、ボディは「Lc」、「DATA」から構成される。LcはDATAに格納される値の長さを示す情報が格納される。DATAには、取得対象であるオブジェクトデータのTag値を示す情報が格納される。ヘッダのP1、P2(計2バイトの「パラメータ」)には、DATAで指定したTag値を持つオブジェクトデータのうち取得するオブジェクトデータを指定するための情報が格納される。具体的には、図4(B)に示すように、発行時に記憶されたオブジェクトデータを指定する場合には「0x0000」が格納され、直近に追記されたオブジェクトデータを指定する場合には「0xFFFF」が格納される。また、例えば、2番目に追記されたオブジェクトデータを指定する場合には10進数の2を示す「0x0002」(すなわち、追記順を示す情報)が格納される。
[2. Command summary]
Next, a command for acquiring the object data transmitted from the external device 2 to the IC card 1 (may be referred to as “data acquisition command”) will be described. The data acquisition command includes a header and a body, as shown in FIG. The header is composed of "CLS", "INS", "P1", and "P2". The CLA stores information indicating whether the command designated by INS is ISO compliant or not, and information indicating the channel number of the logical channel. The INS stores information that means acquisition of object data. On the other hand, the body is composed of "Lc" and "DATA". Lc stores information indicating the length of the value stored in DATA. Information indicating the Tag value of the object data to be acquired is stored in DATA. Information for designating the object data to be acquired among the object data having the Tag value designated by DATA is stored in P1 and P2 (a total of 2 bytes of “parameter”) of the header. Specifically, as shown in FIG. 4B, "0x0000" is stored when specifying the object data stored at the time of issue, and "0xFFFF" is specified when specifying the most recently added object data. Is stored. Further, for example, when designating the second additionally written object data, “0x0002” indicating the decimal number 2 (that is, information indicating the order of additional writing) is stored.
[3.ICチップ1aにおけるコマンド受信時処理]
次に、図5を用いて、ICチップ1aのアプリケーション(外部機器2と通信を行うアプリケーションであって、例えば、SELECTコマンドにより選択されたアプリケーション)が外部機器2からコマンドを受信した際の動作(コマンド受信時処理)について説明する。
[3. Processing when command is received in IC chip 1a]
Next, referring to FIG. 5, the operation when the application of the IC chip 1a (the application that communicates with the external device 2 and is selected by the SELECT command, for example) receives a command from the external device 2 ( The command receiving process) will be described.
まず、アプリケーション(を実行するCPU10)は、データ取得コマンドを受信したか否かを判定する(ステップS101)。具体的には、ヘッダのINSの値に基づいて判定する。アプリケーションは、データ取得コマンドを受信していない(他のコマンドを受信した)と判定した場合には(ステップS101:NO)、受信したコマンドを実行し、応答を外部機器2に送信して(ステップ102)、当該フローチャートに示す処理を終了する。一方、アプリケーションは、データ取得コマンドを受信したと判定した場合には(ステップS101:YES)、次いで、受信したコマンドのパラメータP1、P2の値が「0x0000」であるか否かを判定する(ステップS103)。
First, the application (the
アプリケーションは、パラメータP1、P2の値が「0x0000」であると判定した場合には(ステップS103:YES)、発行時に追加されたオブジェクトデータを応答とともに外部機器2に送信して(ステップ104)、当該フローチャートに示す処理を終了する。具体的には、アプリケーションは、発行時格納ファイルに格納されているオブジェクトデータのうち、受信したコマンドのDATAに格納されている情報が示すTag値と同じTag値を持つオブジェクトデータを外部機器2に送信する。一方、アプリケーションは、パラメータP1、P2の値が「0x0000」ではないと判定した場合には(ステップS103:NO)、次いで、受信したコマンドのパラメータP1、P2の値が「0xFFFF」であるか否かを判定する(ステップS105)。 When the application determines that the values of the parameters P1 and P2 are “0x0000” (step S103: YES), the application transmits the object data added at the time of issuance to the external device 2 together with the response (step 104), The process shown in the flowchart is ended. Specifically, the application sets to the external device 2 the object data having the same Tag value as the Tag value indicated by the information stored in the DATA of the received command among the object data stored in the issuance time storage file. Send. On the other hand, if the application determines that the values of the parameters P1 and P2 are not “0x0000” (step S103: NO), then it determines whether the values of the parameters P1 and P2 of the received command are “0xFFFF”. It is determined (step S105).
アプリケーションは、パラメータP1、P2の値が「0xFFFF」であると判定した場合には(ステップS105:YES)、DATAのTag値に対応する管理テーブルを参照し、追記順が最大値であるオフセットを特定し(ステップS106)、特定したオフセットから記憶位置を算出し、当該記憶位置にあるオブジェクトデータを応答とともに外部機器2に送信して(ステップS108)、当該フローチャートに示す処理を終了する。すなわち、アプリケーションは、パラメータP1、P2の値が「0xFFFF」である場合に、直近に追記されたオブジェクトデータを送信する。 When the application determines that the values of the parameters P1 and P2 are “0xFFFF” (step S105: YES), the application refers to the management table corresponding to the Tag value of DATA and sets the offset in which the additional write order is the maximum value. It is specified (step S106), the storage position is calculated from the specified offset, the object data at the storage position is transmitted to the external device 2 together with the response (step S108), and the process shown in the flowchart is ended. That is, the application transmits the most recently added object data when the values of the parameters P1 and P2 are “0xFFFF”.
一方、アプリケーションは、パラメータP1、P2の値が「0xFFFF」ではないと判定した場合には(ステップS105:NO)、DATAのTag値に対応する管理テーブルを参照し、パラメータで指定された追記順のオフセットを特定し(ステップS107)、特定したオフセットから記憶位置を算出し、当該記憶位置にあるオブジェクトデータを応答とともに外部機器2に送信して(ステップS108)、当該フローチャートに示す処理を終了する。すなわち、アプリケーションは、パラメータP1、P2の値が「0xFFFF」ではない場合に、パラメータで指定された追記順で追記されたオブジェクトデータを送信する。 On the other hand, when the application determines that the values of the parameters P1 and P2 are not “0xFFFF” (step S105: NO), the application refers to the management table corresponding to the Tag value of DATA, and the additional write order specified by the parameters is added. Is specified (step S107), the storage position is calculated from the specified offset, the object data at the storage position is transmitted to the external device 2 together with the response (step S108), and the processing shown in the flowchart is ended. .. That is, when the values of the parameters P1 and P2 are not “0xFFFF”, the application transmits the additionally written object data in the additional writing order designated by the parameters.
以上のように、本実施形態のICカード1は、不揮発性メモリ13(「データ記憶手段」、「紐付け情報記憶手段」の一例)が、TLV(Tag-Length-Value)形式のデータであって、同一のT(Tag)値を持つ複数のオブジェクトデータ(「データ」の一例)を記憶するとともに、それぞれのオブジェクトデータについて不揮発性メモリ13に記憶された順序を示す追記順(「記憶順序情報」の一例)と、記憶された位置を示すオフセット(「位置情報」の一例)を紐付ける管理テーブル(「紐付け情報」の一例)をT(Tag)値毎に記憶し、CPU10(「送信手段」の一例)が、不揮発性メモリ13に記憶されているオブジェクトデータを取得するデータ取得コマンド(「取得コマンド」の一例)とともに当該データ取得コマンドで取得するオブジェクトデータのT(Tag)値と、当該オブジェクトデータが不揮発性メモリ13に記憶された順序を示すパラメータ(「順序情報」の一例)を外部機器2から受信した場合、当該T(Tag)値の管理テーブルを参照して、当該パラメータに対応する追記順と紐付くオフセットの示す位置(オフセットから算出される位置)に記憶されているオブジェクトデータを外部機器2に送信する。
As described above, in the
したがって、本実施形態のICカード1によれば、同一のTag値を持つオブジェクトデータが複数記憶されている場合でも、外部機器2は、取得したいオブジェクトデータが追記された順序とTag値を指定してデータ取得コマンドとともに送信することにより効率的に当該オブジェクトデータを取得することができる。
Therefore, according to the
また、ICカード1のCPU10は、不揮発性メモリ13が、発行時格納ファイル(「第1の記憶領域」の一例)と、追記用ファイル(「第2の記憶領域」の一例)を有し、オブジェクトデータを記憶する際、当該オブジェクトデータのTag値と同じTag値を持つオブジェクトデータを未だ記憶していない場合に(最初に記憶させる場合に)発行時格納ファイルに記憶する一方、当該オブジェクトデータのTag値と同じTag値を持つオブジェクトデータを既に記憶している場合に追記用ファイルに記憶し、CPU10は、データ取得コマンドとともにT(Tag)値と、取得対象のオブジェクトデータが不揮発性メモリ13に追記された順序を示すパラメータの代わりである「0x0000」を示すパラメータ(「第3の所定情報」の一例)を受信した場合、当該T(Tag)値と同一のT(Tag)値を持つオブジェクトデータであって、発行時格納ファイルに記憶されているオブジェクトデータを外部機器2に送信する。
Further, in the
したがって、ICカード1によれば、「0x0000」を示すパラメータをデータ取得コマンドとともに送信することにより、最初に記憶されたオブジェクトデータを取得することができる。
Therefore, according to the
[4.変形例]
次に、上記実施形態の変形例について説明する。なお、以下に説明する変形例は適宜組み合わせることができる。
[4. Modification]
Next, a modified example of the above embodiment will be described. The modifications described below can be combined as appropriate.
[4.1.変形例1]
上記実施形態では、不揮発性メモリ13に、オブジェクトデータを格納するファイルとして発行時格納ファイルと追記用ファイルが設けられていたが、変形例では、図6(A)に示すようにこれらを統合した格納ファイルが設けられる。図6(A)に示す格納ファイルは、オブジェクトデータ301−305が格納されており、オブジェクトデータ301、302はカード発行時に格納され、オブジェクトデータ303−305はカード発行後に格納された場合を示している。
[4.1. Modification 1]
In the above-described embodiment, the
また、不揮発性メモリ13には格納ファイルに記憶されているオブジェクトデータのTag値毎に管理テーブルが設けられる。変形例の管理テーブルは、カード発行時に記憶されるオブジェクトデータのTag値毎に作成される。変形例の管理テーブルには、同じTag値を持つオブジェクトデータが格納ファイルに記憶された順序を示す情報(「記憶順」という場合がある)と、当該オブジェクトデータが記憶された位置を示す基準アドレス(例えば、格納ファイルに対応するメモリ領域上の先頭アドレス)からのオフセット値を示す情報(「オフセット」という場合がある)が対応付けて記述される。
Further, the
例えば、カード発行時にオブジェクトデータ301及びオブジェクトデータ302が記憶され、カード発行後にオブジェクトデータ303、オブジェクトデータ304、オブジェクトデータ305の順序でオブジェクトデータが格納ファイルに記憶される場合、カード発行時に図6(B)に示す管理テーブル(Tag:“0x005A”)が作成されるとともに、記憶順「0x01」とオフセット「0x00」が対応付けて記述される。同様に、図6(C)に示す管理テーブル(Tag:“0x5201”)が作成されるとともに、記憶順「0x01」とオフセット「0x02」が対応付けて記述される。次いで、オブジェクトデータ303が追加されると、図6(B)に示す管理テーブル(Tag:“0x005A”)に、追記順「0x02」とオフセット「0x06」が対応付けて記述される。次いで、オブジェクトデータ304が追加されると、図6(C)に示す管理テーブル(Tag:“0x5201”)に、追記順「0x02」とオフセット「0x08」が対応付けて記述される。次いで、オブジェクトデータ305が追加されると、図6(B)に示す管理テーブル(Tag:“0x005A”)に、追記順「0x03」とオフセット「0x0C」が対応付けて記述される。
For example, when the
次に、図6(D)を用いて、本変形例におけるデータ取得コマンドについて説明する。なお、データ取得コマンドのパラメータ(P1、P2)以外の部分については上記実施形態と同様であるので説明を省略する。ヘッダのP1、P2(計2バイトの「パラメータ」)には、DATAで指定したTag値を持つオブジェクトデータのうち取得するオブジェクトデータを指定するための情報が格納される。具体的には、図6(D)に示すように、発行時に記憶されたオブジェクトデータ(例えば、図6(A)のオブジェクトデータ301、302)を指定する場合には「0x0001」が格納され、直近に記憶されたオブジェクトデータを指定する場合には「0xFFFF」が格納される。また、例えば、2番目に記録されたオブジェクトデータを指定する場合には10進数の2を示す「0x0002」(すなわち、記憶順を示す情報)が格納される。
Next, the data acquisition command in this modification will be described with reference to FIG. The parts other than the parameters (P1, P2) of the data acquisition command are the same as those in the above-mentioned embodiment, and the description thereof will be omitted. Information for designating the object data to be acquired among the object data having the Tag value designated by DATA is stored in P1 and P2 (a total of 2 bytes of “parameter”) of the header. Specifically, as shown in FIG. 6D, “0x0001” is stored when the object data stored at the time of issue (for example, the
次に、図7を用いて、本変形におけるコマンド受信時処理について説明する。 Next, with reference to FIG. 7, the command reception process in this modification will be described.
まず、アプリケーション(を実行するCPU10)は、データ取得コマンドを受信したか否かを判定する(ステップS201)。具体的には、ヘッダのINSの値に基づいて判定する。アプリケーションは、データ取得コマンドを受信していない(他のコマンドを受信した)と判定した場合には(ステップS201:NO)、受信したコマンドを実行し、応答を外部機器2に送信して(ステップ202)、当該フローチャートに示す処理を終了する。一方、アプリケーションは、データ取得コマンドを受信したと判定した場合には(ステップS201:YES)、次いで、受信したコマンドのパラメータP1、P2の値が「0xFFFF」であるか否かを判定する(ステップS203)。
First, the application (the
アプリケーションは、パラメータP1、P2の値が「0xFFFF」であると判定した場合には(ステップS203:YES)、DATAのTag値に対応する管理テーブルを参照し、記憶順が最大値であるオフセットを特定し(ステップS204)、特定したオフセットから記憶位置を算出し、当該記憶位置にあるオブジェクトデータを応答とともに外部機器2に送信して(ステップ206)、当該フローチャートに示す処理を終了する。すなわち、アプリケーションは、パラメータP1、P2の値が「0xFFFF」である場合に、直近に記憶されたオブジェクトデータを送信する。 When the application determines that the values of the parameters P1 and P2 are “0xFFFF” (step S203: YES), the application refers to the management table corresponding to the Tag value of DATA, and sets the offset whose storage order is the maximum value. It is specified (step S204), the storage position is calculated from the specified offset, the object data at the storage position is transmitted to the external device 2 together with the response (step 206), and the processing shown in the flowchart is ended. That is, the application transmits the most recently stored object data when the values of the parameters P1 and P2 are “0xFFFF”.
一方、アプリケーションは、パラメータP1、P2の値が「0xFFFF」ではないと判定した場合には(ステップS203:NO)、DATAのTag値に対応する管理テーブルを参照し、パラメータで指定された記憶順のオフセットを特定し(ステップS205)、特定したオフセットから記憶位置を算出し、当該記憶位置にあるオブジェクトデータを応答とともに外部機器2に送信して(ステップ206)、当該フローチャートに示す処理を終了する。すなわち、アプリケーションは、パラメータP1、P2の値が「0xFFFF」ではない場合に、パラメータで指定された記憶順で記憶されたオブジェクトデータを送信する。 On the other hand, when the application determines that the values of the parameters P1 and P2 are not “0xFFFF” (step S203: NO), the application refers to the management table corresponding to the Tag value of DATA, and the storage order specified by the parameter is set. Is specified (step S205), the storage position is calculated from the specified offset, the object data at the storage position is transmitted to the external device 2 together with the response (step 206), and the processing shown in the flowchart is ended. .. That is, the application transmits the object data stored in the storage order designated by the parameter when the values of the parameters P1 and P2 are not “0xFFFF”.
[4.2.変形例2]
上記実施形態及び変形例1では、データ取得コマンドによって指定された1件のデータオブジェクトを外部機器2に送信することとしたが、例えば、パラメータP1、P2の値が「0xFF00」(1111111100000000b)であるデータ取得コマンドを受信した場合に、アプリケーション(を実行するCPU10)は、DATAのTag値と同一のTag値を持つ全てのオブジェクトデータ(発行時に記憶されたオブジェクトデータから直近に記憶されたオブジェクトデータまで)を外部機器2に送信することとしてもよい。この場合、外部機器2は、あるTag値を持つ全てのオブジェクトデータを取得したい場合に、データ取得コマンドのパラメータP1、Pに「0xFF00」を設定するだけでこれらのデータオブジェクトを取得することができる。なお、当該変形例においては、同一のTag値を持つオブジェクトデータの最大記憶件数は256件(最大追記件数は255件)とする。
[4.2. Modification 2]
In the above-described embodiment and
1 ICカード
1a ICチップ
2 外部機器
10 CPU
11 RAM
12 ROM
13 不揮発性メモリ
14 I/O回路
1 IC card 1a IC chip 2
11 RAM
12 ROM
13 nonvolatile memory 14 I/O circuit
Claims (7)
それぞれの前記データについて前記データ記憶手段に記憶された順序を示す記憶順序情報と、記憶された位置を示す位置情報を紐付ける紐付け情報を前記T(Tag)値毎に記憶する紐付け情報記憶手段と、
前記データ記憶手段に記憶されているデータを取得する取得コマンドとともに当該取得コマンドで取得するデータのT(Tag)値と、当該データが前記データ記憶手段に記憶された順序を示す順序情報を外部機器から受信した場合、当該T(Tag)値の前記紐付け情報を参照して、当該順序情報に対応する前記記憶順序情報と紐付く位置情報の示す位置に記憶されているデータを前記外部機器に送信する送信手段と、
を備えることを特徴とする電子情報記憶媒体。 A data storage means for storing a plurality of data having the same T(Tag) value, which is TLV (Tag-Length-Value) format data;
For each of the data, storage order information indicating the order stored in the data storage means and linking information storing linking information linking the position information indicating the stored position for each T (Tag) value Means and
The acquisition command for acquiring the data stored in the data storage unit, the T(Tag) value of the data acquired by the acquisition command, and the order information indicating the order in which the data is stored in the data storage unit are external devices. When it is received from the external device, the data stored at the position indicated by the position information associated with the storage order information corresponding to the order information is referred to the external device by referring to the association information of the T(Tag) value. Transmitting means for transmitting,
An electronic information storage medium comprising:
前記送信手段は、前記取得コマンドとともに前記T(Tag)値と、前記順序情報の代わりである第1の所定情報を受信した場合、当該T(Tag)値の前記紐付け情報を参照して、直近に記憶されたデータを前記外部機器に送信することを特徴とする電子情報記憶媒体。 The electronic information storage medium according to claim 1, wherein
When the transmission means receives the T(Tag) value and the first predetermined information that is a substitute for the order information together with the acquisition command, referring to the linking information of the T(Tag) value, An electronic information storage medium, which transmits the most recently stored data to the external device.
前記送信手段は、前記取得コマンドとともに前記T(Tag)値と、前記順序情報の代わりである第2の所定情報を受信した場合、当該T(Tag)値と同一のT(Tag)値を持つ全データを前記外部機器に送信することを特徴とする電子情報記憶媒体。 The electronic information storage medium according to claim 1 or 2,
When the transmission unit receives the T(Tag) value and the second predetermined information that is a substitute for the order information together with the acquisition command, the transmission unit has the same T(Tag) value as the T(Tag) value. An electronic information storage medium, which transmits all data to the external device.
前記データ記憶手段は、第1の記憶領域と、第2の記憶領域を有し、オブジェクトデータを記憶する際、当該オブジェクトデータのTag値と同じTag値を持つオブジェクトデータを未だ記憶していない場合に前記第1の記憶領域に記憶する一方、当該オブジェクトデータのTag値と同じTag値を持つオブジェクトデータを既に記憶している場合に前記第2の記憶領域に記憶し、
前記送信手段は、前記取得コマンドとともに前記T(Tag)値と、前記順序情報の代わりである第3の所定情報を受信した場合、当該T(Tag)値と同一のT(Tag)値を持つオブジェクトデータであって、前記第1の記憶領域に記憶されているオブジェクトデータを前記外部機器に送信することを特徴とする電子情報記憶媒体。 The electronic information storage medium according to any one of claims 1 to 3,
The data storage unit has a first storage area and a second storage area, and when storing object data, when the object data having the same Tag value as the Tag value of the object data is not stored yet. While storing in the first storage area, while storing object data having the same Tag value as the Tag value of the object data in the second storage area,
When the transmitting unit receives the T(Tag) value and the third predetermined information that is a substitute for the order information together with the acquisition command, the transmitting unit has the same T(Tag) value as the T(Tag) value. An electronic information storage medium, which is object data and transmits the object data stored in the first storage area to the external device.
それぞれの前記データについて前記データ記憶手段に記憶された順序を示す記憶順序情報と、記憶された位置を示す位置情報を紐付ける紐付け情報を前記T(Tag)値毎に記憶する紐付け情報記憶手段と、
を備える電子情報記憶媒体におけるプロセッサによるデータ送信方法であって、
前記データ記憶手段に記憶されているデータを取得する取得コマンドとともに当該取得コマンドで取得するデータのT(Tag)値と、当該データが前記データ記憶手段に記憶された順序を示す順序情報を外部機器から受信した場合、当該T(Tag)値の前記紐付け情報を参照して、当該順序情報に対応する前記記憶順序情報と紐付く位置情報の示す位置に記憶されているデータを前記外部機器に送信する送信ステップ、
を含むことを特徴とするデータ送信方法。 A data storage means for storing a plurality of data having the same T(Tag) value, which is TLV (Tag-Length-Value) format data;
For each of the data, storage order information indicating the order stored in the data storage means and linking information storing linking information linking the position information indicating the stored position for each T (Tag) value Means and
A method for transmitting data by a processor in an electronic information storage medium comprising:
The acquisition command for acquiring the data stored in the data storage unit, the T(Tag) value of the data acquired by the acquisition command, and the order information indicating the order in which the data is stored in the data storage unit are external devices. When it is received from the external device, the data stored at the position indicated by the position information associated with the storage order information corresponding to the order information is referred to the external device by referring to the association information of the T(Tag) value. Send step to send,
A method for transmitting data, comprising:
それぞれの前記データについて前記データ記憶手段に記憶された順序を示す記憶順序情報と、記憶された位置を示す位置情報を紐付ける紐付け情報を前記T(Tag)値毎に記憶する紐付け情報記憶手段と、
前記データ記憶手段に記憶されているデータを取得する取得コマンドとともに当該取得コマンドで取得するデータのT(Tag)値と、当該データが前記データ記憶手段に記憶された順序を示す順序情報を外部機器から受信した場合、当該T(Tag)値の前記紐付け情報を参照して、当該順序情報に対応する前記記憶順序情報と紐付く位置情報の示す位置に記憶されているデータを前記外部機器に送信する送信手段と、
を備えることを特徴とするICカード。 A data storage means for storing a plurality of data having the same T(Tag) value, which is TLV (Tag-Length-Value) format data;
For each of the data, storage order information indicating the order stored in the data storage means and linking information storing linking information linking the position information indicating the stored position for each T (Tag) value Means and
The acquisition command for acquiring the data stored in the data storage unit, the T(Tag) value of the data acquired by the acquisition command, and the order information indicating the order in which the data is stored in the data storage unit are external devices. When it is received from the external device, the data stored at the position indicated by the position information associated with the storage order information corresponding to the order information is referred to the external device by referring to the association information of the T(Tag) value. Transmitting means for transmitting,
An IC card comprising:
それぞれの前記データについて前記データ記憶手段に記憶された順序を示す記憶順序情報と、記憶された位置を示す位置情報を紐付ける紐付け情報を前記T(Tag)値毎に記憶する紐付け情報記憶手段と、
を備える電子情報記憶媒体におけるプロセッサを、
前記データ記憶手段に記憶されているデータを取得する取得コマンドとともに当該取得コマンドで取得するデータのT(Tag)値と、当該データが前記データ記憶手段に記憶された順序を示す順序情報を外部機器から受信した場合、当該T(Tag)値の前記紐付け情報を参照して、当該順序情報に対応する前記記憶順序情報と紐付く位置情報の示す位置に記憶されているデータを前記外部機器に送信する送信手段、
として機能させることを特徴とするデータ送信プログラム。 Data in TLV (Tag-Length-Value) format, which stores a plurality of data having the same T(Tag) value;
For each of the data, storage order information indicating the order stored in the data storage means and linking information storing linking information linking the position information indicating the stored position for each T (Tag) value Means and
A processor in an electronic information storage medium comprising
The acquisition command for acquiring the data stored in the data storage unit, the T(Tag) value of the data acquired by the acquisition command, and the order information indicating the order in which the data is stored in the data storage unit are external devices. When it is received from the external device, the data stored at the position indicated by the position information associated with the storage order information corresponding to the order information is referred to the external device by referring to the association information of the T(Tag) value. Sending means to send,
A data transmission program characterized by causing it to function as.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016206059A JP6750450B2 (en) | 2016-10-20 | 2016-10-20 | Electronic information storage medium, data transmission method, IC card, and data transmission program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016206059A JP6750450B2 (en) | 2016-10-20 | 2016-10-20 | Electronic information storage medium, data transmission method, IC card, and data transmission program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018067187A JP2018067187A (en) | 2018-04-26 |
JP6750450B2 true JP6750450B2 (en) | 2020-09-02 |
Family
ID=62087155
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016206059A Active JP6750450B2 (en) | 2016-10-20 | 2016-10-20 | Electronic information storage medium, data transmission method, IC card, and data transmission program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6750450B2 (en) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4443699B2 (en) * | 1999-12-06 | 2010-03-31 | 株式会社東芝 | Portable electronic device and method for controlling portable electronic device |
JP2011191808A (en) * | 2010-03-11 | 2011-09-29 | Toshiba Corp | Mobile electronic apparatus, ic card, and control method for the mobile electronic apparatus |
JP5150672B2 (en) * | 2010-03-18 | 2013-02-20 | 株式会社東芝 | Portable electronic device and method for controlling portable electronic device |
JP2012194698A (en) * | 2011-03-15 | 2012-10-11 | Toshiba Corp | Portable electronic device, processing device for portable electronic device, and processing system of portable electronic device |
JP2016048575A (en) * | 2015-12-01 | 2016-04-07 | 株式会社東芝 | Portable electronic device and method of controlling portable electronic device |
-
2016
- 2016-10-20 JP JP2016206059A patent/JP6750450B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2018067187A (en) | 2018-04-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9513842B2 (en) | Writing data in a non-volatile memory of a smart card | |
US9183400B2 (en) | IC card and IC card control method | |
KR101783526B1 (en) | Ic card, electronic device and portable electronic device | |
US8977824B2 (en) | Portable electronic apparatus and method of controlling a portable electronic apparatus | |
US20090012975A1 (en) | Portable electronic device and file management method for use in portable electronic device | |
JP6750450B2 (en) | Electronic information storage medium, data transmission method, IC card, and data transmission program | |
US20120234926A1 (en) | Portable electronic apparatus | |
US7922095B2 (en) | Information storage medium and medium processing system | |
JP7005934B2 (en) | Electronic information storage medium, IC card, data transmission method, data writing method, data transmission program and data writing program | |
JP2010211516A (en) | Portable electronic device and access control method in the same | |
US8870079B2 (en) | IC card, portable electronic device, IC card issuing apparatus, and command execution method | |
KR101455539B1 (en) | Ic card and ic card control method | |
JP2012133656A (en) | Portable electronic apparatus and ic card | |
JP5728323B2 (en) | IC card and portable electronic device | |
JP5957347B2 (en) | IC card and portable electronic device | |
JP6984328B2 (en) | Electronic information storage medium, IC card, external device, data writing method and data writing program | |
JP4738249B2 (en) | Portable electronic device, IC card and IC module | |
JP2006293706A (en) | Multi-application ic card with application updating function | |
JP5075404B2 (en) | Portable electronic device, file access method and IC card in portable electronic device | |
JP5038918B2 (en) | Portable electronic device and method for controlling portable electronic device | |
JP2014182639A (en) | Ic card and portable electronic device | |
JP2008242998A (en) | Ic card | |
JP2014063310A (en) | Ic card, portable electronic equipment and ic card processor | |
JP2009032249A (en) | Portable electronic device, file management method for portable electronic device, and ic card | |
EP2224405A1 (en) | Method to control a multi-purpose card and respective multi-purpose card |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190829 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20200709 |
|
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: 20200714 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200727 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6750450 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |