Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7533142B2 - Electronic information storage medium, initialization sequence execution method, and program - Google Patents
[go: Go Back, main page]

JP7533142B2 - Electronic information storage medium, initialization sequence execution method, and program - Google Patents

Electronic information storage medium, initialization sequence execution method, and program Download PDF

Info

Publication number
JP7533142B2
JP7533142B2 JP2020188706A JP2020188706A JP7533142B2 JP 7533142 B2 JP7533142 B2 JP 7533142B2 JP 2020188706 A JP2020188706 A JP 2020188706A JP 2020188706 A JP2020188706 A JP 2020188706A JP 7533142 B2 JP7533142 B2 JP 7533142B2
Authority
JP
Japan
Prior art keywords
interface
profile
valid
initialization sequence
storage medium
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
Application number
JP2020188706A
Other languages
Japanese (ja)
Other versions
JP2022077730A (en
Inventor
龍平 渡辺
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 JP2020188706A priority Critical patent/JP7533142B2/en
Publication of JP2022077730A publication Critical patent/JP2022077730A/en
Application granted granted Critical
Publication of JP7533142B2 publication Critical patent/JP7533142B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Computer And Data Communications (AREA)
  • Stored Programmes (AREA)

Description

本発明は、複数のプロファイルを搭載可能なIC(Integrated Circuit)カード等の電子情報記憶媒体の技術分野に関する。 The present invention relates to the technical field of electronic information storage media, such as IC (Integrated Circuit) cards that can accommodate multiple profiles.

複数のアプリケーションを搭載することが可能なICカードは、Java(登録商標)Card仕様及びGlobalPlatform(登録商標)仕様に準拠した製品が事実上のデファクトスタンダードになっている。このような製品では1つのカードが、キャッシュカードやクレジットカード、電子マネーカードとして振舞うことができる。このようなICカードは、論理的な通信路であるチャネル(ロジカルチャネル)を管理する。チャネル管理機能は、例えば特許文献1に開示されるように、各チャネルに異なるアプリケーションを割り当てることができる。そして、チャネルを複数開設すれば、複数の機能を並行して提供することができる。 For IC cards capable of carrying multiple applications, products that comply with the Java (registered trademark) Card and GlobalPlatform (registered trademark) specifications have become the de facto standard. With such products, one card can act as a cash card, a credit card, and an electronic money card. Such IC cards manage channels (logical channels), which are logical communication paths. The channel management function can assign different applications to each channel, as disclosed in Patent Document 1, for example. Furthermore, by opening multiple channels, multiple functions can be provided in parallel.

また、IoT(Internet of Things)の普及に伴い、従来ICカードが利用されていた用途においても、eUICC(embedded Universal Integrated Circuit Card)と称される組込型ICモジュールが利用されるようになった。組込型ICモジュールにおいても、セキュリティを担保するためのセキュリティ機能、決済機能、モバイル回線へ接続するための認証機能など、複数の機能が合わせて搭載されることが多い。さらに、組込型ICモジュールは、従来のICカードと比較して、多様な外部モジュール(例えば、決済サーバや認証サーバ)と接続されるため、それらに応じた多様な複数のインターフェースを備える。 In addition, with the spread of IoT (Internet of Things), embedded IC modules called eUICC (embedded Universal Integrated Circuit Card) are now being used in applications where IC cards were previously used. Embedded IC modules often also come equipped with multiple functions, such as security functions to ensure security, payment functions, and authentication functions for connecting to mobile lines. Furthermore, compared to conventional IC cards, embedded IC modules are connected to a variety of external modules (e.g., payment servers and authentication servers), and therefore have multiple, diverse interfaces to accommodate these.

特開2011-216068号公報JP 2011-216068 A

ところで、組込型ICモジュールが提供する機能を簡便に変更するための方法として、アプリケーションを複数まとめたプロファイルが組込型ICモジュールに複数搭載される場合がある。この場合、組込型ICモジュールは、プロファイル単位で有効、無効を管理するようになっている。そして、組込型ICモジュールに搭載されるプロファイルが更新される場合、更新の前後で外部モジュールに提供される機能が変更される。このため、プロファイル内のアプリケーションと対向するプログラムとの通信は、更新に前後して一度終了し再初期化する必要があるが、搭載されたプロファイルのそれぞれに応じた適切な初期化シーケンスを実行することが望まれる。 Incidentally, as a method for easily changing the functions provided by an embedded IC module, the embedded IC module may be equipped with multiple profiles that group together multiple applications. In this case, the embedded IC module is designed to manage enable/disable on a profile-by-profile basis. When a profile equipped in the embedded IC module is updated, the functions provided to the external module change before and after the update. For this reason, communication between the application in the profile and the corresponding program must be terminated and reinitialized before and after the update, and it is desirable to execute an appropriate initialization sequence for each of the equipped profiles.

そこで、本発明は、以上の点等に鑑みてなされたものであり、搭載されたプロファイルのそれぞれに応じた適切な初期化シーケンスを実行することが可能な電子情報記憶媒体、初期化シーケンス実行方法、及びプログラムを提供することを目的とする。 The present invention has been made in consideration of the above points, and aims to provide an electronic information storage medium, an initialization sequence execution method, and a program that are capable of executing an appropriate initialization sequence according to each loaded profile.

上記課題を解決するために、請求項1に記載の発明は、少なくとも1つのインターフェースと、複数のプロファイルのそれぞれを有効または無効に設定する機能とを備え、それぞれの前記プロファイルに紐付けられた初期応答情報を記憶する電子情報記憶媒体であって、前記インターフェースのリセットイベントが生じた場合に、前記複数のプロファイルのうち有効なプロファイルを特定する第1特定手段と、前記第1特定手段により特定されたプロファイルに紐付けられた前記初期応答情報を用いて、前記インターフェースにおいて初期化シーケンスを実行する実行手段と、を備えることを特徴とする。 In order to solve the above problem, the invention described in claim 1 is an electronic information storage medium that has at least one interface and a function for setting each of a plurality of profiles to be valid or invalid, and stores initial response information linked to each of the profiles, and is characterized in that it has a first identification means that identifies a valid profile from among the plurality of profiles when a reset event of the interface occurs, and an execution means that executes an initialization sequence in the interface using the initial response information linked to the profile identified by the first identification means.

請求項2に記載の発明は、請求項1に記載の電子情報記憶媒体において、前記電子情報記憶媒体は、前記インターフェースに紐付けられた前記プロファイルを管理し、前記第1特定手段は、前記リセットイベントが生じた前記インターフェースに紐付けられたプロファイルを特定し、当該特定されたプロファイルが有効である場合に、前記有効なプロファイルを特定することを特徴とする。 The invention described in claim 2 is characterized in that in the electronic information storage medium described in claim 1, the electronic information storage medium manages the profile linked to the interface, and the first identification means identifies the profile linked to the interface in which the reset event occurred, and, if the identified profile is valid, identifies the valid profile.

請求項3に記載の発明は、請求項1または2に記載の電子情報記憶媒体において、前記インターフェースのリセットイベントを契機として前記有効なプロファイルが切り替わっているか否かを判定する第1判定手段と、前記第1判定手段により前記有効なプロファイルが切り替わっていると判定された場合、前記リセットイベントが生じた前記インターフェースとは異なる他のインターフェースに紐付けられた前記有効なプロファイルを特定する第2特定手段と、を更に備え、前記実行手段は、前記第2特定手段により特定されたプロファイルに紐付けられた前記初期応答情報を用いて、前記他のインターフェースにおいて初期化シーケンスを実行することを特徴とする。 The invention described in claim 3 is an electronic information storage medium according to claim 1 or 2, further comprising a first determination means for determining whether the valid profile has been switched in response to a reset event of the interface, and a second identification means for identifying the valid profile linked to another interface different from the interface in which the reset event occurred when the first determination means determines that the valid profile has been switched, and the execution means executes an initialization sequence in the other interface using the initial response information linked to the profile identified by the second identification means.

請求項4に記載の発明は、請求項1乃至3の何れか一項に記載の電子情報記憶媒体において、前記第1特定手段により特定されたプロファイルが、前記リセットイベントが生じた前記インターフェースとは異なる他のインターフェースに紐付けられているか否かを判定する第2判定手段を更に備え、前記第2判定手段により前記プロファイルが前記他のインターフェースに紐付けられていると判定された場合、当該プロファイルに紐付けられた前記初期応答情報を用いて、前記他のインターフェースにおいて初期化シーケンスを実行することを特徴とする。 The invention described in claim 4 is characterized in that, in the electronic information storage medium described in any one of claims 1 to 3, it further comprises a second determination means for determining whether the profile identified by the first determination means is linked to another interface different from the interface in which the reset event occurred, and when it is determined by the second determination means that the profile is linked to the other interface, an initialization sequence is executed in the other interface using the initial response information linked to the profile.

請求項5に記載の発明は、請求項1乃至4の何れか一項に記載の電子情報記憶媒体において、前記電子情報記憶媒体は、前記インターフェースに対して開設可能なチャネルを管理し、前記リセットイベントが生じた前記インターフェースに対して開設可能なチャネルを特定する第3特定手段を更に備え、前記実行手段は、前記第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 4, the electronic information storage medium further comprises a third identification means for managing channels that can be opened for the interface and identifying channels that can be opened for the interface in which the reset event has occurred, and the execution means executes an initialization sequence for any of the channels identified by the third identification means that are opened for the profile.

請求項6に記載の発明は、請求項5に記載の電子情報記憶媒体において、前記実行手段は、前記第3特定手段により特定されたチャネルに対して開設されている前記プロファイルに開設されている他のチャネルの初期化シーケンスを実行することを特徴とする。 The invention described in claim 6 is characterized in that in the electronic information storage medium described in claim 5, the execution means executes an initialization sequence for another channel opened in the profile that is opened for the channel identified by the third identification means.

請求項7に記載の発明は、少なくとも1つのインターフェースと、複数のプロファイルのそれぞれを有効または無効に設定する機能とを備え、それぞれの前記プロファイルに紐付けられた初期応答情報を記憶する電子情報記憶媒体におけるコンピュータにより実行される初期化シーケンス実行方法であって、前記インターフェースのリセットイベントが生じた場合に、前記複数のプロファイルのうち有効なプロファイルを特定するステップと、前記特定されたプロファイルに紐付けられた前記初期応答情報を用いて、前記インターフェースにおいて初期化シーケンスを実行するステップと、を含むことを特徴とする。 The invention described in claim 7 is an initialization sequence execution method executed by a computer in an electronic information storage medium that has at least one interface and a function for setting each of a plurality of profiles to be valid or invalid, and stores initial response information linked to each of the profiles, and is characterized in that it includes a step of identifying a valid profile from among the plurality of profiles when a reset event of the interface occurs, and a step of executing an initialization sequence in the interface using the initial response information linked to the identified profile.

請求項8に記載の発明は、少なくとも1つのインターフェースと、複数のプロファイルのそれぞれを有効または無効に設定する機能とを備え、それぞれの前記プロファイルに紐付けられた初期応答情報を記憶する電子情報記憶媒体におけるコンピュータを、前記インターフェースのリセットイベントが生じた場合に、前記複数のプロファイルのうち有効なプロファイルを特定する第1特定手段と、前記第1特定手段により特定されたプロファイルに紐付けられた前記初期応答情報を用いて、前記インターフェースにおいて初期化シーケンスを実行する実行手段として機能させることを特徴とする。 The invention described in claim 8 is characterized in that a computer in an electronic information storage medium that has at least one interface and a function for setting each of a plurality of profiles to be valid or invalid, and stores initial response information linked to each of the profiles, functions as a first identification means that identifies a valid profile from among the plurality of profiles when a reset event of the interface occurs, and as an execution means that executes an initialization sequence in the interface using the initial response information linked to the profile identified by the first identification means.

本発明によれば、電子情報記憶媒体に搭載された複数のプロファイルのそれぞれに応じた適切な初期化シーケンスを実行することができる。 According to the present invention, it is possible to execute an appropriate initialization sequence according to each of multiple profiles loaded on an electronic information storage medium.

本実施形態に係る通信デバイスDの概要構成例を示す図である。FIG. 2 is a diagram illustrating an example of a schematic configuration of a communication device D according to the present embodiment. ICモジュール4のハードウェア構成例を示す図である。FIG. 2 is a diagram illustrating an example of a hardware configuration of an IC module 4. プロファイル、チャネル、及びインターフェースとの関係の一例を示す図である。FIG. 13 is a diagram illustrating an example of a relationship between a profile, a channel, and an interface. インターフェースのリセットイベントが発生したときにICモジュール4のOSにより実行されるメイン処理の一例を示すフローチャートである。10 is a flowchart showing an example of a main process executed by an OS of an IC module when a reset event of an interface occurs. 図4のステップS6に示す「リセット対象インターフェース決定処理」の詳細を示すフローチャートである。5 is a flowchart showing details of the "reset target interface determination process" shown in step S6 of FIG. 4. 図4のステップS8に示す「リセット対象チャネル決定処理」の詳細を示すフローチャートである。5 is a flowchart showing details of the "reset target channel determination process" shown in step S8 of FIG. 4.

以下、図面を参照して本発明の実施形態について詳細に説明する。以下に説明する実施形態は、通信デバイスに対して本発明を適用した場合の実施の形態である。なお、通信デバイスには、例えばスマートフォン等の携帯端末や各種センサー等を備えるIoT機器に適用可能である。 The following describes in detail an embodiment of the present invention with reference to the drawings. The embodiment described below is an embodiment in which the present invention is applied to a communication device. Note that the communication device can be applied to, for example, a mobile terminal such as a smartphone, or an IoT device equipped with various sensors, etc.

[1.通信デバイスDの概要構成]
先ず、図1等を参照して、本実施形態にかかる通信デバイスDの概要構成について説明する。図1は、本実施形態に係る通信デバイスDの概要構成例を示す図である。図1に示すように、通信デバイスDは、通信モジュール1、通信モジュール2、制御モジュール3、及びICモジュール4(本発明の電子情報記憶媒体の一例)を含んで構成される。なお、図1の例では、通信デバイスDは、2つの通信モジュールを備えるが、3つ以上の通信モジュールを備えてもよい。
[1. General configuration of communication device D]
First, a schematic configuration of a communication device D according to the present embodiment will be described with reference to Fig. 1 and the like. Fig. 1 is a diagram showing an example of a schematic configuration of a communication device D according to the present embodiment. As shown in Fig. 1, the communication device D includes a communication module 1, a communication module 2, a control module 3, and an IC module 4 (an example of an electronic information storage medium of the present invention). In the example of Fig. 1, the communication device D includes two communication modules, but may include three or more communication modules.

通信モジュール1は、例えばNFC(Near Field Communication)の規格で規定される非接触通信を行うCLF(ContactLess Front-end)であり、非接触のフィールド内で、決済装置に備えられる非接触リーダとの間で通信を行う。さらに、通信モジュール1は、インターフェースIF1を介してICモジュール4との間で通信を行う。インターフェースIF1は、例えばSWP(Single Wire Protocol)に従った通信を行うためのインターフェースである。 The communication module 1 is, for example, a contactless front-end (CLF) that performs contactless communication as defined by the NFC (Near Field Communication) standard, and communicates with a contactless reader provided in the payment device within a contactless field. Furthermore, the communication module 1 communicates with the IC module 4 via an interface IF1. The interface IF1 is, for example, an interface for performing communication according to the SWP (Single Wire Protocol).

通信モジュール2は、例えばモバイル回線(例えば、3G、4G、または5Gネットワーク)に接続するための無線通信モデムであり、当該モバイル回線の基地局との間で通信を行う。さらに、通信モジュール2は、インターフェースIF2を介してICモジュール4との間で通信を行う。通信モジュール2とICモジュール4とは、例えばISO7816によって定められたプロトコルに従った通信を行うためのインターフェースである。 The communication module 2 is, for example, a wireless communication modem for connecting to a mobile line (e.g., a 3G, 4G, or 5G network) and communicates with the base station of the mobile line. Furthermore, the communication module 2 communicates with the IC module 4 via an interface IF2. The communication module 2 and the IC module 4 are an interface for communicating according to a protocol defined by, for example, ISO7816.

制御モジュール3は、CPU(Central Processing Unit)、RAM(Random Access Memory)、及びROM(Read Only Memory)等により構成されており、通信デバイスDにおける各種機能を制御する。ICモジュール4は、ICチップ等のハードウェアをベースとして、オペレーティングシステム(以下、「OS」という)及びプロファイル等のソフトウェアが搭載されて構成される。ここで、OSは、ファームウェアであってもよい。なお、ICモジュール4は、eUICCとして通信デバイスDから容易に取り外しや取り換えができないように組み込み基板上に実装されてもよいし、カード型のICカードとして通信デバイスDに着脱可能に装着されてもよい。 The control module 3 is composed of a CPU (Central Processing Unit), RAM (Random Access Memory), ROM (Read Only Memory), etc., and controls various functions in the communication device D. The IC module 4 is composed of hardware such as an IC chip as a base, and is equipped with software such as an operating system (hereinafter referred to as "OS") and profiles. Here, the OS may be firmware. The IC module 4 may be mounted on an embedded board as an eUICC so that it cannot be easily removed or replaced from the communication device D, or may be removably attached to the communication device D as a card-type IC card.

図2は、ICモジュール4のハードウェア構成例を示す図である。図2に示すように、ICモジュール4は、CPU41、RAM42、ROM43、NVM(Nonvolatile Memory)44(不揮発性メモリ)、及びI/O回路45等を備えて構成される。I/O回路45は、例えばISO7816によって定められたC1~C8の8つの端子を備える。ここで、C1端子は電源端子(VCC)であり、C2端子はリセット信号を入力するためのリセット端子(RST)であり、C3端子はクロック信号を入力するためのクロック端子(CLK)であり、C5端子はグランド端子(GND)である。また、C6端子は通信モジュール1との間のインターフェースIF1を担う端子であり、C7端子は通信モジュール2との間のインターフェースIF2を担う端子である。なお、C4端子及びC8端子は、通信モジュール1,2以外の通信モジュールとの間のインターフェース(例えば、USB(Universal Serial Bus)転送用のインターフェース)を担う端子に利用することができる。 2 is a diagram showing an example of the hardware configuration of the IC module 4. As shown in FIG. 2, the IC module 4 is configured with a CPU 41, a RAM 42, a ROM 43, an NVM (Nonvolatile Memory) 44, an I/O circuit 45, and the like. The I/O circuit 45 has eight terminals C1 to C8, for example, as defined by ISO7816. Here, the C1 terminal is a power supply terminal (VCC), the C2 terminal is a reset terminal (RST) for inputting a reset signal, the C3 terminal is a clock terminal (CLK) for inputting a clock signal, and the C5 terminal is a ground terminal (GND). The C6 terminal is a terminal that serves as an interface IF1 with the communication module 1, and the C7 terminal is a terminal that serves as an interface IF2 with the communication module 2. The C4 terminal and the C8 terminal can be used as terminals that serve as interfaces with communication modules other than the communication modules 1 and 2 (for example, an interface for USB (Universal Serial Bus) transfer).

CPU41は、ROM43またはNVM44に記憶されたプログラム(本発明のプログラムを含む)を実行するプロセッサ(コンピュータ)である。NVM44には、例えばフラッシュメモリが適用できる。なお、NVM44は、「Electrically Erasable Programmable Read-Only Memory」などの不揮発性メモリであってもよい。ROM43またはNVM44には、OS、プロファイル、インターフェース管理情報、及びプロファイル管理情報が記憶される。なお、ROM43またはNVM44には、ICモジュール4に固有の初期応答情報が記憶されてもよい。 The CPU 41 is a processor (computer) that executes a program (including the program of the present invention) stored in the ROM 43 or NVM 44. For example, a flash memory can be used as the NVM 44. The NVM 44 may be a non-volatile memory such as an "Electrically Erasable Programmable Read-Only Memory." The ROM 43 or NVM 44 stores an OS, a profile, interface management information, and profile management information. The ROM 43 or NVM 44 may also store initial response information specific to the IC module 4.

ここで、プロファイルは、少なくとも1つ以上のアプリケーション(例えば、電話アプリ、決済サプリ、銀行アプリなど)を含む。アプリケーションは、インスタンス化された複数のオブジェクトの集合であり、外部からのコマンドを処理する実体である。また、プロファイルには、アプリケーションにより利用されるデータが含まれる場合もある。かかるデータは、例えば、MF(Master File)、DF(Dedicated File)、及びEF(Elementary File)などから構成される階層構造を有する複数のファイルに格納される。MFは、ファイル構成において最上位に位置し、MFの下位階層にはDF及びEFが位置する。MFは、例えば、アプリケーション毎に設けられる。EFは、アプリケーションにより利用されるデータを格納するファイルである。また、EFは、IEFとWEFに分けられる。IEFには、例えば、セッションキーなどのPIN(照合鍵)が格納される。 Here, a profile includes at least one or more applications (e.g., a phone application, a payment supplement, a bank application, etc.). An application is a collection of multiple instantiated objects, and is an entity that processes commands from the outside. A profile may also include data used by the application. Such data is stored in multiple files having a hierarchical structure composed of, for example, a Master File (MF), a Dedicated File (DF), and an Elementary File (EF). The MF is located at the top of the file structure, and the DF and EF are located in the hierarchy below the MF. An MF is provided, for example, for each application. An EF is a file that stores data used by an application. An EF is also divided into an IEF and a WEF. For example, a PIN (verification key) such as a session key is stored in the IEF.

インターフェース管理情報には、それぞれのインターフェースの識別子を記述するインターフェースリストが含まれる。インターフェースリストには、それぞれのインターフェースに予め紐付けられたプロファイルの識別子が、それぞれのインターフェースの識別子に対応付けられて記述される。また、インターフェースリストには、それぞれのインターフェースに対して開設可能な1つ以上のチャネルの識別子を記述するチャネルリストが、それぞれのインターフェースの識別子に対応付けられて記述されてもよい。チャネルは、プロファイルにアクセスするための論理的な通信路である。インターフェースに対して開設可能なチャネルは予め設定される。 The interface management information includes an interface list that describes the identifiers of each interface. In the interface list, the identifiers of profiles that are pre-linked to each interface are described in association with the identifiers of each interface. In addition, the interface list may also include a channel list that describes the identifiers of one or more channels that can be opened for each interface in association with the identifiers of each interface. A channel is a logical communication path for accessing a profile. The channels that can be opened for an interface are set in advance.

また、プロファイル管理情報には、プロファイルごとに予め紐付けられた初期応答情報が含まれる。当該プロファイル管理情報において、それぞれの初期応答情報には、それぞれに紐づけられるプロファイルの識別子に対応付けられている。初期応答情報は、通信設定用パラメータであり、プロファイル(換言すると、プロファイルの種別)に応じて異なる。 The profile management information also includes initial response information that is pre-linked to each profile. In the profile management information, each piece of initial response information is associated with the identifier of the profile to which it is linked. The initial response information is a parameter for communication settings, and differs depending on the profile (in other words, the type of profile).

図3は、プロファイル、チャネル、及びインターフェースとの関係の一例を示す図である。図3において、OSは、複数のインターフェースを管理するインターフェース管理機能、複数のチャネルを管理するチャネル管理機能、複数のプロファイルを管理するプロファイル管理機能、複数のプロファイルのそれぞれを有効または無効に設定するプロファイル有効/無効設定機能、及び複数のプロファイルのうち有効なプロファイルを何れか1つのチャネルに割り当てるチャネル割当機能を備える。 Figure 3 is a diagram showing an example of the relationship between profiles, channels, and interfaces. In Figure 3, the OS has an interface management function that manages multiple interfaces, a channel management function that manages multiple channels, a profile management function that manages multiple profiles, a profile enable/disable setting function that sets each of the multiple profiles to be enabled or disabled, and a channel assignment function that assigns an enabled profile of the multiple profiles to one of the channels.

インターフェース管理機能は、インターフェース管理情報を用いて、それぞれのインターフェースに紐付けられたプロファイルを管理したり、それぞれのインターフェースに対して開設可能なチャネルを設定し(紐付けて)管理する。図3の例では、インターフェースIF1にはプロファイルPF1とプロファイルPF2とが紐付けられ、インターフェースIF2にはプロファイルPF2とプロファイルPF3とが紐付けられている。また、図3の例では、インターフェースIF1に対してチャネルCh0及びチャネルCh1が開設可能になっており(換言すると、紐付けられており)、インターフェースIF2に対してチャネルCh2及びチャネルCh3が開設可能になっている。プロファイル管理機能は、プロファイル管理情報を用いて、それぞれのプロファイルに紐付けられた初期応答情報を管理する。 The interface management function uses interface management information to manage the profiles linked to each interface, and to set (link) and manage the channels that can be opened for each interface. In the example of Figure 3, profile PF1 and profile PF2 are linked to interface IF1, and profile PF2 and profile PF3 are linked to interface IF2. Also, in the example of Figure 3, channels Ch0 and Ch1 can be opened (in other words, linked) for interface IF1, and channels Ch2 and Ch3 can be opened for interface IF2. The profile management function uses profile management information to manage the initial response information linked to each profile.

プロファイル有効/無効設定機能は、複数のプロファイルのうち、全てのプロファイルを有効に設定することもできるし、一部のみのプロファイルを有効に設定することもできる。図3の例では、プロファイルPF1及びプロファイルPF2が有効に設定(つまり、有効化)されており、プロファイルPF3が無効に設定されている。チャネル割当機能は、複数の有効なプロファイルのそれぞれを複数のチャネルのそれぞれに割り当てることもできる。図3の例では、プロファイルPF1にはチャネルCh0が割り当てられており(つまり、開設されており)、プロファイルPF2にはチャネルCh1及びチャネルCh2が割り当てられている。つまり、プロファイルPF1は、通信モジュール1との間でチャネルCh0を介してセッションが確立されている。また、プロファイルPF2は、通信モジュール1との間でチャネルCh1を介してセッションが確立されているとともに、通信モジュール2との間でチャネルCh2を介してセッションが確立されている。 The profile enable/disable setting function can enable all of the multiple profiles, or can enable only some of the profiles. In the example of FIG. 3, profiles PF1 and PF2 are enabled (i.e., enabled), and profile PF3 is disabled. The channel assignment function can also assign each of the multiple enabled profiles to each of the multiple channels. In the example of FIG. 3, profile PF1 is assigned channel Ch0 (i.e., opened), and profile PF2 is assigned channels Ch1 and Ch2. That is, profile PF1 has a session established with communication module 1 via channel Ch0. Also, profile PF2 has a session established with communication module 1 via channel Ch1, and a session established with communication module 2 via channel Ch2.

以上のように構成されたICモジュール4において、OSは、上述した機能に加え、本発明における第1特定手段、第2特定手段、第3特定手段、第1判定手段、第2判定手段、及び実行手段として機能する。具体的には、OSは、インターフェース(例えば、IF1またはIF2)のリセットイベントが生じた場合に、当該リセットイベントが生じたインターフェースに紐付けられたプロファイルを特定し、当該特定されたプロファイルが有効であるか否かを判定し、当該特定されたプロファイルが有効である場合に、当該プロファイルに紐付けられた初期応答情報(つまり、当該プロファイルの初期応答情報)を用いて、当該インターフェースにおいて初期化シーケンス(活性化手順)を実行する。 In the IC module 4 configured as described above, the OS functions as the first identification means, second identification means, third identification means, first determination means, second determination means, and execution means of the present invention in addition to the functions described above. Specifically, when a reset event occurs for an interface (e.g., IF1 or IF2), the OS identifies a profile linked to the interface in which the reset event occurred, determines whether the identified profile is valid, and if the identified profile is valid, executes an initialization sequence (activation procedure) for the interface using the initial response information linked to the profile (i.e., the initial response information of the profile).

すなわち、ICモジュール4に搭載された複数のプロファイルのうち有効なプロファイルが特定され、当該特定された有効なプロファイルに紐付けられた初期応答情報を用いて、当該インターフェースにおいて初期化シーケンスが実行される。これにより、プロファイル毎に異なる初期応答が可能になる。なお、初期化シーケンスが正常に行われた場合、インターフェースは活性化される。 That is, a valid profile is identified from among multiple profiles loaded on the IC module 4, and an initialization sequence is executed in the interface using the initial response information linked to the identified valid profile. This allows for a different initial response for each profile. If the initialization sequence is performed normally, the interface is activated.

ここで、インターフェースIF1のリセットイベントは、例えばI/O回路45におけるC6端子がHigh状態(pullup)にされることで生じる。この場合の初期化シーケンスでは、上記特定された有効なプロファイルに紐付けられた初期応答情報(SWP bit durationsなど)を含むACT_SYNCフレームがICモジュール4からインターフェースIF1を介して通信モジュール1へ送信される。そして、必要に応じて、通信モジュール1からインターフェースIF1を介して送信されたACT_POWER_MODEフレームがICモジュール4により受信され、当該ACT_POWER_MODEフレームの内容に応じた処理が行われる。なお、ICモジュール4が直接リセットイベントを発生させる以外に、通信モジュール1を介して対向機器にリセット処理の開始をするよう要求することをもって、リセットイベントの発生としてもよい。 Here, the reset event of interface IF1 occurs, for example, when the C6 terminal in I/O circuit 45 is set to a high state (pull-up). In this initialization sequence, an ACT_SYNC frame including initial response information (such as SWP bit durations) linked to the above-identified valid profile is sent from IC module 4 to communication module 1 via interface IF1. Then, as necessary, an ACT_POWER_MODE frame sent from communication module 1 via interface IF1 is received by IC module 4, and processing according to the contents of the ACT_POWER_MODE frame is performed. Note that, in addition to directly generating a reset event, a reset event may also occur when IC module 4 requests the opposing device to start a reset process via communication module 1.

一方、インターフェースIF2のリセットイベントは、例えばI/O回路45におけるC1端子及びC2端子がHigh状態にされることで生じる。この場合の初期化シーケンスでは、上記特定された有効なプロファイルに紐付けられた初期応答情報(例えば、T=0やT=1等のプロトコル形式及び通信速度など)を含むATRがICモジュール4からインターフェースIF2を介して通信モジュール2へ送信される。そして、必要に応じて(例えば通信パラメータを変更する場合)、通信モジュール2からインターフェースIF2を介して送信されたPPS(Protocol and Parameters Selection)要求がICモジュール4により受信され、当該PPS要求に対する応答を含む処理が行われる。なお、ICモジュール4が直接リセットイベントを発生させる以外に、通信モジュール2を介して対向機器にリセット処理の開始をするよう要求することをもって、リセットイベントの発生としてもよい。 On the other hand, a reset event of interface IF2 occurs, for example, when the C1 and C2 terminals of I/O circuit 45 are set to a high state. In this initialization sequence, an ATR including initial response information (e.g., protocol format such as T=0 or T=1 and communication speed) linked to the above-identified valid profile is transmitted from IC module 4 to communication module 2 via interface IF2. Then, if necessary (e.g., when changing communication parameters), a PPS (Protocol and Parameters Selection) request transmitted from communication module 2 via interface IF2 is received by IC module 4, and processing including a response to the PPS request is performed. Note that a reset event may occur when IC module 4 directly generates a reset event, or when IC module 4 requests the opposing device to start a reset process via communication module 2.

また、OSは、リセットイベントが生じたインターフェースに紐付けられた有効なプロファイルが、当該リセットイベントが生じたインターフェースとは異なる他のインターフェースに紐付けられているか否かを判定し、当該有効なプロファイルが、当該他のインターフェースに紐付けられていると判定した場合、当該有効なプロファイルに紐付けられた初期応答情報を用いて、当該他のインターフェースにおいて初期化シーケンスを実行するとよい。 The OS may also determine whether a valid profile associated with the interface in which the reset event occurred is associated with another interface different from the interface in which the reset event occurred, and if it determines that the valid profile is associated with the other interface, may execute an initialization sequence in the other interface using the initial response information associated with the valid profile.

すなわち、この場合、リセットイベントが生じたインターフェースの初期化シーケンスに加えて、他のインターフェースの初期化シーケンスが実行される。これにより、インターフェースのリセットイベントに連動して他のインターフェースの初期化シーケンスを効率良く実行することができる。なお、有効なプロファイルが他のインターフェースに紐付けられていない場合、当該他のインターフェースの初期化シーケンスが実行されない。そのため、リセットイベントが生じたインターフェースに紐付けられた有効なプロファイルとは無関係な他のインターフェースが不用意に初期化されることを防ぐことができる。ところで、他のインターフェースが、ISO7816のようなリセットイベントをICモジュール4の対向機器のみが発生させるインターフェースである場合、ICモジュール4のOSは直接リセットイベントを発生させることができない。この場合、OSは、他のインターフェースでの次のコマンド受信を待ち、このコマンドに対するレスポンスに特定のステータスワードを付与するなどの方法で他のインターフェースの再初期化要求を送信し、対向機器に初期化シーケンスの実行を要求するとよい。 That is, in this case, in addition to the initialization sequence of the interface where the reset event occurred, the initialization sequence of the other interface is executed. This allows the initialization sequence of the other interface to be executed efficiently in conjunction with the reset event of the interface. If a valid profile is not linked to the other interface, the initialization sequence of the other interface is not executed. Therefore, it is possible to prevent other interfaces that are unrelated to the valid profile linked to the interface where the reset event occurred from being inadvertently initialized. However, if the other interface is an interface that generates a reset event such as ISO7816 only from the opposing device of the IC module 4, the OS of the IC module 4 cannot directly generate a reset event. In this case, the OS should wait for the next command to be received at the other interface, and send a reinitialization request for the other interface by adding a specific status word to the response to this command, and request the opposing device to execute the initialization sequence.

また、OSは、インターフェースのリセットイベントを契機として有効なプロファイルが切り替わっているか否かを判定し、有効なプロファイルが切り替わっていると判定した場合、当該リセットイベントが生じたインターフェースとは異なる他のインターフェースに紐付けられた有効なプロファイルを特定してもよい。この場合、OSは、当該有効なプロファイルに紐付けられた初期応答情報を用いて、他のインターフェースにおいて初期化シーケンスを実行する。この場合も、リセットイベントが生じたインターフェースの初期化シーケンスに加えて、他のインターフェースの初期化シーケンスが実行される。なお、有効なプロファイルが切り替わっていないと判定された場合、リセットイベントが生じたインターフェースとは異なる他のインターフェースの初期化シーケンスが実行されない。 The OS may also determine whether or not the valid profile has been switched in response to a reset event of the interface, and if it determines that the valid profile has been switched, identify a valid profile associated with an interface other than the interface in which the reset event occurred. In this case, the OS executes an initialization sequence in the other interface using the initial response information associated with the valid profile. In this case, in addition to the initialization sequence of the interface in which the reset event occurred, the initialization sequence of the other interface is also executed. Note that if it is determined that the valid profile has not been switched, the initialization sequence of the interface other than the interface in which the reset event occurred is not executed.

ところで、上述したインターフェースの初期化シーケンスにおいて、開設済のチャネルの初期化を実行することが考えられるが、有効なプロファイルが使用しないインターフェースのリセットイベントで、当該有効なプロファイルが使用するインターフェースに対して開設されているチャネルが初期化されることは望ましくない。そこで、OSは、インターフェースの初期化シーケンスと、チャネルの初期化シーケンスが分離し、リセットイベントが生じたインターフェースに対して開設可能なチャネルを特定し、当該特定したチャネルのうち何れかの有効なプロファイルに対して開設されているチャネルの初期化シーケンスを実行するとよい。 In the above-mentioned interface initialization sequence, it is conceivable to initialize channels that have already been opened, but it is undesirable for a reset event for an interface that is not used by a valid profile to initialize channels that have been opened for an interface that is used by the valid profile. Therefore, the OS can separate the interface initialization sequence from the channel initialization sequence, identify channels that can be opened for the interface where the reset event occurred, and execute the initialization sequence for any of the identified channels that have been opened for a valid profile.

チャネルの初期化シーケンスでは、例えば、開設済のチャネルの情報を記憶するために例えばRAM42に設けられた記憶領域が初期化される。かかる記憶領域は、例えば、開設済のチャネル毎に分割されており、開設済のチャネルが個々にリセットされる場合はCLEAR_ON_DESELECT領域と呼ばれる限定的な記憶領域が初期化され、全てのチャネルがリセットされる場合はCLEAR_ON_DESELECT領域に加え、CLEAR_ON_DESET領域と呼ばれる記憶領域が初期化されることになる。チャネルの情報には、例えば、チャネルに割り当てられたプロファイルの識別子が含まれる。また、チャネルの初期化シーケンスでは、チャネルの種類よっては開設済のチャネルを切断し、状態を未開設に遷移させる処理が行われる場合もある(例えば、ベーシックロジカルチャネル以外のチャネルのクローズなど)。また、チャネルの初期化シーケンスでは、RAM42の初期化に先立って、チャネルを利用中の、ICモジュール4のアプリケーションまたは対向するアプリケーションに対して、チャネルがクローズしたことを通知する処理が行われる場合もある。なお、OSは、上記特定されたチャネルに対して開設されているプロファイルに開設されている他のチャネルの初期化シーケンスを実行してもよい。 In the channel initialization sequence, for example, a memory area provided in, for example, RAM 42 to store information on opened channels is initialized. Such a memory area is, for example, divided for each opened channel. When an opened channel is reset individually, a limited memory area called a CLEAR_ON_DESELECT area is initialized, and when all channels are reset, a memory area called a CLEAR_ON_DESET area is initialized in addition to the CLEAR_ON_DESELECT area. The channel information includes, for example, the identifier of the profile assigned to the channel. In addition, in the channel initialization sequence, depending on the type of channel, a process may be performed to disconnect an opened channel and transition the state to unopened (for example, closing a channel other than a basic logical channel). In addition, in the channel initialization sequence, prior to the initialization of RAM 42, a process may be performed to notify the application of the IC module 4 or the opposing application that is using the channel that the channel has been closed. In addition, the OS may execute an initialization sequence for other channels opened in the profile opened for the above specified channel.

[2.通信デバイスDの動作]
次に、図4~図6を参照して、通信デバイスDの動作について説明する。図4は、インターフェースのリセットイベントが発生したときにICモジュール4のOSにより実行されるメイン処理の一例を示すフローチャートである。図5は、図4のステップS6に示す「リセット対象インターフェース決定処理」の詳細を示すフローチャートである。図6は、図4のステップS8に示す「リセット対象チャネル決定処理」の詳細を示すフローチャートである。
2. Operation of Communication Device D
Next, the operation of the communication device D will be described with reference to Figures 4 to 6. Figure 4 is a flowchart showing an example of a main process executed by the OS of the IC module 4 when an interface reset event occurs. Figure 5 is a flowchart showing details of the "reset target interface determination process" shown in step S6 of Figure 4. Figure 6 is a flowchart showing details of the "reset target channel determination process" shown in step S8 of Figure 4.

図4に示す処理は、インターフェースのリセットイベントの発生が検知された場合に開始される。図4に示す処理が開始されると、OSは、ICモジュール4に複数のプロファイルが搭載(つまり、NVM44に格納)されているか否かを判定する(ステップS1)。OSは、ICモジュール4に複数のプロファイルが搭載されていないと判定した場合(ステップS1:NO)、ICモジュール4に固有の初期応答情報を用いて、リセットイベントが生じたインターフェースにおいて初期化シーケンスを実行し(ステップS2)、図4に示す処理を終了する。 The process shown in FIG. 4 is started when the occurrence of a reset event of the interface is detected. When the process shown in FIG. 4 is started, the OS determines whether or not multiple profiles are installed in the IC module 4 (i.e., stored in the NVM 44) (step S1). If the OS determines that multiple profiles are not installed in the IC module 4 (step S1: NO), it executes an initialization sequence in the interface where the reset event occurred using initial response information unique to the IC module 4 (step S2), and ends the process shown in FIG. 4.

一方、OSは、ICモジュール4に複数のプロファイルが搭載されていると判定した場合(ステップS1:YES)、当該複数のプロファイルが有効であるか否かを判定する(ステップS3)。OSは、複数のプロファイルが有効でないと判定した場合(ステップS3:NO)、つまり、1つのプロファイルのみが有効であると判定した場合、ステップS4へ進む。一方、OSは、複数のプロファイルが有効であると判定した場合(ステップS3:YES)、ステップS6へ進む。 On the other hand, if the OS determines that multiple profiles are installed on the IC module 4 (step S1: YES), it determines whether the multiple profiles are valid or not (step S3). If the OS determines that multiple profiles are not valid (step S3: NO), that is, if it determines that only one profile is valid, it proceeds to step S4. On the other hand, if the OS determines that multiple profiles are valid (step S3: YES), it proceeds to step S6.

ステップS4では、OSは、有効なプロファイルが、リセットイベントが生じたインターフェースに紐付けられているか否かを判定する。OSは、有効なプロファイルが、リセットイベントが生じたインターフェースに紐付けられていると判定した場合(ステップS4:YES)、当該有効なプロファイルに紐付けられた初期応答情報を用いて、リセットイベントが生じたインターフェースにおいて初期化シーケンスを実行し(ステップS5)、図4に示す処理を終了する。 In step S4, the OS determines whether or not a valid profile is associated with the interface in which the reset event occurred. If the OS determines that a valid profile is associated with the interface in which the reset event occurred (step S4: YES), the OS executes an initialization sequence in the interface in which the reset event occurred using the initial response information associated with the valid profile (step S5), and ends the process shown in FIG. 4.

一方、OSは、有効なプロファイルが、リセットイベントが生じたインターフェースに紐付けられていないと判定した場合(ステップS4:NO)、図4に示す処理を終了する。なお、OSは、有効なプロファイルが、リセットイベントが生じたインターフェースに紐付けられていないと判定した場合、インターフェースのリセットイベントを契機として有効なプロファイルが切り替わっているか否かを判定してもよい。この場合、OSは、有効なプロファイルが切り替わっている(例えば、プロファイルPF1からプロファイルPF2へ切り替わっている)と判定した場合、リセットイベントが生じたインターフェースとは異なる他のインターフェースに紐付けられた有効なプロファイルを特定する。そして、OSは、当該特定した有効なプロファイルに紐付けられた初期応答情報を用いて、他のインターフェースにおいて初期化シーケンスを実行する。 On the other hand, if the OS determines that a valid profile is not associated with the interface in which the reset event occurred (step S4: NO), it ends the process shown in FIG. 4. If the OS determines that a valid profile is not associated with the interface in which the reset event occurred, it may determine whether the valid profile has been switched in response to the reset event of the interface. In this case, if the OS determines that the valid profile has been switched (for example, from profile PF1 to profile PF2), it identifies a valid profile associated with another interface different from the interface in which the reset event occurred. Then, the OS executes an initialization sequence in the other interface using the initial response information associated with the identified valid profile.

ステップS6では、OSは、図5に示すリセット対象インターフェース決定処理を実行する。これにより、リセット対象として決定されたインターフェースの識別子が記述されたリセット対象IFリストが得られる。なお、図5に示すリセット対象インターフェース決定処理の詳細は後述する。次いで、OSは、有効な各プロファイルが、複数のインターフェースに紐付けられているか否かを判定する(ステップS7)。 In step S6, the OS executes the process of determining interfaces to be reset shown in FIG. 5. This results in a list of IFs to be reset, which lists the identifiers of the interfaces determined to be reset. Details of the process of determining interfaces to be reset shown in FIG. 5 will be described later. Next, the OS determines whether each valid profile is associated with multiple interfaces (step S7).

そして、OSは、有効な各プロファイルが、複数のインターフェースに紐付けられていると判定した場合(ステップS7:YES)、OSは、図6に示すリセット対象チャネル決定処理を実行し(ステップS8)、ステップS9へ進む。これにより、リセット対象として決定されたチャネルの識別子が記述されたリセット対象CHリストが得られる。なお、図6に示すリセット対象チャネル決定処理の詳細は後述する。一方、OSは、有効な各プロファイルが、複数のインターフェースに紐付けられていないと判定した場合(ステップS7:NO)、ステップS9へ進む。 If the OS determines that each valid profile is linked to multiple interfaces (step S7: YES), the OS executes the reset target channel determination process shown in FIG. 6 (step S8) and proceeds to step S9. This results in a reset target channel list that describes the identifiers of the channels determined to be reset. The reset target channel determination process shown in FIG. 6 will be described in detail later. On the other hand, if the OS determines that each valid profile is not linked to multiple interfaces (step S7: NO), the OS proceeds to step S9.

ステップS9では、OSは、ステップS6で得られたリセット対象IFリストにおけるインターフェースに紐付けられた有効なプロファイルの初期応答情報を用いて、当該インターフェースにおいて初期化シーケンスを実行する。なお、リセット対象IFリストに複数のインターフェースの識別子が記述されている場合、それぞれのインターフェースにおいて、それぞれのインターフェースに紐付けられた有効なプロファイルの初期応答情報を用いて、初期化シーケンスが実行される。 In step S9, the OS executes an initialization sequence in the interface using the initial response information of a valid profile associated with the interface in the list of IFs to be reset obtained in step S6. Note that if the list of IFs to be reset describes multiple interface identifiers, the initialization sequence is executed in each interface using the initial response information of a valid profile associated with each interface.

ステップS10では、OSは、ステップS8で得られたリセット対象CHリストにおけるチャネルの初期化シーケンスを実行する(ステップS8でリセット対象のチャネルが決定された場合のみ)。なお、ステップS8で得られたリセット対象CHリストに複数のチャネルの識別子が記述されている場合、それぞれのチャネルの初期化シーケンスが実行される。 In step S10, the OS executes the initialization sequence of the channels in the list of channels to be reset obtained in step S8 (only if the channels to be reset were determined in step S8). Note that if the list of channels to be reset obtained in step S8 contains identifiers of multiple channels, the initialization sequence of each channel is executed.

次に、図5に示すリセット対象インターフェース決定処理の詳細について説明する。図5において、OSは、リセットイベントが生じたインターフェースIFa(aは変数)をリセット対象として決定し(ステップS61)、当該インターフェースIFaの識別子をリセット対象IFリストに追加(記述)する。次いで、OSは、インターフェースIFaに紐付けられた有効なプロファイルPFa(aは変数)を特定する(ステップS62)。 Next, the details of the reset target interface determination process shown in FIG. 5 will be described. In FIG. 5, the OS determines the interface IFa (a is a variable) in which a reset event occurred as the interface to be reset (step S61), and adds (writes) the identifier of the interface IFa to the reset target IF list. Next, the OS identifies a valid profile PFa (a is a variable) linked to the interface IFa (step S62).

次いで、OSは、インターフェース管理情報におけるインターフェースリストから、インターフェースIFa以外のインターフェースIFb(bは変数)を1つ選定する(ステップS63)。次いで、ステップS63で選定されたインターフェースIFbに紐付けられた有効なプロファイルPFb(bは変数)を特定する(ステップS64)。 Next, the OS selects one interface IFb (b is a variable) other than interface IFa from the interface list in the interface management information (step S63). Next, it identifies a valid profile PFb (b is a variable) linked to the interface IFb selected in step S63 (step S64).

次いで、OSは、ステップS62で特定されたプロファイルPFaと、ステップS64で特定されたプロファイルPFbとが同一であるか否かを判定する(ステップS65)。OSは、プロファイルPFaとプロファイルPFbとが同一であると判定した場合(ステップS65:YES)、ステップS63で選定されたインターフェースIFbをリセット対象として決定し(ステップS66)、当該インターフェースIFbの識別子をリセット対象IFリストに追加する。そして、処理はステップS67へ進む。一方、OSは、プロファイルPFaとプロファイルPFbとが同一でないと判定した場合(ステップS65:NO)、ステップS67へ進む。 Then, the OS determines whether the profile PFa identified in step S62 is the same as the profile PFb identified in step S64 (step S65). If the OS determines that the profile PFa and the profile PFb are the same (step S65: YES), it determines the interface IFb selected in step S63 as the interface to be reset (step S66) and adds the identifier of the interface IFb to the list of IFs to be reset. Then, the process proceeds to step S67. On the other hand, if the OS determines that the profile PFa and the profile PFb are not the same (step S65: NO), it proceeds to step S67.

ステップS67では、OSは、インターフェースリストにおいてまだ選定されていないインターフェースIFbがあるか否かを判定する(ステップS67)。OSは、インターフェースリストにおいてまだ選定されていないインターフェースIFbがあると判定した場合(ステップS67:YES)、ステップS63に戻り、まだ選定されていないインターフェースIFbを選定し、上記と同様に処理を行う。一方、インターフェースリストにおいてまだ選定されていないインターフェースIFbがないと判定した場合(ステップS67:NO)、図5に示す処理を終了し、図4に示す処理に戻る。 In step S67, the OS determines whether there is an interface IFb that has not yet been selected in the interface list (step S67). If the OS determines that there is an interface IFb that has not yet been selected in the interface list (step S67: YES), the OS returns to step S63, selects an interface IFb that has not yet been selected, and performs the same process as described above. On the other hand, if the OS determines that there is no interface IFb that has not yet been selected in the interface list (step S67: NO), the process shown in FIG. 5 is terminated, and the process returns to the process shown in FIG. 4.

次に、図6に示すリセット対象チャネル決定処理の詳細について説明する。図6において、OSは、リセット対象IFリストからインターフェースIFx(xは変数)を1つ選定する(ステップS81)。次いで、OSは、ステップS81で選定されたインターフェースIFxに対して開設可能なチャネルのチャネルリストを取得する(ステップS82)。次いで、OSは、ステップS82で取得されたチャネルリストからチャネルChx(xは変数)を1つ選定する(ステップS83)。 Next, the details of the process of determining channels to be reset shown in FIG. 6 will be described. In FIG. 6, the OS selects one interface IFx (x is a variable) from the list of IFs to be reset (step S81). Next, the OS acquires a channel list of channels that can be opened for the interface IFx selected in step S81 (step S82). Next, the OS selects one channel Chx (x is a variable) from the channel list acquired in step S82 (step S83).

次いで、OSは、ステップS83で選定されたチャネルChxに対して有効なプロファイルPFx(xは変数)が開設されているか否かを判定する(ステップS84)。OSは、チャネルChxに対して有効なプロファイルPFxが開設されていないと判定した場合(ステップS84:NO)、ステップS86へ進む。一方、OSは、チャネルChxに対して有効なプロファイルPFxが開設されていると判定した場合(ステップS84:YES)、当該チャネルChxをリセット対象として決定し(ステップS85)、当該チャネルChxの識別子をリセット対象CHリストに追加(記述)し、ステップS86へ進む。 Then, the OS determines whether or not a valid profile PFx (x is a variable) has been opened for the channel Chx selected in step S83 (step S84). If the OS determines that a valid profile PFx has not been opened for the channel Chx (step S84: NO), it proceeds to step S86. On the other hand, if the OS determines that a valid profile PFx has been opened for the channel Chx (step S84: YES), it determines the channel Chx as a channel to be reset (step S85), adds (writes) the identifier of the channel Chx to the list of channels to be reset, and proceeds to step S86.

ステップS86では、OSは、有効なプロファイルPFxに他のチャネルChy(yは変数)が開設されているか否かを判定する。OSは、有効なプロファイルPFxに他のチャネルChyが開設されていないと判定した場合(ステップS86:NO)、ステップS88へ進む。一方、OSは、有効なプロファイルPFxに他のチャネルChyが開設されていると判定した場合(ステップS86:YES)、当該他のチャネルChyをリセット対象として決定し(ステップS87)、当該他のチャネルChyの識別子をリセット対象CHリストに追加し、ステップS88へ進む。 In step S86, the OS determines whether another channel Chy (y is a variable) is opened in the valid profile PFx. If the OS determines that another channel Chy is not opened in the valid profile PFx (step S86: NO), it proceeds to step S88. On the other hand, if the OS determines that another channel Chy is opened in the valid profile PFx (step S86: YES), it determines that the other channel Chy is to be reset (step S87), adds the identifier of the other channel Chy to the list of channels to be reset, and proceeds to step S88.

ステップS88では、チャネルリストにおいてまだ選定されていないチャネルChxがあるか否かを判定する。OSは、チャネルリストにおいてまだ選定されていないチャネルChxがあると判定した場合(ステップS88:YES)、ステップS83に戻り、まだ選定されていないチャネルChxを選定し、上記と同様に処理を行う。一方、OSは、チャネルリストにおいてまだ選定されていないチャネルChxがないと判定した場合(ステップS88:NO)、ステップS89へ進む。 In step S88, the OS determines whether there is a channel Chx in the channel list that has not yet been selected. If the OS determines that there is a channel Chx in the channel list that has not yet been selected (step S88: YES), the OS returns to step S83, selects a channel Chx that has not yet been selected, and performs the same process as described above. On the other hand, if the OS determines that there is no channel Chx in the channel list that has not yet been selected (step S88: NO), the OS proceeds to step S89.

ステップS89では、リセット対象IFリストにおいてまだ選定されていないインターフェースIFxがあるか否かを判定する。OSは、リセット対象IFリストにおいてまだ選定されていないインターフェースIFxがあると判定した場合(ステップS89:YES)、ステップS81に戻り、まだ選定されていないインターフェースIFxを選定し、上記と同様に処理を行う。一方、リセット対象IFリストにおいてまだ選定されていないインターフェースIFxがないと判定した場合(ステップS89:NO)、図6に示す処理を終了し、図4に示す処理に戻る。 In step S89, the OS determines whether there is an interface IFx that has not yet been selected in the list of IFs to be reset. If the OS determines that there is an interface IFx that has not yet been selected in the list of IFs to be reset (step S89: YES), the OS returns to step S81, selects an interface IFx that has not yet been selected, and performs the same process as described above. On the other hand, if the OS determines that there is no interface IFx that has not yet been selected in the list of IFs to be reset (step S89: NO), the process shown in FIG. 6 is terminated, and the process returns to the process shown in FIG. 4.

以上説明したように、上記実施形態によれば、ICモジュール4は、インターフェースのリセットイベントが生じた場合に、当該リセットイベントが生じたインターフェースに紐付けられたプロファイルを特定し、当該特定されたプロファイルが有効であるか否かを判定し、当該特定されたプロファイルが有効である場合に、当該プロファイルに紐付けられた初期応答情報を用いて、当該インターフェースにおいて初期化シーケンスを実行するように構成したので、ICモジュール4に搭載された複数のプロファイルのそれぞれに応じた適切な初期化シーケンスを実行することができ、ユーザの利便性を向上することができる。また、リセットイベントが生じたインターフェースに紐付けられた有効なプロファイルとは無関係な他のインターフェースが不用意に初期化されることを防ぐことができる。したがって、各プロファイルが他のプロファイルに関する初期化シーケンスに影響を受けないようにすることができる。さらに、上記実施形態によれば、有効なプロファイルが使用しないインターフェースのリセットイベントで、当該有効なプロファイルが使用するインターフェースに対して開設されているチャネルが初期化されることを防ぐことができる。 As described above, according to the above embodiment, when a reset event occurs for an interface, the IC module 4 is configured to identify a profile linked to the interface in which the reset event occurred, determine whether the identified profile is valid, and if the identified profile is valid, execute an initialization sequence in the interface using the initial response information linked to the profile. This allows an appropriate initialization sequence to be executed for each of the multiple profiles mounted on the IC module 4, improving user convenience. In addition, it is possible to prevent other interfaces unrelated to the valid profile linked to the interface in which the reset event occurred from being inadvertently initialized. Therefore, it is possible to prevent each profile from being affected by the initialization sequence related to the other profiles. Furthermore, according to the above embodiment, it is possible to prevent a channel opened for an interface used by a valid profile from being initialized by a reset event for an interface not used by the valid profile.

1,2 通信モジュール
3 制御モジュール
4 ICモジュール
41 CPU
42 RAM
43 ROM
44 NVM
45 I/O回路
D 通信デバイス
1, 2 Communication module 3 Control module 4 IC module 41 CPU
42 RAM
43 ROM
44 NVM
45 I/O circuit D communication device

Claims (8)

少なくとも1つのインターフェースと、複数のプロファイルのそれぞれを有効または無効に設定する機能とを備え、それぞれの前記プロファイルに紐付けられた初期応答情報を記憶する電子情報記憶媒体であって、
前記インターフェースのリセットイベントが生じた場合に、前記複数のプロファイルのうち有効なプロファイルを特定する第1特定手段と、
前記第1特定手段により特定されたプロファイルに紐付けられた前記初期応答情報を用いて、前記インターフェースにおいて初期化シーケンスを実行する実行手段と、
を備えることを特徴とする電子情報記憶媒体。
An electronic information storage medium comprising at least one interface and a function for setting each of a plurality of profiles to be valid or invalid, and storing initial response information associated with each of the profiles,
a first identification means for identifying a valid profile from among the plurality of profiles when a reset event of the interface occurs;
an execution means for executing an initialization sequence in the interface by using the initial response information associated with the profile identified by the first identification means;
An electronic information storage medium comprising:
前記電子情報記憶媒体は、前記インターフェースに紐付けられた前記プロファイルを管理し、
前記第1特定手段は、前記リセットイベントが生じた前記インターフェースに紐付けられたプロファイルを特定し、当該特定されたプロファイルが有効である場合に、前記有効なプロファイルを特定することを特徴とする請求項1に記載の電子情報記憶媒体。
The electronic information storage medium manages the profile associated with the interface;
The electronic information storage medium according to claim 1, characterized in that the first identification means identifies a profile associated with the interface in which the reset event occurred, and, if the identified profile is valid, identifies the valid profile.
前記インターフェースのリセットイベントを契機として前記有効なプロファイルが切り替わっているか否かを判定する第1判定手段と、
前記第1判定手段により前記有効なプロファイルが切り替わっていると判定された場合、前記リセットイベントが生じた前記インターフェースとは異なる他のインターフェースに紐付けられた前記有効なプロファイルを特定する第2特定手段と、
を更に備え、
前記実行手段は、前記第2特定手段により特定されたプロファイルに紐付けられた前記初期応答情報を用いて、前記他のインターフェースにおいて初期化シーケンスを実行することを特徴とする請求項1または2に記載の電子情報記憶媒体。
a first determination means for determining whether or not the valid profile has been switched in response to a reset event of the interface;
a second identification means for identifying the valid profile associated with another interface different from the interface in which the reset event has occurred when the first determination means determines that the valid profile has been switched;
Further comprising:
The electronic information storage medium according to claim 1 or 2, characterized in that the execution means executes an initialization sequence in the other interface using the initial response information linked to the profile identified by the second identification means.
前記第1特定手段により特定されたプロファイルが、前記リセットイベントが生じた前記インターフェースとは異なる他のインターフェースに紐付けられているか否かを判定する第2判定手段を更に備え、
前記第2判定手段により前記プロファイルが前記他のインターフェースに紐付けられていると判定された場合、当該プロファイルに紐付けられた前記初期応答情報を用いて、前記他のインターフェースにおいて初期化シーケンスを実行することを特徴とする請求項1乃至3の何れか一項に記載の電子情報記憶媒体。
a second determination unit that determines whether or not the profile identified by the first determination unit is associated with an interface other than the interface in which the reset event occurs,
An electronic information storage medium as described in any one of claims 1 to 3, characterized in that when the second determination means determines that the profile is linked to the other interface, an initialization sequence is executed in the other interface using the initial response information linked to the profile.
前記電子情報記憶媒体は、前記インターフェースに対して開設可能なチャネルを管理し、
前記リセットイベントが生じた前記インターフェースに対して開設可能なチャネルを特定する第3特定手段を更に備え、
前記実行手段は、前記第3特定手段により特定されたチャネルのうち何れかの前記プロファイルに対して開設されているチャネルの初期化シーケンスを実行することを特徴とする請求項1乃至4の何れか一項に記載の電子情報記憶媒体。
the electronic information storage medium manages channels that can be opened with respect to the interface;
a third identification means for identifying a channel that can be opened for the interface in which the reset event has occurred;
An electronic information storage medium according to any one of claims 1 to 4, characterized in that the execution means executes an initialization sequence of a channel that is opened for any of the profiles among the channels identified by the third identification means.
前記実行手段は、前記第3特定手段により特定されたチャネルに対して開設されている前記プロファイルに開設されている他のチャネルの初期化シーケンスを実行することを特徴とする請求項5に記載の電子情報記憶媒体。 The electronic information storage medium according to claim 5, characterized in that the execution means executes an initialization sequence of another channel opened in the profile that is opened for the channel identified by the third identification means. 少なくとも1つのインターフェースと、複数のプロファイルのそれぞれを有効または無効に設定する機能とを備え、それぞれの前記プロファイルに紐付けられた初期応答情報を記憶する電子情報記憶媒体におけるコンピュータにより実行される初期化シーケンス実行方法であって、
前記インターフェースのリセットイベントが生じた場合に、前記複数のプロファイルのうち有効なプロファイルを特定するステップと、
前記特定されたプロファイルに紐付けられた前記初期応答情報を用いて、前記インターフェースにおいて初期化シーケンスを実行するステップと、
を含むことを特徴とする初期化シーケンス実行方法。
1. An initialization sequence execution method executed by a computer in an electronic information storage medium that includes at least one interface and a function for setting each of a plurality of profiles to be valid or invalid, and stores initial response information associated with each of the profiles, comprising:
identifying a valid profile from among the plurality of profiles when a reset event of the interface occurs;
performing an initialization sequence at the interface using the initial response information associated with the identified profile;
13. A method for executing an initialization sequence comprising:
少なくとも1つのインターフェースと、複数のプロファイルのそれぞれを有効または無効に設定する機能とを備え、それぞれの前記プロファイルに紐付けられた初期応答情報を記憶する電子情報記憶媒体におけるコンピュータを、
前記インターフェースのリセットイベントが生じた場合に、前記複数のプロファイルのうち有効なプロファイルを特定する第1特定手段と、
前記第1特定手段により特定されたプロファイルに紐付けられた前記初期応答情報を用いて、前記インターフェースにおいて初期化シーケンスを実行する実行手段として機能させることを特徴とするプログラム。
A computer in an electronic information storage medium that includes at least one interface and a function for setting each of a plurality of profiles to be valid or invalid, and stores initial response information associated with each of the profiles,
a first identification means for identifying a valid profile from among the plurality of profiles when a reset event of the interface occurs;
A program that functions as an execution unit that executes an initialization sequence in the interface by using the initial response information linked to the profile identified by the first identification unit.
JP2020188706A 2020-11-12 2020-11-12 Electronic information storage medium, initialization sequence execution method, and program Active JP7533142B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020188706A JP7533142B2 (en) 2020-11-12 2020-11-12 Electronic information storage medium, initialization sequence execution method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020188706A JP7533142B2 (en) 2020-11-12 2020-11-12 Electronic information storage medium, initialization sequence execution method, and program

Publications (2)

Publication Number Publication Date
JP2022077730A JP2022077730A (en) 2022-05-24
JP7533142B2 true JP7533142B2 (en) 2024-08-14

Family

ID=81706692

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020188706A Active JP7533142B2 (en) 2020-11-12 2020-11-12 Electronic information storage medium, initialization sequence execution method, and program

Country Status (1)

Country Link
JP (1) JP7533142B2 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003526128A (en) 1998-03-20 2003-09-02 マスターカード インターナショナル インコーポレイテツド Method and apparatus for selecting a reconfigurable communication protocol between an IC card and a terminal
JP2011216068A (en) 2009-09-11 2011-10-27 Toshiba Corp Portable electronic apparatus, ic card, and method of controlling the portable electronic apparatus
JP2012068932A (en) 2010-09-24 2012-04-05 Nippon Conlux Co Ltd Non-contact type ic card
JP2016051328A (en) 2014-08-29 2016-04-11 株式会社東芝 Ic card, ic module, and method of issuing ic card
JP2017508205A (en) 2014-03-21 2017-03-23 インテル・コーポレーション Selectively enable platform-specific features

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003526128A (en) 1998-03-20 2003-09-02 マスターカード インターナショナル インコーポレイテツド Method and apparatus for selecting a reconfigurable communication protocol between an IC card and a terminal
JP2011216068A (en) 2009-09-11 2011-10-27 Toshiba Corp Portable electronic apparatus, ic card, and method of controlling the portable electronic apparatus
JP2012068932A (en) 2010-09-24 2012-04-05 Nippon Conlux Co Ltd Non-contact type ic card
JP2017508205A (en) 2014-03-21 2017-03-23 インテル・コーポレーション Selectively enable platform-specific features
JP2016051328A (en) 2014-08-29 2016-04-11 株式会社東芝 Ic card, ic module, and method of issuing ic card

Also Published As

Publication number Publication date
JP2022077730A (en) 2022-05-24

Similar Documents

Publication Publication Date Title
RU2402804C2 (en) Method of booting host device from mmc/sd device, host device bootable from mmc/sd device and mmc/sd device from which host device may be booted
JP4322021B2 (en) Memory card
JP5323873B2 (en) System, method, portable computing device, and computer-readable medium using configurable firewall
US6910638B2 (en) Smart card that can be configured for debugging and software development using secondary communication port
US9183400B2 (en) IC card and IC card control method
US8276188B2 (en) Systems and methods for managing storage devices
JP7533142B2 (en) Electronic information storage medium, initialization sequence execution method, and program
EP3236405B1 (en) Selecting an application on a card
JP2005182128A (en) Portable information storage medium and program thereof
JP7334566B2 (en) Electronic information storage medium and program
US9047457B2 (en) Portable electronic entity, host station and associated method
JP7538484B1 (en) ELECTRONIC INFORMATION STORAGE MEDIUM, IC CARD, IC CHIP, LOGIC CHANNEL UTILIZATION METHOD, AND PROGRAM
JP2015125627A (en) Ic card and mobile electronic device
KR20190110337A (en) Multi smart card and method for providing it
JP7444197B2 (en) Electronic information storage medium, cryptographic operation method selection method, and program
JP7487837B1 (en) ELECTRONIC INFORMATION STORAGE MEDIUM, IC CHIP, IC CARD, KEY DATA STORAGE METHOD, AND PROGRAM
JP7501808B2 (en) IC chip
JP7600322B1 (en) IC Card
JP7501764B1 (en) ELECTRONIC INFORMATION STORAGE MEDIUM, IC CHIP, IC CARD, DATA TRANSMISSION/RECEPTION METHOD, AND PROGRAM
US20060053269A1 (en) System, microcontroller and methods thereof
JP7206942B2 (en) Electronic information storage medium, IC chip, initial setting method, and initial setting program
JP2007087120A (en) IC card mounted with a plurality of OSs, and issuance delegation method
KR100971125B1 (en) How magnetic stripe-based network cards operate
JP4811560B2 (en) IC card and IC card program
JP2024087308A (en) ELECTRONIC INFORMATION STORAGE MEDIUM, IC CHIP, MESSAGE TRANSMISSION METHOD, AND PROGRAM

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230927

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240515

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: 20240702

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240715

R150 Certificate of patent or registration of utility model

Ref document number: 7533142

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150