JP5391743B2 - Payment processing security information distribution method, payment processing security information distribution system, center device thereof, server device, payment terminal, and program - Google Patents
Payment processing security information distribution method, payment processing security information distribution system, center device thereof, server device, payment terminal, and program Download PDFInfo
- Publication number
- JP5391743B2 JP5391743B2 JP2009054180A JP2009054180A JP5391743B2 JP 5391743 B2 JP5391743 B2 JP 5391743B2 JP 2009054180 A JP2009054180 A JP 2009054180A JP 2009054180 A JP2009054180 A JP 2009054180A JP 5391743 B2 JP5391743 B2 JP 5391743B2
- Authority
- JP
- Japan
- Prior art keywords
- terminal
- information
- payment
- encrypted
- processing
- 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.)
- Expired - Fee Related
Links
- 238000012545 processing Methods 0.000 title claims description 297
- 238000000034 method Methods 0.000 title claims description 167
- 238000009826 distribution Methods 0.000 title claims description 52
- 230000008569 process Effects 0.000 claims description 129
- 230000006854 communication Effects 0.000 claims description 97
- 238000004891 communication Methods 0.000 claims description 91
- 238000003860 storage Methods 0.000 claims description 66
- 230000005540 biological transmission Effects 0.000 claims description 42
- 238000002360 preparation method Methods 0.000 claims description 25
- 230000006870 function Effects 0.000 claims description 20
- 238000009434 installation Methods 0.000 claims description 11
- 238000007781 pre-processing Methods 0.000 claims description 4
- 238000002716 delivery method Methods 0.000 claims 2
- 238000007726 management method Methods 0.000 description 62
- 230000004044 response Effects 0.000 description 16
- 238000010586 diagram Methods 0.000 description 9
- 230000000694 effects Effects 0.000 description 6
- 238000012423 maintenance Methods 0.000 description 4
- 238000012795 verification Methods 0.000 description 4
- 238000013500 data storage Methods 0.000 description 3
- 238000012217 deletion Methods 0.000 description 3
- 230000037430 deletion Effects 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 125000002066 L-histidyl group Chemical group [H]N1C([H])=NC(C([H])([H])[C@](C(=O)[*])([H])N([H])[H])=C1[H] 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000010365 information processing Effects 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 230000006378 damage Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000009418 renovation Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
Landscapes
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
- Cash Registers Or Receiving Machines (AREA)
Description
本発明は、ICカード等を用いる電子マネーシステムに係わり、特にその決済端末に対するセキュリティ情報設定方式に関する。 The present invention relates to an electronic money system using an IC card or the like, and more particularly to a security information setting method for the payment terminal.
ICカードを使った電子マネーシステムが広く利用されている。電子マネーを運営する各電子マネー事業者は、電子マネーシステムを安全に運用するために、独自にセキュリティ機能を決済端末、データセンターに組み込むことで、セキュリティを確保している。セキュアなシステムを構築するためには、システム全体を電子マネー事業者が単独で構築することが望ましい。そこで、セキュリティ処理に関する機能を電子マネー事業者が開発して、決済端末に組み込むことでメーカとのセキュリティ境界を保っている。 Electronic money systems using IC cards are widely used. Each electronic money business operator who operates electronic money secures security by independently incorporating a security function into a payment terminal or data center in order to operate the electronic money system safely. In order to construct a secure system, it is desirable for an electronic money business operator to independently construct the entire system. Therefore, an electronic money business operator develops a function related to security processing and incorporates it into a payment terminal to maintain the security boundary with the manufacturer.
これを実現するため、例えばインタプリタ機能をICカード端末内のセキュアなLSIに実装し、電子マネー事業者が例えばインタプリタ言語で開発したアプリケーション(ICカードと通信して電子マネー決済処理を行うアプリケーション等(ここではインタプリタが解釈可能な中間コードを例にする))をロードし、LSI内でこのアプリケーションを実行させる方法が考えられる。尚、上記セキュアなLSIとは、例えば耐タンパ技術(例えば筐体の開封検知によりLSI内の上記アプリケーションを消去するもの等)により保護されているものである。 In order to realize this, for example, an interpreter function is mounted on a secure LSI in an IC card terminal, and an application developed by an electronic money business operator in, for example, an interpreter language (an application that communicates with an IC card and performs electronic money settlement processing, etc.) Here, an intermediate code that can be interpreted by the interpreter is taken as an example))) and this application is executed in the LSI. Note that the secure LSI is protected by, for example, a tamper-resistant technology (for example, one that erases the application in the LSI by detecting opening of the housing).
ここで、例えば、特許文献1には、インタプリタが解釈可能な中間コードを格納するRAMと、中間コードを解釈実行可能なインタプリタ実行プログラムを格納するROMと、インタプリタ実行プログラムの実行を制御するCPUとを備えたLSIを用いることが開示されている。上記中間コードは、暗号化されている場合と暗号化されている場合がある。あるいは、上記RAMには暗号化された中間コードと暗号化されていない中間コードとが格納されており、この両方の中間コードをインタプリタ実行プログラムで解釈可能とすることも開示されている。 Here, for example, Patent Document 1 discloses a RAM that stores an intermediate code that can be interpreted by an interpreter, a ROM that stores an interpreter execution program that can interpret and execute the intermediate code, and a CPU that controls the execution of the interpreter execution program. It is disclosed that an LSI provided with the above is used. The intermediate code may be encrypted or encrypted. Alternatively, the RAM stores an encrypted intermediate code and an unencrypted intermediate code, and it is also disclosed that both intermediate codes can be interpreted by an interpreter execution program.
上記特許文献1などの従来技術において、特に暗号化された中間コードを用いる手法においては、中間コードの暗号化は決済端末を製造する製造メーカ(または、この決済端末内の上記LSIを別のメーカが製造する場合には、当該LSIの製造/販売業者等)が割り当てた固定の暗号化鍵を利用しなければならず、中間コードの暗号化を製造メーカ等に委ねなければならず、電子マネー事業者と製造メーカ等との間の明確なセキュリティ境界を保つことが困難である。 In the prior art such as Patent Document 1 described above, particularly in the method using an encrypted intermediate code, the encryption of the intermediate code is performed by the manufacturer that manufactures the payment terminal (or the LSI in the payment terminal is another manufacturer). In the case of manufacturing, the fixed encryption key assigned by the LSI manufacturer / seller must be used, and the encryption of the intermediate code must be entrusted to the manufacturer, etc. It is difficult to maintain a clear security boundary between operators and manufacturers.
ここで、従来では、決済端末内のLSIに格納させる中間コードが暗号化されているか否かに関係なく、電子マネー事業者は、自己が開発した上記アプリケーション(ここでは中間コード)を決済端末の例えば製造メーカに渡して、製造メーカにおいてこのアプリケーションをそのまま(または暗号化して)決済端末内のLSI内のメモリに格納する作業を行うことで、決済端末が完成して出荷されることになる。この為、製造メーカ側で上記アプリケーション(中間コード)の内容を知り得ることになる。また、アプリケーション(中間コード)に限らず、そのセキュリティデータ(ICカードとの通信の際に必要となる秘匿鍵等;中間コードが暗号化されている場合には、更に、復号化の為の鍵情報等)も、製造メーカに渡して、決済端末内のLSI内のメモリに格納させる作業を行わせる必要があり、セキュリティデータに関しても、その内容を製造メーカ側が知り得る状態にある。 Here, conventionally, regardless of whether or not the intermediate code to be stored in the LSI in the payment terminal is encrypted, the electronic money business operator uses the application (the intermediate code in this case) developed by itself to the payment terminal. For example, the payment terminal is completed and shipped by handing it over to the manufacturer and storing the application as it is (or encrypted) in the memory in the LSI in the payment terminal. Therefore, the manufacturer can know the contents of the application (intermediate code). Also, not only the application (intermediate code) but also its security data (such as a secret key required for communication with the IC card; if the intermediate code is encrypted, a key for decryption is also provided. Information, etc.) must also be given to the manufacturer and stored in the memory in the LSI in the payment terminal, and the contents of the security data can be known by the manufacturer.
電子マネー事業者側としては、電子マネー事業者と製造メーカ等と間の明確なセキュリティ境界を保つ為に、中間コードやセキュリティデータを製造メーカ等に渡したく無いという要望がある。しかしながら、上記の通り、中間コードやセキュリティデータを製造メーカ等に渡さなければ、実質的に決済端末は完成しないことになり(ハードウェアは製造できても、決済端末として機能する状態にはならない)、従来ではこの要望は適わなかった。 There is a demand on the electronic money business side that they do not want to pass the intermediate code or security data to the manufacturer in order to maintain a clear security boundary between the electronic money business and the manufacturer. However, as described above, unless the intermediate code and security data are handed over to the manufacturer or the like, the payment terminal is substantially not completed (even if the hardware can be manufactured, it does not function as a payment terminal). In the past, this request was not suitable.
本発明の課題は、電子マネー事業者が、自己の電子マネーの決済処理に係わるアプリケーション等であって特にセキュリティ仕様を実現するアプリケーション等を、第3者(端末メーカ等)に公開することなく決済端末に設定でき、更に、予め実行されている前準備処理等によって得られている暗号化情報や各種鍵を用いることで、安全・確実に上記アプリケーション等を決済端末に配信して設定できる決済処理セキュリティ情報配信方法、決済処理セキュリティ情報配信システム、そのセンタ装置、サーバ装置、決済端末、及びプログラム等を提供することである。 An object of the present invention is that an electronic money business operator can settle an application, etc. related to the settlement processing of his / her electronic money, in particular, an application that realizes security specifications without exposing it to a third party (terminal manufacturer, etc.). Payment processing that can be set on the terminal and that can be delivered and set to the payment terminal safely and reliably by using encrypted information and various keys obtained by pre-preparation processing etc. It is to provide a security information distribution method, a payment processing security information distribution system, a center device, a server device, a payment terminal, a program, and the like.
本発明の決済処理セキュリティ情報配信方法は、電子マネー事業者のセンタ装置と、決済端末メーカのサーバ装置と、各決済端末とが、ネットワークに接続されて相互にデータ送受信可能なネットワークシステムにおける決済処理セキュリティ情報配信方法であって、予め、前記センタ装置と前記サーバ装置とが前記ネットワークを介して相互に通信処理を行うことで、前記センタ装置は、自己に係わる特定情報が前記決済端末メーカ側のみが保持する第1の秘匿鍵によって暗号化されて成る暗号化特定情報を取得して保持し、前記サーバ装置は、出荷する各決済端末毎に、その決済端末に係わる所定情報である端末情報が前記センタ装置のみが保持する第2の秘匿鍵によって暗号化されて成る暗号化端末情報を取得して保持する前準備処理ステップと、前記サーバ装置が、出荷する各決済端末毎に、その決済端末の前記端末情報及びその前記暗号化端末情報と前記第1の秘匿鍵と、前記前準備処理ステップの際に取得した前記特定情報とを設定・格納する設定処理ステップと、前記各決済端末が出荷されて任意の設置場所に設置された後、前記センタ装置と前記決済端末とが前記ネットワークを介して暗号化通信により相互認証処理を行う処理であって、前記決済端末が前記暗号化端末情報を含む第1の送信情報を前記センタ装置へ送信し、該センタ装置は該第1の送信情報と前記第2の秘匿鍵と前記前準備処理ステップの際に取得した前記端末情報に基づいて通信相手の決済端末を認証し、前記センタ装置が前記暗号化特定情報を含む第2の送信情報を前記決済端末に送信し、該決済端末は該第2の送信情報と前記第1の秘匿鍵と前記特定情報に基づいて前記センタ装置を認証する相互認証処理ステップと、前記相互認証が成功した場合、前記センタ装置が前記決済端末に対して、電子マネー決済処理に係わる決済処理セキュリティ情報を、前記相互認証処理ステップで得られる暗号鍵によって暗号化して配信する配信ステップと、前記決済端末が、該暗号化された配信情報を前記相互認証処理ステップで得られる前記暗号鍵によって復号することで前記決済処理セキュリティ情報を取得する決済処理セキュリティ情報取得ステップとを有する。 The payment processing security information distribution method of the present invention is a payment processing in a network system in which a center device of an electronic money business operator, a server device of a payment terminal manufacturer, and each payment terminal are connected to a network and can exchange data with each other. A security information distribution method in which the center device and the server device perform communication processing with each other via the network in advance, so that the center device has specific information related to itself only on the payment terminal manufacturer side. The server apparatus acquires and holds encrypted specific information that is encrypted with the first secret key held by the server, and the server device stores, for each payment terminal to be shipped, terminal information that is predetermined information related to the payment terminal. Preliminary processing for acquiring and holding encrypted terminal information encrypted with the second secret key held only by the center device And the server device, for each payment terminal to be shipped, the terminal information of the payment terminal, the encryption terminal information, the first secret key, and the acquired in the pre-processing step A setting processing step for setting / storing specific information; and after each payment terminal is shipped and installed at an arbitrary installation location, the center apparatus and the payment terminal communicate with each other by encrypted communication via the network. An authentication process, wherein the payment terminal transmits first transmission information including the encrypted terminal information to the center device, and the center device transmits the first transmission information and the second secret key. And authenticating the settlement terminal of the communication partner based on the terminal information acquired during the pre-preparation processing step, the center device transmits second transmission information including the encryption specific information to the settlement terminal, A settlement terminal authenticates the center apparatus based on the second transmission information, the first secret key, and the specific information, and if the mutual authentication is successful, the center apparatus In contrast, a distribution step of encrypting and distributing the payment processing security information related to the electronic money payment processing with the encryption key obtained in the mutual authentication processing step, and the payment terminal sending the encrypted distribution information to the A payment processing security information acquisition step of acquiring the payment processing security information by decrypting with the encryption key obtained in the mutual authentication processing step.
本手法では、電子マネー事業者は、電子マネー決済処理に係わる決済処理セキュリティ情報(例えば上述した中間コード等)を、第3者(決済端末メーカ等)に渡さない。よって、各決済端末は、決済端末メーカ側によって製造・設定・出荷された時点では、決済処理セキュリティ情報を保持していないので、電子マネー決済処理の行えない(機能しない)。決済処理セキュリティ情報は、後から(決済端末設置後に)電子マネー事業者のセンタ装置から決済端末に配信される。 In this method, the electronic money business operator does not pass the payment processing security information (for example, the above-described intermediate code) related to the electronic money payment processing to a third party (such as a payment terminal manufacturer). Accordingly, when each payment terminal is manufactured, set, and shipped by the payment terminal maker, the payment processing security information is not held, and thus electronic money payment processing cannot be performed (does not function). The payment processing security information is distributed later (after the payment terminal is installed) from the electronic money business center device to the payment terminal.
但し、決済処理セキュリティ情報は重要な情報であり、漏洩や誤配信は許されないので、センタ装置−決済端末間の通信を暗号化通信で行うだけでなく、予め前準備処理によって電子マネー事業者−決済端末メーカ間で交換した暗号化情報である上記暗号化特定情報、暗号化端末情報等を用いて認証処理を行うことで、相互に通信相手が正当なものであることを確認し、安全に決済処理セキュリティ情報を配信できるようにしている。 However, since the payment processing security information is important information, and leakage and misdelivery are not allowed, communication between the center device and the payment terminal is performed not only by encrypted communication, but also by an electronic money business operator through pre-preparation processing in advance. By performing authentication processing using the above-mentioned encryption specific information, encryption terminal information, etc., which is encryption information exchanged between payment terminal manufacturers, it is confirmed that the communication partner is mutually valid and secure Payment processing security information can be distributed.
本発明の決済処理セキュリティ情報配信方法、決済処理セキュリティ情報配信システム、そのセンタ装置、サーバ装置、決済端末、及びプログラム等によれば、電子マネー事業者は、自己の電子マネーの決済処理に係わるアプリケーション等であって特にセキュリティ仕様を実現するアプリケーション等を、第3者(端末メーカ等)に公開することなく、決済端末に設定できる。この設定処理はネットワークを介して行うが、予め実行されている前準備処理等によって得られている暗号化情報や各種鍵を用いることで、安全・確実に上記アプリケーション等を決済端末に配信して設定できる。 According to the payment processing security information distribution method, the payment processing security information distribution system, the center device, the server device, the payment terminal, and the program of the present invention, the electronic money business operator can use the application related to the payment processing of their own electronic money. In particular, an application or the like that realizes the security specification can be set in the settlement terminal without exposing it to a third party (terminal manufacturer or the like). This setting process is performed via the network. By using encrypted information and various keys obtained by pre-preparation processes that are executed in advance, the above applications and the like can be securely and reliably distributed to the payment terminal. Can be set.
以下、図面を参照して本発明の実施の形態について説明する。
(実施例1)(単一アプリケーションの場合)
図1は、実施例1として、単一アプリケーションの場合のプログラム配信システムの構成例を示す図である。
Embodiments of the present invention will be described below with reference to the drawings.
(Example 1) (Single application)
FIG. 1 is a diagram illustrating a configuration example of a program distribution system in the case of a single application as the first embodiment.
ところで、ここで、現在では複数種類のICカードが存在する。つまり、電子マネーは、各電子マネー事業者(ICカード発行・決済会社)から異なる仕様の電子マネーブランドが規定され、それぞれ電子マネー用のICカードが発行され、また携帯端末用ソフトウェアがリリースされている。また、決済端末における電子マネー決済処理に係わるソフトウェアも各電子マネー事業者がそれぞれ規定し作成している。このように、複数の電子マネー事業者が、それぞれ自社ブランドのICカード等を発行し、また決済端末を製造させ、電子マネー決済処理を管理している。そして、昨今、1台の決済端末で複数のブランドの(複数種類の)電子マネーを利用できるマルチブランド対応の電子マネー決済端末が出現してきている。 Now, there are a plurality of types of IC cards. In other words, for electronic money, electronic money brands with different specifications are prescribed by each electronic money business operator (IC card issuing / settlement company), IC cards for electronic money are issued, and software for mobile terminals is released. Yes. Each electronic money business operator also defines and creates software related to electronic money payment processing at a payment terminal. In this way, a plurality of electronic money business operators issue their own brand IC cards and the like, manufacture payment terminals, and manage electronic money payment processing. In recent years, multi-brand electronic money payment terminals that can use a plurality of brands (plural types) of electronic money have appeared in one payment terminal.
この様な複数種類のICカードに対応可能な決済端末では、自端末で扱う各ブランド毎の処理機能が必要である。これは、例えば、ICカードとの通信は秘匿通信(暗号化通信)であるので、その為の鍵情報等が必要であるが、複数ブランドに対応する場合、各ブランド毎の鍵情報等を保持する必要がある。また、鍵情報に限らず、電子マネー決済処理に係わるアルゴリズムやICカードとの通信方式も、各ブランド毎に異なるものであり、それぞれが上記アルゴリズムを実現するアプリケーションプログラム(上記中間コード等)を作成している。 In such a payment 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. In addition to key information, algorithms for electronic money payment processing and communication methods with IC cards are also different for each brand, and each creates an application program (such as the above intermediate code) that implements the above algorithm. doing.
実施例1に関する上記「単一アプリケーションの場合」とは、決済端末が、複数ブランド対応ではなく、任意の単一ブランドのみ対応可能なものである場合を意味している。尚、決済端末が複数ブランド対応の場合の実施例として、後に説明する実施例5、6がある。また、後に説明する実施例2〜4も、単一アプリケーションの場合の実施例である。 The above-mentioned “in the case of a single application” regarding the first embodiment means a case where the payment terminal is not compatible with a plurality of brands but can support only an arbitrary single brand. Examples of cases where the payment terminal is compatible with a plurality of brands include Examples 5 and 6 described later. Examples 2 to 4 described later are also examples in the case of a single application.
尚、決済端末の通信相手(電子マネー決済の処理対象)は、非接触ICカードのようなカード型の形態に限らず、例えばICカード機能内蔵の携帯電話やタグ型(ICタグ)あるいは腕時計型の形態等であってもよく、これらを総称して非接触型情報媒体と呼ぶものとする。但し、本説明では非接触ICカードを例にして説明する。尚、非接触ICカードを省略してICカードという場合もある。 Note that the communication partner of the payment terminal (the processing target of electronic money payment) is not limited to a card-type form such as a non-contact IC card, but for example, a mobile phone with a built-in IC card function, a tag type (IC tag), or a wristwatch type These may be used as a non-contact information medium. However, in this description, a non-contact IC card will be described as an example. In some cases, the non-contact IC card is omitted and referred to as an IC card.
また、以下の各実施例の説明では、上記電子マネー決済処理に係わるアプリケーションプログラムの一例として、上記従来技術、課題で示した「インタプリタが解釈可能な中間コード」を例にして説明するが、この例に限るものではない。すなわち、本例で決済端末に配信・設定する電子マネー決済処理プログラムは、上記中間コードに限るものではなく、またインタプリタ処理するプログラムに限るものでもない。 Further, in the following description of each embodiment, as an example of the application program related to the electronic money settlement process, the “intermediate code interpretable by the interpreter” described in the above related art and problem will be described as an example. It is not limited to examples. In other words, the electronic money payment processing program distributed / set to the payment terminal in this example is not limited to the above intermediate code, and is not limited to a program for interpreter processing.
また、決済端末が決済処理を実行できるようにする為に(つまり、決済端末が機能する為に)必要な情報は、中間コード31等の電子マネー決済処理プログラムだけでなく、セキュリティデータ32(上記ICカードとの暗号通信に必要な秘匿鍵)も含まれるものであり、またこれらのプログラム/データ(鍵等)は、漏洩してはならない重要な情報であり後述するセキュアなLSI20内で記憶・実行させるべきものであるので、これらのプログラム/データ(鍵等)(本例では中間コード31及びセキュリティデータ32)をまとめて「(電子マネー決済処理に係わる)決済処理セキュリティ情報」と呼ぶものとする。 Information necessary for the payment terminal to execute the payment process (that is, for the payment terminal to function) includes not only the electronic money payment processing program such as the intermediate code 31 but also the security data 32 (above The secret key required for the encryption communication with the IC card is also included, and these programs / data (keys, etc.) are important information that should not be leaked and are stored in the secure LSI 20 described later. These programs / data (keys, etc.) (in this example, the intermediate code 31 and the security data 32) are collectively referred to as “payment processing security information (related to electronic money payment processing)”. To do.
以下の各実施例の説明では、この「決済処理セキュリティ情報」の一例として、中間コード31とセキュリティデータ32(上記ICカードとの暗号通信に必要な秘匿鍵等の、中間コードによる電子マネー決済処理の際に必要となる各種データ)を例にして説明するが、上記の通りこの例に限るものではない。 In the following description of each embodiment, as an example of the “payment process security information”, an intermediate code 31 and security data 32 (an electronic code payment process using an intermediate code such as a secret key necessary for encryption communication with the IC card) However, the present invention is not limited to this example as described above.
以下、図1に示す実施例1の決済処理セキュリティ情報配信システムの構成について説明する。
尚、図1、図4等に示すシステムは、電子マネー事業者のセンタ装置と、決済端末メーカのサーバ装置と、各決済端末とが、ネットワークに接続されて相互にデータ送受信可能なネットワークシステムであるが、このシステムの主な特徴は上記「決済処理セキュリティ情報」を安全に各決済端末に配信して設定させるものであることから「決済処理セキュリティ情報配信システム」と呼ぶ場合もある。
The configuration of the payment processing security information distribution system according to the first embodiment shown in FIG. 1 will be described below.
The system shown in FIGS. 1 and 4 is a network system in which a center device of an electronic money business operator, a server device of a payment terminal manufacturer, and each payment terminal are connected to a network and can exchange data with each other. However, the main feature of this system is that the “payment processing security information” can be safely delivered to each payment terminal and set, so it may be called a “payment processing security information delivery system”.
図示の決済処理セキュリティ情報配信システムは、概略的には、電子マネー事業者が有する中間コードダウンロードセンタに設置されるセンタ装置(電子マネー事業者センタ装置2)と、決済端末10を製造する任意の決済端末メーカ側に備えられるサーバ装置(端末メーカサーバ1)と、様々な各種店舗等に設置される多数の決済端末10とが、ネットワーク7(インターネットやVPN(Virtual Private Network;仮想プライベートネットワーク)等)に接続された構成となっており、相互にデータ送受信可能となっている。尚、図上、決済端末メーカ内に決済端末10を示してあるが、これは出荷時の決済端末10の状態(初期設定)を説明する為に示しているものである。尚、この設定時に(図では省略してあるが)後述する各種プログラム30も設定される。 The payment processing security information distribution system shown in FIG. 1 is an outline of a center device (electronic money business center device 2) installed in an intermediate code download center possessed by an electronic money business operator, and an arbitrary one that manufactures the payment terminal 10. A server device (terminal maker server 1) provided on the payment terminal maker side and a large number of payment terminals 10 installed in various stores or the like include a network 7 (Internet, VPN (Virtual Private Network), etc. ) And can transmit and receive data to and from each other. In the figure, the payment terminal 10 is shown in the payment terminal manufacturer, but this is shown for explaining the state (initial setting) of the payment terminal 10 at the time of shipment. Note that various programs 30 (to be described later) are also set at the time of this setting (not shown in the figure).
尚、センタ装置2−サーバ1間に関しては、何らかの専用線で接続されていてもよい。
決済端末10はセキュアなLSI20を備えるものである。これは、上記従来で説明したように、例えば耐タンパ技術が適用されたものであり、その内部に格納されるアプリケーションやデータ等が安全に保護され漏洩しないようになっている。上記の通り、「決済処理セキュリティ情報」の一例である中間コード31やセキュリティデータ32は、このLSI20内に保持させてLSI20内で処理実行させるべきものである。
Note that the center device 2 and the server 1 may be connected by some dedicated line.
The payment terminal 10 includes a secure LSI 20. As described above in the related art, for example, a tamper resistant technique is applied, and applications and data stored in the tamper resistant technology are safely protected so as not to leak. As described above, the intermediate code 31 and the security data 32, which are examples of “settlement processing security information”, should be stored in the LSI 20 and executed in the LSI 20.
ここで、図示の通り、出荷時の状態では決済端末10のLSI20内には、中間コード31やそのセキュリティデータ32は格納されていない。つまり、本手法では、電子マネー事業者は、中間コード31やそのセキュリティデータ32を決済端末メーカ側に渡さないので、決済端末メーカはこれら中間コード31等の内容を知り得ない一方で、当然、これら中間コード31等を決済端末10にインストールすることは出来ない。よって、出荷時の状態のままでは決済端末10はICカードによる電子マネー決済処理を実行できないが、本手法では後に(出荷先の任意の店舗に設置後に)センタ装置2から決済端末10へネットワーク7を介して中間コード31等をダウンロードするようにしている。 Here, as shown in the figure, the intermediate code 31 and its security data 32 are not stored in the LSI 20 of the payment terminal 10 in the state at the time of shipment. That is, in this method, since the electronic money business operator does not pass the intermediate code 31 or the security data 32 thereof to the payment terminal manufacturer, the payment terminal manufacturer cannot know the contents of the intermediate code 31 and the like. These intermediate codes 31 and the like cannot be installed in the payment terminal 10. Therefore, the payment terminal 10 cannot execute the electronic money payment process using the IC card in the state at the time of shipment. However, in this method, the network 7 is transferred from the center device 2 to the payment terminal 10 later (after installation in an arbitrary store at the shipping destination). The intermediate code 31 and the like are downloaded via
但し、この方法では、ネットワーク7を介して中間コード31等の極めて重要なアプリケーション/データを配信することになるので、安全に配信できるようにすることが求められる。これに対して、本手法では例えば図1に示す各種鍵や事前に特定の鍵によって暗号化済みの情報等を用いて、図2、図3で説明する処理を行うことで、中間コード31等を安全・確実に配信できるようにすることを特徴としている。 However, in this method, since extremely important applications / data such as the intermediate code 31 are distributed via the network 7, it is required to be able to distribute them safely. On the other hand, in this method, for example, the intermediate code 31 or the like is performed by performing the processing described in FIGS. 2 and 3 using the various keys shown in FIG. 1 or information previously encrypted with a specific key. The feature is that it can be delivered safely and reliably.
尚、図上下側に示す決済端末10の構成では、中間コード31等がセンタ装置2からダウンロードされて格納された後の状態を示している。
ここで、図示の決済処理セキュリティ情報配信システムにおいて用いる各種鍵は、図上ではA〜Gとして示す7種類の鍵である。すなわち、まず、全ての決済端末で共有する“端末の共有鍵(Kct)”(図上ではAを併記する;これより、“端末の共有鍵A(Kct)”と記す場合もある;他の鍵も同様である)がある。“端末の共有鍵A(Kct)”は、例えば共通鍵暗号方式による鍵である(よって、暗号化と復号化の両方で同じ鍵を用いる)。“端末の共有鍵A(Kct)”は例えばサーバ1内で任意に生成する。
Note that the configuration of the payment terminal 10 shown in the upper and lower sides of the figure shows a state after the intermediate code 31 and the like are downloaded from the center device 2 and stored.
Here, the various keys used in the illustrated payment processing security information distribution system are seven types of keys indicated as A to G in the figure. That is, first, “terminal shared key (Kct)” shared by all payment terminals (A in the figure is also written together; hereinafter, “terminal shared key A (Kct)” may also be written; The key is the same). “Terminal shared key A (Kct)” is, for example, a key based on a common key cryptosystem (thus, the same key is used for both encryption and decryption). The “terminal shared key A (Kct)” is arbitrarily generated in the server 1, for example.
また、各決済端末10それぞれが自らの内部で生成する公開鍵暗号方式の鍵ペアである“端末の公開鍵B(Kpt)”と“端末の秘密鍵C(Kst)”がある。また、上記電子マネー事業者センタ装置2において内部で生成する公開鍵暗号方式の鍵ペアである“センタ公開鍵E(Kpc)”と“センタ秘密鍵F(Ksc)”がある。また、上記電子マネー事業者センタ装置2において内部で生成する、共通鍵暗号方式による鍵である“センタ秘匿鍵D(Kcc)”がある。“センタ秘匿鍵D(Kcc)”によって暗号化と復号化の両方が行える。
更に、電子マネー事業者センタ装置2−任意の決済端末10間での後述する相互認証処理によって得られる所定情報(本例では乱数)に基づいて生成される“セッション鍵G(Ks)”がある。“セッション鍵G(Ks)”は一時的に生成・使用される鍵である。
In addition, there is a “terminal public key B (Kpt)” and a “terminal secret key C (Kst)”, which are public key cryptosystem key pairs that each settlement terminal 10 generates internally. In addition, there is a “center public key E (Kpc)” and “center secret key F (Ksc)” which are public key cryptosystem key pairs generated internally in the electronic money business center device 2. In addition, there is a “center secret key D (Kcc)” that is generated internally in the electronic money business center device 2 and is a key based on a common key cryptosystem. Both “encryption and decryption” can be performed by the “center secret key D (Kcc)”.
Further, there is a “session key G (Ks)” generated based on predetermined information (random number in this example) obtained by mutual authentication processing described later between the electronic money business center device 2 and any settlement terminal 10. . “Session key G (Ks)” is a key that is temporarily generated and used.
以下、図1に示す端末メーカサーバ1(以下、省略してサーバ1と記す場合もある)、電子マネー事業者センタ装置2(以下、省略してセンタ装置2と記す場合もある)、決済端末10の構成について、より詳しく説明する。 Hereinafter, a terminal maker server 1 (hereinafter abbreviated as server 1), an electronic money business center device 2 (hereinafter abbreviated as center device 2), and a payment terminal shown in FIG. The configuration of 10 will be described in more detail.
まず、端末メーカサーバ1と電子マネー事業者センタ装置2は、ハードウェア的には一般的な汎用コンピュータの構成であってよく、ここでは特に図示しないが、よく知られているように、CPU、記憶装置(ハードディスク等)、メモリ、通信機能部等を有し、記憶装置に予め記憶されている所定のアプリケーションプログラムを、CPUが読み出し実行することにより、所定の処理を実現する。本実施例1では、例えば後述する図2や図3に示す処理を実行する。 First, the terminal maker server 1 and the electronic money business center device 2 may be of a general-purpose computer configuration in terms of hardware, and although not particularly shown here, as well known, a CPU, A CPU has a storage device (such as a hard disk), a memory, a communication function unit, and the like, and the CPU reads and executes a predetermined application program stored in advance in the storage device, thereby realizing predetermined processing. In the first embodiment, for example, the processing shown in FIGS. 2 and 3 described later is executed.
例えば、端末メーカサーバ1は上記“端末の共有鍵A(Kct)”を生成・保持しており、電子マネー事業者センタ装置2は上記“センタ秘匿鍵D(Kcc)”を生成・保持しており、サーバ1とセンタ装置2はこれらの鍵を用いて後に図2で説明する前準備処理を実行する(サーバ1−センタ装置2間で暗号化情報の交換処理を実行する)。また、前準備処理後、サーバ1は、図2で説明する出荷前の各決済端末10に対する出荷設定処理を実行する。また、センタ装置2は、上記前準備処理後、各決済端末10との間で図2、図3で説明する相互認証処理、セキュリティ情報配信処理を実行する。 For example, the terminal manufacturer server 1 generates and holds the “terminal shared key A (Kct)”, and the electronic money business center device 2 generates and holds the “center secret key D (Kcc)”. The server 1 and the center apparatus 2 use these keys to execute a preparatory process which will be described later with reference to FIG. 2 (execute encryption information exchange processing between the server 1 and the center apparatus 2). Further, after the pre-preparation process, the server 1 executes a shipment setting process for each settlement terminal 10 before shipment, which will be described with reference to FIG. Further, the center device 2 executes mutual authentication processing and security information distribution processing described with reference to FIG. 2 and FIG.
ここで、電子マネー事業者センタ装置2は、図1に示すように、上記メモリとして不揮発メモリ3と揮発性メモリ4を有している。不揮発メモリ3は例えばハードディスク等の補助記憶装置であり、揮発性メモリ4は例えば主記憶装置である。 Here, the electronic money business center device 2 has a nonvolatile memory 3 and a volatile memory 4 as the memory as shown in FIG. The nonvolatile memory 3 is an auxiliary storage device such as a hard disk, and the volatile memory 4 is a main storage device, for example.
不揮発メモリ3には、予め、中間コード31及びそのセキュリティデータ32が格納されており、更に、当該センタ装置2内で任意に生成する暗号鍵(“センタ秘匿鍵D(Kcc)”、及び公開鍵暗号方式の鍵ペアである“センタ公開鍵E(Kpc)”と“センタ秘密鍵F(Ksc)”)が格納される。不揮発メモリ3には、更に、予め、センタ装置2に係わる特定情報(後に説明するセンタ情報等)が設定・格納されている。また、後に図2で説明する端末メーカサーバ1とのデータ交換処理(前準備処理)によって得られた“端末共有鍵A(Kct)で暗号化されたセンタ情報”35が格納される。 The non-volatile memory 3 stores an intermediate code 31 and its security data 32 in advance, and an encryption key ("center secret key D (Kcc)") and public key arbitrarily generated in the center device 2 An encryption method key pair “center public key E (Kpc)” and “center secret key F (Ksc)”) is stored. Further, specific information (center information and the like to be described later) related to the center device 2 is set and stored in advance in the nonvolatile memory 3. Further, “center information encrypted with the terminal shared key A (Kct)” 35 obtained by data exchange processing (pre-preparation processing) with the terminal manufacturer server 1 described later with reference to FIG. 2 is stored.
ここで、既に説明してある通りであり、中間コード31及びそのセキュリティデータ32は「(電子マネー決済処理に係わる)決済処理セキュリティ情報」であり、当然、決済端末10はこの決済処理セキュリティ情報が無いと電子マネー決済処理を実行することはできない。また、この決済処理セキュリティ情報は、当然、重要な情報であり漏洩することは許されず、耐タンパのLSI20内に保持されてLSI20内で処理実行すべきものである。 Here, as already described, the intermediate code 31 and its security data 32 are “payment processing security information (related to electronic money payment processing)”. Naturally, the payment terminal 10 stores the payment processing security information. Without it, electronic money settlement processing cannot be executed. The payment processing security information is naturally important information and is not allowed to be leaked. The payment processing security information is held in the tamper-resistant LSI 20 and should be processed in the LSI 20.
しかしながら、本手法では、電子マネー事業者が上記決済処理セキュリティ情報を決済端末メーカ側に渡したくないという要望を実現する為、LSI20内に決済処理セキュリティ情報が保持されていない状態で決済端末10が出荷されることになる。この為、そのままでは決済端末10は電子マネー決済端末として機能しないことになる。この為、本手法では、後から、電子マネー事業者のセンタ装置2から各決済端末10へ決済処理セキュリティ情報を配信するが、上記の通り決済処理セキュリティ情報の漏洩は許されないので、センタ装置2−決済端末10間の通信を暗号化によって行うだけでなく、センタ装置2、決済端末10それぞれが通信相手が正当な相手か否かを確認して、誤って第3者の装置に決済処理セキュリティ情報を配信することが無いようにする。 However, in this method, in order to realize the desire that the electronic money business operator does not want to pass the payment processing security information to the payment terminal manufacturer side, the payment terminal 10 does not hold the payment processing security information in the LSI 20. Will be shipped. For this reason, the payment terminal 10 does not function as an electronic money payment terminal as it is. For this reason, in this method, payment processing security information is later distributed from the center device 2 of the electronic money business operator to each payment terminal 10. However, since leakage of the payment processing security information is not allowed as described above, the center device 2 -The communication between the payment terminals 10 is not only performed by encryption, but the center device 2 and the payment terminal 10 confirm whether or not the communication partners are legitimate, and mistakenly set the payment processing security to the third party device. Ensure that no information is distributed.
このような相互に通信相手が正当な相手か否かを確認の為に、後述するように予め前準備処理や設定処理により生成・格納した“センタ秘匿鍵D(Kcc)で暗号化された端末情報”25、“端末共有鍵A(Kct)で暗号化されたセンタ情報”35等を用いる手法を提案するものである。 In order to confirm whether or not the communication partner is a legitimate partner, a terminal encrypted with the “center secret key D (Kcc) generated and stored in advance by pre-preparation processing and setting processing as will be described later We propose a method using “information” 25, “center information encrypted with terminal shared key A (Kct)” 35, and the like.
また、上記揮発性メモリ4には、任意の決済端末10との所定の通信処理(後述する相互認証処理、中間コード31等の配信処理等)を行う毎にその際に一時的に取得/生成される各種情報が格納される。すなわち、通信相手の任意の決済端末10から取得した当該決済端末10の上記“端末の公開鍵B(Kpt)”と、当該決済端末10との後述する相互認証処理によって得られる所定情報(本例では乱数)に基づいてセンタ装置2が生成する“セッション鍵G(Ks)”が、一時的に格納される。また、この“セッション鍵G(Ks)”を用いて上記不揮発メモリ3内の中間コード31及びそのセキュリティデータ32を暗号化した“暗号化中間コード”33及び“暗号化セキュリティデータ”34が、一時的に格納される。これら各種情報は、任意の決済端末10との上記所定の通信処理を行う毎に取得/生成されて一時的に格納されるものであり、この通信処理が完了したら消去される。 The volatile memory 4 is temporarily acquired / generated every time a predetermined communication process (a mutual authentication process described later, a delivery process of the intermediate code 31, etc.) with an arbitrary settlement terminal 10 is performed. Various information to be stored is stored. That is, the “terminal public key B (Kpt)” of the payment terminal 10 acquired from an arbitrary payment terminal 10 of the communication partner and predetermined information (this example) obtained by mutual authentication processing described later with the payment terminal 10 The “session key G (Ks)” generated by the center device 2 based on the random number is temporarily stored. Further, an “encrypted intermediate code” 33 and an “encrypted security data” 34 obtained by encrypting the intermediate code 31 and its security data 32 in the nonvolatile memory 3 using the “session key G (Ks)” are temporarily stored. Stored. These various pieces of information are acquired / generated and temporarily stored every time the predetermined communication process with the arbitrary settlement terminal 10 is performed, and are deleted when the communication process is completed.
また、端末メーカサーバ1は、特に図示しないが、その不揮発性メモリまたはハードディスク等に、予め登録された上記端末共有鍵A(Kct)を格納しており、また各決済端末10を製造する毎に、その決済端末10に係わる各種情報である後述する「端末情報」(詳しくは後述する)が登録されて格納される。更に、上記製造した各決済端末10に対する出荷前の設定作業を行う前に、上記前準備処理によって電子マネー事業者センタ装置2から各決済端末10毎に対応する“センタ秘匿鍵D(Kcc)で暗号化された端末情報”25を取得して格納している。 Further, although not particularly shown, the terminal manufacturer server 1 stores the terminal shared key A (Kct) registered in advance in its non-volatile memory or hard disk or the like, and each time each settlement terminal 10 is manufactured. In addition, “terminal information” (described later in detail), which is various information related to the settlement terminal 10, is registered and stored. Furthermore, before performing the setting work before shipment for each of the manufactured payment terminals 10, the “preparation process” from the electronic money business center device 2 to the “center secret key D (Kcc) corresponding to each payment terminal 10. The encrypted terminal information “25” is acquired and stored.
尚、上記登録は、例えば端末メーカ1の作業員等が行うものである。
そして、端末メーカ側では、例えば作業員等が行う各決済端末10の出荷前設定作業において、例えばサーバ1と設定対象の決済端末10とを接続して、サーバ1から決済端末10に上記端末共有鍵A(Kct)とその端末10に対応する上記“センタ秘匿鍵D(Kcc)で暗号化された端末情報”25とを転送して、これらを決済端末10の不揮発性メモリ24に格納させる。更に、各決済端末10に、その内部で任意の上記公開鍵ペア(“端末の公開鍵B(Kpt)”及び“端末の秘密鍵C(Kst)”)を生成させて、これも不揮発性メモリ24に格納させる。
The registration is performed by, for example, a worker of the terminal manufacturer 1.
On the terminal manufacturer side, for example, in the setting work before shipment of each payment terminal 10 performed by a worker or the like, for example, the server 1 and the payment terminal 10 to be set are connected, and the terminal 1 is shared from the server 1 to the payment terminal 10. The key A (Kct) and the “terminal information encrypted with the center secret key D (Kcc)” 25 corresponding to the terminal 10 are transferred, and stored in the non-volatile memory 24 of the settlement terminal 10. Furthermore, each of the payment terminals 10 generates an arbitrary public key pair (“terminal public key B (Kpt)” and “terminal secret key C (Kst)”) therein, which is also a nonvolatile memory. 24.
また、サーバ1から後述する各種プログラム(インタプリタ処理やアプリケーション格納処理等のプログラム30等)を決済端末10に転送させて、これらも不揮発性メモリ24に格納させる。 Further, various programs (programs 30 such as interpreter processing and application storage processing) to be described later are transferred from the server 1 to the settlement terminal 10 and stored in the nonvolatile memory 24.
各決済端末10は、上記出荷前設定作業完了後、出荷されて任意の各店舗に設置される。そして、後に図2、図3で説明する上記センタ装置2との所定の通信処理を行うことで、上記「決済処理セキュリティ情報」(中間コード31とセキュリティデータ32)を安全・確実に取得することができ、これによって電子マネー決済処理が可能な状態となる(ICカードによる電子マネー決済端末として機能する状態となる)。 Each settlement terminal 10 is shipped after the completion of the pre-shipment setting operation and is installed at any store. Then, the “settlement processing security information” (intermediate code 31 and security data 32) is acquired safely and reliably by performing predetermined communication processing with the center apparatus 2 described later with reference to FIGS. As a result, electronic money settlement processing becomes possible (functions as an electronic money settlement terminal using an IC card).
決済端末10の詳細構成例、及び上記センタ装置2との所定の通信処理実行後の状態を、図1の図上下側に示し、以下、これを参照して説明する。
図示の例では、決済端末10は、端末管理CPU11、RAM12、ROM13、UI14、第1通信部15、第2通信部16、第3通信部17、及びLSI20等を有する。
A detailed configuration example of the payment terminal 10 and a state after execution of a predetermined communication process with the center device 2 are shown on the upper and lower sides of FIG.
In the illustrated example, the settlement terminal 10 includes a terminal management CPU 11, a RAM 12, a ROM 13, a UI 14, a first communication unit 15, a second communication unit 16, a third communication unit 17, an LSI 20, and the like.
決済端末10を任意の店舗に設置する際に、第1通信部15を店舗内の上位装置(POSレジ5等)に接続し、第2通信部16をネットワーク7に接続しておく。これより、決済端末10は、上位装置(POSレジ5等)と通信可能となり、またネットワーク7を介して外部の他の情報処理装置(ここでは特に電子マネー事業者センタ装置2)と通信可能となる。また、第3通信部17は製造時に既にLSI20内の第4通信部22と接続しており、端末管理CPU11とLSI20とは、これら通信部17,22を介して、相互にデータ送受信するものである。 When the payment terminal 10 is installed in an arbitrary store, the first communication unit 15 is connected to a host device (POS register 5 or the like) in the store, and the second communication unit 16 is connected to the network 7. As a result, the payment terminal 10 can communicate with the host device (POS register 5 or the like) and can communicate with other external information processing devices (in particular, the electronic money business center device 2 here) via the network 7. Become. The third communication unit 17 is already connected to the fourth communication unit 22 in the LSI 20 at the time of manufacture, and the terminal management CPU 11 and the LSI 20 exchange data with each other via these communication units 17 and 22. is there.
端末管理CPU11は、当該決済端末10全体を制御する中央処理装置である。端末管理CPU11は、ROM13に格納されている所定の各種アプリケーションプログラムを読出し・実行することにより、各種処理を実行する。例えば、第1通信部15を介して上位装置(POSレジ5等)との通信処理を行ったり、第2通信部16を介してネットワーク7(LANやインターネット等)を介した電子マネー事業者センタ装置2との通信処理を行ったり、第3通信部17を介してLSI20とのデータ送受信処理を行う。特に、後述する図2の処理において、LSI20と外部の装置(上記POSレジ5やセンタ装置2等)との通信を中継する処理を行う。また、ICカード6による電子マネー決済処理に関して、LSI20内で中間コード31等により実行されるセキュアな処理以外の処理(例えば利用履歴の生成・格納等)も行う。これらの処理を実行するプログラムも、上記出荷前設定作業の際に登録されて、ROM13に格納される。 The terminal management CPU 11 is a central processing unit that controls the entire payment terminal 10. The terminal management CPU 11 executes various processes by reading and executing predetermined various application programs stored in the ROM 13. For example, an electronic money business center that performs communication processing with a host device (POS register 5 or the like) via the first communication unit 15 or via the network 7 (LAN or the Internet) via the second communication unit 16. Communication processing with the apparatus 2 is performed, and data transmission / reception processing with the LSI 20 is performed via the third communication unit 17. In particular, in the processing of FIG. 2 described later, processing for relaying communication between the LSI 20 and external devices (the POS register 5, the center device 2, etc.) is performed. Further, regarding electronic money settlement processing by the IC card 6, processing other than the secure processing executed by the intermediate code 31 or the like in the LSI 20 (for example, generation / storage of usage history) is also performed. A program for executing these processes is also registered in the pre-shipment setting operation and stored in the ROM 13.
尚、上記ROMに格納される各種アプリケーションは、後の説明における“非セキュリティ部分のプログラム”や“非決済プログラム63”に相当するものである。
上記のように、端末管理CPU11は、主に、決済端末10内で実行される各種処理のうち、上記LSI20内で実行されるセキュアな処理(電子マネー決済処理)以外の処理を実行するものである。
The various applications stored in the ROM correspond to “non-security part program” and “non-settlement program 63” in the following description.
As described above, the terminal management CPU 11 mainly executes processes other than the secure process (electronic money payment process) executed in the LSI 20 among various processes executed in the payment terminal 10. is there.
ROM13には端末管理CPU11に実行させる上記所定の各種アプリケーションプログラム等が格納されている。
尚、ROM13は、純粋なROM(書き換え不可)ではなく、例えばフラッシュメモリやEEPROMなどの書換え可能な不揮発性メモリである。これより、例えばICカード6との電子マネー決済処理毎にその利用履歴等が格納される。RAM12は例えばワークメモリである。
The ROM 13 stores the predetermined application programs to be executed by the terminal management CPU 11.
The ROM 13 is not a pure ROM (not rewritable) but is a rewritable nonvolatile memory such as a flash memory or an EEPROM. Thus, for example, the usage history is stored for each electronic money settlement process with the IC card 6. The RAM 12 is a work memory, for example.
UI14は、ユーザインタフェースに係わる機能部であり、例えばタッチパネル等の入力装置と、ディスプレイ等の表示装置等である。
LSI20は、CPU21、第4通信部22、第5通信部26、揮発性メモリ23(SRAM等)、及び上述してある不揮発性メモリ24(EEPROM等)を有する。
The UI 14 is a functional unit related to the user interface, and includes an input device such as a touch panel and a display device such as a display.
The LSI 20 includes a CPU 21, a fourth communication unit 22, a fifth communication unit 26, a volatile memory 23 (SRAM and the like), and the above-described nonvolatile memory 24 (EEPROM and the like).
LSI20は、例えば、プログラム30によるインタプリタ処理により中間コード31を解釈・実行して(その際、セキュリティデータ32の暗号鍵情報等を用いる)、ICカード6との電子マネー決算処理等を行い、またその利用履歴を暗号化して端末管理CPU11に渡し、ROM13等に格納させる。尚、プログラム30は、図示の上記インタプリタ処理やアプリ等格納処理等をCPU21により実行させる為の各種アプリケーションプログラムである。アプリ等格納処理は、後述する図2、図3に示すセンタ装置2との相互認証処理や中間コード31等の配信処理におけるLSI20の処理を行うものである。詳しくは後述する。 The LSI 20 interprets and executes the intermediate code 31 by, for example, interpreter processing by the program 30 (using the encryption key information of the security data 32 at that time), performs electronic money settlement processing with the IC card 6, etc. The usage history is encrypted and transferred to the terminal management CPU 11 and stored in the ROM 13 or the like. Note that the program 30 is various application programs for causing the CPU 21 to execute the illustrated interpreter processing and application storage processing. The application storage processing performs processing of the LSI 20 in mutual authentication processing with the center apparatus 2 shown in FIGS. Details will be described later.
尚、LSI20には所謂“耐タンパ”適用されており、例えば不正を検知した場合には(筐体の破壊等の検知)、例えば揮発性メモリ23、不揮発性メモリ24に格納されている全データを消去することで、上記中間データ31等の重要データの漏洩を阻止する。 Note that so-called “tamper resistance” is applied to the LSI 20. For example, when fraud is detected (detection of destruction of the casing, etc.), all data stored in, for example, the volatile memory 23 and the nonvolatile memory 24. By deleting, leakage of important data such as the intermediate data 31 is prevented.
上述してあるように、不揮発性メモリ24(EEPROM等)には、出荷時に既に、上記プログラム30や、各種暗号鍵(上記端末共有鍵A(Kct)、“端末の公開鍵B(Kpt)”、“端末の秘密鍵C(Kst)”)や、所定の暗号化情報(センタ秘匿鍵D(Kcc)で暗号化された端末情報25)が格納されている。 As described above, the nonvolatile memory 24 (EEPROM, etc.) is already loaded with the program 30 and various encryption keys (the terminal shared key A (Kct), “terminal public key B (Kpt)”) at the time of shipment. , “Terminal secret key C (Kst)”) and predetermined encrypted information (terminal information 25 encrypted with the center secret key D (Kcc)).
CPU21は、上記の通り、各種プログラム30を適宜読出し・実行することにより、例えば、後に図2、図3で説明する各種処理等を実行する。特に、上記アプリ等格納処理のプログラムを実行することにより、電子マネー事業者センタ装置2から中間コード31、そのセキュリティデータ32を取得できる(上記の通り、図には既に取得済みの状態を示してある)。また、このアプリ等格納処理中、揮発性メモリ23には、センタ装置2から取得する“センタ公開鍵E(Kpc)”と、後に図2で説明する相互認証処理に基づいて内部で生成する“セッション鍵G(Ks)”が一時的に格納される。これら揮発性メモリ23内の鍵情報は、中間コード31、そのセキュリティデータ32を取得したら(センタ装置2との通信が完了したら)消去する。 As described above, the CPU 21 executes various processes described later with reference to FIGS. 2 and 3, for example, by appropriately reading and executing the various programs 30. In particular, the intermediate code 31 and its security data 32 can be acquired from the electronic money business center device 2 by executing the application storage processing program (as shown above, the already acquired state is shown in the figure). is there). Further, during the application storage process, the volatile memory 23 generates “center public key E (Kpc)” acquired from the center apparatus 2 and internally generated based on the mutual authentication process described later with reference to FIG. Session key G (Ks) "is temporarily stored. The key information in the volatile memory 23 is deleted when the intermediate code 31 and its security data 32 are acquired (when communication with the center device 2 is completed).
また、第5通信部26は、ICカード6と通信を行う機能部であり、例えばアンテナと送受信回路等から構成される。
上記図1に示す構成の決済処理セキュリティ情報配信システムでは、端末メーカ側には中間コード31、そのセキュリティデータ32は渡されない。よって、端末メーカ側では、中間コード31、そのセキュリティデータ32の内容を知ることができないが、その一方で当然、出荷時には決済端末10内に中間コード31、そのセキュリティデータ32は格納されていない状態であるので、このままではLSI20は機能せず、ICカード6との通信・決済処理を行うことはできない(運用可能な状態ではない)。中間コード31、そのセキュリティデータ32は、各決済端末10を任意の店舗内に設置後に、電子マネー事業者センタ装置2から配信する。
The fifth communication unit 26 is a functional unit that communicates with the IC card 6 and includes, for example, an antenna and a transmission / reception circuit.
In the payment processing security information distribution system having the configuration shown in FIG. 1, the intermediate code 31 and its security data 32 are not passed to the terminal manufacturer. Accordingly, the terminal manufacturer cannot know the contents of the intermediate code 31 and its security data 32, but naturally, the intermediate code 31 and its security data 32 are not stored in the payment terminal 10 at the time of shipment. Therefore, the LSI 20 does not function as it is, and communication / settlement processing with the IC card 6 cannot be performed (not in an operable state). The intermediate code 31 and its security data 32 are distributed from the electronic money business center device 2 after each payment terminal 10 is installed in an arbitrary store.
但し、中間コード31、そのセキュリティデータ32は、非常に重要な情報であり、漏洩してはならない。これに対して、本例の決済処理セキュリティ情報配信システムでは、上述した各種鍵や暗号化情報を用いて、安全に中間コード31、そのセキュリティデータ32を配信することができる。これについて、以下、図2、図3を参照して、主に安全に中間コード31、そのセキュリティデータ32を配信する為の処理について、詳細に説明する。 However, the intermediate code 31 and its security data 32 are very important information and should not be leaked. On the other hand, in the payment processing security information distribution system of this example, the intermediate code 31 and its security data 32 can be safely distributed using the various keys and encryption information described above. In the following, with reference to FIG. 2 and FIG. 3, the process for distributing the intermediate code 31 and its security data 32 mainly safely will be described in detail.
図2は、実施例1のプログラム配信システムの処理シーケンス例を示す図である。以下、この例を用いて説明する。
まず、上記前準備処理として、端末メーカサーバ1と電子マネー事業者センタ装置2との間で、ネットワーク7を介して所定のデータを交換する処理を行う。すなわち、まず、当該サーバ1−センタ装置2間でのデータ交換処理を暗号化通信で行うようにする為に、所定の暗号鍵の交換を行う(S1)。ここでは一例として、図3に示すセンタ装置2−決済端末10間の暗号化通信例と同様に、公開鍵暗号方式を用いるものとする。よって、サーバ1とセンタ装置2とで、それぞれ公開鍵暗号方式による鍵ペア(公開鍵と秘密鍵のペア)を生成し、互いに自己の鍵ペアにおける公開鍵を相手側に送信する(ここでは、一方の公開鍵を公開鍵(Kp_tm)とし、他方は公開鍵(Kp_bc)とし、これらを交換する)。
FIG. 2 is a diagram illustrating a processing sequence example of the program distribution system according to the first embodiment. Hereinafter, this example will be described.
First, as the pre-preparation process, a process of exchanging predetermined data via the network 7 is performed between the terminal manufacturer server 1 and the electronic money business center device 2. That is, first, a predetermined encryption key is exchanged in order to perform data exchange processing between the server 1 and the center apparatus 2 by encrypted communication (S1). Here, as an example, the public key cryptosystem is used as in the example of encrypted communication between the center apparatus 2 and the settlement terminal 10 shown in FIG. Therefore, the server 1 and the center device 2 each generate a key pair (a public key and a private key pair) by the public key cryptosystem, and transmit the public key in its own key pair to the other party (here, One public key is a public key (Kp_tm) and the other is a public key (Kp_bc), which are exchanged).
そして、上記自己が生成した鍵ペア及び相手の公開鍵とを用いて、図3の場合と同様に、それぞれが任意の乱数を生成しつつ相互認証処理を行い、この相互認証処理の際に生成・交換される乱数情報等を用いて、通信セッション鍵(Ks_tmbc)を生成する。 Then, using the key pair generated by the self and the public key of the other party, each performs mutual authentication processing while generating an arbitrary random number as in the case of FIG. 3, and is generated during this mutual authentication processing. Generate a communication session key (Ks_tmbc) using exchanged random number information or the like.
以降の処理(S2以降の処理)においてはこの通信セッション鍵(Ks_tmbc)を用いて暗号化通信によるデータ送受信を行う。尚、当然、暗号化通信は、上記公開鍵暗号方式に限らず、共通鍵暗号方式によって行ってもよい。この場合には、サーバ1とセンタ装置2は予め同じ暗号鍵を共有している。 In subsequent processing (processing after S2), data transmission / reception by encrypted communication is performed using this communication session key (Ks_tmbc). Of course, the encrypted communication is not limited to the public key encryption method, and may be performed by a common key encryption method. In this case, the server 1 and the center device 2 share the same encryption key in advance.
S2以降の処理について説明する。
まず、サーバ1は、出荷する決済端末10に関する所定の各種情報である端末情報(例えば、端末ID,事業者ID,店舗ID,店舗端末IDなど)を、センタ装置2へ送信する(S2)。この端末情報は上記通信セッション鍵により暗号化されている(以下のS3,S4,S5で送受信する情報も同じであり、上記通信セッション鍵(Ks_tmbc)により暗号化されている)。また、以下の説明では逐一述べないが、暗号化された端末情報等は、通信セッション鍵(Ks_tmbc)による復号される。
The processes after S2 will be described.
First, the server 1 transmits terminal information (for example, a terminal ID, a business ID, a store ID, a store terminal ID, etc.), which is predetermined various information related to the settlement terminal 10 to be shipped, to the center device 2 (S2). This terminal information is encrypted with the communication session key (the information transmitted and received in the following S3, S4, and S5 is the same, and is encrypted with the communication session key (Ks_tmbc)). Although not described in the following description, the encrypted terminal information and the like are decrypted with the communication session key (Ks_tmbc).
尚、上記通信セッション鍵(Ks_tmbc)は、サーバ1−センタ装置2間のデータ送受信に用いる暗号鍵であり、後述する決済端末10−センタ装置2間のデータ送受信に用いるセッション鍵G(ks)とは別のものである。同様に、上述した公開鍵(Kp_tm,Kp_bc)も、サーバ1−センタ装置2間の通信に用いるものであり、上述した7種類の鍵における公開鍵B,Eとは別のものである。 The communication session key (Ks_tmbc) is an encryption key used for data transmission / reception between the server 1 and the center apparatus 2, and a session key G (ks) used for data transmission / reception between the settlement terminal 10 and the center apparatus 2 described later. Is another. Similarly, the public keys (Kp_tm, Kp_bc) described above are also used for communication between the server 1 and the center apparatus 2, and are different from the public keys B and E in the seven types of keys described above.
センタ装置2は、受信した端末情報を、電子マネー事業者側のみが知り得る(保持する)秘匿鍵である上記“センタ秘匿鍵D(Kcc)”によって暗号化することで上記“センタ秘匿鍵D(Kcc)で暗号化された端末情報”25を生成し、この“暗号化された端末情報”25をサーバ1へ返信する(S3)。また、センタ装置2は、受信した端末情報を不揮発メモリ3に記憶しておく。サーバ1は上記返信された“暗号化された端末情報”25を、自己の不図示の不揮発性メモリ等に記憶する(送信した端末情報に対応付けて記憶する)。 The center device 2 encrypts the received terminal information with the “center secret key D (Kcc)”, which is a secret key that only the electronic money business operator can know (hold), thereby the “center secret key D”. The terminal information “25 encrypted with (Kcc)” is generated, and this “encrypted terminal information” 25 is returned to the server 1 (S3). Further, the center device 2 stores the received terminal information in the nonvolatile memory 3. The server 1 stores the returned “encrypted terminal information” 25 in its own non-illustrated nonvolatile memory or the like (stores it in association with the transmitted terminal information).
また、センタ装置2は、自装置に係わる所定の情報であるセンタ情報(事業者コード,ネットワークアドレスなど)を、サーバ1へ送信する(S4)。サーバ1は、受信したセンタ情報を、決済端末メーカ側のみが知り得る(保持する)秘匿鍵である上記“端末共有鍵A(Kct)”で暗号化することで上記“端末共有鍵A(Kct)で暗号化されたセンタ情報”35を生成し、この“暗号化されたセンタ情報”35をセンタ装置2へ返信する(S5)。また、サーバ1は受信したセンタ情報を記憶しておく。センタ装置2は、上記返信された“暗号化されたセンタ情報”35を、不揮発メモリ3に記憶する。 Further, the center device 2 transmits center information (such as an operator code and a network address), which is predetermined information related to the own device, to the server 1 (S4). The server 1 encrypts the received center information with the “terminal shared key A (Kct)”, which is a secret key that only the settlement terminal manufacturer can know (hold), thereby the “terminal shared key A (Kct)”. ) To generate “encrypted center information” 35 and return this “encrypted center information” 35 to the center apparatus 2 (S5). The server 1 stores the received center information. The center device 2 stores the returned “encrypted center information” 35 in the nonvolatile memory 3.
上述した前準備処理におけるS2とS3の処理は、出荷する各決済端末毎に対応して行うものである。よって、例えば出荷する決済端末10が100台あれば、S2とS3の処理を100回行うことになる。一方、S4とS5の処理は、基本的に、1回だけ行えばよい。 The processes of S2 and S3 in the preparation process described above are performed corresponding to each settlement terminal to be shipped. Therefore, for example, if there are 100 settlement terminals 10 to be shipped, the processes of S2 and S3 are performed 100 times. On the other hand, the processes of S4 and S5 are basically performed only once.
以上説明した前準備処理を完了したら、その結果を用いて、端末メーカ側では、上記“出荷する決済端末10”に対して上記出荷設定処理を行う。尚、この処理はサーバ1と“出荷する決済端末10”とを接続して通信可能な状態として行う。 When the preparatory process described above is completed, the terminal maker performs the shipping setting process on the “shipping settlement terminal 10” using the result. This process is performed in a state where the server 1 and the “shipping settlement terminal 10” are connected to communicate with each other.
すなわち、例えば作業員等による指示操作により、“出荷する決済端末10”において、その内部で上記任意の上記公開鍵ペア(“端末の公開鍵B(Kpt)”及び“端末の秘密鍵C(Kst)”)を生成させて不揮発性メモリ24に記憶させる(S6)。 That is, for example, by an instruction operation by a worker or the like, in the “payment terminal 10 to be shipped”, the arbitrary public key pair (“terminal public key B (Kpt)” and “terminal secret key C (Kst) ) ") Is generated and stored in the nonvolatile memory 24 (S6).
その後、サーバ1から“出荷する決済端末10”に対して、上述した“端末共有鍵A(Kct)”、当該“出荷する決済端末10”の端末情報(端末ID,店舗ID,店舗端末IDなど)、当該“出荷する決済端末10”に端末情報が暗号化されてなる上記“センタ秘匿鍵D(Kcc)で暗号化された端末情報”25、更に上記S4の処理で取得したセンタ情報を送信して、そのLSI20の不揮発性メモリ24に記憶させる(S7,S8,S9)。よって、図1には示していないが、端末情報(暗号化されていない)やセンタ情報も不揮発性メモリ24に記憶される。また、既に述べた通り上記プログラム30も設定されて不揮発性メモリ24に記憶される。 Thereafter, the “terminal shared key A (Kct)” and the terminal information (terminal ID, store ID, store terminal ID, etc.) of the “shipment settlement terminal 10” described above are sent from the server 1 to the “shipment settlement terminal 10”. ), “Terminal information encrypted with the center secret key D (Kcc)” 25 obtained by encrypting the terminal information to the “payment terminal 10 to be shipped”, and the center information acquired in the process of S4. Then, it is stored in the nonvolatile memory 24 of the LSI 20 (S7, S8, S9). Therefore, although not shown in FIG. 1, terminal information (not encrypted) and center information are also stored in the nonvolatile memory 24. As described above, the program 30 is also set and stored in the nonvolatile memory 24.
また、UI(ユーザインタフェース)表示、つまりディスプレイ等への任意の情報表示や、利用履歴(明細)記録等の非セキュリティ部分の電子マネー事業者のアプリケーションを、決済端末10のROM13(フラッシュメモリやEEPROM等)に格納する。 Also, the application of the electronic money business operator of the non-security part such as UI (user interface) display, that is, arbitrary information display on the display or the like, and the usage history (details) record, etc. is transferred to the ROM 13 (flash memory or EEPROM of the payment terminal 10). Etc.).
以上の出荷前の処理を経て、“出荷する決済端末10”が出荷されて任意の店舗内に設置されたら、この決済端末10はセンタ装置20と通信を行って中間コード31、そのセキュリティデータ32を取得することで、運用可能状態となる。これについて、以下、図2だけでなく図3も参照して説明する。 After the above pre-shipment processing, when the “shipping payment terminal 10” is shipped and installed in an arbitrary store, the payment terminal 10 communicates with the center device 20 to communicate the intermediate code 31 and its security data 32. By obtaining, it becomes operational. This will be described below with reference to FIG. 3 as well as FIG.
上記設置後、電源ONされて起動された決済端末10において、端末管理CPU11は、まず、上記電子マネー事業者の“非セキュリティ部分のプログラム”を、RAM12にロードして実行する。このプログラム処理では、まず、図2に示すStep11、Step12、Step13の処理(その端末管理CPU11の処理)を実行する。尚、その際、LSI20のCPU21は、上記プログラム30により上記アプリ等格納処理を実行している。以下に、まず、これら各Stepの処理について説明する。 After the installation, in the payment terminal 10 that is turned on and activated, the terminal management CPU 11 first loads the “non-security part program” of the electronic money business operator into the RAM 12 and executes it. In this program processing, first, the processing of Step 11, Step 12, and Step 13 shown in FIG. 2 (processing of the terminal management CPU 11) is executed. At that time, the CPU 21 of the LSI 20 executes the application storage process by the program 30. Below, the process of each of these Steps is demonstrated first.
Step11; 端末管理CPU11は、まず、LSI20と通信を行い、LSI20が中間コード31とセキュリティデータ32を保持しているか否かをチェックする(S10)。そして、中間コード31等を既に保持している場合には、図示のStep14以降の処理を実行可能な状態へ移行する。つまり、中間コード31等の配信を受ける為の処理は行わない。 Step 11: The terminal management CPU 11 first communicates with the LSI 20 to check whether the LSI 20 holds the intermediate code 31 and the security data 32 (S10). If the intermediate code 31 or the like is already held, the process proceeds to a state where the processing from Step 14 shown in the figure can be executed. That is, processing for receiving distribution of the intermediate code 31 or the like is not performed.
一方、中間コード31等を保持していない(未配信)の場合には、中間コード31等の配信を受ける為に、まず、ネットワーク7を介してセンタ装置2に接続し、公開鍵の交換を行う。これは、図3の最初の処理に示すように、決済端末10の端末管理CPU11は、LSI20の不揮発性メモリ24に保持されている上記“端末の公開鍵B(Kpt)”をLSI20から取得して、これをセンタ装置2へ送信する。センタ装置2は、自己の不揮発メモリ3に保持されている上記“センタ公開鍵E(Kpc)”を決済端末10へ送信する。端末管理CPU11は、受信した“センタ公開鍵E(Kpc)”をLSI20に渡して揮発性メモリ23に記憶させる。 On the other hand, when the intermediate code 31 or the like is not held (undistributed), first, to receive the distribution of the intermediate code 31 or the like, first, it is connected to the center apparatus 2 via the network 7 and the public key is exchanged Do. As shown in the first process of FIG. 3, the terminal management CPU 11 of the payment terminal 10 acquires the “terminal public key B (Kpt)” held in the nonvolatile memory 24 of the LSI 20 from the LSI 20. This is transmitted to the center device 2. The center device 2 transmits the “center public key E (Kpc)” held in its own nonvolatile memory 3 to the settlement terminal 10. The terminal management CPU 11 passes the received “center public key E (Kpc)” to the LSI 20 and stores it in the volatile memory 23.
Step12; 相互認証処理を実行し、認証成功したら“セッション鍵G(Ks)”を生成する。“セッション鍵G(Ks)”は、相互認証処理の際に得られる情報(例えば乱数)を用いて、決済端末10、センタ装置2でそれぞれ生成するものであり、同じものが生成される。 Step 12; Execute mutual authentication processing, and generate “session key G (Ks)” when authentication is successful. The “session key G (Ks)” is generated by the payment terminal 10 and the center device 2 using information (for example, random numbers) obtained in the mutual authentication process, and the same one is generated.
上記相互認証処理では、予め上記前準備処理によって得られてセンタ装置2、決済端末10にそれぞれ格納されている上記“センタ秘匿鍵D(Kcc)で暗号化された端末情報”25、端末情報、“端末共有鍵A(Kct)で暗号化されたセンタ情報”35、センタ情報等を用いて、相互に、通信相手が正当なものであるか否かを確認する。これによって、センタ装置2にとっては誤って第3者の端末に中間コード31等を配信してしまうことなく、また決済端末10にとっては誤って第3者の装置から不正なプログラムをダウンロードすることで内部で(特にLSI20内で)何らかの不正処理が実行されてしまうことなく、安全・確実に中間コード31等が決済端末10に配信されるようにできる。 In the mutual authentication process, the “terminal information encrypted with the center secret key D (Kcc)” 25 obtained by the pre-preparation process and stored in the center device 2 and the payment terminal 10 respectively, terminal information, Using the “center information encrypted with the terminal shared key A (Kct)” 35, center information, etc., it is mutually confirmed whether or not the communication partner is valid. As a result, the center device 2 does not mistakenly distribute the intermediate code 31 or the like to the third party terminal, and the settlement terminal 10 erroneously downloads an unauthorized program from the third party device. The intermediate code 31 and the like can be delivered to the payment terminal 10 safely and reliably without any unauthorized processing being executed internally (particularly in the LSI 20).
尚、Step12の処理に関しては、詳しくは後に図3を参照して説明する。
Step13; 上記相互認証成功した場合、決済端末10は、センタ装置2に対して中間コード31とセキュリティデータ32を要求する。この要求を受けたセンタ装置2は、上記不揮発メモリ3に格納されている中間コード31及びそのセキュリティデータ32を、上記生成した“セッション鍵G(Ks)”を用いてそれぞれ暗号化して、上記“暗号化中間コード”33及び“暗号化セキュリティデータ”34を生成して決済端末10へ送信する。これを受信した決済端末10側では、LSI20内において、これら“暗号化中間コード”33及び“暗号化セキュリティデータ”34を、上記生成した“セッション鍵G(Ks)”で復号して、中間コード31及びそのセキュリティデータ32を得て、これらのコード31、データ32を不揮発性メモリ24に格納する。
Details of Step 12 will be described later with reference to FIG.
Step 13; When the mutual authentication is successful, the payment terminal 10 requests the intermediate code 31 and the security data 32 from the center device 2. Upon receiving this request, the center device 2 encrypts the intermediate code 31 and its security data 32 stored in the non-volatile memory 3 using the generated “session key G (Ks)”, respectively. The encrypted intermediate code “33” and “encrypted security data” 34 are generated and transmitted to the payment terminal 10. Upon receiving this, the settlement terminal 10 side decrypts these “encrypted intermediate code” 33 and “encrypted security data” 34 with the generated “session key G (Ks)” in the LSI 20, and outputs the intermediate code. 31 and its security data 32 are obtained, and these code 31 and data 32 are stored in the nonvolatile memory 24.
尚、復号化した後、この中間コード31及びそのセキュリティデータ32の検証を行い、検証結果がOKである場合に、これらのコード/データを不揮発性メモリ24に格納する。尚、この検証処理は、本発明には特に関係ないので特に詳細には説明しないが、例えばセンタ装置2は中間コード31のハッシュ値を生成してこのハッシュ値も一緒に送信し、LSI20はこのハッシュ値を用いて検証を行うものである。 After decryption, the intermediate code 31 and its security data 32 are verified. If the verification result is OK, these codes / data are stored in the nonvolatile memory 24. This verification process is not particularly relevant to the present invention and will not be described in detail. For example, the center device 2 generates a hash value of the intermediate code 31 and transmits this hash value together, and the LSI 20 Verification is performed using a hash value.
以上で中間コード31等は安全・確実に決済端末10に配信され、センタ装置2−決済端末10間の通信処理は終了する。通信処理終了したら、センタ装置2、決済端末10は、それぞれ“セッション鍵G(Ks)”、相手から渡された公開鍵を消去する。 Thus, the intermediate code 31 and the like are delivered to the settlement terminal 10 safely and reliably, and the communication process between the center device 2 and the settlement terminal 10 is completed. When the communication process ends, the center device 2 and the settlement terminal 10 delete the “session key G (Ks)” and the public key delivered from the other party, respectively.
以上により、決済端末10のセキュリティ機能(セキュアな電子マネー決済処理機能)の活性化が完了し、電子マネー決済処理が可能となる。
ここで、図3には、上記Step12の処理を詳細に説明する為のフロー図を示す。
As described above, activation of the security function (secure electronic money payment processing function) of the payment terminal 10 is completed, and electronic money payment processing becomes possible.
Here, FIG. 3 shows a flowchart for explaining the processing of Step 12 in detail.
尚、以下の説明では逐一述べないが、図3における決済端末10側の処理は、基本的にLSI20内のCPU21が実行するものであり、端末管理CPU11はセンタ装置2−LSI20間で送受信されるパケットの中継・転送を行うものである。 Although not described one by one in the following description, the processing on the settlement terminal 10 side in FIG. 3 is basically executed by the CPU 21 in the LSI 20, and the terminal management CPU 11 is transmitted and received between the center device 2 and the LSI 20. It relays and forwards packets.
以下、図3を参照して上記Step12の処理(相互認証処理)について説明する。
図3においては最初にStep11の処理例(公開鍵B,Eの交換)が示してあり、これについては既に説明してある。
Hereinafter, the processing of Step 12 (mutual authentication processing) will be described with reference to FIG.
In FIG. 3, the processing example of Step 11 (exchange of public keys B and E) is shown first, which has already been described.
図3に示す相互認証処理では、まず、決済端末10は、その内部で任意の乱数Rtを生成し、また上記出荷設定時に記憶されている自身の端末情報を用いて、この端末情報のハッシュ値を生成する。 In the mutual authentication process shown in FIG. 3, first, the payment terminal 10 generates an arbitrary random number Rt therein, and uses its own terminal information stored at the time of shipment setting, and a hash value of this terminal information Is generated.
そして、これら乱数Rt、端末情報ハッシュ値と、出荷設定時に記憶されている“センタ秘匿鍵D(Kcc)で暗号化された端末情報”25とから成るデータ(図示の送信データ41)を、各種鍵により暗号化してセンタ装置2へ送信する。これは、まず、乱数Rtと端末情報ハッシュ値とを自身の秘密鍵(“端末の秘密鍵C(Kst)”)で暗号化し、更にこれら暗号化情報と上記“センタ秘匿鍵D(Kcc)で暗号化された端末情報”25とを上記Step11の処理で取得している“センタ公開鍵E(Kpc)”で暗号化することで図示の暗号化データ42を生成する。そして、この暗号化データ42をセンタ装置2へ送信する。 Then, data (transmission data 41 in the figure) composed of the random number Rt, the terminal information hash value, and the “terminal information encrypted with the center secret key D (Kcc)” 25 stored at the time of shipment setting are variously used. It is encrypted with the key and transmitted to the center device 2. This is done by first encrypting the random number Rt and the terminal information hash value with its own private key (“terminal private key C (Kst)”), and further using these encrypted information and the “center secret key D (Kcc)”. The encrypted terminal information “25” is encrypted with the “center public key E (Kpc)” acquired in the process of Step 11 to generate the encrypted data 42 shown in the figure. Then, this encrypted data 42 is transmitted to the center apparatus 2.
上記暗号化データ42を受信したセンタ装置2は、この暗号化データ42を自身が保持する各種鍵を用いて復号する。すなわち、まず、上記“センタ公開鍵E(Kpc)”による暗号化に対して、“センタ秘密鍵F(Ksc)”を用いて復号することで、「“端末の秘密鍵C(Kst)”で暗号化された乱数Rt及び端末情報ハッシュ値」と“センタ秘匿鍵D(Kcc)で暗号化された端末情報”25とを得る。 The center apparatus 2 that has received the encrypted data 42 decrypts the encrypted data 42 using various keys held by itself. That is, first, the encryption using the “center public key E (Kpc)” is decrypted using the “center secret key F (Ksc)”, so that “the terminal secret key C (Kst)” is used. Encrypted random number Rt and terminal information hash value "and" terminal information encrypted with center secret key D (Kcc) "25 are obtained.
続いて、上記「“端末の秘密鍵C(Kst)”で暗号化された乱数Rt及び端末情報ハッシュ値」を“端末の公開鍵B(Kpt)”で復号して、乱数Rtと端末情報ハッシュ値を得る。更に、上記“センタ秘匿鍵D(Kcc)で暗号化された端末情報”25をセンタ秘匿鍵D(Kcc)で復号して「端末情報」を得る。これらの処理により図示の復号データ43を得ることができる。 Subsequently, the “random number Rt and terminal information hash value encrypted with the“ terminal secret key C (Kst) ”” is decrypted with the “terminal public key B (Kpt)”, and the random number Rt and the terminal information hash are decrypted. Get the value. Further, the “terminal information encrypted with the center secret key D (Kcc)” 25 is decrypted with the center secret key D (Kcc) to obtain “terminal information”. The decoded data 43 shown in the figure can be obtained by these processes.
上記復号処理が正常に行えなかった場合や後述するステップS21,S22の判定で一方でも判定NOであった場合は、処理終了し、それ以降の処理は行われない。よって、当然、中間データ等の配信は行われない。但し、決済端末10に認証失敗を通知してもよい。 If the decoding process cannot be performed normally, or if the determination in steps S21 and S22 described later is both NO, the process ends, and the subsequent processes are not performed. Therefore, naturally, distribution of intermediate data or the like is not performed. However, the payment terminal 10 may be notified of authentication failure.
一方、上記復号処理が正常完了して上記復号データ43を得ることができた場合には、続いて、この復号データ43における「端末情報」と、上記S2の処理の際に取得して登録してあった端末情報とが一致するか否かをチェックする(上記の通り、基本的には複数の端末情報(例えば100台分の端末情報)が記憶されているので、その中で一致するものがあるか否かをチェックする)。つまり、通信相手の装置が、登録済みの決済端末10であるか否かを確認する(ステップS21)。 On the other hand, when the decryption process is normally completed and the decryption data 43 can be obtained, subsequently, the “terminal information” in the decryption data 43 is acquired and registered in the process of S2. The terminal information is checked to see if it matches (as described above, basically a plurality of pieces of terminal information (for example, terminal information for 100 devices) are stored, so that there is a match among them. Check if there is any). That is, it is confirmed whether or not the communication partner apparatus is the registered payment terminal 10 (step S21).
端末情報が一致する場合には(ステップS21,YES)、続いてこの端末情報のハッシュ値を求め(尚、ハッシュ値の生成アルゴリズムは、上記決済端末10と同じである)、このハッシュ値が上記復号データ43における端末情報ハッシュ値と一致するか否かをチェックし(ステップS22)、一致する場合には(ステップS22,YES)、通信相手の決済端末10が正当なものであるものとして端末認証成功と判定し、処理を続行する。 If the terminal information matches (step S21, YES), then the hash value of the terminal information is obtained (note that the hash value generation algorithm is the same as that of the payment terminal 10). It is checked whether or not it matches the terminal information hash value in the decrypted data 43 (step S22). If they match (step S22, YES), terminal authentication is performed assuming that the settlement terminal 10 of the communication partner is valid. Judges success and continues processing.
また、上記ステップS21の処理によって、通信相手の決済端末10を特定できる(登録されている決済端末のうちのどの決済端末であるのか分かる)。よって、例えば、登録されている(つまり、出荷されているはずの)各決済端末10のうち、どの決済端末10に中間コード31等を配信済み(または未配信)であるか等を管理することも可能となる。 In addition, through the processing in step S21, the payment terminal 10 of the communication partner can be specified (which payment terminal is registered among the registered payment terminals). Thus, for example, managing which payment terminal 10 among the registered payment terminals 10 (that should have been shipped) has been distributed (or undistributed) the intermediate code 31 etc. Is also possible.
一方、上記ステップS21,S22の何れかで不一致の判定(NO)となった場合には、上記の通り、処理終了し、それ以降の処理は行われない。よって、当然、中間データ等の配信は行われない。 On the other hand, if it is determined that there is a mismatch (NO) at any of the steps S21 and S22, the process ends as described above, and the subsequent processes are not performed. Therefore, naturally, distribution of intermediate data or the like is not performed.
上記ステップS21,S22の判定がYESとなり認証成功した場合には、続いて、まず、上記取得した乱数Rtを揮発性メモリ4に記憶する。そして、任意の乱数Rcを生成し、更に自己のセンタ情報のハッシュ値を生成する。そして、これら乱数Rc、センタ情報ハッシュ値と、上記“端末共有鍵A(Kct)で暗号化されたセンタ情報”35とから成るデータ(図示の応答データ44)を、各種鍵により暗号化して図示の暗号化データ45を生成して、これを接続先の決済端末10へ送信する。 If the determinations in steps S21 and S22 are YES and the authentication is successful, the acquired random number Rt is first stored in the volatile memory 4. Then, an arbitrary random number Rc is generated, and further a hash value of its own center information is generated. Then, the data (the response data 44 shown) composed of the random number Rc, the center information hash value, and the “center information encrypted with the terminal shared key A (Kct)” 35 is encrypted with various keys and shown in the figure. Encrypted data 45 is generated and transmitted to the settlement terminal 10 at the connection destination.
これは、まず、乱数Rcとセンタ情報ハッシュ値とを“センタ秘密鍵F(Ksc)”で暗号化し、更にこれら暗号化情報と上記“端末共有鍵A(Kct)で暗号化されたセンタ情報”35とを上記Step11の処理で取得している“端末の公開鍵B(Kpt)”で暗号化することで図示の暗号化データ45を生成する。そして、この暗号化データ45を接続先の決済端末10へ送信する。 First, the random number Rc and the center information hash value are encrypted with the “center secret key F (Ksc)”, and further, the encrypted information and the “center information encrypted with the terminal shared key A (Kct)”. 35 is encrypted with the “terminal public key B (Kpt)” acquired in the process of Step 11 to generate the encrypted data 45 shown in the figure. Then, the encrypted data 45 is transmitted to the connection destination payment terminal 10.
この暗号化データ45を受信した決済端末10は、この暗号化データ45を自身が保持する各種鍵を用いて復号する。すなわち、まず、上記“端末の公開鍵B(Kpt)”による暗号化に対しては、“端末の秘密鍵C(Kst)”で復号することで、「“センタ秘密鍵F(Ksc)”で暗号化された乱数Rc及びセンタ情報ハッシュ値」と“端末共有鍵A(Kct)で暗号化されたセンタ情報”35を得る。続いて、上記「“センタ秘密鍵F(Ksc)”で暗号化された乱数Rc及びセンタ情報ハッシュ値」を“センタ公開鍵E(Kpc)”で復号して、乱数Rcとセンタ情報ハッシュ値を得る。また、“端末共有鍵A(Kct)で暗号化されたセンタ情報”35を、端末共有鍵A(Kct)で復号して「センタ情報」を得る。これらの処理により図示の復号データ46を得ることができる。 The payment terminal 10 that has received the encrypted data 45 decrypts the encrypted data 45 using various keys held by itself. That is, first, the encryption using the “terminal public key B (Kpt)” is decrypted by using the “terminal secret key F (Ksc)” by decrypting with the “terminal secret key C (Kst)”. Encrypted random number Rc and center information hash value "and" center information encrypted with terminal shared key A (Kct) "35 are obtained. Subsequently, the “random number Rc and center information hash value encrypted with the“ center secret key F (Ksc) ”” is decrypted with the “center public key E (Kpc)”, and the random number Rc and the center information hash value are obtained. obtain. Further, “center information encrypted with the terminal shared key A (Kct)” 35 is decrypted with the terminal shared key A (Kct) to obtain “center information”. The decoded data 46 shown in the figure can be obtained by these processes.
そして、この復号データ46における「センタ情報」が、上記出荷設定時に記憶されているセンタ情報と一致するか否かをチェックする(ステップS23)。一致する場合には(ステップS23,YES)、続いてこのセンタ情報のハッシュ値を求め、このハッシュ値が上記復号データ46におけるセンタ情報ハッシュ値と一致するか否かをチェックし(ステップS24)、一致する場合には(ステップS24,YES)、通信相手のセンタ装置2が正当なものであるとしてセンタ認証成功と判定し、処理を続行する。尚、上記取得した乱数Rcは揮発性メモリ23等に記憶しておく。 Then, it is checked whether or not the “center information” in the decrypted data 46 matches the center information stored at the time of shipment setting (step S23). If they match (YES in step S23), then the hash value of this center information is obtained, and it is checked whether or not this hash value matches the center information hash value in the decrypted data 46 (step S24). If they match (YES in step S24), it is determined that the center device 2 of the communication partner is valid and the center authentication is successful, and the processing is continued. The acquired random number Rc is stored in the volatile memory 23 or the like.
一方、上記各種鍵による暗号化データ45の復号化処理が成功しなかった場合、または上記ステップS23,S24の何れか一方でも不一致の判定(NO)となった場合には、処理終了し、それ以降の処理は行われない。よって、当然、中間データ31等のダウンロードは行われない。但し、センタ装置2に対して認証失敗を通知してもよい。 On the other hand, if the decryption process of the encrypted data 45 using the various keys is not successful, or if any one of the steps S23 and S24 is determined to be inconsistent (NO), the process ends, No further processing is performed. Therefore, naturally, the intermediate data 31 and the like are not downloaded. However, the center device 2 may be notified of the authentication failure.
尚、上記乱数の一致も認証成功の条件としてもよい。この場合、センタ装置2は上記復号データ43における乱数Rtも上記暗号化データ45に含めて送信し、決済端末10は受信した暗号化データ45に含まれる乱数Rtが自己が生成している乱数Rtと一致するか否かをチェックする処理も上記ステップS23、S24の処理に加えて行うようにしてもよい。尚、乱数Rcに関しても同様にしてセンタ装置2側で乱数Rc一致か否かをチェックするようにしてもよい。 The random number match may be a condition for successful authentication. In this case, the center device 2 transmits the random number Rt in the decrypted data 43 including the encrypted data 45, and the settlement terminal 10 generates the random number Rt generated by the random number Rt included in the received encrypted data 45. In addition to the processes in steps S23 and S24, a process for checking whether or not the same may be performed. Note that the random number Rc may be similarly checked on the center device 2 side as to whether the random number Rc matches.
尚、上記ステップS22、ステップS24の処理は、必ずしも必須の処理ではなく、ステップS21、ステップS23の処理のみを行っても良い。つまり、センタ装置2はステップS21の判定がYESである場合には通信相手の決済端末10を認証成功と判定してよく、決済端末10はステップS23の判定がYESである場合には通信相手のセンタ装置2を認証成功と判定してもよい。勿論、この場合には、上記端末情報ハッシュ値やセンタ情報ハッシュ値は、生成する必要はないしデータ41、44に含める必要もない。 Note that the processes in steps S22 and S24 are not necessarily essential, and only the processes in steps S21 and S23 may be performed. That is, if the determination in step S21 is YES, the center apparatus 2 may determine that the communication partner's payment terminal 10 is successful, and if the determination in step S23 is YES, the payment terminal 10 The center device 2 may be determined to be successful. Of course, in this case, the terminal information hash value and the center information hash value need not be generated and need not be included in the data 41 and 44.
上記センタ装置2、決済端末10はどちらも、上記のように認証成功と判定した場合には、図示していないが、更に以下に説明する処理を実行する。
すなわち、センタ装置2、決済端末10の両方とも、上記相互認証処理が成功したときには、自己が生成した乱数と相手から取得した乱数の2つの乱数、すなわち上記乱数Rtと乱数Rcを記憶している。すなわち、相互認証処理によって得られる所定情報を記憶している。これより、センタ装置2、決済端末10の両方とも、この2つの乱数Rtと乱数Rcとに基づいて上記“セッション鍵G(Ks)”を生成する。これは、センタ装置2、決済端末10の両方で同じ“セッション鍵G(Ks)”を生成するものである。つまり、“セッション鍵G(Ks)”の生成アルゴリズムは、何でもよいが(例えば単純な例では「Rt+Rc」とする)、予め各決済端末10とセンタ装置2に、同じ生成アルゴリズムのプログラムを格納しておく。よって、セッション鍵生成に用いるデータが同じであるので(ここでは乱数Rtと乱数Rc)、決済端末10とセンタ装置2は同じセッション鍵を生成することになる。
When both the center device 2 and the payment terminal 10 determine that the authentication is successful as described above, the center device 2 and the payment terminal 10 further execute processing described below, although not shown.
That is, both the center device 2 and the payment terminal 10 store two random numbers, that is, a random number generated by itself and a random number acquired from the other party, that is, the random number Rt and the random number Rc when the mutual authentication process is successful. . That is, the predetermined information obtained by the mutual authentication process is stored. Thus, both the center device 2 and the payment terminal 10 generate the “session key G (Ks)” based on the two random numbers Rt and Rc. This is to generate the same “session key G (Ks)” in both the center apparatus 2 and the settlement terminal 10. In other words, the generation algorithm of “session key G (Ks)” may be anything (for example, “Rt + Rc” in a simple example), but the same generation algorithm program is stored in advance in each settlement terminal 10 and center device 2. Keep it. Therefore, since the data used for session key generation is the same (here, random number Rt and random number Rc), payment terminal 10 and center apparatus 2 generate the same session key.
そして、上記Step13で説明してある通り、中間コード31等の配信処理は、“セッション鍵G(Ks)”を用いた暗号化通信により行うことになる。つまり、センタ装置2は中間コード31等を“セッション鍵G(Ks)”で暗号化して決済端末10に送信し、これを受信した決済端末10(そのLSI20)はこの暗号化情報を自己の“セッション鍵G(Ks)”を用いて復号することで、安全に中間コード31等を取得することができる。 Then, as described in Step 13 above, the distribution process of the intermediate code 31 and the like is performed by encrypted communication using the “session key G (Ks)”. That is, the center apparatus 2 encrypts the intermediate code 31 and the like with the “session key G (Ks)” and transmits it to the payment terminal 10, and the payment terminal 10 (the LSI 20) that receives this encrypts the encrypted information with its own “ By decrypting using the session key G (Ks) ", the intermediate code 31 and the like can be obtained safely.
上述した処理により、決済端末10は安全・確実に中間コード31及びそのセキュリティデータ32を得ることができ、ICカード等との電子マネー決済処理が可能となり、運用開始することができる。 Through the processing described above, the payment terminal 10 can obtain the intermediate code 31 and its security data 32 safely and reliably, and can perform electronic money payment processing with an IC card or the like and can start operation.
運用開始後の処理である図2に示すStep14、Step15、Step16の処理は、Step16の撤去処理においてLSI20内の中間コード31,セキュリティデータ32等を削除する点以外は、既存の処理と同じであってよい。よって、以下、簡単に説明するのみとする。 The steps 14, 15, and 16 shown in FIG. 2, which are the processes after the start of operation, are the same as the existing processes except that the intermediate code 31 and the security data 32 in the LSI 20 are deleted in the removal process of Step 16. It's okay. Therefore, only a brief description will be given below.
まず、Step14の決済処理について説明する。
決済端末10がPOSレジ5等の上位端末から決済指示を受けると、端末管理CPU11は、明細を作成してこれを仮明細としてフラッシュやEEPROMなどの不揮発性メモリ(ROM13)に記憶する。また、UI14による表示制御によって顧客にICカードの提示を促す等した後、LSI20に決済指示を出す。
First, the settlement process in Step 14 will be described.
When the payment terminal 10 receives a payment instruction from a higher-level terminal such as the POS cash register 5, the terminal management CPU 11 creates a specification and stores it as a provisional specification in a nonvolatile memory (ROM 13) such as a flash or an EEPROM. Further, after prompting the customer to present an IC card by display control using the UI 14, a settlement instruction is issued to the LSI 20.
LSI20のCPU21は、この決済指示に従って、プログラム30のインタプリタ処理によって中間コード31を解釈・実行することで(その際、セキュリティデータ32を用いる)、ICカード6との(秘匿通信による)電子マネー決済処理を行う。そして、決済処理の完了で明細を確定し、処理結果を端末管理CPU11に通知する。 The CPU 21 of the LSI 20 interprets and executes the intermediate code 31 by the interpreter process of the program 30 in accordance with this settlement instruction (using the security data 32 at that time), thereby making an electronic money settlement with the IC card 6 (through confidential communication). Process. Then, the details are confirmed upon completion of the settlement process, and the processing result is notified to the terminal management CPU 11.
端末管理CPU11は、UI14による表示制御(ディスプレイ表示等)で決済完了を顧客に通知するとともに、上位端末に決済結果を通知する。
次にStep15の締め処理について説明する。
The terminal management CPU 11 notifies the customer of the completion of payment by display control (display display or the like) using the UI 14, and notifies the payment result to the host terminal.
Next, the tightening process in Step 15 will be described.
決済端末10が上位端末から締め指示を受けると、端末管理CPU11は、締め対象の明細情報を作成し、フラッシュやEEPROMなどの不揮発性メモリ(ROM13)に記憶する。また、端末管理CPU11は、LSI20に締め対象の明細情報を渡して暗号化処理を指示する。 When the settlement terminal 10 receives a tightening instruction from the host terminal, the terminal management CPU 11 creates detailed information to be tightened and stores it in a non-volatile memory (ROM 13) such as a flash or an EEPROM. Further, the terminal management CPU 11 passes the detailed information to be tightened to the LSI 20 and instructs the encryption process.
LSI20は、この指示に従って、プログラム30のインタプリタ処理によって中間コード31を解釈・実行することで(その際、セキュリティデータ32を用いる)、上記の明細情報の暗号化を行って、この暗号化明細情報を端末管理CPU11に返信する。 In accordance with this instruction, the LSI 20 interprets and executes the intermediate code 31 by interpreter processing of the program 30 (in this case, using the security data 32), thereby encrypting the above detailed information, and this encrypted detailed information. Is returned to the terminal management CPU 11.
端末管理CPU11は、この暗号化明細情報をセンタ装置2に送信する。送信完了後、端末管理CPU11は、締め情報とセンタ装置2への通信結果を上位端末に通知する。
次に、Step16の店舗の改修や移転・サービス終了時等における決済端末10の撤去に伴う撤去処理について説明する。
The terminal management CPU 11 transmits this encrypted detailed information to the center device 2. After the transmission is completed, the terminal management CPU 11 notifies the upper terminal of the closing information and the communication result to the center device 2.
Next, the removal process associated with removal of the payment terminal 10 at the time of store renovation or relocation / service termination in Step 16 will be described.
決済端末10が上位端末から撤去指示を受けると、端末管理CPU11は、LSI20に対して中間コード31,セキュリティデータ32の削除を指示する。LSI20は、この指示に従い、不揮発性メモリ24に記憶されている中間コード31,セキュリティデータ32を削除して、削除完了を端末管理CPU11に通知する。 When the settlement terminal 10 receives a removal instruction from the host terminal, the terminal management CPU 11 instructs the LSI 20 to delete the intermediate code 31 and the security data 32. In accordance with this instruction, the LSI 20 deletes the intermediate code 31 and the security data 32 stored in the nonvolatile memory 24 and notifies the terminal management CPU 11 of the completion of the deletion.
削除処理の完了を確認した端末管理CPU11は、センタ装置2に対して撤去完了の通知を行う。
以上説明したように、実施例1のシステムによれば、電子マネー事業者は、自己の電子マネーの決済処理に係わるアプリケーション等であって特にセキュリティ仕様を実現するアプリケーション等(「決済処理セキュリティ情報」;本例では中間コード31、セキュリティデータ32)を、第3者(端末メーカ等)に公開することなく、決済端末を機能させるためのアプリケーション等(決済処理セキュリティ情報)を決済端末に設定できる。この設定処理はネットワークを介して行うが、予め実行されている前準備処理等によって得られている暗号化情報や各種鍵を用いることで、安全・確実に上記アプリケーション等を決済端末に配信して設定できる。尚、以下に説明する実施例2〜6の各実施例についても、上記実施例1の効果と同様の効果が得られる(更に、その実施例に固有の効果が得られる場合もある)。
The terminal management CPU 11 confirming the completion of the deletion process notifies the center device 2 of the completion of removal.
As described above, according to the system of the first embodiment, the electronic money business operator is an application related to the payment processing of his / her own electronic money, particularly an application that implements security specifications (“payment processing security information”). In this example, an application or the like (payment processing security information) for causing the payment terminal to function can be set in the payment terminal without exposing the intermediate code 31 and the security data 32) to a third party (terminal manufacturer or the like). This setting process is performed via the network. By using encrypted information and various keys obtained by pre-preparation processes that are executed in advance, the above applications and the like can be securely and reliably distributed to the payment terminal. Can be set. In addition, also in each of Examples 2 to 6 described below, the same effect as that of Example 1 can be obtained (further, an effect unique to the example can be obtained).
次に、以下、実施例2について説明する。
図4は、実施例2におけるプログラム配信システムの構成例を示す図である。
尚、図4のシステムは、ハードウェア構成自体は図1に示すシステムと同じであってよく、同一符号を付してあり、説明は省略する。図1と異なるのは、鍵の格納場所や一部の処理内容であり、以下、主に実施例1とは異なる点について説明する。
Next, Example 2 will be described below.
FIG. 4 is a diagram illustrating a configuration example of a program distribution system according to the second embodiment.
Note that the system of FIG. 4 may have the same hardware configuration as that of the system shown in FIG. What is different from FIG. 1 is the storage location of the key and part of the processing contents, and the following mainly describes differences from the first embodiment.
図4に示す通り、実施例1との違いは、中間コード31,セキュリティデータ32を、不揮発性メモリ24ではなく、揮発性メモリ23に記憶することである。
図5は、実施例2の決済処理セキュリティ情報配信システムの処理シーケンス例を示す図である。
As shown in FIG. 4, the difference from the first embodiment is that the intermediate code 31 and the security data 32 are stored not in the nonvolatile memory 24 but in the volatile memory 23.
FIG. 5 is a diagram illustrating a processing sequence example of the payment processing security information distribution system according to the second embodiment.
図示の通り、図5は、図2に示す実施例1のシーケンスと殆ど同じであり、異なる点についてのみ説明する。すなわち、図2のStep11の代わりに、図示のStep11’の処理を実行する点のみが異なる。 As shown in FIG. 5, FIG. 5 is almost the same as the sequence of the first embodiment shown in FIG. 2, and only different points will be described. That is, only the processing of Step 11 'shown in the drawing is executed instead of Step 11 of FIG.
実施例2では、決済端末10は、中間コード31等の有無を確認する処理(S10)は行わずに、常に、上記S10の判定において中間コード31等を保持していない(未配信)と判定された場合の処理を実行する。よって、図示のStep11’の処理では、決済端末10は、電源ONされたら、上記Step11で説明した「ネットワーク7を介してセンタ装置2に接続し、公開鍵の交換を行う」処理を実行する。そして、Step12,13の処理を実行することで、中間コード31等を取得する。 In the second embodiment, the payment terminal 10 does not perform the process of confirming the presence / absence of the intermediate code 31 (S10), and always determines that the intermediate code 31 or the like is not held (undelivered) in the determination of S10. Execute the process when it is done. Therefore, in the process of Step 11 ′ shown in the figure, when the payment terminal 10 is turned on, the payment terminal 10 executes the process of “connecting to the center device 2 via the network 7 and exchanging public keys” described in Step 11 above. And the intermediate code 31 grade | etc., Is acquired by performing the process of Step12,13.
実施例2では、上記の通り、中間コード31,セキュリティデータ32を揮発性メモリ23に記憶しているので、電源OFFにより消去される。よって、再起動の際には必ずLSI20内には中間コード31,セキュリティデータ32は保持されていない状態であるので、上記ステップS10の処理を行う必要がない。よって、上記Step11の代わりに上記Step11’の処理を実行している。 In the second embodiment, as described above, since the intermediate code 31 and the security data 32 are stored in the volatile memory 23, they are deleted when the power is turned off. Therefore, since the intermediate code 31 and the security data 32 are not always held in the LSI 20 at the time of restart, it is not necessary to perform the process of step S10. Therefore, the process of Step 11 'is executed instead of Step 11.
実施例2では、電源OFFにより必ず中間コード31,セキュリティデータ32は消去されるので、運用中以外(夜間等)で電源OFF状態にあるときに、中間コード31,セキュリティデータ32が漏洩する可能性は無いことになる。また、不揮発性メモリ24のメモリ容量が少なくて済む(少なくとも実施例1の場合と比べて少なくて済む)。 In the second embodiment, since the intermediate code 31 and the security data 32 are always deleted when the power is turned off, there is a possibility that the intermediate code 31 and the security data 32 may be leaked when the power is off except during operation (such as at night). There will be no. Further, the memory capacity of the nonvolatile memory 24 can be small (at least as compared with the case of the first embodiment).
次に、以下、実施例3について説明する。
図6は、実施例3における決済処理セキュリティ情報配信システムの構成例を示す図である。
Next, Example 3 will be described below.
FIG. 6 is a diagram illustrating a configuration example of the payment processing security information distribution system according to the third embodiment.
また、図7は、実施例3の決済処理セキュリティ情報配信システムの処理シーケンス例を示す図である。
尚、図6のシステムは、ハードウェア構成自体は図1に示すシステムと同じであってよく、同一符号を付してあり、説明は省略する。以下、主に実施例1とは異なる点について説明する。
FIG. 7 is a diagram illustrating a processing sequence example of the payment processing security information distribution system according to the third embodiment.
Note that the system of FIG. 6 may have the same hardware configuration as the system shown in FIG. Hereinafter, differences from the first embodiment will be mainly described.
実施例3では、決済端末10において、ダウンロードした中間コード31,セキュリティデータ32を、LSI20内の揮発性メモリ23や不揮発性メモリ24には格納せずに、暗号化された状態でLSI20の外部のROM13に格納しておく。そして、任意のときに、LSI20は、ROM13に格納してある中間コード等(上記の通り暗号化されている)を取得して、これを復号して揮発性メモリ23上に展開する。その後、CPU21は、インタプリタ処理によりこの揮発性メモリ23に格納されている中間コード31等を解釈・実行して、ICカード決済処理等を実行することになる。 In the third embodiment, in the payment terminal 10, the downloaded intermediate code 31 and security data 32 are not stored in the volatile memory 23 or the nonvolatile memory 24 in the LSI 20, but are stored in an encrypted state outside the LSI 20. Stored in the ROM 13. At any time, the LSI 20 acquires the intermediate code or the like (encrypted as described above) stored in the ROM 13, decrypts it, and expands it on the volatile memory 23. Thereafter, the CPU 21 interprets and executes the intermediate code 31 and the like stored in the volatile memory 23 by interpreter processing, and executes IC card settlement processing and the like.
尚、図6には、中間コード31等を揮発性メモリ23上に展開済みの状態を示してある。これは、一見、図4の実施例2と同様に見えるが、実施例2では中間コード等の保存場所が揮発性メモリ23であるのに対して、本例では中間コード等の保存場所はROM13であり、揮発性メモリ23上には一時的に記憶されるものである。 FIG. 6 shows a state in which the intermediate code 31 and the like have been developed on the volatile memory 23. At first glance, this looks similar to the second embodiment of FIG. 4, but in the second embodiment, the storage location for the intermediate code or the like is the volatile memory 23, whereas in this embodiment the storage location for the intermediate code or the like is the ROM 13. And is temporarily stored on the volatile memory 23.
また、実施例2では上記の通り、電源OFF状態にあるときに中間コード31,セキュリティデータ32が漏洩する可能性は無いという効果が得られるが、その一方で、電源OFF後に再起動した際には必ず、LSI20内に中間コード31等が無い状態となっている為、再度、センタ装置2にアクセスして中間コード等をダウンロードする必要があるが、実施例3においてはROM13に格納してある中間コード等(暗号化)を取得して復号化すれば済むので、この様な手間が必要無くなる。 Further, in the second embodiment, as described above, there is an effect that there is no possibility that the intermediate code 31 and the security data 32 are leaked when the power is turned off. Since there is always no intermediate code 31 or the like in the LSI 20, it is necessary to access the center device 2 again to download the intermediate code or the like, but in the third embodiment, it is stored in the ROM 13. Since it is only necessary to acquire and decrypt the intermediate code or the like (encryption), such trouble is not necessary.
更に、実施例3では、複数種類の電子マネーアプリケーションを扱う場合に、より大きな効果を奏するものとなる。すなわち、この場合、例えば後に実施例5等で説明するように、中間コード31等を不揮発性メモリ24に格納する場合には、複数種類の電子マネーそれぞれに対応する中間コード31等を格納する必要がある為、その分、不揮発性メモリ24のメモリ容量を大きくする必要がある。 Furthermore, in the third embodiment, a greater effect can be obtained when a plurality of types of electronic money applications are handled. That is, in this case, as described later in the fifth embodiment, when the intermediate code 31 or the like is stored in the nonvolatile memory 24, it is necessary to store the intermediate code 31 or the like corresponding to each of a plurality of types of electronic money. Therefore, it is necessary to increase the memory capacity of the nonvolatile memory 24 accordingly.
これに対して、実施例3では、複数種類の電子マネーそれぞれに対応する中間コード等を、全て、上記の通り暗号化してROM13に格納するので、不揮発性メモリ24のメモリ容量の削減効果が、より大きなものとなる。また、ROM13に格納されている各種電子マネーの暗号化中間コード36等のうち任意の電子マネーの暗号化中間コード36等のみを復号化して揮発性メモリ23に格納すればよいので、複数種類の電子マネーに対応する場合でも揮発性メモリ23のメモリ容量を大きくする必要はない(実施例2において複数種類の電子マネーに対応する場合には、揮発性メモリ23のメモリ容量を大きくする必要がある)。これは、例えば、3種類の電子マネーa,b,cに対応する場合を例にすると、ROM13にはこれら各種電子マネーa,b,cそれぞれに対応する暗号化中間コード36等が格納されることになるが、例えば電子マネーaに対応するICカードとの決済処理を行う際には、LSI20は電子マネーaに対応する暗号化中間コード36等のみをROM13から取得して復号化して揮発性メモリ23上に一時的に展開し、これを用いて決済処理を行い、決済処理完了したらメモリ23上から削除すればよい。 On the other hand, in the third embodiment, all the intermediate codes corresponding to each of a plurality of types of electronic money are encrypted and stored in the ROM 13 as described above, so that the memory capacity of the nonvolatile memory 24 can be reduced. It will be bigger. Further, only the encrypted intermediate code 36 of any electronic money among the encrypted intermediate codes 36 of various electronic money stored in the ROM 13 need only be decrypted and stored in the volatile memory 23. Even when dealing with electronic money, it is not necessary to increase the memory capacity of the volatile memory 23 (when dealing with multiple types of electronic money in the second embodiment, it is necessary to increase the memory capacity of the volatile memory 23. ). In this case, for example, when the case corresponding to three types of electronic money a, b, and c is taken as an example, the ROM 13 stores encrypted intermediate codes 36 and the like corresponding to these various types of electronic money a, b, and c. However, for example, when performing settlement processing with an IC card corresponding to the electronic money a, the LSI 20 obtains only the encrypted intermediate code 36 corresponding to the electronic money a from the ROM 13 and decrypts it to make it volatile. The data is temporarily expanded on the memory 23, and payment processing is performed using the data. When the payment processing is completed, the data may be deleted from the memory 23.
以下、上述した実施例3について更に詳しく説明する。
まず、上記の通り中間コード等は暗号化された状態でROM13に格納されるが、これは図6に示す例では、“端末の公開鍵B(Kpt)で暗号化された中間コード”36(暗号化中間コード36という場合もある)、“端末の公開鍵B(Kpt)で暗号化されたセキュリティデータ”37(暗号化セキュリティデータ37という場合もある)となっている。
Hereinafter, Example 3 described above will be described in more detail.
First, as described above, the intermediate code and the like are stored in the ROM 13 in an encrypted state. In the example shown in FIG. 6, this is “an intermediate code encrypted with the terminal public key B (Kpt)” 36 ( In some cases, it is referred to as an encrypted intermediate code 36), and “security data encrypted with the terminal's public key B (Kpt)” 37 (also referred to as encrypted security data 37).
すなわち、実施例3の図7のステップ13’では、上記実施例1等と同様にセンタ装置2は中間コード31等をセッション鍵G(ks)で暗号化して配信してくるのが(上記暗号化中間コード33、暗号化セキュリティデータ34を配信してくる)、これをそのままROM13に格納するわけではない。セッション鍵G(ks)は、センタ装置2との通信の際に一時的に生成・使用されるものであり、通信完了と共に消去されるので、後で復号化できなくなるからである。 That is, in step 13 ′ of FIG. 7 of the third embodiment, the center device 2 encrypts the intermediate code 31 and the like with the session key G (ks) and distributes the same as in the first embodiment (the above encryption). The intermediate code 33 and the encrypted security data 34 are distributed), which are not stored in the ROM 13 as they are. This is because the session key G (ks) is temporarily generated and used at the time of communication with the center apparatus 2 and is deleted upon completion of communication, so that it cannot be decrypted later.
これより、決済端末10においては、図7のステップ13’に示すように、端末管理CPU11は、配信されてきた暗号化中間コード33等をLSI20に渡し、LSI20は、上記実施例1等と同様にセッション鍵G(ks)を用いて暗号化中間コード33等を復号して中間コード31等を取得してその検証等を行った後、検証OKであれば、取得した中間コード31等を自己の“端末の公開鍵B(Kpt)”で暗号化して上記暗号化中間コード36、暗号化セキュリティデータ37を生成して、これらをROM13に格納する。これら暗号化データ36,37の復号は“端末の秘密鍵C(Kst)”を用いて行うことになる。 As a result, in the payment terminal 10, as shown in step 13 ′ of FIG. 7, the terminal management CPU 11 passes the distributed encrypted intermediate code 33 and the like to the LSI 20, and the LSI 20 is the same as in the first embodiment. After decrypting the encrypted intermediate code 33 and the like using the session key G (ks) to acquire the intermediate code 31 and verifying it, the verification is OK. The above-mentioned encrypted intermediate code 36 and encrypted security data 37 are generated by encrypting with the “terminal public key B (Kpt)” and stored in the ROM 13. The decryption of the encrypted data 36 and 37 is performed using the “terminal secret key C (Kst)”.
尚、図7において、前準備処理、出荷前設定処理、及びStep11,12の処理は実施例1(図2)と同じであり、特に説明しない。
一方、図7に示すStep14’,15’、16’の処理は、図2のStep14,15、16の処理と一部異なる。すなわち、まず、Step14’はPOS端末5からの決済指示に応じて決済処理、インタプリタ処理を行う点は図2のStep14と同じであるが、その前に、POS端末5からの決済指示が来た際に、端末管理CPU11がLSI20に上記ROMに格納されている上記暗号化中間コード36、暗号化セキュリティデータ37を渡して、LSI20においてこれらを“端末の秘密鍵C(Kst)”で復号して揮発性メモリ23上に展開する処理を行う。そして、LSI20は、揮発性メモリ23上に展開した中間コード31等を用いて、電子マネー決済処理を行うことになる。
In FIG. 7, the pre-preparation process, the pre-shipment setting process, and the processes of Steps 11 and 12 are the same as those in the first embodiment (FIG. 2), and will not be described in particular.
On the other hand, Steps 14 ′, 15 ′, and 16 ′ shown in FIG. 7 are partially different from Steps 14, 15, and 16 shown in FIG. That is, Step 14 ′ is the same as Step 14 in FIG. 2 in that payment processing and interpreter processing are performed in response to a payment instruction from the POS terminal 5, but before that, a payment instruction from the POS terminal 5 comes. At this time, the terminal management CPU 11 passes the encrypted intermediate code 36 and the encrypted security data 37 stored in the ROM to the LSI 20, and the LSI 20 decrypts them with the “terminal secret key C (Kst)”. A process of developing on the volatile memory 23 is performed. Then, the LSI 20 performs electronic money settlement processing using the intermediate code 31 or the like developed on the volatile memory 23.
また、LSI20は、決済処理完了したら、揮発性メモリ23上に展開した中間コード31等を削除する。
尚、複数種類の電子マネーに対応する場合には、端末管理CPU11は、上記POS端末5からの決済指示によって指定された電子マネー種類に応じた上記暗号化中間コード36等を、ROM13から取得してLSI20に渡すことになる。
Further, when the settlement processing is completed, the LSI 20 deletes the intermediate code 31 and the like developed on the volatile memory 23.
When dealing with a plurality of types of electronic money, the terminal management CPU 11 acquires from the ROM 13 the encrypted intermediate code 36 and the like corresponding to the type of electronic money specified by the payment instruction from the POS terminal 5. To the LSI 20.
Step15’の処理も、上記Step14’の場合と略同様に、締め指示を受けたら、端末管理CPU11が上記ROM13に格納されている暗号化中間コード36、暗号化セキュリティデータ37をLSI20に配信して、LSI20においてこれらを復号して揮発性メモリ23上に展開する処理を行う(中間コード31、セキュリティデータ32を得て揮発性メモリ23に格納する処理)。 In the process of Step 15 ′, as in the case of Step 14 ′, when receiving the tightening instruction, the terminal management CPU 11 distributes the encrypted intermediate code 36 and the encrypted security data 37 stored in the ROM 13 to the LSI 20. Then, the LSI 20 performs a process of decoding them and developing them on the volatile memory 23 (a process of obtaining the intermediate code 31 and the security data 32 and storing them in the volatile memory 23).
そして、LSI20内でStep15と同様にこれら中間コード31等を用いて締め処理等を行う。そして、LSI20は、締め処理完了したら、揮発性メモリ23上に展開した中間コード31等を削除する。 Then, the fastening process and the like are performed in the LSI 20 using these intermediate codes 31 and the like in the same manner as Step 15. Then, after completing the tightening process, the LSI 20 deletes the intermediate code 31 and the like developed on the volatile memory 23.
また、Step16’の処理では、端末管理CPU11は、撤去指示に応じて、ROM13に記憶されている暗号化データ(暗号化中間コード36、暗号化セキュリティデータ37)を削除する。 In the process of Step 16 ′, the terminal management CPU 11 deletes the encrypted data (encrypted intermediate code 36 and encrypted security data 37) stored in the ROM 13 in response to the removal instruction.
尚、上記Step14’の処理例では、決済処理毎に逐一、ROM13から暗号化中間コード36等を取得して復号して中間コード31等を揮発性メモリ23に展開してその後に消去するものとしたが、この例に限らず、例えば起動時に暗号化中間コード36等を復号して中間コード31等を揮発性メモリ23に展開した後は、消去せずに運用し、運用終了(電源OFF)により消去されるようにしてもよい。但し、上述してある通り、複数の電子マネーアプリケーションを扱う場合には、上記Step14’の処理例の処理を行うことで、揮発性メモリ23のメモリ容量が少なくて済むという効果が得られる。 In the processing example of Step 14 ′, the encrypted intermediate code 36 and the like are acquired from the ROM 13 and decrypted for each settlement process, and the intermediate code 31 and the like are expanded in the volatile memory 23 and then deleted. However, the present invention is not limited to this example. For example, after the encrypted intermediate code 36 and the like are decrypted at startup and the intermediate code 31 and the like are expanded in the volatile memory 23, the operation is performed without erasing, and the operation ends (power OFF) It may be erased by. However, as described above, when a plurality of electronic money applications are handled, an effect that the memory capacity of the volatile memory 23 can be reduced can be obtained by performing the processing of the processing example of Step 14 '.
次に、以下、実施例4について説明する。
上記実施例1〜3では、決済端末10−センタ装置2間の暗号化通信に公開鍵暗号方式を用いる場合について説明したが、実施例4のように共通鍵暗号方式を採用しても良い。
Next, Example 4 will be described below.
In the first to third embodiments, the case where the public key cryptosystem is used for the encrypted communication between the settlement terminal 10 and the center device 2 has been described. However, as in the fourth embodiment, a common key cryptosystem may be adopted.
この場合、予め、電子マネー事業者側と端末メーカ側の両方で、同じ暗号鍵(端末−センタ共通鍵H(Kc_tc))を共有しておく必要がある。あるいは、電子マネー事業者側、端末メーカ側それぞれが独自に共通鍵暗号方式による暗号鍵を生成し、それぞれが自己が生成した暗号鍵を予め相手に渡しておくようにしてもよい。前者の場合、決済端末10、センタ装置2はそれぞれ、同一の暗号鍵を用いるが、暗号化の手順が異なる方法で暗号化を行うようにしてもよい(勿論、両者とも、この2種類の暗号化手順を知っており、その暗号化/復号化プログラムを格納している)。一方、後者の場合、後述する暗号化データ51の生成とその復号の為の暗号鍵と、暗号化データ52の生成とその復号の為の暗号鍵とは異なることになる。 In this case, it is necessary to share the same encryption key (terminal-center common key H (Kc_tc)) in advance on both the electronic money provider side and the terminal manufacturer side. Alternatively, the electronic money provider side and the terminal manufacturer side may independently generate an encryption key based on the common key encryption method, and each may pass the encryption key generated by itself to the other party in advance. In the former case, the settlement terminal 10 and the center device 2 each use the same encryption key, but encryption may be performed by a method having a different encryption procedure (of course, both of these two types of encryption are used. Knows the encryption procedure and stores the encryption / decryption program). On the other hand, in the latter case, an encryption key for generating and decrypting encrypted data 51 described later is different from an encryption key for generating and decrypting encrypted data 52.
但し、以下の説明では、上記のことを逐一説明することなく、単純に、電子マネー事業者側と端末メーカ側の両方で共有する同一の暗号鍵である“端末−センタ共通鍵H(Kc_tc)”によって、暗号化/復号化が行われるものとして説明する。 However, in the following description, the above-mentioned matters are not explained step by step, but simply “terminal-center common key H (Kc_tc)” which is the same encryption key shared by both the electronic money business operator side and the terminal manufacturer side. ”Is assumed to be encrypted / decrypted.
まず、上記“端末−センタ共通鍵H(Kc_tc)”は、上記出荷設定作業の際、出荷する各決済端末10に、上記“端末共有鍵A(Kct)”や端末情報、センタ情報等と共に格納される。また、実施例4でも上記実施例1と同様に上記前準備処理を行っており、これによって得た上記“センタ秘匿鍵D(Kcc)で暗号化された端末情報”25も、出荷設定作業の際に決済端末10に格納される。尚、これら各種設定情報は、図8に示す通り、不揮発性メモリ24に格納される。 First, the “terminal-center common key H (Kc_tc)” is stored together with the “terminal shared key A (Kct)”, terminal information, center information, and the like in each shipping settlement terminal 10 at the time of the shipment setting operation. Is done. Further, in the fourth embodiment, the pre-preparation process is performed in the same manner as in the first embodiment. The “terminal information encrypted with the center secret key D (Kcc)” 25 obtained thereby is also used for the shipping setting work. Stored in the payment terminal 10. These various setting information are stored in the nonvolatile memory 24 as shown in FIG.
図8は、実施例4における決済処理セキュリティ情報配信システムの構成例を示す図である。
尚、図8のシステムは、ハードウェア構成自体は図1に示すシステムと同じであってよく、同一符号を付してあり、説明は省略する。以下、主に実施例1とは異なる点について説明する。実施例1との違いは、センタ装置2−決済端末10間の暗号化通信を、公開鍵ペアではなく、上記“端末−センタ共通鍵H(Kc_tc)”を用いて行う点である。つまり、公開鍵暗号方式ではなく共通鍵暗号方式で暗号化通信を行う点である。
FIG. 8 is a diagram illustrating a configuration example of the payment processing security information distribution system according to the fourth embodiment.
The system shown in FIG. 8 may have the same hardware configuration as the system shown in FIG. Hereinafter, differences from the first embodiment will be mainly described. The difference from the first embodiment is that encrypted communication between the center apparatus 2 and the settlement terminal 10 is performed using the above-mentioned “terminal-center common key H (Kc_tc)” instead of the public key pair. That is, encrypted communication is performed using a common key encryption method instead of a public key encryption method.
よって、本システムで用いる各種鍵は、図8の図上左下に示す通り、“端末の共有鍵A(Kct)”、“端末−センタ共通鍵H(Kc_tc)”、“センタ秘匿鍵D(Kcc)”、“セッション鍵G(Ks)”の4種類である。そして、これにより、図示の通り、各メモリに格納される鍵が一部、図1とは異なることになる。 Therefore, the various keys used in this system are “terminal shared key A (Kct)”, “terminal-center common key H (Kc_tc)”, “center secret key D (Kcc) as shown in the lower left of the figure in FIG. ) ”And“ Session Key G (Ks) ”. As a result, the keys stored in each memory are partially different from those shown in FIG.
まず、センタ装置2においては、その不揮発メモリ3には、上記センタの公開鍵ペア(“センタ公開鍵E(Kpc)”と“センタ秘密鍵F(Ksc)”)の代わりに、“端末−センタ共通鍵H(Kc_tc)”が記憶される。他の鍵や暗号化データは図1と同じである。また、実施例1では図2のStep11において公開鍵の交換を行ったが、本例では必要ないので、揮発メモリ4に“端末の公開鍵B(Kpt)”が記憶されることはない。 First, in the center device 2, instead of the center public key pair (“center public key E (Kpc)” and “center secret key F (Ksc)”), “terminal-center” is stored in the nonvolatile memory 3. A common key H (Kc_tc) "is stored. Other keys and encrypted data are the same as those in FIG. In the first embodiment, the public key is exchanged in Step 11 of FIG. 2. However, since it is not necessary in this example, the “terminal public key B (Kpt)” is not stored in the volatile memory 4.
また、決済端末10においては、その不揮発性メモリ24には、上記端末の公開鍵ペア(“端末の公開鍵B(Kpt)”及び“端末の秘密鍵C(Kst)”)の代わりに、“端末−センタ共通鍵H(Kc_tc)”が記憶される。他の鍵や暗号化データは図1と同じである。また、実施例1では図2のStep11において公開鍵の交換を行ったが、本例では必要ないので、揮発メモリ23に“センタ公開鍵E(Kpc)”が記憶されることはない。 Further, in the payment terminal 10, the non-volatile memory 24 has “Public key pair (“ Terminal public key B (Kpt) ”” and “Terminal private key C (Kst)”) instead of “Terminal public key pair”. The terminal-center common key H (Kc_tc) "is stored. Other keys and encrypted data are the same as those in FIG. In the first embodiment, the public key is exchanged in Step 11 of FIG. 2. However, since this is not necessary in this example, the “center public key E (Kpc)” is not stored in the volatile memory 23.
実施例4においても、その全体的な処理シーケンスは、図2と略同様であり、ここでは特に説明しない。但し、上記の通り、Step11において公開鍵の交換を行わない点は異なるし、Step12の詳細な処理内容は異なる。すなわち、本例では、Step12の詳細な処理は、図3ではなく、図9の処理を行うことになる。 Also in the fourth embodiment, the overall processing sequence is substantially the same as that in FIG. 2 and is not particularly described here. However, as described above, the public key is not exchanged in Step 11, and the detailed processing contents of Step 12 are different. In other words, in this example, the detailed processing of Step 12 is not the processing in FIG. 3 but the processing in FIG.
図9は、実施例4におけるStep12の処理を詳細に説明する為のフロー図である。
図9において、図3と同一のデータや処理には、同一符号を付してある。
すなわち、決済端末10において上記送信データ41を生成する点、この送信データ41の暗号化データを受信したセンタ装置2が、これを復号して得た上記復号データ43を用いてステップS21、S22の判定処理を行う点は、実施例1の図3の処理と同じであり、ここでは特に説明しない。また、センタ装置2において認証成功後に上記応答データ44を生成する点、この応答データ44の暗号化データを受信した決済端末10が、これを復号して得た上記復号データ46を用いてステップS23,24の判定処理を行う点も、実施例1の図3の処理と同じであり、ここでは特に説明しない。
FIG. 9 is a flowchart for explaining in detail the processing of Step 12 in the fourth embodiment.
In FIG. 9, the same data and processes as those in FIG.
That is, the transmission data 41 is generated in the payment terminal 10, and the center device 2 that has received the encrypted data of the transmission data 41 uses the decrypted data 43 obtained by decrypting the encrypted data in steps S21 and S22. The determination processing is the same as the processing in FIG. 3 of the first embodiment, and is not particularly described here. Further, the center device 2 generates the response data 44 after successful authentication, and the settlement terminal 10 that has received the encrypted data of the response data 44 uses the decrypted data 46 obtained by decrypting the response data 44 in step S23. , 24 is the same as the process of FIG. 3 of the first embodiment, and is not specifically described here.
上記の通り、図9において、図3と異なる点は、上記送信データ41、応答データ44の暗号化、復号化の処理であり、以下、これについて説明する。
尚、上記の通り、上記送信データ41、応答データ44自体は、図3と同じであるが、一応説明しておくならば、送信データ41は、決済端末10内で任意に生成した乱数Rtと、端末情報ハッシュ値と、“センタ秘匿鍵D(Kcc)で暗号化された端末情報”25とから成る。また、応答データ44は、センタ装置2が内部で任意に生成する乱数Rcと、センタ情報ハッシュ値と、“端末共有鍵A(Kct)で暗号化されたセンタ情報”35とから成る。
As described above, FIG. 9 differs from FIG. 3 in the process of encrypting and decrypting the transmission data 41 and the response data 44, which will be described below.
As described above, the transmission data 41 and the response data 44 themselves are the same as those in FIG. 3. However, for the time being, the transmission data 41 is a random number Rt arbitrarily generated in the payment terminal 10. Terminal information hash value and “terminal information encrypted with the center secret key D (Kcc)” 25. The response data 44 includes a random number Rc arbitrarily generated by the center apparatus 2 inside, a center information hash value, and “center information encrypted with the terminal shared key A (Kct)” 35.
まず、決済端末10は、上記送信データ41を生成したら、出荷設定時に上記不揮発性メモリ24に記憶されている上記“端末−センタ共通鍵H(Kc_tc)”でこの送信データ41を暗号化することで、図示の暗号化データ51を生成して送信する。この暗号化データ51を受信したセンタ装置2は、上記不揮発メモリ3に記憶されている上記“端末−センタ共通鍵H(Kc_tc)”と“センタ秘匿鍵D(Kcc)”を用いてこの暗号化データ51を復号することで上記復号データ43を得る。そして、上述したようにステップS21、S22の判定処理を行い、端末認証成功したならば、処理を続行して、上記復号データ43における乱数Rtを記憶すると共に以下の処理を行う。 First, after generating the transmission data 41, the payment terminal 10 encrypts the transmission data 41 with the “terminal-center common key H (Kc_tc)” stored in the nonvolatile memory 24 at the time of shipment setting. Then, the encrypted data 51 shown in the figure is generated and transmitted. The center device 2 that has received the encrypted data 51 uses this “terminal-center common key H (Kc_tc)” and “center secret key D (Kcc)” stored in the nonvolatile memory 3 to perform this encryption. The decoded data 43 is obtained by decoding the data 51. Then, as described above, the determination process of steps S21 and S22 is performed. If the terminal authentication is successful, the process is continued, and the random number Rt in the decrypted data 43 is stored and the following process is performed.
すなわち、センタ装置2は、上記応答データ44を生成したら、上記不揮発メモリ3に記憶されている上記“端末−センタ共通鍵H(Kc_tc)”でこの応答データ44を暗号化することで、図示の暗号化データ52を生成して送信する。この暗号化データ52を受信した決済端末10は、上記不揮発性メモリ24に記憶されている上記“端末−センタ共通鍵H(Kc_tc)”と“端末の共有鍵A(Kct)”とを用いて、この暗号化データ52を復号することで上記復号データ46を得る。そして、上述したようにステップS23、S24の判定処理を行い、センタ認証成功したならば、上記復号データ46における乱数Rcを記憶する。そして、この乱数Rcと上記乱数Rtとに基づいて“セッション鍵G(Ks)”を生成し、Step13の処理を行うことになる。上記の通り、Step13以降の処理は図2と略同様であり、ここでは特に説明しない。 That is, when the center device 2 generates the response data 44, the center device 2 encrypts the response data 44 with the "terminal-center common key H (Kc_tc)" stored in the nonvolatile memory 3, thereby Encrypted data 52 is generated and transmitted. The payment terminal 10 that has received the encrypted data 52 uses the “terminal-center common key H (Kc_tc)” and “terminal shared key A (Kct)” stored in the nonvolatile memory 24. The decrypted data 46 is obtained by decrypting the encrypted data 52. Then, as described above, the determination processing in steps S23 and S24 is performed, and if the center authentication is successful, the random number Rc in the decrypted data 46 is stored. Then, a “session key G (Ks)” is generated based on the random number Rc and the random number Rt, and the process of Step 13 is performed. As described above, the processes after Step 13 are substantially the same as those in FIG. 2 and are not particularly described here.
上述したように、決済端末10−センタ装置2間の相互認証処理の際の暗号化通信は、公開鍵暗号方式に限らず、共通鍵暗号方式を用いてもよい。
(実施例5)(複数の電子マネーアプリケーションを扱う場合)
図10は、実施例5における決済処理セキュリティ情報配信システムの構成例を示す図である。すなわち、複数種類の電子マネーアプリケーションを扱うことが可能なシステム構成例を示す。
As described above, the encrypted communication at the time of mutual authentication processing between the settlement terminal 10 and the center device 2 is not limited to the public key cryptosystem, and a common key cryptosystem may be used.
(Example 5) (When dealing with a plurality of electronic money applications)
FIG. 10 is a diagram illustrating a configuration example of a payment processing security information distribution system according to the fifth embodiment. That is, a system configuration example capable of handling a plurality of types of electronic money applications is shown.
尚、図10のシステムは、ハードウェア構成自体は図1に示すシステムと同じであってよく、同一符号を付してあり、説明は省略する。以下、主に実施例1とは異なる点について説明する。尚、図示の端末メーカサーバ1’は、基本的には図1の端末メーカサーバ1と略同様の処理機能を有するが、以下に説明するように複数の電子マネー事業者それぞれに対する前準備処理を行う点等が異なることから異なる符合(1ではなく1’を付してある)。 The system shown in FIG. 10 may have the same hardware configuration as the system shown in FIG. Hereinafter, differences from the first embodiment will be mainly described. The terminal maker server 1 ′ shown in the figure has basically the same processing functions as the terminal maker server 1 shown in FIG. 1, but performs pre-preparation processing for each of a plurality of electronic money business operators as described below. Since the points to be performed are different, they are different signs (not 1 but 1 ').
尚、図では1つの電子マネー事業者のセンタ装置2のみを示すが、複数の電子マネー事業者の各センタ装置2が存在し得る。そして、図10の端末メーカサーバ1’は、これら各センタ装置2との間で、予め上記実施例1等と同様に前準備処理を実行して、各センタ装置2から“センタ秘匿鍵D(Kcc)で暗号化された端末情報”25やセンタ情報を取得しておく。当然、センタ秘匿鍵D(Kcc)は各センタ装置2毎に異なるものであるので、暗号化端末情報25は(センタ情報も)各センタ装置2毎に異なるものであり、よってサーバ1は、取得した暗号化端末情報25やセンタ情報を、各電子マネー事業者毎に対応付けてサーバ1内に格納しておき、その後のオンライン設定等に用いる。 Although only the center device 2 of one electronic money business is shown in the figure, there can be a plurality of center devices 2 of a plurality of electronic money business operators. Then, the terminal maker server 1 ′ in FIG. 10 executes pre-preparation processing with each of the center devices 2 in advance in the same manner as in the first embodiment and the like, and the “center secret key D ( The terminal information “25” and the center information encrypted with Kcc) are acquired. Naturally, since the center secret key D (Kcc) is different for each center device 2, the encrypted terminal information 25 (also center information) is different for each center device 2, so that the server 1 obtains it. The encrypted terminal information 25 and the center information are stored in the server 1 in association with each electronic money business operator and used for subsequent online settings and the like.
また、サーバ1’は、上記端末共有鍵A(Kct)を、各電子マネー事業者毎に対応付けてそれぞれ生成して格納する。よって、端末共有鍵A(Kct)は、1つではなく複数存在し、各電子マネー事業者毎に異なるものであるから、ここでは図示のように“アプリ固有秘匿鍵62”と記すものとする。そして、上記前準備処理の際にセンタ装置2へ送信する上記“端末共有鍵A(Kct)で暗号化されたセンタ情報”35も、通信相手の電子マネー事業者に対応したアプリ固有秘匿鍵62を用いて暗号化するものである。尚、その意味では、“端末共有鍵A(Kct)で暗号化されたセンタ情報”35は“アプリ固有秘匿鍵62で暗号化されたセンタ情報”35と言うこともできるが、ここでは“端末共有鍵A(Kct)で暗号化されたセンタ情報”35と記すものとする。 Further, the server 1 'generates and stores the terminal shared key A (Kct) in association with each electronic money business operator. Accordingly, since there are a plurality of terminal shared keys A (Kct) instead of one, and they are different for each electronic money business operator, they are described as “application-specific secret keys 62” as shown here. . The “center information encrypted with the terminal shared key A (Kct)” 35 transmitted to the center apparatus 2 during the pre-preparation process is also the application-specific secret key 62 corresponding to the electronic money carrier of the communication partner. It encrypts using. In this sense, the “center information encrypted with the terminal shared key A (Kct)” 35 can also be referred to as “center information encrypted with the application-specific secret key 62”. Assume that the center information encrypted with the shared key A (Kct) is “35”.
端末メーカ側において出荷設定の際には、出荷する各決済端末10毎に上記実施例1と同様の設定を行う。但し、設定対象の決済端末10が複数種類の電子マネーアプリケーションを扱うものである場合には、その決済端末10で扱う電子マネー種類それぞれに対応する上記“アプリ固有秘匿鍵A”と“センタ秘匿鍵D(Kcc)で暗号化された端末情報”25、センタ情報等を、LSI20内の不揮発性メモリ24に格納する。 At the time of shipment setting on the terminal manufacturer side, the same setting as in the first embodiment is performed for each settlement terminal 10 to be shipped. However, if the payment terminal 10 to be set handles multiple types of electronic money applications, the “application-specific secret key A” and the “center secret key” corresponding to each type of electronic money handled by the payment terminal 10 are used. The terminal information “25” encrypted with D (Kcc), the center information, and the like are stored in the nonvolatile memory 24 in the LSI 20.
勿論、実施例1と同様に、設定対象の決済端末10においてその内部で上記任意の上記公開鍵ペア(“端末の公開鍵B(Kpt)”及び“端末の秘密鍵C(Kst)”)を生成させて不揮発性メモリ24に記憶させる処理や、UI表示、プログラム追加・変更・削除、利用履歴(明細)記録等の非セキュリティ部分の電子マネー事業者のアプリケーションを、ROM13に格納する処理も行う。尚、この非セキュリティアプリケーションは、図10においては“非決済プログラム”63として示している。上記公開鍵ペアは、各電子マネー事業者毎に異なるものでないので、図示の通り1対の公開鍵ペアのみが記憶される。一方、上記“非決済プログラム”は、各電子マネー事業者毎に異なるものであり、図示の通り、各電子マネー種類それぞれについての“非決済プログラム”63が格納される。 Of course, as in the first embodiment, in the settlement terminal 10 to be set, the arbitrary public key pair (“terminal public key B (Kpt)” and “terminal secret key C (Kst)”) is stored therein. A process of generating and storing in the nonvolatile memory 24 and a process of storing the application of the electronic money business operator of the non-security part such as UI display, program addition / change / deletion, and usage history (details) recording in the ROM 13 are also performed. . This non-security application is shown as “non-settlement program” 63 in FIG. Since the public key pair is not different for each electronic money business operator, only one public key pair is stored as shown in the figure. On the other hand, the “non-settlement program” is different for each electronic money business operator, and stores a “non-settlement program” 63 for each electronic money type as shown in the figure.
出荷されて任意の店舗に設置後の決済端末10は、上記実施例1の場合と同様に、上記公開鍵ペアや端末情報、“アプリ固有秘匿鍵”62、“暗号化された端末情報”25等を用いて、センタ装置2から中間コード31、セキュリティデータ32を取得することになる。複数種類の電子マネーに対応する場合には、各電子マネー事業者のセンタ装置2からそれぞれ中間コード31、セキュリティデータ32を取得することになる。その際、通信相手の電子マネー事業者に対応する“アプリ固有秘匿鍵”62、“暗号化された端末情報”25を用いることになる。中間コード31等の取得の為の処理自体(相互認証処理やセッション鍵による暗号化中間コード33等の配信、その復号処理等)は、実施例1と略同様であり、ここでは説明しない。 The payment terminal 10 that has been shipped and installed in an arbitrary store has the same public key pair, terminal information, “application-specific secret key” 62, “encrypted terminal information” 25, as in the first embodiment. Etc., the intermediate code 31 and the security data 32 are acquired from the center apparatus 2. When dealing with a plurality of types of electronic money, the intermediate code 31 and the security data 32 are acquired from the center device 2 of each electronic money business. At that time, the “application-specific secret key” 62 and “encrypted terminal information” 25 corresponding to the electronic money provider of the communication partner are used. The processing itself for acquiring the intermediate code 31 and the like (mutual authentication processing, distribution of the encrypted intermediate code 33 using a session key, decryption processing, etc.) is substantially the same as in the first embodiment, and will not be described here.
取得した中間コード31、セキュリティデータ32は、図示の通り、各電子マネー事業者毎に対応付けて不揮発性メモリ24に格納管理する。
その後は、例えばstep14の処理では、任意のICカード6と決済処理を行う毎に、このICカードの種類(電子マネーの種類)に対応する中間コード31等を用いて、電子マネー決済処理を行うことになる。
The acquired intermediate code 31 and security data 32 are stored and managed in the nonvolatile memory 24 in association with each electronic money business as shown in the figure.
Thereafter, in the process of step 14, for example, every time payment processing is performed with an arbitrary IC card 6, electronic money payment processing is performed using the intermediate code 31 corresponding to the type of IC card (type of electronic money). It will be.
尚、後述する実施例6と同様に、上記取得・格納した中間コード31、セキュリティデータ32の格納アドレスを、後述するメモリ管理テーブル70において、サービスコードに対応付けて記憶・管理するようにしてもよい。そして、上記任意のICカード6との決済処理の際には、POSレジ5等の上位端末からの決済指示で決済対象の電子マネー種類に応じた上記サービスコードが指定されるので、メモリ管理テーブル70を参照することで、決済対象の電子マネー種類に応じた中間コード31、セキュリティデータ32の格納位置が分かるので、これらを用いて決済処理を行うことになる。 As in the sixth embodiment described later, the storage addresses of the acquired and stored intermediate code 31 and security data 32 are stored and managed in association with service codes in the memory management table 70 described later. Good. In the settlement process with the arbitrary IC card 6, the service code corresponding to the type of electronic money to be settled is designated by a settlement instruction from a higher-level terminal such as the POS cash register 5, so that the memory management table By referring to 70, the storage location of the intermediate code 31 and the security data 32 corresponding to the type of electronic money to be settled can be known, and the settlement process is performed using these.
以上説明したように、実施例5では、実施例1等のシステムの特徴を備えつつ複数種類の電子マネーアプリケーションを扱うことが可能なシステムを提供できる。
ここで、例えば、各決済端末10の出荷先の各店舗毎に、その店舗の考えによりその店舗で扱う電子マネーの種類や数が決められているものであり、端末メーカ側では出荷先の要求に応じて各決済端末10の設定を行うことになる。例えばある店舗xでは電子マネーaのみ、別の店舗yでは電子マネーbのみ、更に別の店舗zでは電子マネーaとcを扱うものとする。この場合、端末メーカ側では、出荷設定の際に、店舗x向けの決済端末10に対しては電子マネーaに対応する“アプリ固有秘匿鍵”62、“暗号化された端末情報”25等の設定情報を設定することになる。同様に、店舗y向けの決済端末10に対しては電子マネーbに対応する上記設定情報(“アプリ固有秘匿鍵”62等)を設定することになり、店舗z向けの決済端末10に対しては電子マネーaとcそれぞれに対応する上記設定情報(“アプリ固有秘匿鍵”62等)を設定することになる。
As described above, the fifth embodiment can provide a system that can handle a plurality of types of electronic money applications while having the characteristics of the system of the first embodiment.
Here, for example, for each store to which each payment terminal 10 is shipped, the type and number of electronic money handled at that store are determined based on the store's idea. Each payment terminal 10 is set according to the above. For example, assume that one store x handles only electronic money a, another store y handles only electronic money b, and another store z handles electronic money a and c. In this case, at the time of shipment setting, the terminal manufacturer side sets “application unique secret key” 62 corresponding to the electronic money “a”, “encrypted terminal information” 25 and the like for the payment terminal 10 for the store x. Setting information will be set. Similarly, for the payment terminal 10 for the store y, the setting information (“application-specific secret key” 62 etc.) corresponding to the electronic money b is set, and the payment terminal 10 for the store z is set. Sets the setting information (such as “application-specific secret key” 62) corresponding to each of the electronic money a and c.
しかしながら、出荷後に、店舗側の事情等により、その店舗で扱う電子マネーの種類を増やしたい(あるいは変更したい)場合がある。
また、上述したことから、上記実施例5では、出荷設定の際に、作業員は、各決済端末10毎に、その決済端末10で扱う電子マネー種類に対応する“アプリ固有秘匿鍵”62、“暗号化された端末情報”25等を選択して設定することになり、手間が掛かることになる。
However, there are cases where it is desired to increase (or change) the types of electronic money handled at a store after shipment, due to circumstances on the store side.
In addition, from the above, in the fifth embodiment, at the time of shipment setting, the worker, for each payment terminal 10, “application-specific secret key” 62 corresponding to the type of electronic money handled by the payment terminal 10, “Encrypted terminal information” 25 or the like is selected and set, which takes time.
以下に説明する実施例6は、この様な問題に対応するものである。
実施例6は、実施例5と同様に複数種類の電子マネーアプリケーションを扱うことが可能なシステムを前提とする。よって、システム構成自体は、図10と同じであってよく、以下の説明では図10を参照して説明する。
The sixth embodiment described below addresses such a problem.
As in the fifth embodiment, the sixth embodiment is based on a system that can handle a plurality of types of electronic money applications. Therefore, the system configuration itself may be the same as that in FIG. 10 and will be described with reference to FIG. 10 in the following description.
そして、図11に、実施例6の通信シーケンスを示し、これを用いて説明する。
図11に示すように、実施例6では、まず出荷設定の際には、決済端末10に対して暗号鍵の設定(公開鍵ペア(“端末の公開鍵B(Kpt)”及び“端末の秘密鍵C(Kst)”)を生成させて不揮発性メモリ24に記憶させる処理)とその決済端末10の端末情報の設定のみを行う(図2のS6とS8の処理のみ行う)。これらの情報は、各電子マネー事業者毎に対応するものではなく、共通して利用されるものであるからである。
FIG. 11 shows a communication sequence according to the sixth embodiment, which will be described.
As shown in FIG. 11, in the sixth embodiment, first, at the time of shipment setting, an encryption key is set for the settlement terminal 10 (public key pair (“terminal public key B (Kpt)” and “terminal secret The key C (Kst) ") is generated and stored in the nonvolatile memory 24) and only the terminal information of the settlement terminal 10 is set (only the processes of S6 and S8 in FIG. 2 are performed). This is because these pieces of information are not used for each electronic money company but are used in common.
よって、このときには“アプリ固有秘匿鍵”62、“暗号化された端末情報”25等の設定(図2のS7,S9の処理)は行わない。よって、実施例1等とは異なり、必ずしも出荷設定前に前準備処理を行わなければならないわけではない。但し、後述するメンテナンス情報アップロードのときまでには、前準備処理を行っている必要はある。前準備処理自体は、図2に示すものと同じであってよく(上記S1〜S5の処理を行う)、ここでは説明しない。但し、実施例5と同様、各電子マネー事業者それぞれのセンタ装置2と前準備処理を行って、各電子マネー種類毎に対応する“暗号化された端末情報”25を取得することになる。また、これによって、各電子マネー事業者のセンタ装置2には、それぞれ、その電子マネー事業者に応じた“アプリ固有秘匿鍵”62によって暗号化された“暗号化されたセンタ情報”35が記憶されることになる。 Therefore, at this time, settings such as “application-specific secret key” 62 and “encrypted terminal information” 25 are not performed (the processes in S7 and S9 in FIG. 2). Therefore, unlike the first embodiment or the like, the pre-preparation process does not necessarily have to be performed before the shipment setting. However, it is necessary to perform pre-preparation processing before the maintenance information upload described later. The pre-preparation process itself may be the same as that shown in FIG. 2 (the processes of S1 to S5 are performed) and will not be described here. However, as in the fifth embodiment, pre-preparation processing is performed with the center device 2 of each electronic money business operator, and “encrypted terminal information” 25 corresponding to each electronic money type is acquired. As a result, the center device 2 of each electronic money company stores “encrypted center information” 35 encrypted by the “application-specific secret key” 62 corresponding to the electronic money company. Will be.
ここで、予め、各電子マネー種類毎に所定のサービスコードが決められているものとする。
そして、例えば、上記出荷設定作業において、出荷する各決済端末10に関して、その決済端末10で扱う電子マネー種類のサービスコードを、当該決済端末10の端末識別ID等に対応付けてサーバ1の不図示の決済端末管理テーブルに登録しておく。この登録内容は、後に、例えば店舗側からの要求に応じて更新される場合がある。例えば、上記店舗zを例にすると、この店舗zに出荷される決済端末10に関しては、最初は電子マネーaとcのサービスコードが登録されるが、後に店舗z側の要求により例えば電子マネーbのサービスコードが追加登録されるものとする。この例では、この決済端末10は、最初は2種類の電子マネーaとcに対応するものであるが、後に3種類の電子マネーa,b,cに対応するものとなる。但し、実際にこれら各種電子マネーの決済処理を実行可能となる為には、後述するメンテナンス情報アップロード時の処理やstep13による中間データ31等の取得処理を行う必要がある。
Here, it is assumed that a predetermined service code is determined in advance for each electronic money type.
For example, in the shipment setting operation, for each payment terminal 10 to be shipped, the service code of the electronic money type handled by the payment terminal 10 is associated with the terminal identification ID of the payment terminal 10 and the server 1 is not shown. In the payment terminal management table. This registered content may be updated later in response to a request from the store, for example. For example, taking the store z as an example, for the payment terminal 10 shipped to the store z, the service codes of the electronic money a and c are registered at the beginning. It is assumed that the service code is additionally registered. In this example, the payment terminal 10 initially corresponds to two types of electronic money a and c, but later corresponds to three types of electronic money a, b, and c. However, in order to actually be able to execute these various types of electronic money settlement processing, it is necessary to perform processing for uploading maintenance information, which will be described later, and processing for acquiring intermediate data 31 and the like in step 13.
尚、上記出荷設定作業の際、決済端末10の不揮発性メモリ24には、図10に示すプログラム30’も格納される。上記実施例1のプログラム30はインタプリタ処理、アプリ格納処理等を行うプログラムであるが、このプログラム30’は図10に示すように更にサービス管理処理を実行するプログラムも含まれる。 Note that the program 30 ′ shown in FIG. 10 is also stored in the non-volatile memory 24 of the payment terminal 10 during the shipment setting operation. The program 30 of the first embodiment is a program that performs interpreter processing, application storage processing, and the like. The program 30 'further includes a program that executes service management processing as shown in FIG.
上記出荷設定作業を経て出荷されて任意の店舗に設置された決済端末10は、例えば定期的に(本例ではメンテナンス情報アップロードで)、上記サービス管理処理プログラムを実行する。メンテナンス情報アップロードは、例えば、その決済端末10の現在の状態を示す情報(例えば、現況、どの電子マネーに対応しているのか等)を、サーバ1に通知するものである。 The settlement terminal 10 shipped through the shipment setting work and installed in an arbitrary store executes the service management processing program, for example, periodically (in this example, with maintenance information upload). In the maintenance information upload, for example, the server 1 is notified of information indicating the current state of the settlement terminal 10 (for example, the current state, which electronic money is supported, etc.).
この処理では、まず、ネットワーク7を介して端末メーカサーバ1に接続して、所定の認証処理を行い(S11)、認証成功した場合にはS12以降の処理を行う。尚、認証処理自体は既存の認証手法による処理であってよく、ここでは特に説明しない。 In this process, first, a predetermined authentication process is performed by connecting to the terminal manufacturer server 1 via the network 7 (S11), and if the authentication is successful, the process after S12 is performed. The authentication process itself may be a process using an existing authentication method, and is not particularly described here.
上記S11の接続・認証処理の際、決済端末10は、自己のメモリ(例えば不揮発性メモリ24)に格納されているメモリ管理テーブル70に登録されているサービスコード全てを、自己の端末識別IDと共に端末メーカサーバ1に送信する。サーバ1は、上記不図示の決済端末管理テーブルを参照して、このテーブルに登録されているサービスコードと受信したサービスコードとを比較チェックして、アプリ追加が必要か不要かを判定する。例えば、上記店舗zを例にすると、例えば店舗zの決済端末10が電子マネーaとcのサービスコードを通知してきた場合、決済端末管理テーブルに電子マネーaとcのサービスコードのみが登録されている場合にはアプリ追加不要と判定し、電子マネーa,b,cのサービスコードが登録されている場合には電子マネーbのアプリ追加必要と判定する。 At the time of the connection / authentication process in S11, the payment terminal 10 uses all the service codes registered in the memory management table 70 stored in its own memory (for example, the non-volatile memory 24) together with its own terminal identification ID. Transmit to the terminal manufacturer server 1. The server 1 refers to the payment terminal management table (not shown) and compares the service code registered in this table with the received service code to determine whether or not application addition is necessary. For example, in the case of the store z, for example, when the payment terminal 10 of the store z notifies the service codes of the electronic money a and c, only the service codes of the electronic money a and c are registered in the payment terminal management table. If the service code of the electronic money a, b, c is registered, it is determined that the application of the electronic money b needs to be added.
また、出荷されて設置後に初めてサーバ1にアクセスしてきた決済端末10については、当然、未だ中間コード31等は何も記憶されていないので、メモリ管理テーブル70には何も登録されていない状態であるので(後述する説明参照)、“サービスコード無し”をサーバ1に通知する。これより、サーバ1は、この決済端末10について決済端末管理テーブルに登録されている全てのサービスコードのアプリ追加が必要と判定することになる。 Further, as for the payment terminal 10 that has been shipped and has accessed the server 1 for the first time after installation, of course, nothing is stored in the intermediate code 31 or the like, so that nothing is registered in the memory management table 70. Since there is (refer to the description to be described later), “no service code” is notified to the server 1. Accordingly, the server 1 determines that it is necessary to add an application for all service codes registered in the payment terminal management table for the payment terminal 10.
アプリ追加不要と判定した場合には、その旨を決済端末10に返信する。
一方、アプリ追加必要と判定した場合には、以下に説明するS12以降の処理を実行する。
If it is determined that application addition is unnecessary, a message to that effect is returned to the payment terminal 10.
On the other hand, when it is determined that the application needs to be added, the processing after S12 described below is executed.
尚、上記メモリ管理テーブル70に関しては、その一例を図12に示し、後に説明する。
以下、S12以降の処理について説明する。
An example of the memory management table 70 is shown in FIG. 12 and will be described later.
Hereinafter, the processing after S12 will be described.
まず、サーバ1は、上記S11の処理によりアプリ追加必要と判定した電子マネー種類(上記の例では電子マネーb)に係わるプログラム情報(この電子マネーの上記サービスコードや、そのプログラム、鍵等に関するサイズ情報等;具体例は後に図12で説明する)と共にアプリ追加指示を決済端末10に通知する(S12)。 First, the server 1 determines program information related to the type of electronic money (in the above example, electronic money b) determined to require application addition by the process of S11 (the size of the electronic money related to the service code, the program, the key, etc.). Information etc .; a specific example will be described later with reference to FIG. 12) and an application addition instruction is notified to the payment terminal 10 (S12).
尚、アプリ追加必要と判定した電子マネー種類が複数ある場合には、そのうちの任意の1つについてS12以降の処理を行い、S14の配信処理を実行するものとなり実行した場合には、その後に、他の電子マネー種類について同様にS12以降の処理を行う。 In addition, when there are a plurality of types of electronic money determined that the application needs to be added, the processing after S12 is performed for any one of them, and the distribution processing of S14 is executed. Similarly, the processing after S12 is performed for other types of electronic money.
上記S12の通知を受信した決済端末10の端末管理CPU11は、まず、ROM13の空き容量の確認を行い、上記プログラム情報に含まれる非決済プログラム63のサイズ情報に基づいて、当該非決済プログラム63をROM13に格納可能か否か(「非決済プログラムのサイズ<空き容量」か否か)を判定する。格納不能な場合にはその旨をサーバ1に通知する。 Upon receiving the notification of S12, the terminal management CPU 11 of the payment terminal 10 first checks the free space in the ROM 13, and based on the size information of the non-payment program 63 included in the program information, It is determined whether it can be stored in the ROM 13 (whether “size of non-payment program <free capacity”). If it cannot be stored, the server 1 is notified accordingly.
一方、格納可能であれば、上記受信したプログラム情報(但し、非決済プログラムのサイズ情報は除く)をLSI20に渡して、プログラム追加可能かを問い合わせる指示を出す。 On the other hand, if the program can be stored, the received program information (excluding the size information of the non-settlement program is excluded) is transferred to the LSI 20 and an instruction for inquiring whether the program can be added is issued.
LSI20は、この指示に応じて、上記追加対象の電子マネー種類のプログラム、鍵等を不揮発性メモリ24に格納可能か否かを、メモリ24の全体サイズと現在の使用量と追加アプリのプログラム情報に基づいて判定して、判定結果を端末管理CPU11に返信する。 In response to this instruction, the LSI 20 determines whether or not the electronic money type program to be added, the key, and the like can be stored in the nonvolatile memory 24, the overall size of the memory 24, the current usage, and the program information of the additional application. And the determination result is returned to the terminal management CPU 11.
これは、例えば、まず上記メモリ管理テーブル70等に基づいて、不揮発性メモリ24に現在格納されている各種データの総データサイズは分かるので、不揮発性メモリ24の現在の空き容量は分かる(空き容量=不揮発性メモリ24の容量(全体サイズ)−総データサイズ)。一方、上記渡されたプログラム情報に基づいて、上記新たに追加すべき電子マネー種類に係わるプログラム、鍵等の総データサイズは分かるので、このプログラム等を不揮発性メモリ24に格納可能か否かを判定できる。つまり、総データサイズ<空き容量であれば格納可能と判定する。これより、判定結果を端末管理CPU11に通知する。 This is because, for example, the total data size of various data currently stored in the nonvolatile memory 24 can be known based on the memory management table 70 or the like, so that the current free capacity of the nonvolatile memory 24 can be known (free capacity = Capacity of nonvolatile memory 24 (total size) -total data size). On the other hand, since the total data size of the program, key, etc. relating to the newly added electronic money type is known based on the passed program information, it is determined whether or not this program can be stored in the nonvolatile memory 24. Can be judged. In other words, if the total data size <free capacity, it is determined that storage is possible. Thus, the determination result is notified to the terminal management CPU 11.
また、もし格納可能と判定した場合には、上記メモリ管理テーブル70に新規レコードを生成し、上記端末管理CPU11から渡されたプログラム情報(サービスコード、各サイズ(データ長))を新規レコードに格納する。 If it is determined that data can be stored, a new record is generated in the memory management table 70, and the program information (service code, each size (data length)) passed from the terminal management CPU 11 is stored in the new record. To do.
ここで、図12を参照してメモリ管理テーブル70の一例について説明する。
図12は、メモリ管理テーブル70のデータ構成例である。
図示のメモリ管理テーブル70は、サービスコード71、端末共有鍵格納アドレス72、そのデータ長73、暗号化端末情報格納アドレス74、そのデータ長75、中間コード格納アドレス76、そのデータ長77、セキュリティデータ格納アドレス78、そのデータ長79の各データ項目より成る。
Here, an example of the memory management table 70 will be described with reference to FIG.
FIG. 12 is a data configuration example of the memory management table 70.
The illustrated memory management table 70 includes a service code 71, a terminal shared key storage address 72, a data length 73, an encrypted terminal information storage address 74, a data length 75, an intermediate code storage address 76, a data length 77, security data. Each data item has a storage address 78 and a data length 79.
つまり、メモリ管理テーブル70には、不揮発性メモリ24に格納される各種電子マネー毎の決済処理用プログラム/データ等の格納アドレスとサイズ情報が格納される。すなわち、各種電子マネー毎に、それに対応するアプリ固有秘匿鍵62、“センタ秘匿鍵D(Kcc)で暗号化された端末情報”25、中間コード31、セキュリティデータ32等の格納場所やサイズがメモリ管理テーブル70に登録されることになる。 In other words, the memory management table 70 stores storage addresses and size information such as settlement processing programs / data for each type of electronic money stored in the nonvolatile memory 24. That is, for each type of electronic money, the storage location and size of the corresponding application-specific secret key 62, “terminal information encrypted with the center secret key D (Kcc)” 25, intermediate code 31, security data 32, etc. are stored in memory. It is registered in the management table 70.
例えば、端末共有鍵格納アドレス72、そのデータ長73は、アプリ固有秘匿鍵62の格納アドレスとデータサイズである。暗号化端末情報格納アドレス74、そのデータ長75は、“センタ秘匿鍵D(Kcc)で暗号化された端末情報”25の格納アドレスとデータサイズである。中間コード格納アドレス76、そのデータ長77は、中間コード31の格納アドレスとデータサイズである。セキュリティデータ格納アドレス78、そのデータ長79は、セキュリティデータ32の格納アドレスとデータサイズである。 For example, the terminal shared key storage address 72 and its data length 73 are the storage address and data size of the application specific secret key 62. The encrypted terminal information storage address 74 and its data length 75 are the storage address and data size of “terminal information encrypted with the center secret key D (Kcc)” 25. The intermediate code storage address 76 and its data length 77 are the storage address and data size of the intermediate code 31. The security data storage address 78 and its data length 79 are the storage address and data size of the security data 32.
上記端末管理CPU11から渡されるプログラム情報の具体例は、特に図示しないが、サービスコード、アプリ固有秘匿鍵62のサイズ、“センタ秘匿鍵D(Kcc)で暗号化された端末情報”25のサイズ、中間コード31のサイズ、セキュリティデータ32のサイズであり、上記新規レコードへの格納処理の際には、これらがサービスコード71、データ長73、データ長75、データ長77、データ長79にそれぞれ格納されることになる。各格納アドレス72,74,76,78はこの時点では未だ格納されない。 Specific examples of the program information passed from the terminal management CPU 11 are not particularly shown, but the service code, the size of the application specific secret key 62, the size of the “terminal information encrypted with the center secret key D (Kcc)” 25, The size of the intermediate code 31 and the size of the security data 32 are stored in the service code 71, the data length 73, the data length 75, the data length 77, and the data length 79, respectively, in the storage process to the new record Will be. Each storage address 72, 74, 76, 78 is not yet stored at this point.
また、上記メモリ24に格納可能か否かの判定は、受信したプログラム情報における上記各データ長73、75,77,79の総和が、上記メモリ24の空き容量未満であるか否かを判定することになる。 Whether the data can be stored in the memory 24 is determined by determining whether the sum of the data lengths 73, 75, 77, 79 in the received program information is less than the free capacity of the memory 24. It will be.
端末管理CPU11は、上記LSI20から上記判定結果を受け取ると、これをサーバ1へ転送する(S13の応答)。
サーバ1は、この応答を受信すると、判定結果が格納不可である場合には、本処理を終了する。一方、格納可能である場合には、追加すべき電子マネーに係わる、サービスコード、非決済部分のアプリケーション(非決済プログラム63)、電子マネー事業者センタ接続情報(その電子マネー事業者のセンタ装置2のIPアドレス等)、センタ情報、アプリ固有秘匿鍵62、及び“センタ秘匿鍵D(Kcc)で暗号化された端末情報”25を、決済端末10にダウンロードする(S14)。
Upon receiving the determination result from the LSI 20, the terminal management CPU 11 transfers it to the server 1 (response in S13).
Upon receiving this response, the server 1 ends this process if the determination result cannot be stored. On the other hand, if it can be stored, the service code, non-settlement application (non-settlement program 63), electronic money business center connection information (center device 2 of the electronic money business) related to the electronic money to be added. ), Center information, application-specific secret key 62, and "terminal information encrypted with the center secret key D (Kcc)" 25 are downloaded to the payment terminal 10 (S14).
決済端末10の端末管理CPU11は、これらダウンロード情報をLSI20へ渡し、復号化等の処理を実行させ、復号化されて得られた各種情報のうち、サービスコードと非決済プログラム63と電子マネー事業者センタ接続情報を受け取って、これらをROM13に記憶する。 The terminal management CPU 11 of the payment terminal 10 passes the download information to the LSI 20 and executes processing such as decryption. Among various information obtained by decryption, the service code, the non-payment program 63, and the electronic money business operator The center connection information is received and stored in the ROM 13.
一方、LSI20は、上記復号化により得られた各種情報のうち、アプリ固有秘匿鍵62)、及び“暗号化された端末情報”25を、不揮発性メモリ24に格納し、これらの格納アドレスをメモリ管理テーブル70の端末共有鍵格納アドレス72と暗号化端末情報格納アドレス74にそれぞれ格納する。尚、その際、不揮発性メモリ24における中間コード31とセキュリティデータ32の格納領域も確保しておき、これらの格納アドレスもメモリ管理テーブル70の中間コード格納アドレス76とセキュリティデータ格納アドレス78にそれぞれ格納する。これにより、メモリ管理テーブル70へのデータ登録は完了する。但し、この処理は、中間コード31とセキュリティデータ32を実際に取得・格納するまでは行わないようにしてもよい。 On the other hand, the LSI 20 stores the application-specific secret key 62) and the “encrypted terminal information” 25 among the various information obtained by the decryption in the nonvolatile memory 24, and stores these storage addresses in the memory. They are stored in the terminal shared key storage address 72 and the encrypted terminal information storage address 74 of the management table 70, respectively. At this time, a storage area for the intermediate code 31 and the security data 32 in the nonvolatile memory 24 is also secured, and these storage addresses are also stored in the intermediate code storage address 76 and the security data storage address 78 of the memory management table 70, respectively. To do. Thereby, the data registration in the memory management table 70 is completed. However, this processing may not be performed until the intermediate code 31 and the security data 32 are actually acquired and stored.
その後は、決済端末10は、上記の通り取得した各種設定情報を用いて、実施例1等の場合と同様にして、上記電子マネー事業者センタ接続情報を用いて電子マネー事業者のセンタ装置2へアクセスし、中間コード31とセキュリティデータ32を取得して、既に確保してある領域に中間コード31とセキュリティデータ32を記憶する。これにより、当該新たな電子マネーに係わる決済処理機能が活性化されることになる。 Thereafter, the payment terminal 10 uses the various setting information acquired as described above, and uses the electronic money business center connection information, as described above, in the same manner as in the first embodiment or the like. The intermediate code 31 and the security data 32 are acquired, and the intermediate code 31 and the security data 32 are stored in an already secured area. As a result, the payment processing function related to the new electronic money is activated.
その後の決済処理、締め処理、撤去処理は、実施例1の図2で説明したstep14,15,16の処理と略同様であってよいが、本例ではこれらの処理の際に、端末管理CPU11からは処理対象の電子マネーアプリのサービスコードを含んだコマンド指示(決済・締めなど)がLSI20に送信され、LSI20はメモリ管理テーブル70を参照することで上記指示されたサービスコードに対応する中間コード31、セキュリティデータ32の格納アドレスを読取り、読取ったアドレスに格納されている中間コード31等を用いることで、指示された電子マネーに係わる決済処理等を実行することになる。 Subsequent settlement processing, closing processing, and removal processing may be substantially the same as the processing of steps 14, 15, and 16 described in FIG. 2 of the first embodiment, but in this example, the terminal management CPU 11 performs these processing. Transmits a command instruction (settlement / tightening etc.) including the service code of the electronic money application to be processed to the LSI 20, and the LSI 20 refers to the memory management table 70 so that the intermediate code corresponding to the instructed service code is transmitted. 31. By reading the storage address of the security data 32 and using the intermediate code 31 or the like stored at the read address, the settlement processing related to the instructed electronic money is executed.
以上説明したように、本システムによれば、電子マネー事業者は、電子マネーアプリケーションのセキュリティ処理に係わる情報(中間コード31、セキュリティデータ32等)を、端末メーカ側に公開することなく、これらの情報は出荷後にネットワークを介して決済端末10にセキュアにダウンロードすることで電子マネー決済処理を実行可能な状態にすることができる。また、サービスコードによるメモリ管理を行うことで、複数の電子マネーアプリの管理ができ、一台で複数の電子マネーアプリケーションを実行可能となる。 As described above, according to the present system, the electronic money business operator can disclose information related to the security processing of the electronic money application (intermediate code 31, security data 32, etc.) The information can be made into a state where electronic money payment processing can be executed by securely downloading to the payment terminal 10 via the network after shipment. In addition, by managing the memory using the service code, a plurality of electronic money applications can be managed, and a plurality of electronic money applications can be executed by one unit.
最後に、図13に、上記センタ装置2やサーバ1のコンピュータのハードウェア構成の一例を示しておく。
図13に示すコンピュータ100は、CPU101、メモリ102、入力部103、出力部104、記憶部105、記録媒体駆動部106、及びネットワーク接続部107を有し、これらがバス108に接続された構成となっている。
Finally, FIG. 13 shows an example of the hardware configuration of the computer of the center device 2 or the server 1.
A computer 100 illustrated in FIG. 13 includes a CPU 101, a memory 102, an input unit 103, an output unit 104, a storage unit 105, a recording medium driving unit 106, and a network connection unit 107, which are connected to a bus 108. It has become.
CPU101は、当該コンピュータ100全体を制御する中央処理装置である。
メモリ102は、任意の処理実行の際に、記憶部105(あるいは可搬型記録媒体109)に記憶されているプログラムあるいはデータを一時的に格納するRAM等のメモリである。CPU101は、メモリ102に読み出したプログラム/データを用いて、各種処理を実行する。
The CPU 101 is a central processing unit that controls the entire computer 100.
The memory 102 is a memory such as a RAM that temporarily stores a program or data stored in the storage unit 105 (or the portable recording medium 109) when executing arbitrary processing. The CPU 101 executes various processes using the program / data read out to the memory 102.
出力部104は、例えばディスプレイ等であり、入力部103は、例えば、キーボード、マウス等である。
ネットワーク接続部107は、例えば上記ネットワーク7に接続して、他の情報処理装置との通信(コマンド/データ送受信等)を行う為の構成である。
The output unit 104 is, for example, a display, and the input unit 103 is, for example, a keyboard, a mouse, or the like.
The network connection unit 107 is configured to connect to the network 7 and perform communication (command / data transmission / reception, etc.) with other information processing apparatuses, for example.
記憶部105は、例えばハードディスク等であり、上述した各種処理をCPU101により実現させる為のアプリケーションプログラムが格納されている。すなわち、当該コンピュータ100がセンタ装置2である場合には、上記前準備処理や、各決済端末10への中間コード31等のダウンロード処理等を、CPU101により実行させる為のアプリケーションプログラムが格納されている。また、当該コンピュータ100がサーバ1である場合には、上記前準備処理や、出荷設定処理(S6〜S9)や、図11に示すダウンロード処理(S11〜S14)等を、CPU101により実行させる為のアプリケーションプログラムが格納されている。 The storage unit 105 is, for example, a hard disk or the like, and stores an application program for realizing the various processes described above by the CPU 101. That is, in the case where the computer 100 is the center device 2, an application program for causing the CPU 101 to execute the above preparatory processing, the download processing of the intermediate code 31 to each settlement terminal 10, and the like is stored. . Further, when the computer 100 is the server 1, the CPU 101 executes the preparatory process, the shipment setting process (S6 to S9), the download process (S11 to S14) shown in FIG. Stores application programs.
尚、当該コンピュータ100がセンタ装置2である場合、記憶部105は上記不揮発メモリ3に相当すると考えても良い(メモリ102は揮発性メモリ4に相当すると考えてよい)。 When the computer 100 is the center device 2, the storage unit 105 may be considered to correspond to the nonvolatile memory 3 (the memory 102 may be considered to correspond to the volatile memory 4).
CPU101は、上記記憶部105に格納されている各種プログラムを読み出し・実行することにより、上述した各種処理を実現する。
あるいは、上記記憶部105に格納される各種プログラム/データは、可搬型記録媒体109に記憶されているものであってもよい。この場合、可搬型記録媒体109に記憶されているプログラム/データは、記録媒体駆動部106によって読み出される。可搬型記録媒体109とは、例えば、FD(フレキシブル・ディスク)109a、CD−ROM109b、その他、DVD、光磁気ディスク等である。
The CPU 101 implements the various processes described above by reading and executing various programs stored in the storage unit 105.
Alternatively, the various programs / data stored in the storage unit 105 may be stored in the portable recording medium 109. In this case, the program / data stored in the portable recording medium 109 is read by the recording medium driving unit 106. The portable recording medium 109 is, for example, an FD (flexible disk) 109a, a CD-ROM 109b, a DVD, a magneto-optical disk, or the like.
あるいは、また、上記プログラム/データは、ネットワーク接続部107により接続しているネットワークを介して、他の装置内に記憶されているものをダウンロードするものであってもよい。あるいは、更に、インターネットを介して、外部の他の装置内に記憶されているものをダウンロードするものであってもよい。 Alternatively, the program / data may be downloaded from another apparatus via a network connected by the network connection unit 107. Or you may download further what was memorize | stored in the other external apparatus via the internet.
また、本発明は、上記本発明の各種処理をコンピュータ上で実現するプログラムを記録した可搬型記憶媒体として構成できるだけでなく、当該プログラム自体として構成することもできる。 In addition, the present invention can be configured not only as a portable storage medium recording a program for realizing the various processes of the present invention on a computer, but also as the program itself.
1 端末メーカサーバ
2 電子マネー事業者センタ装置
3 不揮発メモリ
4 揮発性メモリ
5 POSレジ
6 ICカード
7 ネットワーク
10 決済端末
11 端末管理CPU
12 RAM
13 ROM
14 UI
15 第1通信部
16 第2通信部
17 第3通信部
20 LSI
21 CPU
22 第4通信部
23 揮発性メモリ
24 不揮発性メモリ
25 センタ秘匿鍵D(Kcc)で暗号化された端末情報
26 第5通信部
31 中間コード
32 セキュリティデータ
33 暗号化中間コード
34 暗号化セキュリティデータ
35 端末共有鍵A(Kct)で暗号化されたセンタ情報
36 端末の公開鍵B(Kpt)で暗号化された中間コード
37 端末の公開鍵B(Kpt)で暗号化されたセキュリティデータ
41 送信データ
42 暗号化データ
43 復号データ
44 応答データ
45 暗号化データ
46 復号データ
51 暗号化データ
52 暗号化データ
62 アプリ固有秘匿鍵
63 非決済プログラム
70 メモリ管理テーブル
71 サービスコード
72 端末共有鍵格納アドレス
73 データ長
74 暗号化端末情報格納アドレス
75 データ長
76 中間コード格納アドレス
77 データ長
78 セキュリティデータ格納アドレス
79 データ長
100 コンピュータ
101 CPU
102 メモリ
103 入力部
104 出力部
105 記憶部
106 記録媒体駆動部
107 ネットワーク接続部
108 バス
DESCRIPTION OF SYMBOLS 1 Terminal maker server 2 Electronic money provider center apparatus 3 Non-volatile memory 4 Volatile memory 5 POS cash register 6 IC card 7 Network 10 Payment terminal 11 Terminal management CPU
12 RAM
13 ROM
14 UI
15 1st communication part 16 2nd communication part 17 3rd communication part 20 LSI
21 CPU
22 Fourth communication unit 23 Volatile memory 24 Non-volatile memory 25 Terminal information 26 encrypted with the center secret key D (Kcc) 26 Fifth communication unit 31 Intermediate code 32 Security data 33 Encrypted intermediate code 34 Encrypted security data 35 Center information encrypted with terminal shared key A (Kct) 36 Intermediate code encrypted with terminal public key B (Kpt) Security data 41 encrypted with terminal public key B (Kpt) Transmission data 42 Encrypted data 43 Decrypted data 44 Response data 45 Encrypted data 46 Decrypted data 51 Encrypted data 52 Encrypted data 62 Encrypted data 62 Non-payment program 70 Non-payment program 70 Memory management table 71 Service code 72 Terminal shared key storage address 73 Data length 74 Encryption terminal information storage address 75 Data length 76 Intermediate code storage address 77 data length 78 security data storage address 79 data length 100 computer 101 CPU
102 Memory 103 Input unit 104 Output unit 105 Storage unit 106 Recording medium drive unit 107 Network connection unit 108 Bus
Claims (17)
予め、前記センタ装置と前記サーバ装置とが前記ネットワークを介して相互に通信処理を行うことで、前記センタ装置は、自己に係わる特定情報が前記決済端末メーカ側のみが保持する第1の秘匿鍵によって暗号化されて成る暗号化特定情報を取得して保持し、前記サーバ装置は、出荷する各決済端末毎に、その決済端末に係わる所定情報である端末情報が前記センタ装置のみが保持する第2の秘匿鍵によって暗号化されて成る暗号化端末情報を取得して保持する前準備処理ステップと、
前記サーバ装置が、出荷する各決済端末毎に、その決済端末の前記端末情報及びその前記暗号化端末情報と前記第1の秘匿鍵と、前記前準備処理ステップの際に取得した前記特定情報とを設定・格納する設定処理ステップと、
前記各決済端末が出荷されて任意の設置場所に設置された後、
前記センタ装置と前記決済端末とが前記ネットワークを介して暗号化通信により相互認証処理を行う処理であって、前記決済端末が前記暗号化端末情報を含む第1の送信情報を前記センタ装置へ送信し、該センタ装置は該第1の送信情報と前記第2の秘匿鍵と前記前備処理ステップの際に取得した前記端末情報に基づいて通信相手の決済端末を認証し、前記センタ装置が前記暗号化特定情報を含む第2の送信情報を前記決済端末に送信し、該決済端末は該第2の送信情報と前記第1の秘匿鍵と前記特定情報に基づいて前記センタ装置を認証する相互認証処理ステップと、
前記相互認証が成功した場合、前記センタ装置が前記決済端末に対して、電子マネー決済処理に係わる決済処理セキュリティ情報を、前記相互認証処理ステップで得られる暗号鍵によって暗号化して配信する配信ステップと、
前記決済端末が、該暗号化された配信情報を前記相互認証処理ステップで得られる前記暗号鍵によって復号することで前記決済処理セキュリティ情報を取得する決済処理セキュリティ情報取得ステップと、
を有することを特徴とする決済処理セキュリティ情報配信方法。 A payment processing security information distribution method in a network system in which a center device of an electronic money business operator, a server device of a payment terminal manufacturer, and each payment terminal are connected to a network and can mutually transmit and receive data,
Since the center device and the server device perform communication processing with each other via the network in advance, the center device has a first secret key in which specific information related to itself is held only by the payment terminal manufacturer side. The server apparatus acquires and holds the encryption specific information encrypted by the server apparatus, and for each payment terminal to be shipped, the server apparatus stores only terminal information that is predetermined information related to the payment terminal. A preparatory processing step of acquiring and holding encrypted terminal information encrypted by the secret key of 2;
For each payment terminal shipped by the server, the terminal information of the payment terminal, the encrypted terminal information, the first secret key, and the specific information acquired during the pre-processing step Setting processing steps for setting and storing
After each payment terminal is shipped and installed at any installation location,
The center device and the payment terminal perform mutual authentication processing by encrypted communication via the network, and the payment terminal transmits first transmission information including the encrypted terminal information to the center device. Then, the center apparatus authenticates a settlement terminal of the communication partner based on the first transmission information, the second secret key, and the terminal information acquired at the preparation processing step, and the center apparatus Second transmission information including encrypted specific information is transmitted to the payment terminal, and the payment terminal authenticates the center apparatus based on the second transmission information, the first secret key, and the specific information. An authentication process step;
A distribution step in which, when the mutual authentication is successful, the center device encrypts and distributes payment processing security information related to electronic money payment processing to the payment terminal using the encryption key obtained in the mutual authentication processing step; ,
A payment processing security information acquisition step in which the payment terminal acquires the payment processing security information by decrypting the encrypted distribution information with the encryption key obtained in the mutual authentication processing step;
A payment processing security information delivery method characterized by comprising:
前記センタ装置は、受信した暗号化端末情報を前記第2の秘匿鍵によって復号化でき、且つ該復号化により得た端末情報が前記前準備処理ステップの際に登録されている端末情報と一致する場合には、通信相手の決済端末を認証成功とし、
前記決済端末は、受信した暗号化特定情報を前記第1の秘匿鍵により復号化でき、且つ復号化により得た特定情報が前記設定処理ステップで設定された特定情報と一致する場合には、通信相手のセンタ装置を認証成功とすることを特徴とする請求項1記載の決済処理セキュリティ情報配信方法。 In the mutual authentication processing step,
The center device can decrypt the received encrypted terminal information with the second secret key, and the terminal information obtained by the decryption matches the terminal information registered at the pre-preparation processing step. In this case, the payment terminal of the communication partner is authenticated successfully,
The payment terminal can decrypt the received encrypted specific information with the first secret key, and if the specific information obtained by the decryption matches the specific information set in the setting processing step, the communication terminal 2. The settlement processing security information distribution method according to claim 1, wherein the other center device is authenticated successfully.
前記決済端末は、更に、前記端末情報のハッシュ値を生成し、該端末情報ハッシュ値を前記第1の送信情報に含めて前記センタ装置へ送信し、
前記センタ装置は、前記端末情報一致に加えて更に、前記復号化により得た端末情報のハッシュ値を生成し該ハッシュ値が受信した前記端末情報ハッシュ値と一致する場合に、通信相手の決済端末を認証成功と判定し、
前記センタ装置は、更に、前記特定情報のハッシュ値を生成し、該特定情報ハッシュ値を前記第2の送信情報に含めて前記決済端末へ送信し、
前記決済端末は、前記特定情報一致に加えて更に、前記復号化により得た特定情報のハッシュ値を生成し該ハッシュ値が受信した前記特定情報ハッシュ値と一致する場合に、通信相手のセンタ装置を認証成功と判定することを特徴とする請求項2記載の決済処理セキュリティ情報配信方法。 In the mutual authentication processing step,
The payment terminal further generates a hash value of the terminal information, includes the terminal information hash value in the first transmission information, and transmits the hash value to the center device.
In addition to the terminal information match, the center device further generates a hash value of the terminal information obtained by the decryption, and when the hash value matches the received terminal information hash value, the settlement terminal of the communication partner Is determined to be successful,
The center device further generates a hash value of the specific information, includes the specific information hash value in the second transmission information, and transmits the hash value to the payment terminal.
The settlement terminal further generates a hash value of the specific information obtained by the decryption in addition to the specific information match, and when the hash value matches the received specific information hash value, the communication partner center device The payment processing security information distribution method according to claim 2, wherein authentication is determined to be successful.
前記センタ装置は前記特定情報を前記サーバ装置へ送信し、該サーバ装置が該特定情報を記憶すると共に該特定情報を自装置が保持する前記第1の秘匿鍵で暗号化して前記暗号化特定情報を生成して該暗号化特定情報を前記センタ装置に返信し、該センタ装置が該暗号化特定情報を記憶し、
前記サーバ装置は、出荷対象の決済端末がある毎に、その前記端末情報を前記センタ装置に送信し、該センタ装置は該端末情報を記憶すると共に該端末情報を自装置のみが保持する前記第2の秘匿鍵で暗号化して前記暗号化端末情報を生成して該暗号化端末情報を前記サーバ装置に返信し、該サーバ装置が該暗号化端末情報を記憶することを特徴とする請求項1記載の決済処理セキュリティ情報配信方法。 In the preparation step,
The center device transmits the specific information to the server device, and the server device stores the specific information and encrypts the specific information with the first secret key held by the own device. And the encryption specific information is returned to the center device, and the center device stores the encryption specific information,
Each time there is a settlement terminal to be shipped, the server device transmits the terminal information to the center device, and the center device stores the terminal information and holds only the terminal information. 2. The encrypted terminal information is generated by encryption with a secret key of 2 and the encrypted terminal information is returned to the server apparatus, and the server apparatus stores the encrypted terminal information. The payment processing security information delivery method described.
前記設定処理ステップで設定・格納される前記端末情報及びその前記暗号化端末情報と前記第1の秘匿鍵と、前記配信される決済処理セキュリティ情報は、前記LSI内の記憶手段に記憶され、
前記相互認証処理ステップ、配信ステップに係わる暗号化/復号化処理は前記LSI内で実行されることを特徴とする請求項1記載の決済処理セキュリティ情報配信方法。 The payment terminal has an tamper resistant LSI and a control means outside the LSI,
The terminal information set and stored in the setting processing step, the encrypted terminal information, the first secret key, and the distributed payment processing security information are stored in a storage unit in the LSI,
2. The settlement processing security information distribution method according to claim 1, wherein encryption / decryption processing related to the mutual authentication processing step and the distribution step is executed in the LSI.
前記配信された決済処理セキュリティ情報は、前記不揮発性メモリに格納されることを特徴とする請求項5記載の決済処理セキュリティ情報配信方法。 The storage means in the LSI consists of a volatile memory and a nonvolatile memory,
6. The payment processing security information distribution method according to claim 5, wherein the distributed payment processing security information is stored in the nonvolatile memory.
前記配信された決済処理セキュリティ情報は、前記揮発性メモリに格納されることを特徴とする請求項5記載の決済処理セキュリティ情報配信方法。 The storage means in the LSI consists of a volatile memory and a nonvolatile memory,
6. The payment processing security information distribution method according to claim 5, wherein the distributed payment processing security information is stored in the volatile memory.
前記設定処理ステップで設定される前記端末情報及びその前記暗号化端末情報と前記第1の秘匿鍵は、前記LSI内の不揮発性メモリに記憶され、前記相互認証処理ステップ、配信ステップに係わる暗号化/復号化処理は前記LSI内で実行され、
前記LSIは、前記決済処理セキュリティ情報取得ステップによって取得した前記決済処理セキュリティ情報を、自己が生成した暗号鍵を用いて暗号化して、該暗号化決済処理セキュリティ情報を前記第2記憶手段に記憶し、任意のときに該第2記憶手段から前記暗号化決済処理セキュリティ情報を取得して、これを前記暗号鍵を用いて復号して得た前記決済処理セキュリティ情報を前記LSI内の揮発性メモリ上に一時的に記憶することを特徴とする請求項1記載の決済処理セキュリティ情報配信方法。 The payment terminal includes a tamper-resistant LSI and second storage means outside the LSI,
The terminal information set in the setting processing step, the encrypted terminal information, and the first secret key are stored in a nonvolatile memory in the LSI, and encryption related to the mutual authentication processing step and the distribution step is performed. / Decoding processing is executed in the LSI,
The LSI encrypts the payment processing security information acquired by the payment processing security information acquisition step using an encryption key generated by itself, and stores the encrypted payment processing security information in the second storage unit. The encrypted payment processing security information is obtained from the second storage means at any time, and the payment processing security information obtained by decrypting the encrypted payment processing security information is stored in the volatile memory in the LSI. The payment processing security information distribution method according to claim 1, wherein the payment processing security information distribution method is stored temporarily.
前記サーバ装置は、前記設定処理ステップにおいて前記暗号化端末情報と前記第1の秘匿鍵は設定しないで、前記決済端末が出荷されて任意の設置場所に設置された後に前記ネットワークを介して、その決済端末が扱う各電子マネーに係わる前記第1の秘匿鍵と前記暗号化端末情報を当該決済端末に配信して設定させるオンライン設定処理ステップを更に有し、
決済端末は、自己が扱う各電子マネー毎にその電子マネー事業者のセンタ装置にアクセスして、前記設定処理ステップとオンライン設定処理ステップにより設定された情報に基づいて、前記相互認証処理ステップと配信ステップとによりその電子マネーの決済処理に係わる前記決済処理セキュリティ情報を取得することを特徴とする請求項1記載の決済処理セキュリティ情報配信方法。 The pre-preparation processing step is executed between each of the center devices of the plurality of electronic money business operators and the server device of the settlement terminal manufacturer. At this time, the server device includes the plurality of electronic money business operators. And encrypting the specific information with the different first secret key for each center device and returning the encrypted specific information to the center device, the encrypted terminal information acquired from each center device, the specific information Information is stored in association with each electronic money business operator,
The server device does not set the encryption terminal information and the first secret key in the setting processing step, and after the payment terminal is shipped and installed at an arbitrary installation location, An online setting processing step for distributing and setting the first secret key and the encrypted terminal information related to each electronic money handled by the payment terminal to the payment terminal;
The payment terminal accesses the center device of the electronic money business operator for each electronic money handled by itself, and the mutual authentication processing step and the distribution based on the information set by the setting processing step and the online setting processing step. 2. The payment processing security information distribution method according to claim 1, wherein the payment processing security information relating to the payment processing of the electronic money is acquired by a step.
前記各決済端末は、前記通知を受信すると、自己の記憶手段の空き容量と前記全データ容量とに基づいて、前記配信すべき全データを新たに格納可能か否かを判定し、格納可能な場合のみ前記サーバ装置に前記オンライン設定処理ステップによる配信を実行させることを特徴とする請求項9記載の決済処理セキュリティ情報配信方法。 Before performing the distribution in the online setting processing step, the server device determines electronic money to be distributed among the electronic money handled by the settlement terminal, and for each electronic money to be distributed, Notifying the payment terminal of the delivery destination of the volume of all data to be delivered in connection with electronic money,
Upon receipt of the notification, each settlement terminal determines whether or not all the data to be distributed can be newly stored based on the free capacity of the storage means and the total data capacity, and can be stored. 10. The payment processing security information distribution method according to claim 9, wherein the server apparatus is caused to execute distribution by the online setting processing step only in the case.
前記センタ装置と前記サーバ装置は、それぞれ、第1の前準備処理手段、第2の前準備処理手段を有し、
予め前記第1の前準備処理手段と第2の前準備処理手段とによって前記ネットワークを介して相互に所定データの送受信を行うことで、前記センタ装置の第1の前準備処理手段は、自装置に係わる特定情報が前記決済端末メーカ側のみが保持する第1の秘匿鍵によって暗号化されて成る暗号化特定情報を取得して保持し、前記サーバ装置の第2の前準備処理手段は、出荷する各決済端末毎に、その決済端末に係わる所定情報である端末情報が前記センタ装置のみが保持する第2の秘匿鍵によって暗号化されて成る暗号化端末情報を取得して保持し、
前記サーバ装置は、更に、出荷する各決済端末毎に、その決済端末の前記端末情報及びその前記暗号化端末情報と、前記第1の秘匿鍵と前記特定情報を設定する設定処理手段を備え、
前記センタ装置は、更に、第1の相互認証処理手段と、セキュリティ情報配信手段とを備え、
前記各決済端末は、第2の相互認証処理手段と、配信情報格納手段とを備え、
前記各決済端末が出荷されて任意の設置場所に設置された後、
前記第1の相互認証処理手段と第2の相互認証処理手段とによって前記ネットワークを介して暗号化通信により相互認証処理を行い、その際、前記決済端末が前記暗号化端末情報を含む第1の送信情報を前記センタ装置へ送信し、該センタ装置は該第1の送信情報と前記第2の秘匿鍵と予め登録されている前記端末情報に基づいて通信相手の決済端末を認証し、前記センタ装置が前記暗号化特定情報を含む第2の送信情報を前記決済端末に送信し、該決済端末は該第2の送信情報と前記第1の秘匿鍵と前記特定情報に基づいて前記センタ装置を認証し、
前記相互認証処理が成功した場合、前記センタ装置のセキュリティ情報配信手段は、前記決済端末に対して、電子マネー決済処理に係わる決済処理セキュリティ情報を、該相互認証処理で得られる暗号鍵によって暗号化して配信し、該決済端末の前記配信情報格納手段は配信された暗号化決済処理セキュリティ情報を前記相互認証処理で得られる暗号鍵によって復号して格納することを特徴とする決済処理セキュリティ情報配信システム。 A network system in which a center device of an electronic money business operator, a server device of a payment terminal manufacturer, and each payment terminal are connected to a network and can transmit and receive data to and from each other.
The center device and the server device each have a first pre-processing unit and a second pre-processing unit,
The first preparatory processing means of the center device can transmit and receive predetermined data between the first preparatory processing means and the second preparatory processing means via the network in advance. Specific information relating to the encrypted information is obtained by encrypting with the first secret key held only by the payment terminal manufacturer, and the second preparatory processing means of the server device For each payment terminal, the terminal information which is predetermined information related to the payment terminal is acquired and held by encrypting the second secret key held only by the center device, and held.
The server device further includes setting processing means for setting the terminal information of the payment terminal and the encrypted terminal information, the first secret key, and the specific information for each payment terminal to be shipped,
The center device further includes first mutual authentication processing means and security information distribution means,
Each payment terminal comprises second mutual authentication processing means and distribution information storage means,
After each payment terminal is shipped and installed at any installation location,
The first mutual authentication processing means and the second mutual authentication processing means perform mutual authentication processing by encrypted communication via the network, and at that time, the payment terminal includes the first information including the encrypted terminal information. Transmitting the transmission information to the center device, the center device authenticating a settlement terminal of a communication partner based on the first transmission information, the second secret key, and the terminal information registered in advance; An apparatus transmits second transmission information including the encrypted specific information to the payment terminal, and the payment terminal determines the center apparatus based on the second transmission information, the first secret key, and the specific information. Authenticate,
When the mutual authentication process is successful, the security information distribution means of the center device encrypts the payment processing security information related to the electronic money payment process to the payment terminal using the encryption key obtained by the mutual authentication process. A payment processing security information distribution system, wherein the distribution information storage means of the payment terminal decrypts and stores the distributed encrypted payment processing security information with an encryption key obtained by the mutual authentication processing .
予め、前記ネットワークを介して前記センタ装置との通信を行って、出荷する各決済端末毎に、その決済端末に係わる所定情報である端末情報を送信して、該センタ装置から該端末情報が当該センタ装置のみが保持する第2の秘匿鍵によって暗号化されて成る暗号化端末情報が返信されてくるとこれを保持し、前記センタ装置から該センタ装置に係わる特定情報が送られてくると、該特定情報を前記決済端末メーカ側のみが保持する第1の秘匿鍵によって暗号化して該暗号化特定情報をセンタ装置に返信する前準備処理手段と、
出荷する各決済端末毎に、その決済端末の前記端末情報及びその前記暗号化端末情報と、前記第1の秘匿鍵と前記特定情報を設定する設定処理手段と、
を有することを特徴とするサーバ装置。 An electronic money business center device, a payment terminal manufacturer's server device, and each payment terminal are connected to a network and are server devices in a network system capable of mutually transmitting and receiving data,
Preliminarily communicate with the center device via the network, and send terminal information, which is predetermined information related to the payment terminal, to each payment terminal to be shipped. When the encrypted terminal information encrypted by the second secret key held only by the center device is returned, the encrypted terminal information is held, and when the specific information related to the center device is sent from the center device, A preparatory processing means for encrypting the specific information with a first secret key held only by the payment terminal maker and returning the encrypted specific information to the center device;
For each payment terminal to be shipped, setting processing means for setting the terminal information of the payment terminal and the encrypted terminal information, the first secret key, and the specific information;
The server apparatus characterized by having.
予め、前記ネットワークを介して前記サーバ装置との通信を行って、自装置に係わる特定情報を前記サーバ装置に送信し、該サーバ装置から該特定情報が前記決済端末メーカ側のみが保持する第1の秘匿鍵によって暗号化されて成る暗号化特定情報が返信されてくるとこれを記憶し、前記サーバ装置から各決済端末毎の所定情報である各端末情報が送信されてくると、該各端末情報を当該センタ装置のみが保持する第2の秘匿鍵によって暗号化して該暗号化端末情報を前記サーバ装置に返信する前準備処理手段と、
任意の設置場所に設置された前記決済端末から前記ネットワークを介してアクセスがあると、暗号化通信による相互認証処理を行い、その際、前記暗号化特定情報を含む第2の送信情報を決済端末へ送信し、該決済端末から前記暗号化端末情報を含む第1の送信情報が送られてくると、該第1の送信情報と前記第2の秘匿鍵と予め登録されている前記端末情報に基づいて通信相手の決済端末を認証する相互認証処理手段と、
前記相互認証処理手段によって通信相手の決済端末と相互に認証成功した場合、前記決済端末に対して、電子マネー決済処理に係わる決済処理セキュリティ情報を、該相互認証処理で得られる暗号鍵によって暗号化して配信するセキュリティ情報配信手段と、
を有することを特徴とするセンタ装置。 An electronic money business center device, a payment terminal manufacturer's server device, and each payment terminal are connected to a network and are the center device in a network system capable of mutually transmitting and receiving data,
First, communication with the server device is performed via the network, specific information related to the device is transmitted to the server device, and the specific information is only held by the payment terminal manufacturer from the server device. When the encrypted specific information encrypted with the secret key is returned, it is stored, and when each terminal information which is predetermined information for each settlement terminal is transmitted from the server device, each terminal A preparatory processing means for encrypting information with a second secret key held only by the center device and returning the encrypted terminal information to the server device;
When there is an access through the network from the payment terminal installed at an arbitrary installation location, mutual authentication processing by encrypted communication is performed, and at this time, the second transmission information including the encrypted specific information is transmitted to the payment terminal. When the first transmission information including the encrypted terminal information is sent from the payment terminal, the terminal information registered in advance with the first transmission information, the second secret key, and the like. Mutual authentication processing means for authenticating the settlement terminal of the communication partner based on,
When the mutual authentication processing means successfully authenticates with the other party's payment terminal, the payment processing security information related to the electronic money payment processing is encrypted with the encryption key obtained by the mutual authentication processing. Security information distribution means for distributing
The center apparatus characterized by having.
少なくとも自己の端末情報が前記センタ装置のみが保持する第2の秘匿鍵によって暗号化されて成る暗号化端末情報と、前記決済端末メーカ側のみが保持する第1の秘匿鍵と、前記センタ装置に係わる特定情報を含む各種設定情報を、該サーバ装置により設定させてこれを自端末内の記憶部に格納する設定情報格納手段と、
自端末が任意の設置場所に設置された後、前記ネットワークを介して前記センタ装置にアクセスして、暗号化通信により相互認証処理を行い、その際、前記設定された暗号化端末情報を含む第1の送信情報を前記センタ装置に送信すると共に、該センタ装置から送られてくる、前記特定情報が前記第1の秘匿鍵によって暗号化されて成る暗号化特定情報を含む第2の送信情報を受信すると、該第2の送信情報と前記第1の秘匿鍵と前記特定情報に基づいて前記センタ装置を認証する相互認証処理手段と、
前記相互認証処理手段によって前記センタ装置と相互に認証処理が成功した場合、前記センタ装置から電子マネー決済処理に係わる決済処理セキュリティ情報が前記相互認証処理で得られる暗号鍵によって暗号化されて送られてくると、該暗号化された決済処理セキュリティ情報を前記相互認証処理で得られる暗号鍵によって復号して格納する決済処理セキュリティ情報取得・格納手段と、
を有することを特徴とする決済端末。 An electronic money business center device, a payment terminal manufacturer's server device, and each payment terminal are connected to the network and are the payment terminal in the network system capable of mutually transmitting and receiving data,
Encrypted terminal information obtained by encrypting at least its own terminal information with a second secret key held only by the center device, a first secret key held only by the settlement terminal manufacturer, and the center device Setting information storage means for causing the server device to set various setting information including the specific information concerned and storing the setting information in a storage unit in the terminal itself;
After the own terminal is installed at an arbitrary installation location, the center apparatus is accessed via the network, and mutual authentication processing is performed by encrypted communication. At that time, the encrypted terminal information including the set encrypted terminal information is included. The first transmission information is transmitted to the center device, and the second transmission information including the encrypted specific information transmitted from the center device and including the specific information encrypted with the first secret key is transmitted. When received, mutual authentication processing means for authenticating the center device based on the second transmission information, the first secret key, and the specific information;
When the mutual authentication processing means succeeds in mutual authentication processing with the center device, payment processing security information related to electronic money payment processing is sent from the center device after being encrypted with an encryption key obtained by the mutual authentication processing. The payment processing security information acquisition / storage means for decrypting and storing the encrypted payment processing security information with the encryption key obtained by the mutual authentication processing;
A payment terminal.
予め、前記ネットワークを介して前記センタ装置との通信を行って、出荷する各決済端末毎に、その決済端末に係わる所定情報である端末情報を送信して、該センタ装置から該端末情報が当該センタ装置のみが保持する第2の秘匿鍵によって暗号化されて成る暗号化端末情報が返信されてくるとこれを保持し、前記センタ装置から該センタ装置に係わる特定情報が送られてると、該特定情報を前記決済端末メーカ側のみが保持する第1の秘匿鍵によって暗号化して該暗号化特定情報をセンタ装置に返信する前準備処理手段と、
出荷する各決済端末毎に、その決済端末の前記端末情報及びその前記暗号化端末情報と、前記第1の秘匿鍵と前記特定情報を設定する設定処理手段、
として機能させる為のプログラム。 A computer of the server device in a network system in which a center device of an electronic money business operator, a server device of a payment terminal manufacturer, and each payment terminal are connected to a network and can exchange data with each other,
Preliminarily communicate with the center device via the network, and send terminal information, which is predetermined information related to the payment terminal, to each payment terminal to be shipped. When the encrypted terminal information encrypted by the second secret key held only by the center device is returned, the encrypted terminal information is held, and when the specific information related to the center device is sent from the center device, A preparatory processing means for encrypting the specific information with a first secret key held only by the payment terminal maker and returning the encrypted specific information to the center device;
Setting processing means for setting the terminal information of the payment terminal and the encrypted terminal information, the first secret key, and the specific information for each payment terminal to be shipped;
Program to function as.
予め、前記ネットワークを介して前記サーバ装置との通信を行って、自装置に係わる特定情報を前記サーバ装置に送信し、該サーバ装置から該特定情報が前記決済端末メーカ側のみが保持する第1の秘匿鍵によって暗号化されて成る暗号化特定情報が返信されてくるとこれを記憶し、前記サーバ装置から各決済端末毎の所定情報である各端末情報が送信されてくると、該各端末情報を当該センタ装置のみが保持する第2の秘匿鍵によって暗号化して該暗号化端末情報を前記サーバ装置に返信する前準備処理手段と、
任意の設置場所に設置された前記決済端末から前記ネットワークを介してアクセスがあると、暗号化通信による相互認証処理を行い、その際、前記暗号化特定情報を含む第2の送信情報を決済端末へ送信し、該決済端末から前記暗号化端末情報を含む第1の送信情報が送られてくると、該第1の送信情報と前記第2の秘匿鍵と予め登録されている前記端末情報に基づいて通信相手の決済端末を認証する相互認証処理手段と、
前記相互認証処理手段によって通信相手の決済端末と相互に認証成功した場合、前記決済端末に対して、電子マネー決済処理に係わる決済処理セキュリティ情報を、該相互認証処理で得られる暗号鍵によって暗号化して配信するセキュリティ情報配信手段、
として機能させる為のプログラム。 A computer of the center device in a network system in which a center device of an electronic money company, a server device of a payment terminal manufacturer, and each payment terminal are connected to a network and can exchange data with each other,
First, communication with the server device is performed via the network, specific information related to the device is transmitted to the server device, and the specific information is only held by the payment terminal manufacturer from the server device. When the encrypted specific information encrypted with the secret key is returned, it is stored, and when each terminal information which is predetermined information for each settlement terminal is transmitted from the server device, each terminal A preparatory processing means for encrypting information with a second secret key held only by the center device and returning the encrypted terminal information to the server device;
When there is an access through the network from the payment terminal installed at an arbitrary installation location, mutual authentication processing by encrypted communication is performed, and at this time, the second transmission information including the encrypted specific information is transmitted to the payment terminal. When the first transmission information including the encrypted terminal information is sent from the payment terminal, the terminal information registered in advance with the first transmission information, the second secret key, and the like. Mutual authentication processing means for authenticating the settlement terminal of the communication partner based on,
When the mutual authentication processing means successfully authenticates with the other party's payment terminal, the payment processing security information related to the electronic money payment processing is encrypted with the encryption key obtained by the mutual authentication processing. Security information distribution means to distribute
Program to function as.
少なくとも自己の端末情報が前記センタ装置のみが保持する第2の秘匿鍵によって暗号化されて成る暗号化端末情報と、前記決済端末メーカ側のみが保持する第1の秘匿鍵と、前記センタ装置に係わる特定情報を含む各種設定情報を、該サーバ装置により設定させてこれを自端末内の記憶部に格納する設定情報格納手段と、
自端末が任意の設置場所に設置された後、前記ネットワークを介して前記センタ装置にアクセスして、暗号化通信により相互認証処理を行い、その際、前記設定された暗号化端末情報を含む第1の送信情報を前記センタ装置に送信すると共に、該センタ装置から送られてくる、前記特定情報が前記第1の秘匿鍵によって暗号化されて成る暗号化特定情報を含む第2の送信情報を受信すると、該第2の送信情報と前記第1の秘匿鍵と前記特定情報に基づいて前記センタ装置を認証する相互認証処理手段と、
前記相互認証処理手段によって前記センタ装置と相互に認証処理が成功した場合、前記センタ装置から電子マネー決済処理に係わる決済処理セキュリティ情報が前記相互認証処理で得られる暗号鍵によって暗号化されて送られてくると、該暗号化された決済処理セキュリティ情報を前記相互認証処理で得られる暗号鍵によって復号して格納する決済処理セキュリティ情報取得・格納手段、
として機能させる為のプログラム。
An electronic money business center device, a payment terminal manufacturer's server device, and each payment terminal are connected to a network and can exchange data with each other.
Encrypted terminal information obtained by encrypting at least its own terminal information with a second secret key held only by the center device, a first secret key held only by the settlement terminal manufacturer, and the center device Setting information storage means for causing the server device to set various setting information including the specific information concerned and storing the setting information in a storage unit in the terminal itself;
After the own terminal is installed at an arbitrary installation location, the center apparatus is accessed via the network, and mutual authentication processing is performed by encrypted communication. At that time, the encrypted terminal information including the set encrypted terminal information is included. The first transmission information is transmitted to the center device, and the second transmission information including the encrypted specific information transmitted from the center device and including the specific information encrypted with the first secret key is transmitted. When received, mutual authentication processing means for authenticating the center device based on the second transmission information, the first secret key, and the specific information;
When the mutual authentication processing means succeeds in mutual authentication processing with the center device, payment processing security information related to electronic money payment processing is sent from the center device after being encrypted with an encryption key obtained by the mutual authentication processing. The payment processing security information acquisition / storage means for decrypting and storing the encrypted payment processing security information with the encryption key obtained by the mutual authentication processing,
Program to function as.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009054180A JP5391743B2 (en) | 2009-03-06 | 2009-03-06 | Payment processing security information distribution method, payment processing security information distribution system, center device thereof, server device, payment terminal, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009054180A JP5391743B2 (en) | 2009-03-06 | 2009-03-06 | Payment processing security information distribution method, payment processing security information distribution system, center device thereof, server device, payment terminal, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010212805A JP2010212805A (en) | 2010-09-24 |
JP5391743B2 true JP5391743B2 (en) | 2014-01-15 |
Family
ID=42972570
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009054180A Expired - Fee Related JP5391743B2 (en) | 2009-03-06 | 2009-03-06 | Payment processing security information distribution method, payment processing security information distribution system, center device thereof, server device, payment terminal, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5391743B2 (en) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012043725A1 (en) * | 2010-09-30 | 2012-04-05 | 楽天株式会社 | Program, payment method, information recording medium, and portable terminal |
US10832020B2 (en) * | 2012-07-31 | 2020-11-10 | Felica Networks, Inc. | Information processing system and method for secure exchange of information |
JP5823455B2 (en) * | 2013-07-31 | 2015-11-25 | 東芝テック株式会社 | Payment terminal and program |
JP6858030B2 (en) * | 2017-02-13 | 2021-04-14 | パーク二四株式会社 | Settlement machine connection terminal, checkout machine management server and computer program |
JP6776948B2 (en) * | 2017-03-03 | 2020-10-28 | 株式会社デンソーウェーブ | Payment system |
CN112202561B (en) * | 2020-09-29 | 2024-09-17 | 福州东方智慧网络科技有限公司 | Autonomous settlement method based on distributed terminal |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4516399B2 (en) * | 2004-10-08 | 2010-08-04 | フェリカネットワークス株式会社 | Information processing apparatus and method, and program |
JP2007066033A (en) * | 2005-08-31 | 2007-03-15 | Matsushita Electric Ind Co Ltd | Data loading method and program, and terminal device |
JP2007067890A (en) * | 2005-08-31 | 2007-03-15 | Matsushita Electric Ind Co Ltd | Data load method, program, and terminal |
JP2008306685A (en) * | 2007-06-11 | 2008-12-18 | Fuji Electric Holdings Co Ltd | Security information setting system, master terminal thereof, general terminal, and program |
-
2009
- 2009-03-06 JP JP2009054180A patent/JP5391743B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2010212805A (en) | 2010-09-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107111500B (en) | Wireless provisioning of application libraries | |
US7844819B2 (en) | Application authentication system | |
KR100520476B1 (en) | Digital contents issuing system and digital contents issuing method | |
KR100896391B1 (en) | External device | |
US9270466B2 (en) | System and method for temporary secure boot of an electronic device | |
CN101258505B (en) | Secure software updates | |
CN110855791B (en) | Block link point deployment method and related equipment | |
JP4326443B2 (en) | Information processing apparatus, information processing method, and program | |
US20080059797A1 (en) | Data Communication System, Agent System Server, Computer Program, and Data Communication Method | |
US20130145455A1 (en) | Method for accessing a secure storage, secure storage and system comprising the secure storage | |
US20060101136A1 (en) | Information management apparatus, information management method, and program | |
JP2004104539A (en) | Memory card | |
JP2009100394A (en) | Information processing apparatus and method, recording medium, program, and information processing system | |
CN102314576A (en) | In NFC equipment, carry out the method for Secure Application | |
JP2004265026A (en) | Application authentication system and device | |
JP5391743B2 (en) | Payment processing security information distribution method, payment processing security information distribution system, center device thereof, server device, payment terminal, and program | |
CN101088249B (en) | Method for protecting a telecommunications terminal connected to an end user identification module | |
JPWO2008018457A1 (en) | Memory controller, secure memory card, and secure memory card system | |
CN115066863B (en) | System and techniques for cross-account device key transfer in benefit denial systems | |
JP2012065123A (en) | Ic card system, communication terminal therefor and portable terminal therefor | |
US9674272B2 (en) | Information processing apparatus and method, and program | |
JP4765608B2 (en) | Data processing apparatus, data processing program, and data processing system | |
JP4708754B2 (en) | Server client system, client, data processing method, and program | |
JP5386860B2 (en) | Payment system, payment processing apparatus, validity verification apparatus, validity verification request processing program, validity verification processing program, and validity verification method | |
JP2008306685A (en) | Security information setting system, master terminal thereof, general terminal, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A625 | Written request for application examination (by other person) |
Free format text: JAPANESE INTERMEDIATE CODE: A625 Effective date: 20111013 |
|
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: 20130628 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130709 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130829 |
|
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: 20130917 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130930 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5391743 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 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 |