JP2024139134A - Electronic information storage medium, IC chip, method for writing issuance data, and program - Google Patents
Electronic information storage medium, IC chip, method for writing issuance data, and program Download PDFInfo
- Publication number
- JP2024139134A JP2024139134A JP2023049943A JP2023049943A JP2024139134A JP 2024139134 A JP2024139134 A JP 2024139134A JP 2023049943 A JP2023049943 A JP 2023049943A JP 2023049943 A JP2023049943 A JP 2023049943A JP 2024139134 A JP2024139134 A JP 2024139134A
- Authority
- JP
- Japan
- Prior art keywords
- version
- issuance data
- command
- application
- identifier
- 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.)
- Pending
Links
Images
Landscapes
- Stored Programmes (AREA)
Abstract
Description
本発明は、アプリケーションが搭載されるICカード等の技術分野に関する。 The present invention relates to the technical field of IC cards equipped with applications.
近年、複数のアプリケーションを搭載可能なICカードが知られている。例えば、特許文献1には、ICカードの発行元等のサーバで、ICカードに搭載可能な各種アプリケーションやその発行情報を一括管理することで、当該ICカードへのアプリケーションの追加を実現するシステムが記載されている。 In recent years, IC cards that can be equipped with multiple applications have become known. For example, Patent Document 1 describes a system that enables applications to be added to an IC card by centrally managing various applications that can be equipped on the IC card and their issuance information on a server such as the issuer of the IC card.
ところで、例えば決済用ICカードを処理する決済システムにおいて、システムごとに準拠する仕様バージョンが異なることがあり、決済用ICカードはそのシステムに対応した仕様に従って動作しなければならない。複数のバージョンに対応するICカードを作成する際、バージョンごとに個々のアプリケーションを作成しICカードに搭載する方法があるが、バージョン間の差異が僅かな場合は処理が重複することが多い。それぞれのバージョンに対応するアプリケーションをICカードに搭載すると、重複する処理だけICカード内のメモリを圧迫してしまうという問題がある。 For example, in a payment system that processes IC cards for payment, each system may comply with a different specification version, and the IC card for payment must operate according to the specifications corresponding to that system. When creating an IC card that supports multiple versions, one method is to create an individual application for each version and load it onto the IC card, but if the differences between the versions are slight, there is often duplication of processing. If applications corresponding to each version are loaded onto the IC card, there is a problem in that the memory inside the IC card is strained by the duplicated processing alone.
そこで、本発明は、このような点等に鑑みてなされたものであり、アプリケーションが複数のバージョンに対応可能とし、当該アプリケーションの搭載に要するメモリ容量を低減することが可能な電子情報記憶媒体、ICチップ、発行データの書き込み方法、及びプログラムを提供することを目的とする。 The present invention has been made in consideration of these points and aims to provide an electronic information storage medium, an IC chip, a method for writing issuance data, and a program that enable an application to be compatible with multiple versions and reduce the memory capacity required to install the application.
上記課題を解決するために、請求項1に記載の発明は、複数のバージョンに対応可能なアプリケーションが搭載される電子情報記憶媒体であって、前記バージョンと前記アプリケーションの実行に必要な発行データの識別子とを前記バージョンごとに対応付ける対応付け情報と、前記アプリケーションが対応可能なバージョンを有効化するための設定情報とを記憶する記憶手段と、外部装置から前記発行データ及び当該発行データの識別子を含むコマンドを受信する受信手段と、前記コマンドに含まれる前記識別子と前記対応付け情報とに基づいて、前記コマンドに含まれる前記発行データに対応する前記バージョンを特定する特定手段と、前記特定手段により特定されたバージョンと前記設定情報とに基づいて、前記コマンドに含まれる前記発行データの書き込み処理を実行する処理手段と、を備えることを特徴とする。 In order to solve the above problem, the invention described in claim 1 is an electronic information storage medium on which an application compatible with multiple versions is installed, characterized in that it comprises: a storage means for storing association information that associates the version with an identifier of issuance data required to execute the application for each version, and setting information for enabling the version compatible with the application; a receiving means for receiving a command including the issuance data and the identifier of the issuance data from an external device; a specifying means for specifying the version corresponding to the issuance data included in the command based on the identifier and the association information included in the command; and a processing means for executing a write process of the issuance data included in the command based on the version specified by the specifying means and the setting information.
請求項2に記載の発明は、請求項1に記載の電子情報記憶媒体において、前記処理手段は、前記特定手段により特定されたバージョンと前記設定情報において有効化されたバージョンとが一致する場合、前記発行データの書き込み処理を実行することを特徴とする。
The invention described in
請求項3に記載の発明は、請求項1に記載の電子情報記憶媒体において、前記処理手段は、前記特定手段により特定されたバージョンと前記設定情報において有効化されたバージョンとが一致しない場合、エラー処理を実行することを特徴とする。 The invention described in claim 3 is characterized in that in the electronic information storage medium described in claim 1, the processing means executes error processing when the version identified by the identification means does not match the version enabled in the setting information.
請求項4に記載の発明は、請求項1に記載の電子情報記憶媒体において、前記処理手段は、前記設定情報において有効化されたバージョンがない場合、前記特定手段により特定されたバージョンを前記設定情報において有効化し、前記発行データの書き込み処理を実行することを特徴とする。 The invention described in claim 4 is characterized in that, in the electronic information storage medium described in claim 1, the processing means, if there is no version enabled in the setting information, enables the version identified by the identification means in the setting information and executes the writing process of the issued data.
請求項5に記載の発明は、請求項1乃至3の何れか一項に記載の電子情報記憶媒体において、前記受信手段は、前記コマンドを受信する前に、前記外部装置から前記バージョンを示すパラメータを含むインストールコマンドを受信し、前記処理手段は、前記パラメータに示されるバージョンを前記設定情報において有効化することを特徴とする。 The invention described in claim 5 is characterized in that, in the electronic information storage medium described in any one of claims 1 to 3, the receiving means receives an installation command including a parameter indicating the version from the external device before receiving the command, and the processing means enables the version indicated by the parameter in the setting information.
請求項6に記載の発明は、請求項5に記載の電子情報記憶媒体において、前記処理手段は、前記パラメータのフォーマットが不正である場合、エラー処理を実行することを特徴とする。 The invention described in claim 6 is characterized in that in the electronic information storage medium described in claim 5, the processing means executes error processing if the format of the parameters is invalid.
請求項7に記載の発明は、複数のバージョンに対応可能なアプリケーションが搭載されるICチップであって、前記バージョンと前記アプリケーションの実行に必要な発行データの識別子とを前記バージョンごとに対応付ける対応付け情報と、前記アプリケーションが対応可能なバージョンを有効化するための設定情報とを記憶する記憶手段と、外部装置から前記発行データ及び当該発行データの識別子を含むコマンドを受信する受信手段と、前記コマンドに含まれる前記識別子と前記対応付け情報とに基づいて、前記コマンドに含まれる前記発行データに対応する前記バージョンを特定する特定手段と、前記特定手段により特定されたバージョンと前記設定情報とに基づいて、前記コマンドに含まれる前記発行データの書き込み処理を実行する処理手段と、を備えることを特徴とする。 The invention described in claim 7 is an IC chip equipped with an application compatible with multiple versions, characterized in that it comprises: a storage means for storing association information for associating the version with an identifier of issuance data required for executing the application for each version, and setting information for enabling the version compatible with the application; a receiving means for receiving a command including the issuance data and the identifier of the issuance data from an external device; a specifying means for specifying the version corresponding to the issuance data included in the command based on the identifier and the association information included in the command; and a processing means for executing a write process of the issuance data included in the command based on the version specified by the specifying means and the setting information.
請求項8に記載の発明は、複数のバージョンに対応可能なアプリケーションが搭載される電子情報記憶媒体により実行される発行データの書き込み方法であって、前記バージョンと前記アプリケーションの実行に必要な発行データの識別子とを前記バージョンごとに対応付ける対応付け情報と、前記アプリケーションが対応可能なバージョンを有効化するための設定情報とを前記電子情報記憶媒体に記憶するステップと、外部装置から前記発行データ及び当該発行データの識別子を含むコマンドを受信するステップと、前記コマンドに含まれる前記識別子と前記対応付け情報とに基づいて、前記コマンドに含まれる前記発行データに対応する前記バージョンを特定するステップと、前記特定されたバージョンと前記設定情報とに基づいて、前記コマンドに含まれる前記発行データの書き込み処理を実行するステップと、を含むこと特徴とする。 The invention described in claim 8 is a method for writing issued data executed by an electronic information storage medium on which an application compatible with multiple versions is installed, and is characterized by including the steps of: storing, in the electronic information storage medium, association information that associates the version with an identifier of issued data required to execute the application for each version, and setting information for enabling the version compatible with the application; receiving a command including the issued data and an identifier of the issued data from an external device; identifying the version corresponding to the issued data included in the command based on the identifier and the association information included in the command; and executing a write process for the issued data included in the command based on the identified version and the setting information.
請求項9に記載の発明は、複数のバージョンに対応可能なアプリケーションが搭載される電子情報記憶媒体に含まれるコンピュータを、前記バージョンと前記アプリケーションの実行に必要な発行データの識別子とを前記バージョンごとに対応付ける対応付け情報と、前記アプリケーションが対応可能なバージョンを有効化するための設定情報とを記憶する記憶手段と、外部装置から前記発行データ及び当該発行データの識別子を含むコマンドを受信する受信手段と、前記コマンドに含まれる前記識別子と前記対応付け情報とに基づいて、前記コマンドに含まれる前記発行データに対応する前記バージョンを特定する特定手段と、前記特定手段により特定されたバージョンと前記設定情報とに基づいて、前記コマンドに含まれる前記発行データの書き込み処理を実行する処理手段として機能させることを特徴とする。 The invention described in claim 9 is characterized in that a computer included in an electronic information storage medium on which an application compatible with multiple versions is installed is made to function as a storage means for storing association information for associating the version with an identifier of issuance data required to execute the application for each version, and configuration information for enabling the version compatible with the application, a receiving means for receiving a command including the issuance data and the identifier of the issuance data from an external device, a specifying means for specifying the version corresponding to the issuance data included in the command based on the identifier and the association information included in the command, and a processing means for executing a write process of the issuance data included in the command based on the version specified by the specifying means and the configuration information.
本発明によれば、アプリケーションが複数のバージョンに対応可能とし、当該アプリケーションの搭載に要するメモリ容量を低減することができる。 The present invention allows an application to be compatible with multiple versions, reducing the memory capacity required to install the application.
以下、図面を参照して本発明の実施形態について詳細に説明する。なお、以下に説明する実施形態は、複数のバージョンに対応可能なアプリケーションが搭載されるICチップに対して本発明を適用した場合の実施の形態である。 The following describes in detail an embodiment of the present invention with reference to the drawings. Note that the embodiment described below is an embodiment in which the present invention is applied to an IC chip equipped with an application that is compatible with multiple versions.
[1.ICチップ1の構成及び機能]
先ず、図1を参照して、本実施形態に係るICチップ1の構成及び機能について説明する。ICチップ1は、本発明の電子情報記憶媒体の一例である。ICチップ1は、例えば、クレジットカード、キャッシュカード、またはマイナンバーカードなどのICカード、または、スマートフォンなどのモバイルデバイスに搭載される。スマートフォンなどのモバイルデバイスの場合、ICチップ1は、モバイルデバイスに着脱可能な小型ICカードに搭載されてもよいし、eUICC(Embedded Universal Integrated Circuit Card)としてモバイルデバイスから容易に取り外しや取り換えができないように組み込み基板上に搭載されてもよい。
[1. Configuration and Function of IC Chip 1]
First, the configuration and functions of an IC chip 1 according to this embodiment will be described with reference to Fig. 1. The IC chip 1 is an example of an electronic information storage medium of the present invention. The IC chip 1 is mounted on, for example, an IC card such as a credit card, a cash card, or a My Number card, or a mobile device such as a smartphone. In the case of a mobile device such as a smartphone, the IC chip 1 may be mounted on a small IC card that is detachable from the mobile device, or may be mounted on an embedded board as an eUICC (Embedded Universal Integrated Circuit Card) so that it cannot be easily removed or replaced from the mobile device.
図1は、ICチップ1のハードウェア構成例を示す図である。ICチップ1は、図1に示すように、I/O回路11、RAM(Random Access Memory)12、NVM(Nonvolatile Memory)13、ROM(Read Only Memory)14、CPU(Central Processing Unit)15(コンピュータの一例)、及び暗号演算等を行うコプロセッサ16等を備える。I/O回路11は、外部装置2との間のインターフェースを担う。なお、ICチップ1と外部装置2との間の通信は、非接触通信であってもよいし、接触通信であってもよい。非接触通信の場合、例えばICカードまたはモバイルデバイスに搭載されたアンテナ(図示せず)を介してICチップ1と外部装置2との通信が行われる。なお、外部装置2の例として、工場におけるICチップ発行装置(発行端末)や、店舗における取引装置(取引端末)などが挙げられる。
1 is a diagram showing an example of the hardware configuration of an IC chip 1. As shown in FIG. 1, the IC chip 1 includes an I/
NVM13(記憶手段の一例)は、フラッシュメモリ、または、Electrically Erasable Programmable Read-Only Memoryなどの不揮発性メモリである。NVM13またはROM14には、オペレーティングシステム(以下、「OS」という)、プラットフォーム、及び複数のバージョンに対応可能なアプリケーション等のプログラム(本発明のプログラムを含む)、及びデータが記憶される。これらのプログラムは、CPU15により実行されることでICチップ1に搭載されるソフトウェア(ソフトウェアモジュール)として機能し、本発明における受信手段、特定手段、及び処理手段等として機能する。図2は、ICチップ1のソフトウェア構成例を示す図である。プラットフォームは、アプリケーションを管理し、例えばGlobal Platform(登録商標)に基づいて構成され、OS上で動作する。プラットフォームには、例えば、ISD(Issuer Security Domain)及びAPI(Application Program Interface)などが含まれる。 NVM13 (an example of a storage means) is a non-volatile memory such as a flash memory or an electrically erasable programmable read-only memory. NVM13 or ROM14 stores an operating system (hereinafter referred to as "OS"), a platform, programs such as applications that can be used in multiple versions (including the program of the present invention), and data. These programs function as software (software modules) mounted on IC chip 1 by being executed by CPU15, and function as receiving means, identifying means, processing means, and the like in the present invention. FIG. 2 is a diagram showing an example of the software configuration of IC chip 1. The platform manages applications, is configured based on, for example, Global Platform (registered trademark), and runs on the OS. The platform includes, for example, an ISD (Issuer Security Domain) and an API (Application Program Interface).
ISDは、インストール処理を実行する管理アプリケーションである。ここで、インストール処理とは、外部装置2からのインストールコマンドに応じて、NVM13に記録されているロードファイル(アプリケーションプログラム)を、複数のバージョンに対応可能なアプリケーションとして実行可能な状態にインスタンス化(活性化)する処理をいう。かかるアプリケーションの実行は、インスタンス化されたプログラムコードを実行する処理ということができる。アプリケーションは、APIを使用して種々の処理を実行することができる。なお、アプリケーションの一例として、取引用アプリケーションが挙げられる。
ISD is a management application that executes an installation process. Here, the installation process refers to a process of instantiating (activating) a load file (application program) recorded in
また、アプリケーションは、外部装置2からの発行コマンド(例えば、STORE DATAコマンド)に応じて、当該アプリケーションの実行に必要な種々の発行データ等をNVM13に格納する発行処理(書き込み処理を含む)を実行する。かかる発行処理により、NVM13には、アプリケーションに対応したDF(Dedicated File)と、発行データ及び内部制御用のデータを記憶するEF(Elementary File)とが構築(確保)される。発行データは、1つのデータ単位としてみなされるデータ要素である。発行データの例として、アプリケーションの動作を決定するような設定データ、及びデータの暗号演算や復号演算に必要な鍵データなどが挙げられる。
In addition, in response to an issued command (e.g., a STORE DATA command) from the
発行データは、異なる複数のバージョン間で基本的には共通するが、バージョンごとに異なる場合もある。例えば、バージョンV1.0に対応するアプリケーションではRSA(Rivest-Shamir-Adleman)暗号演算方式が利用されるため、RSA用の鍵データが発行データとして格納される。一方、バージョンV1.1に対応するアプリケーションではECC(Elliptic Curve Cryptography)暗号演算方式が利用されるため、ECC用の鍵データが発行データとして格納される。本実施形態に係るアプリケーションがバージョンV1.0に対応する場合、バージョンV1.0に対応する鍵データが格納されることになる。 The issued data is basically the same across multiple different versions, but may differ from version to version. For example, an application compatible with version V1.0 uses the Rivest-Shamir-Adleman (RSA) encryption calculation method, so key data for RSA is stored as the issued data. On the other hand, an application compatible with version V1.1 uses the Elliptic Curve Cryptography (ECC) encryption calculation method, so key data for ECC is stored as the issued data. If the application according to this embodiment is compatible with version V1.0, key data compatible with version V1.0 will be stored.
また、NVM13には、発行データ識別子リスト(対応付け情報の一例)が予め記憶される。発行データ識別子リストは、バージョン(バージョン番号)と発行データの識別子とをバージョンごとに対応付けるバージョン識別用リストである。図3は、発行データ識別子リストの一例を示す図である。図3の例では、バージョンV1.0に対応する発行データの識別子として、“A001(h)”,“A002(h)”,“B001(h)”が示されており、バージョンV1.1に対応する発行データの識別子として、“A003(h)”,“B002(h)”,“3F01(h)”が示されている。これらの識別子は、例えば、DGIやTLV(Tag Length Value)のタグで表される。なお、図3の例では、1つのアプリケーションに2つのバージョンがある場合の例であるが、1つのアプリケーションに3つ以上のバージョンがあってもよい。この場合、発行データ識別子リストにおいて、3つ以上のバージョンそれぞれに対して発行データの識別子が対応付けられる。
In addition, an issued data identifier list (an example of correspondence information) is stored in advance in the
さらに、NVM13には、アプリケーションが対応可能なバージョンを有効化するための対応バージョンフラグ(設定情報の一例)が記憶される。図4は、対応バージョンフラグの一例を示す図である。図4(A)の例では、対応バージョンフラグは8ビットからなり、“10000000”はバージョンV1.0が有効化(設定)されていることを示す。一方、図4(B)の例では、対応バージョンフラグは8ビットからなり、“01000000”はバージョンV1.1が有効化されていることを示す。つまり、8ビットのうち“1”が立つビット(例えば、図4の例では、b8またはb7)の位置によってバージョンが特定される。なお、対応バージョンフラグが“00000000”のみである場合、双方のバージョンが未設定であることを示す。すなわち、図4の例では、対応バージョンフラグは、“00000000”、“10000000”、及び“01000000”のうち何れか1つが設定される。
Furthermore, the
ISDは、外部装置2からバージョンを示すパラメータを含むインストールコマンドを、OSを介して受信すると、上述したインストール処理中に、当該パラメータに示されるバージョンを対応バージョンフラグにおいて有効化する。なお、当該パラメータのフォーマットが不正である場合、エラー処理が行われる。そして、アプリケーションは、インストール処理後に、外部装置2から発行データ及び当該発行データの識別子を含む発行コマンドを、OSを介して受信すると、当該発行コマンドに含まれる識別子と、発行データ識別子リストとに基づいて、当該発行コマンドに含まれる発行データに対応するバージョンを特定し、特定されたバージョンと対応バージョンフラグとに基づいて、当該発行コマンドに含まれる発行データの書き込み(つまり、NVM13のEFに発行データを格納する)処理を実行する。
When the ISD receives an installation command including a parameter indicating a version from the
ここで、アプリケーションは、上記特定されたバージョンと対応バージョンフラグにおいて有効化されたバージョンとが一致する場合、当該発行データの書き込み処理を実行する。一方、アプリケーションは、上記特定されたバージョンと対応バージョンフラグにおいて有効化されたバージョンとが一致しない場合、エラー処理を実行する。一方、アプリケーションは、対応バージョンフラグにおいて有効化されたバージョンがない場合(例えば、対応バージョンフラグが“00000000”である場合)、上記特定されたバージョンを、対応バージョンフラグにおいて有効化し、当該発行データの書き込み処理を実行する。 Here, if the identified version matches the version enabled in the corresponding version flag, the application executes the write process for the issued data. On the other hand, if the identified version does not match the version enabled in the corresponding version flag, the application executes error processing. On the other hand, if there is no version enabled in the corresponding version flag (for example, if the corresponding version flag is "00000000"), the application enables the identified version in the corresponding version flag and executes the write process for the issued data.
なお、上述したインストールコマンド及び発行コマンドは、例えば、ISO/IEC 7816-4に規定されたコマンドAPDU(Application Protocol Data Unit)である。コマンドAPDUは、ヘッダ部及びボディ部を含む。ヘッダ部は、CLA(命令クラス)、INS(命令コード)、P1及びP2から構成される。ボディ部は、例えば、Lc、Data、及びLeから構成される。LcはDataの長さ(データ長)を示し、LeはレスポンスAPDU内のDATAに期待される最大長を示す。Dataには、発行データなどが含まれる。 The above-mentioned install command and issue command are, for example, command APDUs (Application Protocol Data Units) defined in ISO/IEC 7816-4. The command APDU includes a header section and a body section. The header section is made up of CLA (instruction class), INS (instruction code), P1, and P2. The body section is made up of, for example, Lc, Data, and Le. Lc indicates the length of Data (data length), and Le indicates the maximum length expected for DATA in the response APDU. Data includes the issuance data, etc.
[2.ICチップ1の動作]
次に、ICチップ1の動作について説明する。
2. Operation of IC chip 1
Next, the operation of the IC chip 1 will be described.
(2.1 インストールコマンド受信時の処理)
先ず、図5を参照して、ICチップ1がインストールコマンドを受信した時に実行されるインストール処理について説明する。図5は、CPU15により実行されるインストール処理の一例を示すフローチャートである。例えばICチップ1が発行される工場において、ICチップ1が外部装置2であるICチップ発行装置からインストールコマンドを受信すると、図5に示す処理が開始される。なお、インストールコマンドが受信される前に、ICチップ発行装置からのSELECTコマンドによりICチップ1においてISDが選択されているものとする。また、図5に示すインストール処理において、上述したように、ロードファイルをアプリケーションとして実行可能な状態にインスタンス化する処理等が行われるが、それらの説明を省略する。
(2.1 Processing upon receiving an install command)
First, referring to Fig. 5, the installation process executed when the IC chip 1 receives an installation command will be described. Fig. 5 is a flow chart showing an example of the installation process executed by the
図5に示す処理が開始されると、CPU15(ISD)は、インストールコマンドのボディ部からDataを取得する(ステップS1)。次いで、CPU15は、ステップS1で取得されたDataに所定長(例えば、8ビット)のパラメータが存在するか否かを判定する(ステップS2)。パラメータが存在しないと判定された場合(ステップS2:NO)、処理はステップS3へ進む。一方、パラメータが存在すると判定された場合(ステップS2:YES)、処理はステップS4へ進む。
When the process shown in FIG. 5 starts, the CPU 15 (ISD) acquires Data from the body of the install command (step S1). Next, the
ステップS3では、CPU15は、未設定を示すビット列(例えば、“00000000”)を対応バージョンフラグに保存し、処理をステップS7へ進める。一方、ステップS4では、CPU15は、パラメータのフォーマットが不正であるか否かを判定する。例えば、8ビットのうちの複数のビット(例えば、b8とb7)に“1”が立つ場合や、8ビットのうちのバージョンを示されないビット(例えば、b1)に“1”が立つ場合には、パラメータのフォーマットが不正であると判定される。
In step S3, the
パラメータのフォーマットが不正であると判定された場合(ステップS4:YES)、エラー処理が実行される(ステップS5)。かかるエラー処理では、例えば、エラーを示すレスポンスが外部装置2へ返信される。一方、パラメータのフォーマットが不正でない(つまり、パラメータが適正にバージョンを示す)と判定された場合(ステップS4:NO)、バージョンを示すパラメータ(例えば、“10000000”)が対応バージョンフラグに保存される(ステップS6)ことで当該バージョンが有効化され、処理はステップS7へ進む。ステップS7では、CPU15は、インストール処理の正常終了を示すレスポンスを外部装置2へ返信し、処理を終了する。
If it is determined that the parameter format is invalid (step S4: YES), error processing is executed (step S5). In such error processing, for example, a response indicating an error is returned to the
(2.2 発行コマンド受信時の処理)
次に、図6を参照して、ICチップ1が発行コマンドを受信した時に実行される発行処理について説明する。図6は、CPU15により実行される発行処理の一例を示すフローチャートである。例えばICチップ1が発行される工場において、インストール処理後に、ICチップ1が外部装置2であるICチップ発行装置から発行コマンドを受信すると、図6に示す処理が開始される。なお、図6に示す発行処理は、アプリケーションの実行に必要な全て発行データの書き込みが完了するまで繰り返し実行される。また、発行コマンドが受信される前に、ICチップ発行装置からのSELECTコマンドによりICチップ1において所定のアプリケーションが選択されているものとする。
(2.2 Processing upon receiving an issue command)
Next, referring to Fig. 6, an issuance process executed when the IC chip 1 receives an issuance command will be described. Fig. 6 is a flow chart showing an example of the issuance process executed by the
図6に示す処理が開始されると、CPU15(所定のアプリケーション)は、発行コマンドのボディ部から発行データ及び発行データの識別子(例えば、DGIやタグで表される)を取得する(ステップS11)。次いで、CPU15は、ステップS11で取得された識別子が、発行データ識別子リスト中の識別子と一致するか否かを判定する(ステップS12)。識別子が一致しない(例えば、発行データがバージョン間で共通する)と判定された場合(ステップS12:NO)、当該発行データの書き込み処理が実行され(ステップS13)、処理はステップS20へ進む。一方、識別子が一致すると判定された場合(ステップS12:YES)、処理はステップS14へ進む。
When the process shown in FIG. 6 is started, the CPU 15 (a specified application) acquires the issued data and the identifier of the issued data (e.g., represented by a DGI or a tag) from the body of the issued command (step S11). Next, the
ステップS14では、CPU15は、発行コマンドに含まれる識別子と、発行データ識別子リストとに基づいて、当該発行コマンドに含まれる発行データに対応するバージョンを特定する。例えば、発行コマンドに含まれる識別子が“A001(h)”である場合、図3に示す発行データ識別子リストからバージョンV1.0が特定される。一方、発行コマンドに含まれる識別子が“A003(h)”である場合、図3に示す発行データ識別子リストからバージョンV1.1が特定される。
In step S14, the
次いで、CPU15は、対応バージョンフラグが未設定を示すか否かを判定する(ステップS15)。対応バージョンフラグにおいて有効化されたバージョンがない場合、対応バージョンフラグが未設定を示すと判定され(ステップS15:YES)、ステップS16へ進む。ステップS16では、CPU15は、ステップS14で特定されたバージョンを、対応バージョンフラグにおいて有効化し(例えば、“00000000”を“10000000”に設定し)、処理をステップS19へ進める。
Next, the
一方、対応バージョンフラグが未設定を示さないと判定された場合(ステップS15:NO)、処理はステップS17へ進む。ステップS17では、CPU15は、ステップS14で特定されたバージョン(つまり、受信された発行データに対応するバージョン)と、対応バージョンフラグにおいて有効化されているバージョンとが一致するか否かを判定する。例えば、バージョンV1.0が特定され、対応バージョンフラグにおいてバージョンV1.1が有効化(“01000000”)されている場合、双方のバージョンが一致しないと判定され(ステップS17:NO)、上記ステップS5と同様、エラー処理が実行される(ステップS18)。これにより、ICチップ発行装置側の設定エラーを発見することができる。一方、バージョンV1.0が特定され、対応バージョンフラグにおいてバージョンV1.0が有効化(“10000000”)されている場合、双方のバージョンが一致すると判定され(ステップS17:YES)、処理はステップS19へ進む。
On the other hand, if it is determined that the corresponding version flag does not indicate unset (step S15: NO), the process proceeds to step S17. In step S17, the
ステップS19では、CPU15は、当該発行コマンドに含まれる発行データの書き込み処理を実行し、処理をステップS20へ進める。書き込み処理により、発行コマンドに含まれる発行データがNVM13のEFに格納される。ステップS20では、CPU15は、書き込み処理の正常終了を示すレスポンスを外部装置2へ返信し、処理を終了する。
In step S19, the
(2.3 運用コマンド受信時の処理)
次に、図7を参照して、ICチップ1が運用コマンドを受信した時に実行される運用処理について説明する。図7は、CPU15により実行される運用処理の一例を示すフローチャートである。例えばICチップ1の出荷後の店舗において、ICチップ1が外部装置2である取引装置から運用コマンドを受信すると、図7に示す処理が開始される。運用コマンドは、ICチップ1を用いて決済等の取引が行われる場合に、取引装置からICチップ1へ送信される各種コマンドである。運用コマンドの例として、GPO(Get Processing Options)コマンド、VERIFYコマンド、及びGENERATE ACコマンドなどが挙げられる。なお、運用コマンドが受信される前に、取引装置からのSELECTコマンドによりICチップ1において、バージョンV1.0及びV1.1に対応する取引用アプリケーションが選択されているものとする。
(2.3 Processing upon receiving an operational command)
Next, referring to Fig. 7, an operation process executed when the IC chip 1 receives an operation command will be described. Fig. 7 is a flow chart showing an example of the operation process executed by the
図6に示す処理が開始されると、CPU15(取引用アプリケーション)は、対応バージョンフラグをチェックし、バージョンを判別する(ステップS31)。例えば、対応バージョンフラグにおいてバージョンV1.0が有効化されている場合には、バージョンV1.0であると判別される。一方、対応バージョンフラグにおいてバージョンV1.1が有効化されている場合には、バージョンV1.1であると判別される。次いで、CPU15は、ステップS31でバージョンV1.0であると判別した場合(ステップS31:V1.0)、バージョンV1.0に対応する運用コマンドに応じた処理(コマンド処理)を実行し(ステップS32)、ステップS34へ進む。一方、CPU15は、ステップS31でバージョンV1.1であると判別した場合(ステップS31:V1.1)、バージョンV1.1に対応する運用コマンドに応じた処理を実行し(ステップS33)、ステップS34へ進む。ステップS34では、CPU15は、コマンド処理の正常終了を示すレスポンスを外部装置2へ返信し、処理を終了する。
When the process shown in FIG. 6 is started, the CPU 15 (transaction application) checks the corresponding version flag and determines the version (step S31). For example, if version V1.0 is enabled in the corresponding version flag, it is determined that the version is V1.0. On the other hand, if version V1.1 is enabled in the corresponding version flag, it is determined that the version is V1.1. Next, if the
以上説明したように、上記実施形態によれば、ICチップ1は、外部装置2から発行データ及び当該発行データの識別子を含むインストールコマンドを受信すると、当該インストールコマンドに含まれる識別子と発行データ識別子リストとに基づいて、当該インストールコマンドに含まれる発行データに対応するバージョンを特定し、当該特定されたバージョンと対応バージョンフラグとに基づいて、当該インストールコマンド発行データの書き込み処理を実行するように構成したので、アプリケーションが複数のバージョンに対応可能とし、当該アプリケーションの搭載に要するメモリ容量を低減することができる。また、対象バージョンのみ動作するICチップ1を発行することができる。
As described above, according to the above embodiment, when the IC chip 1 receives an install command including issuance data and an identifier for the issuance data from the
1 ICチップ
2 外部装置
11 I/O回路
12 RAM
13 NVM
14 ROM
15 CPU
16 コプロセッサ
1
13 NVM
14 ROM
15 CPU
16 Coprocessor
Claims (9)
前記バージョンと前記アプリケーションの実行に必要な発行データの識別子とを前記バージョンごとに対応付ける対応付け情報と、前記アプリケーションが対応可能なバージョンを有効化するための設定情報とを記憶する記憶手段と、
外部装置から前記発行データ及び当該発行データの識別子を含むコマンドを受信する受信手段と、
前記コマンドに含まれる前記識別子と前記対応付け情報とに基づいて、前記コマンドに含まれる前記発行データに対応する前記バージョンを特定する特定手段と、
前記特定手段により特定されたバージョンと前記設定情報とに基づいて、前記コマンドに含まれる前記発行データの書き込み処理を実行する処理手段と、
を備えることを特徴とする電子情報記憶媒体。 An electronic information storage medium having an application program compatible with multiple versions installed thereon,
a storage means for storing association information for associating the version with an identifier of issuance data required for executing the application for each version, and setting information for validating a version compatible with the application;
A receiving means for receiving the issuance data and a command including an identifier of the issuance data from an external device;
a specification unit that specifies the version corresponding to the issuance data included in the command based on the identifier and the association information included in the command;
a processing unit that executes a write process of the issuance data included in the command based on the version identified by the identifying unit and the setting information;
An electronic information storage medium comprising:
前記処理手段は、前記パラメータに示されるバージョンを前記設定情報において有効化することを特徴とする請求項1乃至3の何れか一項に記載の電子情報記憶媒体。 The receiving means receives an installation command including a parameter indicating the version from the external device before receiving the command,
4. The electronic information storage medium according to claim 1, wherein the processing means validates the version indicated by the parameter in the setting information.
前記バージョンと前記アプリケーションの実行に必要な発行データの識別子とを前記バージョンごとに対応付ける対応付け情報と、前記アプリケーションが対応可能なバージョンを有効化するための設定情報とを記憶する記憶手段と、
外部装置から前記発行データ及び当該発行データの識別子を含むコマンドを受信する受信手段と、
前記コマンドに含まれる前記識別子と前記対応付け情報とに基づいて、前記コマンドに含まれる前記発行データに対応する前記バージョンを特定する特定手段と、
前記特定手段により特定されたバージョンと前記設定情報とに基づいて、前記コマンドに含まれる前記発行データの書き込み処理を実行する処理手段と、
を備えることを特徴とするICチップ。 An IC chip equipped with an application compatible with multiple versions,
a storage means for storing association information for associating the version with an identifier of issuance data required for executing the application for each version, and setting information for validating a version compatible with the application;
A receiving means for receiving the issuance data and a command including an identifier of the issuance data from an external device;
a specification unit that specifies the version corresponding to the issuance data included in the command based on the identifier and the association information included in the command;
a processing unit that executes a write process of the issuance data included in the command based on the version identified by the identifying unit and the setting information;
An IC chip comprising:
前記バージョンと前記アプリケーションの実行に必要な発行データの識別子とを前記バージョンごとに対応付ける対応付け情報と、前記アプリケーションが対応可能なバージョンを有効化するための設定情報とを前記電子情報記憶媒体に記憶するステップと、
外部装置から前記発行データ及び当該発行データの識別子を含むコマンドを受信するステップと、
前記コマンドに含まれる前記識別子と前記対応付け情報とに基づいて、前記コマンドに含まれる前記発行データに対応する前記バージョンを特定するステップと、
前記特定されたバージョンと前記設定情報とに基づいて、前記コマンドに含まれる前記発行データの書き込み処理を実行するステップと、
を含むこと特徴とする発行データの書き込み方法。 A method for writing issuance data executed by an electronic information storage medium having an application compatible with multiple versions installed therein, comprising:
storing, in the electronic information storage medium, association information for associating the version with an identifier of issuance data required for executing the application for each version, and setting information for validating a version compatible with the application;
receiving a command from an external device, the command including the issuance data and an identifier of the issuance data;
identifying the version corresponding to the issuance data included in the command based on the identifier and the association information included in the command;
Executing a write process of the issuance data included in the command based on the specified version and the setting information;
A method for writing issuance data, comprising:
前記バージョンと前記アプリケーションの実行に必要な発行データの識別子とを前記バージョンごとに対応付ける対応付け情報と、前記アプリケーションが対応可能なバージョンを有効化するための設定情報とを記憶する記憶手段と、
外部装置から前記発行データ及び当該発行データの識別子を含むコマンドを受信する受信手段と、
前記コマンドに含まれる前記識別子と前記対応付け情報とに基づいて、前記コマンドに含まれる前記発行データに対応する前記バージョンを特定する特定手段と、
前記特定手段により特定されたバージョンと前記設定情報とに基づいて、前記コマンドに含まれる前記発行データの書き込み処理を実行する処理手段として機能させることを特徴とするプログラム。 A computer including an electronic information storage medium on which an application compatible with multiple versions is installed,
a storage means for storing association information for associating the version with an identifier of issuance data required for executing the application for each version, and setting information for validating a version compatible with the application;
A receiving means for receiving the issuance data and a command including an identifier of the issuance data from an external device;
a specification unit that specifies the version corresponding to the issuance data included in the command based on the identifier and the association information included in the command;
a program causing the program to function as a processing means for executing a write process of the issuance data included in the command based on the version specified by the specifying means and the setting information.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2023049943A JP2024139134A (en) | 2023-03-27 | 2023-03-27 | Electronic information storage medium, IC chip, method for writing issuance data, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2023049943A JP2024139134A (en) | 2023-03-27 | 2023-03-27 | Electronic information storage medium, IC chip, method for writing issuance data, and program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2024139134A true JP2024139134A (en) | 2024-10-09 |
Family
ID=92974289
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023049943A Pending JP2024139134A (en) | 2023-03-27 | 2023-03-27 | Electronic information storage medium, IC chip, method for writing issuance data, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2024139134A (en) |
-
2023
- 2023-03-27 JP JP2023049943A patent/JP2024139134A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6338435B1 (en) | Smart card patch manager | |
US9183400B2 (en) | IC card and IC card control method | |
KR101783526B1 (en) | Ic card, electronic device and portable electronic device | |
JP2024139134A (en) | Electronic information storage medium, IC chip, method for writing issuance data, and program | |
EP3023925B1 (en) | Secure element with applications | |
JP6984328B2 (en) | Electronic information storage medium, IC card, external device, data writing method and data writing program | |
JP4836707B2 (en) | Portable electronic device and IC card | |
JP7559916B1 (en) | ELECTRONIC INFORMATION STORAGE MEDIUM, IC CHIP, IC CARD, ELEMENT DATA STORAGE METHOD, AND PROGRAM | |
JP7322923B2 (en) | Secure element, transaction control method and device | |
JP4899499B2 (en) | IC card issuing method, IC card issuing system, and IC card | |
JP7439847B2 (en) | Electronic information storage medium, key data setting method, and program | |
JP7468765B1 (en) | ELECTRONIC INFORMATION STORAGE MEDIUM, IC CHIP, IC CARD, ALL-IN-ONE DATA UPDATE METHOD, AND PROGRAM | |
JP7468757B1 (en) | ELECTRONIC INFORMATION STORAGE MEDIUM, IC CHIP, IC CARD, RESPONSE TRANSMISSION METHOD, AND PROGRAM | |
JP7438432B1 (en) | Electronic information storage medium, IC chip, IC card, record writing method, and program | |
JP7559404B2 (en) | Electronic information storage medium, program addition method, and program | |
JP5932588B2 (en) | IC card, portable electronic device, and IC card processing device | |
JP7010084B2 (en) | Token device used for IC payment | |
JP2006293706A (en) | Multi-application IC card with application update function | |
JP2016153945A (en) | Electronic information storage medium, counter rewriting method and counter rewriting program | |
JP6287284B2 (en) | IC chip and program encryption method | |
JP2017138763A (en) | Electronic information storage medium, data writing method, and data writing program | |
JP6823289B2 (en) | IC card and computer program | |
KR20150074820A (en) | Security payment device including finance micro secure digital card and method of performing thereof | |
JP6039036B2 (en) | IC card, portable electronic device, and control method of IC card | |
JP2025091715A (en) | ELECTRONIC INFORMATION STORAGE MEDIUM, IC CHIP, IC CARD, ERROR CODE RESPONSE METHOD, AND PROGRAM |