JP2010122806A - Ic card settlement terminal, controller thereof, and program - Google Patents

Ic card settlement terminal, controller thereof, and program Download PDF

Info

Publication number
JP2010122806A
JP2010122806A JP2008294580A JP2008294580A JP2010122806A JP 2010122806 A JP2010122806 A JP 2010122806A JP 2008294580 A JP2008294580 A JP 2008294580A JP 2008294580 A JP2008294580 A JP 2008294580A JP 2010122806 A JP2010122806 A JP 2010122806A
Authority
JP
Japan
Prior art keywords
application
brand
card
application module
request
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2008294580A
Other languages
Japanese (ja)
Other versions
JP5304193B2 (en
Inventor
Takashi Hachiman
貴志 八幡
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.)
Fuji Electric Retail Systems Co Ltd
Original Assignee
Fuji Electric Retail Systems 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 Fuji Electric Retail Systems Co Ltd filed Critical Fuji Electric Retail Systems Co Ltd
Priority to JP2008294580A priority Critical patent/JP5304193B2/en
Publication of JP2010122806A publication Critical patent/JP2010122806A/en
Application granted granted Critical
Publication of JP5304193B2 publication Critical patent/JP5304193B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Control Of Vending Devices And Auxiliary Devices For Vending Devices (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To easily cope with even a case where kinds of electronic money that can be used in each terminal are different, and to solve a security problem. <P>SOLUTION: A main controller 11 stores multiple kinds of brand applications 25 (A, B, ... n). An application management unit 21 starts only preset brand applications among the multiple brand applications 25 as initial processing to establish connection. This start is performed using an execution file path generated according to registered information and a prescribed rule. <P>COPYRIGHT: (C)2010,JPO&INPIT

Description

本発明は、電子マネーを用いるキャッシュレス決済システムに係わり、特に複数種類のICカードに対応可能なICカード決済端末に関する。   The present invention relates to a cashless payment system using electronic money, and more particularly to an IC card payment terminal that can handle a plurality of types of IC cards.

非接触ICカードや非接触ICカード機能内蔵の携帯電話等(以下、ICカードというものとする)を用いた、電子マネーを使用するキャッシュレス決済システムでは、ICカードへの入金処理や、利用額の差引き処理を始めとするICカードへのアクセス処理を、ICカード・リーダ/ライタ(R/W)を有するICカード決済端末が、POSレジなどの上位端末からの指示に従って行っている。   In a cashless payment system using electronic money using a non-contact IC card or a mobile phone with a non-contact IC card function (hereinafter referred to as an IC card), payment processing to the IC card and usage amount The IC card settlement terminal having the IC card reader / writer (R / W) performs the access process to the IC card including the subtracting process in accordance with an instruction from a host terminal such as a POS register.

ここで、現在では複数種類のICカードが存在する。すなわち、電子マネーは、各社から異なる仕様の電子マネーブランドが規定され、それぞれ電子マネー用のICカードが発行され、また携帯端末用ソフトウェアがリリースされている。すなわち、複数のICカード発行・決済会社がそれぞれ自社ブランドのICカードを発行・管理している。そして、昨今、1台の決済端末で複数のブランドの(複数種類の)電子マネーを利用できるマルチブランド決済端末に対するニーズが高まっている。   Here, there are currently a plurality of types of IC cards. That is, for electronic money, electronic money brands with different specifications are prescribed by each company, IC cards for electronic money are issued, and software for portable terminals is released. That is, a plurality of IC card issuing / settlement companies issue and manage their own brand IC cards. Recently, there is an increasing need for a multi-brand payment terminal that can use (a plurality of types of) electronic money of a plurality of brands with a single payment terminal.

この様な複数種類のICカードに対応可能なICカード決済端末では、自端末で扱う各ブランド毎の処理機能が必要である。これは、例えば、ICカードとの通信は秘匿通信(暗号化通信)であるので、その為の鍵情報等が必要であるが、複数ブランドに対応する場合、各ブランド毎の鍵情報等を保持する必要がある。   In such an IC card settlement terminal that can handle a plurality of types of IC cards, a processing function for each brand handled by the terminal itself is required. This is because, for example, the communication with the IC card is a secret communication (encrypted communication), so key information for that purpose is necessary. However, when dealing with multiple brands, the key information for each brand is retained. There is a need to.

ICカード決済端末の主な処理機能は、利用客が保持するICカードから利用額を差し引いたり、あるいは金額を積みましたりすることや、決済処理結果等を示す明細情報等(取引情報)を生成・記録し、この明細情報等を各電子マネーブランド会社(ICカード発行・決済会社)におけるセンタサーバへ送信すること等である。   The main processing function of the IC card payment terminal is to deduct the usage amount from the IC card held by the customer or add the amount, and generate detailed information (transaction information) indicating the result of the payment processing, etc. Recording and sending the detailed information to the center server of each electronic money brand company (IC card issuing / settlement company).

上記の通り、ICカードとの通信はセキュリティ性を高めるために暗号化されており、暗号化/復号化の為の鍵等の秘匿情報を端末が保持する必要があるが、この秘匿情報は電子マネーブランド毎に異なる。またICカードの仕様も各ブランド毎に異なるため、ICカードのリードライト方法も異なる。上記取引情報を各社のセンタサーバに送信する場合においても、接続先(各社のセンタサーバのIPアドレス等)が異なることは勿論のこと、その通信仕様も異なる。そこで従来は、その決済端末で扱う全ての電子マネーブランドに関わる処理を、ひとつのプログラム上で実現することで、1台の決済端末で複数のブランドの電子マネーを取り扱っていた。   As described above, communication with the IC card is encrypted to enhance security, and the terminal needs to hold confidential information such as a key for encryption / decryption. Different for each money brand. Moreover, since the specifications of the IC card are different for each brand, the IC card read / write method is also different. Even when the transaction information is transmitted to the center server of each company, the communication specification is different as well as the connection destination (IP address of the center server of each company) is different. Therefore, conventionally, processing related to all electronic money brands handled by the settlement terminal is realized on one program, so that one settlement terminal handles electronic money of a plurality of brands.

また、例えば特許文献1に開示の従来技術が知られている。
特許文献1の発明は、複数種類の電子マネーに対する決済処理を迅速に行えるようにするものである。特許文献1には、対応可能とする電子マネーのそれぞれの決済処理を行う複数の決済部103A〜103Cを具備すると共に、対応可能とする全ての電子マネーに関する情報の読み取りを行う選択部を具備し、選択部によりメディア検出を行った結果に応じて上記決済部103A〜103Cを動作させることが開示されている。
特開2008−16016号公報
For example, the prior art disclosed in Patent Document 1 is known.
The invention of Patent Document 1 enables quick settlement processing for a plurality of types of electronic money. Patent Document 1 includes a plurality of settlement units 103A to 103C that perform settlement processing of electronic money that can be handled, and a selection unit that reads information about all the electronic money that can be handled. It is disclosed that the settlement units 103A to 103C are operated in accordance with the result of media detection by the selection unit.
JP 2008-16016 A

従来の技術では、各電子マネーブランドが規定する秘匿情報を単一のプログラムが操作することとなる。また、秘匿情報に限らず、例えば上記取引情報等、様々な情報を単一のプログラムが操作することとなる。   In the prior art, a single program operates confidential information defined by each electronic money brand. Moreover, a single program operates not only confidential information but various information, such as the said transaction information, for example.

例えば、電子マネーブランドA、BおよびCに対応する決済端末を例にする場合、仮にブランドAのICカードに関する処理(ICカードとの通信(認証処理やデータ・リード/ライト処理等)、決済処理、ブランドAのセンタサーバへの取引情報送信処理等)を実行するプログラムに欠陥があった場合、それを起因として、ブランドAだけでなく他のブランドB,Cに関するサービス(そのICカードに関する処理)が停止する可能性があるまた、例えば、ブランドAの情報だけでなく他のブランドの情報も壊したしまう可能性がある。   For example, in the case of payment terminals corresponding to electronic money brands A, B and C, for example, processing related to an IC card of brand A (communication with IC card (such as authentication processing and data read / write processing), payment processing) If there is a defect in the program that executes the transaction information transmission process to the center server of the brand A), the service related to the other brands B and C as well as the brand A (processing related to the IC card) In addition, for example, not only the information of brand A but also the information of other brands may be destroyed.

また、電子マネーシステムにおいて、秘匿情報はシステム全体の安全性/信頼性を確保するための重要な要素であり、他ブランドと同居する形で秘匿情報を取り扱うことに抵抗を感じる電子マネーブランド会社もあり、電子マネーに関わる各機能の個別化が要求されるなど、セキュリティ上の問題がある。   Also, in electronic money systems, confidential information is an important element for ensuring the safety / reliability of the entire system, and some electronic money brand companies feel resistance to handling confidential information in the form of living with other brands. There are security problems such as requiring individualization of each function related to electronic money.

また、決済端末を設置する各店舗毎に、利用可能としたい電子マネーブランドの組み合わせが異なる場合がある。例えば店舗1では電子マネーブランドA,Bを、店舗2では電子マネーブランドA,Cを、店舗3では電子マネーブランドB,Cを、利用可能としたい等といった要求がある。あるいは、複数ブランド利用に限らず、任意の1つのブランドのみ利用可能としたい店舗があることも考えられる。   In addition, there are cases where the combination of electronic money brands that are desired to be usable differs for each store where a payment terminal is installed. For example, there is a demand to make the electronic money brands A and B available in the store 1, the electronic money brands A and C in the store 2, and the electronic money brands B and C in the store 3. Alternatively, it is conceivable that there is a store that is not limited to the use of a plurality of brands, and that only one arbitrary brand can be used.

上記の様な要求に対応して、単一のプログラムで1又は複数の電子マネーブランド利用を実現する場合、各電子マネーブランド毎とその組み合わせ毎のプログラムの作成が必要となる。すなわち、例えばブランドA、B、Cの3つのブランドが存在するとした場合、少なくともA、B、C、A+B、A+C、B+C、A+B+Cの7パターンのプログラムを作成、用意しておく必要がある。また、各パターン作成する毎に、それが正常に動作することを検証する必要がある。   In response to the above requirements, when using one or a plurality of electronic money brands with a single program, it is necessary to create a program for each electronic money brand and its combination. That is, for example, if there are three brands A, B, and C, it is necessary to create and prepare at least seven patterns of programs A, B, C, A + B, A + C, B + C, and A + B + C. Further, it is necessary to verify that each pattern is normally operated every time it is created.

電子マネーブランドは現状少なくとも3つを超えるブランドが存在する。この為、上記店舗要求に合わせて多くのパターンのプログラムを作成することは製造コスト増加、品質の悪化などの影響が問題となっている。   At present, there are at least three electronic money brands. For this reason, creating many patterns of programs in accordance with the store requirements has problems such as an increase in manufacturing cost and deterioration in quality.

また、各プログラムの個別化する技術としては、各プログラムの動作するメモリ領域を仮想化し、各プログラムが利用できるメモリ空間を制限するというものがある。この方法では各アプリケーションを個別化し、各アプリケーションに相関が無く、独立させて動作させることが可能であるが、決済端末のように上位機器からの指令で各アプリケーションを選択的に動作・制御させるような場合に、各アプリケーションを総合的に制御する点で課題となっていた。   Further, as a technique for individualizing each program, there is a technique in which a memory area in which each program operates is virtualized and a memory space that can be used by each program is limited. In this method, each application is individualized, and each application has no correlation and can be operated independently. However, each application is selectively operated and controlled by a command from a host device like a payment terminal. In such a case, it has been a problem in comprehensively controlling each application.

また、万が一、決済端末内に不正なプログラムが入り込んでいた場合、このプログラムが動作することで、様々な問題(例えば情報の消去、改竄、漏洩等)が起こり得る。
また、他のブランドと同居することに関して心配する声が挙がっている。すなわち、例えば、他のブランドのアプリケーションが、自社ブランドのデータを盗み見しようとする可能性について、心配する声が挙がっている。
Also, in the unlikely event that an illegal program enters the payment terminal, various problems (for example, erasure, falsification, leakage, etc.) may occur due to the operation of this program.
There are also concerns about living with other brands. That is, for example, there are voices concerned about the possibility that other brand applications may try to steal their own brand data.

本発明の課題は、複数ブランドに対応可能なICカード決済端末において、各決済端末毎で対応するブランド又はブランドの組み合わせが異なる場合でも、登録情報を設定/変更するだけで対応可能となり、また不正プログラムが入り込んでも実質的に動作できないように制御でき、また他のブランドのデータにアクセスできないようにできるICカード決済端末、その制御装置、プログラム等を提供することにある。   The problem of the present invention is that in an IC card payment terminal that can handle multiple brands, even if the corresponding brand or combination of brands is different for each payment terminal, it can be handled simply by setting / changing registration information, An object of the present invention is to provide an IC card payment terminal, its control device, program, etc., which can be controlled so that it cannot substantially operate even if a program enters, and which cannot access data of other brands.

本発明のICカード決済端末は、複数種類のICカードに対応可能なICカード決済端末であって、前記各種ICカードそれぞれに対応して、そのICカードに対応する処理を実行する各種アプリケーションモジュールを記憶するアプリケーションモジュール記憶部と、該各種アプリケーションモジュールを管理・制御すると共に、前記アプリケーションモジュールからの要求に応じて、記憶装置へのデータアクセス制御または外部装置への通信制御あるいはICカードとの通信制御を実行する共通処理部とを有し、前記共通処理部は、予め前記各種アプリケーションモジュールのうちの任意の1以上のアプリケーションモジュールに関する登録情報を記憶しておく登録情報記憶手段と、初期処理として、前記各種アプリケーションモジュールのうち、前記登録情報記憶手段に登録されているアプリケーションモジュールを起動するアプリケーションモジュール管理手段と、起動したアプリケーションモジュールの管理情報を記憶する起動アプリケーション管理情報記憶手段とを有する。   The IC card payment terminal of the present invention is an IC card payment terminal that can handle a plurality of types of IC cards, and each application module that executes a process corresponding to each IC card corresponding to each of the various IC cards. Manages and controls the application module storage unit to be stored and the various application modules, and controls data access to a storage device, communication control to an external device, or communication control with an IC card according to a request from the application module A common processing unit that executes a registration information storage unit that stores in advance registration information related to any one or more of the various application modules, and an initial process, Various application modules Of having an application module management means for activating an application module that is registered in the registration information storage unit, and a startup application management information storage means for storing management information of the application modules activated.

上記ICカード決済端末では、まず、従来のように1つのプログラム上に複数種類のブランドのアプリケーションをまとめるのではなく、各ブランド個別に独立したアプリケーションであるアプリケーションモジュールを予め生成して記憶しておく。そして、登録情報記憶手段に登録されているアプリケーションモジュールのみを記憶する。これによって、登録情報記憶手段の登録内容を変えるだけで、各決済端末毎に容易に自由に、その決済端末で対応するブランドまたは複数ブランドの組み合わせを設定することが可能となる。   In the IC card payment terminal, first, instead of collecting a plurality of types of brand applications on a single program as in the prior art, an application module that is an independent application for each brand is generated and stored in advance. . Then, only the application modules registered in the registration information storage unit are stored. Accordingly, it is possible to easily and freely set a brand or a combination of a plurality of brands for each settlement terminal by simply changing the registration contents of the registration information storage means.

また、例えば、前記アプリケーションモジュール管理手段は、前記登録情報に基づいてパス情報を生成し、該パス情報を用いてアプリケーションモジュールを起動し、該起動成功した場合には、該起動したアプリケーションモジュールに対してコネクション確立すると共に、該起動したアプリケーションモジュールに関する管理情報を、前記起動アプリケーション管理情報記憶手段に記憶する。   In addition, for example, the application module management unit generates path information based on the registration information, activates the application module using the path information, and if the activation is successful, the application module management unit Then, the management information relating to the activated application module is stored in the activated application management information storage means.

これは、例えば、前記登録情報には前記アプリケーションモジュールの名称が含まれており、前記各種アプリケーションモジュールは、予め、その名称と予め決められた所定のルールとに基づいて決定される格納場所に格納されており、前記アプリケーションモジュール管理手段は、前記登録情報に含まれる名称と前記所定のルールとに基づいて、そのアプリケーションモジュールの格納場所を示す前記パス情報を生成する。   For example, the name of the application module is included in the registration information, and the various application modules are stored in a storage location determined in advance based on the name and a predetermined rule. The application module management unit generates the path information indicating the storage location of the application module based on the name included in the registration information and the predetermined rule.

上記の通り、正当なアプリケーションモジュールであれば、その名称と予め決められた所定のルールとに基づいて決定される格納場所に格納されている。よって、もし正当なアプリケーションモジュール以外のアプリケーションが存在しても、起動されないし、コネクションも確立されない。   As described above, if it is a valid application module, it is stored in a storage location determined based on its name and a predetermined rule. Therefore, even if an application other than a valid application module exists, it is not started and a connection is not established.

また、例えば、前記共通処理部は、任意の前記アプリケーションモジュールからの任意の要求に応じて、前記記憶装置へのデータアクセス制御または外部装置への通信制御あるいはICカードとの通信制御を実行する際に、該要求元のアプリケーションモジュールに関する前記管理情報が前記起動アプリケーション管理情報記憶手段に記憶されているか否かをチェックし、記憶されていない場合には該要求を拒否する。   Further, for example, the common processing unit performs data access control to the storage device, communication control to an external device, or communication control with an IC card in response to an arbitrary request from an arbitrary application module. Then, it is checked whether or not the management information relating to the request source application module is stored in the activated application management information storage means, and if it is not stored, the request is rejected.

上記の通り、正当なアプリケーションモジュール以外のアプリケーションは、起動されないように制御しているが、もし万が一、このアプリケーションが動作する状態になったとしても、共通処理部を介して行う処理は、実質的に、実行できないことになる。   As described above, applications other than legitimate application modules are controlled so that they are not started, but even if this application is in an operational state, the processing performed through the common processing unit is substantially It will be impossible to execute.

また、例えば、前記共通処理部は、前記アプリケーションモジュールからの要求に応じて前記記憶装置へのデータアクセス制御を行う場合、該要求に含まれるアクセス対象のデータファイルの名称と、前記起動アプリケーション管理情報記憶手段に記憶されている前記パス情報とを用いて、該データファイルにアクセスする為のファイルパスを生成し、該ファイルパスを用いて前記アクセス対象のデータファイルにアクセスする。   Also, for example, when the common processing unit performs data access control to the storage device in response to a request from the application module, the name of the access target data file included in the request and the startup application management information A file path for accessing the data file is generated using the path information stored in the storage means, and the data file to be accessed is accessed using the file path.

上記構成により、任意のアプリケーションモジュール(正当なものも含む)が、他のアプリケーションモジュールのデータファイルにアクセスしようとしても、出来ないことになる。   With the above configuration, an arbitrary application module (including a valid one) cannot access a data file of another application module.

本発明のICカード決済端末、その制御装置、プログラム等によれば、複数ブランドに対応可能なICカード決済端末において、各決済端末毎で対応するブランド又はブランドの組み合わせが異なる場合でも、登録情報を設定/変更するだけで対応可能となり、また不正プログラムが入り込んでも実質的に動作できないように制御でき、また他のブランドのデータにアクセスできないようにできる。   According to the IC card payment terminal of the present invention, its control device, program, etc., in the IC card payment terminal that can handle a plurality of brands, even if the corresponding brand or combination of brands is different for each payment terminal, the registration information It can be dealt with just by setting / changing, and it can be controlled so that it can not operate substantially even if a malicious program enters, and other brand data cannot be accessed.

以下、図面を参照して本発明の実施の形態について説明する。
図1(a)、(b)に本例のICカード決済端末の構成例を示す。
図1(a)は、本例のICカード決済端末の構成例、及びこの端末を含むキャッシュレス決済システム全体の構成例を示す。
Embodiments of the present invention will be described below with reference to the drawings.
FIGS. 1A and 1B show a configuration example of the IC card settlement terminal of this example.
FIG. 1A shows a configuration example of the IC card payment terminal of this example and a configuration example of the entire cashless payment system including this terminal.

図示のICカード決済端末10は、主制御部11、記憶装置12、通信制御部(対主局)13、通信制御部(対センタ)14、通信制御部(対カード)15を有する。
通信制御部(対主局)13は主局(上位コントローラ)1との通信を行う機能部であり、通信制御部(対センタ)14はセンタサーバ2等の外部装置との通信をネットワーク(インターネット等)を介して行う機能部であり、通信制御部(対カード)15はICカード3との通信を行う機能部である。これらについては特に説明しないが、主局1は例えばPOS端末等であり、センタサーバ2は上述したICカード発行・決済会社のサーバ装置である。また、通信制御部(対カード)15は、例えばアンテナと通信用回路等から成る。尚、ICカード3は、ICカードだけでなく、例えばICカード機能搭載の携帯電話等であってもよい。
The illustrated IC card settlement terminal 10 includes a main control unit 11, a storage device 12, a communication control unit (for main station) 13, a communication control unit (for center) 14, and a communication control unit (for card) 15.
A communication control unit (vs. main station) 13 is a functional unit that communicates with the main station (upper controller) 1, and a communication control unit (vs. center) 14 communicates with external devices such as the center server 2 via a network (Internet). Etc.), and the communication control unit (counter card) 15 is a functional unit that communicates with the IC card 3. Although these are not specifically described, the main station 1 is a POS terminal, for example, and the center server 2 is a server device of the IC card issuing / settlement company described above. The communication control unit (card) 15 includes, for example, an antenna and a communication circuit. The IC card 3 is not limited to an IC card, and may be, for example, a mobile phone equipped with an IC card function.

図1(b)に、上記ICカード決済端末10の主制御部11の機能構成例を示す。
主制御部11は、フレームワーク20と各ブランドアプリケーションA,B,C,・・・n(これらを総称してブランドアプリケーション25という)の各機能部を有する。
FIG. 1B shows a functional configuration example of the main control unit 11 of the IC card settlement terminal 10.
The main control unit 11 includes functional units of a framework 20 and brand applications A, B, C,... N (collectively referred to as brand application 25).

フレームワーク20は、上記各種ブランドアプリケーション25を管理・制御すると共に、ブランドアプリケーション25からの要求に応じて、記憶装置12へのデータアクセス制御、または外部装置(センターサーバ2や主局1)への通信制御、あるいはICカード3との通信制御を実行する共通処理部である。   The framework 20 manages and controls the various brand applications 25 and controls data access to the storage device 12 or external devices (the center server 2 and the main station 1) in response to a request from the brand application 25. It is a common processing unit that executes communication control or communication control with the IC card 3.

フレームワーク20は、アプリケーション管理部21、上位通信制御部22、データ制御部23、R/W通信制御部24の各機能部を有する。また、図1に示していないが、フレームワーク20内には、通信制御部(対センタ)14を制御して、センタサーバ2との通信処理を実行させる処理機能部(センタ通信制御部というものとする)も存在する。   The framework 20 includes functional units such as an application management unit 21, a higher-level communication control unit 22, a data control unit 23, and an R / W communication control unit 24. Although not shown in FIG. 1, in the framework 20, a processing function unit (center communication control unit) that controls the communication control unit (to the center) 14 and executes communication processing with the center server 2. Is also present.

上記各種ブランドアプリケーション25の管理・制御は、アプリケーション管理部21が実行する。また、上記「記憶装置12へのデータアクセス制御、または外部装置(センターサーバ2や主局1)への通信制御、あるいはICカード3との通信制御」は、データ制御部23、または上位通信制御部22(または不図示のセンタ通信制御部)、あるいはR/W通信制御部24が行う。   The application management unit 21 executes management / control of the various brand applications 25. In addition, the above-mentioned “data access control to the storage device 12, communication control to the external device (center server 2 or main station 1), or communication control to the IC card 3” is performed by the data control unit 23 or the upper communication control. This is performed by the unit 22 (or a center communication control unit not shown) or the R / W communication control unit 24.

主制御部11は、CPU/MPUであり、不図示のメモリまたは記憶装置12に予め記憶されている所定のアプリケーションプログラムを実行することにより、上記フレームワーク20の処理機能(その各機能部21〜24の処理機能)、各ブランドアプリケーション25の処理機能を実現する。これは、換言すれば、後述する図2、図6(a)、(b)、図7に示すフローチャートの処理を主制御部11に実行させる為のアプリケーションプログラムが、記憶装置12等に記憶されているものとなる。また、これらの処理に必要なテーブル情報等も、記憶装置12等に記憶されている。すなわち、後述する図3、図4に示す情報は、予め記憶装置12等に記憶されている。また、後述する図5に示すテーブル情報も、後述する処理により生成され、不図示のメモリまたは記憶装置12に記憶される。   The main control unit 11 is a CPU / MPU, and executes a predetermined application program stored in advance in a memory (not shown) or the storage device 12, thereby processing functions of the framework 20 (the respective functional units 21 to 21). 24 processing functions), the processing functions of each brand application 25 are realized. In other words, an application program for causing the main control unit 11 to execute the processes of the flowcharts shown in FIGS. 2, 6 (a), (b), and 7 described later is stored in the storage device 12 or the like. It will be what. Further, table information and the like necessary for these processes are also stored in the storage device 12 or the like. That is, information shown in FIG. 3 and FIG. 4 to be described later is stored in advance in the storage device 12 or the like. Further, table information shown in FIG. 5 to be described later is also generated by processing to be described later and stored in a memory or storage device 12 (not shown).

上記構成の主制御部11に関して、まず、ブランド別のアプリケーションのモジュール化が行われている。すなわち、各ブランド毎に独立したブランドアプリケーションA,B,C,・・・nが存在する。そして、各ブランドアプリケーション25は、共通処理部であるフレームワーク20によって管理制御され、あるいはフレームワーク20に対して要求を出すことでフレームワーク20を介して様々な処理(センターサーバ2との通信、ICカードとの通信、記憶装置12へのアクセス、主局1との通信等)を実行する。   Regarding the main control unit 11 having the above-described configuration, first, application modularization by brand is performed. That is, there are independent brand applications A, B, C,... N for each brand. Each brand application 25 is managed and controlled by the framework 20 which is a common processing unit, or various processes (communication with the center server 2) via the framework 20 by issuing a request to the framework 20. Communication with the IC card, access to the storage device 12, communication with the main station 1, etc.).

すなわち、各ブランドアプリケーション25は、例えばICカードとの通信を行う場合には、R/W通信制御部24に要求を出す。これより、R/W通信制御部24が、通信制御部(対カード)15を制御して、ICカード3との通信処理を実行する。   That is, each brand application 25 issues a request to the R / W communication control unit 24 when performing communication with an IC card, for example. Accordingly, the R / W communication control unit 24 controls the communication control unit (for card) 15 and executes communication processing with the IC card 3.

ここで、R/W通信制御部24は、要求を拒否する場合もある(不正と判定された場合等)。これは他の制御部22,23(あるいは上記不図示のセンタ通信制御部)に関しても同様である。   Here, the R / W communication control unit 24 may reject the request (for example, when it is determined to be illegal). The same applies to the other control units 22 and 23 (or the center communication control unit (not shown)).

データ制御部23は、任意のブランドアプリケーション25からの要求に応じて、記憶装置12に対するアクセス処理(データ・リード/ライト等)を実行する。但し、上記の通り要求を拒否する場合もある。   The data control unit 23 executes access processing (data read / write, etc.) to the storage device 12 in response to a request from an arbitrary brand application 25. However, the request may be rejected as described above.

同様にして、上位通信制御部22は、任意のブランドアプリケーション25からの要求に応じて、通信制御部(対主局)13を制御して主局(上記コントローラ)1との通信処理を実行する。不図示のセンタ通信制御部も、任意のブランドアプリケーション25からの要求に応じて、通信制御部(対センタ)14を制御して、センタサーバ2等の外部装置との通信処理を実行する。   Similarly, the host communication control unit 22 controls the communication control unit (to the main station) 13 and executes communication processing with the main station (the controller) 1 in response to a request from an arbitrary brand application 25. . A center communication control unit (not shown) also controls the communication control unit (to the center) 14 in response to a request from an arbitrary brand application 25 to execute communication processing with an external device such as the center server 2.

また、ブランドアプリケーションA,B,C,・・・nの全てが動作するとは限らない。すなわち、アプリケーション管理部21は、予め登録された情報(後述する図3の搭載アプリケーション情報30等)に基づいて、登録されたブランドアプリケーションのみ起動する。   Also, not all of the brand applications A, B, C,... N operate. That is, the application management unit 21 activates only the registered brand application based on pre-registered information (such as installed application information 30 in FIG. 3 described later).

上述してあるように、従来では、例えばA,B,Cの3つのブランドが存在する場合を例にすると、Aのみ、Bのみ、Cのみ、A+B、A+C、B+C、A+B+Cの7パターンの「1つのプログラム」を作成する必要であった。また、例えば、“Aのみ”と“Bのみ”の各プログラムについては正常動作することが確認済みであっても、“A+B”のプログラムも正常動作するとは限らない。この為、“A+B”のプログラムを作成後、これを検証する必要があった。   As described above, in the past, for example, when there are three brands A, B, and C, for example, only A, B only, C only, A + B, A + C, B + C, A + B + C, It was necessary to create "one program". For example, even if it is confirmed that the programs “A only” and “B only” operate normally, the program “A + B” does not always operate normally. For this reason, after creating the program “A + B”, it was necessary to verify it.

これに対して、上記本例の構成では、まず、各ブランド毎の個別のアプリケーションである上記ブランドアプリケーションA,B,Cを端末10内に記憶しておく。そして、搭載アプリケーション情報30にAのみ登録しておけば、この端末10は上記7パターンのうちの“Aのみ”のプログラムを搭載したものと同様のものとなる。同様に、“A+B”としたい場合には、搭載アプリケーション情報30にAとBを登録すればよい。他のパターンについても同様である。更に、例えば、“A+B+C+D”としたい場合には、端末10内にブランドアプリケーションDを追加記憶したうえで、搭載アプリケーション情報30にAとBとCとDを登録すればよい。   On the other hand, in the configuration of the present example, first, the brand applications A, B, and C, which are individual applications for each brand, are stored in the terminal 10. If only A is registered in the installed application information 30, this terminal 10 is the same as the one in which the "A only" program of the above seven patterns is installed. Similarly, when it is desired to set “A + B”, A and B may be registered in the installed application information 30. The same applies to other patterns. Furthermore, for example, when “A + B + C + D” is desired, the brand application D is additionally stored in the terminal 10 and then A, B, C, and D are registered in the installed application information 30.

このように、上記本例の構成では、複数のブランド(複数種類の電子マネー;複数種類のICカード)に対応可能なICカード決済端末10に関して、各端末10毎にその端末で対応するブランド(1または複数のブランド)が異なる場合でも、各ブランド毎の個別のアプリケーションを作成しておけばよく、各ブランドの組み合わせ毎のアプリケーションは作成する必要はなくなる。例えば、上記のA,B,Cの例では、従来では7パターン作成する必要があったが、本例では3パターンだけ作成すれば済む。当然、各ブランドの組み合わせパターン毎に、そのアプリケーションの上記検証を行う必要はなくなる。   As described above, in the configuration of the present example, with respect to the IC card payment terminal 10 that can support a plurality of brands (a plurality of types of electronic money; a plurality of types of IC cards), the brand ( Even when one or a plurality of brands are different, it is only necessary to create an individual application for each brand, and it is not necessary to create an application for each brand combination. For example, in the above examples A, B, and C, conventionally, it was necessary to create seven patterns, but in this example, only three patterns need be created. Of course, it is not necessary to perform the above verification of the application for each combination pattern of each brand.

また、上記起動処理に関して、後述する実行ファイルパスを生成してこの実行ファイルパスを用いてブランドアプリケーション起動を行うので、たとえ正当なブランドアプリケーション25以外のアプリケーション(不正なプログラム等)が入り込んでいても、この不正プログラム等が起動されないようにできる。また、万が一、この不正プログラム等が勝手に起動したとしても、後述するようにテーブル40を用いてチェックするので、この不正プログラム等は実質的に動作不能となる(少なくともフレームワーク20を介して行う処理、すなわちICカードや記憶装置12や外部装置に対して行う処理等は、実現できない)。   In addition, since an execution file path, which will be described later, is generated and a brand application is started using this execution file path with respect to the startup process, even if an application (such as an illegal program) other than the legitimate brand application 25 enters. This unauthorized program can be prevented from being activated. In addition, even if this malicious program or the like is activated without permission, since it is checked using the table 40 as will be described later, this malicious program or the like becomes substantially inoperable (at least via the framework 20). Processing, that is, processing performed on the IC card, the storage device 12, and the external device cannot be realized).

図2に、上記フレームワーク20の起動処理のフローチャート図を示す。
この処理はアプリケーション管理部21が実行する。
図2に示すように、フレームワーク20が起動されると、まず、アプリケーション管理部21が、搭載アプリケーション情報テーブル30(図3に一例を示す;後に説明する)に格納されている情報を読み出す(ステップS12)。尚、図では、まず未処理のブランドアプリケーション25があるか否かを判定するが(ステップS11)、この判定処理はステップS12の後に行っても良い。ステップS11の処理は、搭載アプリケーション情報テーブル30に登録されたブランドアプリケーション25全てについて、ステップS12以降の処理を実施したか否かを判定するものである。
FIG. 2 shows a flowchart of the startup process of the framework 20.
This process is executed by the application management unit 21.
As shown in FIG. 2, when the framework 20 is activated, first, the application management unit 21 reads information stored in the installed application information table 30 (an example is shown in FIG. 3; described later) ( Step S12). In the figure, it is first determined whether or not there is an unprocessed brand application 25 (step S11), but this determination process may be performed after step S12. The process of step S11 determines whether or not the processes after step S12 have been performed for all brand applications 25 registered in the installed application information table 30.

また、ステップS12の処理は、搭載アプリケーション情報テーブル30の各レコードのうちの1つを読み出すものである。すなわち、登録されている任意の1つのブランドアプリケーション25に関する情報を読み出すものである。そして、1つのブランドアプリケーション25(処理対象アプリケーション)に関する情報を読み出す毎に、ステップS13以降の処理を実行する。   Further, the processing in step S12 is to read one of the records in the installed application information table 30. That is, information on any one registered brand application 25 is read out. Every time information related to one brand application 25 (processing target application) is read, the processing from step S13 is executed.

ここで、搭載アプリケーション情報テーブルの一例を図3に示す。
図3に示す搭載アプリケーション情報テーブル30は、アプリケーションNo.31、アプリケーション名称32、サービス種別33、動作パラメータ34等の各種情報より成る。
An example of the installed application information table is shown in FIG.
The installed application information table 30 shown in FIG. 31, various information such as application name 32, service type 33, and operation parameter 34.

アプリケーションNo.31には、当該テーブル30上での通し番号(シリアル番号)であり、特に意味はない。上記の通り、テーブル30の各レコードは、それぞれ、1つのブランドアプリケーション25に関する各種情報が登録されたものである。勿論、上記の通り、ブランドアプリケーションA〜nの全てが登録されているとは限らない。この登録情報は、図示の例では、アプリケーション名称32、サービス種別33、動作パラメータ34である。   Application No. 31 is a serial number (serial number) on the table 30 and has no particular meaning. As described above, each record in the table 30 is a record in which various information related to one brand application 25 is registered. Of course, as described above, not all of the brand applications A to n are registered. This registered information includes an application name 32, a service type 33, and an operation parameter 34 in the illustrated example.

まず、アプリケーション名称32は、そのブランドアプリケーション25の名称であり、図示の例では例えばbrand_a、brand_b等が登録されている。尚、例えば、brand_aは上記ブランドアプリケーションAの名称である。   First, the application name 32 is the name of the brand application 25. In the illustrated example, brand_a, brand_b, and the like are registered. For example, brand_a is the name of the brand application A.

サービス種別33は、そのブランドアプリケーションAのサービス種別である。尚、サービス種別は、例えば、主局1がICカード決済端末10に対して任意のアプリケーションの処理を指定する為に用いる識別情報である。動作パラメータ34については、ここでは特に関係ないので説明しない。   The service type 33 is the service type of the brand application A. The service type is, for example, identification information used by the main station 1 to specify arbitrary application processing for the IC card payment terminal 10. The operation parameter 34 is not particularly described here and will not be described here.

上記ステップS12で読み出した1レコードの情報に基づいて、まず、ステップS13の処理を行う。すなわち、上記処理対象アプリケーションについて、そのアプリケーション名称32に基づいて、予め決められている所定の生成方法で、そのブランドアプリケーション25の実行ファイルパスを生成する。そして、この実行ファイルパスを用いて、そのブランドアプリケーション25を起動する(ステップS13)。この実行ファイルパス生成処理について、以下、図4に示す一例を用いて説明する。   Based on the information of one record read in step S12, first, the process of step S13 is performed. That is, for the processing target application, the execution file path of the brand application 25 is generated based on the application name 32 by a predetermined generation method. Then, the brand application 25 is activated using this execution file path (step S13). This execution file path generation process will be described below using an example shown in FIG.

まず、上記各ブランドアプリケーション25の実行ファイルが、予め作成されて例えば図4に示す格納形式で格納されている。例えば、図4に示す“brand_a.exe”は上記ブランドアプリケーションAの機能を実現する実行ファイルである。“brand_b.exe”は上記ブランドアプリケーションBの実行ファイルである。他も同様である。そして、各実行ファイルは、予め、図4に示すパスに従って格納管理されている。すなわち、例えば上記“brand_a.exe”はルートパス“C:/appl/brand_a/”の元に格納されている。ここでは、applと、brand_a、brand_b等は、それぞれフォルダ名である。   First, an execution file of each brand application 25 is created in advance and stored in, for example, the storage format shown in FIG. For example, “brand_a.exe” shown in FIG. 4 is an execution file that realizes the function of the brand application A. “Brand_b.exe” is an execution file of the brand application B. Others are the same. Each execution file is stored and managed in advance according to the path shown in FIG. That is, for example, the “brand_a.exe” is stored under the root path “C: / appl / brand_a /”. Here, appl, brand_a, brand_b, etc. are folder names.

つまり、この例では、共通パス“C:/appl”の下に各実行ファイルをそれぞれ格納する為のフォルダが存在しており、各フォルダの名称はそのフォルダ内に格納される実行ファイルの名称と同名(拡張子は除く)となっている(例えば、“brand_a.exe”に対して“brand_a”)。つまり、各ブランドアプリケーションに関して、それぞれ、applフォルダ下にアプリケーション名称32と同名のフォルダがあり、かつこのフォルダの中にアプリケーション名称32と同名(+特定の拡張子;本例では.exe)の実行ファイルがある。   That is, in this example, there are folders for storing each executable file under the common path “C: / appl”, and the name of each folder is the name of the executable file stored in the folder. It has the same name (excluding the extension) (for example, “brand_a” for “brand_a.exe”). That is, for each brand application, there is a folder having the same name as the application name 32 under the appl folder, and an executable file having the same name as the application name 32 (+ specific extension; .exe in this example) is stored in this folder. There is.

この様な規定(ルール)が予め決められており(但し、上記の規定は一例であり、規定は自由に決めてよい)、この規定(ルール)に従った所定のルートパスの下、所定の実行ファイル名で各ブランドアプリケーション25の実行ファイルが格納されている。よって、上記ステップS13の処理では、この規定に応じて、上記実行ファイルパスを生成できる。実行ファイルパスは、上記ルートパス+実行ファイル名である。   Such rules (rules) are determined in advance (however, the above rules are examples, and the rules may be freely determined), and a predetermined execution is performed under a predetermined route path according to the rules (rule). The executable file of each brand application 25 is stored with the file name. Therefore, in the process of step S13, the execution file path can be generated according to this rule. The execution file path is the root path + execution file name.

例えば、アプリケーション名称32が“brand_a”であった場合には、ルートパス=“C:/appl/brand_a/”、実行ファイル名=“brand_a.exe”が生成され、これより実行ファイルパス=“C:/appl/brand_a/brand_a.exe”が生成できる。   For example, when the application name 32 is “brand_a”, the root path = “C: / appl / brand_a /” and the execution file name = “brand_a.exe” are generated, and the execution file path = “C: /Appl/brand_a/brand_a.exe ”can be generated.

尚、アプリケーション名称32は、上記の例に限らず、例えばフルパスで指定してもよいし、ファイルシステムが利用できない場合は、各ブランドアプリケーション25が格納されている物理的なメモリの番地でもよい。また本例では、アプリケーション名称32から格納パス名および実行ファイル名称を生成したが、パス名称、実行ファイル名称およびアプリケーション名称のように必要な情報を分けて定義してもよい。   The application name 32 is not limited to the above example. For example, the application name 32 may be specified by a full path, or may be the address of a physical memory in which each brand application 25 is stored when the file system cannot be used. In this example, the storage path name and the execution file name are generated from the application name 32. However, necessary information such as a path name, an execution file name, and an application name may be separately defined.

そして、処理対象のブランドアプリケーション25が、正当なものであるならば、その実行ファイルは、上記規定(ルール)に従って所定の格納場所に所定のファイル名で格納されているはずである。よって、上記生成した実行ファイルパスを用いれば、処理対象のブランドアプリケーション25は起動できるはずである。一方、この規定(ルール)を知らない第三者が作成・格納したアプリケーションは、上記生成した実行ファイルパスを用いても、起動できないはずである。   If the brand application 25 to be processed is valid, the executable file should be stored with a predetermined file name in a predetermined storage location in accordance with the above rules (rules). Therefore, if the generated executable file path is used, the brand application 25 to be processed should be able to be activated. On the other hand, an application created and stored by a third party who does not know this rule (rule) should not be able to be activated even if the generated executable file path is used.

これより、上記の通り、ステップS13では、生成した実行ファイルパスを用いてアプリケーション起動を試みる。そして、もしアプリケーション起動できなかった場合には、実行ファイルなしと判定して(ステップS14,NO)、ステップS11に戻る。尚、ステップS14がNOとなることは、上記の通り、処理対象が不正プログラムである可能性があることも意味している。   Thus, as described above, in step S13, application startup is attempted using the generated executable file path. If the application cannot be started, it is determined that there is no execution file (NO in step S14), and the process returns to step S11. Note that NO in step S14 also means that the processing target may be a malicious program as described above.

そして、搭載アプリケーション情報テーブル30に登録されている全てのブランドアプリケーションについて処理実行した場合には(ステップS11,NO)、本処理を終了する。一方、未処理の登録アプリケーションが残っている場合には、ステップS12に進み、未処理の登録アプリケーションに関する処理を実行する。   If all brand applications registered in the installed application information table 30 have been processed (step S11, NO), this process ends. On the other hand, if an unprocessed registered application remains, the process advances to step S12 to execute a process related to the unprocessed registered application.

一方、上記生成した実行ファイルパスによってブランドアプリケーション25が起動できた場合には(ステップS14,YES)、このブランドアプリケーション25に任意の通信ポート番号を割り当てる等した後(ステップS15)、この通信ポート番号を含む、当該ブランドアプリケーションに関する所定の管理情報を、アプリケーション管理情報テーブル40に登録する(ステップS16)。すなわち、上記生成したルートパス、通信ポート番号等を登録する。通信ポート番号は、任意に決定してよいが、重複しないように、ユニークな番号を割り付ける。通信ポート番号は、後にブランドアプリケーション25とフレームワーク20とが通信するために使用するポート番号である(TCP/IPにおけるポート番号等と同様と考えてよい)。つまり、これによって、フレームワーク20−アプリケーション25間のコネクションを確立できるものである。   On the other hand, when the brand application 25 can be started by the generated execution file path (step S14, YES), after assigning an arbitrary communication port number to the brand application 25 (step S15), this communication port number And the predetermined management information related to the brand application is registered in the application management information table 40 (step S16). That is, the generated route path, communication port number, etc. are registered. The communication port number may be arbitrarily determined, but a unique number is assigned so as not to overlap. The communication port number is a port number used for communication between the brand application 25 and the framework 20 later (may be considered the same as the port number in TCP / IP). That is, the connection between the framework 20 and the application 25 can be established thereby.

また、従来より、端末10上の各アプリケーション(上記ブランドアプリケーション25だけでなく、全てのアプリケーション;よって、フレームワーク20も含まれる)には、端末10のOS(オペレーティングシステム)が、各アプリケーション毎にユニークなID(アプリケーションID)を割り当てて、管理・制御している。   Conventionally, each application on the terminal 10 (not only the brand application 25 but also all applications; therefore, the framework 20 is included) includes the OS (operating system) of the terminal 10 for each application. A unique ID (application ID) is assigned for management and control.

フレームワーク20は、このOSの機能により、各ブランドアプリケーションのアプリケーションIDを知ることができる。これより、フレームワーク20は、上記起動できたブランドアプリケーション25のアプリケーションIDを、上記ルートパスや通信ポート番号等と共にテーブル40に登録する。   The framework 20 can know the application ID of each brand application by the function of the OS. Thus, the framework 20 registers the application ID of the brand application 25 that has been activated in the table 40 together with the route path, the communication port number, and the like.

アプリケーション管理情報テーブル40には、予め上記テーブル30に登録されており、且つ起動できた(不正プログラムである可能性が極めて低い)ブランドアプリケーション25のみが登録されることになる。よって、後述するように、後の通常処理において、このテーブル40を参照してチェックを行うことで、より強固なセキュリティを実現できる。   In the application management information table 40, only the brand application 25 that has been registered in the table 30 in advance and has been activated (the possibility of being an unauthorized program is extremely low) is registered. Therefore, as will be described later, stronger security can be realized by performing a check with reference to this table 40 in the subsequent normal processing.

図5に、アプリケーション管理情報テーブル40の一例を示す。
図5に示す例のアプリケーション管理情報テーブル40は、アプリケーションNo.41、アプリケーションID42、サービス種別43、フレームワーク−アプリケーション間通信ポート番号44(以下、略して通信ポート番号44という)、及びルートパス45の各種情報より成る。
FIG. 5 shows an example of the application management information table 40.
The application management information table 40 shown in FIG. 5 includes an application No. 41, an application ID 42, a service type 43, a framework-application communication port number 44 (hereinafter referred to as communication port number 44 for short), and a route path 45. Consists of various information.

アプリケーションNo.41は、上記アプリケーションNo.31と同様、テーブル40上での通し番号等であり、任意に割り当てるものである。サービス種別43は、上記サービス種別33に相当する。よって、ステップS16では、処理対象ブランドアプリケーションのサービス種別33をサービス種別43に格納する。ルートパス45には上記ステップS13で生成した上記ルートパスを格納する。例えば上記の例では“C:/appl/brand_a/”をルートパス45に格納する。アプリケーションID42は、上記の通り、起動できた処理対象ブランドアプリケーション25のアプリケーションIDである。通信ポート番号44には、上記ステップS15で任意に割り当てた通信ポート番号を格納する。   Application No. 41 is a serial number or the like on the table 40 as with the application No. 31 and is arbitrarily assigned. The service type 43 corresponds to the service type 33. Therefore, in step S <b> 16, the service type 33 of the processing target brand application is stored in the service type 43. The route path 45 stores the route path generated in step S13. For example, in the above example, “C: / appl / brand_a /” is stored in the root path 45. As described above, the application ID 42 is the application ID of the processing target brand application 25 that has been activated. The communication port number 44 stores the communication port number arbitrarily assigned in step S15.

尚、フレームワークとアプリケーション間の通信は、イベントを用いても良いし、ポーリングを用いてもよい。また、OSを利用している場合は、OSが提供するメッセージ通信を利用しても良い。よって、上記通信ポート番号は一例であり、この例に限るものではない。要は、フレームワークとアプリケーション間の通信に必要な情報を生成して、アプリケーション管理情報テーブル40に登録すればよい。換言すれば、フレームワーク20−アプリケーション25間のコネクション確立に必要な情報であれば何でもよい。   For communication between the framework and the application, an event may be used or polling may be used. If an OS is used, message communication provided by the OS may be used. Therefore, the communication port number is an example, and is not limited to this example. In short, information necessary for communication between the framework and the application may be generated and registered in the application management information table 40. In other words, any information that is necessary for establishing a connection between the framework 20 and the application 25 may be used.

図6(a)に、各ブランドアプリケーションの通常起動処理フローを示す。
各ブランドアプリケーション25は、フレームワーク20による上記ステップS13の処理によって起動されると、まず内部的な初期化処理を行う(ステップS21)。この初期処理の内容については特に説明しない。そして、フレームワーク20に対して通信ポート番号要求を出し、そのブラントアプリケーション25に割り付けられた上記通信ポート番号を取得する(ステップS22)。この後は、特にフレームワーク20が当該ブランドアプリケーション25との通信(後述する指示メッセージ回送等)を行う際には、上記通信ポート番号を用いる。
FIG. 6A shows a normal activation process flow of each brand application.
When each brand application 25 is activated by the process of step S13 by the framework 20, it first performs an internal initialization process (step S21). The contents of this initial process will not be described in particular. Then, a communication port number request is issued to the framework 20, and the communication port number assigned to the blunt application 25 is acquired (step S22). Thereafter, the communication port number is used particularly when the framework 20 communicates with the brand application 25 (such as an instruction message forwarding described later).

そして、データ受信待ち状態へ移行する(ステップS23)。すなわち、フレームワーク20は、上記図2の起動処理終了後は、例えば、後に図7で説明するように、上位端末(主局1)から任意の動作指示メッセージを受ける毎に、この指示に対応するブランドアプリケーション25に、この指示メッセージを転送(回送)する。ステップS23の処理は、例えば、当該回送されてくる指示メッセージの受信待ち状態へ移行することを意味するが、この例に限るものではない。尚、この受信待ち状態では、ステップS22で取得した通信ポート番号を監視している。   Then, the state shifts to a data reception waiting state (step S23). That is, the framework 20 responds to this instruction every time it receives an arbitrary operation instruction message from the upper terminal (main station 1), for example, as will be described later with reference to FIG. This instruction message is transferred (forwarded) to the brand application 25 to be used. The process of step S23 means, for example, shifting to the reception waiting state for the forwarded instruction message, but is not limited to this example. In this reception waiting state, the communication port number acquired in step S22 is monitored.

上記ステップS22による上記通信ポート番号要求を受信したときのフレームワーク20の処理例を、図6(b)に示す。尚、この処理は、アプリケーション管理部21が実行する。尚、この処理は、図2の処理が完了後に実行可能となる。   FIG. 6B shows a processing example of the framework 20 when the communication port number request is received in step S22. This process is executed by the application management unit 21. This process can be executed after the process of FIG. 2 is completed.

まず、フレームワーク20は、特に説明しないがOSの機能によって、当該OSが管理する各アプリケーション(フレームワーク自体も含む)の上記アプリケーションIDを知ることができ、よって、要求元のブランドアプリケーション25のIDを認識できる(ステップS31)。これより、この要求元のブランドアプリケーション25が、アプリケーション管理情報テーブル40に登録されているか否かをチェックする。すなわち、アプリケーション管理情報テーブル40を検索して、要求元のブランドアプリケーション25のアプリケーションIDが登録されているか否か(アプリケーションID42に一致するものがあるか否か)をチェックする(ステップS32)。   First, although not specifically described, the framework 20 can know the application ID of each application (including the framework itself) managed by the OS by the function of the OS. Can be recognized (step S31). Thus, it is checked whether or not the requesting brand application 25 is registered in the application management information table 40. That is, the application management information table 40 is searched to check whether or not the application ID of the requesting brand application 25 is registered (whether or not there is a match with the application ID 42) (step S32).

もし、登録されているならば(ステップS32,YES)、要求元のブランドアプリケーション25に対して、そのブランドアプリケーション25に割り当てた上記通信ポート番号44を応答する(ステップS33)。これより、要求元のブランドアプリケーション25は、上記ステップS22の処理における通信ポート番号の取得が行える。   If registered (step S32, YES), the communication port number 44 assigned to the brand application 25 is returned to the requesting brand application 25 (step S33). Thereby, the requesting brand application 25 can acquire the communication port number in the process of step S22.

一方、未登録の場合には(ステップS32,NO)、要求元のアプリケーションは不正なアプリケーションである可能性があると判定し、異常応答を行う(ステップS34)。この場合、要求元のブランドアプリケーション25は、上記ステップS22の処理において通信ポート番号は取得できない。   On the other hand, when it is not registered (step S32, NO), it is determined that the request source application may be an unauthorized application, and an abnormal response is made (step S34). In this case, the requesting brand application 25 cannot acquire the communication port number in the process of step S22.

上記起動時の図2、図6の処理完了後は、ICカード決済端末10は通常処理モードに移行する。その後は、通常処理、例えばICカード決済処理やセンタサーバ2への決済明細データ送信処理等を実行する。   After completion of the processing of FIGS. 2 and 6 at the time of activation, the IC card settlement terminal 10 shifts to the normal processing mode. Thereafter, normal processing, for example, IC card settlement processing, settlement detail data transmission processing to the center server 2, and the like are executed.

図7に、この通常処理のフローチャート図を示す。
上位端末(主局1)は、ICカード決済端末10に対して、任意のサービス種別の処理実行を指示する。上位端末(主局1)は、上記の通りPOSレジ等であり、例えば顧客が、当該ICカード決済端末10で取り扱う各種ICカードのうちの任意の種類のICカードを使用する場合、店員等が上位端末を操作してこのICカードの決済処理実行を指示すると、上位端末はこの指示に応じたサービス種別をコマンドに含めてICカード決済端末10へ送信する(ステップS41)。
FIG. 7 shows a flowchart of this normal process.
The host terminal (main station 1) instructs the IC card settlement terminal 10 to execute processing of an arbitrary service type. The host terminal (main station 1) is a POS register or the like as described above. For example, when a customer uses an IC card of any kind among various IC cards handled by the IC card settlement terminal 10, a store clerk or the like When the host terminal is operated to instruct the IC card settlement processing to be executed, the host terminal includes the service type corresponding to the instruction in the command and transmits the command to the IC card settlement terminal 10 (step S41).

ICカード決済端末10のフレームワーク20のアプリケーション管理部21は、このコマンド(動作指示メッセージ)を受信すると(ステップS51)、このコマンド内のサービス種別を確認し(ステップS52)、図5のアプリケーション管理情報テーブル40を検索して、該当するアプリケーションが存在するか否かをチェックする(ステップS53)。すなわち、コマンドのサービス種別と同一のサービス種別43が登録されているか否かをチェックする。   Upon receiving this command (operation instruction message) (step S51), the application management unit 21 of the framework 20 of the IC card payment terminal 10 confirms the service type in this command (step S52), and the application management of FIG. The information table 40 is searched to check whether or not the corresponding application exists (step S53). That is, it is checked whether or not the same service type 43 as the command service type is registered.

該当アプリケーションがテーブル40に登録されていない場合には(ステップS53,NO)、ステップS56に進み、動作結果メッセージを上位端末に返信するが、この場合は処理実行不能応答等となる。   If the corresponding application is not registered in the table 40 (step S53, NO), the process proceeds to step S56, and an operation result message is returned to the upper terminal.

一方、該当アプリケーションが存在する場合には(ステップS53,YES)、この該当アプリケーションのレコードの通信ポート番号44を取得する。そして、この通信ポート番号44が示す通信ポートに対して、上記コマンドを回送(送信)する(ステップS54)。   On the other hand, when the corresponding application exists (step S53, YES), the communication port number 44 of the record of the corresponding application is acquired. Then, the command is forwarded (transmitted) to the communication port indicated by the communication port number 44 (step S54).

尚、ここで、例えば、ブランドアプリケーション25として不正なアプリケーションが格納され、更にこの不正なアプリケーションに関する情報が搭載アプリケーション情報テーブル30に登録された場合を考える。この場合でも、この不正なアプリケーションに係わる第3者が、上述した所定の「規定」を知らなければ、ステップS14の判定がNOとなる。すなわち、上記不正なアプリケーションの格納場所(フォルダ名等)や実行ファイル名を上記「規定」に従ったものにしない限り、生成した実行ファイルパスによって不正プログラムを起動させることは出来ない。よって、この不正プログラムは図5のアプリケーション管理情報テーブル40に登録されないし、通信ポート番号が割り当てられることもない。   Here, consider a case where, for example, an unauthorized application is stored as the brand application 25 and information related to the unauthorized application is registered in the on-board application information table 30. Even in this case, if the third party related to the unauthorized application does not know the predetermined “regulation” described above, the determination in step S14 is NO. That is, unless the storage location (folder name, etc.) of the unauthorized application and the execution file name are set in accordance with the above “regulation”, the unauthorized program cannot be started by the generated execution file path. Therefore, this unauthorized program is not registered in the application management information table 40 of FIG. 5, and no communication port number is assigned.

これより、不正プログラムが不正な処理を実行することを防止できる。また、この不正プログラムがフレームワーク20からの起動処理や指示を受けることなく勝手に起動して動作しようとしても、後述する図8の処理により、実質的に動作不能となる。詳しくは後述する。   As a result, it is possible to prevent an unauthorized program from executing an unauthorized process. Further, even if the unauthorized program tries to start and operate without receiving the activation process or instruction from the framework 20, it becomes substantially inoperable by the process of FIG. 8 described later. Details will be described later.

上記ステップS33の処理が実行されて自己に割り当てられた通信ポート番号を取得できた各ブランドアプリケーション25は、上記ステップS23で移行したデータ受信待ち状態において、上記通信ポート番号の通信ポートを監視し、フレームワーク20からのコマンド回送を待つ。   Each brand application 25 that has been able to acquire the communication port number assigned to itself by executing the process of step S33 monitors the communication port of the communication port number in the data reception waiting state shifted in step S23, Wait for command forwarding from the framework 20.

そして、各ブランドアプリケーション25は、コマンドの回送が合った場合には(動作指示メッセージを受信した場合)(ステップS61)、受信したコマンドの内容を解析して、このコマンド内容により指示された処理動作を行う(ステップS62)。そして、処理動作実行完了したら、動作結果をフレームワーク20(そのアプリケーション管理部21)へ返信する(ステップS63)。この場合、フレームワーク20は、この返信(動作結果)を受信すると(ステップS55)、この動作結果情報を上位端末1へ返信する(ステップS56)。上位端末1は、この動作結果情報を受信して、所定の処理を実行する(ステップS42)。   Each brand application 25 analyzes the content of the received command when the command is forwarded (when the operation instruction message is received) (step S61), and the processing operation indicated by the command content. Is performed (step S62). Then, when the execution of the processing operation is completed, the operation result is returned to the framework 20 (its application management unit 21) (step S63). In this case, when receiving this reply (operation result) (step S55), the framework 20 returns this operation result information to the upper terminal 1 (step S56). The upper terminal 1 receives the operation result information and executes a predetermined process (step S42).

ここで、上記ステップS62の処理動作の一例として、任意のブランドのICカード決済処理が指示された場合について説明する。
この場合、上記ステップS62の処理動作を実行するブランドアプリケーション25は、まず、フレームワーク20のR/W通信制御部24を呼び出して、ICカードとの通信処理制御を実行させる。すなわち、R/W通信制御部24は、上記ブランドアプリケーションからの要求に応じて、通信制御部(対カード)15を制御して、ICカードとの通信を行わせて、ICカードに対して金額を積み増したりまた差し引いたりする決済処理を行う。
Here, as an example of the processing operation in step S62, a case where an IC card settlement process of an arbitrary brand is instructed will be described.
In this case, the brand application 25 that executes the processing operation in step S62 first calls the R / W communication control unit 24 of the framework 20 to execute communication processing control with the IC card. In other words, the R / W communication control unit 24 controls the communication control unit (to the card) 15 in response to a request from the brand application so as to perform communication with the IC card. Payment processing is performed to add or subtract.

その際、ICカード3との秘匿通信に必要な鍵情報等を、記憶装置12(その一部としての耐タンパメモリ)から取得する為に、データ制御部23を呼び出して、記憶装置12からの鍵情報等の読出しを要求する。   At that time, in order to acquire key information or the like necessary for the secret communication with the IC card 3 from the storage device 12 (tamper-resistant memory as a part thereof), the data control unit 23 is called to Requests reading of key information and the like.

また、上記ブランドアプリケーション25は、上記決済処理が正常終了したら、フレームワーク20のデータ制御部23を呼び出して、この決済処理の明細情報(取引情報)を、例えば記憶装置12に格納する処理制御を実行させる。すなわち、データ制御部23は、上記ブランドアプリケーション25からの要求に応じて、上記取引情報を記憶装置12に格納する処理を実行する。   Further, when the payment process is normally completed, the brand application 25 calls the data control unit 23 of the framework 20 and performs process control for storing the detailed information (transaction information) of the payment process in the storage device 12, for example. Let it run. That is, the data control unit 23 executes processing for storing the transaction information in the storage device 12 in response to a request from the brand application 25.

ここで、上記R/W通信制御部24、データ制御部23は、何れも、上記アプリケーション25からの要求を拒否する場合がある。これは、これら制御部23、24に限らず、フレームワーク20内の全ての処理機能部においても、同様であってよい。すなわち、上位通信制御部22やアプリケーション管理部21(あるいは、上記センタ通信制御部)においても、任意のアプリケーション25から呼び出されて任意の要求を受けた場合に、この要求を拒否する場合がある。   Here, the R / W communication control unit 24 and the data control unit 23 may reject the request from the application 25 in some cases. This is not limited to the control units 23 and 24, and may be the same in all the processing function units in the framework 20. That is, when the host communication control unit 22 or the application management unit 21 (or the center communication control unit) is called from an arbitrary application 25 and receives an arbitrary request, the request may be rejected.

すなわち、上記R/W通信制御部24、データ制御部23等は、何れも、上記呼び出しを行ったブランドアプリケーション25が、正当なアプリケーション以外のアプリケーション(不正なアプリケーション等)であるか否かを確認し、不正なアプリケーションであると判定した場合には、その要求を拒否し、要求された処理動作は実行しない。   That is, the R / W communication control unit 24, the data control unit 23, and the like confirm whether or not the brand application 25 that has made the call is an application other than a legitimate application (such as an unauthorized application). If it is determined that the application is an unauthorized application, the request is rejected and the requested processing operation is not executed.

上記不正プログラムか否かのチェック処理は、テーブル40を参照して行う。すなわち、呼び出し元のブランドアプリケーションが、テーブル40に登録されているか否かをチェックし、登録されていない場合には要求を拒否する。このチェックは、例えば上記アプリケーションIDを用いて行う。すなわち、上記呼び出しを受けた処理機能部(R/W通信制御部24やデータ制御部23等)は、上記図6(b)の場合と同様、呼び出し元のアプリケーションのアプリケーションIDが分かるので、このアプリケーションIDを用いて図8の処理を実行する。図8の不正チェック処理を実行したうえで、問題無いことを確認したら、要求に応じた処理を実行する。   The process for checking whether the program is a malicious program is performed with reference to the table 40. That is, it is checked whether the calling brand application is registered in the table 40, and if not registered, the request is rejected. This check is performed using, for example, the application ID. That is, since the processing function unit (R / W communication control unit 24, data control unit 23, etc.) that has received the call knows the application ID of the caller application as in the case of FIG. The process of FIG. 8 is executed using the application ID. If it is confirmed that there is no problem after executing the fraud check process of FIG. 8, the process according to the request is executed.

図8の不正チェック処理では、上記呼び出し元のブランドアプリケーションのアプリケーションIDに基づいて、このアプリケーションIDが図5のアプリケーション管理情報テーブル40に登録されているか否かをチェックする(ステップS71)。すなわち、呼び出し元のブランドアプリケーションのアプリケーションIDと一致するアプリケーションID42が、存在するか否かをチェックする。   In the fraud check process of FIG. 8, based on the application ID of the calling brand application, it is checked whether or not this application ID is registered in the application management information table 40 of FIG. 5 (step S71). That is, it is checked whether or not there is an application ID 42 that matches the application ID of the calling brand application.

そして、登録されていない場合には(ステップS72,NO)、不正なアプリケーションの可能性ありとして、アクセス(要求)を拒否する(ステップS74)。
一方、登録されていれば(ステップS72,YES)、このアプリケーション25からの要求に応じた処理を実行する(ステップS73)。例えば、R/W通信制御部24の場合、ICカード3との通信を許可し、実行する。例えば、データ制御部23の場合、記憶装置12に対するアクセスを許可し、データ・リードライト処理等を実行する。
If it is not registered (step S72, NO), access (request) is rejected as the possibility of an unauthorized application (step S74).
On the other hand, if registered (step S72, YES), processing according to the request from the application 25 is executed (step S73). For example, in the case of the R / W communication control unit 24, communication with the IC card 3 is permitted and executed. For example, in the case of the data control unit 23, access to the storage device 12 is permitted, and data read / write processing or the like is executed.

ここで、記憶装置12に対するアクセス処理に関しては、更に、各ブランドアプリケーション25が、他のブランドアプリケーション25のデータにアクセスできないように制御できる。   Here, regarding the access processing with respect to the storage device 12, each brand application 25 can be controlled so as not to access the data of the other brand applications 25.

この制御処理については、特に図示しないが、例えば以下のように処理する。
まず、本例の決済端末上のファイル構成が例えば図4に示す例の場合、各ブランドアプリケーション毎に、そのアプリケーションのデータファイルは全て、そのアプリケーションの実行ファイル(.exe)と同じ場所(同じフォルダ又はこのフォルダ以下のフォルダ)に格納されている。例えば、ブランドアプリケーションAを例にすると、そのデータファイルは全て、図4に示すフォルダ“brand_a”に格納されている。あるいはこの“brand_a”以下の不図示の任意のフォルダ(例えば、brand_a/brand_a1等とする)に格納されている。但し、ここでは全データがフォルダ“brand_a”に格納されているものとする。
Although this control process is not particularly shown, for example, the following process is performed.
First, when the file structure on the settlement terminal of this example is, for example, the example shown in FIG. 4, for each brand application, all the data files of the application are the same location (same folder as the execution file (.exe) of the application). Or a folder below this folder). For example, taking the brand application A as an example, all of the data files are stored in the folder “brand_a” shown in FIG. Alternatively, it is stored in an arbitrary folder (not shown, for example, brand_a / brand_a1) below “brand_a”. However, here, it is assumed that all data is stored in the folder “brand_a”.

上記の通り、フォルダ“brand_a”には、実行ファイル“brand_a.exe”も格納されている。つまり、換言すれば、各ブランドアプリケーション25のデータは、そのブランドアプリケーションの起動の為に生成した上記実行ファイルパスと同様のパス情報によりアクセス可能となるような格納位置に格納されている。   As described above, the execution file “brand_a.exe” is also stored in the folder “brand_a”. That is, in other words, the data of each brand application 25 is stored in a storage location that can be accessed by the same path information as the execution file path generated for starting the brand application.

そして、本説明では一例として、ブランドアプリケーションAのデータファイルとして、ファイル名が“filename”のデータファイルがフォルダ“brand_a”に格納されているものする。   In this description, as an example, a data file with the file name “filename” is stored in the folder “brand_a” as a data file of the brand application A.

本例では、各ブランドアプリケーション25は、任意のデータファイルにアクセスする際、データ制御部23を呼び出してそのファイル名のみを通知する(パス情報は無し)。よって、上記の例では、ブランドアプリケーションAは、データ制御部23に対して、アクセス対象のデータファイルのファイル名“filename”を通知する。   In this example, when accessing any data file, each brand application 25 calls the data control unit 23 to notify only the file name (no path information). Therefore, in the above example, the brand application A notifies the data control unit 23 of the file name “filename” of the data file to be accessed.

データ制御部23は、上記の通り、呼び出し元のブランドアプリケーション25のアプリケーションID(本例では“a1”となる)を用いて、上記の通り不正チェックを行うが、不正がないと判定して記憶装置12へのアクセスを行う際に、データファイルのパス情報の生成を行う。   As described above, the data control unit 23 performs the fraud check as described above using the application ID of the calling brand application 25 (in this example, “a1”), but determines that there is no fraud and stores it. When accessing the device 12, path information of the data file is generated.

すなわち、呼び出し元のブランドアプリケーション25のアプリケーションIDを用いて、図5のアプリケーション管理情報テーブル40を検索して、該当するレコードのルートパス45を取得する。これより、上記ブランドアプリケーションAの例では、ルートパス“C:/appl/brand_a/”が取得される。そして、取得したルートパスと通知されたファイル名とを用いてパス変換を実施する。すなわち、上記“C:/appl/brand_a/”と“filename”とを合わせて、実際にアクセスするファイルは“C:/appl/brand_a/filename”としてパス変換を実施する(実行ファイルパスを生成することと同様)。   That is, the application management information table 40 in FIG. 5 is searched using the application ID of the calling brand application 25 to obtain the route path 45 of the corresponding record. Thus, in the example of the brand application A, the root path “C: / appl / brand_a /” is acquired. Then, path conversion is performed using the acquired root path and the notified file name. That is, by combining the above “C: / appl / brand_a /” and “filename”, a path to be actually accessed is “C: / appl / brand_a / filename” (execution file path is generated) As well).

データ制御部23は、上記生成した実行ファイルパスを用いて、記憶装置12に対するファイルアクセス処理を実行する。従って、各ブランドアプリケーション25は、自ブランドのファイルだけしかアクセスできない。例えば、ブランドアプリケーションBに関して、同名のファイル(ファイル名“filename”のファイル)が存在したとしても、ブランドアプリケーションBからの“filename”へのアクセス要求に対して、データ制御部23は今度は実行ファイルパス“C:/appl/brand_b/filename”を生成することになるので、フォルダ“brand_a”内の“filename”にアクセスされることはない。   The data control unit 23 executes file access processing for the storage device 12 using the generated execution file path. Therefore, each brand application 25 can access only the file of its own brand. For example, for the brand application B, even if a file with the same name (file with the file name “filename”) exists, the data control unit 23 now executes the execution file in response to an access request to the “filename” from the brand application B. Since the path “C: / appl / brand_b / filename” is generated, “filename” in the folder “brand_a” is never accessed.

また、任意の正当なアプリケーション(仮にブランドアプリケーションBとする)が、不正アクセスを試みても、アクセス出来ない。すなわち、予めブランドアプリケーションBのブランド会社側で、何らかの方法で図4に示すファイル構成を取得して、これに基づいてブランドアプリケーションB内に例えばブランドアプリケーションAのファイルにアクセスする処理を含めたとする。すなわち、上記のようにファイル名だけ指定するのではなく、パス情報も含めて、“C:/appl/brand_a/filename”と指定するようにプログラムしたものとする。   Moreover, even if an arbitrary valid application (assumed to be brand application B) attempts unauthorized access, it cannot be accessed. That is, it is assumed that the brand application of the brand application B previously acquires the file configuration shown in FIG. 4 by some method, and includes processing for accessing the file of the brand application A in the brand application B based on this. That is, it is assumed that not only the file name is specified as described above but also “C: / appl / brand_a / filename” is specified including path information.

この場合でも、データ制御部23は、この“C:/appl/brand_a/filename”をファイル名として扱って上記処理を行うので、実行ファイルパス=“C:/appl/brand_b/filename/ C:/appl/brand_a/filename”というような意味不明の情報が生成されるだけである。よって、ブランドアプリケーションBがブランドアプリケーションAのファイルにアクセスすることはできない。   Even in this case, the data control unit 23 treats the “C: / appl / brand_a / filename” as a file name and performs the above processing, so the execution file path = “C: / appl / brand_b / filename / C: / Only meaningless information like “appl / brand_a / filename” is generated. Therefore, the brand application B cannot access the file of the brand application A.

上記のように、本例の決済端末10では、各ブランドアプリケーション25が、そのアプリケーションの実行ファイルの格納フォルダ以下のファイルだけしかアクセスできないように、制限をかけることが出来る。すなわち、各ブランドアプリケーションが、他のブランドアプリケーションのファイルにアクセス出来ないように、制限を掛けることができる。   As described above, in the payment terminal 10 of this example, each brand application 25 can be restricted so that only files under the storage folder of the execution file of the application can be accessed. In other words, each brand application can be restricted so that it cannot access files of other brand applications.

尚、本例では各ブランドアプリケーションからのR/W通信機能の利用、データ処理機能の利用について記述したが、もちろんその他の物理的に接続されているデバイス(LCDやLCDの表示装置、各種記憶装置、スイッチなどの入力装置)やソフトウェアで作成され、フレームワークで提供される各機能を同様にアクセス制限をかけることができる。   In this example, the use of the R / W communication function and the data processing function from each brand application has been described. Of course, other physically connected devices (LCD, LCD display device, various storage devices) In addition, it is possible to restrict access to each function created by an input device such as a switch) or software and provided by the framework.

ここで、上記ブランドアプリケーションのモジュール化について、図9(a)、(b)を参照して説明する。
図9(a)は従来の主制御部の機能ブロック図である。上記の通り、従来では、その決済端末で扱う全ての電子マネーブランドに関わる処理を、ひとつのプログラム上で実現していた。ここでは、仮に、ブランドAとブランドBを扱う決済端末を例にする。
Here, modularization of the brand application will be described with reference to FIGS. 9 (a) and 9 (b).
FIG. 9A is a functional block diagram of a conventional main control unit. As described above, conventionally, processing related to all electronic money brands handled by the payment terminal has been realized on one program. Here, a payment terminal that handles brand A and brand B is taken as an example.

この例では、ひとつのプログラム上に、ブランドAとブランドBのアプリケーションが存在することになる。但し、図示の通り、ブランドAとブランドBの両方とも、そのアプリケーションが機能別に分離されており、且つ各機能毎に両ブランドがまとまっている。   In this example, brand A and brand B applications exist on one program. However, as shown in the figure, for both brand A and brand B, the applications are separated by function, and both brands are grouped for each function.

すなわち、各ブランドのアプリケーションの機能は、例えば図示のように、コマンド処理部(データ制御含む)110、センタ通信部120、ICカードR/W部130の各機能毎のモジュールに分けられている。そして、図示の通り、各機能部110,120,130毎に、ブランドAとブランドBの両方のアプリケーションが存在している。尚、「ひとつのプログラム」の機能としては更に主局通信処理部100があるが、これはブランド毎ではなく、共通の機能となる。   That is, the function of each brand application is divided into modules for each function of the command processing unit (including data control) 110, the center communication unit 120, and the IC card R / W unit 130 as shown in the figure. As shown in the figure, both brand A and brand B applications exist for each functional unit 110, 120, and 130. As a function of "one program", there is a main station communication processing unit 100, but this is not a brand but a common function.

主局通信処理部100は、通信制御部(対主局)13を制御して主局1(上位端末)との通信を行って、例えば主局1(上位端末)から任意のコマンド(指示)を受けると、これをコマンド処理部110に渡す。   The main station communication processing unit 100 controls the communication control unit (for main station) 13 to perform communication with the main station 1 (higher-level terminal), for example, an arbitrary command (instruction) from the main station 1 (higher-level terminal). If it is received, it is passed to the command processing unit 110.

コマンド処理部110は、例えば上記上位端末からの指示を受けると、この指示を解釈して、この指示に応じた処理を実行する。例えば、ICカード決済処理を実行し、決済結果(取引情報)を記憶装置12に格納する為の処理を実行する。但し、その際、ICカード決済処理の為のICカードとの通信処理は、ICカードR/W部130に依頼して実行させる。これは、例えばブランドAのICカード決済処理を指示された場合には、コマンド処理部110、ICカードR/W部130それぞれにおいてブランドAのアプリケーションが実行されることになる。   For example, when the command processing unit 110 receives an instruction from the host terminal, the command processing unit 110 interprets the instruction and executes a process according to the instruction. For example, an IC card payment process is executed, and a process for storing the payment result (transaction information) in the storage device 12 is executed. However, at that time, the IC card R / W unit 130 is requested to execute communication processing with the IC card for IC card settlement processing. For example, when a brand A IC card settlement process is instructed, the brand A application is executed in each of the command processing unit 110 and the IC card R / W unit 130.

尚、例えば図示のコマンド処理部110内の「ブランドA」111は、ブランドAに関するコマンド処理部の処理を実行するアプリケーションを意味する。他も同様である。
上記従来の構成では、例えばコマンド処理部110を例にすると、これは「ブランドA」111と「ブランドB」112とを有している。つまり、このコマンド処理部110のアプリケーションは“「ブランドA」111+「ブランドB」112”となっている。
For example, “brand A” 111 in the illustrated command processing unit 110 means an application that executes processing of the command processing unit related to brand A. Others are the same.
In the above-described conventional configuration, for example, when the command processing unit 110 is taken as an example, it has a “brand A” 111 and a “brand B” 112. In other words, the application of the command processing unit 110 is ““ brand A ”111+“ brand B ”112”.

ここで、例えば仮に過去には「ブランドA」111のみのアプリケーションと、「ブランドB」112のみのアプリケーションとだけがあったが、後からブランドAとBの両方に対応可能としたい為に、“「ブランドA」111+「ブランドB」112”を作成したとした場合、「ブランドA」111のみのアプリケーション、「ブランドB」112のみのアプリケーションそれぞれの動作については、過去に検証を行って問題ないことを確認していたとしても、“「ブランドA」111+「ブランドB」112”のアプリケーションも問題なく動作するとは限らなかった。   Here, for example, in the past, there was only an application of only “Brand A” 111 and an application of only “Brand B” 112, but in order to make it possible to deal with both brands A and B later, When “Brand A” 111+ “Brand B” 112 ”is created, the operation of each of the application only for“ Brand A ”111 and the application only for“ Brand B ”112 should be verified in the past without any problem. However, the application ““ brand A ”111+“ brand B ”112” does not always work without any problem.

この為、従来では“「ブランドA」111+「ブランドB」112”のアプリケーションを作成後、それが問題なく動作することを検証する作業が必要であった。この様に、従来では、逐一各パターン毎(上記の例では7パターン)のアプリケーションを作成する手間が掛かるだけでなく、それが問題なく動作することを確認する為の手間が掛かっていた。   For this reason, conventionally, after creating an application of “Brand A” 111+ “Brand B” 112, it is necessary to verify that it operates without any problem. Not only does it take time to create each application (7 patterns in the above example), but it also takes time to confirm that it operates without problems.

一方、本例の上記ブランドアプリケーション25(ここでは一例として、ブランドアプリケーションA,B)は、図9(b)に示すように、上記の各種機能が各ブランド別にモジュール化されたものとなっている。   On the other hand, the brand application 25 of this example (here, brand applications A and B as an example) is a module in which the various functions described above are modularized for each brand, as shown in FIG. 9B. .

例えば、ブランドアプリケーションAは、図9(a)に示すブランドAに関する各種機能部のアプリケーションがまとめられている(モジュール化されている)。すなわち、ブランドアプリケーションAは、図9(a)に示すブランドA111、ブランドA121、ブランドA131を全て有する。同様に、ブランドアプリケーションBは、図9(a)に示すブランドB112、ブランドB122、ブランドB132を全て有する。   For example, in the brand application A, applications of various functional units related to the brand A shown in FIG. 9A are collected (modularized). That is, the brand application A has all of the brand A111, brand A121, and brand A131 shown in FIG. Similarly, the brand application B has all of the brand B112, the brand B122, and the brand B132 shown in FIG.

つまり、本構成では、ICカード決済処理、決済データ(取引明細等)記憶処理、センタへのデータ送信処理等の、電子マネーを用いるキャッシュレス決済に係わる各種処理を行うアプリケーションが、各ブランド別(電子マネー種別別;ICカードの種類別)に個別に独立したモジュール化されたアプリケーションとなっている。よって、上記各ブランドアプリケーション25を「各ブランド別(電子マネー種別別;ICカードの種類別)の独立したアプリケーションモジュール」または「各種ICカードそれぞれに対応するアプリケーションモジュール」等と呼ぶものとする。   In other words, in this configuration, an application that performs various processes related to cashless payment using electronic money, such as IC card payment processing, payment data (transaction details, etc.) storage processing, data transmission processing to the center, etc. The application is modularized independently for each electronic money type (for each IC card type). Accordingly, each brand application 25 is referred to as “an independent application module for each brand (for each electronic money type; for each IC card type)” or “an application module corresponding to each type of IC card”.

ここで、従来ではブランドA,B,Cに対応する7つのパターンが必要である旨説明したが、ここでは簡単の為、ブランドA,Bに対応する場合を例にすると、この場合は、“Aのみ”、“Bのみ”、“A+B”の3つのパターンが考えられる。この場合、図9(a)に示す例は、“A+B”に対応する「1つのプログラム」に相当することになるが、他の2つのパターンについても各々「1つのプログラム」を作成する必要がある。すなわち、各機能部110,120,130それぞれがブランドA111、ブランドA121、ブランドA131のみを有する「1つのプログラム」と、各機能部110,120,130それぞれがブランドB112、ブランドB122、ブランドB132のみを有する「1つのプログラム」とを作成する必要がある。   Here, it has been described that seven patterns corresponding to the brands A, B, and C are necessary in the past, but here, for simplicity, the case corresponding to the brands A and B is taken as an example. Three patterns of “A only”, “B only”, and “A + B” are conceivable. In this case, the example shown in FIG. 9A corresponds to “one program” corresponding to “A + B”, but it is necessary to create “one program” for each of the other two patterns. is there. That is, each functional unit 110, 120, and 130 has only one brand A111, brand A121, and brand A131, and each functional unit 110, 120, and 130 has only brand B112, brand B122, and brand B132, respectively. It is necessary to create "one program" having.

一方、図9(b)に示す本例の場合には、図示の各ブランドアプリケーションA,Bを予め用意しておけば、後は各店舗毎(各端末10毎)に後述する図3の搭載アプリケーション情報テーブル30の設定を行うことで、上記3つのパターンの何れにも対応できる。   On the other hand, in the case of this example shown in FIG. 9B, if each of the illustrated brand applications A and B is prepared in advance, the installation of FIG. 3 to be described later is performed for each store (each terminal 10). By setting the application information table 30, any of the above three patterns can be handled.

尚、例えば図9(a)におけるブランドA111と図9(b)におけるブランドA111とは、全く同じとは限らないが、その処理機能自体は同様である。
尚、上記モジュール化した各ブランドアプリケーション25は、仮想メモリ空間を使ってデータにアクセスしているので(OSが制御する)、任意のアプリケーションの動作が他のアプリケーション(そのデータ等)に影響を及ぼすことはない。つまり、ファイアウォールを築けることになる。
For example, brand A 111 in FIG. 9A and brand A 111 in FIG. 9B are not necessarily the same, but the processing functions themselves are the same.
Since each of the modular brand applications 25 accesses data using the virtual memory space (controlled by the OS), the operation of an arbitrary application affects other applications (the data, etc.). There is nothing. In other words, you can build a firewall.

以上説明したように、本例のICカード決済端末10では、まず、複数のブランド(複数種類の電子マネー;複数種類のICカード)それぞれに対応する、各ブランド別の独立したアプリケーションモジュール(各ブランドアプリケーションA,B,C等)が、予め生成されて記憶されている。そして、フレームワーク20は、これら複数のアプリケーションモジュールのうち、テーブル30に登録されているものだけを起動する。これより、テーブル30の設定を変えるだけで(アプリケーション登録の追加、削除等)、各端末10毎に、その端末10で対応する1つのブランドまたは複数のブランドの組み合わせを、容易に設定/変更することが可能となる(特徴1)。   As described above, in the IC card settlement terminal 10 of this example, first, an independent application module (each brand) corresponding to each of a plurality of brands (a plurality of types of electronic money; a plurality of types of IC cards). Applications A, B, C, etc.) are generated and stored in advance. Then, the framework 20 activates only those registered in the table 30 among the plurality of application modules. Thus, simply changing / setting the table 30 (addition / deletion of application registration, etc.), for each terminal 10, one brand or a combination of a plurality of brands corresponding to the terminal 10 can be easily set / changed. (Feature 1).

更に、フレームワーク20は、上記アプリケーションモジュール起動の際には、テーブル30の情報と予め決められている所定のルールとに従って、実行ファイルパスを生成し、この実行ファイルパスを用いて起動を試みる。もし、不正なアプリケーションが入り込んでおり且つその情報が不正にテーブル30に記憶されていても、上記所定のルールを知らない限り、このアプリケーションは起動されない(特徴2)。   Further, when the application module is activated, the framework 20 generates an executable file path in accordance with the information in the table 30 and a predetermined rule, and tries to activate it using the executable file path. Even if an unauthorized application enters and the information is illegally stored in the table 30, the application is not activated unless the predetermined rule is known (feature 2).

更に、フレームワーク20は、起動できたアプリケーションモジュールに対してコネクションを確立するので、フレームワーク20の制御に依らずに勝手に起動したアプリケーションモジュールがあったとしても、フレームワーク20とのコネクションが無いことになる(特徴3)。   Furthermore, since the framework 20 establishes a connection with the application module that can be activated, there is no connection with the framework 20 even if there is an application module that is activated without being controlled by the framework 20. (Characteristic 3).

更に、フレームワーク20は、任意のアプリケーションモジュール25からの要求に応じて、記憶装置12へのデータアクセス制御や、外部装置(主局1やセンタサーバ2)への通信制御や、ICカード3との通信制御を実行するが、テーブル40に登録されていないアプリケーションモジュール、すなわち上記起動が行われていないアプリケーションモジュールからの要求があった場合には、この要求を拒否する。例えば、不正なアプリケーションモジュールから要求があっても、これはテーブル40には登録されていないので、要求を拒否することになる。よって、不正なアプリケーションモジュールは、少なくともフレームワーク20を介して実行する処理、すなわち記憶装置12へのデータアクセス制御や、外部装置(主局1やセンタサーバ2)への通信制御や、ICカード3との通信制御は、実質的に行えないことになる(特徴4)。   Furthermore, the framework 20 controls data access to the storage device 12, communication control to external devices (main station 1 and center server 2), IC card 3 and the like in response to a request from an arbitrary application module 25. However, if there is a request from an application module that is not registered in the table 40, that is, an application module that has not been activated, the request is rejected. For example, even if there is a request from an unauthorized application module, the request is rejected because it is not registered in the table 40. Therefore, an illegal application module is processed through at least the framework 20, that is, data access control to the storage device 12, communication control to an external device (the main station 1 or the center server 2), and the IC card 3. Thus, the communication control cannot be performed (feature 4).

フレームワーク20は、アプリケーションモジュールからの要求に応じて記憶装置12へのデータアクセス制御を行う際、上記起動時に登録した上記実行ファイルパスのパス情報(上記ルートパス等)を用いて、要求されたデータファイルにアクセスするので、各アプリケーションモジュールは、自己のデータファイルにしかアクセスできない。つまり、例えば正当なアプリケーションモジュールが、他のアプリケーションモジュールのデータにアクセスしようとしても、出来ない。勿論、不正なアプリケーションは、何等データにはアクセスできない(特徴5)。   When performing data access control to the storage device 12 in response to a request from the application module, the framework 20 uses the path information (such as the root path) of the execution file path registered at the time of startup to request the requested data. Because the file is accessed, each application module can only access its own data file. That is, for example, even if a valid application module tries to access data of another application module, it cannot be performed. Of course, an unauthorized application cannot access any data (feature 5).

本発明は、上記特徴1のみでも成立するし、特徴1を含む任意の2以上の組み合わせによっても成立する。つまり、この組み合わせに関しては、特徴1+特徴2、特徴1+特徴3、特徴1+特徴4、特徴1+特徴5、特徴1+特徴2+特徴3、特徴1+特徴2+特徴4、特徴1+特徴2+特徴5、特徴1+特徴2+特徴3+特徴4、特徴1+特徴2+特徴3+特徴4+特徴5が成立し得る。   The present invention can be realized only by the above feature 1, or by any combination of two or more including the feature 1. That is, for this combination, feature 1 + feature 2, feature 1 + feature 3, feature 1 + feature 4, feature 1 + feature 5, feature 1 + feature 2 + feature 3, feature 1 + feature 2 + feature 4, feature 1 + feature 2 + feature 5, Feature 1 + feature 2 + feature 3 + feature 4 and feature 1 + feature 2 + feature 3 + feature 4 + feature 5 can be established.

(a)、(b)は、本例のICカード決済端末の構成例を示す図である。(A), (b) is a figure which shows the structural example of the IC card payment terminal of this example. フレームワークの起動処理のフローチャート図である。It is a flowchart figure of the starting process of a framework. 搭載アプリケーション情報テーブルの一例を示す図である。It is a figure which shows an example of the loading application information table. 各ブランドアプリケーションの格納形式を示す図である。It is a figure which shows the storage format of each brand application. アプリケーション管理情報テーブルの一例を示す図である。It is a figure which shows an example of an application management information table. (a)は各ブランドアプリケーションの通常起動処理、(b)はこれに伴うフレームワークの処理のフローチャート図である。(A) is the normal starting process of each brand application, (b) is a flowchart figure of the process of the framework accompanying this. 通常処理のフローチャート図である。It is a flowchart figure of a normal process. 不正チェック処理のフローチャート図である。It is a flowchart figure of a fraud check process. (a)は従来の主制御部の機能ブロック図、(b)は本例のアプリケーションモジュールの構成を示す図である。(A) is a functional block diagram of the conventional main control part, (b) is a figure which shows the structure of the application module of this example.

符号の説明Explanation of symbols

1 主局(上位コントローラ)
2 センタサーバ
3 ICカード
10 ICカード決済端末
11 主制御部
12 記憶装置
13 通信制御部(対主局)
14 通信制御部(対センタ)
15 通信制御部(対カード)
20 フレームワーク
21 アプリケーション管理部
22 上位通信制御部
23 データ制御部
24 R/W通信制御部
25 ブランドアプリケーション
30 搭載アプリケーション情報テーブル
31 アプリケーションNo.
32 アプリケーション名称
33 サービス種別
34 動作パラメータ
40 アプリケーション管理情報テーブル
41 アプリケーションNo.
42 アプリケーションID
43 サービス種別
44 フレームワーク−アプリケーション間通信ポート番号
45 ルートパス
1 Master station (host controller)
2 Center server 3 IC card 10 IC card settlement terminal 11 Main control unit 12 Storage device 13 Communication control unit (to main station)
14 Communication control unit (to center)
15 Communication control unit (to card)
20 Framework 21 Application management unit 22 Host communication control unit 23 Data control unit 24 R / W communication control unit 25 Brand application 30 On-board application information table 31 Application No.
32 Application name 33 Service type 34 Operation parameter 40 Application management information table 41 Application No.
42 Application ID
43 Service type 44 Framework-application communication port number 45 Route path

Claims (7)

複数種類のICカードに対応可能なICカード決済端末であって、
前記各種ICカードそれぞれに対応して、そのICカードに対応する処理を実行する各種アプリケーションモジュールを記憶するアプリケーションモジュール記憶部と、
該各種アプリケーションモジュールを管理・制御すると共に、前記アプリケーションモジュールからの要求に応じて、記憶装置へのデータアクセス制御または外部装置への通信制御あるいはICカードとの通信制御を実行する共通処理部とを有し、
前記共通処理部は、
予め前記各種アプリケーションモジュールのうちの任意の1以上のアプリケーションモジュールに関する登録情報を記憶しておく登録情報記憶手段と、
初期処理として、前記各種アプリケーションモジュールのうち、前記登録情報記憶手段に登録されているアプリケーションモジュールを起動するアプリケーションモジュール管理手段と、
起動したアプリケーションモジュールの管理情報を記憶する起動アプリケーション管理情報記憶手段と、
を有することを特徴とするICカード決済端末。
An IC card payment terminal that can handle multiple types of IC cards,
In correspondence with each of the various IC cards, an application module storage unit that stores various application modules that execute processing corresponding to the IC card;
A common processing unit that manages and controls the various application modules, and executes data access control to a storage device, communication control to an external device, or communication control with an IC card in response to a request from the application module. Have
The common processing unit includes:
Registration information storage means for storing registration information relating to any one or more application modules of the various application modules in advance;
As an initial process, among the various application modules, an application module management unit that activates an application module registered in the registration information storage unit;
A startup application management information storage means for storing management information of the started application module;
An IC card settlement terminal characterized by comprising:
前記アプリケーションモジュール管理手段は、前記登録情報に基づいてパス情報を生成し、該パス情報を用いてアプリケーションモジュールを起動し、該起動成功した場合には、該起動したアプリケーションモジュールに対してコネクション確立すると共に、該起動したアプリケーションモジュールに関する管理情報を、前記起動アプリケーション管理情報記憶手段に記憶することを特徴とする請求項1記載のICカード決済端末。   The application module management unit generates path information based on the registration information, activates the application module using the path information, and establishes a connection to the activated application module when the activation is successful. The IC card settlement terminal according to claim 1, wherein management information relating to the activated application module is stored in the activated application management information storage means. 前記登録情報には前記アプリケーションモジュールの名称が含まれており、
前記各種アプリケーションモジュールは、予め、その名称と予め決められた所定のルールとに基づいて決定される格納場所に格納されており、
前記アプリケーションモジュール管理手段は、前記登録情報に含まれる名称と前記所定のルールとに基づいて、そのアプリケーションモジュールの格納場所を示す前記パス情報を生成することを特徴とする請求項2記載のICカード決済端末。
The registration information includes the name of the application module,
The various application modules are stored in advance in storage locations that are determined based on their names and predetermined rules.
3. The IC card according to claim 2, wherein the application module management unit generates the path information indicating a storage location of the application module based on a name included in the registration information and the predetermined rule. Payment terminal.
前記共通処理部は、任意の前記アプリケーションモジュールからの任意の要求に応じて、前記記憶装置へのデータアクセス制御または外部装置への通信制御あるいはICカードとの通信制御を実行する際に、該要求元のアプリケーションモジュールに関する前記管理情報が前記起動アプリケーション管理情報記憶手段に記憶されているか否かをチェックし、記憶されていない場合には該要求を拒否することを特徴とする請求項1〜3の何れかに記載のICカード決済端末。   In response to an arbitrary request from any of the application modules, the common processing unit performs the request when executing data access control to the storage device, communication control to an external device, or communication control with an IC card. 4. The apparatus according to claim 1, wherein it is checked whether or not the management information relating to the original application module is stored in the activated application management information storage means, and if not stored, the request is rejected. The IC card payment terminal according to any one of the above. 前記共通処理部は、前記アプリケーションモジュールからの要求に応じて前記記憶装置へのデータアクセス制御を行う場合、該要求に含まれるアクセス対象のデータファイルの名称と、前記起動アプリケーション管理情報記憶手段に記憶されている前記パス情報とを用いて、該データファイルにアクセスする為のファイルパスを生成し、該ファイルパスを用いて前記アクセス対象のデータファイルにアクセスすることを特徴とする請求項2または3記載のICカード決済端末。   When performing data access control to the storage device in response to a request from the application module, the common processing unit stores the name of the data file to be accessed included in the request and the startup application management information storage unit 4. A file path for accessing the data file is generated using the path information, and the data file to be accessed is accessed using the file path. The IC card payment terminal described. 複数種類のICカードに対応可能なICカード決済端末の制御装置であって、
前記各種ICカードそれぞれに対応して、そのICカードに対応する処理を実行する各種アプリケーションモジュールを記憶するアプリケーションモジュール記憶部と、
該各種アプリケーションモジュールを管理・制御すると共に、前記アプリケーションモジュールからの要求に応じて、記憶装置へのデータアクセス制御または外部装置への通信制御あるいはICカードとの通信制御を実行する共通処理部とを有し、
前記共通処理部は、
予め前記各種アプリケーションモジュールのうちの任意の1以上のアプリケーションモジュールに関する登録情報を記憶しておく登録情報記憶手段と、
初期処理として、前記各種アプリケーションモジュールのうち、前記登録情報記憶手段に登録されているアプリケーションモジュールを起動するアプリケーションモジュール管理手段と、
起動したアプリケーションモジュールの管理情報を記憶する起動アプリケーション管理情報記憶手段と、
を有することを特徴とするICカード決済端末の制御装置。
A control device for an IC card settlement terminal that can handle a plurality of types of IC cards,
In correspondence with each of the various IC cards, an application module storage unit that stores various application modules that execute processing corresponding to the IC card;
A common processing unit that manages and controls the various application modules, and executes data access control to a storage device, communication control to an external device, or communication control with an IC card in response to a request from the application module. Have
The common processing unit includes:
Registration information storage means for storing registration information related to any one or more application modules of the various application modules in advance;
As an initial process, among the various application modules, an application module management unit that activates an application module registered in the registration information storage unit;
A startup application management information storage means for storing management information of the started application module;
A control device for an IC card settlement terminal, comprising:
複数種類のICカードに対応可能なICカード決済端末のコンピュータを、
前記各種ICカードそれぞれに対応して、そのICカードに対応する処理を実行する各種アプリケーションモジュールを記憶するアプリケーションモジュール記憶部と、
該各種アプリケーションモジュールを管理・制御すると共に、前記アプリケーションモジュールからの要求に応じて、記憶装置へのデータアクセス制御または外部装置への通信制御あるいはICカードとの通信制御を実行する共通処理部と、
前記共通処理部における、予め前記各種アプリケーションモジュールのうちの任意の1以上のアプリケーションモジュールに関する登録情報を記憶しておく登録情報記憶手段と、初期処理として、前記各種アプリケーションモジュールのうち、前記登録情報記憶手段に登録されているアプリケーションモジュールを起動するアプリケーションモジュール管理手段と、起動したアプリケーションモジュールの管理情報を記憶する起動アプリケーション管理情報記憶手段、
として機能させる為のプログラム。
An IC card payment terminal computer that can handle multiple types of IC cards.
In correspondence with each of the various IC cards, an application module storage unit that stores various application modules that execute processing corresponding to the IC card;
A common processing unit that manages and controls the various application modules, and executes data access control to a storage device or communication control to an external device or communication control with an IC card in response to a request from the application module;
In the common processing unit, registration information storage means for storing registration information related to any one or more application modules of the various application modules in advance, and the registration information storage of the various application modules as an initial process. Application module management means for starting application modules registered in the means, and startup application management information storage means for storing management information of the started application modules,
Program to function as.
JP2008294580A 2008-11-18 2008-11-18 IC card payment terminal, its control device, program Expired - Fee Related JP5304193B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008294580A JP5304193B2 (en) 2008-11-18 2008-11-18 IC card payment terminal, its control device, program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008294580A JP5304193B2 (en) 2008-11-18 2008-11-18 IC card payment terminal, its control device, program

Publications (2)

Publication Number Publication Date
JP2010122806A true JP2010122806A (en) 2010-06-03
JP5304193B2 JP5304193B2 (en) 2013-10-02

Family

ID=42324109

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008294580A Expired - Fee Related JP5304193B2 (en) 2008-11-18 2008-11-18 IC card payment terminal, its control device, program

Country Status (1)

Country Link
JP (1) JP5304193B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015529876A (en) * 2012-08-24 2015-10-08 ジェーヴィーエル ベンチャ−ズ, エルエルシーJVL Ventures, LLC. System, method and computer program product for protecting and managing applications on a secure element

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000112719A (en) * 1998-07-23 2000-04-21 Hitachi Ltd Ic card system and device and ic card used for the same
JP2001084137A (en) * 1999-09-14 2001-03-30 Matsushita Electric Ind Co Ltd Device and method for managing license
JP2003317039A (en) * 2002-04-24 2003-11-07 Hitachi Ltd Command control method, ic card use terminal device, and memory card
JP2006190008A (en) * 2005-01-04 2006-07-20 Nippon Telegr & Teleph Corp <Ntt> Data coordination device and data coordination method
JP2007183780A (en) * 2006-01-06 2007-07-19 Sony Corp Information communication system, information communication equipment, information communication method and computer program
JP2007241884A (en) * 2006-03-10 2007-09-20 Matsushita Electric Ind Co Ltd Vending machine
JP2008016016A (en) * 2006-06-08 2008-01-24 Nippon Conlux Co Ltd Information processor

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000112719A (en) * 1998-07-23 2000-04-21 Hitachi Ltd Ic card system and device and ic card used for the same
JP2001084137A (en) * 1999-09-14 2001-03-30 Matsushita Electric Ind Co Ltd Device and method for managing license
JP2003317039A (en) * 2002-04-24 2003-11-07 Hitachi Ltd Command control method, ic card use terminal device, and memory card
JP2006190008A (en) * 2005-01-04 2006-07-20 Nippon Telegr & Teleph Corp <Ntt> Data coordination device and data coordination method
JP2007183780A (en) * 2006-01-06 2007-07-19 Sony Corp Information communication system, information communication equipment, information communication method and computer program
JP2007241884A (en) * 2006-03-10 2007-09-20 Matsushita Electric Ind Co Ltd Vending machine
JP2008016016A (en) * 2006-06-08 2008-01-24 Nippon Conlux Co Ltd Information processor

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015529876A (en) * 2012-08-24 2015-10-08 ジェーヴィーエル ベンチャ−ズ, エルエルシーJVL Ventures, LLC. System, method and computer program product for protecting and managing applications on a secure element

Also Published As

Publication number Publication date
JP5304193B2 (en) 2013-10-02

Similar Documents

Publication Publication Date Title
US8510572B2 (en) Remote access system, gateway, client device, program, and storage medium
EP1388989B1 (en) Digital contents issuing system and digital contents issuing method
US11126753B2 (en) Secure processor chip and terminal device
EP3780484B1 (en) Cryptographic operation and working key creation method and cryptographic service platform and device
JPH08212066A (en) Loading method to protection memory area of information processor and apparatus related to it
CN102523089B (en) Secondary credentials for batch system
US20140359746A1 (en) Authentication system, authentication server, authentication method, and authentication program
JP2012038313A (en) Smart card, and anti-virus system and scanning method utilizing the smart card
JP2013065340A (en) Resource sharing protected by security between applications in independent execution environments in retrievable token such as smart card
WO2005066803A1 (en) Data communicating apparatus and method for managing memory of data communicating apparatus
CN103154965A (en) Method, secure device, system and computer program product for securely managing user access to a file system
CN101140545B (en) Advices processing device, external device and program
JP6923582B2 (en) Information processing equipment, information processing methods, and programs
US7272715B2 (en) Communications method, data processing apparatus, and program
WO2007119594A1 (en) Secure device and read/write device
Otterbein et al. The German eID as an authentication token on android devices
JP5304193B2 (en) IC card payment terminal, its control device, program
CN110352411A (en) Method and apparatus for controlling the access to safe computing resource
JP2009130833A (en) Authority transfer system, mobile terminal, id management server, authority transfer method, and authority transfer program
JP2008176506A (en) Information processing apparatus, information processing method and management server
CN115482132A (en) Data processing method and device for electronic contract based on block chain and server
JP4617581B2 (en) Data processing device
JP6746244B2 (en) Information processing apparatus, information processing method, program, and information processing system
JP2002244755A (en) Data processing method, semiconductor circuit, and program
JP2007233952A (en) Recording medium processing device, electronic settlement terminal device and control method for the same

Legal Events

Date Code Title Description
A625 Written request for application examination (by other person)

Free format text: JAPANESE INTERMEDIATE CODE: A625

Effective date: 20110812

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20121025

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20121116

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130305

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130425

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130610

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 5304193

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees