[go: up one dir, main page]

JP2019134288A - Information processing system - Google Patents

Information processing system Download PDF

Info

Publication number
JP2019134288A
JP2019134288A JP2018014703A JP2018014703A JP2019134288A JP 2019134288 A JP2019134288 A JP 2019134288A JP 2018014703 A JP2018014703 A JP 2018014703A JP 2018014703 A JP2018014703 A JP 2018014703A JP 2019134288 A JP2019134288 A JP 2019134288A
Authority
JP
Japan
Prior art keywords
unit
authentication
information
authentication information
card reader
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2018014703A
Other languages
Japanese (ja)
Other versions
JP7027184B2 (en
Inventor
正憲 木村
Masanori Kimura
正憲 木村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nidec Instruments Corp
Original Assignee
Nidec Sankyo Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nidec Sankyo Corp filed Critical Nidec Sankyo Corp
Priority to JP2018014703A priority Critical patent/JP7027184B2/en
Publication of JP2019134288A publication Critical patent/JP2019134288A/en
Application granted granted Critical
Publication of JP7027184B2 publication Critical patent/JP7027184B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】機器認証情報の漏えいを防止し、よりセキュリティ性の高い機器認証を容易に構築可能な情報処理システムを提供する。【解決手段】上位装置2は、アプリケーション51と、カードリーダ制御ソフトウェア60と、認証鍵生成DLL55とを備える。カードリーダ制御ソフトウェア60は、デバイス・暗号制御DLL61と、通信制御DLL62と、インターフェース部DLL63とを備える。デバイス・暗号制御DLL61は、認証処理部20(乱数生成部、暗号部、復号部、認証判定部)、制御部25の機能を実現するDLLである。認証鍵生成DLL55は、カードリーダ3の機種固有情報から所定の認証情報アルゴリズムをもとにKmを生成するDLLである。【選択図】図2PROBLEM TO BE SOLVED: To provide an information processing system capable of preventing leakage of device authentication information and easily constructing device authentication with higher security. A host device 2 includes an application 51, card reader control software 60, and an authentication key generation PLL 55. The card reader control software 60 includes a device / cryptographic control DLL61, a communication control DLL62, and an interface unit DLL63. The device / encryption control DLL 61 is a DLL that realizes the functions of the authentication processing unit 20 (random number generation unit, encryption unit, decryption unit, authentication determination unit) and control unit 25. The authentication key generation DLL 55 is a DLL that generates Km from the model-specific information of the card reader 3 based on a predetermined authentication information algorithm. [Selection diagram] Fig. 2

Description

本発明は、上位装置と情報処理装置との間で情報の送受信を行う情報処理システムに関し、特に、上位装置が共通鍵暗号方式を用いて情報処理装置が正当な機器であることを認証する機能を備えた情報処理システムに関する。   The present invention relates to an information processing system that transmits and receives information between a host device and an information processing device, and in particular, a function of authenticating that the information processing device is a legitimate device by using the common key cryptosystem. The present invention relates to an information processing system including

一般に、上位装置(ホストコンピュータ等)が、通信相手である情報処理装置(カードリーダ等)に価値のある情報を送信する場合には、通信相手の情報処理装置が正当なものであることを確認する機器認証を行っている(例えば、特許文献1参照)。このような機器認証では、暗号化するための鍵および復号するための鍵として同じ鍵を用いる共通鍵暗号方式を用いている。   In general, when a higher-level device (such as a host computer) sends valuable information to an information processing device (such as a card reader) that is a communication partner, confirm that the information processing device that is the communication partner is valid Device authentication is performed (see, for example, Patent Document 1). In such device authentication, a common key cryptosystem using the same key as a key for encryption and a key for decryption is used.

特許文献1に示す機器認証では、装置運用管理者が暗号の知識や経験が無くても、機体毎にユニークなマスターキーを設定して運用できるアルゴリズムを提案している。共通鍵暗号では、デバイスと装置運用管理者側で共通の鍵を保持しなければならない。デバイス出荷時には機種共通のマスターキーを保持しているが、1台のマスターキーが流出した時点で全ての同機種の鍵情報が流出することになる。それを防ぐためには機体固有のマスターキーを設定することが望ましい。また、セキュリティの観点から、デバイス製造者はマスターキーの生成に関わらない方が望ましい。この方式では、装置運用管理者側で3DESの知識と技術が必要となり、適切な鍵の管理と運用をしなければならないため、時間と費用がかかる。装置運用管理者側ではマスターキーの生成アルゴリズムのみを考え、その他の制御は全てデバイス製造者で行うことにより、少ないコストで提案した運用が可能となる。   In the device authentication shown in Patent Document 1, an algorithm is proposed in which an apparatus operation manager can set and operate a unique master key for each machine without knowledge or experience of encryption. In common key cryptography, the device and the device operation manager must hold a common key. When a device is shipped, a master key common to all models is held, but when one master key is leaked, all key information of the same model is leaked. In order to prevent this, it is desirable to set a master key unique to the aircraft. Also, from the viewpoint of security, it is desirable that the device manufacturer is not involved in the generation of the master key. This method requires 3DES knowledge and technology on the device operation manager side, and requires appropriate key management and operation, which takes time and money. By considering only the master key generation algorithm on the device operation manager side and performing all other controls by the device manufacturer, the proposed operation can be performed at a low cost.

特開2013−73299号公報JP 2013-73299 A

特許文献1に開示の技術では、上述の様に、情報処理装置の製造業者(すなわちデバイス製造者)がマスターキーの生成アルゴリズム以外の制御を行うが、デバイス製造業者におけるソフトウェア開発リソースが不十分な場合もあり、一層導入が容易となる技術が求められていた。   In the technique disclosed in Patent Document 1, as described above, the manufacturer of the information processing apparatus (that is, the device manufacturer) performs control other than the master key generation algorithm, but the software development resources in the device manufacturer are insufficient. In some cases, there has been a demand for a technique that can be more easily introduced.

本発明は、このような事情に鑑み、機器認証情報の漏えいを防止し、よりセキュリティ性の高い機器認証を容易に構築可能な情報処理システムを提供することを目的とする。   In view of such circumstances, it is an object of the present invention to provide an information processing system that can prevent leakage of device authentication information and can easily construct device authentication with higher security.

本発明は、上位装置と情報処理装置との間で情報の送受信を行う情報処理システムであって、前記上位装置は、共通鍵暗号方式を用いて前記情報処理装置が正当な機器であることを認証する上位装置側認証処理部と、前記上位装置と前記情報処理装置とが共通して保有する機器認証情報を生成する認証情報アルゴリズムを有し、前記情報処理装置が所有する機種固有情報に基づいて前記機器認証情報を生成する認証情報生成部と、前記情報処理装置と通信を行う通信部と、を備え、前記情報処理装置は、前記上位装置と認証処理を行う情報処理装置側認証処理部と、前記機器認証情報および前記機種固有情報を記憶する不揮発性記憶部と、を備え、前記認証情報生成部は、前記情報処理装置の機種固有情報からマスターキーを生成する機能を有し、前記認証情報生成部、前記上位装置側認証処理部、及び前記通信部の機能は、それぞれの機能をモジュールとした制御ソフトウェアとして構成されており、前記情報処理装置の前記マスターキーを書き換え、及び予め仮の機器認証情報として保持しているテンポラリーキーに書き換え可能なツールを備えることを特徴とする。   The present invention is an information processing system that transmits and receives information between a host device and an information processing device, and the host device uses a common key encryption method to confirm that the information processing device is a legitimate device. Based on model-specific information possessed by the information processing apparatus, having an authentication information algorithm for generating device authentication information shared by the host apparatus and the information processing apparatus that are commonly owned by the host apparatus side authentication processing unit An authentication information generation unit that generates the device authentication information and a communication unit that communicates with the information processing device, and the information processing device performs an authentication process with the host device. A non-volatile storage unit that stores the device authentication information and the model specific information, and the authentication information generation unit has a function of generating a master key from the model specific information of the information processing apparatus. The functions of the authentication information generation unit, the higher-level device side authentication processing unit, and the communication unit are configured as control software with each function as a module, and rewrites the master key of the information processing device, And a tool that can be rewritten into a temporary key held in advance as temporary device authentication information.

本発明によれば、情報処理システムの装置運用管理者は、共通鍵暗号方式のノウハウ(知識や技術)が十分でない場合でも、十分にセキュリティが確保された情報処理システムを構築でき、かつ、情報処理装置の製造業者は、実際の運用時の機器認証情報については、把握することがないため、製造業者からの機器認証情報の漏えいを防止し、よりセキュリティ性の高い機器認証を容易に構築できる。   According to the present invention, a device operation manager of an information processing system can construct an information processing system with sufficiently secured security even when know-how (knowledge and technology) of a common key cryptosystem is not sufficient, and information Since the manufacturer of the processing equipment does not know the device authentication information during actual operation, it is possible to prevent leakage of device authentication information from the manufacturer and to easily construct a device authentication with higher security. .

また、本発明では、認証情報アルゴリズムについては、情報処理装置の製造業者がソースコード(機器認証情報Kmを生成するための認証情報アルゴリズム)をモジュール(部品)として情報処理システムの装置運用管理者に提供することで、情報処理システムの装置運用管理者は、提供されたソースコードに、機器認証情報Kmを生成する独自のアルゴリズムや機能を追加して、認証鍵生成のためのモジュールを作成することができる。   Further, in the present invention, the authentication information algorithm is provided to the device operation manager of the information processing system by using the source code (authentication information algorithm for generating the device authentication information Km) as a module (component) by the information processing device manufacturer. By providing, the device operation manager of the information processing system creates a module for generating an authentication key by adding a unique algorithm and function for generating device authentication information Km to the provided source code Can do.

さらに、認証情報生成部、上位装置側認証処理部、及び通信部の機能は、それぞれの機能をモジュールとした制御ソフトウェアとして、情報処理システムの装置運用管理者に提供されるので、装置運用管理者はモジュール単位で機能を変更・調整することができ、開発リソースを抑制でき、現実の導入がより容易になる。すなわち、装置運用管理者は、3DES等の共通鍵暗号方式のノウハウ(知識や技術)が不十分でない場合でも、十分にセキュリティが確保された情報処理システムを構築できる。一方、情報処理装置の製造業者は、機器認証情報に関して、製造時に仮の機器認証情報を設定しているだけで、実際の運用時の機器認証情報Kmについては、把握することがないため、製造業者からの漏洩といったリスクを回避できる。   Furthermore, since the functions of the authentication information generation unit, the higher-level device-side authentication processing unit, and the communication unit are provided to the device operation manager of the information processing system as control software with each function as a module, the device operation manager The function can be changed and adjusted on a module-by-module basis, development resources can be reduced, and actual implementation becomes easier. That is, the apparatus operation manager can construct an information processing system with sufficiently secured security even when the know-how (knowledge and technology) of the common key cryptosystem such as 3DES is not insufficient. On the other hand, the manufacturer of the information processing apparatus only sets temporary device authentication information at the time of manufacturing, but does not grasp the device authentication information Km during actual operation. Risks such as leakage from contractors can be avoided.

本発明において、前記制御ソフトウェアの前記認証情報生成部として機能するモジュールはDLLとして構成されていることが好ましい。
本発明では、装置運用管理者は、DLLとして提供されたソースコードに、機器認証情報Kmを生成する独自のアルゴリズムや機能を追加して、認証鍵生成DLLを作成することができる。これにより、3DES等の知識と技術が必要となる部分は、情報処理装置の製造業者がソースコードをDLLとして、利用が容易なパッケージ(ソフトウェア)として提供することができるため、装置運用管理者は、独自の、機器認証情報Kmを生成する認証情報アルゴリズム(認証情報を生成するDLL)を一層容易に導入できる。
In the present invention, the module functioning as the authentication information generation unit of the control software is preferably configured as a DLL.
In the present invention, the device operation manager can create an authentication key generation DLL by adding a unique algorithm or function for generating the device authentication information Km to the source code provided as the DLL. As a result, the information processing device manufacturer can provide the source code as a DLL and provide an easy-to-use package (software) for parts that require knowledge and technology such as 3DES. In addition, an original authentication information algorithm for generating device authentication information Km (a DLL for generating authentication information) can be introduced more easily.

前記認証情報生成部として機能する前記DLLのファイル名および前記DLLとの通信インターフェースは変更不可であることを特徴とする。
これによって、予め用意されたDLLをベースに動的に処理プログラムが作成されるため、互換性を確保しつつ、アプリケーションやカードリーダ制御ソフトの処理や、動作チェック等を適切に運用できる。
The DLL file name that functions as the authentication information generation unit and the communication interface with the DLL cannot be changed.
As a result, the processing program is dynamically created based on the DLL prepared in advance, so that the processing of the application and the card reader control software, operation check, etc. can be appropriately operated while ensuring compatibility.

前記情報処理装置の前記機種固有情報は、前記上位装置側認証処理部のメモリに格納されて、前記上位装置側認証処理部は、入力毎に前記情報処理装置が入れ替えられたか否かを確認することを特徴とする。
入力毎に入れ替えの確認がなされるので、認証処理のセキュリティを一層向上させることができる。
The model-specific information of the information processing device is stored in the memory of the higher-level device side authentication processing unit, and the higher-level device side authentication processing unit checks whether or not the information processing device has been replaced for each input. It is characterized by that.
Since replacement is confirmed for each input, the security of the authentication process can be further improved.

本発明によれば、情報処理システムの装置運用管理者は、共通鍵暗号方式のノウハウ(知識や技術)が十分でない場合でも、十分にセキュリティが確保された情報処理システムを構築でき、かつ、情報処理装置の製造業者は、実際の運用時の機器認証情報については、把握することがないため、製造業者からの機器認証情報の漏えいを防止し、よりセキュリティ性の高い機器認証を容易に構築できる。   According to the present invention, a device operation manager of an information processing system can construct an information processing system with sufficiently secured security even when know-how (knowledge and technology) of a common key cryptosystem is not sufficient, and information Since the manufacturer of the processing equipment does not know the device authentication information during actual operation, it is possible to prevent leakage of device authentication information from the manufacturer and to easily construct a device authentication with higher security. .

実施形態1に係る、情報処理システムを示す機能ブロック図である。1 is a functional block diagram illustrating an information processing system according to a first embodiment. 実施形態1に係る、上位装置が有する主なソフトウェアを示す図である。It is a figure which shows the main software which a high-order apparatus based on Embodiment 1 has. 実施形態1に係る、情報処理システムにおける機器認証情報を設定する動作を示す流れ図である。3 is a flowchart illustrating an operation of setting device authentication information in the information processing system according to the first embodiment. 図3の機器認証情報を設定する動作に対応するフローチャートを示す図である。It is a figure which shows the flowchart corresponding to the operation | movement which sets the apparatus authentication information of FIG. 実施形態1に係る、情報処理システムにおける機器認証動作を示す流れ図である。4 is a flowchart showing device authentication operation in the information processing system according to the first embodiment. 実施形態1に係る、情報処理システムにおける機器認証情報の生成動作を示す流れ図である。3 is a flowchart illustrating an operation of generating device authentication information in the information processing system according to the first embodiment.

以下、本発明の実施の形態について説明する。
[発明の実施の形態1]
Embodiments of the present invention will be described below.
Embodiment 1 of the Invention

(情報処理システムの構成)
図1は、本発明の実施の形態に係る情報処理システム1を示す機能ブロック図である。
情報処理システム1は、図示のように、ホストコンピュータのような上位装置2と、この上位装置2に通信手段を介して接続された情報処理装置としてのカードリーダ3とから構成されている。なお、本実施形態では、通信手段はRS232CやUSBのような有線のケーブルである。なお、通信手段は、これら有線に限定されることなく、LANで接続でもよく、または、無線であってもよい。
(Configuration of information processing system)
FIG. 1 is a functional block diagram showing an information processing system 1 according to an embodiment of the present invention.
As shown in the figure, the information processing system 1 is composed of a host device 2 such as a host computer and a card reader 3 as an information processing device connected to the host device 2 via communication means. In this embodiment, the communication means is a wired cable such as RS232C or USB. Note that the communication means is not limited to these wires, and may be connected via a LAN or wireless.

図1に示すように、上位装置2は、認証処理部20、制御部25、通信部26、記憶部27、認証情報生成部28を備える。   As shown in FIG. 1, the host device 2 includes an authentication processing unit 20, a control unit 25, a communication unit 26, a storage unit 27, and an authentication information generation unit 28.

認証処理部20は、カードリーダ3との間で認証処理を行う。具体的には、認証処理部20は、乱数発生部21、暗号部22、復号部23、認証判定部24を備えて構成され、機器認証に必要な各部の制御を行う。また、認証処理部20は、初期(カードリーダ3の工場出荷時)においてカードリーダ3の製造者が作成し提供する仮の機器認証情報Ktが、安全な方法で保持する。   The authentication processing unit 20 performs authentication processing with the card reader 3. Specifically, the authentication processing unit 20 includes a random number generation unit 21, an encryption unit 22, a decryption unit 23, and an authentication determination unit 24, and controls each unit necessary for device authentication. Further, the authentication processing unit 20 holds the temporary device authentication information Kt created and provided by the manufacturer of the card reader 3 in a safe manner at the initial time (when the card reader 3 is shipped from the factory).

仮の機器認証情報Ktは、上位装置2とカードリーダ3との間で送受信されるデータを共通鍵暗号方式を用いて暗号通信するのに先立ち、共通鍵としての通信用交換鍵Kexを生成するためのものである。なお、通信用交換鍵Kexを生成する処理についての説明は後述する。また、上位装置2は、種々のシステム制御のためのプログラムやパラメータを格納するための不揮発性メモリやハードディスク装置を備えていてもよく、そこに仮の機器認証情報Ktを格納するようにしてもよい。   The provisional device authentication information Kt generates a communication exchange key Kex as a common key prior to cryptographic communication of data transmitted and received between the host device 2 and the card reader 3 using a common key cryptosystem. Is for. The process for generating the communication exchange key Kex will be described later. The host device 2 may include a nonvolatile memory and a hard disk device for storing various system control programs and parameters, and the temporary device authentication information Kt may be stored therein. Good.

乱数発生部21は、通信用交換鍵Kex(n)(nは整数。以下同じ)および乱数R(n)(nは整数。以下同じ)を生成する。乱数発生部21は、通信用交換鍵Kex(n)、乱数R(n)を生成するアルゴリズム(以下、乱数生成アルゴリズムという)を予め記憶している。通信用交換鍵Kex(n)は、上位装置2とカードリーダ3とが互いにデータを暗号化して送信する際に用いられる暗号鍵(本実施形態では、復号鍵も同じ)である。乱数R(n)は、データを暗号化して送信する際に、機器認証情報等とともに送信されるデータである。   The random number generator 21 generates a communication exchange key Kex (n) (n is an integer; the same applies hereinafter) and a random number R (n) (n is an integer; the same applies hereinafter). The random number generator 21 stores in advance an algorithm for generating a communication exchange key Kex (n) and a random number R (n) (hereinafter referred to as a random number generation algorithm). The communication exchange key Kex (n) is an encryption key (in this embodiment, the decryption key is the same) used when the host device 2 and the card reader 3 encrypt and transmit data to each other. The random number R (n) is data transmitted together with device authentication information and the like when data is encrypted and transmitted.

通信用交換鍵Kex(n)、乱数R(n)は、上位装置2とカードリーダ3との間で実行される機器認証処理や機器認証情報生成処理ごとに異なっている。本実施形態では、通信用交換鍵Kex(n)は機器認証処理ごとに異なるように生成される。また、乱数R(n)は、機器認証処理および機器認証情報生成処理ごとに異なるように生成される。   The communication exchange key Kex (n) and the random number R (n) are different for each device authentication process and device authentication information generation process executed between the higher-level device 2 and the card reader 3. In the present embodiment, the communication exchange key Kex (n) is generated differently for each device authentication process. The random number R (n) is generated so as to be different for each device authentication process and device authentication information generation process.

このように、たとえ、同一の機器認証情報が送信される場合であっても、乱数発生部21で生成される度に通信用交換鍵Kex(n)、乱数R(n)が異なるため、これらを用いて暗号化された送信データも異なったものとなる。したがって、上位装置2とカードリーダ3との信号を傍受しておき、カードリーダ3を使わずに傍受したのと同様の信号を別のカードリーダに送出したとしても、通信用交換鍵Kex(n)、乱数R(n)が異なるために信号が一致することはなく、不正操作を防止できる。このため、通信の盗聴や第三者による解読をさらに困難なものにし、よりセキュリティ性を高くしている。   Thus, even if the same device authentication information is transmitted, the communication exchange key Kex (n) and the random number R (n) are different each time the random number generation unit 21 generates them. The transmission data encrypted by using the same is also different. Therefore, even if a signal between the host device 2 and the card reader 3 is intercepted and a signal similar to that intercepted without using the card reader 3 is sent to another card reader, the communication exchange key Kex (n ), Since the random numbers R (n) are different, the signals do not match, and unauthorized operations can be prevented. For this reason, eavesdropping of communications and decryption by a third party are made more difficult, and security is increased.

暗号部22は、3DES(トリプルDES)により規格されている暗号アルゴリズムEを予め記憶する。暗号部22は、乱数発生部21で生成した乱数R(n)に暗号アルゴリズムEに従って暗号化された乱数R(n)eを生成する。このとき、通信用交換鍵Kex(n)を暗号アルゴリズムEの鍵とする。暗号化された乱数R(n)eは、次の数1に示すように表現できる。
〔数1〕R(n)e=E(Kex(n),R(n))
The encryption unit 22 stores in advance an encryption algorithm E standardized by 3DES (Triple DES). The encryption unit 22 generates a random number R (n) e encrypted according to the encryption algorithm E to the random number R (n) generated by the random number generation unit 21. At this time, the communication exchange key Kex (n) is used as the key of the encryption algorithm E. The encrypted random number R (n) e can be expressed as shown in Equation 1 below.
[Equation 1] R (n) e = E (Kex (n), R (n))

(3DESについて)
本実施形態で使用する暗号方式は、暗号化のための鍵(暗号鍵)と復号のための鍵(復号鍵)とが同じ鍵であることを特徴とする共通鍵暗号方式が用いられている。さらに、この共通鍵暗号方式の中でも、DES(Data Encryption Standardの略)は、1977年に米国情報処理標準規格(FEDERAL INFORMATION PROCESSING STANDARDS PUBLICATION:FIPS−PUB)46−3として規定され、最も広く利用されている暗号方式の1つである。さらに、本実施形態では、DESから3DESにし、DESに比べて解読しにくくしている。3DESは、DESのアルゴリズムを3回繰り返す暗号方式であり、DESのアルゴリズムを流用することができる、さらに、暗号鍵の鍵長を拡張するのと同様の効果を得ることができ、比較的容易に暗号強度を高めることができる。
(About 3DES)
The encryption method used in this embodiment is a common key encryption method characterized in that the key for encryption (encryption key) and the key for decryption (decryption key) are the same key. . Further, among these common key cryptosystems, DES (abbreviation of Data Encryption Standard) was defined as the US Information Processing Standards (FIPS-PUB) 46-3 in 1977 and is most widely used. This is one of the encryption methods. Further, in the present embodiment, the DES is changed to 3DES, which is harder to decode than the DES. 3DES is an encryption method that repeats the DES algorithm three times, can use the DES algorithm, and can obtain the same effect as extending the key length of the encryption key, relatively easily. The encryption strength can be increased.

復号部23は、DESにより規格されている復号アルゴリズムDを予め記憶する。復号部23は、暗号化された乱数R(n)eを復号アルゴリズムDに従って復号した乱数R(n)を生成する。このとき、通信用交換鍵Kex(n)を復号アルゴリズムDの鍵とする。生成された乱数R(n)は、次の数2に示すように表現できる。
〔数2〕R(n)=D(Kex(n),R(n)e)
The decoding unit 23 stores in advance a decoding algorithm D standardized by DES. The decryption unit 23 generates a random number R (n) obtained by decrypting the encrypted random number R (n) e according to the decryption algorithm D. At this time, the communication exchange key Kex (n) is used as the key of the decryption algorithm D. The generated random number R (n) can be expressed as shown in the following equation 2.
[Expression 2] R (n) = D (Kex (n), R (n) e)

認証判定部24は、カードリーダ3から返され復号部23で復号された機器認証情報に基づき、カードリーダ3が正当な装置であるか、不正な装置であるかを判定する。具体的には、復号部23から受け取った乱数R’と、乱数発生部21で生成され記憶部27に格納されていた乱数Rとを比較し、乱数R’と乱数Rとが一致すれば、上位装置2が接続されたカードリーダ3を正しい装置であると正当性を認証する。また、乱数R’と乱数Rとが一致していなければ、上位装置2は接続されたカードリーダ3を不正な装置であると判定する。   The authentication determination unit 24 determines whether the card reader 3 is a valid device or an unauthorized device based on the device authentication information returned from the card reader 3 and decrypted by the decryption unit 23. Specifically, the random number R ′ received from the decryption unit 23 is compared with the random number R generated by the random number generation unit 21 and stored in the storage unit 27. If the random number R ′ and the random number R match, The card reader 3 to which the host device 2 is connected is authenticated as a correct device. If the random number R ′ and the random number R do not match, the higher-level device 2 determines that the connected card reader 3 is an unauthorized device.

制御部25は、上位装置2全体、すなわち、認証処理部20、通信部26、記憶部27、認証情報生成部28を含めた上位装置2全体を制御する。具体的には、制御部25には、図示しないが、制御用プログラムなどを用いて様々な演算処理を行い、上位装置2全体を制御するCPU、上位装置2が処理を実行する際に必要な作業データがコピーされる書換え可能なメモリであって、CPUが使用するプログラムや演算パラメータなどの制御用データが記録されたROM、CPUの作業領域としても機能するRAM等により構成されている。   The control unit 25 controls the entire host device 2, that is, the entire host device 2 including the authentication processing unit 20, the communication unit 26, the storage unit 27, and the authentication information generation unit 28. Specifically, although not shown in the figure, the control unit 25 performs various arithmetic processes using a control program and the like, and is necessary when the host device 2 and the host device 2 execute the processing. A rewritable memory to which work data is copied, and includes a ROM in which control data such as a program used by the CPU and calculation parameters are recorded, and a RAM that also functions as a work area of the CPU.

通信部26は、カードリーダ3の通信部35との間で通信手段としてのケーブル(通信回線)を介して通信を行う。なお、通信手段は、本実施の形態ではケーブル等の有線であるが、これに限定されるものではなく、無線でもよい。   The communication unit 26 communicates with the communication unit 35 of the card reader 3 via a cable (communication line) as a communication unit. The communication means is wired such as a cable in the present embodiment, but is not limited to this, and may be wireless.

記憶部27は、揮発性のメモリであり、乱数発生部21で生成された通信用交換鍵Kex(n)および乱数R(n)を格納している。   The storage unit 27 is a volatile memory, and stores the communication exchange key Kex (n) and the random number R (n) generated by the random number generation unit 21.

認証情報生成部28は、機器認証情報Kmを生成する認証情報アルゴリズムを記憶しており、カードリーダ3のシリアル番号が入力されることで、機器認証を行うための機器認証情報Kmを生成する。ここで、シリアル番号とはカードリーダ3の個々の機体に製造ごとに割り付けられる製造番号であるが、シリアル番号以外のカードリーダ3固有の固有情報(例えば、ID番号や機器番号等)であってもよい。   The authentication information generation unit 28 stores an authentication information algorithm for generating device authentication information Km, and generates device authentication information Km for performing device authentication when the serial number of the card reader 3 is input. Here, the serial number is a production number assigned to each machine of the card reader 3 for each production, but is unique information (for example, ID number, device number, etc.) unique to the card reader 3 other than the serial number. Also good.

また、認証情報生成部28で生成された機器認証情報Kmは、カードリーダ3側へ機器認証情報Kmを設定する動作が終わり次第に消去している。すなわち、上位装置2は、カードリーダ3が新たに接続され、または改めて接続し直されて機器認証動作を開始するごとに、接続されたカードリーダ3のシリアル番号に基づき機器認証情報Kmを生成し直す。   The device authentication information Km generated by the authentication information generation unit 28 is erased as soon as the operation for setting the device authentication information Km on the card reader 3 side is completed. That is, each time the card reader 3 is newly connected or reconnected and the device authentication operation is started, the higher-level device 2 generates device authentication information Km based on the serial number of the connected card reader 3. cure.

これにより、上位装置2は、どのカードリーダ3が接続されるか予測できない場合でも、接続される可能性のある全てのカードリーダ3に対応する形で機器認証情報Kmを長期間にわたって保持する必要はない。   As a result, the host device 2 needs to hold the device authentication information Km for a long period of time in a manner corresponding to all the card readers 3 that may be connected even when the card reader 3 cannot be predicted. There is no.

また、上位装置2で機器認証情報Kmを保持し続けるために、ファイルやレジストリ等にこれを出力する必要もない。つまり、機器認証情報Kmが流出するリスクを減少させ、セキュリティを確保することができ、さらに、メモリ領域を削減することが可能となる。   Further, since the host device 2 continues to hold the device authentication information Km, it is not necessary to output it to a file, a registry, or the like. That is, the risk that the device authentication information Km is leaked can be reduced, security can be ensured, and the memory area can be further reduced.

(上位装置のソフトウェア構成)
つぎに、図2を参照して、上位装置2をソフトウェアの観点で図1の機能ブロックと対応させつつ説明する。図2は、実施形態1に係る、上位装置2が有する主なソフトウェアを示す図である。上位装置2は、アプリケーション51と、カードリーダ制御ソフトウェア60と、を主なソフトウエアとして備えている。
(Software configuration of the host device)
Next, with reference to FIG. 2, the host device 2 will be described from the viewpoint of software, corresponding to the functional blocks of FIG. FIG. 2 is a diagram illustrating main software included in the host device 2 according to the first embodiment. The host device 2 includes an application 51 and card reader control software 60 as main software.

上位装置2は、アプリケーション51と、カードリーダ制御ソフトウェア60と、認証鍵生成DLL55とを備える。カードリーダ制御ソフトウェア60は、デバイス・暗号制御DLL61と、通信制御DLL62と、インターフェース部DLL63とを備える。デバイス・暗号制御DLL61は、認証処理部20(乱数生成部21、暗号部22、復号部23、認証判定部24)、制御部25の機能を実現するDLLである。認証鍵生成DLL55は、カードリーダ3の機種固有情報から所定の認証情報アルゴリズムをもとに機器認証情報Kmを生成するDLLである。   The host device 2 includes an application 51, card reader control software 60, and an authentication key generation DLL 55. The card reader control software 60 includes a device / encryption control DLL 61, a communication control DLL 62, and an interface unit DLL 63. The device / encryption control DLL 61 is a DLL that implements the functions of the authentication processing unit 20 (random number generation unit 21, encryption unit 22, decryption unit 23, authentication determination unit 24) and control unit 25. The authentication key generation DLL 55 is a DLL that generates device authentication information Km from the model-specific information of the card reader 3 based on a predetermined authentication information algorithm.

アプリケーション51は、カードリーダ制御ソフトウェア60が提供する認証機能を使用するソフトウェアであり、カードリーダ3の使用者によって用意され導入される。   The application 51 is software that uses an authentication function provided by the card reader control software 60, and is prepared and introduced by the user of the card reader 3.

カードリーダ制御ソフトウェア60は、カードリーダ3との通信を制御し、認証処理を行うソフトウェアであり、カードリーダ3の製造者が提供するものである。本形態では、図1の認証処理部20、制御部25及び通信部26の機能を実現する。なお、カードリーダ制御ソフトウェア60は、認証処理部20、制御部25及び通信部26の機能のうち、特に、認証処理の機能をソフトウェアとして実装するものであり、それ以外の機能についてはソフトウェアとして実装しなくてもよい。   The card reader control software 60 is software that controls communication with the card reader 3 and performs authentication processing, and is provided by the manufacturer of the card reader 3. In this embodiment, the functions of the authentication processing unit 20, the control unit 25, and the communication unit 26 of FIG. 1 are realized. Note that the card reader control software 60 implements, in particular, the authentication processing function as software among the functions of the authentication processing unit 20, the control unit 25, and the communication unit 26, and other functions are implemented as software. You don't have to.

カードリーダ制御ソフトウェア60は、ユニットとして構成されている。このユニットは、交換可能であり、パッケージされている。このように、パッケージされていることで、カードリーダ3とは別のカードリーダを使用しても、その別のカードリーダ対応のユニットへ交換することでアプリケーションの変更は不要となり、カードリーダ使用者の負担を軽減することが出来る。   The card reader control software 60 is configured as a unit. This unit is replaceable and packaged. Thus, even if a card reader other than the card reader 3 is used, it is not necessary to change the application by replacing the card reader with a unit compatible with the other card reader. Can be reduced.

また、本形態では、カードリーダ制御ソフトウェア60はモジュール化されたカードリーダ制御ソフトウェアDLL群である。より詳細には、カードリーダ制御ソフトウェアDLL群は、デバイス・暗号制御DLL61と、通信制御DLL62と、インターフェース部DLL63と、認証鍵生成DLL55とを備えている。すなわち、認証処理部20、制御部25及び通信部26の機能を有するプログラムが、機能毎にモジュール化されている。そして機能追加や動作変更をする場合に該当DLLを差し替えることで対応できる。カードリーダ制御ソフトウェア60による処理は、これらDLLファイルによって行われる。これにより、モジュール化されたことで、各モジュールでメンテナンスを行うことができ、メンテナンス性を向上することができる。   In this embodiment, the card reader control software 60 is a modularized card reader control software DLL group. More specifically, the card reader control software DLL group includes a device / encryption control DLL 61, a communication control DLL 62, an interface unit DLL 63, and an authentication key generation DLL 55. That is, a program having functions of the authentication processing unit 20, the control unit 25, and the communication unit 26 is modularized for each function. And when adding a function or changing an operation, it is possible to cope by replacing the corresponding DLL. Processing by the card reader control software 60 is performed by these DLL files. Thereby, the modularization makes it possible to perform maintenance on each module and improve the maintainability.

デバイス・暗号制御DLL61は、認証処理部20(乱数生成部21、暗号部22、復号部23、認証判定部24)、制御部25認証処理の機能、及び通信部26の機能を実現するDLLである。   The device / encryption control DLL 61 is a DLL that implements the authentication processing unit 20 (random number generation unit 21, encryption unit 22, decryption unit 23, authentication determination unit 24), control unit 25 authentication processing function, and communication unit 26 function. is there.

通信制御DLL62は、カードリーダとの通信に用いられるDLLであり、認証処理部20の通信部26の機能を実現する。   The communication control DLL 62 is a DLL used for communication with the card reader, and realizes the function of the communication unit 26 of the authentication processing unit 20.

インターフェース部DLL63は、アプリケーション51とのインターフェースとなるDLLである。   The interface unit DLL 63 is a DLL that serves as an interface with the application 51.

認証鍵生成DLL55は、カードリーダ3の機種固有情報から所定の認証情報アルゴリズムをもとにKmを生成するDLLである。本実施形態では、認証情報アルゴリズムは、上位装置2の製造業者がソースコード(機器認証情報Kmを生成するための認証情報アルゴリズム(原始プログラム))をDLL(Dynamic Link Library)として作成し、情報処理システム1(カードリーダ3)の使用者(装置運用管理者)に提供する。   The authentication key generation DLL 55 is a DLL that generates Km from the model-specific information of the card reader 3 based on a predetermined authentication information algorithm. In this embodiment, the authentication information algorithm is generated by the manufacturer of the host device 2 by creating a source code (authentication information algorithm (source program) for generating device authentication information Km) as a DLL (Dynamic Link Library). It is provided to the user (device operation manager) of the system 1 (card reader 3).

情報処理システム1の装置運用管理者は、DLLとして提供されたソースコードに、機器認証情報Kmを生成する独自のアルゴリズムや機能を追加して、認証鍵生成DLL55を作成する。これにより、3DESの知識と技術が必要となる部分は、上位装置2の製造業者がソースコードをDLLとして、利用が容易に提供するため、装置運用管理者は、独自の、機器認証情報Kmを生成する認証情報アルゴリズム(認証情報を生成するDLL)を容易に導入できる。なお、一般に変更に伴い互換性が無くなり製造業者のシステムから呼び出せなくなるおそれがあり、それを回避するために、DLL名称とインターフェース部DLL63は変更不可となっている。   The apparatus operation manager of the information processing system 1 creates an authentication key generation DLL 55 by adding a unique algorithm or function for generating the device authentication information Km to the source code provided as the DLL. As a result, the part that requires 3DES knowledge and technology is easily provided by the manufacturer of the upper level device 2 using the source code as a DLL, so that the device operation manager can provide his / her own device authentication information Km. An authentication information algorithm to be generated (a DLL for generating authentication information) can be easily introduced. In general, there is a possibility that compatibility will be lost due to the change and the system cannot be called from the manufacturer's system. To avoid this, the DLL name and the interface unit DLL 63 cannot be changed.

(カードリーダの構成)
カードリーダ3は、図1に示すように、認証処理および3DESの暗号化/復号を行う認証処理部30と、カードリーダ3全体の制御を行う制御部34と、上位装置2側との通信を行う通信部35と、揮発性の記憶部36と、不揮発性記憶部としてのEEPROM37とを有している。さらに、認証処理部30は、暗号部31、復号部32、認証判定部33から構成されている。
(Configuration of card reader)
As shown in FIG. 1, the card reader 3 communicates with an authentication processing unit 30 that performs authentication processing and 3DES encryption / decryption, a control unit 34 that controls the entire card reader 3, and communication with the host device 2 side. The communication unit 35 to perform, a volatile storage unit 36, and an EEPROM 37 as a nonvolatile storage unit are provided. Further, the authentication processing unit 30 includes an encryption unit 31, a decryption unit 32, and an authentication determination unit 33.

ここで、制御部34及び通信部35は、それぞれ上位装置2の制御部25及び通信部26と同等の機能を有し、詳細な説明は省略する。同様に、認証処理部30を構成する暗号部31、復号部32は、上位装置2の暗号部22、復号部23と同様の暗号アルゴリズムEおよび復号アルゴリズムDを備えて同等の機能を有しているので、ここでの詳細な説明は省略する。   Here, the control unit 34 and the communication unit 35 have the same functions as the control unit 25 and the communication unit 26 of the host device 2, respectively, and detailed description thereof is omitted. Similarly, the encryption unit 31 and the decryption unit 32 constituting the authentication processing unit 30 have the same functions as the encryption unit E and the decryption algorithm D similar to the encryption unit 22 and the decryption unit 23 of the higher-level device 2. Therefore, detailed description here is omitted.

認証判定部33は、上位装置2の乱数生成部21(デバイス・暗号制御DLL61)で生成された後、暗号化されてカードリーダ3に送信された機器認証情報Kmを復号した復号部32から送信された通信用交換鍵Kex(n)のデータの有効性(ひいては、上位装置2から受信したデータが有効であるか否か)をチェックする。   The authentication determination unit 33 is generated by the random number generation unit 21 (device / encryption control DLL 61) of the host device 2 and then transmitted from the decryption unit 32 that decrypts the device authentication information Km that is encrypted and transmitted to the card reader 3. The validity of the data of the communication exchange key Kex (n) is checked (and whether or not the data received from the host device 2 is valid).

具体的には、パリティチェックや脆弱鍵であるかどうかをチェックする。パリティチェックはデータの誤り(エラー)を検出する手法の一つである。また、脆弱鍵とは、共通鍵暗号技術としてのDESにおいてセキュリティ上で好ましくないとされる鍵(4個の脆弱鍵と12個の準脆弱鍵)であり、それと一致するかどうかをチェックしている。なお、4個の脆弱鍵と12個の準脆弱鍵は公表されているので、ここでの説明は省略する。   Specifically, a parity check or a weak key is checked. Parity check is one method for detecting data errors. The weak key is a key (4 weak keys and 12 quasi-weak keys) that are considered to be unfavorable in terms of security in DES as a common key encryption technology. Yes. In addition, since 4 weak keys and 12 quasi-weak keys are publicized, explanation here is omitted.

記憶部36は揮発性であり、上位装置2の乱数生成部21(デバイス・暗号制御DLL61)で生成された後、送信された復号部32で復号された機器認証情報Kmのうち認証判定部33で有効であると判定された通信用交換鍵Kex(n)を格納する。   The storage unit 36 is volatile, and is generated by the random number generation unit 21 (device / encryption control DLL 61) of the higher-level device 2, and then the authentication determination unit 33 among the device authentication information Km decrypted by the transmitted decryption unit 32. The communication exchange key Kex (n) determined to be valid at is stored.

EEPROM37は、不揮発性であり、仮の機器認証情報Ktおよび機器認証情報Km、カードリーダ3のシリアル番号を格納している。すなわち、カードリーダ3は、電源立ち上げ時またはリセット時においても、機器認証情報Kmを消去せずに保持している。   The EEPROM 37 is non-volatile, and stores temporary device authentication information Kt, device authentication information Km, and the serial number of the card reader 3. That is, the card reader 3 holds the device authentication information Km without erasing it even when the power is turned on or reset.

(機器認証情報の設定動作)
以下、機器認証情報Kmを設定する動作について説明する。
図3は、実施形態1に係る情報処理システム1における機器認証情報Km(共通鍵)を設定する動作を示す流れ図である。図4は、図3の機器認証情報Km(共通鍵)を設定する動作に対応するフローチャートを示す図である。
(Device authentication information setting operation)
Hereinafter, an operation for setting the device authentication information Km will be described.
FIG. 3 is a flowchart illustrating an operation of setting the device authentication information Km (common key) in the information processing system 1 according to the first embodiment. FIG. 4 is a diagram illustrating a flowchart corresponding to the operation of setting the device authentication information Km (common key) in FIG.

情報処理システム1においては、カードリーダ3が上位装置2にケーブル(通信回線)を介して接続された時点で、このカードリーダ3のシリアル番号に基づく機器認証情報Kmを設定する動作が実行される。以下、この機器認証情報Kmを設定する動作を図3および図4に基づいて詳述する。   In the information processing system 1, when the card reader 3 is connected to the host device 2 via a cable (communication line), an operation for setting the device authentication information Km based on the serial number of the card reader 3 is executed. . The operation for setting the device authentication information Km will be described in detail below with reference to FIGS.

初期(工場出荷時)において、カードリーダ3および上位装置2は共通暗号鍵として仮の機器認証情報Ktを保持している。例えば、仮の機器認証情報Ktは、カードリーダ3の機種を示す機種番号である。機種番号は、機体固有のシリアル番号とは異なり、同一の機種に共通の番号または記号である。   At the initial stage (at the time of factory shipment), the card reader 3 and the host device 2 hold temporary device authentication information Kt as a common encryption key. For example, the temporary device authentication information Kt is a model number indicating the model of the card reader 3. The model number is a number or symbol common to the same model, unlike the serial number unique to the machine.

まず、上位装置2の制御部25(デバイス・暗号制御DLL61)が、機器認証情報Kmを設定する処理を開始する。具体的には、上位装置2から機器認証を行うための要求コマンドが通信部26(通信制御DLL62)、通信部35を介して、カードリーダ3に送信される。カードリーダ3は、要求コマンドを受信した旨、通信部35、通信部26(通信制御DLL62)を介して上位装置2に返信される。   First, the control unit 25 (device / encryption control DLL 61) of the higher-level device 2 starts processing for setting the device authentication information Km. Specifically, a request command for device authentication is transmitted from the higher-level device 2 to the card reader 3 via the communication unit 26 (communication control DLL 62) and the communication unit 35. The card reader 3 replies to the host device 2 via the communication unit 35 and the communication unit 26 (communication control DLL 62) that the request command has been received.

次に、上位装置2の乱数発生部21(デバイス・暗号制御DLL61)が、通信用交換鍵Kex(n)および乱数R(n)を生成する(ステップS1)。なお、第1回目の生成であるので、nは1とする。すなわち、乱数発生部21(デバイス・暗号制御DLL61)は、乱数生成アルゴリズムに従って通信用交換鍵Kex(1)、乱数R(1)を生成する。また、生成した通信用交換鍵Kex(1)および乱数R(1)は、記憶部27に格納される。   Next, the random number generation unit 21 (device / encryption control DLL 61) of the host device 2 generates a communication exchange key Kex (n) and a random number R (n) (step S1). Note that n is 1 because it is the first generation. That is, the random number generator 21 (device / encryption control DLL 61) generates a communication exchange key Kex (1) and a random number R (1) according to a random number generation algorithm. The generated communication exchange key Kex (1) and random number R (1) are stored in the storage unit 27.

その後、暗号部22(デバイス・暗号制御DLL61)は、これらの通信用交換鍵Kex(1)および乱数R(1)を、仮の機器認証情報Ktを用いて3DESの暗号アルゴリズムEに従って暗号化し、暗号データC1=E(Kt,Kex(1)+R(1))を生成する(ステップS2)。ここでは、仮の機器認証情報Ktを暗号アルゴリズムEの鍵として使用している。なお、Kex(1)+R(1)は、通信用交換鍵Kex(1)のデータと乱数R(1)のデータが入れ子のようになっている。   Thereafter, the encryption unit 22 (device / encryption control DLL 61) encrypts the communication exchange key Kex (1) and the random number R (1) according to the 3DES encryption algorithm E using the temporary device authentication information Kt, Encrypted data C1 = E (Kt, Kex (1) + R (1)) is generated (step S2). Here, the temporary device authentication information Kt is used as the key of the encryption algorithm E. In Kex (1) + R (1), the data of the communication exchange key Kex (1) and the data of the random number R (1) are nested.

また、上位装置2の認証処理部20(カードリーダ制御ソフトウェア60)は、暗号データC1を通信部26(通信制御DLL62)経由でカードリーダ3へ送信する。   Further, the authentication processing unit 20 (card reader control software 60) of the host device 2 transmits the encrypted data C1 to the card reader 3 via the communication unit 26 (communication control DLL 62).

次いで、カードリーダ3は、これを通信部35経由で受信する(ステップS3)。認証処理部30は、受信した暗号データC1を、カードリーダ2が予め保持している仮の機器認証情報Ktを用いて3DESの復号アルゴリズムDに従って復号し、(Kex(1)+R(1))=D(Kt,C1)により、通信用交換鍵Kex(1)および乱数R(1)を復号する。ここでは、カードリーダ2が予め保持している仮の機器認証情報Ktを暗号アルゴリズムEの鍵として使用している。   Next, the card reader 3 receives this via the communication unit 35 (step S3). The authentication processing unit 30 decrypts the received encrypted data C1 according to the 3DES decryption algorithm D using the temporary device authentication information Kt held in advance by the card reader 2, and (Kex (1) + R (1)) = D (Kt, C1), the communication exchange key Kex (1) and the random number R (1) are decrypted. Here, temporary device authentication information Kt held in advance by the card reader 2 is used as a key of the encryption algorithm E.

さらに、カードリーダ3の認証処理部30の認証判定部33は、復号した、上位装置2が保持する通信用交換鍵Kexが正しいか否かを確認する(ステップS4)。ここでは、通信用交換鍵Kex(1)のデータのパリティチェック(コード)が正しいかどうかを確認する。また、通信用交換鍵Kex(1)のデータが、3DESとしてセキュリティ上で好ましくないとされる鍵(4個の脆弱鍵と12個の準脆弱鍵)と一致するかどうかをチェックする。   Further, the authentication determination unit 33 of the authentication processing unit 30 of the card reader 3 confirms whether or not the decrypted communication exchange key Kex held by the higher-level device 2 is correct (step S4). Here, it is confirmed whether the parity check (code) of the data of the communication exchange key Kex (1) is correct. Further, it is checked whether or not the data of the communication exchange key Kex (1) matches a key (4 weak keys and 12 quasi-vulnerable keys) that is unfavorable in terms of security as 3DES.

その結果、認証判定部33は、通信用交換鍵Kexが正しくないと判定した場合、カードリーダ3は、エラーを上位装置2へ返して機器認証情報Kmを設定する動作を終了させる(ステップS20)。   As a result, if the authentication determination unit 33 determines that the communication exchange key Kex is not correct, the card reader 3 returns an error to the higher-level device 2 and ends the operation for setting the device authentication information Km (step S20). .

また、ステップS4に戻り、通信用交換鍵Kex(1)が正しいと判定した場合、カードリーダ3の認証処理部30は、復号した通信用交換鍵Kex(1)および乱数R(1)を記憶部36に格納する。引き続き、認証処理部30の暗号部31は、復号した乱数R(1)を、復号した通信用交換鍵Kex(1)を用いて3DESの暗号アルゴリズムEに従って暗号化し、暗号データC2=E(Kex(1),R(1))を生成する。生成した暗号データC2を、カードリーダ3は、制御部34の指令により通信部35経由で上位装置2へ送信する(ステップS5)。なお、送信後、漏えい等を含めセキュリティ性を高めるために、乱数R(1)を消去する。   Returning to step S4, if it is determined that the communication exchange key Kex (1) is correct, the authentication processing unit 30 of the card reader 3 stores the decrypted communication exchange key Kex (1) and the random number R (1). Stored in the unit 36. Subsequently, the encryption unit 31 of the authentication processing unit 30 encrypts the decrypted random number R (1) using the decrypted communication exchange key Kex (1) in accordance with the 3DES encryption algorithm E, and the encrypted data C2 = E (Kex (1), R (1)) are generated. The card reader 3 transmits the generated encrypted data C2 to the higher-level device 2 via the communication unit 35 according to a command from the control unit 34 (step S5). Note that after transmission, the random number R (1) is deleted in order to improve security including leakage.

次に、上位装置2は、暗号データC2を通信部26(通信制御DLL62)経由で受信する。つづいて、復号部23(デバイス・暗号制御DLL61)が、受信した暗号データC2を、記憶部27に保持している通信用交換鍵Kex(1)を用いて3DESの復号アルゴリズムDに従って復号し、R(1)=D(Kex(1),C2)により、乱数R(1)を復号する(ステップS6)。   Next, the host device 2 receives the encrypted data C2 via the communication unit 26 (communication control DLL 62). Subsequently, the decryption unit 23 (device / encryption control DLL 61) decrypts the received encrypted data C2 according to the 3DES decryption algorithm D using the communication exchange key Kex (1) held in the storage unit 27, The random number R (1) is decrypted by R (1) = D (Kex (1), C2) (step S6).

そして、認証判定部24(デバイス・暗号制御DLL61)は、復号した乱数R(1)が、元の乱数R(1)と一致するか否かを確認する(ステップS7)。つまり、ステップS1で、上位装置2の乱数発生部21(デバイス・暗号制御DLL61)が生成した乱数R(1)と、カードリーダ3から送信されてきた乱数R(1)とを比較し、両者が一致するか否かを確認する。確認後、漏えい等を含めセキュリティ性を高めるために、乱数R(1)は消去する。   Then, the authentication determination unit 24 (device / encryption control DLL 61) checks whether or not the decrypted random number R (1) matches the original random number R (1) (step S7). That is, in step S1, the random number R (1) generated by the random number generation unit 21 (device / encryption control DLL 61) of the host device 2 is compared with the random number R (1) transmitted from the card reader 3, and both To see if they match. After confirmation, the random number R (1) is deleted in order to improve security including leakage.

その結果、乱数R(1)が一致しなければ、上位装置2の認証処理部20(デバイス・暗号制御DLL61)は、接続されているカードリーダ3の正当性が認証(確認)できずエラー発生として、機器認証情報Kmを設定する動作を終了させる(ステップS20)。   As a result, if the random number R (1) does not match, the authentication processing unit 20 (device / encryption control DLL 61) of the higher-level device 2 cannot authenticate (confirm) the validity of the connected card reader 3, and an error occurs. Then, the operation for setting the device authentication information Km is terminated (step S20).

また、ステップS7に戻り、乱数R(1)が一致した場合、認証処理部20(カードリーダ制御ソフトウェア60)は、カードリーダ3の正当性が確認(認証)できたと判断し、引き続き、機器認証情報Kmを設定する動作を実行する。具体的には、制御部25(デバイス・暗号制御DLL61)は、カードリーダ3の機種固有情報としてのシリアル番号を上位装置2に送信するようカードリーダ3に対して要求する(ステップS8)。   Returning to step S7, if the random number R (1) matches, the authentication processing unit 20 (card reader control software 60) determines that the validity of the card reader 3 has been confirmed (authenticated), and continues to authenticate the device. An operation for setting the information Km is executed. Specifically, the control unit 25 (device / encryption control DLL 61) requests the card reader 3 to transmit a serial number as model-specific information of the card reader 3 to the host device 2 (step S8).

そして、カードリーダ3の制御部34は、シリアル番号送信の要求を通信部35経由で受信すると、カードリーダ3のシリアル番号をEEPROM37から読み出し、通信部35経由で上位装置2に送信する(ステップS9)。   When the control unit 34 of the card reader 3 receives the serial number transmission request via the communication unit 35, the control unit 34 reads the serial number of the card reader 3 from the EEPROM 37 and transmits it to the host device 2 via the communication unit 35 (step S9). ).

次いで、制御部25(デバイス・暗号制御DLL61)は、カードリーダ3のシリアル番号を(通信部26を介して)認証情報生成部28(認証鍵生成DLL55)に出力し、認証情報生成部28に対して、このシリアル番号を入力して、新規な(正式な)機器認証情報Kmの生成を指令する(ステップS10)。   Next, the control unit 25 (device / encryption control DLL 61) outputs the serial number of the card reader 3 (via the communication unit 26) to the authentication information generation unit 28 (authentication key generation DLL 55), and sends it to the authentication information generation unit 28. On the other hand, this serial number is input to instruct generation of new (official) device authentication information Km (step S10).

その後、認証情報生成部28(認証鍵生成DLL55)は、機器認証情報Kmを生成する認証情報アルゴリズムに従って、入力したシリアル番号に基づいて機器認証情報Kmを生成し、この機器認証情報Kmを認証処理部20(デバイス・暗号制御DLL61)に出力する(ステップS11)。なお、機器認証情報Kmの生成処理については、図5のフローチャートにより後述する。   Thereafter, the authentication information generation unit 28 (authentication key generation DLL 55) generates device authentication information Km based on the input serial number in accordance with an authentication information algorithm for generating device authentication information Km, and performs authentication processing on the device authentication information Km. The data is output to the unit 20 (device / encryption control DLL 61) (step S11). The device authentication information Km generation process will be described later with reference to the flowchart of FIG.

次に、認証処理部20(カードリーダ制御ソフトウェア60)は、機器認証情報Kmの取得に成功したか否かを確認する(ステップS12)。   Next, the authentication processing unit 20 (card reader control software 60) checks whether or not the device authentication information Km has been successfully acquired (step S12).

その結果、生成した機器認証情報Kmの取得に失敗すれば、上位装置2の制御部25(デバイス・暗号制御DLL61)は、機器認証情報Kmを取得できずエラー発生として、機器認証情報Kmを設定する動作を終了させる(ステップS20)。   As a result, if acquisition of the generated device authentication information Km fails, the control unit 25 (device / encryption control DLL 61) of the higher-level device 2 cannot acquire the device authentication information Km and sets the device authentication information Km as an error. The operation to be finished is terminated (step S20).

また、ステップS12に戻り、機器認証情報Kmの取得に成功すれば、上位装置2の制御部25(デバイス・暗号制御DLL61)は、乱数発生部21(デバイス・暗号制御DLL61)に、新規な乱数R(n)の生成を要求する。ここでは、第2回目の乱数なのでn=2とする。乱数発生部21(デバイス・暗号制御DLL61)は、乱数生成アルゴリズムに基づいて、乱数R(2)を生成する(ステップS13)。また、生成した乱数R(2)は、記憶部27に格納される。   Returning to step S12, if the device authentication information Km is successfully acquired, the control unit 25 (device / encryption control DLL 61) of the higher-level device 2 sends a new random number to the random number generation unit 21 (device / encryption control DLL 61). Request generation of R (n). Here, since the second random number, n = 2. The random number generation unit 21 (device / encryption control DLL 61) generates a random number R (2) based on a random number generation algorithm (step S13). The generated random number R (2) is stored in the storage unit 27.

その後、暗号部21(デバイス・暗号制御DLL61)は、取得した機器認証情報Kmおよび新たに生成した乱数R(2)を、通信用交換鍵Kex(1)を用いて3DESの暗号アルゴリズムEに従って暗号化し、暗号データC3=E(Kex(1),Km+R(2))を生成する。なお、Km+R(2)は、機器認証情報Kmのデータと乱数R(2)のデータが入れ子のようになっている。また、制御部25(デバイス・暗号制御DLL61)は、暗号データC3を通信部26(通信制御DLL62)経由でカードリーダ3へ送信する(ステップS14)。   Thereafter, the encryption unit 21 (device / encryption control DLL 61) encrypts the acquired device authentication information Km and the newly generated random number R (2) according to the 3DES encryption algorithm E using the communication exchange key Kex (1). To generate encrypted data C3 = E (Kex (1), Km + R (2)). Note that the device authentication information Km data and the random number R (2) data are nested in Km + R (2). Further, the control unit 25 (device / encryption control DLL 61) transmits the encrypted data C3 to the card reader 3 via the communication unit 26 (communication control DLL 62) (step S14).

そして、カードリーダ3の制御部34は、暗号データC3を通信部35経由で受信する。受信した暗号データC3を、カードリーダ3の認証処理部30は、保持している通信用交換鍵Kex(1)を用いて3DESの復号アルゴリズムDに従って復号し、Km+R(2)=D(Kex(1),C3)により、機器認証情報Kmおよび乱数R(2)を復号する(ステップS15)。   Then, the control unit 34 of the card reader 3 receives the encrypted data C3 via the communication unit 35. The authentication processing unit 30 of the card reader 3 decrypts the received encrypted data C3 according to the 3DES decryption algorithm D using the held communication exchange key Kex (1), and Km + R (2) = D (Kex ( The device authentication information Km and the random number R (2) are decrypted by 1) and C3) (step S15).

さらに、カードリーダ3の認証処理部30の認証判定部33は、復号した、上位装置2が保持する機器認証情報Kmが正しいか否かを確認する(ステップS16)。ここでは、機器認証情報Kmのデータのパリティチェック(コード)が正しいかどうかを確認している。また、機器認証情報Kmのデータが、3DESとしてセキュリティ上で好ましくないとされる鍵(4個の脆弱鍵と12個の準脆弱鍵)と一致するかどうかをチェックしている。   Further, the authentication determination unit 33 of the authentication processing unit 30 of the card reader 3 checks whether or not the decrypted device authentication information Km held by the higher-level device 2 is correct (step S16). Here, it is confirmed whether the parity check (code) of the data of the device authentication information Km is correct. Further, it is checked whether or not the data of the device authentication information Km matches a key (4 weak keys and 12 quasi-weak keys) that is unfavorable in terms of security as 3DES.

その結果、認証判定部33は、機器認証情報Kmが正しくないと判定した場合、認証処理部30は、エラーを上位装置2へ返して機器認証情報Kmを設定する動作を終了させる(ステップS20)。   As a result, when the authentication determination unit 33 determines that the device authentication information Km is not correct, the authentication processing unit 30 returns an error to the higher-level device 2 and ends the operation of setting the device authentication information Km (step S20). .

また、ステップS16に戻り、機器認証情報Kmが正しいと判定した場合、カードリーダ3の認証処理部30は、復号した機器認証情報Kmを取得してEEPROM37に格納されている仮の機器認証情報Ktに上書きする。また、復号した乱数R(2)は記憶部36に格納される。引き続き、認証処理部30の暗号部31は、復号した乱数R(2)を、復号した機器認証情報Kmを用いて3DESの暗号アルゴリズムEに従って暗号化し、暗号データC4=E(Km,R(2))を生成する。生成した暗号データC4を、カードリーダ3の制御部34は、通信部35経由で上位装置2へ送信する(ステップS17)。なお、送信後、漏えい等を含めセキュリティ性を高めるために、乱数R(2)を消去する。   Returning to step S16, if it is determined that the device authentication information Km is correct, the authentication processing unit 30 of the card reader 3 acquires the decrypted device authentication information Km and stores the provisional device authentication information Kt stored in the EEPROM 37. Overwrite to. The decrypted random number R (2) is stored in the storage unit 36. Subsequently, the encryption unit 31 of the authentication processing unit 30 encrypts the decrypted random number R (2) according to the 3DES encryption algorithm E using the decrypted device authentication information Km, and encrypts data C4 = E (Km, R (2 )). The control unit 34 of the card reader 3 transmits the generated encrypted data C4 to the host device 2 via the communication unit 35 (step S17). Note that after transmission, the random number R (2) is deleted in order to improve security including leakage.

その後、上位装置2の認証制御部20(カードリーダ制御ソフトウェア60)は、暗号データC4を通信部26(通信制御DLL62)経由で受信する。つづいて、上位装置2の復号部23(デバイス・暗号制御DLL61)は、受信した暗号データC4を、保持している機器認証情報Kmを用いて3DESの復号アルゴリズムDに従って復号し、R(2)=D(Km,C4)により、乱数R(2)を復号する(ステップS18)。   Thereafter, the authentication control unit 20 (card reader control software 60) of the host device 2 receives the encrypted data C4 via the communication unit 26 (communication control DLL 62). Subsequently, the decryption unit 23 (device / encryption control DLL 61) of the upper level apparatus 2 decrypts the received encrypted data C4 according to the 3DES decryption algorithm D using the device authentication information Km held therein, and R (2) The random number R (2) is decrypted by = D (Km, C4) (step S18).

さらに、認証判定部24(デバイス・暗号制御DLL61)は、復号した乱数R(2)が、元の乱数R(2)と一致するか否かを確認する(ステップS19)。つまり、ステップS13で、上位装置2が生成した乱数R(2)と、カードリーダ3から送信されてきた乱数R(2)とを比較し、両者が一致するか否かを確認する。確認後、漏えい等を含めセキュリティ性を高めるために、乱数R(2)は消去する。   Further, the authentication determination unit 24 (device / encryption control DLL 61) checks whether or not the decrypted random number R (2) matches the original random number R (2) (step S19). That is, in step S13, the random number R (2) generated by the host device 2 is compared with the random number R (2) transmitted from the card reader 3, and it is confirmed whether or not they match. After confirmation, the random number R (2) is deleted in order to improve security including leakage.

その結果、乱数R(2)が一致した場合、上位装置2の制御部25(デバイス・暗号制御DLL61)は、カードリーダ3へ正常に機器認証情報Kmを設定できたと判断し、機器認証情報Kmを設定する動作は無事に終了する。   As a result, when the random numbers R (2) match, the control unit 25 (device / encryption control DLL 61) of the higher-level device 2 determines that the device authentication information Km has been normally set in the card reader 3, and the device authentication information Km The operation to set is completed successfully.

なお、この作業が終了した時点で、上位装置2が保持している機器認証情報Kmは、セキュリティ性を高めるために、消去される。換言すれば、機器認証情報Kmを設定する動作が終了すると、上位装置2は、仮の機器認証情報Ktを記憶部27で保持しているとともに、カードリーダ3は、ステップS11で生成された機器認証情報KmをEEPROM37で保持している。   Note that when this operation is completed, the device authentication information Km held by the host device 2 is deleted in order to improve security. In other words, when the operation for setting the device authentication information Km is completed, the higher-level device 2 holds the temporary device authentication information Kt in the storage unit 27, and the card reader 3 uses the device generated in step S11. The authentication information Km is held in the EEPROM 37.

一方、もし、ステップS19で乱数R(2)が一致しなければ、上位装置2の認証処理部20の制御部25(デバイス・暗号制御DLL61)は、接続されているカードリーダ3の正当性が認証(確認)できずエラー発生として、機器認証情報Kmを設定する動作を終了させる(ステップS20)。   On the other hand, if the random number R (2) does not match in step S19, the control unit 25 (device / encryption control DLL 61) of the authentication processing unit 20 of the higher-level device 2 confirms the validity of the connected card reader 3. The operation for setting the device authentication information Km is terminated when the authentication (confirmation) cannot be performed and an error occurs (step S20).

(機器認証動作の手順)
機器認証情報Kmを設定する動作が無事に終了したカードリーダ3が組み込まれている情報処理システム1、例えばATM装置(現金自動預け入れ払い機)においては、カードを用いた現金の入出金や振込、振替などのトランザクション処理が行われるたびに、EEPROM37に格納されている機器認証情報Kmを用いてカードリーダ3の機器認証動作が実行される。
(Device authentication operation procedure)
In the information processing system 1 in which the card reader 3 for which the operation for setting the device authentication information Km has been successfully completed is incorporated, for example, an ATM device (automatic teller machine), cash deposit / withdrawal or transfer using a card, Each time transaction processing such as transfer is performed, the device authentication operation of the card reader 3 is executed using the device authentication information Km stored in the EEPROM 37.

以下、この機器認証動作を図5に基づいて詳述する。
まず、上位装置であるアプリケーション51からの指示により、または上位装置2やカードリーダ3の電源立ち上げ時またはリセット時に、制御部25(カードリーダ制御ソフトウェア60)に対して認証開始が通知される(S30)。
Hereinafter, the device authentication operation will be described in detail with reference to FIG.
First, the start of authentication is notified to the control unit 25 (card reader control software 60) in response to an instruction from the application 51, which is the host device, or when the host device 2 or the card reader 3 is turned on or reset (see FIG. S30).

上位装置2の制御部25(デバイス・暗号制御DLL61)は、通信部26(通信制御DLL62)経由でカードリーダ3の制御部34に、カードリーダ3の機種固有情報(例えばシリアル番号)を上位装置2に送信するようカードリーダ3に対して要求する(ステップS31)。   The control unit 25 (device / encryption control DLL 61) of the host device 2 sends the model-specific information (for example, serial number) of the card reader 3 to the control unit 34 of the card reader 3 via the communication unit 26 (communication control DLL 62). 2 is requested to the card reader 3 (step S31).

そして、カードリーダ3の制御部34は、シリアル番号送信の要求を通信部35経由で受信すると、上述したステップS9と同様に、カードリーダ3の機種固有情報(例えばシリアル番号)をEEPROM37から読み出し、通信部35経由で上位装置2に送信する(ステップS32)。   When the control unit 34 of the card reader 3 receives the serial number transmission request via the communication unit 35, it reads out the model-specific information (for example, serial number) of the card reader 3 from the EEPROM 37, as in step S9 described above. The data is transmitted to the host device 2 via the communication unit 35 (step S32).

次いで、制御部25(デバイス・暗号制御DLL61)は、上述したステップS10と同様に、カードリーダ3のシリアル番号を通信部26(通信制御DLL62)を介して認証情報生成部28(認証鍵生成DLL55)に出力し、認証情報生成部28(認証鍵生成DLL55)に対して、この機種固有情報を入力して、新規な(正式な)機器認証情報Kmの生成を指令する(ステップS33)。   Next, the control unit 25 (device / encryption control DLL 61) sends the serial number of the card reader 3 to the authentication information generation unit 28 (authentication key generation DLL 55) via the communication unit 26 (communication control DLL 62) as in step S10 described above. ) And the machine-specific information is input to the authentication information generation unit 28 (authentication key generation DLL 55) to instruct generation of new (official) device authentication information Km (step S33).

その後、認証情報生成部28(認証鍵生成DLL55)は、上述したステップS11と同様に、入手したシリアル番号に基づいて機器認証情報Kmを生成し、この機器認証情報Kmを認証処理部20(カードリーダ制御ソフトウェア60)に出力する(ステップS34)。   Thereafter, the authentication information generation unit 28 (authentication key generation DLL 55) generates device authentication information Km based on the obtained serial number, as in step S11 described above, and this device authentication information Km is used as the authentication processing unit 20 (card The data is output to the reader control software 60) (step S34).

ここで、機器認証情報Kmの生成に際しては、上述したステップS11と同様に、機器認証情報Kmを生成する認証情報アルゴリズム(プログラム)に従って、入力した機種固有情報(例えばシリアル番号)に基づいて機器認証情報Kmを生成する。機器認証情報Kmの生成処理については、図6のフローチャートにより後述する。   Here, when the device authentication information Km is generated, the device authentication is performed based on the input model-specific information (for example, serial number) according to the authentication information algorithm (program) for generating the device authentication information Km, as in step S11 described above. Information Km is generated. The generation process of the device authentication information Km will be described later with reference to the flowchart of FIG.

生成した機器認証情報Kmは、同じ機種固有情報により生成しているので、上述したステップS11で生成した機器認証情報Kmと同じ鍵となる。すなわち、機器認証情報Kmが再現されたことになり、上位装置2で保持する機器認証情報Kmは、カードリーダ3が保持する機器認証情報Kmと同じものとなっている。   Since the generated device authentication information Km is generated by the same model specific information, it is the same key as the device authentication information Km generated in step S11 described above. That is, the device authentication information Km is reproduced, and the device authentication information Km held by the higher-level device 2 is the same as the device authentication information Km held by the card reader 3.

次に、認証処理部20(カードリーダ制御ソフトウェア60)は、上述したステップS12と同様に、機器認証情報Kmの取得に成功したか否かを確認する(ステップS35)。そして、機器認証情報Kmの取得に成功すれば、制御部25(デバイス・暗号制御DLL61)は、上述したステップS13と同様に、乱数発生部21(デバイス・暗号制御DLL61)に、新規な通信用交換鍵Kex(n)、乱数R(n)の生成を要求する。   Next, the authentication processing unit 20 (card reader control software 60) confirms whether or not the device authentication information Km has been successfully acquired, similarly to step S12 described above (step S35). If acquisition of the device authentication information Km is successful, the control unit 25 (device / encryption control DLL 61) sends a new communication request to the random number generation unit 21 (device / encryption control DLL 61) as in step S13 described above. Requests generation of exchange key Kex (n) and random number R (n).

すると、乱数発生部21(デバイス・暗号制御DLL61)は、乱数生成アルゴリズムに基づいて、通信用交換鍵Kex(2)、乱数R(3)を生成する。また、生成した通信用交換鍵Kex(2)、乱数R(3)は、記憶部27に格納される。なお、通信用交換鍵Kex(2)は、上述したステップS1で生成した通信用交換鍵Kex(1)とは異なるデータである。また、乱数R(3)は、上述したステップS13で生成した乱数R(2)とは異なるデータである。   Then, the random number generator 21 (device / encryption control DLL 61) generates a communication exchange key Kex (2) and a random number R (3) based on a random number generation algorithm. The generated communication exchange key Kex (2) and random number R (3) are stored in the storage unit 27. Note that the communication exchange key Kex (2) is data different from the communication exchange key Kex (1) generated in step S1 described above. The random number R (3) is data different from the random number R (2) generated in step S13 described above.

また、ステップS35において、特に図示していないが、認証処理部20(カードリーダ制御ソフトウェア60)が確認した結果、生成した機器認証情報Kmの取得に失敗すれば、上位装置2の制御部25(デバイス・暗号制御DLL61)は、機器認証情報Kmを取得できずエラー発生として、機器認証情報Kmを設定する動作を終了させる。このようにして生成された(再現された)機器認証情報Kmを共通鍵として用いて、上位装置2の認証処理部20(カードリーダ制御ソフトウェア60)はカードリーダ3の機器認証を行う。   In step S35, although not particularly illustrated, if the authentication processing unit 20 (card reader control software 60) confirms that the acquisition of the generated device authentication information Km fails, the control unit 25 ( The device / encryption control DLL 61) terminates the operation of setting the device authentication information Km when the device authentication information Km cannot be acquired and an error occurs. Using the device authentication information Km generated (reproduced) in this way as a common key, the authentication processing unit 20 (card reader control software 60) of the host device 2 performs device authentication of the card reader 3.

次に、暗号部21(デバイス・暗号制御DLL61)は、生成した通信用交換鍵Kex(2)および乱数R(3)を、機器認証情報Kmを用いて3DESの暗号アルゴリズムEに従って暗号化し、暗号データC5=E(Km,Kex(2)+R(3))を生成する(ステップS36)。なお、Kex(2)+R(3)は、通信用交換鍵Kex(2)のデータと乱数R(3)のデータが入れ子のようになっている。ここでは、ステップS34で生成した機器認証情報Kmを暗号アルゴリズムEの鍵として使用している。また、制御部25(デバイス・暗号制御DLL61)は、暗号データC5を通信部26(通信制御DLL62)経由でカードリーダ3へ送信する。   Next, the encryption unit 21 (device / encryption control DLL 61) encrypts the generated communication exchange key Kex (2) and the random number R (3) in accordance with the 3DES encryption algorithm E using the device authentication information Km. Data C5 = E (Km, Kex (2) + R (3)) is generated (step S36). In Kex (2) + R (3), the data of the communication exchange key Kex (2) and the data of the random number R (3) are nested. Here, the device authentication information Km generated in step S34 is used as the key of the encryption algorithm E. The control unit 25 (device / encryption control DLL 61) transmits the encrypted data C5 to the card reader 3 via the communication unit 26 (communication control DLL 62).

その後、カードリーダ3の制御部34は、暗号データC5を通信部35経由で受信する。受信した暗号データC5を、カードリーダ3の認証処理部30は、保持している機器認証情報Kmを用いて3DESの復号アルゴリズムDに従って復号し、Kex(2)+R(3)=D(Km,C5)により、通信用交換鍵Kex(2)および乱数R(3)を復号する(ステップS37)。   Thereafter, the control unit 34 of the card reader 3 receives the encrypted data C5 via the communication unit 35. The authentication processing unit 30 of the card reader 3 decrypts the received encrypted data C5 according to the 3DES decryption algorithm D using the stored device authentication information Km, and Kex (2) + R (3) = D (Km, C5) decrypts communication exchange key Kex (2) and random number R (3) (step S37).

このとき、カードリーダ3の認証処理部30の認証判定部33は、受信した、上位装置2が保持する通信用交換鍵Kex(2)が正しいか否かを確認する。ここでは、通信用交換鍵Kex(2)のデータのパリティチェック(コード)が正しいかどうかを確認している。また、通信用交換鍵Kex(2)のデータが、3DESとしてセキュリティ上で好ましくないとされる鍵(4個の脆弱鍵と12個の準脆弱鍵)と一致するかどうかをチェックしている。その結果、認証判定部33は、受信した(上位装置2の)通信用交換鍵Kex(2)が正しくないと判定した場合、認証処理部30は、エラーを上位装置2へ返して機器認証情報Kmを設定する動作を終了させる。   At this time, the authentication determination unit 33 of the authentication processing unit 30 of the card reader 3 checks whether or not the received communication exchange key Kex (2) held by the higher-level device 2 is correct. Here, it is confirmed whether the parity check (code) of the data of the communication exchange key Kex (2) is correct. Further, it is checked whether or not the data of the communication exchange key Kex (2) matches a key (4 weak keys and 12 quasi-weak keys) deemed unfavorable in terms of security as 3DES. As a result, when the authentication determination unit 33 determines that the received communication exchange key Kex (2) (of the higher-level device 2) is not correct, the authentication processing unit 30 returns an error to the higher-level device 2 to return the device authentication information. The operation of setting Km is terminated.

次いで、認証判定部33は、受信した上位装置2の通信用交換鍵Kex(2)が正しいと判定した場合、引き続き、認証処理部30の暗号部31は、復号した乱数R(3)を、復号した通信交換用鍵Kex(2)を用いて3DESの暗号アルゴリズムEに従って暗号化し、暗号データC6=E(Kex(2),R(3))を生成する(ステップS38)。生成した暗号データC6を、カードリーダ3の制御部34は、通信部35経由で上位装置2へ送信する。   Next, when the authentication determination unit 33 determines that the received communication exchange key Kex (2) of the higher-level device 2 is correct, the encryption unit 31 of the authentication processing unit 30 continues to use the decrypted random number R (3). Using the decrypted communication exchange key Kex (2), encryption is performed according to the 3DES encryption algorithm E to generate encrypted data C6 = E (Kex (2), R (3)) (step S38). The control unit 34 of the card reader 3 transmits the generated encrypted data C6 to the host device 2 via the communication unit 35.

その後、上位装置2の認証処理部20(カードリーダ制御ソフトウェア60)は、暗号データC6を通信部26(通信制御DLL62)経由で受信する。つづいて、復号部23(デバイス・暗号制御DLL61)は、受信した暗号データC6を、保持している通信用交換鍵Kex(2)を用いて3DESの復号アルゴリズムDに従って復号し、R(3)=D(Kex(2),C6)により、乱数R(3)を生成する(ステップS39)。   Thereafter, the authentication processing unit 20 (card reader control software 60) of the host device 2 receives the encrypted data C6 via the communication unit 26 (communication control DLL 62). Subsequently, the decryption unit 23 (device / encryption control DLL 61) decrypts the received encrypted data C6 according to the 3DES decryption algorithm D using the held communication exchange key Kex (2), and R (3) = D (Kex (2), C6) generates a random number R (3) (step S39).

そして、認証判定部24(デバイス・暗号制御DLL61)は、復号した乱数R(3)が一致するか否かを確認する。すなわち、上位装置2が生成し、保持している乱数R(3)と、カードリーダ3から送信され、復号した乱数R(3)とを比較し、両者が一致するか否かを確認する。確認後、漏えい等を含めセキュリティ性を高めるために、乱数R(3)は消去する。   Then, the authentication determination unit 24 (device / encryption control DLL 61) checks whether or not the decrypted random number R (3) matches. That is, the random number R (3) generated and held by the host device 2 is compared with the random number R (3) transmitted from the card reader 3 and decrypted, and it is confirmed whether or not they match. After confirmation, the random number R (3) is deleted in order to improve security including leakage.

その結果、乱数R(3)が一致した場合、制御部25(デバイス・暗号制御DLL61)は、カードリーダ3の正当性が認証(確認)できたと判断し、カードリーダ3の正当性が肯定されたことになるので、認証処理部20は、上位ソフトウェアであるアプリケーション51にその旨を通知し機器認証動作を無事に終了させる。これにより、上位装置2およびカードリーダ3は、それぞれ通信用交換鍵Kex(2)を保持することになる。   As a result, if the random numbers R (3) match, the control unit 25 (device / encryption control DLL 61) determines that the validity of the card reader 3 has been authenticated (confirmed), and the validity of the card reader 3 is affirmed. Therefore, the authentication processing unit 20 notifies the application 51, which is higher-level software, to that effect, and ends the device authentication operation safely. As a result, the host device 2 and the card reader 3 each hold the communication exchange key Kex (2).

ここで、機器認証動作が終了する(S40)。   Here, the device authentication operation ends (S40).

なお、この作業が終了した時点で、上位装置2が保持している機器認証情報Kmは、セキュリティ性を高めるために、消去される。換言すれば、機器認証情報Kmを設定する動作が終了すると、上位装置2は、仮の機器認証情報Ktを記憶部27で保持しているとともに、カードリーダ3は、ステップS11で生成された機器認証情報KmをEEPROM37で保持している。   Note that when this operation is completed, the device authentication information Km held by the host device 2 is deleted in order to improve security. In other words, when the operation for setting the device authentication information Km is completed, the higher-level device 2 holds the temporary device authentication information Kt in the storage unit 27, and the card reader 3 uses the device generated in step S11. The authentication information Km is held in the EEPROM 37.

もし、ステップS19で乱数R(3)が一致しなければ、上位装置2の認証処理部20は、エラーを制御部25に出力する。制御部25は、接続されているカードリーダ3の正当性が認証(確認)できなかったので、通信用交換鍵Kexを設定する動作を終了させる。   If the random number R (3) does not match in step S19, the authentication processing unit 20 of the higher-level device 2 outputs an error to the control unit 25. Since the validity of the connected card reader 3 could not be authenticated (confirmed), the control unit 25 ends the operation of setting the communication exchange key Kex.

(機器認証情報Kmの生成動作)
つぎに図6のフローチャートを参照して、認証情報生成部28(認証鍵生成DLL55)による機器認証情報Km(共通鍵)を設定する動作について具体的に説明する。
(Generation operation of device authentication information Km)
Next, the operation for setting the device authentication information Km (common key) by the authentication information generation unit 28 (authentication key generation DLL 55) will be specifically described with reference to the flowchart of FIG.

認証情報生成部28(認証鍵生成DLL55)は、上述のS10、S33の処理によって、カードリーダ3からの機種固有情報(シリアル番号等)を入力すると(S100)、所定の認証情報アルゴリズムに従って、新規な(正式な)機器認証情報Kmの生成処理を開始し(S102〜S110)、生成した機器認証情報Kmを認証処理部20(カードリーダ制御ソフトウェア60)へ返す(S110、図5のS28)。   When the authentication information generation unit 28 (authentication key generation DLL 55) inputs model-specific information (such as a serial number) from the card reader 3 by the processes of S10 and S33 described above (S100), a new authentication information algorithm is generated according to a predetermined authentication information algorithm. N (formal) device authentication information Km generation processing is started (S102 to S110), and the generated device authentication information Km is returned to the authentication processing unit 20 (card reader control software 60) (S110, S28 in FIG. 5).

すなわち、認証情報生成部28(認証鍵生成DLL55)は、機種固有情報を鍵長のデータへ拡張し(S102)、拡張データと任意のデータで排他的論理和をとる(S104)。さらに認証情報生成部28(認証鍵生成DLL55)は、排他的論理和をとって生成されたデータを拡張データで暗号化した暗号データを生成する(S106)。   That is, the authentication information generation unit 28 (authentication key generation DLL 55) extends the model-specific information to key length data (S102), and performs exclusive OR with the extension data and arbitrary data (S104). Further, the authentication information generation unit 28 (authentication key generation DLL 55) generates encrypted data obtained by encrypting the data generated by taking the exclusive OR with the extension data (S106).

ついで、認証情報生成部28(認証鍵生成DLL55)は、暗号データに対して、カードリーダ3の認証判定部33においてパリティチェックに用いるパリティを算出・付与し(S108)、認証処理部20(カードリーダ制御ソフトウェア60)へ機器認証情報Kmとして返す(S110)。   Next, the authentication information generation unit 28 (authentication key generation DLL 55) calculates and assigns parity to be used for the parity check in the authentication determination unit 33 of the card reader 3 with respect to the encrypted data (S108), and the authentication processing unit 20 (card The device authentication information Km is returned to the reader control software 60) (S110).

(本実施形態の主な効果)
本実施形態の特徴を纏めると次の通りである。
情報処理システム1は、上位装置(上位装置2)と情報処理装置(カードリーダ3)との間で情報の送受信を行うシステムである。
(Main effects of this embodiment)
The characteristics of this embodiment are summarized as follows.
The information processing system 1 is a system that transmits and receives information between a host device (host device 2) and an information processing device (card reader 3).

上位装置(上位装置2)は、共通鍵暗号方式を用いて前記情報処理装置(カードリーダ3)が正当な機器であることを認証する上位装置側認証処理部(認証処理部20)と、前記上位装置(上位装置2)と前記情報処理装置(カードリーダ3)とが共通して保有する機器認証情報を生成する認証情報アルゴリズムを有し、前記情報処理装置(カードリーダ3)が所有する機種固有情報に基づいて前記機器認証情報を生成する認証情報生成部(認証情報生成部28)と、前記情報処理装置(カードリーダ3)と通信を行う通信部(通信部26)と、を備える。
前記情報処理装置(カードリーダ3)は、前記上位装置(上位装置2)と認証処理を行う情報処理装置側認証処理部(認証処理部30)と、前記機器認証情報および前記機種固有情報を記憶する不揮発性記憶部(EEPROM37)と、を備える。
前記認証情報生成部(認証情報生成部28)は、前記情報処理装置(カードリーダ3)の機種固有情報からマスターキー(Km)を生成する機能を有し、前記認証情報生成部(認証情報生成部28)、前記上位装置側認証処理部(認証処理部20)及び前記通信部(通信部26)の機能は、それぞれの機能をモジュールとした制御ソフトウェア(カードリーダ制御ソフトウェア60)として構成されており、前記情報処理装置(カードリーダ3)の前記マスターキーを書き換え、及び予め仮の機器認証情報として保持しているテンポラリーキー(Kt)に書き換え可能なツール(アプリケーション51)を備える。
The host device (host device 2) includes a host device side authentication processing unit (authentication processing unit 20) that authenticates that the information processing device (card reader 3) is a legitimate device using a common key encryption method, A model having an authentication information algorithm for generating device authentication information commonly held by a host device (host device 2) and the information processing device (card reader 3), and possessed by the information processing device (card reader 3) An authentication information generation unit (authentication information generation unit 28) that generates the device authentication information based on the unique information, and a communication unit (communication unit 26) that communicates with the information processing apparatus (card reader 3).
The information processing device (card reader 3) stores an information processing device side authentication processing unit (authentication processing unit 30) that performs authentication processing with the host device (host device 2), the device authentication information, and the model-specific information. A non-volatile storage unit (EEPROM 37).
The authentication information generation unit (authentication information generation unit 28) has a function of generating a master key (Km) from model-specific information of the information processing apparatus (card reader 3), and the authentication information generation unit (authentication information generation) Unit 28), the higher-level device side authentication processing unit (authentication processing unit 20), and the communication unit (communication unit 26) are configured as control software (card reader control software 60) having each function as a module. And a tool (application 51) that can rewrite the master key of the information processing apparatus (card reader 3) and rewrite the temporary key (Kt) held in advance as temporary device authentication information.

認証情報アルゴリズムについては、情報処理装置(カードリーダ3)の製造業者がソースコード(機器認証情報Kmを生成するための認証情報アルゴリズム)をモジュール(部品)として作成し、情報処理システム1の装置運用管理者に提供されることで、情報処理システム1の装置運用管理者は、モジュールとして提供されたソースコードに、機器認証情報Kmを生成する独自のアルゴリズムや機能を追加して、認証鍵生成モジュール(認証鍵生成DLL55)を作成することができる。また、認証情報生成部、上位装置側認証処理部、及び通信部の機能は、それぞれの機能をモジュールとした制御ソフトウェアとして、情報処理システムの装置運用管理者に提供されるので、装置運用管理者はモジュール単位で機能を変更・調整することができ、開発リソースを抑制でき、現実の導入がより容易になる。すなわち、装置運用管理者は、3DES等の共通鍵暗号方式のノウハウ(知識や技術)が十分でない場合でも、十分にセキュリティが確保された情報処理システム1を構築できる。一方、上位装置2の製造業者は、機器認証情報に関して、製造時に仮の機器認証情報を設定しているだけで、実際の運用時の機器認証情報Kmについては、把握することがないため、製造業者からの漏洩といったリスクを回避できる。   As for the authentication information algorithm, the manufacturer of the information processing device (card reader 3) creates a source code (authentication information algorithm for generating device authentication information Km) as a module (part), and the operation of the information processing system 1 is performed. By being provided to the administrator, the apparatus operation manager of the information processing system 1 adds an original algorithm and function for generating device authentication information Km to the source code provided as a module, and an authentication key generation module (Authentication key generation DLL 55) can be created. In addition, since the functions of the authentication information generation unit, the higher-level device side authentication processing unit, and the communication unit are provided to the device operation manager of the information processing system as control software with the respective functions as modules, the device operation manager The function can be changed and adjusted on a module-by-module basis, development resources can be reduced, and actual implementation becomes easier. That is, the apparatus operation manager can construct the information processing system 1 in which sufficient security is ensured even when the know-how (knowledge and technology) of the common key cryptosystem such as 3DES is insufficient. On the other hand, the manufacturer of the host device 2 only sets temporary device authentication information at the time of manufacturing, but does not grasp the device authentication information Km during actual operation. Risks such as leakage from contractors can be avoided.

前記制御ソフトウェア(リーダ制御ソフトウェア60)の前記認証情報生成部(認証情報生成部28)として機能するモジュールはDLL(認証情報生成DLL55)として構成されていることを特徴とする。
装置運用管理者は、DLLとして提供されたソースコードに、機器認証情報Kmを生成する独自のアルゴリズムや機能を追加して、認証鍵生成DLL(認証情報生成DLL55)を作成することができる。3DES等の知識と技術が必要となる部分は、上位装置2の製造業者がソースコードをDLLとして、利用が容易なパッケージ(ソフトウェア)として提供することができるため、装置運用管理者は、独自の、機器認証情報Kmを生成する認証情報アルゴリズム(認証情報を生成するDLL)を容易に導入できる。
The module functioning as the authentication information generation unit (authentication information generation unit 28) of the control software (reader control software 60) is configured as a DLL (authentication information generation DLL 55).
The device operation manager can create an authentication key generation DLL (authentication information generation DLL 55) by adding a unique algorithm or function for generating the device authentication information Km to the source code provided as the DLL. The part that requires knowledge and technology such as 3DES can be provided as an easy-to-use package (software) by the manufacturer of the host device 2 as a source code as a DLL. An authentication information algorithm for generating device authentication information Km (a DLL for generating authentication information) can be easily introduced.

前記認証情報生成部(認証情報生成部28)として機能する前記DLL(認証鍵生成DLL55)のファイル名および前記DLLとの通信インターフェース(通信制御DLL62)は変更不可である。
これによって、予め用意されたDLLをベースに動的に処理プログラムが作成されるため、互換性を確保しつつ、アプリケーション51やカードリーダ制御ソフトウェア60の処理や、動作チェック等を適切に運用できる。
The file name of the DLL (authentication key generation DLL 55) functioning as the authentication information generation unit (authentication information generation unit 28) and the communication interface (communication control DLL 62) with the DLL cannot be changed.
As a result, a processing program is dynamically created based on a prepared DLL, so that the processing of the application 51 and the card reader control software 60, operation check, and the like can be appropriately operated while ensuring compatibility.

前記情報処理装置(カードリーダ3)の前記機種固有情報は、前記上位装置側認証処理部(認証処理部20)のメモリに格納されて、前記上位装置側認証処理部(認証処理部20)は、入力毎に前記情報処理装置(カードリーダ3)が入れ替えられたか否かを確認する。
入力毎に入れ替えの確認がなされるので、認証処理のセキュリティを一層向上させることができる。
The model-specific information of the information processing device (card reader 3) is stored in the memory of the higher-level device side authentication processing unit (authentication processing unit 20), and the higher-level device side authentication processing unit (authentication processing unit 20) For each input, it is confirmed whether or not the information processing apparatus (card reader 3) has been replaced.
Since replacement is confirmed for each input, the security of the authentication process can be further improved.

(他の実施形態)
なお、上述した実施形態1では、上位装置2を備えた情報処理システム1について説明したが、上位装置2はホストコンピュータに限定されるものではなく、例えば、コンピュータに内蔵されている制御装置や演算装置といった処理装置であってもよく、または、例えば、ATM、POS等であってもよい。
(Other embodiments)
In the above-described first embodiment, the information processing system 1 including the host device 2 has been described. However, the host device 2 is not limited to a host computer, and for example, a control device or a computation built in the computer. It may be a processing device such as a device, or may be, for example, ATM, POS, or the like.

また、上述した実施形態1では、情報処理装置としてカードリーダ3を備えた情報処理システム1について説明したが、カードリーダ3以外の情報処理装置例えば、ATMやPOS端末に付属する入出力機器:タッチパネル、PINパッド、プリンター、スキャナ等を備えた情報処理システム1であってもよい。   In the first embodiment described above, the information processing system 1 including the card reader 3 as the information processing apparatus has been described. However, an information processing apparatus other than the card reader 3, for example, an input / output device attached to an ATM or POS terminal: a touch panel The information processing system 1 may be provided with a PIN pad, a printer, a scanner, and the like.

また、上述した実施形態1では、機種固有情報としてシリアル番号を用いる場合について説明したが、例えば、鍵を生成する種となるユニークな値を機器へ持たせる(外部から種も見えないようにする)ことも可能である。   In the above-described first embodiment, the case where the serial number is used as the model-specific information has been described. For example, the device has a unique value as a seed for generating a key (so that the seed cannot be seen from the outside). It is also possible.

また、上述した実施形態1では、カードリーダ3の機種固有情報をファイルに記憶し、入力毎にカードリーダが入れ替えられたかを確認してもよい。   In the first embodiment described above, the model-specific information of the card reader 3 may be stored in a file, and it may be confirmed whether the card reader has been replaced for each input.

また、上述した実施形態1では、不揮発性記憶部としてEEPROM37を用いる場合について説明したが、EEPROM37以外の不揮発性記憶部を代用してもよい。   In the first embodiment described above, the case where the EEPROM 37 is used as the nonvolatile storage unit has been described. However, a nonvolatile storage unit other than the EEPROM 37 may be used instead.

また、上述した実施形態1では、乱数や通信用交換鍵Kexを暗号化するのに3DESを用いる場合について説明したが、3DES以外の共通鍵暗号方式としての暗号アルゴリズム(例えば、DES、FEAL、IDEA、AES、Camellia、MISTY、MULTI、RC4、RC5など)を代用してもよい。   In the first embodiment, the case where 3DES is used to encrypt the random number and the communication exchange key Kex has been described. However, an encryption algorithm (for example, DES, FEAL, IDEA) as a common key encryption method other than 3DES is used. , AES, Camellia, MISTY, MULTI, RC4, RC5, etc.) may be substituted.

また、上述した実施形態1では、通信用交換鍵Kexのデータと乱数Rのデータが入れ子のようにしたが、これに限定されるものではなく、2つのデータを連結したもの等のように2つのデータが混合されていればよい。   In the first embodiment described above, the data of the communication exchange key Kex and the data of the random number R are nested. However, the present invention is not limited to this, and 2 such as a concatenation of two data. It is sufficient if two data are mixed.

さらに、上述した実施形態1では、1台のカードリーダ3が上位装置2に接続された情報処理システム1について説明したが、複数台(2台以上)のカードリーダ3が上位装置2に接続された情報処理システム1に本発明を同様に適用することも可能である。   Furthermore, in the above-described first embodiment, the information processing system 1 in which one card reader 3 is connected to the upper apparatus 2 has been described. However, a plurality of (two or more) card readers 3 are connected to the upper apparatus 2. The present invention can be similarly applied to the information processing system 1.

1……情報処理システム
2……ホストコンピュータ(上位装置)
20……認証処理部(上位装置側認証処理部)
21……乱数発生部
22……暗号部
23……復号部
24……認証判定部
25……制御部
26……通信部
27……記憶部
28……認証情報生成部
3……カードリーダ(情報処理装置)
30……認証処理部(情報処理装置側認証処理部)
31……暗号部
32……復号部
33……認証判定部
34……制御部
35……通信部
36……記憶部
37……EEPROM(不揮発性記憶部)
51 アプリケーション
55 認証鍵生成DLL
60 カードリーダ制御ソフトウェア
61 デバイス・暗号制御DLL
62 通信制御DLL
63 インターフェース部DLL
Kex……通信用交換鍵
Kt……仮の機器認証情報
Km……機器認証情報
1. Information processing system 2. Host computer (host device)
20 …… Authentication processing unit (high-level device authentication processing unit)
21 …… Random number generator 22 …… Encryption unit 23 …… Decryption unit 24 …… Authentication determination unit 25 …… Control unit 26 …… Communication unit 27 …… Storage unit 28 …… Authentication information generation unit 3 …… Card reader ( Information processing equipment)
30 …… Authentication processing unit (information processing device side authentication processing unit)
31 …… Encryption unit 32 …… Decryption unit 33 …… Authentication determination unit 34 …… Control unit 35 …… Communication unit 36 …… Storage unit 37 …… EEPROM (nonvolatile storage unit)
51 Application 55 Authentication key generation DLL
60 Card Reader Control Software 61 Device / Cryptographic Control DLL
62 Communication control DLL
63 Interface unit DLL
Kex …… Communication exchange key Kt …… Temporary device authentication information Km …… Device authentication information

Claims (4)

上位装置と情報処理装置との間で情報の送受信を行う情報処理システムであって、
前記上位装置は、
共通鍵暗号方式を用いて前記情報処理装置が正当な機器であることを認証する上位装置側認証処理部と、
前記上位装置と前記情報処理装置とが共通して保有する機器認証情報を生成する認証情報アルゴリズムを有し、前記情報処理装置が所有する機種固有情報に基づいて前記機器認証情報を生成する認証情報生成部と、
前記情報処理装置と通信を行う通信部と、を備え、
前記情報処理装置は、
前記上位装置と認証処理を行う情報処理装置側認証処理部と、
前記機器認証情報および前記機種固有情報を記憶する不揮発性記憶部と、を備え、
前記認証情報生成部は、前記情報処理装置の機種固有情報からマスターキーを生成する機能を有し、
前記認証情報生成部、前記上位装置側認証処理部、及び前記通信部の機能は、それぞれの機能をモジュールとした制御ソフトウェアとして構成されており、
前記情報処理装置の前記マスターキーを書き換え、及び予め仮の機器認証情報として保持しているテンポラリーキーに書き換え可能なツールを備えることを特徴とする情報処理システム。
An information processing system that transmits and receives information between a host device and an information processing device,
The host device is
An upper-level apparatus-side authentication processing unit that authenticates that the information processing apparatus is a legitimate device using a common key cryptosystem;
Authentication information having an authentication information algorithm for generating device authentication information commonly held by the host device and the information processing device, and generating the device authentication information based on model-specific information owned by the information processing device A generator,
A communication unit that communicates with the information processing apparatus,
The information processing apparatus includes:
An information processing device side authentication processing unit for performing authentication processing with the host device;
A non-volatile storage unit that stores the device authentication information and the model-specific information,
The authentication information generation unit has a function of generating a master key from model-specific information of the information processing apparatus,
The functions of the authentication information generation unit, the higher-level device side authentication processing unit, and the communication unit are configured as control software with each function as a module,
An information processing system comprising a tool capable of rewriting the master key of the information processing apparatus and rewriting the temporary key held in advance as temporary device authentication information.
前記制御ソフトウェアの前記認証情報生成部として機能するモジュールはDLLとして構成されていることを特徴とする請求項1に記載の情報処理システム。   The information processing system according to claim 1, wherein the module functioning as the authentication information generation unit of the control software is configured as a DLL. 前記認証情報生成部として機能する前記DLLのファイル名および前記DLLとの通信インターフェースは変更不可であることを特徴とする請求項2に記載の情報処理システム。   The information processing system according to claim 2, wherein a file name of the DLL that functions as the authentication information generation unit and a communication interface with the DLL cannot be changed. 前記情報処理装置の前記機種固有情報は、前記上位装置側認証処理部のメモリに格納されて、
前記上位装置側認証処理部は、入力毎に前記情報処理装置が入れ替えられたか否かを確認することを特徴とする請求項1から3までのいずれかに記載の情報処理システム。
The model-specific information of the information processing device is stored in a memory of the higher-level device side authentication processing unit,
The information processing system according to any one of claims 1 to 3, wherein the higher-level apparatus side authentication processing unit confirms whether or not the information processing apparatus has been replaced for each input.
JP2018014703A 2018-01-31 2018-01-31 Information processing system Active JP7027184B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018014703A JP7027184B2 (en) 2018-01-31 2018-01-31 Information processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018014703A JP7027184B2 (en) 2018-01-31 2018-01-31 Information processing system

Publications (2)

Publication Number Publication Date
JP2019134288A true JP2019134288A (en) 2019-08-08
JP7027184B2 JP7027184B2 (en) 2022-03-01

Family

ID=67547667

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018014703A Active JP7027184B2 (en) 2018-01-31 2018-01-31 Information processing system

Country Status (1)

Country Link
JP (1) JP7027184B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2023031673A (en) * 2021-08-25 2023-03-09 富士電機株式会社 Storage device management system

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005267031A (en) * 2004-03-17 2005-09-29 Matsushita Electric Ind Co Ltd Card reader, payment terminal and payment processing system
JP2007036501A (en) * 2005-07-25 2007-02-08 Sony Corp Information processing apparatus and method, program, and recording medium
JP2008234072A (en) * 2007-03-16 2008-10-02 Ricoh Co Ltd Screen sharing system, screen sharing program, and program distribution method
JP2009020742A (en) * 2007-07-12 2009-01-29 Ricoh Co Ltd Additional function providing program, additional function providing method, and information processing apparatus
JP2011176649A (en) * 2010-02-25 2011-09-08 Mitsubishi Electric Corp Authentication device, authentication method, and program
JP2011525314A (en) * 2008-05-30 2011-09-15 エコスター テクノロジーズ エル.エル.シー. System, method and apparatus for reducing unauthorized use in a television distribution system
JP2013073299A (en) * 2011-09-27 2013-04-22 Nidec Sankyo Corp Information processing system

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005267031A (en) * 2004-03-17 2005-09-29 Matsushita Electric Ind Co Ltd Card reader, payment terminal and payment processing system
JP2007036501A (en) * 2005-07-25 2007-02-08 Sony Corp Information processing apparatus and method, program, and recording medium
JP2008234072A (en) * 2007-03-16 2008-10-02 Ricoh Co Ltd Screen sharing system, screen sharing program, and program distribution method
JP2009020742A (en) * 2007-07-12 2009-01-29 Ricoh Co Ltd Additional function providing program, additional function providing method, and information processing apparatus
JP2011525314A (en) * 2008-05-30 2011-09-15 エコスター テクノロジーズ エル.エル.シー. System, method and apparatus for reducing unauthorized use in a television distribution system
JP2011176649A (en) * 2010-02-25 2011-09-08 Mitsubishi Electric Corp Authentication device, authentication method, and program
JP2013073299A (en) * 2011-09-27 2013-04-22 Nidec Sankyo Corp Information processing system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2023031673A (en) * 2021-08-25 2023-03-09 富士電機株式会社 Storage device management system
JP7725939B2 (en) 2021-08-25 2025-08-20 富士電機株式会社 Storage equipment management system

Also Published As

Publication number Publication date
JP7027184B2 (en) 2022-03-01

Similar Documents

Publication Publication Date Title
US11218323B2 (en) Method and system for producing a secure communication channel for terminals
KR101517286B1 (en) Updating an operating system for secure element
JP4668619B2 (en) Device key
JP2004528632A (en) Distributed generation method and system of program for programmable portable data storage medium
CN108768963B (en) Communication method and system of trusted application and secure element
EP1636664B1 (en) Proof of execution using random function
TWI613900B (en) Security device and preservation method
US20080016351A1 (en) Authentication Method for IC Cards
JP2004104539A (en) Memory card
CN101571900A (en) Software copyright protection method, device and system
EP3742665B1 (en) Semiconductor device, update data-providing method, update data-receiving method, and program
JP4541901B2 (en) Portable authority granting device and related method for authorizing use of protected information
JP2008287488A (en) Data distributing and preserving unit
US9182967B2 (en) Method for safely downloading application
TW201826160A (en) Data verification method
JP2019121884A (en) Integrated circuit, control device, information distribution method, and information distribution system
EP2689367B1 (en) Data protection using distributed security key
JP4763447B2 (en) Authentication system and authentication target device
JP7027184B2 (en) Information processing system
JP2013073299A (en) Information processing system
CN118070316B (en) Offline authorization method, offline authorization system and storage medium based on security device
KR101771484B1 (en) Creation Method of Signature Key to use Security Token efficiently
JP5164372B2 (en) Game machine control chip and its ROM writer
US20250217519A1 (en) A device and a method for controlling use of a cryptographic key
JPH09106445A (en) Method of changing key of information recording medium and information recording medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201207

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210818

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210831

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211029

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220216

R150 Certificate of patent or registration of utility model

Ref document number: 7027184

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150