図面 (/)

この項目の情報は公開日時点(2015年4月13日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (9)

課題

各国の言語に対応したキーボードキー配列の影響を受けにくく、しかも情報の機密性を保持することが可能な情報処理システムおよび情報処理方法を提供する。

解決手段

上位装置20と情報処理装置30との間で情報の送受信を行う情報処理システム10であって、情報処理装置30と上位装置20との間で情報の送受信を行う際にこの情報を暗号化する暗号化処理部251,330と、上位装置20に配置され、情報処理装置30において暗号化処理部330により暗号化されて送信された共通言語表現された共通コード仮想コードに変換する変換部252と、上位装置20に配置され、変換部252で変換された仮想コードに基づく情報を出力する出力部254とを有する。

概要

背景

通常、カードリーダ等の情報処理装置電子機器装置)は通信線を介して上位装置と接続され、上位装置からの指令に従って処理を実行するように構成されている。
このように、上位装置と情報処理装置(下位装置)との通信確立するためには、一般的に、RS232C方式パラレルポート方式、USB(Universal Serial Bus)接続方式など種々の通信方式が採用されている。

また、カードリーダやバーコードリーダ等の情報処理装置には、キーボード機能(『キーボードインターフェース』と呼ばれる場合もある)を備えたものが知られている(たとえば特許文献1参照)。
すなわち、キーボードと同じ要領でP/S2規格や、USB規格に則り、スキャンコード(Usage)を送り、読み取ったデータを上位装置側アプリケーションで表示するという技術が使われているものがある。

一般に、キーボードの各キーは、スキャンコードと呼ばれる固有のIDを持っている。
キーコードは、キートップ表面に印刷された文字ではなく、キースイッチの位置に対して割り付けられている。
たとえば、“A”と印字されたキートップのキーを押した場合でも、キーボードは“A”のコードを発行しているわけではない。
キーボードは、キーを押した際、離した際にキーコードをCPU等のキーボードコントローラに送信する。
キーボードは、そのキー配置が国やキーボードの種類によって異なっており、キーボードにはいくつかのモデルがあるが、スイッチ数と形状が同じであれば、キートップの印刷内容は異なっても、同じ位置のキースイッチは同じスキャンコードを持っている。
キーボードコントローラでは、キーボードから受け取ったスキャンコードからキー入力を組み立て、キーコードを作成する。
そして、設定された国コードおよびキーボードタイプにより、どのスキャンコード(どこの位置のキー)を受け取った際に、どの文字(仮想キーコード)に変換するか決められている。
そのため、その変換テーブルを切り替えることで所望のキーボードになるように設定することができる。

特許文献1に記載の装置においては、キーボードコントローラを有するコンピュータにキーボードとバーコードリーダが接続されている。
キーボードコントローラは、キーボードの所定のキーが押されると、キーの押された位置を、スキャンコードの信号として上位装置側に通知する。
上位装置側では、受け取ったスキャンコードを仮想キーコードとしてオペレーティングシステム(OS)に通知する。

仮想キーコードは、OS独自のコードで定められており、OS内で共通に利用されるキーのコードである。OSは、受け取った仮想キーコードを、起動している各アプリケーション(文書作成ソフトなど)に通知し、これを受けたアプリケーションは、文字を出力する。

また、キーボードコントローラは、バーコードリーダで読み取られたデータをキーボードデータとして上位装置に出力する。上位装置では、上記したキーボードで入力されたデータと同様の処理が行われる。

以上が、OS上におけるP/S2規格でのキーボード・インターフェースの基本的な構成および機能であるが、これ以外に、USB規格でのキーボード・インターフェースがある。
このUSB規格でのキーボードは、ヒューマンインタフェースデバイス(HID)クラスとして実装される。
この場合、スキャンコードに相当するものにUsageというもがあるが、基本的には、上述したP/S2規格でのキーボード・インターフェースと同様である。

概要

各国の言語に対応したキーボードのキー配列の影響を受けにくく、しかも情報の機密性を保持することが可能な情報処理システムおよび情報処理方法を提供する。上位装置20と情報処理装置30との間で情報の送受信を行う情報処理システム10であって、情報処理装置30と上位装置20との間で情報の送受信を行う際にこの情報を暗号化する暗号化処理部251,330と、上位装置20に配置され、情報処理装置30において暗号化処理部330により暗号化されて送信された共通言語表現された共通コード仮想コードに変換する変換部252と、上位装置20に配置され、変換部252で変換された仮想コードに基づく情報を出力する出力部254とを有する。

目的

本発明の目的は、たとえば各国の言語に対応したキーボードのキー配列の影響を受けにくく、しかも情報の機密性を保持することが可能な情報処理システムおよび情報処理方法を提供する

効果

実績

技術文献被引用数
0件
牽制数
0件

この技術が所属する分野

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

上位装置と情報処理装置との間で情報の送受信を行う情報処理システムであって、前記情報処理装置と前記上位装置との間で情報の送受信を行う際に当該情報を暗号化する暗号化処理手段と、前記上位装置に配置され、前記情報処理装置において前記暗号化処理手段により暗号化されて送信された共通言語表現された共通コード仮想コードに変換する変換手段と、前記上位装置に配置され、前記変換手段で変換された仮想コードに基づく情報を出力する出力手段とを有する情報処理システム。

請求項2

前記上位装置は、前記情報処理装置に送信する情報を暗号化し、前記情報処理装置から受信する暗号化された情報を復号し、復号した情報を前記変換手段に出力する第1の暗号化処理手段を含み、前記情報処理装置は、前記上位装置に送信する情報を暗号化し、前記上位装置から受信する暗号化された情報を復号する第2の暗号化処理手段を含む請求項1記載の情報処理システム。

請求項3

前記上位装置は、第1のアプリケーションとしての前記変換手段と、供給されるデータに対する読み取り処理を行う第2のアプリケーションとしての汎用処理手段と、を含み、前記第1の暗号化処理手段は、アプリケーションインターフェースを含み、指示に従って、当該アプリケーションインターフェースを、前記第1のアプリケーション用とするかまたは前記第2のアプリケーション用とするかを設定可能であり、前記アプリケーションインターフェースが第1のアプリケーション用として設定されている場合には、復号した情報を前記変換手段に出力し、前記アプリケーションインターフェースが第2のアプリケーション用として設定されている場合には、復号した情報を前記汎用処理手段に出力する請求項2記載の情報処理システム。

請求項4

前記情報処理装置は、カードリーダであって、カード状媒体のデータを読み取るヘッドと、前記ヘッドで読み取られ、復調された復調データをデコードし、共通言語で表現されるコードであるASCIIコード文字列のデータとして生成するデコード手段と、を含み、前記第2の暗号化処理手段は、前記ASCIIコードを暗号化して前記上位装置に送信する請求項2または3記載の情報処理システム。

請求項5

上位装置と情報処理装置との間で情報の送受信を行う情報処理方法であって、前記情報処理装置と前記上位装置との間で情報の送受信を行う際に当該情報を暗号化する暗号化処理ステップと、前記情報処理装置において前記暗号化処理ステップにより共通言語で表現された共通コードを暗号化して前記上位装置に送信する送信ステップと、前記上位装置側で、前記情報処理装置において前記暗号化処理手段により暗号化されて送信された共通言語で表現された共通コードを仮想コードに変換する変換ステップと、前記変換ステップで変換された仮想コードに基づく情報を出力する出力ステップとを有する情報処理方法。

請求項6

前記上位装置の処理として、前記情報処理装置に送信する情報を暗号化し、前記情報処理装置から受信する暗号化された情報を復号し、復号した情報を前記変換ステップに供給する第1の暗号化処理ステップを含み、前記情報処理装置の処理として、前記上位装置に送信する情報を暗号化し、前記上位装置から受信する暗号化された情報を復号する第2の暗号化処理ステップを含む請求項5記載の情報処理方法。

請求項7

前記上位装置の処理として、第1のアプリケーションとしての前記変換ステップと、供給されるデータに対する読み取り処理を行う第2のアプリケーションとしての汎用処理ステップと、を含み、前記第1の暗号化処理ステップは、指示に従って、アプリケーションインターフェースを、前記第1のアプリケーション用とするかまたは前記第2のアプリケーション用とするかを設定可能であり、前記アプリケーションインターフェースが第1のアプリケーション用として設定されている場合には、復号した情報を前記変換ステップに供給し、前記アプリケーションインターフェースが第2のアプリケーション用として設定されている場合には、復号した情報を前記汎用処理ステップに供給する請求項6記載の情報処理方法。

請求項8

前記情報処理装置は、カードリーダであって、カードリーダの処理として、カード状媒体のデータをヘッドで読み取り、復調された復調データをデコードし、共通言語で表現されるコードであるASCIIコードの文字列のデータとして生成するデコードステップ、を含み、前記第2の暗号化処理ステップは、前記ASCIIコードを暗号化して前記上位装置に送信し、前記上位装置において、前記第1の暗号化処理ステップは、暗号化されているASCIIコードを復号し、復号したASCIIコードを所定のアプリケーションに供給する請求項6または7記載の情報処理方法。

技術分野

0001

本発明は、上位装置とカードリーダバーコードリーダ等の情報処理装置との間で情報の送受信を行う情報処理システムにおよび情報処理方法に関するものである。

背景技術

0002

通常、カードリーダ等の情報処理装置(電子機器装置)は通信線を介して上位装置と接続され、上位装置からの指令に従って処理を実行するように構成されている。
このように、上位装置と情報処理装置(下位装置)との通信確立するためには、一般的に、RS232C方式パラレルポート方式、USB(Universal Serial Bus)接続方式など種々の通信方式が採用されている。

0003

また、カードリーダやバーコードリーダ等の情報処理装置には、キーボード機能(『キーボードインターフェース』と呼ばれる場合もある)を備えたものが知られている(たとえば特許文献1参照)。
すなわち、キーボードと同じ要領でP/S2規格や、USB規格に則り、スキャンコード(Usage)を送り、読み取ったデータを上位装置側アプリケーションで表示するという技術が使われているものがある。

0004

一般に、キーボードの各キーは、スキャンコードと呼ばれる固有のIDを持っている。
キーコードは、キートップ表面に印刷された文字ではなく、キースイッチの位置に対して割り付けられている。
たとえば、“A”と印字されたキートップのキーを押した場合でも、キーボードは“A”のコードを発行しているわけではない。
キーボードは、キーを押した際、離した際にキーコードをCPU等のキーボードコントローラに送信する。
キーボードは、そのキー配置が国やキーボードの種類によって異なっており、キーボードにはいくつかのモデルがあるが、スイッチ数と形状が同じであれば、キートップの印刷内容は異なっても、同じ位置のキースイッチは同じスキャンコードを持っている。
キーボードコントローラでは、キーボードから受け取ったスキャンコードからキー入力を組み立て、キーコードを作成する。
そして、設定された国コードおよびキーボードタイプにより、どのスキャンコード(どこの位置のキー)を受け取った際に、どの文字(仮想キーコード)に変換するか決められている。
そのため、その変換テーブルを切り替えることで所望のキーボードになるように設定することができる。

0005

特許文献1に記載の装置においては、キーボードコントローラを有するコンピュータにキーボードとバーコードリーダが接続されている。
キーボードコントローラは、キーボードの所定のキーが押されると、キーの押された位置を、スキャンコードの信号として上位装置側に通知する。
上位装置側では、受け取ったスキャンコードを仮想キーコードとしてオペレーティングシステム(OS)に通知する。

0006

仮想キーコードは、OS独自のコードで定められており、OS内で共通に利用されるキーのコードである。OSは、受け取った仮想キーコードを、起動している各アプリケーション(文書作成ソフトなど)に通知し、これを受けたアプリケーションは、文字を出力する。

0007

また、キーボードコントローラは、バーコードリーダで読み取られたデータをキーボードデータとして上位装置に出力する。上位装置では、上記したキーボードで入力されたデータと同様の処理が行われる。

0008

以上が、OS上におけるP/S2規格でのキーボード・インターフェースの基本的な構成および機能であるが、これ以外に、USB規格でのキーボード・インターフェースがある。
このUSB規格でのキーボードは、ヒューマンインタフェースデバイス(HID)クラスとして実装される。
この場合、スキャンコードに相当するものにUsageというもがあるが、基本的には、上述したP/S2規格でのキーボード・インターフェースと同様である。

先行技術

0009

特開平7−36594号公報
特開2006−268423号公報

発明が解決しようとする課題

0010

しかしながら、上述したキーボード・インターフェースでは、キーボードのキー配列は、米国(US)では101/104英語キーボード、ヨーロッパでは102/105多国語(Multi Language)キーボード、日本では106/109日本語キーボードが主流である。
このように、キーに印字されている文字が違うため、前述したように、必ずしも、スキャンコード(またはUsage)と文字は一致しているわけではない。

0011

一方、近年、カードリーダで読み取られた情報を上位装置に送信する際、スキミングと呼ばれる不正行為により、カードに記録されている情報を読み取られる可能性があるため、セキュリティ強化への要望が高い。
そのため、カードリーダと上位装置との間で情報をやり取りする際に、情報を暗号化させる技術が提案されている(たとえば、特許文献2参照)。

0012

しかしながら、特許文献2に示すカードリーダにおけるキーボード機能(キーボード・インターフェース)では、特許文献2の図3、4に示すように、各キーごとに情報を送信するため、キーごとに暗号化処理復号化処理が実行される。
そのため、情報の送受信が煩雑となるという不利益がある。

0013

本発明の目的は、たとえば各国の言語に対応したキーボードのキー配列の影響を受けにくく、しかも情報の機密性を保持することが可能な情報処理システムおよび情報処理方法を提供することにある。

課題を解決するための手段

0014

本発明の第1の観点は、上位装置と情報処理装置との間で情報の送受信を行う情報処理システムであって、前記情報処理装置と前記上位装置との間で情報の送受信を行う際に当該情報を暗号化する暗号化処理手段と、前記上位装置に配置され、前記情報処理装置において前記暗号化処理手段により暗号化されて送信された共通言語表現された共通コード仮想コードに変換する変換手段と、前記上位装置に配置され、前記変換手段で変換された仮想コードに基づく情報を出力する出力手段と、を有する。

0015

これにより、各国の言語に対応したキーボードのキー配列の影響を受けにくく、しかも情報の機密性を保持することが可能となる。

0016

好適には、前記上位装置は、前記情報処理装置に送信する情報を暗号化し、前記情報処理装置から受信する暗号化された情報を復号し、復号した情報を前記変換手段に出力する第1の暗号化処理手段を含み、前記情報処理装置は、前記上位装置に送信する情報を暗号化し、前記上位装置から受信する暗号化された情報を復号する第2の暗号化処理手段を含む。
これにより、情報の高い機密性を保持することが可能となる。

0017

好適には、前記上位装置は、第1のアプリケーションとしての前記変換手段と、供給されるデータに対する読み取り処理を行う第2のアプリケーションとしての汎用処理手段と、を含み、前記第1の暗号化処理手段は、アプリケーションインターフェースを含み、指示に従って、当該アプリケーションインターフェースを、前記第1のアプリケーション用とするかまたは前記第2のアプリケーション用とするかを設定可能であり、前記アプリケーションインターフェースが第1のアプリケーション用として設定されている場合には、復号した情報を前記変換手段に出力し、前記アプリケーションインターフェースが第2のアプリケーション用として設定されている場合には、復号した情報を前記汎用処理手段に出力する。
これにより、APIを切り替えることで、ユーザの使い勝手に従って、キーボード機能として使用させる場合、汎用装置、たとえばカードリーダとして使用させる場合と簡単に行うことが可能となる。

0018

好適には、前記情報処理装置は、カードリーダであって、カード状媒体のデータを読み取るヘッドと、前記ヘッドで読み取られ、復調された復調データをデコードし、共通言語で表現されるコードであるASCIIコードの文字列のデータとして生成するデコード手段と、を含み、前記第2の暗号化処理手段は、前記ASCIIコードを暗号化して前記上位装置に送信する。
これにより、ASCIIコードを用いてキーボード機能を実現することができ、汎用の第2のアプリケーションおよび変換用の第1のアプリケーションを格納しておけば、暗号化処理手段内のAPIを切り替えることで、ユーザの使い勝手に従って、キーボード機能として使用させる場合、汎用のカードリーダとして使用させる場合と簡単に行うことが可能となる。

0019

本発明の第2の観点は、上位装置と情報処理装置との間で情報の送受信を行う情報処理方法であって、前記情報処理装置と前記上位装置との間で情報の送受信を行う際に当該情報を暗号化する暗号化処理ステップと、前記情報処理装置において前記暗号化処理ステップにより共通言語で表現された共通コードを暗号化して前記上位装置に送信する送信ステップと、前記上位装置側で、前記情報処理装置において前記暗号化処理手段により暗号化されて送信された共通言語で表現された共通コードを仮想コードに変換する変換ステップと、前記変換ステップで変換された仮想コードに基づく情報を出力する出力ステップと、を有する。

0020

これにより、各国の言語に対応したキーボードのキー配列の影響を受けにくく、しかも情報の機密性を保持することが可能となる。

0021

好適には、前記上位装置の処理として、前記情報処理装置に送信する情報を暗号化し、前記情報処理装置から受信する暗号化された情報を復号し、復号した情報を前記変換手ステップに供給する第1の暗号化処理ステップを含み、前記情報処理装置の処理として、前記上位装置に送信する情報を暗号化し、前記上位装置から受信する暗号化された情報を復号する第2の暗号化処理ステップを含む。
これにより、情報の高い機密性を保持することが可能となる。

0022

好適には、前記上位装置の処理として、第1のアプリケーションとしての前記変換ステップと、供給されるデータに対する読み取り処理を行う第2のアプリケーションとしての汎用処理ステップと、を含み、前記第1の暗号化処理ステップは、指示に従って、アプリケーションインターフェースを、前記第1のアプリケーション用とするかまたは前記第2のアプリケーション用とするかを設定可能であり、前記アプリケーションインターフェースが第1のアプリケーション用として設定されている場合には、復号した情報を前記変換ステップに供給し、前記アプリケーションインターフェースが第2のアプリケーション用として設定されている場合には、復号した情報を前記汎用処理ステップに供給する。
これにより、APIを切り替えることで、ユーザの使い勝手に従って、キーボード機能として使用させる場合、汎用装置、たとえばカードリーダとして使用させる場合と簡単に行うことが可能となる。

0023

好適には、前記情報処理装置は、カードリーダであって、カードリーダの処理として、カード状媒体のデータをヘッドで読み取り、復調された復調データをデコードし、共通言語で表現されるコードであるASCIIコードの文字列のデータとして生成するデコードステップを含み、前記第2の暗号化処理ステップは、前記ASCIIコードを暗号化して前記上位装置に送信し、前記上位装置において、前記第1の暗号化処理ステップは、暗号化されているASCIIコードを復号し、復号したASCIIコードを所定のアプリケーションに供給する。
これにより、ASCIIコードを用いてキーボード機能を実現することができ、汎用の第2のアプリケーションおよび変換用の第1のアプリケーションを格納しておけば、暗号化処理手段内のAPIを切り替えることで、ユーザの使い勝手に従って、キーボード機能として使用させる場合、汎用のカードリーダとして使用させる場合と簡単に行うことが可能となる。

発明の効果

0024

本発明によれば、各国の言語に対応したキーボードのキー配列の影響を受けにくく、しかも情報の機密性を保持することが可能となる。

図面の簡単な説明

0025

本発明の実施形態に係る情報処理システムの概要を示す図である。
本発明の実施形態に係る情報処理システムの概要を示すブロック図である。
本実施形態に係る暗号化処理手段としての上位装置側の暗号処理ミドルウェア部およびカードリーダ側の暗号処理部の構成例を示すブロック図である。
本実施形態に係る暗号処理ミドルウェア部におけるAPI切り替え部の構成例を示す機能ブロック図である。
本実施形態において、キーボード機能として使用する場合の変換用常駐アプリケーションを説明するためのフローチャートである。
変換等常駐アプリケーションの変換処理を説明するためのフローチャートである。
本実施形態において、カードリーダとして機能させる場合の金融アプリケーションの処理を説明するためのフローチャートである。
本実施形態に係る情報処理システムの全体的な動作概要を説明するための図である。

実施例

0026

以下、本発明の実施形態を図面に関連付けて説明する。
以下の実施形態においては、情報処理装置として磁気カード等のカードリーダを例に説明する。ただし、本発明はカードリーダに限らず、電子機器装置としてのバーコードリーダ等にも適用可能である。

0027

図1は、本発明の実施形態に係る情報処理システムの概要を示す図である。
図2は、本発明の実施形態に係る情報処理システムの概要を示すブロック図である。

0028

情報処理システム10は、上位装置(ホスト装置)20、情報処理装置としてのカードリーダ30、キーボード装置40、および情報カード(以下、単にカードという)50を含んで構成されている。
なお、本実施形態において、キーボード装置40が接続された構成として示しているが、キーボード装置40が接続されていない構成も可能である。

0029

本実施形態において、上位装置20はパーソナルコンピュータ(PC)やATM(Automated Teller Machine)、POS(Point of sale system)レジスタ端末等により構成される。
上位装置20には、第1の通信部60を通して情報処理装置としてのカードリーダ30が接続され、第2の通信部70を介してキーボード装置40が接続されている。

0030

第1の通信部60としては、RS232CやUSBなどの専用線有線の通信線)を用いた通信システムが適用され、本実施形態ではUSB通信システムが適用されている。したがって、本実施形態では、上位装置20とカードリーダ30はUSBケーブル61により接続されている。

0031

本実施形態において、第2の通信部70としては、P/S2通信規格に従った通信システムが適用され、上位装置20とキーボード装置40は図示しないP/S2コネクタが接続されたケーブル71により接続されている。

0032

以下、情報処理システム10の概要を説明した後、各部の具体的な構成および機能について説明する。

0033

[情報処理システム10の概要]
金融機関などで使用され、キャッシュレス個人認証などを実現するカードとして、たとえばプラスチック基板ストライプ状に磁気データが記録された磁気カード、プラスチック基板内部に集積回路チップICチップ)が埋め込まれ、表面にIC端子が配置されたICカード接触式ICカード)や内部にアンテナコイルが配置されたICカード(非接触式ICカード)がある。
そして、このカード(磁気カードまたはICカード)50に対する情報の再生または記録は、情報処理装置としてのカードリーダ30によって行われる。

0034

基本的に、カードリーダ30は、上位装置20からのコマンドを受信し、カード50との通信プロトコルに沿った形式に変換する。
そして、カードリーダ30は、電圧や通信速度等も変換した後に、そのコマンドをカード50に送信する。また、カードリーダ30は、カード50からの応答を受信した後、逆変換を行って、その応答を上位装置20に送信する。
カードリーダ30とカード50との間の通信は、TTLベルUSB通信等が一般的である。

0035

本実施形態に示すカードリーダ30を含む情報処理システム10の構成では、上位装置20が、文字入力アプリケーションの他に、金融等の汎用アプリケーション(第2のアプリケーション)と変換手段としての変換用常駐アプリケーション(第1のアプリケーション)を有している。
すなわち、本実施形態においては、たとえば、ATMに備えられたカードリーダ30において、金融機関等で、磁気記録データと、金融データベースとの照合を行う場合には、金融アプリケーションを起動し、信号(情報)処理を行う。
一方、PCのログインなど、キーボード機能(上述したキーボード・インターフェースと呼ばれる機能)として使用する場合は変換用常駐アプリケーションを起動し、信号(情報)処理を行う。
また、上位装置20は、暗号化処理および復号処理手段としての暗号処理ミドルウェア部を有している。

0036

本実施形態において、カードリーダ30は、カード50から読み取ったデータを復調し、復調データを共通言語で表現されたコード、本実施形態ではASCIIコードの文字列として生成し、生成したASCIIコードを、暗号キーを用いて暗号化し、この暗号化データを上位装置20に第1の通信部60を通して送信する。
上位装置20は、USB通信システムであるUSBコントローラUSBドライバ、さらにはOSを通して暗号化処理および復号処理手段としての暗号処理ミドルウェア部でカードリーダ30により送信された暗号化データを復号し、復号したASCIIコード等のデータを、アプリケーションインターフェースの設定状態に応じて変換用常駐アプリケーションまたは汎用アプリケーションに供給する。
変換手段としての変換用常駐アプリケーションは、ASCIIコードを仮想キーコードに変換し、OSを通して文字入力アプリケーションに供給する。
文字入力アプリケーションは、変換された仮想キーコードに基づく文字をディスプレイ画面上に出力する。
これにより、テキストエディタ等のアプリケーションにイベントメッセージとして配信等する。

0037

また、キーボード装置40のキーボードの所定のキーが押されると、キーボードコントローラによりキーの押された位置を、スキャンコードの信号として第2の通信部70を通して上位装置20側に通知する。
上位装置側20では、受け取ったスキャンコードをキーボードコントローラ、キーボードドライバ、さらにはOSを通して仮想キーコードとして文字入力アプリケーションに供給する。文字入力アプリケーションは、変換された仮想キーコードに基づく文字をディスプレイの画面上に出力する。

0038

このように、本実施形態では、磁気データの機密性を保持しつつ、キーボードから文字入力された場合と同様に、カード50のデータを文字として出力することが可能に構成されている。

0039

次に、上記構成を有する情報処理システム10の上位装置(ホスト装置)20、並びにカードリーダ(情報処理装置)30の具体的な構成および機能について説明する。

0040

[上位装置(ホスト装置)20の具体的な構成および機能]
本実施形態に係る上位装置(ホスト装置)20の具体的な構成および機能について説明する。
上位装置20は、上述したように、基本的に、カードリーダ30との間で、第1の通信部60のUSB通信システムを通して通信制御を行い、コマンドの送信に対応したレスポンス(応答)を受信する等の各種情報の授受を行って、カードリーダ30からの情報を取得する。
また、ここでの例では、上位装置20は、キーボード装置40との間で、第2の通信部70であるP/S2通信システムを介してして通信制御を行い、コマンドの送信に対応したレスポンス(応答)を受信する等の各種情報の授受を行って、キーボード装置40からのスキャンコードを受信する。

0041

図2は、本実施形態に係る上位装置20および情報処理装置であるカードリーダ30、キーボード装置40の構成例を概念的に示している。
図2の上位装置20は、ハードウェアシステム210およびソフトウェアシステム220を含んで構成されている。

0042

[ハードウェアシステム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により接続されている。

0043

USBコントローラ215は、USBケーブル61を介してカードリーダ30のUSBコントローラと接続されて、カードリーダ30との間で、第1の通信部60のUSB通信システムを通して通信制御を行い、コマンドの送信に対応したレスポンス(応答)を受信する等の各種情報の授受を行って、カードリーダ30からの情報を取得する。

0044

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通信の異常が検出されることもできる。

0045

キーボードコントローラ216は、P/S2通信用ケーブル71を介して入力装置としてのキーボード装置40と接続されて、キーボード装置40との間で、第2の通信部70であるP/S2通信システムを介して通信制御を行い、コマンドの送信に対応したレスポンス(応答)を受信する等の各種情報の授受を行って、キーボード装置40からのスキャンコードを受信する。

0046

上位装置20において、CPU211が全体の制御を行う。
上位装置20においては、ストレージユニット214内に保存されたOS(オペレーティングシステム)、ドライバ、ミドルウェアMW、アプリケーション等のプログラムがソフトウェアシステムの一部をなし、実行時にいわゆるコンピュータであるCPU211のソフトウェアとしてRAM213上に展開される。
CPU211は、RAM213にアクセスすることにより各種プログラムを起動する。

0047

[ソフトウェアシステム220の構成および機能]
ソフトウェアシステム220は、ドライバ部(カーネルモード部)230、OS部240、およびミドルウェアおよびアプリケーション部(ユーザモード部)250を含んで構成されている。

0048

ドライバ部230は、たとえばカーネルモードで動作するUSBドライバ231およびキーボードドライバ232を含み、OS部240に応じた機能を有する。

0049

USBドライバ231は、USB通信システムに関するハードウェアであるUSBコントローラ215を制御し、アプリケーションソフトウェアに対して抽象化したインターフェースを提供する。
USBドライバ231は、USB通信システムを経由してカードリーダ30と通信する機能を有し、プログラムからドライバ内のルーチン呼び出すと、USBドライバ231がコマンドを発行し、カードリーダ30からデータが送り返されてくると、元の読み出したプログラム内のルーチンを読み出す等する。

0050

キーボードドライバ232は、P/S2通信システムに関するハードウェアであるキーボードコントローラ216を制御し、アプリケーションソフトウェアに対して抽象化したインターフェースを提供する。
キーボードドライバ232は、P/S2通信システムを経由してキーボード装置40と通信する機能を有し、プログラムからドライバ内のルーチンを呼び出すと、キーボードドライバ232がコマンドを発行し、キーボード装置40からデータが送り返されてくると、元の読み出したプログラム内のルーチンを読み出す等する。

0051

OS部240は、USBドライバ231およびキーボードドライバ232において抽象化したインターフェースをアプリケーションソフトウェアに対して提供する。
OS241の中で、ハードウェアを直接管理操作するなどの最も中心的な機能の部分を、特にカーネルと呼んで分けることもある。この場合、カーネル以外の部分はユーザランドと呼ばれる。
本実施形態では、ドライバ部230がカーネル領域であり、ミドルウェアおよびアプリケーション部(ユーザモード部)250がユーザランド領域として形成されている。

0052

ミドルウェアおよびアプリケーション部(ユーザモード部)250は、第1の暗号化処理手段としての暗号処理ミドルウェア部251、第1のアプリケーションとしての変換用常駐アプリケーション252、第2のアプリケーションとしての金融等の汎用アプリケーション253、および文字入力アプリケーション254を含んで構成されている。
なお、汎用アプリケーション253は、汎用処理手段として機能する。

0053

暗号処理ミドルウェア部251は、第1の暗号化処理手段として機能し、第1の通信部60を構成するUSB通信システムを通してカードリーダ30とのデータの送受信にためのデータの送受信機能、並びに暗号化および復号化処理機能を有している。

0054

本実施形態において、情報処理装置としてのカードリーダ30またはホストコンピュータとしての上位装置20では、上位装置20またはカードリーダ30とデータのやり取りを行うとき、その過程秘密情報漏れても問題を発生させないために、やり取りするデータには暗号化したデータを用いる。
この暗号化の方法として、現在最も多く用いられているのはDES(Data Encryption Standard)である。DESでは、データの暗号化にはカードリーダ30側と上位装置20側が同じ鍵を用い、データの送信側であるカードリーダ30または上位装置20はデータをその鍵で暗号化して送信し、データの受信側である上位装置20またはカードリーダ30は同じ鍵で復号してデータ取り出す。

0055

本実施形態においては、暗号化に用いる暗号キーKYは、暗号処理ミドルウェア部251で暗号化してカードリーダ30にUSB通信システムを通して送信する。
カードリーダ30側では、受信した暗号化された暗号キーKYを復号化して、復号化した暗号キーを用いカード50から読み取ったデータを暗号化し、USB通信システムを通して上位装置20に送信する。

0056

また、暗号処理ミドルウェア部251は、カードリーダ30側でカード50がスワイプされた否かを確認するため、状態通知コマンド発信する。

0057

図3は、本実施形態に係る暗号化処理手段としての上位装置側の暗号処理ミドルウェア部およびカードリーダ側の暗号処理部の構成例を示すブロック図である。
図3の暗号処理ミドルウェア部251は、その暗号化および復号化機能部として、暗号部2511および復号部2512を含んで構成されている。
暗号部2511は、暗号化に用いる暗号キーKYを暗号化し、USBドライバ231、USBコントローラ215を介してカードリーダ30に送信する。
復号部2512は、カードリーダ30側で暗号化されたASCIIコードの文字列データとして生成された磁気データを復号する。

0058

本実施形態において、暗号処理ミドルウェア部251は暗号化するための暗号キーをカードリーダ30に送り、カードリーダ30はこの暗号キーを使用して、ASCIIコードの文字列で生成された磁気データを暗号化する。
暗号処理ミドルウェア部251は、この暗号化されたデータを受け取りASCII文字列に復号する。

0059

本実施形態に示すミドルウェアおよびアプリケーション部250におけるカードリーダ系の構成では、図2に示すように、第2のアプリケーションとしての汎用アプリケーション(一例として金融アプリケーション)253と第1のアプリケーションとしての変換用常駐アプリケーション252を備えている。
暗号処理ミドルウェア部251は、たとえば、ATMに備えられたカードリーダにおいて、金融機関等で、磁気記録データと、金融データベースとの照合を行う場合には、金融アプリケーション253を起動し、信号(情報)処理を行わせる。
一方、暗号処理ミドルウェア部251は、PCのログインなど、キーボード機能(上述したキーボード・インターフェースと呼ばれる機能)として使用する場合は変換用常駐アプリケーション252を起動し、信号(情報)処理を行わせる。

0060

より具体的な使用例について述べる。
金融アプリケーション253は、ATM端末インストールされているWindows(登録商標) OSなどで起動させる。
ATMの電源スイッチをONにした際、BIOS、OSの順に立ち上がる。OS起動後、金融アプリケーション253が自動的に起動するよう、Windows(登録商標)でいう「スタートアップ」プログラムとして登録しておくことが一般的である。
こうすることにより、銀行員が金融アプリケーション253を立ち上げにいく必要なく、ATMの電源を入れるだけで金融アプリケーション253の待ちうけ画面(顧客待機画面)まで起動する。

0061

一方、キーボード機能などは、ATMで使用することはない。
POS端末や、PCのログインなどに使われる。
この場合、変換用常駐アプリケーション252をWindows(登録商標)でいう「サービス」プログラムとして起動する。
具体的には、「サービス」を有効にするよう、あらかじめOS241に設定しておき、OS起動と同時に、この変換用常駐アプリケーション252が起動するようにしておく。
これにより、他のキーボードと同様、ユーザが何か操作をすることなく、データをOS241に通知することができる。

0062

上記した動作を実現するために、本実施形態では、暗号処理ミドルウェア部251内にAPI(Application Programming Interface)を、キーボード機能用APIまたは汎用カードリーダ使用のAPIとして切り替える機能を備えている。
本実施形態では、予め、ユーザの要求により、切り替えておくことで対応している。

0063

図4は、本実施形態に係る暗号処理ミドルウェア部におけるAPI切り替え部の構成例を示す機能ブロック図である。

0064

図4の暗号処理ミドルウェア部251は、切替制御部2513、およびAPI2514を含んで構成されている。
切替制御部2513は、ユーザの要求に応じた指示信号SIを受けて、信号S2513によりAPI2514をキーボード機能用APIまたは汎用カードリーダ使用のAPIとして切り替えるように制御する。

0065

すなわち、暗号処理ミドルウェア部251は、APIを、第1のアプリケーションである変換用常駐アプリケーション用とするかまたは第2のアプリケーションである汎用アプリケーション用とするかを設定可能である。
暗号処理ミドルウェア部251は、APIが第1のアプリケーション用として設定されている場合には、復号した情報を変換用常駐アプリケーション252に出力し、APIが第2のアプリケーション用として設定されている場合には、復号した情報を汎用アプリケーション253に出力する。

0066

変換手段としての変換用常駐アプリケーション252は、暗号処理ミドルウェア部251によるASCIIコードを仮想キーコードに変換し、OS241を通して文字入力アプリケーション254に供給する。
文字入力アプリケーション254は、変換された仮想キーコードに基づく文字をディスプレイ217の画面上に出力する。

0067

ここで、キーボード機能として使用する場合の動作を変換用常駐アプリケーション252の実行処理を中心に、図5および図6に関連付けて説明する。
図5は、本実施形態において、キーボード機能として使用する場合の変換用常駐アプリケーションの処理を説明するためのフローチャートである。
図6は、変換等常駐アプリケーションの変換処理を説明するためのフローチャートである。

0068

(キーボード機能として使用する場合)
変換用常駐アプリケーション252は、OS起動後、直ちに起動する。
変換用常駐アプリケーション252の処理は、図5に示すように、まず、暗号処理ミドルウェア部251とリンクさせる(ステップST1)。
その後、このミドルウェアに実装させているRead(磁気データ読み取り用API)を実行し、戻り値が返されるまで待機する(ステップST2)。
この戻り値は、カード50がスワイプされ、磁気データを取得したタイミングで、磁気データはASCIIコードの文字列として返される。
変換用常駐アプリケーション252は、読み取り結果を確認し(ステップST3)、成功すれば読み取ったトラック情報(JISIラックデータ、ISO1トラックデータ、ISO2トラックデータ)を意味するASCIIコードとしてバッファ保管、また、これに続きと受け取った磁気データを、ASCIIコードとして保管する(ステップST5)。失敗していれば、このエラー情報をASCIIコードの文字列で作成し(ステップST4)、バッファへ保管する(ステップST5)。
その後、変換用常駐アプリケーション252は、保管されたバッファから一文字毎ASCIIコードを取り出し、仮想キーコードに変換し、イベントとして、各アプリケーションに通知(送信)する(ステップST6)。

0069

このASCIIコードを仮想キーコードに変換する変換処理を図6に関連付けて説明する。
変換用常駐アプリケーション252は、まず、ASCIIデータ保存バッファ先頭1文字を取り出し、バッファから取り出した文字を削除する(ステップST61)。
ここで、ASCII文字があるか否かを判別し(ステップST62)、ある場合には、このASCIIコードから、仮想キーコードと、シフト状態を取得する(ステップST63)。
たとえば、大文字の“A”は、シフトキーを押しながら仮想キーコード“A”を押すことで、画面に出力される。
また、たとえば“&”文字を出力させるためには、101/104英語キーボードではシフトキーと仮想キーコード“7”、106/109日本語キーボードではシフトキーと仮想キーコード“6”を押すという違いがある。
変換の具体的な方法は、上記のような、指定されたASCIIコードから、どの仮想キーコードを押す必要があるかと、シフトを押す必要があるかという情報をOS241に問い合わせる(ステップST64)。
OS241に問い合わせることにより、今、OS241に設定されているキーボード言語により、最適な仮想キーコードと、シフト状態を取得することができる。

0070

シフト状態が取得できたら、まず、必要な場合は、仮想キーコードの“Shift”をKey Downイベントとして送信する(ステップST65)。
その後、取得した仮想キーコードをKey Down イベントとして送信する(ステップST66)。
また、次のステップとして、 “Shift” をKey Upイベントとして送信し、仮想キーコードをKey Up イベントとして送信する(ステップST67)。
もし、シフトが不要な場合は(ステップST68)、“Shift”のKey Down、またはKeyUPイベントは送信しない。
シフトが必要な場合(ステップST68)、“Shift” をKey Upイベントとして送信し(ステップST69)、ステップST61の処理に戻り、このASCII文字の変換、イベント送信処理をバッファが空になるまで繰り返し、終了する。

0071

ここで言うイベント送信は、実際には、OS241にイベント送信を依頼するものであり、依頼されたOSは、このイベントを各アプリケーションに通知する。

0072

次に、カードリーダとして機能させる場合の動作を金融(汎用)アプリケーション253の実行処理を中心に、図7に関連付けて説明する。
図7は、本実施形態において、カードリーダとして機能させる場合の金融アプリケーションの処理を説明するためのフローチャートである。

0073

(カードリーダとして機能させる場合)
本実形態においては、金融機関(ATMに搭載されて)で使用される場合に、金融アプリケーション253で使用する例を図7に示している。
図5と同様、まず、暗号処理ミドルウェア部251とリンクさせる(ステップST21)
その後、この暗号処理ミドルウェア部251に実装させているRead(磁気データ読み取り用API)を実行し、戻り値が返されるまで待機する(ステップST22)。
その後、受け取ったASCIIデータの文字列を、金融データベースと照合し(ステップST23)、磁気データの読み取り処理を終了する。

0074

また、キーボード装置40のキーボードの所定のキーが押されると、キーボードコントローラによりキーの押された位置が、スキャンコードの信号として第2の通信部70を通して上位装置20側に通知される。
上位装置側20では、受け取ったスキャンコードをキーボードコントローラ216、キーボードドライバ232、さらにはOS241を通して仮想キーコードとして文字入力アプリケーション254に供給する。
文字入力アプリケーション254は、変換された仮想キーコードに基づく文字をディスプレイ217の画面上に出力する。

0075

以上、上位装置20の構成および機能について具体的に説明した。
次に、カードリーダ30の構成および機能について説明する。

0076

[カードリーダ30の構成および機能]
カードリーダ30は、上位装置20との通信およびカード50との通信機能を有する。カードリーダ30は、上述したように、上位装置20とのメイン(通常)の通信はUSB通信規格に準拠して行う。

0077

図2は、本実施形態に係る情報処理装置であるカードリーダ30、キーボード装置40、および上位装置の構成例を概念的に示している。

0078

カードリーダ30は、ハードウェアの基本的な構成として、カードリーダ30全体を統合的に制御するCPU31、カードリーダ30の動作プログラム初期値パラメータなどを格納するROM32、およびCPU31のワーキングエリアとして機能するRAM33を有している。
そして、カードリーダ30は、磁気ヘッド310、デコード部320、第2の暗号化処理手段としての暗号処理部330、およびUSB通信システムを構成するUSBコントローラ340を主構成要素として有している。

0079

磁気ヘッド310は、たとえばスワイプされたカード50の磁気ストライプmpに、F2F変調方式等により記録された磁気データをアナログ信号として読み取る。
磁気ヘッド310で読み取られた磁気データは、図示しない増幅器増幅され、アナログデジタル変換器等を通してデジタル化されるとともに復調され、デコード部320に供給される。

0080

デコード部320は、ファームウェアFWの一部として構成され、デジタル化された復調データを各種フォーマットにデコードし、各トラックを共通言語で表現されるコードの一例であるASCIIコードの文字列のデータとして生成し、暗号処理部330に出力する。

0081

暗号処理部330は、上位装置20の暗号処理ミドルウェア部251と同様に暗号化処理手段の一部である第2の暗号処理化手段として機能し、第1の通信部60を構成するUSB通信システムを通してカードリーダ30とのデータの送受信にためのデータの送受信機能、並びに暗号化および復号化処理機能を有している。

0082

前述したように、本実施形態において、情報処理装置としてのカードリーダ30またはホストコンピュータとしての上位装置20では、上位装置20またはカードリーダ30とデータのやり取りを行うとき、その過程で秘密情報が漏れても問題を発生させないために、やり取りするデータには暗号化したデータを用いる。

0083

本実施形態において、暗号処理部330は、暗号化に用いる暗号キーKYは、上位装置20側の暗号処理ミドルウェア部251で暗号化された、暗号化に用いる暗号キーKYを復号し、復号した暗号キーを用いカード50から読み取ったデータを暗号化し、USB通信システムを通して上位装置20に送信する。

0084

また、暗号処理部330を含むファームウェア部FWは、上位装置20の暗号処理ミドルウェア部251から送信される状態通知コマンドに対し、磁気データを保持していることを示す情報をレスポンスデータとして返信する機能を有する。

0085

図3は、本実施形態に係る暗号化処理手段としての上位装置側の暗号処理ミドルウェア部およびカードリーダ側の暗号処理部の構成例を示している。
図3の暗号処理部330は、その暗号化および復号化機能部として、復号部331および暗号部332を含んで構成されている。
復号部331は、USBコントローラ340を通して受信した、暗号処理ミドルウェア部251で暗号化された暗号キーKYを復号する。
暗号部332は、復号された暗号化に用いる暗号キーKYを用いて、ASCIIの文字列で生成された磁気データを暗号化し、USBコントローラ340を介して上位装置20に送信する。

0086

このように、本実施形態において、カードリーダ30は、カード50から読み取ったデータを復調し、復調データを共通言語で表現されたコード、本実施形態ではASCIIコードに変換し、変換したASCIIコードを、暗号キーKYを用いて暗号化し、この暗号化した磁気データを上位装置20に第1の通信部60を通して送信する。

0087

[キーボード装置40の構成]
キーボード装置40は、キーボード410およびキーボードコントローラ420を含んで構成されている。
キーボード装置40は、そのキーの配置が国やキーボード410の種類によって異なっており、キーボードにはいくつかのモデルがあるが、スイッチ数と形状が同じであれば、キートップの印刷内容は異なっても、同じ位置のキースイッチは同じスキャンコードを持っている。
キーボード410としては、たとえば前述したような101/104英語キーボードや106/109日本語キーボード等がある。
キーボードコントローラ420では、キーボード410から受け取ったスキャンコードからキー入力を組み立て、キーコードを作成する。
そして、設定された国コードおよびキーボードタイプにより、どのスキャンコード(どこの位置のキー)を受け取った際に、どの文字(仮想キーコード)に変換するか決められている。
そのため、その変換テーブルを切り替えることで所望のキーボードになるように設定することができる。

0088

キーボード装置40は、キーボード410の所定のキーが押されると、キーボードコントローラ420によりキーの押された位置を、スキャンコードの信号として第2の通信部70を通して上位装置20側に通知する。
キーボード装置40は、上位装置20が起動すると、キーボードコントローラ420が、上位装置20のOSとの間でコマンド、レスポンスのやり取りにて初期設定を行う。この処理により、キーボード装置40において、ユーザがキーボード410のキーを押したときに、上位装置20までスキャンコードが伝わるようになる。

0089

[全体の動作]
次に、上記構成による情報処理システムの全体的な動作の概要を説明する。
図8は、本実施形態に係る情報処理システムの全体的な動作概要を説明するための図である。
ここでは、上位装置20と情報処理装置としてのカードリーダ間の処理を図8に関連付けて説明し、その後、OS上におけるP/S2規格でのキーボード装置40の基本動作について説明する。

0090

まず、上位装置20が起動状態で、ユーザによりキーボード機能とするかカードリーダ機能とするかの指示が行われる。
これに伴い、上位装置20の暗号処理ミドルウェア部251における切替制御部2513に対してユーザの要求に応じた指示信号SIが入力され、切替制御部2513はで信号S2513に応じてRead等のAPI2514をキーボード機能用APIまたは汎用カードリーダ使用のAPIとして切り替えるように制御する。これにより、上位装置20は、キーボード機能またはカードリーダ機能に設定される(ステップST101)。

0091

暗号処理ミドルウェア部251は、カードリーダ30側でカード50がスワイプされたかどうかを確認するため、常時、状態通知コマンドを発信する(ステップST102)。
カードリーダ30は、カードがスワイプされると(ステップST103)、磁気ヘッド310により磁気データが読み取られる(ステップST104)。
カードリーダ30は、読み取った磁気データをデジタル化するとともに復調する。カードリーダ30のファームウェアFWはこのデジタル化された復調データを各種フォーマットにデコードし、各トラックをASCIIコードの文字列データとして生成する(ST105)。
また、カードリーダ30は、暗号処理ミドルウェア部251から送信される状態通知コマンドに対し、磁気データを保持していることを示す情報をレスポンスデータとして上位装置20に返信する(ステップST106)。

0092

上位装置20においては、カードリーダ側で磁気データを保持しているものとして、暗号化のための暗号キーKYを暗号化してカードリーダ30に送信する(ステップST107)。
カードリーダ30は、暗号化された暗号キーを復号し、復号した暗号キーを用いて暗号化し、この暗号化データを上位装置20に第1の通信部60を通して送信する(ステップST108)。

0093

上位装置20は、暗号処理ミドルウェア部251でカードリーダ30により送信された暗号化データを、暗号キーを用いて復号する(ステップST109)。
ここで、ステップST101で設定された機能がキーボード機能である場合には(ステップST110)、変換手段としての変換用常駐アプリケーションが、ASCIIコードを仮想キーコードに変換し(ステップST111)、OSを通して文字入力アプリケーション254に供給する。
文字入力アプリケーション254は、変換された仮想キーコードに基づく文字をディスプレイ217の画面上に出力する(ステップST112)。

0094

ステップST101で設定された機能がカードリーダ機能である場合には(ステップST110)、汎用アプリケーション253が受け取ったASCIIデータの文字列を、金融データベースと照合し、磁気データの読み取り処理を終了する(ステップST113)。

0095

最後に、OS上におけるP/S2規格でのキーボード装置40の基本動作について説明する。
キーボード装置40は、キーボード410の所定のキーが押されると、キーボードコントローラ420によりキーの押された位置を、スキャンコードの信号として第2の通信部70を通して上位装置20側に通知する。
上位装置側20では、受け取ったスキャンコードをキーボードコントローラ216、キーボードドライバ232、さらにはOS241を通して仮想キーコードとして文字入力アプリケーション254に供給する。文字入力アプリケーション254は、変換された仮想キーコードに基づく文字をディスプレイ217の画面上に出力する。
これにより、テキストエディタ等のアプリケーションにイベントメッセージとして配信等することができる。

0096

より具体的には、まず、上位装置20が起動すると、接続されているキーボード装置40に対し、コマンド、レスポンスのやり取りにて初期設定を行われる。この処理は、主に、上位装置のOSと、キーボード装置40に内蔵されているキーボードコントローラ420にて行われる。
これにより、ユーザがキーボード410のキーを押したときに、上位装置20までスキャンコードが伝わるようになる。
ユーザによってキーボード410のキーが押されると、電気信号としてキーボードコントローラ420に伝わる。
キーボードコントローラ420は、キーの押された場所を、スキャンコードとしての信号にて、上位装置20のキーボードコントローラ216を介してCPU211に通知する。
上位装置20のキーボードドライバ232は、CPU211で受け取ったスキャンコードを仮想キーコードとして、OS241に通知する。
仮想キーコードは、OS独自のコードで定められており、OS内で共通に利用されるキーのコードである。OS241は、受け取った仮想キーコードを、起動している各アプリケーション(文書作成ソフトなど)に通知し、これを受けた文字入力アプリケーション254は、文字をディスプレイ217等に出力する。

0097

[実施形態の効果]
本実施形態において、情報処理システム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コードを設定されているアプリケーションに供給する。

0098

したがって、本実施形態によれば、以下の効果を得ることができる。
各国の言語に対応したキーボードのキー配列の影響を受けにくく、しかも情報の機密性を保持することが可能となるカードリーダを提供することができる。
また、APIを切り替えることで、ユーザの使い勝手に従って、キーボード機能として使用させる場合、汎用装置、たとえばカードリーダとして使用させる場合と簡単に行うことが可能となる。

0099

なお、本実施形態では、キーボード機能として使用するカードリーダであっても、汎用のカードリーダとしても使用することが可能となっている。
すなわち、従来、キーボード・インターフェースとして実装されているものではない、汎用的なカードリーダを接続した場合には、使用するコードがスキャンコードとASCIIコードと異なっているため、それを処理するアプリケーションが異なるので使用することができない。したがって、カードリーダのアプリケーションを大幅に変更する必要があり。また、この技術では、キーボードとしての用途でしか使えず、カードリーダが読み取ったデータを、(汎用のカードリーダとして使用する)金融のデータベースで情報の照合を行うような、アプリケーションでは利用できない。
これに対し、本実施形態では、ASCIIコードを用いてキーボード機能を実現したことから、図2に示すように、汎用アプリケーション253および変換用常駐アプリケーション252を格納しておけば、暗号処理ミドルウェア部251内のAPIを切り替えることで、ユーザの使い勝手に従って、キーボード機能として使用させる場合、汎用のカードリーダとして使用させる場合と簡単に行うことが可能となっている。

0100

[他の実施形態]
本実施形態では、上位装置と情報処理装置とを接続する第1の通信部をUSB接続としたが、RS−232C接続やLAN等、通信の形態は問わない。
また、表示するアプリケーションとしてテキストエディタを一例として示したが、ログイン画面のIDやパスワード入力であっても使用することができる。
また、本実施形態では、スワイプ式のカードリーダを例に説明したが、ディップ式モータ式など、カードの搬送方法に制限されることはない。
また、本実施形態では、情報処理装置をカードリーダとして説明したが、バーコードスキャナやその他の入力装置においても適用することが可能である。

0101

なお、以上詳細に説明した方法は、上記手順に応じたプログラムとして形成し、CPU等のコンピュータで実行するように構成することも可能である。
また、このようなプログラムは、半導体メモリ磁気ディスク光ディスクフロッピー(登録商標)ディスク等の記録媒体、この記録媒体をセットしたコンピュータによりアクセスし上記プログラムを実行するように構成可能である。

0102

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、3310・・・磁気ヘッド、320・・・デコード部、330・・・暗号処理部(第2の暗号化処理手段)、340・・・USBコントローラ、40・・・キーボード装置、410・・・キーボード、420・・・キーボードコントローラ、50・・・カード、60・・・第1の通信部、70・・・第2の通信部。

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

関連する公募課題

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

新着 最近 公開された関連が強い技術

  • ヨメテル株式会社の「 ケーブルアンテナ」が 公開されました。( 2020/09/17)

    【課題】簡易な構成により、周囲全体にわたって電磁波を放出することができるリーダ装置を提供することを目的とする。【解決手段】本発明のケーブルアンテナは、高周波電流を供給する発振器が一端部に接続されるケー... 詳細

  • 株式会社エル・シーアプライアンスの「 自販機の決済サービス支援システム」が 公開されました。( 2020/09/10)

    【課題】シールや紙等への印刷による静的2次元コードを利用することにより自販機へのキャッシュレス決済導入を低コストにすると同時に静的2次元コード利用に伴うセキュリティ上の問題を解消した決済サービス支援シ... 詳細

  • マクセル株式会社の「 入力情報修正方法及び情報端末」が 公開されました。( 2020/09/10)

    【課題・解決手段】入力情報の入力時に表示部に表示された入力用オブジェクトの配列に関する情報を読み出し、表示部に表示される入力情報の入力オブジェクトがタッチされたか否かを判定し、入力オブジェクトがタッチ... 詳細

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する社会課題

関連する挑戦したい社会課題一覧

この 技術と関連する公募課題

関連する公募課題一覧

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ