JP6100145B2 - Payment terminal device, update program - Google Patents
Payment terminal device, update program Download PDFInfo
- Publication number
- JP6100145B2 JP6100145B2 JP2013238868A JP2013238868A JP6100145B2 JP 6100145 B2 JP6100145 B2 JP 6100145B2 JP 2013238868 A JP2013238868 A JP 2013238868A JP 2013238868 A JP2013238868 A JP 2013238868A JP 6100145 B2 JP6100145 B2 JP 6100145B2
- Authority
- JP
- Japan
- Prior art keywords
- unit
- terminal device
- program
- encryption key
- payment
- 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
Images
Description
この明細書に記載の実施形態は、決済端末装置に関する。 Embodiment described in this specification is related with a payment terminal device.
例えば決済端末装置のケースが開けられた場合や、プログラム、データの改ざんが発生した場合、「タンパ検出センサ回路」の動作により「タンパ」が検出される。タンパが検出されると、決済端末装置は、暗号鍵あるいはプログラムを消去して、自らを停止して利用不可能にするようになっている。 For example, when the case of the payment terminal device is opened or when a program or data is falsified, “tamper” is detected by the operation of the “tamper detection sensor circuit”. When a tamper is detected, the settlement terminal device erases the encryption key or program, stops itself and makes it unusable.
この決済端末装置を利用不可能にする手法や復旧方法として、以下のような実装がある。
1.決済端末装置が停止した場合に決済端末装置内の暗号鍵及びプログラムを消去して、機能を停止させる。停止した決済端末装置はメーカで新たな暗号鍵とプログラムを再度導入する。
2.決済端末装置が暗号鍵を削除し、搭載プログラムは機能停止したことをネットワーク経由で管理運用会社のサーバに通知し、ネットワーク経由で暗号鍵を変更する。これにより再度利用可能となる。
There are the following implementations as methods for making this payment terminal device unusable and recovery methods.
1. When the payment terminal device stops, the encryption key and the program in the payment terminal device are deleted and the function is stopped. The settlement terminal device that has been stopped introduces a new encryption key and program again by the manufacturer.
2. The payment terminal device deletes the encryption key, and the installed program notifies the server of the management company via the network that the function has stopped, and changes the encryption key via the network. This makes it available again.
従来の決済端末装置やシステムでは、セキュリティの機密性が重要視されており、タンパが検出されたものは安全性の観点から、機能停止することが目的とされている。上記1の実装では、装置自身がメーカに送り返されることから、メーカが交換用の決済端末装置を持ってくるまで、決済業務は停止を余儀なくされる。このため、決済端末装置の停止時にカード決済を望む消費者が現れたときには、消費者に要求に応えられなくなり信用が低下する。
In conventional settlement terminal devices and systems, security confidentiality is regarded as important, and the function of a tamper detected is intended to be stopped from the viewpoint of safety. In the
上記2の実装では、上記1の実装よりも決済端末装置の停止時間が短くなるメリットがある。しかしながら、決済端末装置が管理運営会社の管理サーバにネットワーク接続されている場合にのみ対応可能である。セキュリティの観点で、決済端末装置が決済処理会社の決済処理サービスにしか接続できない場合、すなわち、管理サーバとの接続が禁止されている環境である場合、暗号鍵の変更(更新)はできない。よって、上記2の実装は、効果が限定的である。
The implementation of the above 2 has an advantage that the stop time of the payment terminal device is shorter than the implementation of the above 1. However, this is only possible when the payment terminal device is connected to the management server of the management company. In terms of security, the encryption key cannot be changed (updated) when the payment terminal device can only connect to the payment processing service of the payment processing company, that is, in an environment where connection with the management server is prohibited. Therefore, the
実施形態は上述した問題点を解決するためになされたものであり、タンパが検出されても、決済端末装置を引き続き運用することが可能な技術を提供することを目的とする。 The embodiment has been made to solve the above-described problems, and an object thereof is to provide a technique capable of continuously operating a payment terminal device even if a tamper is detected.
実施形態の決済端末装置は、第1ユニットと第2ユニットを有する。第1ユニットは、通信部と、記憶部と、制御部とを有する。通信部は、暗号化されるデータを第2ユニットに送信する。記憶部は、第2ユニットで実行される第1プログラムを記憶している。制御部は、決済端末装置でタンパが検出されると、第1ユニットおよび第2ユニットのそれぞれで記憶されている第1データを用いて、暗号化を行うための第1暗号鍵、または記憶部に記憶されている第1プログラムのいずれか一方もしくは両方を暗号化し、暗号化された第1暗号鍵または第1プログラムのいずれか一方もしくは両方を、通信部に出力する。 The settlement terminal device of the embodiment has a first unit and a second unit. The first unit includes a communication unit, a storage unit, and a control unit. The communication unit transmits the data to be encrypted to the second unit. The storage unit stores a first program executed by the second unit. When the tampering is detected by the settlement terminal device, the control unit uses the first data stored in each of the first unit and the second unit to encrypt the first encryption key or the storage unit. One or both of the first programs stored in the program are encrypted, and either one or both of the encrypted first encryption key and first program are output to the communication unit.
図1は、実施形態に係るシステム構成例を示した図である。システム500は、決済端末装置5、POS(Point of Sale)端末装置6、決済処理サーバ8、およびサーバ50を有する。
FIG. 1 is a diagram illustrating a system configuration example according to the embodiment. The
POS端末装置6は、いわゆるキャッシュレジスタであり、キーボードやバーコードスキャナを介して顧客が購入した商品のデータを入力することで、会計処理を行うための端末装置である。サーバ50は、店舗内商品を管理するサーバ(コンピュータ)であり、例えば商品の在庫管理や価格設定などを行う。サーバ50は、POS端末装置6から購入商品に関する情報を受信し、各商品についての集計を行い、統計情報をまとめる。
The
決済端末装置5は、キャッシュカードやクレジットカード(図1のカード1)を読み取る端末装置である。また決済端末装置5は、今回の購入金額などの取引情報をPOS端末装置6から受信し、この取引情報と読み取ったカード番号などを決済情報として決済処理サーバ8に送信する。決済端末装置5は、支払い可否や金額などの支払情報をPOS端末装置6に送信する。
The
決済端末装置5は、決済処理ユニット3を有し、その上部にカード読取ユニット2が積層配置している。決済端末装置5のフロント側面(操作者が操作する側の側面)には、伝票印刷ユニット4を有する。
The
決済処理サーバ8は、受信するカード番号や取引情報などに基づき、代金の支払い可否について判定するサーバ(コンピュータ)である。支払い可能である場合は、決済処理サーバ8は、実際の決済処理を実行する。決済処理サーバ8は、判定結果や決済処理の実行結果を決済端末装置5に返信する。
The
POS端末装置6とサーバ50とは、LAN(Local Area Network)もしくは広域回線網などを用いてデータの送受信を行っている。決済端末装置5と決済処理サーバ8とは、専用回線となる決済ネットワーク7を介して、決済情報などのデータの送受信を行っている。
The
図2は、図1に示すシステム500の機能ブロック図であり、主に決済端末装置の構成例を示す図である。決済端末装置5は、カード読取ユニット2、決済処理ユニット3、伝票印刷ユニット4を有する。カード読取ユニット2は、後述の磁気ヘッド10を用いてカード1を直接的に読み取るユニットである。カード読取ユニット2は、読み取ったカード番号などの個人情報データを決済処理ユニット3に送信する。決済処理ユニット3は、カード読取ユニット2が読み取ったデータを受信し、またPOS端末装置6から取引情報を受信して、これらに基づき決済データを決済処理サーバ8に送信する。尚、決済データの内容やデータフォーマット、暗号処理については、事前に規定されているものであるため、これ以上の説明を割愛する。
FIG. 2 is a functional block diagram of the
決済処理ユニット3は、決済可否の結果や決済処理の実行結果を決済処理サーバ8より受信する。このとき受信するデータ内容やフォーマット、暗号処理についても、従前より規定されているものである。決済処理ユニット3は、得られる決済可否の結果や決済処理の実行結果を、POS端末装置6に送信する。
The
伝票印刷ユニット4は、決済処理ユニット3からの指示に基づき、今回の決済についての伝票を印刷する。伝票には、例えば購入商品の名称やその個数、支払い金額、顧客のサイン記入欄が印刷されている。
The
カード読取ユニット2と決済処理ユニット3との間や、決済処理ユニット3とPOS端末装置6との間は、シリアルI/F(Interface)で接続されている。シリアルI/Fは、例えばRS−232Cでの接続やUSB(Universal Serial Bus)の規格に準拠した接続である。また、決済端末装置5の内部、より具体的にはカード読取ユニット2と決済処理ユニット3とは、第3者によりモニタリングされる可能性があるため、カードデータの保護の観点から、暗号化してデータの送受信を行っている。決済処理ユニット3と決済処理サーバ8との間は、規定に定められた暗号化方式でデータ送受信が行われる。
A serial I / F (Interface) is connected between the
以降、決済端末装置5について、さらに詳細な説明を行うが、まずは前提となる技術について説明し、次いで第1実施形態、第2実施形態の各態様を説明する。尚、以降の説明では伝票印刷ユニット4の説明を省略する。
Hereinafter, the
(前提技術)
まず、図9、図10を参照しつつ、関連する前提技術を説明する。ここでは、図1、図2で示した決済端末装置5を決済端末装置5Aに置き換えるものとして説明する。図9に示す決済端末装置5Aは、カード読取ユニット2A、決済処理ユニット3Aを有する。カード読取ユニット2Aは、磁気ヘッド10、カードデータ入力部11、デジタル化処理部12、MCU(Micro Control Unit)13、通信部15、タンパ検出部16を有する。またMCU13はメモリ部14を有し、メモリ部14は、プログラムP、および決済処理ユニット3Aと通信を行うための暗号鍵Kを記憶している。プログラムPは、例えばカード1の読取から通信部15を介してカード情報を送信するまでの一連の動作など、カード読取ユニット2A内部で実行され、MCU13が実行するためのコードを定義したプログラムである。
(Prerequisite technology)
First, the related prerequisite technology will be described with reference to FIGS. Here, description will be made assuming that the
カードデータ入力部11やデジタル化処理部12は、例えばASIC(application specific integrated circuit)で実装されているものとする。通信部15は、ケーブルを接続する端子や通信を制御するためのチップセットを含む。またタンパ検出の方法は、タンパ用スイッチでの検出や、金属メッシュ破壊検出、各種センサによる物理量の検出など、多くのものがある。タンパ検出部16は、これらを実現することができる実装とする。
Assume that the card
決済処理ユニット3Aは、通信部17、MCU21、記憶部22、USB−I/F部19、LAN−I/F部20を有する。MCU21は、記憶部22に事前に記憶されているプログラムQを演算実行することで、暗号処理や決済処理を遂行する装置である。プログラムQは、決済処理ユニット3Aの内部で実行され、MCU21が実行するためのコードを定義したプログラムである。また記憶部22は、カード読取ユニット2Aと通信を行うための暗号鍵Kを記憶している。このように、カード読取ユニット2Aと決済処理ユニット3Aとは同じ暗号鍵Kを記憶している。
The settlement processing unit 3A includes a
通信部17は、ケーブルを接続する端子や通信を制御するためのチップセットを含む。USB−I/F部19は、POS端末装置6との通信を制御し、USB規格に準拠したデバイスを有する。LAN−I/F部20は、ネットワークカードを含み、決済処理サーバ8との間で、専用線を介して通信を行う。
The
図9に示す決済端末装置5Aの動作例を、図10のフローチャートを参照しつつ説明する。まず、決済端末装置5Aが初めて導入されて電力が供給されると、決済端末装置5Aは、初期化処理として、各機能を有効にするための開局処理を実施する(ACT001)。この後、決済端末装置5Aを用いた運用が開始される。
An example of the operation of the
決済端末装置5Aの運用時に、タンパ検出部16がタンパを検出しない場合(ACT002、No)、通常の業務処理となる。この処理は、カード読取ユニット2Aでの処理はプログラムPによって行われ、決済処理ユニット3Aでの処理は、記憶部22に記憶されているプログラムQにより行われる。
When the
決済処理ユニット3AのMCU21は、USB−I/F部19を経由してPOS端末装置6から取引金額などの取引情報を取得する(ACT003)。この取引情報は、一時的に記憶部22に記憶される。カード読取ユニット2Aのカードデータ入力部11は、磁気ヘッド10を制御してカード1内に保存されているカード番号を読み取る(ACT004)。デジタル化処理部12は、カード番号をアナログ信号からデジタルデータに変換する(ACT005)。MCU13は、デジタル化されたカード番号のコードをメモリ部14に一時的に記憶して(ACT006)、暗号化鍵Kを用いてこのコードを暗号化する(ACT007)。MCU13は、通信部15を制御して、暗号鍵Kで暗号化されたコードを決済処理ユニット3Aに送信する(ACT008)。
The
決済処理ユニット3Aの通信部17が暗号化されたコードを受信すると(ACT009)、MCU21は、暗号鍵Kを記憶部22から取得し、暗号鍵Kを用いて受信したコードを復号する(ACT010)。これにより、MCU21はカード番号を取得する。MCU21は、LAN−I/F部20を動作させて、カード番号およびACT003で記憶部22に一時的に記憶した取引情報を、決済処理サーバ8へ送信する(ACT011)。この通信は、専用回線網である決済ネットワーク7を介して行い、また事前に定義される方式で暗号化通信される。これにより決済処理サーバ8にて決済処理が行われる(ACT012)。MCU21は、決済の可否結果や決済処理の実行結果の情報を決済サーバ8から受信し、取引完了通知をPOS端末装置6に送信する(ACT013)。
When the
決済端末装置5Aは、上記ACT003〜ACT013の動作を、一取引が行われる際に実行する。一方、タンパ検出部16がタンパを検出した場合(ACT002、Yes)、カード読取ユニット2AのMCU13は、タンパが検出されたことを示す情報を決済処理ユニット3Aに送信する。決済処理ユニット3AのMCU21は、POS端末装置6にタンパが検出されたことを通知する(ACT043)。またMCU13、MCU21は、各ユニット内のメモリ部14、記憶部22にある、プログラムP、Q、およびそれぞれに記憶された暗号鍵Kを消去する(ACT044)。MCU13、MCU21は、動作停止コマンドを実行する(ACT045)。これにより決済端末装置5Aは動作を停止する。
The
(第1実施形態)
上記前提技術のように、タンパが検出されて決済端末装置5Aの動作が停止すると、メーカでの修理が行われるまでカード決済を行うことができない。第1実施形態では、タンパを検出しても引き続き運用を続ける決済端末装置の実装例を説明する。
(First embodiment)
If the tampering is detected and the operation of the
タンパの種別としては、大きく分けて2つ考えられる。1つは第3者によるプログラムの改ざんであり、もう1つはスキミング用カードの装着やユニットの置き換えなど、第3者によるハードウェアの構成変更である。第1実施形態では、プログラムの改ざんがあった場合はプログラムを開局時の状態に戻す。またハードウェアの構成変更があった場合は、暗号鍵を新たに生成し、以降、この新規の暗号鍵でデータ送受信を行う。暗号鍵の変更により、ハードウェアのスキミングや置き換えがあった場合でも、中のデータの読取りを阻止することができる。 There are two types of tamper types. One is alteration of a program by a third party, and the other is hardware configuration change by a third party, such as installation of a skimming card or replacement of a unit. In the first embodiment, when the program has been tampered with, the program is returned to the state at the time of opening. When the hardware configuration is changed, a new encryption key is generated, and thereafter, data transmission / reception is performed using the new encryption key. Even when hardware skimming or replacement is performed by changing the encryption key, reading of the data therein can be prevented.
図3に、第1実施形態の決済端末装置の構成例を示す。決済端末装置5は、カード読取ユニット2、決済処理ユニット3を有する。カード読取ユニット2は、磁気ヘッド101、カードデータ入力部102、コード化処理部103(上記前提技術のデジタル化処理部12に相当)、MCU104、セキュリティチップ106、通信部107を有する。尚、図3のカッコ表記は、記憶しているプログラムやデータである。
FIG. 3 shows a configuration example of the payment terminal device of the first embodiment. The
磁気ヘッド101、カードデータ入力部102、コード化処理部103、通信部107は、上記前提技術と同様の構成であり、同様の動作を行う。MCU104はメモリ部105を有する。このメモリ部105には、上記前提技術と同様の命令が定義されるプログラムP、および決済処理ユニット3と通信を行うための暗号鍵K1を記憶している。またセキュリティチップ106は、TMP(Trusted Platform Module)であり、セキュリティチップ106固有の識別情報を有する。以下、セキュリティチップ106固有の識別情報を固有ID1と称する。またセキュリティチップ106は、開局時のプログラムPのハッシュ値も記憶する。尚、暗号鍵K1は、このセキュリティチップ106内で記憶していてもよい。
The
決済処理ユニット3は、通信部110、MCU113、暗号化メモリ部114、USB−I/F部111、LAN−I/F部112、セキュリティチップ109を有する。通信部110、USB−I/F部111、LAN−I/F部112は、上記前提技術と同様の構成であり、同様の動作を実行する。
The
MCU113は、暗号処理や決済処理を遂行する装置であり、暗号化メモリ部114に事前に記憶されているプログラムQを演算実行する。
The
暗号化メモリ部114は、上記前提技術と同様の命令が定義されたプログラムQ、およびカード読取ユニット2と通信を行うための暗号鍵K1を記憶している。これらプログラムQ、暗号鍵K1をMCU113内にある不図示の記憶部に記憶させる実装でもよい。
The
また暗号化メモリ部114には、活性化鍵(ここでは暗号鍵Kpと称す)を内部でセットしていない場合はアクセス不可とする記憶領域がある。この領域を、本例では鍵領域を称する。この鍵領域内に、上記プログラムP、プログラムQと同じプログラムが記憶されている。この鍵領域内に記憶されたプログラムP、Qは、プログラムが改ざんされた場合の置き換え用のプログラムであり、工場出荷前に事前に導入されていたり、初期起動時に事前に鍵領域内に導入されたりする。
In addition, the
セキュリティチップ109は、TMPであり、セキュリティチップ107固有の識別情報を記憶している。この識別情報を固有ID2と称する。またセキュリティチップ109は、カード読取ユニット2内にあるセキュリティチップ106の識別情報である固有ID1も記憶している。さらにセキュリティチップ109は、暗号化メモリ部114の上記鍵領域にアクセスするための暗号鍵Kpを記憶している。セキュリティチップ109は、開局時のプログラムQのハッシュ値も記憶する。尚、暗号鍵K1は、このセキュリティチップ109内で記憶していてもよい。
The
第1実施形態のタンパ検出部108は、カード読取ユニット2、決済処理ユニット3のいずれにも属さず、これらの外部に位置している。タンパ検出部108は、カード読取ユニット2、決済処理ユニット3のタンパを検出する。
The
図4、図5は、第1実施形態の動作例を示したフローチャートである。図4は、主に通常運用時の動作を例示しており、図5は、タンパが検出された場合の動作例を示している。まず初期導入の開局時に、カード読取ユニット2のMCU104は、プログラムPのハッシュ値を計測し、ハッシュ値を不揮発性に記憶する(ACT050)。ハッシュ値は、セキュリティチップ106に記憶されるものとするが、メモリ部105に記憶されてもよい。決済処理ユニット3のMCU113も同様に、開局時に、プログラムQを暗号化メモリ部114から取得し、そのハッシュ値を計測する(ACT050)。このハッシュ値は、セキュリティチップ109に記憶されるものとするが、暗号化メモリ部114に記憶されてもよい。
4 and 5 are flowcharts showing an operation example of the first embodiment. 4 mainly illustrates an operation during normal operation, and FIG. 5 illustrates an operation example when a tamper is detected. First, when the station is initially introduced, the
以降、タンパ検出部108がタンパを検出するまで、決済端末装置5は、ACT003〜ACT013に示すフローを実行する。尚、暗号鍵K1でコード値(カード番号)を暗号化、復号化する処理(ACT051、ACT052参照)以外は、図4に示すACT003〜ACT013の各処理と上記前提技術内で説明したACT003〜ACT013とは同じものである。よってここでの説明を割愛する。
Thereafter, until the
次に、タンパが検出された場合について説明する。尚、以下の説明では、カード読取ユニット2でタンパが検出されるものとして説明する。
Next, a case where a tamper is detected will be described. In the following description, it is assumed that a tamper is detected by the
タンパ検出部108がカード読取ユニット2についてのタンパを検出する場合(ACT002、Yes)、タンパ検出部108は、タンパ検出信号をMCU104に送信する。MCU104は、セキュリティチップ106に記憶されたハッシュ値を読み出し(ACT101)、開局時のプログラムPのハッシュ値と、現状のプログラムコードのハッシュ値とを比較する(ACT102)。比較した結果、一部でも異なる値がある場合はプログラムPに改ざんがあるとみなすことができる。
When the
プログラムPの改ざんでは無い場合(ACT103、No)、ハードウェアの構成が変更されたものとして扱い、暗号化鍵の置き換えを行う。まずMCU104は、ハードウェアの構成変更が起きたことを決済処理ユニット3に通知する。通知を受けた決済処理ユニット3内のMCU113は、新たな暗号鍵K1’を生成する(ACT104)。本例では新たに暗号鍵を生成するものとしたが、例えば暗号化メモリ部114やセキュリティチップ109内に、事前に予備の暗号鍵を記憶させておき、MCU113がこの予備の暗号鍵を取得する、という実装でもよい。
If the program P has not been tampered with (
MCU113は、セキュリティチップ109に記憶されている固有ID1を取得し、固有ID1を用いて、生成した暗号鍵K1’を暗号化し、カード読取ユニット2に送信する(ACT105)。このように固有ID1で送信用データ(ここでは暗号鍵K1’)を暗号化することで、セキュリティも確保される。またこのとき、MCU113は、暗号化メモリ部114に記憶されている暗号鍵K1を、生成した暗号鍵K1’に置き換える。
The
カード読取ユニット2のMCU104は、セキュリティチップ106内にある固有ID1を用いて、送信されたデータを復号して暗号鍵K1’を取り出す。MCU104は、メモリ部105に記憶されている暗号鍵K1を、新しい暗号鍵K1’に置き換える(ACT106)。その後MCU104は、タンパ検出部108に所定信号を送信してタンパ検出をリセットする(ACT107)。一方、決済処理ユニット3のMCU113は、POS端末装置6にタンパが検出されたことを通知する(ACT008)。これら各処理が行われた後はACT002に戻る。尚、通知を受けたPOS端末装置6は、メッセージ表示を行い利用者に通知する。以降、利用者によるメーカへの問い合わせなどが行われ、適切に対処される。
The
ACT103の判定に戻る。ACT103で、プログラムPの改ざんと判定される場合(ACT103、Yes)、MCU104は、プログラムPの改ざんがあったことを決済処理ユニット3に通知する。決済処理ユニット3のMCU113は、暗号化メモリ部114の鍵領域を活性化させるための暗号鍵Kpを、セキュリティチップ109から取得する(ACT110)。MCU113は、この暗号鍵Kpを、暗号化メモリ部114内の事前に決められている揮発性領域にセットする(記憶させる)(ACT111)。
Return to the determination of ACT103. If it is determined in
ここで、暗号化メモリ部114について、図6を用いて説明する。暗号化メモリ部114は、アクセス対象の領域のアドレスを指定したアドレス信号180、当該アクセスがリードであるかライトであるかを示すリード/ライト信号182を入力する。リード/ライト信号がオンであるときに実データの読み書きが行われる。図6では、この実データがデータ信号181として示されている。暗号化メモリ部114がアドレス信号180やリード/ライト信号182を入力すると、アドレス制御部183は、メモリ素子186内の指定されたアドレスへのアクセスを許可する。これによりリードもしくはライトが実行される。図6に示すメモリ素子1やメモリ素子nは、この動作のみで読み書き可能な領域であり、実行用のプログラムQ、暗号鍵K1は、この動作のみで出力される。
Here, the
メモリ素子186内のメモリ素子2は、暗号鍵Kpが揮発性記憶部185内にセットされていないと読み書きができない記憶素子となっている。MCU113は、セキュリティチップ109から取得した暗号鍵Kpを揮発性記憶部185にセットする。これにより、暗号化/復号化部184は、アドレス信号180がメモリ素子2を示すものである場合、メモリ素子2内に記憶されているプログラムPを、暗号鍵Kpを用いて復号する。この復号後のプログラムPが暗号化メモリ部114から出力される。MCU113は、このようにして改ざん前のプログラムPを入手する。メモリ素子2内のプログラムQを入手する場合も同様の動作となる。
The
尚、図6に示す例では、メモリ素子2のみを鍵領域としているが、例えばメモリ素子1やメモリ素子nの記憶領域を鍵領域としてもよい。これらメモリ素子1やメモリ素子nの鍵領域は、暗号鍵Kpとは別の活性化鍵(暗号鍵)を揮発性記憶部185にセットすることでアクセス可能となる実装でもよい。
In the example shown in FIG. 6, only the
図5のフローチャートの説明に戻る。MCU113は、セキュリティチップ109に記憶されている、固有ID1を暗号鍵K2とし(ACT112)、この暗号鍵K2(固有ID1)で、プログラムPを暗号化して、カード読取ユニット2に送信する(ACT113)。固有ID1で暗号化することにより、通信部210、通信部107間のデータ送受信のセキュリティは確保される。カード読取ユニット2のMCU105は、固有ID1をセキュリティチップ106から取得し、受信したデータを固有ID1で復号してプログラムPを取得する。MCU105は、改ざんのあったプログラムを、取得したプログラムPに置き換える(ACT114)。これにより、改ざん前のプログラムPに戻すことができる。ACT114の処理後、ACT107に進む。
Returning to the flowchart of FIG. The
上記例では、カード読取ユニット2でタンパが検出される例を示した。カード読取ユニット2、決済処理ユニット3の両ユニットで同じ暗号鍵を保持しておく必要があるため、暗号鍵の交換の場合(ACT103、Noの場合)、両ユニットがそれぞれで鍵の置き換え処理を行う。一方、プログラム改ざんの場合(ACT103、Yesの場合)、両ユニットのプログラムを交換する必要はなく、タンパが検出されたユニット(上記例ではカード読取ユニット2)で使用するプログラムのみを交換すればよい。
In the above example, an example in which tampering is detected by the
このように、上記説明ではカード読取ユニット2のプログラムPのみを交換する実装例を説明したが、決済処理ユニット3が使用するプログラムの交換も、同手法で行うことができる。この場合、暗号化メモリ部114の鍵領域には、決済処理ユニット3が使用する、元の状態のプログラムPを事前に記憶させておく。プログラムの改ざんがあった場合、MCU113は、暗号鍵Kpを取得して暗号化メモリ部114の鍵領域を活性化し、元の状態のプログラムPを取得してこれに置き換える。またこの場合、決済処理ユニット3内部で処理が完結するため、プログラムPを固有ID1(暗号鍵K2)で暗号化することは不要であるが、当然固有ID1で暗号化して復号化する処理行っても構わない。
Thus, in the above description, the implementation example in which only the program P of the
上記例では、カード読取ユニット2の処理ではMCU104が主として動作し、決済処理ユニット3の処理ではMCU113が主として動作するものとして説明したが、この動作の一部もしくは全部を、セキュリティチップ106、109で行う実装でも構わない。
In the above example, it has been described that the
また上記例では、プログラムに改ざんがある場合はプログラムのみを元の状態に戻す実装であるが、プログラムに加えて暗号鍵も置き換える実装でもよい。この場合、ACT110からACT114を実行した後にACT104からACT106を実行するか、もしくはACT104からACT106を実行した後にACT110からACT114を実行する。また、ハードウェアの構成変更、ソフトウェアの改ざんに拘わらず、タンパを検出した場合は常にプログラムと暗号鍵の両方を置き換える実装であってもよい。この場合、ACT103の判定は不要となり、上記同様に、ACT114の後にACT104を行うか、もしくはACT106の後にACT110を行う実装となる。
In the above example, when the program is tampered with, only the program is returned to the original state. However, the encryption key may be replaced in addition to the program. In this case, after
(第2実施形態)
保守の観点でプログラムを更新する機能を有するPOS端末装置がある。この機能は、POS端末装置が動作主体となって、自装置内のプログラムおよび決済端末装置内で記憶されるプログラムを更新する。第2実施形態では、POS端末装置がこのプログラムの更新機能を有している場合についての実装例を、図7、図8を参照しつつ説明する。
(Second Embodiment)
There is a POS terminal device having a function of updating a program from the viewpoint of maintenance. This function updates the program stored in the self-device and the program stored in the payment terminal device, with the POS terminal device as the operating entity. In the second embodiment, an implementation example in the case where the POS terminal device has an update function of this program will be described with reference to FIGS.
図7に第2実施形態の構成例を示す。図7に示すPOS端末装置6Aは、第1実施形態のPOS端末装置6の機能に加え、自装置で使用するプログラムおよび決済端末装置5Bで使用するプログラムを、自動で更新する機能を有する。また決済端末装置5Bは、第1実施形態と同様のカード読取ユニット2を有し、また決済処理ユニット3Bを有する。決済処理ユニット3Bの通信部110、USB−I/F部111、LAN−I/F部112は、上記第1実施形態と同様である。
FIG. 7 shows a configuration example of the second embodiment. The
決済処理ユニット3Bは、第1実施形態で説明した暗号化メモリ部114を有さず、替わりに記憶部212を有する。記憶部212は、決済処理ユニット3Bが使用するプログラムQ、およびカード読取ユニット2と暗号化通信を行うための暗号鍵K1を記憶している。プログラムQ、暗号鍵K1は第1実施形態で示したものと同様である。また暗号化メモリ部114を有さないため、セキュリティチップ209は、暗号鍵Kpを記憶していない。またMCU213は、タンパが発生した際にプログラムを元に戻す処理を実行しない。
The
決済端末装置5Bの動作例を図8に示す。図8に示す処理は、第1実施形態の図4で示した処理とつながっている。すなわち、タンパ検出があった場合(図4のACT002、Yes)、処理は図8のACT101に進み、図8のACT108の後は図4のACT002に移行する。
An operation example of the
ACT101〜ACT108は、第1実施形態と同様であるため、ここでの説明を割愛する。ACT103で、当該タンパ検出がプログラム改ざんである場合(ACT103、Yes)、MCU213は、USB−I/F部111を動作させて、POS端末装置6Aへ、プログラムアップデートを行うように要求電文を送信する(ACT201)。その後、決済端末装置5Aは、アップデートが完了するまで待機する(ACT202、Noのループ)。アップデートが完了すると(ACT202、Yes)、ACT107に進む。尚、要求電文を受け付けたPOS端末装置6Aは、決済端末装置5Aのプログラムアップデート処理を行う。この処理の具体例については割愛するが、例えば、第1実施形態のACT110〜ACT114(図5参照)のような動作となる。
Since ACT101 to ACT108 are the same as those in the first embodiment, description thereof is omitted here. If the tamper detection is altered in ACT 103 (
上記各実施形態の暗号方式としては、DES(Data Encryption Standard)、AES(Advanced Encryption Standard)などの従前の共通鍵暗号方式を用いることができる。 As the encryption method of each of the above embodiments, a conventional common key encryption method such as DES (Data Encryption Standard) or AES (Advanced Encryption Standard) can be used.
実施形態では、セキュリティチップ106の識別情報である固有ID1を用いて、置き換え用のプログラムPや新規作成の暗号鍵K1’を暗号化し、カード読取ユニット2に送信する実装例を示したが、セキュリティチップの識別情報に限らず、カード読取ユニット2、決済処理ユニット3(決済処理ユニット3B)とで記憶されている共通の同一情報であればよい。
In the embodiment, the implementation example in which the replacement program P and the newly created encryption key K1 ′ are encrypted using the
第1ユニットは、実施形態の決済処理ユニット3、3Bに相当する。第2ユニットは、実施形態のカード読取ユニット2に相当する。通信部、第1通信部は、実施形態の通信部110に相当する。記憶部は、実施形態の暗号化メモリ部114に相当する。制御部は、実施形態のMCU113、213に相当する。制御部で実施する動作の一部もしくは全部を、セキュリティチップ106、109で行ってもよい。第2通信部は、実施形態のUSB−I/F部111に相当する。
The first unit corresponds to the
第1プログラムは、実施形態のプログラムPに相当する。第1データは、実施形態の固有ID1に相当する。第1暗号鍵は、実施形態の暗号鍵K1’に相当する。第2暗号鍵は、実施形態の暗号鍵Kpに相当する。
The first program corresponds to the program P of the embodiment. The first data corresponds to the
また実施形態では、暗号鍵や置き換え用のプログラムなどの各データの記憶場所を特定しているが、これに限定されない。また、カード読取ユニット2内部の構成の一部もしくは全部と、決済処理ユニット3内部(決済処理ユニット3B内部)の構成の一部もしくは全部を入れ替えてもよい。すなわち、プログラムや暗号鍵の置き換え動作の際、上記実施形態では決済処理ユニット3(決済処理ユニット3B)が能動的に動作し、カード読取ユニット2が受動的に動作するものとして説明したが、逆であってもよい。この場合、第1ユニットは、カード読取ユニット2に相当し、各種データやユニットの機能も入れ替わる。
In the embodiment, the storage location of each data such as an encryption key and a replacement program is specified, but the present invention is not limited to this. Further, a part or all of the configuration inside the
第1、第2実施形態により、決済端末装置のタンパ検出時のセキュリティを確保するといった機密性の確保と、決済処理をいつでも安全に実施できるといった可用性の確保をすることでき、消費者の信頼も得ることができる。 According to the first and second embodiments, it is possible to ensure confidentiality such as ensuring security at the time of tamper detection of a payment terminal device, and to ensure availability such that payment processing can be performed safely at any time, and consumer trust is also ensured. Can be obtained.
本実施形態では装置内部に発明を実施する機能が予め記録されている場合で説明をしたが、これに限らず同様の機能をネットワークから装置にダウンロードしても良いし、同様の機能を記録媒体に記憶させたものを装置にインストールしてもよい。記録媒体としては、CD−ROM等プログラムを記憶でき、かつ装置が読み取り可能な記録媒体であれば、その形態は何れの形態であっても良い。またこのように予めインストールやダウンロードにより得る機能は装置内部のOS(オペレーティング・システム)等と協働してその機能を実現させるものであってもよい。 In the present embodiment, the function for implementing the invention is recorded in advance in the apparatus. However, the present invention is not limited to this, and the same function may be downloaded from the network to the apparatus. You may install what was memorize | stored in the apparatus. The recording medium may be any form as long as the recording medium can store the program and can be read by the apparatus, such as a CD-ROM. In addition, the function obtained by installing or downloading in advance may be realized in cooperation with an OS (operating system) inside the apparatus.
以上に詳説したように、本実施形態の決済端末装置は、タンパが検出されてもカードによる会計取引を引き続き行うことができる。 As described in detail above, the settlement terminal device according to the present embodiment can continue to perform accounting transactions using cards even if a tamper is detected.
本発明は、その精神または主要な特徴から逸脱することなく、他の様々な形で実施することができる。そのため、前述の実施の形態はあらゆる点で単なる例示に過ぎず、限定的に解釈してはならない。本発明の範囲は、特許請求の範囲によって示すものであって、明細書本文には、なんら拘束されない。さらに、特許請求の範囲の均等範囲に属する全ての変形、様々な改良、代替および改質は、すべて本発明の範囲内のものである。 The present invention can be implemented in various other forms without departing from the spirit or main features thereof. Therefore, the above-described embodiment is merely an example in all respects and should not be interpreted in a limited manner. The scope of the present invention is indicated by the scope of claims, and is not restricted by the text of the specification. Further, all modifications, various improvements, alternatives and modifications belonging to the equivalent scope of the claims are all within the scope of the present invention.
1 カード、2 カード読取ユニット、3 決済処理ユニット、
4 伝票印刷ユニット、5、5A、5B 決済端末装置、
6、6A POS端末装置、7 決済ネットワーク、8 決済処理サーバ、
10、101 磁気ヘッド、11、102 カードデータ入力部、
12 デジタル化処理部、103 コード化処理部、13、104、 MCU、
14、105 メモリ部、15、107 通信部、106 セキュリティチップ、
16、108 タンパ検出部、17、110 通信部、22、212 記憶部、
114 暗号化メモリ部、21、113、213 MCU、109、
209 セキュリティチップ、111USB−I/F部、
112 LAN−I/F部、50 サーバ、500 システム。
1 card, 2 card reading unit, 3 payment processing unit,
4 slip printing unit, 5, 5A, 5B payment terminal device,
6, 6A POS terminal device, 7 payment network, 8 payment processing server,
10, 101 Magnetic head, 11, 102 Card data input section,
12 digitization processing unit, 103 encoding processing unit, 13, 104, MCU,
14, 105 memory unit, 15, 107 communication unit, 106 security chip,
16, 108 tamper detection unit, 17, 110 communication unit, 22, 212 storage unit,
114 Encryption memory part, 21, 113, 213 MCU, 109,
209 Security chip, 111 USB-I / F part,
112 LAN-I / F section, 50 servers, 500 systems.
Claims (6)
前記第1ユニットは、
暗号化されるデータを前記第2ユニットに送信する通信部と、
前記第2ユニットで実行される第1プログラムを記憶した記憶部と、
前記決済端末装置でタンパが検出されると、前記第1ユニットおよび前記第2ユニットのそれぞれで記憶されている第1データを用いて、前記暗号化を行うための第1暗号鍵、または前記記憶部に記憶されている前記第1プログラムのいずれか一方もしくは両方を暗号化し、暗号化された前記第1暗号鍵または前記第1プログラムのいずれか一方もしくは両方を、前記通信部に出力する制御部と、を有する
決済端末装置。 A payment terminal device having a first unit and a second unit;
The first unit is:
A communication unit for transmitting data to be encrypted to the second unit;
A storage unit storing a first program executed by the second unit;
When tampering is detected by the settlement terminal device, the first encryption key for performing the encryption using the first data stored in each of the first unit and the second unit, or the storage A control unit that encrypts either or both of the first programs stored in a unit and outputs the encrypted one or both of the first encryption key and the first program to the communication unit A payment terminal device.
前記制御部は、前記第2ユニットが記憶している第1プログラムのハッシュ値と、前記決済端末装置の初期状態時の第1プログラムのハッシュ値とが異なっている場合、前記記憶部に記憶されている第1プログラムを前記第1データで暗号化し、前記通信部に暗号化した前記第1プログラムを出力する
決済端末装置。 In the payment terminal device according to claim 1,
When the hash value of the first program stored in the second unit is different from the hash value of the first program in the initial state of the settlement terminal device, the control unit is stored in the storage unit. A settlement terminal device that encrypts the first program using the first data and outputs the encrypted first program to the communication unit .
前記制御部は、前記第2ユニットが記憶している第1プログラムのハッシュ値と、前記決済端末装置の初期状態時の第1プログラムのハッシュ値とが一致している場合、前記第1暗号鍵を前記第1データで暗号化し、前記通信部に暗号化した前記第1暗号鍵を出力する
決済端末装置。 In the settlement terminal device according to claim 1 or 2,
When the hash value of the first program stored in the second unit matches the hash value of the first program in the initial state of the settlement terminal device, the control unit is configured to match the first encryption key. A settlement terminal device that encrypts the first encryption key with the first data and outputs the encrypted first encryption key to the communication unit.
前記記憶部の記憶領域の一部は、第2暗号鍵を用いることでアクセス可能な領域であり、前記記憶部は、該一部の記憶領域に前記第1プログラムを記憶しており、
前記制御部は、前記第2暗号鍵を用いて前記記憶部から前記第1プログラムを取得する
決済端末装置。 In the settlement terminal device according to any one of claims 1 to 3,
Part of the storage area of the storage unit is accessible region by using the second encryption key, the storage unit stores the first program to the part of the storage area,
The control unit is a settlement terminal device that acquires the first program from the storage unit using the second encryption key.
前記第1ユニットは、
暗号化されるデータを前記第2ユニットに送信する第1通信部と、
前記決済端末装置の外部にある装置と通信する第2通信部と、
前記決済端末装置でタンパが検出されると、前記第2ユニットが実行するプログラムに変更があったか否かを判定し、
変更が無い場合、前記第1ユニットおよび前記第2ユニットのそれぞれで記憶されている第1データを用いて、前記暗号化を行うための第1暗号鍵を暗号化し、暗号化された前記第1暗号鍵を前記第1通信部に出力し、
変更がある場合、前記第2通信部に、前記第2ユニットが実行するプログラムの更新を要求する電文を出力する制御部と、を有する
決済端末装置。 A payment terminal device having a first unit and a second unit;
The first unit is:
A first communication unit for transmitting data to be encrypted to the second unit;
A second communication unit that communicates with a device external to the payment terminal device;
When tampering is detected at the payment terminal device, it is determined whether or not the program executed by the second unit has changed,
If there is no change, the first data stored in each of the first unit and the second unit is used to encrypt a first encryption key for performing the encryption, and the encrypted first first Outputting an encryption key to the first communication unit;
When there is a change, a settlement terminal device comprising: a control unit that outputs a message requesting an update of a program executed by the second unit to the second communication unit.
前記決済端末装置でタンパが検出されると、前記第1ユニットおよび前記第2ユニットのそれぞれで記憶されている第1データを用いて、前記第1ユニットと前記第2ユニットとの間の通信を暗号化するための第1暗号鍵、または前記第1ユニットの記憶部に記憶されており、前記第2ユニットで実行される第1プログラムのいずれか一方もしくは両方を暗号化し、
暗号化された前記第1暗号鍵または前記第1プログラムのいずれか一方もしくは両方を、前記第2ユニットに送信する
ことを前記第1ユニットに実行させるための更新プログラム。 A program that is executed by a payment terminal device having a first unit and a second unit, and that is executed by the first unit having an arithmetic processing unit;
When tampering is detected by the settlement terminal device, communication between the first unit and the second unit is performed using the first data stored in each of the first unit and the second unit. A first encryption key for encryption, or a first encryption key stored in the storage unit of the first unit, and encrypting either or both of the first programs executed by the second unit;
An update program for causing the first unit to execute either one or both of the encrypted first encryption key and the first program to the second unit.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013238868A JP6100145B2 (en) | 2013-11-19 | 2013-11-19 | Payment terminal device, update program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013238868A JP6100145B2 (en) | 2013-11-19 | 2013-11-19 | Payment terminal device, update program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015099480A JP2015099480A (en) | 2015-05-28 |
JP6100145B2 true JP6100145B2 (en) | 2017-03-22 |
Family
ID=53376060
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013238868A Expired - Fee Related JP6100145B2 (en) | 2013-11-19 | 2013-11-19 | Payment terminal device, update program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6100145B2 (en) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4763163B2 (en) * | 2001-06-27 | 2011-08-31 | 富士通フロンテック株式会社 | Transaction terminal device |
US7748620B2 (en) * | 2002-01-11 | 2010-07-06 | Hand Held Products, Inc. | Transaction terminal including imaging module |
JP2012009938A (en) * | 2010-06-22 | 2012-01-12 | Toshiba Tec Corp | Information processing device and program |
JP5331834B2 (en) * | 2011-02-10 | 2013-10-30 | 東芝テック株式会社 | Information processing system, reading terminal and processing terminal |
JP5514780B2 (en) * | 2011-08-31 | 2014-06-04 | 東芝テック株式会社 | COMMUNICATION SYSTEM, TRANSMISSION DEVICE, AND RECEPTION DEVICE |
-
2013
- 2013-11-19 JP JP2013238868A patent/JP6100145B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2015099480A (en) | 2015-05-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104380652B (en) | Many publisher's safety element subregion frameworks for NFC enabled devices | |
US10887296B2 (en) | Secure provisioning manifest for controlling peripherals attached to a computer | |
US9355277B2 (en) | Installable secret functions for a peripheral | |
WO2005096240A1 (en) | Value information management system, recording medium, printer device, account adjusting device, electronic data printing method, and computer program | |
KR101745706B1 (en) | Apparatus and method for authentication based on biometric information | |
JP6553810B2 (en) | Payment authentication method and apparatus for mobile terminal and mobile terminal | |
KR100883147B1 (en) | Personal Identity And Settlement system For Service Using RFID | |
JP2008152392A (en) | Wireless tag, wireless tag reader, decoder, control method for wireless tag and management method for wireless tag | |
JP4918133B2 (en) | Data storage method, client device, data storage system, and program | |
JP6100145B2 (en) | Payment terminal device, update program | |
KR20170048767A (en) | Apparatus for generating barcode using homomorphic encryption and Method thereof | |
CA3043405A1 (en) | Method for processing transaction data, corresponding communications terminal, card reader and program | |
JP6464816B2 (en) | Payment terminal | |
JP2015179359A (en) | Settlement terminal device and program | |
JP4039061B2 (en) | IC card issuing device and IC card issuing method | |
CN113450118A (en) | Transaction certification system, management device, and storage medium | |
CN204613946U (en) | A kind of safe USBHUB and SD/TF card reader equipment complex | |
JP2008306685A (en) | Security information setting system, master terminal thereof, general terminal, and program | |
JP2003316459A (en) | Ic card application program | |
KR102600489B1 (en) | An apparatus for processing a distributed token for encrypted data of payment information to be used only by a specific franchisee and a method for operating it | |
JP7267535B2 (en) | Mutual authentication system and mutual authentication method | |
JP5386860B2 (en) | Payment system, payment processing apparatus, validity verification apparatus, validity verification request processing program, validity verification processing program, and validity verification method | |
CN110447030B (en) | Terminal device, information processing system, control method for terminal device, and program | |
KR101957885B1 (en) | Method of payment processing and security card reader device performing the same | |
JP2006031640A (en) | Ic card, ic card identification number dynamic generation method and ic card identification number dynamic generation system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160112 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20161117 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20161129 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170112 |
|
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: 20170131 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170222 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6100145 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |