Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP6289850B2 - Information processing system and information processing method - Google Patents
[go: Go Back, main page]

JP6289850B2 - Information processing system and information processing method - Google Patents

Information processing system and information processing method Download PDF

Info

Publication number
JP6289850B2
JP6289850B2 JP2013203248A JP2013203248A JP6289850B2 JP 6289850 B2 JP6289850 B2 JP 6289850B2 JP 2013203248 A JP2013203248 A JP 2013203248A JP 2013203248 A JP2013203248 A JP 2013203248A JP 6289850 B2 JP6289850 B2 JP 6289850B2
Authority
JP
Japan
Prior art keywords
information
application
host device
code
information processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2013203248A
Other languages
Japanese (ja)
Other versions
JP2015069425A (en
Inventor
洋介 小口
洋介 小口
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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 JP2013203248A priority Critical patent/JP6289850B2/en
Publication of JP2015069425A publication Critical patent/JP2015069425A/en
Application granted granted Critical
Publication of JP6289850B2 publication Critical patent/JP6289850B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Input From Keyboards Or The Like (AREA)

Description

本発明は、上位装置とカードリーダやバーコードリーダ等の情報処理装置との間で情報の送受信を行う情報処理システムおよび情報処理方法に関するものである。
The present invention relates to an information processing system Contact and information processing method for transmitting and receiving information to and from the information processing apparatus such as host device and the card reader or a barcode reader.

通常、カードリーダ等の情報処理装置(電子機器装置)は通信線を介して上位装置と接続され、上位装置からの指令に従って処理を実行するように構成されている。
このように、上位装置と情報処理装置(下位装置)との通信を確立するためには、一般的に、RS232C方式、パラレルポート方式、USB(Universal Serial Bus)接続方式など種々の通信方式が採用されている。
Usually, an information processing device (electronic device device) such as a card reader is connected to a host device via a communication line, and is configured to execute processing in accordance with a command from the host device.
As described above, various communication methods such as the RS232C method, the parallel port method, and the USB (Universal Serial Bus) connection method are generally adopted to establish communication between the host device and the information processing device (lower device). Has been.

また、カードリーダやバーコードリーダ等の情報処理装置には、キーボード機能(『キーボード・インターフェース』と呼ばれる場合もある)を備えたものが知られている(たとえば特許文献1参照)。
すなわち、キーボードと同じ要領でP/S2規格や、USB規格に則り、スキャンコード(Usage)を送り、読み取ったデータを上位装置側のアプリケーションで表示するという技術が使われているものがある。
An information processing apparatus such as a card reader or a barcode reader is known that has a keyboard function (sometimes referred to as “keyboard interface”) (see, for example, Patent Document 1).
That is, there is a technique in which a scan code (Usage) is sent in accordance with the P / S2 standard or USB standard in the same manner as a keyboard, and the read data is displayed by an application on the host device side.

一般に、キーボードの各キーは、スキャンコードと呼ばれる固有のIDを持っている。
キーコードは、キートップ表面に印刷された文字ではなく、キースイッチの位置に対して割り付けられている。
たとえば、“A”と印字されたキートップのキーを押した場合でも、キーボードは“A”のコードを発行しているわけではない。
キーボードは、キーを押した際、離した際にキーコードをCPU等のキーボードコントローラに送信する。
キーボードは、そのキー配置が国やキーボードの種類によって異なっており、キーボードにはいくつかのモデルがあるが、スイッチ数と形状が同じであれば、キートップの印刷内容は異なっても、同じ位置のキースイッチは同じスキャンコードを持っている。
キーボードコントローラでは、キーボードから受け取ったスキャンコードからキー入力を組み立て、キーコードを作成する。
そして、設定された国コードおよびキーボードタイプにより、どのスキャンコード(どこの位置のキー)を受け取った際に、どの文字(仮想キーコード)に変換するか決められている。
そのため、その変換テーブルを切り替えることで所望のキーボードになるように設定することができる。
In general, each key of a keyboard has a unique ID called a scan code.
The key code is assigned to the position of the key switch, not the characters printed on the key top surface.
For example, even when a key top key printed with “A” is pressed, the keyboard does not issue the code “A”.
When the keyboard is pressed or released, the keyboard transmits a key code to a keyboard controller such as a CPU.
Keyboards have different keyboard layouts depending on the country and keyboard type, and there are several models of keyboards, but if the number of switches and shape are the same, the same position is used even if the printed contents of the key tops are different. The key switch has the same scan code.
The keyboard controller assembles key inputs from scan codes received from the keyboard and creates key codes.
Then, according to the set country code and keyboard type, it is determined which character (virtual key code) is converted to which scan code (where key) is received.
Therefore, it is possible to set the desired keyboard by switching the conversion table.

特許文献1に記載の装置においては、キーボードコントローラを有するコンピュータにキーボードとバーコードリーダが接続されている。
キーボードコントローラは、キーボードの所定のキーが押されると、キーの押された位置を、スキャンコードの信号として上位装置側に通知する。
上位装置側では、受け取ったスキャンコードを仮想キーコードとしてオペレーティングシステム(OS)に通知する。
In the device described in Patent Document 1, a keyboard and a barcode reader are connected to a computer having a keyboard controller.
When a predetermined key on the keyboard is pressed, the keyboard controller notifies the host device side of the pressed position as a scan code signal.
On the host device side, the received scan code is notified to the operating system (OS) as a virtual key code.

仮想キーコードは、OS独自のコードで定められており、OS内で共通に利用されるキーのコードである。OSは、受け取った仮想キーコードを、起動している各アプリケーション(文書作成ソフトなど)に通知し、これを受けたアプリケーションは、文字を出力する。   The virtual key code is defined by a code unique to the OS, and is a key code that is commonly used in the OS. The OS notifies the received virtual key code to each activated application (such as document creation software), and the application that receives this outputs a character.

また、キーボードコントローラは、バーコードリーダで読み取られたデータをキーボードデータとして上位装置に出力する。上位装置では、上記したキーボードで入力されたデータと同様の処理が行われる。   The keyboard controller outputs the data read by the barcode reader to the host device as keyboard data. In the host device, the same processing as the data input from the keyboard is performed.

以上が、OS上におけるP/S2規格でのキーボード・インターフェースの基本的な構成および機能であるが、これ以外に、USB規格でのキーボード・インターフェースがある。
このUSB規格でのキーボードは、ヒューマン・インタフェース・デバイス (HID) クラスとして実装される。
この場合、スキャンコードに相当するものにUsageというもがあるが、基本的には、上述したP/S2規格でのキーボード・インターフェースと同様である。
The above is the basic configuration and function of the keyboard interface in the P / S2 standard on the OS. In addition to this, there is a keyboard interface in the USB standard.
This USB standard keyboard is implemented as a human interface device (HID) class.
In this case, although there is “Usage” corresponding to the scan code, it is basically the same as the keyboard interface in the P / S2 standard described above.

特開平7−36594号公報JP-A-7-36594 特開2006−268423号公報JP 2006-268423 A

しかしながら、上述したキーボード・インターフェースでは、キーボードのキー配列は、米国(US)では101/104英語キーボード、ヨーロッパでは102/105多国語(Multi Language)キーボード、日本では106/109日本語キーボードが主流である。
このように、キーに印字されている文字が違うため、前述したように、必ずしも、スキャンコード(またはUsage)と文字は一致しているわけではない。
However, in the keyboard interface described above, the keyboard layout is mainly 101/104 English keyboard in the United States (US), 102/105 Multi Language keyboard in Europe, and 106/109 Japanese keyboard in Japan. is there.
As described above, since the characters printed on the keys are different, the scan code (or Usage) does not necessarily match the characters as described above.

一方、近年、カードリーダで読み取られた情報を上位装置に送信する際、スキミングと呼ばれる不正行為により、カードに記録されている情報を読み取られる可能性があるため、セキュリティの強化への要望が高い。
そのため、カードリーダと上位装置との間で情報をやり取りする際に、情報を暗号化させる技術が提案されている(たとえば、特許文献2参照)。
On the other hand, in recent years, when information read by a card reader is transmitted to a host device, there is a possibility that information recorded on the card may be read by an illegal act called skimming. .
For this reason, a technique has been proposed in which information is encrypted when information is exchanged between the card reader and the host device (see, for example, Patent Document 2).

しかしながら、特許文献2に示すカードリーダにおけるキーボード機能(キーボード・インターフェース)では、特許文献2の図3、4に示すように、各キーごとに情報を送信するため、キーごとに暗号化処理、復号化処理が実行される。
そのため、情報の送受信が煩雑となるという不利益がある。
However, in the keyboard function (keyboard interface) in the card reader shown in Patent Document 2, as shown in FIGS. 3 and 4 of Patent Document 2, since information is transmitted for each key, encryption processing and decryption are performed for each key. Processing is executed.
Therefore, there is a disadvantage that transmission / reception of information becomes complicated.

本発明の目的は、たとえば各国の言語に対応したキーボードのキー配列の影響を受けにくく、しかも情報の機密性を保持することが可能な情報処理システムおよび情報処理方法を提供することにある。   SUMMARY OF THE INVENTION An object of the present invention is to provide an information processing system and an information processing method that are not easily affected by, for example, a keyboard key arrangement corresponding to the language of each country and that can maintain confidentiality of information.

本発明の第1の観点は、上位装置と情報処理装置との間で情報の送受信を行う情報処理システムであって、前記情報処理装置と前記上位装置との間で情報の送受信を行う際に当該情報を暗号化する暗号化処理手段と、前記上位装置に配置され、前記情報処理装置において前記暗号化処理手段により暗号化されて送信された共通言語で表現された共通コードを仮想コードに変換する変換手段と、前記上位装置に配置され、前記変換手段で変換された仮想コードに基づく情報を出力する出力手段と、を有する。   A first aspect of the present invention is an information processing system that transmits and receives information between a host device and an information processing device, and performs information transmission and reception between the information processing device and the host device. An encryption processing means for encrypting the information, and a common code that is arranged in the host device and is encrypted by the encryption processing means and transmitted in the information processing apparatus is converted into a virtual code. And converting means arranged in the host device and outputting means for outputting information based on the virtual code converted by the converting means.

これにより、各国の言語に対応したキーボードのキー配列の影響を受けにくく、しかも情報の機密性を保持することが可能となる。   As a result, it is difficult to be affected by the keyboard layout corresponding to the language of each country, and the confidentiality of information can be maintained.

好適には、前記上位装置は、前記情報処理装置に送信する情報を暗号化し、前記情報処理装置から受信する暗号化された情報を復号し、復号した情報を前記変換手段に出力する第1の暗号化処理手段を含み、前記情報処理装置は、前記上位装置に送信する情報を暗号化し、前記上位装置から受信する暗号化された情報を復号する第2の暗号化処理手段を含む。
これにより、情報の高い機密性を保持することが可能となる。
Preferably, the host device encrypts information to be transmitted to the information processing device, decrypts the encrypted information received from the information processing device, and outputs the decrypted information to the conversion unit. The information processing device includes encryption processing means, and the information processing device includes second encryption processing means for encrypting information to be transmitted to the host device and decrypting the encrypted information received from the host device.
This makes it possible to maintain high confidentiality of information.

好適には、前記上位装置は、第1のアプリケーションとしての前記変換手段と、供給されるデータに対する読み取り処理を行う第2のアプリケーションとしての汎用処理手段と、を含み、前記第1の暗号化処理手段は、アプリケーションインターフェースを含み、指示に従って、当該アプリケーションインターフェースを、前記第1のアプリケーション用とするかまたは前記第2のアプリケーション用とするかを設定可能であり、前記アプリケーションインターフェースが第1のアプリケーション用として設定されている場合には、復号した情報を前記変換手段に出力し、前記アプリケーションインターフェースが第2のアプリケーション用として設定されている場合には、復号した情報を前記汎用処理手段に出力する。
これにより、APIを切り替えることで、ユーザの使い勝手に従って、キーボード機能として使用させる場合、汎用装置、たとえばカードリーダとして使用させる場合と簡単に行うことが可能となる。
Preferably, the host device includes the conversion unit as a first application and a general-purpose processing unit as a second application that performs a reading process on supplied data, and the first encryption process The means includes an application interface, and can set whether the application interface is for the first application or the second application according to an instruction, and the application interface is for the first application If the application interface is set for the second application, the decrypted information is output to the general-purpose processing means.
Thus, by switching the API, according to the user's convenience, it can be easily performed as a keyboard function or as a general-purpose device such as a card reader.

好適には、前記情報処理装置は、カードリーダであって、カード状媒体のデータを読み取るヘッドと、前記ヘッドで読み取られ、復調された復調データをデコードし、共通言語で表現されるコードであるASCIIコードの文字列のデータとして生成するデコード手段と、を含み、前記第2の暗号化処理手段は、前記ASCIIコードを暗号化して前記上位装置に送信する。
これにより、ASCIIコードを用いてキーボード機能を実現することができ、汎用の第2のアプリケーションおよび変換用の第1のアプリケーションを格納しておけば、暗号化処理手段内のAPIを切り替えることで、ユーザの使い勝手に従って、キーボード機能として使用させる場合、汎用のカードリーダとして使用させる場合と簡単に行うことが可能となる。
Preferably, the information processing apparatus is a card reader, and a head that reads data of a card-like medium, and a code that is decoded by the head and decoded demodulated data and expressed in a common language Decoding means for generating ASCII code character string data, and the second encryption processing means encrypts the ASCII code and transmits it to the host device.
As a result, the keyboard function can be realized by using the ASCII code. If the general-purpose second application and the first application for conversion are stored, the API in the encryption processing means is switched, According to the user's convenience, when using as a keyboard function, it can be easily performed as a general-purpose card reader.

本発明の第2の観点は、上位装置と情報処理装置との間で情報の送受信を行う情報処理方法であって、前記情報処理装置と前記上位装置との間で情報の送受信を行う際に当該情報を暗号化する暗号化処理ステップと、前記情報処理装置において前記暗号化処理ステップにより共通言語で表現された共通コードを暗号化して前記上位装置に送信する送信ステップと、前記上位装置側で、前記情報処理装置において前記暗号化処理手段により暗号化されて送信された共通言語で表現された共通コードを仮想コードに変換する変換ステップと、前記変換ステップで変換された仮想コードに基づく情報を出力する出力ステップと、を有する。   According to a second aspect of the present invention, there is provided an information processing method for transmitting / receiving information between a host device and an information processing device, wherein information is transmitted / received between the information processing device and the host device. An encryption processing step for encrypting the information; a transmission step for encrypting a common code expressed in a common language by the encryption processing step in the information processing device; A conversion step of converting the common code expressed in the common language encrypted and transmitted by the encryption processing means in the information processing apparatus into a virtual code, and information based on the virtual code converted in the conversion step. And an output step for outputting.

これにより、各国の言語に対応したキーボードのキー配列の影響を受けにくく、しかも情報の機密性を保持することが可能となる。   As a result, it is difficult to be affected by the keyboard layout corresponding to the language of each country, and the confidentiality of information can be maintained.

好適には、前記上位装置の処理として、前記情報処理装置に送信する情報を暗号化し、前記情報処理装置から受信する暗号化された情報を復号し、復号した情報を前記変換手ステップに供給する第1の暗号化処理ステップを含み、前記情報処理装置の処理として、前記上位装置に送信する情報を暗号化し、前記上位装置から受信する暗号化された情報を復号する第2の暗号化処理ステップを含む。
これにより、情報の高い機密性を保持することが可能となる。
Preferably, as processing of the host device, information to be transmitted to the information processing device is encrypted, encrypted information received from the information processing device is decrypted, and the decrypted information is supplied to the converting step. A second encryption processing step that includes a first encryption processing step, and encrypts information to be transmitted to the host device and decrypts encrypted information received from the host device as the processing of the information processing device including.
This makes it possible to maintain high confidentiality of information.

好適には、前記上位装置の処理として、第1のアプリケーションとしての前記変換ステップと、供給されるデータに対する読み取り処理を行う第2のアプリケーションとしての汎用処理ステップと、を含み、前記第1の暗号化処理ステップは、指示に従って、アプリケーションインターフェースを、前記第1のアプリケーション用とするかまたは前記第2のアプリケーション用とするかを設定可能であり、前記アプリケーションインターフェースが第1のアプリケーション用として設定されている場合には、復号した情報を前記変換ステップに供給し、前記アプリケーションインターフェースが第2のアプリケーション用として設定されている場合には、復号した情報を前記汎用処理ステップに供給する。
これにより、APIを切り替えることで、ユーザの使い勝手に従って、キーボード機能として使用させる場合、汎用装置、たとえばカードリーダとして使用させる場合と簡単に行うことが可能となる。
Preferably, the processing of the host device includes the conversion step as a first application, and a general-purpose processing step as a second application that performs a reading process on the supplied data, and the first encryption According to the instruction, the processing step can set whether the application interface is for the first application or the second application, and the application interface is set for the first application. If so, the decrypted information is supplied to the conversion step, and if the application interface is set for the second application, the decrypted information is supplied to the general-purpose processing step.
Thus, by switching the API, according to the user's convenience, it can be easily performed as a keyboard function or as a general-purpose device such as a card reader.

好適には、前記情報処理装置は、カードリーダであって、カードリーダの処理として、カード状媒体のデータをヘッドで読み取り、復調された復調データをデコードし、共通言語で表現されるコードであるASCIIコードの文字列のデータとして生成するデコードステップを含み、前記第2の暗号化処理ステップは、前記ASCIIコードを暗号化して前記上位装置に送信し、前記上位装置において、前記第1の暗号化処理ステップは、暗号化されているASCIIコードを復号し、復号したASCIIコードを所定のアプリケーションに供給する。
これにより、ASCIIコードを用いてキーボード機能を実現することができ、汎用の第2のアプリケーションおよび変換用の第1のアプリケーションを格納しておけば、暗号化処理手段内のAPIを切り替えることで、ユーザの使い勝手に従って、キーボード機能として使用させる場合、汎用のカードリーダとして使用させる場合と簡単に行うことが可能となる。
Preferably, the information processing apparatus is a card reader, which is a code expressed as a common language by reading data of a card-like medium with a head and decoding demodulated demodulated data as processing of the card reader. A decoding step for generating ASCII code character string data, wherein the second encryption processing step encrypts the ASCII code and transmits the encrypted ASCII code to the higher-level device. In the higher-level device, the first encryption The processing step decrypts the encrypted ASCII code and supplies the decrypted ASCII code to a predetermined application.
As a result, the keyboard function can be realized by using the ASCII code. If the general-purpose second application and the first application for conversion are stored, the API in the encryption processing means is switched, According to the user's convenience, when using as a keyboard function, it can be easily performed as a general-purpose card reader.

本発明によれば、各国の言語に対応したキーボードのキー配列の影響を受けにくく、しかも情報の機密性を保持することが可能となる。   According to the present invention, it is difficult to be influenced by the keyboard layout corresponding to the language of each country, and the confidentiality of information can be maintained.

本発明の実施形態に係る情報処理システムの概要を示す図である。It is a figure showing an outline of an information processing system concerning an embodiment of the present invention. 本発明の実施形態に係る情報処理システムの概要を示すブロック図である。It is a block diagram which shows the outline | summary of the information processing system which concerns on embodiment of this invention. 本実施形態に係る暗号化処理手段としての上位装置側の暗号処理ミドルウェア部およびカードリーダ側の暗号処理部の構成例を示すブロック図である。It is a block diagram which shows the example of a structure of the encryption processing middleware part by the high-order apparatus as an encryption processing means which concerns on this embodiment, and the encryption processing part by the card reader side. 本実施形態に係る暗号処理ミドルウェア部におけるAPI切り替え部の構成例を示す機能ブロック図である。It is a functional block diagram which shows the structural example of the API switching part in the encryption processing middleware part which concerns on this embodiment. 本実施形態において、キーボード機能として使用する場合の変換用常駐アプリケーションを説明するためのフローチャートである。In this embodiment, it is a flowchart for demonstrating the conversion resident application in the case of using as a keyboard function. 変換常駐アプリケーションの変換処理を説明するためのフローチャートである。It is a flowchart for demonstrating the conversion process of the conversion resident application. 本実施形態において、カードリーダとして機能させる場合の金融アプリケーションの処理を説明するためのフローチャートである。In this embodiment, it is a flowchart for demonstrating the process of the financial application in the case of making it function as a card reader. 本実施形態に係る情報処理システムの全体的な動作概要を説明するための図である。It is a figure for demonstrating the general operation | movement outline | summary of the information processing system which concerns on this embodiment.

以下、本発明の実施形態を図面に関連付けて説明する。
以下の実施形態においては、情報処理装置として磁気カード等のカードリーダを例に説明する。ただし、本発明はカードリーダに限らず、電子機器装置としてのバーコードリーダ等にも適用可能である。
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
In the following embodiments, a card reader such as a magnetic card will be described as an example of the information processing apparatus. However, the present invention is not limited to a card reader but can be applied to a barcode reader as an electronic device.

図1は、本発明の実施形態に係る情報処理システムの概要を示す図である。
図2は、本発明の実施形態に係る情報処理システムの概要を示すブロック図である。
FIG. 1 is a diagram showing an overview of an information processing system according to an embodiment of the present invention.
FIG. 2 is a block diagram showing an outline of the information processing system according to the embodiment of the present invention.

情報処理システム10は、上位装置(ホスト装置)20、情報処理装置としてのカードリーダ30、キーボード装置40、および情報カード(以下、単にカードという)50を含んで構成されている。
なお、本実施形態において、キーボード装置40が接続された構成として示しているが、キーボード装置40が接続されていない構成も可能である。
The information processing system 10 includes a host device (host device) 20, a card reader 30 as an information processing device, a keyboard device 40, and an information card (hereinafter simply referred to as a card) 50.
In the present embodiment, a configuration in which the keyboard device 40 is connected is shown, but a configuration in which the keyboard device 40 is not connected is also possible.

本実施形態において、上位装置20はパーソナルコンピュータ(PC)やATM(Automated Teller Machine)、POS(Point of sale system)レジスタ端末等により構成される。
上位装置20には、第1の通信部60を通して情報処理装置としてのカードリーダ30が接続され、第2の通信部70を介してキーボード装置40が接続されている。
In the present embodiment, the host device 20 is configured by a personal computer (PC), an ATM (Automated Teller Machine), a POS (Point of sale system) register terminal, or the like.
A card reader 30 as an information processing device is connected to the host device 20 through a first communication unit 60, and a keyboard device 40 is connected through a second communication unit 70.

第1の通信部60としては、RS232CやUSBなどの専用線(有線の通信線)を用いた通信システムが適用され、本実施形態ではUSB通信システムが適用されている。したがって、本実施形態では、上位装置20とカードリーダ30はUSBケーブル61により接続されている。   As the first communication unit 60, a communication system using a dedicated line (wired communication line) such as RS232C or USB is applied, and in this embodiment, a USB communication system is applied. Therefore, in the present embodiment, the host device 20 and the card reader 30 are connected by the USB cable 61.

本実施形態において、第2の通信部70としては、P/S2通信規格に従った通信システムが適用され、上位装置20とキーボード装置40は図示しないP/S2コネクタが接続されたケーブル71により接続されている。   In the present embodiment, a communication system according to the P / S2 communication standard is applied as the second communication unit 70, and the host device 20 and the keyboard device 40 are connected by a cable 71 to which a P / S2 connector (not shown) is connected. Has been.

以下、情報処理システム10の概要を説明した後、各部の具体的な構成および機能について説明する。   Hereinafter, after describing the outline of the information processing system 10, the specific configuration and function of each unit will be described.

[情報処理システム10の概要]
金融機関などで使用され、キャッシュレスや個人認証などを実現するカードとして、たとえばプラスチック基板にストライプ状に磁気データが記録された磁気カード、プラスチック基板内部に集積回路チップ(ICチップ)が埋め込まれ、表面にIC端子が配置されたICカード(接触式ICカード)や内部にアンテナコイルが配置されたICカード(非接触式ICカード)がある。
そして、このカード(磁気カードまたはICカード)50に対する情報の再生または記録は、情報処理装置としてのカードリーダ30によって行われる。
[Outline of Information Processing System 10]
As a card used in financial institutions and the like for realizing cashless and personal authentication, for example, a magnetic card in which magnetic data is recorded in a stripe shape on a plastic substrate, an integrated circuit chip (IC chip) is embedded inside the plastic substrate, There is an IC card (contact IC card) in which an IC terminal is arranged on the surface and an IC card (non-contact IC card) in which an antenna coil is arranged inside.
Information is reproduced or recorded on the card (magnetic card or IC card) 50 by a card reader 30 as an information processing apparatus.

基本的に、カードリーダ30は、上位装置20からのコマンドを受信し、カード50との通信プロトコルに沿った形式に変換する。
そして、カードリーダ30は、電圧や通信速度等も変換した後に、そのコマンドをカード50に送信する。また、カードリーダ30は、カード50からの応答を受信した後、逆変換を行って、その応答を上位装置20に送信する。
カードリーダ30とカード50との間の通信は、TTLレベル、USB通信等が一般的である。
Basically, the card reader 30 receives a command from the host device 20 and converts the command into a format according to a communication protocol with the card 50.
The card reader 30 transmits the command to the card 50 after converting the voltage, the communication speed, and the like. Further, after receiving the response from the card 50, the card reader 30 performs reverse conversion and transmits the response to the higher-level device 20.
Communication between the card reader 30 and the card 50 is generally TTL level, USB communication, or the like.

本実施形態に示すカードリーダ30を含む情報処理システム10の構成では、上位装置20が、文字入力アプリケーションの他に、金融等の汎用アプリケーション(第2のアプリケーション)と変換手段としての変換用常駐アプリケーション(第1のアプリケーション)を有している。
すなわち、本実施形態においては、たとえば、ATMに備えられたカードリーダ30において、金融機関等で、磁気記録データと、金融データベースとの照合を行う場合には、金融アプリケーションを起動し、信号(情報)処理を行う。
一方、PCのログインなど、キーボード機能(上述したキーボード・インターフェースと呼ばれる機能)として使用する場合は変換用常駐アプリケーションを起動し、信号(情報)処理を行う。
また、上位装置20は、暗号化処理および復号処理手段としての暗号処理ミドルウェア部を有している。
In the configuration of the information processing system 10 including the card reader 30 shown in the present embodiment, the host device 20 uses a general-purpose application (second application) such as finance and a conversion resident application as conversion means in addition to a character input application. (First application).
That is, in this embodiment, for example, in the case where the card reader 30 provided in the ATM collates the magnetic recording data with the financial database at a financial institution or the like, the financial application is activated and the signal (information ) Process.
On the other hand, when used as a keyboard function (function called the above-described keyboard interface) such as PC login, the conversion resident application is activated to perform signal (information) processing.
The host device 20 has an encryption processing middleware unit as encryption processing and decryption processing means.

本実施形態において、カードリーダ30は、カード50から読み取ったデータを復調し、復調データを共通言語で表現されたコード、本実施形態ではASCIIコードの文字列として生成し、生成したASCIIコードを、暗号キーを用いて暗号化し、この暗号化データを上位装置20に第1の通信部60を通して送信する。
上位装置20は、USB通信システムであるUSBコントローラ、USBドライバ、さらにはOSを通して暗号化処理および復号処理手段としての暗号処理ミドルウェア部でカードリーダ30により送信された暗号化データを復号し、復号したASCIIコード等のデータを、アプリケーションインターフェースの設定状態に応じて変換用常駐アプリケーションまたは汎用アプリケーションに供給する。
変換手段としての変換用常駐アプリケーションは、ASCIIコードを仮想キーコードに変換し、OSを通して文字入力アプリケーションに供給する。
文字入力アプリケーションは、変換された仮想キーコードに基づく文字をディスプレイの画面上に出力する。
これにより、テキストエディタ等のアプリケーションにイベントメッセージとして配信等する。
In the present embodiment, the card reader 30 demodulates the data read from the card 50, generates the demodulated data as a code expressed in a common language, in this embodiment as a character string of an ASCII code, and generates the generated ASCII code. Encryption is performed using the encryption key, and the encrypted data is transmitted to the host device 20 through the first communication unit 60.
The host device 20 decrypts and decrypts the encrypted data transmitted by the card reader 30 in the encryption processing middleware unit as the encryption processing and decryption processing means through the USB controller, the USB driver, which is a USB communication system, and the OS. Data such as ASCII code is supplied to the conversion resident application or general-purpose application according to the setting state of the application interface.
The conversion resident application as conversion means converts the ASCII code into a virtual key code and supplies it to the character input application through the OS.
The character input application outputs characters based on the converted virtual key code on the display screen.
Thereby, it is delivered as an event message to an application such as a text editor.

また、キーボード装置40のキーボードの所定のキーが押されると、キーボードコントローラによりキーの押された位置を、スキャンコードの信号として第2の通信部70を通して上位装置20側に通知する。
上位装置側20では、受け取ったスキャンコードをキーボードコントローラ、キーボードドライバ、さらにはOSを通して仮想キーコードとして文字入力アプリケーションに供給する。文字入力アプリケーションは、変換された仮想キーコードに基づく文字をディスプレイの画面上に出力する。
When a predetermined key on the keyboard of the keyboard device 40 is pressed, the keyboard controller notifies the host device 20 side of the key pressed position as a scan code signal through the second communication unit 70.
On the host device side 20, the received scan code is supplied to the character input application as a virtual key code through the keyboard controller, keyboard driver, and OS. The character input application outputs characters based on the converted virtual key code on the display screen.

このように、本実施形態では、磁気データの機密性を保持しつつ、キーボードから文字入力された場合と同様に、カード50のデータを文字として出力することが可能に構成されている。   As described above, in the present embodiment, the data of the card 50 can be output as characters as in the case where characters are input from the keyboard while maintaining the confidentiality of the magnetic data.

次に、上記構成を有する情報処理システム10の上位装置(ホスト装置)20、並びにカードリーダ(情報処理装置)30の具体的な構成および機能について説明する。   Next, specific configurations and functions of the host device (host device) 20 and the card reader (information processing device) 30 of the information processing system 10 having the above configuration will be described.

[上位装置(ホスト装置)20の具体的な構成および機能]
本実施形態に係る上位装置(ホスト装置)20の具体的な構成および機能について説明する。
上位装置20は、上述したように、基本的に、カードリーダ30との間で、第1の通信部60のUSB通信システムを通して通信制御を行い、コマンドの送信に対応したレスポンス(応答)を受信する等の各種情報の授受を行って、カードリーダ30からの情報を取得する。
また、ここでの例では、上位装置20は、キーボード装置40との間で、第2の通信部70であるP/S2通信システムを介してして通信制御を行い、コマンドの送信に対応したレスポンス(応答)を受信する等の各種情報の授受を行って、キーボード装置40からのスキャンコードを受信する。
[Specific Configuration and Function of Host Device (Host Device) 20]
A specific configuration and function of the host device (host device) 20 according to the present embodiment will be described.
As described above, the host device 20 basically performs communication control with the card reader 30 through the USB communication system of the first communication unit 60 and receives a response corresponding to command transmission. The information from the card reader 30 is acquired by exchanging various information such as
Further, in this example, the host device 20 controls communication with the keyboard device 40 via the P / S2 communication system that is the second communication unit 70, and corresponds to command transmission. Various types of information, such as receiving a response (response), is exchanged, and a scan code from the keyboard device 40 is received.

図2は、本実施形態に係る上位装置20および情報処理装置であるカードリーダ30、キーボード装置40の構成例を概念的に示している。
図2の上位装置20は、ハードウェアシステム210およびソフトウェアシステム220を含んで構成されている。
FIG. 2 conceptually illustrates a configuration example of the host device 20 and the information processing device, ie, the card reader 30 and the keyboard device 40 according to the present embodiment.
The host device 20 in FIG. 2 includes a hardware system 210 and a software system 220.

[ハードウェアシステム210の構成例]
図2の上位装置20は、基本的に、処理装置であるCPU211、ROM212、RAM213、HDD等のストレージユニット214、第1の通信部60を構成するUSBコントローラ215、第2の通信部70を構成するキーボードコントローラ216、および入力文字等が表示されるディスプレイ217を有する。
そして、CPU211、ROM212、RAM213、ストレージユニット214、コントローラ215、キーボードコントローラ216、およびディスプレイ217は、バス(BUS)218により接続されている。
[Configuration example of hardware system 210]
2 basically includes a CPU 211, a ROM 212, a RAM 213, a storage unit 214 such as an HDD, a USB controller 215 constituting the first communication unit 60, and a second communication unit 70, which are processing devices. A keyboard controller 216 and a display 217 for displaying input characters and the like.
The CPU 211, ROM 212, RAM 213, storage unit 214, controller 215, keyboard controller 216, and display 217 are connected by a bus (BUS) 218.

USBコントローラ215は、USBケーブル61を介してカードリーダ30のUSBコントローラと接続されて、カードリーダ30との間で、第1の通信部60のUSB通信システムを通して通信制御を行い、コマンドの送信に対応したレスポンス(応答)を受信する等の各種情報の授受を行って、カードリーダ30からの情報を取得する。   The USB controller 215 is connected to the USB controller of the card reader 30 via the USB cable 61, performs communication control with the card reader 30 through the USB communication system of the first communication unit 60, and transmits a command. Information from the card reader 30 is acquired by exchanging various information such as receiving a corresponding response.

USB通信システムは、ホストである上位装置20とデバイスであるカードリーダ30間をシリアル通信で接続するものであって、たとえばプラグアンドプレイ機能(自動接続認識機能)、ホットプラグ機能(電源を入れたままでの抜き差しを可能にする機能)およびホストからデバイスへの電源供給機能など、ユーザの利便性を高める様々な機能を有している。
一般的に、USB通信で用いるUSBケーブル61は、5Vの電源ライン(V−BUSライン)、GND(グランド)ライン、およびデータ転送用のD+及びD−の信号ラインから構成される合計4本の配線を有している。
そして、カードリーダ30等のデバイス側では、V−BUSラインを通じて送信されるV−BUS信号の常時監視を行っている。つまり、このV−BUS信号の遷移状態を常時監視することで、USB通信の異常検出を行うこともできるようになっている。たとえば、V−BUSラインの上位装置が故意にダウンさせることのないシステムにおいては、USB通信中に何らかの理由でUSBケーブルが外れた場合には、V−BUS信号がオンからオフへと遷移し、その結果、デバイスはUSB通信の物理的な接続が破断したと認識し、USB通信の異常が検出されることもできる。
The USB communication system connects a host device 20 as a host and a card reader 30 as a device by serial communication. For example, a plug-and-play function (automatic connection recognition function), a hot plug function (with the power on) And the like, and a function for supplying power from the host to the device.
In general, the USB cable 61 used for USB communication includes a total of four lines composed of a 5V power line (V-BUS line), a GND (ground) line, and D + and D- signal lines for data transfer. Has wiring.
On the device side such as the card reader 30, the V-BUS signal transmitted through the V-BUS line is constantly monitored. In other words, it is possible to detect abnormality in USB communication by constantly monitoring the transition state of the V-BUS signal. For example, in a system in which the host device on the V-BUS line is not intentionally brought down, if the USB cable is disconnected for some reason during USB communication, the V-BUS signal transitions from on to off, As a result, the device recognizes that the physical connection of the USB communication is broken, and the abnormality of the USB communication can be detected.

キーボードコントローラ216は、P/S2通信用ケーブル71を介して入力装置としてのキーボード装置40と接続されて、キーボード装置40との間で、第2の通信部70であるP/S2通信システムを介して通信制御を行い、コマンドの送信に対応したレスポンス(応答)を受信する等の各種情報の授受を行って、キーボード装置40からのスキャンコードを受信する。   The keyboard controller 216 is connected to the keyboard device 40 as an input device via the P / S2 communication cable 71, and communicates with the keyboard device 40 via the P / S2 communication system that is the second communication unit 70. The communication control is performed, and various information such as reception of a response corresponding to the transmission of the command is exchanged, and the scan code from the keyboard device 40 is received.

上位装置20において、CPU211が全体の制御を行う。
上位装置20においては、ストレージユニット214内に保存されたOS(オペレーティングシステム)、ドライバ、ミドルウェアMW、アプリケーション等のプログラムがソフトウェアシステムの一部をなし、実行時にいわゆるコンピュータであるCPU211のソフトウェアとしてRAM213上に展開される。
CPU211は、RAM213にアクセスすることにより各種プログラムを起動する。
In the host device 20, the CPU 211 performs overall control.
In the host device 20, programs such as an OS (operating system), a driver, middleware MW, and an application stored in the storage unit 214 form a part of the software system, and on the RAM 213 as software of the CPU 211 that is a so-called computer at the time of execution Expanded to
The CPU 211 starts various programs by accessing the RAM 213.

[ソフトウェアシステム220の構成および機能]
ソフトウェアシステム220は、ドライバ部(カーネルモード部)230、OS部240、およびミドルウェアおよびアプリケーション部(ユーザモード部)250を含んで構成されている。
[Configuration and Function of Software System 220]
The software system 220 includes a driver unit (kernel mode unit) 230, an OS unit 240, and a middleware and application unit (user mode unit) 250.

ドライバ部230は、たとえばカーネルモードで動作するUSBドライバ231およびキーボードドライバ232を含み、OS部240に応じた機能を有する。   The driver unit 230 includes, for example, a USB driver 231 and a keyboard driver 232 that operate in the kernel mode, and has a function corresponding to the OS unit 240.

USBドライバ231は、USB通信システムに関するハードウェアであるUSBコントローラ215を制御し、アプリケーションソフトウェアに対して抽象化したインターフェースを提供する。
USBドライバ231は、USB通信システムを経由してカードリーダ30と通信する機能を有し、プログラムからドライバ内のルーチンを呼び出すと、USBドライバ231がコマンドを発行し、カードリーダ30からデータが送り返されてくると、元の読み出したプログラム内のルーチンを読み出す等する。
The USB driver 231 controls the USB controller 215, which is hardware related to the USB communication system, and provides an abstract interface for application software.
The USB driver 231 has a function of communicating with the card reader 30 via the USB communication system. When a routine in the driver is called from a program, the USB driver 231 issues a command and data is returned from the card reader 30. When it comes, the routine in the original read program is read out.

キーボードドライバ232は、P/S2通信システムに関するハードウェアであるキーボードコントローラ216を制御し、アプリケーションソフトウェアに対して抽象化したインターフェースを提供する。
キーボードドライバ232は、P/S2通信システムを経由してキーボード装置40と通信する機能を有し、プログラムからドライバ内のルーチンを呼び出すと、キーボードドライバ232がコマンドを発行し、キーボード装置40からデータが送り返されてくると、元の読み出したプログラム内のルーチンを読み出す等する。
The keyboard driver 232 controls the keyboard controller 216, which is hardware related to the P / S2 communication system, and provides an abstract interface for application software.
The keyboard driver 232 has a function of communicating with the keyboard device 40 via the P / S2 communication system. When a routine in the driver is called from a program, the keyboard driver 232 issues a command, and data is transmitted from the keyboard device 40. When the data is sent back, the routine in the original read program is read.

OS部240は、USBドライバ231およびキーボードドライバ232において抽象化したインターフェースをアプリケーションソフトウェアに対して提供する。
OS241の中で、ハードウェアを直接管理操作するなどの最も中心的な機能の部分を、特にカーネルと呼んで分けることもある。この場合、カーネル以外の部分はユーザランドと呼ばれる。
本実施形態では、ドライバ部230がカーネル領域であり、ミドルウェアおよびアプリケーション部(ユーザモード部)250がユーザランド領域として形成されている。
The OS unit 240 provides the application software with an interface abstracted by the USB driver 231 and the keyboard driver 232.
In the OS 241, a part of the most central function such as direct management and operation of hardware is sometimes called a kernel. In this case, the part other than the kernel is called user land.
In this embodiment, the driver unit 230 is a kernel region, and the middleware and application unit (user mode unit) 250 is formed as a user land region.

ミドルウェアおよびアプリケーション部(ユーザモード部)250は、第1の暗号化処理手段としての暗号処理ミドルウェア部251、第1のアプリケーションとしての変換用常駐アプリケーション252、第2のアプリケーションとしての金融等の汎用アプリケーション253、および文字入力アプリケーション254を含んで構成されている。
なお、汎用アプリケーション253は、汎用処理手段として機能する。
The middleware and application unit (user mode unit) 250 includes an encryption processing middleware unit 251 as a first encryption processing unit, a conversion resident application 252 as a first application, and a general-purpose application such as finance as a second application. 253 and a character input application 254.
The general-purpose application 253 functions as a general-purpose processing unit.

暗号処理ミドルウェア部251は、第1の暗号化処理手段として機能し、第1の通信部60を構成するUSB通信システムを通してカードリーダ30とのデータの送受信にためのデータの送受信機能、並びに暗号化および復号化処理機能を有している。   The encryption processing middleware unit 251 functions as a first encryption processing unit, transmits / receives data for transmitting / receiving data to / from the card reader 30 through the USB communication system constituting the first communication unit 60, and encryption. And has a decryption processing function.

本実施形態において、情報処理装置としてのカードリーダ30またはホストコンピュータとしての上位装置20では、上位装置20またはカードリーダ30とデータのやり取りを行うとき、その過程で秘密情報が漏れても問題を発生させないために、やり取りするデータには暗号化したデータを用いる。
この暗号化の方法として、現在最も多く用いられているのはDES(Data Encryption Standard)である。DESでは、データの暗号化にはカードリーダ30側と上位装置20側が同じ鍵を用い、データの送信側であるカードリーダ30または上位装置20はデータをその鍵で暗号化して送信し、データの受信側である上位装置20またはカードリーダ30は同じ鍵で復号してデータ取り出す。
In the present embodiment, the card reader 30 as the information processing device or the host device 20 as the host computer causes a problem even when secret information leaks during the process of exchanging data with the host device 20 or the card reader 30. Therefore, encrypted data is used as the exchanged data.
As the encryption method, DES (Data Encryption Standard) is most frequently used at present. In DES, the card reader 30 side and the host device 20 side use the same key for data encryption, and the card reader 30 or host device 20 on the data transmission side encrypts the data with the key and transmits the data. The host device 20 or the card reader 30 on the receiving side decrypts with the same key and extracts the data.

本実施形態においては、暗号化に用いる暗号キーKYは、暗号処理ミドルウェア部251で暗号化してカードリーダ30にUSB通信システムを通して送信する。
カードリーダ30側では、受信した暗号化された暗号キーKYを復号化して、復号化した暗号キーを用いカード50から読み取ったデータを暗号化し、USB通信システムを通して上位装置20に送信する。
In this embodiment, the encryption key KY used for encryption is encrypted by the encryption processing middleware unit 251 and transmitted to the card reader 30 through the USB communication system.
On the card reader 30 side, the received encrypted encryption key KY is decrypted, the data read from the card 50 is encrypted using the decrypted encryption key, and transmitted to the host device 20 through the USB communication system.

また、暗号処理ミドルウェア部251は、カードリーダ30側でカード50がスワイプされた否かを確認するため、状態通知コマンドを発信する。   In addition, the cryptographic processing middleware unit 251 transmits a status notification command in order to confirm whether or not the card 50 has been swiped on the card reader 30 side.

図3は、本実施形態に係る暗号化処理手段としての上位装置側の暗号処理ミドルウェア部およびカードリーダ側の暗号処理部の構成例を示すブロック図である。
図3の暗号処理ミドルウェア部251は、その暗号化および復号化機能部として、暗号部2511および復号部2512を含んで構成されている。
暗号部2511は、暗号化に用いる暗号キーKYを暗号化し、USBドライバ231、USBコントローラ215を介してカードリーダ30に送信する。
復号部2512は、カードリーダ30側で暗号化されたASCIIコードの文字列データとして生成された磁気データを復号する。
FIG. 3 is a block diagram showing a configuration example of an encryption processing middleware unit on the host device side and an encryption processing unit on the card reader side as encryption processing means according to the present embodiment.
The encryption processing middleware unit 251 in FIG. 3 includes an encryption unit 2511 and a decryption unit 2512 as the encryption and decryption function units.
The encryption unit 2511 encrypts the encryption key KY used for encryption and transmits it to the card reader 30 via the USB driver 231 and the USB controller 215.
The decryption unit 2512 decrypts the magnetic data generated as ASCII character string data encrypted on the card reader 30 side.

本実施形態において、暗号処理ミドルウェア部251は暗号化するための暗号キーをカードリーダ30に送り、カードリーダ30はこの暗号キーを使用して、ASCIIコードの文字列で生成された磁気データを暗号化する。
暗号処理ミドルウェア部251は、この暗号化されたデータを受け取り、ASCII文字列に復号する。
In the present embodiment, the encryption processing middleware unit 251 sends an encryption key for encryption to the card reader 30, and the card reader 30 uses this encryption key to encrypt magnetic data generated as a character string of the ASCII code. Turn into.
The cryptographic processing middleware unit 251 receives the encrypted data and decrypts it into an ASCII character string.

本実施形態に示すミドルウェアおよびアプリケーション部250におけるカードリーダ系の構成では、図2に示すように、第2のアプリケーションとしての汎用アプリケーション(一例として金融アプリケーション)253と第1のアプリケーションとしての変換用常駐アプリケーション252を備えている。
暗号処理ミドルウェア部251は、たとえば、ATMに備えられたカードリーダにおいて、金融機関等で、磁気記録データと、金融データベースとの照合を行う場合には、金融アプリケーション253を起動し、信号(情報)処理を行わせる。
一方、暗号処理ミドルウェア部251は、PCのログインなど、キーボード機能(上述したキーボード・インターフェースと呼ばれる機能)として使用する場合は変換用常駐アプリケーション252を起動し、信号(情報)処理を行わせる。
In the configuration of the card reader system in the middleware and application unit 250 shown in this embodiment, as shown in FIG. 2, a general-purpose application (financial application as an example) 253 as a second application and a conversion resident as a first application An application 252 is provided.
The cryptographic processing middleware unit 251 activates the financial application 253 to check the signal (information) when, for example, a financial institution or the like collates the magnetic recording data with the financial database in a card reader provided in the ATM. Let the process do.
On the other hand, the cryptographic processing middleware unit 251 activates the conversion resident application 252 to perform signal (information) processing when used as a keyboard function (a function called the keyboard interface described above) such as PC login.

より具体的な使用例について述べる。
金融アプリケーション253は、ATM端末にインストールされているWindows(登録商標) OSなどで起動させる。
ATMの電源スイッチをONにした際、BIOS、OSの順に立ち上がる。OS起動後、金融アプリケーション253が自動的に起動するよう、Windows(登録商標)でいう「スタートアップ」プログラムとして登録しておくことが一般的である。
こうすることにより、銀行員が金融アプリケーション253を立ち上げにいく必要なく、ATMの電源を入れるだけで金融アプリケーション253の待ちうけ画面(顧客待機画面)まで起動する。
A more specific use example will be described.
The financial application 253 is activated by a Windows (registered trademark) OS installed in the ATM terminal.
When the ATM power switch is turned on, BIOS and OS are started in this order. It is common to register as a “start-up” program in Windows (registered trademark) so that the financial application 253 is automatically started after the OS is started.
By doing this, the bank clerk does not have to go to start up the financial application 253, and it is activated up to the standby screen (customer standby screen) of the financial application 253 just by turning on the ATM.

一方、キーボード機能などは、ATMで使用することはない。
POS端末や、PCのログインなどに使われる。
この場合、変換用常駐アプリケーション252をWindows(登録商標)でいう「サービス」プログラムとして起動する。
具体的には、「サービス」を有効にするよう、あらかじめOS241に設定しておき、OS起動と同時に、この変換用常駐アプリケーション252が起動するようにしておく。
これにより、他のキーボードと同様、ユーザが何か操作をすることなく、データをOS241に通知することができる。
On the other hand, the keyboard function or the like is not used in ATM.
Used for POS terminal and PC login.
In this case, the conversion resident application 252 is activated as a “service” program in Windows (registered trademark).
Specifically, the OS 241 is set in advance so that the “service” is valid, and the conversion resident application 252 is started simultaneously with the OS startup.
As a result, as with other keyboards, data can be notified to the OS 241 without any operation by the user.

上記した動作を実現するために、本実施形態では、暗号処理ミドルウェア部251内にAPI(Application Programming Interface)を、キーボード機能用APIまたは汎用カードリーダ使用のAPIとして切り替える機能を備えている。
本実施形態では、予め、ユーザの要求により、切り替えておくことで対応している。
In order to realize the above-described operation, in this embodiment, the cryptographic processing middleware unit 251 has a function of switching an API (Application Programming Interface) as an API for keyboard function or an API using a general-purpose card reader.
In this embodiment, it respond | corresponds by switching beforehand by a user's request | requirement.

図4は、本実施形態に係る暗号処理ミドルウェア部におけるAPI切り替え部の構成例を示す機能ブロック図である。   FIG. 4 is a functional block diagram illustrating a configuration example of the API switching unit in the cryptographic processing middleware unit according to the present embodiment.

図4の暗号処理ミドルウェア部251は、切替制御部2513、およびAPI2514を含んで構成されている。
切替制御部2513は、ユーザの要求に応じた指示信号SIを受けて、信号S2513によりAPI2514をキーボード機能用APIまたは汎用カードリーダ使用のAPIとして切り替えるように制御する。
The cryptographic processing middleware unit 251 of FIG. 4 includes a switching control unit 2513 and an API 2514.
The switching control unit 2513 receives the instruction signal SI according to the user's request, and controls the API 2514 to be switched as a keyboard function API or a general-purpose card reader API by a signal S2513.

すなわち、暗号処理ミドルウェア部251は、APIを、第1のアプリケーションである変換用常駐アプリケーション用とするかまたは第2のアプリケーションである汎用アプリケーション用とするかを設定可能である。
暗号処理ミドルウェア部251は、APIが第1のアプリケーション用として設定されている場合には、復号した情報を変換用常駐アプリケーション252に出力し、APIが第2のアプリケーション用として設定されている場合には、復号した情報を汎用アプリケーション253に出力する。
That is, the cryptographic processing middleware unit 251 can set whether the API is used for the conversion resident application that is the first application or the general application that is the second application.
When the API is set for the first application, the cryptographic processing middleware unit 251 outputs the decrypted information to the conversion resident application 252 and when the API is set for the second application. Outputs the decrypted information to the general-purpose application 253.

変換手段としての変換用常駐アプリケーション252は、暗号処理ミドルウェア部251によるASCIIコードを仮想キーコードに変換し、OS241を通して文字入力アプリケーション254に供給する。
文字入力アプリケーション254は、変換された仮想キーコードに基づく文字をディスプレイ217の画面上に出力する。
The conversion resident application 252 as conversion means converts the ASCII code by the cryptographic processing middleware unit 251 into a virtual key code and supplies it to the character input application 254 through the OS 241.
The character input application 254 outputs a character based on the converted virtual key code on the screen of the display 217.

ここで、キーボード機能として使用する場合の動作を変換用常駐アプリケーション252の実行処理を中心に、図5および図6に関連付けて説明する。
図5は、本実施形態において、キーボード機能として使用する場合の変換用常駐アプリケーションの処理を説明するためのフローチャートである。
図6は、変換常駐アプリケーションの変換処理を説明するためのフローチャートである。
Here, the operation when used as a keyboard function will be described with reference to FIGS. 5 and 6, focusing on the execution process of the conversion resident application 252.
FIG. 5 is a flowchart for explaining the process of the conversion resident application when used as a keyboard function in the present embodiment.
Figure 6 is a flowchart for explaining a conversion process of converting resident applications.

(キーボード機能として使用する場合)
変換用常駐アプリケーション252は、OS起動後、直ちに起動する。
変換用常駐アプリケーション252の処理は、図5に示すように、まず、暗号処理ミドルウェア部251とリンクさせる(ステップST1)。
その後、このミドルウェアに実装させているRead(磁気データ読み取り用API)を実行し、戻り値が返されるまで待機する(ステップST2)。
この戻り値は、カード50がスワイプされ、磁気データを取得したタイミングで、磁気データはASCIIコードの文字列として返される。
変換用常駐アプリケーション252は、読み取り結果を確認し(ステップST3)、成功すれば読み取ったトラック情報(JISIIラックデータ、ISO1トラックデータ、ISO2トラックデータ)を意味するASCIIコードとしてバッファに保管、また、これに続きと受け取った磁気データを、ASCIIコードとして保管する(ステップST5)。失敗していれば、このエラー情報をASCIIコードの文字列で作成し(ステップST4)、バッファへ保管する(ステップST5)。
その後、変換用常駐アプリケーション252は、保管されたバッファから一文字毎ASCIIコードを取り出し、仮想キーコードに変換し、イベントとして、各アプリケーションに通知(送信)する(ステップST6)。
(When used as a keyboard function)
The conversion resident application 252 starts immediately after the OS is started.
As shown in FIG. 5, the process of the conversion resident application 252 is first linked to the cryptographic processing middleware unit 251 (step ST1).
Thereafter, Read (magnetic data reading API) implemented in the middleware is executed, and the process waits until a return value is returned (step ST2).
This return value is the timing at which the card 50 is swiped and the magnetic data is acquired, and the magnetic data is returned as a character string of ASCII code.
The conversion resident application 252 confirms the read result (step ST3), and if successful, stores it in the buffer as an ASCII code indicating the read track information (JISII rack data, ISO1 track data, ISO2 track data). Next, the magnetic data received is stored as an ASCII code (step ST5). If unsuccessful, the error information is created as a character string of ASCII code (step ST4) and stored in the buffer (step ST5).
Thereafter, the conversion resident application 252 extracts the ASCII code for each character from the stored buffer, converts it into a virtual key code, and notifies (transmits) each application as an event (step ST6).

このASCIIコードを仮想キーコードに変換する変換処理を図6に関連付けて説明する。
変換用常駐アプリケーション252は、まず、ASCIIデータ保存バッファの先頭1文字を取り出し、バッファから取り出した文字を削除する(ステップST61)。
ここで、ASCII文字があるか否かを判別し(ステップST62)、ある場合には、このASCIIコードから、仮想キーコードと、シフト状態を取得する(ステップST63)。
たとえば、大文字の“A”は、シフトキーを押しながら仮想キーコード“A”を押すことで、画面に出力される。
また、たとえば“&”文字を出力させるためには、101/104英語キーボードではシフトキーと仮想キーコード“7”、106/109日本語キーボードではシフトキーと仮想キーコード“6”を押すという違いがある。
変換の具体的な方法は、上記のような、指定されたASCIIコードから、どの仮想キーコードを押す必要があるかと、シフトを押す必要があるかという情報をOS241に問い合わせる(ステップST64)。
OS241に問い合わせることにより、今、OS241に設定されているキーボード言語により、最適な仮想キーコードと、シフト状態を取得することができる。
A conversion process for converting the ASCII code into a virtual key code will be described with reference to FIG.
The conversion resident application 252 first extracts the first character from the ASCII data storage buffer and deletes the character extracted from the buffer (step ST61).
Here, it is determined whether or not there is an ASCII character (step ST62), and if there is, a virtual key code and a shift state are obtained from this ASCII code (step ST63).
For example, the capital letter “A” is output to the screen by pressing the virtual key code “A” while pressing the shift key.
Also, for example, to output the “&” character, there is a difference that the shift key and virtual key code “7” are pressed on the 101/104 English keyboard, and the shift key and virtual key code “6” are pressed on the 106/109 Japanese keyboard. .
The specific method of conversion inquires of the OS 241 about which virtual key code needs to be pressed and what shift needs to be pressed from the designated ASCII code as described above (step ST64).
By making an inquiry to the OS 241, the optimal virtual key code and the shift state can be acquired by the keyboard language set in the OS 241 now.

シフト状態が取得できたら、まず、必要な場合は、仮想キーコードの“Shift”をKey Downイベントとして送信する(ステップST65)。
その後、取得した仮想キーコードをKey Down イベントとして送信する(ステップST66)。
また、次のステップとして、 “Shift” をKey Upイベントとして送信し、仮想キーコードをKey Up イベントとして送信する(ステップST67)。
もし、シフトが不要な場合は(ステップST68)、“Shift”のKey Down、またはKey UPイベントは送信しない。
シフトが必要な場合(ステップST68)、“Shift” をKey Upイベントとして送信し(ステップST69)、ステップST61の処理に戻り、このASCII文字の変換、イベント送信処理をバッファが空になるまで繰り返し、終了する。
If the shift state can be acquired, first, if necessary, “Shift” of the virtual key code is transmitted as a Key Down event (step ST65).
Thereafter, the acquired virtual key code is transmitted as a Key Down event (step ST66).
As the next step, “Shift” is transmitted as the Key Up event, and the virtual key code is transmitted as the Key Up event (Step ST67).
If the shift is unnecessary (step ST68), the “Shift” Key Down or Key UP event is not transmitted.
If a shift is necessary (step ST68), "Shift" is transmitted as a Key Up event (step ST69), the process returns to step ST61, and this ASCII character conversion and event transmission process is repeated until the buffer becomes empty. finish.

ここで言うイベント送信は、実際には、OS241にイベント送信を依頼するものであり、依頼されたOSは、このイベントを各アプリケーションに通知する。   The event transmission mentioned here actually requests the OS 241 to transmit the event, and the requested OS notifies each application of this event.

次に、カードリーダとして機能させる場合の動作を金融(汎用)アプリケーション253の実行処理を中心に、図7に関連付けて説明する。
図7は、本実施形態において、カードリーダとして機能させる場合の金融アプリケーションの処理を説明するためのフローチャートである。
Next, the operation in the case of functioning as a card reader will be described with reference to FIG. 7, focusing on the execution processing of the financial (general purpose) application 253.
FIG. 7 is a flowchart for explaining the processing of a financial application when functioning as a card reader in the present embodiment.

(カードリーダとして機能させる場合)
本実形態においては、金融機関(ATMに搭載されて)で使用される場合に、金融アプリケーション253で使用する例を図7に示している。
図5と同様、まず、暗号処理ミドルウェア部251とリンクさせる(ステップST21)
その後、この暗号処理ミドルウェア部251に実装させているRead(磁気データ読み取り用API)を実行し、戻り値が返されるまで待機する(ステップST22)。
その後、受け取ったASCIIデータの文字列を、金融データベースと照合し(ステップST23)、磁気データの読み取り処理を終了する。
(When functioning as a card reader)
In this embodiment, an example of use in the financial application 253 when used in a financial institution (installed in an ATM) is shown in FIG.
As in FIG. 5, first, the encryption processing middleware unit 251 is linked (step ST21).
Thereafter, Read (magnetic data reading API) implemented in the cryptographic processing middleware unit 251 is executed, and the process waits until a return value is returned (step ST22).
Thereafter, the received ASCII data character string is collated with the financial database (step ST23), and the magnetic data reading process is terminated.

また、キーボード装置40のキーボードの所定のキーが押されると、キーボードコントローラによりキーの押された位置が、スキャンコードの信号として第2の通信部70を通して上位装置20側に通知される。
上位装置側20では、受け取ったスキャンコードをキーボードコントローラ216、キーボードドライバ232、さらにはOS241を通して仮想キーコードとして文字入力アプリケーション254に供給する。
文字入力アプリケーション254は、変換された仮想キーコードに基づく文字をディスプレイ217の画面上に出力する。
When a predetermined key on the keyboard of the keyboard device 40 is pressed, the keyboard controller notifies the host device 20 side of the key pressed position through the second communication unit 70 as a scan code signal.
On the host device side 20, the received scan code is supplied to the character input application 254 as a virtual key code through the keyboard controller 216, the keyboard driver 232, and further the OS 241.
The character input application 254 outputs a character based on the converted virtual key code on the screen of the display 217.

以上、上位装置20の構成および機能について具体的に説明した。
次に、カードリーダ30の構成および機能について説明する。
Heretofore, the configuration and function of the host device 20 have been specifically described.
Next, the configuration and function of the card reader 30 will be described.

[カードリーダ30の構成および機能]
カードリーダ30は、上位装置20との通信およびカード50との通信機能を有する。カードリーダ30は、上述したように、上位装置20とのメイン(通常)の通信はUSB通信規格に準拠して行う。
[Configuration and Function of Card Reader 30]
The card reader 30 has a communication function with the host device 20 and a communication function with the card 50. As described above, the card reader 30 performs main (normal) communication with the host device 20 in accordance with the USB communication standard.

図2は、本実施形態に係る情報処理装置であるカードリーダ30、キーボード装置40、および上位装置の構成例を概念的に示している。   FIG. 2 conceptually shows a configuration example of the card reader 30, the keyboard device 40, and the host device that are information processing devices according to the present embodiment.

カードリーダ30は、ハードウェアの基本的な構成として、カードリーダ30全体を統合的に制御するCPU31、カードリーダ30の動作プログラムや初期値、パラメータなどを格納するROM32、およびCPU31のワーキングエリアとして機能するRAM33を有している。
そして、カードリーダ30は、磁気ヘッド310、デコード部320、第2の暗号化処理手段としての暗号処理部330、およびUSB通信システムを構成するUSBコントローラ340を主構成要素として有している。
As a basic hardware configuration, the card reader 30 functions as a CPU 31 that integrally controls the entire card reader 30, a ROM 32 that stores an operation program, initial values, parameters, and the like of the card reader 30, and a working area of the CPU 31. The RAM 33 is provided.
The card reader 30 includes a magnetic head 310, a decoding unit 320, an encryption processing unit 330 as a second encryption processing unit, and a USB controller 340 constituting a USB communication system as main components.

磁気ヘッド310は、たとえばスワイプされたカード50の磁気ストライプmpに、F2F変調方式等により記録された磁気データをアナログ信号として読み取る。
磁気ヘッド310で読み取られた磁気データは、図示しない増幅器で増幅され、アナログデジタル変換器等を通してデジタル化されるとともに復調され、デコード部320に供給される。
The magnetic head 310 reads, for example, magnetic data recorded on the magnetic stripe mp of the swipe card 50 by an F2F modulation method or the like as an analog signal.
The magnetic data read by the magnetic head 310 is amplified by an amplifier (not shown), digitized through an analog / digital converter or the like, demodulated, and supplied to the decoding unit 320.

デコード部320は、ファームウェアFWの一部として構成され、デジタル化された復調データを各種フォーマットにデコードし、各トラックを共通言語で表現されるコードの一例であるASCIIコードの文字列のデータとして生成し、暗号処理部330に出力する。   The decoding unit 320 is configured as a part of the firmware FW, decodes the digitized demodulated data into various formats, and generates each track as character string data of an ASCII code that is an example of a code expressed in a common language. And output to the cryptographic processing unit 330.

暗号処理部330は、上位装置20の暗号処理ミドルウェア部251と同様に暗号化処理手段の一部である第2の暗号処理化手段として機能し、第1の通信部60を構成するUSB通信システムを通してカードリーダ30とのデータの送受信にためのデータの送受信機能、並びに暗号化および復号化処理機能を有している。   The cryptographic processing unit 330 functions as a second cryptographic processing unit that is a part of the cryptographic processing unit, similarly to the cryptographic processing middleware unit 251 of the host device 20, and constitutes the first communication unit 60. And a data transmission / reception function for transmitting / receiving data to / from the card reader 30 and an encryption / decryption processing function.

前述したように、本実施形態において、情報処理装置としてのカードリーダ30またはホストコンピュータとしての上位装置20では、上位装置20またはカードリーダ30とデータのやり取りを行うとき、その過程で秘密情報が漏れても問題を発生させないために、やり取りするデータには暗号化したデータを用いる。   As described above, in this embodiment, when the card reader 30 as the information processing device or the host device 20 as the host computer exchanges data with the host device 20 or the card reader 30, secret information leaks in the process. However, in order not to cause a problem, encrypted data is used as exchanged data.

本実施形態において、暗号処理部330は、暗号化に用いる暗号キーKYは、上位装置20側の暗号処理ミドルウェア部251で暗号化された、暗号化に用いる暗号キーKYを復号し、復号した暗号キーを用いカード50から読み取ったデータを暗号化し、USB通信システムを通して上位装置20に送信する。   In the present embodiment, the encryption processing unit 330 decrypts the encryption key KY used for encryption by decrypting the encryption key KY used for encryption encrypted by the encryption processing middleware unit 251 on the host device 20 side. Data read from the card 50 is encrypted using the key and transmitted to the host device 20 through the USB communication system.

また、暗号処理部330を含むファームウェア部FWは、上位装置20の暗号処理ミドルウェア部251から送信される状態通知コマンドに対し、磁気データを保持していることを示す情報をレスポンスデータとして返信する機能を有する。   In addition, the firmware unit FW including the cryptographic processing unit 330 returns, as response data, information indicating that the magnetic data is held in response to the state notification command transmitted from the cryptographic processing middleware unit 251 of the higher-level device 20. Have

図3は、本実施形態に係る暗号化処理手段としての上位装置側の暗号処理ミドルウェア部およびカードリーダ側の暗号処理部の構成例を示している。
図3の暗号処理部330は、その暗号化および復号化機能部として、復号部331および暗号部332を含んで構成されている。
復号部331は、USBコントローラ340を通して受信した、暗号処理ミドルウェア部251で暗号化された暗号キーKYを復号する。
暗号部332は、復号された暗号化に用いる暗号キーKYを用いて、ASCIIの文字列で生成された磁気データを暗号化し、USBコントローラ340を介して上位装置20に送信する。
FIG. 3 shows a configuration example of an encryption processing middleware unit on the host device side and an encryption processing unit on the card reader side as encryption processing means according to the present embodiment.
The encryption processing unit 330 in FIG. 3 includes a decryption unit 331 and an encryption unit 332 as the encryption and decryption function units.
The decryption unit 331 decrypts the encryption key KY encrypted by the encryption processing middleware unit 251 received through the USB controller 340.
The encryption unit 332 encrypts the magnetic data generated with the ASCII character string using the decrypted encryption key KY, and transmits the encrypted data to the host device 20 via the USB controller 340.

このように、本実施形態において、カードリーダ30は、カード50から読み取ったデータを復調し、復調データを共通言語で表現されたコード、本実施形態ではASCIIコードに変換し、変換したASCIIコードを、暗号キーKYを用いて暗号化し、この暗号化した磁気データを上位装置20に第1の通信部60を通して送信する。   As described above, in this embodiment, the card reader 30 demodulates the data read from the card 50, converts the demodulated data into a code expressed in a common language, in this embodiment, an ASCII code, and converts the converted ASCII code. The encrypted magnetic data is encrypted using the encryption key KY, and the encrypted magnetic data is transmitted to the host device 20 through the first communication unit 60.

[キーボード装置40の構成]
キーボード装置40は、キーボード410およびキーボードコントローラ420を含んで構成されている。
キーボード装置40は、そのキーの配置が国やキーボード410の種類によって異なっており、キーボードにはいくつかのモデルがあるが、スイッチ数と形状が同じであれば、キートップの印刷内容は異なっても、同じ位置のキースイッチは同じスキャンコードを持っている。
キーボード410としては、たとえば前述したような101/104英語キーボードや106/109日本語キーボード等がある。
キーボードコントローラ420では、キーボード410から受け取ったスキャンコードからキー入力を組み立て、キーコードを作成する。
そして、設定された国コードおよびキーボードタイプにより、どのスキャンコード(どこの位置のキー)を受け取った際に、どの文字(仮想キーコード)に変換するか決められている。
そのため、その変換テーブルを切り替えることで所望のキーボードになるように設定することができる。
[Configuration of Keyboard Device 40]
The keyboard device 40 includes a keyboard 410 and a keyboard controller 420.
The keyboard device 40 has different key arrangements depending on the country and the type of the keyboard 410, and there are several models of the keyboard. However, if the number of switches and the shape are the same, the printed contents of the key tops are different. Even key switches in the same position have the same scan code.
Examples of the keyboard 410 include the 101/104 English keyboard and the 106/109 Japanese keyboard as described above.
The keyboard controller 420 assembles key inputs from the scan code received from the keyboard 410 and creates a key code.
Then, according to the set country code and keyboard type, it is determined which character (virtual key code) is converted to which scan code (where key) is received.
Therefore, it is possible to set the desired keyboard by switching the conversion table.

キーボード装置40は、キーボード410の所定のキーが押されると、キーボードコントローラ420によりキーの押された位置を、スキャンコードの信号として第2の通信部70を通して上位装置20側に通知する。
キーボード装置40は、上位装置20が起動すると、キーボードコントローラ420が、上位装置20のOSとの間でコマンド、レスポンスのやり取りにて初期設定を行う。この処理により、キーボード装置40において、ユーザがキーボード410のキーを押したときに、上位装置20までスキャンコードが伝わるようになる。
When a predetermined key on the keyboard 410 is pressed, the keyboard device 40 notifies the host device 20 side of the key pressed position by the keyboard controller 420 through the second communication unit 70 as a scan code signal.
In the keyboard device 40, when the host device 20 is activated, the keyboard controller 420 performs initial setting by exchanging commands and responses with the OS of the host device 20. With this process, in the keyboard device 40, when the user presses a key on the keyboard 410, the scan code is transmitted to the host device 20.

[全体の動作]
次に、上記構成による情報処理システムの全体的な動作の概要を説明する。
図8は、本実施形態に係る情報処理システムの全体的な動作概要を説明するための図である。
ここでは、上位装置20と情報処理装置としてのカードリーダ間の処理を図8に関連付けて説明し、その後、OS上におけるP/S2規格でのキーボード装置40の基本動作について説明する。
[Overall behavior]
Next, an overview of the overall operation of the information processing system configured as described above will be described.
FIG. 8 is a diagram for explaining an overall operation overview of the information processing system according to the present embodiment.
Here, processing between the host device 20 and the card reader as the information processing device will be described with reference to FIG. 8, and then the basic operation of the keyboard device 40 in the P / S2 standard on the OS will be described.

まず、上位装置20が起動状態で、ユーザによりキーボード機能とするかカードリーダ機能とするかの指示が行われる。
これに伴い、上位装置20の暗号処理ミドルウェア部251における切替制御部2513に対してユーザの要求に応じた指示信号SIが入力され、切替制御部2513はで信号S2513に応じてRead等のAPI2514をキーボード機能用APIまたは汎用カードリーダ使用のAPIとして切り替えるように制御する。これにより、上位装置20は、キーボード機能またはカードリーダ機能に設定される(ステップST101)。
First, when the host device 20 is in an activated state, the user instructs whether to use the keyboard function or the card reader function.
Accordingly, an instruction signal SI corresponding to a user request is input to the switching control unit 2513 in the cryptographic processing middleware unit 251 of the higher-level device 20, and the switching control unit 2513 uses an API 2514 such as Read in response to the signal S 2513. Control is performed so as to switch to an API for keyboard function or an API using a general-purpose card reader. Thereby, the host device 20 is set to the keyboard function or the card reader function (step ST101).

暗号処理ミドルウェア部251は、カードリーダ30側でカード50がスワイプされたかどうかを確認するため、常時、状態通知コマンドを発信する(ステップST102)。
カードリーダ30は、カードがスワイプされると(ステップST103)、磁気ヘッド310により磁気データが読み取られる(ステップST104)。
カードリーダ30は、読み取った磁気データをデジタル化するとともに復調する。カードリーダ30のファームウェアFWはこのデジタル化された復調データを各種フォーマットにデコードし、各トラックをASCIIコードの文字列データとして生成する(ST105)。
また、カードリーダ30は、暗号処理ミドルウェア部251から送信される状態通知コマンドに対し、磁気データを保持していることを示す情報をレスポンスデータとして上位装置20に返信する(ステップST106)。
The cryptographic processing middleware unit 251 always sends a status notification command to confirm whether or not the card 50 has been swiped on the card reader 30 side (step ST102).
When the card is swiped (step ST103), the magnetic data is read by the magnetic head 310 (step ST104).
The card reader 30 digitizes and demodulates the read magnetic data. The firmware FW of the card reader 30 decodes the digitized demodulated data into various formats, and generates each track as ASCII character string data (ST105).
In response to the status notification command transmitted from the cryptographic processing middleware unit 251, the card reader 30 returns information indicating that the magnetic data is held as response data to the host device 20 (step ST106).

上位装置20においては、カードリーダ側で磁気データを保持しているものとして、暗号化のための暗号キーKYを暗号化してカードリーダ30に送信する(ステップST107)。
カードリーダ30は、暗号化された暗号キーを復号し、復号した暗号キーを用いて暗号化し、この暗号化データを上位装置20に第1の通信部60を通して送信する(ステップST108)。
The host device 20 encrypts the encryption key KY for encryption and transmits it to the card reader 30 assuming that the card reader holds the magnetic data (step ST107).
The card reader 30 decrypts the encrypted encryption key, encrypts it using the decrypted encryption key, and transmits this encrypted data to the host device 20 through the first communication unit 60 (step ST108).

上位装置20は、暗号処理ミドルウェア部251でカードリーダ30により送信された暗号化データを、暗号キーを用いて復号する(ステップST109)。
ここで、ステップST101で設定された機能がキーボード機能である場合には(ステップST110)、変換手段としての変換用常駐アプリケーションが、ASCIIコードを仮想キーコードに変換し(ステップST111)、OSを通して文字入力アプリケーション254に供給する。
文字入力アプリケーション254は、変換された仮想キーコードに基づく文字をディスプレイ217の画面上に出力する(ステップST112)。
The host device 20 decrypts the encrypted data transmitted from the card reader 30 by the encryption processing middleware unit 251 using the encryption key (step ST109).
Here, when the function set in step ST101 is a keyboard function (step ST110), the conversion resident application as the conversion means converts the ASCII code into a virtual key code (step ST111), and the character through the OS. Supply to the input application 254.
Character input application 254 outputs a character based on the converted virtual key code on the screen of display 217 (step ST112).

ステップST101で設定された機能がカードリーダ機能である場合には(ステップST110)、汎用アプリケーション253が受け取ったASCIIデータの文字列を、金融データベースと照合し、磁気データの読み取り処理を終了する(ステップST113)。   If the function set in step ST101 is the card reader function (step ST110), the ASCII data character string received by the general-purpose application 253 is checked against the financial database, and the magnetic data reading process is terminated (step ST10). ST113).

最後に、OS上におけるP/S2規格でのキーボード装置40の基本動作について説明する。
キーボード装置40は、キーボード410の所定のキーが押されると、キーボードコントローラ420によりキーの押された位置を、スキャンコードの信号として第2の通信部70を通して上位装置20側に通知する。
上位装置側20では、受け取ったスキャンコードをキーボードコントローラ216、キーボードドライバ232、さらにはOS241を通して仮想キーコードとして文字入力アプリケーション254に供給する。文字入力アプリケーション254は、変換された仮想キーコードに基づく文字をディスプレイ217の画面上に出力する。
これにより、テキストエディタ等のアプリケーションにイベントメッセージとして配信等することができる。
Finally, the basic operation of the keyboard device 40 in the P / S2 standard on the OS will be described.
When a predetermined key on the keyboard 410 is pressed, the keyboard device 40 notifies the host device 20 side of the key pressed position by the keyboard controller 420 through the second communication unit 70 as a scan code signal.
On the host device side 20, the received scan code is supplied to the character input application 254 as a virtual key code through the keyboard controller 216, the keyboard driver 232, and further the OS 241. The character input application 254 outputs a character based on the converted virtual key code on the screen of the display 217.
As a result, it can be distributed as an event message to an application such as a text editor.

より具体的には、まず、上位装置20が起動すると、接続されているキーボード装置40に対し、コマンド、レスポンスのやり取りにて初期設定を行われる。この処理は、主に、上位装置のOSと、キーボード装置40に内蔵されているキーボードコントローラ420にて行われる。
これにより、ユーザがキーボード410のキーを押したときに、上位装置20までスキャンコードが伝わるようになる。
ユーザによってキーボード410のキーが押されると、電気信号としてキーボードコントローラ420に伝わる。
キーボードコントローラ420は、キーの押された場所を、スキャンコードとしての信号にて、上位装置20のキーボードコントローラ216を介してCPU211に通知する。
上位装置20のキーボードドライバ232は、CPU211で受け取ったスキャンコードを仮想キーコードとして、OS241に通知する。
仮想キーコードは、OS独自のコードで定められており、OS内で共通に利用されるキーのコードである。OS241は、受け取った仮想キーコードを、起動している各アプリケーション(文書作成ソフトなど)に通知し、これを受けた文字入力アプリケーション254は、文字をディスプレイ217等に出力する。
More specifically, first, when the host device 20 is activated, initialization is performed by exchanging commands and responses with respect to the connected keyboard device 40. This process is mainly performed by the OS of the host device and the keyboard controller 420 built in the keyboard device 40.
Thus, when the user presses a key on the keyboard 410, the scan code is transmitted to the host device 20.
When a key on the keyboard 410 is pressed by the user, it is transmitted to the keyboard controller 420 as an electrical signal.
The keyboard controller 420 notifies the CPU 211 via the keyboard controller 216 of the higher-level device 20 of the location where the key is pressed as a signal as a scan code.
The keyboard driver 232 of the host device 20 notifies the OS 241 of the scan code received by the CPU 211 as a virtual key code.
The virtual key code is defined by a code unique to the OS, and is a key code that is commonly used in the OS. The OS 241 notifies the received virtual key code to each activated application (such as document creation software), and the character input application 254 that receives the virtual key code outputs the character to the display 217 or the like.

[実施形態の効果]
本実施形態において、情報処理システム10は、上位装置20と情報処理装置30との間で情報の送受信を行う情報処理システム10であって、情報処理装置30と上位装置20との間で情報の送受信を行う際にこの情報を暗号化する暗号化処理部251,330と、上位装置20に配置され、情報処理装置30において暗号化処理部330により暗号化されて送信された共通言語で表現された共通コード(ASCIIコード)を仮想キーコードに変換する変換用常駐アプリケーション252と、上位装置20に配置され、変換用常駐アプリケーション252で変換された仮想コードに基づく情報を出力する出力部としての文字入力アプリケーション254と、を有する。
また、情報処理システム10において、上位装置20は、情報処理装置であるカードリーダ30に送信する情報を暗号化し、カードリーダ30から受信する暗号化された情報を復号する第1の暗号化処理手段としての暗号処理ミドルウェア部251を含む。
また、情報処理装置としてのカードリーダ30は、上位装置20に送信する情報を暗号化し、上位装置20から受信する暗号化された情報を復号する第2の暗号化処理手段としての暗号処理部330を含む。
また、上位装置20において、暗号処理ミドルウェア部251はAPI(アプリケーションインターフェース)を、第1のアプリケーションである変換用常駐アプリケーション用とするかまたは第2のアプリケーションである汎用アプリケーション用とするかを設定可能である。APIが第1のアプリケーション用として設定されている場合には、復号した情報を変換用常駐アプリケーション252に出力し、APIが第2のアプリケーション用として設定されている場合には、復号した情報を汎用アプリケーション253に出力する。
そして、情報処理装置としてカードリーダ30は、カード50のデータを読み取るヘッド310と、ヘッドで読み取られ、復調された復調データを各種フォーマットにデコードし、各トラックを共通言語で表現されるコードであるASCIIコードの文字列のデータとして生成するデコード部320と、を含み、暗号処理部330は、ASCIIコードを暗号化して上位装置20に送信する。
これに対応して、上位装置20において、暗号処理ミドルウェア部251は、暗号化されているASCIIコードを復号し、復号したASCIIコードを設定されているアプリケーションに供給する。
[Effect of the embodiment]
In the present embodiment, the information processing system 10 is an information processing system 10 that transmits and receives information between the host device 20 and the information processing device 30, and information processing is performed between the information processing device 30 and the host device 20. Encryption processing units 251 and 330 that encrypt this information when performing transmission / reception, and the higher-level device 20, and are expressed in a common language that is encrypted and transmitted by the encryption processing unit 330 in the information processing device 30. Resident application 252 for conversion that converts the common code (ASCII code) into a virtual key code, and a character as an output unit that is arranged in the host device 20 and outputs information based on the virtual code converted by the resident application 252 for conversion Input application 254.
In the information processing system 10, the higher-level device 20 encrypts information to be transmitted to the card reader 30 that is an information processing device, and first encryption processing means for decrypting the encrypted information received from the card reader 30. The encryption processing middleware unit 251 is included.
The card reader 30 as an information processing device encrypts information to be transmitted to the higher-level device 20 and decrypts encrypted information received from the higher-level device 20 as a second encryption processing unit 330 as a second encryption processing unit. including.
In the host device 20, the cryptographic processing middleware unit 251 can set whether the API (application interface) is for the conversion resident application as the first application or the general application as the second application. It is. When the API is set for the first application, the decrypted information is output to the conversion resident application 252. When the API is set for the second application, the decrypted information is output to the general-purpose application. Output to the application 253.
The card reader 30 serving as an information processing device is a code that expresses each track in a common language by decoding the demodulated data read and demodulated by the head 310 that reads data from the card 50 into various formats. The encryption processing unit 330 encrypts the ASCII code and transmits it to the host device 20.
Correspondingly, in the higher-level device 20, the cryptographic processing middleware unit 251 decrypts the encrypted ASCII code and supplies the decrypted ASCII code to the set application.

したがって、本実施形態によれば、以下の効果を得ることができる。
各国の言語に対応したキーボードのキー配列の影響を受けにくく、しかも情報の機密性を保持することが可能となるカードリーダを提供することができる。
また、APIを切り替えることで、ユーザの使い勝手に従って、キーボード機能として使用させる場合、汎用装置、たとえばカードリーダとして使用させる場合と簡単に行うことが可能となる。
Therefore, according to the present embodiment, the following effects can be obtained.
It is possible to provide a card reader that is hardly affected by the keyboard layout corresponding to the language of each country and that can maintain the confidentiality of information.
Further, by switching the API, according to the user's convenience, it can be easily performed as a keyboard function or as a general-purpose device such as a card reader.

なお、本実施形態では、キーボード機能として使用するカードリーダであっても、汎用のカードリーダとしても使用することが可能となっている。
すなわち、従来、キーボード・インターフェースとして実装されているものではない、汎用的なカードリーダを接続した場合には、使用するコードがスキャンコードとASCIIコードと異なっているため、それを処理するアプリケーションが異なるので使用することができない。したがって、カードリーダのアプリケーションを大幅に変更する必要がありまた、この技術では、キーボードとしての用途でしか使えず、カードリーダが読み取ったデータを、(汎用のカードリーダとして使用する)金融のデータベースで情報の照合を行うような、アプリケーションでは利用できない。
これに対し、本実施形態では、ASCIIコードを用いてキーボード機能を実現したことから、図2に示すように、汎用アプリケーション253および変換用常駐アプリケーション252を格納しておけば、暗号処理ミドルウェア部251内のAPIを切り替えることで、ユーザの使い勝手に従って、キーボード機能として使用させる場合、汎用のカードリーダとして使用させる場合と簡単に行うことが可能となっている。
In the present embodiment, even a card reader used as a keyboard function can be used as a general-purpose card reader.
In other words, when a general-purpose card reader, which is not conventionally implemented as a keyboard interface, is connected, the code used is different from the scan code and the ASCII code, so the application for processing it is different. So can not be used. Therefore, it is necessary to significantly change the application of the card reader, and in this technology, only be possible when using applications as a keyboard, a data card reader has read, (used as a general-purpose card reader) Financial Database It cannot be used in applications that collate information.
On the other hand, in this embodiment, since the keyboard function is realized using the ASCII code, as shown in FIG. 2, if the general-purpose application 253 and the conversion resident application 252 are stored, the cryptographic processing middleware unit 251 is stored. By switching the API, the user can easily use the keyboard function or the general-purpose card reader according to the user's convenience.

[他の実施形態]
本実施形態では、上位装置と情報処理装置とを接続する第1の通信部をUSB接続としたが、RS−232C接続やLAN等、通信の形態は問わない。
また、表示するアプリケーションとしてテキストエディタを一例として示したが、ログイン画面のIDやパスワード入力であっても使用することができる。
また、本実施形態では、スワイプ式のカードリーダを例に説明したが、ディップ式やモータ式など、カードの搬送方法に制限されることはない。
また、本実施形態では、情報処理装置をカードリーダとして説明したが、バーコードスキャナやその他の入力装置においても適用することが可能である。
[Other Embodiments]
In the present embodiment, the first communication unit that connects the host device and the information processing device is a USB connection, but the communication form is not limited, such as an RS-232C connection or a LAN.
In addition, although a text editor is shown as an example of an application to be displayed, it can be used even for login screen ID and password input.
In the present embodiment, the swipe type card reader has been described as an example. However, the present invention is not limited to a card transport method such as a dip type or a motor type.
In the present embodiment, the information processing apparatus has been described as a card reader. However, the present invention can also be applied to a barcode scanner or other input devices.

なお、以上詳細に説明した方法は、上記手順に応じたプログラムとして形成し、CPU等のコンピュータで実行するように構成することも可能である。
また、このようなプログラムは、半導体メモリ、磁気ディスク、光ディスク、フロッピー(登録商標)ディスク等の記録媒体、この記録媒体をセットしたコンピュータによりアクセスし上記プログラムを実行するように構成可能である。
Note that the method described above in detail can be formed as a program according to the above-described procedure and executed by a computer such as a CPU.
Further, such a program can be configured to be accessed by a recording medium such as a semiconductor memory, a magnetic disk, an optical disk, a floppy (registered trademark) disk, or the like, and to execute the program by a computer in which the recording medium is set.

10・・・情報処理システムは、20・・・上位装置(ホスト装置)、210・・・ハードウェアシステム、211・・・CPU、212・・・ROM、213・・・RAM、214・・・ストレージユニット、215・・・USBコントローラ、216・・・キーボードコントローラ、217・・・ディスプレイ、218・・・バス(BUS)、
220・・・ソフトウェアシステム、230・・・ドライバ部(カーネルモード部)、231・・・USBドライバ、232・・・キーボードドライバ、240・・・OS部、241・・・OS,250・・・ミドルウェアおよびアプリケーション部(ユーザモード部)、251・・・暗号処理ミドルウェア部(第1の暗号化処理手段)、252・・・変換用常駐アプリケーション(第1のアプリケーション)、253・・・汎用アプリケーション(第2のアプリケーション)、254・・・文字入力アプリケーション、30・・・カードリーダ、31・・・CPU、32・・・ROM、33・・・RAM、310・・・磁気ヘッド、320・・・デコード部、330・・・暗号処理部(第2の暗号化処理手段)、340・・・USBコントローラ、40・・・キーボード装置、410・・・キーボード、420・・・キーボードコントローラ、50・・・カード、60・・・第1の通信部、70・・・第2の通信部。

10 ... Information processing system includes 20 ... host device (host device), 210 ... hardware system, 211 ... CPU, 212 ... ROM, 213 ... RAM, 214 ... Storage unit, 215 ... USB controller, 216 ... Keyboard controller, 217 ... Display, 218 ... Bus (BUS),
220 ... Software system, 230 ... Driver part (kernel mode part), 231 ... USB driver, 232 ... Keyboard driver, 240 ... OS part, 241 ... OS, 250 ... Middleware and application section (user mode section), 251... Cryptographic processing middleware section (first encryption processing means), 252... Resident application for conversion (first application), 253. 2nd application), 254 ... character input application, 30 ... card reader, 31 ... CPU, 32 ... ROM, 33 ... RAM, 310 ... magnetic head, 320 ... Decoding unit, 330 ... Encryption processing unit (second encryption processing means), 340 ... USB controller Roller, 40 ... keyboard device, 410 ... keyboard, 420 ... keyboard controller, 50 ... card, 60 ... first communication unit, 70 ... second communication unit.

Claims (4)

上位装置と情報処理装置との間で情報の送受信を行う情報処理システムであって、
前記情報処理装置と前記上位装置との間で情報の送受信を行う際に当該情報を暗号化する暗号化処理手段と、
前記上位装置に配置され、前記情報処理装置において前記暗号化処理手段により暗号化されて送信された共通言語で表現された共通コードを仮想コードに変換する変換手段と、
前記上位装置に配置され、前記変換手段で変換された仮想コードに基づく情報を出力する出力手段と
を有し、
前記上位装置は、
前記情報処理装置に送信する情報を暗号化し、前記情報処理装置から受信する暗号化された情報を復号し、復号した情報を前記変換手段に出力する第1の暗号化処理手段を含み、
前記情報処理装置は、
前記上位装置に送信する情報を暗号化し、前記上位装置から受信する暗号化された情報を復号する第2の暗号化処理手段を含み、
前記情報処理装置は、カードリーダであって、
カード状媒体のデータを読み取るヘッドと、
前記ヘッドで読み取られ、復調された復調データをデコードし、共通言語で表現されるコードであるASCIIコードの文字列のデータとして生成するデコード手段と、を含み、
前記第2の暗号化処理手段は、
前記ASCIIコードを暗号化して前記上位装置に送信し、
前記上位装置の変換手段は、
前記カードリーダから出力される暗号化された前記ASCIIコードを仮想コードに変換する
情報処理システム。
An information processing system that transmits and receives information between a host device and an information processing device,
An encryption processing means for encrypting the information when transmitting and receiving information between the information processing apparatus and the host apparatus;
A conversion unit that is arranged in the host device and converts the common code expressed in the common language that is encrypted and transmitted by the encryption processing unit in the information processing device into a virtual code;
Wherein arranged in the upper apparatus, possess and output means for outputting information based on the converted virtual code by said converting means,
The host device is
Including first encryption processing means for encrypting information to be transmitted to the information processing apparatus, decrypting encrypted information received from the information processing apparatus, and outputting the decrypted information to the conversion means,
The information processing apparatus includes:
Second encryption processing means for encrypting information to be transmitted to the host device and decrypting encrypted information received from the host device;
The information processing apparatus is a card reader,
A head for reading data on a card-like medium;
Decoding means that decodes demodulated data that is read and demodulated by the head, and generates character string data of an ASCII code that is a code expressed in a common language,
The second encryption processing means includes:
Encrypt the ASCII code and send it to the host device;
The conversion means of the host device is
An information processing system for converting the encrypted ASCII code output from the card reader into a virtual code .
前記上位装置は、
第1のアプリケーションとしての前記変換手段と、
供給されるデータに対する読み取り処理を行う第2のアプリケーションとしての汎用処理手段と、を含み、
前記第1の暗号化処理手段は、
アプリケーションインターフェースを含み、指示に従って、当該アプリケーションインターフェースを、前記第1のアプリケーション用とするかまたは前記第2のアプリケーション用とするかを設定可能であり、
前記アプリケーションインターフェースが第1のアプリケーション用として設定されている場合には、復号した情報を前記変換手段に出力し、
前記アプリケーションインターフェースが第2のアプリケーション用として設定されている場合には、復号した情報を前記汎用処理手段に出力する
請求項1記載の情報処理システム。
The host device is
The converting means as a first application;
General-purpose processing means as a second application that performs a reading process on the supplied data,
The first encryption processing means includes:
Including an application interface, and according to the instruction, it is possible to set whether the application interface is for the first application or the second application,
If the application interface is set for the first application, the decrypted information is output to the conversion means,
The information processing system according to claim 1, wherein when the application interface is set for a second application, the decrypted information is output to the general-purpose processing unit.
上位装置と情報処理装置との間で情報の送受信を行う情報処理方法であって、
前記情報処理装置と前記上位装置との間で情報の送受信を行う際に当該情報を暗号化する暗号化処理ステップと、
前記情報処理装置において前記暗号化処理ステップにより共通言語で表現された共通コードを暗号化して前記上位装置に送信する送信ステップと、
前記上位装置側で、前記情報処理装置において前記暗号化処理ステップにより暗号化されて送信された共通言語で表現された共通コードを仮想コードに変換する変換ステップと、
前記変換ステップで変換された仮想コードに基づく情報を出力する出力ステップと
を有し、
前記上位装置の処理として、
前記情報処理装置に送信する情報を暗号化し、前記情報処理装置から受信する暗号化された情報を復号し、復号した情報を前記変換ステップに供給する第1の暗号化処理ステップを含み、
前記情報処理装置の処理として、
前記上位装置に送信する情報を暗号化し、前記上位装置から受信する暗号化された情報を復号する第2の暗号化処理ステップを含み、
前記情報処理装置は、カードリーダであって、カードリーダの処理として、
カード状媒体のデータをヘッドで読み取り、復調された復調データをデコードし、共通言語で表現されるコードであるASCIIコードの文字列のデータとして生成するデコードステップ、を含み、
前記第2の暗号化処理ステップは、
前記ASCIIコードを暗号化して前記上位装置に送信し、
前記上位装置において、
前記第1の暗号化処理ステップは、
前記カードリーダから出力される暗号化されているASCIIコードを復号し、復号したASCIIコードを所定のアプリケーションとしての前記変換ステップに供給し、
前記変換ステップは、
前記ASCIIコードを仮想コードに変換する
情報処理方法。
An information processing method for transmitting and receiving information between a host device and an information processing device,
An encryption processing step for encrypting the information when transmitting / receiving the information between the information processing device and the host device;
A transmission step of encrypting a common code expressed in a common language by the encryption processing step in the information processing device and transmitting the encrypted code to the host device;
On the host device side, a conversion step of converting a common code expressed in a common language encrypted and transmitted by the encryption processing step in the information processing device into a virtual code;
An output step of outputting information based on the virtual code converted in the conversion step,
As the processing of the host device,
A first encryption processing step that encrypts information to be transmitted to the information processing device, decrypts encrypted information received from the information processing device, and supplies the decrypted information to the conversion step;
As the processing of the information processing apparatus,
Including a second encryption processing step of encrypting information to be transmitted to the host device and decrypting encrypted information received from the host device;
The information processing apparatus is a card reader, and as processing of the card reader,
A decoding step of reading data of the card-like medium with a head, decoding the demodulated demodulated data, and generating as character string data of an ASCII code that is a code expressed in a common language;
The second encryption processing step includes:
Encrypt the ASCII code and send it to the host device;
In the host device,
The first encryption processing step includes:
Decrypting the encrypted ASCII code output from the card reader, and supplying the decrypted ASCII code to the conversion step as a predetermined application;
The converting step includes
An information processing method for converting the ASCII code into a virtual code .
前記上位装置の処理として、
第1のアプリケーションとしての前記変換ステップと、
供給されるデータに対する読み取り処理を行う第2のアプリケーションとしての汎用処理ステップと、を含み、
前記第1の暗号化処理ステップは、
指示に従って、アプリケーションインターフェースを、前記第1のアプリケーション用とするかまたは前記第2のアプリケーション用とするかを設定可能であり、
前記アプリケーションインターフェースが第1のアプリケーション用として設定されている場合には、復号した情報を前記変換ステップに供給し、
前記アプリケーションインターフェースが第2のアプリケーション用として設定されている場合には、復号した情報を前記汎用処理ステップに供給する
請求項3記載の情報処理方法。
As the processing of the host device,
The conversion step as a first application;
A general-purpose processing step as a second application for performing a reading process on the supplied data,
The first encryption processing step includes:
According to the instruction, it is possible to set whether the application interface is for the first application or the second application,
If the application interface is configured for the first application, the decrypted information is supplied to the conversion step;
The information processing method according to claim 3, wherein when the application interface is set for a second application, the decrypted information is supplied to the general-purpose processing step.
JP2013203248A 2013-09-30 2013-09-30 Information processing system and information processing method Expired - Fee Related JP6289850B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013203248A JP6289850B2 (en) 2013-09-30 2013-09-30 Information processing system and information processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013203248A JP6289850B2 (en) 2013-09-30 2013-09-30 Information processing system and information processing method

Publications (2)

Publication Number Publication Date
JP2015069425A JP2015069425A (en) 2015-04-13
JP6289850B2 true JP6289850B2 (en) 2018-03-07

Family

ID=52836020

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013203248A Expired - Fee Related JP6289850B2 (en) 2013-09-30 2013-09-30 Information processing system and information processing method

Country Status (1)

Country Link
JP (1) JP6289850B2 (en)

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6383893A (en) * 1986-09-27 1988-04-14 Toshiba Corp Magnetic information reading system
JPS63219256A (en) * 1987-03-09 1988-09-12 Mitsubishi Electric Corp Automatic dialing device
JPH05264535A (en) * 1992-03-19 1993-10-12 Fuji Photo Film Co Ltd Measuring system for analysis slide, information recording magnetic card and analyzer
JPH09245029A (en) * 1996-03-07 1997-09-19 Pfu Ltd A method for unifying the operability between similar-function software in a computer system
JP2001256568A (en) * 2000-03-13 2001-09-21 Matsushita Electric Ind Co Ltd Payment terminal and payment system
JP2001318875A (en) * 2000-05-08 2001-11-16 Komuzu:Kk System for preventing data burglary of computer
JP2002056606A (en) * 2000-08-11 2002-02-22 Nec Infrontia Corp Magnetic card reader
JP2006268423A (en) * 2005-03-24 2006-10-05 Matsushita Electric Ind Co Ltd Information equipment and remote control system
JP4611147B2 (en) * 2005-08-15 2011-01-12 富士通コンポーネント株式会社 Remote operation system and remote operation method

Also Published As

Publication number Publication date
JP2015069425A (en) 2015-04-13

Similar Documents

Publication Publication Date Title
US8122172B2 (en) Portable information security device
JP2005166049A (en) Memory storage device having fingerprint sensor, and method for protecting data stored therein
US20080028227A1 (en) Information processing system, information processing apparatus, mobile terminal and access control method
CN101339597A (en) A method, system and device for upgrading reader-writer firmware
JP2008004098A (en) Financial transaction terminal for processing information medium conforming to usb interface standard, and working method thereof
CN102968325B (en) A kind of USB device and the method and apparatus of auto-initiation thereof
JP2003030613A (en) Storage device and data processing device provided with storage device
US20070079138A1 (en) Storage device and method for protecting data stored therein
CN108460905A (en) A kind of external card reader, terminal device and data processing method
JP2005276025A (en) Reader / writer, portable information storage medium system, and reader / writer program
JP6289850B2 (en) Information processing system and information processing method
JP7770828B2 (en) Information management system and personal information server
KR102211599B1 (en) Smart card and control method therof
JP5587401B2 (en) Keyboard input data security system and method
US20160314388A1 (en) Data processing device for ic card issuance and ic card issuance data generation method
CN1845183B (en) A smart key device with debit and credit functions
JP7493402B2 (en) Payment system and payment method
JP6910166B2 (en) Authentication mediator and authentication mediation program
JP7435586B2 (en) Information processing device, mobile terminal, and information processing method
JP2015203909A (en) Contact IC card activation system and method
JP2003203207A (en) IC card issuing device and IC card issuing method
CN215495020U (en) Private storage device with safety encryption chip
EP4305536B1 (en) Method for controlling an apparatus
JP2021026651A (en) Information processing system, information processor, and program
JP4872553B2 (en) Information processing apparatus and method for automatically recovering connection failure of USB device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160808

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170621

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170627

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170824

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20171121

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180207

R150 Certificate of patent or registration of utility model

Ref document number: 6289850

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees